|
|
1.1 root 1: /* $Copyright: $
2: * Copyright (c) 1984 Sequent Computer Systems, Inc.
3: * All rights reserved
4: *
5: * This software is furnished under a license and may be used
6: * only in accordance with the terms of that license and with the
7: * inclusion of the above copyright notice. This software may not
8: * be provided or otherwise made available to, or used by, any
9: * other person. No title to or ownership of the software is
10: * hereby transferred.
11: */
12:
13: /*
14: * $Header: reg.h 1.3 84/12/11 $
15: *
16: * reg.h
17: * Defines location of the users' stored registers relative to R0.
18: *
19: * Usage is u.u_ar0[XX].
20: */
21:
22: /* $Log: reg.h,v $
23: */
24:
25: /*
26: * Assumes use of cxp call into syscall/trap.
27: * Once in syscall/trap handler, stack looks like:
28: *
29: * modpsr user program
30: * pc return context
31: * fp user FP
32: * old spl value to restore on exit (nested interrupts)
33: * r0 assumes "enter [r0,r1,r2],ENTLOCL*4"
34: * r1
35: * r2
36: * user SP
37: * trap-type identify trap
38: * modpsr of locore
39: * pc into locore
40: * fp of locore
41: * <locals> # stack variables
42: * r3
43: * r4
44: * r5
45: * r6
46: * r7
47: */
48:
49: #define TRAPOFF 8 /* delta between sp&r3, includes trap locals */
50: #define ENTLOCL 1 /* # local words on trap entry */
51:
52: #define MODPSR (R0+(3+ENTLOCL)*4)
53: #define PS MODPSR
54: #define PC_OFF (R0+(2+ENTLOCL)*4)
55: #define FP (R0+(1+ENTLOCL)*4)
56:
57: #define R0 (ctob(UPAGES)-0x14)
58: #define R1 (R0-1*4)
59: #define R2 (R0-2*4)
60: #define SP (R0-3*4)
61: #define R3 (R0-(4+TRAPOFF)*4)
62: #define R4 (R0-(5+TRAPOFF)*4)
63: #define R5 (R0-(6+TRAPOFF)*4)
64: #define R6 (R0-(7+TRAPOFF)*4)
65: #define R7 (R0-(8+TRAPOFF)*4)
66:
67: #define PSRADJ (16) /* # bits offset of PSR in MODPSR */
68:
69: #define BADREG (-1) /* guaranteed not a valid reg offset */
70:
71: #define MAXREG 7 /* biggest register number in stabs */
72: #define MINREG 0 /* smallest reg number */
73:
74: #define PC (-2) /* some number */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.