1
//===- TableGen'erated file -------------------------------------*- C++ -*-===//
3
// Register Information Source Fragment
5
// Automatically generated file, do not edit!
7
//===----------------------------------------------------------------------===//
11
namespace { // Register classes...
12
// CCR Register Class...
13
static const unsigned CCR[] = {
17
// CONTROL_REG_32 Register Class...
18
static const unsigned CONTROL_REG_32[] = {
19
X86::ECR0, X86::ECR1, X86::ECR2, X86::ECR3, X86::ECR4, X86::ECR5, X86::ECR6, X86::ECR7,
22
// CONTROL_REG_64 Register Class...
23
static const unsigned CONTROL_REG_64[] = {
24
X86::RCR0, X86::RCR1, X86::RCR2, X86::RCR3, X86::RCR4, X86::RCR5, X86::RCR6, X86::RCR7, X86::RCR8,
27
// DEBUG_REG Register Class...
28
static const unsigned DEBUG_REG[] = {
29
X86::DR0, X86::DR1, X86::DR2, X86::DR3, X86::DR4, X86::DR5, X86::DR6, X86::DR7,
32
// FR32 Register Class...
33
static const unsigned FR32[] = {
34
X86::XMM0, X86::XMM1, X86::XMM2, X86::XMM3, X86::XMM4, X86::XMM5, X86::XMM6, X86::XMM7, X86::XMM8, X86::XMM9, X86::XMM10, X86::XMM11, X86::XMM12, X86::XMM13, X86::XMM14, X86::XMM15,
37
// FR64 Register Class...
38
static const unsigned FR64[] = {
39
X86::XMM0, X86::XMM1, X86::XMM2, X86::XMM3, X86::XMM4, X86::XMM5, X86::XMM6, X86::XMM7, X86::XMM8, X86::XMM9, X86::XMM10, X86::XMM11, X86::XMM12, X86::XMM13, X86::XMM14, X86::XMM15,
42
// GR16 Register Class...
43
static const unsigned GR16[] = {
44
X86::AX, X86::CX, X86::DX, X86::SI, X86::DI, X86::BX, X86::BP, X86::SP, X86::R8W, X86::R9W, X86::R10W, X86::R11W, X86::R14W, X86::R15W, X86::R12W, X86::R13W,
47
// GR16_ABCD Register Class...
48
static const unsigned GR16_ABCD[] = {
49
X86::AX, X86::CX, X86::DX, X86::BX,
52
// GR16_NOREX Register Class...
53
static const unsigned GR16_NOREX[] = {
54
X86::AX, X86::CX, X86::DX, X86::SI, X86::DI, X86::BX, X86::BP, X86::SP,
57
// GR32 Register Class...
58
static const unsigned GR32[] = {
59
X86::EAX, X86::ECX, X86::EDX, X86::ESI, X86::EDI, X86::EBX, X86::EBP, X86::ESP, X86::R8D, X86::R9D, X86::R10D, X86::R11D, X86::R14D, X86::R15D, X86::R12D, X86::R13D,
62
// GR32_ABCD Register Class...
63
static const unsigned GR32_ABCD[] = {
64
X86::EAX, X86::ECX, X86::EDX, X86::EBX,
67
// GR32_AD Register Class...
68
static const unsigned GR32_AD[] = {
72
// GR32_NOREX Register Class...
73
static const unsigned GR32_NOREX[] = {
74
X86::EAX, X86::ECX, X86::EDX, X86::ESI, X86::EDI, X86::EBX, X86::EBP, X86::ESP,
77
// GR32_NOSP Register Class...
78
static const unsigned GR32_NOSP[] = {
79
X86::EAX, X86::ECX, X86::EDX, X86::ESI, X86::EDI, X86::EBX, X86::EBP, X86::R8D, X86::R9D, X86::R10D, X86::R11D, X86::R14D, X86::R15D, X86::R12D, X86::R13D,
82
// GR64 Register Class...
83
static const unsigned GR64[] = {
84
X86::RAX, X86::RCX, X86::RDX, X86::RSI, X86::RDI, X86::R8, X86::R9, X86::R10, X86::R11, X86::RBX, X86::R14, X86::R15, X86::R12, X86::R13, X86::RBP, X86::RSP, X86::RIP,
87
// GR64_ABCD Register Class...
88
static const unsigned GR64_ABCD[] = {
89
X86::RAX, X86::RCX, X86::RDX, X86::RBX,
92
// GR64_NOREX Register Class...
93
static const unsigned GR64_NOREX[] = {
94
X86::RAX, X86::RCX, X86::RDX, X86::RSI, X86::RDI, X86::RBX, X86::RBP, X86::RSP, X86::RIP,
97
// GR64_NOREX_NOSP Register Class...
98
static const unsigned GR64_NOREX_NOSP[] = {
99
X86::RAX, X86::RCX, X86::RDX, X86::RSI, X86::RDI, X86::RBX, X86::RBP,
102
// GR64_NOSP Register Class...
103
static const unsigned GR64_NOSP[] = {
104
X86::RAX, X86::RCX, X86::RDX, X86::RSI, X86::RDI, X86::R8, X86::R9, X86::R10, X86::R11, X86::RBX, X86::R14, X86::R15, X86::R12, X86::R13, X86::RBP,
107
// GR8 Register Class...
108
static const unsigned GR8[] = {
109
X86::AL, X86::CL, X86::DL, X86::AH, X86::CH, X86::DH, X86::BL, X86::BH, X86::SIL, X86::DIL, X86::BPL, X86::SPL, X86::R8B, X86::R9B, X86::R10B, X86::R11B, X86::R14B, X86::R15B, X86::R12B, X86::R13B,
112
// GR8_ABCD_H Register Class...
113
static const unsigned GR8_ABCD_H[] = {
114
X86::AH, X86::CH, X86::DH, X86::BH,
117
// GR8_ABCD_L Register Class...
118
static const unsigned GR8_ABCD_L[] = {
119
X86::AL, X86::CL, X86::DL, X86::BL,
122
// GR8_NOREX Register Class...
123
static const unsigned GR8_NOREX[] = {
124
X86::AL, X86::CL, X86::DL, X86::AH, X86::CH, X86::DH, X86::BL, X86::BH,
127
// RFP32 Register Class...
128
static const unsigned RFP32[] = {
129
X86::FP0, X86::FP1, X86::FP2, X86::FP3, X86::FP4, X86::FP5, X86::FP6,
132
// RFP64 Register Class...
133
static const unsigned RFP64[] = {
134
X86::FP0, X86::FP1, X86::FP2, X86::FP3, X86::FP4, X86::FP5, X86::FP6,
137
// RFP80 Register Class...
138
static const unsigned RFP80[] = {
139
X86::FP0, X86::FP1, X86::FP2, X86::FP3, X86::FP4, X86::FP5, X86::FP6,
142
// RST Register Class...
143
static const unsigned RST[] = {
144
X86::ST0, X86::ST1, X86::ST2, X86::ST3, X86::ST4, X86::ST5, X86::ST6, X86::ST7,
147
// SEGMENT_REG Register Class...
148
static const unsigned SEGMENT_REG[] = {
149
X86::CS, X86::DS, X86::SS, X86::ES, X86::FS, X86::GS,
152
// VR128 Register Class...
153
static const unsigned VR128[] = {
154
X86::XMM0, X86::XMM1, X86::XMM2, X86::XMM3, X86::XMM4, X86::XMM5, X86::XMM6, X86::XMM7, X86::XMM8, X86::XMM9, X86::XMM10, X86::XMM11, X86::XMM12, X86::XMM13, X86::XMM14, X86::XMM15,
157
// VR256 Register Class...
158
static const unsigned VR256[] = {
159
X86::YMM0, X86::YMM1, X86::YMM2, X86::YMM3, X86::YMM4, X86::YMM5, X86::YMM6, X86::YMM7, X86::YMM8, X86::YMM9, X86::YMM10, X86::YMM11, X86::YMM12, X86::YMM13, X86::YMM14, X86::YMM15,
162
// VR64 Register Class...
163
static const unsigned VR64[] = {
164
X86::MM0, X86::MM1, X86::MM2, X86::MM3, X86::MM4, X86::MM5, X86::MM6, X86::MM7,
167
// CCRVTs Register Class Value Types...
168
static const EVT CCRVTs[] = {
172
// CONTROL_REG_32VTs Register Class Value Types...
173
static const EVT CONTROL_REG_32VTs[] = {
177
// CONTROL_REG_64VTs Register Class Value Types...
178
static const EVT CONTROL_REG_64VTs[] = {
182
// DEBUG_REGVTs Register Class Value Types...
183
static const EVT DEBUG_REGVTs[] = {
187
// FR32VTs Register Class Value Types...
188
static const EVT FR32VTs[] = {
192
// FR64VTs Register Class Value Types...
193
static const EVT FR64VTs[] = {
197
// GR16VTs Register Class Value Types...
198
static const EVT GR16VTs[] = {
202
// GR16_ABCDVTs Register Class Value Types...
203
static const EVT GR16_ABCDVTs[] = {
207
// GR16_NOREXVTs Register Class Value Types...
208
static const EVT GR16_NOREXVTs[] = {
212
// GR32VTs Register Class Value Types...
213
static const EVT GR32VTs[] = {
217
// GR32_ABCDVTs Register Class Value Types...
218
static const EVT GR32_ABCDVTs[] = {
222
// GR32_ADVTs Register Class Value Types...
223
static const EVT GR32_ADVTs[] = {
227
// GR32_NOREXVTs Register Class Value Types...
228
static const EVT GR32_NOREXVTs[] = {
232
// GR32_NOSPVTs Register Class Value Types...
233
static const EVT GR32_NOSPVTs[] = {
237
// GR64VTs Register Class Value Types...
238
static const EVT GR64VTs[] = {
242
// GR64_ABCDVTs Register Class Value Types...
243
static const EVT GR64_ABCDVTs[] = {
247
// GR64_NOREXVTs Register Class Value Types...
248
static const EVT GR64_NOREXVTs[] = {
252
// GR64_NOREX_NOSPVTs Register Class Value Types...
253
static const EVT GR64_NOREX_NOSPVTs[] = {
257
// GR64_NOSPVTs Register Class Value Types...
258
static const EVT GR64_NOSPVTs[] = {
262
// GR8VTs Register Class Value Types...
263
static const EVT GR8VTs[] = {
267
// GR8_ABCD_HVTs Register Class Value Types...
268
static const EVT GR8_ABCD_HVTs[] = {
272
// GR8_ABCD_LVTs Register Class Value Types...
273
static const EVT GR8_ABCD_LVTs[] = {
277
// GR8_NOREXVTs Register Class Value Types...
278
static const EVT GR8_NOREXVTs[] = {
282
// RFP32VTs Register Class Value Types...
283
static const EVT RFP32VTs[] = {
287
// RFP64VTs Register Class Value Types...
288
static const EVT RFP64VTs[] = {
292
// RFP80VTs Register Class Value Types...
293
static const EVT RFP80VTs[] = {
297
// RSTVTs Register Class Value Types...
298
static const EVT RSTVTs[] = {
299
MVT::f80, MVT::f64, MVT::f32, MVT::Other
302
// SEGMENT_REGVTs Register Class Value Types...
303
static const EVT SEGMENT_REGVTs[] = {
307
// VR128VTs Register Class Value Types...
308
static const EVT VR128VTs[] = {
309
MVT::v16i8, MVT::v8i16, MVT::v4i32, MVT::v2i64, MVT::v4f32, MVT::v2f64, MVT::Other
312
// VR256VTs Register Class Value Types...
313
static const EVT VR256VTs[] = {
314
MVT::v8i32, MVT::v4i64, MVT::v8f32, MVT::v4f64, MVT::Other
317
// VR64VTs Register Class Value Types...
318
static const EVT VR64VTs[] = {
319
MVT::v8i8, MVT::v4i16, MVT::v2i32, MVT::v1i64, MVT::v2f32, MVT::Other
322
} // end anonymous namespace
324
namespace X86 { // Register class instances
325
CCRClass CCRRegClass;
326
CONTROL_REG_32Class CONTROL_REG_32RegClass;
327
CONTROL_REG_64Class CONTROL_REG_64RegClass;
328
DEBUG_REGClass DEBUG_REGRegClass;
329
FR32Class FR32RegClass;
330
FR64Class FR64RegClass;
331
GR16Class GR16RegClass;
332
GR16_ABCDClass GR16_ABCDRegClass;
333
GR16_NOREXClass GR16_NOREXRegClass;
334
GR32Class GR32RegClass;
335
GR32_ABCDClass GR32_ABCDRegClass;
336
GR32_ADClass GR32_ADRegClass;
337
GR32_NOREXClass GR32_NOREXRegClass;
338
GR32_NOSPClass GR32_NOSPRegClass;
339
GR64Class GR64RegClass;
340
GR64_ABCDClass GR64_ABCDRegClass;
341
GR64_NOREXClass GR64_NOREXRegClass;
342
GR64_NOREX_NOSPClass GR64_NOREX_NOSPRegClass;
343
GR64_NOSPClass GR64_NOSPRegClass;
344
GR8Class GR8RegClass;
345
GR8_ABCD_HClass GR8_ABCD_HRegClass;
346
GR8_ABCD_LClass GR8_ABCD_LRegClass;
347
GR8_NOREXClass GR8_NOREXRegClass;
348
RFP32Class RFP32RegClass;
349
RFP64Class RFP64RegClass;
350
RFP80Class RFP80RegClass;
351
RSTClass RSTRegClass;
352
SEGMENT_REGClass SEGMENT_REGRegClass;
353
VR128Class VR128RegClass;
354
VR256Class VR256RegClass;
355
VR64Class VR64RegClass;
357
// CCR Sub-register Classes...
358
static const TargetRegisterClass* const CCRSubRegClasses[] = {
362
// CONTROL_REG_32 Sub-register Classes...
363
static const TargetRegisterClass* const CONTROL_REG_32SubRegClasses[] = {
367
// CONTROL_REG_64 Sub-register Classes...
368
static const TargetRegisterClass* const CONTROL_REG_64SubRegClasses[] = {
372
// DEBUG_REG Sub-register Classes...
373
static const TargetRegisterClass* const DEBUG_REGSubRegClasses[] = {
377
// FR32 Sub-register Classes...
378
static const TargetRegisterClass* const FR32SubRegClasses[] = {
382
// FR64 Sub-register Classes...
383
static const TargetRegisterClass* const FR64SubRegClasses[] = {
387
// GR16 Sub-register Classes...
388
static const TargetRegisterClass* const GR16SubRegClasses[] = {
389
&X86::GR8RegClass, &X86::GR8RegClass, NULL
392
// GR16_ABCD Sub-register Classes...
393
static const TargetRegisterClass* const GR16_ABCDSubRegClasses[] = {
394
&X86::GR8_ABCD_LRegClass, &X86::GR8_ABCD_HRegClass, NULL
397
// GR16_NOREX Sub-register Classes...
398
static const TargetRegisterClass* const GR16_NOREXSubRegClasses[] = {
399
&X86::GR8_NOREXRegClass, &X86::GR8_NOREXRegClass, NULL
402
// GR32 Sub-register Classes...
403
static const TargetRegisterClass* const GR32SubRegClasses[] = {
404
&X86::GR8RegClass, &X86::GR8RegClass, &X86::GR16RegClass, NULL
407
// GR32_ABCD Sub-register Classes...
408
static const TargetRegisterClass* const GR32_ABCDSubRegClasses[] = {
409
&X86::GR8_ABCD_LRegClass, &X86::GR8_ABCD_HRegClass, &X86::GR16_ABCDRegClass, NULL
412
// GR32_AD Sub-register Classes...
413
static const TargetRegisterClass* const GR32_ADSubRegClasses[] = {
414
&X86::GR8_ABCD_LRegClass, &X86::GR8_ABCD_HRegClass, &X86::GR16_ABCDRegClass, NULL
417
// GR32_NOREX Sub-register Classes...
418
static const TargetRegisterClass* const GR32_NOREXSubRegClasses[] = {
419
&X86::GR8_NOREXRegClass, &X86::GR8_NOREXRegClass, &X86::GR16_NOREXRegClass, NULL
422
// GR32_NOSP Sub-register Classes...
423
static const TargetRegisterClass* const GR32_NOSPSubRegClasses[] = {
424
&X86::GR8RegClass, &X86::GR8RegClass, &X86::GR16RegClass, NULL
427
// GR64 Sub-register Classes...
428
static const TargetRegisterClass* const GR64SubRegClasses[] = {
429
&X86::GR8RegClass, &X86::GR8RegClass, &X86::GR16RegClass, &X86::GR32RegClass, NULL
432
// GR64_ABCD Sub-register Classes...
433
static const TargetRegisterClass* const GR64_ABCDSubRegClasses[] = {
434
&X86::GR8_ABCD_LRegClass, &X86::GR8_ABCD_HRegClass, &X86::GR16_ABCDRegClass, &X86::GR32_ABCDRegClass, NULL
437
// GR64_NOREX Sub-register Classes...
438
static const TargetRegisterClass* const GR64_NOREXSubRegClasses[] = {
439
&X86::GR8_NOREXRegClass, &X86::GR8_NOREXRegClass, &X86::GR16_NOREXRegClass, &X86::GR32_NOREXRegClass, NULL
442
// GR64_NOREX_NOSP Sub-register Classes...
443
static const TargetRegisterClass* const GR64_NOREX_NOSPSubRegClasses[] = {
444
&X86::GR8_NOREXRegClass, &X86::GR8_NOREXRegClass, &X86::GR16_NOREXRegClass, &X86::GR32_NOREXRegClass, NULL
447
// GR64_NOSP Sub-register Classes...
448
static const TargetRegisterClass* const GR64_NOSPSubRegClasses[] = {
449
&X86::GR8RegClass, &X86::GR8RegClass, &X86::GR16RegClass, &X86::GR32_NOSPRegClass, NULL
452
// GR8 Sub-register Classes...
453
static const TargetRegisterClass* const GR8SubRegClasses[] = {
457
// GR8_ABCD_H Sub-register Classes...
458
static const TargetRegisterClass* const GR8_ABCD_HSubRegClasses[] = {
462
// GR8_ABCD_L Sub-register Classes...
463
static const TargetRegisterClass* const GR8_ABCD_LSubRegClasses[] = {
467
// GR8_NOREX Sub-register Classes...
468
static const TargetRegisterClass* const GR8_NOREXSubRegClasses[] = {
472
// RFP32 Sub-register Classes...
473
static const TargetRegisterClass* const RFP32SubRegClasses[] = {
477
// RFP64 Sub-register Classes...
478
static const TargetRegisterClass* const RFP64SubRegClasses[] = {
482
// RFP80 Sub-register Classes...
483
static const TargetRegisterClass* const RFP80SubRegClasses[] = {
487
// RST Sub-register Classes...
488
static const TargetRegisterClass* const RSTSubRegClasses[] = {
492
// SEGMENT_REG Sub-register Classes...
493
static const TargetRegisterClass* const SEGMENT_REGSubRegClasses[] = {
497
// VR128 Sub-register Classes...
498
static const TargetRegisterClass* const VR128SubRegClasses[] = {
499
&X86::FR32RegClass, &X86::FR64RegClass, NULL
502
// VR256 Sub-register Classes...
503
static const TargetRegisterClass* const VR256SubRegClasses[] = {
504
&X86::FR32RegClass, &X86::FR64RegClass, &X86::VR128RegClass, NULL
507
// VR64 Sub-register Classes...
508
static const TargetRegisterClass* const VR64SubRegClasses[] = {
512
// CCR Super-register Classes...
513
static const TargetRegisterClass* const CCRSuperRegClasses[] = {
517
// CONTROL_REG_32 Super-register Classes...
518
static const TargetRegisterClass* const CONTROL_REG_32SuperRegClasses[] = {
522
// CONTROL_REG_64 Super-register Classes...
523
static const TargetRegisterClass* const CONTROL_REG_64SuperRegClasses[] = {
527
// DEBUG_REG Super-register Classes...
528
static const TargetRegisterClass* const DEBUG_REGSuperRegClasses[] = {
532
// FR32 Super-register Classes...
533
static const TargetRegisterClass* const FR32SuperRegClasses[] = {
534
&X86::VR128RegClass, &X86::VR256RegClass, NULL
537
// FR64 Super-register Classes...
538
static const TargetRegisterClass* const FR64SuperRegClasses[] = {
539
&X86::VR128RegClass, &X86::VR256RegClass, NULL
542
// GR16 Super-register Classes...
543
static const TargetRegisterClass* const GR16SuperRegClasses[] = {
544
&X86::GR32RegClass, &X86::GR32_NOSPRegClass, &X86::GR64RegClass, &X86::GR64_NOSPRegClass, NULL
547
// GR16_ABCD Super-register Classes...
548
static const TargetRegisterClass* const GR16_ABCDSuperRegClasses[] = {
549
&X86::GR32_ABCDRegClass, &X86::GR32_ADRegClass, &X86::GR64_ABCDRegClass, NULL
552
// GR16_NOREX Super-register Classes...
553
static const TargetRegisterClass* const GR16_NOREXSuperRegClasses[] = {
554
&X86::GR32_NOREXRegClass, &X86::GR64_NOREXRegClass, &X86::GR64_NOREX_NOSPRegClass, NULL
557
// GR32 Super-register Classes...
558
static const TargetRegisterClass* const GR32SuperRegClasses[] = {
559
&X86::GR64RegClass, NULL
562
// GR32_ABCD Super-register Classes...
563
static const TargetRegisterClass* const GR32_ABCDSuperRegClasses[] = {
564
&X86::GR64_ABCDRegClass, NULL
567
// GR32_AD Super-register Classes...
568
static const TargetRegisterClass* const GR32_ADSuperRegClasses[] = {
572
// GR32_NOREX Super-register Classes...
573
static const TargetRegisterClass* const GR32_NOREXSuperRegClasses[] = {
574
&X86::GR64_NOREXRegClass, &X86::GR64_NOREX_NOSPRegClass, NULL
577
// GR32_NOSP Super-register Classes...
578
static const TargetRegisterClass* const GR32_NOSPSuperRegClasses[] = {
579
&X86::GR64_NOSPRegClass, NULL
582
// GR64 Super-register Classes...
583
static const TargetRegisterClass* const GR64SuperRegClasses[] = {
587
// GR64_ABCD Super-register Classes...
588
static const TargetRegisterClass* const GR64_ABCDSuperRegClasses[] = {
592
// GR64_NOREX Super-register Classes...
593
static const TargetRegisterClass* const GR64_NOREXSuperRegClasses[] = {
597
// GR64_NOREX_NOSP Super-register Classes...
598
static const TargetRegisterClass* const GR64_NOREX_NOSPSuperRegClasses[] = {
602
// GR64_NOSP Super-register Classes...
603
static const TargetRegisterClass* const GR64_NOSPSuperRegClasses[] = {
607
// GR8 Super-register Classes...
608
static const TargetRegisterClass* const GR8SuperRegClasses[] = {
609
&X86::GR16RegClass, &X86::GR32RegClass, &X86::GR32_NOSPRegClass, &X86::GR64RegClass, &X86::GR64_NOSPRegClass, NULL
612
// GR8_ABCD_H Super-register Classes...
613
static const TargetRegisterClass* const GR8_ABCD_HSuperRegClasses[] = {
614
&X86::GR16_ABCDRegClass, &X86::GR32_ABCDRegClass, &X86::GR32_ADRegClass, &X86::GR64_ABCDRegClass, NULL
617
// GR8_ABCD_L Super-register Classes...
618
static const TargetRegisterClass* const GR8_ABCD_LSuperRegClasses[] = {
619
&X86::GR16_ABCDRegClass, &X86::GR32_ABCDRegClass, &X86::GR32_ADRegClass, &X86::GR64_ABCDRegClass, NULL
622
// GR8_NOREX Super-register Classes...
623
static const TargetRegisterClass* const GR8_NOREXSuperRegClasses[] = {
624
&X86::GR16_NOREXRegClass, &X86::GR32_NOREXRegClass, &X86::GR64_NOREXRegClass, &X86::GR64_NOREX_NOSPRegClass, NULL
627
// RFP32 Super-register Classes...
628
static const TargetRegisterClass* const RFP32SuperRegClasses[] = {
632
// RFP64 Super-register Classes...
633
static const TargetRegisterClass* const RFP64SuperRegClasses[] = {
637
// RFP80 Super-register Classes...
638
static const TargetRegisterClass* const RFP80SuperRegClasses[] = {
642
// RST Super-register Classes...
643
static const TargetRegisterClass* const RSTSuperRegClasses[] = {
647
// SEGMENT_REG Super-register Classes...
648
static const TargetRegisterClass* const SEGMENT_REGSuperRegClasses[] = {
652
// VR128 Super-register Classes...
653
static const TargetRegisterClass* const VR128SuperRegClasses[] = {
654
&X86::VR256RegClass, NULL
657
// VR256 Super-register Classes...
658
static const TargetRegisterClass* const VR256SuperRegClasses[] = {
662
// VR64 Super-register Classes...
663
static const TargetRegisterClass* const VR64SuperRegClasses[] = {
667
// CCR Register Class sub-classes...
668
static const TargetRegisterClass* const CCRSubclasses[] = {
672
// CONTROL_REG_32 Register Class sub-classes...
673
static const TargetRegisterClass* const CONTROL_REG_32Subclasses[] = {
677
// CONTROL_REG_64 Register Class sub-classes...
678
static const TargetRegisterClass* const CONTROL_REG_64Subclasses[] = {
682
// DEBUG_REG Register Class sub-classes...
683
static const TargetRegisterClass* const DEBUG_REGSubclasses[] = {
687
// FR32 Register Class sub-classes...
688
static const TargetRegisterClass* const FR32Subclasses[] = {
689
&X86::FR64RegClass, &X86::VR128RegClass, NULL
692
// FR64 Register Class sub-classes...
693
static const TargetRegisterClass* const FR64Subclasses[] = {
694
&X86::VR128RegClass, NULL
697
// GR16 Register Class sub-classes...
698
static const TargetRegisterClass* const GR16Subclasses[] = {
699
&X86::GR16_ABCDRegClass, &X86::GR16_NOREXRegClass, NULL
702
// GR16_ABCD Register Class sub-classes...
703
static const TargetRegisterClass* const GR16_ABCDSubclasses[] = {
707
// GR16_NOREX Register Class sub-classes...
708
static const TargetRegisterClass* const GR16_NOREXSubclasses[] = {
709
&X86::GR16_ABCDRegClass, NULL
712
// GR32 Register Class sub-classes...
713
static const TargetRegisterClass* const GR32Subclasses[] = {
714
&X86::GR32_ABCDRegClass, &X86::GR32_ADRegClass, &X86::GR32_NOREXRegClass, &X86::GR32_NOSPRegClass, NULL
717
// GR32_ABCD Register Class sub-classes...
718
static const TargetRegisterClass* const GR32_ABCDSubclasses[] = {
719
&X86::GR32_ADRegClass, NULL
722
// GR32_AD Register Class sub-classes...
723
static const TargetRegisterClass* const GR32_ADSubclasses[] = {
727
// GR32_NOREX Register Class sub-classes...
728
static const TargetRegisterClass* const GR32_NOREXSubclasses[] = {
729
&X86::GR32_ABCDRegClass, &X86::GR32_ADRegClass, NULL
732
// GR32_NOSP Register Class sub-classes...
733
static const TargetRegisterClass* const GR32_NOSPSubclasses[] = {
734
&X86::GR32_ABCDRegClass, &X86::GR32_ADRegClass, NULL
737
// GR64 Register Class sub-classes...
738
static const TargetRegisterClass* const GR64Subclasses[] = {
739
&X86::GR64_ABCDRegClass, &X86::GR64_NOREXRegClass, &X86::GR64_NOREX_NOSPRegClass, &X86::GR64_NOSPRegClass, NULL
742
// GR64_ABCD Register Class sub-classes...
743
static const TargetRegisterClass* const GR64_ABCDSubclasses[] = {
747
// GR64_NOREX Register Class sub-classes...
748
static const TargetRegisterClass* const GR64_NOREXSubclasses[] = {
749
&X86::GR64_ABCDRegClass, &X86::GR64_NOREX_NOSPRegClass, NULL
752
// GR64_NOREX_NOSP Register Class sub-classes...
753
static const TargetRegisterClass* const GR64_NOREX_NOSPSubclasses[] = {
754
&X86::GR64_ABCDRegClass, NULL
757
// GR64_NOSP Register Class sub-classes...
758
static const TargetRegisterClass* const GR64_NOSPSubclasses[] = {
759
&X86::GR64_ABCDRegClass, &X86::GR64_NOREX_NOSPRegClass, NULL
762
// GR8 Register Class sub-classes...
763
static const TargetRegisterClass* const GR8Subclasses[] = {
764
&X86::GR8_ABCD_HRegClass, &X86::GR8_ABCD_LRegClass, &X86::GR8_NOREXRegClass, NULL
767
// GR8_ABCD_H Register Class sub-classes...
768
static const TargetRegisterClass* const GR8_ABCD_HSubclasses[] = {
772
// GR8_ABCD_L Register Class sub-classes...
773
static const TargetRegisterClass* const GR8_ABCD_LSubclasses[] = {
777
// GR8_NOREX Register Class sub-classes...
778
static const TargetRegisterClass* const GR8_NOREXSubclasses[] = {
779
&X86::GR8_ABCD_HRegClass, &X86::GR8_ABCD_LRegClass, NULL
782
// RFP32 Register Class sub-classes...
783
static const TargetRegisterClass* const RFP32Subclasses[] = {
784
&X86::RFP64RegClass, &X86::RFP80RegClass, NULL
787
// RFP64 Register Class sub-classes...
788
static const TargetRegisterClass* const RFP64Subclasses[] = {
789
&X86::RFP80RegClass, NULL
792
// RFP80 Register Class sub-classes...
793
static const TargetRegisterClass* const RFP80Subclasses[] = {
797
// RST Register Class sub-classes...
798
static const TargetRegisterClass* const RSTSubclasses[] = {
802
// SEGMENT_REG Register Class sub-classes...
803
static const TargetRegisterClass* const SEGMENT_REGSubclasses[] = {
807
// VR128 Register Class sub-classes...
808
static const TargetRegisterClass* const VR128Subclasses[] = {
812
// VR256 Register Class sub-classes...
813
static const TargetRegisterClass* const VR256Subclasses[] = {
817
// VR64 Register Class sub-classes...
818
static const TargetRegisterClass* const VR64Subclasses[] = {
822
// CCR Register Class super-classes...
823
static const TargetRegisterClass* const CCRSuperclasses[] = {
827
// CONTROL_REG_32 Register Class super-classes...
828
static const TargetRegisterClass* const CONTROL_REG_32Superclasses[] = {
832
// CONTROL_REG_64 Register Class super-classes...
833
static const TargetRegisterClass* const CONTROL_REG_64Superclasses[] = {
837
// DEBUG_REG Register Class super-classes...
838
static const TargetRegisterClass* const DEBUG_REGSuperclasses[] = {
842
// FR32 Register Class super-classes...
843
static const TargetRegisterClass* const FR32Superclasses[] = {
847
// FR64 Register Class super-classes...
848
static const TargetRegisterClass* const FR64Superclasses[] = {
849
&X86::FR32RegClass, NULL
852
// GR16 Register Class super-classes...
853
static const TargetRegisterClass* const GR16Superclasses[] = {
857
// GR16_ABCD Register Class super-classes...
858
static const TargetRegisterClass* const GR16_ABCDSuperclasses[] = {
859
&X86::GR16RegClass, &X86::GR16_NOREXRegClass, NULL
862
// GR16_NOREX Register Class super-classes...
863
static const TargetRegisterClass* const GR16_NOREXSuperclasses[] = {
864
&X86::GR16RegClass, NULL
867
// GR32 Register Class super-classes...
868
static const TargetRegisterClass* const GR32Superclasses[] = {
872
// GR32_ABCD Register Class super-classes...
873
static const TargetRegisterClass* const GR32_ABCDSuperclasses[] = {
874
&X86::GR32RegClass, &X86::GR32_NOREXRegClass, &X86::GR32_NOSPRegClass, NULL
877
// GR32_AD Register Class super-classes...
878
static const TargetRegisterClass* const GR32_ADSuperclasses[] = {
879
&X86::GR32RegClass, &X86::GR32_ABCDRegClass, &X86::GR32_NOREXRegClass, &X86::GR32_NOSPRegClass, NULL
882
// GR32_NOREX Register Class super-classes...
883
static const TargetRegisterClass* const GR32_NOREXSuperclasses[] = {
884
&X86::GR32RegClass, NULL
887
// GR32_NOSP Register Class super-classes...
888
static const TargetRegisterClass* const GR32_NOSPSuperclasses[] = {
889
&X86::GR32RegClass, NULL
892
// GR64 Register Class super-classes...
893
static const TargetRegisterClass* const GR64Superclasses[] = {
897
// GR64_ABCD Register Class super-classes...
898
static const TargetRegisterClass* const GR64_ABCDSuperclasses[] = {
899
&X86::GR64RegClass, &X86::GR64_NOREXRegClass, &X86::GR64_NOREX_NOSPRegClass, &X86::GR64_NOSPRegClass, NULL
902
// GR64_NOREX Register Class super-classes...
903
static const TargetRegisterClass* const GR64_NOREXSuperclasses[] = {
904
&X86::GR64RegClass, NULL
907
// GR64_NOREX_NOSP Register Class super-classes...
908
static const TargetRegisterClass* const GR64_NOREX_NOSPSuperclasses[] = {
909
&X86::GR64RegClass, &X86::GR64_NOREXRegClass, &X86::GR64_NOSPRegClass, NULL
912
// GR64_NOSP Register Class super-classes...
913
static const TargetRegisterClass* const GR64_NOSPSuperclasses[] = {
914
&X86::GR64RegClass, NULL
917
// GR8 Register Class super-classes...
918
static const TargetRegisterClass* const GR8Superclasses[] = {
922
// GR8_ABCD_H Register Class super-classes...
923
static const TargetRegisterClass* const GR8_ABCD_HSuperclasses[] = {
924
&X86::GR8RegClass, &X86::GR8_NOREXRegClass, NULL
927
// GR8_ABCD_L Register Class super-classes...
928
static const TargetRegisterClass* const GR8_ABCD_LSuperclasses[] = {
929
&X86::GR8RegClass, &X86::GR8_NOREXRegClass, NULL
932
// GR8_NOREX Register Class super-classes...
933
static const TargetRegisterClass* const GR8_NOREXSuperclasses[] = {
934
&X86::GR8RegClass, NULL
937
// RFP32 Register Class super-classes...
938
static const TargetRegisterClass* const RFP32Superclasses[] = {
942
// RFP64 Register Class super-classes...
943
static const TargetRegisterClass* const RFP64Superclasses[] = {
944
&X86::RFP32RegClass, NULL
947
// RFP80 Register Class super-classes...
948
static const TargetRegisterClass* const RFP80Superclasses[] = {
949
&X86::RFP32RegClass, &X86::RFP64RegClass, NULL
952
// RST Register Class super-classes...
953
static const TargetRegisterClass* const RSTSuperclasses[] = {
957
// SEGMENT_REG Register Class super-classes...
958
static const TargetRegisterClass* const SEGMENT_REGSuperclasses[] = {
962
// VR128 Register Class super-classes...
963
static const TargetRegisterClass* const VR128Superclasses[] = {
964
&X86::FR32RegClass, &X86::FR64RegClass, NULL
967
// VR256 Register Class super-classes...
968
static const TargetRegisterClass* const VR256Superclasses[] = {
972
// VR64 Register Class super-classes...
973
static const TargetRegisterClass* const VR64Superclasses[] = {
978
CCRClass::CCRClass() : TargetRegisterClass(CCRRegClassID, "CCR", CCRVTs, CCRSubclasses, CCRSuperclasses, CCRSubRegClasses, CCRSuperRegClasses, 4, 4, -1, CCR, CCR + 1) {}
980
CONTROL_REG_32Class::CONTROL_REG_32Class() : TargetRegisterClass(CONTROL_REG_32RegClassID, "CONTROL_REG_32", CONTROL_REG_32VTs, CONTROL_REG_32Subclasses, CONTROL_REG_32Superclasses, CONTROL_REG_32SubRegClasses, CONTROL_REG_32SuperRegClasses, 4, 4, 1, CONTROL_REG_32, CONTROL_REG_32 + 8) {}
982
CONTROL_REG_64Class::CONTROL_REG_64Class() : TargetRegisterClass(CONTROL_REG_64RegClassID, "CONTROL_REG_64", CONTROL_REG_64VTs, CONTROL_REG_64Subclasses, CONTROL_REG_64Superclasses, CONTROL_REG_64SubRegClasses, CONTROL_REG_64SuperRegClasses, 8, 8, 1, CONTROL_REG_64, CONTROL_REG_64 + 9) {}
984
DEBUG_REGClass::DEBUG_REGClass() : TargetRegisterClass(DEBUG_REGRegClassID, "DEBUG_REG", DEBUG_REGVTs, DEBUG_REGSubclasses, DEBUG_REGSuperclasses, DEBUG_REGSubRegClasses, DEBUG_REGSuperRegClasses, 4, 4, 1, DEBUG_REG, DEBUG_REG + 8) {}
987
FR32Class::allocation_order_end(const MachineFunction &MF) const {
988
const TargetMachine &TM = MF.getTarget();
989
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
990
if (!Subtarget.is64Bit())
991
return end()-8; // Only XMM0 to XMM7 are available in 32-bit mode.
996
FR32Class::FR32Class() : TargetRegisterClass(FR32RegClassID, "FR32", FR32VTs, FR32Subclasses, FR32Superclasses, FR32SubRegClasses, FR32SuperRegClasses, 4, 4, 1, FR32, FR32 + 16) {}
999
FR64Class::allocation_order_end(const MachineFunction &MF) const {
1000
const TargetMachine &TM = MF.getTarget();
1001
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1002
if (!Subtarget.is64Bit())
1003
return end()-8; // Only XMM0 to XMM7 are available in 32-bit mode.
1008
FR64Class::FR64Class() : TargetRegisterClass(FR64RegClassID, "FR64", FR64VTs, FR64Subclasses, FR64Superclasses, FR64SubRegClasses, FR64SuperRegClasses, 8, 8, 1, FR64, FR64 + 16) {}
1010
static const unsigned X86_GR16_AO_64[] = {
1011
X86::AX, X86::CX, X86::DX, X86::SI, X86::DI,
1012
X86::R8W, X86::R9W, X86::R10W, X86::R11W,
1013
X86::BX, X86::R14W, X86::R15W, X86::R12W, X86::R13W, X86::BP
1017
GR16Class::allocation_order_begin(const MachineFunction &MF) const {
1018
const TargetMachine &TM = MF.getTarget();
1019
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1020
if (Subtarget.is64Bit())
1021
return X86_GR16_AO_64;
1027
GR16Class::allocation_order_end(const MachineFunction &MF) const {
1028
const TargetMachine &TM = MF.getTarget();
1029
const TargetRegisterInfo *RI = TM.getRegisterInfo();
1030
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1031
if (Subtarget.is64Bit()) {
1032
// Does the function dedicate RBP to being a frame ptr?
1034
// If so, don't allocate SP or BP.
1035
return array_endof(X86_GR16_AO_64) - 1;
1037
// If not, just don't allocate SP.
1038
return array_endof(X86_GR16_AO_64);
1040
// Does the function dedicate EBP to being a frame ptr?
1042
// If so, don't allocate SP or BP.
1045
// If not, just don't allocate SP.
1050
GR16Class::GR16Class() : TargetRegisterClass(GR16RegClassID, "GR16", GR16VTs, GR16Subclasses, GR16Superclasses, GR16SubRegClasses, GR16SuperRegClasses, 2, 2, 1, GR16, GR16 + 16) {}
1052
GR16_ABCDClass::GR16_ABCDClass() : TargetRegisterClass(GR16_ABCDRegClassID, "GR16_ABCD", GR16_ABCDVTs, GR16_ABCDSubclasses, GR16_ABCDSuperclasses, GR16_ABCDSubRegClasses, GR16_ABCDSuperRegClasses, 2, 2, 1, GR16_ABCD, GR16_ABCD + 4) {}
1054
GR16_NOREXClass::iterator
1055
GR16_NOREXClass::allocation_order_end(const MachineFunction &MF) const {
1056
const TargetMachine &TM = MF.getTarget();
1057
const TargetRegisterInfo *RI = TM.getRegisterInfo();
1058
// Does the function dedicate RBP / EBP to being a frame ptr?
1060
// If so, don't allocate SP or BP.
1063
// If not, just don't allocate SP.
1067
GR16_NOREXClass::GR16_NOREXClass() : TargetRegisterClass(GR16_NOREXRegClassID, "GR16_NOREX", GR16_NOREXVTs, GR16_NOREXSubclasses, GR16_NOREXSuperclasses, GR16_NOREXSubRegClasses, GR16_NOREXSuperRegClasses, 2, 2, 1, GR16_NOREX, GR16_NOREX + 8) {}
1069
static const unsigned X86_GR32_AO_64[] = {
1070
X86::EAX, X86::ECX, X86::EDX, X86::ESI, X86::EDI,
1071
X86::R8D, X86::R9D, X86::R10D, X86::R11D,
1072
X86::EBX, X86::R14D, X86::R15D, X86::R12D, X86::R13D, X86::EBP
1076
GR32Class::allocation_order_begin(const MachineFunction &MF) const {
1077
const TargetMachine &TM = MF.getTarget();
1078
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1079
if (Subtarget.is64Bit())
1080
return X86_GR32_AO_64;
1086
GR32Class::allocation_order_end(const MachineFunction &MF) const {
1087
const TargetMachine &TM = MF.getTarget();
1088
const TargetRegisterInfo *RI = TM.getRegisterInfo();
1089
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1090
if (Subtarget.is64Bit()) {
1091
// Does the function dedicate RBP to being a frame ptr?
1093
// If so, don't allocate ESP or EBP.
1094
return array_endof(X86_GR32_AO_64) - 1;
1096
// If not, just don't allocate ESP.
1097
return array_endof(X86_GR32_AO_64);
1099
// Does the function dedicate EBP to being a frame ptr?
1101
// If so, don't allocate ESP or EBP.
1104
// If not, just don't allocate ESP.
1109
GR32Class::GR32Class() : TargetRegisterClass(GR32RegClassID, "GR32", GR32VTs, GR32Subclasses, GR32Superclasses, GR32SubRegClasses, GR32SuperRegClasses, 4, 4, 1, GR32, GR32 + 16) {}
1111
GR32_ABCDClass::GR32_ABCDClass() : TargetRegisterClass(GR32_ABCDRegClassID, "GR32_ABCD", GR32_ABCDVTs, GR32_ABCDSubclasses, GR32_ABCDSuperclasses, GR32_ABCDSubRegClasses, GR32_ABCDSuperRegClasses, 4, 4, 1, GR32_ABCD, GR32_ABCD + 4) {}
1113
GR32_ADClass::GR32_ADClass() : TargetRegisterClass(GR32_ADRegClassID, "GR32_AD", GR32_ADVTs, GR32_ADSubclasses, GR32_ADSuperclasses, GR32_ADSubRegClasses, GR32_ADSuperRegClasses, 4, 4, 1, GR32_AD, GR32_AD + 2) {}
1115
GR32_NOREXClass::iterator
1116
GR32_NOREXClass::allocation_order_end(const MachineFunction &MF) const {
1117
const TargetMachine &TM = MF.getTarget();
1118
const TargetRegisterInfo *RI = TM.getRegisterInfo();
1119
// Does the function dedicate RBP / EBP to being a frame ptr?
1121
// If so, don't allocate ESP or EBP.
1124
// If not, just don't allocate ESP.
1128
GR32_NOREXClass::GR32_NOREXClass() : TargetRegisterClass(GR32_NOREXRegClassID, "GR32_NOREX", GR32_NOREXVTs, GR32_NOREXSubclasses, GR32_NOREXSuperclasses, GR32_NOREXSubRegClasses, GR32_NOREXSuperRegClasses, 4, 4, 1, GR32_NOREX, GR32_NOREX + 8) {}
1130
static const unsigned X86_GR32_NOSP_AO_64[] = {
1131
X86::EAX, X86::ECX, X86::EDX, X86::ESI, X86::EDI,
1132
X86::R8D, X86::R9D, X86::R10D, X86::R11D,
1133
X86::EBX, X86::R14D, X86::R15D, X86::R12D, X86::R13D, X86::EBP
1136
GR32_NOSPClass::iterator
1137
GR32_NOSPClass::allocation_order_begin(const MachineFunction &MF) const {
1138
const TargetMachine &TM = MF.getTarget();
1139
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1140
if (Subtarget.is64Bit())
1141
return X86_GR32_NOSP_AO_64;
1146
GR32_NOSPClass::iterator
1147
GR32_NOSPClass::allocation_order_end(const MachineFunction &MF) const {
1148
const TargetMachine &TM = MF.getTarget();
1149
const TargetRegisterInfo *RI = TM.getRegisterInfo();
1150
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1151
if (Subtarget.is64Bit()) {
1152
// Does the function dedicate RBP to being a frame ptr?
1154
// If so, don't allocate EBP.
1155
return array_endof(X86_GR32_NOSP_AO_64) - 1;
1157
// If not, any reg in this class is ok.
1158
return array_endof(X86_GR32_NOSP_AO_64);
1160
// Does the function dedicate EBP to being a frame ptr?
1162
// If so, don't allocate EBP.
1165
// If not, any reg in this class is ok.
1170
GR32_NOSPClass::GR32_NOSPClass() : TargetRegisterClass(GR32_NOSPRegClassID, "GR32_NOSP", GR32_NOSPVTs, GR32_NOSPSubclasses, GR32_NOSPSuperclasses, GR32_NOSPSubRegClasses, GR32_NOSPSuperRegClasses, 4, 4, 1, GR32_NOSP, GR32_NOSP + 15) {}
1173
GR64Class::allocation_order_end(const MachineFunction &MF) const {
1174
const TargetMachine &TM = MF.getTarget();
1175
const TargetRegisterInfo *RI = TM.getRegisterInfo();
1176
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1177
if (!Subtarget.is64Bit())
1178
return begin(); // None of these are allocatable in 32-bit.
1179
if (RI->hasFP(MF)) // Does the function dedicate RBP to being a frame ptr?
1180
return end()-3; // If so, don't allocate RIP, RSP or RBP
1182
return end()-2; // If not, just don't allocate RIP or RSP
1185
GR64Class::GR64Class() : TargetRegisterClass(GR64RegClassID, "GR64", GR64VTs, GR64Subclasses, GR64Superclasses, GR64SubRegClasses, GR64SuperRegClasses, 8, 8, 1, GR64, GR64 + 17) {}
1187
GR64_ABCDClass::GR64_ABCDClass() : TargetRegisterClass(GR64_ABCDRegClassID, "GR64_ABCD", GR64_ABCDVTs, GR64_ABCDSubclasses, GR64_ABCDSuperclasses, GR64_ABCDSubRegClasses, GR64_ABCDSuperRegClasses, 8, 8, 1, GR64_ABCD, GR64_ABCD + 4) {}
1189
GR64_NOREXClass::iterator
1190
GR64_NOREXClass::allocation_order_end(const MachineFunction &MF) const {
1191
const TargetMachine &TM = MF.getTarget();
1192
const TargetRegisterInfo *RI = TM.getRegisterInfo();
1193
// Does the function dedicate RBP to being a frame ptr?
1195
// If so, don't allocate RIP, RSP or RBP.
1198
// If not, just don't allocate RIP or RSP.
1202
GR64_NOREXClass::GR64_NOREXClass() : TargetRegisterClass(GR64_NOREXRegClassID, "GR64_NOREX", GR64_NOREXVTs, GR64_NOREXSubclasses, GR64_NOREXSuperclasses, GR64_NOREXSubRegClasses, GR64_NOREXSuperRegClasses, 8, 8, 1, GR64_NOREX, GR64_NOREX + 9) {}
1204
GR64_NOREX_NOSPClass::iterator
1205
GR64_NOREX_NOSPClass::allocation_order_end(const MachineFunction &MF) const
1207
const TargetMachine &TM = MF.getTarget();
1208
const TargetRegisterInfo *RI = TM.getRegisterInfo();
1209
// Does the function dedicate RBP to being a frame ptr?
1211
// If so, don't allocate RBP.
1214
// If not, any reg in this class is ok.
1218
GR64_NOREX_NOSPClass::GR64_NOREX_NOSPClass() : TargetRegisterClass(GR64_NOREX_NOSPRegClassID, "GR64_NOREX_NOSP", GR64_NOREX_NOSPVTs, GR64_NOREX_NOSPSubclasses, GR64_NOREX_NOSPSuperclasses, GR64_NOREX_NOSPSubRegClasses, GR64_NOREX_NOSPSuperRegClasses, 8, 8, 1, GR64_NOREX_NOSP, GR64_NOREX_NOSP + 7) {}
1220
GR64_NOSPClass::iterator
1221
GR64_NOSPClass::allocation_order_end(const MachineFunction &MF) const {
1222
const TargetMachine &TM = MF.getTarget();
1223
const TargetRegisterInfo *RI = TM.getRegisterInfo();
1224
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1225
if (!Subtarget.is64Bit())
1226
return begin(); // None of these are allocatable in 32-bit.
1227
if (RI->hasFP(MF)) // Does the function dedicate RBP to being a frame ptr?
1228
return end()-1; // If so, don't allocate RBP
1230
return end(); // If not, any reg in this class is ok.
1233
GR64_NOSPClass::GR64_NOSPClass() : TargetRegisterClass(GR64_NOSPRegClassID, "GR64_NOSP", GR64_NOSPVTs, GR64_NOSPSubclasses, GR64_NOSPSuperclasses, GR64_NOSPSubRegClasses, GR64_NOSPSuperRegClasses, 8, 8, 1, GR64_NOSP, GR64_NOSP + 15) {}
1235
static const unsigned X86_GR8_AO_64[] = {
1236
X86::AL, X86::CL, X86::DL, X86::SIL, X86::DIL,
1237
X86::R8B, X86::R9B, X86::R10B, X86::R11B,
1238
X86::BL, X86::R14B, X86::R15B, X86::R12B, X86::R13B, X86::BPL
1242
GR8Class::allocation_order_begin(const MachineFunction &MF) const {
1243
const TargetMachine &TM = MF.getTarget();
1244
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1245
if (Subtarget.is64Bit())
1246
return X86_GR8_AO_64;
1252
GR8Class::allocation_order_end(const MachineFunction &MF) const {
1253
const TargetMachine &TM = MF.getTarget();
1254
const TargetRegisterInfo *RI = TM.getRegisterInfo();
1255
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1256
// Does the function dedicate RBP / EBP to being a frame ptr?
1257
if (!Subtarget.is64Bit())
1258
// In 32-mode, none of the 8-bit registers aliases EBP or ESP.
1260
else if (RI->hasFP(MF))
1261
// If so, don't allocate SPL or BPL.
1262
return array_endof(X86_GR8_AO_64) - 1;
1264
// If not, just don't allocate SPL.
1265
return array_endof(X86_GR8_AO_64);
1268
GR8Class::GR8Class() : TargetRegisterClass(GR8RegClassID, "GR8", GR8VTs, GR8Subclasses, GR8Superclasses, GR8SubRegClasses, GR8SuperRegClasses, 1, 1, 1, GR8, GR8 + 20) {}
1270
GR8_ABCD_HClass::GR8_ABCD_HClass() : TargetRegisterClass(GR8_ABCD_HRegClassID, "GR8_ABCD_H", GR8_ABCD_HVTs, GR8_ABCD_HSubclasses, GR8_ABCD_HSuperclasses, GR8_ABCD_HSubRegClasses, GR8_ABCD_HSuperRegClasses, 1, 1, 1, GR8_ABCD_H, GR8_ABCD_H + 4) {}
1272
GR8_ABCD_LClass::GR8_ABCD_LClass() : TargetRegisterClass(GR8_ABCD_LRegClassID, "GR8_ABCD_L", GR8_ABCD_LVTs, GR8_ABCD_LSubclasses, GR8_ABCD_LSuperclasses, GR8_ABCD_LSubRegClasses, GR8_ABCD_LSuperRegClasses, 1, 1, 1, GR8_ABCD_L, GR8_ABCD_L + 4) {}
1274
// In 64-bit mode, it's not safe to blindly allocate H registers.
1275
static const unsigned X86_GR8_NOREX_AO_64[] = {
1276
X86::AL, X86::CL, X86::DL, X86::BL
1279
GR8_NOREXClass::iterator
1280
GR8_NOREXClass::allocation_order_begin(const MachineFunction &MF) const {
1281
const TargetMachine &TM = MF.getTarget();
1282
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1283
if (Subtarget.is64Bit())
1284
return X86_GR8_NOREX_AO_64;
1289
GR8_NOREXClass::iterator
1290
GR8_NOREXClass::allocation_order_end(const MachineFunction &MF) const {
1291
const TargetMachine &TM = MF.getTarget();
1292
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1293
if (Subtarget.is64Bit())
1294
return array_endof(X86_GR8_NOREX_AO_64);
1299
GR8_NOREXClass::GR8_NOREXClass() : TargetRegisterClass(GR8_NOREXRegClassID, "GR8_NOREX", GR8_NOREXVTs, GR8_NOREXSubclasses, GR8_NOREXSuperclasses, GR8_NOREXSubRegClasses, GR8_NOREXSuperRegClasses, 1, 1, 1, GR8_NOREX, GR8_NOREX + 8) {}
1301
RFP32Class::RFP32Class() : TargetRegisterClass(RFP32RegClassID, "RFP32", RFP32VTs, RFP32Subclasses, RFP32Superclasses, RFP32SubRegClasses, RFP32SuperRegClasses, 4, 4, 1, RFP32, RFP32 + 7) {}
1303
RFP64Class::RFP64Class() : TargetRegisterClass(RFP64RegClassID, "RFP64", RFP64VTs, RFP64Subclasses, RFP64Superclasses, RFP64SubRegClasses, RFP64SuperRegClasses, 8, 4, 1, RFP64, RFP64 + 7) {}
1305
RFP80Class::RFP80Class() : TargetRegisterClass(RFP80RegClassID, "RFP80", RFP80VTs, RFP80Subclasses, RFP80Superclasses, RFP80SubRegClasses, RFP80SuperRegClasses, 10, 4, 1, RFP80, RFP80 + 7) {}
1308
RSTClass::allocation_order_end(const MachineFunction &MF) const {
1312
RSTClass::RSTClass() : TargetRegisterClass(RSTRegClassID, "RST", RSTVTs, RSTSubclasses, RSTSuperclasses, RSTSubRegClasses, RSTSuperRegClasses, 10, 4, 1, RST, RST + 8) {}
1314
SEGMENT_REGClass::SEGMENT_REGClass() : TargetRegisterClass(SEGMENT_REGRegClassID, "SEGMENT_REG", SEGMENT_REGVTs, SEGMENT_REGSubclasses, SEGMENT_REGSuperclasses, SEGMENT_REGSubRegClasses, SEGMENT_REGSuperRegClasses, 2, 2, 1, SEGMENT_REG, SEGMENT_REG + 6) {}
1316
VR128Class::iterator
1317
VR128Class::allocation_order_end(const MachineFunction &MF) const {
1318
const TargetMachine &TM = MF.getTarget();
1319
const X86Subtarget &Subtarget = TM.getSubtarget<X86Subtarget>();
1320
if (!Subtarget.is64Bit())
1321
return end()-8; // Only XMM0 to XMM7 are available in 32-bit mode.
1326
VR128Class::VR128Class() : TargetRegisterClass(VR128RegClassID, "VR128", VR128VTs, VR128Subclasses, VR128Superclasses, VR128SubRegClasses, VR128SuperRegClasses, 16, 16, 1, VR128, VR128 + 16) {}
1328
VR256Class::VR256Class() : TargetRegisterClass(VR256RegClassID, "VR256", VR256VTs, VR256Subclasses, VR256Superclasses, VR256SubRegClasses, VR256SuperRegClasses, 32, 32, 1, VR256, VR256 + 16) {}
1330
VR64Class::VR64Class() : TargetRegisterClass(VR64RegClassID, "VR64", VR64VTs, VR64Subclasses, VR64Superclasses, VR64SubRegClasses, VR64SuperRegClasses, 8, 8, 1, VR64, VR64 + 8) {}
1334
const TargetRegisterClass* const RegisterClasses[] = {
1336
&X86::CONTROL_REG_32RegClass,
1337
&X86::CONTROL_REG_64RegClass,
1338
&X86::DEBUG_REGRegClass,
1342
&X86::GR16_ABCDRegClass,
1343
&X86::GR16_NOREXRegClass,
1345
&X86::GR32_ABCDRegClass,
1346
&X86::GR32_ADRegClass,
1347
&X86::GR32_NOREXRegClass,
1348
&X86::GR32_NOSPRegClass,
1350
&X86::GR64_ABCDRegClass,
1351
&X86::GR64_NOREXRegClass,
1352
&X86::GR64_NOREX_NOSPRegClass,
1353
&X86::GR64_NOSPRegClass,
1355
&X86::GR8_ABCD_HRegClass,
1356
&X86::GR8_ABCD_LRegClass,
1357
&X86::GR8_NOREXRegClass,
1358
&X86::RFP32RegClass,
1359
&X86::RFP64RegClass,
1360
&X86::RFP80RegClass,
1362
&X86::SEGMENT_REGRegClass,
1363
&X86::VR128RegClass,
1364
&X86::VR256RegClass,
1369
// Number of hash collisions: 20
1370
const unsigned SubregHashTable[] = { X86::NoRegister, X86::NoRegister,
1371
X86::NoRegister, X86::NoRegister,
1372
X86::NoRegister, X86::NoRegister,
1373
X86::NoRegister, X86::NoRegister,
1374
X86::NoRegister, X86::NoRegister,
1375
X86::R14, X86::R14B,
1376
X86::NoRegister, X86::NoRegister,
1377
X86::R14D, X86::R14B,
1378
X86::R14W, X86::R14B,
1380
X86::NoRegister, X86::NoRegister,
1381
X86::NoRegister, X86::NoRegister,
1382
X86::NoRegister, X86::NoRegister,
1383
X86::NoRegister, X86::NoRegister,
1384
X86::NoRegister, X86::NoRegister,
1385
X86::NoRegister, X86::NoRegister,
1387
X86::NoRegister, X86::NoRegister,
1388
X86::NoRegister, X86::NoRegister,
1389
X86::NoRegister, X86::NoRegister,
1390
X86::NoRegister, X86::NoRegister,
1391
X86::NoRegister, X86::NoRegister,
1392
X86::NoRegister, X86::NoRegister,
1394
X86::NoRegister, X86::NoRegister,
1396
X86::YMM2, X86::XMM2,
1397
X86::NoRegister, X86::NoRegister,
1398
X86::NoRegister, X86::NoRegister,
1400
X86::NoRegister, X86::NoRegister,
1401
X86::NoRegister, X86::NoRegister,
1402
X86::NoRegister, X86::NoRegister,
1403
X86::NoRegister, X86::NoRegister,
1404
X86::NoRegister, X86::NoRegister,
1405
X86::NoRegister, X86::NoRegister,
1406
X86::NoRegister, X86::NoRegister,
1407
X86::NoRegister, X86::NoRegister,
1408
X86::NoRegister, X86::NoRegister,
1409
X86::NoRegister, X86::NoRegister,
1411
X86::NoRegister, X86::NoRegister,
1412
X86::R14, X86::R14D,
1413
X86::NoRegister, X86::NoRegister,
1414
X86::NoRegister, X86::NoRegister,
1417
X86::NoRegister, X86::NoRegister,
1419
X86::NoRegister, X86::NoRegister,
1420
X86::NoRegister, X86::NoRegister,
1421
X86::NoRegister, X86::NoRegister,
1422
X86::NoRegister, X86::NoRegister,
1423
X86::NoRegister, X86::NoRegister,
1425
X86::NoRegister, X86::NoRegister,
1426
X86::NoRegister, X86::NoRegister,
1428
X86::NoRegister, X86::NoRegister,
1429
X86::NoRegister, X86::NoRegister,
1430
X86::NoRegister, X86::NoRegister,
1431
X86::R11, X86::R11B,
1432
X86::NoRegister, X86::NoRegister,
1433
X86::R11D, X86::R11B,
1435
X86::NoRegister, X86::NoRegister,
1436
X86::R11W, X86::R11B,
1437
X86::NoRegister, X86::NoRegister,
1438
X86::NoRegister, X86::NoRegister,
1439
X86::NoRegister, X86::NoRegister,
1440
X86::YMM3, X86::XMM3,
1442
X86::NoRegister, X86::NoRegister,
1443
X86::NoRegister, X86::NoRegister,
1444
X86::NoRegister, X86::NoRegister,
1445
X86::NoRegister, X86::NoRegister,
1446
X86::NoRegister, X86::NoRegister,
1448
X86::NoRegister, X86::NoRegister,
1449
X86::R14, X86::R14W,
1450
X86::NoRegister, X86::NoRegister,
1451
X86::R14D, X86::R14W,
1453
X86::NoRegister, X86::NoRegister,
1454
X86::NoRegister, X86::NoRegister,
1456
X86::NoRegister, X86::NoRegister,
1457
X86::NoRegister, X86::NoRegister,
1458
X86::NoRegister, X86::NoRegister,
1459
X86::NoRegister, X86::NoRegister,
1460
X86::NoRegister, X86::NoRegister,
1461
X86::NoRegister, X86::NoRegister,
1462
X86::NoRegister, X86::NoRegister,
1463
X86::NoRegister, X86::NoRegister,
1464
X86::NoRegister, X86::NoRegister,
1465
X86::NoRegister, X86::NoRegister,
1466
X86::NoRegister, X86::NoRegister,
1467
X86::NoRegister, X86::NoRegister,
1468
X86::R11, X86::R11D,
1469
X86::NoRegister, X86::NoRegister,
1472
X86::YMM4, X86::XMM4,
1473
X86::NoRegister, X86::NoRegister,
1474
X86::NoRegister, X86::NoRegister,
1475
X86::NoRegister, X86::NoRegister,
1477
X86::NoRegister, X86::NoRegister,
1478
X86::NoRegister, X86::NoRegister,
1480
X86::NoRegister, X86::NoRegister,
1481
X86::NoRegister, X86::NoRegister,
1482
X86::NoRegister, X86::NoRegister,
1483
X86::NoRegister, X86::NoRegister,
1484
X86::NoRegister, X86::NoRegister,
1486
X86::NoRegister, X86::NoRegister,
1487
X86::NoRegister, X86::NoRegister,
1488
X86::NoRegister, X86::NoRegister,
1489
X86::NoRegister, X86::NoRegister,
1491
X86::NoRegister, X86::NoRegister,
1492
X86::NoRegister, X86::NoRegister,
1493
X86::NoRegister, X86::NoRegister,
1494
X86::NoRegister, X86::NoRegister,
1495
X86::NoRegister, X86::NoRegister,
1496
X86::NoRegister, X86::NoRegister,
1497
X86::NoRegister, X86::NoRegister,
1498
X86::NoRegister, X86::NoRegister,
1500
X86::NoRegister, X86::NoRegister,
1501
X86::NoRegister, X86::NoRegister,
1502
X86::NoRegister, X86::NoRegister,
1504
X86::NoRegister, X86::NoRegister,
1505
X86::R11, X86::R11W,
1506
X86::NoRegister, X86::NoRegister,
1507
X86::R11D, X86::R11W,
1509
X86::NoRegister, X86::NoRegister,
1510
X86::YMM5, X86::XMM5,
1511
X86::NoRegister, X86::NoRegister,
1512
X86::NoRegister, X86::NoRegister,
1513
X86::NoRegister, X86::NoRegister,
1514
X86::NoRegister, X86::NoRegister,
1515
X86::NoRegister, X86::NoRegister,
1516
X86::NoRegister, X86::NoRegister,
1518
X86::NoRegister, X86::NoRegister,
1519
X86::NoRegister, X86::NoRegister,
1520
X86::NoRegister, X86::NoRegister,
1521
X86::NoRegister, X86::NoRegister,
1523
X86::NoRegister, X86::NoRegister,
1524
X86::NoRegister, X86::NoRegister,
1525
X86::NoRegister, X86::NoRegister,
1527
X86::R15, X86::R15B,
1528
X86::NoRegister, X86::NoRegister,
1529
X86::R15D, X86::R15B,
1530
X86::R15W, X86::R15B,
1531
X86::NoRegister, X86::NoRegister,
1532
X86::NoRegister, X86::NoRegister,
1533
X86::NoRegister, X86::NoRegister,
1534
X86::NoRegister, X86::NoRegister,
1535
X86::NoRegister, X86::NoRegister,
1537
X86::NoRegister, X86::NoRegister,
1538
X86::NoRegister, X86::NoRegister,
1539
X86::NoRegister, X86::NoRegister,
1541
X86::NoRegister, X86::NoRegister,
1542
X86::NoRegister, X86::NoRegister,
1543
X86::NoRegister, X86::NoRegister,
1544
X86::NoRegister, X86::NoRegister,
1545
X86::NoRegister, X86::NoRegister,
1546
X86::NoRegister, X86::NoRegister,
1548
X86::YMM6, X86::XMM6,
1549
X86::NoRegister, X86::NoRegister,
1550
X86::NoRegister, X86::NoRegister,
1551
X86::NoRegister, X86::NoRegister,
1552
X86::NoRegister, X86::NoRegister,
1553
X86::NoRegister, X86::NoRegister,
1554
X86::NoRegister, X86::NoRegister,
1555
X86::NoRegister, X86::NoRegister,
1556
X86::NoRegister, X86::NoRegister,
1557
X86::NoRegister, X86::NoRegister,
1558
X86::NoRegister, X86::NoRegister,
1559
X86::NoRegister, X86::NoRegister,
1561
X86::NoRegister, X86::NoRegister,
1562
X86::NoRegister, X86::NoRegister,
1564
X86::R15, X86::R15D,
1565
X86::NoRegister, X86::NoRegister,
1566
X86::NoRegister, X86::NoRegister,
1567
X86::NoRegister, X86::NoRegister,
1568
X86::NoRegister, X86::NoRegister,
1569
X86::NoRegister, X86::NoRegister,
1570
X86::NoRegister, X86::NoRegister,
1571
X86::NoRegister, X86::NoRegister,
1572
X86::NoRegister, X86::NoRegister,
1575
X86::NoRegister, X86::NoRegister,
1576
X86::NoRegister, X86::NoRegister,
1578
X86::NoRegister, X86::NoRegister,
1579
X86::NoRegister, X86::NoRegister,
1580
X86::NoRegister, X86::NoRegister,
1581
X86::NoRegister, X86::NoRegister,
1582
X86::NoRegister, X86::NoRegister,
1583
X86::R12, X86::R12B,
1585
X86::R12D, X86::R12B,
1586
X86::R12W, X86::R12B,
1587
X86::NoRegister, X86::NoRegister,
1588
X86::YMM7, X86::XMM7,
1589
X86::NoRegister, X86::NoRegister,
1590
X86::NoRegister, X86::NoRegister,
1591
X86::NoRegister, X86::NoRegister,
1592
X86::NoRegister, X86::NoRegister,
1593
X86::NoRegister, X86::NoRegister,
1594
X86::NoRegister, X86::NoRegister,
1595
X86::NoRegister, X86::NoRegister,
1596
X86::NoRegister, X86::NoRegister,
1597
X86::NoRegister, X86::NoRegister,
1598
X86::NoRegister, X86::NoRegister,
1599
X86::NoRegister, X86::NoRegister,
1600
X86::NoRegister, X86::NoRegister,
1601
X86::R15, X86::R15W,
1602
X86::NoRegister, X86::NoRegister,
1603
X86::R15D, X86::R15W,
1605
X86::NoRegister, X86::NoRegister,
1606
X86::YMM0, X86::XMM0,
1607
X86::NoRegister, X86::NoRegister,
1608
X86::NoRegister, X86::NoRegister,
1609
X86::NoRegister, X86::NoRegister,
1610
X86::NoRegister, X86::NoRegister,
1613
X86::NoRegister, X86::NoRegister,
1614
X86::NoRegister, X86::NoRegister,
1615
X86::NoRegister, X86::NoRegister,
1617
X86::NoRegister, X86::NoRegister,
1618
X86::NoRegister, X86::NoRegister,
1619
X86::NoRegister, X86::NoRegister,
1621
X86::NoRegister, X86::NoRegister,
1622
X86::R12, X86::R12D,
1623
X86::NoRegister, X86::NoRegister,
1624
X86::YMM8, X86::XMM8,
1625
X86::NoRegister, X86::NoRegister,
1626
X86::NoRegister, X86::NoRegister,
1627
X86::NoRegister, X86::NoRegister,
1628
X86::NoRegister, X86::NoRegister,
1629
X86::NoRegister, X86::NoRegister,
1630
X86::NoRegister, X86::NoRegister,
1631
X86::NoRegister, X86::NoRegister,
1632
X86::NoRegister, X86::NoRegister,
1633
X86::NoRegister, X86::NoRegister,
1634
X86::NoRegister, X86::NoRegister,
1636
X86::NoRegister, X86::NoRegister,
1637
X86::NoRegister, X86::NoRegister,
1638
X86::NoRegister, X86::NoRegister,
1639
X86::NoRegister, X86::NoRegister,
1640
X86::NoRegister, X86::NoRegister,
1642
X86::YMM1, X86::XMM1,
1644
X86::NoRegister, X86::NoRegister,
1645
X86::NoRegister, X86::NoRegister,
1646
X86::NoRegister, X86::NoRegister,
1647
X86::NoRegister, X86::NoRegister,
1649
X86::NoRegister, X86::NoRegister,
1650
X86::NoRegister, X86::NoRegister,
1651
X86::NoRegister, X86::NoRegister,
1652
X86::NoRegister, X86::NoRegister,
1654
X86::NoRegister, X86::NoRegister,
1655
X86::NoRegister, X86::NoRegister,
1656
X86::NoRegister, X86::NoRegister,
1658
X86::NoRegister, X86::NoRegister,
1659
X86::R12, X86::R12W,
1660
X86::NoRegister, X86::NoRegister,
1661
X86::R12D, X86::R12W,
1662
X86::YMM9, X86::XMM9,
1663
X86::NoRegister, X86::NoRegister,
1664
X86::NoRegister, X86::NoRegister,
1665
X86::NoRegister, X86::NoRegister,
1666
X86::NoRegister, X86::NoRegister,
1667
X86::NoRegister, X86::NoRegister,
1668
X86::NoRegister, X86::NoRegister,
1669
X86::NoRegister, X86::NoRegister,
1670
X86::NoRegister, X86::NoRegister,
1671
X86::NoRegister, X86::NoRegister,
1672
X86::NoRegister, X86::NoRegister,
1673
X86::NoRegister, X86::NoRegister,
1674
X86::NoRegister, X86::NoRegister,
1675
X86::NoRegister, X86::NoRegister,
1676
X86::NoRegister, X86::NoRegister,
1677
X86::NoRegister, X86::NoRegister,
1678
X86::NoRegister, X86::NoRegister,
1680
X86::YMM10, X86::XMM10,
1683
X86::NoRegister, X86::NoRegister,
1684
X86::NoRegister, X86::NoRegister,
1686
X86::NoRegister, X86::NoRegister,
1687
X86::NoRegister, X86::NoRegister,
1688
X86::NoRegister, X86::NoRegister,
1690
X86::NoRegister, X86::NoRegister,
1691
X86::NoRegister, X86::NoRegister,
1692
X86::NoRegister, X86::NoRegister,
1693
X86::NoRegister, X86::NoRegister,
1694
X86::NoRegister, X86::NoRegister,
1696
X86::NoRegister, X86::NoRegister,
1697
X86::NoRegister, X86::NoRegister,
1698
X86::NoRegister, X86::NoRegister,
1699
X86::NoRegister, X86::NoRegister,
1700
X86::NoRegister, X86::NoRegister,
1701
X86::NoRegister, X86::NoRegister,
1702
X86::NoRegister, X86::NoRegister,
1703
X86::NoRegister, X86::NoRegister,
1704
X86::NoRegister, X86::NoRegister,
1705
X86::NoRegister, X86::NoRegister,
1706
X86::NoRegister, X86::NoRegister,
1707
X86::NoRegister, X86::NoRegister,
1708
X86::NoRegister, X86::NoRegister,
1709
X86::NoRegister, X86::NoRegister,
1710
X86::NoRegister, X86::NoRegister,
1711
X86::NoRegister, X86::NoRegister,
1712
X86::NoRegister, X86::NoRegister,
1713
X86::NoRegister, X86::NoRegister,
1714
X86::NoRegister, X86::NoRegister,
1717
X86::NoRegister, X86::NoRegister,
1720
X86::YMM11, X86::XMM11,
1721
X86::NoRegister, X86::NoRegister,
1722
X86::NoRegister, X86::NoRegister,
1723
X86::NoRegister, X86::NoRegister,
1724
X86::NoRegister, X86::NoRegister,
1725
X86::NoRegister, X86::NoRegister,
1727
X86::NoRegister, X86::NoRegister,
1728
X86::NoRegister, X86::NoRegister,
1729
X86::NoRegister, X86::NoRegister,
1730
X86::NoRegister, X86::NoRegister,
1731
X86::NoRegister, X86::NoRegister,
1732
X86::NoRegister, X86::NoRegister,
1733
X86::NoRegister, X86::NoRegister,
1734
X86::NoRegister, X86::NoRegister,
1735
X86::R13, X86::R13B,
1736
X86::NoRegister, X86::NoRegister,
1737
X86::R13D, X86::R13B,
1738
X86::R13W, X86::R13B,
1739
X86::NoRegister, X86::NoRegister,
1740
X86::NoRegister, X86::NoRegister,
1742
X86::NoRegister, X86::NoRegister,
1743
X86::NoRegister, X86::NoRegister,
1744
X86::NoRegister, X86::NoRegister,
1745
X86::NoRegister, X86::NoRegister,
1746
X86::NoRegister, X86::NoRegister,
1747
X86::NoRegister, X86::NoRegister,
1748
X86::NoRegister, X86::NoRegister,
1749
X86::NoRegister, X86::NoRegister,
1750
X86::NoRegister, X86::NoRegister,
1751
X86::NoRegister, X86::NoRegister,
1754
X86::NoRegister, X86::NoRegister,
1756
X86::YMM12, X86::XMM12,
1757
X86::NoRegister, X86::NoRegister,
1758
X86::NoRegister, X86::NoRegister,
1759
X86::NoRegister, X86::NoRegister,
1760
X86::NoRegister, X86::NoRegister,
1761
X86::NoRegister, X86::NoRegister,
1762
X86::NoRegister, X86::NoRegister,
1763
X86::NoRegister, X86::NoRegister,
1765
X86::NoRegister, X86::NoRegister,
1766
X86::NoRegister, X86::NoRegister,
1767
X86::NoRegister, X86::NoRegister,
1768
X86::NoRegister, X86::NoRegister,
1769
X86::NoRegister, X86::NoRegister,
1770
X86::NoRegister, X86::NoRegister,
1771
X86::NoRegister, X86::NoRegister,
1772
X86::R13, X86::R13D,
1773
X86::NoRegister, X86::NoRegister,
1774
X86::NoRegister, X86::NoRegister,
1775
X86::NoRegister, X86::NoRegister,
1776
X86::NoRegister, X86::NoRegister,
1777
X86::NoRegister, X86::NoRegister,
1779
X86::NoRegister, X86::NoRegister,
1780
X86::NoRegister, X86::NoRegister,
1781
X86::NoRegister, X86::NoRegister,
1782
X86::NoRegister, X86::NoRegister,
1783
X86::NoRegister, X86::NoRegister,
1784
X86::NoRegister, X86::NoRegister,
1785
X86::NoRegister, X86::NoRegister,
1786
X86::NoRegister, X86::NoRegister,
1787
X86::NoRegister, X86::NoRegister,
1788
X86::NoRegister, X86::NoRegister,
1789
X86::NoRegister, X86::NoRegister,
1790
X86::NoRegister, X86::NoRegister,
1791
X86::R10, X86::R10B,
1792
X86::NoRegister, X86::NoRegister,
1793
X86::R10D, X86::R10B,
1794
X86::R10W, X86::R10B,
1795
X86::NoRegister, X86::NoRegister,
1796
X86::YMM13, X86::XMM13,
1797
X86::NoRegister, X86::NoRegister,
1798
X86::NoRegister, X86::NoRegister,
1799
X86::NoRegister, X86::NoRegister,
1800
X86::NoRegister, X86::NoRegister,
1801
X86::NoRegister, X86::NoRegister,
1802
X86::NoRegister, X86::NoRegister,
1803
X86::NoRegister, X86::NoRegister,
1804
X86::NoRegister, X86::NoRegister,
1805
X86::NoRegister, X86::NoRegister,
1806
X86::NoRegister, X86::NoRegister,
1807
X86::NoRegister, X86::NoRegister,
1808
X86::NoRegister, X86::NoRegister,
1809
X86::R13, X86::R13W,
1810
X86::NoRegister, X86::NoRegister,
1811
X86::R13D, X86::R13W,
1812
X86::NoRegister, X86::NoRegister,
1814
X86::NoRegister, X86::NoRegister,
1815
X86::NoRegister, X86::NoRegister,
1816
X86::NoRegister, X86::NoRegister,
1817
X86::NoRegister, X86::NoRegister,
1818
X86::NoRegister, X86::NoRegister,
1819
X86::NoRegister, X86::NoRegister,
1820
X86::NoRegister, X86::NoRegister,
1821
X86::NoRegister, X86::NoRegister,
1822
X86::NoRegister, X86::NoRegister,
1823
X86::NoRegister, X86::NoRegister,
1824
X86::NoRegister, X86::NoRegister,
1825
X86::NoRegister, X86::NoRegister,
1826
X86::NoRegister, X86::NoRegister,
1827
X86::NoRegister, X86::NoRegister,
1828
X86::R10, X86::R10D,
1829
X86::NoRegister, X86::NoRegister,
1830
X86::NoRegister, X86::NoRegister,
1832
X86::YMM14, X86::XMM14,
1835
X86::NoRegister, X86::NoRegister,
1836
X86::NoRegister, X86::NoRegister,
1837
X86::NoRegister, X86::NoRegister,
1838
X86::NoRegister, X86::NoRegister,
1839
X86::NoRegister, X86::NoRegister,
1840
X86::NoRegister, X86::NoRegister,
1841
X86::NoRegister, X86::NoRegister,
1842
X86::NoRegister, X86::NoRegister,
1843
X86::NoRegister, X86::NoRegister,
1844
X86::NoRegister, X86::NoRegister,
1845
X86::NoRegister, X86::NoRegister,
1846
X86::NoRegister, X86::NoRegister,
1847
X86::NoRegister, X86::NoRegister,
1849
X86::NoRegister, X86::NoRegister,
1850
X86::NoRegister, X86::NoRegister,
1851
X86::NoRegister, X86::NoRegister,
1853
X86::NoRegister, X86::NoRegister,
1854
X86::NoRegister, X86::NoRegister,
1855
X86::NoRegister, X86::NoRegister,
1856
X86::NoRegister, X86::NoRegister,
1857
X86::NoRegister, X86::NoRegister,
1858
X86::NoRegister, X86::NoRegister,
1859
X86::NoRegister, X86::NoRegister,
1861
X86::NoRegister, X86::NoRegister,
1863
X86::NoRegister, X86::NoRegister,
1864
X86::NoRegister, X86::NoRegister,
1865
X86::R10, X86::R10W,
1866
X86::NoRegister, X86::NoRegister,
1867
X86::R10D, X86::R10W,
1869
X86::NoRegister, X86::NoRegister,
1870
X86::YMM15, X86::XMM15,
1871
X86::NoRegister, X86::NoRegister,
1872
X86::NoRegister, X86::NoRegister,
1873
X86::NoRegister, X86::NoRegister,
1874
X86::NoRegister, X86::NoRegister,
1875
X86::NoRegister, X86::NoRegister,
1876
X86::NoRegister, X86::NoRegister,
1878
X86::NoRegister, X86::NoRegister,
1879
X86::NoRegister, X86::NoRegister,
1880
X86::NoRegister, X86::NoRegister,
1881
X86::NoRegister, X86::NoRegister };
1882
const unsigned SubregHashTableSize = 512;
1885
// Number of hash collisions: 23
1886
const unsigned SuperregHashTable[] = { X86::DX, X86::RDX,
1887
X86::NoRegister, X86::NoRegister,
1888
X86::NoRegister, X86::NoRegister,
1889
X86::NoRegister, X86::NoRegister,
1890
X86::NoRegister, X86::NoRegister,
1891
X86::NoRegister, X86::NoRegister,
1892
X86::NoRegister, X86::NoRegister,
1893
X86::NoRegister, X86::NoRegister,
1894
X86::NoRegister, X86::NoRegister,
1895
X86::NoRegister, X86::NoRegister,
1896
X86::NoRegister, X86::NoRegister,
1899
X86::NoRegister, X86::NoRegister,
1901
X86::NoRegister, X86::NoRegister,
1902
X86::XMM14, X86::YMM14,
1903
X86::NoRegister, X86::NoRegister,
1906
X86::NoRegister, X86::NoRegister,
1908
X86::NoRegister, X86::NoRegister,
1909
X86::NoRegister, X86::NoRegister,
1911
X86::R11B, X86::R11,
1912
X86::R11D, X86::R11,
1913
X86::R11W, X86::R11,
1914
X86::NoRegister, X86::NoRegister,
1915
X86::NoRegister, X86::NoRegister,
1916
X86::NoRegister, X86::NoRegister,
1917
X86::NoRegister, X86::NoRegister,
1918
X86::NoRegister, X86::NoRegister,
1920
X86::NoRegister, X86::NoRegister,
1921
X86::NoRegister, X86::NoRegister,
1922
X86::NoRegister, X86::NoRegister,
1923
X86::NoRegister, X86::NoRegister,
1924
X86::NoRegister, X86::NoRegister,
1925
X86::NoRegister, X86::NoRegister,
1926
X86::NoRegister, X86::NoRegister,
1927
X86::NoRegister, X86::NoRegister,
1928
X86::R14D, X86::R14,
1929
X86::R14B, X86::R14D,
1930
X86::NoRegister, X86::NoRegister,
1931
X86::R14W, X86::R14D,
1934
X86::NoRegister, X86::NoRegister,
1935
X86::NoRegister, X86::NoRegister,
1937
X86::NoRegister, X86::NoRegister,
1938
X86::XMM15, X86::YMM15,
1942
X86::NoRegister, X86::NoRegister,
1944
X86::NoRegister, X86::NoRegister,
1945
X86::NoRegister, X86::NoRegister,
1946
X86::NoRegister, X86::NoRegister,
1947
X86::NoRegister, X86::NoRegister,
1948
X86::NoRegister, X86::NoRegister,
1949
X86::NoRegister, X86::NoRegister,
1950
X86::NoRegister, X86::NoRegister,
1951
X86::NoRegister, X86::NoRegister,
1953
X86::NoRegister, X86::NoRegister,
1954
X86::NoRegister, X86::NoRegister,
1955
X86::NoRegister, X86::NoRegister,
1956
X86::NoRegister, X86::NoRegister,
1958
X86::NoRegister, X86::NoRegister,
1960
X86::NoRegister, X86::NoRegister,
1961
X86::NoRegister, X86::NoRegister,
1962
X86::NoRegister, X86::NoRegister,
1963
X86::NoRegister, X86::NoRegister,
1964
X86::NoRegister, X86::NoRegister,
1965
X86::NoRegister, X86::NoRegister,
1966
X86::R14B, X86::R14W,
1967
X86::NoRegister, X86::NoRegister,
1968
X86::NoRegister, X86::NoRegister,
1969
X86::NoRegister, X86::NoRegister,
1970
X86::NoRegister, X86::NoRegister,
1971
X86::NoRegister, X86::NoRegister,
1972
X86::NoRegister, X86::NoRegister,
1973
X86::NoRegister, X86::NoRegister,
1974
X86::NoRegister, X86::NoRegister,
1975
X86::NoRegister, X86::NoRegister,
1976
X86::XMM2, X86::YMM2,
1977
X86::NoRegister, X86::NoRegister,
1979
X86::NoRegister, X86::NoRegister,
1980
X86::NoRegister, X86::NoRegister,
1981
X86::NoRegister, X86::NoRegister,
1982
X86::NoRegister, X86::NoRegister,
1983
X86::NoRegister, X86::NoRegister,
1984
X86::NoRegister, X86::NoRegister,
1985
X86::R11B, X86::R11D,
1986
X86::NoRegister, X86::NoRegister,
1987
X86::R11W, X86::R11D,
1988
X86::NoRegister, X86::NoRegister,
1989
X86::NoRegister, X86::NoRegister,
1990
X86::NoRegister, X86::NoRegister,
1991
X86::NoRegister, X86::NoRegister,
1992
X86::NoRegister, X86::NoRegister,
1993
X86::NoRegister, X86::NoRegister,
1994
X86::NoRegister, X86::NoRegister,
1995
X86::NoRegister, X86::NoRegister,
1996
X86::NoRegister, X86::NoRegister,
1997
X86::NoRegister, X86::NoRegister,
2000
X86::NoRegister, X86::NoRegister,
2001
X86::NoRegister, X86::NoRegister,
2002
X86::NoRegister, X86::NoRegister,
2003
X86::NoRegister, X86::NoRegister,
2004
X86::NoRegister, X86::NoRegister,
2005
X86::NoRegister, X86::NoRegister,
2006
X86::NoRegister, X86::NoRegister,
2007
X86::R15B, X86::R15,
2008
X86::R15D, X86::R15,
2009
X86::R15W, X86::R15,
2010
X86::NoRegister, X86::NoRegister,
2011
X86::NoRegister, X86::NoRegister,
2012
X86::NoRegister, X86::NoRegister,
2013
X86::NoRegister, X86::NoRegister,
2014
X86::XMM3, X86::YMM3,
2015
X86::NoRegister, X86::NoRegister,
2017
X86::NoRegister, X86::NoRegister,
2018
X86::NoRegister, X86::NoRegister,
2019
X86::NoRegister, X86::NoRegister,
2020
X86::NoRegister, X86::NoRegister,
2021
X86::NoRegister, X86::NoRegister,
2022
X86::R11B, X86::R11W,
2023
X86::NoRegister, X86::NoRegister,
2024
X86::NoRegister, X86::NoRegister,
2025
X86::NoRegister, X86::NoRegister,
2026
X86::NoRegister, X86::NoRegister,
2027
X86::NoRegister, X86::NoRegister,
2028
X86::NoRegister, X86::NoRegister,
2029
X86::NoRegister, X86::NoRegister,
2030
X86::NoRegister, X86::NoRegister,
2031
X86::NoRegister, X86::NoRegister,
2032
X86::NoRegister, X86::NoRegister,
2033
X86::NoRegister, X86::NoRegister,
2034
X86::NoRegister, X86::NoRegister,
2035
X86::NoRegister, X86::NoRegister,
2036
X86::NoRegister, X86::NoRegister,
2037
X86::NoRegister, X86::NoRegister,
2038
X86::NoRegister, X86::NoRegister,
2039
X86::NoRegister, X86::NoRegister,
2040
X86::NoRegister, X86::NoRegister,
2041
X86::NoRegister, X86::NoRegister,
2042
X86::NoRegister, X86::NoRegister,
2043
X86::NoRegister, X86::NoRegister,
2044
X86::NoRegister, X86::NoRegister,
2045
X86::NoRegister, X86::NoRegister,
2046
X86::NoRegister, X86::NoRegister,
2047
X86::NoRegister, X86::NoRegister,
2050
X86::NoRegister, X86::NoRegister,
2051
X86::NoRegister, X86::NoRegister,
2052
X86::XMM4, X86::YMM4,
2053
X86::NoRegister, X86::NoRegister,
2054
X86::NoRegister, X86::NoRegister,
2055
X86::NoRegister, X86::NoRegister,
2056
X86::NoRegister, X86::NoRegister,
2057
X86::NoRegister, X86::NoRegister,
2058
X86::NoRegister, X86::NoRegister,
2059
X86::NoRegister, X86::NoRegister,
2060
X86::NoRegister, X86::NoRegister,
2061
X86::NoRegister, X86::NoRegister,
2062
X86::NoRegister, X86::NoRegister,
2063
X86::R12B, X86::R12,
2064
X86::R12D, X86::R12,
2065
X86::R12W, X86::R12,
2066
X86::NoRegister, X86::NoRegister,
2067
X86::NoRegister, X86::NoRegister,
2068
X86::NoRegister, X86::NoRegister,
2069
X86::NoRegister, X86::NoRegister,
2070
X86::NoRegister, X86::NoRegister,
2071
X86::NoRegister, X86::NoRegister,
2072
X86::NoRegister, X86::NoRegister,
2073
X86::NoRegister, X86::NoRegister,
2074
X86::NoRegister, X86::NoRegister,
2075
X86::NoRegister, X86::NoRegister,
2076
X86::NoRegister, X86::NoRegister,
2077
X86::NoRegister, X86::NoRegister,
2078
X86::NoRegister, X86::NoRegister,
2079
X86::NoRegister, X86::NoRegister,
2080
X86::NoRegister, X86::NoRegister,
2081
X86::R15B, X86::R15D,
2082
X86::NoRegister, X86::NoRegister,
2083
X86::R15W, X86::R15D,
2084
X86::NoRegister, X86::NoRegister,
2085
X86::NoRegister, X86::NoRegister,
2086
X86::NoRegister, X86::NoRegister,
2089
X86::NoRegister, X86::NoRegister,
2090
X86::XMM5, X86::YMM5,
2091
X86::NoRegister, X86::NoRegister,
2094
X86::NoRegister, X86::NoRegister,
2095
X86::NoRegister, X86::NoRegister,
2096
X86::NoRegister, X86::NoRegister,
2097
X86::NoRegister, X86::NoRegister,
2098
X86::NoRegister, X86::NoRegister,
2099
X86::NoRegister, X86::NoRegister,
2100
X86::NoRegister, X86::NoRegister,
2101
X86::NoRegister, X86::NoRegister,
2102
X86::NoRegister, X86::NoRegister,
2103
X86::NoRegister, X86::NoRegister,
2104
X86::NoRegister, X86::NoRegister,
2105
X86::NoRegister, X86::NoRegister,
2106
X86::NoRegister, X86::NoRegister,
2107
X86::NoRegister, X86::NoRegister,
2108
X86::NoRegister, X86::NoRegister,
2109
X86::NoRegister, X86::NoRegister,
2110
X86::NoRegister, X86::NoRegister,
2111
X86::NoRegister, X86::NoRegister,
2112
X86::NoRegister, X86::NoRegister,
2113
X86::NoRegister, X86::NoRegister,
2114
X86::NoRegister, X86::NoRegister,
2116
X86::NoRegister, X86::NoRegister,
2117
X86::NoRegister, X86::NoRegister,
2118
X86::R15B, X86::R15W,
2119
X86::NoRegister, X86::NoRegister,
2120
X86::NoRegister, X86::NoRegister,
2121
X86::NoRegister, X86::NoRegister,
2122
X86::NoRegister, X86::NoRegister,
2124
X86::NoRegister, X86::NoRegister,
2125
X86::NoRegister, X86::NoRegister,
2126
X86::NoRegister, X86::NoRegister,
2127
X86::NoRegister, X86::NoRegister,
2128
X86::XMM6, X86::YMM6,
2129
X86::NoRegister, X86::NoRegister,
2130
X86::NoRegister, X86::NoRegister,
2133
X86::NoRegister, X86::NoRegister,
2134
X86::NoRegister, X86::NoRegister,
2135
X86::NoRegister, X86::NoRegister,
2136
X86::NoRegister, X86::NoRegister,
2137
X86::R12B, X86::R12D,
2138
X86::NoRegister, X86::NoRegister,
2139
X86::R12W, X86::R12D,
2140
X86::NoRegister, X86::NoRegister,
2141
X86::NoRegister, X86::NoRegister,
2142
X86::NoRegister, X86::NoRegister,
2143
X86::NoRegister, X86::NoRegister,
2144
X86::NoRegister, X86::NoRegister,
2145
X86::NoRegister, X86::NoRegister,
2146
X86::NoRegister, X86::NoRegister,
2147
X86::NoRegister, X86::NoRegister,
2148
X86::NoRegister, X86::NoRegister,
2149
X86::NoRegister, X86::NoRegister,
2150
X86::NoRegister, X86::NoRegister,
2151
X86::NoRegister, X86::NoRegister,
2152
X86::NoRegister, X86::NoRegister,
2153
X86::NoRegister, X86::NoRegister,
2154
X86::NoRegister, X86::NoRegister,
2155
X86::NoRegister, X86::NoRegister,
2156
X86::NoRegister, X86::NoRegister,
2157
X86::NoRegister, X86::NoRegister,
2158
X86::NoRegister, X86::NoRegister,
2162
X86::NoRegister, X86::NoRegister,
2163
X86::NoRegister, X86::NoRegister,
2164
X86::NoRegister, X86::NoRegister,
2165
X86::NoRegister, X86::NoRegister,
2166
X86::XMM7, X86::YMM7,
2167
X86::NoRegister, X86::NoRegister,
2168
X86::NoRegister, X86::NoRegister,
2169
X86::NoRegister, X86::NoRegister,
2170
X86::NoRegister, X86::NoRegister,
2171
X86::NoRegister, X86::NoRegister,
2172
X86::NoRegister, X86::NoRegister,
2173
X86::NoRegister, X86::NoRegister,
2174
X86::R12B, X86::R12W,
2175
X86::NoRegister, X86::NoRegister,
2176
X86::NoRegister, X86::NoRegister,
2177
X86::NoRegister, X86::NoRegister,
2178
X86::NoRegister, X86::NoRegister,
2179
X86::NoRegister, X86::NoRegister,
2180
X86::NoRegister, X86::NoRegister,
2181
X86::NoRegister, X86::NoRegister,
2182
X86::NoRegister, X86::NoRegister,
2183
X86::NoRegister, X86::NoRegister,
2184
X86::XMM0, X86::YMM0,
2185
X86::NoRegister, X86::NoRegister,
2188
X86::NoRegister, X86::NoRegister,
2189
X86::NoRegister, X86::NoRegister,
2190
X86::NoRegister, X86::NoRegister,
2191
X86::NoRegister, X86::NoRegister,
2192
X86::NoRegister, X86::NoRegister,
2193
X86::NoRegister, X86::NoRegister,
2194
X86::NoRegister, X86::NoRegister,
2195
X86::NoRegister, X86::NoRegister,
2196
X86::NoRegister, X86::NoRegister,
2197
X86::NoRegister, X86::NoRegister,
2198
X86::NoRegister, X86::NoRegister,
2200
X86::NoRegister, X86::NoRegister,
2201
X86::NoRegister, X86::NoRegister,
2202
X86::NoRegister, X86::NoRegister,
2203
X86::NoRegister, X86::NoRegister,
2204
X86::XMM8, X86::YMM8,
2205
X86::NoRegister, X86::NoRegister,
2206
X86::NoRegister, X86::NoRegister,
2207
X86::NoRegister, X86::NoRegister,
2208
X86::NoRegister, X86::NoRegister,
2209
X86::NoRegister, X86::NoRegister,
2210
X86::NoRegister, X86::NoRegister,
2211
X86::NoRegister, X86::NoRegister,
2212
X86::NoRegister, X86::NoRegister,
2213
X86::NoRegister, X86::NoRegister,
2214
X86::NoRegister, X86::NoRegister,
2215
X86::R13B, X86::R13,
2216
X86::R13D, X86::R13,
2217
X86::R13W, X86::R13,
2218
X86::NoRegister, X86::NoRegister,
2219
X86::NoRegister, X86::NoRegister,
2220
X86::NoRegister, X86::NoRegister,
2221
X86::NoRegister, X86::NoRegister,
2222
X86::XMM1, X86::YMM1,
2223
X86::NoRegister, X86::NoRegister,
2224
X86::NoRegister, X86::NoRegister,
2225
X86::NoRegister, X86::NoRegister,
2226
X86::NoRegister, X86::NoRegister,
2227
X86::NoRegister, X86::NoRegister,
2228
X86::NoRegister, X86::NoRegister,
2229
X86::NoRegister, X86::NoRegister,
2230
X86::NoRegister, X86::NoRegister,
2231
X86::NoRegister, X86::NoRegister,
2232
X86::NoRegister, X86::NoRegister,
2234
X86::NoRegister, X86::NoRegister,
2236
X86::NoRegister, X86::NoRegister,
2237
X86::NoRegister, X86::NoRegister,
2238
X86::NoRegister, X86::NoRegister,
2239
X86::NoRegister, X86::NoRegister,
2240
X86::NoRegister, X86::NoRegister,
2241
X86::NoRegister, X86::NoRegister,
2242
X86::XMM9, X86::YMM9,
2243
X86::NoRegister, X86::NoRegister,
2244
X86::NoRegister, X86::NoRegister,
2245
X86::NoRegister, X86::NoRegister,
2246
X86::NoRegister, X86::NoRegister,
2247
X86::NoRegister, X86::NoRegister,
2248
X86::NoRegister, X86::NoRegister,
2249
X86::NoRegister, X86::NoRegister,
2250
X86::NoRegister, X86::NoRegister,
2251
X86::NoRegister, X86::NoRegister,
2252
X86::NoRegister, X86::NoRegister,
2253
X86::NoRegister, X86::NoRegister,
2254
X86::NoRegister, X86::NoRegister,
2255
X86::NoRegister, X86::NoRegister,
2256
X86::NoRegister, X86::NoRegister,
2257
X86::NoRegister, X86::NoRegister,
2258
X86::NoRegister, X86::NoRegister,
2259
X86::NoRegister, X86::NoRegister,
2260
X86::XMM10, X86::YMM10,
2261
X86::NoRegister, X86::NoRegister,
2262
X86::NoRegister, X86::NoRegister,
2263
X86::NoRegister, X86::NoRegister,
2264
X86::NoRegister, X86::NoRegister,
2265
X86::NoRegister, X86::NoRegister,
2266
X86::NoRegister, X86::NoRegister,
2267
X86::NoRegister, X86::NoRegister,
2268
X86::NoRegister, X86::NoRegister,
2269
X86::NoRegister, X86::NoRegister,
2271
X86::R10B, X86::R10,
2272
X86::R10D, X86::R10,
2273
X86::R10W, X86::R10,
2274
X86::NoRegister, X86::NoRegister,
2275
X86::NoRegister, X86::NoRegister,
2276
X86::NoRegister, X86::NoRegister,
2279
X86::NoRegister, X86::NoRegister,
2281
X86::NoRegister, X86::NoRegister,
2282
X86::NoRegister, X86::NoRegister,
2283
X86::NoRegister, X86::NoRegister,
2284
X86::NoRegister, X86::NoRegister,
2285
X86::NoRegister, X86::NoRegister,
2286
X86::NoRegister, X86::NoRegister,
2287
X86::NoRegister, X86::NoRegister,
2288
X86::NoRegister, X86::NoRegister,
2289
X86::R13B, X86::R13D,
2290
X86::NoRegister, X86::NoRegister,
2291
X86::R13W, X86::R13D,
2292
X86::NoRegister, X86::NoRegister,
2293
X86::NoRegister, X86::NoRegister,
2294
X86::NoRegister, X86::NoRegister,
2295
X86::NoRegister, X86::NoRegister,
2296
X86::NoRegister, X86::NoRegister,
2297
X86::NoRegister, X86::NoRegister,
2298
X86::XMM11, X86::YMM11,
2299
X86::NoRegister, X86::NoRegister,
2300
X86::NoRegister, X86::NoRegister,
2301
X86::NoRegister, X86::NoRegister,
2302
X86::NoRegister, X86::NoRegister,
2303
X86::NoRegister, X86::NoRegister,
2304
X86::NoRegister, X86::NoRegister,
2305
X86::NoRegister, X86::NoRegister,
2306
X86::NoRegister, X86::NoRegister,
2309
X86::NoRegister, X86::NoRegister,
2314
X86::NoRegister, X86::NoRegister,
2315
X86::NoRegister, X86::NoRegister,
2316
X86::NoRegister, X86::NoRegister,
2317
X86::NoRegister, X86::NoRegister,
2318
X86::NoRegister, X86::NoRegister,
2321
X86::NoRegister, X86::NoRegister,
2322
X86::NoRegister, X86::NoRegister,
2323
X86::NoRegister, X86::NoRegister,
2324
X86::NoRegister, X86::NoRegister,
2325
X86::NoRegister, X86::NoRegister,
2326
X86::R13B, X86::R13W,
2327
X86::NoRegister, X86::NoRegister,
2328
X86::NoRegister, X86::NoRegister,
2329
X86::NoRegister, X86::NoRegister,
2330
X86::NoRegister, X86::NoRegister,
2331
X86::NoRegister, X86::NoRegister,
2332
X86::NoRegister, X86::NoRegister,
2333
X86::NoRegister, X86::NoRegister,
2334
X86::NoRegister, X86::NoRegister,
2335
X86::NoRegister, X86::NoRegister,
2337
X86::NoRegister, X86::NoRegister,
2338
X86::XMM12, X86::YMM12,
2341
X86::NoRegister, X86::NoRegister,
2342
X86::NoRegister, X86::NoRegister,
2343
X86::NoRegister, X86::NoRegister,
2344
X86::NoRegister, X86::NoRegister,
2345
X86::R10B, X86::R10D,
2346
X86::NoRegister, X86::NoRegister,
2347
X86::R10W, X86::R10D,
2348
X86::NoRegister, X86::NoRegister,
2353
X86::NoRegister, X86::NoRegister,
2354
X86::NoRegister, X86::NoRegister,
2356
X86::NoRegister, X86::NoRegister,
2357
X86::NoRegister, X86::NoRegister,
2359
X86::NoRegister, X86::NoRegister,
2360
X86::NoRegister, X86::NoRegister,
2361
X86::NoRegister, X86::NoRegister,
2362
X86::NoRegister, X86::NoRegister,
2363
X86::NoRegister, X86::NoRegister,
2364
X86::NoRegister, X86::NoRegister,
2365
X86::NoRegister, X86::NoRegister,
2366
X86::NoRegister, X86::NoRegister,
2371
X86::R14W, X86::R14,
2372
X86::NoRegister, X86::NoRegister,
2373
X86::R14B, X86::R14,
2377
X86::NoRegister, X86::NoRegister,
2378
X86::NoRegister, X86::NoRegister,
2379
X86::NoRegister, X86::NoRegister,
2381
X86::NoRegister, X86::NoRegister,
2382
X86::R10B, X86::R10W,
2383
X86::NoRegister, X86::NoRegister,
2384
X86::NoRegister, X86::NoRegister,
2386
X86::XMM13, X86::YMM13,
2390
X86::NoRegister, X86::NoRegister,
2391
X86::NoRegister, X86::NoRegister,
2392
X86::NoRegister, X86::NoRegister,
2394
X86::NoRegister, X86::NoRegister,
2395
X86::NoRegister, X86::NoRegister,
2396
X86::NoRegister, X86::NoRegister,
2397
X86::NoRegister, X86::NoRegister };
2398
const unsigned SuperregHashTableSize = 512;
2401
// Number of hash collisions: 31
2402
const unsigned AliasesHashTable[] = { X86::DX, X86::RDX,
2403
X86::NoRegister, X86::NoRegister,
2404
X86::NoRegister, X86::NoRegister,
2405
X86::NoRegister, X86::NoRegister,
2406
X86::NoRegister, X86::NoRegister,
2407
X86::R14, X86::R14B,
2408
X86::NoRegister, X86::NoRegister,
2409
X86::R14D, X86::R14B,
2410
X86::R14W, X86::R14B,
2411
X86::NoRegister, X86::NoRegister,
2412
X86::NoRegister, X86::NoRegister,
2413
X86::NoRegister, X86::NoRegister,
2414
X86::NoRegister, X86::NoRegister,
2415
X86::NoRegister, X86::NoRegister,
2417
X86::NoRegister, X86::NoRegister,
2418
X86::NoRegister, X86::NoRegister,
2419
X86::NoRegister, X86::NoRegister,
2422
X86::NoRegister, X86::NoRegister,
2423
X86::NoRegister, X86::NoRegister,
2424
X86::NoRegister, X86::NoRegister,
2425
X86::NoRegister, X86::NoRegister,
2426
X86::NoRegister, X86::NoRegister,
2427
X86::NoRegister, X86::NoRegister,
2428
X86::YMM2, X86::XMM2,
2429
X86::NoRegister, X86::NoRegister,
2430
X86::NoRegister, X86::NoRegister,
2432
X86::NoRegister, X86::NoRegister,
2433
X86::NoRegister, X86::NoRegister,
2434
X86::NoRegister, X86::NoRegister,
2435
X86::NoRegister, X86::NoRegister,
2436
X86::NoRegister, X86::NoRegister,
2437
X86::NoRegister, X86::NoRegister,
2438
X86::NoRegister, X86::NoRegister,
2439
X86::NoRegister, X86::NoRegister,
2440
X86::NoRegister, X86::NoRegister,
2441
X86::NoRegister, X86::NoRegister,
2443
X86::NoRegister, X86::NoRegister,
2444
X86::R14, X86::R14D,
2445
X86::R14B, X86::R14D,
2446
X86::NoRegister, X86::NoRegister,
2447
X86::R14W, X86::R14D,
2448
X86::NoRegister, X86::NoRegister,
2449
X86::NoRegister, X86::NoRegister,
2451
X86::NoRegister, X86::NoRegister,
2452
X86::NoRegister, X86::NoRegister,
2453
X86::NoRegister, X86::NoRegister,
2454
X86::NoRegister, X86::NoRegister,
2458
X86::NoRegister, X86::NoRegister,
2460
X86::NoRegister, X86::NoRegister,
2461
X86::NoRegister, X86::NoRegister,
2462
X86::NoRegister, X86::NoRegister,
2463
X86::NoRegister, X86::NoRegister,
2464
X86::NoRegister, X86::NoRegister,
2465
X86::NoRegister, X86::NoRegister,
2467
X86::NoRegister, X86::NoRegister,
2469
X86::NoRegister, X86::NoRegister,
2470
X86::NoRegister, X86::NoRegister,
2471
X86::NoRegister, X86::NoRegister,
2472
X86::YMM3, X86::XMM3,
2474
X86::NoRegister, X86::NoRegister,
2475
X86::NoRegister, X86::NoRegister,
2476
X86::NoRegister, X86::NoRegister,
2477
X86::NoRegister, X86::NoRegister,
2478
X86::NoRegister, X86::NoRegister,
2480
X86::NoRegister, X86::NoRegister,
2481
X86::R14, X86::R14W,
2482
X86::R14B, X86::R14W,
2483
X86::R14D, X86::R14W,
2484
X86::NoRegister, X86::NoRegister,
2485
X86::NoRegister, X86::NoRegister,
2486
X86::NoRegister, X86::NoRegister,
2487
X86::NoRegister, X86::NoRegister,
2488
X86::NoRegister, X86::NoRegister,
2489
X86::NoRegister, X86::NoRegister,
2490
X86::NoRegister, X86::NoRegister,
2491
X86::NoRegister, X86::NoRegister,
2492
X86::NoRegister, X86::NoRegister,
2493
X86::NoRegister, X86::NoRegister,
2495
X86::NoRegister, X86::NoRegister,
2496
X86::NoRegister, X86::NoRegister,
2497
X86::NoRegister, X86::NoRegister,
2498
X86::NoRegister, X86::NoRegister,
2499
X86::NoRegister, X86::NoRegister,
2501
X86::NoRegister, X86::NoRegister,
2502
X86::NoRegister, X86::NoRegister,
2504
X86::YMM4, X86::XMM4,
2505
X86::NoRegister, X86::NoRegister,
2506
X86::NoRegister, X86::NoRegister,
2507
X86::NoRegister, X86::NoRegister,
2508
X86::NoRegister, X86::NoRegister,
2509
X86::NoRegister, X86::NoRegister,
2510
X86::NoRegister, X86::NoRegister,
2512
X86::NoRegister, X86::NoRegister,
2513
X86::NoRegister, X86::NoRegister,
2516
X86::NoRegister, X86::NoRegister,
2517
X86::NoRegister, X86::NoRegister,
2518
X86::NoRegister, X86::NoRegister,
2519
X86::NoRegister, X86::NoRegister,
2520
X86::NoRegister, X86::NoRegister,
2521
X86::NoRegister, X86::NoRegister,
2522
X86::NoRegister, X86::NoRegister,
2523
X86::R15B, X86::R15,
2524
X86::R15D, X86::R15,
2525
X86::R15W, X86::R15,
2526
X86::NoRegister, X86::NoRegister,
2527
X86::NoRegister, X86::NoRegister,
2528
X86::NoRegister, X86::NoRegister,
2529
X86::NoRegister, X86::NoRegister,
2530
X86::NoRegister, X86::NoRegister,
2531
X86::NoRegister, X86::NoRegister,
2533
X86::NoRegister, X86::NoRegister,
2534
X86::NoRegister, X86::NoRegister,
2536
X86::NoRegister, X86::NoRegister,
2537
X86::NoRegister, X86::NoRegister,
2538
X86::NoRegister, X86::NoRegister,
2539
X86::NoRegister, X86::NoRegister,
2541
X86::NoRegister, X86::NoRegister,
2542
X86::YMM5, X86::XMM5,
2543
X86::NoRegister, X86::NoRegister,
2544
X86::NoRegister, X86::NoRegister,
2545
X86::NoRegister, X86::NoRegister,
2546
X86::NoRegister, X86::NoRegister,
2547
X86::NoRegister, X86::NoRegister,
2548
X86::NoRegister, X86::NoRegister,
2550
X86::NoRegister, X86::NoRegister,
2551
X86::NoRegister, X86::NoRegister,
2552
X86::NoRegister, X86::NoRegister,
2553
X86::NoRegister, X86::NoRegister,
2554
X86::NoRegister, X86::NoRegister,
2555
X86::NoRegister, X86::NoRegister,
2556
X86::NoRegister, X86::NoRegister,
2557
X86::NoRegister, X86::NoRegister,
2559
X86::R15, X86::R15B,
2560
X86::NoRegister, X86::NoRegister,
2561
X86::R15D, X86::R15B,
2562
X86::R15W, X86::R15B,
2563
X86::NoRegister, X86::NoRegister,
2566
X86::NoRegister, X86::NoRegister,
2567
X86::NoRegister, X86::NoRegister,
2569
X86::NoRegister, X86::NoRegister,
2570
X86::NoRegister, X86::NoRegister,
2571
X86::NoRegister, X86::NoRegister,
2573
X86::NoRegister, X86::NoRegister,
2574
X86::NoRegister, X86::NoRegister,
2575
X86::NoRegister, X86::NoRegister,
2576
X86::NoRegister, X86::NoRegister,
2577
X86::NoRegister, X86::NoRegister,
2578
X86::NoRegister, X86::NoRegister,
2580
X86::YMM6, X86::XMM6,
2581
X86::NoRegister, X86::NoRegister,
2582
X86::NoRegister, X86::NoRegister,
2583
X86::NoRegister, X86::NoRegister,
2584
X86::NoRegister, X86::NoRegister,
2585
X86::NoRegister, X86::NoRegister,
2586
X86::NoRegister, X86::NoRegister,
2587
X86::NoRegister, X86::NoRegister,
2588
X86::NoRegister, X86::NoRegister,
2589
X86::NoRegister, X86::NoRegister,
2590
X86::NoRegister, X86::NoRegister,
2591
X86::NoRegister, X86::NoRegister,
2592
X86::NoRegister, X86::NoRegister,
2593
X86::NoRegister, X86::NoRegister,
2594
X86::NoRegister, X86::NoRegister,
2596
X86::R15, X86::R15D,
2597
X86::R15B, X86::R15D,
2598
X86::NoRegister, X86::NoRegister,
2599
X86::R15W, X86::R15D,
2600
X86::NoRegister, X86::NoRegister,
2601
X86::NoRegister, X86::NoRegister,
2602
X86::NoRegister, X86::NoRegister,
2606
X86::NoRegister, X86::NoRegister,
2607
X86::NoRegister, X86::NoRegister,
2608
X86::NoRegister, X86::NoRegister,
2610
X86::NoRegister, X86::NoRegister,
2611
X86::NoRegister, X86::NoRegister,
2612
X86::NoRegister, X86::NoRegister,
2613
X86::NoRegister, X86::NoRegister,
2614
X86::NoRegister, X86::NoRegister,
2615
X86::NoRegister, X86::NoRegister,
2617
X86::NoRegister, X86::NoRegister,
2618
X86::YMM7, X86::XMM7,
2619
X86::NoRegister, X86::NoRegister,
2620
X86::NoRegister, X86::NoRegister,
2621
X86::NoRegister, X86::NoRegister,
2622
X86::NoRegister, X86::NoRegister,
2623
X86::NoRegister, X86::NoRegister,
2624
X86::NoRegister, X86::NoRegister,
2625
X86::NoRegister, X86::NoRegister,
2626
X86::NoRegister, X86::NoRegister,
2627
X86::NoRegister, X86::NoRegister,
2628
X86::NoRegister, X86::NoRegister,
2629
X86::NoRegister, X86::NoRegister,
2630
X86::NoRegister, X86::NoRegister,
2632
X86::NoRegister, X86::NoRegister,
2633
X86::R15, X86::R15W,
2634
X86::R15B, X86::R15W,
2635
X86::R15D, X86::R15W,
2637
X86::NoRegister, X86::NoRegister,
2638
X86::NoRegister, X86::NoRegister,
2640
X86::NoRegister, X86::NoRegister,
2641
X86::NoRegister, X86::NoRegister,
2642
X86::NoRegister, X86::NoRegister,
2644
X86::NoRegister, X86::NoRegister,
2645
X86::NoRegister, X86::NoRegister,
2646
X86::NoRegister, X86::NoRegister,
2647
X86::NoRegister, X86::NoRegister,
2649
X86::NoRegister, X86::NoRegister,
2650
X86::NoRegister, X86::NoRegister,
2651
X86::NoRegister, X86::NoRegister,
2653
X86::NoRegister, X86::NoRegister,
2654
X86::NoRegister, X86::NoRegister,
2655
X86::NoRegister, X86::NoRegister,
2656
X86::YMM8, X86::XMM8,
2657
X86::NoRegister, X86::NoRegister,
2658
X86::NoRegister, X86::NoRegister,
2659
X86::NoRegister, X86::NoRegister,
2660
X86::NoRegister, X86::NoRegister,
2661
X86::NoRegister, X86::NoRegister,
2662
X86::NoRegister, X86::NoRegister,
2663
X86::NoRegister, X86::NoRegister,
2664
X86::NoRegister, X86::NoRegister,
2665
X86::NoRegister, X86::NoRegister,
2666
X86::NoRegister, X86::NoRegister,
2668
X86::NoRegister, X86::NoRegister,
2669
X86::NoRegister, X86::NoRegister,
2670
X86::NoRegister, X86::NoRegister,
2671
X86::NoRegister, X86::NoRegister,
2672
X86::NoRegister, X86::NoRegister,
2674
X86::NoRegister, X86::NoRegister,
2678
X86::NoRegister, X86::NoRegister,
2679
X86::NoRegister, X86::NoRegister,
2682
X86::NoRegister, X86::NoRegister,
2683
X86::NoRegister, X86::NoRegister,
2684
X86::NoRegister, X86::NoRegister,
2686
X86::NoRegister, X86::NoRegister,
2687
X86::NoRegister, X86::NoRegister,
2688
X86::NoRegister, X86::NoRegister,
2690
X86::NoRegister, X86::NoRegister,
2691
X86::NoRegister, X86::NoRegister,
2692
X86::NoRegister, X86::NoRegister,
2693
X86::NoRegister, X86::NoRegister,
2694
X86::YMM9, X86::XMM9,
2695
X86::NoRegister, X86::NoRegister,
2696
X86::NoRegister, X86::NoRegister,
2697
X86::NoRegister, X86::NoRegister,
2698
X86::NoRegister, X86::NoRegister,
2699
X86::NoRegister, X86::NoRegister,
2700
X86::XMM0, X86::YMM0,
2701
X86::NoRegister, X86::NoRegister,
2704
X86::NoRegister, X86::NoRegister,
2705
X86::NoRegister, X86::NoRegister,
2706
X86::NoRegister, X86::NoRegister,
2707
X86::NoRegister, X86::NoRegister,
2708
X86::NoRegister, X86::NoRegister,
2709
X86::NoRegister, X86::NoRegister,
2710
X86::NoRegister, X86::NoRegister,
2712
X86::NoRegister, X86::NoRegister,
2716
X86::NoRegister, X86::NoRegister,
2718
X86::NoRegister, X86::NoRegister,
2719
X86::NoRegister, X86::NoRegister,
2720
X86::NoRegister, X86::NoRegister,
2722
X86::NoRegister, X86::NoRegister,
2723
X86::NoRegister, X86::NoRegister,
2724
X86::NoRegister, X86::NoRegister,
2725
X86::NoRegister, X86::NoRegister,
2726
X86::NoRegister, X86::NoRegister,
2728
X86::NoRegister, X86::NoRegister,
2729
X86::NoRegister, X86::NoRegister,
2730
X86::NoRegister, X86::NoRegister,
2731
X86::NoRegister, X86::NoRegister,
2732
X86::NoRegister, X86::NoRegister,
2733
X86::NoRegister, X86::NoRegister,
2734
X86::NoRegister, X86::NoRegister,
2735
X86::NoRegister, X86::NoRegister,
2736
X86::NoRegister, X86::NoRegister,
2737
X86::NoRegister, X86::NoRegister,
2738
X86::XMM1, X86::YMM1,
2739
X86::NoRegister, X86::NoRegister,
2740
X86::NoRegister, X86::NoRegister,
2741
X86::NoRegister, X86::NoRegister,
2742
X86::NoRegister, X86::NoRegister,
2743
X86::NoRegister, X86::NoRegister,
2744
X86::NoRegister, X86::NoRegister,
2745
X86::NoRegister, X86::NoRegister,
2746
X86::NoRegister, X86::NoRegister,
2752
X86::NoRegister, X86::NoRegister,
2754
X86::NoRegister, X86::NoRegister,
2755
X86::NoRegister, X86::NoRegister,
2756
X86::NoRegister, X86::NoRegister,
2757
X86::NoRegister, X86::NoRegister,
2759
X86::NoRegister, X86::NoRegister,
2760
X86::NoRegister, X86::NoRegister,
2761
X86::NoRegister, X86::NoRegister,
2762
X86::NoRegister, X86::NoRegister,
2763
X86::NoRegister, X86::NoRegister,
2764
X86::NoRegister, X86::NoRegister,
2765
X86::NoRegister, X86::NoRegister,
2766
X86::NoRegister, X86::NoRegister,
2767
X86::NoRegister, X86::NoRegister,
2768
X86::NoRegister, X86::NoRegister,
2769
X86::NoRegister, X86::NoRegister,
2770
X86::NoRegister, X86::NoRegister,
2771
X86::NoRegister, X86::NoRegister,
2772
X86::NoRegister, X86::NoRegister,
2774
X86::NoRegister, X86::NoRegister,
2775
X86::NoRegister, X86::NoRegister,
2776
X86::XMM10, X86::YMM10,
2777
X86::NoRegister, X86::NoRegister,
2778
X86::NoRegister, X86::NoRegister,
2779
X86::NoRegister, X86::NoRegister,
2780
X86::NoRegister, X86::NoRegister,
2781
X86::NoRegister, X86::NoRegister,
2782
X86::NoRegister, X86::NoRegister,
2783
X86::NoRegister, X86::NoRegister,
2787
X86::R10B, X86::R10,
2788
X86::R10D, X86::R10,
2789
X86::R10W, X86::R10,
2790
X86::NoRegister, X86::NoRegister,
2791
X86::NoRegister, X86::NoRegister,
2792
X86::NoRegister, X86::NoRegister,
2795
X86::NoRegister, X86::NoRegister,
2797
X86::NoRegister, X86::NoRegister,
2800
X86::NoRegister, X86::NoRegister,
2801
X86::NoRegister, X86::NoRegister,
2802
X86::NoRegister, X86::NoRegister,
2803
X86::NoRegister, X86::NoRegister,
2804
X86::NoRegister, X86::NoRegister,
2805
X86::NoRegister, X86::NoRegister,
2806
X86::NoRegister, X86::NoRegister,
2807
X86::NoRegister, X86::NoRegister,
2808
X86::NoRegister, X86::NoRegister,
2809
X86::NoRegister, X86::NoRegister,
2811
X86::NoRegister, X86::NoRegister,
2812
X86::NoRegister, X86::NoRegister,
2813
X86::NoRegister, X86::NoRegister,
2814
X86::XMM11, X86::YMM11,
2815
X86::NoRegister, X86::NoRegister,
2816
X86::NoRegister, X86::NoRegister,
2817
X86::NoRegister, X86::NoRegister,
2818
X86::NoRegister, X86::NoRegister,
2819
X86::NoRegister, X86::NoRegister,
2820
X86::NoRegister, X86::NoRegister,
2821
X86::NoRegister, X86::NoRegister,
2822
X86::NoRegister, X86::NoRegister,
2823
X86::R10, X86::R10B,
2824
X86::NoRegister, X86::NoRegister,
2825
X86::R10D, X86::R10B,
2826
X86::R10W, X86::R10B,
2830
X86::NoRegister, X86::NoRegister,
2831
X86::NoRegister, X86::NoRegister,
2832
X86::NoRegister, X86::NoRegister,
2833
X86::NoRegister, X86::NoRegister,
2834
X86::NoRegister, X86::NoRegister,
2837
X86::NoRegister, X86::NoRegister,
2838
X86::NoRegister, X86::NoRegister,
2839
X86::NoRegister, X86::NoRegister,
2840
X86::NoRegister, X86::NoRegister,
2841
X86::NoRegister, X86::NoRegister,
2842
X86::NoRegister, X86::NoRegister,
2844
X86::NoRegister, X86::NoRegister,
2845
X86::NoRegister, X86::NoRegister,
2846
X86::NoRegister, X86::NoRegister,
2847
X86::NoRegister, X86::NoRegister,
2848
X86::NoRegister, X86::NoRegister,
2849
X86::NoRegister, X86::NoRegister,
2850
X86::NoRegister, X86::NoRegister,
2851
X86::NoRegister, X86::NoRegister,
2852
X86::XMM12, X86::YMM12,
2853
X86::NoRegister, X86::NoRegister,
2854
X86::NoRegister, X86::NoRegister,
2857
X86::NoRegister, X86::NoRegister,
2858
X86::NoRegister, X86::NoRegister,
2859
X86::NoRegister, X86::NoRegister,
2860
X86::R10, X86::R10D,
2861
X86::R10B, X86::R10D,
2862
X86::NoRegister, X86::NoRegister,
2863
X86::R10W, X86::R10D,
2864
X86::NoRegister, X86::NoRegister,
2868
X86::NoRegister, X86::NoRegister,
2869
X86::NoRegister, X86::NoRegister,
2870
X86::NoRegister, X86::NoRegister,
2872
X86::NoRegister, X86::NoRegister,
2873
X86::NoRegister, X86::NoRegister,
2875
X86::NoRegister, X86::NoRegister,
2876
X86::NoRegister, X86::NoRegister,
2877
X86::NoRegister, X86::NoRegister,
2878
X86::NoRegister, X86::NoRegister,
2879
X86::NoRegister, X86::NoRegister,
2881
X86::NoRegister, X86::NoRegister,
2882
X86::NoRegister, X86::NoRegister,
2887
X86::NoRegister, X86::NoRegister,
2888
X86::NoRegister, X86::NoRegister,
2889
X86::NoRegister, X86::NoRegister,
2891
X86::NoRegister, X86::NoRegister,
2893
X86::NoRegister, X86::NoRegister,
2894
X86::NoRegister, X86::NoRegister,
2895
X86::NoRegister, X86::NoRegister,
2896
X86::XMM13, X86::YMM13,
2897
X86::R10, X86::R10W,
2898
X86::R10B, X86::R10W,
2899
X86::R10D, X86::R10W,
2902
X86::NoRegister, X86::NoRegister,
2904
X86::NoRegister, X86::NoRegister,
2905
X86::NoRegister, X86::NoRegister,
2906
X86::NoRegister, X86::NoRegister,
2907
X86::NoRegister, X86::NoRegister,
2908
X86::NoRegister, X86::NoRegister,
2910
X86::NoRegister, X86::NoRegister,
2912
X86::NoRegister, X86::NoRegister,
2913
X86::NoRegister, X86::NoRegister,
2914
X86::NoRegister, X86::NoRegister,
2915
X86::NoRegister, X86::NoRegister,
2916
X86::NoRegister, X86::NoRegister,
2917
X86::NoRegister, X86::NoRegister,
2918
X86::NoRegister, X86::NoRegister,
2919
X86::NoRegister, X86::NoRegister,
2920
X86::NoRegister, X86::NoRegister,
2921
X86::NoRegister, X86::NoRegister,
2922
X86::NoRegister, X86::NoRegister,
2924
X86::NoRegister, X86::NoRegister,
2927
X86::NoRegister, X86::NoRegister,
2928
X86::XMM14, X86::YMM14,
2929
X86::NoRegister, X86::NoRegister,
2931
X86::NoRegister, X86::NoRegister,
2932
X86::NoRegister, X86::NoRegister,
2933
X86::NoRegister, X86::NoRegister,
2934
X86::NoRegister, X86::NoRegister,
2936
X86::NoRegister, X86::NoRegister,
2939
X86::R11B, X86::R11,
2940
X86::R11D, X86::R11,
2941
X86::R11W, X86::R11,
2942
X86::NoRegister, X86::NoRegister,
2943
X86::NoRegister, X86::NoRegister,
2944
X86::NoRegister, X86::NoRegister,
2946
X86::NoRegister, X86::NoRegister,
2948
X86::NoRegister, X86::NoRegister,
2949
X86::NoRegister, X86::NoRegister,
2950
X86::NoRegister, X86::NoRegister,
2951
X86::NoRegister, X86::NoRegister,
2952
X86::NoRegister, X86::NoRegister,
2953
X86::NoRegister, X86::NoRegister,
2955
X86::NoRegister, X86::NoRegister,
2956
X86::NoRegister, X86::NoRegister,
2957
X86::NoRegister, X86::NoRegister,
2958
X86::NoRegister, X86::NoRegister,
2962
X86::NoRegister, X86::NoRegister,
2963
X86::NoRegister, X86::NoRegister,
2965
X86::NoRegister, X86::NoRegister,
2966
X86::XMM15, X86::YMM15,
2967
X86::NoRegister, X86::NoRegister,
2969
X86::NoRegister, X86::NoRegister,
2970
X86::NoRegister, X86::NoRegister,
2972
X86::NoRegister, X86::NoRegister,
2973
X86::NoRegister, X86::NoRegister,
2974
X86::NoRegister, X86::NoRegister,
2975
X86::R11, X86::R11B,
2976
X86::NoRegister, X86::NoRegister,
2977
X86::R11D, X86::R11B,
2978
X86::R11W, X86::R11B,
2979
X86::NoRegister, X86::NoRegister,
2980
X86::NoRegister, X86::NoRegister,
2981
X86::NoRegister, X86::NoRegister,
2982
X86::NoRegister, X86::NoRegister,
2983
X86::NoRegister, X86::NoRegister,
2984
X86::NoRegister, X86::NoRegister,
2986
X86::NoRegister, X86::NoRegister,
2988
X86::NoRegister, X86::NoRegister,
2989
X86::NoRegister, X86::NoRegister,
2990
X86::NoRegister, X86::NoRegister,
2991
X86::NoRegister, X86::NoRegister,
2992
X86::NoRegister, X86::NoRegister,
2994
X86::NoRegister, X86::NoRegister,
2995
X86::NoRegister, X86::NoRegister,
2997
X86::NoRegister, X86::NoRegister,
2998
X86::NoRegister, X86::NoRegister,
2999
X86::NoRegister, X86::NoRegister,
3000
X86::NoRegister, X86::NoRegister,
3001
X86::NoRegister, X86::NoRegister,
3002
X86::NoRegister, X86::NoRegister,
3003
X86::NoRegister, X86::NoRegister,
3004
X86::XMM2, X86::YMM2,
3005
X86::NoRegister, X86::NoRegister,
3006
X86::NoRegister, X86::NoRegister,
3007
X86::NoRegister, X86::NoRegister,
3008
X86::NoRegister, X86::NoRegister,
3009
X86::NoRegister, X86::NoRegister,
3010
X86::NoRegister, X86::NoRegister,
3011
X86::NoRegister, X86::NoRegister,
3012
X86::R11, X86::R11D,
3013
X86::R11B, X86::R11D,
3014
X86::NoRegister, X86::NoRegister,
3015
X86::R11W, X86::R11D,
3016
X86::NoRegister, X86::NoRegister,
3017
X86::NoRegister, X86::NoRegister,
3018
X86::NoRegister, X86::NoRegister,
3019
X86::NoRegister, X86::NoRegister,
3021
X86::NoRegister, X86::NoRegister,
3022
X86::NoRegister, X86::NoRegister,
3023
X86::NoRegister, X86::NoRegister,
3024
X86::NoRegister, X86::NoRegister,
3025
X86::NoRegister, X86::NoRegister,
3026
X86::NoRegister, X86::NoRegister,
3027
X86::NoRegister, X86::NoRegister,
3028
X86::NoRegister, X86::NoRegister,
3030
X86::NoRegister, X86::NoRegister,
3031
X86::NoRegister, X86::NoRegister,
3032
X86::NoRegister, X86::NoRegister,
3033
X86::NoRegister, X86::NoRegister,
3035
X86::NoRegister, X86::NoRegister,
3036
X86::NoRegister, X86::NoRegister,
3037
X86::NoRegister, X86::NoRegister,
3038
X86::NoRegister, X86::NoRegister,
3039
X86::NoRegister, X86::NoRegister,
3040
X86::NoRegister, X86::NoRegister,
3041
X86::NoRegister, X86::NoRegister,
3042
X86::XMM3, X86::YMM3,
3044
X86::NoRegister, X86::NoRegister,
3045
X86::NoRegister, X86::NoRegister,
3046
X86::NoRegister, X86::NoRegister,
3047
X86::NoRegister, X86::NoRegister,
3048
X86::NoRegister, X86::NoRegister,
3049
X86::R11, X86::R11W,
3050
X86::R11B, X86::R11W,
3051
X86::R11D, X86::R11W,
3052
X86::NoRegister, X86::NoRegister,
3053
X86::NoRegister, X86::NoRegister,
3054
X86::NoRegister, X86::NoRegister,
3055
X86::NoRegister, X86::NoRegister,
3056
X86::NoRegister, X86::NoRegister,
3057
X86::NoRegister, X86::NoRegister,
3058
X86::NoRegister, X86::NoRegister,
3059
X86::NoRegister, X86::NoRegister,
3060
X86::NoRegister, X86::NoRegister,
3061
X86::NoRegister, X86::NoRegister,
3062
X86::NoRegister, X86::NoRegister,
3063
X86::NoRegister, X86::NoRegister,
3064
X86::NoRegister, X86::NoRegister,
3065
X86::NoRegister, X86::NoRegister,
3067
X86::NoRegister, X86::NoRegister,
3068
X86::NoRegister, X86::NoRegister,
3069
X86::NoRegister, X86::NoRegister,
3070
X86::NoRegister, X86::NoRegister,
3071
X86::NoRegister, X86::NoRegister,
3072
X86::NoRegister, X86::NoRegister,
3073
X86::NoRegister, X86::NoRegister,
3074
X86::NoRegister, X86::NoRegister,
3075
X86::NoRegister, X86::NoRegister,
3076
X86::NoRegister, X86::NoRegister,
3077
X86::NoRegister, X86::NoRegister,
3078
X86::NoRegister, X86::NoRegister,
3079
X86::NoRegister, X86::NoRegister,
3080
X86::XMM4, X86::YMM4,
3081
X86::NoRegister, X86::NoRegister,
3082
X86::NoRegister, X86::NoRegister,
3083
X86::NoRegister, X86::NoRegister,
3084
X86::NoRegister, X86::NoRegister,
3085
X86::NoRegister, X86::NoRegister,
3086
X86::NoRegister, X86::NoRegister,
3087
X86::NoRegister, X86::NoRegister,
3088
X86::NoRegister, X86::NoRegister,
3089
X86::NoRegister, X86::NoRegister,
3090
X86::NoRegister, X86::NoRegister,
3091
X86::R12B, X86::R12,
3092
X86::R12D, X86::R12,
3093
X86::R12W, X86::R12,
3094
X86::NoRegister, X86::NoRegister,
3095
X86::NoRegister, X86::NoRegister,
3096
X86::NoRegister, X86::NoRegister,
3097
X86::NoRegister, X86::NoRegister,
3098
X86::NoRegister, X86::NoRegister,
3099
X86::NoRegister, X86::NoRegister,
3100
X86::NoRegister, X86::NoRegister,
3101
X86::NoRegister, X86::NoRegister,
3102
X86::NoRegister, X86::NoRegister,
3103
X86::NoRegister, X86::NoRegister,
3105
X86::NoRegister, X86::NoRegister,
3106
X86::NoRegister, X86::NoRegister,
3107
X86::NoRegister, X86::NoRegister,
3108
X86::NoRegister, X86::NoRegister,
3109
X86::NoRegister, X86::NoRegister,
3110
X86::NoRegister, X86::NoRegister,
3111
X86::NoRegister, X86::NoRegister,
3112
X86::NoRegister, X86::NoRegister,
3113
X86::NoRegister, X86::NoRegister,
3114
X86::NoRegister, X86::NoRegister,
3115
X86::NoRegister, X86::NoRegister,
3116
X86::NoRegister, X86::NoRegister,
3117
X86::NoRegister, X86::NoRegister,
3119
X86::NoRegister, X86::NoRegister,
3122
X86::NoRegister, X86::NoRegister,
3123
X86::NoRegister, X86::NoRegister,
3124
X86::XMM5, X86::YMM5,
3125
X86::NoRegister, X86::NoRegister,
3126
X86::NoRegister, X86::NoRegister,
3127
X86::R12, X86::R12B,
3128
X86::NoRegister, X86::NoRegister,
3129
X86::R12D, X86::R12B,
3130
X86::R12W, X86::R12B,
3131
X86::NoRegister, X86::NoRegister,
3132
X86::NoRegister, X86::NoRegister,
3133
X86::NoRegister, X86::NoRegister,
3134
X86::NoRegister, X86::NoRegister,
3135
X86::NoRegister, X86::NoRegister,
3136
X86::NoRegister, X86::NoRegister,
3137
X86::NoRegister, X86::NoRegister,
3138
X86::NoRegister, X86::NoRegister,
3139
X86::NoRegister, X86::NoRegister,
3140
X86::NoRegister, X86::NoRegister,
3141
X86::NoRegister, X86::NoRegister,
3142
X86::NoRegister, X86::NoRegister,
3143
X86::NoRegister, X86::NoRegister,
3144
X86::NoRegister, X86::NoRegister,
3145
X86::NoRegister, X86::NoRegister,
3146
X86::NoRegister, X86::NoRegister,
3147
X86::NoRegister, X86::NoRegister,
3148
X86::YMM0, X86::XMM0,
3149
X86::NoRegister, X86::NoRegister,
3150
X86::NoRegister, X86::NoRegister,
3151
X86::NoRegister, X86::NoRegister,
3152
X86::NoRegister, X86::NoRegister,
3153
X86::NoRegister, X86::NoRegister,
3154
X86::NoRegister, X86::NoRegister,
3155
X86::NoRegister, X86::NoRegister,
3157
X86::NoRegister, X86::NoRegister,
3158
X86::XMM6, X86::YMM6,
3161
X86::NoRegister, X86::NoRegister,
3162
X86::NoRegister, X86::NoRegister,
3163
X86::NoRegister, X86::NoRegister,
3164
X86::R12, X86::R12D,
3165
X86::R12B, X86::R12D,
3166
X86::NoRegister, X86::NoRegister,
3167
X86::R12W, X86::R12D,
3168
X86::NoRegister, X86::NoRegister,
3169
X86::NoRegister, X86::NoRegister,
3170
X86::NoRegister, X86::NoRegister,
3171
X86::NoRegister, X86::NoRegister,
3172
X86::NoRegister, X86::NoRegister,
3173
X86::NoRegister, X86::NoRegister,
3174
X86::NoRegister, X86::NoRegister,
3175
X86::NoRegister, X86::NoRegister,
3176
X86::NoRegister, X86::NoRegister,
3177
X86::NoRegister, X86::NoRegister,
3178
X86::NoRegister, X86::NoRegister,
3179
X86::NoRegister, X86::NoRegister,
3180
X86::NoRegister, X86::NoRegister,
3181
X86::NoRegister, X86::NoRegister,
3182
X86::NoRegister, X86::NoRegister,
3183
X86::NoRegister, X86::NoRegister,
3184
X86::NoRegister, X86::NoRegister,
3185
X86::NoRegister, X86::NoRegister,
3186
X86::YMM1, X86::XMM1,
3187
X86::NoRegister, X86::NoRegister,
3188
X86::NoRegister, X86::NoRegister,
3189
X86::NoRegister, X86::NoRegister,
3190
X86::NoRegister, X86::NoRegister,
3191
X86::NoRegister, X86::NoRegister,
3192
X86::NoRegister, X86::NoRegister,
3193
X86::NoRegister, X86::NoRegister,
3194
X86::XMM7, X86::YMM7,
3195
X86::NoRegister, X86::NoRegister,
3196
X86::NoRegister, X86::NoRegister,
3197
X86::NoRegister, X86::NoRegister,
3198
X86::NoRegister, X86::NoRegister,
3199
X86::NoRegister, X86::NoRegister,
3200
X86::NoRegister, X86::NoRegister,
3201
X86::R12, X86::R12W,
3202
X86::R12B, X86::R12W,
3203
X86::R12D, X86::R12W,
3204
X86::NoRegister, X86::NoRegister,
3205
X86::NoRegister, X86::NoRegister,
3206
X86::NoRegister, X86::NoRegister,
3207
X86::NoRegister, X86::NoRegister,
3208
X86::NoRegister, X86::NoRegister,
3209
X86::NoRegister, X86::NoRegister,
3210
X86::NoRegister, X86::NoRegister,
3211
X86::NoRegister, X86::NoRegister,
3212
X86::NoRegister, X86::NoRegister,
3213
X86::NoRegister, X86::NoRegister,
3214
X86::NoRegister, X86::NoRegister,
3215
X86::NoRegister, X86::NoRegister,
3216
X86::NoRegister, X86::NoRegister,
3217
X86::NoRegister, X86::NoRegister,
3218
X86::NoRegister, X86::NoRegister,
3219
X86::NoRegister, X86::NoRegister,
3220
X86::NoRegister, X86::NoRegister,
3221
X86::NoRegister, X86::NoRegister,
3222
X86::NoRegister, X86::NoRegister,
3223
X86::NoRegister, X86::NoRegister,
3224
X86::YMM10, X86::XMM10,
3225
X86::NoRegister, X86::NoRegister,
3226
X86::NoRegister, X86::NoRegister,
3227
X86::NoRegister, X86::NoRegister,
3228
X86::NoRegister, X86::NoRegister,
3229
X86::NoRegister, X86::NoRegister,
3230
X86::NoRegister, X86::NoRegister,
3231
X86::NoRegister, X86::NoRegister,
3232
X86::XMM8, X86::YMM8,
3233
X86::NoRegister, X86::NoRegister,
3234
X86::NoRegister, X86::NoRegister,
3235
X86::NoRegister, X86::NoRegister,
3236
X86::NoRegister, X86::NoRegister,
3237
X86::NoRegister, X86::NoRegister,
3238
X86::NoRegister, X86::NoRegister,
3239
X86::NoRegister, X86::NoRegister,
3240
X86::NoRegister, X86::NoRegister,
3241
X86::NoRegister, X86::NoRegister,
3242
X86::NoRegister, X86::NoRegister,
3243
X86::R13B, X86::R13,
3244
X86::R13D, X86::R13,
3245
X86::R13W, X86::R13,
3246
X86::NoRegister, X86::NoRegister,
3247
X86::NoRegister, X86::NoRegister,
3248
X86::NoRegister, X86::NoRegister,
3249
X86::NoRegister, X86::NoRegister,
3250
X86::NoRegister, X86::NoRegister,
3251
X86::NoRegister, X86::NoRegister,
3252
X86::NoRegister, X86::NoRegister,
3253
X86::NoRegister, X86::NoRegister,
3254
X86::NoRegister, X86::NoRegister,
3255
X86::NoRegister, X86::NoRegister,
3256
X86::NoRegister, X86::NoRegister,
3257
X86::NoRegister, X86::NoRegister,
3258
X86::NoRegister, X86::NoRegister,
3259
X86::NoRegister, X86::NoRegister,
3260
X86::NoRegister, X86::NoRegister,
3261
X86::NoRegister, X86::NoRegister,
3262
X86::YMM11, X86::XMM11,
3263
X86::NoRegister, X86::NoRegister,
3264
X86::NoRegister, X86::NoRegister,
3265
X86::NoRegister, X86::NoRegister,
3266
X86::NoRegister, X86::NoRegister,
3267
X86::NoRegister, X86::NoRegister,
3268
X86::NoRegister, X86::NoRegister,
3269
X86::NoRegister, X86::NoRegister,
3270
X86::XMM9, X86::YMM9,
3271
X86::NoRegister, X86::NoRegister,
3272
X86::NoRegister, X86::NoRegister,
3273
X86::NoRegister, X86::NoRegister,
3274
X86::NoRegister, X86::NoRegister,
3275
X86::NoRegister, X86::NoRegister,
3276
X86::NoRegister, X86::NoRegister,
3277
X86::NoRegister, X86::NoRegister,
3278
X86::NoRegister, X86::NoRegister,
3279
X86::R13, X86::R13B,
3280
X86::NoRegister, X86::NoRegister,
3281
X86::R13D, X86::R13B,
3282
X86::R13W, X86::R13B,
3283
X86::NoRegister, X86::NoRegister,
3284
X86::NoRegister, X86::NoRegister,
3285
X86::NoRegister, X86::NoRegister,
3286
X86::NoRegister, X86::NoRegister,
3287
X86::NoRegister, X86::NoRegister,
3288
X86::NoRegister, X86::NoRegister,
3289
X86::NoRegister, X86::NoRegister,
3290
X86::NoRegister, X86::NoRegister,
3291
X86::NoRegister, X86::NoRegister,
3292
X86::NoRegister, X86::NoRegister,
3293
X86::NoRegister, X86::NoRegister,
3294
X86::NoRegister, X86::NoRegister,
3295
X86::NoRegister, X86::NoRegister,
3296
X86::NoRegister, X86::NoRegister,
3297
X86::NoRegister, X86::NoRegister,
3298
X86::NoRegister, X86::NoRegister,
3299
X86::NoRegister, X86::NoRegister,
3300
X86::YMM12, X86::XMM12,
3301
X86::NoRegister, X86::NoRegister,
3302
X86::NoRegister, X86::NoRegister,
3303
X86::NoRegister, X86::NoRegister,
3304
X86::NoRegister, X86::NoRegister,
3305
X86::NoRegister, X86::NoRegister,
3306
X86::NoRegister, X86::NoRegister,
3307
X86::NoRegister, X86::NoRegister,
3308
X86::NoRegister, X86::NoRegister,
3309
X86::NoRegister, X86::NoRegister,
3310
X86::NoRegister, X86::NoRegister,
3311
X86::NoRegister, X86::NoRegister,
3312
X86::NoRegister, X86::NoRegister,
3313
X86::NoRegister, X86::NoRegister,
3314
X86::NoRegister, X86::NoRegister,
3315
X86::NoRegister, X86::NoRegister,
3316
X86::R13, X86::R13D,
3317
X86::R13B, X86::R13D,
3318
X86::NoRegister, X86::NoRegister,
3319
X86::R13W, X86::R13D,
3320
X86::NoRegister, X86::NoRegister,
3321
X86::NoRegister, X86::NoRegister,
3322
X86::NoRegister, X86::NoRegister,
3323
X86::NoRegister, X86::NoRegister,
3324
X86::NoRegister, X86::NoRegister,
3325
X86::NoRegister, X86::NoRegister,
3326
X86::NoRegister, X86::NoRegister,
3327
X86::NoRegister, X86::NoRegister,
3328
X86::NoRegister, X86::NoRegister,
3329
X86::NoRegister, X86::NoRegister,
3330
X86::NoRegister, X86::NoRegister,
3331
X86::NoRegister, X86::NoRegister,
3332
X86::NoRegister, X86::NoRegister,
3333
X86::NoRegister, X86::NoRegister,
3334
X86::NoRegister, X86::NoRegister,
3337
X86::NoRegister, X86::NoRegister,
3339
X86::NoRegister, X86::NoRegister,
3340
X86::YMM13, X86::XMM13,
3341
X86::NoRegister, X86::NoRegister,
3342
X86::NoRegister, X86::NoRegister,
3343
X86::NoRegister, X86::NoRegister,
3344
X86::NoRegister, X86::NoRegister,
3345
X86::NoRegister, X86::NoRegister,
3346
X86::NoRegister, X86::NoRegister,
3347
X86::NoRegister, X86::NoRegister,
3348
X86::NoRegister, X86::NoRegister,
3349
X86::NoRegister, X86::NoRegister,
3350
X86::NoRegister, X86::NoRegister,
3351
X86::NoRegister, X86::NoRegister,
3352
X86::NoRegister, X86::NoRegister,
3353
X86::R13, X86::R13W,
3354
X86::R13B, X86::R13W,
3355
X86::R13D, X86::R13W,
3356
X86::NoRegister, X86::NoRegister,
3357
X86::NoRegister, X86::NoRegister,
3358
X86::NoRegister, X86::NoRegister,
3359
X86::NoRegister, X86::NoRegister,
3360
X86::NoRegister, X86::NoRegister,
3361
X86::NoRegister, X86::NoRegister,
3362
X86::NoRegister, X86::NoRegister,
3363
X86::NoRegister, X86::NoRegister,
3365
X86::NoRegister, X86::NoRegister,
3366
X86::NoRegister, X86::NoRegister,
3367
X86::NoRegister, X86::NoRegister,
3368
X86::NoRegister, X86::NoRegister,
3369
X86::NoRegister, X86::NoRegister,
3370
X86::NoRegister, X86::NoRegister,
3371
X86::NoRegister, X86::NoRegister,
3372
X86::NoRegister, X86::NoRegister,
3373
X86::NoRegister, X86::NoRegister,
3374
X86::NoRegister, X86::NoRegister,
3375
X86::NoRegister, X86::NoRegister,
3376
X86::YMM14, X86::XMM14,
3381
X86::NoRegister, X86::NoRegister,
3382
X86::NoRegister, X86::NoRegister,
3383
X86::NoRegister, X86::NoRegister,
3384
X86::NoRegister, X86::NoRegister,
3385
X86::NoRegister, X86::NoRegister,
3386
X86::NoRegister, X86::NoRegister,
3387
X86::NoRegister, X86::NoRegister,
3388
X86::NoRegister, X86::NoRegister,
3389
X86::NoRegister, X86::NoRegister,
3390
X86::NoRegister, X86::NoRegister,
3391
X86::NoRegister, X86::NoRegister,
3392
X86::NoRegister, X86::NoRegister,
3393
X86::NoRegister, X86::NoRegister,
3394
X86::NoRegister, X86::NoRegister,
3395
X86::R14B, X86::R14,
3396
X86::R14D, X86::R14,
3397
X86::R14W, X86::R14,
3398
X86::NoRegister, X86::NoRegister,
3399
X86::NoRegister, X86::NoRegister,
3400
X86::NoRegister, X86::NoRegister,
3401
X86::NoRegister, X86::NoRegister,
3405
X86::NoRegister, X86::NoRegister,
3407
X86::NoRegister, X86::NoRegister,
3409
X86::NoRegister, X86::NoRegister,
3410
X86::NoRegister, X86::NoRegister,
3411
X86::NoRegister, X86::NoRegister,
3412
X86::NoRegister, X86::NoRegister,
3414
X86::YMM15, X86::XMM15,
3415
X86::NoRegister, X86::NoRegister,
3417
X86::NoRegister, X86::NoRegister,
3418
X86::NoRegister, X86::NoRegister,
3419
X86::NoRegister, X86::NoRegister,
3420
X86::NoRegister, X86::NoRegister,
3421
X86::NoRegister, X86::NoRegister,
3422
X86::NoRegister, X86::NoRegister,
3423
X86::NoRegister, X86::NoRegister,
3424
X86::NoRegister, X86::NoRegister,
3425
X86::NoRegister, X86::NoRegister };
3426
const unsigned AliasesHashTableSize = 1024;
3429
// Register Alias Sets...
3430
const unsigned Empty_AliasSet[] = { 0 };
3431
const unsigned AH_AliasSet[] = { X86::AX, X86::EAX, X86::RAX, 0 };
3432
const unsigned AL_AliasSet[] = { X86::AX, X86::EAX, X86::RAX, 0 };
3433
const unsigned AX_AliasSet[] = { X86::AL, X86::AH, X86::EAX, X86::RAX, 0 };
3434
const unsigned BH_AliasSet[] = { X86::BX, X86::EBX, X86::RBX, 0 };
3435
const unsigned BL_AliasSet[] = { X86::BX, X86::EBX, X86::RBX, 0 };
3436
const unsigned BP_AliasSet[] = { X86::BPL, X86::EBP, X86::RBP, 0 };
3437
const unsigned BPL_AliasSet[] = { X86::BP, X86::EBP, X86::RBP, 0 };
3438
const unsigned BX_AliasSet[] = { X86::BL, X86::BH, X86::EBX, X86::RBX, 0 };
3439
const unsigned CH_AliasSet[] = { X86::CX, X86::ECX, X86::RCX, 0 };
3440
const unsigned CL_AliasSet[] = { X86::CX, X86::ECX, X86::RCX, 0 };
3441
const unsigned CS_AliasSet[] = { 0 };
3442
const unsigned CX_AliasSet[] = { X86::CL, X86::CH, X86::ECX, X86::RCX, 0 };
3443
const unsigned DH_AliasSet[] = { X86::DX, X86::EDX, X86::RDX, 0 };
3444
const unsigned DI_AliasSet[] = { X86::DIL, X86::EDI, X86::RDI, 0 };
3445
const unsigned DIL_AliasSet[] = { X86::DI, X86::EDI, X86::RDI, 0 };
3446
const unsigned DL_AliasSet[] = { X86::DX, X86::EDX, X86::RDX, 0 };
3447
const unsigned DR0_AliasSet[] = { 0 };
3448
const unsigned DR1_AliasSet[] = { 0 };
3449
const unsigned DR2_AliasSet[] = { 0 };
3450
const unsigned DR3_AliasSet[] = { 0 };
3451
const unsigned DR4_AliasSet[] = { 0 };
3452
const unsigned DR5_AliasSet[] = { 0 };
3453
const unsigned DR6_AliasSet[] = { 0 };
3454
const unsigned DR7_AliasSet[] = { 0 };
3455
const unsigned DS_AliasSet[] = { 0 };
3456
const unsigned DX_AliasSet[] = { X86::DL, X86::DH, X86::EDX, X86::RDX, 0 };
3457
const unsigned EAX_AliasSet[] = { X86::AL, X86::AH, X86::AX, X86::RAX, 0 };
3458
const unsigned EBP_AliasSet[] = { X86::BPL, X86::BP, X86::RBP, 0 };
3459
const unsigned EBX_AliasSet[] = { X86::BL, X86::BH, X86::BX, X86::RBX, 0 };
3460
const unsigned ECR0_AliasSet[] = { 0 };
3461
const unsigned ECR1_AliasSet[] = { 0 };
3462
const unsigned ECR2_AliasSet[] = { 0 };
3463
const unsigned ECR3_AliasSet[] = { 0 };
3464
const unsigned ECR4_AliasSet[] = { 0 };
3465
const unsigned ECR5_AliasSet[] = { 0 };
3466
const unsigned ECR6_AliasSet[] = { 0 };
3467
const unsigned ECR7_AliasSet[] = { 0 };
3468
const unsigned ECX_AliasSet[] = { X86::CL, X86::CH, X86::CX, X86::RCX, 0 };
3469
const unsigned EDI_AliasSet[] = { X86::DIL, X86::DI, X86::RDI, 0 };
3470
const unsigned EDX_AliasSet[] = { X86::DL, X86::DH, X86::DX, X86::RDX, 0 };
3471
const unsigned EFLAGS_AliasSet[] = { 0 };
3472
const unsigned EIP_AliasSet[] = { X86::IP, X86::RIP, 0 };
3473
const unsigned ES_AliasSet[] = { 0 };
3474
const unsigned ESI_AliasSet[] = { X86::SIL, X86::SI, X86::RSI, 0 };
3475
const unsigned ESP_AliasSet[] = { X86::SPL, X86::SP, X86::RSP, 0 };
3476
const unsigned FP0_AliasSet[] = { 0 };
3477
const unsigned FP1_AliasSet[] = { 0 };
3478
const unsigned FP2_AliasSet[] = { 0 };
3479
const unsigned FP3_AliasSet[] = { 0 };
3480
const unsigned FP4_AliasSet[] = { 0 };
3481
const unsigned FP5_AliasSet[] = { 0 };
3482
const unsigned FP6_AliasSet[] = { 0 };
3483
const unsigned FS_AliasSet[] = { 0 };
3484
const unsigned GS_AliasSet[] = { 0 };
3485
const unsigned IP_AliasSet[] = { X86::EIP, X86::RIP, 0 };
3486
const unsigned MM0_AliasSet[] = { 0 };
3487
const unsigned MM1_AliasSet[] = { 0 };
3488
const unsigned MM2_AliasSet[] = { 0 };
3489
const unsigned MM3_AliasSet[] = { 0 };
3490
const unsigned MM4_AliasSet[] = { 0 };
3491
const unsigned MM5_AliasSet[] = { 0 };
3492
const unsigned MM6_AliasSet[] = { 0 };
3493
const unsigned MM7_AliasSet[] = { 0 };
3494
const unsigned R10_AliasSet[] = { X86::R10B, X86::R10W, X86::R10D, 0 };
3495
const unsigned R10B_AliasSet[] = { X86::R10W, X86::R10D, X86::R10, 0 };
3496
const unsigned R10D_AliasSet[] = { X86::R10B, X86::R10W, X86::R10, 0 };
3497
const unsigned R10W_AliasSet[] = { X86::R10B, X86::R10D, X86::R10, 0 };
3498
const unsigned R11_AliasSet[] = { X86::R11B, X86::R11W, X86::R11D, 0 };
3499
const unsigned R11B_AliasSet[] = { X86::R11W, X86::R11D, X86::R11, 0 };
3500
const unsigned R11D_AliasSet[] = { X86::R11B, X86::R11W, X86::R11, 0 };
3501
const unsigned R11W_AliasSet[] = { X86::R11B, X86::R11D, X86::R11, 0 };
3502
const unsigned R12_AliasSet[] = { X86::R12B, X86::R12W, X86::R12D, 0 };
3503
const unsigned R12B_AliasSet[] = { X86::R12W, X86::R12D, X86::R12, 0 };
3504
const unsigned R12D_AliasSet[] = { X86::R12B, X86::R12W, X86::R12, 0 };
3505
const unsigned R12W_AliasSet[] = { X86::R12B, X86::R12D, X86::R12, 0 };
3506
const unsigned R13_AliasSet[] = { X86::R13B, X86::R13W, X86::R13D, 0 };
3507
const unsigned R13B_AliasSet[] = { X86::R13W, X86::R13D, X86::R13, 0 };
3508
const unsigned R13D_AliasSet[] = { X86::R13B, X86::R13W, X86::R13, 0 };
3509
const unsigned R13W_AliasSet[] = { X86::R13B, X86::R13D, X86::R13, 0 };
3510
const unsigned R14_AliasSet[] = { X86::R14B, X86::R14W, X86::R14D, 0 };
3511
const unsigned R14B_AliasSet[] = { X86::R14W, X86::R14D, X86::R14, 0 };
3512
const unsigned R14D_AliasSet[] = { X86::R14B, X86::R14W, X86::R14, 0 };
3513
const unsigned R14W_AliasSet[] = { X86::R14B, X86::R14D, X86::R14, 0 };
3514
const unsigned R15_AliasSet[] = { X86::R15B, X86::R15W, X86::R15D, 0 };
3515
const unsigned R15B_AliasSet[] = { X86::R15W, X86::R15D, X86::R15, 0 };
3516
const unsigned R15D_AliasSet[] = { X86::R15B, X86::R15W, X86::R15, 0 };
3517
const unsigned R15W_AliasSet[] = { X86::R15B, X86::R15D, X86::R15, 0 };
3518
const unsigned R8_AliasSet[] = { X86::R8B, X86::R8W, X86::R8D, 0 };
3519
const unsigned R8B_AliasSet[] = { X86::R8W, X86::R8D, X86::R8, 0 };
3520
const unsigned R8D_AliasSet[] = { X86::R8B, X86::R8W, X86::R8, 0 };
3521
const unsigned R8W_AliasSet[] = { X86::R8B, X86::R8D, X86::R8, 0 };
3522
const unsigned R9_AliasSet[] = { X86::R9B, X86::R9W, X86::R9D, 0 };
3523
const unsigned R9B_AliasSet[] = { X86::R9W, X86::R9D, X86::R9, 0 };
3524
const unsigned R9D_AliasSet[] = { X86::R9B, X86::R9W, X86::R9, 0 };
3525
const unsigned R9W_AliasSet[] = { X86::R9B, X86::R9D, X86::R9, 0 };
3526
const unsigned RAX_AliasSet[] = { X86::AL, X86::AH, X86::AX, X86::EAX, 0 };
3527
const unsigned RBP_AliasSet[] = { X86::BPL, X86::BP, X86::EBP, 0 };
3528
const unsigned RBX_AliasSet[] = { X86::BL, X86::BH, X86::BX, X86::EBX, 0 };
3529
const unsigned RCR0_AliasSet[] = { 0 };
3530
const unsigned RCR1_AliasSet[] = { 0 };
3531
const unsigned RCR2_AliasSet[] = { 0 };
3532
const unsigned RCR3_AliasSet[] = { 0 };
3533
const unsigned RCR4_AliasSet[] = { 0 };
3534
const unsigned RCR5_AliasSet[] = { 0 };
3535
const unsigned RCR6_AliasSet[] = { 0 };
3536
const unsigned RCR7_AliasSet[] = { 0 };
3537
const unsigned RCR8_AliasSet[] = { 0 };
3538
const unsigned RCX_AliasSet[] = { X86::CL, X86::CH, X86::CX, X86::ECX, 0 };
3539
const unsigned RDI_AliasSet[] = { X86::DIL, X86::DI, X86::EDI, 0 };
3540
const unsigned RDX_AliasSet[] = { X86::DL, X86::DH, X86::DX, X86::EDX, 0 };
3541
const unsigned RIP_AliasSet[] = { X86::IP, X86::EIP, 0 };
3542
const unsigned RSI_AliasSet[] = { X86::SIL, X86::SI, X86::ESI, 0 };
3543
const unsigned RSP_AliasSet[] = { X86::SPL, X86::SP, X86::ESP, 0 };
3544
const unsigned SI_AliasSet[] = { X86::SIL, X86::ESI, X86::RSI, 0 };
3545
const unsigned SIL_AliasSet[] = { X86::SI, X86::ESI, X86::RSI, 0 };
3546
const unsigned SP_AliasSet[] = { X86::SPL, X86::ESP, X86::RSP, 0 };
3547
const unsigned SPL_AliasSet[] = { X86::SP, X86::ESP, X86::RSP, 0 };
3548
const unsigned SS_AliasSet[] = { 0 };
3549
const unsigned ST0_AliasSet[] = { 0 };
3550
const unsigned ST1_AliasSet[] = { 0 };
3551
const unsigned ST2_AliasSet[] = { 0 };
3552
const unsigned ST3_AliasSet[] = { 0 };
3553
const unsigned ST4_AliasSet[] = { 0 };
3554
const unsigned ST5_AliasSet[] = { 0 };
3555
const unsigned ST6_AliasSet[] = { 0 };
3556
const unsigned ST7_AliasSet[] = { 0 };
3557
const unsigned XMM0_AliasSet[] = { X86::YMM0, 0 };
3558
const unsigned XMM1_AliasSet[] = { X86::YMM1, 0 };
3559
const unsigned XMM10_AliasSet[] = { X86::YMM10, 0 };
3560
const unsigned XMM11_AliasSet[] = { X86::YMM11, 0 };
3561
const unsigned XMM12_AliasSet[] = { X86::YMM12, 0 };
3562
const unsigned XMM13_AliasSet[] = { X86::YMM13, 0 };
3563
const unsigned XMM14_AliasSet[] = { X86::YMM14, 0 };
3564
const unsigned XMM15_AliasSet[] = { X86::YMM15, 0 };
3565
const unsigned XMM2_AliasSet[] = { X86::YMM2, 0 };
3566
const unsigned XMM3_AliasSet[] = { X86::YMM3, 0 };
3567
const unsigned XMM4_AliasSet[] = { X86::YMM4, 0 };
3568
const unsigned XMM5_AliasSet[] = { X86::YMM5, 0 };
3569
const unsigned XMM6_AliasSet[] = { X86::YMM6, 0 };
3570
const unsigned XMM7_AliasSet[] = { X86::YMM7, 0 };
3571
const unsigned XMM8_AliasSet[] = { X86::YMM8, 0 };
3572
const unsigned XMM9_AliasSet[] = { X86::YMM9, 0 };
3573
const unsigned YMM0_AliasSet[] = { X86::XMM0, 0 };
3574
const unsigned YMM1_AliasSet[] = { X86::XMM1, 0 };
3575
const unsigned YMM10_AliasSet[] = { X86::XMM10, 0 };
3576
const unsigned YMM11_AliasSet[] = { X86::XMM11, 0 };
3577
const unsigned YMM12_AliasSet[] = { X86::XMM12, 0 };
3578
const unsigned YMM13_AliasSet[] = { X86::XMM13, 0 };
3579
const unsigned YMM14_AliasSet[] = { X86::XMM14, 0 };
3580
const unsigned YMM15_AliasSet[] = { X86::XMM15, 0 };
3581
const unsigned YMM2_AliasSet[] = { X86::XMM2, 0 };
3582
const unsigned YMM3_AliasSet[] = { X86::XMM3, 0 };
3583
const unsigned YMM4_AliasSet[] = { X86::XMM4, 0 };
3584
const unsigned YMM5_AliasSet[] = { X86::XMM5, 0 };
3585
const unsigned YMM6_AliasSet[] = { X86::XMM6, 0 };
3586
const unsigned YMM7_AliasSet[] = { X86::XMM7, 0 };
3587
const unsigned YMM8_AliasSet[] = { X86::XMM8, 0 };
3588
const unsigned YMM9_AliasSet[] = { X86::XMM9, 0 };
3591
// Register Sub-registers Sets...
3592
const unsigned Empty_SubRegsSet[] = { 0 };
3593
const unsigned AH_SubRegsSet[] = { 0 };
3594
const unsigned AL_SubRegsSet[] = { 0 };
3595
const unsigned AX_SubRegsSet[] = { X86::AL, X86::AH, 0 };
3596
const unsigned BH_SubRegsSet[] = { 0 };
3597
const unsigned BL_SubRegsSet[] = { 0 };
3598
const unsigned BP_SubRegsSet[] = { X86::BPL, 0 };
3599
const unsigned BPL_SubRegsSet[] = { 0 };
3600
const unsigned BX_SubRegsSet[] = { X86::BL, X86::BH, 0 };
3601
const unsigned CH_SubRegsSet[] = { 0 };
3602
const unsigned CL_SubRegsSet[] = { 0 };
3603
const unsigned CS_SubRegsSet[] = { 0 };
3604
const unsigned CX_SubRegsSet[] = { X86::CL, X86::CH, 0 };
3605
const unsigned DH_SubRegsSet[] = { 0 };
3606
const unsigned DI_SubRegsSet[] = { X86::DIL, 0 };
3607
const unsigned DIL_SubRegsSet[] = { 0 };
3608
const unsigned DL_SubRegsSet[] = { 0 };
3609
const unsigned DR0_SubRegsSet[] = { 0 };
3610
const unsigned DR1_SubRegsSet[] = { 0 };
3611
const unsigned DR2_SubRegsSet[] = { 0 };
3612
const unsigned DR3_SubRegsSet[] = { 0 };
3613
const unsigned DR4_SubRegsSet[] = { 0 };
3614
const unsigned DR5_SubRegsSet[] = { 0 };
3615
const unsigned DR6_SubRegsSet[] = { 0 };
3616
const unsigned DR7_SubRegsSet[] = { 0 };
3617
const unsigned DS_SubRegsSet[] = { 0 };
3618
const unsigned DX_SubRegsSet[] = { X86::DL, X86::DH, 0 };
3619
const unsigned EAX_SubRegsSet[] = { X86::AX, X86::AL, X86::AH, 0 };
3620
const unsigned EBP_SubRegsSet[] = { X86::BP, X86::BPL, 0 };
3621
const unsigned EBX_SubRegsSet[] = { X86::BX, X86::BL, X86::BH, 0 };
3622
const unsigned ECR0_SubRegsSet[] = { 0 };
3623
const unsigned ECR1_SubRegsSet[] = { 0 };
3624
const unsigned ECR2_SubRegsSet[] = { 0 };
3625
const unsigned ECR3_SubRegsSet[] = { 0 };
3626
const unsigned ECR4_SubRegsSet[] = { 0 };
3627
const unsigned ECR5_SubRegsSet[] = { 0 };
3628
const unsigned ECR6_SubRegsSet[] = { 0 };
3629
const unsigned ECR7_SubRegsSet[] = { 0 };
3630
const unsigned ECX_SubRegsSet[] = { X86::CX, X86::CL, X86::CH, 0 };
3631
const unsigned EDI_SubRegsSet[] = { X86::DI, X86::DIL, 0 };
3632
const unsigned EDX_SubRegsSet[] = { X86::DX, X86::DL, X86::DH, 0 };
3633
const unsigned EFLAGS_SubRegsSet[] = { 0 };
3634
const unsigned EIP_SubRegsSet[] = { X86::IP, 0 };
3635
const unsigned ES_SubRegsSet[] = { 0 };
3636
const unsigned ESI_SubRegsSet[] = { X86::SI, X86::SIL, 0 };
3637
const unsigned ESP_SubRegsSet[] = { X86::SP, X86::SPL, 0 };
3638
const unsigned FP0_SubRegsSet[] = { 0 };
3639
const unsigned FP1_SubRegsSet[] = { 0 };
3640
const unsigned FP2_SubRegsSet[] = { 0 };
3641
const unsigned FP3_SubRegsSet[] = { 0 };
3642
const unsigned FP4_SubRegsSet[] = { 0 };
3643
const unsigned FP5_SubRegsSet[] = { 0 };
3644
const unsigned FP6_SubRegsSet[] = { 0 };
3645
const unsigned FS_SubRegsSet[] = { 0 };
3646
const unsigned GS_SubRegsSet[] = { 0 };
3647
const unsigned IP_SubRegsSet[] = { 0 };
3648
const unsigned MM0_SubRegsSet[] = { 0 };
3649
const unsigned MM1_SubRegsSet[] = { 0 };
3650
const unsigned MM2_SubRegsSet[] = { 0 };
3651
const unsigned MM3_SubRegsSet[] = { 0 };
3652
const unsigned MM4_SubRegsSet[] = { 0 };
3653
const unsigned MM5_SubRegsSet[] = { 0 };
3654
const unsigned MM6_SubRegsSet[] = { 0 };
3655
const unsigned MM7_SubRegsSet[] = { 0 };
3656
const unsigned R10_SubRegsSet[] = { X86::R10D, X86::R10W, X86::R10B, 0 };
3657
const unsigned R10B_SubRegsSet[] = { 0 };
3658
const unsigned R10D_SubRegsSet[] = { X86::R10W, X86::R10B, 0 };
3659
const unsigned R10W_SubRegsSet[] = { X86::R10B, 0 };
3660
const unsigned R11_SubRegsSet[] = { X86::R11D, X86::R11W, X86::R11B, 0 };
3661
const unsigned R11B_SubRegsSet[] = { 0 };
3662
const unsigned R11D_SubRegsSet[] = { X86::R11W, X86::R11B, 0 };
3663
const unsigned R11W_SubRegsSet[] = { X86::R11B, 0 };
3664
const unsigned R12_SubRegsSet[] = { X86::R12D, X86::R12W, X86::R12B, 0 };
3665
const unsigned R12B_SubRegsSet[] = { 0 };
3666
const unsigned R12D_SubRegsSet[] = { X86::R12W, X86::R12B, 0 };
3667
const unsigned R12W_SubRegsSet[] = { X86::R12B, 0 };
3668
const unsigned R13_SubRegsSet[] = { X86::R13D, X86::R13W, X86::R13B, 0 };
3669
const unsigned R13B_SubRegsSet[] = { 0 };
3670
const unsigned R13D_SubRegsSet[] = { X86::R13W, X86::R13B, 0 };
3671
const unsigned R13W_SubRegsSet[] = { X86::R13B, 0 };
3672
const unsigned R14_SubRegsSet[] = { X86::R14D, X86::R14W, X86::R14B, 0 };
3673
const unsigned R14B_SubRegsSet[] = { 0 };
3674
const unsigned R14D_SubRegsSet[] = { X86::R14W, X86::R14B, 0 };
3675
const unsigned R14W_SubRegsSet[] = { X86::R14B, 0 };
3676
const unsigned R15_SubRegsSet[] = { X86::R15D, X86::R15W, X86::R15B, 0 };
3677
const unsigned R15B_SubRegsSet[] = { 0 };
3678
const unsigned R15D_SubRegsSet[] = { X86::R15W, X86::R15B, 0 };
3679
const unsigned R15W_SubRegsSet[] = { X86::R15B, 0 };
3680
const unsigned R8_SubRegsSet[] = { X86::R8D, X86::R8W, X86::R8B, 0 };
3681
const unsigned R8B_SubRegsSet[] = { 0 };
3682
const unsigned R8D_SubRegsSet[] = { X86::R8W, X86::R8B, 0 };
3683
const unsigned R8W_SubRegsSet[] = { X86::R8B, 0 };
3684
const unsigned R9_SubRegsSet[] = { X86::R9D, X86::R9W, X86::R9B, 0 };
3685
const unsigned R9B_SubRegsSet[] = { 0 };
3686
const unsigned R9D_SubRegsSet[] = { X86::R9W, X86::R9B, 0 };
3687
const unsigned R9W_SubRegsSet[] = { X86::R9B, 0 };
3688
const unsigned RAX_SubRegsSet[] = { X86::EAX, X86::AX, X86::AL, X86::AH, 0 };
3689
const unsigned RBP_SubRegsSet[] = { X86::EBP, X86::BP, X86::BPL, 0 };
3690
const unsigned RBX_SubRegsSet[] = { X86::EBX, X86::BX, X86::BL, X86::BH, 0 };
3691
const unsigned RCR0_SubRegsSet[] = { 0 };
3692
const unsigned RCR1_SubRegsSet[] = { 0 };
3693
const unsigned RCR2_SubRegsSet[] = { 0 };
3694
const unsigned RCR3_SubRegsSet[] = { 0 };
3695
const unsigned RCR4_SubRegsSet[] = { 0 };
3696
const unsigned RCR5_SubRegsSet[] = { 0 };
3697
const unsigned RCR6_SubRegsSet[] = { 0 };
3698
const unsigned RCR7_SubRegsSet[] = { 0 };
3699
const unsigned RCR8_SubRegsSet[] = { 0 };
3700
const unsigned RCX_SubRegsSet[] = { X86::ECX, X86::CX, X86::CL, X86::CH, 0 };
3701
const unsigned RDI_SubRegsSet[] = { X86::EDI, X86::DI, X86::DIL, 0 };
3702
const unsigned RDX_SubRegsSet[] = { X86::EDX, X86::DX, X86::DL, X86::DH, 0 };
3703
const unsigned RIP_SubRegsSet[] = { X86::EIP, X86::IP, 0 };
3704
const unsigned RSI_SubRegsSet[] = { X86::ESI, X86::SI, X86::SIL, 0 };
3705
const unsigned RSP_SubRegsSet[] = { X86::ESP, X86::SP, X86::SPL, 0 };
3706
const unsigned SI_SubRegsSet[] = { X86::SIL, 0 };
3707
const unsigned SIL_SubRegsSet[] = { 0 };
3708
const unsigned SP_SubRegsSet[] = { X86::SPL, 0 };
3709
const unsigned SPL_SubRegsSet[] = { 0 };
3710
const unsigned SS_SubRegsSet[] = { 0 };
3711
const unsigned ST0_SubRegsSet[] = { 0 };
3712
const unsigned ST1_SubRegsSet[] = { 0 };
3713
const unsigned ST2_SubRegsSet[] = { 0 };
3714
const unsigned ST3_SubRegsSet[] = { 0 };
3715
const unsigned ST4_SubRegsSet[] = { 0 };
3716
const unsigned ST5_SubRegsSet[] = { 0 };
3717
const unsigned ST6_SubRegsSet[] = { 0 };
3718
const unsigned ST7_SubRegsSet[] = { 0 };
3719
const unsigned XMM0_SubRegsSet[] = { 0 };
3720
const unsigned XMM1_SubRegsSet[] = { 0 };
3721
const unsigned XMM10_SubRegsSet[] = { 0 };
3722
const unsigned XMM11_SubRegsSet[] = { 0 };
3723
const unsigned XMM12_SubRegsSet[] = { 0 };
3724
const unsigned XMM13_SubRegsSet[] = { 0 };
3725
const unsigned XMM14_SubRegsSet[] = { 0 };
3726
const unsigned XMM15_SubRegsSet[] = { 0 };
3727
const unsigned XMM2_SubRegsSet[] = { 0 };
3728
const unsigned XMM3_SubRegsSet[] = { 0 };
3729
const unsigned XMM4_SubRegsSet[] = { 0 };
3730
const unsigned XMM5_SubRegsSet[] = { 0 };
3731
const unsigned XMM6_SubRegsSet[] = { 0 };
3732
const unsigned XMM7_SubRegsSet[] = { 0 };
3733
const unsigned XMM8_SubRegsSet[] = { 0 };
3734
const unsigned XMM9_SubRegsSet[] = { 0 };
3735
const unsigned YMM0_SubRegsSet[] = { X86::XMM0, 0 };
3736
const unsigned YMM1_SubRegsSet[] = { X86::XMM1, 0 };
3737
const unsigned YMM10_SubRegsSet[] = { X86::XMM10, 0 };
3738
const unsigned YMM11_SubRegsSet[] = { X86::XMM11, 0 };
3739
const unsigned YMM12_SubRegsSet[] = { X86::XMM12, 0 };
3740
const unsigned YMM13_SubRegsSet[] = { X86::XMM13, 0 };
3741
const unsigned YMM14_SubRegsSet[] = { X86::XMM14, 0 };
3742
const unsigned YMM15_SubRegsSet[] = { X86::XMM15, 0 };
3743
const unsigned YMM2_SubRegsSet[] = { X86::XMM2, 0 };
3744
const unsigned YMM3_SubRegsSet[] = { X86::XMM3, 0 };
3745
const unsigned YMM4_SubRegsSet[] = { X86::XMM4, 0 };
3746
const unsigned YMM5_SubRegsSet[] = { X86::XMM5, 0 };
3747
const unsigned YMM6_SubRegsSet[] = { X86::XMM6, 0 };
3748
const unsigned YMM7_SubRegsSet[] = { X86::XMM7, 0 };
3749
const unsigned YMM8_SubRegsSet[] = { X86::XMM8, 0 };
3750
const unsigned YMM9_SubRegsSet[] = { X86::XMM9, 0 };
3753
// Register Super-registers Sets...
3754
const unsigned Empty_SuperRegsSet[] = { 0 };
3755
const unsigned AH_SuperRegsSet[] = { X86::RAX, X86::EAX, X86::AX, 0 };
3756
const unsigned AL_SuperRegsSet[] = { X86::RAX, X86::EAX, X86::AX, 0 };
3757
const unsigned AX_SuperRegsSet[] = { X86::RAX, X86::EAX, 0 };
3758
const unsigned BH_SuperRegsSet[] = { X86::RBX, X86::EBX, X86::BX, 0 };
3759
const unsigned BL_SuperRegsSet[] = { X86::RBX, X86::EBX, X86::BX, 0 };
3760
const unsigned BP_SuperRegsSet[] = { X86::RBP, X86::EBP, 0 };
3761
const unsigned BPL_SuperRegsSet[] = { X86::RBP, X86::EBP, X86::BP, 0 };
3762
const unsigned BX_SuperRegsSet[] = { X86::RBX, X86::EBX, 0 };
3763
const unsigned CH_SuperRegsSet[] = { X86::RCX, X86::ECX, X86::CX, 0 };
3764
const unsigned CL_SuperRegsSet[] = { X86::RCX, X86::ECX, X86::CX, 0 };
3765
const unsigned CS_SuperRegsSet[] = { 0 };
3766
const unsigned CX_SuperRegsSet[] = { X86::RCX, X86::ECX, 0 };
3767
const unsigned DH_SuperRegsSet[] = { X86::RDX, X86::EDX, X86::DX, 0 };
3768
const unsigned DI_SuperRegsSet[] = { X86::RDI, X86::EDI, 0 };
3769
const unsigned DIL_SuperRegsSet[] = { X86::RDI, X86::EDI, X86::DI, 0 };
3770
const unsigned DL_SuperRegsSet[] = { X86::RDX, X86::EDX, X86::DX, 0 };
3771
const unsigned DR0_SuperRegsSet[] = { 0 };
3772
const unsigned DR1_SuperRegsSet[] = { 0 };
3773
const unsigned DR2_SuperRegsSet[] = { 0 };
3774
const unsigned DR3_SuperRegsSet[] = { 0 };
3775
const unsigned DR4_SuperRegsSet[] = { 0 };
3776
const unsigned DR5_SuperRegsSet[] = { 0 };
3777
const unsigned DR6_SuperRegsSet[] = { 0 };
3778
const unsigned DR7_SuperRegsSet[] = { 0 };
3779
const unsigned DS_SuperRegsSet[] = { 0 };
3780
const unsigned DX_SuperRegsSet[] = { X86::RDX, X86::EDX, 0 };
3781
const unsigned EAX_SuperRegsSet[] = { X86::RAX, 0 };
3782
const unsigned EBP_SuperRegsSet[] = { X86::RBP, 0 };
3783
const unsigned EBX_SuperRegsSet[] = { X86::RBX, 0 };
3784
const unsigned ECR0_SuperRegsSet[] = { 0 };
3785
const unsigned ECR1_SuperRegsSet[] = { 0 };
3786
const unsigned ECR2_SuperRegsSet[] = { 0 };
3787
const unsigned ECR3_SuperRegsSet[] = { 0 };
3788
const unsigned ECR4_SuperRegsSet[] = { 0 };
3789
const unsigned ECR5_SuperRegsSet[] = { 0 };
3790
const unsigned ECR6_SuperRegsSet[] = { 0 };
3791
const unsigned ECR7_SuperRegsSet[] = { 0 };
3792
const unsigned ECX_SuperRegsSet[] = { X86::RCX, 0 };
3793
const unsigned EDI_SuperRegsSet[] = { X86::RDI, 0 };
3794
const unsigned EDX_SuperRegsSet[] = { X86::RDX, 0 };
3795
const unsigned EFLAGS_SuperRegsSet[] = { 0 };
3796
const unsigned EIP_SuperRegsSet[] = { X86::RIP, 0 };
3797
const unsigned ES_SuperRegsSet[] = { 0 };
3798
const unsigned ESI_SuperRegsSet[] = { X86::RSI, 0 };
3799
const unsigned ESP_SuperRegsSet[] = { X86::RSP, 0 };
3800
const unsigned FP0_SuperRegsSet[] = { 0 };
3801
const unsigned FP1_SuperRegsSet[] = { 0 };
3802
const unsigned FP2_SuperRegsSet[] = { 0 };
3803
const unsigned FP3_SuperRegsSet[] = { 0 };
3804
const unsigned FP4_SuperRegsSet[] = { 0 };
3805
const unsigned FP5_SuperRegsSet[] = { 0 };
3806
const unsigned FP6_SuperRegsSet[] = { 0 };
3807
const unsigned FS_SuperRegsSet[] = { 0 };
3808
const unsigned GS_SuperRegsSet[] = { 0 };
3809
const unsigned IP_SuperRegsSet[] = { X86::RIP, X86::EIP, 0 };
3810
const unsigned MM0_SuperRegsSet[] = { 0 };
3811
const unsigned MM1_SuperRegsSet[] = { 0 };
3812
const unsigned MM2_SuperRegsSet[] = { 0 };
3813
const unsigned MM3_SuperRegsSet[] = { 0 };
3814
const unsigned MM4_SuperRegsSet[] = { 0 };
3815
const unsigned MM5_SuperRegsSet[] = { 0 };
3816
const unsigned MM6_SuperRegsSet[] = { 0 };
3817
const unsigned MM7_SuperRegsSet[] = { 0 };
3818
const unsigned R10_SuperRegsSet[] = { 0 };
3819
const unsigned R10B_SuperRegsSet[] = { X86::R10, X86::R10D, X86::R10W, 0 };
3820
const unsigned R10D_SuperRegsSet[] = { X86::R10, 0 };
3821
const unsigned R10W_SuperRegsSet[] = { X86::R10, X86::R10D, 0 };
3822
const unsigned R11_SuperRegsSet[] = { 0 };
3823
const unsigned R11B_SuperRegsSet[] = { X86::R11, X86::R11D, X86::R11W, 0 };
3824
const unsigned R11D_SuperRegsSet[] = { X86::R11, 0 };
3825
const unsigned R11W_SuperRegsSet[] = { X86::R11, X86::R11D, 0 };
3826
const unsigned R12_SuperRegsSet[] = { 0 };
3827
const unsigned R12B_SuperRegsSet[] = { X86::R12, X86::R12D, X86::R12W, 0 };
3828
const unsigned R12D_SuperRegsSet[] = { X86::R12, 0 };
3829
const unsigned R12W_SuperRegsSet[] = { X86::R12, X86::R12D, 0 };
3830
const unsigned R13_SuperRegsSet[] = { 0 };
3831
const unsigned R13B_SuperRegsSet[] = { X86::R13, X86::R13D, X86::R13W, 0 };
3832
const unsigned R13D_SuperRegsSet[] = { X86::R13, 0 };
3833
const unsigned R13W_SuperRegsSet[] = { X86::R13, X86::R13D, 0 };
3834
const unsigned R14_SuperRegsSet[] = { 0 };
3835
const unsigned R14B_SuperRegsSet[] = { X86::R14, X86::R14D, X86::R14W, 0 };
3836
const unsigned R14D_SuperRegsSet[] = { X86::R14, 0 };
3837
const unsigned R14W_SuperRegsSet[] = { X86::R14, X86::R14D, 0 };
3838
const unsigned R15_SuperRegsSet[] = { 0 };
3839
const unsigned R15B_SuperRegsSet[] = { X86::R15, X86::R15D, X86::R15W, 0 };
3840
const unsigned R15D_SuperRegsSet[] = { X86::R15, 0 };
3841
const unsigned R15W_SuperRegsSet[] = { X86::R15, X86::R15D, 0 };
3842
const unsigned R8_SuperRegsSet[] = { 0 };
3843
const unsigned R8B_SuperRegsSet[] = { X86::R8, X86::R8D, X86::R8W, 0 };
3844
const unsigned R8D_SuperRegsSet[] = { X86::R8, 0 };
3845
const unsigned R8W_SuperRegsSet[] = { X86::R8, X86::R8D, 0 };
3846
const unsigned R9_SuperRegsSet[] = { 0 };
3847
const unsigned R9B_SuperRegsSet[] = { X86::R9, X86::R9D, X86::R9W, 0 };
3848
const unsigned R9D_SuperRegsSet[] = { X86::R9, 0 };
3849
const unsigned R9W_SuperRegsSet[] = { X86::R9, X86::R9D, 0 };
3850
const unsigned RAX_SuperRegsSet[] = { 0 };
3851
const unsigned RBP_SuperRegsSet[] = { 0 };
3852
const unsigned RBX_SuperRegsSet[] = { 0 };
3853
const unsigned RCR0_SuperRegsSet[] = { 0 };
3854
const unsigned RCR1_SuperRegsSet[] = { 0 };
3855
const unsigned RCR2_SuperRegsSet[] = { 0 };
3856
const unsigned RCR3_SuperRegsSet[] = { 0 };
3857
const unsigned RCR4_SuperRegsSet[] = { 0 };
3858
const unsigned RCR5_SuperRegsSet[] = { 0 };
3859
const unsigned RCR6_SuperRegsSet[] = { 0 };
3860
const unsigned RCR7_SuperRegsSet[] = { 0 };
3861
const unsigned RCR8_SuperRegsSet[] = { 0 };
3862
const unsigned RCX_SuperRegsSet[] = { 0 };
3863
const unsigned RDI_SuperRegsSet[] = { 0 };
3864
const unsigned RDX_SuperRegsSet[] = { 0 };
3865
const unsigned RIP_SuperRegsSet[] = { 0 };
3866
const unsigned RSI_SuperRegsSet[] = { 0 };
3867
const unsigned RSP_SuperRegsSet[] = { 0 };
3868
const unsigned SI_SuperRegsSet[] = { X86::RSI, X86::ESI, 0 };
3869
const unsigned SIL_SuperRegsSet[] = { X86::RSI, X86::ESI, X86::SI, 0 };
3870
const unsigned SP_SuperRegsSet[] = { X86::RSP, X86::ESP, 0 };
3871
const unsigned SPL_SuperRegsSet[] = { X86::RSP, X86::ESP, X86::SP, 0 };
3872
const unsigned SS_SuperRegsSet[] = { 0 };
3873
const unsigned ST0_SuperRegsSet[] = { 0 };
3874
const unsigned ST1_SuperRegsSet[] = { 0 };
3875
const unsigned ST2_SuperRegsSet[] = { 0 };
3876
const unsigned ST3_SuperRegsSet[] = { 0 };
3877
const unsigned ST4_SuperRegsSet[] = { 0 };
3878
const unsigned ST5_SuperRegsSet[] = { 0 };
3879
const unsigned ST6_SuperRegsSet[] = { 0 };
3880
const unsigned ST7_SuperRegsSet[] = { 0 };
3881
const unsigned XMM0_SuperRegsSet[] = { X86::YMM0, 0 };
3882
const unsigned XMM1_SuperRegsSet[] = { X86::YMM1, 0 };
3883
const unsigned XMM10_SuperRegsSet[] = { X86::YMM10, 0 };
3884
const unsigned XMM11_SuperRegsSet[] = { X86::YMM11, 0 };
3885
const unsigned XMM12_SuperRegsSet[] = { X86::YMM12, 0 };
3886
const unsigned XMM13_SuperRegsSet[] = { X86::YMM13, 0 };
3887
const unsigned XMM14_SuperRegsSet[] = { X86::YMM14, 0 };
3888
const unsigned XMM15_SuperRegsSet[] = { X86::YMM15, 0 };
3889
const unsigned XMM2_SuperRegsSet[] = { X86::YMM2, 0 };
3890
const unsigned XMM3_SuperRegsSet[] = { X86::YMM3, 0 };
3891
const unsigned XMM4_SuperRegsSet[] = { X86::YMM4, 0 };
3892
const unsigned XMM5_SuperRegsSet[] = { X86::YMM5, 0 };
3893
const unsigned XMM6_SuperRegsSet[] = { X86::YMM6, 0 };
3894
const unsigned XMM7_SuperRegsSet[] = { X86::YMM7, 0 };
3895
const unsigned XMM8_SuperRegsSet[] = { X86::YMM8, 0 };
3896
const unsigned XMM9_SuperRegsSet[] = { X86::YMM9, 0 };
3897
const unsigned YMM0_SuperRegsSet[] = { 0 };
3898
const unsigned YMM1_SuperRegsSet[] = { 0 };
3899
const unsigned YMM10_SuperRegsSet[] = { 0 };
3900
const unsigned YMM11_SuperRegsSet[] = { 0 };
3901
const unsigned YMM12_SuperRegsSet[] = { 0 };
3902
const unsigned YMM13_SuperRegsSet[] = { 0 };
3903
const unsigned YMM14_SuperRegsSet[] = { 0 };
3904
const unsigned YMM15_SuperRegsSet[] = { 0 };
3905
const unsigned YMM2_SuperRegsSet[] = { 0 };
3906
const unsigned YMM3_SuperRegsSet[] = { 0 };
3907
const unsigned YMM4_SuperRegsSet[] = { 0 };
3908
const unsigned YMM5_SuperRegsSet[] = { 0 };
3909
const unsigned YMM6_SuperRegsSet[] = { 0 };
3910
const unsigned YMM7_SuperRegsSet[] = { 0 };
3911
const unsigned YMM8_SuperRegsSet[] = { 0 };
3912
const unsigned YMM9_SuperRegsSet[] = { 0 };
3914
const TargetRegisterDesc RegisterDescriptors[] = { // Descriptors
3915
{ "NOREG", 0, 0, 0 },
3916
{ "AH", AH_AliasSet, AH_SubRegsSet, AH_SuperRegsSet },
3917
{ "AL", AL_AliasSet, AL_SubRegsSet, AL_SuperRegsSet },
3918
{ "AX", AX_AliasSet, AX_SubRegsSet, AX_SuperRegsSet },
3919
{ "BH", BH_AliasSet, BH_SubRegsSet, BH_SuperRegsSet },
3920
{ "BL", BL_AliasSet, BL_SubRegsSet, BL_SuperRegsSet },
3921
{ "BP", BP_AliasSet, BP_SubRegsSet, BP_SuperRegsSet },
3922
{ "BPL", BPL_AliasSet, BPL_SubRegsSet, BPL_SuperRegsSet },
3923
{ "BX", BX_AliasSet, BX_SubRegsSet, BX_SuperRegsSet },
3924
{ "CH", CH_AliasSet, CH_SubRegsSet, CH_SuperRegsSet },
3925
{ "CL", CL_AliasSet, CL_SubRegsSet, CL_SuperRegsSet },
3926
{ "CS", CS_AliasSet, CS_SubRegsSet, CS_SuperRegsSet },
3927
{ "CX", CX_AliasSet, CX_SubRegsSet, CX_SuperRegsSet },
3928
{ "DH", DH_AliasSet, DH_SubRegsSet, DH_SuperRegsSet },
3929
{ "DI", DI_AliasSet, DI_SubRegsSet, DI_SuperRegsSet },
3930
{ "DIL", DIL_AliasSet, DIL_SubRegsSet, DIL_SuperRegsSet },
3931
{ "DL", DL_AliasSet, DL_SubRegsSet, DL_SuperRegsSet },
3932
{ "DR0", DR0_AliasSet, DR0_SubRegsSet, DR0_SuperRegsSet },
3933
{ "DR1", DR1_AliasSet, DR1_SubRegsSet, DR1_SuperRegsSet },
3934
{ "DR2", DR2_AliasSet, DR2_SubRegsSet, DR2_SuperRegsSet },
3935
{ "DR3", DR3_AliasSet, DR3_SubRegsSet, DR3_SuperRegsSet },
3936
{ "DR4", DR4_AliasSet, DR4_SubRegsSet, DR4_SuperRegsSet },
3937
{ "DR5", DR5_AliasSet, DR5_SubRegsSet, DR5_SuperRegsSet },
3938
{ "DR6", DR6_AliasSet, DR6_SubRegsSet, DR6_SuperRegsSet },
3939
{ "DR7", DR7_AliasSet, DR7_SubRegsSet, DR7_SuperRegsSet },
3940
{ "DS", DS_AliasSet, DS_SubRegsSet, DS_SuperRegsSet },
3941
{ "DX", DX_AliasSet, DX_SubRegsSet, DX_SuperRegsSet },
3942
{ "EAX", EAX_AliasSet, EAX_SubRegsSet, EAX_SuperRegsSet },
3943
{ "EBP", EBP_AliasSet, EBP_SubRegsSet, EBP_SuperRegsSet },
3944
{ "EBX", EBX_AliasSet, EBX_SubRegsSet, EBX_SuperRegsSet },
3945
{ "ECR0", ECR0_AliasSet, ECR0_SubRegsSet, ECR0_SuperRegsSet },
3946
{ "ECR1", ECR1_AliasSet, ECR1_SubRegsSet, ECR1_SuperRegsSet },
3947
{ "ECR2", ECR2_AliasSet, ECR2_SubRegsSet, ECR2_SuperRegsSet },
3948
{ "ECR3", ECR3_AliasSet, ECR3_SubRegsSet, ECR3_SuperRegsSet },
3949
{ "ECR4", ECR4_AliasSet, ECR4_SubRegsSet, ECR4_SuperRegsSet },
3950
{ "ECR5", ECR5_AliasSet, ECR5_SubRegsSet, ECR5_SuperRegsSet },
3951
{ "ECR6", ECR6_AliasSet, ECR6_SubRegsSet, ECR6_SuperRegsSet },
3952
{ "ECR7", ECR7_AliasSet, ECR7_SubRegsSet, ECR7_SuperRegsSet },
3953
{ "ECX", ECX_AliasSet, ECX_SubRegsSet, ECX_SuperRegsSet },
3954
{ "EDI", EDI_AliasSet, EDI_SubRegsSet, EDI_SuperRegsSet },
3955
{ "EDX", EDX_AliasSet, EDX_SubRegsSet, EDX_SuperRegsSet },
3956
{ "EFLAGS", EFLAGS_AliasSet, EFLAGS_SubRegsSet, EFLAGS_SuperRegsSet },
3957
{ "EIP", EIP_AliasSet, EIP_SubRegsSet, EIP_SuperRegsSet },
3958
{ "ES", ES_AliasSet, ES_SubRegsSet, ES_SuperRegsSet },
3959
{ "ESI", ESI_AliasSet, ESI_SubRegsSet, ESI_SuperRegsSet },
3960
{ "ESP", ESP_AliasSet, ESP_SubRegsSet, ESP_SuperRegsSet },
3961
{ "FP0", FP0_AliasSet, FP0_SubRegsSet, FP0_SuperRegsSet },
3962
{ "FP1", FP1_AliasSet, FP1_SubRegsSet, FP1_SuperRegsSet },
3963
{ "FP2", FP2_AliasSet, FP2_SubRegsSet, FP2_SuperRegsSet },
3964
{ "FP3", FP3_AliasSet, FP3_SubRegsSet, FP3_SuperRegsSet },
3965
{ "FP4", FP4_AliasSet, FP4_SubRegsSet, FP4_SuperRegsSet },
3966
{ "FP5", FP5_AliasSet, FP5_SubRegsSet, FP5_SuperRegsSet },
3967
{ "FP6", FP6_AliasSet, FP6_SubRegsSet, FP6_SuperRegsSet },
3968
{ "FS", FS_AliasSet, FS_SubRegsSet, FS_SuperRegsSet },
3969
{ "GS", GS_AliasSet, GS_SubRegsSet, GS_SuperRegsSet },
3970
{ "IP", IP_AliasSet, IP_SubRegsSet, IP_SuperRegsSet },
3971
{ "MM0", MM0_AliasSet, MM0_SubRegsSet, MM0_SuperRegsSet },
3972
{ "MM1", MM1_AliasSet, MM1_SubRegsSet, MM1_SuperRegsSet },
3973
{ "MM2", MM2_AliasSet, MM2_SubRegsSet, MM2_SuperRegsSet },
3974
{ "MM3", MM3_AliasSet, MM3_SubRegsSet, MM3_SuperRegsSet },
3975
{ "MM4", MM4_AliasSet, MM4_SubRegsSet, MM4_SuperRegsSet },
3976
{ "MM5", MM5_AliasSet, MM5_SubRegsSet, MM5_SuperRegsSet },
3977
{ "MM6", MM6_AliasSet, MM6_SubRegsSet, MM6_SuperRegsSet },
3978
{ "MM7", MM7_AliasSet, MM7_SubRegsSet, MM7_SuperRegsSet },
3979
{ "R10", R10_AliasSet, R10_SubRegsSet, R10_SuperRegsSet },
3980
{ "R10B", R10B_AliasSet, R10B_SubRegsSet, R10B_SuperRegsSet },
3981
{ "R10D", R10D_AliasSet, R10D_SubRegsSet, R10D_SuperRegsSet },
3982
{ "R10W", R10W_AliasSet, R10W_SubRegsSet, R10W_SuperRegsSet },
3983
{ "R11", R11_AliasSet, R11_SubRegsSet, R11_SuperRegsSet },
3984
{ "R11B", R11B_AliasSet, R11B_SubRegsSet, R11B_SuperRegsSet },
3985
{ "R11D", R11D_AliasSet, R11D_SubRegsSet, R11D_SuperRegsSet },
3986
{ "R11W", R11W_AliasSet, R11W_SubRegsSet, R11W_SuperRegsSet },
3987
{ "R12", R12_AliasSet, R12_SubRegsSet, R12_SuperRegsSet },
3988
{ "R12B", R12B_AliasSet, R12B_SubRegsSet, R12B_SuperRegsSet },
3989
{ "R12D", R12D_AliasSet, R12D_SubRegsSet, R12D_SuperRegsSet },
3990
{ "R12W", R12W_AliasSet, R12W_SubRegsSet, R12W_SuperRegsSet },
3991
{ "R13", R13_AliasSet, R13_SubRegsSet, R13_SuperRegsSet },
3992
{ "R13B", R13B_AliasSet, R13B_SubRegsSet, R13B_SuperRegsSet },
3993
{ "R13D", R13D_AliasSet, R13D_SubRegsSet, R13D_SuperRegsSet },
3994
{ "R13W", R13W_AliasSet, R13W_SubRegsSet, R13W_SuperRegsSet },
3995
{ "R14", R14_AliasSet, R14_SubRegsSet, R14_SuperRegsSet },
3996
{ "R14B", R14B_AliasSet, R14B_SubRegsSet, R14B_SuperRegsSet },
3997
{ "R14D", R14D_AliasSet, R14D_SubRegsSet, R14D_SuperRegsSet },
3998
{ "R14W", R14W_AliasSet, R14W_SubRegsSet, R14W_SuperRegsSet },
3999
{ "R15", R15_AliasSet, R15_SubRegsSet, R15_SuperRegsSet },
4000
{ "R15B", R15B_AliasSet, R15B_SubRegsSet, R15B_SuperRegsSet },
4001
{ "R15D", R15D_AliasSet, R15D_SubRegsSet, R15D_SuperRegsSet },
4002
{ "R15W", R15W_AliasSet, R15W_SubRegsSet, R15W_SuperRegsSet },
4003
{ "R8", R8_AliasSet, R8_SubRegsSet, R8_SuperRegsSet },
4004
{ "R8B", R8B_AliasSet, R8B_SubRegsSet, R8B_SuperRegsSet },
4005
{ "R8D", R8D_AliasSet, R8D_SubRegsSet, R8D_SuperRegsSet },
4006
{ "R8W", R8W_AliasSet, R8W_SubRegsSet, R8W_SuperRegsSet },
4007
{ "R9", R9_AliasSet, R9_SubRegsSet, R9_SuperRegsSet },
4008
{ "R9B", R9B_AliasSet, R9B_SubRegsSet, R9B_SuperRegsSet },
4009
{ "R9D", R9D_AliasSet, R9D_SubRegsSet, R9D_SuperRegsSet },
4010
{ "R9W", R9W_AliasSet, R9W_SubRegsSet, R9W_SuperRegsSet },
4011
{ "RAX", RAX_AliasSet, RAX_SubRegsSet, RAX_SuperRegsSet },
4012
{ "RBP", RBP_AliasSet, RBP_SubRegsSet, RBP_SuperRegsSet },
4013
{ "RBX", RBX_AliasSet, RBX_SubRegsSet, RBX_SuperRegsSet },
4014
{ "RCR0", RCR0_AliasSet, RCR0_SubRegsSet, RCR0_SuperRegsSet },
4015
{ "RCR1", RCR1_AliasSet, RCR1_SubRegsSet, RCR1_SuperRegsSet },
4016
{ "RCR2", RCR2_AliasSet, RCR2_SubRegsSet, RCR2_SuperRegsSet },
4017
{ "RCR3", RCR3_AliasSet, RCR3_SubRegsSet, RCR3_SuperRegsSet },
4018
{ "RCR4", RCR4_AliasSet, RCR4_SubRegsSet, RCR4_SuperRegsSet },
4019
{ "RCR5", RCR5_AliasSet, RCR5_SubRegsSet, RCR5_SuperRegsSet },
4020
{ "RCR6", RCR6_AliasSet, RCR6_SubRegsSet, RCR6_SuperRegsSet },
4021
{ "RCR7", RCR7_AliasSet, RCR7_SubRegsSet, RCR7_SuperRegsSet },
4022
{ "RCR8", RCR8_AliasSet, RCR8_SubRegsSet, RCR8_SuperRegsSet },
4023
{ "RCX", RCX_AliasSet, RCX_SubRegsSet, RCX_SuperRegsSet },
4024
{ "RDI", RDI_AliasSet, RDI_SubRegsSet, RDI_SuperRegsSet },
4025
{ "RDX", RDX_AliasSet, RDX_SubRegsSet, RDX_SuperRegsSet },
4026
{ "RIP", RIP_AliasSet, RIP_SubRegsSet, RIP_SuperRegsSet },
4027
{ "RSI", RSI_AliasSet, RSI_SubRegsSet, RSI_SuperRegsSet },
4028
{ "RSP", RSP_AliasSet, RSP_SubRegsSet, RSP_SuperRegsSet },
4029
{ "SI", SI_AliasSet, SI_SubRegsSet, SI_SuperRegsSet },
4030
{ "SIL", SIL_AliasSet, SIL_SubRegsSet, SIL_SuperRegsSet },
4031
{ "SP", SP_AliasSet, SP_SubRegsSet, SP_SuperRegsSet },
4032
{ "SPL", SPL_AliasSet, SPL_SubRegsSet, SPL_SuperRegsSet },
4033
{ "SS", SS_AliasSet, SS_SubRegsSet, SS_SuperRegsSet },
4034
{ "ST0", ST0_AliasSet, ST0_SubRegsSet, ST0_SuperRegsSet },
4035
{ "ST1", ST1_AliasSet, ST1_SubRegsSet, ST1_SuperRegsSet },
4036
{ "ST2", ST2_AliasSet, ST2_SubRegsSet, ST2_SuperRegsSet },
4037
{ "ST3", ST3_AliasSet, ST3_SubRegsSet, ST3_SuperRegsSet },
4038
{ "ST4", ST4_AliasSet, ST4_SubRegsSet, ST4_SuperRegsSet },
4039
{ "ST5", ST5_AliasSet, ST5_SubRegsSet, ST5_SuperRegsSet },
4040
{ "ST6", ST6_AliasSet, ST6_SubRegsSet, ST6_SuperRegsSet },
4041
{ "ST7", ST7_AliasSet, ST7_SubRegsSet, ST7_SuperRegsSet },
4042
{ "XMM0", XMM0_AliasSet, XMM0_SubRegsSet, XMM0_SuperRegsSet },
4043
{ "XMM1", XMM1_AliasSet, XMM1_SubRegsSet, XMM1_SuperRegsSet },
4044
{ "XMM10", XMM10_AliasSet, XMM10_SubRegsSet, XMM10_SuperRegsSet },
4045
{ "XMM11", XMM11_AliasSet, XMM11_SubRegsSet, XMM11_SuperRegsSet },
4046
{ "XMM12", XMM12_AliasSet, XMM12_SubRegsSet, XMM12_SuperRegsSet },
4047
{ "XMM13", XMM13_AliasSet, XMM13_SubRegsSet, XMM13_SuperRegsSet },
4048
{ "XMM14", XMM14_AliasSet, XMM14_SubRegsSet, XMM14_SuperRegsSet },
4049
{ "XMM15", XMM15_AliasSet, XMM15_SubRegsSet, XMM15_SuperRegsSet },
4050
{ "XMM2", XMM2_AliasSet, XMM2_SubRegsSet, XMM2_SuperRegsSet },
4051
{ "XMM3", XMM3_AliasSet, XMM3_SubRegsSet, XMM3_SuperRegsSet },
4052
{ "XMM4", XMM4_AliasSet, XMM4_SubRegsSet, XMM4_SuperRegsSet },
4053
{ "XMM5", XMM5_AliasSet, XMM5_SubRegsSet, XMM5_SuperRegsSet },
4054
{ "XMM6", XMM6_AliasSet, XMM6_SubRegsSet, XMM6_SuperRegsSet },
4055
{ "XMM7", XMM7_AliasSet, XMM7_SubRegsSet, XMM7_SuperRegsSet },
4056
{ "XMM8", XMM8_AliasSet, XMM8_SubRegsSet, XMM8_SuperRegsSet },
4057
{ "XMM9", XMM9_AliasSet, XMM9_SubRegsSet, XMM9_SuperRegsSet },
4058
{ "YMM0", YMM0_AliasSet, YMM0_SubRegsSet, YMM0_SuperRegsSet },
4059
{ "YMM1", YMM1_AliasSet, YMM1_SubRegsSet, YMM1_SuperRegsSet },
4060
{ "YMM10", YMM10_AliasSet, YMM10_SubRegsSet, YMM10_SuperRegsSet },
4061
{ "YMM11", YMM11_AliasSet, YMM11_SubRegsSet, YMM11_SuperRegsSet },
4062
{ "YMM12", YMM12_AliasSet, YMM12_SubRegsSet, YMM12_SuperRegsSet },
4063
{ "YMM13", YMM13_AliasSet, YMM13_SubRegsSet, YMM13_SuperRegsSet },
4064
{ "YMM14", YMM14_AliasSet, YMM14_SubRegsSet, YMM14_SuperRegsSet },
4065
{ "YMM15", YMM15_AliasSet, YMM15_SubRegsSet, YMM15_SuperRegsSet },
4066
{ "YMM2", YMM2_AliasSet, YMM2_SubRegsSet, YMM2_SuperRegsSet },
4067
{ "YMM3", YMM3_AliasSet, YMM3_SubRegsSet, YMM3_SuperRegsSet },
4068
{ "YMM4", YMM4_AliasSet, YMM4_SubRegsSet, YMM4_SuperRegsSet },
4069
{ "YMM5", YMM5_AliasSet, YMM5_SubRegsSet, YMM5_SuperRegsSet },
4070
{ "YMM6", YMM6_AliasSet, YMM6_SubRegsSet, YMM6_SuperRegsSet },
4071
{ "YMM7", YMM7_AliasSet, YMM7_SubRegsSet, YMM7_SuperRegsSet },
4072
{ "YMM8", YMM8_AliasSet, YMM8_SubRegsSet, YMM8_SuperRegsSet },
4073
{ "YMM9", YMM9_AliasSet, YMM9_SubRegsSet, YMM9_SuperRegsSet },
4077
unsigned X86GenRegisterInfo::getSubReg(unsigned RegNo, unsigned Index) const {
4084
case 1: return X86::AL;
4085
case 2: return X86::AH;
4091
case 1: return X86::DL;
4092
case 2: return X86::DH;
4098
case 1: return X86::CL;
4099
case 2: return X86::CH;
4105
case 1: return X86::BL;
4106
case 2: return X86::BH;
4112
case 1: return X86::SIL;
4118
case 1: return X86::DIL;
4124
case 1: return X86::BPL;
4130
case 1: return X86::SPL;
4136
case 1: return X86::R8B;
4142
case 1: return X86::R9B;
4148
case 1: return X86::R10B;
4154
case 1: return X86::R11B;
4160
case 1: return X86::R12B;
4166
case 1: return X86::R13B;
4172
case 1: return X86::R14B;
4178
case 1: return X86::R15B;
4184
case 1: return X86::AL;
4185
case 2: return X86::AH;
4186
case 3: return X86::AX;
4192
case 1: return X86::DL;
4193
case 2: return X86::DH;
4194
case 3: return X86::DX;
4200
case 1: return X86::CL;
4201
case 2: return X86::CH;
4202
case 3: return X86::CX;
4208
case 1: return X86::BL;
4209
case 2: return X86::BH;
4210
case 3: return X86::BX;
4216
case 1: return X86::SIL;
4217
case 3: return X86::SI;
4223
case 1: return X86::DIL;
4224
case 3: return X86::DI;
4230
case 1: return X86::BPL;
4231
case 3: return X86::BP;
4237
case 1: return X86::SPL;
4238
case 3: return X86::SP;
4244
case 1: return X86::R8B;
4245
case 3: return X86::R8W;
4251
case 1: return X86::R9B;
4252
case 3: return X86::R9W;
4258
case 1: return X86::R10B;
4259
case 3: return X86::R10W;
4265
case 1: return X86::R11B;
4266
case 3: return X86::R11W;
4272
case 1: return X86::R12B;
4273
case 3: return X86::R12W;
4279
case 1: return X86::R13B;
4280
case 3: return X86::R13W;
4286
case 1: return X86::R14B;
4287
case 3: return X86::R14W;
4293
case 1: return X86::R15B;
4294
case 3: return X86::R15W;
4300
case 1: return X86::AL;
4301
case 2: return X86::AH;
4302
case 3: return X86::AX;
4303
case 4: return X86::EAX;
4309
case 1: return X86::DL;
4310
case 2: return X86::DH;
4311
case 3: return X86::DX;
4312
case 4: return X86::EDX;
4318
case 1: return X86::CL;
4319
case 2: return X86::CH;
4320
case 3: return X86::CX;
4321
case 4: return X86::ECX;
4327
case 1: return X86::BL;
4328
case 2: return X86::BH;
4329
case 3: return X86::BX;
4330
case 4: return X86::EBX;
4336
case 1: return X86::SIL;
4337
case 3: return X86::SI;
4338
case 4: return X86::ESI;
4344
case 1: return X86::DIL;
4345
case 3: return X86::DI;
4346
case 4: return X86::EDI;
4352
case 1: return X86::BPL;
4353
case 3: return X86::BP;
4354
case 4: return X86::EBP;
4360
case 1: return X86::SPL;
4361
case 3: return X86::SP;
4362
case 4: return X86::ESP;
4368
case 1: return X86::R8B;
4369
case 3: return X86::R8W;
4370
case 4: return X86::R8D;
4376
case 1: return X86::R9B;
4377
case 3: return X86::R9W;
4378
case 4: return X86::R9D;
4384
case 1: return X86::R10B;
4385
case 3: return X86::R10W;
4386
case 4: return X86::R10D;
4392
case 1: return X86::R11B;
4393
case 3: return X86::R11W;
4394
case 4: return X86::R11D;
4400
case 1: return X86::R12B;
4401
case 3: return X86::R12W;
4402
case 4: return X86::R12D;
4408
case 1: return X86::R13B;
4409
case 3: return X86::R13W;
4410
case 4: return X86::R13D;
4416
case 1: return X86::R14B;
4417
case 3: return X86::R14W;
4418
case 4: return X86::R14D;
4424
case 1: return X86::R15B;
4425
case 3: return X86::R15W;
4426
case 4: return X86::R15D;
4432
case 1: return X86::XMM0;
4433
case 2: return X86::XMM0;
4439
case 1: return X86::XMM1;
4440
case 2: return X86::XMM1;
4446
case 1: return X86::XMM2;
4447
case 2: return X86::XMM2;
4453
case 1: return X86::XMM3;
4454
case 2: return X86::XMM3;
4460
case 1: return X86::XMM4;
4461
case 2: return X86::XMM4;
4467
case 1: return X86::XMM5;
4468
case 2: return X86::XMM5;
4474
case 1: return X86::XMM6;
4475
case 2: return X86::XMM6;
4481
case 1: return X86::XMM7;
4482
case 2: return X86::XMM7;
4488
case 1: return X86::XMM8;
4489
case 2: return X86::XMM8;
4495
case 1: return X86::XMM9;
4496
case 2: return X86::XMM9;
4502
case 1: return X86::XMM10;
4503
case 2: return X86::XMM10;
4509
case 1: return X86::XMM11;
4510
case 2: return X86::XMM11;
4516
case 1: return X86::XMM12;
4517
case 2: return X86::XMM12;
4523
case 1: return X86::XMM13;
4524
case 2: return X86::XMM13;
4530
case 1: return X86::XMM14;
4531
case 2: return X86::XMM14;
4537
case 1: return X86::XMM15;
4538
case 2: return X86::XMM15;
4544
case 1: return X86::XMM0;
4545
case 2: return X86::XMM0;
4546
case 3: return X86::XMM0;
4552
case 1: return X86::XMM1;
4553
case 2: return X86::XMM1;
4554
case 3: return X86::XMM1;
4560
case 1: return X86::XMM2;
4561
case 2: return X86::XMM2;
4562
case 3: return X86::XMM2;
4568
case 1: return X86::XMM3;
4569
case 2: return X86::XMM3;
4570
case 3: return X86::XMM3;
4576
case 1: return X86::XMM4;
4577
case 2: return X86::XMM4;
4578
case 3: return X86::XMM4;
4584
case 1: return X86::XMM5;
4585
case 2: return X86::XMM5;
4586
case 3: return X86::XMM5;
4592
case 1: return X86::XMM6;
4593
case 2: return X86::XMM6;
4594
case 3: return X86::XMM6;
4600
case 1: return X86::XMM7;
4601
case 2: return X86::XMM7;
4602
case 3: return X86::XMM7;
4608
case 1: return X86::XMM8;
4609
case 2: return X86::XMM8;
4610
case 3: return X86::XMM8;
4616
case 1: return X86::XMM9;
4617
case 2: return X86::XMM9;
4618
case 3: return X86::XMM9;
4624
case 1: return X86::XMM10;
4625
case 2: return X86::XMM10;
4626
case 3: return X86::XMM10;
4632
case 1: return X86::XMM11;
4633
case 2: return X86::XMM11;
4634
case 3: return X86::XMM11;
4640
case 1: return X86::XMM12;
4641
case 2: return X86::XMM12;
4642
case 3: return X86::XMM12;
4648
case 1: return X86::XMM13;
4649
case 2: return X86::XMM13;
4650
case 3: return X86::XMM13;
4656
case 1: return X86::XMM14;
4657
case 2: return X86::XMM14;
4658
case 3: return X86::XMM14;
4664
case 1: return X86::XMM15;
4665
case 2: return X86::XMM15;
4666
case 3: return X86::XMM15;
4673
unsigned X86GenRegisterInfo::getSubRegIndex(unsigned RegNo, unsigned SubRegNo) const {
4678
if (SubRegNo == X86::AL) return 1;
4679
if (SubRegNo == X86::AH) return 2;
4682
if (SubRegNo == X86::DL) return 1;
4683
if (SubRegNo == X86::DH) return 2;
4686
if (SubRegNo == X86::CL) return 1;
4687
if (SubRegNo == X86::CH) return 2;
4690
if (SubRegNo == X86::BL) return 1;
4691
if (SubRegNo == X86::BH) return 2;
4694
if (SubRegNo == X86::SIL) return 1;
4697
if (SubRegNo == X86::DIL) return 1;
4700
if (SubRegNo == X86::BPL) return 1;
4703
if (SubRegNo == X86::SPL) return 1;
4706
if (SubRegNo == X86::R8B) return 1;
4709
if (SubRegNo == X86::R9B) return 1;
4712
if (SubRegNo == X86::R10B) return 1;
4715
if (SubRegNo == X86::R11B) return 1;
4718
if (SubRegNo == X86::R12B) return 1;
4721
if (SubRegNo == X86::R13B) return 1;
4724
if (SubRegNo == X86::R14B) return 1;
4727
if (SubRegNo == X86::R15B) return 1;
4730
if (SubRegNo == X86::AL) return 1;
4731
if (SubRegNo == X86::AH) return 2;
4732
if (SubRegNo == X86::AX) return 3;
4735
if (SubRegNo == X86::DL) return 1;
4736
if (SubRegNo == X86::DH) return 2;
4737
if (SubRegNo == X86::DX) return 3;
4740
if (SubRegNo == X86::CL) return 1;
4741
if (SubRegNo == X86::CH) return 2;
4742
if (SubRegNo == X86::CX) return 3;
4745
if (SubRegNo == X86::BL) return 1;
4746
if (SubRegNo == X86::BH) return 2;
4747
if (SubRegNo == X86::BX) return 3;
4750
if (SubRegNo == X86::SIL) return 1;
4751
if (SubRegNo == X86::SI) return 3;
4754
if (SubRegNo == X86::DIL) return 1;
4755
if (SubRegNo == X86::DI) return 3;
4758
if (SubRegNo == X86::BPL) return 1;
4759
if (SubRegNo == X86::BP) return 3;
4762
if (SubRegNo == X86::SPL) return 1;
4763
if (SubRegNo == X86::SP) return 3;
4766
if (SubRegNo == X86::R8B) return 1;
4767
if (SubRegNo == X86::R8W) return 3;
4770
if (SubRegNo == X86::R9B) return 1;
4771
if (SubRegNo == X86::R9W) return 3;
4774
if (SubRegNo == X86::R10B) return 1;
4775
if (SubRegNo == X86::R10W) return 3;
4778
if (SubRegNo == X86::R11B) return 1;
4779
if (SubRegNo == X86::R11W) return 3;
4782
if (SubRegNo == X86::R12B) return 1;
4783
if (SubRegNo == X86::R12W) return 3;
4786
if (SubRegNo == X86::R13B) return 1;
4787
if (SubRegNo == X86::R13W) return 3;
4790
if (SubRegNo == X86::R14B) return 1;
4791
if (SubRegNo == X86::R14W) return 3;
4794
if (SubRegNo == X86::R15B) return 1;
4795
if (SubRegNo == X86::R15W) return 3;
4798
if (SubRegNo == X86::AL) return 1;
4799
if (SubRegNo == X86::AH) return 2;
4800
if (SubRegNo == X86::AX) return 3;
4801
if (SubRegNo == X86::EAX) return 4;
4804
if (SubRegNo == X86::DL) return 1;
4805
if (SubRegNo == X86::DH) return 2;
4806
if (SubRegNo == X86::DX) return 3;
4807
if (SubRegNo == X86::EDX) return 4;
4810
if (SubRegNo == X86::CL) return 1;
4811
if (SubRegNo == X86::CH) return 2;
4812
if (SubRegNo == X86::CX) return 3;
4813
if (SubRegNo == X86::ECX) return 4;
4816
if (SubRegNo == X86::BL) return 1;
4817
if (SubRegNo == X86::BH) return 2;
4818
if (SubRegNo == X86::BX) return 3;
4819
if (SubRegNo == X86::EBX) return 4;
4822
if (SubRegNo == X86::SIL) return 1;
4823
if (SubRegNo == X86::SI) return 3;
4824
if (SubRegNo == X86::ESI) return 4;
4827
if (SubRegNo == X86::DIL) return 1;
4828
if (SubRegNo == X86::DI) return 3;
4829
if (SubRegNo == X86::EDI) return 4;
4832
if (SubRegNo == X86::BPL) return 1;
4833
if (SubRegNo == X86::BP) return 3;
4834
if (SubRegNo == X86::EBP) return 4;
4837
if (SubRegNo == X86::SPL) return 1;
4838
if (SubRegNo == X86::SP) return 3;
4839
if (SubRegNo == X86::ESP) return 4;
4842
if (SubRegNo == X86::R8B) return 1;
4843
if (SubRegNo == X86::R8W) return 3;
4844
if (SubRegNo == X86::R8D) return 4;
4847
if (SubRegNo == X86::R9B) return 1;
4848
if (SubRegNo == X86::R9W) return 3;
4849
if (SubRegNo == X86::R9D) return 4;
4852
if (SubRegNo == X86::R10B) return 1;
4853
if (SubRegNo == X86::R10W) return 3;
4854
if (SubRegNo == X86::R10D) return 4;
4857
if (SubRegNo == X86::R11B) return 1;
4858
if (SubRegNo == X86::R11W) return 3;
4859
if (SubRegNo == X86::R11D) return 4;
4862
if (SubRegNo == X86::R12B) return 1;
4863
if (SubRegNo == X86::R12W) return 3;
4864
if (SubRegNo == X86::R12D) return 4;
4867
if (SubRegNo == X86::R13B) return 1;
4868
if (SubRegNo == X86::R13W) return 3;
4869
if (SubRegNo == X86::R13D) return 4;
4872
if (SubRegNo == X86::R14B) return 1;
4873
if (SubRegNo == X86::R14W) return 3;
4874
if (SubRegNo == X86::R14D) return 4;
4877
if (SubRegNo == X86::R15B) return 1;
4878
if (SubRegNo == X86::R15W) return 3;
4879
if (SubRegNo == X86::R15D) return 4;
4882
if (SubRegNo == X86::XMM0) return 1;
4883
if (SubRegNo == X86::XMM0) return 2;
4886
if (SubRegNo == X86::XMM1) return 1;
4887
if (SubRegNo == X86::XMM1) return 2;
4890
if (SubRegNo == X86::XMM2) return 1;
4891
if (SubRegNo == X86::XMM2) return 2;
4894
if (SubRegNo == X86::XMM3) return 1;
4895
if (SubRegNo == X86::XMM3) return 2;
4898
if (SubRegNo == X86::XMM4) return 1;
4899
if (SubRegNo == X86::XMM4) return 2;
4902
if (SubRegNo == X86::XMM5) return 1;
4903
if (SubRegNo == X86::XMM5) return 2;
4906
if (SubRegNo == X86::XMM6) return 1;
4907
if (SubRegNo == X86::XMM6) return 2;
4910
if (SubRegNo == X86::XMM7) return 1;
4911
if (SubRegNo == X86::XMM7) return 2;
4914
if (SubRegNo == X86::XMM8) return 1;
4915
if (SubRegNo == X86::XMM8) return 2;
4918
if (SubRegNo == X86::XMM9) return 1;
4919
if (SubRegNo == X86::XMM9) return 2;
4922
if (SubRegNo == X86::XMM10) return 1;
4923
if (SubRegNo == X86::XMM10) return 2;
4926
if (SubRegNo == X86::XMM11) return 1;
4927
if (SubRegNo == X86::XMM11) return 2;
4930
if (SubRegNo == X86::XMM12) return 1;
4931
if (SubRegNo == X86::XMM12) return 2;
4934
if (SubRegNo == X86::XMM13) return 1;
4935
if (SubRegNo == X86::XMM13) return 2;
4938
if (SubRegNo == X86::XMM14) return 1;
4939
if (SubRegNo == X86::XMM14) return 2;
4942
if (SubRegNo == X86::XMM15) return 1;
4943
if (SubRegNo == X86::XMM15) return 2;
4946
if (SubRegNo == X86::XMM0) return 1;
4947
if (SubRegNo == X86::XMM0) return 2;
4948
if (SubRegNo == X86::XMM0) return 3;
4951
if (SubRegNo == X86::XMM1) return 1;
4952
if (SubRegNo == X86::XMM1) return 2;
4953
if (SubRegNo == X86::XMM1) return 3;
4956
if (SubRegNo == X86::XMM2) return 1;
4957
if (SubRegNo == X86::XMM2) return 2;
4958
if (SubRegNo == X86::XMM2) return 3;
4961
if (SubRegNo == X86::XMM3) return 1;
4962
if (SubRegNo == X86::XMM3) return 2;
4963
if (SubRegNo == X86::XMM3) return 3;
4966
if (SubRegNo == X86::XMM4) return 1;
4967
if (SubRegNo == X86::XMM4) return 2;
4968
if (SubRegNo == X86::XMM4) return 3;
4971
if (SubRegNo == X86::XMM5) return 1;
4972
if (SubRegNo == X86::XMM5) return 2;
4973
if (SubRegNo == X86::XMM5) return 3;
4976
if (SubRegNo == X86::XMM6) return 1;
4977
if (SubRegNo == X86::XMM6) return 2;
4978
if (SubRegNo == X86::XMM6) return 3;
4981
if (SubRegNo == X86::XMM7) return 1;
4982
if (SubRegNo == X86::XMM7) return 2;
4983
if (SubRegNo == X86::XMM7) return 3;
4986
if (SubRegNo == X86::XMM8) return 1;
4987
if (SubRegNo == X86::XMM8) return 2;
4988
if (SubRegNo == X86::XMM8) return 3;
4991
if (SubRegNo == X86::XMM9) return 1;
4992
if (SubRegNo == X86::XMM9) return 2;
4993
if (SubRegNo == X86::XMM9) return 3;
4996
if (SubRegNo == X86::XMM10) return 1;
4997
if (SubRegNo == X86::XMM10) return 2;
4998
if (SubRegNo == X86::XMM10) return 3;
5001
if (SubRegNo == X86::XMM11) return 1;
5002
if (SubRegNo == X86::XMM11) return 2;
5003
if (SubRegNo == X86::XMM11) return 3;
5006
if (SubRegNo == X86::XMM12) return 1;
5007
if (SubRegNo == X86::XMM12) return 2;
5008
if (SubRegNo == X86::XMM12) return 3;
5011
if (SubRegNo == X86::XMM13) return 1;
5012
if (SubRegNo == X86::XMM13) return 2;
5013
if (SubRegNo == X86::XMM13) return 3;
5016
if (SubRegNo == X86::XMM14) return 1;
5017
if (SubRegNo == X86::XMM14) return 2;
5018
if (SubRegNo == X86::XMM14) return 3;
5021
if (SubRegNo == X86::XMM15) return 1;
5022
if (SubRegNo == X86::XMM15) return 2;
5023
if (SubRegNo == X86::XMM15) return 3;
5029
X86GenRegisterInfo::X86GenRegisterInfo(int CallFrameSetupOpcode, int CallFrameDestroyOpcode)
5030
: TargetRegisterInfo(RegisterDescriptors, 159, RegisterClasses, RegisterClasses+31,
5031
CallFrameSetupOpcode, CallFrameDestroyOpcode,
5032
SubregHashTable, SubregHashTableSize,
5033
SuperregHashTable, SuperregHashTableSize,
5034
AliasesHashTable, AliasesHashTableSize) {
5037
int X86GenRegisterInfo::getDwarfRegNumFull(unsigned RegNum, unsigned Flavour) const {
5040
assert(0 && "Unknown DWARF flavour");
5045
assert(0 && "Invalid RegNum");
5367
assert(0 && "Invalid RegNum");
5496
assert(0 && "Invalid register for this mode");
5499
assert(0 && "Invalid register for this mode");
5502
assert(0 && "Invalid register for this mode");
5505
assert(0 && "Invalid register for this mode");
5508
assert(0 && "Invalid register for this mode");
5511
assert(0 && "Invalid register for this mode");
5514
assert(0 && "Invalid register for this mode");
5517
assert(0 && "Invalid register for this mode");
5520
assert(0 && "Invalid register for this mode");
5523
assert(0 && "Invalid register for this mode");
5526
assert(0 && "Invalid register for this mode");
5529
assert(0 && "Invalid register for this mode");
5532
assert(0 && "Invalid register for this mode");
5535
assert(0 && "Invalid register for this mode");
5538
assert(0 && "Invalid register for this mode");
5541
assert(0 && "Invalid register for this mode");
5544
assert(0 && "Invalid register for this mode");
5547
assert(0 && "Invalid register for this mode");
5550
assert(0 && "Invalid register for this mode");
5553
assert(0 && "Invalid register for this mode");
5556
assert(0 && "Invalid register for this mode");
5559
assert(0 && "Invalid register for this mode");
5562
assert(0 && "Invalid register for this mode");
5565
assert(0 && "Invalid register for this mode");
5568
assert(0 && "Invalid register for this mode");
5571
assert(0 && "Invalid register for this mode");
5574
assert(0 && "Invalid register for this mode");
5577
assert(0 && "Invalid register for this mode");
5580
assert(0 && "Invalid register for this mode");
5583
assert(0 && "Invalid register for this mode");
5586
assert(0 && "Invalid register for this mode");
5589
assert(0 && "Invalid register for this mode");
5592
assert(0 && "Invalid register for this mode");
5595
assert(0 && "Invalid register for this mode");
5598
assert(0 && "Invalid register for this mode");
5619
assert(0 && "Invalid register for this mode");
5622
assert(0 && "Invalid register for this mode");
5625
assert(0 && "Invalid register for this mode");
5628
assert(0 && "Invalid register for this mode");
5631
assert(0 && "Invalid register for this mode");
5634
assert(0 && "Invalid register for this mode");
5667
assert(0 && "Invalid register for this mode");
5670
assert(0 && "Invalid register for this mode");
5673
assert(0 && "Invalid register for this mode");
5676
assert(0 && "Invalid register for this mode");
5679
assert(0 && "Invalid register for this mode");
5682
assert(0 && "Invalid register for this mode");
5697
assert(0 && "Invalid register for this mode");
5700
assert(0 && "Invalid register for this mode");
5707
assert(0 && "Invalid register for this mode");
5710
assert(0 && "Invalid register for this mode");
5713
assert(0 && "Invalid register for this mode");
5716
assert(0 && "Invalid register for this mode");
5719
assert(0 && "Invalid register for this mode");
5722
assert(0 && "Invalid register for this mode");
5737
assert(0 && "Invalid register for this mode");
5740
assert(0 && "Invalid register for this mode");
5746
assert(0 && "Invalid RegNum");
5875
assert(0 && "Invalid register for this mode");
5878
assert(0 && "Invalid register for this mode");
5881
assert(0 && "Invalid register for this mode");
5884
assert(0 && "Invalid register for this mode");
5887
assert(0 && "Invalid register for this mode");
5890
assert(0 && "Invalid register for this mode");
5893
assert(0 && "Invalid register for this mode");
5896
assert(0 && "Invalid register for this mode");
5899
assert(0 && "Invalid register for this mode");
5902
assert(0 && "Invalid register for this mode");
5905
assert(0 && "Invalid register for this mode");
5908
assert(0 && "Invalid register for this mode");
5911
assert(0 && "Invalid register for this mode");
5914
assert(0 && "Invalid register for this mode");
5917
assert(0 && "Invalid register for this mode");
5920
assert(0 && "Invalid register for this mode");
5923
assert(0 && "Invalid register for this mode");
5926
assert(0 && "Invalid register for this mode");
5929
assert(0 && "Invalid register for this mode");
5932
assert(0 && "Invalid register for this mode");
5935
assert(0 && "Invalid register for this mode");
5938
assert(0 && "Invalid register for this mode");
5941
assert(0 && "Invalid register for this mode");
5944
assert(0 && "Invalid register for this mode");
5947
assert(0 && "Invalid register for this mode");
5950
assert(0 && "Invalid register for this mode");
5953
assert(0 && "Invalid register for this mode");
5956
assert(0 && "Invalid register for this mode");
5959
assert(0 && "Invalid register for this mode");
5962
assert(0 && "Invalid register for this mode");
5965
assert(0 && "Invalid register for this mode");
5968
assert(0 && "Invalid register for this mode");
5971
assert(0 && "Invalid register for this mode");
5974
assert(0 && "Invalid register for this mode");
5977
assert(0 && "Invalid register for this mode");
5998
assert(0 && "Invalid register for this mode");
6001
assert(0 && "Invalid register for this mode");
6004
assert(0 && "Invalid register for this mode");
6007
assert(0 && "Invalid register for this mode");
6010
assert(0 && "Invalid register for this mode");
6013
assert(0 && "Invalid register for this mode");
6046
assert(0 && "Invalid register for this mode");
6049
assert(0 && "Invalid register for this mode");
6052
assert(0 && "Invalid register for this mode");
6055
assert(0 && "Invalid register for this mode");
6058
assert(0 && "Invalid register for this mode");
6061
assert(0 && "Invalid register for this mode");
6076
assert(0 && "Invalid register for this mode");
6079
assert(0 && "Invalid register for this mode");
6086
assert(0 && "Invalid register for this mode");
6089
assert(0 && "Invalid register for this mode");
6092
assert(0 && "Invalid register for this mode");
6095
assert(0 && "Invalid register for this mode");
6098
assert(0 && "Invalid register for this mode");
6101
assert(0 && "Invalid register for this mode");
6116
assert(0 && "Invalid register for this mode");
6119
assert(0 && "Invalid register for this mode");
6125
} // End llvm namespace