1 /* 2 * This software is part of the SBCL system. See the README file for 3 * more information. 4 * 5 * This software is derived from the CMU CL system, which was 6 * written at Carnegie Mellon University and released into the 7 * public domain. The software is in the public domain and is 8 * provided with absolutely no warranty. See the COPYING and CREDITS 9 * files for more information. 10 */ 11 12 13 #define NREGS (16) 14 15 #ifdef LANGUAGE_ASSEMBLY 16 # define REG(num) r##num 17 #else 18 # define REG(num) (num) 19 #endif 20 21 #define reg_R0 REG(0) 22 #define reg_R1 REG(1) 23 #define reg_R2 REG(2) 24 #define reg_LEXENV REG(3) 25 #define reg_NL2 REG(4) 26 #define reg_CODE REG(5) 27 #define reg_NL3 REG(6) 28 #define reg_OCFP REG(7) 29 #define reg_R8 REG(8) 30 #define reg_NFP REG(9) 31 #define reg_NULL REG(10) 32 #define reg_CFP REG(11) 33 #define reg_NARGS REG(12) 34 #define reg_NSP REG(13) 35 #define reg_LR REG(14) 36 #define reg_PC REG(15) 37 38 #define REGNAMES \ 39 "R0", "R1", "R2", "LEXENV", \ 40 "NL2", "CODE", "NL3", "OCFP", \ 41 "R8", "NFP", "NULL", "CFP", \ 42 "NARGS", "NSP", "LR", "PC" 43 44 #define BOXED_REGISTERS { \ 45 reg_R0, reg_R1, reg_R2, reg_LEXENV, reg_R8, reg_CODE \ 46 } 47