1 #ifdef LANGUAGE_ASSEMBLY
2 #define REG(num) $ ## num
9 #define reg_ZERO REG(0)
10 #define reg_NL3 REG(1)
11 #define reg_CFUNC REG(2)
12 #define reg_NL4 REG(3)
13 #define reg_NL0 REG(4)
14 #define reg_NL1 REG(5)
15 #define reg_NL2 REG(6)
16 #define reg_NARGS REG(7)
19 #define reg_A2 REG(10)
20 #define reg_A3 REG(11)
21 #define reg_A4 REG(12)
22 #define reg_A5 REG(13)
23 #define reg_FDEFN REG(14)
24 #define reg_LEXENV REG(15)
25 #define reg_NFP REG(16)
26 #define reg_OCFP REG(17)
27 #define reg_LRA REG(18)
28 #define reg_L0 REG(19)
29 #define reg_NIL REG(20)
30 #define reg_BSP REG(21)
31 #define reg_CFP REG(22)
32 #define reg_CSP REG(23)
33 #define reg_L1 REG(24)
34 #define reg_ALLOC REG(25)
35 #define reg_NSP REG(29)
36 #define reg_CODE REG(30)
37 #define reg_LIP REG(31)
40 "ZERO", "NL3", "CFUNC", "NL4", \
41 "NL0", "NL1", "NL2", "NARGS", \
42 "A0", "A1", "A2", "A3", \
43 "A4", "A5", "FDEFN", "LEXENV", \
44 "NFP", "OCFP", "LRA", "L0", \
45 "NIL", "BSP", "CFP", "CSP", \
46 "L1", "ALLOC", "K0", "K1", \
47 "GP", "NSP", "CODE", "LIP"
50 #define BOXED_REGISTERS { \
51 reg_A0, reg_A1, reg_A2, reg_A3, reg_A4, reg_A5, reg_FDEFN, reg_LEXENV, \
52 reg_NFP, reg_OCFP, reg_LRA, reg_L0, reg_L1, reg_CODE \
55 #define SC_REG(sc, n) ((sc)->sc_regs[n])
56 #define SC_PC(sc) ((sc)->sc_pc)