Clean up RCS ids
[projects/cmucl/cmucl.git] / src / lisp / hppa-lispregs.h
1 /*
2
3  This code was written as part of the CMU Common Lisp project at
4  Carnegie Mellon University, and has been placed in the public domain.
5
6 */
7
8 #ifndef _HPPA_LISPREGS_H_
9 #define _HPPA_LISPREGS_H_
10
11 #define NREGS   (32)
12
13 #ifdef LANGUAGE_ASSEMBLY
14 #define REG(num) num
15 #else
16 #define REG(num) num
17 #endif
18
19 #define reg_ZERO REG(0)
20 #define reg_NFP REG(1)
21 #define reg_CFUNC REG(2)
22 #define reg_CSP REG(3)
23 #define reg_CFP REG(4)
24 #define reg_BSP REG(5)
25 #define reg_NULL REG(6)
26 #define reg_ALLOC REG(7)
27 #define reg_CODE REG(8)
28 #define reg_FDEFN REG(9)
29 #define reg_LEXENV REG(10)
30 #define reg_NARGS REG(11)
31 #define reg_OCFP REG(12)
32 #define reg_LRA REG(13)
33 #define reg_A0 REG(14)
34 #define reg_A1 REG(15)
35 #define reg_A2 REG(16)
36 #define reg_A3 REG(17)
37 #define reg_A4 REG(18)
38 #define reg_A5 REG(19)
39 #define reg_L0 REG(20)
40 #define reg_L1 REG(21)
41 #define reg_L2 REG(22)
42 #define reg_NL3 REG(23)
43 #define reg_NL2 REG(24)
44 #define reg_NL1 REG(25)
45 #define reg_NL0 REG(26)
46 #define reg_DP REG(27)
47 #define reg_NL4 REG(28)
48 #define reg_NL5 REG(29)
49 #define reg_NSP REG(30)
50 #define reg_LIP REG(31)
51
52
53 #define REGNAMES \
54     "ZERO", "NFP", "CFUNC", "CSP", "CFP", "BSP", "NULL", "ALLOC", \
55     "CODE", "FDEFN", "LEXENV", "NARGS", "OCFP", "LRA", "A0", "A1", \
56     "A2", "A3", "A4", "A5", "L0", "L1", "L2", "NL3", \
57     "NL2", "NL1", "NL0", "DP", "NL4", "NL5", "NSP", "LIP"
58
59 #define BOXED_REGISTERS { \
60     reg_CODE, reg_FDEFN, reg_LEXENV, reg_NARGS, reg_OCFP, reg_LRA, \
61     reg_A0, reg_A1, reg_A2, reg_A3, reg_A4, reg_A5, \
62     reg_L0, reg_L1, reg_L2 \
63 }
64
65 #ifdef hpux
66 #define SC_REG(sc, n) (((unsigned long *)(&(sc)->sc_sl.sl_ss.ss_flags))[n])
67 #define SC_PC(sc) ((sc)->sc_sl.sl_ss.ss_pcoq_head)
68 #define SC_NPC(sc) ((sc)->sc_sl.sl_ss.ss_pcoq_tail)
69 #else
70 #define SC_REG(sc, n) (((unsigned long *)((sc)->sc_ap))[n])
71 #define SC_PC(sc) ((sc)->sc_pcoqh)
72 #define SC_NPC(sc) ((sc)->sc_pcoqt)
73 #endif
74
75 #endif /* _HPPA_LISPREGS_H_ */