summaryrefslogtreecommitdiff
path: root/regs.h
blob: ecb01a634348b85ac7a4fbcce8e01857a99f5962 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
/* automatically generated from ./regs.dat - do not edit */

#ifndef NASM_REGS_H
#define NASM_REGS_H

#define EXPR_REG_START 1

enum reg_enum {
    R_zero = 0,
    R_none = -1,
    R_AH = EXPR_REG_START,
    R_AL,
    R_AX,
    R_BH,
    R_BL,
    R_BP,
    R_BPL,
    R_BX,
    R_CH,
    R_CL,
    R_CR0,
    R_CR1,
    R_CR10,
    R_CR11,
    R_CR12,
    R_CR13,
    R_CR14,
    R_CR15,
    R_CR2,
    R_CR3,
    R_CR4,
    R_CR5,
    R_CR6,
    R_CR7,
    R_CR8,
    R_CR9,
    R_CS,
    R_CX,
    R_DH,
    R_DI,
    R_DIL,
    R_DL,
    R_DR0,
    R_DR1,
    R_DR10,
    R_DR11,
    R_DR12,
    R_DR13,
    R_DR14,
    R_DR15,
    R_DR2,
    R_DR3,
    R_DR4,
    R_DR5,
    R_DR6,
    R_DR7,
    R_DR8,
    R_DR9,
    R_DS,
    R_DX,
    R_EAX,
    R_EBP,
    R_EBX,
    R_ECX,
    R_EDI,
    R_EDX,
    R_ES,
    R_ESI,
    R_ESP,
    R_FS,
    R_GS,
    R_MM0,
    R_MM1,
    R_MM2,
    R_MM3,
    R_MM4,
    R_MM5,
    R_MM6,
    R_MM7,
    R_R10,
    R_R10B,
    R_R10D,
    R_R10W,
    R_R11,
    R_R11B,
    R_R11D,
    R_R11W,
    R_R12,
    R_R12B,
    R_R12D,
    R_R12W,
    R_R13,
    R_R13B,
    R_R13D,
    R_R13W,
    R_R14,
    R_R14B,
    R_R14D,
    R_R14W,
    R_R15,
    R_R15B,
    R_R15D,
    R_R15W,
    R_R8,
    R_R8B,
    R_R8D,
    R_R8W,
    R_R9,
    R_R9B,
    R_R9D,
    R_R9W,
    R_RAX,
    R_RBP,
    R_RBX,
    R_RCX,
    R_RDI,
    R_RDX,
    R_RSI,
    R_RSP,
    R_SEGR6,
    R_SEGR7,
    R_SI,
    R_SIL,
    R_SP,
    R_SPL,
    R_SS,
    R_ST0,
    R_ST1,
    R_ST2,
    R_ST3,
    R_ST4,
    R_ST5,
    R_ST6,
    R_ST7,
    R_TR0,
    R_TR1,
    R_TR2,
    R_TR3,
    R_TR4,
    R_TR5,
    R_TR6,
    R_TR7,
    R_XMM0,
    R_XMM1,
    R_XMM10,
    R_XMM11,
    R_XMM12,
    R_XMM13,
    R_XMM14,
    R_XMM15,
    R_XMM2,
    R_XMM3,
    R_XMM4,
    R_XMM5,
    R_XMM6,
    R_XMM7,
    R_XMM8,
    R_XMM9,
    R_YMM0,
    R_YMM1,
    R_YMM10,
    R_YMM11,
    R_YMM12,
    R_YMM13,
    R_YMM14,
    R_YMM15,
    R_YMM2,
    R_YMM3,
    R_YMM4,
    R_YMM5,
    R_YMM6,
    R_YMM7,
    R_YMM8,
    R_YMM9,
    REG_ENUM_LIMIT
};

#define EXPR_REG_END 164

#define REG_NUM_AH       4
#define REG_NUM_AL       0
#define REG_NUM_AX       0
#define REG_NUM_BH       7
#define REG_NUM_BL       3
#define REG_NUM_BP       5
#define REG_NUM_BPL      5
#define REG_NUM_BX       3
#define REG_NUM_CH       5
#define REG_NUM_CL       1
#define REG_NUM_CR0      0
#define REG_NUM_CR1      1
#define REG_NUM_CR10    10
#define REG_NUM_CR11    11
#define REG_NUM_CR12    12
#define REG_NUM_CR13    13
#define REG_NUM_CR14    14
#define REG_NUM_CR15    15
#define REG_NUM_CR2      2
#define REG_NUM_CR3      3
#define REG_NUM_CR4      4
#define REG_NUM_CR5      5
#define REG_NUM_CR6      6
#define REG_NUM_CR7      7
#define REG_NUM_CR8      8
#define REG_NUM_CR9      9
#define REG_NUM_CS       1
#define REG_NUM_CX       1
#define REG_NUM_DH       6
#define REG_NUM_DI       7
#define REG_NUM_DIL      7
#define REG_NUM_DL       2
#define REG_NUM_DR0      0
#define REG_NUM_DR1      1
#define REG_NUM_DR10    10
#define REG_NUM_DR11    11
#define REG_NUM_DR12    12
#define REG_NUM_DR13    13
#define REG_NUM_DR14    14
#define REG_NUM_DR15    15
#define REG_NUM_DR2      2
#define REG_NUM_DR3      3
#define REG_NUM_DR4      4
#define REG_NUM_DR5      5
#define REG_NUM_DR6      6
#define REG_NUM_DR7      7
#define REG_NUM_DR8      8
#define REG_NUM_DR9      9
#define REG_NUM_DS       3
#define REG_NUM_DX       2
#define REG_NUM_EAX      0
#define REG_NUM_EBP      5
#define REG_NUM_EBX      3
#define REG_NUM_ECX      1
#define REG_NUM_EDI      7
#define REG_NUM_EDX      2
#define REG_NUM_ES       0
#define REG_NUM_ESI      6
#define REG_NUM_ESP      4
#define REG_NUM_FS       4
#define REG_NUM_GS       5
#define REG_NUM_MM0      0
#define REG_NUM_MM1      1
#define REG_NUM_MM2      2
#define REG_NUM_MM3      3
#define REG_NUM_MM4      4
#define REG_NUM_MM5      5
#define REG_NUM_MM6      6
#define REG_NUM_MM7      7
#define REG_NUM_R10     10
#define REG_NUM_R10B    10
#define REG_NUM_R10D    10
#define REG_NUM_R10W    10
#define REG_NUM_R11     11
#define REG_NUM_R11B    11
#define REG_NUM_R11D    11
#define REG_NUM_R11W    11
#define REG_NUM_R12     12
#define REG_NUM_R12B    12
#define REG_NUM_R12D    12
#define REG_NUM_R12W    12
#define REG_NUM_R13     13
#define REG_NUM_R13B    13
#define REG_NUM_R13D    13
#define REG_NUM_R13W    13
#define REG_NUM_R14     14
#define REG_NUM_R14B    14
#define REG_NUM_R14D    14
#define REG_NUM_R14W    14
#define REG_NUM_R15     15
#define REG_NUM_R15B    15
#define REG_NUM_R15D    15
#define REG_NUM_R15W    15
#define REG_NUM_R8       8
#define REG_NUM_R8B      8
#define REG_NUM_R8D      8
#define REG_NUM_R8W      8
#define REG_NUM_R9       9
#define REG_NUM_R9B      9
#define REG_NUM_R9D      9
#define REG_NUM_R9W      9
#define REG_NUM_RAX      0
#define REG_NUM_RBP      5
#define REG_NUM_RBX      3
#define REG_NUM_RCX      1
#define REG_NUM_RDI      7
#define REG_NUM_RDX      2
#define REG_NUM_RSI      6
#define REG_NUM_RSP      4
#define REG_NUM_SEGR6    6
#define REG_NUM_SEGR7    7
#define REG_NUM_SI       6
#define REG_NUM_SIL      6
#define REG_NUM_SP       4
#define REG_NUM_SPL      4
#define REG_NUM_SS       2
#define REG_NUM_ST0      0
#define REG_NUM_ST1      1
#define REG_NUM_ST2      2
#define REG_NUM_ST3      3
#define REG_NUM_ST4      4
#define REG_NUM_ST5      5
#define REG_NUM_ST6      6
#define REG_NUM_ST7      7
#define REG_NUM_TR0      0
#define REG_NUM_TR1      1
#define REG_NUM_TR2      2
#define REG_NUM_TR3      3
#define REG_NUM_TR4      4
#define REG_NUM_TR5      5
#define REG_NUM_TR6      6
#define REG_NUM_TR7      7
#define REG_NUM_XMM0     0
#define REG_NUM_XMM1     1
#define REG_NUM_XMM10   10
#define REG_NUM_XMM11   11
#define REG_NUM_XMM12   12
#define REG_NUM_XMM13   13
#define REG_NUM_XMM14   14
#define REG_NUM_XMM15   15
#define REG_NUM_XMM2     2
#define REG_NUM_XMM3     3
#define REG_NUM_XMM4     4
#define REG_NUM_XMM5     5
#define REG_NUM_XMM6     6
#define REG_NUM_XMM7     7
#define REG_NUM_XMM8     8
#define REG_NUM_XMM9     9
#define REG_NUM_YMM0     0
#define REG_NUM_YMM1     1
#define REG_NUM_YMM10   10
#define REG_NUM_YMM11   11
#define REG_NUM_YMM12   12
#define REG_NUM_YMM13   13
#define REG_NUM_YMM14   14
#define REG_NUM_YMM15   15
#define REG_NUM_YMM2     2
#define REG_NUM_YMM3     3
#define REG_NUM_YMM4     4
#define REG_NUM_YMM5     5
#define REG_NUM_YMM6     6
#define REG_NUM_YMM7     7
#define REG_NUM_YMM8     8
#define REG_NUM_YMM9     9


#endif /* NASM_REGS_H */