/ externals / zydis / src / Generated / RegisterLookup.inc
RegisterLookup.inc
  1  static const ZydisRegisterLookupItem REG_LOOKUP[] =
  2  {
  3      /* NONE       */ { ZYDIS_REGCLASS_INVALID, -1, 0, 0 },
  4      /* AL         */ { ZYDIS_REGCLASS_GPR8, 0, 8, 8 },
  5      /* CL         */ { ZYDIS_REGCLASS_GPR8, 1, 8, 8 },
  6      /* DL         */ { ZYDIS_REGCLASS_GPR8, 2, 8, 8 },
  7      /* BL         */ { ZYDIS_REGCLASS_GPR8, 3, 8, 8 },
  8      /* AH         */ { ZYDIS_REGCLASS_GPR8, 4, 8, 8 },
  9      /* CH         */ { ZYDIS_REGCLASS_GPR8, 5, 8, 8 },
 10      /* DH         */ { ZYDIS_REGCLASS_GPR8, 6, 8, 8 },
 11      /* BH         */ { ZYDIS_REGCLASS_GPR8, 7, 8, 8 },
 12      /* SPL        */ { ZYDIS_REGCLASS_GPR8, 8, 8, 8 },
 13      /* BPL        */ { ZYDIS_REGCLASS_GPR8, 9, 8, 8 },
 14      /* SIL        */ { ZYDIS_REGCLASS_GPR8, 10, 8, 8 },
 15      /* DIL        */ { ZYDIS_REGCLASS_GPR8, 11, 8, 8 },
 16      /* R8B        */ { ZYDIS_REGCLASS_GPR8, 12, 8, 8 },
 17      /* R9B        */ { ZYDIS_REGCLASS_GPR8, 13, 8, 8 },
 18      /* R10B       */ { ZYDIS_REGCLASS_GPR8, 14, 8, 8 },
 19      /* R11B       */ { ZYDIS_REGCLASS_GPR8, 15, 8, 8 },
 20      /* R12B       */ { ZYDIS_REGCLASS_GPR8, 16, 8, 8 },
 21      /* R13B       */ { ZYDIS_REGCLASS_GPR8, 17, 8, 8 },
 22      /* R14B       */ { ZYDIS_REGCLASS_GPR8, 18, 8, 8 },
 23      /* R15B       */ { ZYDIS_REGCLASS_GPR8, 19, 8, 8 },
 24      /* AX         */ { ZYDIS_REGCLASS_GPR16, 0, 16, 16 },
 25      /* CX         */ { ZYDIS_REGCLASS_GPR16, 1, 16, 16 },
 26      /* DX         */ { ZYDIS_REGCLASS_GPR16, 2, 16, 16 },
 27      /* BX         */ { ZYDIS_REGCLASS_GPR16, 3, 16, 16 },
 28      /* SP         */ { ZYDIS_REGCLASS_GPR16, 4, 16, 16 },
 29      /* BP         */ { ZYDIS_REGCLASS_GPR16, 5, 16, 16 },
 30      /* SI         */ { ZYDIS_REGCLASS_GPR16, 6, 16, 16 },
 31      /* DI         */ { ZYDIS_REGCLASS_GPR16, 7, 16, 16 },
 32      /* R8W        */ { ZYDIS_REGCLASS_GPR16, 8, 16, 16 },
 33      /* R9W        */ { ZYDIS_REGCLASS_GPR16, 9, 16, 16 },
 34      /* R10W       */ { ZYDIS_REGCLASS_GPR16, 10, 16, 16 },
 35      /* R11W       */ { ZYDIS_REGCLASS_GPR16, 11, 16, 16 },
 36      /* R12W       */ { ZYDIS_REGCLASS_GPR16, 12, 16, 16 },
 37      /* R13W       */ { ZYDIS_REGCLASS_GPR16, 13, 16, 16 },
 38      /* R14W       */ { ZYDIS_REGCLASS_GPR16, 14, 16, 16 },
 39      /* R15W       */ { ZYDIS_REGCLASS_GPR16, 15, 16, 16 },
 40      /* EAX        */ { ZYDIS_REGCLASS_GPR32, 0, 32, 32 },
 41      /* ECX        */ { ZYDIS_REGCLASS_GPR32, 1, 32, 32 },
 42      /* EDX        */ { ZYDIS_REGCLASS_GPR32, 2, 32, 32 },
 43      /* EBX        */ { ZYDIS_REGCLASS_GPR32, 3, 32, 32 },
 44      /* ESP        */ { ZYDIS_REGCLASS_GPR32, 4, 32, 32 },
 45      /* EBP        */ { ZYDIS_REGCLASS_GPR32, 5, 32, 32 },
 46      /* ESI        */ { ZYDIS_REGCLASS_GPR32, 6, 32, 32 },
 47      /* EDI        */ { ZYDIS_REGCLASS_GPR32, 7, 32, 32 },
 48      /* R8D        */ { ZYDIS_REGCLASS_GPR32, 8, 32, 32 },
 49      /* R9D        */ { ZYDIS_REGCLASS_GPR32, 9, 32, 32 },
 50      /* R10D       */ { ZYDIS_REGCLASS_GPR32, 10, 32, 32 },
 51      /* R11D       */ { ZYDIS_REGCLASS_GPR32, 11, 32, 32 },
 52      /* R12D       */ { ZYDIS_REGCLASS_GPR32, 12, 32, 32 },
 53      /* R13D       */ { ZYDIS_REGCLASS_GPR32, 13, 32, 32 },
 54      /* R14D       */ { ZYDIS_REGCLASS_GPR32, 14, 32, 32 },
 55      /* R15D       */ { ZYDIS_REGCLASS_GPR32, 15, 32, 32 },
 56      /* RAX        */ { ZYDIS_REGCLASS_GPR64, 0, 0, 64 },
 57      /* RCX        */ { ZYDIS_REGCLASS_GPR64, 1, 0, 64 },
 58      /* RDX        */ { ZYDIS_REGCLASS_GPR64, 2, 0, 64 },
 59      /* RBX        */ { ZYDIS_REGCLASS_GPR64, 3, 0, 64 },
 60      /* RSP        */ { ZYDIS_REGCLASS_GPR64, 4, 0, 64 },
 61      /* RBP        */ { ZYDIS_REGCLASS_GPR64, 5, 0, 64 },
 62      /* RSI        */ { ZYDIS_REGCLASS_GPR64, 6, 0, 64 },
 63      /* RDI        */ { ZYDIS_REGCLASS_GPR64, 7, 0, 64 },
 64      /* R8         */ { ZYDIS_REGCLASS_GPR64, 8, 0, 64 },
 65      /* R9         */ { ZYDIS_REGCLASS_GPR64, 9, 0, 64 },
 66      /* R10        */ { ZYDIS_REGCLASS_GPR64, 10, 0, 64 },
 67      /* R11        */ { ZYDIS_REGCLASS_GPR64, 11, 0, 64 },
 68      /* R12        */ { ZYDIS_REGCLASS_GPR64, 12, 0, 64 },
 69      /* R13        */ { ZYDIS_REGCLASS_GPR64, 13, 0, 64 },
 70      /* R14        */ { ZYDIS_REGCLASS_GPR64, 14, 0, 64 },
 71      /* R15        */ { ZYDIS_REGCLASS_GPR64, 15, 0, 64 },
 72      /* ST0        */ { ZYDIS_REGCLASS_X87, 0, 80, 80 },
 73      /* ST1        */ { ZYDIS_REGCLASS_X87, 1, 80, 80 },
 74      /* ST2        */ { ZYDIS_REGCLASS_X87, 2, 80, 80 },
 75      /* ST3        */ { ZYDIS_REGCLASS_X87, 3, 80, 80 },
 76      /* ST4        */ { ZYDIS_REGCLASS_X87, 4, 80, 80 },
 77      /* ST5        */ { ZYDIS_REGCLASS_X87, 5, 80, 80 },
 78      /* ST6        */ { ZYDIS_REGCLASS_X87, 6, 80, 80 },
 79      /* ST7        */ { ZYDIS_REGCLASS_X87, 7, 80, 80 },
 80      /* X87CONTROL */ { ZYDIS_REGCLASS_INVALID, -1, 16, 16 },
 81      /* X87STATUS  */ { ZYDIS_REGCLASS_INVALID, -1, 16, 16 },
 82      /* X87TAG     */ { ZYDIS_REGCLASS_INVALID, -1, 16, 16 },
 83      /* MM0        */ { ZYDIS_REGCLASS_MMX, 0, 64, 64 },
 84      /* MM1        */ { ZYDIS_REGCLASS_MMX, 1, 64, 64 },
 85      /* MM2        */ { ZYDIS_REGCLASS_MMX, 2, 64, 64 },
 86      /* MM3        */ { ZYDIS_REGCLASS_MMX, 3, 64, 64 },
 87      /* MM4        */ { ZYDIS_REGCLASS_MMX, 4, 64, 64 },
 88      /* MM5        */ { ZYDIS_REGCLASS_MMX, 5, 64, 64 },
 89      /* MM6        */ { ZYDIS_REGCLASS_MMX, 6, 64, 64 },
 90      /* MM7        */ { ZYDIS_REGCLASS_MMX, 7, 64, 64 },
 91      /* XMM0       */ { ZYDIS_REGCLASS_XMM, 0, 128, 128 },
 92      /* XMM1       */ { ZYDIS_REGCLASS_XMM, 1, 128, 128 },
 93      /* XMM2       */ { ZYDIS_REGCLASS_XMM, 2, 128, 128 },
 94      /* XMM3       */ { ZYDIS_REGCLASS_XMM, 3, 128, 128 },
 95      /* XMM4       */ { ZYDIS_REGCLASS_XMM, 4, 128, 128 },
 96      /* XMM5       */ { ZYDIS_REGCLASS_XMM, 5, 128, 128 },
 97      /* XMM6       */ { ZYDIS_REGCLASS_XMM, 6, 128, 128 },
 98      /* XMM7       */ { ZYDIS_REGCLASS_XMM, 7, 128, 128 },
 99      /* XMM8       */ { ZYDIS_REGCLASS_XMM, 8, 128, 128 },
100      /* XMM9       */ { ZYDIS_REGCLASS_XMM, 9, 128, 128 },
101      /* XMM10      */ { ZYDIS_REGCLASS_XMM, 10, 128, 128 },
102      /* XMM11      */ { ZYDIS_REGCLASS_XMM, 11, 128, 128 },
103      /* XMM12      */ { ZYDIS_REGCLASS_XMM, 12, 128, 128 },
104      /* XMM13      */ { ZYDIS_REGCLASS_XMM, 13, 128, 128 },
105      /* XMM14      */ { ZYDIS_REGCLASS_XMM, 14, 128, 128 },
106      /* XMM15      */ { ZYDIS_REGCLASS_XMM, 15, 128, 128 },
107      /* XMM16      */ { ZYDIS_REGCLASS_XMM, 16, 128, 128 },
108      /* XMM17      */ { ZYDIS_REGCLASS_XMM, 17, 128, 128 },
109      /* XMM18      */ { ZYDIS_REGCLASS_XMM, 18, 128, 128 },
110      /* XMM19      */ { ZYDIS_REGCLASS_XMM, 19, 128, 128 },
111      /* XMM20      */ { ZYDIS_REGCLASS_XMM, 20, 128, 128 },
112      /* XMM21      */ { ZYDIS_REGCLASS_XMM, 21, 128, 128 },
113      /* XMM22      */ { ZYDIS_REGCLASS_XMM, 22, 128, 128 },
114      /* XMM23      */ { ZYDIS_REGCLASS_XMM, 23, 128, 128 },
115      /* XMM24      */ { ZYDIS_REGCLASS_XMM, 24, 128, 128 },
116      /* XMM25      */ { ZYDIS_REGCLASS_XMM, 25, 128, 128 },
117      /* XMM26      */ { ZYDIS_REGCLASS_XMM, 26, 128, 128 },
118      /* XMM27      */ { ZYDIS_REGCLASS_XMM, 27, 128, 128 },
119      /* XMM28      */ { ZYDIS_REGCLASS_XMM, 28, 128, 128 },
120      /* XMM29      */ { ZYDIS_REGCLASS_XMM, 29, 128, 128 },
121      /* XMM30      */ { ZYDIS_REGCLASS_XMM, 30, 128, 128 },
122      /* XMM31      */ { ZYDIS_REGCLASS_XMM, 31, 128, 128 },
123      /* YMM0       */ { ZYDIS_REGCLASS_YMM, 0, 256, 256 },
124      /* YMM1       */ { ZYDIS_REGCLASS_YMM, 1, 256, 256 },
125      /* YMM2       */ { ZYDIS_REGCLASS_YMM, 2, 256, 256 },
126      /* YMM3       */ { ZYDIS_REGCLASS_YMM, 3, 256, 256 },
127      /* YMM4       */ { ZYDIS_REGCLASS_YMM, 4, 256, 256 },
128      /* YMM5       */ { ZYDIS_REGCLASS_YMM, 5, 256, 256 },
129      /* YMM6       */ { ZYDIS_REGCLASS_YMM, 6, 256, 256 },
130      /* YMM7       */ { ZYDIS_REGCLASS_YMM, 7, 256, 256 },
131      /* YMM8       */ { ZYDIS_REGCLASS_YMM, 8, 256, 256 },
132      /* YMM9       */ { ZYDIS_REGCLASS_YMM, 9, 256, 256 },
133      /* YMM10      */ { ZYDIS_REGCLASS_YMM, 10, 256, 256 },
134      /* YMM11      */ { ZYDIS_REGCLASS_YMM, 11, 256, 256 },
135      /* YMM12      */ { ZYDIS_REGCLASS_YMM, 12, 256, 256 },
136      /* YMM13      */ { ZYDIS_REGCLASS_YMM, 13, 256, 256 },
137      /* YMM14      */ { ZYDIS_REGCLASS_YMM, 14, 256, 256 },
138      /* YMM15      */ { ZYDIS_REGCLASS_YMM, 15, 256, 256 },
139      /* YMM16      */ { ZYDIS_REGCLASS_YMM, 16, 256, 256 },
140      /* YMM17      */ { ZYDIS_REGCLASS_YMM, 17, 256, 256 },
141      /* YMM18      */ { ZYDIS_REGCLASS_YMM, 18, 256, 256 },
142      /* YMM19      */ { ZYDIS_REGCLASS_YMM, 19, 256, 256 },
143      /* YMM20      */ { ZYDIS_REGCLASS_YMM, 20, 256, 256 },
144      /* YMM21      */ { ZYDIS_REGCLASS_YMM, 21, 256, 256 },
145      /* YMM22      */ { ZYDIS_REGCLASS_YMM, 22, 256, 256 },
146      /* YMM23      */ { ZYDIS_REGCLASS_YMM, 23, 256, 256 },
147      /* YMM24      */ { ZYDIS_REGCLASS_YMM, 24, 256, 256 },
148      /* YMM25      */ { ZYDIS_REGCLASS_YMM, 25, 256, 256 },
149      /* YMM26      */ { ZYDIS_REGCLASS_YMM, 26, 256, 256 },
150      /* YMM27      */ { ZYDIS_REGCLASS_YMM, 27, 256, 256 },
151      /* YMM28      */ { ZYDIS_REGCLASS_YMM, 28, 256, 256 },
152      /* YMM29      */ { ZYDIS_REGCLASS_YMM, 29, 256, 256 },
153      /* YMM30      */ { ZYDIS_REGCLASS_YMM, 30, 256, 256 },
154      /* YMM31      */ { ZYDIS_REGCLASS_YMM, 31, 256, 256 },
155      /* ZMM0       */ { ZYDIS_REGCLASS_ZMM, 0, 512, 512 },
156      /* ZMM1       */ { ZYDIS_REGCLASS_ZMM, 1, 512, 512 },
157      /* ZMM2       */ { ZYDIS_REGCLASS_ZMM, 2, 512, 512 },
158      /* ZMM3       */ { ZYDIS_REGCLASS_ZMM, 3, 512, 512 },
159      /* ZMM4       */ { ZYDIS_REGCLASS_ZMM, 4, 512, 512 },
160      /* ZMM5       */ { ZYDIS_REGCLASS_ZMM, 5, 512, 512 },
161      /* ZMM6       */ { ZYDIS_REGCLASS_ZMM, 6, 512, 512 },
162      /* ZMM7       */ { ZYDIS_REGCLASS_ZMM, 7, 512, 512 },
163      /* ZMM8       */ { ZYDIS_REGCLASS_ZMM, 8, 512, 512 },
164      /* ZMM9       */ { ZYDIS_REGCLASS_ZMM, 9, 512, 512 },
165      /* ZMM10      */ { ZYDIS_REGCLASS_ZMM, 10, 512, 512 },
166      /* ZMM11      */ { ZYDIS_REGCLASS_ZMM, 11, 512, 512 },
167      /* ZMM12      */ { ZYDIS_REGCLASS_ZMM, 12, 512, 512 },
168      /* ZMM13      */ { ZYDIS_REGCLASS_ZMM, 13, 512, 512 },
169      /* ZMM14      */ { ZYDIS_REGCLASS_ZMM, 14, 512, 512 },
170      /* ZMM15      */ { ZYDIS_REGCLASS_ZMM, 15, 512, 512 },
171      /* ZMM16      */ { ZYDIS_REGCLASS_ZMM, 16, 512, 512 },
172      /* ZMM17      */ { ZYDIS_REGCLASS_ZMM, 17, 512, 512 },
173      /* ZMM18      */ { ZYDIS_REGCLASS_ZMM, 18, 512, 512 },
174      /* ZMM19      */ { ZYDIS_REGCLASS_ZMM, 19, 512, 512 },
175      /* ZMM20      */ { ZYDIS_REGCLASS_ZMM, 20, 512, 512 },
176      /* ZMM21      */ { ZYDIS_REGCLASS_ZMM, 21, 512, 512 },
177      /* ZMM22      */ { ZYDIS_REGCLASS_ZMM, 22, 512, 512 },
178      /* ZMM23      */ { ZYDIS_REGCLASS_ZMM, 23, 512, 512 },
179      /* ZMM24      */ { ZYDIS_REGCLASS_ZMM, 24, 512, 512 },
180      /* ZMM25      */ { ZYDIS_REGCLASS_ZMM, 25, 512, 512 },
181      /* ZMM26      */ { ZYDIS_REGCLASS_ZMM, 26, 512, 512 },
182      /* ZMM27      */ { ZYDIS_REGCLASS_ZMM, 27, 512, 512 },
183      /* ZMM28      */ { ZYDIS_REGCLASS_ZMM, 28, 512, 512 },
184      /* ZMM29      */ { ZYDIS_REGCLASS_ZMM, 29, 512, 512 },
185      /* ZMM30      */ { ZYDIS_REGCLASS_ZMM, 30, 512, 512 },
186      /* ZMM31      */ { ZYDIS_REGCLASS_ZMM, 31, 512, 512 },
187      /* TMM0       */ { ZYDIS_REGCLASS_TMM, 0, 8192, 8192 },
188      /* TMM1       */ { ZYDIS_REGCLASS_TMM, 1, 8192, 8192 },
189      /* TMM2       */ { ZYDIS_REGCLASS_TMM, 2, 8192, 8192 },
190      /* TMM3       */ { ZYDIS_REGCLASS_TMM, 3, 8192, 8192 },
191      /* TMM4       */ { ZYDIS_REGCLASS_TMM, 4, 8192, 8192 },
192      /* TMM5       */ { ZYDIS_REGCLASS_TMM, 5, 8192, 8192 },
193      /* TMM6       */ { ZYDIS_REGCLASS_TMM, 6, 8192, 8192 },
194      /* TMM7       */ { ZYDIS_REGCLASS_TMM, 7, 8192, 8192 },
195      /* FLAGS      */ { ZYDIS_REGCLASS_FLAGS, -1, 16, 16 },
196      /* EFLAGS     */ { ZYDIS_REGCLASS_FLAGS, -1, 32, 32 },
197      /* RFLAGS     */ { ZYDIS_REGCLASS_FLAGS, -1, 0, 64 },
198      /* IP         */ { ZYDIS_REGCLASS_IP, -1, 16, 16 },
199      /* EIP        */ { ZYDIS_REGCLASS_IP, -1, 32, 32 },
200      /* RIP        */ { ZYDIS_REGCLASS_IP, -1, 0, 64 },
201      /* ES         */ { ZYDIS_REGCLASS_SEGMENT, 0, 16, 16 },
202      /* CS         */ { ZYDIS_REGCLASS_SEGMENT, 1, 16, 16 },
203      /* SS         */ { ZYDIS_REGCLASS_SEGMENT, 2, 16, 16 },
204      /* DS         */ { ZYDIS_REGCLASS_SEGMENT, 3, 16, 16 },
205      /* FS         */ { ZYDIS_REGCLASS_SEGMENT, 4, 16, 16 },
206      /* GS         */ { ZYDIS_REGCLASS_SEGMENT, 5, 16, 16 },
207      /* GDTR       */ { ZYDIS_REGCLASS_TABLE, -1, 0, 0 },
208      /* LDTR       */ { ZYDIS_REGCLASS_TABLE, -1, 0, 0 },
209      /* IDTR       */ { ZYDIS_REGCLASS_TABLE, -1, 0, 0 },
210      /* TR         */ { ZYDIS_REGCLASS_TABLE, -1, 0, 0 },
211      /* TR0        */ { ZYDIS_REGCLASS_TEST, 0, 32, 32 },
212      /* TR1        */ { ZYDIS_REGCLASS_TEST, 1, 32, 32 },
213      /* TR2        */ { ZYDIS_REGCLASS_TEST, 2, 32, 32 },
214      /* TR3        */ { ZYDIS_REGCLASS_TEST, 3, 32, 32 },
215      /* TR4        */ { ZYDIS_REGCLASS_TEST, 4, 32, 32 },
216      /* TR5        */ { ZYDIS_REGCLASS_TEST, 5, 32, 32 },
217      /* TR6        */ { ZYDIS_REGCLASS_TEST, 6, 32, 32 },
218      /* TR7        */ { ZYDIS_REGCLASS_TEST, 7, 32, 32 },
219      /* CR0        */ { ZYDIS_REGCLASS_CONTROL, 0, 32, 64 },
220      /* CR1        */ { ZYDIS_REGCLASS_CONTROL, 1, 32, 64 },
221      /* CR2        */ { ZYDIS_REGCLASS_CONTROL, 2, 32, 64 },
222      /* CR3        */ { ZYDIS_REGCLASS_CONTROL, 3, 32, 64 },
223      /* CR4        */ { ZYDIS_REGCLASS_CONTROL, 4, 32, 64 },
224      /* CR5        */ { ZYDIS_REGCLASS_CONTROL, 5, 32, 64 },
225      /* CR6        */ { ZYDIS_REGCLASS_CONTROL, 6, 32, 64 },
226      /* CR7        */ { ZYDIS_REGCLASS_CONTROL, 7, 32, 64 },
227      /* CR8        */ { ZYDIS_REGCLASS_CONTROL, 8, 32, 64 },
228      /* CR9        */ { ZYDIS_REGCLASS_CONTROL, 9, 32, 64 },
229      /* CR10       */ { ZYDIS_REGCLASS_CONTROL, 10, 32, 64 },
230      /* CR11       */ { ZYDIS_REGCLASS_CONTROL, 11, 32, 64 },
231      /* CR12       */ { ZYDIS_REGCLASS_CONTROL, 12, 32, 64 },
232      /* CR13       */ { ZYDIS_REGCLASS_CONTROL, 13, 32, 64 },
233      /* CR14       */ { ZYDIS_REGCLASS_CONTROL, 14, 32, 64 },
234      /* CR15       */ { ZYDIS_REGCLASS_CONTROL, 15, 32, 64 },
235      /* DR0        */ { ZYDIS_REGCLASS_DEBUG, 0, 32, 64 },
236      /* DR1        */ { ZYDIS_REGCLASS_DEBUG, 1, 32, 64 },
237      /* DR2        */ { ZYDIS_REGCLASS_DEBUG, 2, 32, 64 },
238      /* DR3        */ { ZYDIS_REGCLASS_DEBUG, 3, 32, 64 },
239      /* DR4        */ { ZYDIS_REGCLASS_DEBUG, 4, 32, 64 },
240      /* DR5        */ { ZYDIS_REGCLASS_DEBUG, 5, 32, 64 },
241      /* DR6        */ { ZYDIS_REGCLASS_DEBUG, 6, 32, 64 },
242      /* DR7        */ { ZYDIS_REGCLASS_DEBUG, 7, 32, 64 },
243      /* DR8        */ { ZYDIS_REGCLASS_DEBUG, 8, 32, 64 },
244      /* DR9        */ { ZYDIS_REGCLASS_DEBUG, 9, 32, 64 },
245      /* DR10       */ { ZYDIS_REGCLASS_DEBUG, 10, 32, 64 },
246      /* DR11       */ { ZYDIS_REGCLASS_DEBUG, 11, 32, 64 },
247      /* DR12       */ { ZYDIS_REGCLASS_DEBUG, 12, 32, 64 },
248      /* DR13       */ { ZYDIS_REGCLASS_DEBUG, 13, 32, 64 },
249      /* DR14       */ { ZYDIS_REGCLASS_DEBUG, 14, 32, 64 },
250      /* DR15       */ { ZYDIS_REGCLASS_DEBUG, 15, 32, 64 },
251      /* K0         */ { ZYDIS_REGCLASS_MASK, 0, 64, 64 },
252      /* K1         */ { ZYDIS_REGCLASS_MASK, 1, 64, 64 },
253      /* K2         */ { ZYDIS_REGCLASS_MASK, 2, 64, 64 },
254      /* K3         */ { ZYDIS_REGCLASS_MASK, 3, 64, 64 },
255      /* K4         */ { ZYDIS_REGCLASS_MASK, 4, 64, 64 },
256      /* K5         */ { ZYDIS_REGCLASS_MASK, 5, 64, 64 },
257      /* K6         */ { ZYDIS_REGCLASS_MASK, 6, 64, 64 },
258      /* K7         */ { ZYDIS_REGCLASS_MASK, 7, 64, 64 },
259      /* BND0       */ { ZYDIS_REGCLASS_BOUND, 0, 128, 128 },
260      /* BND1       */ { ZYDIS_REGCLASS_BOUND, 1, 128, 128 },
261      /* BND2       */ { ZYDIS_REGCLASS_BOUND, 2, 128, 128 },
262      /* BND3       */ { ZYDIS_REGCLASS_BOUND, 3, 128, 128 },
263      /* BNDCFG     */ { ZYDIS_REGCLASS_INVALID, -1, 64, 64 },
264      /* BNDSTATUS  */ { ZYDIS_REGCLASS_INVALID, -1, 64, 64 },
265      /* MXCSR      */ { ZYDIS_REGCLASS_INVALID, -1, 32, 32 },
266      /* PKRU       */ { ZYDIS_REGCLASS_INVALID, -1, 32, 32 },
267      /* XCR0       */ { ZYDIS_REGCLASS_INVALID, -1, 64, 64 },
268      /* UIF        */ { ZYDIS_REGCLASS_INVALID, -1, 1, 1 }
269  };