/src/capstonenext/arch/Alpha/AlphaGenDisassemblerTables.inc
Line  | Count  | Source  | 
1  |  | /* Capstone Disassembly Engine, https://www.capstone-engine.org */  | 
2  |  | /* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2022, */  | 
3  |  | /*    Rot127 <unisono@quyllur.org> 2022-2023 */  | 
4  |  | /* Automatically generated file by Capstone's LLVM TableGen Disassembler Backend. */  | 
5  |  |  | 
6  |  | /* LLVM-commit: 083d57d0731afc1746680d828bdfe2fa41f62a61 */  | 
7  |  | /* LLVM-tag: llvmorg-3.0.0-2-g083d57d0731a */  | 
8  |  |  | 
9  |  | /* Do not edit. */  | 
10  |  |  | 
11  |  | /* Capstone's LLVM TableGen Backends: */  | 
12  |  | /* https://github.com/capstone-engine/llvm-capstone */  | 
13  |  |  | 
14  |  | #include "../../MCInst.h"  | 
15  |  | #include "../../cs_priv.h"  | 
16  |  | #include "../../LEB128.h"  | 
17  |  |  | 
18  |  | // Helper function for extracting fields from encoded instructions.  | 
19  |  | #define FieldFromInstruction(fname, InsnType) \  | 
20  | 0  | static InsnType fname(InsnType insn, unsigned startBit, unsigned numBits) \  | 
21  | 0  | { \ | 
22  | 0  |   InsnType fieldMask; \  | 
23  | 0  |   if (numBits == sizeof(InsnType) * 8) \  | 
24  | 0  |     fieldMask = (InsnType)(-1LL); \  | 
25  | 0  |   else \  | 
26  | 0  |     fieldMask = (((InsnType)1 << numBits) - 1) << startBit; \  | 
27  | 0  |   return (insn & fieldMask) >> startBit; \  | 
28  | 0  | }  | 
29  |  |  | 
30  |  | static const uint8_t DecoderTable32[] = { | 
31  |  | /* 0 */       MCD_OPC_ExtractField, 26, 6,  // Inst{31-26} ... | 
32  |  | /* 3 */       MCD_OPC_FilterValue, 0, 4, 0, 0, // Skip to: 12  | 
33  |  | /* 8 */       MCD_OPC_Decode, 190, 2, 0, // Opcode: COND_BRANCH_I  | 
34  |  | /* 12 */      MCD_OPC_FilterValue, 8, 4, 0, 0, // Skip to: 21  | 
35  |  | /* 17 */      MCD_OPC_Decode, 144, 3, 1, // Opcode: LDA  | 
36  |  | /* 21 */      MCD_OPC_FilterValue, 9, 4, 0, 0, // Skip to: 30  | 
37  |  | /* 26 */      MCD_OPC_Decode, 145, 3, 1, // Opcode: LDAH  | 
38  |  | /* 30 */      MCD_OPC_FilterValue, 10, 4, 0, 0, // Skip to: 39  | 
39  |  | /* 35 */      MCD_OPC_Decode, 150, 3, 1, // Opcode: LDBU  | 
40  |  | /* 39 */      MCD_OPC_FilterValue, 11, 4, 0, 0, // Skip to: 48  | 
41  |  | /* 44 */      MCD_OPC_Decode, 157, 3, 1, // Opcode: LDQ_U  | 
42  |  | /* 48 */      MCD_OPC_FilterValue, 12, 4, 0, 0, // Skip to: 57  | 
43  |  | /* 53 */      MCD_OPC_Decode, 164, 3, 1, // Opcode: LDWU  | 
44  |  | /* 57 */      MCD_OPC_FilterValue, 13, 4, 0, 0, // Skip to: 66  | 
45  |  | /* 62 */      MCD_OPC_Decode, 233, 3, 1, // Opcode: STW  | 
46  |  | /* 66 */      MCD_OPC_FilterValue, 14, 4, 0, 0, // Skip to: 75  | 
47  |  | /* 71 */      MCD_OPC_Decode, 220, 3, 1, // Opcode: STB  | 
48  |  | /* 75 */      MCD_OPC_FilterValue, 15, 4, 0, 0, // Skip to: 84  | 
49  |  | /* 80 */      MCD_OPC_Decode, 227, 3, 1, // Opcode: STQ_U  | 
50  |  | /* 84 */      MCD_OPC_FilterValue, 16, 215, 1, 0, // Skip to: 560  | 
51  |  | /* 89 */      MCD_OPC_ExtractField, 5, 8,  // Inst{12-5} ... | 
52  |  | /* 92 */      MCD_OPC_FilterValue, 0, 11, 0, 0, // Skip to: 108  | 
53  |  | /* 97 */      MCD_OPC_CheckField, 13, 3, 0, 43, 10, 0, // Skip to: 2707  | 
54  |  | /* 104 */     MCD_OPC_Decode, 136, 2, 2, // Opcode: ADDLr  | 
55  |  | /* 108 */     MCD_OPC_FilterValue, 2, 11, 0, 0, // Skip to: 124  | 
56  |  | /* 113 */     MCD_OPC_CheckField, 13, 3, 0, 27, 10, 0, // Skip to: 2707  | 
57  |  | /* 120 */     MCD_OPC_Decode, 195, 3, 2, // Opcode: S4ADDLr  | 
58  |  | /* 124 */     MCD_OPC_FilterValue, 9, 11, 0, 0, // Skip to: 140  | 
59  |  | /* 129 */     MCD_OPC_CheckField, 13, 3, 0, 11, 10, 0, // Skip to: 2707  | 
60  |  | /* 136 */     MCD_OPC_Decode, 236, 3, 2, // Opcode: SUBLr  | 
61  |  | /* 140 */     MCD_OPC_FilterValue, 11, 11, 0, 0, // Skip to: 156  | 
62  |  | /* 145 */     MCD_OPC_CheckField, 13, 3, 0, 251, 9, 0, // Skip to: 2707  | 
63  |  | /* 152 */     MCD_OPC_Decode, 199, 3, 2, // Opcode: S4SUBLr  | 
64  |  | /* 156 */     MCD_OPC_FilterValue, 15, 11, 0, 0, // Skip to: 172  | 
65  |  | /* 161 */     MCD_OPC_CheckField, 13, 3, 0, 235, 9, 0, // Skip to: 2707  | 
66  |  | /* 168 */     MCD_OPC_Decode, 173, 2, 2, // Opcode: CMPBGE  | 
67  |  | /* 172 */     MCD_OPC_FilterValue, 18, 11, 0, 0, // Skip to: 188  | 
68  |  | /* 177 */     MCD_OPC_CheckField, 13, 3, 0, 219, 9, 0, // Skip to: 2707  | 
69  |  | /* 184 */     MCD_OPC_Decode, 203, 3, 2, // Opcode: S8ADDLr  | 
70  |  | /* 188 */     MCD_OPC_FilterValue, 27, 11, 0, 0, // Skip to: 204  | 
71  |  | /* 193 */     MCD_OPC_CheckField, 13, 3, 0, 203, 9, 0, // Skip to: 2707  | 
72  |  | /* 200 */     MCD_OPC_Decode, 207, 3, 2, // Opcode: S8SUBLr  | 
73  |  | /* 204 */     MCD_OPC_FilterValue, 29, 11, 0, 0, // Skip to: 220  | 
74  |  | /* 209 */     MCD_OPC_CheckField, 13, 3, 0, 187, 9, 0, // Skip to: 2707  | 
75  |  | /* 216 */     MCD_OPC_Decode, 187, 2, 2, // Opcode: CMPULT  | 
76  |  | /* 220 */     MCD_OPC_FilterValue, 32, 11, 0, 0, // Skip to: 236  | 
77  |  | /* 225 */     MCD_OPC_CheckField, 13, 3, 0, 171, 9, 0, // Skip to: 2707  | 
78  |  | /* 232 */     MCD_OPC_Decode, 138, 2, 2, // Opcode: ADDQr  | 
79  |  | /* 236 */     MCD_OPC_FilterValue, 34, 11, 0, 0, // Skip to: 252  | 
80  |  | /* 241 */     MCD_OPC_CheckField, 13, 3, 0, 155, 9, 0, // Skip to: 2707  | 
81  |  | /* 248 */     MCD_OPC_Decode, 197, 3, 2, // Opcode: S4ADDQr  | 
82  |  | /* 252 */     MCD_OPC_FilterValue, 41, 11, 0, 0, // Skip to: 268  | 
83  |  | /* 257 */     MCD_OPC_CheckField, 13, 3, 0, 139, 9, 0, // Skip to: 2707  | 
84  |  | /* 264 */     MCD_OPC_Decode, 238, 3, 2, // Opcode: SUBQr  | 
85  |  | /* 268 */     MCD_OPC_FilterValue, 43, 11, 0, 0, // Skip to: 284  | 
86  |  | /* 273 */     MCD_OPC_CheckField, 13, 3, 0, 123, 9, 0, // Skip to: 2707  | 
87  |  | /* 280 */     MCD_OPC_Decode, 201, 3, 2, // Opcode: S4SUBQr  | 
88  |  | /* 284 */     MCD_OPC_FilterValue, 45, 11, 0, 0, // Skip to: 300  | 
89  |  | /* 289 */     MCD_OPC_CheckField, 13, 3, 0, 107, 9, 0, // Skip to: 2707  | 
90  |  | /* 296 */     MCD_OPC_Decode, 175, 2, 2, // Opcode: CMPEQ  | 
91  |  | /* 300 */     MCD_OPC_FilterValue, 50, 11, 0, 0, // Skip to: 316  | 
92  |  | /* 305 */     MCD_OPC_CheckField, 13, 3, 0, 91, 9, 0, // Skip to: 2707  | 
93  |  | /* 312 */     MCD_OPC_Decode, 205, 3, 2, // Opcode: S8ADDQr  | 
94  |  | /* 316 */     MCD_OPC_FilterValue, 59, 11, 0, 0, // Skip to: 332  | 
95  |  | /* 321 */     MCD_OPC_CheckField, 13, 3, 0, 75, 9, 0, // Skip to: 2707  | 
96  |  | /* 328 */     MCD_OPC_Decode, 209, 3, 2, // Opcode: S8SUBQr  | 
97  |  | /* 332 */     MCD_OPC_FilterValue, 61, 11, 0, 0, // Skip to: 348  | 
98  |  | /* 337 */     MCD_OPC_CheckField, 13, 3, 0, 59, 9, 0, // Skip to: 2707  | 
99  |  | /* 344 */     MCD_OPC_Decode, 185, 2, 2, // Opcode: CMPULE  | 
100  |  | /* 348 */     MCD_OPC_FilterValue, 77, 11, 0, 0, // Skip to: 364  | 
101  |  | /* 353 */     MCD_OPC_CheckField, 13, 3, 0, 43, 9, 0, // Skip to: 2707  | 
102  |  | /* 360 */     MCD_OPC_Decode, 179, 2, 2, // Opcode: CMPLT  | 
103  |  | /* 364 */     MCD_OPC_FilterValue, 109, 11, 0, 0, // Skip to: 380  | 
104  |  | /* 369 */     MCD_OPC_CheckField, 13, 3, 0, 27, 9, 0, // Skip to: 2707  | 
105  |  | /* 376 */     MCD_OPC_Decode, 177, 2, 2, // Opcode: CMPLE  | 
106  |  | /* 380 */     MCD_OPC_FilterValue, 128, 1, 4, 0, 0, // Skip to: 390  | 
107  |  | /* 386 */     MCD_OPC_Decode, 135, 2, 3, // Opcode: ADDLi  | 
108  |  | /* 390 */     MCD_OPC_FilterValue, 130, 1, 4, 0, 0, // Skip to: 400  | 
109  |  | /* 396 */     MCD_OPC_Decode, 194, 3, 3, // Opcode: S4ADDLi  | 
110  |  | /* 400 */     MCD_OPC_FilterValue, 137, 1, 4, 0, 0, // Skip to: 410  | 
111  |  | /* 406 */     MCD_OPC_Decode, 235, 3, 3, // Opcode: SUBLi  | 
112  |  | /* 410 */     MCD_OPC_FilterValue, 139, 1, 4, 0, 0, // Skip to: 420  | 
113  |  | /* 416 */     MCD_OPC_Decode, 198, 3, 3, // Opcode: S4SUBLi  | 
114  |  | /* 420 */     MCD_OPC_FilterValue, 143, 1, 4, 0, 0, // Skip to: 430  | 
115  |  | /* 426 */     MCD_OPC_Decode, 174, 2, 3, // Opcode: CMPBGEi  | 
116  |  | /* 430 */     MCD_OPC_FilterValue, 146, 1, 4, 0, 0, // Skip to: 440  | 
117  |  | /* 436 */     MCD_OPC_Decode, 202, 3, 3, // Opcode: S8ADDLi  | 
118  |  | /* 440 */     MCD_OPC_FilterValue, 155, 1, 4, 0, 0, // Skip to: 450  | 
119  |  | /* 446 */     MCD_OPC_Decode, 206, 3, 3, // Opcode: S8SUBLi  | 
120  |  | /* 450 */     MCD_OPC_FilterValue, 157, 1, 4, 0, 0, // Skip to: 460  | 
121  |  | /* 456 */     MCD_OPC_Decode, 188, 2, 3, // Opcode: CMPULTi  | 
122  |  | /* 460 */     MCD_OPC_FilterValue, 160, 1, 4, 0, 0, // Skip to: 470  | 
123  |  | /* 466 */     MCD_OPC_Decode, 137, 2, 3, // Opcode: ADDQi  | 
124  |  | /* 470 */     MCD_OPC_FilterValue, 162, 1, 4, 0, 0, // Skip to: 480  | 
125  |  | /* 476 */     MCD_OPC_Decode, 196, 3, 3, // Opcode: S4ADDQi  | 
126  |  | /* 480 */     MCD_OPC_FilterValue, 169, 1, 4, 0, 0, // Skip to: 490  | 
127  |  | /* 486 */     MCD_OPC_Decode, 237, 3, 3, // Opcode: SUBQi  | 
128  |  | /* 490 */     MCD_OPC_FilterValue, 171, 1, 4, 0, 0, // Skip to: 500  | 
129  |  | /* 496 */     MCD_OPC_Decode, 200, 3, 3, // Opcode: S4SUBQi  | 
130  |  | /* 500 */     MCD_OPC_FilterValue, 173, 1, 4, 0, 0, // Skip to: 510  | 
131  |  | /* 506 */     MCD_OPC_Decode, 176, 2, 3, // Opcode: CMPEQi  | 
132  |  | /* 510 */     MCD_OPC_FilterValue, 178, 1, 4, 0, 0, // Skip to: 520  | 
133  |  | /* 516 */     MCD_OPC_Decode, 204, 3, 3, // Opcode: S8ADDQi  | 
134  |  | /* 520 */     MCD_OPC_FilterValue, 187, 1, 4, 0, 0, // Skip to: 530  | 
135  |  | /* 526 */     MCD_OPC_Decode, 208, 3, 3, // Opcode: S8SUBQi  | 
136  |  | /* 530 */     MCD_OPC_FilterValue, 189, 1, 4, 0, 0, // Skip to: 540  | 
137  |  | /* 536 */     MCD_OPC_Decode, 186, 2, 3, // Opcode: CMPULEi  | 
138  |  | /* 540 */     MCD_OPC_FilterValue, 205, 1, 4, 0, 0, // Skip to: 550  | 
139  |  | /* 546 */     MCD_OPC_Decode, 180, 2, 3, // Opcode: CMPLTi  | 
140  |  | /* 550 */     MCD_OPC_FilterValue, 237, 1, 103, 8, 0, // Skip to: 2707  | 
141  |  | /* 556 */     MCD_OPC_Decode, 178, 2, 3, // Opcode: CMPLEi  | 
142  |  | /* 560 */     MCD_OPC_FilterValue, 17, 111, 1, 0, // Skip to: 932  | 
143  |  | /* 565 */     MCD_OPC_ExtractField, 5, 8,  // Inst{12-5} ... | 
144  |  | /* 568 */     MCD_OPC_FilterValue, 0, 11, 0, 0, // Skip to: 584  | 
145  |  | /* 573 */     MCD_OPC_CheckField, 13, 3, 0, 79, 8, 0, // Skip to: 2707  | 
146  |  | /* 580 */     MCD_OPC_Decode, 142, 2, 2, // Opcode: ANDr  | 
147  |  | /* 584 */     MCD_OPC_FilterValue, 8, 11, 0, 0, // Skip to: 600  | 
148  |  | /* 589 */     MCD_OPC_CheckField, 13, 3, 0, 63, 8, 0, // Skip to: 2707  | 
149  |  | /* 596 */     MCD_OPC_Decode, 147, 2, 2, // Opcode: BICr  | 
150  |  | /* 600 */     MCD_OPC_FilterValue, 20, 11, 0, 0, // Skip to: 616  | 
151  |  | /* 605 */     MCD_OPC_CheckField, 13, 3, 0, 47, 8, 0, // Skip to: 2707  | 
152  |  | /* 612 */     MCD_OPC_Decode, 166, 2, 4, // Opcode: CMOVLBSr  | 
153  |  | /* 616 */     MCD_OPC_FilterValue, 22, 11, 0, 0, // Skip to: 632  | 
154  |  | /* 621 */     MCD_OPC_CheckField, 13, 3, 0, 31, 8, 0, // Skip to: 2707  | 
155  |  | /* 628 */     MCD_OPC_Decode, 164, 2, 4, // Opcode: CMOVLBCr  | 
156  |  | /* 632 */     MCD_OPC_FilterValue, 32, 11, 0, 0, // Skip to: 648  | 
157  |  | /* 637 */     MCD_OPC_CheckField, 13, 3, 0, 15, 8, 0, // Skip to: 2707  | 
158  |  | /* 644 */     MCD_OPC_Decode, 149, 2, 2, // Opcode: BISr  | 
159  |  | /* 648 */     MCD_OPC_FilterValue, 36, 11, 0, 0, // Skip to: 664  | 
160  |  | /* 653 */     MCD_OPC_CheckField, 13, 3, 0, 255, 7, 0, // Skip to: 2707  | 
161  |  | /* 660 */     MCD_OPC_Decode, 158, 2, 4, // Opcode: CMOVEQr  | 
162  |  | /* 664 */     MCD_OPC_FilterValue, 38, 11, 0, 0, // Skip to: 680  | 
163  |  | /* 669 */     MCD_OPC_CheckField, 13, 3, 0, 239, 7, 0, // Skip to: 2707  | 
164  |  | /* 676 */     MCD_OPC_Decode, 172, 2, 4, // Opcode: CMOVNEr  | 
165  |  | /* 680 */     MCD_OPC_FilterValue, 40, 11, 0, 0, // Skip to: 696  | 
166  |  | /* 685 */     MCD_OPC_CheckField, 13, 3, 0, 223, 7, 0, // Skip to: 2707  | 
167  |  | /* 692 */     MCD_OPC_Decode, 188, 3, 2, // Opcode: ORNOTr  | 
168  |  | /* 696 */     MCD_OPC_FilterValue, 64, 11, 0, 0, // Skip to: 712  | 
169  |  | /* 701 */     MCD_OPC_CheckField, 13, 3, 0, 207, 7, 0, // Skip to: 2707  | 
170  |  | /* 708 */     MCD_OPC_Decode, 248, 3, 2, // Opcode: XORr  | 
171  |  | /* 712 */     MCD_OPC_FilterValue, 68, 11, 0, 0, // Skip to: 728  | 
172  |  | /* 717 */     MCD_OPC_CheckField, 13, 3, 0, 191, 7, 0, // Skip to: 2707  | 
173  |  | /* 724 */     MCD_OPC_Decode, 170, 2, 4, // Opcode: CMOVLTr  | 
174  |  | /* 728 */     MCD_OPC_FilterValue, 70, 11, 0, 0, // Skip to: 744  | 
175  |  | /* 733 */     MCD_OPC_CheckField, 13, 3, 0, 175, 7, 0, // Skip to: 2707  | 
176  |  | /* 740 */     MCD_OPC_Decode, 160, 2, 4, // Opcode: CMOVGEr  | 
177  |  | /* 744 */     MCD_OPC_FilterValue, 72, 11, 0, 0, // Skip to: 760  | 
178  |  | /* 749 */     MCD_OPC_CheckField, 13, 3, 0, 159, 7, 0, // Skip to: 2707  | 
179  |  | /* 756 */     MCD_OPC_Decode, 214, 2, 2, // Opcode: EQVr  | 
180  |  | /* 760 */     MCD_OPC_FilterValue, 100, 11, 0, 0, // Skip to: 776  | 
181  |  | /* 765 */     MCD_OPC_CheckField, 13, 3, 0, 143, 7, 0, // Skip to: 2707  | 
182  |  | /* 772 */     MCD_OPC_Decode, 168, 2, 4, // Opcode: CMOVLEr  | 
183  |  | /* 776 */     MCD_OPC_FilterValue, 102, 11, 0, 0, // Skip to: 792  | 
184  |  | /* 781 */     MCD_OPC_CheckField, 13, 3, 0, 127, 7, 0, // Skip to: 2707  | 
185  |  | /* 788 */     MCD_OPC_Decode, 162, 2, 4, // Opcode: CMOVGTr  | 
186  |  | /* 792 */     MCD_OPC_FilterValue, 128, 1, 4, 0, 0, // Skip to: 802  | 
187  |  | /* 798 */     MCD_OPC_Decode, 141, 2, 3, // Opcode: ANDi  | 
188  |  | /* 802 */     MCD_OPC_FilterValue, 136, 1, 4, 0, 0, // Skip to: 812  | 
189  |  | /* 808 */     MCD_OPC_Decode, 146, 2, 3, // Opcode: BICi  | 
190  |  | /* 812 */     MCD_OPC_FilterValue, 148, 1, 4, 0, 0, // Skip to: 822  | 
191  |  | /* 818 */     MCD_OPC_Decode, 165, 2, 5, // Opcode: CMOVLBSi  | 
192  |  | /* 822 */     MCD_OPC_FilterValue, 150, 1, 4, 0, 0, // Skip to: 832  | 
193  |  | /* 828 */     MCD_OPC_Decode, 163, 2, 5, // Opcode: CMOVLBCi  | 
194  |  | /* 832 */     MCD_OPC_FilterValue, 160, 1, 4, 0, 0, // Skip to: 842  | 
195  |  | /* 838 */     MCD_OPC_Decode, 148, 2, 3, // Opcode: BISi  | 
196  |  | /* 842 */     MCD_OPC_FilterValue, 164, 1, 4, 0, 0, // Skip to: 852  | 
197  |  | /* 848 */     MCD_OPC_Decode, 157, 2, 5, // Opcode: CMOVEQi  | 
198  |  | /* 852 */     MCD_OPC_FilterValue, 166, 1, 4, 0, 0, // Skip to: 862  | 
199  |  | /* 858 */     MCD_OPC_Decode, 171, 2, 5, // Opcode: CMOVNEi  | 
200  |  | /* 862 */     MCD_OPC_FilterValue, 168, 1, 4, 0, 0, // Skip to: 872  | 
201  |  | /* 868 */     MCD_OPC_Decode, 187, 3, 3, // Opcode: ORNOTi  | 
202  |  | /* 872 */     MCD_OPC_FilterValue, 192, 1, 4, 0, 0, // Skip to: 882  | 
203  |  | /* 878 */     MCD_OPC_Decode, 247, 3, 3, // Opcode: XORi  | 
204  |  | /* 882 */     MCD_OPC_FilterValue, 196, 1, 4, 0, 0, // Skip to: 892  | 
205  |  | /* 888 */     MCD_OPC_Decode, 169, 2, 5, // Opcode: CMOVLTi  | 
206  |  | /* 892 */     MCD_OPC_FilterValue, 198, 1, 4, 0, 0, // Skip to: 902  | 
207  |  | /* 898 */     MCD_OPC_Decode, 159, 2, 5, // Opcode: CMOVGEi  | 
208  |  | /* 902 */     MCD_OPC_FilterValue, 200, 1, 4, 0, 0, // Skip to: 912  | 
209  |  | /* 908 */     MCD_OPC_Decode, 213, 2, 3, // Opcode: EQVi  | 
210  |  | /* 912 */     MCD_OPC_FilterValue, 228, 1, 4, 0, 0, // Skip to: 922  | 
211  |  | /* 918 */     MCD_OPC_Decode, 167, 2, 5, // Opcode: CMOVLEi  | 
212  |  | /* 922 */     MCD_OPC_FilterValue, 230, 1, 243, 6, 0, // Skip to: 2707  | 
213  |  | /* 928 */     MCD_OPC_Decode, 161, 2, 5, // Opcode: CMOVGTi  | 
214  |  | /* 932 */     MCD_OPC_FilterValue, 18, 125, 2, 0, // Skip to: 1574  | 
215  |  | /* 937 */     MCD_OPC_ExtractField, 5, 8,  // Inst{12-5} ... | 
216  |  | /* 940 */     MCD_OPC_FilterValue, 2, 11, 0, 0, // Skip to: 956  | 
217  |  | /* 945 */     MCD_OPC_CheckField, 13, 3, 0, 219, 6, 0, // Skip to: 2707  | 
218  |  | /* 952 */     MCD_OPC_Decode, 167, 3, 2, // Opcode: MSKBL  | 
219  |  | /* 956 */     MCD_OPC_FilterValue, 6, 11, 0, 0, // Skip to: 972  | 
220  |  | /* 961 */     MCD_OPC_CheckField, 13, 3, 0, 203, 6, 0, // Skip to: 2707  | 
221  |  | /* 968 */     MCD_OPC_Decode, 216, 2, 2, // Opcode: EXTBL  | 
222  |  | /* 972 */     MCD_OPC_FilterValue, 11, 11, 0, 0, // Skip to: 988  | 
223  |  | /* 977 */     MCD_OPC_CheckField, 13, 3, 0, 187, 6, 0, // Skip to: 2707  | 
224  |  | /* 984 */     MCD_OPC_Decode, 252, 2, 2, // Opcode: INSBL  | 
225  |  | /* 988 */     MCD_OPC_FilterValue, 18, 11, 0, 0, // Skip to: 1004  | 
226  |  | /* 993 */     MCD_OPC_CheckField, 13, 3, 0, 171, 6, 0, // Skip to: 2707  | 
227  |  | /* 1000 */    MCD_OPC_Decode, 179, 3, 2, // Opcode: MSKWL  | 
228  |  | /* 1004 */    MCD_OPC_FilterValue, 22, 11, 0, 0, // Skip to: 1020  | 
229  |  | /* 1009 */    MCD_OPC_CheckField, 13, 3, 0, 155, 6, 0, // Skip to: 2707  | 
230  |  | /* 1016 */    MCD_OPC_Decode, 228, 2, 2, // Opcode: EXTWL  | 
231  |  | /* 1020 */    MCD_OPC_FilterValue, 27, 11, 0, 0, // Skip to: 1036  | 
232  |  | /* 1025 */    MCD_OPC_CheckField, 13, 3, 0, 139, 6, 0, // Skip to: 2707  | 
233  |  | /* 1032 */    MCD_OPC_Decode, 136, 3, 2, // Opcode: INSWL  | 
234  |  | /* 1036 */    MCD_OPC_FilterValue, 34, 11, 0, 0, // Skip to: 1052  | 
235  |  | /* 1041 */    MCD_OPC_CheckField, 13, 3, 0, 123, 6, 0, // Skip to: 2707  | 
236  |  | /* 1048 */    MCD_OPC_Decode, 171, 3, 2, // Opcode: MSKLL  | 
237  |  | /* 1052 */    MCD_OPC_FilterValue, 38, 11, 0, 0, // Skip to: 1068  | 
238  |  | /* 1057 */    MCD_OPC_CheckField, 13, 3, 0, 107, 6, 0, // Skip to: 2707  | 
239  |  | /* 1064 */    MCD_OPC_Decode, 220, 2, 2, // Opcode: EXTLL  | 
240  |  | /* 1068 */    MCD_OPC_FilterValue, 43, 11, 0, 0, // Skip to: 1084  | 
241  |  | /* 1073 */    MCD_OPC_CheckField, 13, 3, 0, 91, 6, 0, // Skip to: 2707  | 
242  |  | /* 1080 */    MCD_OPC_Decode, 128, 3, 2, // Opcode: INSLL  | 
243  |  | /* 1084 */    MCD_OPC_FilterValue, 50, 11, 0, 0, // Skip to: 1100  | 
244  |  | /* 1089 */    MCD_OPC_CheckField, 13, 3, 0, 75, 6, 0, // Skip to: 2707  | 
245  |  | /* 1096 */    MCD_OPC_Decode, 175, 3, 2, // Opcode: MSKQL  | 
246  |  | /* 1100 */    MCD_OPC_FilterValue, 52, 11, 0, 0, // Skip to: 1116  | 
247  |  | /* 1105 */    MCD_OPC_CheckField, 13, 3, 0, 59, 6, 0, // Skip to: 2707  | 
248  |  | /* 1112 */    MCD_OPC_Decode, 219, 3, 2, // Opcode: SRLr  | 
249  |  | /* 1116 */    MCD_OPC_FilterValue, 54, 11, 0, 0, // Skip to: 1132  | 
250  |  | /* 1121 */    MCD_OPC_CheckField, 13, 3, 0, 43, 6, 0, // Skip to: 2707  | 
251  |  | /* 1128 */    MCD_OPC_Decode, 224, 2, 2, // Opcode: EXTQL  | 
252  |  | /* 1132 */    MCD_OPC_FilterValue, 57, 11, 0, 0, // Skip to: 1148  | 
253  |  | /* 1137 */    MCD_OPC_CheckField, 13, 3, 0, 27, 6, 0, // Skip to: 2707  | 
254  |  | /* 1144 */    MCD_OPC_Decode, 213, 3, 2, // Opcode: SLr  | 
255  |  | /* 1148 */    MCD_OPC_FilterValue, 59, 11, 0, 0, // Skip to: 1164  | 
256  |  | /* 1153 */    MCD_OPC_CheckField, 13, 3, 0, 11, 6, 0, // Skip to: 2707  | 
257  |  | /* 1160 */    MCD_OPC_Decode, 132, 3, 2, // Opcode: INSQL  | 
258  |  | /* 1164 */    MCD_OPC_FilterValue, 60, 11, 0, 0, // Skip to: 1180  | 
259  |  | /* 1169 */    MCD_OPC_CheckField, 13, 3, 0, 251, 5, 0, // Skip to: 2707  | 
260  |  | /* 1176 */    MCD_OPC_Decode, 217, 3, 2, // Opcode: SRAr  | 
261  |  | /* 1180 */    MCD_OPC_FilterValue, 82, 11, 0, 0, // Skip to: 1196  | 
262  |  | /* 1185 */    MCD_OPC_CheckField, 13, 3, 0, 235, 5, 0, // Skip to: 2707  | 
263  |  | /* 1192 */    MCD_OPC_Decode, 177, 3, 2, // Opcode: MSKWH  | 
264  |  | /* 1196 */    MCD_OPC_FilterValue, 87, 11, 0, 0, // Skip to: 1212  | 
265  |  | /* 1201 */    MCD_OPC_CheckField, 13, 3, 0, 219, 5, 0, // Skip to: 2707  | 
266  |  | /* 1208 */    MCD_OPC_Decode, 134, 3, 2, // Opcode: INSWH  | 
267  |  | /* 1212 */    MCD_OPC_FilterValue, 90, 11, 0, 0, // Skip to: 1228  | 
268  |  | /* 1217 */    MCD_OPC_CheckField, 13, 3, 0, 203, 5, 0, // Skip to: 2707  | 
269  |  | /* 1224 */    MCD_OPC_Decode, 226, 2, 2, // Opcode: EXTWH  | 
270  |  | /* 1228 */    MCD_OPC_FilterValue, 98, 11, 0, 0, // Skip to: 1244  | 
271  |  | /* 1233 */    MCD_OPC_CheckField, 13, 3, 0, 187, 5, 0, // Skip to: 2707  | 
272  |  | /* 1240 */    MCD_OPC_Decode, 169, 3, 2, // Opcode: MSKLH  | 
273  |  | /* 1244 */    MCD_OPC_FilterValue, 103, 11, 0, 0, // Skip to: 1260  | 
274  |  | /* 1249 */    MCD_OPC_CheckField, 13, 3, 0, 171, 5, 0, // Skip to: 2707  | 
275  |  | /* 1256 */    MCD_OPC_Decode, 254, 2, 2, // Opcode: INSLH  | 
276  |  | /* 1260 */    MCD_OPC_FilterValue, 106, 11, 0, 0, // Skip to: 1276  | 
277  |  | /* 1265 */    MCD_OPC_CheckField, 13, 3, 0, 155, 5, 0, // Skip to: 2707  | 
278  |  | /* 1272 */    MCD_OPC_Decode, 218, 2, 2, // Opcode: EXTLH  | 
279  |  | /* 1276 */    MCD_OPC_FilterValue, 114, 11, 0, 0, // Skip to: 1292  | 
280  |  | /* 1281 */    MCD_OPC_CheckField, 13, 3, 0, 139, 5, 0, // Skip to: 2707  | 
281  |  | /* 1288 */    MCD_OPC_Decode, 173, 3, 2, // Opcode: MSKQH  | 
282  |  | /* 1292 */    MCD_OPC_FilterValue, 119, 11, 0, 0, // Skip to: 1308  | 
283  |  | /* 1297 */    MCD_OPC_CheckField, 13, 3, 0, 123, 5, 0, // Skip to: 2707  | 
284  |  | /* 1304 */    MCD_OPC_Decode, 130, 3, 2, // Opcode: INSQH  | 
285  |  | /* 1308 */    MCD_OPC_FilterValue, 122, 11, 0, 0, // Skip to: 1324  | 
286  |  | /* 1313 */    MCD_OPC_CheckField, 13, 3, 0, 107, 5, 0, // Skip to: 2707  | 
287  |  | /* 1320 */    MCD_OPC_Decode, 222, 2, 2, // Opcode: EXTQH  | 
288  |  | /* 1324 */    MCD_OPC_FilterValue, 130, 1, 4, 0, 0, // Skip to: 1334  | 
289  |  | /* 1330 */    MCD_OPC_Decode, 168, 3, 3, // Opcode: MSKBLi  | 
290  |  | /* 1334 */    MCD_OPC_FilterValue, 134, 1, 4, 0, 0, // Skip to: 1344  | 
291  |  | /* 1340 */    MCD_OPC_Decode, 217, 2, 3, // Opcode: EXTBLi  | 
292  |  | /* 1344 */    MCD_OPC_FilterValue, 139, 1, 4, 0, 0, // Skip to: 1354  | 
293  |  | /* 1350 */    MCD_OPC_Decode, 253, 2, 3, // Opcode: INSBLi  | 
294  |  | /* 1354 */    MCD_OPC_FilterValue, 146, 1, 4, 0, 0, // Skip to: 1364  | 
295  |  | /* 1360 */    MCD_OPC_Decode, 180, 3, 3, // Opcode: MSKWLi  | 
296  |  | /* 1364 */    MCD_OPC_FilterValue, 150, 1, 4, 0, 0, // Skip to: 1374  | 
297  |  | /* 1370 */    MCD_OPC_Decode, 229, 2, 3, // Opcode: EXTWLi  | 
298  |  | /* 1374 */    MCD_OPC_FilterValue, 155, 1, 4, 0, 0, // Skip to: 1384  | 
299  |  | /* 1380 */    MCD_OPC_Decode, 137, 3, 3, // Opcode: INSWLi  | 
300  |  | /* 1384 */    MCD_OPC_FilterValue, 162, 1, 4, 0, 0, // Skip to: 1394  | 
301  |  | /* 1390 */    MCD_OPC_Decode, 172, 3, 3, // Opcode: MSKLLi  | 
302  |  | /* 1394 */    MCD_OPC_FilterValue, 166, 1, 4, 0, 0, // Skip to: 1404  | 
303  |  | /* 1400 */    MCD_OPC_Decode, 221, 2, 3, // Opcode: EXTLLi  | 
304  |  | /* 1404 */    MCD_OPC_FilterValue, 171, 1, 4, 0, 0, // Skip to: 1414  | 
305  |  | /* 1410 */    MCD_OPC_Decode, 129, 3, 3, // Opcode: INSLLi  | 
306  |  | /* 1414 */    MCD_OPC_FilterValue, 177, 1, 4, 0, 0, // Skip to: 1424  | 
307  |  | /* 1420 */    MCD_OPC_Decode, 249, 3, 3, // Opcode: ZAPNOTi  | 
308  |  | /* 1424 */    MCD_OPC_FilterValue, 178, 1, 4, 0, 0, // Skip to: 1434  | 
309  |  | /* 1430 */    MCD_OPC_Decode, 176, 3, 3, // Opcode: MSKQLi  | 
310  |  | /* 1434 */    MCD_OPC_FilterValue, 180, 1, 4, 0, 0, // Skip to: 1444  | 
311  |  | /* 1440 */    MCD_OPC_Decode, 218, 3, 3, // Opcode: SRLi  | 
312  |  | /* 1444 */    MCD_OPC_FilterValue, 182, 1, 4, 0, 0, // Skip to: 1454  | 
313  |  | /* 1450 */    MCD_OPC_Decode, 225, 2, 3, // Opcode: EXTQLi  | 
314  |  | /* 1454 */    MCD_OPC_FilterValue, 185, 1, 4, 0, 0, // Skip to: 1464  | 
315  |  | /* 1460 */    MCD_OPC_Decode, 212, 3, 3, // Opcode: SLi  | 
316  |  | /* 1464 */    MCD_OPC_FilterValue, 187, 1, 4, 0, 0, // Skip to: 1474  | 
317  |  | /* 1470 */    MCD_OPC_Decode, 133, 3, 3, // Opcode: INSQLi  | 
318  |  | /* 1474 */    MCD_OPC_FilterValue, 188, 1, 4, 0, 0, // Skip to: 1484  | 
319  |  | /* 1480 */    MCD_OPC_Decode, 216, 3, 3, // Opcode: SRAi  | 
320  |  | /* 1484 */    MCD_OPC_FilterValue, 210, 1, 4, 0, 0, // Skip to: 1494  | 
321  |  | /* 1490 */    MCD_OPC_Decode, 178, 3, 3, // Opcode: MSKWHi  | 
322  |  | /* 1494 */    MCD_OPC_FilterValue, 215, 1, 4, 0, 0, // Skip to: 1504  | 
323  |  | /* 1500 */    MCD_OPC_Decode, 135, 3, 3, // Opcode: INSWHi  | 
324  |  | /* 1504 */    MCD_OPC_FilterValue, 218, 1, 4, 0, 0, // Skip to: 1514  | 
325  |  | /* 1510 */    MCD_OPC_Decode, 227, 2, 3, // Opcode: EXTWHi  | 
326  |  | /* 1514 */    MCD_OPC_FilterValue, 226, 1, 4, 0, 0, // Skip to: 1524  | 
327  |  | /* 1520 */    MCD_OPC_Decode, 170, 3, 3, // Opcode: MSKLHi  | 
328  |  | /* 1524 */    MCD_OPC_FilterValue, 231, 1, 4, 0, 0, // Skip to: 1534  | 
329  |  | /* 1530 */    MCD_OPC_Decode, 255, 2, 3, // Opcode: INSLHi  | 
330  |  | /* 1534 */    MCD_OPC_FilterValue, 234, 1, 4, 0, 0, // Skip to: 1544  | 
331  |  | /* 1540 */    MCD_OPC_Decode, 219, 2, 3, // Opcode: EXTLHi  | 
332  |  | /* 1544 */    MCD_OPC_FilterValue, 242, 1, 4, 0, 0, // Skip to: 1554  | 
333  |  | /* 1550 */    MCD_OPC_Decode, 174, 3, 3, // Opcode: MSKQHi  | 
334  |  | /* 1554 */    MCD_OPC_FilterValue, 247, 1, 4, 0, 0, // Skip to: 1564  | 
335  |  | /* 1560 */    MCD_OPC_Decode, 131, 3, 3, // Opcode: INSQHi  | 
336  |  | /* 1564 */    MCD_OPC_FilterValue, 250, 1, 113, 4, 0, // Skip to: 2707  | 
337  |  | /* 1570 */    MCD_OPC_Decode, 223, 2, 3, // Opcode: EXTQHi  | 
338  |  | /* 1574 */    MCD_OPC_FilterValue, 19, 81, 0, 0, // Skip to: 1660  | 
339  |  | /* 1579 */    MCD_OPC_ExtractField, 5, 8,  // Inst{12-5} ... | 
340  |  | /* 1582 */    MCD_OPC_FilterValue, 0, 11, 0, 0, // Skip to: 1598  | 
341  |  | /* 1587 */    MCD_OPC_CheckField, 13, 3, 0, 89, 4, 0, // Skip to: 2707  | 
342  |  | /* 1594 */    MCD_OPC_Decode, 182, 3, 2, // Opcode: MULLr  | 
343  |  | /* 1598 */    MCD_OPC_FilterValue, 32, 11, 0, 0, // Skip to: 1614  | 
344  |  | /* 1603 */    MCD_OPC_CheckField, 13, 3, 0, 73, 4, 0, // Skip to: 2707  | 
345  |  | /* 1610 */    MCD_OPC_Decode, 184, 3, 2, // Opcode: MULQr  | 
346  |  | /* 1614 */    MCD_OPC_FilterValue, 48, 11, 0, 0, // Skip to: 1630  | 
347  |  | /* 1619 */    MCD_OPC_CheckField, 13, 3, 0, 57, 4, 0, // Skip to: 2707  | 
348  |  | /* 1626 */    MCD_OPC_Decode, 243, 3, 2, // Opcode: UMULHr  | 
349  |  | /* 1630 */    MCD_OPC_FilterValue, 128, 1, 4, 0, 0, // Skip to: 1640  | 
350  |  | /* 1636 */    MCD_OPC_Decode, 181, 3, 3, // Opcode: MULLi  | 
351  |  | /* 1640 */    MCD_OPC_FilterValue, 160, 1, 4, 0, 0, // Skip to: 1650  | 
352  |  | /* 1646 */    MCD_OPC_Decode, 183, 3, 3, // Opcode: MULQi  | 
353  |  | /* 1650 */    MCD_OPC_FilterValue, 176, 1, 27, 4, 0, // Skip to: 2707  | 
354  |  | /* 1656 */    MCD_OPC_Decode, 242, 3, 3, // Opcode: UMULHi  | 
355  |  | /* 1660 */    MCD_OPC_FilterValue, 20, 69, 0, 0, // Skip to: 1734  | 
356  |  | /* 1665 */    MCD_OPC_ExtractField, 5, 11,  // Inst{15-5} ... | 
357  |  | /* 1668 */    MCD_OPC_FilterValue, 4, 11, 0, 0, // Skip to: 1684  | 
358  |  | /* 1673 */    MCD_OPC_CheckField, 16, 5, 31, 3, 4, 0, // Skip to: 2707  | 
359  |  | /* 1680 */    MCD_OPC_Decode, 138, 3, 6, // Opcode: ITOFS  | 
360  |  | /* 1684 */    MCD_OPC_FilterValue, 36, 11, 0, 0, // Skip to: 1700  | 
361  |  | /* 1689 */    MCD_OPC_CheckField, 16, 5, 31, 243, 3, 0, // Skip to: 2707  | 
362  |  | /* 1696 */    MCD_OPC_Decode, 139, 3, 7, // Opcode: ITOFT  | 
363  |  | /* 1700 */    MCD_OPC_FilterValue, 139, 11, 11, 0, 0, // Skip to: 1717  | 
364  |  | /* 1706 */    MCD_OPC_CheckField, 21, 5, 31, 226, 3, 0, // Skip to: 2707  | 
365  |  | /* 1713 */    MCD_OPC_Decode, 214, 3, 8, // Opcode: SQRTS  | 
366  |  | /* 1717 */    MCD_OPC_FilterValue, 171, 11, 216, 3, 0, // Skip to: 2707  | 
367  |  | /* 1723 */    MCD_OPC_CheckField, 21, 5, 31, 209, 3, 0, // Skip to: 2707  | 
368  |  | /* 1730 */    MCD_OPC_Decode, 215, 3, 9, // Opcode: SQRTT  | 
369  |  | /* 1734 */    MCD_OPC_FilterValue, 22, 208, 0, 0, // Skip to: 1947  | 
370  |  | /* 1739 */    MCD_OPC_ExtractField, 5, 11,  // Inst{15-5} ... | 
371  |  | /* 1742 */    MCD_OPC_FilterValue, 175, 10, 11, 0, 0, // Skip to: 1759  | 
372  |  | /* 1748 */    MCD_OPC_CheckField, 21, 5, 31, 184, 3, 0, // Skip to: 2707  | 
373  |  | /* 1755 */    MCD_OPC_Decode, 208, 2, 9, // Opcode: CVTTQ  | 
374  |  | /* 1759 */    MCD_OPC_FilterValue, 128, 11, 4, 0, 0, // Skip to: 1769  | 
375  |  | /* 1765 */    MCD_OPC_Decode, 139, 2, 10, // Opcode: ADDS  | 
376  |  | /* 1769 */    MCD_OPC_FilterValue, 129, 11, 4, 0, 0, // Skip to: 1779  | 
377  |  | /* 1775 */    MCD_OPC_Decode, 239, 3, 10, // Opcode: SUBS  | 
378  |  | /* 1779 */    MCD_OPC_FilterValue, 130, 11, 4, 0, 0, // Skip to: 1789  | 
379  |  | /* 1785 */    MCD_OPC_Decode, 185, 3, 10, // Opcode: MULS  | 
380  |  | /* 1789 */    MCD_OPC_FilterValue, 131, 11, 4, 0, 0, // Skip to: 1799  | 
381  |  | /* 1795 */    MCD_OPC_Decode, 210, 2, 10, // Opcode: DIVS  | 
382  |  | /* 1799 */    MCD_OPC_FilterValue, 160, 11, 4, 0, 0, // Skip to: 1809  | 
383  |  | /* 1805 */    MCD_OPC_Decode, 140, 2, 11, // Opcode: ADDT  | 
384  |  | /* 1809 */    MCD_OPC_FilterValue, 161, 11, 4, 0, 0, // Skip to: 1819  | 
385  |  | /* 1815 */    MCD_OPC_Decode, 240, 3, 11, // Opcode: SUBT  | 
386  |  | /* 1819 */    MCD_OPC_FilterValue, 162, 11, 4, 0, 0, // Skip to: 1829  | 
387  |  | /* 1825 */    MCD_OPC_Decode, 186, 3, 11, // Opcode: MULT  | 
388  |  | /* 1829 */    MCD_OPC_FilterValue, 163, 11, 4, 0, 0, // Skip to: 1839  | 
389  |  | /* 1835 */    MCD_OPC_Decode, 211, 2, 11, // Opcode: DIVT  | 
390  |  | /* 1839 */    MCD_OPC_FilterValue, 164, 11, 4, 0, 0, // Skip to: 1849  | 
391  |  | /* 1845 */    MCD_OPC_Decode, 184, 2, 11, // Opcode: CMPTUN  | 
392  |  | /* 1849 */    MCD_OPC_FilterValue, 165, 11, 4, 0, 0, // Skip to: 1859  | 
393  |  | /* 1855 */    MCD_OPC_Decode, 181, 2, 11, // Opcode: CMPTEQ  | 
394  |  | /* 1859 */    MCD_OPC_FilterValue, 166, 11, 4, 0, 0, // Skip to: 1869  | 
395  |  | /* 1865 */    MCD_OPC_Decode, 183, 2, 11, // Opcode: CMPTLT  | 
396  |  | /* 1869 */    MCD_OPC_FilterValue, 167, 11, 4, 0, 0, // Skip to: 1879  | 
397  |  | /* 1875 */    MCD_OPC_Decode, 182, 2, 11, // Opcode: CMPTLE  | 
398  |  | /* 1879 */    MCD_OPC_FilterValue, 172, 13, 11, 0, 0, // Skip to: 1896  | 
399  |  | /* 1885 */    MCD_OPC_CheckField, 21, 5, 31, 47, 3, 0, // Skip to: 2707  | 
400  |  | /* 1892 */    MCD_OPC_Decode, 207, 2, 12, // Opcode: CVTST  | 
401  |  | /* 1896 */    MCD_OPC_FilterValue, 172, 15, 11, 0, 0, // Skip to: 1913  | 
402  |  | /* 1902 */    MCD_OPC_CheckField, 21, 5, 31, 30, 3, 0, // Skip to: 2707  | 
403  |  | /* 1909 */    MCD_OPC_Decode, 209, 2, 13, // Opcode: CVTTS  | 
404  |  | /* 1913 */    MCD_OPC_FilterValue, 188, 15, 11, 0, 0, // Skip to: 1930  | 
405  |  | /* 1919 */    MCD_OPC_CheckField, 21, 5, 31, 13, 3, 0, // Skip to: 2707  | 
406  |  | /* 1926 */    MCD_OPC_Decode, 205, 2, 13, // Opcode: CVTQS  | 
407  |  | /* 1930 */    MCD_OPC_FilterValue, 190, 15, 3, 3, 0, // Skip to: 2707  | 
408  |  | /* 1936 */    MCD_OPC_CheckField, 21, 5, 31, 252, 2, 0, // Skip to: 2707  | 
409  |  | /* 1943 */    MCD_OPC_Decode, 206, 2, 9, // Opcode: CVTQT  | 
410  |  | /* 1947 */    MCD_OPC_FilterValue, 23, 84, 0, 0, // Skip to: 2036  | 
411  |  | /* 1952 */    MCD_OPC_ExtractField, 5, 11,  // Inst{15-5} ... | 
412  |  | /* 1955 */    MCD_OPC_FilterValue, 32, 4, 0, 0, // Skip to: 1964  | 
413  |  | /* 1960 */    MCD_OPC_Decode, 198, 2, 10, // Opcode: CPYSS  | 
414  |  | /* 1964 */    MCD_OPC_FilterValue, 33, 4, 0, 0, // Skip to: 1973  | 
415  |  | /* 1969 */    MCD_OPC_Decode, 196, 2, 11, // Opcode: CPYSNT  | 
416  |  | /* 1973 */    MCD_OPC_FilterValue, 34, 4, 0, 0, // Skip to: 1982  | 
417  |  | /* 1978 */    MCD_OPC_Decode, 191, 2, 10, // Opcode: CPYSES  | 
418  |  | /* 1982 */    MCD_OPC_FilterValue, 42, 4, 0, 0, // Skip to: 1991  | 
419  |  | /* 1987 */    MCD_OPC_Decode, 236, 2, 10, // Opcode: FCMOVEQS  | 
420  |  | /* 1991 */    MCD_OPC_FilterValue, 43, 4, 0, 0, // Skip to: 2000  | 
421  |  | /* 1996 */    MCD_OPC_Decode, 247, 2, 11, // Opcode: FCMOVNET  | 
422  |  | /* 2000 */    MCD_OPC_FilterValue, 44, 4, 0, 0, // Skip to: 2009  | 
423  |  | /* 2005 */    MCD_OPC_Decode, 244, 2, 10, // Opcode: FCMOVLTS  | 
424  |  | /* 2009 */    MCD_OPC_FilterValue, 45, 4, 0, 0, // Skip to: 2018  | 
425  |  | /* 2014 */    MCD_OPC_Decode, 238, 2, 10, // Opcode: FCMOVGES  | 
426  |  | /* 2018 */    MCD_OPC_FilterValue, 46, 4, 0, 0, // Skip to: 2027  | 
427  |  | /* 2023 */    MCD_OPC_Decode, 242, 2, 10, // Opcode: FCMOVLES  | 
428  |  | /* 2027 */    MCD_OPC_FilterValue, 47, 163, 2, 0, // Skip to: 2707  | 
429  |  | /* 2032 */    MCD_OPC_Decode, 240, 2, 10, // Opcode: FCMOVGTS  | 
430  |  | /* 2036 */    MCD_OPC_FilterValue, 24, 174, 0, 0, // Skip to: 2215  | 
431  |  | /* 2041 */    MCD_OPC_ExtractField, 0, 16,  // Inst{15-0} ... | 
432  |  | /* 2044 */    MCD_OPC_FilterValue, 0, 11, 0, 0, // Skip to: 2060  | 
433  |  | /* 2049 */    MCD_OPC_CheckField, 16, 10, 0, 139, 2, 0, // Skip to: 2707  | 
434  |  | /* 2056 */    MCD_OPC_Decode, 241, 3, 14, // Opcode: TRAPB  | 
435  |  | /* 2060 */    MCD_OPC_FilterValue, 128, 8, 11, 0, 0, // Skip to: 2077  | 
436  |  | /* 2066 */    MCD_OPC_CheckField, 16, 10, 0, 122, 2, 0, // Skip to: 2707  | 
437  |  | /* 2073 */    MCD_OPC_Decode, 215, 2, 14, // Opcode: EXCB  | 
438  |  | /* 2077 */    MCD_OPC_FilterValue, 128, 128, 1, 11, 0, 0, // Skip to: 2095  | 
439  |  | /* 2084 */    MCD_OPC_CheckField, 16, 10, 0, 104, 2, 0, // Skip to: 2707  | 
440  |  | /* 2091 */    MCD_OPC_Decode, 166, 3, 14, // Opcode: MB  | 
441  |  | /* 2095 */    MCD_OPC_FilterValue, 128, 136, 1, 11, 0, 0, // Skip to: 2113  | 
442  |  | /* 2102 */    MCD_OPC_CheckField, 16, 10, 0, 86, 2, 0, // Skip to: 2707  | 
443  |  | /* 2109 */    MCD_OPC_Decode, 246, 3, 14, // Opcode: WMB  | 
444  |  | /* 2113 */    MCD_OPC_FilterValue, 128, 128, 2, 4, 0, 0, // Skip to: 2124  | 
445  |  | /* 2120 */    MCD_OPC_Decode, 248, 2, 15, // Opcode: FETCH  | 
446  |  | /* 2124 */    MCD_OPC_FilterValue, 128, 192, 2, 4, 0, 0, // Skip to: 2135  | 
447  |  | /* 2131 */    MCD_OPC_Decode, 249, 2, 15, // Opcode: FETCH_M  | 
448  |  | /* 2135 */    MCD_OPC_FilterValue, 128, 128, 3, 4, 0, 0, // Skip to: 2146  | 
449  |  | /* 2142 */    MCD_OPC_Decode, 192, 3, 15, // Opcode: RPCC  | 
450  |  | /* 2146 */    MCD_OPC_FilterValue, 128, 192, 3, 11, 0, 0, // Skip to: 2164  | 
451  |  | /* 2153 */    MCD_OPC_CheckField, 16, 5, 0, 35, 2, 0, // Skip to: 2707  | 
452  |  | /* 2160 */    MCD_OPC_Decode, 189, 3, 16, // Opcode: RC  | 
453  |  | /* 2164 */    MCD_OPC_FilterValue, 128, 208, 3, 4, 0, 0, // Skip to: 2175  | 
454  |  | /* 2171 */    MCD_OPC_Decode, 212, 2, 15, // Opcode: ECB  | 
455  |  | /* 2175 */    MCD_OPC_FilterValue, 128, 224, 3, 11, 0, 0, // Skip to: 2193  | 
456  |  | /* 2182 */    MCD_OPC_CheckField, 16, 5, 0, 6, 2, 0, // Skip to: 2707  | 
457  |  | /* 2189 */    MCD_OPC_Decode, 193, 3, 16, // Opcode: RS  | 
458  |  | /* 2193 */    MCD_OPC_FilterValue, 128, 240, 3, 4, 0, 0, // Skip to: 2204  | 
459  |  | /* 2200 */    MCD_OPC_Decode, 244, 3, 15, // Opcode: WH64  | 
460  |  | /* 2204 */    MCD_OPC_FilterValue, 128, 248, 3, 240, 1, 0, // Skip to: 2707  | 
461  |  | /* 2211 */    MCD_OPC_Decode, 245, 3, 15, // Opcode: WH64EN  | 
462  |  | /* 2215 */    MCD_OPC_FilterValue, 26, 101, 0, 0, // Skip to: 2321  | 
463  |  | /* 2220 */    MCD_OPC_ExtractField, 14, 2,  // Inst{15-14} ... | 
464  |  | /* 2223 */    MCD_OPC_FilterValue, 0, 18, 0, 0, // Skip to: 2246  | 
465  |  | /* 2228 */    MCD_OPC_CheckField, 21, 5, 31, 216, 1, 0, // Skip to: 2707  | 
466  |  | /* 2235 */    MCD_OPC_CheckField, 0, 14, 0, 209, 1, 0, // Skip to: 2707  | 
467  |  | /* 2242 */    MCD_OPC_Decode, 140, 3, 17, // Opcode: JMP  | 
468  |  | /* 2246 */    MCD_OPC_FilterValue, 1, 37, 0, 0, // Skip to: 2288  | 
469  |  | /* 2251 */    MCD_OPC_ExtractField, 16, 10,  // Inst{25-16} ... | 
470  |  | /* 2254 */    MCD_OPC_FilterValue, 251, 5, 11, 0, 0, // Skip to: 2271  | 
471  |  | /* 2260 */    MCD_OPC_CheckField, 0, 14, 0, 184, 1, 0, // Skip to: 2707  | 
472  |  | /* 2267 */    MCD_OPC_Decode, 143, 3, 14, // Opcode: JSRs  | 
473  |  | /* 2271 */    MCD_OPC_FilterValue, 219, 6, 174, 1, 0, // Skip to: 2707  | 
474  |  | /* 2277 */    MCD_OPC_CheckField, 0, 14, 0, 167, 1, 0, // Skip to: 2707  | 
475  |  | /* 2284 */    MCD_OPC_Decode, 141, 3, 14, // Opcode: JSR  | 
476  |  | /* 2288 */    MCD_OPC_FilterValue, 2, 19, 0, 0, // Skip to: 2312  | 
477  |  | /* 2293 */    MCD_OPC_CheckField, 16, 10, 250, 7, 150, 1, 0, // Skip to: 2707  | 
478  |  | /* 2301 */    MCD_OPC_CheckField, 0, 14, 1, 143, 1, 0, // Skip to: 2707  | 
479  |  | /* 2308 */    MCD_OPC_Decode, 190, 3, 14, // Opcode: RETDAG  | 
480  |  | /* 2312 */    MCD_OPC_FilterValue, 3, 134, 1, 0, // Skip to: 2707  | 
481  |  | /* 2317 */    MCD_OPC_Decode, 142, 3, 18, // Opcode: JSR_COROUTINE  | 
482  |  | /* 2321 */    MCD_OPC_FilterValue, 28, 115, 0, 0, // Skip to: 2441  | 
483  |  | /* 2326 */    MCD_OPC_ExtractField, 5, 11,  // Inst{15-5} ... | 
484  |  | /* 2329 */    MCD_OPC_FilterValue, 0, 11, 0, 0, // Skip to: 2345  | 
485  |  | /* 2334 */    MCD_OPC_CheckField, 21, 5, 31, 110, 1, 0, // Skip to: 2707  | 
486  |  | /* 2341 */    MCD_OPC_Decode, 210, 3, 19, // Opcode: SEXTB  | 
487  |  | /* 2345 */    MCD_OPC_FilterValue, 1, 11, 0, 0, // Skip to: 2361  | 
488  |  | /* 2350 */    MCD_OPC_CheckField, 21, 5, 31, 94, 1, 0, // Skip to: 2707  | 
489  |  | /* 2357 */    MCD_OPC_Decode, 211, 3, 19, // Opcode: SEXTW  | 
490  |  | /* 2361 */    MCD_OPC_FilterValue, 48, 11, 0, 0, // Skip to: 2377  | 
491  |  | /* 2366 */    MCD_OPC_CheckField, 21, 5, 31, 78, 1, 0, // Skip to: 2707  | 
492  |  | /* 2373 */    MCD_OPC_Decode, 203, 2, 19, // Opcode: CTPOP  | 
493  |  | /* 2377 */    MCD_OPC_FilterValue, 50, 11, 0, 0, // Skip to: 2393  | 
494  |  | /* 2382 */    MCD_OPC_CheckField, 21, 5, 31, 62, 1, 0, // Skip to: 2707  | 
495  |  | /* 2389 */    MCD_OPC_Decode, 202, 2, 19, // Opcode: CTLZ  | 
496  |  | /* 2393 */    MCD_OPC_FilterValue, 51, 11, 0, 0, // Skip to: 2409  | 
497  |  | /* 2398 */    MCD_OPC_CheckField, 21, 5, 31, 46, 1, 0, // Skip to: 2707  | 
498  |  | /* 2405 */    MCD_OPC_Decode, 204, 2, 19, // Opcode: CTTZ  | 
499  |  | /* 2409 */    MCD_OPC_FilterValue, 112, 11, 0, 0, // Skip to: 2425  | 
500  |  | /* 2414 */    MCD_OPC_CheckField, 16, 5, 31, 30, 1, 0, // Skip to: 2707  | 
501  |  | /* 2421 */    MCD_OPC_Decode, 251, 2, 20, // Opcode: FTOIT  | 
502  |  | /* 2425 */    MCD_OPC_FilterValue, 120, 21, 1, 0, // Skip to: 2707  | 
503  |  | /* 2430 */    MCD_OPC_CheckField, 16, 5, 31, 14, 1, 0, // Skip to: 2707  | 
504  |  | /* 2437 */    MCD_OPC_Decode, 250, 2, 21, // Opcode: FTOIS  | 
505  |  | /* 2441 */    MCD_OPC_FilterValue, 34, 4, 0, 0, // Skip to: 2450  | 
506  |  | /* 2446 */    MCD_OPC_Decode, 160, 3, 22, // Opcode: LDS  | 
507  |  | /* 2450 */    MCD_OPC_FilterValue, 35, 4, 0, 0, // Skip to: 2459  | 
508  |  | /* 2455 */    MCD_OPC_Decode, 162, 3, 23, // Opcode: LDT  | 
509  |  | /* 2459 */    MCD_OPC_FilterValue, 38, 4, 0, 0, // Skip to: 2468  | 
510  |  | /* 2464 */    MCD_OPC_Decode, 229, 3, 22, // Opcode: STS  | 
511  |  | /* 2468 */    MCD_OPC_FilterValue, 39, 4, 0, 0, // Skip to: 2477  | 
512  |  | /* 2473 */    MCD_OPC_Decode, 231, 3, 23, // Opcode: STT  | 
513  |  | /* 2477 */    MCD_OPC_FilterValue, 40, 4, 0, 0, // Skip to: 2486  | 
514  |  | /* 2482 */    MCD_OPC_Decode, 152, 3, 1, // Opcode: LDL  | 
515  |  | /* 2486 */    MCD_OPC_FilterValue, 41, 4, 0, 0, // Skip to: 2495  | 
516  |  | /* 2491 */    MCD_OPC_Decode, 155, 3, 1, // Opcode: LDQ  | 
517  |  | /* 2495 */    MCD_OPC_FilterValue, 42, 4, 0, 0, // Skip to: 2504  | 
518  |  | /* 2500 */    MCD_OPC_Decode, 153, 3, 1, // Opcode: LDL_L  | 
519  |  | /* 2504 */    MCD_OPC_FilterValue, 43, 4, 0, 0, // Skip to: 2513  | 
520  |  | /* 2509 */    MCD_OPC_Decode, 156, 3, 1, // Opcode: LDQ_L  | 
521  |  | /* 2513 */    MCD_OPC_FilterValue, 44, 4, 0, 0, // Skip to: 2522  | 
522  |  | /* 2518 */    MCD_OPC_Decode, 222, 3, 1, // Opcode: STL  | 
523  |  | /* 2522 */    MCD_OPC_FilterValue, 45, 4, 0, 0, // Skip to: 2531  | 
524  |  | /* 2527 */    MCD_OPC_Decode, 225, 3, 1, // Opcode: STQ  | 
525  |  | /* 2531 */    MCD_OPC_FilterValue, 46, 4, 0, 0, // Skip to: 2540  | 
526  |  | /* 2536 */    MCD_OPC_Decode, 223, 3, 24, // Opcode: STL_C  | 
527  |  | /* 2540 */    MCD_OPC_FilterValue, 47, 4, 0, 0, // Skip to: 2549  | 
528  |  | /* 2545 */    MCD_OPC_Decode, 226, 3, 24, // Opcode: STQ_C  | 
529  |  | /* 2549 */    MCD_OPC_FilterValue, 48, 11, 0, 0, // Skip to: 2565  | 
530  |  | /* 2554 */    MCD_OPC_CheckField, 21, 5, 31, 146, 0, 0, // Skip to: 2707  | 
531  |  | /* 2561 */    MCD_OPC_Decode, 155, 2, 25, // Opcode: BR  | 
532  |  | /* 2565 */    MCD_OPC_FilterValue, 49, 4, 0, 0, // Skip to: 2574  | 
533  |  | /* 2570 */    MCD_OPC_Decode, 230, 2, 26, // Opcode: FBEQ  | 
534  |  | /* 2574 */    MCD_OPC_FilterValue, 50, 4, 0, 0, // Skip to: 2583  | 
535  |  | /* 2579 */    MCD_OPC_Decode, 234, 2, 26, // Opcode: FBLT  | 
536  |  | /* 2583 */    MCD_OPC_FilterValue, 51, 4, 0, 0, // Skip to: 2592  | 
537  |  | /* 2588 */    MCD_OPC_Decode, 233, 2, 26, // Opcode: FBLE  | 
538  |  | /* 2592 */    MCD_OPC_FilterValue, 52, 11, 0, 0, // Skip to: 2608  | 
539  |  | /* 2597 */    MCD_OPC_CheckField, 21, 5, 26, 103, 0, 0, // Skip to: 2707  | 
540  |  | /* 2604 */    MCD_OPC_Decode, 156, 2, 25, // Opcode: BSR  | 
541  |  | /* 2608 */    MCD_OPC_FilterValue, 53, 4, 0, 0, // Skip to: 2617  | 
542  |  | /* 2613 */    MCD_OPC_Decode, 235, 2, 26, // Opcode: FBNE  | 
543  |  | /* 2617 */    MCD_OPC_FilterValue, 54, 4, 0, 0, // Skip to: 2626  | 
544  |  | /* 2622 */    MCD_OPC_Decode, 231, 2, 26, // Opcode: FBGE  | 
545  |  | /* 2626 */    MCD_OPC_FilterValue, 55, 4, 0, 0, // Skip to: 2635  | 
546  |  | /* 2631 */    MCD_OPC_Decode, 232, 2, 26, // Opcode: FBGT  | 
547  |  | /* 2635 */    MCD_OPC_FilterValue, 56, 4, 0, 0, // Skip to: 2644  | 
548  |  | /* 2640 */    MCD_OPC_Decode, 150, 2, 27, // Opcode: BLBC  | 
549  |  | /* 2644 */    MCD_OPC_FilterValue, 57, 4, 0, 0, // Skip to: 2653  | 
550  |  | /* 2649 */    MCD_OPC_Decode, 143, 2, 27, // Opcode: BEQ  | 
551  |  | /* 2653 */    MCD_OPC_FilterValue, 58, 4, 0, 0, // Skip to: 2662  | 
552  |  | /* 2658 */    MCD_OPC_Decode, 153, 2, 27, // Opcode: BLT  | 
553  |  | /* 2662 */    MCD_OPC_FilterValue, 59, 4, 0, 0, // Skip to: 2671  | 
554  |  | /* 2667 */    MCD_OPC_Decode, 152, 2, 27, // Opcode: BLE  | 
555  |  | /* 2671 */    MCD_OPC_FilterValue, 60, 4, 0, 0, // Skip to: 2680  | 
556  |  | /* 2676 */    MCD_OPC_Decode, 151, 2, 27, // Opcode: BLBS  | 
557  |  | /* 2680 */    MCD_OPC_FilterValue, 61, 4, 0, 0, // Skip to: 2689  | 
558  |  | /* 2685 */    MCD_OPC_Decode, 154, 2, 27, // Opcode: BNE  | 
559  |  | /* 2689 */    MCD_OPC_FilterValue, 62, 4, 0, 0, // Skip to: 2698  | 
560  |  | /* 2694 */    MCD_OPC_Decode, 144, 2, 27, // Opcode: BGE  | 
561  |  | /* 2698 */    MCD_OPC_FilterValue, 63, 4, 0, 0, // Skip to: 2707  | 
562  |  | /* 2703 */    MCD_OPC_Decode, 145, 2, 27, // Opcode: BGT  | 
563  |  | /* 2707 */    MCD_OPC_Fail,  | 
564  |  |   0  | 
565  |  | };  | 
566  |  |  | 
567  |  | static const uint8_t DecoderTableCondBranchF32[] = { | 
568  |  | /* 0 */       MCD_OPC_CheckField, 26, 6, 0, 4, 0, 0, // Skip to: 11  | 
569  |  | /* 7 */       MCD_OPC_Decode, 189, 2, 28, // Opcode: COND_BRANCH_F  | 
570  |  | /* 11 */      MCD_OPC_Fail,  | 
571  |  |   0  | 
572  |  | };  | 
573  |  |  | 
574  |  | static const uint8_t DecoderTableCpys32[] = { | 
575  |  | /* 0 */       MCD_OPC_ExtractField, 5, 11,  // Inst{15-5} ... | 
576  |  | /* 3 */       MCD_OPC_FilterValue, 32, 11, 0, 0, // Skip to: 19  | 
577  |  | /* 8 */       MCD_OPC_CheckField, 26, 6, 23, 36, 0, 0, // Skip to: 51  | 
578  |  | /* 15 */      MCD_OPC_Decode, 199, 2, 29, // Opcode: CPYSSt  | 
579  |  | /* 19 */      MCD_OPC_FilterValue, 33, 11, 0, 0, // Skip to: 35  | 
580  |  | /* 24 */      MCD_OPC_CheckField, 26, 6, 23, 20, 0, 0, // Skip to: 51  | 
581  |  | /* 31 */      MCD_OPC_Decode, 195, 2, 29, // Opcode: CPYSNSt  | 
582  |  | /* 35 */      MCD_OPC_FilterValue, 34, 11, 0, 0, // Skip to: 51  | 
583  |  | /* 40 */      MCD_OPC_CheckField, 26, 6, 23, 4, 0, 0, // Skip to: 51  | 
584  |  | /* 47 */      MCD_OPC_Decode, 192, 2, 29, // Opcode: CPYSESt  | 
585  |  | /* 51 */      MCD_OPC_Fail,  | 
586  |  |   0  | 
587  |  | };  | 
588  |  |  | 
589  |  | static const uint8_t DecoderTableCpysET32[] = { | 
590  |  | /* 0 */       MCD_OPC_CheckField, 26, 6, 23, 11, 0, 0, // Skip to: 18  | 
591  |  | /* 7 */       MCD_OPC_CheckField, 5, 11, 34, 4, 0, 0, // Skip to: 18  | 
592  |  | /* 14 */      MCD_OPC_Decode, 193, 2, 11, // Opcode: CPYSET  | 
593  |  | /* 18 */      MCD_OPC_Fail,  | 
594  |  |   0  | 
595  |  | };  | 
596  |  |  | 
597  |  | static const uint8_t DecoderTableCpysNS32[] = { | 
598  |  | /* 0 */       MCD_OPC_CheckField, 26, 6, 23, 11, 0, 0, // Skip to: 18  | 
599  |  | /* 7 */       MCD_OPC_CheckField, 5, 11, 33, 4, 0, 0, // Skip to: 18  | 
600  |  | /* 14 */      MCD_OPC_Decode, 194, 2, 10, // Opcode: CPYSNS  | 
601  |  | /* 18 */      MCD_OPC_Fail,  | 
602  |  |   0  | 
603  |  | };  | 
604  |  |  | 
605  |  | static const uint8_t DecoderTableCpysT32[] = { | 
606  |  | /* 0 */       MCD_OPC_CheckField, 26, 6, 23, 11, 0, 0, // Skip to: 18  | 
607  |  | /* 7 */       MCD_OPC_CheckField, 5, 11, 32, 4, 0, 0, // Skip to: 18  | 
608  |  | /* 14 */      MCD_OPC_Decode, 200, 2, 11, // Opcode: CPYST  | 
609  |  | /* 18 */      MCD_OPC_Fail,  | 
610  |  |   0  | 
611  |  | };  | 
612  |  |  | 
613  |  | static const uint8_t DecoderTableCpysTs32[] = { | 
614  |  | /* 0 */       MCD_OPC_ExtractField, 5, 11,  // Inst{15-5} ... | 
615  |  | /* 3 */       MCD_OPC_FilterValue, 32, 11, 0, 0, // Skip to: 19  | 
616  |  | /* 8 */       MCD_OPC_CheckField, 26, 6, 23, 20, 0, 0, // Skip to: 35  | 
617  |  | /* 15 */      MCD_OPC_Decode, 201, 2, 30, // Opcode: CPYSTs  | 
618  |  | /* 19 */      MCD_OPC_FilterValue, 33, 11, 0, 0, // Skip to: 35  | 
619  |  | /* 24 */      MCD_OPC_CheckField, 26, 6, 23, 4, 0, 0, // Skip to: 35  | 
620  |  | /* 31 */      MCD_OPC_Decode, 197, 2, 30, // Opcode: CPYSNTs  | 
621  |  | /* 35 */      MCD_OPC_Fail,  | 
622  |  |   0  | 
623  |  | };  | 
624  |  |  | 
625  |  | static const uint8_t DecoderTableFcmov32[] = { | 
626  |  | /* 0 */       MCD_OPC_ExtractField, 5, 11,  // Inst{15-5} ... | 
627  |  | /* 3 */       MCD_OPC_FilterValue, 42, 11, 0, 0, // Skip to: 19  | 
628  |  | /* 8 */       MCD_OPC_CheckField, 26, 6, 23, 84, 0, 0, // Skip to: 99  | 
629  |  | /* 15 */      MCD_OPC_Decode, 237, 2, 11, // Opcode: FCMOVEQT  | 
630  |  | /* 19 */      MCD_OPC_FilterValue, 43, 11, 0, 0, // Skip to: 35  | 
631  |  | /* 24 */      MCD_OPC_CheckField, 26, 6, 23, 68, 0, 0, // Skip to: 99  | 
632  |  | /* 31 */      MCD_OPC_Decode, 246, 2, 10, // Opcode: FCMOVNES  | 
633  |  | /* 35 */      MCD_OPC_FilterValue, 44, 11, 0, 0, // Skip to: 51  | 
634  |  | /* 40 */      MCD_OPC_CheckField, 26, 6, 23, 52, 0, 0, // Skip to: 99  | 
635  |  | /* 47 */      MCD_OPC_Decode, 245, 2, 11, // Opcode: FCMOVLTT  | 
636  |  | /* 51 */      MCD_OPC_FilterValue, 45, 11, 0, 0, // Skip to: 67  | 
637  |  | /* 56 */      MCD_OPC_CheckField, 26, 6, 23, 36, 0, 0, // Skip to: 99  | 
638  |  | /* 63 */      MCD_OPC_Decode, 239, 2, 11, // Opcode: FCMOVGET  | 
639  |  | /* 67 */      MCD_OPC_FilterValue, 46, 11, 0, 0, // Skip to: 83  | 
640  |  | /* 72 */      MCD_OPC_CheckField, 26, 6, 23, 20, 0, 0, // Skip to: 99  | 
641  |  | /* 79 */      MCD_OPC_Decode, 243, 2, 11, // Opcode: FCMOVLET  | 
642  |  | /* 83 */      MCD_OPC_FilterValue, 47, 11, 0, 0, // Skip to: 99  | 
643  |  | /* 88 */      MCD_OPC_CheckField, 26, 6, 23, 4, 0, 0, // Skip to: 99  | 
644  |  | /* 95 */      MCD_OPC_Decode, 241, 2, 11, // Opcode: FCMOVGTT  | 
645  |  | /* 99 */      MCD_OPC_Fail,  | 
646  |  |   0  | 
647  |  | };  | 
648  |  |  | 
649  |  | static const uint8_t DecoderTableLDg32[] = { | 
650  |  | /* 0 */       MCD_OPC_ExtractField, 26, 6,  // Inst{31-26} ... | 
651  |  | /* 3 */       MCD_OPC_FilterValue, 8, 4, 0, 0, // Skip to: 12  | 
652  |  | /* 8 */       MCD_OPC_Decode, 148, 3, 1, // Opcode: LDAg  | 
653  |  | /* 12 */      MCD_OPC_FilterValue, 9, 4, 0, 0, // Skip to: 21  | 
654  |  | /* 17 */      MCD_OPC_Decode, 146, 3, 1, // Opcode: LDAHg  | 
655  |  | /* 21 */      MCD_OPC_Fail,  | 
656  |  |   0  | 
657  |  | };  | 
658  |  |  | 
659  |  | static const uint8_t DecoderTableLDl32[] = { | 
660  |  | /* 0 */       MCD_OPC_CheckField, 26, 6, 41, 4, 0, 0, // Skip to: 11  | 
661  |  | /* 7 */       MCD_OPC_Decode, 158, 3, 1, // Opcode: LDQl  | 
662  |  | /* 11 */      MCD_OPC_Fail,  | 
663  |  |   0  | 
664  |  | };  | 
665  |  |  | 
666  |  | static const uint8_t DecoderTableLDr32[] = { | 
667  |  | /* 0 */       MCD_OPC_ExtractField, 26, 6,  // Inst{31-26} ... | 
668  |  | /* 3 */       MCD_OPC_FilterValue, 8, 4, 0, 0, // Skip to: 12  | 
669  |  | /* 8 */       MCD_OPC_Decode, 149, 3, 1, // Opcode: LDAr  | 
670  |  | /* 12 */      MCD_OPC_FilterValue, 9, 4, 0, 0, // Skip to: 21  | 
671  |  | /* 17 */      MCD_OPC_Decode, 147, 3, 1, // Opcode: LDAHr  | 
672  |  | /* 21 */      MCD_OPC_FilterValue, 10, 4, 0, 0, // Skip to: 30  | 
673  |  | /* 26 */      MCD_OPC_Decode, 151, 3, 1, // Opcode: LDBUr  | 
674  |  | /* 30 */      MCD_OPC_FilterValue, 12, 4, 0, 0, // Skip to: 39  | 
675  |  | /* 35 */      MCD_OPC_Decode, 165, 3, 1, // Opcode: LDWUr  | 
676  |  | /* 39 */      MCD_OPC_FilterValue, 34, 4, 0, 0, // Skip to: 48  | 
677  |  | /* 44 */      MCD_OPC_Decode, 161, 3, 22, // Opcode: LDSr  | 
678  |  | /* 48 */      MCD_OPC_FilterValue, 35, 4, 0, 0, // Skip to: 57  | 
679  |  | /* 53 */      MCD_OPC_Decode, 163, 3, 23, // Opcode: LDTr  | 
680  |  | /* 57 */      MCD_OPC_FilterValue, 40, 4, 0, 0, // Skip to: 66  | 
681  |  | /* 62 */      MCD_OPC_Decode, 154, 3, 1, // Opcode: LDLr  | 
682  |  | /* 66 */      MCD_OPC_FilterValue, 41, 4, 0, 0, // Skip to: 75  | 
683  |  | /* 71 */      MCD_OPC_Decode, 159, 3, 1, // Opcode: LDQr  | 
684  |  | /* 75 */      MCD_OPC_Fail,  | 
685  |  |   0  | 
686  |  | };  | 
687  |  |  | 
688  |  | static const uint8_t DecoderTableRet32[] = { | 
689  |  | /* 0 */       MCD_OPC_CheckField, 0, 32, 129, 128, 234, 223, 6, 4, 0, 0, // Skip to: 15  | 
690  |  | /* 11 */      MCD_OPC_Decode, 191, 3, 14, // Opcode: RETDAGp  | 
691  |  | /* 15 */      MCD_OPC_Fail,  | 
692  |  |   0  | 
693  |  | };  | 
694  |  |  | 
695  |  | static const uint8_t DecoderTableSTr32[] = { | 
696  |  | /* 0 */       MCD_OPC_ExtractField, 26, 6,  // Inst{31-26} ... | 
697  |  | /* 3 */       MCD_OPC_FilterValue, 13, 4, 0, 0, // Skip to: 12  | 
698  |  | /* 8 */       MCD_OPC_Decode, 234, 3, 1, // Opcode: STWr  | 
699  |  | /* 12 */      MCD_OPC_FilterValue, 14, 4, 0, 0, // Skip to: 21  | 
700  |  | /* 17 */      MCD_OPC_Decode, 221, 3, 1, // Opcode: STBr  | 
701  |  | /* 21 */      MCD_OPC_FilterValue, 38, 4, 0, 0, // Skip to: 30  | 
702  |  | /* 26 */      MCD_OPC_Decode, 230, 3, 22, // Opcode: STSr  | 
703  |  | /* 30 */      MCD_OPC_FilterValue, 39, 4, 0, 0, // Skip to: 39  | 
704  |  | /* 35 */      MCD_OPC_Decode, 232, 3, 23, // Opcode: STTr  | 
705  |  | /* 39 */      MCD_OPC_FilterValue, 44, 4, 0, 0, // Skip to: 48  | 
706  |  | /* 44 */      MCD_OPC_Decode, 224, 3, 1, // Opcode: STLr  | 
707  |  | /* 48 */      MCD_OPC_FilterValue, 45, 4, 0, 0, // Skip to: 57  | 
708  |  | /* 53 */      MCD_OPC_Decode, 228, 3, 1, // Opcode: STQr  | 
709  |  | /* 57 */      MCD_OPC_Fail,  | 
710  |  |   0  | 
711  |  | };  | 
712  |  |  | 
713  | 0  | static bool checkDecoderPredicate(MCInst *Inst, unsigned Idx) { | 
714  |  |   /* llvm_unreachable("Invalid index!"); */ | 
715  | 0  |   return false;  | 
716  | 0  | }  | 
717  |  |  | 
718  |  | #define DecodeToMCInst(fname, fieldname, InsnType) \  | 
719  |  | static DecodeStatus fname(DecodeStatus S, unsigned Idx, InsnType insn, MCInst *MI, \  | 
720  | 0  |     uint64_t Address, const void *Decoder, bool *DecodeComplete) \  | 
721  | 0  | { \ | 
722  | 0  |   *DecodeComplete = true; \  | 
723  | 0  |   InsnType tmp; \  | 
724  | 0  |   switch (Idx) { \ | 
725  | 0  |   default: /* llvm_unreachable("Invalid index!"); */ \ | 
726  | 0  |   case 0: \  | 
727  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
728  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
729  | 0  |     tmp = fieldname(insn, 0, 21); \  | 
730  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
731  | 0  |     return S; \  | 
732  | 0  |   case 1: \  | 
733  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
734  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
735  | 0  |     tmp = fieldname(insn, 0, 16); \  | 
736  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
737  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
738  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
739  | 0  |     return S; \  | 
740  | 0  |   case 2: \  | 
741  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
742  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
743  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
744  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
745  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
746  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
747  | 0  |     return S; \  | 
748  | 0  |   case 3: \  | 
749  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
750  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
751  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
752  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
753  | 0  |     tmp = fieldname(insn, 13, 8); \  | 
754  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
755  | 0  |     return S; \  | 
756  | 0  |   case 4: \  | 
757  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
758  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
759  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
760  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
761  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
762  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
763  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
764  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
765  | 0  |     return S; \  | 
766  | 0  |   case 5: \  | 
767  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
768  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
769  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
770  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
771  | 0  |     tmp = fieldname(insn, 13, 8); \  | 
772  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
773  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
774  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
775  | 0  |     return S; \  | 
776  | 0  |   case 6: \  | 
777  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
778  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
779  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
780  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
781  | 0  |     return S; \  | 
782  | 0  |   case 7: \  | 
783  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
784  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
785  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
786  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
787  | 0  |     return S; \  | 
788  | 0  |   case 8: \  | 
789  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
790  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
791  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
792  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
793  | 0  |     return S; \  | 
794  | 0  |   case 9: \  | 
795  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
796  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
797  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
798  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
799  | 0  |     return S; \  | 
800  | 0  |   case 10: \  | 
801  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
802  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
803  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
804  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
805  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
806  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
807  | 0  |     return S; \  | 
808  | 0  |   case 11: \  | 
809  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
810  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
811  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
812  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
813  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
814  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
815  | 0  |     return S; \  | 
816  | 0  |   case 12: \  | 
817  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
818  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
819  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
820  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
821  | 0  |     return S; \  | 
822  | 0  |   case 13: \  | 
823  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
824  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
825  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
826  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
827  | 0  |     return S; \  | 
828  | 0  |   case 14: \  | 
829  | 0  |     return S; \  | 
830  | 0  |   case 15: \  | 
831  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
832  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
833  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
834  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
835  | 0  |     return S; \  | 
836  | 0  |   case 16: \  | 
837  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
838  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
839  | 0  |     return S; \  | 
840  | 0  |   case 17: \  | 
841  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
842  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
843  | 0  |     return S; \  | 
844  | 0  |   case 18: \  | 
845  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
846  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
847  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
848  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
849  | 0  |     tmp = fieldname(insn, 0, 14); \  | 
850  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
851  | 0  |     return S; \  | 
852  | 0  |   case 19: \  | 
853  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
854  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
855  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
856  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
857  | 0  |     return S; \  | 
858  | 0  |   case 20: \  | 
859  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
860  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
861  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
862  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
863  | 0  |     return S; \  | 
864  | 0  |   case 21: \  | 
865  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
866  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
867  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
868  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
869  | 0  |     return S; \  | 
870  | 0  |   case 22: \  | 
871  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
872  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
873  | 0  |     tmp = fieldname(insn, 0, 16); \  | 
874  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
875  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
876  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
877  | 0  |     return S; \  | 
878  | 0  |   case 23: \  | 
879  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
880  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
881  | 0  |     tmp = fieldname(insn, 0, 16); \  | 
882  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
883  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
884  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
885  | 0  |     return S; \  | 
886  | 0  |   case 24: \  | 
887  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
888  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
889  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
890  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
891  | 0  |     tmp = fieldname(insn, 0, 16); \  | 
892  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
893  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
894  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
895  | 0  |     return S; \  | 
896  | 0  |   case 25: \  | 
897  | 0  |     tmp = fieldname(insn, 0, 21); \  | 
898  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
899  | 0  |     return S; \  | 
900  | 0  |   case 26: \  | 
901  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
902  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
903  | 0  |     tmp = fieldname(insn, 0, 21); \  | 
904  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
905  | 0  |     return S; \  | 
906  | 0  |   case 27: \  | 
907  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
908  | 0  |     if (DecodeGPRCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
909  | 0  |     tmp = fieldname(insn, 0, 21); \  | 
910  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
911  | 0  |     return S; \  | 
912  | 0  |   case 28: \  | 
913  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
914  | 0  |     MCOperand_CreateImm0(MI, tmp); \  | 
915  | 0  |     tmp = fieldname(insn, 0, 21); \  | 
916  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
917  | 0  |     return S; \  | 
918  | 0  |   case 29: \  | 
919  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
920  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
921  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
922  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
923  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
924  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
925  | 0  |     return S; \  | 
926  | 0  |   case 30: \  | 
927  | 0  |     tmp = fieldname(insn, 0, 5); \  | 
928  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
929  | 0  |     tmp = fieldname(insn, 21, 5); \  | 
930  | 0  |     if (DecodeF4RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
931  | 0  |     tmp = fieldname(insn, 16, 5); \  | 
932  | 0  |     if (DecodeF8RCRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) { return MCDisassembler_Fail; } \ | 
933  | 0  |     return S; \  | 
934  | 0  |   } \  | 
935  | 0  | }  | 
936  |  |  | 
937  |  | #define DecodeInstruction(fname, fieldname, decoder, InsnType) \  | 
938  |  | static DecodeStatus fname(const uint8_t DecodeTable[], MCInst *MI, \  | 
939  | 0  |                                       InsnType insn, uint64_t Address, const void *Decoder) { \ | 
940  | 0  |   const uint8_t *Ptr = DecodeTable; \  | 
941  | 0  |   uint64_t CurFieldValue = 0; \  | 
942  | 0  |   DecodeStatus S = MCDisassembler_Success; \  | 
943  | 0  |   while (true) { \ | 
944  | 0  |     switch (*Ptr) { \ | 
945  | 0  |     default: \  | 
946  | 0  |       return MCDisassembler_Fail; \  | 
947  | 0  |     case MCD_OPC_ExtractField: { \ | 
948  | 0  |       unsigned Start = *++Ptr; \  | 
949  | 0  |       unsigned Len = *++Ptr; \  | 
950  | 0  |       ++Ptr; \  | 
951  | 0  |       CurFieldValue = fieldname(insn, Start, Len); \  | 
952  | 0  |       break; \  | 
953  | 0  |     } \  | 
954  | 0  |     case MCD_OPC_FilterValue: { \ | 
955  | 0  |       /* Decode the field value. */ \  | 
956  | 0  |       unsigned Len; \  | 
957  | 0  |       uint64_t Val = decodeULEB128(++Ptr, &Len); \  | 
958  | 0  |       Ptr += Len; \  | 
959  | 0  |       /* NumToSkip is a plain 24-bit integer. */ \  | 
960  | 0  |       unsigned NumToSkip = *Ptr++; \  | 
961  | 0  |       NumToSkip |= (*Ptr++) << 8; \  | 
962  | 0  |       NumToSkip |= (*Ptr++) << 16; \  | 
963  | 0  |       /* Perform the filter operation. */ \  | 
964  | 0  |       if (Val != CurFieldValue) \  | 
965  | 0  |         Ptr += NumToSkip; \  | 
966  | 0  |       break; \  | 
967  | 0  |     } \  | 
968  | 0  |     case MCD_OPC_CheckField: { \ | 
969  | 0  |       unsigned Start = *++Ptr; \  | 
970  | 0  |       unsigned Len = *++Ptr; \  | 
971  | 0  |       uint64_t FieldValue = fieldname(insn, Start, Len); \  | 
972  | 0  |       /* Decode the field value. */ \  | 
973  | 0  |       unsigned PtrLen = 0; \  | 
974  | 0  |       uint64_t ExpectedValue = decodeULEB128(++Ptr, &PtrLen); \  | 
975  | 0  |       Ptr += PtrLen; \  | 
976  | 0  |       /* NumToSkip is a plain 24-bit integer. */ \  | 
977  | 0  |       unsigned NumToSkip = *Ptr++; \  | 
978  | 0  |       NumToSkip |= (*Ptr++) << 8; \  | 
979  | 0  |       NumToSkip |= (*Ptr++) << 16; \  | 
980  | 0  |       /* If the actual and expected values don't match, skip. */ \  | 
981  | 0  |       if (ExpectedValue != FieldValue) \  | 
982  | 0  |         Ptr += NumToSkip; \  | 
983  | 0  |       break; \  | 
984  | 0  |     } \  | 
985  | 0  |     case MCD_OPC_CheckPredicate: { \ | 
986  | 0  |       unsigned Len; \  | 
987  | 0  |       /* Decode the Predicate Index value. */ \  | 
988  | 0  |       unsigned PIdx = decodeULEB128(++Ptr, &Len); \  | 
989  | 0  |       Ptr += Len; \  | 
990  | 0  |       /* NumToSkip is a plain 24-bit integer. */ \  | 
991  | 0  |       unsigned NumToSkip = *Ptr++; \  | 
992  | 0  |       NumToSkip |= (*Ptr++) << 8; \  | 
993  | 0  |       NumToSkip |= (*Ptr++) << 16; \  | 
994  | 0  |       /* Check the predicate. */ \  | 
995  | 0  |       bool Pred = checkDecoderPredicate(MI, PIdx); \  | 
996  | 0  |       if (!Pred) \  | 
997  | 0  |         Ptr += NumToSkip; \  | 
998  | 0  |       break; \  | 
999  | 0  |     } \  | 
1000  | 0  |     case MCD_OPC_Decode: { \ | 
1001  | 0  |       unsigned Len; \  | 
1002  | 0  |       /* Decode the Opcode value. */ \  | 
1003  | 0  |       unsigned Opc = decodeULEB128(++Ptr, &Len); \  | 
1004  | 0  |       Ptr += Len; \  | 
1005  | 0  |       unsigned DecodeIdx = decodeULEB128(Ptr, &Len); \  | 
1006  | 0  |       Ptr += Len; \  | 
1007  | 0  |       MCInst_clear(MI); \  | 
1008  | 0  |       MCInst_setOpcode(MI, Opc); \  | 
1009  | 0  |       bool DecodeComplete; \  | 
1010  | 0  |       S = decoder(S, DecodeIdx, insn, MI, Address, Decoder, &DecodeComplete); \  | 
1011  | 0  |       return S; \  | 
1012  | 0  |     } \  | 
1013  | 0  |     case MCD_OPC_TryDecode: { \ | 
1014  | 0  |       unsigned Len; \  | 
1015  | 0  |       /* Decode the Opcode value. */ \  | 
1016  | 0  |       unsigned Opc = decodeULEB128(++Ptr, &Len); \  | 
1017  | 0  |       Ptr += Len; \  | 
1018  | 0  |       unsigned DecodeIdx = decodeULEB128(Ptr, &Len); \  | 
1019  | 0  |       Ptr += Len; \  | 
1020  | 0  |       /* NumToSkip is a plain 24-bit integer. */ \  | 
1021  | 0  |       unsigned NumToSkip = *Ptr++; \  | 
1022  | 0  |       NumToSkip |= (*Ptr++) << 8; \  | 
1023  | 0  |       NumToSkip |= (*Ptr++) << 16; \  | 
1024  | 0  |       /* Perform the decode operation. */ \  | 
1025  | 0  |       MCInst_setOpcode(MI, Opc); \  | 
1026  | 0  |       bool DecodeComplete; \  | 
1027  | 0  |       S = decoder(S, DecodeIdx, insn, MI, Address, Decoder, &DecodeComplete); \  | 
1028  | 0  |       if (DecodeComplete) { \ | 
1029  | 0  |         /* Decoding complete. */ \  | 
1030  | 0  |         return S; \  | 
1031  | 0  |       } else { \ | 
1032  | 0  |         /* If the decoding was incomplete, skip. */ \  | 
1033  | 0  |         Ptr += NumToSkip; \  | 
1034  | 0  |         /* Reset decode status. This also drops a SoftFail status that could be */ \  | 
1035  | 0  |         /* set before the decode attempt. */ \  | 
1036  | 0  |         S = MCDisassembler_Success; \  | 
1037  | 0  |       } \  | 
1038  | 0  |       break; \  | 
1039  | 0  |     } \  | 
1040  | 0  |     case MCD_OPC_SoftFail: { \ | 
1041  | 0  |       /* Decode the mask values. */ \  | 
1042  | 0  |       unsigned Len; \  | 
1043  | 0  |       uint64_t PositiveMask = decodeULEB128(++Ptr, &Len); \  | 
1044  | 0  |       Ptr += Len; \  | 
1045  | 0  |       uint64_t NegativeMask = decodeULEB128(Ptr, &Len); \  | 
1046  | 0  |       Ptr += Len; \  | 
1047  | 0  |       bool Fail = (insn & PositiveMask) != 0 || (~insn & NegativeMask) != 0; \  | 
1048  | 0  |       if (Fail) \  | 
1049  | 0  |         S = MCDisassembler_SoftFail; \  | 
1050  | 0  |       break; \  | 
1051  | 0  |     } \  | 
1052  | 0  |     case MCD_OPC_Fail: { \ | 
1053  | 0  |       return MCDisassembler_Fail; \  | 
1054  | 0  |     } \  | 
1055  | 0  |     } \  | 
1056  | 0  |   } \  | 
1057  | 0  |   /* Bogisity detected in disassembler state machine! */ \  | 
1058  | 0  | }  | 
1059  |  |  | 
1060  |  | FieldFromInstruction(fieldFromInstruction_4, uint32_t)  | 
1061  | 0  | DecodeToMCInst(decodeToMCInst_4, fieldFromInstruction_4, uint32_t)  | 
1062  |  | DecodeInstruction(decodeInstruction_4, fieldFromInstruction_4, decodeToMCInst_4, uint32_t)  |