@@ -36,32 +36,41 @@ REGALIAS(RDI, EDI)
3636
3737#else // !defined(TARGET_X86)
3838
39+ #define GPRMASK (x ) (1ULL << (x))
3940/*
4041REGDEF(name, rnum, mask, sname) */
41- REGDEF (RAX , 0 , 0x00000001 , "rax" )
42- REGDEF (RCX , 1 , 0x00000002 , "rcx" )
43- REGDEF (RDX , 2 , 0x00000004 , "rdx" )
44- REGDEF (RBX , 3 , 0x00000008 , "rbx" )
45- REGDEF (RSP , 4 , 0x00000010 , "rsp" )
46- REGDEF (RBP , 5 , 0x00000020 , "rbp" )
47- REGDEF (RSI , 6 , 0x00000040 , "rsi" )
48- REGDEF (RDI , 7 , 0x00000080 , "rdi" )
49- REGDEF (R8 , 8 , 0x00000100 , "r8" )
50- REGDEF (R9 , 9 , 0x00000200 , "r9" )
51- REGDEF (R10 , 10 , 0x00000400 , "r10" )
52- REGDEF (R11 , 11 , 0x00000800 , "r11" )
53- REGDEF (R12 , 12 , 0x00001000 , "r12" )
54- REGDEF (R13 , 13 , 0x00002000 , "r13" )
55- REGDEF (R14 , 14 , 0x00004000 , "r14" )
56- REGDEF (R15 , 15 , 0x00008000 , "r15" )
57- REGDEF (R16 , 16 , 0x00010000 , "r16" )
58- REGDEF (R17 , 17 , 0x00020000 , "r17" )
59- REGDEF (R18 , 18 , 0x00040000 , "r18" )
60- REGDEF (R19 , 19 , 0x00080000 , "r19" )
61- REGDEF (R20 , 20 , 0x00100000 , "r20" )
62- REGDEF (R21 , 21 , 0x00200000 , "r21" )
63- REGDEF (R22 , 22 , 0x00400000 , "r22" )
64- REGDEF (R23 , 23 , 0x00800000 , "r23" )
42+ REGDEF (RAX , 0 , GPRMASK (0 ), "rax" )
43+ REGDEF (RCX , 1 , GPRMASK (1 ), "rcx" )
44+ REGDEF (RDX , 2 , GPRMASK (2 ), "rdx" )
45+ REGDEF (RBX , 3 , GPRMASK (3 ), "rbx" )
46+ REGDEF (RSP , 4 , GPRMASK (4 ), "rsp" )
47+ REGDEF (RBP , 5 , GPRMASK (5 ), "rbp" )
48+ REGDEF (RSI , 6 , GPRMASK (6 ), "rsi" )
49+ REGDEF (RDI , 7 , GPRMASK (7 ), "rdi" )
50+ REGDEF (R8 , 8 , GPRMASK (8 ), "r8" )
51+ REGDEF (R9 , 9 , GPRMASK (9 ), "r9" )
52+ REGDEF (R10 , 10 , GPRMASK (10 ), "r10" )
53+ REGDEF (R11 , 11 , GPRMASK (11 ), "r11" )
54+ REGDEF (R12 , 12 , GPRMASK (12 ), "r12" )
55+ REGDEF (R13 , 13 , GPRMASK (13 ), "r13" )
56+ REGDEF (R14 , 14 , GPRMASK (14 ), "r14" )
57+ REGDEF (R15 , 15 , GPRMASK (15 ), "r15" )
58+ REGDEF (R16 , 16 , GPRMASK (16 ), "r16" )
59+ REGDEF (R17 , 17 , GPRMASK (17 ), "r17" )
60+ REGDEF (R18 , 18 , GPRMASK (18 ), "r18" )
61+ REGDEF (R19 , 19 , GPRMASK (19 ), "r19" )
62+ REGDEF (R20 , 20 , GPRMASK (20 ), "r20" )
63+ REGDEF (R21 , 21 , GPRMASK (21 ), "r21" )
64+ REGDEF (R22 , 22 , GPRMASK (22 ), "r22" )
65+ REGDEF (R23 , 23 , GPRMASK (23 ), "r23" )
66+ REGDEF (R24 , 24 , GPRMASK (24 ), "r24" )
67+ REGDEF (R25 , 25 , GPRMASK (25 ), "r25" )
68+ REGDEF (R26 , 26 , GPRMASK (26 ), "r26" )
69+ REGDEF (R27 , 27 , GPRMASK (27 ), "r27" )
70+ REGDEF (R28 , 28 , GPRMASK (28 ), "r28" )
71+ REGDEF (R29 , 29 , GPRMASK (29 ), "r29" )
72+ REGDEF (R30 , 30 , GPRMASK (30 ), "r30" )
73+ REGDEF (R31 , 31 , GPRMASK (31 ), "r31" )
6574
6675REGALIAS (EAX , RAX )
6776REGALIAS (ECX , RCX )
@@ -75,11 +84,11 @@ REGALIAS(EDI, RDI)
7584#endif // !defined(TARGET_X86)
7685
7786#ifdef TARGET_AMD64
78- #define XMMBASE 24
87+ #define XMMBASE 32
7988#define XMMMASK (x ) (1ULL << ((x)+XMMBASE))
8089
81- #define KBASE 56
82- #define KMASK (x ) (1ULL << ((x)+KBASE ))
90+ #define KBASE 64
91+ #define KMASK (x ) (1ULL << ((x)))
8392
8493#else // !TARGET_AMD64
8594#define XMMBASE 8
@@ -224,6 +233,22 @@ REGDEF(STK, 8+KBASE, 0x0000, "STK" )
224233#define REG_R22 JITREG_R22
225234#undef REG_R23
226235#define REG_R23 JITREG_R23
236+ #undef REG_R24
237+ #define REG_R24 JITREG_R24
238+ #undef REG_R25
239+ #define REG_R25 JITREG_R25
240+ #undef REG_R26
241+ #define REG_R26 JITREG_R26
242+ #undef REG_R27
243+ #define REG_R27 JITREG_R27
244+ #undef REG_R28
245+ #define REG_R28 JITREG_R28
246+ #undef REG_R29
247+ #define REG_R29 JITREG_R29
248+ #undef REG_R30
249+ #define REG_R30 JITREG_R30
250+ #undef REG_R31
251+ #define REG_R31 JITREG_R31
227252#undef REG_EAX
228253#define REG_EAX JITREG_EAX
229254#undef REG_ECX
0 commit comments