1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* Machine Code Emitter *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* *|
7\*===----------------------------------------------------------------------===*/
8
9uint64_t PPCMCCodeEmitter::getBinaryCodeForInstr(const MCInst &MI,
10 SmallVectorImpl<MCFixup> &Fixups,
11 const MCSubtargetInfo &STI) const {
12 static const uint64_t InstBits[] = {
13 UINT64_C(2080375316), // ADD4
14 UINT64_C(2080376340), // ADD4O
15 UINT64_C(2080376341), // ADD4O_rec
16 UINT64_C(2080375316), // ADD4TLS
17 UINT64_C(2080375317), // ADD4_rec
18 UINT64_C(2080375316), // ADD8
19 UINT64_C(2080376340), // ADD8O
20 UINT64_C(2080376341), // ADD8O_rec
21 UINT64_C(2080375316), // ADD8TLS
22 UINT64_C(2080375316), // ADD8TLS_
23 UINT64_C(2080375317), // ADD8_rec
24 UINT64_C(2080374804), // ADDC
25 UINT64_C(2080374804), // ADDC8
26 UINT64_C(2080375828), // ADDC8O
27 UINT64_C(2080375829), // ADDC8O_rec
28 UINT64_C(2080374805), // ADDC8_rec
29 UINT64_C(2080375828), // ADDCO
30 UINT64_C(2080375829), // ADDCO_rec
31 UINT64_C(2080374805), // ADDC_rec
32 UINT64_C(2080375060), // ADDE
33 UINT64_C(2080375060), // ADDE8
34 UINT64_C(2080376084), // ADDE8O
35 UINT64_C(2080376085), // ADDE8O_rec
36 UINT64_C(2080375061), // ADDE8_rec
37 UINT64_C(2080376084), // ADDEO
38 UINT64_C(2080376085), // ADDEO_rec
39 UINT64_C(2080375124), // ADDEX
40 UINT64_C(2080375124), // ADDEX8
41 UINT64_C(2080375061), // ADDE_rec
42 UINT64_C(2080374932), // ADDG6S
43 UINT64_C(2080374932), // ADDG6S8
44 UINT64_C(939524096), // ADDI
45 UINT64_C(939524096), // ADDI8
46 UINT64_C(805306368), // ADDIC
47 UINT64_C(805306368), // ADDIC8
48 UINT64_C(872415232), // ADDIC_rec
49 UINT64_C(1006632960), // ADDIS
50 UINT64_C(1006632960), // ADDIS8
51 UINT64_C(0), // ADDISdtprelHA
52 UINT64_C(0), // ADDISdtprelHA32
53 UINT64_C(0), // ADDISgotTprelHA
54 UINT64_C(0), // ADDIStlsgdHA
55 UINT64_C(0), // ADDIStlsldHA
56 UINT64_C(0), // ADDIStocHA
57 UINT64_C(0), // ADDIStocHA8
58 UINT64_C(0), // ADDIdtprelL
59 UINT64_C(0), // ADDIdtprelL32
60 UINT64_C(0), // ADDItlsgdL
61 UINT64_C(0), // ADDItlsgdL32
62 UINT64_C(0), // ADDItlsgdLADDR
63 UINT64_C(0), // ADDItlsgdLADDR32
64 UINT64_C(0), // ADDItlsldL
65 UINT64_C(0), // ADDItlsldL32
66 UINT64_C(0), // ADDItlsldLADDR
67 UINT64_C(0), // ADDItlsldLADDR32
68 UINT64_C(0), // ADDItoc
69 UINT64_C(0), // ADDItoc8
70 UINT64_C(0), // ADDItocL
71 UINT64_C(0), // ADDItocL8
72 UINT64_C(2080375252), // ADDME
73 UINT64_C(2080375252), // ADDME8
74 UINT64_C(2080376276), // ADDME8O
75 UINT64_C(2080376277), // ADDME8O_rec
76 UINT64_C(2080375253), // ADDME8_rec
77 UINT64_C(2080376276), // ADDMEO
78 UINT64_C(2080376277), // ADDMEO_rec
79 UINT64_C(2080375253), // ADDME_rec
80 UINT64_C(1275068420), // ADDPCIS
81 UINT64_C(2080375188), // ADDZE
82 UINT64_C(2080375188), // ADDZE8
83 UINT64_C(2080376212), // ADDZE8O
84 UINT64_C(2080376213), // ADDZE8O_rec
85 UINT64_C(2080375189), // ADDZE8_rec
86 UINT64_C(2080376212), // ADDZEO
87 UINT64_C(2080376213), // ADDZEO_rec
88 UINT64_C(2080375189), // ADDZE_rec
89 UINT64_C(0), // ADJCALLSTACKDOWN
90 UINT64_C(0), // ADJCALLSTACKUP
91 UINT64_C(2080374840), // AND
92 UINT64_C(2080374840), // AND8
93 UINT64_C(2080374841), // AND8_rec
94 UINT64_C(2080374904), // ANDC
95 UINT64_C(2080374904), // ANDC8
96 UINT64_C(2080374905), // ANDC8_rec
97 UINT64_C(2080374905), // ANDC_rec
98 UINT64_C(1879048192), // ANDI8_rec
99 UINT64_C(1946157056), // ANDIS8_rec
100 UINT64_C(1946157056), // ANDIS_rec
101 UINT64_C(1879048192), // ANDI_rec
102 UINT64_C(0), // ANDI_rec_1_EQ_BIT
103 UINT64_C(0), // ANDI_rec_1_EQ_BIT8
104 UINT64_C(0), // ANDI_rec_1_GT_BIT
105 UINT64_C(0), // ANDI_rec_1_GT_BIT8
106 UINT64_C(2080374841), // AND_rec
107 UINT64_C(0), // ATOMIC_CMP_SWAP_I16
108 UINT64_C(0), // ATOMIC_CMP_SWAP_I32
109 UINT64_C(0), // ATOMIC_CMP_SWAP_I64
110 UINT64_C(0), // ATOMIC_CMP_SWAP_I8
111 UINT64_C(0), // ATOMIC_LOAD_ADD
112 UINT64_C(0), // ATOMIC_LOAD_ADD_I64
113 UINT64_C(0), // ATOMIC_LOAD_ADD_NOWP
114 UINT64_C(0), // ATOMIC_LOAD_AND
115 UINT64_C(0), // ATOMIC_LOAD_AND_I64
116 UINT64_C(0), // ATOMIC_LOAD_AND_NOWP
117 UINT64_C(0), // ATOMIC_LOAD_MAX
118 UINT64_C(0), // ATOMIC_LOAD_MAX_I64
119 UINT64_C(0), // ATOMIC_LOAD_MAX_NOWP
120 UINT64_C(0), // ATOMIC_LOAD_MIN
121 UINT64_C(0), // ATOMIC_LOAD_MIN_I64
122 UINT64_C(0), // ATOMIC_LOAD_MIN_NOWP
123 UINT64_C(0), // ATOMIC_LOAD_NAND
124 UINT64_C(0), // ATOMIC_LOAD_NAND_I64
125 UINT64_C(0), // ATOMIC_LOAD_NAND_NOWP
126 UINT64_C(0), // ATOMIC_LOAD_OR
127 UINT64_C(0), // ATOMIC_LOAD_OR_I64
128 UINT64_C(0), // ATOMIC_LOAD_OR_NOWP
129 UINT64_C(0), // ATOMIC_LOAD_SUB
130 UINT64_C(0), // ATOMIC_LOAD_SUB_I64
131 UINT64_C(0), // ATOMIC_LOAD_SUB_NOWP
132 UINT64_C(0), // ATOMIC_LOAD_UMAX
133 UINT64_C(0), // ATOMIC_LOAD_UMAX_I64
134 UINT64_C(0), // ATOMIC_LOAD_UMAX_NOWP
135 UINT64_C(0), // ATOMIC_LOAD_UMIN
136 UINT64_C(0), // ATOMIC_LOAD_UMIN_I64
137 UINT64_C(0), // ATOMIC_LOAD_UMIN_NOWP
138 UINT64_C(0), // ATOMIC_LOAD_XOR
139 UINT64_C(0), // ATOMIC_LOAD_XOR_I64
140 UINT64_C(0), // ATOMIC_LOAD_XOR_NOWP
141 UINT64_C(0), // ATOMIC_SWAP
142 UINT64_C(0), // ATOMIC_SWAP_I64
143 UINT64_C(0), // ATOMIC_SWAP_NOWP
144 UINT64_C(512), // ATTN
145 UINT64_C(1207959552), // B
146 UINT64_C(1207959554), // BA
147 UINT64_C(1098907648), // BC
148 UINT64_C(1073741824), // BCC
149 UINT64_C(1073741826), // BCCA
150 UINT64_C(1275069472), // BCCCTR
151 UINT64_C(1275069472), // BCCCTR8
152 UINT64_C(1275069473), // BCCCTRL
153 UINT64_C(1275069473), // BCCCTRL8
154 UINT64_C(1073741825), // BCCL
155 UINT64_C(1073741827), // BCCLA
156 UINT64_C(1275068448), // BCCLR
157 UINT64_C(1275068449), // BCCLRL
158 UINT64_C(1300235296), // BCCTR
159 UINT64_C(1300235296), // BCCTR8
160 UINT64_C(1283458080), // BCCTR8n
161 UINT64_C(1300235297), // BCCTRL
162 UINT64_C(1300235297), // BCCTRL8
163 UINT64_C(1283458081), // BCCTRL8n
164 UINT64_C(1283458081), // BCCTRLn
165 UINT64_C(1283458080), // BCCTRn
166 UINT64_C(268436481), // BCDADD_rec
167 UINT64_C(268895617), // BCDCFN_rec
168 UINT64_C(268567937), // BCDCFSQ_rec
169 UINT64_C(268830081), // BCDCFZ_rec
170 UINT64_C(268436289), // BCDCPSGN_rec
171 UINT64_C(268764545), // BCDCTN_rec
172 UINT64_C(268436865), // BCDCTSQ_rec
173 UINT64_C(268699009), // BCDCTZ_rec
174 UINT64_C(270468481), // BCDSETSGN_rec
175 UINT64_C(268436929), // BCDSR_rec
176 UINT64_C(268436545), // BCDSUB_rec
177 UINT64_C(268436673), // BCDS_rec
178 UINT64_C(268436737), // BCDTRUNC_rec
179 UINT64_C(268436609), // BCDUS_rec
180 UINT64_C(268436801), // BCDUTRUNC_rec
181 UINT64_C(1098907649), // BCL
182 UINT64_C(1300234272), // BCLR
183 UINT64_C(1300234273), // BCLRL
184 UINT64_C(1283457057), // BCLRLn
185 UINT64_C(1283457056), // BCLRn
186 UINT64_C(1117716481), // BCLalways
187 UINT64_C(1082130433), // BCLn
188 UINT64_C(1317012512), // BCTR
189 UINT64_C(1317012512), // BCTR8
190 UINT64_C(1317012513), // BCTRL
191 UINT64_C(1317012513), // BCTRL8
192 UINT64_C(5656525675654283264), // BCTRL8_LDinto_toc
193 UINT64_C(5656525675654283264), // BCTRL8_LDinto_toc_RM
194 UINT64_C(1317012513), // BCTRL8_RM
195 UINT64_C(5656525673909452800), // BCTRL_LWZinto_toc
196 UINT64_C(5656525673909452800), // BCTRL_LWZinto_toc_RM
197 UINT64_C(1317012513), // BCTRL_RM
198 UINT64_C(1082130432), // BCn
199 UINT64_C(1107296256), // BDNZ
200 UINT64_C(1107296256), // BDNZ8
201 UINT64_C(1107296258), // BDNZA
202 UINT64_C(1124073474), // BDNZAm
203 UINT64_C(1126170626), // BDNZAp
204 UINT64_C(1107296257), // BDNZL
205 UINT64_C(1107296259), // BDNZLA
206 UINT64_C(1124073475), // BDNZLAm
207 UINT64_C(1126170627), // BDNZLAp
208 UINT64_C(1308622880), // BDNZLR
209 UINT64_C(1308622880), // BDNZLR8
210 UINT64_C(1308622881), // BDNZLRL
211 UINT64_C(1325400097), // BDNZLRLm
212 UINT64_C(1327497249), // BDNZLRLp
213 UINT64_C(1325400096), // BDNZLRm
214 UINT64_C(1327497248), // BDNZLRp
215 UINT64_C(1124073473), // BDNZLm
216 UINT64_C(1126170625), // BDNZLp
217 UINT64_C(1124073472), // BDNZm
218 UINT64_C(1126170624), // BDNZp
219 UINT64_C(1111490560), // BDZ
220 UINT64_C(1111490560), // BDZ8
221 UINT64_C(1111490562), // BDZA
222 UINT64_C(1128267778), // BDZAm
223 UINT64_C(1130364930), // BDZAp
224 UINT64_C(1111490561), // BDZL
225 UINT64_C(1111490563), // BDZLA
226 UINT64_C(1128267779), // BDZLAm
227 UINT64_C(1130364931), // BDZLAp
228 UINT64_C(1312817184), // BDZLR
229 UINT64_C(1312817184), // BDZLR8
230 UINT64_C(1312817185), // BDZLRL
231 UINT64_C(1329594401), // BDZLRLm
232 UINT64_C(1331691553), // BDZLRLp
233 UINT64_C(1329594400), // BDZLRm
234 UINT64_C(1331691552), // BDZLRp
235 UINT64_C(1128267777), // BDZLm
236 UINT64_C(1130364929), // BDZLp
237 UINT64_C(1128267776), // BDZm
238 UINT64_C(1130364928), // BDZp
239 UINT64_C(1207959553), // BL
240 UINT64_C(1207959553), // BL8
241 UINT64_C(5188146778922352680), // BL8_LDinto_toc
242 UINT64_C(5188146778922352680), // BL8_LDinto_toc_RM
243 UINT64_C(5188146776636391424), // BL8_NOP
244 UINT64_C(5188146776636391424), // BL8_NOP_RM
245 UINT64_C(5188146776636391424), // BL8_NOP_TLS
246 UINT64_C(1207959553), // BL8_NOTOC
247 UINT64_C(1207959553), // BL8_NOTOC_RM
248 UINT64_C(1207959553), // BL8_NOTOC_TLS
249 UINT64_C(1207959553), // BL8_RM
250 UINT64_C(1207959553), // BL8_TLS
251 UINT64_C(1207959553), // BL8_TLS_
252 UINT64_C(1207959555), // BLA
253 UINT64_C(1207959555), // BLA8
254 UINT64_C(5188146785226326016), // BLA8_NOP
255 UINT64_C(5188146785226326016), // BLA8_NOP_RM
256 UINT64_C(1207959555), // BLA8_RM
257 UINT64_C(1207959555), // BLA_RM
258 UINT64_C(1317011488), // BLR
259 UINT64_C(1317011488), // BLR8
260 UINT64_C(1317011489), // BLRL
261 UINT64_C(5188146777177522196), // BL_LWZinto_toc
262 UINT64_C(5188146777177522196), // BL_LWZinto_toc_RM
263 UINT64_C(5188146776636391424), // BL_NOP
264 UINT64_C(5188146776636391424), // BL_NOP_RM
265 UINT64_C(1207959553), // BL_RM
266 UINT64_C(1207959553), // BL_TLS
267 UINT64_C(2080375288), // BPERMD
268 UINT64_C(2080375158), // BRD
269 UINT64_C(2080375222), // BRH
270 UINT64_C(2080375222), // BRH8
271 UINT64_C(268435983), // BRINC
272 UINT64_C(2080375094), // BRW
273 UINT64_C(2080375094), // BRW8
274 UINT64_C(2080375412), // CBCDTD
275 UINT64_C(2080375412), // CBCDTD8
276 UINT64_C(2080375348), // CDTBCD
277 UINT64_C(2080375348), // CDTBCD8
278 UINT64_C(2080375224), // CFUGED
279 UINT64_C(2080375644), // CLRBHRB
280 UINT64_C(2080375800), // CMPB
281 UINT64_C(2080375800), // CMPB8
282 UINT64_C(2082471936), // CMPD
283 UINT64_C(740294656), // CMPDI
284 UINT64_C(2080375232), // CMPEQB
285 UINT64_C(2082472000), // CMPLD
286 UINT64_C(673185792), // CMPLDI
287 UINT64_C(2080374848), // CMPLW
288 UINT64_C(671088640), // CMPLWI
289 UINT64_C(2080375168), // CMPRB
290 UINT64_C(2080375168), // CMPRB8
291 UINT64_C(2080374784), // CMPW
292 UINT64_C(738197504), // CMPWI
293 UINT64_C(2080374900), // CNTLZD
294 UINT64_C(2080374902), // CNTLZDM
295 UINT64_C(2080374901), // CNTLZD_rec
296 UINT64_C(2080374836), // CNTLZW
297 UINT64_C(2080374836), // CNTLZW8
298 UINT64_C(2080374837), // CNTLZW8_rec
299 UINT64_C(2080374837), // CNTLZW_rec
300 UINT64_C(2080375924), // CNTTZD
301 UINT64_C(2080375926), // CNTTZDM
302 UINT64_C(2080375925), // CNTTZD_rec
303 UINT64_C(2080375860), // CNTTZW
304 UINT64_C(2080375860), // CNTTZW8
305 UINT64_C(2080375861), // CNTTZW8_rec
306 UINT64_C(2080375861), // CNTTZW_rec
307 UINT64_C(2080376460), // CP_ABORT
308 UINT64_C(2082473484), // CP_COPY
309 UINT64_C(2082473484), // CP_COPY8
310 UINT64_C(2080376589), // CP_PASTE8_rec
311 UINT64_C(2080376589), // CP_PASTE_rec
312 UINT64_C(1288057410), // CR6SET
313 UINT64_C(1288057218), // CR6UNSET
314 UINT64_C(1275068930), // CRAND
315 UINT64_C(1275068674), // CRANDC
316 UINT64_C(1275068994), // CREQV
317 UINT64_C(1275068866), // CRNAND
318 UINT64_C(1275068482), // CRNOR
319 UINT64_C(1275068482), // CRNOT
320 UINT64_C(1275069314), // CROR
321 UINT64_C(1275069250), // CRORC
322 UINT64_C(1275068994), // CRSET
323 UINT64_C(1275068802), // CRUNSET
324 UINT64_C(1275068802), // CRXOR
325 UINT64_C(1073741824), // CTRL_DEP
326 UINT64_C(3959422980), // DADD
327 UINT64_C(4227858436), // DADDQ
328 UINT64_C(4227858437), // DADDQ_rec
329 UINT64_C(3959422981), // DADD_rec
330 UINT64_C(2080376294), // DARN
331 UINT64_C(2080376300), // DCBA
332 UINT64_C(2080374956), // DCBF
333 UINT64_C(2080375038), // DCBFEP
334 UINT64_C(2080375724), // DCBI
335 UINT64_C(2080374892), // DCBST
336 UINT64_C(2080374910), // DCBSTEP
337 UINT64_C(2080375340), // DCBT
338 UINT64_C(2080375422), // DCBTEP
339 UINT64_C(2080375276), // DCBTST
340 UINT64_C(2080375294), // DCBTSTEP
341 UINT64_C(2080376812), // DCBZ
342 UINT64_C(2080376830), // DCBZEP
343 UINT64_C(2082473964), // DCBZL
344 UINT64_C(2082473982), // DCBZLEP
345 UINT64_C(2080375692), // DCCCI
346 UINT64_C(3959424580), // DCFFIX
347 UINT64_C(4227860036), // DCFFIXQ
348 UINT64_C(4227860420), // DCFFIXQQ
349 UINT64_C(4227860037), // DCFFIXQ_rec
350 UINT64_C(3959424581), // DCFFIX_rec
351 UINT64_C(3959423236), // DCMPO
352 UINT64_C(4227858692), // DCMPOQ
353 UINT64_C(3959424260), // DCMPU
354 UINT64_C(4227859716), // DCMPUQ
355 UINT64_C(3959423492), // DCTDP
356 UINT64_C(3959423493), // DCTDP_rec
357 UINT64_C(3959423556), // DCTFIX
358 UINT64_C(4227859012), // DCTFIXQ
359 UINT64_C(4227925956), // DCTFIXQQ
360 UINT64_C(4227859013), // DCTFIXQ_rec
361 UINT64_C(3959423557), // DCTFIX_rec
362 UINT64_C(4227858948), // DCTQPQ
363 UINT64_C(4227858949), // DCTQPQ_rec
364 UINT64_C(3959423620), // DDEDPD
365 UINT64_C(4227859076), // DDEDPDQ
366 UINT64_C(4227859077), // DDEDPDQ_rec
367 UINT64_C(3959423621), // DDEDPD_rec
368 UINT64_C(3959424068), // DDIV
369 UINT64_C(4227859524), // DDIVQ
370 UINT64_C(4227859525), // DDIVQ_rec
371 UINT64_C(3959424069), // DDIV_rec
372 UINT64_C(3959424644), // DENBCD
373 UINT64_C(4227860100), // DENBCDQ
374 UINT64_C(4227860101), // DENBCDQ_rec
375 UINT64_C(3959424645), // DENBCD_rec
376 UINT64_C(3959424708), // DIEX
377 UINT64_C(4227860164), // DIEXQ
378 UINT64_C(4227860165), // DIEXQ_rec
379 UINT64_C(3959424709), // DIEX_rec
380 UINT64_C(2080375762), // DIVD
381 UINT64_C(2080375634), // DIVDE
382 UINT64_C(2080376658), // DIVDEO
383 UINT64_C(2080376659), // DIVDEO_rec
384 UINT64_C(2080375570), // DIVDEU
385 UINT64_C(2080376594), // DIVDEUO
386 UINT64_C(2080376595), // DIVDEUO_rec
387 UINT64_C(2080375571), // DIVDEU_rec
388 UINT64_C(2080375635), // DIVDE_rec
389 UINT64_C(2080376786), // DIVDO
390 UINT64_C(2080376787), // DIVDO_rec
391 UINT64_C(2080375698), // DIVDU
392 UINT64_C(2080376722), // DIVDUO
393 UINT64_C(2080376723), // DIVDUO_rec
394 UINT64_C(2080375699), // DIVDU_rec
395 UINT64_C(2080375763), // DIVD_rec
396 UINT64_C(2080375766), // DIVW
397 UINT64_C(2080375638), // DIVWE
398 UINT64_C(2080376662), // DIVWEO
399 UINT64_C(2080376663), // DIVWEO_rec
400 UINT64_C(2080375574), // DIVWEU
401 UINT64_C(2080376598), // DIVWEUO
402 UINT64_C(2080376599), // DIVWEUO_rec
403 UINT64_C(2080375575), // DIVWEU_rec
404 UINT64_C(2080375639), // DIVWE_rec
405 UINT64_C(2080376790), // DIVWO
406 UINT64_C(2080376791), // DIVWO_rec
407 UINT64_C(2080375702), // DIVWU
408 UINT64_C(2080376726), // DIVWUO
409 UINT64_C(2080376727), // DIVWUO_rec
410 UINT64_C(2080375703), // DIVWU_rec
411 UINT64_C(2080375767), // DIVW_rec
412 UINT64_C(2080768354), // DMMR
413 UINT64_C(2080506210), // DMSETDMRZ
414 UINT64_C(2081292642), // DMSHA2HASH
415 UINT64_C(2081358178), // DMSHA3HASH
416 UINT64_C(3959423044), // DMUL
417 UINT64_C(4227858500), // DMULQ
418 UINT64_C(4227858501), // DMULQ_rec
419 UINT64_C(3959423045), // DMUL_rec
420 UINT64_C(2080833890), // DMXOR
421 UINT64_C(3959423704), // DMXVBF16GERX2
422 UINT64_C(3959424848), // DMXVBF16GERX2NN
423 UINT64_C(3959423896), // DMXVBF16GERX2NP
424 UINT64_C(3959424408), // DMXVBF16GERX2PN
425 UINT64_C(3959423568), // DMXVBF16GERX2PP
426 UINT64_C(3959423512), // DMXVF16GERX2
427 UINT64_C(3959424592), // DMXVF16GERX2NN
428 UINT64_C(3959423640), // DMXVF16GERX2NP
429 UINT64_C(3959424152), // DMXVF16GERX2PN
430 UINT64_C(3959423504), // DMXVF16GERX2PP
431 UINT64_C(3959423064), // DMXVI8GERX4
432 UINT64_C(3959423056), // DMXVI8GERX4PP
433 UINT64_C(3959423760), // DMXVI8GERX4SPP
434 UINT64_C(4026533776), // DMXXEXTFDMR256
435 UINT64_C(4026533648), // DMXXEXTFDMR512
436 UINT64_C(4026599184), // DMXXEXTFDMR512_HI
437 UINT64_C(4026533780), // DMXXINSTDMR256
438 UINT64_C(4026533712), // DMXXINSTDMR512
439 UINT64_C(4026599248), // DMXXINSTDMR512_HI
440 UINT64_C(2080571746), // DMXXSETACCZ
441 UINT64_C(4026533524), // DMXXSHAPAD
442 UINT64_C(3959422982), // DQUA
443 UINT64_C(3959423110), // DQUAI
444 UINT64_C(4227858566), // DQUAIQ
445 UINT64_C(4227858567), // DQUAIQ_rec
446 UINT64_C(3959423111), // DQUAI_rec
447 UINT64_C(4227858438), // DQUAQ
448 UINT64_C(4227858439), // DQUAQ_rec
449 UINT64_C(3959422983), // DQUA_rec
450 UINT64_C(4227859972), // DRDPQ
451 UINT64_C(4227859973), // DRDPQ_rec
452 UINT64_C(3959423430), // DRINTN
453 UINT64_C(4227858886), // DRINTNQ
454 UINT64_C(4227858887), // DRINTNQ_rec
455 UINT64_C(3959423431), // DRINTN_rec
456 UINT64_C(3959423174), // DRINTX
457 UINT64_C(4227858630), // DRINTXQ
458 UINT64_C(4227858631), // DRINTXQ_rec
459 UINT64_C(3959423175), // DRINTX_rec
460 UINT64_C(3959423046), // DRRND
461 UINT64_C(4227858502), // DRRNDQ
462 UINT64_C(4227858503), // DRRNDQ_rec
463 UINT64_C(3959423047), // DRRND_rec
464 UINT64_C(3959424516), // DRSP
465 UINT64_C(3959424517), // DRSP_rec
466 UINT64_C(3959423108), // DSCLI
467 UINT64_C(4227858564), // DSCLIQ
468 UINT64_C(4227858565), // DSCLIQ_rec
469 UINT64_C(3959423109), // DSCLI_rec
470 UINT64_C(3959423172), // DSCRI
471 UINT64_C(4227858628), // DSCRIQ
472 UINT64_C(4227858629), // DSCRIQ_rec
473 UINT64_C(3959423173), // DSCRI_rec
474 UINT64_C(2080376428), // DSS
475 UINT64_C(2113930860), // DSSALL
476 UINT64_C(2080375468), // DST
477 UINT64_C(2080375468), // DST64
478 UINT64_C(2080375532), // DSTST
479 UINT64_C(2080375532), // DSTST64
480 UINT64_C(2113929964), // DSTSTT
481 UINT64_C(2113929964), // DSTSTT64
482 UINT64_C(2113929900), // DSTT
483 UINT64_C(2113929900), // DSTT64
484 UINT64_C(3959424004), // DSUB
485 UINT64_C(4227859460), // DSUBQ
486 UINT64_C(4227859461), // DSUBQ_rec
487 UINT64_C(3959424005), // DSUB_rec
488 UINT64_C(3959423364), // DTSTDC
489 UINT64_C(4227858820), // DTSTDCQ
490 UINT64_C(3959423428), // DTSTDG
491 UINT64_C(4227858884), // DTSTDGQ
492 UINT64_C(3959423300), // DTSTEX
493 UINT64_C(4227858756), // DTSTEXQ
494 UINT64_C(3959424324), // DTSTSF
495 UINT64_C(3959424326), // DTSTSFI
496 UINT64_C(4227859782), // DTSTSFIQ
497 UINT64_C(4227859780), // DTSTSFQ
498 UINT64_C(3959423684), // DXEX
499 UINT64_C(4227859140), // DXEXQ
500 UINT64_C(4227859141), // DXEXQ_rec
501 UINT64_C(3959423685), // DXEX_rec
502 UINT64_C(0), // DYNALLOC
503 UINT64_C(0), // DYNALLOC8
504 UINT64_C(0), // DYNAREAOFFSET
505 UINT64_C(0), // DYNAREAOFFSET8
506 UINT64_C(0), // DecreaseCTR8loop
507 UINT64_C(0), // DecreaseCTRloop
508 UINT64_C(268436196), // EFDABS
509 UINT64_C(268436192), // EFDADD
510 UINT64_C(268436207), // EFDCFS
511 UINT64_C(268436211), // EFDCFSF
512 UINT64_C(268436209), // EFDCFSI
513 UINT64_C(268436195), // EFDCFSID
514 UINT64_C(268436210), // EFDCFUF
515 UINT64_C(268436208), // EFDCFUI
516 UINT64_C(268436194), // EFDCFUID
517 UINT64_C(268436206), // EFDCMPEQ
518 UINT64_C(268436204), // EFDCMPGT
519 UINT64_C(268436205), // EFDCMPLT
520 UINT64_C(268436215), // EFDCTSF
521 UINT64_C(268436213), // EFDCTSI
522 UINT64_C(268436203), // EFDCTSIDZ
523 UINT64_C(268436218), // EFDCTSIZ
524 UINT64_C(268436214), // EFDCTUF
525 UINT64_C(268436212), // EFDCTUI
526 UINT64_C(268436202), // EFDCTUIDZ
527 UINT64_C(268436216), // EFDCTUIZ
528 UINT64_C(268436201), // EFDDIV
529 UINT64_C(268436200), // EFDMUL
530 UINT64_C(268436197), // EFDNABS
531 UINT64_C(268436198), // EFDNEG
532 UINT64_C(268436193), // EFDSUB
533 UINT64_C(268436222), // EFDTSTEQ
534 UINT64_C(268436220), // EFDTSTGT
535 UINT64_C(268436221), // EFDTSTLT
536 UINT64_C(268436164), // EFSABS
537 UINT64_C(268436160), // EFSADD
538 UINT64_C(268436175), // EFSCFD
539 UINT64_C(268436179), // EFSCFSF
540 UINT64_C(268436177), // EFSCFSI
541 UINT64_C(268436178), // EFSCFUF
542 UINT64_C(268436176), // EFSCFUI
543 UINT64_C(268436174), // EFSCMPEQ
544 UINT64_C(268436172), // EFSCMPGT
545 UINT64_C(268436173), // EFSCMPLT
546 UINT64_C(268436183), // EFSCTSF
547 UINT64_C(268436181), // EFSCTSI
548 UINT64_C(268436186), // EFSCTSIZ
549 UINT64_C(268436182), // EFSCTUF
550 UINT64_C(268436180), // EFSCTUI
551 UINT64_C(268436184), // EFSCTUIZ
552 UINT64_C(268436169), // EFSDIV
553 UINT64_C(268436168), // EFSMUL
554 UINT64_C(268436165), // EFSNABS
555 UINT64_C(268436166), // EFSNEG
556 UINT64_C(268436161), // EFSSUB
557 UINT64_C(268436190), // EFSTSTEQ
558 UINT64_C(268436188), // EFSTSTGT
559 UINT64_C(268436189), // EFSTSTLT
560 UINT64_C(0), // EH_SjLj_LongJmp32
561 UINT64_C(0), // EH_SjLj_LongJmp64
562 UINT64_C(0), // EH_SjLj_SetJmp32
563 UINT64_C(0), // EH_SjLj_SetJmp64
564 UINT64_C(0), // EH_SjLj_Setup
565 UINT64_C(2080375352), // EQV
566 UINT64_C(2080375352), // EQV8
567 UINT64_C(2080375353), // EQV8_rec
568 UINT64_C(2080375353), // EQV_rec
569 UINT64_C(268435976), // EVABS
570 UINT64_C(268435970), // EVADDIW
571 UINT64_C(268436681), // EVADDSMIAAW
572 UINT64_C(268436673), // EVADDSSIAAW
573 UINT64_C(268436680), // EVADDUMIAAW
574 UINT64_C(268436672), // EVADDUSIAAW
575 UINT64_C(268435968), // EVADDW
576 UINT64_C(268435985), // EVAND
577 UINT64_C(268435986), // EVANDC
578 UINT64_C(268436020), // EVCMPEQ
579 UINT64_C(268436017), // EVCMPGTS
580 UINT64_C(268436016), // EVCMPGTU
581 UINT64_C(268436019), // EVCMPLTS
582 UINT64_C(268436018), // EVCMPLTU
583 UINT64_C(268435982), // EVCNTLSW
584 UINT64_C(268435981), // EVCNTLZW
585 UINT64_C(268436678), // EVDIVWS
586 UINT64_C(268436679), // EVDIVWU
587 UINT64_C(268435993), // EVEQV
588 UINT64_C(268435978), // EVEXTSB
589 UINT64_C(268435979), // EVEXTSH
590 UINT64_C(268436100), // EVFSABS
591 UINT64_C(268436096), // EVFSADD
592 UINT64_C(268436115), // EVFSCFSF
593 UINT64_C(268436113), // EVFSCFSI
594 UINT64_C(268436114), // EVFSCFUF
595 UINT64_C(268436106), // EVFSCFUI
596 UINT64_C(268436110), // EVFSCMPEQ
597 UINT64_C(268436108), // EVFSCMPGT
598 UINT64_C(268436109), // EVFSCMPLT
599 UINT64_C(268436119), // EVFSCTSF
600 UINT64_C(268436117), // EVFSCTSI
601 UINT64_C(268436122), // EVFSCTSIZ
602 UINT64_C(268436118), // EVFSCTUF
603 UINT64_C(268436116), // EVFSCTUI
604 UINT64_C(268436120), // EVFSCTUIZ
605 UINT64_C(268436105), // EVFSDIV
606 UINT64_C(268436104), // EVFSMUL
607 UINT64_C(268436101), // EVFSNABS
608 UINT64_C(268436102), // EVFSNEG
609 UINT64_C(268436097), // EVFSSUB
610 UINT64_C(268436126), // EVFSTSTEQ
611 UINT64_C(268436124), // EVFSTSTGT
612 UINT64_C(268436125), // EVFSTSTLT
613 UINT64_C(268436225), // EVLDD
614 UINT64_C(268436224), // EVLDDX
615 UINT64_C(268436229), // EVLDH
616 UINT64_C(268436228), // EVLDHX
617 UINT64_C(268436227), // EVLDW
618 UINT64_C(268436226), // EVLDWX
619 UINT64_C(268436233), // EVLHHESPLAT
620 UINT64_C(268436232), // EVLHHESPLATX
621 UINT64_C(268436239), // EVLHHOSSPLAT
622 UINT64_C(268436238), // EVLHHOSSPLATX
623 UINT64_C(268436237), // EVLHHOUSPLAT
624 UINT64_C(268436236), // EVLHHOUSPLATX
625 UINT64_C(268436241), // EVLWHE
626 UINT64_C(268436240), // EVLWHEX
627 UINT64_C(268436247), // EVLWHOS
628 UINT64_C(268436246), // EVLWHOSX
629 UINT64_C(268436245), // EVLWHOU
630 UINT64_C(268436244), // EVLWHOUX
631 UINT64_C(268436253), // EVLWHSPLAT
632 UINT64_C(268436252), // EVLWHSPLATX
633 UINT64_C(268436249), // EVLWWSPLAT
634 UINT64_C(268436248), // EVLWWSPLATX
635 UINT64_C(268436012), // EVMERGEHI
636 UINT64_C(268436014), // EVMERGEHILO
637 UINT64_C(268436013), // EVMERGELO
638 UINT64_C(268436015), // EVMERGELOHI
639 UINT64_C(268436779), // EVMHEGSMFAA
640 UINT64_C(268436907), // EVMHEGSMFAN
641 UINT64_C(268436777), // EVMHEGSMIAA
642 UINT64_C(268436905), // EVMHEGSMIAN
643 UINT64_C(268436776), // EVMHEGUMIAA
644 UINT64_C(268436904), // EVMHEGUMIAN
645 UINT64_C(268436491), // EVMHESMF
646 UINT64_C(268436523), // EVMHESMFA
647 UINT64_C(268436747), // EVMHESMFAAW
648 UINT64_C(268436875), // EVMHESMFANW
649 UINT64_C(268436489), // EVMHESMI
650 UINT64_C(268436521), // EVMHESMIA
651 UINT64_C(268436745), // EVMHESMIAAW
652 UINT64_C(268436873), // EVMHESMIANW
653 UINT64_C(268436483), // EVMHESSF
654 UINT64_C(268436515), // EVMHESSFA
655 UINT64_C(268436739), // EVMHESSFAAW
656 UINT64_C(268436867), // EVMHESSFANW
657 UINT64_C(268436737), // EVMHESSIAAW
658 UINT64_C(268436865), // EVMHESSIANW
659 UINT64_C(268436488), // EVMHEUMI
660 UINT64_C(268436520), // EVMHEUMIA
661 UINT64_C(268436744), // EVMHEUMIAAW
662 UINT64_C(268436872), // EVMHEUMIANW
663 UINT64_C(268436736), // EVMHEUSIAAW
664 UINT64_C(268436864), // EVMHEUSIANW
665 UINT64_C(268436783), // EVMHOGSMFAA
666 UINT64_C(268436911), // EVMHOGSMFAN
667 UINT64_C(268436781), // EVMHOGSMIAA
668 UINT64_C(268436909), // EVMHOGSMIAN
669 UINT64_C(268436780), // EVMHOGUMIAA
670 UINT64_C(268436908), // EVMHOGUMIAN
671 UINT64_C(268436495), // EVMHOSMF
672 UINT64_C(268436527), // EVMHOSMFA
673 UINT64_C(268436751), // EVMHOSMFAAW
674 UINT64_C(268436879), // EVMHOSMFANW
675 UINT64_C(268436493), // EVMHOSMI
676 UINT64_C(268436525), // EVMHOSMIA
677 UINT64_C(268436749), // EVMHOSMIAAW
678 UINT64_C(268436877), // EVMHOSMIANW
679 UINT64_C(268436487), // EVMHOSSF
680 UINT64_C(268436519), // EVMHOSSFA
681 UINT64_C(268436743), // EVMHOSSFAAW
682 UINT64_C(268436871), // EVMHOSSFANW
683 UINT64_C(268436741), // EVMHOSSIAAW
684 UINT64_C(268436869), // EVMHOSSIANW
685 UINT64_C(268436492), // EVMHOUMI
686 UINT64_C(268436524), // EVMHOUMIA
687 UINT64_C(268436748), // EVMHOUMIAAW
688 UINT64_C(268436876), // EVMHOUMIANW
689 UINT64_C(268436740), // EVMHOUSIAAW
690 UINT64_C(268436868), // EVMHOUSIANW
691 UINT64_C(268436676), // EVMRA
692 UINT64_C(268436559), // EVMWHSMF
693 UINT64_C(268436591), // EVMWHSMFA
694 UINT64_C(268436557), // EVMWHSMI
695 UINT64_C(268436589), // EVMWHSMIA
696 UINT64_C(268436551), // EVMWHSSF
697 UINT64_C(268436583), // EVMWHSSFA
698 UINT64_C(268436556), // EVMWHUMI
699 UINT64_C(268436588), // EVMWHUMIA
700 UINT64_C(268436809), // EVMWLSMIAAW
701 UINT64_C(268436937), // EVMWLSMIANW
702 UINT64_C(268436801), // EVMWLSSIAAW
703 UINT64_C(268436929), // EVMWLSSIANW
704 UINT64_C(268436552), // EVMWLUMI
705 UINT64_C(268436584), // EVMWLUMIA
706 UINT64_C(268436808), // EVMWLUMIAAW
707 UINT64_C(268436936), // EVMWLUMIANW
708 UINT64_C(268436800), // EVMWLUSIAAW
709 UINT64_C(268436928), // EVMWLUSIANW
710 UINT64_C(268436571), // EVMWSMF
711 UINT64_C(268436603), // EVMWSMFA
712 UINT64_C(268436827), // EVMWSMFAA
713 UINT64_C(268436955), // EVMWSMFAN
714 UINT64_C(268436569), // EVMWSMI
715 UINT64_C(268436601), // EVMWSMIA
716 UINT64_C(268436825), // EVMWSMIAA
717 UINT64_C(268436953), // EVMWSMIAN
718 UINT64_C(268436563), // EVMWSSF
719 UINT64_C(268436595), // EVMWSSFA
720 UINT64_C(268436819), // EVMWSSFAA
721 UINT64_C(268436947), // EVMWSSFAN
722 UINT64_C(268436568), // EVMWUMI
723 UINT64_C(268436600), // EVMWUMIA
724 UINT64_C(268436824), // EVMWUMIAA
725 UINT64_C(268436952), // EVMWUMIAN
726 UINT64_C(268435998), // EVNAND
727 UINT64_C(268435977), // EVNEG
728 UINT64_C(268435992), // EVNOR
729 UINT64_C(268435991), // EVOR
730 UINT64_C(268435995), // EVORC
731 UINT64_C(268436008), // EVRLW
732 UINT64_C(268436010), // EVRLWI
733 UINT64_C(268435980), // EVRNDW
734 UINT64_C(268436088), // EVSEL
735 UINT64_C(268436004), // EVSLW
736 UINT64_C(268436006), // EVSLWI
737 UINT64_C(268436011), // EVSPLATFI
738 UINT64_C(268436009), // EVSPLATI
739 UINT64_C(268436003), // EVSRWIS
740 UINT64_C(268436002), // EVSRWIU
741 UINT64_C(268436001), // EVSRWS
742 UINT64_C(268436000), // EVSRWU
743 UINT64_C(268436257), // EVSTDD
744 UINT64_C(268436256), // EVSTDDX
745 UINT64_C(268436261), // EVSTDH
746 UINT64_C(268436260), // EVSTDHX
747 UINT64_C(268436259), // EVSTDW
748 UINT64_C(268436258), // EVSTDWX
749 UINT64_C(268436273), // EVSTWHE
750 UINT64_C(268436272), // EVSTWHEX
751 UINT64_C(268436277), // EVSTWHO
752 UINT64_C(268436276), // EVSTWHOX
753 UINT64_C(268436281), // EVSTWWE
754 UINT64_C(268436280), // EVSTWWEX
755 UINT64_C(268436285), // EVSTWWO
756 UINT64_C(268436284), // EVSTWWOX
757 UINT64_C(268436683), // EVSUBFSMIAAW
758 UINT64_C(268436675), // EVSUBFSSIAAW
759 UINT64_C(268436682), // EVSUBFUMIAAW
760 UINT64_C(268436674), // EVSUBFUSIAAW
761 UINT64_C(268435972), // EVSUBFW
762 UINT64_C(268435974), // EVSUBIFW
763 UINT64_C(268435990), // EVXOR
764 UINT64_C(2080376692), // EXTSB
765 UINT64_C(2080376692), // EXTSB8
766 UINT64_C(2080376692), // EXTSB8_32_64
767 UINT64_C(2080376693), // EXTSB8_rec
768 UINT64_C(2080376693), // EXTSB_rec
769 UINT64_C(2080376628), // EXTSH
770 UINT64_C(2080376628), // EXTSH8
771 UINT64_C(2080376628), // EXTSH8_32_64
772 UINT64_C(2080376629), // EXTSH8_rec
773 UINT64_C(2080376629), // EXTSH_rec
774 UINT64_C(2080376756), // EXTSW
775 UINT64_C(2080376564), // EXTSWSLI
776 UINT64_C(2080376564), // EXTSWSLI_32_64
777 UINT64_C(2080376565), // EXTSWSLI_32_64_rec
778 UINT64_C(2080376565), // EXTSWSLI_rec
779 UINT64_C(2080376756), // EXTSW_32
780 UINT64_C(2080376756), // EXTSW_32_64
781 UINT64_C(2080376757), // EXTSW_32_64_rec
782 UINT64_C(2080376757), // EXTSW_rec
783 UINT64_C(2080376492), // EnforceIEIO
784 UINT64_C(4227858960), // FABSD
785 UINT64_C(4227858961), // FABSD_rec
786 UINT64_C(4227858960), // FABSS
787 UINT64_C(4227858961), // FABSS_rec
788 UINT64_C(4227858474), // FADD
789 UINT64_C(3959423018), // FADDS
790 UINT64_C(3959423019), // FADDS_rec
791 UINT64_C(4227858475), // FADD_rec
792 UINT64_C(0), // FADDrtz
793 UINT64_C(4227860124), // FCFID
794 UINT64_C(3959424668), // FCFIDS
795 UINT64_C(3959424669), // FCFIDS_rec
796 UINT64_C(4227860380), // FCFIDU
797 UINT64_C(3959424924), // FCFIDUS
798 UINT64_C(3959424925), // FCFIDUS_rec
799 UINT64_C(4227860381), // FCFIDU_rec
800 UINT64_C(4227860125), // FCFID_rec
801 UINT64_C(4227858496), // FCMPOD
802 UINT64_C(4227858496), // FCMPOS
803 UINT64_C(4227858432), // FCMPUD
804 UINT64_C(4227858432), // FCMPUS
805 UINT64_C(4227858448), // FCPSGND
806 UINT64_C(4227858449), // FCPSGND_rec
807 UINT64_C(4227858448), // FCPSGNS
808 UINT64_C(4227858449), // FCPSGNS_rec
809 UINT64_C(4227860060), // FCTID
810 UINT64_C(4227860316), // FCTIDU
811 UINT64_C(4227860318), // FCTIDUZ
812 UINT64_C(4227860319), // FCTIDUZ_rec
813 UINT64_C(4227860317), // FCTIDU_rec
814 UINT64_C(4227860062), // FCTIDZ
815 UINT64_C(4227860063), // FCTIDZ_rec
816 UINT64_C(4227860061), // FCTID_rec
817 UINT64_C(4227858460), // FCTIW
818 UINT64_C(4227858716), // FCTIWU
819 UINT64_C(4227858718), // FCTIWUZ
820 UINT64_C(4227858719), // FCTIWUZ_rec
821 UINT64_C(4227858717), // FCTIWU_rec
822 UINT64_C(4227858462), // FCTIWZ
823 UINT64_C(4227858463), // FCTIWZ_rec
824 UINT64_C(4227858461), // FCTIW_rec
825 UINT64_C(4227858468), // FDIV
826 UINT64_C(3959423012), // FDIVS
827 UINT64_C(3959423013), // FDIVS_rec
828 UINT64_C(4227858469), // FDIV_rec
829 UINT64_C(0), // FENCE
830 UINT64_C(4227858490), // FMADD
831 UINT64_C(3959423034), // FMADDS
832 UINT64_C(3959423035), // FMADDS_rec
833 UINT64_C(4227858491), // FMADD_rec
834 UINT64_C(4227858576), // FMR
835 UINT64_C(4227858577), // FMR_rec
836 UINT64_C(4227858488), // FMSUB
837 UINT64_C(3959423032), // FMSUBS
838 UINT64_C(3959423033), // FMSUBS_rec
839 UINT64_C(4227858489), // FMSUB_rec
840 UINT64_C(4227858482), // FMUL
841 UINT64_C(3959423026), // FMULS
842 UINT64_C(3959423027), // FMULS_rec
843 UINT64_C(4227858483), // FMUL_rec
844 UINT64_C(4227858704), // FNABSD
845 UINT64_C(4227858705), // FNABSD_rec
846 UINT64_C(4227858704), // FNABSS
847 UINT64_C(4227858705), // FNABSS_rec
848 UINT64_C(4227858512), // FNEGD
849 UINT64_C(4227858513), // FNEGD_rec
850 UINT64_C(4227858512), // FNEGS
851 UINT64_C(4227858513), // FNEGS_rec
852 UINT64_C(4227858494), // FNMADD
853 UINT64_C(3959423038), // FNMADDS
854 UINT64_C(3959423039), // FNMADDS_rec
855 UINT64_C(4227858495), // FNMADD_rec
856 UINT64_C(4227858492), // FNMSUB
857 UINT64_C(3959423036), // FNMSUBS
858 UINT64_C(3959423037), // FNMSUBS_rec
859 UINT64_C(4227858493), // FNMSUB_rec
860 UINT64_C(4227858480), // FRE
861 UINT64_C(3959423024), // FRES
862 UINT64_C(3959423025), // FRES_rec
863 UINT64_C(4227858481), // FRE_rec
864 UINT64_C(4227859408), // FRIMD
865 UINT64_C(4227859409), // FRIMD_rec
866 UINT64_C(4227859408), // FRIMS
867 UINT64_C(4227859409), // FRIMS_rec
868 UINT64_C(4227859216), // FRIND
869 UINT64_C(4227859217), // FRIND_rec
870 UINT64_C(4227859216), // FRINS
871 UINT64_C(4227859217), // FRINS_rec
872 UINT64_C(4227859344), // FRIPD
873 UINT64_C(4227859345), // FRIPD_rec
874 UINT64_C(4227859344), // FRIPS
875 UINT64_C(4227859345), // FRIPS_rec
876 UINT64_C(4227859280), // FRIZD
877 UINT64_C(4227859281), // FRIZD_rec
878 UINT64_C(4227859280), // FRIZS
879 UINT64_C(4227859281), // FRIZS_rec
880 UINT64_C(4227858456), // FRSP
881 UINT64_C(4227858457), // FRSP_rec
882 UINT64_C(4227858484), // FRSQRTE
883 UINT64_C(3959423028), // FRSQRTES
884 UINT64_C(3959423029), // FRSQRTES_rec
885 UINT64_C(4227858485), // FRSQRTE_rec
886 UINT64_C(4227858478), // FSELD
887 UINT64_C(4227858479), // FSELD_rec
888 UINT64_C(4227858478), // FSELS
889 UINT64_C(4227858479), // FSELS_rec
890 UINT64_C(4227858476), // FSQRT
891 UINT64_C(3959423020), // FSQRTS
892 UINT64_C(3959423021), // FSQRTS_rec
893 UINT64_C(4227858477), // FSQRT_rec
894 UINT64_C(4227858472), // FSUB
895 UINT64_C(3959423016), // FSUBS
896 UINT64_C(3959423017), // FSUBS_rec
897 UINT64_C(4227858473), // FSUB_rec
898 UINT64_C(4227858688), // FTDIV
899 UINT64_C(4227858752), // FTSQRT
900 UINT64_C(0), // GETtlsADDR
901 UINT64_C(0), // GETtlsADDR32
902 UINT64_C(0), // GETtlsADDR32AIX
903 UINT64_C(0), // GETtlsADDR64AIX
904 UINT64_C(0), // GETtlsADDRPCREL
905 UINT64_C(0), // GETtlsMOD32AIX
906 UINT64_C(0), // GETtlsMOD64AIX
907 UINT64_C(0), // GETtlsTpointer32AIX
908 UINT64_C(0), // GETtlsldADDR
909 UINT64_C(0), // GETtlsldADDR32
910 UINT64_C(0), // GETtlsldADDRPCREL
911 UINT64_C(2080376292), // HASHCHK
912 UINT64_C(2080376292), // HASHCHK8
913 UINT64_C(2080376164), // HASHCHKP
914 UINT64_C(2080376164), // HASHCHKP8
915 UINT64_C(2080376228), // HASHST
916 UINT64_C(2080376228), // HASHST8
917 UINT64_C(2080376100), // HASHSTP
918 UINT64_C(2080376100), // HASHSTP8
919 UINT64_C(1275068964), // HRFID
920 UINT64_C(2080376748), // ICBI
921 UINT64_C(2080376766), // ICBIEP
922 UINT64_C(2080375244), // ICBLC
923 UINT64_C(2080375180), // ICBLQ
924 UINT64_C(2080374828), // ICBT
925 UINT64_C(2080375756), // ICBTLS
926 UINT64_C(2080376716), // ICCCI
927 UINT64_C(2080374814), // ISEL
928 UINT64_C(2080374814), // ISEL8
929 UINT64_C(1275068716), // ISYNC
930 UINT64_C(939524096), // LA
931 UINT64_C(939524096), // LA8
932 UINT64_C(2080374888), // LBARX
933 UINT64_C(2080374889), // LBARXL
934 UINT64_C(2080374974), // LBEPX
935 UINT64_C(2281701376), // LBZ
936 UINT64_C(2281701376), // LBZ8
937 UINT64_C(2080376490), // LBZCIX
938 UINT64_C(2348810240), // LBZU
939 UINT64_C(2348810240), // LBZU8
940 UINT64_C(2080375022), // LBZUX
941 UINT64_C(2080375022), // LBZUX8
942 UINT64_C(2080374958), // LBZX
943 UINT64_C(2080374958), // LBZX8
944 UINT64_C(2080374958), // LBZXTLS
945 UINT64_C(2080374958), // LBZXTLS_
946 UINT64_C(2080374958), // LBZXTLS_32
947 UINT64_C(3892314112), // LD
948 UINT64_C(2080374952), // LDARX
949 UINT64_C(2080374953), // LDARXL
950 UINT64_C(2080376012), // LDAT
951 UINT64_C(2080408780), // LDAT_CSNE
952 UINT64_C(2080375848), // LDBRX
953 UINT64_C(2080376554), // LDCIX
954 UINT64_C(3892314113), // LDU
955 UINT64_C(2080374890), // LDUX
956 UINT64_C(2080374826), // LDX
957 UINT64_C(2080374826), // LDXTLS
958 UINT64_C(2080374826), // LDXTLS_
959 UINT64_C(0), // LDgotTprelL
960 UINT64_C(0), // LDgotTprelL32
961 UINT64_C(0), // LDtoc
962 UINT64_C(0), // LDtocBA
963 UINT64_C(0), // LDtocCPT
964 UINT64_C(0), // LDtocJTI
965 UINT64_C(0), // LDtocL
966 UINT64_C(3355443200), // LFD
967 UINT64_C(2080375998), // LFDEPX
968 UINT64_C(3422552064), // LFDU
969 UINT64_C(2080376046), // LFDUX
970 UINT64_C(2080375982), // LFDX
971 UINT64_C(2080375982), // LFDXTLS
972 UINT64_C(2080375982), // LFDXTLS_
973 UINT64_C(2080376494), // LFIWAX
974 UINT64_C(2080376558), // LFIWZX
975 UINT64_C(3221225472), // LFS
976 UINT64_C(3288334336), // LFSU
977 UINT64_C(2080375918), // LFSUX
978 UINT64_C(2080375854), // LFSX
979 UINT64_C(2080375854), // LFSXTLS
980 UINT64_C(2080375854), // LFSXTLS_
981 UINT64_C(2818572288), // LHA
982 UINT64_C(2818572288), // LHA8
983 UINT64_C(2080375016), // LHARX
984 UINT64_C(2080375017), // LHARXL
985 UINT64_C(2885681152), // LHAU
986 UINT64_C(2885681152), // LHAU8
987 UINT64_C(2080375534), // LHAUX
988 UINT64_C(2080375534), // LHAUX8
989 UINT64_C(2080375470), // LHAX
990 UINT64_C(2080375470), // LHAX8
991 UINT64_C(2080375470), // LHAXTLS
992 UINT64_C(2080375470), // LHAXTLS_
993 UINT64_C(2080375470), // LHAXTLS_32
994 UINT64_C(2080376364), // LHBRX
995 UINT64_C(2080376364), // LHBRX8
996 UINT64_C(2080375358), // LHEPX
997 UINT64_C(2684354560), // LHZ
998 UINT64_C(2684354560), // LHZ8
999 UINT64_C(2080376426), // LHZCIX
1000 UINT64_C(2751463424), // LHZU
1001 UINT64_C(2751463424), // LHZU8
1002 UINT64_C(2080375406), // LHZUX
1003 UINT64_C(2080375406), // LHZUX8
1004 UINT64_C(2080375342), // LHZX
1005 UINT64_C(2080375342), // LHZX8
1006 UINT64_C(2080375342), // LHZXTLS
1007 UINT64_C(2080375342), // LHZXTLS_
1008 UINT64_C(2080375342), // LHZXTLS_32
1009 UINT64_C(939524096), // LI
1010 UINT64_C(939524096), // LI8
1011 UINT64_C(1006632960), // LIS
1012 UINT64_C(1006632960), // LIS8
1013 UINT64_C(3087007744), // LMW
1014 UINT64_C(3758096384), // LQ
1015 UINT64_C(2080375336), // LQARX
1016 UINT64_C(2080375337), // LQARXL
1017 UINT64_C(0), // LQX_PSEUDO
1018 UINT64_C(2080375978), // LSWI
1019 UINT64_C(2080374798), // LVEBX
1020 UINT64_C(2080374862), // LVEHX
1021 UINT64_C(2080374926), // LVEWX
1022 UINT64_C(2080374796), // LVSL
1023 UINT64_C(2080374860), // LVSR
1024 UINT64_C(2080374990), // LVX
1025 UINT64_C(2080375502), // LVXL
1026 UINT64_C(3892314114), // LWA
1027 UINT64_C(2080374824), // LWARX
1028 UINT64_C(2080374825), // LWARXL
1029 UINT64_C(2080375948), // LWAT
1030 UINT64_C(2080408716), // LWAT_CSNE
1031 UINT64_C(2080375530), // LWAUX
1032 UINT64_C(2080375466), // LWAX
1033 UINT64_C(2080375466), // LWAXTLS
1034 UINT64_C(2080375466), // LWAXTLS_
1035 UINT64_C(2080375466), // LWAXTLS_32
1036 UINT64_C(2080375466), // LWAX_32
1037 UINT64_C(3892314114), // LWA_32
1038 UINT64_C(2080375852), // LWBRX
1039 UINT64_C(2080375852), // LWBRX8
1040 UINT64_C(2080374846), // LWEPX
1041 UINT64_C(2147483648), // LWZ
1042 UINT64_C(2147483648), // LWZ8
1043 UINT64_C(2080376362), // LWZCIX
1044 UINT64_C(2214592512), // LWZU
1045 UINT64_C(2214592512), // LWZU8
1046 UINT64_C(2080374894), // LWZUX
1047 UINT64_C(2080374894), // LWZUX8
1048 UINT64_C(2080374830), // LWZX
1049 UINT64_C(2080374830), // LWZX8
1050 UINT64_C(2080374830), // LWZXTLS
1051 UINT64_C(2080374830), // LWZXTLS_
1052 UINT64_C(2080374830), // LWZXTLS_32
1053 UINT64_C(0), // LWZtoc
1054 UINT64_C(0), // LWZtocL
1055 UINT64_C(3825205250), // LXSD
1056 UINT64_C(2080375960), // LXSDX
1057 UINT64_C(2080376346), // LXSIBZX
1058 UINT64_C(2080376410), // LXSIHZX
1059 UINT64_C(2080374936), // LXSIWAX
1060 UINT64_C(2080374808), // LXSIWZX
1061 UINT64_C(3825205251), // LXSSP
1062 UINT64_C(2080375832), // LXSSPX
1063 UINT64_C(4093640705), // LXV
1064 UINT64_C(2080376536), // LXVB16X
1065 UINT64_C(2080376472), // LXVD2X
1066 UINT64_C(2080375448), // LXVDSX
1067 UINT64_C(2080376408), // LXVH8X
1068 UINT64_C(4028564176), // LXVKQ
1069 UINT64_C(2080375322), // LXVL
1070 UINT64_C(2080375386), // LXVLL
1071 UINT64_C(402653184), // LXVP
1072 UINT64_C(2080376538), // LXVPB32X
1073 UINT64_C(2080375962), // LXVPRL
1074 UINT64_C(2080376026), // LXVPRLL
1075 UINT64_C(2080375450), // LXVPX
1076 UINT64_C(2080374810), // LXVRBX
1077 UINT64_C(2080375002), // LXVRDX
1078 UINT64_C(2080374874), // LXVRHX
1079 UINT64_C(2080375834), // LXVRL
1080 UINT64_C(2080375898), // LXVRLL
1081 UINT64_C(2080374938), // LXVRWX
1082 UINT64_C(2080376344), // LXVW4X
1083 UINT64_C(2080375512), // LXVWSX
1084 UINT64_C(2080375320), // LXVX
1085 UINT64_C(268435504), // MADDHD
1086 UINT64_C(268435505), // MADDHDU
1087 UINT64_C(268435507), // MADDLD
1088 UINT64_C(268435507), // MADDLD8
1089 UINT64_C(2080376492), // MBAR
1090 UINT64_C(1275068416), // MCRF
1091 UINT64_C(4227858560), // MCRFS
1092 UINT64_C(2080375936), // MCRXRX
1093 UINT64_C(2080375388), // MFBHRBE
1094 UINT64_C(2080374822), // MFCR
1095 UINT64_C(2080374822), // MFCR8
1096 UINT64_C(2080965286), // MFCTR
1097 UINT64_C(2080965286), // MFCTR8
1098 UINT64_C(2080375430), // MFDCR
1099 UINT64_C(4227859598), // MFFS
1100 UINT64_C(4229170318), // MFFSCDRN
1101 UINT64_C(4229235854), // MFFSCDRNI
1102 UINT64_C(4227925134), // MFFSCE
1103 UINT64_C(4229301390), // MFFSCRN
1104 UINT64_C(4229366926), // MFFSCRNI
1105 UINT64_C(4229432462), // MFFSL
1106 UINT64_C(4227859599), // MFFS_rec
1107 UINT64_C(2080899750), // MFLR
1108 UINT64_C(2080899750), // MFLR8
1109 UINT64_C(2080374950), // MFMSR
1110 UINT64_C(2081423398), // MFOCRF
1111 UINT64_C(2081423398), // MFOCRF8
1112 UINT64_C(2080375452), // MFPMR
1113 UINT64_C(2080375462), // MFSPR
1114 UINT64_C(2080375462), // MFSPR8
1115 UINT64_C(2080375974), // MFSR
1116 UINT64_C(2080376102), // MFSRIN
1117 UINT64_C(2080375526), // MFTB
1118 UINT64_C(2081178278), // MFTB8
1119 UINT64_C(2080572070), // MFUDSCR
1120 UINT64_C(2080374886), // MFVRD
1121 UINT64_C(2080391846), // MFVRSAVE
1122 UINT64_C(2080391846), // MFVRSAVEv
1123 UINT64_C(2080375014), // MFVRWZ
1124 UINT64_C(268436996), // MFVSCR
1125 UINT64_C(2080374886), // MFVSRD
1126 UINT64_C(2080375398), // MFVSRLD
1127 UINT64_C(2080375014), // MFVSRWZ
1128 UINT64_C(2080376338), // MODSD
1129 UINT64_C(2080376342), // MODSW
1130 UINT64_C(2080375314), // MODUD
1131 UINT64_C(2080375318), // MODUW
1132 UINT64_C(2080375068), // MSGSNDP
1133 UINT64_C(2080375068), // MSGSNDP8
1134 UINT64_C(2080376556), // MSGSYNC
1135 UINT64_C(2080375980), // MSYNC
1136 UINT64_C(2080375072), // MTCRF
1137 UINT64_C(2080375072), // MTCRF8
1138 UINT64_C(2080965542), // MTCTR
1139 UINT64_C(2080965542), // MTCTR8
1140 UINT64_C(2080965542), // MTCTR8loop
1141 UINT64_C(2080965542), // MTCTRloop
1142 UINT64_C(2080375686), // MTDCR
1143 UINT64_C(4227858572), // MTFSB0
1144 UINT64_C(4227858508), // MTFSB1
1145 UINT64_C(4227859854), // MTFSF
1146 UINT64_C(4227858700), // MTFSFI
1147 UINT64_C(4227858701), // MTFSFI_rec
1148 UINT64_C(4227858700), // MTFSFIb
1149 UINT64_C(4227859855), // MTFSF_rec
1150 UINT64_C(4227859854), // MTFSFb
1151 UINT64_C(2080375334), // MTLPL
1152 UINT64_C(2080375334), // MTLPL8
1153 UINT64_C(2080900006), // MTLR
1154 UINT64_C(2080900006), // MTLR8
1155 UINT64_C(2080375076), // MTMSR
1156 UINT64_C(2080375140), // MTMSRD
1157 UINT64_C(2081423648), // MTOCRF
1158 UINT64_C(2081423648), // MTOCRF8
1159 UINT64_C(2080375708), // MTPMR
1160 UINT64_C(2080375718), // MTSPR
1161 UINT64_C(2080375718), // MTSPR8
1162 UINT64_C(2080375204), // MTSR
1163 UINT64_C(2080375268), // MTSRIN
1164 UINT64_C(2080572326), // MTUDSCR
1165 UINT64_C(2080375142), // MTVRD
1166 UINT64_C(2080392102), // MTVRSAVE
1167 UINT64_C(2080392102), // MTVRSAVEv
1168 UINT64_C(2080375206), // MTVRWA
1169 UINT64_C(2080375270), // MTVRWZ
1170 UINT64_C(268437060), // MTVSCR
1171 UINT64_C(269485634), // MTVSRBM
1172 UINT64_C(268435476), // MTVSRBMI
1173 UINT64_C(2080375142), // MTVSRD
1174 UINT64_C(2080375654), // MTVSRDD
1175 UINT64_C(269682242), // MTVSRDM
1176 UINT64_C(269551170), // MTVSRHM
1177 UINT64_C(269747778), // MTVSRQM
1178 UINT64_C(2080375206), // MTVSRWA
1179 UINT64_C(269616706), // MTVSRWM
1180 UINT64_C(2080375590), // MTVSRWS
1181 UINT64_C(2080375270), // MTVSRWZ
1182 UINT64_C(2080374930), // MULHD
1183 UINT64_C(2080374802), // MULHDU
1184 UINT64_C(2080374803), // MULHDU_rec
1185 UINT64_C(2080374931), // MULHD_rec
1186 UINT64_C(2080374934), // MULHW
1187 UINT64_C(2080374806), // MULHWU
1188 UINT64_C(2080374807), // MULHWU_rec
1189 UINT64_C(2080374935), // MULHW_rec
1190 UINT64_C(2080375250), // MULLD
1191 UINT64_C(2080376274), // MULLDO
1192 UINT64_C(2080376275), // MULLDO_rec
1193 UINT64_C(2080375251), // MULLD_rec
1194 UINT64_C(469762048), // MULLI
1195 UINT64_C(469762048), // MULLI8
1196 UINT64_C(2080375254), // MULLW
1197 UINT64_C(2080376278), // MULLWO
1198 UINT64_C(2080376279), // MULLWO_rec
1199 UINT64_C(2080375255), // MULLW_rec
1200 UINT64_C(0), // MoveGOTtoLR
1201 UINT64_C(0), // MovePCtoLR
1202 UINT64_C(0), // MovePCtoLR8
1203 UINT64_C(2080375736), // NAND
1204 UINT64_C(2080375736), // NAND8
1205 UINT64_C(2080375737), // NAND8_rec
1206 UINT64_C(2080375737), // NAND_rec
1207 UINT64_C(1275069284), // NAP
1208 UINT64_C(2080374992), // NEG
1209 UINT64_C(2080374992), // NEG8
1210 UINT64_C(2080376016), // NEG8O
1211 UINT64_C(2080376017), // NEG8O_rec
1212 UINT64_C(2080374993), // NEG8_rec
1213 UINT64_C(2080376016), // NEGO
1214 UINT64_C(2080376017), // NEGO_rec
1215 UINT64_C(2080374993), // NEG_rec
1216 UINT64_C(1610612736), // NOP
1217 UINT64_C(1612775424), // NOP_GT_PWR6
1218 UINT64_C(1614938112), // NOP_GT_PWR7
1219 UINT64_C(2080375032), // NOR
1220 UINT64_C(2080375032), // NOR8
1221 UINT64_C(2080375033), // NOR8_rec
1222 UINT64_C(2080375033), // NOR_rec
1223 UINT64_C(2080375672), // OR
1224 UINT64_C(2080375672), // OR8
1225 UINT64_C(2080375673), // OR8_rec
1226 UINT64_C(2080375608), // ORC
1227 UINT64_C(2080375608), // ORC8
1228 UINT64_C(2080375609), // ORC8_rec
1229 UINT64_C(2080375609), // ORC_rec
1230 UINT64_C(1610612736), // ORI
1231 UINT64_C(1610612736), // ORI8
1232 UINT64_C(1677721600), // ORIS
1233 UINT64_C(1677721600), // ORIS8
1234 UINT64_C(2080375673), // OR_rec
1235 UINT64_C(432345565167091712), // PADDI
1236 UINT64_C(432345565167091712), // PADDI8
1237 UINT64_C(436849164794462208), // PADDI8pc
1238 UINT64_C(432345565234200576), // PADDIS
1239 UINT64_C(432345565234200576), // PADDIS8
1240 UINT64_C(436849164861571072), // PADDIS8pc
1241 UINT64_C(436849164861571072), // PADDISpc
1242 UINT64_C(0), // PADDIdtprel
1243 UINT64_C(436849164794462208), // PADDIpc
1244 UINT64_C(2080375096), // PDEPD
1245 UINT64_C(2080375160), // PEXTD
1246 UINT64_C(432345565167091712), // PLA
1247 UINT64_C(432345565167091712), // PLA8
1248 UINT64_C(432345565167091712), // PLA8pc
1249 UINT64_C(432345565167091712), // PLApc
1250 UINT64_C(432345566509268992), // PLBZ
1251 UINT64_C(432345566509268992), // PLBZ8
1252 UINT64_C(432345566509268992), // PLBZ8nopc
1253 UINT64_C(436849166136639488), // PLBZ8onlypc
1254 UINT64_C(436849166136639488), // PLBZ8pc
1255 UINT64_C(432345566509268992), // PLBZnopc
1256 UINT64_C(436849166136639488), // PLBZonlypc
1257 UINT64_C(436849166136639488), // PLBZpc
1258 UINT64_C(288230379976916992), // PLD
1259 UINT64_C(288230379976916992), // PLDnopc
1260 UINT64_C(292733979604287488), // PLDonlypc
1261 UINT64_C(292733979604287488), // PLDpc
1262 UINT64_C(432345567583010816), // PLFD
1263 UINT64_C(432345567583010816), // PLFDnopc
1264 UINT64_C(436849167210381312), // PLFDonlypc
1265 UINT64_C(436849167210381312), // PLFDpc
1266 UINT64_C(432345567448793088), // PLFS
1267 UINT64_C(432345567448793088), // PLFSnopc
1268 UINT64_C(436849167076163584), // PLFSonlypc
1269 UINT64_C(436849167076163584), // PLFSpc
1270 UINT64_C(432345567046139904), // PLHA
1271 UINT64_C(432345567046139904), // PLHA8
1272 UINT64_C(432345567046139904), // PLHA8nopc
1273 UINT64_C(436849166673510400), // PLHA8onlypc
1274 UINT64_C(436849166673510400), // PLHA8pc
1275 UINT64_C(432345567046139904), // PLHAnopc
1276 UINT64_C(436849166673510400), // PLHAonlypc
1277 UINT64_C(436849166673510400), // PLHApc
1278 UINT64_C(432345566911922176), // PLHZ
1279 UINT64_C(432345566911922176), // PLHZ8
1280 UINT64_C(432345566911922176), // PLHZ8nopc
1281 UINT64_C(436849166539292672), // PLHZ8onlypc
1282 UINT64_C(436849166539292672), // PLHZ8pc
1283 UINT64_C(432345566911922176), // PLHZnopc
1284 UINT64_C(436849166539292672), // PLHZonlypc
1285 UINT64_C(436849166539292672), // PLHZpc
1286 UINT64_C(432345565167091712), // PLI
1287 UINT64_C(432345565167091712), // PLI8
1288 UINT64_C(288230378903175168), // PLWA
1289 UINT64_C(288230378903175168), // PLWA8
1290 UINT64_C(288230378903175168), // PLWA8nopc
1291 UINT64_C(292733978530545664), // PLWA8onlypc
1292 UINT64_C(292733978530545664), // PLWA8pc
1293 UINT64_C(288230378903175168), // PLWAnopc
1294 UINT64_C(292733978530545664), // PLWAonlypc
1295 UINT64_C(292733978530545664), // PLWApc
1296 UINT64_C(432345566375051264), // PLWZ
1297 UINT64_C(432345566375051264), // PLWZ8
1298 UINT64_C(432345566375051264), // PLWZ8nopc
1299 UINT64_C(436849166002421760), // PLWZ8onlypc
1300 UINT64_C(436849166002421760), // PLWZ8pc
1301 UINT64_C(432345566375051264), // PLWZnopc
1302 UINT64_C(436849166002421760), // PLWZonlypc
1303 UINT64_C(436849166002421760), // PLWZpc
1304 UINT64_C(288230378970284032), // PLXSD
1305 UINT64_C(288230378970284032), // PLXSDnopc
1306 UINT64_C(292733978597654528), // PLXSDonlypc
1307 UINT64_C(292733978597654528), // PLXSDpc
1308 UINT64_C(288230379037392896), // PLXSSP
1309 UINT64_C(288230379037392896), // PLXSSPnopc
1310 UINT64_C(292733978664763392), // PLXSSPonlypc
1311 UINT64_C(292733978664763392), // PLXSSPpc
1312 UINT64_C(288230379507154944), // PLXV
1313 UINT64_C(288230380044025856), // PLXVP
1314 UINT64_C(288230380044025856), // PLXVPnopc
1315 UINT64_C(292733979671396352), // PLXVPonlypc
1316 UINT64_C(292733979671396352), // PLXVPpc
1317 UINT64_C(288230379507154944), // PLXVnopc
1318 UINT64_C(292733979134525440), // PLXVonlypc
1319 UINT64_C(292733979134525440), // PLXVpc
1320 UINT64_C(544935558871253720), // PMDMXVBF16GERX2
1321 UINT64_C(544935558871254864), // PMDMXVBF16GERX2NN
1322 UINT64_C(544935558871253912), // PMDMXVBF16GERX2NP
1323 UINT64_C(544935558871254424), // PMDMXVBF16GERX2PN
1324 UINT64_C(544935558871253584), // PMDMXVBF16GERX2PP
1325 UINT64_C(544935558871253528), // PMDMXVF16GERX2
1326 UINT64_C(544935558871254608), // PMDMXVF16GERX2NN
1327 UINT64_C(544935558871253656), // PMDMXVF16GERX2NP
1328 UINT64_C(544935558871254168), // PMDMXVF16GERX2PN
1329 UINT64_C(544935558871253520), // PMDMXVF16GERX2PP
1330 UINT64_C(544935558871253080), // PMDMXVI8GERX4
1331 UINT64_C(544935558871253072), // PMDMXVI8GERX4PP
1332 UINT64_C(544935558871253776), // PMDMXVI8GERX4SPP
1333 UINT64_C(544935558871253400), // PMXVBF16GER2
1334 UINT64_C(544935558871254928), // PMXVBF16GER2NN
1335 UINT64_C(544935558871253904), // PMXVBF16GER2NP
1336 UINT64_C(544935558871254416), // PMXVBF16GER2PN
1337 UINT64_C(544935558871253392), // PMXVBF16GER2PP
1338 UINT64_C(544935558871253400), // PMXVBF16GER2W
1339 UINT64_C(544935558871254928), // PMXVBF16GER2WNN
1340 UINT64_C(544935558871253904), // PMXVBF16GER2WNP
1341 UINT64_C(544935558871254416), // PMXVBF16GER2WPN
1342 UINT64_C(544935558871253392), // PMXVBF16GER2WPP
1343 UINT64_C(544935558871253144), // PMXVF16GER2
1344 UINT64_C(544935558871254672), // PMXVF16GER2NN
1345 UINT64_C(544935558871253648), // PMXVF16GER2NP
1346 UINT64_C(544935558871254160), // PMXVF16GER2PN
1347 UINT64_C(544935558871253136), // PMXVF16GER2PP
1348 UINT64_C(544935558871253144), // PMXVF16GER2W
1349 UINT64_C(544935558871254672), // PMXVF16GER2WNN
1350 UINT64_C(544935558871253648), // PMXVF16GER2WNP
1351 UINT64_C(544935558871254160), // PMXVF16GER2WPN
1352 UINT64_C(544935558871253136), // PMXVF16GER2WPP
1353 UINT64_C(544935558871253208), // PMXVF32GER
1354 UINT64_C(544935558871254736), // PMXVF32GERNN
1355 UINT64_C(544935558871253712), // PMXVF32GERNP
1356 UINT64_C(544935558871254224), // PMXVF32GERPN
1357 UINT64_C(544935558871253200), // PMXVF32GERPP
1358 UINT64_C(544935558871253208), // PMXVF32GERW
1359 UINT64_C(544935558871254736), // PMXVF32GERWNN
1360 UINT64_C(544935558871253712), // PMXVF32GERWNP
1361 UINT64_C(544935558871254224), // PMXVF32GERWPN
1362 UINT64_C(544935558871253200), // PMXVF32GERWPP
1363 UINT64_C(544935558871253464), // PMXVF64GER
1364 UINT64_C(544935558871254992), // PMXVF64GERNN
1365 UINT64_C(544935558871253968), // PMXVF64GERNP
1366 UINT64_C(544935558871254480), // PMXVF64GERPN
1367 UINT64_C(544935558871253456), // PMXVF64GERPP
1368 UINT64_C(544935558871253464), // PMXVF64GERW
1369 UINT64_C(544935558871254992), // PMXVF64GERWNN
1370 UINT64_C(544935558871253968), // PMXVF64GERWNP
1371 UINT64_C(544935558871254480), // PMXVF64GERWPN
1372 UINT64_C(544935558871253456), // PMXVF64GERWPP
1373 UINT64_C(544935558871253592), // PMXVI16GER2
1374 UINT64_C(544935558871253848), // PMXVI16GER2PP
1375 UINT64_C(544935558871253336), // PMXVI16GER2S
1376 UINT64_C(544935558871253328), // PMXVI16GER2SPP
1377 UINT64_C(544935558871253336), // PMXVI16GER2SW
1378 UINT64_C(544935558871253328), // PMXVI16GER2SWPP
1379 UINT64_C(544935558871253592), // PMXVI16GER2W
1380 UINT64_C(544935558871253848), // PMXVI16GER2WPP
1381 UINT64_C(544935558871253272), // PMXVI4GER8
1382 UINT64_C(544935558871253264), // PMXVI4GER8PP
1383 UINT64_C(544935558871253272), // PMXVI4GER8W
1384 UINT64_C(544935558871253264), // PMXVI4GER8WPP
1385 UINT64_C(544935558871253016), // PMXVI8GER4
1386 UINT64_C(544935558871253008), // PMXVI8GER4PP
1387 UINT64_C(544935558871253784), // PMXVI8GER4SPP
1388 UINT64_C(544935558871253016), // PMXVI8GER4W
1389 UINT64_C(544935558871253008), // PMXVI8GER4WPP
1390 UINT64_C(544935558871253784), // PMXVI8GER4WSPP
1391 UINT64_C(2080375028), // POPCNTB
1392 UINT64_C(2080375028), // POPCNTB8
1393 UINT64_C(2080375796), // POPCNTD
1394 UINT64_C(2080375540), // POPCNTW
1395 UINT64_C(0), // PPC32GOT
1396 UINT64_C(0), // PPC32PICGOT
1397 UINT64_C(0), // PREPARE_PROBED_ALLOCA_32
1398 UINT64_C(0), // PREPARE_PROBED_ALLOCA_64
1399 UINT64_C(0), // PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_32
1400 UINT64_C(0), // PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_64
1401 UINT64_C(0), // PROBED_ALLOCA_32
1402 UINT64_C(0), // PROBED_ALLOCA_64
1403 UINT64_C(0), // PROBED_STACKALLOC_32
1404 UINT64_C(0), // PROBED_STACKALLOC_64
1405 UINT64_C(432345566777704448), // PSTB
1406 UINT64_C(432345566777704448), // PSTB8
1407 UINT64_C(432345566777704448), // PSTB8nopc
1408 UINT64_C(436849166405074944), // PSTB8onlypc
1409 UINT64_C(436849166405074944), // PSTB8pc
1410 UINT64_C(432345566777704448), // PSTBnopc
1411 UINT64_C(436849166405074944), // PSTBonlypc
1412 UINT64_C(436849166405074944), // PSTBpc
1413 UINT64_C(288230380245352448), // PSTD
1414 UINT64_C(288230380245352448), // PSTDnopc
1415 UINT64_C(292733979872722944), // PSTDonlypc
1416 UINT64_C(292733979872722944), // PSTDpc
1417 UINT64_C(432345567851446272), // PSTFD
1418 UINT64_C(432345567851446272), // PSTFDnopc
1419 UINT64_C(436849167478816768), // PSTFDonlypc
1420 UINT64_C(436849167478816768), // PSTFDpc
1421 UINT64_C(432345567717228544), // PSTFS
1422 UINT64_C(432345567717228544), // PSTFSnopc
1423 UINT64_C(436849167344599040), // PSTFSonlypc
1424 UINT64_C(436849167344599040), // PSTFSpc
1425 UINT64_C(432345567180357632), // PSTH
1426 UINT64_C(432345567180357632), // PSTH8
1427 UINT64_C(432345567180357632), // PSTH8nopc
1428 UINT64_C(436849166807728128), // PSTH8onlypc
1429 UINT64_C(436849166807728128), // PSTH8pc
1430 UINT64_C(432345567180357632), // PSTHnopc
1431 UINT64_C(436849166807728128), // PSTHonlypc
1432 UINT64_C(436849166807728128), // PSTHpc
1433 UINT64_C(432345566643486720), // PSTW
1434 UINT64_C(432345566643486720), // PSTW8
1435 UINT64_C(432345566643486720), // PSTW8nopc
1436 UINT64_C(436849166270857216), // PSTW8onlypc
1437 UINT64_C(436849166270857216), // PSTW8pc
1438 UINT64_C(432345566643486720), // PSTWnopc
1439 UINT64_C(436849166270857216), // PSTWonlypc
1440 UINT64_C(436849166270857216), // PSTWpc
1441 UINT64_C(288230379238719488), // PSTXSD
1442 UINT64_C(288230379238719488), // PSTXSDnopc
1443 UINT64_C(292733978866089984), // PSTXSDonlypc
1444 UINT64_C(292733978866089984), // PSTXSDpc
1445 UINT64_C(288230379305828352), // PSTXSSP
1446 UINT64_C(288230379305828352), // PSTXSSPnopc
1447 UINT64_C(292733978933198848), // PSTXSSPonlypc
1448 UINT64_C(292733978933198848), // PSTXSSPpc
1449 UINT64_C(288230379775590400), // PSTXV
1450 UINT64_C(288230380312461312), // PSTXVP
1451 UINT64_C(288230380312461312), // PSTXVPnopc
1452 UINT64_C(292733979939831808), // PSTXVPonlypc
1453 UINT64_C(292733979939831808), // PSTXVPpc
1454 UINT64_C(288230379775590400), // PSTXVnopc
1455 UINT64_C(292733979402960896), // PSTXVonlypc
1456 UINT64_C(292733979402960896), // PSTXVpc
1457 UINT64_C(2080375976), // PTESYNCIO
1458 UINT64_C(0), // PseudoEIEIO
1459 UINT64_C(0), // RESTORE_ACC
1460 UINT64_C(0), // RESTORE_CR
1461 UINT64_C(0), // RESTORE_CRBIT
1462 UINT64_C(0), // RESTORE_DMR
1463 UINT64_C(0), // RESTORE_DMRP
1464 UINT64_C(0), // RESTORE_QUADWORD
1465 UINT64_C(0), // RESTORE_UACC
1466 UINT64_C(0), // RESTORE_WACC
1467 UINT64_C(1275068518), // RFCI
1468 UINT64_C(1275068494), // RFDI
1469 UINT64_C(1275068708), // RFEBB
1470 UINT64_C(1275068516), // RFI
1471 UINT64_C(1275068452), // RFID
1472 UINT64_C(1275068492), // RFMCI
1473 UINT64_C(2013265936), // RLDCL
1474 UINT64_C(2013265937), // RLDCL_rec
1475 UINT64_C(2013265938), // RLDCR
1476 UINT64_C(2013265939), // RLDCR_rec
1477 UINT64_C(2013265928), // RLDIC
1478 UINT64_C(2013265920), // RLDICL
1479 UINT64_C(2013265920), // RLDICL_32
1480 UINT64_C(2013265920), // RLDICL_32_64
1481 UINT64_C(2013265921), // RLDICL_32_rec
1482 UINT64_C(2013265921), // RLDICL_rec
1483 UINT64_C(2013265924), // RLDICR
1484 UINT64_C(2013265924), // RLDICR_32
1485 UINT64_C(2013265925), // RLDICR_rec
1486 UINT64_C(2013265929), // RLDIC_rec
1487 UINT64_C(2013265932), // RLDIMI
1488 UINT64_C(2013265933), // RLDIMI_rec
1489 UINT64_C(1342177280), // RLWIMI
1490 UINT64_C(1342177280), // RLWIMI8
1491 UINT64_C(1342177281), // RLWIMI8_rec
1492 UINT64_C(1342177281), // RLWIMI_rec
1493 UINT64_C(1409286144), // RLWINM
1494 UINT64_C(1409286144), // RLWINM8
1495 UINT64_C(1409286145), // RLWINM8_rec
1496 UINT64_C(1409286145), // RLWINM_rec
1497 UINT64_C(1543503872), // RLWNM
1498 UINT64_C(1543503872), // RLWNM8
1499 UINT64_C(1543503873), // RLWNM8_rec
1500 UINT64_C(1543503873), // RLWNM_rec
1501 UINT64_C(0), // ReadTB
1502 UINT64_C(1140850690), // SC
1503 UINT64_C(1140850689), // SCV
1504 UINT64_C(0), // SELECT_CC_F16
1505 UINT64_C(0), // SELECT_CC_F4
1506 UINT64_C(0), // SELECT_CC_F8
1507 UINT64_C(0), // SELECT_CC_I4
1508 UINT64_C(0), // SELECT_CC_I8
1509 UINT64_C(0), // SELECT_CC_SPE
1510 UINT64_C(0), // SELECT_CC_SPE4
1511 UINT64_C(0), // SELECT_CC_VRRC
1512 UINT64_C(0), // SELECT_CC_VSFRC
1513 UINT64_C(0), // SELECT_CC_VSRC
1514 UINT64_C(0), // SELECT_CC_VSSRC
1515 UINT64_C(0), // SELECT_F16
1516 UINT64_C(0), // SELECT_F4
1517 UINT64_C(0), // SELECT_F8
1518 UINT64_C(0), // SELECT_I4
1519 UINT64_C(0), // SELECT_I8
1520 UINT64_C(0), // SELECT_SPE
1521 UINT64_C(0), // SELECT_SPE4
1522 UINT64_C(0), // SELECT_VRRC
1523 UINT64_C(0), // SELECT_VSFRC
1524 UINT64_C(0), // SELECT_VSRC
1525 UINT64_C(0), // SELECT_VSSRC
1526 UINT64_C(2080375040), // SETB
1527 UINT64_C(2080375040), // SETB8
1528 UINT64_C(2080375552), // SETBC
1529 UINT64_C(2080375552), // SETBC8
1530 UINT64_C(2080375616), // SETBCR
1531 UINT64_C(2080375616), // SETBCR8
1532 UINT64_C(0), // SETFLM
1533 UINT64_C(2080375680), // SETNBC
1534 UINT64_C(2080375680), // SETNBC8
1535 UINT64_C(2080375744), // SETNBCR
1536 UINT64_C(2080375744), // SETNBCR8
1537 UINT64_C(0), // SETRND
1538 UINT64_C(0), // SETRNDi
1539 UINT64_C(2080376743), // SLBFEE_rec
1540 UINT64_C(2080375780), // SLBIA
1541 UINT64_C(2080375652), // SLBIE
1542 UINT64_C(2080375716), // SLBIEG
1543 UINT64_C(2080376614), // SLBMFEE
1544 UINT64_C(2080376486), // SLBMFEV
1545 UINT64_C(2080375588), // SLBMTE
1546 UINT64_C(2080375460), // SLBSYNC
1547 UINT64_C(2080374838), // SLD
1548 UINT64_C(2080374839), // SLD_rec
1549 UINT64_C(2080374832), // SLW
1550 UINT64_C(2080374832), // SLW8
1551 UINT64_C(2080374833), // SLW8_rec
1552 UINT64_C(2080374833), // SLW_rec
1553 UINT64_C(2147483648), // SPELWZ
1554 UINT64_C(2080374830), // SPELWZX
1555 UINT64_C(2415919104), // SPESTW
1556 UINT64_C(2080375086), // SPESTWX
1557 UINT64_C(0), // SPILL_ACC
1558 UINT64_C(0), // SPILL_CR
1559 UINT64_C(0), // SPILL_CRBIT
1560 UINT64_C(0), // SPILL_DMR
1561 UINT64_C(0), // SPILL_DMRP
1562 UINT64_C(0), // SPILL_QUADWORD
1563 UINT64_C(0), // SPILL_UACC
1564 UINT64_C(0), // SPILL_WACC
1565 UINT64_C(0), // SPLIT_QUADWORD
1566 UINT64_C(2080376372), // SRAD
1567 UINT64_C(2080376436), // SRADI
1568 UINT64_C(2080376436), // SRADI_32
1569 UINT64_C(2080376437), // SRADI_rec
1570 UINT64_C(2080376373), // SRAD_rec
1571 UINT64_C(2080376368), // SRAW
1572 UINT64_C(2080376368), // SRAW8
1573 UINT64_C(2080376369), // SRAW8_rec
1574 UINT64_C(2080376432), // SRAWI
1575 UINT64_C(2080376432), // SRAWI8
1576 UINT64_C(2080376433), // SRAWI8_rec
1577 UINT64_C(2080376433), // SRAWI_rec
1578 UINT64_C(2080376369), // SRAW_rec
1579 UINT64_C(2080375862), // SRD
1580 UINT64_C(2080375863), // SRD_rec
1581 UINT64_C(2080375856), // SRW
1582 UINT64_C(2080375856), // SRW8
1583 UINT64_C(2080375857), // SRW8_rec
1584 UINT64_C(2080375857), // SRW_rec
1585 UINT64_C(2550136832), // STB
1586 UINT64_C(2550136832), // STB8
1587 UINT64_C(2080376746), // STBCIX
1588 UINT64_C(2080376173), // STBCX
1589 UINT64_C(2080375230), // STBEPX
1590 UINT64_C(2617245696), // STBU
1591 UINT64_C(2617245696), // STBU8
1592 UINT64_C(2080375278), // STBUX
1593 UINT64_C(2080375278), // STBUX8
1594 UINT64_C(2080375214), // STBX
1595 UINT64_C(2080375214), // STBX8
1596 UINT64_C(2080375214), // STBXTLS
1597 UINT64_C(2080375214), // STBXTLS_
1598 UINT64_C(2080375214), // STBXTLS_32
1599 UINT64_C(4160749568), // STD
1600 UINT64_C(2080376268), // STDAT
1601 UINT64_C(2080376104), // STDBRX
1602 UINT64_C(2080376810), // STDCIX
1603 UINT64_C(2080375213), // STDCX
1604 UINT64_C(4160749569), // STDU
1605 UINT64_C(2080375146), // STDUX
1606 UINT64_C(2080375082), // STDX
1607 UINT64_C(2080375082), // STDXTLS
1608 UINT64_C(2080375082), // STDXTLS_
1609 UINT64_C(3623878656), // STFD
1610 UINT64_C(2080376254), // STFDEPX
1611 UINT64_C(3690987520), // STFDU
1612 UINT64_C(2080376302), // STFDUX
1613 UINT64_C(2080376238), // STFDX
1614 UINT64_C(2080376238), // STFDXTLS
1615 UINT64_C(2080376238), // STFDXTLS_
1616 UINT64_C(2080376750), // STFIWX
1617 UINT64_C(3489660928), // STFS
1618 UINT64_C(3556769792), // STFSU
1619 UINT64_C(2080376174), // STFSUX
1620 UINT64_C(2080376110), // STFSX
1621 UINT64_C(2080376110), // STFSXTLS
1622 UINT64_C(2080376110), // STFSXTLS_
1623 UINT64_C(2952790016), // STH
1624 UINT64_C(2952790016), // STH8
1625 UINT64_C(2080376620), // STHBRX
1626 UINT64_C(2080376682), // STHCIX
1627 UINT64_C(2080376237), // STHCX
1628 UINT64_C(2080375614), // STHEPX
1629 UINT64_C(3019898880), // STHU
1630 UINT64_C(3019898880), // STHU8
1631 UINT64_C(2080375662), // STHUX
1632 UINT64_C(2080375662), // STHUX8
1633 UINT64_C(2080375598), // STHX
1634 UINT64_C(2080375598), // STHX8
1635 UINT64_C(2080375598), // STHXTLS
1636 UINT64_C(2080375598), // STHXTLS_
1637 UINT64_C(2080375598), // STHXTLS_32
1638 UINT64_C(3154116608), // STMW
1639 UINT64_C(1275069156), // STOP
1640 UINT64_C(4160749570), // STQ
1641 UINT64_C(2080375149), // STQCX
1642 UINT64_C(0), // STQX_PSEUDO
1643 UINT64_C(2080376234), // STSWI
1644 UINT64_C(2080375054), // STVEBX
1645 UINT64_C(2080375118), // STVEHX
1646 UINT64_C(2080375182), // STVEWX
1647 UINT64_C(2080375246), // STVX
1648 UINT64_C(2080375758), // STVXL
1649 UINT64_C(2415919104), // STW
1650 UINT64_C(2415919104), // STW8
1651 UINT64_C(2080376204), // STWAT
1652 UINT64_C(2080376108), // STWBRX
1653 UINT64_C(2080376618), // STWCIX
1654 UINT64_C(2080375085), // STWCX
1655 UINT64_C(2080375102), // STWEPX
1656 UINT64_C(2483027968), // STWU
1657 UINT64_C(2483027968), // STWU8
1658 UINT64_C(2080375150), // STWUX
1659 UINT64_C(2080375150), // STWUX8
1660 UINT64_C(2080375086), // STWX
1661 UINT64_C(2080375086), // STWX8
1662 UINT64_C(2080375086), // STWXTLS
1663 UINT64_C(2080375086), // STWXTLS_
1664 UINT64_C(2080375086), // STWXTLS_32
1665 UINT64_C(4093640706), // STXSD
1666 UINT64_C(2080376216), // STXSDX
1667 UINT64_C(2080376602), // STXSIBX
1668 UINT64_C(2080376602), // STXSIBXv
1669 UINT64_C(2080376666), // STXSIHX
1670 UINT64_C(2080376666), // STXSIHXv
1671 UINT64_C(2080375064), // STXSIWX
1672 UINT64_C(4093640707), // STXSSP
1673 UINT64_C(2080376088), // STXSSPX
1674 UINT64_C(4093640709), // STXV
1675 UINT64_C(2080376792), // STXVB16X
1676 UINT64_C(2080376728), // STXVD2X
1677 UINT64_C(2080376664), // STXVH8X
1678 UINT64_C(2080375578), // STXVL
1679 UINT64_C(2080375642), // STXVLL
1680 UINT64_C(402653185), // STXVP
1681 UINT64_C(2080376794), // STXVPB32X
1682 UINT64_C(2080376218), // STXVPRL
1683 UINT64_C(2080376282), // STXVPRLL
1684 UINT64_C(2080375706), // STXVPX
1685 UINT64_C(2080375066), // STXVRBX
1686 UINT64_C(2080375258), // STXVRDX
1687 UINT64_C(2080375130), // STXVRHX
1688 UINT64_C(2080376090), // STXVRL
1689 UINT64_C(2080376154), // STXVRLL
1690 UINT64_C(2080375194), // STXVRWX
1691 UINT64_C(2080376600), // STXVW4X
1692 UINT64_C(2080375576), // STXVX
1693 UINT64_C(2080374864), // SUBF
1694 UINT64_C(2080374864), // SUBF8
1695 UINT64_C(2080375888), // SUBF8O
1696 UINT64_C(2080375889), // SUBF8O_rec
1697 UINT64_C(2080374865), // SUBF8_rec
1698 UINT64_C(2080374800), // SUBFC
1699 UINT64_C(2080374800), // SUBFC8
1700 UINT64_C(2080375824), // SUBFC8O
1701 UINT64_C(2080375825), // SUBFC8O_rec
1702 UINT64_C(2080374801), // SUBFC8_rec
1703 UINT64_C(2080375824), // SUBFCO
1704 UINT64_C(2080375825), // SUBFCO_rec
1705 UINT64_C(2080374801), // SUBFC_rec
1706 UINT64_C(2080375056), // SUBFE
1707 UINT64_C(2080375056), // SUBFE8
1708 UINT64_C(2080376080), // SUBFE8O
1709 UINT64_C(2080376081), // SUBFE8O_rec
1710 UINT64_C(2080375057), // SUBFE8_rec
1711 UINT64_C(2080376080), // SUBFEO
1712 UINT64_C(2080376081), // SUBFEO_rec
1713 UINT64_C(2080375057), // SUBFE_rec
1714 UINT64_C(536870912), // SUBFIC
1715 UINT64_C(536870912), // SUBFIC8
1716 UINT64_C(2080375248), // SUBFME
1717 UINT64_C(2080375248), // SUBFME8
1718 UINT64_C(2080376272), // SUBFME8O
1719 UINT64_C(2080376273), // SUBFME8O_rec
1720 UINT64_C(2080375249), // SUBFME8_rec
1721 UINT64_C(2080376272), // SUBFMEO
1722 UINT64_C(2080376273), // SUBFMEO_rec
1723 UINT64_C(2080375249), // SUBFME_rec
1724 UINT64_C(2080375888), // SUBFO
1725 UINT64_C(2080375889), // SUBFO_rec
1726 UINT64_C(2080374928), // SUBFUS
1727 UINT64_C(2080374929), // SUBFUS_rec
1728 UINT64_C(2080375184), // SUBFZE
1729 UINT64_C(2080375184), // SUBFZE8
1730 UINT64_C(2080376208), // SUBFZE8O
1731 UINT64_C(2080376209), // SUBFZE8O_rec
1732 UINT64_C(2080375185), // SUBFZE8_rec
1733 UINT64_C(2080376208), // SUBFZEO
1734 UINT64_C(2080376209), // SUBFZEO_rec
1735 UINT64_C(2080375185), // SUBFZE_rec
1736 UINT64_C(2080374865), // SUBF_rec
1737 UINT64_C(2080375980), // SYNC
1738 UINT64_C(2080375980), // SYNCP10
1739 UINT64_C(2080376605), // TABORT
1740 UINT64_C(2080376413), // TABORTDC
1741 UINT64_C(2080376541), // TABORTDCI
1742 UINT64_C(2080376349), // TABORTWC
1743 UINT64_C(2080376477), // TABORTWCI
1744 UINT64_C(1207959552), // TAILB
1745 UINT64_C(1207959552), // TAILB8
1746 UINT64_C(1207959552), // TAILBA
1747 UINT64_C(1207959552), // TAILBA8
1748 UINT64_C(1317012512), // TAILBCTR
1749 UINT64_C(1317012512), // TAILBCTR8
1750 UINT64_C(2080376093), // TBEGIN
1751 UINT64_C(0), // TBEGIN_RET
1752 UINT64_C(2080376220), // TCHECK
1753 UINT64_C(0), // TCHECK_RET
1754 UINT64_C(0), // TCRETURNai
1755 UINT64_C(0), // TCRETURNai8
1756 UINT64_C(0), // TCRETURNdi
1757 UINT64_C(0), // TCRETURNdi8
1758 UINT64_C(0), // TCRETURNri
1759 UINT64_C(0), // TCRETURNri8
1760 UINT64_C(2080374920), // TD
1761 UINT64_C(134217728), // TDI
1762 UINT64_C(2080376157), // TEND
1763 UINT64_C(2080375524), // TLBIA
1764 UINT64_C(2080375396), // TLBIE
1765 UINT64_C(2080375396), // TLBIE8P9
1766 UINT64_C(2080374820), // TLBIEIO
1767 UINT64_C(2080375332), // TLBIEL
1768 UINT64_C(2080374884), // TLBIEP
1769 UINT64_C(2080374884), // TLBIEP8
1770 UINT64_C(2080375396), // TLBIEP9
1771 UINT64_C(2080374820), // TLBILX
1772 UINT64_C(2080376356), // TLBIVAX
1773 UINT64_C(2080376740), // TLBLD
1774 UINT64_C(2080376804), // TLBLI
1775 UINT64_C(2080376676), // TLBRE
1776 UINT64_C(2080376676), // TLBRE2
1777 UINT64_C(2080376612), // TLBSX
1778 UINT64_C(2080376612), // TLBSX2
1779 UINT64_C(2080376613), // TLBSX2D
1780 UINT64_C(2080375916), // TLBSYNC
1781 UINT64_C(2080375912), // TLBSYNCIO
1782 UINT64_C(2080376740), // TLBWE
1783 UINT64_C(2080376740), // TLBWE2
1784 UINT64_C(0), // TLSGDAIX
1785 UINT64_C(0), // TLSGDAIX8
1786 UINT64_C(0), // TLSLDAIX
1787 UINT64_C(0), // TLSLDAIX8
1788 UINT64_C(2145386504), // TRAP
1789 UINT64_C(2080376797), // TRECHKPT
1790 UINT64_C(2080376669), // TRECLAIM
1791 UINT64_C(2080376285), // TSR
1792 UINT64_C(2080374792), // TW
1793 UINT64_C(201326592), // TWI
1794 UINT64_C(0), // UNENCODED_NOP
1795 UINT64_C(0), // UpdateGBR
1796 UINT64_C(268436483), // VABSDUB
1797 UINT64_C(268436547), // VABSDUH
1798 UINT64_C(268436611), // VABSDUW
1799 UINT64_C(268435776), // VADDCUQ
1800 UINT64_C(268435840), // VADDCUW
1801 UINT64_C(268435517), // VADDECUQ
1802 UINT64_C(268435516), // VADDEUQM
1803 UINT64_C(268435466), // VADDFP
1804 UINT64_C(268436224), // VADDSBS
1805 UINT64_C(268436288), // VADDSHS
1806 UINT64_C(268436352), // VADDSWS
1807 UINT64_C(268435456), // VADDUBM
1808 UINT64_C(268435968), // VADDUBS
1809 UINT64_C(268435648), // VADDUDM
1810 UINT64_C(268435520), // VADDUHM
1811 UINT64_C(268436032), // VADDUHS
1812 UINT64_C(268435712), // VADDUQM
1813 UINT64_C(268435584), // VADDUWM
1814 UINT64_C(268436096), // VADDUWS
1815 UINT64_C(268436484), // VAND
1816 UINT64_C(268436548), // VANDC
1817 UINT64_C(268436738), // VAVGSB
1818 UINT64_C(268436802), // VAVGSH
1819 UINT64_C(268436866), // VAVGSW
1820 UINT64_C(268436482), // VAVGUB
1821 UINT64_C(268436546), // VAVGUH
1822 UINT64_C(268436610), // VAVGUW
1823 UINT64_C(268436940), // VBPERMD
1824 UINT64_C(268436812), // VBPERMQ
1825 UINT64_C(268436298), // VCFSX
1826 UINT64_C(268436298), // VCFSX_0
1827 UINT64_C(268436813), // VCFUGED
1828 UINT64_C(268436234), // VCFUX
1829 UINT64_C(268436234), // VCFUX_0
1830 UINT64_C(268436744), // VCIPHER
1831 UINT64_C(268436745), // VCIPHERLAST
1832 UINT64_C(268435853), // VCLRLB
1833 UINT64_C(268435917), // VCLRRB
1834 UINT64_C(268437250), // VCLZB
1835 UINT64_C(268437442), // VCLZD
1836 UINT64_C(268437380), // VCLZDM
1837 UINT64_C(268437314), // VCLZH
1838 UINT64_C(268436994), // VCLZLSBB
1839 UINT64_C(268437378), // VCLZW
1840 UINT64_C(268436422), // VCMPBFP
1841 UINT64_C(268437446), // VCMPBFP_rec
1842 UINT64_C(268435654), // VCMPEQFP
1843 UINT64_C(268436678), // VCMPEQFP_rec
1844 UINT64_C(268435462), // VCMPEQUB
1845 UINT64_C(268436486), // VCMPEQUB_rec
1846 UINT64_C(268435655), // VCMPEQUD
1847 UINT64_C(268436679), // VCMPEQUD_rec
1848 UINT64_C(268435526), // VCMPEQUH
1849 UINT64_C(268436550), // VCMPEQUH_rec
1850 UINT64_C(268435911), // VCMPEQUQ
1851 UINT64_C(268436935), // VCMPEQUQ_rec
1852 UINT64_C(268435590), // VCMPEQUW
1853 UINT64_C(268436614), // VCMPEQUW_rec
1854 UINT64_C(268435910), // VCMPGEFP
1855 UINT64_C(268436934), // VCMPGEFP_rec
1856 UINT64_C(268436166), // VCMPGTFP
1857 UINT64_C(268437190), // VCMPGTFP_rec
1858 UINT64_C(268436230), // VCMPGTSB
1859 UINT64_C(268437254), // VCMPGTSB_rec
1860 UINT64_C(268436423), // VCMPGTSD
1861 UINT64_C(268437447), // VCMPGTSD_rec
1862 UINT64_C(268436294), // VCMPGTSH
1863 UINT64_C(268437318), // VCMPGTSH_rec
1864 UINT64_C(268436359), // VCMPGTSQ
1865 UINT64_C(268437383), // VCMPGTSQ_rec
1866 UINT64_C(268436358), // VCMPGTSW
1867 UINT64_C(268437382), // VCMPGTSW_rec
1868 UINT64_C(268435974), // VCMPGTUB
1869 UINT64_C(268436998), // VCMPGTUB_rec
1870 UINT64_C(268436167), // VCMPGTUD
1871 UINT64_C(268437191), // VCMPGTUD_rec
1872 UINT64_C(268436038), // VCMPGTUH
1873 UINT64_C(268437062), // VCMPGTUH_rec
1874 UINT64_C(268436103), // VCMPGTUQ
1875 UINT64_C(268437127), // VCMPGTUQ_rec
1876 UINT64_C(268436102), // VCMPGTUW
1877 UINT64_C(268437126), // VCMPGTUW_rec
1878 UINT64_C(268435463), // VCMPNEB
1879 UINT64_C(268436487), // VCMPNEB_rec
1880 UINT64_C(268435527), // VCMPNEH
1881 UINT64_C(268436551), // VCMPNEH_rec
1882 UINT64_C(268435591), // VCMPNEW
1883 UINT64_C(268436615), // VCMPNEW_rec
1884 UINT64_C(268435719), // VCMPNEZB
1885 UINT64_C(268436743), // VCMPNEZB_rec
1886 UINT64_C(268435783), // VCMPNEZH
1887 UINT64_C(268436807), // VCMPNEZH_rec
1888 UINT64_C(268435847), // VCMPNEZW
1889 UINT64_C(268436871), // VCMPNEZW_rec
1890 UINT64_C(268435777), // VCMPSQ
1891 UINT64_C(268435713), // VCMPUQ
1892 UINT64_C(270009922), // VCNTMBB
1893 UINT64_C(270403138), // VCNTMBD
1894 UINT64_C(270140994), // VCNTMBH
1895 UINT64_C(270272066), // VCNTMBW
1896 UINT64_C(268436426), // VCTSXS
1897 UINT64_C(268436426), // VCTSXS_0
1898 UINT64_C(268436362), // VCTUXS
1899 UINT64_C(268436362), // VCTUXS_0
1900 UINT64_C(270272002), // VCTZB
1901 UINT64_C(270468610), // VCTZD
1902 UINT64_C(268437444), // VCTZDM
1903 UINT64_C(270337538), // VCTZH
1904 UINT64_C(268502530), // VCTZLSBB
1905 UINT64_C(270403074), // VCTZW
1906 UINT64_C(268436427), // VDIVESD
1907 UINT64_C(268436235), // VDIVESQ
1908 UINT64_C(268436363), // VDIVESW
1909 UINT64_C(268436171), // VDIVEUD
1910 UINT64_C(268435979), // VDIVEUQ
1911 UINT64_C(268436107), // VDIVEUW
1912 UINT64_C(268435915), // VDIVSD
1913 UINT64_C(268435723), // VDIVSQ
1914 UINT64_C(268435851), // VDIVSW
1915 UINT64_C(268435659), // VDIVUD
1916 UINT64_C(268435467), // VDIVUQ
1917 UINT64_C(268435595), // VDIVUW
1918 UINT64_C(268437124), // VEQV
1919 UINT64_C(268437058), // VEXPANDBM
1920 UINT64_C(268633666), // VEXPANDDM
1921 UINT64_C(268502594), // VEXPANDHM
1922 UINT64_C(268699202), // VEXPANDQM
1923 UINT64_C(268568130), // VEXPANDWM
1924 UINT64_C(268435850), // VEXPTEFP
1925 UINT64_C(268435486), // VEXTDDVLX
1926 UINT64_C(268435487), // VEXTDDVRX
1927 UINT64_C(268435480), // VEXTDUBVLX
1928 UINT64_C(268435481), // VEXTDUBVRX
1929 UINT64_C(268435482), // VEXTDUHVLX
1930 UINT64_C(268435483), // VEXTDUHVRX
1931 UINT64_C(268435484), // VEXTDUWVLX
1932 UINT64_C(268435485), // VEXTDUWVRX
1933 UINT64_C(268961346), // VEXTRACTBM
1934 UINT64_C(268436173), // VEXTRACTD
1935 UINT64_C(269157954), // VEXTRACTDM
1936 UINT64_C(269026882), // VEXTRACTHM
1937 UINT64_C(269223490), // VEXTRACTQM
1938 UINT64_C(268435981), // VEXTRACTUB
1939 UINT64_C(268436045), // VEXTRACTUH
1940 UINT64_C(268436109), // VEXTRACTUW
1941 UINT64_C(269092418), // VEXTRACTWM
1942 UINT64_C(270009858), // VEXTSB2D
1943 UINT64_C(270009858), // VEXTSB2Ds
1944 UINT64_C(269485570), // VEXTSB2W
1945 UINT64_C(269485570), // VEXTSB2Ws
1946 UINT64_C(270206466), // VEXTSD2Q
1947 UINT64_C(270075394), // VEXTSH2D
1948 UINT64_C(270075394), // VEXTSH2Ds
1949 UINT64_C(269551106), // VEXTSH2W
1950 UINT64_C(269551106), // VEXTSH2Ws
1951 UINT64_C(270140930), // VEXTSW2D
1952 UINT64_C(270140930), // VEXTSW2Ds
1953 UINT64_C(268437005), // VEXTUBLX
1954 UINT64_C(268437261), // VEXTUBRX
1955 UINT64_C(268437069), // VEXTUHLX
1956 UINT64_C(268437325), // VEXTUHRX
1957 UINT64_C(268437133), // VEXTUWLX
1958 UINT64_C(268437389), // VEXTUWRX
1959 UINT64_C(268436748), // VGBBD
1960 UINT64_C(268436684), // VGNB
1961 UINT64_C(268435983), // VINSBLX
1962 UINT64_C(268436239), // VINSBRX
1963 UINT64_C(268435471), // VINSBVLX
1964 UINT64_C(268435727), // VINSBVRX
1965 UINT64_C(268435919), // VINSD
1966 UINT64_C(268436175), // VINSDLX
1967 UINT64_C(268436431), // VINSDRX
1968 UINT64_C(268436237), // VINSERTB
1969 UINT64_C(268436429), // VINSERTD
1970 UINT64_C(268436301), // VINSERTH
1971 UINT64_C(268436365), // VINSERTW
1972 UINT64_C(268436047), // VINSHLX
1973 UINT64_C(268436303), // VINSHRX
1974 UINT64_C(268435535), // VINSHVLX
1975 UINT64_C(268435791), // VINSHVRX
1976 UINT64_C(268435663), // VINSW
1977 UINT64_C(268436111), // VINSWLX
1978 UINT64_C(268436367), // VINSWRX
1979 UINT64_C(268435599), // VINSWVLX
1980 UINT64_C(268435855), // VINSWVRX
1981 UINT64_C(268435914), // VLOGEFP
1982 UINT64_C(268435502), // VMADDFP
1983 UINT64_C(268436490), // VMAXFP
1984 UINT64_C(268435714), // VMAXSB
1985 UINT64_C(268435906), // VMAXSD
1986 UINT64_C(268435778), // VMAXSH
1987 UINT64_C(268435842), // VMAXSW
1988 UINT64_C(268435458), // VMAXUB
1989 UINT64_C(268435650), // VMAXUD
1990 UINT64_C(268435522), // VMAXUH
1991 UINT64_C(268435586), // VMAXUW
1992 UINT64_C(268435488), // VMHADDSHS
1993 UINT64_C(268435489), // VMHRADDSHS
1994 UINT64_C(268436554), // VMINFP
1995 UINT64_C(268436226), // VMINSB
1996 UINT64_C(268436418), // VMINSD
1997 UINT64_C(268436290), // VMINSH
1998 UINT64_C(268436354), // VMINSW
1999 UINT64_C(268435970), // VMINUB
2000 UINT64_C(268436162), // VMINUD
2001 UINT64_C(268436034), // VMINUH
2002 UINT64_C(268436098), // VMINUW
2003 UINT64_C(268435490), // VMLADDUHM
2004 UINT64_C(268437451), // VMODSD
2005 UINT64_C(268437259), // VMODSQ
2006 UINT64_C(268437387), // VMODSW
2007 UINT64_C(268437195), // VMODUD
2008 UINT64_C(268437003), // VMODUQ
2009 UINT64_C(268437131), // VMODUW
2010 UINT64_C(268437388), // VMRGEW
2011 UINT64_C(268435468), // VMRGHB
2012 UINT64_C(268435532), // VMRGHH
2013 UINT64_C(268435596), // VMRGHW
2014 UINT64_C(268435724), // VMRGLB
2015 UINT64_C(268435788), // VMRGLH
2016 UINT64_C(268435852), // VMRGLW
2017 UINT64_C(268437132), // VMRGOW
2018 UINT64_C(268435479), // VMSUMCUD
2019 UINT64_C(268435493), // VMSUMMBM
2020 UINT64_C(268435496), // VMSUMSHM
2021 UINT64_C(268435497), // VMSUMSHS
2022 UINT64_C(268435492), // VMSUMUBM
2023 UINT64_C(268435491), // VMSUMUDM
2024 UINT64_C(268435494), // VMSUMUHM
2025 UINT64_C(268435495), // VMSUMUHS
2026 UINT64_C(268435457), // VMUL10CUQ
2027 UINT64_C(268435521), // VMUL10ECUQ
2028 UINT64_C(268436033), // VMUL10EUQ
2029 UINT64_C(268435969), // VMUL10UQ
2030 UINT64_C(268436232), // VMULESB
2031 UINT64_C(268436424), // VMULESD
2032 UINT64_C(268436296), // VMULESH
2033 UINT64_C(268436360), // VMULESW
2034 UINT64_C(268435976), // VMULEUB
2035 UINT64_C(268436168), // VMULEUD
2036 UINT64_C(268436040), // VMULEUH
2037 UINT64_C(268436104), // VMULEUW
2038 UINT64_C(268436425), // VMULHSD
2039 UINT64_C(268436361), // VMULHSW
2040 UINT64_C(268436169), // VMULHUD
2041 UINT64_C(268436105), // VMULHUW
2042 UINT64_C(268435913), // VMULLD
2043 UINT64_C(268435720), // VMULOSB
2044 UINT64_C(268435912), // VMULOSD
2045 UINT64_C(268435784), // VMULOSH
2046 UINT64_C(268435848), // VMULOSW
2047 UINT64_C(268435464), // VMULOUB
2048 UINT64_C(268435656), // VMULOUD
2049 UINT64_C(268435528), // VMULOUH
2050 UINT64_C(268435592), // VMULOUW
2051 UINT64_C(268435593), // VMULUWM
2052 UINT64_C(268436868), // VNAND
2053 UINT64_C(268436808), // VNCIPHER
2054 UINT64_C(268436809), // VNCIPHERLAST
2055 UINT64_C(268895746), // VNEGD
2056 UINT64_C(268830210), // VNEGW
2057 UINT64_C(268435503), // VNMSUBFP
2058 UINT64_C(268436740), // VNOR
2059 UINT64_C(268436612), // VOR
2060 UINT64_C(268436804), // VORC
2061 UINT64_C(268436941), // VPDEPD
2062 UINT64_C(268435499), // VPERM
2063 UINT64_C(268435515), // VPERMR
2064 UINT64_C(268435501), // VPERMXOR
2065 UINT64_C(268436877), // VPEXTD
2066 UINT64_C(268436238), // VPKPX
2067 UINT64_C(268436942), // VPKSDSS
2068 UINT64_C(268436814), // VPKSDUS
2069 UINT64_C(268435854), // VPKSHSS
2070 UINT64_C(268435726), // VPKSHUS
2071 UINT64_C(268435918), // VPKSWSS
2072 UINT64_C(268435790), // VPKSWUS
2073 UINT64_C(268436558), // VPKUDUM
2074 UINT64_C(268436686), // VPKUDUS
2075 UINT64_C(268435470), // VPKUHUM
2076 UINT64_C(268435598), // VPKUHUS
2077 UINT64_C(268435534), // VPKUWUM
2078 UINT64_C(268435662), // VPKUWUS
2079 UINT64_C(268436488), // VPMSUMB
2080 UINT64_C(268436680), // VPMSUMD
2081 UINT64_C(268436552), // VPMSUMH
2082 UINT64_C(268436616), // VPMSUMW
2083 UINT64_C(268437251), // VPOPCNTB
2084 UINT64_C(268437443), // VPOPCNTD
2085 UINT64_C(268437315), // VPOPCNTH
2086 UINT64_C(268437379), // VPOPCNTW
2087 UINT64_C(269026818), // VPRTYBD
2088 UINT64_C(269092354), // VPRTYBQ
2089 UINT64_C(268961282), // VPRTYBW
2090 UINT64_C(268435722), // VREFP
2091 UINT64_C(268436170), // VRFIM
2092 UINT64_C(268435978), // VRFIN
2093 UINT64_C(268436106), // VRFIP
2094 UINT64_C(268436042), // VRFIZ
2095 UINT64_C(268435460), // VRLB
2096 UINT64_C(268435652), // VRLD
2097 UINT64_C(268435653), // VRLDMI
2098 UINT64_C(268435909), // VRLDNM
2099 UINT64_C(268435524), // VRLH
2100 UINT64_C(268435461), // VRLQ
2101 UINT64_C(268435525), // VRLQMI
2102 UINT64_C(268435781), // VRLQNM
2103 UINT64_C(268435588), // VRLW
2104 UINT64_C(268435589), // VRLWMI
2105 UINT64_C(268435845), // VRLWNM
2106 UINT64_C(268435786), // VRSQRTEFP
2107 UINT64_C(268436936), // VSBOX
2108 UINT64_C(268435498), // VSEL
2109 UINT64_C(268437186), // VSHASIGMAD
2110 UINT64_C(268437122), // VSHASIGMAW
2111 UINT64_C(268435908), // VSL
2112 UINT64_C(268435716), // VSLB
2113 UINT64_C(268436932), // VSLD
2114 UINT64_C(268435478), // VSLDBI
2115 UINT64_C(268435500), // VSLDOI
2116 UINT64_C(268435780), // VSLH
2117 UINT64_C(268436492), // VSLO
2118 UINT64_C(268435717), // VSLQ
2119 UINT64_C(268437316), // VSLV
2120 UINT64_C(268435844), // VSLW
2121 UINT64_C(268435980), // VSPLTB
2122 UINT64_C(268435980), // VSPLTBs
2123 UINT64_C(268436044), // VSPLTH
2124 UINT64_C(268436044), // VSPLTHs
2125 UINT64_C(268436236), // VSPLTISB
2126 UINT64_C(268436300), // VSPLTISH
2127 UINT64_C(268436364), // VSPLTISW
2128 UINT64_C(268436108), // VSPLTW
2129 UINT64_C(268436164), // VSR
2130 UINT64_C(268436228), // VSRAB
2131 UINT64_C(268436420), // VSRAD
2132 UINT64_C(268436292), // VSRAH
2133 UINT64_C(268436229), // VSRAQ
2134 UINT64_C(268436356), // VSRAW
2135 UINT64_C(268435972), // VSRB
2136 UINT64_C(268437188), // VSRD
2137 UINT64_C(268435990), // VSRDBI
2138 UINT64_C(268436036), // VSRH
2139 UINT64_C(268436556), // VSRO
2140 UINT64_C(268435973), // VSRQ
2141 UINT64_C(268437252), // VSRV
2142 UINT64_C(268436100), // VSRW
2143 UINT64_C(268435469), // VSTRIBL
2144 UINT64_C(268436493), // VSTRIBL_rec
2145 UINT64_C(268501005), // VSTRIBR
2146 UINT64_C(268502029), // VSTRIBR_rec
2147 UINT64_C(268566541), // VSTRIHL
2148 UINT64_C(268567565), // VSTRIHL_rec
2149 UINT64_C(268632077), // VSTRIHR
2150 UINT64_C(268633101), // VSTRIHR_rec
2151 UINT64_C(268436800), // VSUBCUQ
2152 UINT64_C(268436864), // VSUBCUW
2153 UINT64_C(268435519), // VSUBECUQ
2154 UINT64_C(268435518), // VSUBEUQM
2155 UINT64_C(268435530), // VSUBFP
2156 UINT64_C(268437248), // VSUBSBS
2157 UINT64_C(268437312), // VSUBSHS
2158 UINT64_C(268437376), // VSUBSWS
2159 UINT64_C(268436480), // VSUBUBM
2160 UINT64_C(268436992), // VSUBUBS
2161 UINT64_C(268436672), // VSUBUDM
2162 UINT64_C(268436544), // VSUBUHM
2163 UINT64_C(268437056), // VSUBUHS
2164 UINT64_C(268436736), // VSUBUQM
2165 UINT64_C(268436608), // VSUBUWM
2166 UINT64_C(268437120), // VSUBUWS
2167 UINT64_C(268437128), // VSUM2SWS
2168 UINT64_C(268437256), // VSUM4SBS
2169 UINT64_C(268437064), // VSUM4SHS
2170 UINT64_C(268437000), // VSUM4UBS
2171 UINT64_C(268437384), // VSUMSWS
2172 UINT64_C(268435587), // VUCMPRHB
2173 UINT64_C(268435715), // VUCMPRHH
2174 UINT64_C(268435459), // VUCMPRHN
2175 UINT64_C(268435651), // VUCMPRLB
2176 UINT64_C(268435779), // VUCMPRLH
2177 UINT64_C(268435523), // VUCMPRLN
2178 UINT64_C(268436302), // VUPKHPX
2179 UINT64_C(268435982), // VUPKHSB
2180 UINT64_C(268436046), // VUPKHSH
2181 UINT64_C(268435843), // VUPKHSNTOB
2182 UINT64_C(268437070), // VUPKHSW
2183 UINT64_C(268960131), // VUPKINT4TOBF16
2184 UINT64_C(269484419), // VUPKINT4TOFP32
2185 UINT64_C(268566915), // VUPKINT8TOBF16
2186 UINT64_C(269222275), // VUPKINT8TOFP32
2187 UINT64_C(268436430), // VUPKLPX
2188 UINT64_C(268436110), // VUPKLSB
2189 UINT64_C(268436174), // VUPKLSH
2190 UINT64_C(268501379), // VUPKLSNTOB
2191 UINT64_C(268437198), // VUPKLSW
2192 UINT64_C(268436676), // VXOR
2193 UINT64_C(268436676), // V_SET0
2194 UINT64_C(268436676), // V_SET0B
2195 UINT64_C(268436676), // V_SET0H
2196 UINT64_C(270467980), // V_SETALLONES
2197 UINT64_C(270467980), // V_SETALLONESB
2198 UINT64_C(270467980), // V_SETALLONESH
2199 UINT64_C(2080374844), // WAIT
2200 UINT64_C(2080374844), // WAITP10
2201 UINT64_C(2080375046), // WRTEE
2202 UINT64_C(2080375110), // WRTEEI
2203 UINT64_C(2080375416), // XOR
2204 UINT64_C(2080375416), // XOR8
2205 UINT64_C(2080375417), // XOR8_rec
2206 UINT64_C(1744830464), // XORI
2207 UINT64_C(1744830464), // XORI8
2208 UINT64_C(1811939328), // XORIS
2209 UINT64_C(1811939328), // XORIS8
2210 UINT64_C(2080375417), // XOR_rec
2211 UINT64_C(4026533220), // XSABSDP
2212 UINT64_C(4227860040), // XSABSQP
2213 UINT64_C(3959423808), // XSADDADDSUQM
2214 UINT64_C(3959423744), // XSADDADDUQM
2215 UINT64_C(4026532096), // XSADDDP
2216 UINT64_C(4227858440), // XSADDQP
2217 UINT64_C(4227858441), // XSADDQPO
2218 UINT64_C(4026531840), // XSADDSP
2219 UINT64_C(3959424768), // XSADDSUBSUQM
2220 UINT64_C(3959423872), // XSADDSUBUQM
2221 UINT64_C(4026531864), // XSCMPEQDP
2222 UINT64_C(4227858568), // XSCMPEQQP
2223 UINT64_C(4026532312), // XSCMPEXPDP
2224 UINT64_C(4227858760), // XSCMPEXPQP
2225 UINT64_C(4026531992), // XSCMPGEDP
2226 UINT64_C(4227858824), // XSCMPGEQP
2227 UINT64_C(4026531928), // XSCMPGTDP
2228 UINT64_C(4227858888), // XSCMPGTQP
2229 UINT64_C(4026532184), // XSCMPODP
2230 UINT64_C(4227858696), // XSCMPOQP
2231 UINT64_C(4026532120), // XSCMPUDP
2232 UINT64_C(4227859720), // XSCMPUQP
2233 UINT64_C(4026533248), // XSCPSGNDP
2234 UINT64_C(4227858632), // XSCPSGNQP
2235 UINT64_C(4027647340), // XSCVDPHP
2236 UINT64_C(4229301896), // XSCVDPQP
2237 UINT64_C(4026532900), // XSCVDPSP
2238 UINT64_C(4026532908), // XSCVDPSPN
2239 UINT64_C(4026533216), // XSCVDPSXDS
2240 UINT64_C(4026533216), // XSCVDPSXDSs
2241 UINT64_C(4026532192), // XSCVDPSXWS
2242 UINT64_C(4026532192), // XSCVDPSXWSs
2243 UINT64_C(4026533152), // XSCVDPUXDS
2244 UINT64_C(4026533152), // XSCVDPUXDSs
2245 UINT64_C(4026532128), // XSCVDPUXWS
2246 UINT64_C(4026532128), // XSCVDPUXWSs
2247 UINT64_C(4027581804), // XSCVHPDP
2248 UINT64_C(4229170824), // XSCVQPDP
2249 UINT64_C(4229170825), // XSCVQPDPO
2250 UINT64_C(4229498504), // XSCVQPSDZ
2251 UINT64_C(4228384392), // XSCVQPSQZ
2252 UINT64_C(4228449928), // XSCVQPSWZ
2253 UINT64_C(4228974216), // XSCVQPUDZ
2254 UINT64_C(4227860104), // XSCVQPUQZ
2255 UINT64_C(4227925640), // XSCVQPUWZ
2256 UINT64_C(4228515464), // XSCVSDQP
2257 UINT64_C(4026533156), // XSCVSPDP
2258 UINT64_C(4026533164), // XSCVSPDPN
2259 UINT64_C(4228581000), // XSCVSQQP
2260 UINT64_C(4026533344), // XSCVSXDDP
2261 UINT64_C(4026533088), // XSCVSXDSP
2262 UINT64_C(4227991176), // XSCVUDQP
2263 UINT64_C(4228056712), // XSCVUQQP
2264 UINT64_C(4026533280), // XSCVUXDDP
2265 UINT64_C(4026533024), // XSCVUXDSP
2266 UINT64_C(4026532288), // XSDIVDP
2267 UINT64_C(4227859528), // XSDIVQP
2268 UINT64_C(4227859529), // XSDIVQPO
2269 UINT64_C(4026532032), // XSDIVSP
2270 UINT64_C(4026533676), // XSIEXPDP
2271 UINT64_C(4227860168), // XSIEXPQP
2272 UINT64_C(4026532104), // XSMADDADP
2273 UINT64_C(4026531848), // XSMADDASP
2274 UINT64_C(4026532168), // XSMADDMDP
2275 UINT64_C(4026531912), // XSMADDMSP
2276 UINT64_C(4227859208), // XSMADDQP
2277 UINT64_C(4227859209), // XSMADDQPO
2278 UINT64_C(4026532864), // XSMAXCDP
2279 UINT64_C(4227859784), // XSMAXCQP
2280 UINT64_C(4026533120), // XSMAXDP
2281 UINT64_C(4026532992), // XSMAXJDP
2282 UINT64_C(3959424832), // XSMERGE2T1UQM
2283 UINT64_C(3959424896), // XSMERGE2T2UQM
2284 UINT64_C(3959423688), // XSMERGE2T3UQM
2285 UINT64_C(3959423944), // XSMERGE3T1UQM
2286 UINT64_C(4026532928), // XSMINCDP
2287 UINT64_C(4227859912), // XSMINCQP
2288 UINT64_C(4026533184), // XSMINDP
2289 UINT64_C(4026533056), // XSMINJDP
2290 UINT64_C(4026532232), // XSMSUBADP
2291 UINT64_C(4026531976), // XSMSUBASP
2292 UINT64_C(4026532296), // XSMSUBMDP
2293 UINT64_C(4026532040), // XSMSUBMSP
2294 UINT64_C(4227859272), // XSMSUBQP
2295 UINT64_C(4227859273), // XSMSUBQPO
2296 UINT64_C(4026532224), // XSMULDP
2297 UINT64_C(4227858504), // XSMULQP
2298 UINT64_C(4227858505), // XSMULQPO
2299 UINT64_C(4026531968), // XSMULSP
2300 UINT64_C(4026533284), // XSNABSDP
2301 UINT64_C(4026533284), // XSNABSDPs
2302 UINT64_C(4228384328), // XSNABSQP
2303 UINT64_C(4026533348), // XSNEGDP
2304 UINT64_C(4228908616), // XSNEGQP
2305 UINT64_C(4026533128), // XSNMADDADP
2306 UINT64_C(4026532872), // XSNMADDASP
2307 UINT64_C(4026533192), // XSNMADDMDP
2308 UINT64_C(4026532936), // XSNMADDMSP
2309 UINT64_C(4227859336), // XSNMADDQP
2310 UINT64_C(4227859337), // XSNMADDQPO
2311 UINT64_C(4026533256), // XSNMSUBADP
2312 UINT64_C(4026533000), // XSNMSUBASP
2313 UINT64_C(4026533320), // XSNMSUBMDP
2314 UINT64_C(4026533064), // XSNMSUBMSP
2315 UINT64_C(4227859400), // XSNMSUBQP
2316 UINT64_C(4227859401), // XSNMSUBQPO
2317 UINT64_C(4026532132), // XSRDPI
2318 UINT64_C(4026532268), // XSRDPIC
2319 UINT64_C(4026532324), // XSRDPIM
2320 UINT64_C(4026532260), // XSRDPIP
2321 UINT64_C(4026532196), // XSRDPIZ
2322 UINT64_C(3959424136), // XSREBASE2T1UQM
2323 UINT64_C(3959424392), // XSREBASE2T2UQM
2324 UINT64_C(3959424648), // XSREBASE2T3UQM
2325 UINT64_C(3959424712), // XSREBASE2T4UQM
2326 UINT64_C(3959424904), // XSREBASE3T1UQM
2327 UINT64_C(3959424968), // XSREBASE3T2UQM
2328 UINT64_C(3959424536), // XSREBASE3T3UQM
2329 UINT64_C(4026532200), // XSREDP
2330 UINT64_C(4026531944), // XSRESP
2331 UINT64_C(4227858442), // XSRQPI
2332 UINT64_C(4227858443), // XSRQPIX
2333 UINT64_C(4227858506), // XSRQPXP
2334 UINT64_C(4026532964), // XSRSP
2335 UINT64_C(4026532136), // XSRSQRTEDP
2336 UINT64_C(4026531880), // XSRSQRTESP
2337 UINT64_C(4026532140), // XSSQRTDP
2338 UINT64_C(4229629512), // XSSQRTQP
2339 UINT64_C(4229629513), // XSSQRTQPO
2340 UINT64_C(4026531884), // XSSQRTSP
2341 UINT64_C(4026532160), // XSSUBDP
2342 UINT64_C(4227859464), // XSSUBQP
2343 UINT64_C(4227859465), // XSSUBQPO
2344 UINT64_C(4026531904), // XSSUBSP
2345 UINT64_C(4026532328), // XSTDIVDP
2346 UINT64_C(4026532264), // XSTSQRTDP
2347 UINT64_C(4026533288), // XSTSTDCDP
2348 UINT64_C(4227859848), // XSTSTDCQP
2349 UINT64_C(4026533032), // XSTSTDCSP
2350 UINT64_C(4026533228), // XSXEXPDP
2351 UINT64_C(4227991112), // XSXEXPQP
2352 UINT64_C(4026598764), // XSXSIGDP
2353 UINT64_C(4229039688), // XSXSIGQP
2354 UINT64_C(4026533732), // XVABSDP
2355 UINT64_C(4026533476), // XVABSSP
2356 UINT64_C(4026532608), // XVADDDP
2357 UINT64_C(4026532352), // XVADDSP
2358 UINT64_C(4026532952), // XVADDUHM
2359 UINT64_C(4026532888), // XVADDUWM
2360 UINT64_C(3959423384), // XVBF16GER2
2361 UINT64_C(3959424912), // XVBF16GER2NN
2362 UINT64_C(3959423888), // XVBF16GER2NP
2363 UINT64_C(3959424400), // XVBF16GER2PN
2364 UINT64_C(3959423376), // XVBF16GER2PP
2365 UINT64_C(3959423384), // XVBF16GER2W
2366 UINT64_C(3959424912), // XVBF16GER2WNN
2367 UINT64_C(3959423888), // XVBF16GER2WNP
2368 UINT64_C(3959424400), // XVBF16GER2WPN
2369 UINT64_C(3959423376), // XVBF16GER2WPP
2370 UINT64_C(4026532632), // XVCMPEQDP
2371 UINT64_C(4026533656), // XVCMPEQDP_rec
2372 UINT64_C(4026532376), // XVCMPEQSP
2373 UINT64_C(4026533400), // XVCMPEQSP_rec
2374 UINT64_C(4026532760), // XVCMPGEDP
2375 UINT64_C(4026533784), // XVCMPGEDP_rec
2376 UINT64_C(4026532504), // XVCMPGESP
2377 UINT64_C(4026533528), // XVCMPGESP_rec
2378 UINT64_C(4026532696), // XVCMPGTDP
2379 UINT64_C(4026533720), // XVCMPGTDP_rec
2380 UINT64_C(4026532440), // XVCMPGTSP
2381 UINT64_C(4026533464), // XVCMPGTSP_rec
2382 UINT64_C(4026533760), // XVCPSGNDP
2383 UINT64_C(4026533504), // XVCPSGNSP
2384 UINT64_C(4027582316), // XVCVBF16SPN
2385 UINT64_C(4026533412), // XVCVDPSP
2386 UINT64_C(4026533728), // XVCVDPSXDS
2387 UINT64_C(4026532704), // XVCVDPSXWS
2388 UINT64_C(4026533664), // XVCVDPUXDS
2389 UINT64_C(4026532640), // XVCVDPUXWS
2390 UINT64_C(4028106604), // XVCVHPSP
2391 UINT64_C(4027647852), // XVCVSPBF16
2392 UINT64_C(4026533668), // XVCVSPDP
2393 UINT64_C(4028172140), // XVCVSPHP
2394 UINT64_C(4026533472), // XVCVSPSXDS
2395 UINT64_C(4026532448), // XVCVSPSXWS
2396 UINT64_C(4026533408), // XVCVSPUXDS
2397 UINT64_C(4026532384), // XVCVSPUXWS
2398 UINT64_C(4026533856), // XVCVSXDDP
2399 UINT64_C(4026533600), // XVCVSXDSP
2400 UINT64_C(4026532832), // XVCVSXWDP
2401 UINT64_C(4026532576), // XVCVSXWSP
2402 UINT64_C(4026533792), // XVCVUXDDP
2403 UINT64_C(4026533536), // XVCVUXDSP
2404 UINT64_C(4026532768), // XVCVUXWDP
2405 UINT64_C(4026532512), // XVCVUXWSP
2406 UINT64_C(4026532800), // XVDIVDP
2407 UINT64_C(4026532544), // XVDIVSP
2408 UINT64_C(3959423128), // XVF16GER2
2409 UINT64_C(3959424656), // XVF16GER2NN
2410 UINT64_C(3959423632), // XVF16GER2NP
2411 UINT64_C(3959424144), // XVF16GER2PN
2412 UINT64_C(3959423120), // XVF16GER2PP
2413 UINT64_C(3959423128), // XVF16GER2W
2414 UINT64_C(3959424656), // XVF16GER2WNN
2415 UINT64_C(3959423632), // XVF16GER2WNP
2416 UINT64_C(3959424144), // XVF16GER2WPN
2417 UINT64_C(3959423120), // XVF16GER2WPP
2418 UINT64_C(3959423192), // XVF32GER
2419 UINT64_C(3959424720), // XVF32GERNN
2420 UINT64_C(3959423696), // XVF32GERNP
2421 UINT64_C(3959424208), // XVF32GERPN
2422 UINT64_C(3959423184), // XVF32GERPP
2423 UINT64_C(3959423192), // XVF32GERW
2424 UINT64_C(3959424720), // XVF32GERWNN
2425 UINT64_C(3959423696), // XVF32GERWNP
2426 UINT64_C(3959424208), // XVF32GERWPN
2427 UINT64_C(3959423184), // XVF32GERWPP
2428 UINT64_C(3959423448), // XVF64GER
2429 UINT64_C(3959424976), // XVF64GERNN
2430 UINT64_C(3959423952), // XVF64GERNP
2431 UINT64_C(3959424464), // XVF64GERPN
2432 UINT64_C(3959423440), // XVF64GERPP
2433 UINT64_C(3959423448), // XVF64GERW
2434 UINT64_C(3959424976), // XVF64GERWNN
2435 UINT64_C(3959423952), // XVF64GERWNP
2436 UINT64_C(3959424464), // XVF64GERWPN
2437 UINT64_C(3959423440), // XVF64GERWPP
2438 UINT64_C(3959423576), // XVI16GER2
2439 UINT64_C(3959423832), // XVI16GER2PP
2440 UINT64_C(3959423320), // XVI16GER2S
2441 UINT64_C(3959423312), // XVI16GER2SPP
2442 UINT64_C(3959423320), // XVI16GER2SW
2443 UINT64_C(3959423312), // XVI16GER2SWPP
2444 UINT64_C(3959423576), // XVI16GER2W
2445 UINT64_C(3959423832), // XVI16GER2WPP
2446 UINT64_C(3959423256), // XVI4GER8
2447 UINT64_C(3959423248), // XVI4GER8PP
2448 UINT64_C(3959423256), // XVI4GER8W
2449 UINT64_C(3959423248), // XVI4GER8WPP
2450 UINT64_C(3959423000), // XVI8GER4
2451 UINT64_C(3959422992), // XVI8GER4PP
2452 UINT64_C(3959423768), // XVI8GER4SPP
2453 UINT64_C(3959423000), // XVI8GER4W
2454 UINT64_C(3959422992), // XVI8GER4WPP
2455 UINT64_C(3959423768), // XVI8GER4WSPP
2456 UINT64_C(4026533824), // XVIEXPDP
2457 UINT64_C(4026533568), // XVIEXPSP
2458 UINT64_C(4026532616), // XVMADDADP
2459 UINT64_C(4026532360), // XVMADDASP
2460 UINT64_C(4026532680), // XVMADDMDP
2461 UINT64_C(4026532424), // XVMADDMSP
2462 UINT64_C(4026533632), // XVMAXDP
2463 UINT64_C(4026533376), // XVMAXSP
2464 UINT64_C(4026533696), // XVMINDP
2465 UINT64_C(4026533440), // XVMINSP
2466 UINT64_C(4026532744), // XVMSUBADP
2467 UINT64_C(4026532488), // XVMSUBASP
2468 UINT64_C(4026532808), // XVMSUBMDP
2469 UINT64_C(4026532552), // XVMSUBMSP
2470 UINT64_C(4026532736), // XVMULDP
2471 UINT64_C(4026533336), // XVMULHSH
2472 UINT64_C(4026533272), // XVMULHSW
2473 UINT64_C(4026532816), // XVMULHUH
2474 UINT64_C(4026532752), // XVMULHUW
2475 UINT64_C(4026532480), // XVMULSP
2476 UINT64_C(4026533208), // XVMULUHM
2477 UINT64_C(4026533144), // XVMULUWM
2478 UINT64_C(4026533796), // XVNABSDP
2479 UINT64_C(4026533540), // XVNABSSP
2480 UINT64_C(4026533860), // XVNEGDP
2481 UINT64_C(4026533604), // XVNEGSP
2482 UINT64_C(4026533640), // XVNMADDADP
2483 UINT64_C(4026533384), // XVNMADDASP
2484 UINT64_C(4026533704), // XVNMADDMDP
2485 UINT64_C(4026533448), // XVNMADDMSP
2486 UINT64_C(4026533768), // XVNMSUBADP
2487 UINT64_C(4026533512), // XVNMSUBASP
2488 UINT64_C(4026533832), // XVNMSUBMDP
2489 UINT64_C(4026533576), // XVNMSUBMSP
2490 UINT64_C(4026532644), // XVRDPI
2491 UINT64_C(4026532780), // XVRDPIC
2492 UINT64_C(4026532836), // XVRDPIM
2493 UINT64_C(4026532772), // XVRDPIP
2494 UINT64_C(4026532708), // XVRDPIZ
2495 UINT64_C(4026532712), // XVREDP
2496 UINT64_C(4026532456), // XVRESP
2497 UINT64_C(4026533312), // XVRLW
2498 UINT64_C(4026532388), // XVRSPI
2499 UINT64_C(4026532524), // XVRSPIC
2500 UINT64_C(4026532580), // XVRSPIM
2501 UINT64_C(4026532516), // XVRSPIP
2502 UINT64_C(4026532452), // XVRSPIZ
2503 UINT64_C(4026532648), // XVRSQRTEDP
2504 UINT64_C(4026532392), // XVRSQRTESP
2505 UINT64_C(4026532652), // XVSQRTDP
2506 UINT64_C(4026532396), // XVSQRTSP
2507 UINT64_C(4026532672), // XVSUBDP
2508 UINT64_C(4026532416), // XVSUBSP
2509 UINT64_C(4026533080), // XVSUBUHM
2510 UINT64_C(4026533016), // XVSUBUWM
2511 UINT64_C(4026532840), // XVTDIVDP
2512 UINT64_C(4026532584), // XVTDIVSP
2513 UINT64_C(4026664812), // XVTLSBB
2514 UINT64_C(4026532776), // XVTSQRTDP
2515 UINT64_C(4026532520), // XVTSQRTSP
2516 UINT64_C(4026533800), // XVTSTDCDP
2517 UINT64_C(4026533544), // XVTSTDCSP
2518 UINT64_C(4026533740), // XVXEXPDP
2519 UINT64_C(4027058028), // XVXEXPSP
2520 UINT64_C(4026599276), // XVXSIGDP
2521 UINT64_C(4027123564), // XVXSIGSP
2522 UINT64_C(4026533456), // XXAESDECP
2523 UINT64_C(4026533392), // XXAESENCP
2524 UINT64_C(4026533520), // XXAESGENLKP
2525 UINT64_C(360287972404232192), // XXBLENDVB
2526 UINT64_C(360287972404232240), // XXBLENDVD
2527 UINT64_C(360287972404232208), // XXBLENDVH
2528 UINT64_C(360287972404232224), // XXBLENDVW
2529 UINT64_C(4028041068), // XXBRD
2530 UINT64_C(4026992492), // XXBRH
2531 UINT64_C(4028565356), // XXBRQ
2532 UINT64_C(4027516780), // XXBRW
2533 UINT64_C(360287972471341072), // XXEVAL
2534 UINT64_C(4026532500), // XXEXTRACTUW
2535 UINT64_C(4026533672), // XXGENPCVBM
2536 UINT64_C(4026533738), // XXGENPCVDM
2537 UINT64_C(4026533674), // XXGENPCVHM
2538 UINT64_C(4026533736), // XXGENPCVWM
2539 UINT64_C(4026533584), // XXGFMUL128
2540 UINT64_C(4026532564), // XXINSERTW
2541 UINT64_C(4026532880), // XXLAND
2542 UINT64_C(4026532944), // XXLANDC
2543 UINT64_C(4026533328), // XXLEQV
2544 UINT64_C(4026533328), // XXLEQVOnes
2545 UINT64_C(4026533264), // XXLNAND
2546 UINT64_C(4026533136), // XXLNOR
2547 UINT64_C(4026533008), // XXLOR
2548 UINT64_C(4026533200), // XXLORC
2549 UINT64_C(4026533008), // XXLORf
2550 UINT64_C(4026533072), // XXLXOR
2551 UINT64_C(4026533072), // XXLXORdpz
2552 UINT64_C(4026533072), // XXLXORspz
2553 UINT64_C(4026533072), // XXLXORz
2554 UINT64_C(2080375138), // XXMFACC
2555 UINT64_C(2080375138), // XXMFACCW
2556 UINT64_C(4026531984), // XXMRGHW
2557 UINT64_C(4026532240), // XXMRGLW
2558 UINT64_C(2080440674), // XXMTACC
2559 UINT64_C(2080440674), // XXMTACCW
2560 UINT64_C(3959422984), // XXMULMUL
2561 UINT64_C(3959423048), // XXMULMULHIADD
2562 UINT64_C(3959423112), // XXMULMULLOADD
2563 UINT64_C(4026532048), // XXPERM
2564 UINT64_C(4026531920), // XXPERMDI
2565 UINT64_C(4026531920), // XXPERMDIs
2566 UINT64_C(4026532304), // XXPERMR
2567 UINT64_C(360287972471341056), // XXPERMX
2568 UINT64_C(4026531888), // XXSEL
2569 UINT64_C(2080571746), // XXSETACCZ
2570 UINT64_C(4026531856), // XXSLDWI
2571 UINT64_C(4026531856), // XXSLDWIs
2572 UINT64_C(360287972337123328), // XXSPLTI32DX
2573 UINT64_C(4026532560), // XXSPLTIB
2574 UINT64_C(360287972337385472), // XXSPLTIDP
2575 UINT64_C(360287972337516544), // XXSPLTIW
2576 UINT64_C(4026532496), // XXSPLTW
2577 UINT64_C(4026532496), // XXSPLTWs
2578 UINT64_C(3959423176), // XXSSUMUDM
2579 UINT64_C(3959423432), // XXSSUMUDMC
2580 UINT64_C(360287972471341088), // XXSSUMUDMCEXT
2581 UINT64_C(1073741824), // gBC
2582 UINT64_C(1073741826), // gBCA
2583 UINT64_C(1073741826), // gBCAat
2584 UINT64_C(1275069472), // gBCCTR
2585 UINT64_C(1275069473), // gBCCTRL
2586 UINT64_C(1073741825), // gBCL
2587 UINT64_C(1073741827), // gBCLA
2588 UINT64_C(1073741827), // gBCLAat
2589 UINT64_C(1275068448), // gBCLR
2590 UINT64_C(1275068449), // gBCLRL
2591 UINT64_C(1073741825), // gBCLat
2592 UINT64_C(1073741824), // gBCat
2593 };
2594 constexpr unsigned FirstSupportedOpcode = 422;
2595
2596 const unsigned opcode = MI.getOpcode();
2597 if (opcode < FirstSupportedOpcode)
2598 reportUnsupportedInst(Inst: MI);
2599 unsigned TableIndex = opcode - FirstSupportedOpcode;
2600 uint64_t Value = InstBits[TableIndex];
2601 uint64_t op = 0;
2602 (void)op; // suppress warning
2603 switch (opcode) {
2604 case PPC::ADDISdtprelHA:
2605 case PPC::ADDISdtprelHA32:
2606 case PPC::ADDISgotTprelHA:
2607 case PPC::ADDIStlsgdHA:
2608 case PPC::ADDIStlsldHA:
2609 case PPC::ADDIStocHA:
2610 case PPC::ADDIStocHA8:
2611 case PPC::ADDIdtprelL:
2612 case PPC::ADDIdtprelL32:
2613 case PPC::ADDItlsgdL:
2614 case PPC::ADDItlsgdL32:
2615 case PPC::ADDItlsgdLADDR:
2616 case PPC::ADDItlsgdLADDR32:
2617 case PPC::ADDItlsldL:
2618 case PPC::ADDItlsldL32:
2619 case PPC::ADDItlsldLADDR:
2620 case PPC::ADDItlsldLADDR32:
2621 case PPC::ADDItoc:
2622 case PPC::ADDItoc8:
2623 case PPC::ADDItocL:
2624 case PPC::ADDItocL8:
2625 case PPC::ADJCALLSTACKDOWN:
2626 case PPC::ADJCALLSTACKUP:
2627 case PPC::ANDI_rec_1_EQ_BIT:
2628 case PPC::ANDI_rec_1_EQ_BIT8:
2629 case PPC::ANDI_rec_1_GT_BIT:
2630 case PPC::ANDI_rec_1_GT_BIT8:
2631 case PPC::ATOMIC_CMP_SWAP_I16:
2632 case PPC::ATOMIC_CMP_SWAP_I32:
2633 case PPC::ATOMIC_CMP_SWAP_I64:
2634 case PPC::ATOMIC_CMP_SWAP_I8:
2635 case PPC::ATOMIC_LOAD_ADD:
2636 case PPC::ATOMIC_LOAD_ADD_I64:
2637 case PPC::ATOMIC_LOAD_ADD_NOWP:
2638 case PPC::ATOMIC_LOAD_AND:
2639 case PPC::ATOMIC_LOAD_AND_I64:
2640 case PPC::ATOMIC_LOAD_AND_NOWP:
2641 case PPC::ATOMIC_LOAD_MAX:
2642 case PPC::ATOMIC_LOAD_MAX_I64:
2643 case PPC::ATOMIC_LOAD_MAX_NOWP:
2644 case PPC::ATOMIC_LOAD_MIN:
2645 case PPC::ATOMIC_LOAD_MIN_I64:
2646 case PPC::ATOMIC_LOAD_MIN_NOWP:
2647 case PPC::ATOMIC_LOAD_NAND:
2648 case PPC::ATOMIC_LOAD_NAND_I64:
2649 case PPC::ATOMIC_LOAD_NAND_NOWP:
2650 case PPC::ATOMIC_LOAD_OR:
2651 case PPC::ATOMIC_LOAD_OR_I64:
2652 case PPC::ATOMIC_LOAD_OR_NOWP:
2653 case PPC::ATOMIC_LOAD_SUB:
2654 case PPC::ATOMIC_LOAD_SUB_I64:
2655 case PPC::ATOMIC_LOAD_SUB_NOWP:
2656 case PPC::ATOMIC_LOAD_UMAX:
2657 case PPC::ATOMIC_LOAD_UMAX_I64:
2658 case PPC::ATOMIC_LOAD_UMAX_NOWP:
2659 case PPC::ATOMIC_LOAD_UMIN:
2660 case PPC::ATOMIC_LOAD_UMIN_I64:
2661 case PPC::ATOMIC_LOAD_UMIN_NOWP:
2662 case PPC::ATOMIC_LOAD_XOR:
2663 case PPC::ATOMIC_LOAD_XOR_I64:
2664 case PPC::ATOMIC_LOAD_XOR_NOWP:
2665 case PPC::ATOMIC_SWAP:
2666 case PPC::ATOMIC_SWAP_I64:
2667 case PPC::ATOMIC_SWAP_NOWP:
2668 case PPC::ATTN:
2669 case PPC::BCTR:
2670 case PPC::BCTR8:
2671 case PPC::BCTRL:
2672 case PPC::BCTRL8:
2673 case PPC::BCTRL8_RM:
2674 case PPC::BCTRL_RM:
2675 case PPC::BDNZLR:
2676 case PPC::BDNZLR8:
2677 case PPC::BDNZLRL:
2678 case PPC::BDNZLRLm:
2679 case PPC::BDNZLRLp:
2680 case PPC::BDNZLRm:
2681 case PPC::BDNZLRp:
2682 case PPC::BDZLR:
2683 case PPC::BDZLR8:
2684 case PPC::BDZLRL:
2685 case PPC::BDZLRLm:
2686 case PPC::BDZLRLp:
2687 case PPC::BDZLRm:
2688 case PPC::BDZLRp:
2689 case PPC::BLR:
2690 case PPC::BLR8:
2691 case PPC::BLRL:
2692 case PPC::CLRBHRB:
2693 case PPC::CP_ABORT:
2694 case PPC::CR6SET:
2695 case PPC::CR6UNSET:
2696 case PPC::DSSALL:
2697 case PPC::DYNALLOC:
2698 case PPC::DYNALLOC8:
2699 case PPC::DYNAREAOFFSET:
2700 case PPC::DYNAREAOFFSET8:
2701 case PPC::DecreaseCTR8loop:
2702 case PPC::DecreaseCTRloop:
2703 case PPC::EH_SjLj_LongJmp32:
2704 case PPC::EH_SjLj_LongJmp64:
2705 case PPC::EH_SjLj_SetJmp32:
2706 case PPC::EH_SjLj_SetJmp64:
2707 case PPC::EH_SjLj_Setup:
2708 case PPC::EnforceIEIO:
2709 case PPC::FADDrtz:
2710 case PPC::FENCE:
2711 case PPC::GETtlsADDR:
2712 case PPC::GETtlsADDR32:
2713 case PPC::GETtlsADDR32AIX:
2714 case PPC::GETtlsADDR64AIX:
2715 case PPC::GETtlsADDRPCREL:
2716 case PPC::GETtlsMOD32AIX:
2717 case PPC::GETtlsMOD64AIX:
2718 case PPC::GETtlsTpointer32AIX:
2719 case PPC::GETtlsldADDR:
2720 case PPC::GETtlsldADDR32:
2721 case PPC::GETtlsldADDRPCREL:
2722 case PPC::HRFID:
2723 case PPC::ISYNC:
2724 case PPC::LDgotTprelL:
2725 case PPC::LDgotTprelL32:
2726 case PPC::LDtoc:
2727 case PPC::LDtocBA:
2728 case PPC::LDtocCPT:
2729 case PPC::LDtocJTI:
2730 case PPC::LDtocL:
2731 case PPC::LQX_PSEUDO:
2732 case PPC::LWZtoc:
2733 case PPC::LWZtocL:
2734 case PPC::MSGSYNC:
2735 case PPC::MSYNC:
2736 case PPC::MoveGOTtoLR:
2737 case PPC::MovePCtoLR:
2738 case PPC::MovePCtoLR8:
2739 case PPC::NAP:
2740 case PPC::NOP:
2741 case PPC::NOP_GT_PWR6:
2742 case PPC::NOP_GT_PWR7:
2743 case PPC::PADDIdtprel:
2744 case PPC::PPC32GOT:
2745 case PPC::PPC32PICGOT:
2746 case PPC::PREPARE_PROBED_ALLOCA_32:
2747 case PPC::PREPARE_PROBED_ALLOCA_64:
2748 case PPC::PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_32:
2749 case PPC::PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_64:
2750 case PPC::PROBED_ALLOCA_32:
2751 case PPC::PROBED_ALLOCA_64:
2752 case PPC::PROBED_STACKALLOC_32:
2753 case PPC::PROBED_STACKALLOC_64:
2754 case PPC::PseudoEIEIO:
2755 case PPC::RESTORE_ACC:
2756 case PPC::RESTORE_CR:
2757 case PPC::RESTORE_CRBIT:
2758 case PPC::RESTORE_DMR:
2759 case PPC::RESTORE_DMRP:
2760 case PPC::RESTORE_QUADWORD:
2761 case PPC::RESTORE_UACC:
2762 case PPC::RESTORE_WACC:
2763 case PPC::RFCI:
2764 case PPC::RFDI:
2765 case PPC::RFI:
2766 case PPC::RFID:
2767 case PPC::RFMCI:
2768 case PPC::ReadTB:
2769 case PPC::SELECT_CC_F16:
2770 case PPC::SELECT_CC_F4:
2771 case PPC::SELECT_CC_F8:
2772 case PPC::SELECT_CC_I4:
2773 case PPC::SELECT_CC_I8:
2774 case PPC::SELECT_CC_SPE:
2775 case PPC::SELECT_CC_SPE4:
2776 case PPC::SELECT_CC_VRRC:
2777 case PPC::SELECT_CC_VSFRC:
2778 case PPC::SELECT_CC_VSRC:
2779 case PPC::SELECT_CC_VSSRC:
2780 case PPC::SELECT_F16:
2781 case PPC::SELECT_F4:
2782 case PPC::SELECT_F8:
2783 case PPC::SELECT_I4:
2784 case PPC::SELECT_I8:
2785 case PPC::SELECT_SPE:
2786 case PPC::SELECT_SPE4:
2787 case PPC::SELECT_VRRC:
2788 case PPC::SELECT_VSFRC:
2789 case PPC::SELECT_VSRC:
2790 case PPC::SELECT_VSSRC:
2791 case PPC::SETFLM:
2792 case PPC::SETRND:
2793 case PPC::SETRNDi:
2794 case PPC::SLBIA:
2795 case PPC::SLBSYNC:
2796 case PPC::SPILL_ACC:
2797 case PPC::SPILL_CR:
2798 case PPC::SPILL_CRBIT:
2799 case PPC::SPILL_DMR:
2800 case PPC::SPILL_DMRP:
2801 case PPC::SPILL_QUADWORD:
2802 case PPC::SPILL_UACC:
2803 case PPC::SPILL_WACC:
2804 case PPC::SPLIT_QUADWORD:
2805 case PPC::STOP:
2806 case PPC::STQX_PSEUDO:
2807 case PPC::TAILBCTR:
2808 case PPC::TAILBCTR8:
2809 case PPC::TBEGIN_RET:
2810 case PPC::TCHECK_RET:
2811 case PPC::TCRETURNai:
2812 case PPC::TCRETURNai8:
2813 case PPC::TCRETURNdi:
2814 case PPC::TCRETURNdi8:
2815 case PPC::TCRETURNri:
2816 case PPC::TCRETURNri8:
2817 case PPC::TLBIA:
2818 case PPC::TLBRE:
2819 case PPC::TLBSYNC:
2820 case PPC::TLBWE:
2821 case PPC::TLSGDAIX:
2822 case PPC::TLSGDAIX8:
2823 case PPC::TLSLDAIX:
2824 case PPC::TLSLDAIX8:
2825 case PPC::TRAP:
2826 case PPC::TRECHKPT:
2827 case PPC::UNENCODED_NOP:
2828 case PPC::UpdateGBR: {
2829 break;
2830 }
2831 case PPC::TEND: {
2832 // op: A
2833 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2834 Value |= (op & 0x1) << 25;
2835 break;
2836 }
2837 case PPC::DMSETDMRZ:
2838 case PPC::DMXXSETACCZ:
2839 case PPC::XXMTACC:
2840 case PPC::XXMTACCW:
2841 case PPC::XXSETACCZ: {
2842 // op: AT
2843 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2844 Value |= (op & 0x7) << 23;
2845 break;
2846 }
2847 case PPC::DMMR: {
2848 // op: AT
2849 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2850 Value |= (op & 0x7) << 23;
2851 // op: AB
2852 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2853 Value |= (op & 0x7) << 13;
2854 break;
2855 }
2856 case PPC::DMXOR: {
2857 // op: AT
2858 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2859 Value |= (op & 0x7) << 23;
2860 // op: AB
2861 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2862 Value |= (op & 0x7) << 13;
2863 break;
2864 }
2865 case PPC::DMSHA2HASH: {
2866 // op: AT
2867 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2868 Value |= (op & 0x7) << 23;
2869 // op: AB
2870 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2871 Value |= (op & 0x7) << 13;
2872 // op: T
2873 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
2874 Value |= (op & 0x1) << 21;
2875 break;
2876 }
2877 case PPC::XVBF16GER2:
2878 case PPC::XVBF16GER2W:
2879 case PPC::XVF16GER2:
2880 case PPC::XVF16GER2W:
2881 case PPC::XVF32GER:
2882 case PPC::XVF32GERW:
2883 case PPC::XVI16GER2:
2884 case PPC::XVI16GER2S:
2885 case PPC::XVI16GER2SW:
2886 case PPC::XVI16GER2W:
2887 case PPC::XVI4GER8:
2888 case PPC::XVI4GER8W:
2889 case PPC::XVI8GER4:
2890 case PPC::XVI8GER4W: {
2891 // op: AT
2892 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2893 Value |= (op & 0x7) << 23;
2894 // op: XA
2895 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2896 Value |= (op & 0x1f) << 16;
2897 Value |= (op & 0x20) >> 3;
2898 // op: XB
2899 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2900 Value |= (op & 0x1f) << 11;
2901 Value |= (op & 0x20) >> 4;
2902 break;
2903 }
2904 case PPC::PMXVF32GER:
2905 case PPC::PMXVF32GERW: {
2906 // op: AT
2907 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2908 Value |= (op & 0x7) << 23;
2909 // op: XA
2910 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2911 Value |= (op & 0x1f) << 16;
2912 Value |= (op & 0x20) >> 3;
2913 // op: XB
2914 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2915 Value |= (op & 0x1f) << 11;
2916 Value |= (op & 0x20) >> 4;
2917 // op: XMSK
2918 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
2919 Value |= (op & 0xf) << 36;
2920 // op: YMSK
2921 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
2922 Value |= (op & 0xf) << 32;
2923 break;
2924 }
2925 case PPC::PMXVBF16GER2:
2926 case PPC::PMXVBF16GER2W:
2927 case PPC::PMXVF16GER2:
2928 case PPC::PMXVF16GER2W:
2929 case PPC::PMXVI16GER2:
2930 case PPC::PMXVI16GER2S:
2931 case PPC::PMXVI16GER2SW:
2932 case PPC::PMXVI16GER2W: {
2933 // op: AT
2934 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2935 Value |= (op & 0x7) << 23;
2936 // op: XA
2937 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2938 Value |= (op & 0x1f) << 16;
2939 Value |= (op & 0x20) >> 3;
2940 // op: XB
2941 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2942 Value |= (op & 0x1f) << 11;
2943 Value |= (op & 0x20) >> 4;
2944 // op: XMSK
2945 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
2946 Value |= (op & 0xf) << 36;
2947 // op: YMSK
2948 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
2949 Value |= (op & 0xf) << 32;
2950 // op: PMSK
2951 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
2952 Value |= (op & 0x3) << 46;
2953 break;
2954 }
2955 case PPC::PMXVI8GER4:
2956 case PPC::PMXVI8GER4W: {
2957 // op: AT
2958 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2959 Value |= (op & 0x7) << 23;
2960 // op: XA
2961 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2962 Value |= (op & 0x1f) << 16;
2963 Value |= (op & 0x20) >> 3;
2964 // op: XB
2965 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2966 Value |= (op & 0x1f) << 11;
2967 Value |= (op & 0x20) >> 4;
2968 // op: XMSK
2969 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
2970 Value |= (op & 0xf) << 36;
2971 // op: YMSK
2972 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
2973 Value |= (op & 0xf) << 32;
2974 // op: PMSK
2975 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
2976 Value |= (op & 0xf) << 44;
2977 break;
2978 }
2979 case PPC::PMXVI4GER8:
2980 case PPC::PMXVI4GER8W: {
2981 // op: AT
2982 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2983 Value |= (op & 0x7) << 23;
2984 // op: XA
2985 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2986 Value |= (op & 0x1f) << 16;
2987 Value |= (op & 0x20) >> 3;
2988 // op: XB
2989 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2990 Value |= (op & 0x1f) << 11;
2991 Value |= (op & 0x20) >> 4;
2992 // op: XMSK
2993 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
2994 Value |= (op & 0xf) << 36;
2995 // op: YMSK
2996 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
2997 Value |= (op & 0xf) << 32;
2998 // op: PMSK
2999 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3000 Value |= (op & 0xff) << 40;
3001 break;
3002 }
3003 case PPC::XVBF16GER2NN:
3004 case PPC::XVBF16GER2NP:
3005 case PPC::XVBF16GER2PN:
3006 case PPC::XVBF16GER2PP:
3007 case PPC::XVBF16GER2WNN:
3008 case PPC::XVBF16GER2WNP:
3009 case PPC::XVBF16GER2WPN:
3010 case PPC::XVBF16GER2WPP:
3011 case PPC::XVF16GER2NN:
3012 case PPC::XVF16GER2NP:
3013 case PPC::XVF16GER2PN:
3014 case PPC::XVF16GER2PP:
3015 case PPC::XVF16GER2WNN:
3016 case PPC::XVF16GER2WNP:
3017 case PPC::XVF16GER2WPN:
3018 case PPC::XVF16GER2WPP:
3019 case PPC::XVF32GERNN:
3020 case PPC::XVF32GERNP:
3021 case PPC::XVF32GERPN:
3022 case PPC::XVF32GERPP:
3023 case PPC::XVF32GERWNN:
3024 case PPC::XVF32GERWNP:
3025 case PPC::XVF32GERWPN:
3026 case PPC::XVF32GERWPP:
3027 case PPC::XVI16GER2PP:
3028 case PPC::XVI16GER2SPP:
3029 case PPC::XVI16GER2SWPP:
3030 case PPC::XVI16GER2WPP:
3031 case PPC::XVI4GER8PP:
3032 case PPC::XVI4GER8WPP:
3033 case PPC::XVI8GER4PP:
3034 case PPC::XVI8GER4SPP:
3035 case PPC::XVI8GER4WPP:
3036 case PPC::XVI8GER4WSPP: {
3037 // op: AT
3038 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3039 Value |= (op & 0x7) << 23;
3040 // op: XA
3041 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3042 Value |= (op & 0x1f) << 16;
3043 Value |= (op & 0x20) >> 3;
3044 // op: XB
3045 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3046 Value |= (op & 0x1f) << 11;
3047 Value |= (op & 0x20) >> 4;
3048 break;
3049 }
3050 case PPC::PMXVF32GERNN:
3051 case PPC::PMXVF32GERNP:
3052 case PPC::PMXVF32GERPN:
3053 case PPC::PMXVF32GERPP:
3054 case PPC::PMXVF32GERWNN:
3055 case PPC::PMXVF32GERWNP:
3056 case PPC::PMXVF32GERWPN:
3057 case PPC::PMXVF32GERWPP: {
3058 // op: AT
3059 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3060 Value |= (op & 0x7) << 23;
3061 // op: XA
3062 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3063 Value |= (op & 0x1f) << 16;
3064 Value |= (op & 0x20) >> 3;
3065 // op: XB
3066 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3067 Value |= (op & 0x1f) << 11;
3068 Value |= (op & 0x20) >> 4;
3069 // op: XMSK
3070 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3071 Value |= (op & 0xf) << 36;
3072 // op: YMSK
3073 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3074 Value |= (op & 0xf) << 32;
3075 break;
3076 }
3077 case PPC::PMXVBF16GER2NN:
3078 case PPC::PMXVBF16GER2NP:
3079 case PPC::PMXVBF16GER2PN:
3080 case PPC::PMXVBF16GER2PP:
3081 case PPC::PMXVBF16GER2WNN:
3082 case PPC::PMXVBF16GER2WNP:
3083 case PPC::PMXVBF16GER2WPN:
3084 case PPC::PMXVBF16GER2WPP:
3085 case PPC::PMXVF16GER2NN:
3086 case PPC::PMXVF16GER2NP:
3087 case PPC::PMXVF16GER2PN:
3088 case PPC::PMXVF16GER2PP:
3089 case PPC::PMXVF16GER2WNN:
3090 case PPC::PMXVF16GER2WNP:
3091 case PPC::PMXVF16GER2WPN:
3092 case PPC::PMXVF16GER2WPP:
3093 case PPC::PMXVI16GER2PP:
3094 case PPC::PMXVI16GER2SPP:
3095 case PPC::PMXVI16GER2SWPP:
3096 case PPC::PMXVI16GER2WPP: {
3097 // op: AT
3098 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3099 Value |= (op & 0x7) << 23;
3100 // op: XA
3101 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3102 Value |= (op & 0x1f) << 16;
3103 Value |= (op & 0x20) >> 3;
3104 // op: XB
3105 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3106 Value |= (op & 0x1f) << 11;
3107 Value |= (op & 0x20) >> 4;
3108 // op: XMSK
3109 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3110 Value |= (op & 0xf) << 36;
3111 // op: YMSK
3112 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3113 Value |= (op & 0xf) << 32;
3114 // op: PMSK
3115 op = getMachineOpValue(MI, MO: MI.getOperand(i: 6), Fixups, STI);
3116 Value |= (op & 0x3) << 46;
3117 break;
3118 }
3119 case PPC::PMXVI8GER4PP:
3120 case PPC::PMXVI8GER4SPP:
3121 case PPC::PMXVI8GER4WPP:
3122 case PPC::PMXVI8GER4WSPP: {
3123 // op: AT
3124 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3125 Value |= (op & 0x7) << 23;
3126 // op: XA
3127 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3128 Value |= (op & 0x1f) << 16;
3129 Value |= (op & 0x20) >> 3;
3130 // op: XB
3131 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3132 Value |= (op & 0x1f) << 11;
3133 Value |= (op & 0x20) >> 4;
3134 // op: XMSK
3135 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3136 Value |= (op & 0xf) << 36;
3137 // op: YMSK
3138 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3139 Value |= (op & 0xf) << 32;
3140 // op: PMSK
3141 op = getMachineOpValue(MI, MO: MI.getOperand(i: 6), Fixups, STI);
3142 Value |= (op & 0xf) << 44;
3143 break;
3144 }
3145 case PPC::PMXVI4GER8PP:
3146 case PPC::PMXVI4GER8WPP: {
3147 // op: AT
3148 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3149 Value |= (op & 0x7) << 23;
3150 // op: XA
3151 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3152 Value |= (op & 0x1f) << 16;
3153 Value |= (op & 0x20) >> 3;
3154 // op: XB
3155 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3156 Value |= (op & 0x1f) << 11;
3157 Value |= (op & 0x20) >> 4;
3158 // op: XMSK
3159 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3160 Value |= (op & 0xf) << 36;
3161 // op: YMSK
3162 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3163 Value |= (op & 0xf) << 32;
3164 // op: PMSK
3165 op = getMachineOpValue(MI, MO: MI.getOperand(i: 6), Fixups, STI);
3166 Value |= (op & 0xff) << 40;
3167 break;
3168 }
3169 case PPC::XVF64GER:
3170 case PPC::XVF64GERW: {
3171 // op: AT
3172 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3173 Value |= (op & 0x7) << 23;
3174 // op: XA
3175 op = getVSRpEvenEncoding(MI, OpNo: 1, Fixups, STI);
3176 Value |= (op & 0x1f) << 16;
3177 Value |= (op & 0x20) >> 3;
3178 // op: XB
3179 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3180 Value |= (op & 0x1f) << 11;
3181 Value |= (op & 0x20) >> 4;
3182 break;
3183 }
3184 case PPC::PMXVF64GER:
3185 case PPC::PMXVF64GERW: {
3186 // op: AT
3187 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3188 Value |= (op & 0x7) << 23;
3189 // op: XA
3190 op = getVSRpEvenEncoding(MI, OpNo: 1, Fixups, STI);
3191 Value |= (op & 0x1f) << 16;
3192 Value |= (op & 0x20) >> 3;
3193 // op: XB
3194 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3195 Value |= (op & 0x1f) << 11;
3196 Value |= (op & 0x20) >> 4;
3197 // op: XMSK
3198 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3199 Value |= (op & 0xf) << 36;
3200 // op: YMSK
3201 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3202 Value |= (op & 0x3) << 34;
3203 break;
3204 }
3205 case PPC::XVF64GERNN:
3206 case PPC::XVF64GERNP:
3207 case PPC::XVF64GERPN:
3208 case PPC::XVF64GERPP:
3209 case PPC::XVF64GERWNN:
3210 case PPC::XVF64GERWNP:
3211 case PPC::XVF64GERWPN:
3212 case PPC::XVF64GERWPP: {
3213 // op: AT
3214 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3215 Value |= (op & 0x7) << 23;
3216 // op: XA
3217 op = getVSRpEvenEncoding(MI, OpNo: 2, Fixups, STI);
3218 Value |= (op & 0x1f) << 16;
3219 Value |= (op & 0x20) >> 3;
3220 // op: XB
3221 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3222 Value |= (op & 0x1f) << 11;
3223 Value |= (op & 0x20) >> 4;
3224 break;
3225 }
3226 case PPC::PMXVF64GERNN:
3227 case PPC::PMXVF64GERNP:
3228 case PPC::PMXVF64GERPN:
3229 case PPC::PMXVF64GERPP:
3230 case PPC::PMXVF64GERWNN:
3231 case PPC::PMXVF64GERWNP:
3232 case PPC::PMXVF64GERWPN:
3233 case PPC::PMXVF64GERWPP: {
3234 // op: AT
3235 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3236 Value |= (op & 0x7) << 23;
3237 // op: XA
3238 op = getVSRpEvenEncoding(MI, OpNo: 2, Fixups, STI);
3239 Value |= (op & 0x1f) << 16;
3240 Value |= (op & 0x20) >> 3;
3241 // op: XB
3242 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3243 Value |= (op & 0x1f) << 11;
3244 Value |= (op & 0x20) >> 4;
3245 // op: XMSK
3246 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3247 Value |= (op & 0xf) << 36;
3248 // op: YMSK
3249 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3250 Value |= (op & 0x3) << 34;
3251 break;
3252 }
3253 case PPC::DMXVBF16GERX2:
3254 case PPC::DMXVF16GERX2:
3255 case PPC::DMXVI8GERX4: {
3256 // op: AT
3257 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3258 Value |= (op & 0x7) << 23;
3259 // op: XAp
3260 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3261 Value |= (op & 0xf) << 17;
3262 Value |= (op & 0x10) >> 2;
3263 // op: XB
3264 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3265 Value |= (op & 0x1f) << 11;
3266 Value |= (op & 0x20) >> 4;
3267 break;
3268 }
3269 case PPC::PMDMXVBF16GERX2:
3270 case PPC::PMDMXVF16GERX2: {
3271 // op: AT
3272 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3273 Value |= (op & 0x7) << 23;
3274 // op: XAp
3275 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3276 Value |= (op & 0xf) << 17;
3277 Value |= (op & 0x10) >> 2;
3278 // op: XB
3279 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3280 Value |= (op & 0x1f) << 11;
3281 Value |= (op & 0x20) >> 4;
3282 // op: XMSK
3283 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3284 Value |= (op & 0xff) << 36;
3285 // op: YMSK
3286 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3287 Value |= (op & 0xf) << 32;
3288 // op: PMSK
3289 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3290 Value |= (op & 0x3) << 46;
3291 break;
3292 }
3293 case PPC::PMDMXVI8GERX4: {
3294 // op: AT
3295 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3296 Value |= (op & 0x7) << 23;
3297 // op: XAp
3298 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3299 Value |= (op & 0xf) << 17;
3300 Value |= (op & 0x10) >> 2;
3301 // op: XB
3302 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3303 Value |= (op & 0x1f) << 11;
3304 Value |= (op & 0x20) >> 4;
3305 // op: XMSK
3306 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3307 Value |= (op & 0xff) << 36;
3308 // op: YMSK
3309 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3310 Value |= (op & 0xf) << 32;
3311 // op: PMSK
3312 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3313 Value |= (op & 0xf) << 44;
3314 break;
3315 }
3316 case PPC::DMXXINSTDMR512:
3317 case PPC::DMXXINSTDMR512_HI: {
3318 // op: AT
3319 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3320 Value |= (op & 0x7) << 23;
3321 // op: XAp
3322 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3323 Value |= (op & 0xf) << 17;
3324 Value |= (op & 0x10) >> 2;
3325 // op: XBp
3326 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3327 Value |= (op & 0xf) << 12;
3328 Value |= (op & 0x10) >> 3;
3329 break;
3330 }
3331 case PPC::DMXVBF16GERX2NN:
3332 case PPC::DMXVBF16GERX2NP:
3333 case PPC::DMXVBF16GERX2PN:
3334 case PPC::DMXVBF16GERX2PP:
3335 case PPC::DMXVF16GERX2NN:
3336 case PPC::DMXVF16GERX2NP:
3337 case PPC::DMXVF16GERX2PN:
3338 case PPC::DMXVF16GERX2PP:
3339 case PPC::DMXVI8GERX4PP:
3340 case PPC::DMXVI8GERX4SPP: {
3341 // op: AT
3342 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3343 Value |= (op & 0x7) << 23;
3344 // op: XAp
3345 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3346 Value |= (op & 0xf) << 17;
3347 Value |= (op & 0x10) >> 2;
3348 // op: XB
3349 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3350 Value |= (op & 0x1f) << 11;
3351 Value |= (op & 0x20) >> 4;
3352 break;
3353 }
3354 case PPC::PMDMXVBF16GERX2NN:
3355 case PPC::PMDMXVBF16GERX2NP:
3356 case PPC::PMDMXVBF16GERX2PN:
3357 case PPC::PMDMXVBF16GERX2PP:
3358 case PPC::PMDMXVF16GERX2NN:
3359 case PPC::PMDMXVF16GERX2NP:
3360 case PPC::PMDMXVF16GERX2PN:
3361 case PPC::PMDMXVF16GERX2PP: {
3362 // op: AT
3363 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3364 Value |= (op & 0x7) << 23;
3365 // op: XAp
3366 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3367 Value |= (op & 0xf) << 17;
3368 Value |= (op & 0x10) >> 2;
3369 // op: XB
3370 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3371 Value |= (op & 0x1f) << 11;
3372 Value |= (op & 0x20) >> 4;
3373 // op: XMSK
3374 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3375 Value |= (op & 0xff) << 36;
3376 // op: YMSK
3377 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3378 Value |= (op & 0xf) << 32;
3379 // op: PMSK
3380 op = getMachineOpValue(MI, MO: MI.getOperand(i: 6), Fixups, STI);
3381 Value |= (op & 0x3) << 46;
3382 break;
3383 }
3384 case PPC::PMDMXVI8GERX4PP:
3385 case PPC::PMDMXVI8GERX4SPP: {
3386 // op: AT
3387 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3388 Value |= (op & 0x7) << 23;
3389 // op: XAp
3390 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3391 Value |= (op & 0xf) << 17;
3392 Value |= (op & 0x10) >> 2;
3393 // op: XB
3394 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3395 Value |= (op & 0x1f) << 11;
3396 Value |= (op & 0x20) >> 4;
3397 // op: XMSK
3398 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3399 Value |= (op & 0xff) << 36;
3400 // op: YMSK
3401 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3402 Value |= (op & 0xf) << 32;
3403 // op: PMSK
3404 op = getMachineOpValue(MI, MO: MI.getOperand(i: 6), Fixups, STI);
3405 Value |= (op & 0xf) << 44;
3406 break;
3407 }
3408 case PPC::DMXXSHAPAD: {
3409 // op: AT
3410 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3411 Value |= (op & 0x7) << 23;
3412 // op: XB
3413 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3414 Value |= (op & 0x1f) << 11;
3415 Value |= (op & 0x20) >> 4;
3416 // op: ID
3417 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3418 Value |= (op & 0x3) << 19;
3419 // op: E
3420 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3421 Value |= (op & 0x1) << 18;
3422 // op: BL
3423 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
3424 Value |= (op & 0x3) << 16;
3425 break;
3426 }
3427 case PPC::DMXXINSTDMR256: {
3428 // op: AT
3429 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3430 Value |= (op & 0x7) << 23;
3431 // op: XBp
3432 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3433 Value |= (op & 0xf) << 12;
3434 Value |= (op & 0x10) >> 3;
3435 // op: P
3436 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3437 Value |= (op & 0x1) << 16;
3438 Value |= (op & 0x2) << 10;
3439 break;
3440 }
3441 case PPC::XXMFACC:
3442 case PPC::XXMFACCW: {
3443 // op: AT
3444 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3445 Value |= (op & 0x7) << 23;
3446 break;
3447 }
3448 case PPC::DMXXEXTFDMR256: {
3449 // op: AT
3450 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3451 Value |= (op & 0x7) << 23;
3452 // op: XBp
3453 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3454 Value |= (op & 0xf) << 12;
3455 Value |= (op & 0x10) >> 3;
3456 // op: P
3457 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3458 Value |= (op & 0x1) << 16;
3459 Value |= (op & 0x2) << 10;
3460 break;
3461 }
3462 case PPC::DMXXEXTFDMR512:
3463 case PPC::DMXXEXTFDMR512_HI: {
3464 // op: AT
3465 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3466 Value |= (op & 0x7) << 23;
3467 // op: XAp
3468 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3469 Value |= (op & 0xf) << 17;
3470 Value |= (op & 0x10) >> 2;
3471 // op: XBp
3472 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3473 Value |= (op & 0xf) << 12;
3474 Value |= (op & 0x10) >> 3;
3475 break;
3476 }
3477 case PPC::DMSHA3HASH: {
3478 // op: ATp
3479 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3480 Value |= (op & 0x3) << 24;
3481 // op: SR
3482 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3483 Value |= (op & 0x1f) << 11;
3484 break;
3485 }
3486 case PPC::BDNZA:
3487 case PPC::BDNZAm:
3488 case PPC::BDNZAp:
3489 case PPC::BDNZLA:
3490 case PPC::BDNZLAm:
3491 case PPC::BDNZLAp:
3492 case PPC::BDZA:
3493 case PPC::BDZAm:
3494 case PPC::BDZAp:
3495 case PPC::BDZLA:
3496 case PPC::BDZLAm:
3497 case PPC::BDZLAp: {
3498 // op: BD
3499 op = getAbsCondBrEncoding(MI, OpNo: 0, Fixups, STI);
3500 Value |= (op & 0x3fff) << 2;
3501 break;
3502 }
3503 case PPC::BCLalways:
3504 case PPC::BDNZ:
3505 case PPC::BDNZ8:
3506 case PPC::BDNZL:
3507 case PPC::BDNZLm:
3508 case PPC::BDNZLp:
3509 case PPC::BDNZm:
3510 case PPC::BDNZp:
3511 case PPC::BDZ:
3512 case PPC::BDZ8:
3513 case PPC::BDZL:
3514 case PPC::BDZLm:
3515 case PPC::BDZLp:
3516 case PPC::BDZm:
3517 case PPC::BDZp: {
3518 // op: BD
3519 op = getCondBrEncoding(MI, OpNo: 0, Fixups, STI);
3520 Value |= (op & 0x3fff) << 2;
3521 break;
3522 }
3523 case PPC::MCRXRX:
3524 case PPC::TCHECK: {
3525 // op: BF
3526 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3527 Value |= (op & 0x7) << 23;
3528 break;
3529 }
3530 case PPC::MCRF:
3531 case PPC::MCRFS: {
3532 // op: BF
3533 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3534 Value |= (op & 0x7) << 23;
3535 // op: BFA
3536 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3537 Value |= (op & 0x7) << 18;
3538 break;
3539 }
3540 case PPC::XSTSTDCQP: {
3541 // op: BF
3542 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3543 Value |= (op & 0x7) << 23;
3544 // op: DCMX
3545 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3546 Value |= (op & 0x7f) << 16;
3547 // op: VB
3548 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3549 Value |= (op & 0x1f) << 11;
3550 break;
3551 }
3552 case PPC::XSTSTDCDP:
3553 case PPC::XSTSTDCSP: {
3554 // op: BF
3555 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3556 Value |= (op & 0x7) << 23;
3557 // op: DCMX
3558 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3559 Value |= (op & 0x7f) << 16;
3560 // op: XB
3561 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3562 Value |= (op & 0x1f) << 11;
3563 Value |= (op & 0x20) >> 4;
3564 break;
3565 }
3566 case PPC::DTSTDC:
3567 case PPC::DTSTDCQ:
3568 case PPC::DTSTDG:
3569 case PPC::DTSTDGQ: {
3570 // op: BF
3571 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3572 Value |= (op & 0x7) << 23;
3573 // op: FRA
3574 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3575 Value |= (op & 0x1f) << 16;
3576 // op: DCM
3577 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3578 Value |= (op & 0x3f) << 10;
3579 break;
3580 }
3581 case PPC::CMPRB:
3582 case PPC::CMPRB8: {
3583 // op: BF
3584 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3585 Value |= (op & 0x7) << 23;
3586 // op: L
3587 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3588 Value |= (op & 0x1) << 21;
3589 // op: RA
3590 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3591 Value |= (op & 0x1f) << 16;
3592 // op: RB
3593 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3594 Value |= (op & 0x1f) << 11;
3595 break;
3596 }
3597 case PPC::CMPDI:
3598 case PPC::CMPLDI:
3599 case PPC::CMPLWI:
3600 case PPC::CMPWI: {
3601 // op: BF
3602 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3603 Value |= (op & 0x7) << 23;
3604 // op: RA
3605 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3606 Value |= (op & 0x1f) << 16;
3607 // op: D
3608 op = getImmEncoding<PPC::fixup_ppc_half16>(MI, OpNo: 2, Fixups, STI);
3609 Value |= (op & 0xffff);
3610 break;
3611 }
3612 case PPC::CMPD:
3613 case PPC::CMPEQB:
3614 case PPC::CMPLD:
3615 case PPC::CMPLW:
3616 case PPC::CMPW:
3617 case PPC::DCMPO:
3618 case PPC::DCMPOQ:
3619 case PPC::DCMPU:
3620 case PPC::DCMPUQ:
3621 case PPC::DTSTEX:
3622 case PPC::DTSTEXQ:
3623 case PPC::DTSTSF:
3624 case PPC::DTSTSFQ:
3625 case PPC::FCMPOD:
3626 case PPC::FCMPOS:
3627 case PPC::FCMPUD:
3628 case PPC::FCMPUS:
3629 case PPC::FTDIV:
3630 case PPC::XSCMPEXPQP:
3631 case PPC::XSCMPOQP:
3632 case PPC::XSCMPUQP: {
3633 // op: BF
3634 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3635 Value |= (op & 0x7) << 23;
3636 // op: RA
3637 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3638 Value |= (op & 0x1f) << 16;
3639 // op: RB
3640 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3641 Value |= (op & 0x1f) << 11;
3642 break;
3643 }
3644 case PPC::FTSQRT: {
3645 // op: BF
3646 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3647 Value |= (op & 0x7) << 23;
3648 // op: RB
3649 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3650 Value |= (op & 0x1f) << 11;
3651 break;
3652 }
3653 case PPC::MTFSFIb: {
3654 // op: BF
3655 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3656 Value |= (op & 0x7) << 23;
3657 // op: U
3658 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3659 Value |= (op & 0xf) << 12;
3660 break;
3661 }
3662 case PPC::DTSTSFI:
3663 case PPC::DTSTSFIQ: {
3664 // op: BF
3665 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3666 Value |= (op & 0x7) << 23;
3667 // op: UIM
3668 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3669 Value |= (op & 0x3f) << 16;
3670 // op: FRB
3671 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3672 Value |= (op & 0x1f) << 11;
3673 break;
3674 }
3675 case PPC::VCMPSQ:
3676 case PPC::VCMPUQ: {
3677 // op: BF
3678 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3679 Value |= (op & 0x7) << 23;
3680 // op: VA
3681 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3682 Value |= (op & 0x1f) << 16;
3683 // op: VB
3684 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3685 Value |= (op & 0x1f) << 11;
3686 break;
3687 }
3688 case PPC::MTFSFI:
3689 case PPC::MTFSFI_rec: {
3690 // op: BF
3691 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3692 Value |= (op & 0x7) << 23;
3693 // op: W
3694 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3695 Value |= (op & 0x1) << 16;
3696 // op: U
3697 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3698 Value |= (op & 0xf) << 12;
3699 break;
3700 }
3701 case PPC::XVTLSBB: {
3702 // op: BF
3703 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3704 Value |= (op & 0x7) << 23;
3705 // op: XB
3706 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3707 Value |= (op & 0x1f) << 11;
3708 Value |= (op & 0x20) >> 4;
3709 break;
3710 }
3711 case PPC::BCCTR:
3712 case PPC::BCCTR8:
3713 case PPC::BCCTR8n:
3714 case PPC::BCCTRL:
3715 case PPC::BCCTRL8:
3716 case PPC::BCCTRL8n:
3717 case PPC::BCCTRLn:
3718 case PPC::BCCTRn:
3719 case PPC::BCLR:
3720 case PPC::BCLRL:
3721 case PPC::BCLRLn:
3722 case PPC::BCLRn: {
3723 // op: BI
3724 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3725 Value |= (op & 0x1f) << 16;
3726 break;
3727 }
3728 case PPC::BC:
3729 case PPC::BCL:
3730 case PPC::BCLn:
3731 case PPC::BCn: {
3732 // op: BI
3733 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3734 Value |= (op & 0x1f) << 16;
3735 // op: BD
3736 op = getCondBrEncoding(MI, OpNo: 1, Fixups, STI);
3737 Value |= (op & 0x3fff) << 2;
3738 break;
3739 }
3740 case PPC::BCCCTR:
3741 case PPC::BCCCTR8:
3742 case PPC::BCCCTRL:
3743 case PPC::BCCCTRL8:
3744 case PPC::BCCLR:
3745 case PPC::BCCLRL: {
3746 // op: BIBO
3747 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3748 Value |= (op & 0x1f) << 21;
3749 Value |= (op & 0x60) << 11;
3750 // op: CR
3751 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3752 Value |= (op & 0x7) << 18;
3753 break;
3754 }
3755 case PPC::BCCA:
3756 case PPC::BCCLA: {
3757 // op: BIBO
3758 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3759 Value |= (op & 0x1f) << 21;
3760 Value |= (op & 0x60) << 11;
3761 // op: CR
3762 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3763 Value |= (op & 0x7) << 18;
3764 // op: BD
3765 op = getAbsCondBrEncoding(MI, OpNo: 2, Fixups, STI);
3766 Value |= (op & 0x3fff) << 2;
3767 break;
3768 }
3769 case PPC::BCC:
3770 case PPC::BCCL:
3771 case PPC::CTRL_DEP: {
3772 // op: BIBO
3773 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3774 Value |= (op & 0x1f) << 21;
3775 Value |= (op & 0x60) << 11;
3776 // op: CR
3777 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3778 Value |= (op & 0x7) << 18;
3779 // op: BD
3780 op = getCondBrEncoding(MI, OpNo: 2, Fixups, STI);
3781 Value |= (op & 0x3fff) << 2;
3782 break;
3783 }
3784 case PPC::gBCAat:
3785 case PPC::gBCLAat: {
3786 // op: BO
3787 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3788 Value |= (op & 0x1c) << 21;
3789 // op: at
3790 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3791 Value |= (op & 0x3) << 21;
3792 // op: BI
3793 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3794 Value |= (op & 0x1f) << 16;
3795 // op: BD
3796 op = getAbsCondBrEncoding(MI, OpNo: 3, Fixups, STI);
3797 Value |= (op & 0x3fff) << 2;
3798 break;
3799 }
3800 case PPC::gBCLat:
3801 case PPC::gBCat: {
3802 // op: BO
3803 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3804 Value |= (op & 0x1c) << 21;
3805 // op: at
3806 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3807 Value |= (op & 0x3) << 21;
3808 // op: BI
3809 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3810 Value |= (op & 0x1f) << 16;
3811 // op: BD
3812 op = getCondBrEncoding(MI, OpNo: 3, Fixups, STI);
3813 Value |= (op & 0x3fff) << 2;
3814 break;
3815 }
3816 case PPC::gBCA:
3817 case PPC::gBCLA: {
3818 // op: BO
3819 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3820 Value |= (op & 0x1f) << 21;
3821 // op: BI
3822 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3823 Value |= (op & 0x1f) << 16;
3824 // op: BD
3825 op = getAbsCondBrEncoding(MI, OpNo: 2, Fixups, STI);
3826 Value |= (op & 0x3fff) << 2;
3827 break;
3828 }
3829 case PPC::gBC:
3830 case PPC::gBCL: {
3831 // op: BO
3832 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3833 Value |= (op & 0x1f) << 21;
3834 // op: BI
3835 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3836 Value |= (op & 0x1f) << 16;
3837 // op: BD
3838 op = getCondBrEncoding(MI, OpNo: 2, Fixups, STI);
3839 Value |= (op & 0x3fff) << 2;
3840 break;
3841 }
3842 case PPC::gBCCTR:
3843 case PPC::gBCCTRL:
3844 case PPC::gBCLR:
3845 case PPC::gBCLRL: {
3846 // op: BO
3847 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3848 Value |= (op & 0x1f) << 21;
3849 // op: BI
3850 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3851 Value |= (op & 0x1f) << 16;
3852 // op: BH
3853 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3854 Value |= (op & 0x3) << 11;
3855 break;
3856 }
3857 case PPC::XSCMPEXPDP:
3858 case PPC::XSCMPODP:
3859 case PPC::XSCMPUDP:
3860 case PPC::XSTDIVDP:
3861 case PPC::XVTDIVDP:
3862 case PPC::XVTDIVSP: {
3863 // op: CR
3864 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3865 Value |= (op & 0x7) << 23;
3866 // op: XA
3867 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3868 Value |= (op & 0x1f) << 16;
3869 Value |= (op & 0x20) >> 3;
3870 // op: XB
3871 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3872 Value |= (op & 0x1f) << 11;
3873 Value |= (op & 0x20) >> 4;
3874 break;
3875 }
3876 case PPC::XSTSQRTDP:
3877 case PPC::XVTSQRTDP:
3878 case PPC::XVTSQRTSP: {
3879 // op: CR
3880 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3881 Value |= (op & 0x7) << 23;
3882 // op: XB
3883 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3884 Value |= (op & 0x1f) << 11;
3885 Value |= (op & 0x20) >> 4;
3886 break;
3887 }
3888 case PPC::CRAND:
3889 case PPC::CRANDC:
3890 case PPC::CREQV:
3891 case PPC::CRNAND:
3892 case PPC::CRNOR:
3893 case PPC::CROR:
3894 case PPC::CRORC:
3895 case PPC::CRXOR: {
3896 // op: CRD
3897 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3898 Value |= (op & 0x1f) << 21;
3899 // op: CRA
3900 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3901 Value |= (op & 0x1f) << 16;
3902 // op: CRB
3903 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3904 Value |= (op & 0x1f) << 11;
3905 break;
3906 }
3907 case PPC::CRNOT: {
3908 // op: CRD
3909 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3910 Value |= (op & 0x1f) << 21;
3911 // op: CRA
3912 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3913 Value |= (op & 0x1f) << 16;
3914 Value |= (op & 0x1f) << 11;
3915 break;
3916 }
3917 case PPC::CRSET:
3918 case PPC::CRUNSET: {
3919 // op: CRD
3920 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3921 Value |= (op & 0x1f) << 21;
3922 Value |= (op & 0x1f) << 16;
3923 Value |= (op & 0x1f) << 11;
3924 break;
3925 }
3926 case PPC::ICBLC:
3927 case PPC::ICBLQ:
3928 case PPC::ICBT:
3929 case PPC::ICBTLS: {
3930 // op: CT
3931 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3932 Value |= (op & 0xf) << 21;
3933 // op: RA
3934 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3935 Value |= (op & 0x1f) << 16;
3936 // op: RB
3937 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3938 Value |= (op & 0x1f) << 11;
3939 break;
3940 }
3941 case PPC::WRTEEI: {
3942 // op: E
3943 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3944 Value |= (op & 0x1) << 15;
3945 break;
3946 }
3947 case PPC::MTFSB0:
3948 case PPC::MTFSB1: {
3949 // op: FM
3950 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3951 Value |= (op & 0x1f) << 21;
3952 break;
3953 }
3954 case PPC::MTFSFb: {
3955 // op: FM
3956 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3957 Value |= (op & 0xff) << 17;
3958 // op: RT
3959 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3960 Value |= (op & 0x1f) << 11;
3961 break;
3962 }
3963 case PPC::FADD:
3964 case PPC::FADDS:
3965 case PPC::FADDS_rec:
3966 case PPC::FADD_rec:
3967 case PPC::FDIV:
3968 case PPC::FDIVS:
3969 case PPC::FDIVS_rec:
3970 case PPC::FDIV_rec:
3971 case PPC::FSUB:
3972 case PPC::FSUBS:
3973 case PPC::FSUBS_rec:
3974 case PPC::FSUB_rec:
3975 case PPC::XSIEXPQP: {
3976 // op: FRT
3977 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3978 Value |= (op & 0x1f) << 21;
3979 // op: FRA
3980 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3981 Value |= (op & 0x1f) << 16;
3982 // op: FRB
3983 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3984 Value |= (op & 0x1f) << 11;
3985 break;
3986 }
3987 case PPC::DQUA:
3988 case PPC::DQUAQ:
3989 case PPC::DQUAQ_rec:
3990 case PPC::DQUA_rec:
3991 case PPC::DRRND:
3992 case PPC::DRRNDQ:
3993 case PPC::DRRNDQ_rec:
3994 case PPC::DRRND_rec: {
3995 // op: FRT
3996 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3997 Value |= (op & 0x1f) << 21;
3998 // op: FRA
3999 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4000 Value |= (op & 0x1f) << 16;
4001 // op: FRB
4002 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4003 Value |= (op & 0x1f) << 11;
4004 // op: RMC
4005 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4006 Value |= (op & 0x3) << 9;
4007 break;
4008 }
4009 case PPC::FMUL:
4010 case PPC::FMULS:
4011 case PPC::FMULS_rec:
4012 case PPC::FMUL_rec: {
4013 // op: FRT
4014 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4015 Value |= (op & 0x1f) << 21;
4016 // op: FRA
4017 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4018 Value |= (op & 0x1f) << 16;
4019 // op: FRC
4020 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4021 Value |= (op & 0x1f) << 6;
4022 break;
4023 }
4024 case PPC::FMADD:
4025 case PPC::FMADDS:
4026 case PPC::FMADDS_rec:
4027 case PPC::FMADD_rec:
4028 case PPC::FMSUB:
4029 case PPC::FMSUBS:
4030 case PPC::FMSUBS_rec:
4031 case PPC::FMSUB_rec:
4032 case PPC::FNMADD:
4033 case PPC::FNMADDS:
4034 case PPC::FNMADDS_rec:
4035 case PPC::FNMADD_rec:
4036 case PPC::FNMSUB:
4037 case PPC::FNMSUBS:
4038 case PPC::FNMSUBS_rec:
4039 case PPC::FNMSUB_rec:
4040 case PPC::FSELD:
4041 case PPC::FSELD_rec:
4042 case PPC::FSELS:
4043 case PPC::FSELS_rec: {
4044 // op: FRT
4045 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4046 Value |= (op & 0x1f) << 21;
4047 // op: FRA
4048 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4049 Value |= (op & 0x1f) << 16;
4050 // op: FRC
4051 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4052 Value |= (op & 0x1f) << 6;
4053 // op: FRB
4054 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4055 Value |= (op & 0x1f) << 11;
4056 break;
4057 }
4058 case PPC::DSCLI:
4059 case PPC::DSCLIQ:
4060 case PPC::DSCLIQ_rec:
4061 case PPC::DSCLI_rec:
4062 case PPC::DSCRI:
4063 case PPC::DSCRIQ:
4064 case PPC::DSCRIQ_rec:
4065 case PPC::DSCRI_rec: {
4066 // op: FRT
4067 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4068 Value |= (op & 0x1f) << 21;
4069 // op: FRA
4070 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4071 Value |= (op & 0x1f) << 16;
4072 // op: SH
4073 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4074 Value |= (op & 0x3f) << 10;
4075 break;
4076 }
4077 case PPC::DQUAI:
4078 case PPC::DQUAIQ:
4079 case PPC::DQUAIQ_rec:
4080 case PPC::DQUAI_rec: {
4081 // op: FRT
4082 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4083 Value |= (op & 0x1f) << 21;
4084 // op: FRB
4085 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4086 Value |= (op & 0x1f) << 11;
4087 // op: RMC
4088 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4089 Value |= (op & 0x3) << 9;
4090 // op: TE
4091 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4092 Value |= (op & 0x1f) << 16;
4093 break;
4094 }
4095 case PPC::DRINTN:
4096 case PPC::DRINTNQ:
4097 case PPC::DRINTNQ_rec:
4098 case PPC::DRINTN_rec:
4099 case PPC::DRINTX:
4100 case PPC::DRINTXQ:
4101 case PPC::DRINTXQ_rec:
4102 case PPC::DRINTX_rec: {
4103 // op: FRT
4104 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4105 Value |= (op & 0x1f) << 21;
4106 // op: R
4107 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4108 Value |= (op & 0x1) << 16;
4109 // op: FRB
4110 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4111 Value |= (op & 0x1f) << 11;
4112 // op: RMC
4113 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4114 Value |= (op & 0x3) << 9;
4115 break;
4116 }
4117 case PPC::MTCRF:
4118 case PPC::MTCRF8: {
4119 // op: FXM
4120 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4121 Value |= (op & 0xff) << 12;
4122 // op: RST
4123 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4124 Value |= (op & 0x1f) << 21;
4125 break;
4126 }
4127 case PPC::TSR: {
4128 // op: L
4129 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4130 Value |= (op & 0x1) << 21;
4131 break;
4132 }
4133 case PPC::SYNC:
4134 case PPC::WAIT: {
4135 // op: L
4136 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4137 Value |= (op & 0x3) << 21;
4138 break;
4139 }
4140 case PPC::WAITP10: {
4141 // op: L
4142 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4143 Value |= (op & 0x3) << 21;
4144 // op: PL
4145 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4146 Value |= (op & 0x3) << 16;
4147 break;
4148 }
4149 case PPC::SYNCP10: {
4150 // op: L
4151 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4152 Value |= (op & 0x7) << 21;
4153 // op: SC
4154 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4155 Value |= (op & 0x3) << 16;
4156 break;
4157 }
4158 case PPC::CP_PASTE8_rec:
4159 case PPC::CP_PASTE_rec: {
4160 // op: L
4161 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4162 Value |= (op & 0x1) << 21;
4163 // op: RA
4164 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4165 Value |= (op & 0x1f) << 16;
4166 // op: RB
4167 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4168 Value |= (op & 0x1f) << 11;
4169 break;
4170 }
4171 case PPC::MTFSF:
4172 case PPC::MTFSF_rec: {
4173 // op: L
4174 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4175 Value |= (op & 0x1) << 25;
4176 // op: FLM
4177 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4178 Value |= (op & 0xff) << 17;
4179 // op: W
4180 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4181 Value |= (op & 0x1) << 16;
4182 // op: FRB
4183 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4184 Value |= (op & 0x1f) << 11;
4185 break;
4186 }
4187 case PPC::SC:
4188 case PPC::SCV: {
4189 // op: LEV
4190 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4191 Value |= (op & 0x7f) << 5;
4192 break;
4193 }
4194 case PPC::BA:
4195 case PPC::BLA:
4196 case PPC::BLA8:
4197 case PPC::BLA8_RM:
4198 case PPC::BLA_RM:
4199 case PPC::TAILBA:
4200 case PPC::TAILBA8: {
4201 // op: LI
4202 op = getAbsDirectBrEncoding(MI, OpNo: 0, Fixups, STI);
4203 Value |= (op & 0xffffff) << 2;
4204 break;
4205 }
4206 case PPC::BLA8_NOP:
4207 case PPC::BLA8_NOP_RM: {
4208 // op: LI
4209 op = getAbsDirectBrEncoding(MI, OpNo: 0, Fixups, STI);
4210 Value |= (op & 0xffffff) << 34;
4211 break;
4212 }
4213 case PPC::B:
4214 case PPC::BL:
4215 case PPC::BL8:
4216 case PPC::BL8_NOTOC:
4217 case PPC::BL8_NOTOC_RM:
4218 case PPC::BL8_RM:
4219 case PPC::BL_RM:
4220 case PPC::TAILB:
4221 case PPC::TAILB8: {
4222 // op: LI
4223 op = getDirectBrEncoding(MI, OpNo: 0, Fixups, STI);
4224 Value |= (op & 0xffffff) << 2;
4225 break;
4226 }
4227 case PPC::BL8_LDinto_toc:
4228 case PPC::BL8_LDinto_toc_RM:
4229 case PPC::BL8_NOP:
4230 case PPC::BL8_NOP_RM:
4231 case PPC::BL_LWZinto_toc:
4232 case PPC::BL_LWZinto_toc_RM:
4233 case PPC::BL_NOP:
4234 case PPC::BL_NOP_RM: {
4235 // op: LI
4236 op = getDirectBrEncoding(MI, OpNo: 0, Fixups, STI);
4237 Value |= (op & 0xffffff) << 34;
4238 break;
4239 }
4240 case PPC::BL8_NOTOC_TLS:
4241 case PPC::BL8_TLS:
4242 case PPC::BL8_TLS_:
4243 case PPC::BL_TLS: {
4244 // op: LI
4245 op = getTLSCallEncoding(MI, OpNo: 0, Fixups, STI);
4246 Value |= (op & 0xffffff) << 2;
4247 break;
4248 }
4249 case PPC::BL8_NOP_TLS: {
4250 // op: LI
4251 op = getTLSCallEncoding(MI, OpNo: 0, Fixups, STI);
4252 Value |= (op & 0xffffff) << 34;
4253 break;
4254 }
4255 case PPC::MBAR: {
4256 // op: MO
4257 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4258 Value |= (op & 0x1f) << 21;
4259 break;
4260 }
4261 case PPC::TBEGIN: {
4262 // op: R
4263 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4264 Value |= (op & 0x1) << 21;
4265 break;
4266 }
4267 case PPC::TABORT:
4268 case PPC::TRECLAIM: {
4269 // op: RA
4270 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4271 Value |= (op & 0x1f) << 16;
4272 break;
4273 }
4274 case PPC::CP_COPY:
4275 case PPC::CP_COPY8:
4276 case PPC::DCBA:
4277 case PPC::DCBFEP:
4278 case PPC::DCBI:
4279 case PPC::DCBST:
4280 case PPC::DCBSTEP:
4281 case PPC::DCBZ:
4282 case PPC::DCBZEP:
4283 case PPC::DCBZL:
4284 case PPC::DCBZLEP:
4285 case PPC::DCCCI:
4286 case PPC::ICBI:
4287 case PPC::ICBIEP:
4288 case PPC::ICCCI:
4289 case PPC::TLBIVAX:
4290 case PPC::TLBSX: {
4291 // op: RA
4292 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4293 Value |= (op & 0x1f) << 16;
4294 // op: RB
4295 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4296 Value |= (op & 0x1f) << 11;
4297 break;
4298 }
4299 case PPC::RLWNM:
4300 case PPC::RLWNM8:
4301 case PPC::RLWNM8_rec:
4302 case PPC::RLWNM_rec: {
4303 // op: RA
4304 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4305 Value |= (op & 0x1f) << 16;
4306 // op: RS
4307 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4308 Value |= (op & 0x1f) << 21;
4309 // op: RB
4310 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4311 Value |= (op & 0x1f) << 11;
4312 // op: MB
4313 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4314 Value |= (op & 0x1f) << 6;
4315 // op: ME
4316 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
4317 Value |= (op & 0x1f) << 1;
4318 break;
4319 }
4320 case PPC::RLDCL:
4321 case PPC::RLDCL_rec:
4322 case PPC::RLDCR:
4323 case PPC::RLDCR_rec: {
4324 // op: RA
4325 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4326 Value |= (op & 0x1f) << 16;
4327 // op: RS
4328 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4329 Value |= (op & 0x1f) << 21;
4330 // op: RB
4331 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4332 Value |= (op & 0x1f) << 11;
4333 // op: MBE
4334 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4335 Value |= (op & 0x1f) << 6;
4336 Value |= (op & 0x20);
4337 break;
4338 }
4339 case PPC::RLWINM:
4340 case PPC::RLWINM8:
4341 case PPC::RLWINM8_rec:
4342 case PPC::RLWINM_rec: {
4343 // op: RA
4344 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4345 Value |= (op & 0x1f) << 16;
4346 // op: RS
4347 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4348 Value |= (op & 0x1f) << 21;
4349 // op: SH
4350 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4351 Value |= (op & 0x1f) << 11;
4352 // op: MB
4353 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4354 Value |= (op & 0x1f) << 6;
4355 // op: ME
4356 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
4357 Value |= (op & 0x1f) << 1;
4358 break;
4359 }
4360 case PPC::EXTSWSLI:
4361 case PPC::EXTSWSLI_32_64:
4362 case PPC::EXTSWSLI_32_64_rec:
4363 case PPC::EXTSWSLI_rec:
4364 case PPC::SRADI:
4365 case PPC::SRADI_32:
4366 case PPC::SRADI_rec: {
4367 // op: RA
4368 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4369 Value |= (op & 0x1f) << 16;
4370 // op: RS
4371 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4372 Value |= (op & 0x1f) << 21;
4373 // op: SH
4374 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4375 Value |= (op & 0x1f) << 11;
4376 Value |= (op & 0x20) >> 4;
4377 break;
4378 }
4379 case PPC::RLDIC:
4380 case PPC::RLDICL:
4381 case PPC::RLDICL_32:
4382 case PPC::RLDICL_32_64:
4383 case PPC::RLDICL_32_rec:
4384 case PPC::RLDICL_rec:
4385 case PPC::RLDICR:
4386 case PPC::RLDICR_32:
4387 case PPC::RLDICR_rec:
4388 case PPC::RLDIC_rec: {
4389 // op: RA
4390 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4391 Value |= (op & 0x1f) << 16;
4392 // op: RS
4393 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4394 Value |= (op & 0x1f) << 21;
4395 // op: SH
4396 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4397 Value |= (op & 0x1f) << 11;
4398 Value |= (op & 0x20) >> 4;
4399 // op: MBE
4400 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4401 Value |= (op & 0x1f) << 6;
4402 Value |= (op & 0x20);
4403 break;
4404 }
4405 case PPC::RLWIMI:
4406 case PPC::RLWIMI8:
4407 case PPC::RLWIMI8_rec:
4408 case PPC::RLWIMI_rec: {
4409 // op: RA
4410 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4411 Value |= (op & 0x1f) << 16;
4412 // op: RS
4413 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4414 Value |= (op & 0x1f) << 21;
4415 // op: SH
4416 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4417 Value |= (op & 0x1f) << 11;
4418 // op: MB
4419 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
4420 Value |= (op & 0x1f) << 6;
4421 // op: ME
4422 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
4423 Value |= (op & 0x1f) << 1;
4424 break;
4425 }
4426 case PPC::RLDIMI:
4427 case PPC::RLDIMI_rec: {
4428 // op: RA
4429 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4430 Value |= (op & 0x1f) << 16;
4431 // op: RS
4432 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4433 Value |= (op & 0x1f) << 21;
4434 // op: SH
4435 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4436 Value |= (op & 0x1f) << 11;
4437 Value |= (op & 0x20) >> 4;
4438 // op: MBE
4439 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
4440 Value |= (op & 0x1f) << 6;
4441 Value |= (op & 0x20);
4442 break;
4443 }
4444 case PPC::BRD:
4445 case PPC::BRH:
4446 case PPC::BRH8:
4447 case PPC::BRW:
4448 case PPC::BRW8:
4449 case PPC::CBCDTD:
4450 case PPC::CBCDTD8:
4451 case PPC::CDTBCD:
4452 case PPC::CDTBCD8:
4453 case PPC::CNTLZD:
4454 case PPC::CNTLZD_rec:
4455 case PPC::CNTLZW:
4456 case PPC::CNTLZW8:
4457 case PPC::CNTLZW8_rec:
4458 case PPC::CNTLZW_rec:
4459 case PPC::CNTTZD:
4460 case PPC::CNTTZD_rec:
4461 case PPC::CNTTZW:
4462 case PPC::CNTTZW8:
4463 case PPC::CNTTZW8_rec:
4464 case PPC::CNTTZW_rec:
4465 case PPC::EXTSB:
4466 case PPC::EXTSB8:
4467 case PPC::EXTSB8_32_64:
4468 case PPC::EXTSB8_rec:
4469 case PPC::EXTSB_rec:
4470 case PPC::EXTSH:
4471 case PPC::EXTSH8:
4472 case PPC::EXTSH8_32_64:
4473 case PPC::EXTSH8_rec:
4474 case PPC::EXTSH_rec:
4475 case PPC::EXTSW:
4476 case PPC::EXTSW_32:
4477 case PPC::EXTSW_32_64:
4478 case PPC::EXTSW_32_64_rec:
4479 case PPC::EXTSW_rec:
4480 case PPC::POPCNTB:
4481 case PPC::POPCNTB8:
4482 case PPC::POPCNTD:
4483 case PPC::POPCNTW: {
4484 // op: RA
4485 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4486 Value |= (op & 0x1f) << 16;
4487 // op: RST
4488 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4489 Value |= (op & 0x1f) << 21;
4490 break;
4491 }
4492 case PPC::ANDI8_rec:
4493 case PPC::ANDIS8_rec:
4494 case PPC::ANDIS_rec:
4495 case PPC::ANDI_rec:
4496 case PPC::ORI:
4497 case PPC::ORI8:
4498 case PPC::ORIS:
4499 case PPC::ORIS8:
4500 case PPC::XORI:
4501 case PPC::XORI8:
4502 case PPC::XORIS:
4503 case PPC::XORIS8: {
4504 // op: RA
4505 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4506 Value |= (op & 0x1f) << 16;
4507 // op: RST
4508 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4509 Value |= (op & 0x1f) << 21;
4510 // op: D
4511 op = getImmEncoding<PPC::fixup_ppc_half16>(MI, OpNo: 2, Fixups, STI);
4512 Value |= (op & 0xffff);
4513 break;
4514 }
4515 case PPC::AND:
4516 case PPC::AND8:
4517 case PPC::AND8_rec:
4518 case PPC::ANDC:
4519 case PPC::ANDC8:
4520 case PPC::ANDC8_rec:
4521 case PPC::ANDC_rec:
4522 case PPC::AND_rec:
4523 case PPC::BPERMD:
4524 case PPC::CFUGED:
4525 case PPC::CMPB:
4526 case PPC::CMPB8:
4527 case PPC::CNTLZDM:
4528 case PPC::CNTTZDM:
4529 case PPC::EQV:
4530 case PPC::EQV8:
4531 case PPC::EQV8_rec:
4532 case PPC::EQV_rec:
4533 case PPC::NAND:
4534 case PPC::NAND8:
4535 case PPC::NAND8_rec:
4536 case PPC::NAND_rec:
4537 case PPC::NOR:
4538 case PPC::NOR8:
4539 case PPC::NOR8_rec:
4540 case PPC::NOR_rec:
4541 case PPC::OR:
4542 case PPC::OR8:
4543 case PPC::OR8_rec:
4544 case PPC::ORC:
4545 case PPC::ORC8:
4546 case PPC::ORC8_rec:
4547 case PPC::ORC_rec:
4548 case PPC::OR_rec:
4549 case PPC::PDEPD:
4550 case PPC::PEXTD:
4551 case PPC::SLD:
4552 case PPC::SLD_rec:
4553 case PPC::SLW:
4554 case PPC::SLW8:
4555 case PPC::SLW8_rec:
4556 case PPC::SLW_rec:
4557 case PPC::SRAD:
4558 case PPC::SRAD_rec:
4559 case PPC::SRAW:
4560 case PPC::SRAW8:
4561 case PPC::SRAW8_rec:
4562 case PPC::SRAWI:
4563 case PPC::SRAWI8:
4564 case PPC::SRAWI8_rec:
4565 case PPC::SRAWI_rec:
4566 case PPC::SRAW_rec:
4567 case PPC::SRD:
4568 case PPC::SRD_rec:
4569 case PPC::SRW:
4570 case PPC::SRW8:
4571 case PPC::SRW8_rec:
4572 case PPC::SRW_rec:
4573 case PPC::XOR:
4574 case PPC::XOR8:
4575 case PPC::XOR8_rec:
4576 case PPC::XOR_rec: {
4577 // op: RA
4578 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4579 Value |= (op & 0x1f) << 16;
4580 // op: RST
4581 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4582 Value |= (op & 0x1f) << 21;
4583 // op: RB
4584 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4585 Value |= (op & 0x1f) << 11;
4586 break;
4587 }
4588 case PPC::BCTRL_LWZinto_toc:
4589 case PPC::BCTRL_LWZinto_toc_RM: {
4590 // op: RA
4591 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4592 Value |= (op & 0x1f) << 16;
4593 // op: D
4594 op = getDispRIEncoding(MI, OpNo: 0, Fixups, STI);
4595 Value |= (op & 0xffff);
4596 break;
4597 }
4598 case PPC::BCTRL8_LDinto_toc:
4599 case PPC::BCTRL8_LDinto_toc_RM: {
4600 // op: RA
4601 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4602 Value |= (op & 0x1f) << 16;
4603 // op: D
4604 op = getDispRIXEncoding(MI, OpNo: 0, Fixups, STI);
4605 Value |= (op & 0x3fff) << 2;
4606 break;
4607 }
4608 case PPC::TLBILX: {
4609 // op: RA
4610 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4611 Value |= (op & 0x1f) << 16;
4612 // op: RB
4613 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4614 Value |= (op & 0x1f) << 11;
4615 // op: T
4616 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4617 Value |= (op & 0x1f) << 21;
4618 break;
4619 }
4620 case PPC::HASHCHK:
4621 case PPC::HASHCHK8:
4622 case PPC::HASHCHKP:
4623 case PPC::HASHCHKP8:
4624 case PPC::HASHST:
4625 case PPC::HASHST8:
4626 case PPC::HASHSTP:
4627 case PPC::HASHSTP8: {
4628 // op: RA
4629 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4630 Value |= (op & 0x1f) << 16;
4631 // op: D
4632 op = getDispRIHashEncoding(MI, OpNo: 1, Fixups, STI);
4633 Value |= (op & 0x1f) << 21;
4634 Value |= (op & 0x20) >> 5;
4635 // op: RB
4636 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4637 Value |= (op & 0x1f) << 11;
4638 break;
4639 }
4640 case PPC::MSGSNDP:
4641 case PPC::MSGSNDP8:
4642 case PPC::SLBIE:
4643 case PPC::TLBIEL:
4644 case PPC::TLBLD:
4645 case PPC::TLBLI: {
4646 // op: RB
4647 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4648 Value |= (op & 0x1f) << 11;
4649 break;
4650 }
4651 case PPC::MTLPL:
4652 case PPC::MTLPL8: {
4653 // op: RB
4654 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4655 Value |= (op & 0x1f) << 11;
4656 // op: RS
4657 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4658 Value |= (op & 0x1f) << 21;
4659 break;
4660 }
4661 case PPC::VCNTMBB:
4662 case PPC::VCNTMBD:
4663 case PPC::VCNTMBH:
4664 case PPC::VCNTMBW: {
4665 // op: RD
4666 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4667 Value |= (op & 0x1f) << 21;
4668 // op: VB
4669 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4670 Value |= (op & 0x1f) << 11;
4671 // op: MP
4672 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4673 Value |= (op & 0x1) << 16;
4674 break;
4675 }
4676 case PPC::VGNB: {
4677 // op: RD
4678 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4679 Value |= (op & 0x1f) << 21;
4680 // op: VB
4681 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4682 Value |= (op & 0x1f) << 11;
4683 // op: N
4684 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4685 Value |= (op & 0x7) << 16;
4686 break;
4687 }
4688 case PPC::PTESYNCIO:
4689 case PPC::TLBSYNCIO:
4690 case PPC::WRTEE: {
4691 // op: RS
4692 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4693 Value |= (op & 0x1f) << 21;
4694 break;
4695 }
4696 case PPC::MTMSR:
4697 case PPC::MTMSRD: {
4698 // op: RS
4699 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4700 Value |= (op & 0x1f) << 21;
4701 // op: L
4702 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4703 Value |= (op & 0x1) << 16;
4704 break;
4705 }
4706 case PPC::MFSRIN:
4707 case PPC::MTSRIN: {
4708 // op: RS
4709 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4710 Value |= (op & 0x1f) << 21;
4711 // op: RB
4712 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4713 Value |= (op & 0x1f) << 11;
4714 break;
4715 }
4716 case PPC::MFSR:
4717 case PPC::MTSR: {
4718 // op: RS
4719 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4720 Value |= (op & 0x1f) << 21;
4721 // op: SR
4722 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4723 Value |= (op & 0xf) << 16;
4724 break;
4725 }
4726 case PPC::TLBIEIO: {
4727 // op: RS
4728 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4729 Value |= (op & 0x1f) << 21;
4730 // op: RB
4731 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4732 Value |= (op & 0x1f) << 11;
4733 // op: RIC
4734 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4735 Value |= (op & 0x3) << 18;
4736 break;
4737 }
4738 case PPC::TLBIE8P9:
4739 case PPC::TLBIEP:
4740 case PPC::TLBIEP8:
4741 case PPC::TLBIEP9: {
4742 // op: RS
4743 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4744 Value |= (op & 0x1f) << 21;
4745 // op: RB
4746 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4747 Value |= (op & 0x1f) << 11;
4748 // op: RIC
4749 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4750 Value |= (op & 0x3) << 18;
4751 // op: PRS
4752 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4753 Value |= (op & 0x1) << 17;
4754 // op: R
4755 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
4756 Value |= (op & 0x1) << 16;
4757 break;
4758 }
4759 case PPC::MFCTR:
4760 case PPC::MFCTR8:
4761 case PPC::MFFS:
4762 case PPC::MFFSCE:
4763 case PPC::MFFSL:
4764 case PPC::MFFS_rec:
4765 case PPC::MFLR:
4766 case PPC::MFLR8:
4767 case PPC::MFMSR:
4768 case PPC::MFTB8:
4769 case PPC::MFUDSCR:
4770 case PPC::MFVRSAVE:
4771 case PPC::MFVRSAVEv:
4772 case PPC::MTCTR:
4773 case PPC::MTCTR8:
4774 case PPC::MTCTR8loop:
4775 case PPC::MTCTRloop:
4776 case PPC::MTLR:
4777 case PPC::MTLR8:
4778 case PPC::MTUDSCR:
4779 case PPC::MTVRSAVE: {
4780 // op: RST
4781 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4782 Value |= (op & 0x1f) << 21;
4783 break;
4784 }
4785 case PPC::SETBC:
4786 case PPC::SETBC8:
4787 case PPC::SETBCR:
4788 case PPC::SETBCR8:
4789 case PPC::SETNBC:
4790 case PPC::SETNBC8:
4791 case PPC::SETNBCR:
4792 case PPC::SETNBCR8: {
4793 // op: RST
4794 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4795 Value |= (op & 0x1f) << 21;
4796 // op: BI
4797 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4798 Value |= (op & 0x1f) << 16;
4799 break;
4800 }
4801 case PPC::LI:
4802 case PPC::LI8:
4803 case PPC::LIS:
4804 case PPC::LIS8: {
4805 // op: RST
4806 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4807 Value |= (op & 0x1f) << 21;
4808 // op: D
4809 op = getImmEncoding<PPC::fixup_ppc_half16>(MI, OpNo: 1, Fixups, STI);
4810 Value |= (op & 0xffff);
4811 break;
4812 }
4813 case PPC::PLBZ8onlypc:
4814 case PPC::PLBZonlypc:
4815 case PPC::PLDonlypc:
4816 case PPC::PLFDonlypc:
4817 case PPC::PLFSonlypc:
4818 case PPC::PLHA8onlypc:
4819 case PPC::PLHAonlypc:
4820 case PPC::PLHZ8onlypc:
4821 case PPC::PLHZonlypc:
4822 case PPC::PLWA8onlypc:
4823 case PPC::PLWAonlypc:
4824 case PPC::PLWZ8onlypc:
4825 case PPC::PLWZonlypc:
4826 case PPC::PLXSDonlypc:
4827 case PPC::PLXSSPonlypc:
4828 case PPC::PSTB8onlypc:
4829 case PPC::PSTBonlypc:
4830 case PPC::PSTDonlypc:
4831 case PPC::PSTFDonlypc:
4832 case PPC::PSTFSonlypc:
4833 case PPC::PSTH8onlypc:
4834 case PPC::PSTHonlypc:
4835 case PPC::PSTW8onlypc:
4836 case PPC::PSTWonlypc:
4837 case PPC::PSTXSDonlypc:
4838 case PPC::PSTXSSPonlypc: {
4839 // op: RST
4840 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4841 Value |= (op & 0x1f) << 21;
4842 // op: D
4843 op = getImmEncoding<PPC::fixup_ppc_pcrel34>(MI, OpNo: 1, Fixups, STI);
4844 Value |= (op & 0x3ffff0000) << 16;
4845 Value |= (op & 0xffff);
4846 break;
4847 }
4848 case PPC::MFFSCDRNI: {
4849 // op: RST
4850 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4851 Value |= (op & 0x1f) << 21;
4852 // op: DRM
4853 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4854 Value |= (op & 0x7) << 11;
4855 break;
4856 }
4857 case PPC::MFFSCDRN:
4858 case PPC::MFFSCRN: {
4859 // op: RST
4860 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4861 Value |= (op & 0x1f) << 21;
4862 // op: FRB
4863 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4864 Value |= (op & 0x1f) << 11;
4865 break;
4866 }
4867 case PPC::MFOCRF:
4868 case PPC::MFOCRF8: {
4869 // op: RST
4870 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4871 Value |= (op & 0x1f) << 21;
4872 // op: FXM
4873 op = get_crbitm_encoding(MI, OpNo: 1, Fixups, STI);
4874 Value |= (op & 0xff) << 12;
4875 break;
4876 }
4877 case PPC::LDAT_CSNE:
4878 case PPC::LWAT_CSNE: {
4879 // op: RST
4880 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4881 Value |= (op & 0x1f) << 21;
4882 // op: RA
4883 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4884 Value |= (op & 0x1f) << 16;
4885 break;
4886 }
4887 case PPC::ADDI:
4888 case PPC::ADDI8:
4889 case PPC::ADDIC:
4890 case PPC::ADDIC8:
4891 case PPC::ADDIC_rec:
4892 case PPC::ADDIS:
4893 case PPC::ADDIS8:
4894 case PPC::LA:
4895 case PPC::LA8:
4896 case PPC::MULLI:
4897 case PPC::MULLI8:
4898 case PPC::SUBFIC:
4899 case PPC::SUBFIC8:
4900 case PPC::TDI:
4901 case PPC::TWI: {
4902 // op: RST
4903 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4904 Value |= (op & 0x1f) << 21;
4905 // op: RA
4906 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4907 Value |= (op & 0x1f) << 16;
4908 // op: D
4909 op = getImmEncoding<PPC::fixup_ppc_half16>(MI, OpNo: 2, Fixups, STI);
4910 Value |= (op & 0xffff);
4911 break;
4912 }
4913 case PPC::DADD:
4914 case PPC::DADDQ:
4915 case PPC::DADDQ_rec:
4916 case PPC::DADD_rec:
4917 case PPC::DDIV:
4918 case PPC::DDIVQ:
4919 case PPC::DDIVQ_rec:
4920 case PPC::DDIV_rec:
4921 case PPC::DIEX:
4922 case PPC::DIEXQ:
4923 case PPC::DIEXQ_rec:
4924 case PPC::DIEX_rec:
4925 case PPC::DMUL:
4926 case PPC::DMULQ:
4927 case PPC::DMULQ_rec:
4928 case PPC::DMUL_rec:
4929 case PPC::DSUB:
4930 case PPC::DSUBQ:
4931 case PPC::DSUBQ_rec:
4932 case PPC::DSUB_rec:
4933 case PPC::FCPSGND:
4934 case PPC::FCPSGND_rec:
4935 case PPC::FCPSGNS:
4936 case PPC::FCPSGNS_rec:
4937 case PPC::LBARX:
4938 case PPC::LBARXL:
4939 case PPC::LBEPX:
4940 case PPC::LBZCIX:
4941 case PPC::LBZX:
4942 case PPC::LBZX8:
4943 case PPC::LDARX:
4944 case PPC::LDARXL:
4945 case PPC::LDBRX:
4946 case PPC::LDCIX:
4947 case PPC::LDX:
4948 case PPC::LFDEPX:
4949 case PPC::LFDX:
4950 case PPC::LFIWAX:
4951 case PPC::LFIWZX:
4952 case PPC::LFSX:
4953 case PPC::LHARX:
4954 case PPC::LHARXL:
4955 case PPC::LHAX:
4956 case PPC::LHAX8:
4957 case PPC::LHBRX:
4958 case PPC::LHBRX8:
4959 case PPC::LHEPX:
4960 case PPC::LHZCIX:
4961 case PPC::LHZX:
4962 case PPC::LHZX8:
4963 case PPC::LQARX:
4964 case PPC::LQARXL:
4965 case PPC::LSWI:
4966 case PPC::LVEBX:
4967 case PPC::LVEHX:
4968 case PPC::LVEWX:
4969 case PPC::LVSL:
4970 case PPC::LVSR:
4971 case PPC::LVX:
4972 case PPC::LVXL:
4973 case PPC::LWARX:
4974 case PPC::LWARXL:
4975 case PPC::LWAX:
4976 case PPC::LWAX_32:
4977 case PPC::LWBRX:
4978 case PPC::LWBRX8:
4979 case PPC::LWEPX:
4980 case PPC::LWZCIX:
4981 case PPC::LWZX:
4982 case PPC::LWZX8:
4983 case PPC::MODSD:
4984 case PPC::MODSW:
4985 case PPC::MODUD:
4986 case PPC::MODUW:
4987 case PPC::SPELWZX:
4988 case PPC::SPESTWX:
4989 case PPC::STBCIX:
4990 case PPC::STBCX:
4991 case PPC::STBEPX:
4992 case PPC::STBX:
4993 case PPC::STBX8:
4994 case PPC::STDAT:
4995 case PPC::STDBRX:
4996 case PPC::STDCIX:
4997 case PPC::STDCX:
4998 case PPC::STDX:
4999 case PPC::STFDEPX:
5000 case PPC::STFDX:
5001 case PPC::STFIWX:
5002 case PPC::STFSX:
5003 case PPC::STHBRX:
5004 case PPC::STHCIX:
5005 case PPC::STHCX:
5006 case PPC::STHEPX:
5007 case PPC::STHX:
5008 case PPC::STHX8:
5009 case PPC::STQCX:
5010 case PPC::STSWI:
5011 case PPC::STVEBX:
5012 case PPC::STVEHX:
5013 case PPC::STVEWX:
5014 case PPC::STVX:
5015 case PPC::STVXL:
5016 case PPC::STWAT:
5017 case PPC::STWBRX:
5018 case PPC::STWCIX:
5019 case PPC::STWCX:
5020 case PPC::STWEPX:
5021 case PPC::STWX:
5022 case PPC::STWX8:
5023 case PPC::TABORTDC:
5024 case PPC::TABORTDCI:
5025 case PPC::TABORTWC:
5026 case PPC::TABORTWCI:
5027 case PPC::TD:
5028 case PPC::TLBSX2:
5029 case PPC::TLBSX2D:
5030 case PPC::TW:
5031 case PPC::XSADDQP:
5032 case PPC::XSADDQPO:
5033 case PPC::XSCMPEQQP:
5034 case PPC::XSCMPGEQP:
5035 case PPC::XSCMPGTQP:
5036 case PPC::XSCPSGNQP:
5037 case PPC::XSDIVQP:
5038 case PPC::XSDIVQPO:
5039 case PPC::XSMAXCQP:
5040 case PPC::XSMINCQP:
5041 case PPC::XSMULQP:
5042 case PPC::XSMULQPO:
5043 case PPC::XSSUBQP:
5044 case PPC::XSSUBQPO: {
5045 // op: RST
5046 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5047 Value |= (op & 0x1f) << 21;
5048 // op: RA
5049 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5050 Value |= (op & 0x1f) << 16;
5051 // op: RB
5052 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5053 Value |= (op & 0x1f) << 11;
5054 break;
5055 }
5056 case PPC::LBZXTLS:
5057 case PPC::LBZXTLS_:
5058 case PPC::LBZXTLS_32:
5059 case PPC::LDXTLS:
5060 case PPC::LDXTLS_:
5061 case PPC::LFDXTLS:
5062 case PPC::LFDXTLS_:
5063 case PPC::LFSXTLS:
5064 case PPC::LFSXTLS_:
5065 case PPC::LHAXTLS:
5066 case PPC::LHAXTLS_:
5067 case PPC::LHAXTLS_32:
5068 case PPC::LHZXTLS:
5069 case PPC::LHZXTLS_:
5070 case PPC::LHZXTLS_32:
5071 case PPC::LWAXTLS:
5072 case PPC::LWAXTLS_:
5073 case PPC::LWAXTLS_32:
5074 case PPC::LWZXTLS:
5075 case PPC::LWZXTLS_:
5076 case PPC::LWZXTLS_32:
5077 case PPC::STBXTLS:
5078 case PPC::STBXTLS_:
5079 case PPC::STBXTLS_32:
5080 case PPC::STDXTLS:
5081 case PPC::STDXTLS_:
5082 case PPC::STFDXTLS:
5083 case PPC::STFDXTLS_:
5084 case PPC::STFSXTLS:
5085 case PPC::STFSXTLS_:
5086 case PPC::STHXTLS:
5087 case PPC::STHXTLS_:
5088 case PPC::STHXTLS_32:
5089 case PPC::STWXTLS:
5090 case PPC::STWXTLS_:
5091 case PPC::STWXTLS_32: {
5092 // op: RST
5093 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5094 Value |= (op & 0x1f) << 21;
5095 // op: RA
5096 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5097 Value |= (op & 0x1f) << 16;
5098 // op: RB
5099 op = getTLSRegEncoding(MI, OpNo: 2, Fixups, STI);
5100 Value |= (op & 0x1f) << 11;
5101 break;
5102 }
5103 case PPC::TLBRE2:
5104 case PPC::TLBWE2: {
5105 // op: RST
5106 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5107 Value |= (op & 0x1f) << 21;
5108 // op: RA
5109 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5110 Value |= (op & 0x1f) << 16;
5111 // op: WS
5112 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5113 Value |= (op & 0x1) << 11;
5114 break;
5115 }
5116 case PPC::PLBZ:
5117 case PPC::PLBZ8:
5118 case PPC::PLBZ8nopc:
5119 case PPC::PLBZnopc:
5120 case PPC::PLD:
5121 case PPC::PLDnopc:
5122 case PPC::PLFD:
5123 case PPC::PLFDnopc:
5124 case PPC::PLFS:
5125 case PPC::PLFSnopc:
5126 case PPC::PLHA:
5127 case PPC::PLHA8:
5128 case PPC::PLHA8nopc:
5129 case PPC::PLHAnopc:
5130 case PPC::PLHZ:
5131 case PPC::PLHZ8:
5132 case PPC::PLHZ8nopc:
5133 case PPC::PLHZnopc:
5134 case PPC::PLWA:
5135 case PPC::PLWA8:
5136 case PPC::PLWA8nopc:
5137 case PPC::PLWAnopc:
5138 case PPC::PLWZ:
5139 case PPC::PLWZ8:
5140 case PPC::PLWZ8nopc:
5141 case PPC::PLWZnopc:
5142 case PPC::PLXSD:
5143 case PPC::PLXSDnopc:
5144 case PPC::PLXSSP:
5145 case PPC::PLXSSPnopc:
5146 case PPC::PSTB:
5147 case PPC::PSTB8:
5148 case PPC::PSTB8nopc:
5149 case PPC::PSTBnopc:
5150 case PPC::PSTD:
5151 case PPC::PSTDnopc:
5152 case PPC::PSTFD:
5153 case PPC::PSTFDnopc:
5154 case PPC::PSTFS:
5155 case PPC::PSTFSnopc:
5156 case PPC::PSTH:
5157 case PPC::PSTH8:
5158 case PPC::PSTH8nopc:
5159 case PPC::PSTHnopc:
5160 case PPC::PSTW:
5161 case PPC::PSTW8:
5162 case PPC::PSTW8nopc:
5163 case PPC::PSTWnopc:
5164 case PPC::PSTXSD:
5165 case PPC::PSTXSDnopc:
5166 case PPC::PSTXSSP:
5167 case PPC::PSTXSSPnopc: {
5168 // op: RST
5169 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5170 Value |= (op & 0x1f) << 21;
5171 // op: RA
5172 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5173 Value |= (op & 0x1f) << 16;
5174 // op: D
5175 op = getDispRI34Encoding(MI, OpNo: 1, Fixups, STI);
5176 Value |= (op & 0x3ffff0000) << 16;
5177 Value |= (op & 0xffff);
5178 break;
5179 }
5180 case PPC::PLBZ8pc:
5181 case PPC::PLBZpc:
5182 case PPC::PLDpc:
5183 case PPC::PLFDpc:
5184 case PPC::PLFSpc:
5185 case PPC::PLHA8pc:
5186 case PPC::PLHApc:
5187 case PPC::PLHZ8pc:
5188 case PPC::PLHZpc:
5189 case PPC::PLWA8pc:
5190 case PPC::PLWApc:
5191 case PPC::PLWZ8pc:
5192 case PPC::PLWZpc:
5193 case PPC::PLXSDpc:
5194 case PPC::PLXSSPpc:
5195 case PPC::PSTB8pc:
5196 case PPC::PSTBpc:
5197 case PPC::PSTDpc:
5198 case PPC::PSTFDpc:
5199 case PPC::PSTFSpc:
5200 case PPC::PSTH8pc:
5201 case PPC::PSTHpc:
5202 case PPC::PSTW8pc:
5203 case PPC::PSTWpc:
5204 case PPC::PSTXSDpc:
5205 case PPC::PSTXSSPpc: {
5206 // op: RST
5207 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5208 Value |= (op & 0x1f) << 21;
5209 // op: RA
5210 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5211 Value |= (op & 0x1f) << 16;
5212 // op: D
5213 op = getDispRI34PCRelEncoding(MI, OpNo: 1, Fixups, STI);
5214 Value |= (op & 0x3ffff0000) << 16;
5215 Value |= (op & 0xffff);
5216 break;
5217 }
5218 case PPC::LBZ:
5219 case PPC::LBZ8:
5220 case PPC::LFD:
5221 case PPC::LFS:
5222 case PPC::LHA:
5223 case PPC::LHA8:
5224 case PPC::LHZ:
5225 case PPC::LHZ8:
5226 case PPC::LMW:
5227 case PPC::LWZ:
5228 case PPC::LWZ8:
5229 case PPC::SPELWZ:
5230 case PPC::SPESTW:
5231 case PPC::STB:
5232 case PPC::STB8:
5233 case PPC::STFD:
5234 case PPC::STFS:
5235 case PPC::STH:
5236 case PPC::STH8:
5237 case PPC::STMW:
5238 case PPC::STW:
5239 case PPC::STW8: {
5240 // op: RST
5241 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5242 Value |= (op & 0x1f) << 21;
5243 // op: RA
5244 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5245 Value |= (op & 0x1f) << 16;
5246 // op: D
5247 op = getDispRIEncoding(MI, OpNo: 1, Fixups, STI);
5248 Value |= (op & 0xffff);
5249 break;
5250 }
5251 case PPC::LD:
5252 case PPC::LWA:
5253 case PPC::LWA_32:
5254 case PPC::LXSD:
5255 case PPC::LXSSP:
5256 case PPC::STD:
5257 case PPC::STQ:
5258 case PPC::STXSD:
5259 case PPC::STXSSP: {
5260 // op: RST
5261 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5262 Value |= (op & 0x1f) << 21;
5263 // op: RA
5264 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5265 Value |= (op & 0x1f) << 16;
5266 // op: D
5267 op = getDispRIXEncoding(MI, OpNo: 1, Fixups, STI);
5268 Value |= (op & 0x3fff) << 2;
5269 break;
5270 }
5271 case PPC::LBZUX:
5272 case PPC::LBZUX8:
5273 case PPC::LDAT:
5274 case PPC::LDUX:
5275 case PPC::LFDUX:
5276 case PPC::LFSUX:
5277 case PPC::LHAUX:
5278 case PPC::LHAUX8:
5279 case PPC::LHZUX:
5280 case PPC::LHZUX8:
5281 case PPC::LWAT:
5282 case PPC::LWAUX:
5283 case PPC::LWZUX:
5284 case PPC::LWZUX8:
5285 case PPC::XSMADDQP:
5286 case PPC::XSMADDQPO:
5287 case PPC::XSMSUBQP:
5288 case PPC::XSMSUBQPO:
5289 case PPC::XSNMADDQP:
5290 case PPC::XSNMADDQPO:
5291 case PPC::XSNMSUBQP:
5292 case PPC::XSNMSUBQPO: {
5293 // op: RST
5294 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5295 Value |= (op & 0x1f) << 21;
5296 // op: RA
5297 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5298 Value |= (op & 0x1f) << 16;
5299 // op: RB
5300 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5301 Value |= (op & 0x1f) << 11;
5302 break;
5303 }
5304 case PPC::LBZU:
5305 case PPC::LBZU8:
5306 case PPC::LFDU:
5307 case PPC::LFSU:
5308 case PPC::LHAU:
5309 case PPC::LHAU8:
5310 case PPC::LHZU:
5311 case PPC::LHZU8:
5312 case PPC::LWZU:
5313 case PPC::LWZU8: {
5314 // op: RST
5315 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5316 Value |= (op & 0x1f) << 21;
5317 // op: RA
5318 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5319 Value |= (op & 0x1f) << 16;
5320 // op: D
5321 op = getDispRIEncoding(MI, OpNo: 2, Fixups, STI);
5322 Value |= (op & 0xffff);
5323 break;
5324 }
5325 case PPC::LDU: {
5326 // op: RST
5327 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5328 Value |= (op & 0x1f) << 21;
5329 // op: RA
5330 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5331 Value |= (op & 0x1f) << 16;
5332 // op: D
5333 op = getDispRIXEncoding(MI, OpNo: 2, Fixups, STI);
5334 Value |= (op & 0x3fff) << 2;
5335 break;
5336 }
5337 case PPC::DCFFIX:
5338 case PPC::DCFFIXQ:
5339 case PPC::DCFFIXQQ:
5340 case PPC::DCFFIXQ_rec:
5341 case PPC::DCFFIX_rec:
5342 case PPC::DCTDP:
5343 case PPC::DCTDP_rec:
5344 case PPC::DCTFIX:
5345 case PPC::DCTFIXQ:
5346 case PPC::DCTFIXQQ:
5347 case PPC::DCTFIXQ_rec:
5348 case PPC::DCTFIX_rec:
5349 case PPC::DCTQPQ:
5350 case PPC::DCTQPQ_rec:
5351 case PPC::DRDPQ:
5352 case PPC::DRDPQ_rec:
5353 case PPC::DRSP:
5354 case PPC::DRSP_rec:
5355 case PPC::DXEX:
5356 case PPC::DXEXQ:
5357 case PPC::DXEXQ_rec:
5358 case PPC::DXEX_rec:
5359 case PPC::FABSD:
5360 case PPC::FABSD_rec:
5361 case PPC::FABSS:
5362 case PPC::FABSS_rec:
5363 case PPC::FCFID:
5364 case PPC::FCFIDS:
5365 case PPC::FCFIDS_rec:
5366 case PPC::FCFIDU:
5367 case PPC::FCFIDUS:
5368 case PPC::FCFIDUS_rec:
5369 case PPC::FCFIDU_rec:
5370 case PPC::FCFID_rec:
5371 case PPC::FCTID:
5372 case PPC::FCTIDU:
5373 case PPC::FCTIDUZ:
5374 case PPC::FCTIDUZ_rec:
5375 case PPC::FCTIDU_rec:
5376 case PPC::FCTIDZ:
5377 case PPC::FCTIDZ_rec:
5378 case PPC::FCTID_rec:
5379 case PPC::FCTIW:
5380 case PPC::FCTIWU:
5381 case PPC::FCTIWUZ:
5382 case PPC::FCTIWUZ_rec:
5383 case PPC::FCTIWU_rec:
5384 case PPC::FCTIWZ:
5385 case PPC::FCTIWZ_rec:
5386 case PPC::FCTIW_rec:
5387 case PPC::FMR:
5388 case PPC::FMR_rec:
5389 case PPC::FNABSD:
5390 case PPC::FNABSD_rec:
5391 case PPC::FNABSS:
5392 case PPC::FNABSS_rec:
5393 case PPC::FNEGD:
5394 case PPC::FNEGD_rec:
5395 case PPC::FNEGS:
5396 case PPC::FNEGS_rec:
5397 case PPC::FRE:
5398 case PPC::FRES:
5399 case PPC::FRES_rec:
5400 case PPC::FRE_rec:
5401 case PPC::FRIMD:
5402 case PPC::FRIMD_rec:
5403 case PPC::FRIMS:
5404 case PPC::FRIMS_rec:
5405 case PPC::FRIND:
5406 case PPC::FRIND_rec:
5407 case PPC::FRINS:
5408 case PPC::FRINS_rec:
5409 case PPC::FRIPD:
5410 case PPC::FRIPD_rec:
5411 case PPC::FRIPS:
5412 case PPC::FRIPS_rec:
5413 case PPC::FRIZD:
5414 case PPC::FRIZD_rec:
5415 case PPC::FRIZS:
5416 case PPC::FRIZS_rec:
5417 case PPC::FRSP:
5418 case PPC::FRSP_rec:
5419 case PPC::FRSQRTE:
5420 case PPC::FRSQRTES:
5421 case PPC::FRSQRTES_rec:
5422 case PPC::FRSQRTE_rec:
5423 case PPC::FSQRT:
5424 case PPC::FSQRTS:
5425 case PPC::FSQRTS_rec:
5426 case PPC::FSQRT_rec:
5427 case PPC::SLBFEE_rec:
5428 case PPC::SLBIEG:
5429 case PPC::SLBMFEE:
5430 case PPC::SLBMTE:
5431 case PPC::TLBIE:
5432 case PPC::XSABSQP:
5433 case PPC::XSCVDPQP:
5434 case PPC::XSCVQPDP:
5435 case PPC::XSCVQPDPO:
5436 case PPC::XSCVQPSDZ:
5437 case PPC::XSCVQPSQZ:
5438 case PPC::XSCVQPSWZ:
5439 case PPC::XSCVQPUDZ:
5440 case PPC::XSCVQPUQZ:
5441 case PPC::XSCVQPUWZ:
5442 case PPC::XSCVSDQP:
5443 case PPC::XSCVSQQP:
5444 case PPC::XSCVUDQP:
5445 case PPC::XSCVUQQP:
5446 case PPC::XSNABSQP:
5447 case PPC::XSNEGQP:
5448 case PPC::XSSQRTQP:
5449 case PPC::XSSQRTQPO:
5450 case PPC::XSXEXPQP:
5451 case PPC::XSXSIGQP: {
5452 // op: RST
5453 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5454 Value |= (op & 0x1f) << 21;
5455 // op: RB
5456 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5457 Value |= (op & 0x1f) << 11;
5458 break;
5459 }
5460 case PPC::MFFSCRNI: {
5461 // op: RST
5462 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5463 Value |= (op & 0x1f) << 21;
5464 // op: RM
5465 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5466 Value |= (op & 0x3) << 11;
5467 break;
5468 }
5469 case PPC::MFDCR:
5470 case PPC::MFPMR:
5471 case PPC::MFSPR:
5472 case PPC::MFSPR8:
5473 case PPC::MFTB:
5474 case PPC::MTDCR: {
5475 // op: RST
5476 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5477 Value |= (op & 0x1f) << 21;
5478 // op: SPR
5479 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5480 Value |= (op & 0x1f) << 16;
5481 Value |= (op & 0x3e0) << 6;
5482 break;
5483 }
5484 case PPC::MTVRSAVEv: {
5485 // op: RST
5486 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5487 Value |= (op & 0x1f) << 21;
5488 break;
5489 }
5490 case PPC::MTOCRF:
5491 case PPC::MTOCRF8: {
5492 // op: RST
5493 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5494 Value |= (op & 0x1f) << 21;
5495 // op: FXM
5496 op = get_crbitm_encoding(MI, OpNo: 0, Fixups, STI);
5497 Value |= (op & 0xff) << 12;
5498 break;
5499 }
5500 case PPC::STBUX:
5501 case PPC::STBUX8:
5502 case PPC::STDUX:
5503 case PPC::STFDUX:
5504 case PPC::STFSUX:
5505 case PPC::STHUX:
5506 case PPC::STHUX8:
5507 case PPC::STWUX:
5508 case PPC::STWUX8: {
5509 // op: RST
5510 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5511 Value |= (op & 0x1f) << 21;
5512 // op: RA
5513 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5514 Value |= (op & 0x1f) << 16;
5515 // op: RB
5516 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5517 Value |= (op & 0x1f) << 11;
5518 break;
5519 }
5520 case PPC::STBU:
5521 case PPC::STBU8:
5522 case PPC::STFDU:
5523 case PPC::STFSU:
5524 case PPC::STHU:
5525 case PPC::STHU8:
5526 case PPC::STWU:
5527 case PPC::STWU8: {
5528 // op: RST
5529 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5530 Value |= (op & 0x1f) << 21;
5531 // op: RA
5532 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5533 Value |= (op & 0x1f) << 16;
5534 // op: D
5535 op = getDispRIEncoding(MI, OpNo: 2, Fixups, STI);
5536 Value |= (op & 0xffff);
5537 break;
5538 }
5539 case PPC::STDU: {
5540 // op: RST
5541 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5542 Value |= (op & 0x1f) << 21;
5543 // op: RA
5544 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5545 Value |= (op & 0x1f) << 16;
5546 // op: D
5547 op = getDispRIXEncoding(MI, OpNo: 2, Fixups, STI);
5548 Value |= (op & 0x3fff) << 2;
5549 break;
5550 }
5551 case PPC::MTPMR:
5552 case PPC::MTSPR:
5553 case PPC::MTSPR8: {
5554 // op: RST
5555 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5556 Value |= (op & 0x1f) << 21;
5557 // op: SPR
5558 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5559 Value |= (op & 0x1f) << 16;
5560 Value |= (op & 0x3e0) << 6;
5561 break;
5562 }
5563 case PPC::MFCR:
5564 case PPC::MFCR8: {
5565 // op: RT
5566 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5567 Value |= (op & 0x1f) << 21;
5568 break;
5569 }
5570 case PPC::SETB:
5571 case PPC::SETB8: {
5572 // op: RT
5573 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5574 Value |= (op & 0x1f) << 21;
5575 // op: BFA
5576 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5577 Value |= (op & 0x7) << 18;
5578 break;
5579 }
5580 case PPC::MTVSRBMI: {
5581 // op: RT
5582 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5583 Value |= (op & 0x1f) << 21;
5584 // op: D
5585 op = getImmEncoding<PPC::fixup_ppc_half16>(MI, OpNo: 1, Fixups, STI);
5586 Value |= (op & 0x3e) << 15;
5587 Value |= (op & 0xffc0);
5588 Value |= (op & 0x1);
5589 break;
5590 }
5591 case PPC::ADDPCIS: {
5592 // op: RT
5593 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5594 Value |= (op & 0x1f) << 21;
5595 // op: D
5596 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5597 Value |= (op & 0x3e) << 15;
5598 Value |= (op & 0xffc0);
5599 Value |= (op & 0x1);
5600 break;
5601 }
5602 case PPC::DARN: {
5603 // op: RT
5604 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5605 Value |= (op & 0x1f) << 21;
5606 // op: L
5607 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5608 Value |= (op & 0x3) << 16;
5609 break;
5610 }
5611 case PPC::ADDME:
5612 case PPC::ADDME8:
5613 case PPC::ADDME8O:
5614 case PPC::ADDME8O_rec:
5615 case PPC::ADDME8_rec:
5616 case PPC::ADDMEO:
5617 case PPC::ADDMEO_rec:
5618 case PPC::ADDME_rec:
5619 case PPC::ADDZE:
5620 case PPC::ADDZE8:
5621 case PPC::ADDZE8O:
5622 case PPC::ADDZE8O_rec:
5623 case PPC::ADDZE8_rec:
5624 case PPC::ADDZEO:
5625 case PPC::ADDZEO_rec:
5626 case PPC::ADDZE_rec:
5627 case PPC::EFDABS:
5628 case PPC::EFDNABS:
5629 case PPC::EFDNEG:
5630 case PPC::EFSABS:
5631 case PPC::EFSNABS:
5632 case PPC::EFSNEG:
5633 case PPC::EVABS:
5634 case PPC::EVADDSMIAAW:
5635 case PPC::EVADDSSIAAW:
5636 case PPC::EVADDUMIAAW:
5637 case PPC::EVADDUSIAAW:
5638 case PPC::EVCNTLSW:
5639 case PPC::EVCNTLZW:
5640 case PPC::EVEXTSB:
5641 case PPC::EVEXTSH:
5642 case PPC::EVFSABS:
5643 case PPC::EVFSNABS:
5644 case PPC::EVFSNEG:
5645 case PPC::EVMRA:
5646 case PPC::EVNEG:
5647 case PPC::EVRNDW:
5648 case PPC::EVSPLATFI:
5649 case PPC::EVSPLATI:
5650 case PPC::EVSUBFSMIAAW:
5651 case PPC::EVSUBFSSIAAW:
5652 case PPC::EVSUBFUMIAAW:
5653 case PPC::EVSUBFUSIAAW:
5654 case PPC::NEG:
5655 case PPC::NEG8:
5656 case PPC::NEG8O:
5657 case PPC::NEG8O_rec:
5658 case PPC::NEG8_rec:
5659 case PPC::NEGO:
5660 case PPC::NEGO_rec:
5661 case PPC::NEG_rec:
5662 case PPC::SUBFME:
5663 case PPC::SUBFME8:
5664 case PPC::SUBFME8O:
5665 case PPC::SUBFME8O_rec:
5666 case PPC::SUBFME8_rec:
5667 case PPC::SUBFMEO:
5668 case PPC::SUBFMEO_rec:
5669 case PPC::SUBFME_rec:
5670 case PPC::SUBFZE:
5671 case PPC::SUBFZE8:
5672 case PPC::SUBFZE8O:
5673 case PPC::SUBFZE8O_rec:
5674 case PPC::SUBFZE8_rec:
5675 case PPC::SUBFZEO:
5676 case PPC::SUBFZEO_rec:
5677 case PPC::SUBFZE_rec: {
5678 // op: RT
5679 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5680 Value |= (op & 0x1f) << 21;
5681 // op: RA
5682 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5683 Value |= (op & 0x1f) << 16;
5684 break;
5685 }
5686 case PPC::ADD4:
5687 case PPC::ADD4O:
5688 case PPC::ADD4O_rec:
5689 case PPC::ADD4_rec:
5690 case PPC::ADD8:
5691 case PPC::ADD8O:
5692 case PPC::ADD8O_rec:
5693 case PPC::ADD8_rec:
5694 case PPC::ADDC:
5695 case PPC::ADDC8:
5696 case PPC::ADDC8O:
5697 case PPC::ADDC8O_rec:
5698 case PPC::ADDC8_rec:
5699 case PPC::ADDCO:
5700 case PPC::ADDCO_rec:
5701 case PPC::ADDC_rec:
5702 case PPC::ADDE:
5703 case PPC::ADDE8:
5704 case PPC::ADDE8O:
5705 case PPC::ADDE8O_rec:
5706 case PPC::ADDE8_rec:
5707 case PPC::ADDEO:
5708 case PPC::ADDEO_rec:
5709 case PPC::ADDE_rec:
5710 case PPC::ADDG6S:
5711 case PPC::ADDG6S8:
5712 case PPC::BRINC:
5713 case PPC::DIVD:
5714 case PPC::DIVDE:
5715 case PPC::DIVDEO:
5716 case PPC::DIVDEO_rec:
5717 case PPC::DIVDEU:
5718 case PPC::DIVDEUO:
5719 case PPC::DIVDEUO_rec:
5720 case PPC::DIVDEU_rec:
5721 case PPC::DIVDE_rec:
5722 case PPC::DIVDO:
5723 case PPC::DIVDO_rec:
5724 case PPC::DIVDU:
5725 case PPC::DIVDUO:
5726 case PPC::DIVDUO_rec:
5727 case PPC::DIVDU_rec:
5728 case PPC::DIVD_rec:
5729 case PPC::DIVW:
5730 case PPC::DIVWE:
5731 case PPC::DIVWEO:
5732 case PPC::DIVWEO_rec:
5733 case PPC::DIVWEU:
5734 case PPC::DIVWEUO:
5735 case PPC::DIVWEUO_rec:
5736 case PPC::DIVWEU_rec:
5737 case PPC::DIVWE_rec:
5738 case PPC::DIVWO:
5739 case PPC::DIVWO_rec:
5740 case PPC::DIVWU:
5741 case PPC::DIVWUO:
5742 case PPC::DIVWUO_rec:
5743 case PPC::DIVWU_rec:
5744 case PPC::DIVW_rec:
5745 case PPC::EFDADD:
5746 case PPC::EFDDIV:
5747 case PPC::EFDMUL:
5748 case PPC::EFDSUB:
5749 case PPC::EFSADD:
5750 case PPC::EFSDIV:
5751 case PPC::EFSMUL:
5752 case PPC::EFSSUB:
5753 case PPC::EVADDIW:
5754 case PPC::EVADDW:
5755 case PPC::EVAND:
5756 case PPC::EVANDC:
5757 case PPC::EVDIVWS:
5758 case PPC::EVDIVWU:
5759 case PPC::EVEQV:
5760 case PPC::EVFSADD:
5761 case PPC::EVFSDIV:
5762 case PPC::EVFSMUL:
5763 case PPC::EVFSSUB:
5764 case PPC::EVLDDX:
5765 case PPC::EVLDHX:
5766 case PPC::EVLDWX:
5767 case PPC::EVLHHESPLATX:
5768 case PPC::EVLHHOSSPLATX:
5769 case PPC::EVLHHOUSPLATX:
5770 case PPC::EVLWHEX:
5771 case PPC::EVLWHOSX:
5772 case PPC::EVLWHOUX:
5773 case PPC::EVLWHSPLATX:
5774 case PPC::EVLWWSPLATX:
5775 case PPC::EVMERGEHI:
5776 case PPC::EVMERGEHILO:
5777 case PPC::EVMERGELO:
5778 case PPC::EVMERGELOHI:
5779 case PPC::EVMHEGSMFAA:
5780 case PPC::EVMHEGSMFAN:
5781 case PPC::EVMHEGSMIAA:
5782 case PPC::EVMHEGSMIAN:
5783 case PPC::EVMHEGUMIAA:
5784 case PPC::EVMHEGUMIAN:
5785 case PPC::EVMHESMF:
5786 case PPC::EVMHESMFA:
5787 case PPC::EVMHESMFAAW:
5788 case PPC::EVMHESMFANW:
5789 case PPC::EVMHESMI:
5790 case PPC::EVMHESMIA:
5791 case PPC::EVMHESMIAAW:
5792 case PPC::EVMHESMIANW:
5793 case PPC::EVMHESSF:
5794 case PPC::EVMHESSFA:
5795 case PPC::EVMHESSFAAW:
5796 case PPC::EVMHESSFANW:
5797 case PPC::EVMHESSIAAW:
5798 case PPC::EVMHESSIANW:
5799 case PPC::EVMHEUMI:
5800 case PPC::EVMHEUMIA:
5801 case PPC::EVMHEUMIAAW:
5802 case PPC::EVMHEUMIANW:
5803 case PPC::EVMHEUSIAAW:
5804 case PPC::EVMHEUSIANW:
5805 case PPC::EVMHOGSMFAA:
5806 case PPC::EVMHOGSMFAN:
5807 case PPC::EVMHOGSMIAA:
5808 case PPC::EVMHOGSMIAN:
5809 case PPC::EVMHOGUMIAA:
5810 case PPC::EVMHOGUMIAN:
5811 case PPC::EVMHOSMF:
5812 case PPC::EVMHOSMFA:
5813 case PPC::EVMHOSMFAAW:
5814 case PPC::EVMHOSMFANW:
5815 case PPC::EVMHOSMI:
5816 case PPC::EVMHOSMIA:
5817 case PPC::EVMHOSMIAAW:
5818 case PPC::EVMHOSMIANW:
5819 case PPC::EVMHOSSF:
5820 case PPC::EVMHOSSFA:
5821 case PPC::EVMHOSSFAAW:
5822 case PPC::EVMHOSSFANW:
5823 case PPC::EVMHOSSIAAW:
5824 case PPC::EVMHOSSIANW:
5825 case PPC::EVMHOUMI:
5826 case PPC::EVMHOUMIA:
5827 case PPC::EVMHOUMIAAW:
5828 case PPC::EVMHOUMIANW:
5829 case PPC::EVMHOUSIAAW:
5830 case PPC::EVMHOUSIANW:
5831 case PPC::EVMWHSMF:
5832 case PPC::EVMWHSMFA:
5833 case PPC::EVMWHSMI:
5834 case PPC::EVMWHSMIA:
5835 case PPC::EVMWHSSF:
5836 case PPC::EVMWHSSFA:
5837 case PPC::EVMWHUMI:
5838 case PPC::EVMWHUMIA:
5839 case PPC::EVMWLSMIAAW:
5840 case PPC::EVMWLSMIANW:
5841 case PPC::EVMWLSSIAAW:
5842 case PPC::EVMWLSSIANW:
5843 case PPC::EVMWLUMI:
5844 case PPC::EVMWLUMIA:
5845 case PPC::EVMWLUMIAAW:
5846 case PPC::EVMWLUMIANW:
5847 case PPC::EVMWLUSIAAW:
5848 case PPC::EVMWLUSIANW:
5849 case PPC::EVMWSMF:
5850 case PPC::EVMWSMFA:
5851 case PPC::EVMWSMFAA:
5852 case PPC::EVMWSMFAN:
5853 case PPC::EVMWSMI:
5854 case PPC::EVMWSMIA:
5855 case PPC::EVMWSMIAA:
5856 case PPC::EVMWSMIAN:
5857 case PPC::EVMWSSF:
5858 case PPC::EVMWSSFA:
5859 case PPC::EVMWSSFAA:
5860 case PPC::EVMWSSFAN:
5861 case PPC::EVMWUMI:
5862 case PPC::EVMWUMIA:
5863 case PPC::EVMWUMIAA:
5864 case PPC::EVMWUMIAN:
5865 case PPC::EVNAND:
5866 case PPC::EVNOR:
5867 case PPC::EVOR:
5868 case PPC::EVORC:
5869 case PPC::EVRLW:
5870 case PPC::EVRLWI:
5871 case PPC::EVSLW:
5872 case PPC::EVSLWI:
5873 case PPC::EVSRWIS:
5874 case PPC::EVSRWIU:
5875 case PPC::EVSRWS:
5876 case PPC::EVSRWU:
5877 case PPC::EVSTDDX:
5878 case PPC::EVSTDHX:
5879 case PPC::EVSTDWX:
5880 case PPC::EVSTWHEX:
5881 case PPC::EVSTWHOX:
5882 case PPC::EVSTWWEX:
5883 case PPC::EVSTWWOX:
5884 case PPC::EVSUBFW:
5885 case PPC::EVSUBIFW:
5886 case PPC::EVXOR:
5887 case PPC::MULHD:
5888 case PPC::MULHDU:
5889 case PPC::MULHDU_rec:
5890 case PPC::MULHD_rec:
5891 case PPC::MULHW:
5892 case PPC::MULHWU:
5893 case PPC::MULHWU_rec:
5894 case PPC::MULHW_rec:
5895 case PPC::MULLD:
5896 case PPC::MULLDO:
5897 case PPC::MULLDO_rec:
5898 case PPC::MULLD_rec:
5899 case PPC::MULLW:
5900 case PPC::MULLWO:
5901 case PPC::MULLWO_rec:
5902 case PPC::MULLW_rec:
5903 case PPC::SUBF:
5904 case PPC::SUBF8:
5905 case PPC::SUBF8O:
5906 case PPC::SUBF8O_rec:
5907 case PPC::SUBF8_rec:
5908 case PPC::SUBFC:
5909 case PPC::SUBFC8:
5910 case PPC::SUBFC8O:
5911 case PPC::SUBFC8O_rec:
5912 case PPC::SUBFC8_rec:
5913 case PPC::SUBFCO:
5914 case PPC::SUBFCO_rec:
5915 case PPC::SUBFC_rec:
5916 case PPC::SUBFE:
5917 case PPC::SUBFE8:
5918 case PPC::SUBFE8O:
5919 case PPC::SUBFE8O_rec:
5920 case PPC::SUBFE8_rec:
5921 case PPC::SUBFEO:
5922 case PPC::SUBFEO_rec:
5923 case PPC::SUBFE_rec:
5924 case PPC::SUBFO:
5925 case PPC::SUBFO_rec:
5926 case PPC::SUBF_rec: {
5927 // op: RT
5928 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5929 Value |= (op & 0x1f) << 21;
5930 // op: RA
5931 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5932 Value |= (op & 0x1f) << 16;
5933 // op: RB
5934 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5935 Value |= (op & 0x1f) << 11;
5936 break;
5937 }
5938 case PPC::ISEL:
5939 case PPC::ISEL8: {
5940 // op: RT
5941 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5942 Value |= (op & 0x1f) << 21;
5943 // op: RA
5944 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5945 Value |= (op & 0x1f) << 16;
5946 // op: RB
5947 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5948 Value |= (op & 0x1f) << 11;
5949 // op: COND
5950 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5951 Value |= (op & 0x1f) << 6;
5952 break;
5953 }
5954 case PPC::ADDEX:
5955 case PPC::ADDEX8: {
5956 // op: RT
5957 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5958 Value |= (op & 0x1f) << 21;
5959 // op: RA
5960 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5961 Value |= (op & 0x1f) << 16;
5962 // op: RB
5963 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5964 Value |= (op & 0x1f) << 11;
5965 // op: CY
5966 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5967 Value |= (op & 0x3) << 9;
5968 break;
5969 }
5970 case PPC::SUBFUS:
5971 case PPC::SUBFUS_rec: {
5972 // op: RT
5973 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5974 Value |= (op & 0x1f) << 21;
5975 // op: RA
5976 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5977 Value |= (op & 0x1f) << 16;
5978 // op: RB
5979 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5980 Value |= (op & 0x1f) << 11;
5981 // op: L
5982 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5983 Value |= (op & 0x1) << 10;
5984 break;
5985 }
5986 case PPC::MADDHD:
5987 case PPC::MADDHDU:
5988 case PPC::MADDLD:
5989 case PPC::MADDLD8:
5990 case PPC::VADDECUQ:
5991 case PPC::VADDEUQM:
5992 case PPC::VEXTDDVLX:
5993 case PPC::VEXTDDVRX:
5994 case PPC::VEXTDUBVLX:
5995 case PPC::VEXTDUBVRX:
5996 case PPC::VEXTDUHVLX:
5997 case PPC::VEXTDUHVRX:
5998 case PPC::VEXTDUWVLX:
5999 case PPC::VEXTDUWVRX:
6000 case PPC::VMHADDSHS:
6001 case PPC::VMHRADDSHS:
6002 case PPC::VMLADDUHM:
6003 case PPC::VMSUMCUD:
6004 case PPC::VMSUMMBM:
6005 case PPC::VMSUMSHM:
6006 case PPC::VMSUMSHS:
6007 case PPC::VMSUMUBM:
6008 case PPC::VMSUMUDM:
6009 case PPC::VMSUMUHM:
6010 case PPC::VMSUMUHS:
6011 case PPC::VPERM:
6012 case PPC::VPERMR:
6013 case PPC::VSEL:
6014 case PPC::VSUBECUQ:
6015 case PPC::VSUBEUQM: {
6016 // op: RT
6017 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6018 Value |= (op & 0x1f) << 21;
6019 // op: RA
6020 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6021 Value |= (op & 0x1f) << 16;
6022 // op: RB
6023 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6024 Value |= (op & 0x1f) << 11;
6025 // op: RC
6026 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6027 Value |= (op & 0x1f) << 6;
6028 break;
6029 }
6030 case PPC::VSLDOI: {
6031 // op: RT
6032 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6033 Value |= (op & 0x1f) << 21;
6034 // op: RA
6035 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6036 Value |= (op & 0x1f) << 16;
6037 // op: RB
6038 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6039 Value |= (op & 0x1f) << 11;
6040 // op: SH
6041 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6042 Value |= (op & 0xf) << 6;
6043 break;
6044 }
6045 case PPC::ADD4TLS:
6046 case PPC::ADD8TLS:
6047 case PPC::ADD8TLS_: {
6048 // op: RT
6049 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6050 Value |= (op & 0x1f) << 21;
6051 // op: RA
6052 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6053 Value |= (op & 0x1f) << 16;
6054 // op: RB
6055 op = getTLSRegEncoding(MI, OpNo: 2, Fixups, STI);
6056 Value |= (op & 0x1f) << 11;
6057 break;
6058 }
6059 case PPC::VMADDFP:
6060 case PPC::VNMSUBFP: {
6061 // op: RT
6062 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6063 Value |= (op & 0x1f) << 21;
6064 // op: RA
6065 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6066 Value |= (op & 0x1f) << 16;
6067 // op: RC
6068 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6069 Value |= (op & 0x1f) << 6;
6070 // op: RB
6071 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6072 Value |= (op & 0x1f) << 11;
6073 break;
6074 }
6075 case PPC::VPERMXOR: {
6076 // op: RT
6077 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6078 Value |= (op & 0x1f) << 21;
6079 // op: RA
6080 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6081 Value |= (op & 0x1f) << 16;
6082 // op: RC
6083 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6084 Value |= (op & 0x1f) << 6;
6085 // op: RB
6086 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6087 Value |= (op & 0x1f) << 11;
6088 break;
6089 }
6090 case PPC::PADDIS:
6091 case PPC::PADDIS8: {
6092 // op: RT
6093 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6094 Value |= (op & 0x1f) << 21;
6095 // op: RA
6096 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6097 Value |= (op & 0x1f) << 16;
6098 // op: SI
6099 op = getImmEncoding<PPC::fixup_ppc_imm32>(MI, OpNo: 2, Fixups, STI);
6100 Value |= (op & 0xffff0000) << 16;
6101 Value |= (op & 0xffff);
6102 break;
6103 }
6104 case PPC::PADDI:
6105 case PPC::PADDI8: {
6106 // op: RT
6107 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6108 Value |= (op & 0x1f) << 21;
6109 // op: RA
6110 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6111 Value |= (op & 0x1f) << 16;
6112 // op: SI
6113 op = getImmEncoding<PPC::fixup_ppc_imm34>(MI, OpNo: 2, Fixups, STI);
6114 Value |= (op & 0x3ffff0000) << 16;
6115 Value |= (op & 0xffff);
6116 break;
6117 }
6118 case PPC::PADDIS8pc:
6119 case PPC::PADDISpc: {
6120 // op: RT
6121 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6122 Value |= (op & 0x1f) << 21;
6123 // op: RA
6124 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6125 Value |= (op & 0x1f) << 16;
6126 // op: SI
6127 op = getImmEncoding<PPC::fixup_ppc_pcrel32>(MI, OpNo: 2, Fixups, STI);
6128 Value |= (op & 0xffff0000) << 16;
6129 Value |= (op & 0xffff);
6130 break;
6131 }
6132 case PPC::PADDI8pc:
6133 case PPC::PADDIpc: {
6134 // op: RT
6135 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6136 Value |= (op & 0x1f) << 21;
6137 // op: RA
6138 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6139 Value |= (op & 0x1f) << 16;
6140 // op: SI
6141 op = getImmEncoding<PPC::fixup_ppc_pcrel34>(MI, OpNo: 2, Fixups, STI);
6142 Value |= (op & 0x3ffff0000) << 16;
6143 Value |= (op & 0xffff);
6144 break;
6145 }
6146 case PPC::EVLHHESPLAT:
6147 case PPC::EVLHHOSSPLAT:
6148 case PPC::EVLHHOUSPLAT: {
6149 // op: RT
6150 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6151 Value |= (op & 0x1f) << 21;
6152 // op: RA
6153 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6154 Value |= (op & 0x1f) << 16;
6155 // op: D
6156 op = getDispSPE2Encoding(MI, OpNo: 1, Fixups, STI);
6157 Value |= (op & 0x1f) << 11;
6158 break;
6159 }
6160 case PPC::EVLWHE:
6161 case PPC::EVLWHOS:
6162 case PPC::EVLWHOU:
6163 case PPC::EVLWHSPLAT:
6164 case PPC::EVLWWSPLAT:
6165 case PPC::EVSTWHE:
6166 case PPC::EVSTWHO:
6167 case PPC::EVSTWWE:
6168 case PPC::EVSTWWO: {
6169 // op: RT
6170 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6171 Value |= (op & 0x1f) << 21;
6172 // op: RA
6173 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6174 Value |= (op & 0x1f) << 16;
6175 // op: D
6176 op = getDispSPE4Encoding(MI, OpNo: 1, Fixups, STI);
6177 Value |= (op & 0x1f) << 11;
6178 break;
6179 }
6180 case PPC::EVLDD:
6181 case PPC::EVLDH:
6182 case PPC::EVLDW:
6183 case PPC::EVSTDD:
6184 case PPC::EVSTDH:
6185 case PPC::EVSTDW: {
6186 // op: RT
6187 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6188 Value |= (op & 0x1f) << 21;
6189 // op: RA
6190 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6191 Value |= (op & 0x1f) << 16;
6192 // op: D
6193 op = getDispSPE8Encoding(MI, OpNo: 1, Fixups, STI);
6194 Value |= (op & 0x1f) << 11;
6195 break;
6196 }
6197 case PPC::EFDCFS:
6198 case PPC::EFDCFSF:
6199 case PPC::EFDCFSI:
6200 case PPC::EFDCFSID:
6201 case PPC::EFDCFUF:
6202 case PPC::EFDCFUI:
6203 case PPC::EFDCFUID:
6204 case PPC::EFDCTSF:
6205 case PPC::EFDCTSI:
6206 case PPC::EFDCTSIDZ:
6207 case PPC::EFDCTSIZ:
6208 case PPC::EFDCTUF:
6209 case PPC::EFDCTUI:
6210 case PPC::EFDCTUIDZ:
6211 case PPC::EFDCTUIZ:
6212 case PPC::EFSCFD:
6213 case PPC::EFSCFSF:
6214 case PPC::EFSCFSI:
6215 case PPC::EFSCFUF:
6216 case PPC::EFSCFUI:
6217 case PPC::EFSCTSF:
6218 case PPC::EFSCTSI:
6219 case PPC::EFSCTSIZ:
6220 case PPC::EFSCTUF:
6221 case PPC::EFSCTUI:
6222 case PPC::EFSCTUIZ:
6223 case PPC::EVFSCFSF:
6224 case PPC::EVFSCFSI:
6225 case PPC::EVFSCFUF:
6226 case PPC::EVFSCFUI:
6227 case PPC::EVFSCTSF:
6228 case PPC::EVFSCTSI:
6229 case PPC::EVFSCTSIZ:
6230 case PPC::EVFSCTUF:
6231 case PPC::EVFSCTUI:
6232 case PPC::EVFSCTUIZ:
6233 case PPC::SLBMFEV: {
6234 // op: RT
6235 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6236 Value |= (op & 0x1f) << 21;
6237 // op: RB
6238 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6239 Value |= (op & 0x1f) << 11;
6240 break;
6241 }
6242 case PPC::PLI:
6243 case PPC::PLI8: {
6244 // op: RT
6245 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6246 Value |= (op & 0x1f) << 21;
6247 // op: SI
6248 op = getImmEncoding<PPC::fixup_ppc_imm34>(MI, OpNo: 1, Fixups, STI);
6249 Value |= (op & 0x3ffff0000) << 16;
6250 Value |= (op & 0xffff);
6251 break;
6252 }
6253 case PPC::PLA:
6254 case PPC::PLA8: {
6255 // op: RT
6256 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6257 Value |= (op & 0x1f) << 21;
6258 // op: SI
6259 op = getImmEncoding<PPC::fixup_ppc_imm34>(MI, OpNo: 2, Fixups, STI);
6260 Value |= (op & 0x3ffff0000) << 16;
6261 Value |= (op & 0xffff);
6262 break;
6263 }
6264 case PPC::PLA8pc:
6265 case PPC::PLApc: {
6266 // op: RT
6267 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6268 Value |= (op & 0x1f) << 21;
6269 // op: SI
6270 op = getImmEncoding<PPC::fixup_ppc_pcrel34>(MI, OpNo: 1, Fixups, STI);
6271 Value |= (op & 0x3ffff0000) << 16;
6272 Value |= (op & 0xffff);
6273 break;
6274 }
6275 case PPC::XSXEXPDP:
6276 case PPC::XSXSIGDP: {
6277 // op: RT
6278 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6279 Value |= (op & 0x1f) << 21;
6280 // op: XB
6281 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6282 Value |= (op & 0x1f) << 11;
6283 Value |= (op & 0x20) >> 4;
6284 break;
6285 }
6286 case PPC::MFBHRBE: {
6287 // op: RT
6288 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6289 Value |= (op & 0x1f) << 21;
6290 // op: imm
6291 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6292 Value |= (op & 0x3ff) << 11;
6293 break;
6294 }
6295 case PPC::LQ: {
6296 // op: RTp
6297 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6298 Value |= (op & 0x1f) << 21;
6299 // op: RA
6300 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6301 Value |= (op & 0x1f) << 16;
6302 // op: DQ
6303 op = getDispRIX16Encoding(MI, OpNo: 1, Fixups, STI);
6304 Value |= (op & 0xfff) << 4;
6305 break;
6306 }
6307 case PPC::RFEBB: {
6308 // op: S
6309 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6310 Value |= (op & 0x1) << 11;
6311 break;
6312 }
6313 case PPC::DENBCD:
6314 case PPC::DENBCDQ:
6315 case PPC::DENBCDQ_rec:
6316 case PPC::DENBCD_rec: {
6317 // op: S
6318 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6319 Value |= (op & 0x1) << 20;
6320 // op: FRT
6321 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6322 Value |= (op & 0x1f) << 21;
6323 // op: FRB
6324 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6325 Value |= (op & 0x1f) << 11;
6326 break;
6327 }
6328 case PPC::DDEDPD:
6329 case PPC::DDEDPDQ:
6330 case PPC::DDEDPDQ_rec:
6331 case PPC::DDEDPD_rec: {
6332 // op: SP
6333 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6334 Value |= (op & 0x3) << 19;
6335 // op: FRT
6336 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6337 Value |= (op & 0x1f) << 21;
6338 // op: FRB
6339 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6340 Value |= (op & 0x1f) << 11;
6341 break;
6342 }
6343 case PPC::DSS: {
6344 // op: STRM
6345 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6346 Value |= (op & 0x3) << 21;
6347 break;
6348 }
6349 case PPC::DST:
6350 case PPC::DST64:
6351 case PPC::DSTST:
6352 case PPC::DSTST64:
6353 case PPC::DSTSTT:
6354 case PPC::DSTSTT64:
6355 case PPC::DSTT:
6356 case PPC::DSTT64: {
6357 // op: STRM
6358 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6359 Value |= (op & 0x3) << 21;
6360 // op: RA
6361 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6362 Value |= (op & 0x1f) << 16;
6363 // op: RB
6364 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6365 Value |= (op & 0x1f) << 11;
6366 break;
6367 }
6368 case PPC::DCBF:
6369 case PPC::DCBT:
6370 case PPC::DCBTST: {
6371 // op: TH
6372 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6373 Value |= (op & 0x1f) << 21;
6374 // op: RA
6375 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6376 Value |= (op & 0x1f) << 16;
6377 // op: RB
6378 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6379 Value |= (op & 0x1f) << 11;
6380 break;
6381 }
6382 case PPC::DCBTEP:
6383 case PPC::DCBTSTEP: {
6384 // op: TH
6385 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6386 Value |= (op & 0x1f) << 21;
6387 // op: RA
6388 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6389 Value |= (op & 0x1f) << 16;
6390 // op: RB
6391 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6392 Value |= (op & 0x1f) << 11;
6393 break;
6394 }
6395 case PPC::MTVSCR: {
6396 // op: VB
6397 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6398 Value |= (op & 0x1f) << 11;
6399 break;
6400 }
6401 case PPC::MFVSCR:
6402 case PPC::V_SETALLONES:
6403 case PPC::V_SETALLONESB:
6404 case PPC::V_SETALLONESH: {
6405 // op: VD
6406 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6407 Value |= (op & 0x1f) << 21;
6408 break;
6409 }
6410 case PPC::VSPLTISB:
6411 case PPC::VSPLTISH:
6412 case PPC::VSPLTISW: {
6413 // op: VD
6414 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6415 Value |= (op & 0x1f) << 21;
6416 // op: IMM
6417 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6418 Value |= (op & 0x1f) << 16;
6419 break;
6420 }
6421 case PPC::VMUL10CUQ:
6422 case PPC::VMUL10UQ:
6423 case PPC::VSBOX: {
6424 // op: VD
6425 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6426 Value |= (op & 0x1f) << 21;
6427 // op: VA
6428 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6429 Value |= (op & 0x1f) << 16;
6430 break;
6431 }
6432 case PPC::VSHASIGMAD:
6433 case PPC::VSHASIGMAW: {
6434 // op: VD
6435 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6436 Value |= (op & 0x1f) << 21;
6437 // op: VA
6438 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6439 Value |= (op & 0x1f) << 16;
6440 // op: ST
6441 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6442 Value |= (op & 0x1) << 15;
6443 // op: SIX
6444 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6445 Value |= (op & 0xf) << 11;
6446 break;
6447 }
6448 case PPC::BCDCPSGN_rec:
6449 case PPC::BCDUS_rec:
6450 case PPC::BCDUTRUNC_rec:
6451 case PPC::VABSDUB:
6452 case PPC::VABSDUH:
6453 case PPC::VABSDUW:
6454 case PPC::VADDCUQ:
6455 case PPC::VADDCUW:
6456 case PPC::VADDFP:
6457 case PPC::VADDSBS:
6458 case PPC::VADDSHS:
6459 case PPC::VADDSWS:
6460 case PPC::VADDUBM:
6461 case PPC::VADDUBS:
6462 case PPC::VADDUDM:
6463 case PPC::VADDUHM:
6464 case PPC::VADDUHS:
6465 case PPC::VADDUQM:
6466 case PPC::VADDUWM:
6467 case PPC::VADDUWS:
6468 case PPC::VAND:
6469 case PPC::VANDC:
6470 case PPC::VAVGSB:
6471 case PPC::VAVGSH:
6472 case PPC::VAVGSW:
6473 case PPC::VAVGUB:
6474 case PPC::VAVGUH:
6475 case PPC::VAVGUW:
6476 case PPC::VBPERMD:
6477 case PPC::VBPERMQ:
6478 case PPC::VCFSX:
6479 case PPC::VCFUGED:
6480 case PPC::VCFUX:
6481 case PPC::VCIPHER:
6482 case PPC::VCIPHERLAST:
6483 case PPC::VCLRLB:
6484 case PPC::VCLRRB:
6485 case PPC::VCLZDM:
6486 case PPC::VCMPBFP:
6487 case PPC::VCMPBFP_rec:
6488 case PPC::VCMPEQFP:
6489 case PPC::VCMPEQFP_rec:
6490 case PPC::VCMPEQUB:
6491 case PPC::VCMPEQUB_rec:
6492 case PPC::VCMPEQUD:
6493 case PPC::VCMPEQUD_rec:
6494 case PPC::VCMPEQUH:
6495 case PPC::VCMPEQUH_rec:
6496 case PPC::VCMPEQUQ:
6497 case PPC::VCMPEQUQ_rec:
6498 case PPC::VCMPEQUW:
6499 case PPC::VCMPEQUW_rec:
6500 case PPC::VCMPGEFP:
6501 case PPC::VCMPGEFP_rec:
6502 case PPC::VCMPGTFP:
6503 case PPC::VCMPGTFP_rec:
6504 case PPC::VCMPGTSB:
6505 case PPC::VCMPGTSB_rec:
6506 case PPC::VCMPGTSD:
6507 case PPC::VCMPGTSD_rec:
6508 case PPC::VCMPGTSH:
6509 case PPC::VCMPGTSH_rec:
6510 case PPC::VCMPGTSQ:
6511 case PPC::VCMPGTSQ_rec:
6512 case PPC::VCMPGTSW:
6513 case PPC::VCMPGTSW_rec:
6514 case PPC::VCMPGTUB:
6515 case PPC::VCMPGTUB_rec:
6516 case PPC::VCMPGTUD:
6517 case PPC::VCMPGTUD_rec:
6518 case PPC::VCMPGTUH:
6519 case PPC::VCMPGTUH_rec:
6520 case PPC::VCMPGTUQ:
6521 case PPC::VCMPGTUQ_rec:
6522 case PPC::VCMPGTUW:
6523 case PPC::VCMPGTUW_rec:
6524 case PPC::VCMPNEB:
6525 case PPC::VCMPNEB_rec:
6526 case PPC::VCMPNEH:
6527 case PPC::VCMPNEH_rec:
6528 case PPC::VCMPNEW:
6529 case PPC::VCMPNEW_rec:
6530 case PPC::VCMPNEZB:
6531 case PPC::VCMPNEZB_rec:
6532 case PPC::VCMPNEZH:
6533 case PPC::VCMPNEZH_rec:
6534 case PPC::VCMPNEZW:
6535 case PPC::VCMPNEZW_rec:
6536 case PPC::VCTSXS:
6537 case PPC::VCTUXS:
6538 case PPC::VCTZDM:
6539 case PPC::VDIVESD:
6540 case PPC::VDIVESQ:
6541 case PPC::VDIVESW:
6542 case PPC::VDIVEUD:
6543 case PPC::VDIVEUQ:
6544 case PPC::VDIVEUW:
6545 case PPC::VDIVSD:
6546 case PPC::VDIVSQ:
6547 case PPC::VDIVSW:
6548 case PPC::VDIVUD:
6549 case PPC::VDIVUQ:
6550 case PPC::VDIVUW:
6551 case PPC::VEQV:
6552 case PPC::VEXTRACTD:
6553 case PPC::VEXTRACTUB:
6554 case PPC::VEXTRACTUH:
6555 case PPC::VEXTRACTUW:
6556 case PPC::VEXTUBLX:
6557 case PPC::VEXTUBRX:
6558 case PPC::VEXTUHLX:
6559 case PPC::VEXTUHRX:
6560 case PPC::VEXTUWLX:
6561 case PPC::VEXTUWRX:
6562 case PPC::VINSERTD:
6563 case PPC::VINSERTW:
6564 case PPC::VMAXFP:
6565 case PPC::VMAXSB:
6566 case PPC::VMAXSD:
6567 case PPC::VMAXSH:
6568 case PPC::VMAXSW:
6569 case PPC::VMAXUB:
6570 case PPC::VMAXUD:
6571 case PPC::VMAXUH:
6572 case PPC::VMAXUW:
6573 case PPC::VMINFP:
6574 case PPC::VMINSB:
6575 case PPC::VMINSD:
6576 case PPC::VMINSH:
6577 case PPC::VMINSW:
6578 case PPC::VMINUB:
6579 case PPC::VMINUD:
6580 case PPC::VMINUH:
6581 case PPC::VMINUW:
6582 case PPC::VMODSD:
6583 case PPC::VMODSQ:
6584 case PPC::VMODSW:
6585 case PPC::VMODUD:
6586 case PPC::VMODUQ:
6587 case PPC::VMODUW:
6588 case PPC::VMRGEW:
6589 case PPC::VMRGHB:
6590 case PPC::VMRGHH:
6591 case PPC::VMRGHW:
6592 case PPC::VMRGLB:
6593 case PPC::VMRGLH:
6594 case PPC::VMRGLW:
6595 case PPC::VMRGOW:
6596 case PPC::VMUL10ECUQ:
6597 case PPC::VMUL10EUQ:
6598 case PPC::VMULESB:
6599 case PPC::VMULESD:
6600 case PPC::VMULESH:
6601 case PPC::VMULESW:
6602 case PPC::VMULEUB:
6603 case PPC::VMULEUD:
6604 case PPC::VMULEUH:
6605 case PPC::VMULEUW:
6606 case PPC::VMULHSD:
6607 case PPC::VMULHSW:
6608 case PPC::VMULHUD:
6609 case PPC::VMULHUW:
6610 case PPC::VMULLD:
6611 case PPC::VMULOSB:
6612 case PPC::VMULOSD:
6613 case PPC::VMULOSH:
6614 case PPC::VMULOSW:
6615 case PPC::VMULOUB:
6616 case PPC::VMULOUD:
6617 case PPC::VMULOUH:
6618 case PPC::VMULOUW:
6619 case PPC::VMULUWM:
6620 case PPC::VNAND:
6621 case PPC::VNCIPHER:
6622 case PPC::VNCIPHERLAST:
6623 case PPC::VNOR:
6624 case PPC::VOR:
6625 case PPC::VORC:
6626 case PPC::VPDEPD:
6627 case PPC::VPEXTD:
6628 case PPC::VPKPX:
6629 case PPC::VPKSDSS:
6630 case PPC::VPKSDUS:
6631 case PPC::VPKSHSS:
6632 case PPC::VPKSHUS:
6633 case PPC::VPKSWSS:
6634 case PPC::VPKSWUS:
6635 case PPC::VPKUDUM:
6636 case PPC::VPKUDUS:
6637 case PPC::VPKUHUM:
6638 case PPC::VPKUHUS:
6639 case PPC::VPKUWUM:
6640 case PPC::VPKUWUS:
6641 case PPC::VPMSUMB:
6642 case PPC::VPMSUMD:
6643 case PPC::VPMSUMH:
6644 case PPC::VPMSUMW:
6645 case PPC::VRLB:
6646 case PPC::VRLD:
6647 case PPC::VRLDMI:
6648 case PPC::VRLDNM:
6649 case PPC::VRLH:
6650 case PPC::VRLQ:
6651 case PPC::VRLQMI:
6652 case PPC::VRLQNM:
6653 case PPC::VRLW:
6654 case PPC::VRLWMI:
6655 case PPC::VRLWNM:
6656 case PPC::VSL:
6657 case PPC::VSLB:
6658 case PPC::VSLD:
6659 case PPC::VSLH:
6660 case PPC::VSLO:
6661 case PPC::VSLQ:
6662 case PPC::VSLV:
6663 case PPC::VSLW:
6664 case PPC::VSPLTB:
6665 case PPC::VSPLTBs:
6666 case PPC::VSPLTH:
6667 case PPC::VSPLTHs:
6668 case PPC::VSPLTW:
6669 case PPC::VSR:
6670 case PPC::VSRAB:
6671 case PPC::VSRAD:
6672 case PPC::VSRAH:
6673 case PPC::VSRAQ:
6674 case PPC::VSRAW:
6675 case PPC::VSRB:
6676 case PPC::VSRD:
6677 case PPC::VSRH:
6678 case PPC::VSRO:
6679 case PPC::VSRQ:
6680 case PPC::VSRV:
6681 case PPC::VSRW:
6682 case PPC::VSUBCUQ:
6683 case PPC::VSUBCUW:
6684 case PPC::VSUBFP:
6685 case PPC::VSUBSBS:
6686 case PPC::VSUBSHS:
6687 case PPC::VSUBSWS:
6688 case PPC::VSUBUBM:
6689 case PPC::VSUBUBS:
6690 case PPC::VSUBUDM:
6691 case PPC::VSUBUHM:
6692 case PPC::VSUBUHS:
6693 case PPC::VSUBUQM:
6694 case PPC::VSUBUWM:
6695 case PPC::VSUBUWS:
6696 case PPC::VSUM2SWS:
6697 case PPC::VSUM4SBS:
6698 case PPC::VSUM4SHS:
6699 case PPC::VSUM4UBS:
6700 case PPC::VSUMSWS:
6701 case PPC::VXOR: {
6702 // op: VD
6703 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6704 Value |= (op & 0x1f) << 21;
6705 // op: VA
6706 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6707 Value |= (op & 0x1f) << 16;
6708 // op: VB
6709 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6710 Value |= (op & 0x1f) << 11;
6711 break;
6712 }
6713 case PPC::BCDADD_rec:
6714 case PPC::BCDSR_rec:
6715 case PPC::BCDSUB_rec:
6716 case PPC::BCDS_rec:
6717 case PPC::BCDTRUNC_rec: {
6718 // op: VD
6719 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6720 Value |= (op & 0x1f) << 21;
6721 // op: VA
6722 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6723 Value |= (op & 0x1f) << 16;
6724 // op: VB
6725 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6726 Value |= (op & 0x1f) << 11;
6727 // op: PS
6728 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6729 Value |= (op & 0x1) << 9;
6730 break;
6731 }
6732 case PPC::VINSBLX:
6733 case PPC::VINSBRX:
6734 case PPC::VINSBVLX:
6735 case PPC::VINSBVRX:
6736 case PPC::VINSD:
6737 case PPC::VINSDLX:
6738 case PPC::VINSDRX:
6739 case PPC::VINSERTB:
6740 case PPC::VINSERTH:
6741 case PPC::VINSHLX:
6742 case PPC::VINSHRX:
6743 case PPC::VINSHVLX:
6744 case PPC::VINSHVRX:
6745 case PPC::VINSW:
6746 case PPC::VINSWLX:
6747 case PPC::VINSWRX:
6748 case PPC::VINSWVLX:
6749 case PPC::VINSWVRX: {
6750 // op: VD
6751 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6752 Value |= (op & 0x1f) << 21;
6753 // op: VA
6754 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6755 Value |= (op & 0x1f) << 16;
6756 // op: VB
6757 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6758 Value |= (op & 0x1f) << 11;
6759 break;
6760 }
6761 case PPC::BCDCTN_rec:
6762 case PPC::BCDCTSQ_rec:
6763 case PPC::MTVSRBM:
6764 case PPC::MTVSRDM:
6765 case PPC::MTVSRHM:
6766 case PPC::MTVSRQM:
6767 case PPC::MTVSRWM:
6768 case PPC::VCFSX_0:
6769 case PPC::VCFUX_0:
6770 case PPC::VCLZB:
6771 case PPC::VCLZD:
6772 case PPC::VCLZH:
6773 case PPC::VCLZLSBB:
6774 case PPC::VCLZW:
6775 case PPC::VCTSXS_0:
6776 case PPC::VCTUXS_0:
6777 case PPC::VCTZB:
6778 case PPC::VCTZD:
6779 case PPC::VCTZH:
6780 case PPC::VCTZLSBB:
6781 case PPC::VCTZW:
6782 case PPC::VEXPANDBM:
6783 case PPC::VEXPANDDM:
6784 case PPC::VEXPANDHM:
6785 case PPC::VEXPANDQM:
6786 case PPC::VEXPANDWM:
6787 case PPC::VEXPTEFP:
6788 case PPC::VEXTRACTBM:
6789 case PPC::VEXTRACTDM:
6790 case PPC::VEXTRACTHM:
6791 case PPC::VEXTRACTQM:
6792 case PPC::VEXTRACTWM:
6793 case PPC::VEXTSB2D:
6794 case PPC::VEXTSB2Ds:
6795 case PPC::VEXTSB2W:
6796 case PPC::VEXTSB2Ws:
6797 case PPC::VEXTSD2Q:
6798 case PPC::VEXTSH2D:
6799 case PPC::VEXTSH2Ds:
6800 case PPC::VEXTSH2W:
6801 case PPC::VEXTSH2Ws:
6802 case PPC::VEXTSW2D:
6803 case PPC::VEXTSW2Ds:
6804 case PPC::VGBBD:
6805 case PPC::VLOGEFP:
6806 case PPC::VNEGD:
6807 case PPC::VNEGW:
6808 case PPC::VPOPCNTB:
6809 case PPC::VPOPCNTD:
6810 case PPC::VPOPCNTH:
6811 case PPC::VPOPCNTW:
6812 case PPC::VPRTYBD:
6813 case PPC::VPRTYBQ:
6814 case PPC::VPRTYBW:
6815 case PPC::VREFP:
6816 case PPC::VRFIM:
6817 case PPC::VRFIN:
6818 case PPC::VRFIP:
6819 case PPC::VRFIZ:
6820 case PPC::VRSQRTEFP:
6821 case PPC::VUPKHPX:
6822 case PPC::VUPKHSB:
6823 case PPC::VUPKHSH:
6824 case PPC::VUPKHSW:
6825 case PPC::VUPKLPX:
6826 case PPC::VUPKLSB:
6827 case PPC::VUPKLSH:
6828 case PPC::VUPKLSW: {
6829 // op: VD
6830 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6831 Value |= (op & 0x1f) << 21;
6832 // op: VB
6833 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6834 Value |= (op & 0x1f) << 11;
6835 break;
6836 }
6837 case PPC::BCDCFN_rec:
6838 case PPC::BCDCFSQ_rec:
6839 case PPC::BCDCFZ_rec:
6840 case PPC::BCDCTZ_rec:
6841 case PPC::BCDSETSGN_rec: {
6842 // op: VD
6843 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6844 Value |= (op & 0x1f) << 21;
6845 // op: VB
6846 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6847 Value |= (op & 0x1f) << 11;
6848 // op: PS
6849 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6850 Value |= (op & 0x1) << 9;
6851 break;
6852 }
6853 case PPC::V_SET0:
6854 case PPC::V_SET0B:
6855 case PPC::V_SET0H: {
6856 // op: VD
6857 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6858 Value |= (op & 0x1f) << 21;
6859 Value |= (op & 0x1f) << 16;
6860 Value |= (op & 0x1f) << 11;
6861 break;
6862 }
6863 case PPC::XSRQPI:
6864 case PPC::XSRQPIX:
6865 case PPC::XSRQPXP: {
6866 // op: VRT
6867 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6868 Value |= (op & 0x1f) << 21;
6869 // op: R
6870 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6871 Value |= (op & 0x1) << 16;
6872 // op: VRB
6873 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6874 Value |= (op & 0x1f) << 11;
6875 // op: idx
6876 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6877 Value |= (op & 0x3) << 9;
6878 break;
6879 }
6880 case PPC::VSLDBI:
6881 case PPC::VSRDBI: {
6882 // op: VRT
6883 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6884 Value |= (op & 0x1f) << 21;
6885 // op: VRA
6886 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6887 Value |= (op & 0x1f) << 16;
6888 // op: VRB
6889 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6890 Value |= (op & 0x1f) << 11;
6891 // op: SD
6892 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6893 Value |= (op & 0x7) << 6;
6894 break;
6895 }
6896 case PPC::VUPKHSNTOB:
6897 case PPC::VUPKLSNTOB: {
6898 // op: VRT
6899 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6900 Value |= (op & 0x1f) << 21;
6901 // op: VRB
6902 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6903 Value |= (op & 0x1f) << 11;
6904 break;
6905 }
6906 case PPC::VUPKINT8TOBF16: {
6907 // op: VRT
6908 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6909 Value |= (op & 0x1f) << 21;
6910 // op: VRB
6911 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6912 Value |= (op & 0x1f) << 11;
6913 // op: UIM
6914 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6915 Value |= (op & 0x1) << 16;
6916 break;
6917 }
6918 case PPC::VUPKINT4TOBF16:
6919 case PPC::VUPKINT8TOFP32: {
6920 // op: VRT
6921 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6922 Value |= (op & 0x1f) << 21;
6923 // op: VRB
6924 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6925 Value |= (op & 0x1f) << 11;
6926 // op: UIM
6927 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6928 Value |= (op & 0x3) << 16;
6929 break;
6930 }
6931 case PPC::VUPKINT4TOFP32: {
6932 // op: VRT
6933 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6934 Value |= (op & 0x1f) << 21;
6935 // op: VRB
6936 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6937 Value |= (op & 0x1f) << 11;
6938 // op: UIM
6939 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6940 Value |= (op & 0x7) << 16;
6941 break;
6942 }
6943 case PPC::VUCMPRHB:
6944 case PPC::VUCMPRHH:
6945 case PPC::VUCMPRHN:
6946 case PPC::VUCMPRLB:
6947 case PPC::VUCMPRLH:
6948 case PPC::VUCMPRLN: {
6949 // op: VRT
6950 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6951 Value |= (op & 0x1f) << 21;
6952 // op: VRB
6953 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6954 Value |= (op & 0x1f) << 11;
6955 // op: VRA
6956 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6957 Value |= (op & 0x1f) << 16;
6958 break;
6959 }
6960 case PPC::VSTRIBL:
6961 case PPC::VSTRIBL_rec:
6962 case PPC::VSTRIBR:
6963 case PPC::VSTRIBR_rec:
6964 case PPC::VSTRIHL:
6965 case PPC::VSTRIHL_rec:
6966 case PPC::VSTRIHR:
6967 case PPC::VSTRIHR_rec: {
6968 // op: VT
6969 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6970 Value |= (op & 0x1f) << 21;
6971 // op: VB
6972 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6973 Value |= (op & 0x1f) << 11;
6974 break;
6975 }
6976 case PPC::PLXVonlypc:
6977 case PPC::PSTXVonlypc: {
6978 // op: XST
6979 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6980 Value |= (op & 0x3f) << 21;
6981 // op: D
6982 op = getImmEncoding<PPC::fixup_ppc_pcrel34>(MI, OpNo: 1, Fixups, STI);
6983 Value |= (op & 0x3ffff0000) << 16;
6984 Value |= (op & 0xffff);
6985 break;
6986 }
6987 case PPC::PLXV:
6988 case PPC::PLXVnopc:
6989 case PPC::PSTXV:
6990 case PPC::PSTXVnopc: {
6991 // op: XST
6992 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6993 Value |= (op & 0x3f) << 21;
6994 // op: RA
6995 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6996 Value |= (op & 0x1f) << 16;
6997 // op: D
6998 op = getDispRI34Encoding(MI, OpNo: 1, Fixups, STI);
6999 Value |= (op & 0x3ffff0000) << 16;
7000 Value |= (op & 0xffff);
7001 break;
7002 }
7003 case PPC::PLXVpc:
7004 case PPC::PSTXVpc: {
7005 // op: XST
7006 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7007 Value |= (op & 0x3f) << 21;
7008 // op: RA
7009 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7010 Value |= (op & 0x1f) << 16;
7011 // op: D
7012 op = getDispRI34PCRelEncoding(MI, OpNo: 1, Fixups, STI);
7013 Value |= (op & 0x3ffff0000) << 16;
7014 Value |= (op & 0xffff);
7015 break;
7016 }
7017 case PPC::XXLEQVOnes:
7018 case PPC::XXLXORdpz:
7019 case PPC::XXLXORspz:
7020 case PPC::XXLXORz: {
7021 // op: XT
7022 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7023 Value |= (op & 0x1f) << 21;
7024 Value |= (op & 0x1f) << 16;
7025 Value |= (op & 0x1f) << 11;
7026 Value |= (op & 0x20) >> 3;
7027 Value |= (op & 0x20) >> 4;
7028 Value |= (op & 0x20) >> 5;
7029 break;
7030 }
7031 case PPC::XXSPLTIDP:
7032 case PPC::XXSPLTIW: {
7033 // op: XT
7034 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7035 Value |= (op & 0x1f) << 21;
7036 Value |= (op & 0x20) << 11;
7037 // op: IMM32
7038 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7039 Value |= (op & 0xffff0000) << 16;
7040 Value |= (op & 0xffff);
7041 break;
7042 }
7043 case PPC::XXSPLTI32DX: {
7044 // op: XT
7045 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7046 Value |= (op & 0x1f) << 21;
7047 Value |= (op & 0x20) << 11;
7048 // op: IX
7049 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7050 Value |= (op & 0x1) << 17;
7051 // op: IMM32
7052 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7053 Value |= (op & 0xffff0000) << 16;
7054 Value |= (op & 0xffff);
7055 break;
7056 }
7057 case PPC::LXV:
7058 case PPC::STXV: {
7059 // op: XT
7060 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7061 Value |= (op & 0x1f) << 21;
7062 Value |= (op & 0x20) >> 2;
7063 // op: RA
7064 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7065 Value |= (op & 0x1f) << 16;
7066 // op: DQ
7067 op = getDispRIX16Encoding(MI, OpNo: 1, Fixups, STI);
7068 Value |= (op & 0xfff) << 4;
7069 break;
7070 }
7071 case PPC::XVTSTDCDP:
7072 case PPC::XVTSTDCSP: {
7073 // op: XT
7074 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7075 Value |= (op & 0x1f) << 21;
7076 Value |= (op & 0x20) >> 5;
7077 // op: DCMX
7078 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7079 Value |= (op & 0x1f) << 16;
7080 Value |= (op & 0x40);
7081 Value |= (op & 0x20) >> 3;
7082 // op: XB
7083 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7084 Value |= (op & 0x1f) << 11;
7085 Value |= (op & 0x20) >> 4;
7086 break;
7087 }
7088 case PPC::XXSPLTIB: {
7089 // op: XT
7090 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7091 Value |= (op & 0x1f) << 21;
7092 Value |= (op & 0x20) >> 5;
7093 // op: IMM8
7094 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7095 Value |= (op & 0xff) << 11;
7096 break;
7097 }
7098 case PPC::MTVRD:
7099 case PPC::MTVRWA:
7100 case PPC::MTVRWZ:
7101 case PPC::MTVSRD:
7102 case PPC::MTVSRWA:
7103 case PPC::MTVSRWS:
7104 case PPC::MTVSRWZ: {
7105 // op: XT
7106 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7107 Value |= (op & 0x1f) << 21;
7108 Value |= (op & 0x20) >> 5;
7109 // op: RA
7110 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7111 Value |= (op & 0x1f) << 16;
7112 break;
7113 }
7114 case PPC::LXSDX:
7115 case PPC::LXSIBZX:
7116 case PPC::LXSIHZX:
7117 case PPC::LXSIWAX:
7118 case PPC::LXSIWZX:
7119 case PPC::LXSSPX:
7120 case PPC::LXVB16X:
7121 case PPC::LXVD2X:
7122 case PPC::LXVDSX:
7123 case PPC::LXVH8X:
7124 case PPC::LXVL:
7125 case PPC::LXVLL:
7126 case PPC::LXVRBX:
7127 case PPC::LXVRDX:
7128 case PPC::LXVRHX:
7129 case PPC::LXVRL:
7130 case PPC::LXVRLL:
7131 case PPC::LXVRWX:
7132 case PPC::LXVW4X:
7133 case PPC::LXVWSX:
7134 case PPC::LXVX:
7135 case PPC::MTVSRDD:
7136 case PPC::STXSDX:
7137 case PPC::STXSIBX:
7138 case PPC::STXSIBXv:
7139 case PPC::STXSIHX:
7140 case PPC::STXSIHXv:
7141 case PPC::STXSIWX:
7142 case PPC::STXSSPX:
7143 case PPC::STXVB16X:
7144 case PPC::STXVD2X:
7145 case PPC::STXVH8X:
7146 case PPC::STXVL:
7147 case PPC::STXVLL:
7148 case PPC::STXVRBX:
7149 case PPC::STXVRDX:
7150 case PPC::STXVRHX:
7151 case PPC::STXVRL:
7152 case PPC::STXVRLL:
7153 case PPC::STXVRWX:
7154 case PPC::STXVW4X:
7155 case PPC::STXVX:
7156 case PPC::XSIEXPDP: {
7157 // op: XT
7158 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7159 Value |= (op & 0x1f) << 21;
7160 Value |= (op & 0x20) >> 5;
7161 // op: RA
7162 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7163 Value |= (op & 0x1f) << 16;
7164 // op: RB
7165 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7166 Value |= (op & 0x1f) << 11;
7167 break;
7168 }
7169 case PPC::LXVKQ: {
7170 // op: XT
7171 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7172 Value |= (op & 0x1f) << 21;
7173 Value |= (op & 0x20) >> 5;
7174 // op: UIM
7175 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7176 Value |= (op & 0x1f) << 11;
7177 break;
7178 }
7179 case PPC::XXGENPCVBM:
7180 case PPC::XXGENPCVDM:
7181 case PPC::XXGENPCVHM:
7182 case PPC::XXGENPCVWM: {
7183 // op: XT
7184 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7185 Value |= (op & 0x1f) << 21;
7186 Value |= (op & 0x20) >> 5;
7187 // op: VRB
7188 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7189 Value |= (op & 0x1f) << 11;
7190 // op: IMM
7191 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7192 Value |= (op & 0x1f) << 16;
7193 break;
7194 }
7195 case PPC::XXPERMDIs:
7196 case PPC::XXSLDWIs: {
7197 // op: XT
7198 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7199 Value |= (op & 0x1f) << 21;
7200 Value |= (op & 0x20) >> 5;
7201 // op: XA
7202 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7203 Value |= (op & 0x1f) << 16;
7204 Value |= (op & 0x1f) << 11;
7205 Value |= (op & 0x20) >> 3;
7206 Value |= (op & 0x20) >> 4;
7207 // op: D
7208 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7209 Value |= (op & 0x3) << 8;
7210 break;
7211 }
7212 case PPC::XSADDADDSUQM:
7213 case PPC::XSADDADDUQM:
7214 case PPC::XSADDDP:
7215 case PPC::XSADDSP:
7216 case PPC::XSADDSUBSUQM:
7217 case PPC::XSADDSUBUQM:
7218 case PPC::XSCMPEQDP:
7219 case PPC::XSCMPGEDP:
7220 case PPC::XSCMPGTDP:
7221 case PPC::XSCPSGNDP:
7222 case PPC::XSDIVDP:
7223 case PPC::XSDIVSP:
7224 case PPC::XSMAXCDP:
7225 case PPC::XSMAXDP:
7226 case PPC::XSMAXJDP:
7227 case PPC::XSMERGE2T1UQM:
7228 case PPC::XSMERGE2T2UQM:
7229 case PPC::XSMERGE2T3UQM:
7230 case PPC::XSMERGE3T1UQM:
7231 case PPC::XSMINCDP:
7232 case PPC::XSMINDP:
7233 case PPC::XSMINJDP:
7234 case PPC::XSMULDP:
7235 case PPC::XSMULSP:
7236 case PPC::XSREBASE2T1UQM:
7237 case PPC::XSREBASE2T2UQM:
7238 case PPC::XSREBASE2T3UQM:
7239 case PPC::XSREBASE2T4UQM:
7240 case PPC::XSREBASE3T1UQM:
7241 case PPC::XSREBASE3T2UQM:
7242 case PPC::XSREBASE3T3UQM:
7243 case PPC::XSSUBDP:
7244 case PPC::XSSUBSP:
7245 case PPC::XVADDDP:
7246 case PPC::XVADDSP:
7247 case PPC::XVADDUHM:
7248 case PPC::XVADDUWM:
7249 case PPC::XVCMPEQDP:
7250 case PPC::XVCMPEQDP_rec:
7251 case PPC::XVCMPEQSP:
7252 case PPC::XVCMPEQSP_rec:
7253 case PPC::XVCMPGEDP:
7254 case PPC::XVCMPGEDP_rec:
7255 case PPC::XVCMPGESP:
7256 case PPC::XVCMPGESP_rec:
7257 case PPC::XVCMPGTDP:
7258 case PPC::XVCMPGTDP_rec:
7259 case PPC::XVCMPGTSP:
7260 case PPC::XVCMPGTSP_rec:
7261 case PPC::XVCPSGNDP:
7262 case PPC::XVCPSGNSP:
7263 case PPC::XVDIVDP:
7264 case PPC::XVDIVSP:
7265 case PPC::XVIEXPDP:
7266 case PPC::XVIEXPSP:
7267 case PPC::XVMAXDP:
7268 case PPC::XVMAXSP:
7269 case PPC::XVMINDP:
7270 case PPC::XVMINSP:
7271 case PPC::XVMULDP:
7272 case PPC::XVMULHSH:
7273 case PPC::XVMULHSW:
7274 case PPC::XVMULHUH:
7275 case PPC::XVMULHUW:
7276 case PPC::XVMULSP:
7277 case PPC::XVMULUHM:
7278 case PPC::XVMULUWM:
7279 case PPC::XVRLW:
7280 case PPC::XVSUBDP:
7281 case PPC::XVSUBSP:
7282 case PPC::XVSUBUHM:
7283 case PPC::XVSUBUWM:
7284 case PPC::XXLAND:
7285 case PPC::XXLANDC:
7286 case PPC::XXLEQV:
7287 case PPC::XXLNAND:
7288 case PPC::XXLNOR:
7289 case PPC::XXLOR:
7290 case PPC::XXLORC:
7291 case PPC::XXLORf:
7292 case PPC::XXLXOR:
7293 case PPC::XXMRGHW:
7294 case PPC::XXMRGLW: {
7295 // op: XT
7296 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7297 Value |= (op & 0x1f) << 21;
7298 Value |= (op & 0x20) >> 5;
7299 // op: XA
7300 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7301 Value |= (op & 0x1f) << 16;
7302 Value |= (op & 0x20) >> 3;
7303 // op: XB
7304 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7305 Value |= (op & 0x1f) << 11;
7306 Value |= (op & 0x20) >> 4;
7307 break;
7308 }
7309 case PPC::XXPERMDI:
7310 case PPC::XXSLDWI: {
7311 // op: XT
7312 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7313 Value |= (op & 0x1f) << 21;
7314 Value |= (op & 0x20) >> 5;
7315 // op: XA
7316 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7317 Value |= (op & 0x1f) << 16;
7318 Value |= (op & 0x20) >> 3;
7319 // op: XB
7320 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7321 Value |= (op & 0x1f) << 11;
7322 Value |= (op & 0x20) >> 4;
7323 // op: D
7324 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7325 Value |= (op & 0x3) << 8;
7326 break;
7327 }
7328 case PPC::XXSSUMUDM:
7329 case PPC::XXSSUMUDMC: {
7330 // op: XT
7331 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7332 Value |= (op & 0x1f) << 21;
7333 Value |= (op & 0x20) >> 5;
7334 // op: XA
7335 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7336 Value |= (op & 0x1f) << 16;
7337 Value |= (op & 0x20) >> 3;
7338 // op: XB
7339 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7340 Value |= (op & 0x1f) << 11;
7341 Value |= (op & 0x20) >> 4;
7342 // op: P
7343 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7344 Value |= (op & 0x1) << 10;
7345 break;
7346 }
7347 case PPC::XXGFMUL128: {
7348 // op: XT
7349 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7350 Value |= (op & 0x1f) << 21;
7351 Value |= (op & 0x20) >> 5;
7352 // op: XA
7353 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7354 Value |= (op & 0x1f) << 16;
7355 Value |= (op & 0x20) >> 3;
7356 // op: XB
7357 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7358 Value |= (op & 0x1f) << 11;
7359 Value |= (op & 0x20) >> 4;
7360 // op: P
7361 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7362 Value |= (op & 0x1) << 8;
7363 break;
7364 }
7365 case PPC::XXMULMUL: {
7366 // op: XT
7367 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7368 Value |= (op & 0x1f) << 21;
7369 Value |= (op & 0x20) >> 5;
7370 // op: XA
7371 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7372 Value |= (op & 0x1f) << 16;
7373 Value |= (op & 0x20) >> 3;
7374 // op: XB
7375 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7376 Value |= (op & 0x1f) << 11;
7377 Value |= (op & 0x20) >> 4;
7378 // op: S
7379 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7380 Value |= (op & 0x7) << 8;
7381 break;
7382 }
7383 case PPC::XXMULMULHIADD: {
7384 // op: XT
7385 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7386 Value |= (op & 0x1f) << 21;
7387 Value |= (op & 0x20) >> 5;
7388 // op: XA
7389 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7390 Value |= (op & 0x1f) << 16;
7391 Value |= (op & 0x20) >> 3;
7392 // op: XB
7393 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7394 Value |= (op & 0x1f) << 11;
7395 Value |= (op & 0x20) >> 4;
7396 // op: S0
7397 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7398 Value |= (op & 0x1) << 10;
7399 // op: S1
7400 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
7401 Value |= (op & 0x1) << 9;
7402 // op: S2
7403 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
7404 Value |= (op & 0x1) << 8;
7405 break;
7406 }
7407 case PPC::XXMULMULLOADD: {
7408 // op: XT
7409 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7410 Value |= (op & 0x1f) << 21;
7411 Value |= (op & 0x20) >> 5;
7412 // op: XA
7413 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7414 Value |= (op & 0x1f) << 16;
7415 Value |= (op & 0x20) >> 3;
7416 // op: XB
7417 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7418 Value |= (op & 0x1f) << 11;
7419 Value |= (op & 0x20) >> 4;
7420 // op: S1
7421 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7422 Value |= (op & 0x1) << 9;
7423 // op: S2
7424 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
7425 Value |= (op & 0x1) << 8;
7426 break;
7427 }
7428 case PPC::XXBLENDVB:
7429 case PPC::XXBLENDVD:
7430 case PPC::XXBLENDVH:
7431 case PPC::XXBLENDVW:
7432 case PPC::XXSEL: {
7433 // op: XT
7434 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7435 Value |= (op & 0x1f) << 21;
7436 Value |= (op & 0x20) >> 5;
7437 // op: XA
7438 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7439 Value |= (op & 0x1f) << 16;
7440 Value |= (op & 0x20) >> 3;
7441 // op: XB
7442 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7443 Value |= (op & 0x1f) << 11;
7444 Value |= (op & 0x20) >> 4;
7445 // op: XC
7446 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7447 Value |= (op & 0x1f) << 6;
7448 Value |= (op & 0x20) >> 2;
7449 break;
7450 }
7451 case PPC::XXPERMX: {
7452 // op: XT
7453 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7454 Value |= (op & 0x1f) << 21;
7455 Value |= (op & 0x20) >> 5;
7456 // op: XA
7457 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7458 Value |= (op & 0x1f) << 16;
7459 Value |= (op & 0x20) >> 3;
7460 // op: XB
7461 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7462 Value |= (op & 0x1f) << 11;
7463 Value |= (op & 0x20) >> 4;
7464 // op: XC
7465 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7466 Value |= (op & 0x1f) << 6;
7467 Value |= (op & 0x20) >> 2;
7468 // op: IMM
7469 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
7470 Value |= (op & 0x7) << 32;
7471 break;
7472 }
7473 case PPC::XXEVAL: {
7474 // op: XT
7475 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7476 Value |= (op & 0x1f) << 21;
7477 Value |= (op & 0x20) >> 5;
7478 // op: XA
7479 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7480 Value |= (op & 0x1f) << 16;
7481 Value |= (op & 0x20) >> 3;
7482 // op: XB
7483 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7484 Value |= (op & 0x1f) << 11;
7485 Value |= (op & 0x20) >> 4;
7486 // op: XC
7487 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7488 Value |= (op & 0x1f) << 6;
7489 Value |= (op & 0x20) >> 2;
7490 // op: IMM
7491 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
7492 Value |= (op & 0xff) << 32;
7493 break;
7494 }
7495 case PPC::XXSSUMUDMCEXT: {
7496 // op: XT
7497 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7498 Value |= (op & 0x1f) << 21;
7499 Value |= (op & 0x20) >> 5;
7500 // op: XA
7501 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7502 Value |= (op & 0x1f) << 16;
7503 Value |= (op & 0x20) >> 3;
7504 // op: XB
7505 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7506 Value |= (op & 0x1f) << 11;
7507 Value |= (op & 0x20) >> 4;
7508 // op: XC
7509 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7510 Value |= (op & 0x1f) << 6;
7511 Value |= (op & 0x20) >> 2;
7512 // op: P
7513 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
7514 Value |= (op & 0x1) << 4;
7515 break;
7516 }
7517 case PPC::XXPERM:
7518 case PPC::XXPERMR: {
7519 // op: XT
7520 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7521 Value |= (op & 0x1f) << 21;
7522 Value |= (op & 0x20) >> 5;
7523 // op: XA
7524 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7525 Value |= (op & 0x1f) << 16;
7526 Value |= (op & 0x20) >> 3;
7527 // op: XB
7528 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7529 Value |= (op & 0x1f) << 11;
7530 Value |= (op & 0x20) >> 4;
7531 break;
7532 }
7533 case PPC::XSMADDADP:
7534 case PPC::XSMADDASP:
7535 case PPC::XSMADDMDP:
7536 case PPC::XSMADDMSP:
7537 case PPC::XSMSUBADP:
7538 case PPC::XSMSUBASP:
7539 case PPC::XSMSUBMDP:
7540 case PPC::XSMSUBMSP:
7541 case PPC::XSNMADDADP:
7542 case PPC::XSNMADDASP:
7543 case PPC::XSNMADDMDP:
7544 case PPC::XSNMADDMSP:
7545 case PPC::XSNMSUBADP:
7546 case PPC::XSNMSUBASP:
7547 case PPC::XSNMSUBMDP:
7548 case PPC::XSNMSUBMSP:
7549 case PPC::XVMADDADP:
7550 case PPC::XVMADDASP:
7551 case PPC::XVMADDMDP:
7552 case PPC::XVMADDMSP:
7553 case PPC::XVMSUBADP:
7554 case PPC::XVMSUBASP:
7555 case PPC::XVMSUBMDP:
7556 case PPC::XVMSUBMSP:
7557 case PPC::XVNMADDADP:
7558 case PPC::XVNMADDASP:
7559 case PPC::XVNMADDMDP:
7560 case PPC::XVNMADDMSP:
7561 case PPC::XVNMSUBADP:
7562 case PPC::XVNMSUBASP:
7563 case PPC::XVNMSUBMDP:
7564 case PPC::XVNMSUBMSP: {
7565 // op: XT
7566 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7567 Value |= (op & 0x1f) << 21;
7568 Value |= (op & 0x20) >> 5;
7569 // op: XA
7570 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7571 Value |= (op & 0x1f) << 16;
7572 Value |= (op & 0x20) >> 3;
7573 // op: XB
7574 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7575 Value |= (op & 0x1f) << 11;
7576 Value |= (op & 0x20) >> 4;
7577 break;
7578 }
7579 case PPC::XSABSDP:
7580 case PPC::XSCVDPHP:
7581 case PPC::XSCVDPSP:
7582 case PPC::XSCVDPSPN:
7583 case PPC::XSCVDPSXDS:
7584 case PPC::XSCVDPSXDSs:
7585 case PPC::XSCVDPSXWS:
7586 case PPC::XSCVDPSXWSs:
7587 case PPC::XSCVDPUXDS:
7588 case PPC::XSCVDPUXDSs:
7589 case PPC::XSCVDPUXWS:
7590 case PPC::XSCVDPUXWSs:
7591 case PPC::XSCVHPDP:
7592 case PPC::XSCVSPDP:
7593 case PPC::XSCVSPDPN:
7594 case PPC::XSCVSXDDP:
7595 case PPC::XSCVSXDSP:
7596 case PPC::XSCVUXDDP:
7597 case PPC::XSCVUXDSP:
7598 case PPC::XSNABSDP:
7599 case PPC::XSNABSDPs:
7600 case PPC::XSNEGDP:
7601 case PPC::XSRDPI:
7602 case PPC::XSRDPIC:
7603 case PPC::XSRDPIM:
7604 case PPC::XSRDPIP:
7605 case PPC::XSRDPIZ:
7606 case PPC::XSREDP:
7607 case PPC::XSRESP:
7608 case PPC::XSRSP:
7609 case PPC::XSRSQRTEDP:
7610 case PPC::XSRSQRTESP:
7611 case PPC::XSSQRTDP:
7612 case PPC::XSSQRTSP:
7613 case PPC::XVABSDP:
7614 case PPC::XVABSSP:
7615 case PPC::XVCVBF16SPN:
7616 case PPC::XVCVDPSP:
7617 case PPC::XVCVDPSXDS:
7618 case PPC::XVCVDPSXWS:
7619 case PPC::XVCVDPUXDS:
7620 case PPC::XVCVDPUXWS:
7621 case PPC::XVCVHPSP:
7622 case PPC::XVCVSPBF16:
7623 case PPC::XVCVSPDP:
7624 case PPC::XVCVSPHP:
7625 case PPC::XVCVSPSXDS:
7626 case PPC::XVCVSPSXWS:
7627 case PPC::XVCVSPUXDS:
7628 case PPC::XVCVSPUXWS:
7629 case PPC::XVCVSXDDP:
7630 case PPC::XVCVSXDSP:
7631 case PPC::XVCVSXWDP:
7632 case PPC::XVCVSXWSP:
7633 case PPC::XVCVUXDDP:
7634 case PPC::XVCVUXDSP:
7635 case PPC::XVCVUXWDP:
7636 case PPC::XVCVUXWSP:
7637 case PPC::XVNABSDP:
7638 case PPC::XVNABSSP:
7639 case PPC::XVNEGDP:
7640 case PPC::XVNEGSP:
7641 case PPC::XVRDPI:
7642 case PPC::XVRDPIC:
7643 case PPC::XVRDPIM:
7644 case PPC::XVRDPIP:
7645 case PPC::XVRDPIZ:
7646 case PPC::XVREDP:
7647 case PPC::XVRESP:
7648 case PPC::XVRSPI:
7649 case PPC::XVRSPIC:
7650 case PPC::XVRSPIM:
7651 case PPC::XVRSPIP:
7652 case PPC::XVRSPIZ:
7653 case PPC::XVRSQRTEDP:
7654 case PPC::XVRSQRTESP:
7655 case PPC::XVSQRTDP:
7656 case PPC::XVSQRTSP:
7657 case PPC::XVXEXPDP:
7658 case PPC::XVXEXPSP:
7659 case PPC::XVXSIGDP:
7660 case PPC::XVXSIGSP:
7661 case PPC::XXBRD:
7662 case PPC::XXBRH:
7663 case PPC::XXBRQ:
7664 case PPC::XXBRW: {
7665 // op: XT
7666 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7667 Value |= (op & 0x1f) << 21;
7668 Value |= (op & 0x20) >> 5;
7669 // op: XB
7670 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7671 Value |= (op & 0x1f) << 11;
7672 Value |= (op & 0x20) >> 4;
7673 break;
7674 }
7675 case PPC::XXSPLTW:
7676 case PPC::XXSPLTWs: {
7677 // op: XT
7678 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7679 Value |= (op & 0x1f) << 21;
7680 Value |= (op & 0x20) >> 5;
7681 // op: XB
7682 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7683 Value |= (op & 0x1f) << 11;
7684 Value |= (op & 0x20) >> 4;
7685 // op: D
7686 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7687 Value |= (op & 0x3) << 16;
7688 break;
7689 }
7690 case PPC::XXEXTRACTUW: {
7691 // op: XT
7692 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7693 Value |= (op & 0x1f) << 21;
7694 Value |= (op & 0x20) >> 5;
7695 // op: XB
7696 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7697 Value |= (op & 0x1f) << 11;
7698 Value |= (op & 0x20) >> 4;
7699 // op: UIM5
7700 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7701 Value |= (op & 0x1f) << 16;
7702 break;
7703 }
7704 case PPC::XXINSERTW: {
7705 // op: XT
7706 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7707 Value |= (op & 0x1f) << 21;
7708 Value |= (op & 0x20) >> 5;
7709 // op: XB
7710 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7711 Value |= (op & 0x1f) << 11;
7712 Value |= (op & 0x20) >> 4;
7713 // op: UIM5
7714 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7715 Value |= (op & 0x1f) << 16;
7716 break;
7717 }
7718 case PPC::MFVRD:
7719 case PPC::MFVRWZ:
7720 case PPC::MFVSRD:
7721 case PPC::MFVSRLD:
7722 case PPC::MFVSRWZ: {
7723 // op: XT
7724 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7725 Value |= (op & 0x1f) << 21;
7726 Value |= (op & 0x20) >> 5;
7727 // op: RA
7728 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7729 Value |= (op & 0x1f) << 16;
7730 break;
7731 }
7732 case PPC::PLXVPonlypc:
7733 case PPC::PSTXVPonlypc: {
7734 // op: XTp
7735 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7736 Value |= (op & 0xf) << 22;
7737 Value |= (op & 0x10) << 17;
7738 // op: D
7739 op = getImmEncoding<PPC::fixup_ppc_pcrel34>(MI, OpNo: 1, Fixups, STI);
7740 Value |= (op & 0x3ffff0000) << 16;
7741 Value |= (op & 0xffff);
7742 break;
7743 }
7744 case PPC::LXVPB32X:
7745 case PPC::LXVPRL:
7746 case PPC::LXVPRLL:
7747 case PPC::LXVPX:
7748 case PPC::STXVPB32X:
7749 case PPC::STXVPRL:
7750 case PPC::STXVPRLL:
7751 case PPC::STXVPX: {
7752 // op: XTp
7753 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7754 Value |= (op & 0xf) << 22;
7755 Value |= (op & 0x10) << 17;
7756 // op: RA
7757 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7758 Value |= (op & 0x1f) << 16;
7759 // op: RB
7760 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7761 Value |= (op & 0x1f) << 11;
7762 break;
7763 }
7764 case PPC::PLXVP:
7765 case PPC::PLXVPnopc:
7766 case PPC::PSTXVP:
7767 case PPC::PSTXVPnopc: {
7768 // op: XTp
7769 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7770 Value |= (op & 0xf) << 22;
7771 Value |= (op & 0x10) << 17;
7772 // op: RA
7773 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7774 Value |= (op & 0x1f) << 16;
7775 // op: D
7776 op = getDispRI34Encoding(MI, OpNo: 1, Fixups, STI);
7777 Value |= (op & 0x3ffff0000) << 16;
7778 Value |= (op & 0xffff);
7779 break;
7780 }
7781 case PPC::PLXVPpc:
7782 case PPC::PSTXVPpc: {
7783 // op: XTp
7784 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7785 Value |= (op & 0xf) << 22;
7786 Value |= (op & 0x10) << 17;
7787 // op: RA
7788 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7789 Value |= (op & 0x1f) << 16;
7790 // op: D
7791 op = getDispRI34PCRelEncoding(MI, OpNo: 1, Fixups, STI);
7792 Value |= (op & 0x3ffff0000) << 16;
7793 Value |= (op & 0xffff);
7794 break;
7795 }
7796 case PPC::LXVP:
7797 case PPC::STXVP: {
7798 // op: XTp
7799 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7800 Value |= (op & 0xf) << 22;
7801 Value |= (op & 0x10) << 17;
7802 // op: RA
7803 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7804 Value |= (op & 0x1f) << 16;
7805 // op: DQ
7806 op = getDispRIX16Encoding(MI, OpNo: 1, Fixups, STI);
7807 Value |= (op & 0xfff) << 4;
7808 break;
7809 }
7810 case PPC::XXAESDECP:
7811 case PPC::XXAESENCP: {
7812 // op: XTp
7813 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7814 Value |= (op & 0xf) << 22;
7815 Value |= (op & 0x10) << 17;
7816 // op: XAp
7817 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7818 Value |= (op & 0xf) << 17;
7819 Value |= (op & 0x10) >> 2;
7820 // op: XBp
7821 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7822 Value |= (op & 0xf) << 12;
7823 Value |= (op & 0x10) >> 3;
7824 // op: M
7825 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7826 Value |= (op & 0x1) << 16;
7827 Value |= (op & 0x2) << 10;
7828 break;
7829 }
7830 case PPC::XXAESGENLKP: {
7831 // op: XTp
7832 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7833 Value |= (op & 0xf) << 22;
7834 Value |= (op & 0x10) << 17;
7835 // op: XBp
7836 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7837 Value |= (op & 0xf) << 12;
7838 Value |= (op & 0x10) >> 3;
7839 // op: M
7840 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7841 Value |= (op & 0x1) << 16;
7842 Value |= (op & 0x2) << 10;
7843 break;
7844 }
7845 case PPC::EFDCMPEQ:
7846 case PPC::EFDCMPGT:
7847 case PPC::EFDCMPLT:
7848 case PPC::EFDTSTEQ:
7849 case PPC::EFDTSTGT:
7850 case PPC::EFDTSTLT:
7851 case PPC::EFSCMPEQ:
7852 case PPC::EFSCMPGT:
7853 case PPC::EFSCMPLT:
7854 case PPC::EFSTSTEQ:
7855 case PPC::EFSTSTGT:
7856 case PPC::EFSTSTLT:
7857 case PPC::EVCMPEQ:
7858 case PPC::EVCMPGTS:
7859 case PPC::EVCMPGTU:
7860 case PPC::EVCMPLTS:
7861 case PPC::EVCMPLTU:
7862 case PPC::EVFSCMPEQ:
7863 case PPC::EVFSCMPGT:
7864 case PPC::EVFSCMPLT:
7865 case PPC::EVFSTSTEQ:
7866 case PPC::EVFSTSTGT:
7867 case PPC::EVFSTSTLT: {
7868 // op: crD
7869 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7870 Value |= (op & 0x7) << 23;
7871 // op: RA
7872 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7873 Value |= (op & 0x1f) << 16;
7874 // op: RB
7875 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7876 Value |= (op & 0x1f) << 11;
7877 break;
7878 }
7879 case PPC::EVSEL: {
7880 // op: crD
7881 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7882 Value |= (op & 0x7);
7883 // op: RA
7884 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7885 Value |= (op & 0x1f) << 16;
7886 // op: RB
7887 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7888 Value |= (op & 0x1f) << 11;
7889 // op: RT
7890 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7891 Value |= (op & 0x1f) << 21;
7892 break;
7893 }
7894 default:
7895 reportUnsupportedInst(Inst: MI);
7896 }
7897 return Value;
7898}
7899
7900#ifdef GET_OPERAND_BIT_OFFSET
7901#undef GET_OPERAND_BIT_OFFSET
7902
7903uint32_t PPCMCCodeEmitter::getOperandBitOffset(const MCInst &MI,
7904 unsigned OpNum,
7905 const MCSubtargetInfo &STI) const {
7906 switch (MI.getOpcode()) {
7907 case PPC::ADDISdtprelHA:
7908 case PPC::ADDISdtprelHA32:
7909 case PPC::ADDISgotTprelHA:
7910 case PPC::ADDIStlsgdHA:
7911 case PPC::ADDIStlsldHA:
7912 case PPC::ADDIStocHA:
7913 case PPC::ADDIStocHA8:
7914 case PPC::ADDIdtprelL:
7915 case PPC::ADDIdtprelL32:
7916 case PPC::ADDItlsgdL:
7917 case PPC::ADDItlsgdL32:
7918 case PPC::ADDItlsgdLADDR:
7919 case PPC::ADDItlsgdLADDR32:
7920 case PPC::ADDItlsldL:
7921 case PPC::ADDItlsldL32:
7922 case PPC::ADDItlsldLADDR:
7923 case PPC::ADDItlsldLADDR32:
7924 case PPC::ADDItoc:
7925 case PPC::ADDItoc8:
7926 case PPC::ADDItocL:
7927 case PPC::ADDItocL8:
7928 case PPC::ADJCALLSTACKDOWN:
7929 case PPC::ADJCALLSTACKUP:
7930 case PPC::ANDI_rec_1_EQ_BIT:
7931 case PPC::ANDI_rec_1_EQ_BIT8:
7932 case PPC::ANDI_rec_1_GT_BIT:
7933 case PPC::ANDI_rec_1_GT_BIT8:
7934 case PPC::ATOMIC_CMP_SWAP_I16:
7935 case PPC::ATOMIC_CMP_SWAP_I32:
7936 case PPC::ATOMIC_CMP_SWAP_I64:
7937 case PPC::ATOMIC_CMP_SWAP_I8:
7938 case PPC::ATOMIC_LOAD_ADD:
7939 case PPC::ATOMIC_LOAD_ADD_I64:
7940 case PPC::ATOMIC_LOAD_ADD_NOWP:
7941 case PPC::ATOMIC_LOAD_AND:
7942 case PPC::ATOMIC_LOAD_AND_I64:
7943 case PPC::ATOMIC_LOAD_AND_NOWP:
7944 case PPC::ATOMIC_LOAD_MAX:
7945 case PPC::ATOMIC_LOAD_MAX_I64:
7946 case PPC::ATOMIC_LOAD_MAX_NOWP:
7947 case PPC::ATOMIC_LOAD_MIN:
7948 case PPC::ATOMIC_LOAD_MIN_I64:
7949 case PPC::ATOMIC_LOAD_MIN_NOWP:
7950 case PPC::ATOMIC_LOAD_NAND:
7951 case PPC::ATOMIC_LOAD_NAND_I64:
7952 case PPC::ATOMIC_LOAD_NAND_NOWP:
7953 case PPC::ATOMIC_LOAD_OR:
7954 case PPC::ATOMIC_LOAD_OR_I64:
7955 case PPC::ATOMIC_LOAD_OR_NOWP:
7956 case PPC::ATOMIC_LOAD_SUB:
7957 case PPC::ATOMIC_LOAD_SUB_I64:
7958 case PPC::ATOMIC_LOAD_SUB_NOWP:
7959 case PPC::ATOMIC_LOAD_UMAX:
7960 case PPC::ATOMIC_LOAD_UMAX_I64:
7961 case PPC::ATOMIC_LOAD_UMAX_NOWP:
7962 case PPC::ATOMIC_LOAD_UMIN:
7963 case PPC::ATOMIC_LOAD_UMIN_I64:
7964 case PPC::ATOMIC_LOAD_UMIN_NOWP:
7965 case PPC::ATOMIC_LOAD_XOR:
7966 case PPC::ATOMIC_LOAD_XOR_I64:
7967 case PPC::ATOMIC_LOAD_XOR_NOWP:
7968 case PPC::ATOMIC_SWAP:
7969 case PPC::ATOMIC_SWAP_I64:
7970 case PPC::ATOMIC_SWAP_NOWP:
7971 case PPC::ATTN:
7972 case PPC::BCTR:
7973 case PPC::BCTR8:
7974 case PPC::BCTRL:
7975 case PPC::BCTRL8:
7976 case PPC::BCTRL8_RM:
7977 case PPC::BCTRL_RM:
7978 case PPC::BDNZLR:
7979 case PPC::BDNZLR8:
7980 case PPC::BDNZLRL:
7981 case PPC::BDNZLRLm:
7982 case PPC::BDNZLRLp:
7983 case PPC::BDNZLRm:
7984 case PPC::BDNZLRp:
7985 case PPC::BDZLR:
7986 case PPC::BDZLR8:
7987 case PPC::BDZLRL:
7988 case PPC::BDZLRLm:
7989 case PPC::BDZLRLp:
7990 case PPC::BDZLRm:
7991 case PPC::BDZLRp:
7992 case PPC::BLR:
7993 case PPC::BLR8:
7994 case PPC::BLRL:
7995 case PPC::CLRBHRB:
7996 case PPC::CP_ABORT:
7997 case PPC::CR6SET:
7998 case PPC::CR6UNSET:
7999 case PPC::DSSALL:
8000 case PPC::DYNALLOC:
8001 case PPC::DYNALLOC8:
8002 case PPC::DYNAREAOFFSET:
8003 case PPC::DYNAREAOFFSET8:
8004 case PPC::DecreaseCTR8loop:
8005 case PPC::DecreaseCTRloop:
8006 case PPC::EH_SjLj_LongJmp32:
8007 case PPC::EH_SjLj_LongJmp64:
8008 case PPC::EH_SjLj_SetJmp32:
8009 case PPC::EH_SjLj_SetJmp64:
8010 case PPC::EH_SjLj_Setup:
8011 case PPC::EnforceIEIO:
8012 case PPC::FADDrtz:
8013 case PPC::FENCE:
8014 case PPC::GETtlsADDR:
8015 case PPC::GETtlsADDR32:
8016 case PPC::GETtlsADDR32AIX:
8017 case PPC::GETtlsADDR64AIX:
8018 case PPC::GETtlsADDRPCREL:
8019 case PPC::GETtlsMOD32AIX:
8020 case PPC::GETtlsMOD64AIX:
8021 case PPC::GETtlsTpointer32AIX:
8022 case PPC::GETtlsldADDR:
8023 case PPC::GETtlsldADDR32:
8024 case PPC::GETtlsldADDRPCREL:
8025 case PPC::HRFID:
8026 case PPC::ISYNC:
8027 case PPC::LDgotTprelL:
8028 case PPC::LDgotTprelL32:
8029 case PPC::LDtoc:
8030 case PPC::LDtocBA:
8031 case PPC::LDtocCPT:
8032 case PPC::LDtocJTI:
8033 case PPC::LDtocL:
8034 case PPC::LQX_PSEUDO:
8035 case PPC::LWZtoc:
8036 case PPC::LWZtocL:
8037 case PPC::MSGSYNC:
8038 case PPC::MSYNC:
8039 case PPC::MoveGOTtoLR:
8040 case PPC::MovePCtoLR:
8041 case PPC::MovePCtoLR8:
8042 case PPC::NAP:
8043 case PPC::NOP:
8044 case PPC::NOP_GT_PWR6:
8045 case PPC::NOP_GT_PWR7:
8046 case PPC::PADDIdtprel:
8047 case PPC::PPC32GOT:
8048 case PPC::PPC32PICGOT:
8049 case PPC::PREPARE_PROBED_ALLOCA_32:
8050 case PPC::PREPARE_PROBED_ALLOCA_64:
8051 case PPC::PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_32:
8052 case PPC::PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_64:
8053 case PPC::PROBED_ALLOCA_32:
8054 case PPC::PROBED_ALLOCA_64:
8055 case PPC::PROBED_STACKALLOC_32:
8056 case PPC::PROBED_STACKALLOC_64:
8057 case PPC::PseudoEIEIO:
8058 case PPC::RESTORE_ACC:
8059 case PPC::RESTORE_CR:
8060 case PPC::RESTORE_CRBIT:
8061 case PPC::RESTORE_DMR:
8062 case PPC::RESTORE_DMRP:
8063 case PPC::RESTORE_QUADWORD:
8064 case PPC::RESTORE_UACC:
8065 case PPC::RESTORE_WACC:
8066 case PPC::RFCI:
8067 case PPC::RFDI:
8068 case PPC::RFI:
8069 case PPC::RFID:
8070 case PPC::RFMCI:
8071 case PPC::ReadTB:
8072 case PPC::SELECT_CC_F16:
8073 case PPC::SELECT_CC_F4:
8074 case PPC::SELECT_CC_F8:
8075 case PPC::SELECT_CC_I4:
8076 case PPC::SELECT_CC_I8:
8077 case PPC::SELECT_CC_SPE:
8078 case PPC::SELECT_CC_SPE4:
8079 case PPC::SELECT_CC_VRRC:
8080 case PPC::SELECT_CC_VSFRC:
8081 case PPC::SELECT_CC_VSRC:
8082 case PPC::SELECT_CC_VSSRC:
8083 case PPC::SELECT_F16:
8084 case PPC::SELECT_F4:
8085 case PPC::SELECT_F8:
8086 case PPC::SELECT_I4:
8087 case PPC::SELECT_I8:
8088 case PPC::SELECT_SPE:
8089 case PPC::SELECT_SPE4:
8090 case PPC::SELECT_VRRC:
8091 case PPC::SELECT_VSFRC:
8092 case PPC::SELECT_VSRC:
8093 case PPC::SELECT_VSSRC:
8094 case PPC::SETFLM:
8095 case PPC::SETRND:
8096 case PPC::SETRNDi:
8097 case PPC::SLBIA:
8098 case PPC::SLBSYNC:
8099 case PPC::SPILL_ACC:
8100 case PPC::SPILL_CR:
8101 case PPC::SPILL_CRBIT:
8102 case PPC::SPILL_DMR:
8103 case PPC::SPILL_DMRP:
8104 case PPC::SPILL_QUADWORD:
8105 case PPC::SPILL_UACC:
8106 case PPC::SPILL_WACC:
8107 case PPC::SPLIT_QUADWORD:
8108 case PPC::STOP:
8109 case PPC::STQX_PSEUDO:
8110 case PPC::TAILBCTR:
8111 case PPC::TAILBCTR8:
8112 case PPC::TBEGIN_RET:
8113 case PPC::TCHECK_RET:
8114 case PPC::TCRETURNai:
8115 case PPC::TCRETURNai8:
8116 case PPC::TCRETURNdi:
8117 case PPC::TCRETURNdi8:
8118 case PPC::TCRETURNri:
8119 case PPC::TCRETURNri8:
8120 case PPC::TLBIA:
8121 case PPC::TLBRE:
8122 case PPC::TLBSYNC:
8123 case PPC::TLBWE:
8124 case PPC::TLSGDAIX:
8125 case PPC::TLSGDAIX8:
8126 case PPC::TLSLDAIX:
8127 case PPC::TLSLDAIX8:
8128 case PPC::TRAP:
8129 case PPC::TRECHKPT:
8130 case PPC::UNENCODED_NOP:
8131 case PPC::UpdateGBR: {
8132 break;
8133 }
8134 case PPC::TEND: {
8135 switch (OpNum) {
8136 case 0:
8137 // op: A
8138 return 25;
8139 }
8140 break;
8141 }
8142 case PPC::DMMR: {
8143 switch (OpNum) {
8144 case 0:
8145 // op: AT
8146 return 23;
8147 case 1:
8148 // op: AB
8149 return 13;
8150 }
8151 break;
8152 }
8153 case PPC::PMXVI4GER8:
8154 case PPC::PMXVI4GER8W: {
8155 switch (OpNum) {
8156 case 0:
8157 // op: AT
8158 return 23;
8159 case 1:
8160 // op: XA
8161 return 2;
8162 case 2:
8163 // op: XB
8164 return 1;
8165 case 3:
8166 // op: XMSK
8167 return 36;
8168 case 4:
8169 // op: YMSK
8170 return 32;
8171 case 5:
8172 // op: PMSK
8173 return 40;
8174 }
8175 break;
8176 }
8177 case PPC::PMXVI8GER4:
8178 case PPC::PMXVI8GER4W: {
8179 switch (OpNum) {
8180 case 0:
8181 // op: AT
8182 return 23;
8183 case 1:
8184 // op: XA
8185 return 2;
8186 case 2:
8187 // op: XB
8188 return 1;
8189 case 3:
8190 // op: XMSK
8191 return 36;
8192 case 4:
8193 // op: YMSK
8194 return 32;
8195 case 5:
8196 // op: PMSK
8197 return 44;
8198 }
8199 break;
8200 }
8201 case PPC::PMXVBF16GER2:
8202 case PPC::PMXVBF16GER2W:
8203 case PPC::PMXVF16GER2:
8204 case PPC::PMXVF16GER2W:
8205 case PPC::PMXVI16GER2:
8206 case PPC::PMXVI16GER2S:
8207 case PPC::PMXVI16GER2SW:
8208 case PPC::PMXVI16GER2W: {
8209 switch (OpNum) {
8210 case 0:
8211 // op: AT
8212 return 23;
8213 case 1:
8214 // op: XA
8215 return 2;
8216 case 2:
8217 // op: XB
8218 return 1;
8219 case 3:
8220 // op: XMSK
8221 return 36;
8222 case 4:
8223 // op: YMSK
8224 return 32;
8225 case 5:
8226 // op: PMSK
8227 return 46;
8228 }
8229 break;
8230 }
8231 case PPC::PMXVF32GER:
8232 case PPC::PMXVF32GERW: {
8233 switch (OpNum) {
8234 case 0:
8235 // op: AT
8236 return 23;
8237 case 1:
8238 // op: XA
8239 return 2;
8240 case 2:
8241 // op: XB
8242 return 1;
8243 case 3:
8244 // op: XMSK
8245 return 36;
8246 case 4:
8247 // op: YMSK
8248 return 32;
8249 }
8250 break;
8251 }
8252 case PPC::PMXVF64GER:
8253 case PPC::PMXVF64GERW: {
8254 switch (OpNum) {
8255 case 0:
8256 // op: AT
8257 return 23;
8258 case 1:
8259 // op: XA
8260 return 2;
8261 case 2:
8262 // op: XB
8263 return 1;
8264 case 3:
8265 // op: XMSK
8266 return 36;
8267 case 4:
8268 // op: YMSK
8269 return 34;
8270 }
8271 break;
8272 }
8273 case PPC::XVBF16GER2:
8274 case PPC::XVBF16GER2W:
8275 case PPC::XVF16GER2:
8276 case PPC::XVF16GER2W:
8277 case PPC::XVF32GER:
8278 case PPC::XVF32GERW:
8279 case PPC::XVF64GER:
8280 case PPC::XVF64GERW:
8281 case PPC::XVI16GER2:
8282 case PPC::XVI16GER2S:
8283 case PPC::XVI16GER2SW:
8284 case PPC::XVI16GER2W:
8285 case PPC::XVI4GER8:
8286 case PPC::XVI4GER8W:
8287 case PPC::XVI8GER4:
8288 case PPC::XVI8GER4W: {
8289 switch (OpNum) {
8290 case 0:
8291 // op: AT
8292 return 23;
8293 case 1:
8294 // op: XA
8295 return 2;
8296 case 2:
8297 // op: XB
8298 return 1;
8299 }
8300 break;
8301 }
8302 case PPC::PMDMXVI8GERX4: {
8303 switch (OpNum) {
8304 case 0:
8305 // op: AT
8306 return 23;
8307 case 1:
8308 // op: XAp
8309 return 2;
8310 case 2:
8311 // op: XB
8312 return 1;
8313 case 3:
8314 // op: XMSK
8315 return 36;
8316 case 4:
8317 // op: YMSK
8318 return 32;
8319 case 5:
8320 // op: PMSK
8321 return 44;
8322 }
8323 break;
8324 }
8325 case PPC::PMDMXVBF16GERX2:
8326 case PPC::PMDMXVF16GERX2: {
8327 switch (OpNum) {
8328 case 0:
8329 // op: AT
8330 return 23;
8331 case 1:
8332 // op: XAp
8333 return 2;
8334 case 2:
8335 // op: XB
8336 return 1;
8337 case 3:
8338 // op: XMSK
8339 return 36;
8340 case 4:
8341 // op: YMSK
8342 return 32;
8343 case 5:
8344 // op: PMSK
8345 return 46;
8346 }
8347 break;
8348 }
8349 case PPC::DMXVBF16GERX2:
8350 case PPC::DMXVF16GERX2:
8351 case PPC::DMXVI8GERX4: {
8352 switch (OpNum) {
8353 case 0:
8354 // op: AT
8355 return 23;
8356 case 1:
8357 // op: XAp
8358 return 2;
8359 case 2:
8360 // op: XB
8361 return 1;
8362 }
8363 break;
8364 }
8365 case PPC::DMXXINSTDMR512:
8366 case PPC::DMXXINSTDMR512_HI: {
8367 switch (OpNum) {
8368 case 0:
8369 // op: AT
8370 return 23;
8371 case 1:
8372 // op: XAp
8373 return 2;
8374 case 2:
8375 // op: XBp
8376 return 1;
8377 }
8378 break;
8379 }
8380 case PPC::DMXXINSTDMR256: {
8381 switch (OpNum) {
8382 case 0:
8383 // op: AT
8384 return 23;
8385 case 1:
8386 // op: XBp
8387 return 1;
8388 case 2:
8389 // op: P
8390 return 11;
8391 }
8392 break;
8393 }
8394 case PPC::DMSHA2HASH: {
8395 switch (OpNum) {
8396 case 0:
8397 // op: AT
8398 return 23;
8399 case 2:
8400 // op: AB
8401 return 13;
8402 case 3:
8403 // op: T
8404 return 21;
8405 }
8406 break;
8407 }
8408 case PPC::DMXOR: {
8409 switch (OpNum) {
8410 case 0:
8411 // op: AT
8412 return 23;
8413 case 2:
8414 // op: AB
8415 return 13;
8416 }
8417 break;
8418 }
8419 case PPC::PMXVI4GER8PP:
8420 case PPC::PMXVI4GER8WPP: {
8421 switch (OpNum) {
8422 case 0:
8423 // op: AT
8424 return 23;
8425 case 2:
8426 // op: XA
8427 return 2;
8428 case 3:
8429 // op: XB
8430 return 1;
8431 case 4:
8432 // op: XMSK
8433 return 36;
8434 case 5:
8435 // op: YMSK
8436 return 32;
8437 case 6:
8438 // op: PMSK
8439 return 40;
8440 }
8441 break;
8442 }
8443 case PPC::PMXVI8GER4PP:
8444 case PPC::PMXVI8GER4SPP:
8445 case PPC::PMXVI8GER4WPP:
8446 case PPC::PMXVI8GER4WSPP: {
8447 switch (OpNum) {
8448 case 0:
8449 // op: AT
8450 return 23;
8451 case 2:
8452 // op: XA
8453 return 2;
8454 case 3:
8455 // op: XB
8456 return 1;
8457 case 4:
8458 // op: XMSK
8459 return 36;
8460 case 5:
8461 // op: YMSK
8462 return 32;
8463 case 6:
8464 // op: PMSK
8465 return 44;
8466 }
8467 break;
8468 }
8469 case PPC::PMXVBF16GER2NN:
8470 case PPC::PMXVBF16GER2NP:
8471 case PPC::PMXVBF16GER2PN:
8472 case PPC::PMXVBF16GER2PP:
8473 case PPC::PMXVBF16GER2WNN:
8474 case PPC::PMXVBF16GER2WNP:
8475 case PPC::PMXVBF16GER2WPN:
8476 case PPC::PMXVBF16GER2WPP:
8477 case PPC::PMXVF16GER2NN:
8478 case PPC::PMXVF16GER2NP:
8479 case PPC::PMXVF16GER2PN:
8480 case PPC::PMXVF16GER2PP:
8481 case PPC::PMXVF16GER2WNN:
8482 case PPC::PMXVF16GER2WNP:
8483 case PPC::PMXVF16GER2WPN:
8484 case PPC::PMXVF16GER2WPP:
8485 case PPC::PMXVI16GER2PP:
8486 case PPC::PMXVI16GER2SPP:
8487 case PPC::PMXVI16GER2SWPP:
8488 case PPC::PMXVI16GER2WPP: {
8489 switch (OpNum) {
8490 case 0:
8491 // op: AT
8492 return 23;
8493 case 2:
8494 // op: XA
8495 return 2;
8496 case 3:
8497 // op: XB
8498 return 1;
8499 case 4:
8500 // op: XMSK
8501 return 36;
8502 case 5:
8503 // op: YMSK
8504 return 32;
8505 case 6:
8506 // op: PMSK
8507 return 46;
8508 }
8509 break;
8510 }
8511 case PPC::PMXVF32GERNN:
8512 case PPC::PMXVF32GERNP:
8513 case PPC::PMXVF32GERPN:
8514 case PPC::PMXVF32GERPP:
8515 case PPC::PMXVF32GERWNN:
8516 case PPC::PMXVF32GERWNP:
8517 case PPC::PMXVF32GERWPN:
8518 case PPC::PMXVF32GERWPP: {
8519 switch (OpNum) {
8520 case 0:
8521 // op: AT
8522 return 23;
8523 case 2:
8524 // op: XA
8525 return 2;
8526 case 3:
8527 // op: XB
8528 return 1;
8529 case 4:
8530 // op: XMSK
8531 return 36;
8532 case 5:
8533 // op: YMSK
8534 return 32;
8535 }
8536 break;
8537 }
8538 case PPC::PMXVF64GERNN:
8539 case PPC::PMXVF64GERNP:
8540 case PPC::PMXVF64GERPN:
8541 case PPC::PMXVF64GERPP:
8542 case PPC::PMXVF64GERWNN:
8543 case PPC::PMXVF64GERWNP:
8544 case PPC::PMXVF64GERWPN:
8545 case PPC::PMXVF64GERWPP: {
8546 switch (OpNum) {
8547 case 0:
8548 // op: AT
8549 return 23;
8550 case 2:
8551 // op: XA
8552 return 2;
8553 case 3:
8554 // op: XB
8555 return 1;
8556 case 4:
8557 // op: XMSK
8558 return 36;
8559 case 5:
8560 // op: YMSK
8561 return 34;
8562 }
8563 break;
8564 }
8565 case PPC::XVBF16GER2NN:
8566 case PPC::XVBF16GER2NP:
8567 case PPC::XVBF16GER2PN:
8568 case PPC::XVBF16GER2PP:
8569 case PPC::XVBF16GER2WNN:
8570 case PPC::XVBF16GER2WNP:
8571 case PPC::XVBF16GER2WPN:
8572 case PPC::XVBF16GER2WPP:
8573 case PPC::XVF16GER2NN:
8574 case PPC::XVF16GER2NP:
8575 case PPC::XVF16GER2PN:
8576 case PPC::XVF16GER2PP:
8577 case PPC::XVF16GER2WNN:
8578 case PPC::XVF16GER2WNP:
8579 case PPC::XVF16GER2WPN:
8580 case PPC::XVF16GER2WPP:
8581 case PPC::XVF32GERNN:
8582 case PPC::XVF32GERNP:
8583 case PPC::XVF32GERPN:
8584 case PPC::XVF32GERPP:
8585 case PPC::XVF32GERWNN:
8586 case PPC::XVF32GERWNP:
8587 case PPC::XVF32GERWPN:
8588 case PPC::XVF32GERWPP:
8589 case PPC::XVF64GERNN:
8590 case PPC::XVF64GERNP:
8591 case PPC::XVF64GERPN:
8592 case PPC::XVF64GERPP:
8593 case PPC::XVF64GERWNN:
8594 case PPC::XVF64GERWNP:
8595 case PPC::XVF64GERWPN:
8596 case PPC::XVF64GERWPP:
8597 case PPC::XVI16GER2PP:
8598 case PPC::XVI16GER2SPP:
8599 case PPC::XVI16GER2SWPP:
8600 case PPC::XVI16GER2WPP:
8601 case PPC::XVI4GER8PP:
8602 case PPC::XVI4GER8WPP:
8603 case PPC::XVI8GER4PP:
8604 case PPC::XVI8GER4SPP:
8605 case PPC::XVI8GER4WPP:
8606 case PPC::XVI8GER4WSPP: {
8607 switch (OpNum) {
8608 case 0:
8609 // op: AT
8610 return 23;
8611 case 2:
8612 // op: XA
8613 return 2;
8614 case 3:
8615 // op: XB
8616 return 1;
8617 }
8618 break;
8619 }
8620 case PPC::PMDMXVI8GERX4PP:
8621 case PPC::PMDMXVI8GERX4SPP: {
8622 switch (OpNum) {
8623 case 0:
8624 // op: AT
8625 return 23;
8626 case 2:
8627 // op: XAp
8628 return 2;
8629 case 3:
8630 // op: XB
8631 return 1;
8632 case 4:
8633 // op: XMSK
8634 return 36;
8635 case 5:
8636 // op: YMSK
8637 return 32;
8638 case 6:
8639 // op: PMSK
8640 return 44;
8641 }
8642 break;
8643 }
8644 case PPC::PMDMXVBF16GERX2NN:
8645 case PPC::PMDMXVBF16GERX2NP:
8646 case PPC::PMDMXVBF16GERX2PN:
8647 case PPC::PMDMXVBF16GERX2PP:
8648 case PPC::PMDMXVF16GERX2NN:
8649 case PPC::PMDMXVF16GERX2NP:
8650 case PPC::PMDMXVF16GERX2PN:
8651 case PPC::PMDMXVF16GERX2PP: {
8652 switch (OpNum) {
8653 case 0:
8654 // op: AT
8655 return 23;
8656 case 2:
8657 // op: XAp
8658 return 2;
8659 case 3:
8660 // op: XB
8661 return 1;
8662 case 4:
8663 // op: XMSK
8664 return 36;
8665 case 5:
8666 // op: YMSK
8667 return 32;
8668 case 6:
8669 // op: PMSK
8670 return 46;
8671 }
8672 break;
8673 }
8674 case PPC::DMXVBF16GERX2NN:
8675 case PPC::DMXVBF16GERX2NP:
8676 case PPC::DMXVBF16GERX2PN:
8677 case PPC::DMXVBF16GERX2PP:
8678 case PPC::DMXVF16GERX2NN:
8679 case PPC::DMXVF16GERX2NP:
8680 case PPC::DMXVF16GERX2PN:
8681 case PPC::DMXVF16GERX2PP:
8682 case PPC::DMXVI8GERX4PP:
8683 case PPC::DMXVI8GERX4SPP: {
8684 switch (OpNum) {
8685 case 0:
8686 // op: AT
8687 return 23;
8688 case 2:
8689 // op: XAp
8690 return 2;
8691 case 3:
8692 // op: XB
8693 return 1;
8694 }
8695 break;
8696 }
8697 case PPC::DMXXSHAPAD: {
8698 switch (OpNum) {
8699 case 0:
8700 // op: AT
8701 return 23;
8702 case 2:
8703 // op: XB
8704 return 1;
8705 case 3:
8706 // op: ID
8707 return 19;
8708 case 4:
8709 // op: E
8710 return 18;
8711 case 5:
8712 // op: BL
8713 return 16;
8714 }
8715 break;
8716 }
8717 case PPC::DMSETDMRZ:
8718 case PPC::DMXXSETACCZ:
8719 case PPC::XXMTACC:
8720 case PPC::XXMTACCW:
8721 case PPC::XXSETACCZ: {
8722 switch (OpNum) {
8723 case 0:
8724 // op: AT
8725 return 23;
8726 }
8727 break;
8728 }
8729 case PPC::DMSHA3HASH: {
8730 switch (OpNum) {
8731 case 0:
8732 // op: ATp
8733 return 24;
8734 case 2:
8735 // op: SR
8736 return 11;
8737 }
8738 break;
8739 }
8740 case PPC::BCLalways:
8741 case PPC::BDNZ:
8742 case PPC::BDNZ8:
8743 case PPC::BDNZA:
8744 case PPC::BDNZAm:
8745 case PPC::BDNZAp:
8746 case PPC::BDNZL:
8747 case PPC::BDNZLA:
8748 case PPC::BDNZLAm:
8749 case PPC::BDNZLAp:
8750 case PPC::BDNZLm:
8751 case PPC::BDNZLp:
8752 case PPC::BDNZm:
8753 case PPC::BDNZp:
8754 case PPC::BDZ:
8755 case PPC::BDZ8:
8756 case PPC::BDZA:
8757 case PPC::BDZAm:
8758 case PPC::BDZAp:
8759 case PPC::BDZL:
8760 case PPC::BDZLA:
8761 case PPC::BDZLAm:
8762 case PPC::BDZLAp:
8763 case PPC::BDZLm:
8764 case PPC::BDZLp:
8765 case PPC::BDZm:
8766 case PPC::BDZp: {
8767 switch (OpNum) {
8768 case 0:
8769 // op: BD
8770 return 2;
8771 }
8772 break;
8773 }
8774 case PPC::MCRF:
8775 case PPC::MCRFS: {
8776 switch (OpNum) {
8777 case 0:
8778 // op: BF
8779 return 23;
8780 case 1:
8781 // op: BFA
8782 return 18;
8783 }
8784 break;
8785 }
8786 case PPC::XSTSTDCQP: {
8787 switch (OpNum) {
8788 case 0:
8789 // op: BF
8790 return 23;
8791 case 1:
8792 // op: DCMX
8793 return 16;
8794 case 2:
8795 // op: VB
8796 return 11;
8797 }
8798 break;
8799 }
8800 case PPC::XSTSTDCDP:
8801 case PPC::XSTSTDCSP: {
8802 switch (OpNum) {
8803 case 0:
8804 // op: BF
8805 return 23;
8806 case 1:
8807 // op: DCMX
8808 return 16;
8809 case 2:
8810 // op: XB
8811 return 1;
8812 }
8813 break;
8814 }
8815 case PPC::DTSTDC:
8816 case PPC::DTSTDCQ:
8817 case PPC::DTSTDG:
8818 case PPC::DTSTDGQ: {
8819 switch (OpNum) {
8820 case 0:
8821 // op: BF
8822 return 23;
8823 case 1:
8824 // op: FRA
8825 return 16;
8826 case 2:
8827 // op: DCM
8828 return 10;
8829 }
8830 break;
8831 }
8832 case PPC::CMPRB:
8833 case PPC::CMPRB8: {
8834 switch (OpNum) {
8835 case 0:
8836 // op: BF
8837 return 23;
8838 case 1:
8839 // op: L
8840 return 21;
8841 case 2:
8842 // op: RA
8843 return 16;
8844 case 3:
8845 // op: RB
8846 return 11;
8847 }
8848 break;
8849 }
8850 case PPC::CMPDI:
8851 case PPC::CMPLDI:
8852 case PPC::CMPLWI:
8853 case PPC::CMPWI: {
8854 switch (OpNum) {
8855 case 0:
8856 // op: BF
8857 return 23;
8858 case 1:
8859 // op: RA
8860 return 16;
8861 case 2:
8862 // op: D
8863 return 0;
8864 }
8865 break;
8866 }
8867 case PPC::CMPD:
8868 case PPC::CMPEQB:
8869 case PPC::CMPLD:
8870 case PPC::CMPLW:
8871 case PPC::CMPW:
8872 case PPC::DCMPO:
8873 case PPC::DCMPOQ:
8874 case PPC::DCMPU:
8875 case PPC::DCMPUQ:
8876 case PPC::DTSTEX:
8877 case PPC::DTSTEXQ:
8878 case PPC::DTSTSF:
8879 case PPC::DTSTSFQ:
8880 case PPC::FCMPOD:
8881 case PPC::FCMPOS:
8882 case PPC::FCMPUD:
8883 case PPC::FCMPUS:
8884 case PPC::FTDIV:
8885 case PPC::XSCMPEXPQP:
8886 case PPC::XSCMPOQP:
8887 case PPC::XSCMPUQP: {
8888 switch (OpNum) {
8889 case 0:
8890 // op: BF
8891 return 23;
8892 case 1:
8893 // op: RA
8894 return 16;
8895 case 2:
8896 // op: RB
8897 return 11;
8898 }
8899 break;
8900 }
8901 case PPC::FTSQRT: {
8902 switch (OpNum) {
8903 case 0:
8904 // op: BF
8905 return 23;
8906 case 1:
8907 // op: RB
8908 return 11;
8909 }
8910 break;
8911 }
8912 case PPC::MTFSFIb: {
8913 switch (OpNum) {
8914 case 0:
8915 // op: BF
8916 return 23;
8917 case 1:
8918 // op: U
8919 return 12;
8920 }
8921 break;
8922 }
8923 case PPC::DTSTSFI:
8924 case PPC::DTSTSFIQ: {
8925 switch (OpNum) {
8926 case 0:
8927 // op: BF
8928 return 23;
8929 case 1:
8930 // op: UIM
8931 return 16;
8932 case 2:
8933 // op: FRB
8934 return 11;
8935 }
8936 break;
8937 }
8938 case PPC::VCMPSQ:
8939 case PPC::VCMPUQ: {
8940 switch (OpNum) {
8941 case 0:
8942 // op: BF
8943 return 23;
8944 case 1:
8945 // op: VA
8946 return 16;
8947 case 2:
8948 // op: VB
8949 return 11;
8950 }
8951 break;
8952 }
8953 case PPC::XVTLSBB: {
8954 switch (OpNum) {
8955 case 0:
8956 // op: BF
8957 return 23;
8958 case 1:
8959 // op: XB
8960 return 1;
8961 }
8962 break;
8963 }
8964 case PPC::MTFSFI:
8965 case PPC::MTFSFI_rec: {
8966 switch (OpNum) {
8967 case 0:
8968 // op: BF
8969 return 23;
8970 case 2:
8971 // op: W
8972 return 16;
8973 case 1:
8974 // op: U
8975 return 12;
8976 }
8977 break;
8978 }
8979 case PPC::MCRXRX:
8980 case PPC::TCHECK: {
8981 switch (OpNum) {
8982 case 0:
8983 // op: BF
8984 return 23;
8985 }
8986 break;
8987 }
8988 case PPC::BC:
8989 case PPC::BCL:
8990 case PPC::BCLn:
8991 case PPC::BCn: {
8992 switch (OpNum) {
8993 case 0:
8994 // op: BI
8995 return 16;
8996 case 1:
8997 // op: BD
8998 return 2;
8999 }
9000 break;
9001 }
9002 case PPC::BCCTR:
9003 case PPC::BCCTR8:
9004 case PPC::BCCTR8n:
9005 case PPC::BCCTRL:
9006 case PPC::BCCTRL8:
9007 case PPC::BCCTRL8n:
9008 case PPC::BCCTRLn:
9009 case PPC::BCCTRn:
9010 case PPC::BCLR:
9011 case PPC::BCLRL:
9012 case PPC::BCLRLn:
9013 case PPC::BCLRn: {
9014 switch (OpNum) {
9015 case 0:
9016 // op: BI
9017 return 16;
9018 }
9019 break;
9020 }
9021 case PPC::BCC:
9022 case PPC::BCCA:
9023 case PPC::BCCL:
9024 case PPC::BCCLA:
9025 case PPC::CTRL_DEP: {
9026 switch (OpNum) {
9027 case 0:
9028 // op: BIBO
9029 return 16;
9030 case 1:
9031 // op: CR
9032 return 18;
9033 case 2:
9034 // op: BD
9035 return 2;
9036 }
9037 break;
9038 }
9039 case PPC::BCCCTR:
9040 case PPC::BCCCTR8:
9041 case PPC::BCCCTRL:
9042 case PPC::BCCCTRL8:
9043 case PPC::BCCLR:
9044 case PPC::BCCLRL: {
9045 switch (OpNum) {
9046 case 0:
9047 // op: BIBO
9048 return 16;
9049 case 1:
9050 // op: CR
9051 return 18;
9052 }
9053 break;
9054 }
9055 case PPC::gBC:
9056 case PPC::gBCA:
9057 case PPC::gBCL:
9058 case PPC::gBCLA: {
9059 switch (OpNum) {
9060 case 0:
9061 // op: BO
9062 return 21;
9063 case 1:
9064 // op: BI
9065 return 16;
9066 case 2:
9067 // op: BD
9068 return 2;
9069 }
9070 break;
9071 }
9072 case PPC::gBCCTR:
9073 case PPC::gBCCTRL:
9074 case PPC::gBCLR:
9075 case PPC::gBCLRL: {
9076 switch (OpNum) {
9077 case 0:
9078 // op: BO
9079 return 21;
9080 case 1:
9081 // op: BI
9082 return 16;
9083 case 2:
9084 // op: BH
9085 return 11;
9086 }
9087 break;
9088 }
9089 case PPC::gBCAat:
9090 case PPC::gBCLAat:
9091 case PPC::gBCLat:
9092 case PPC::gBCat: {
9093 switch (OpNum) {
9094 case 0:
9095 // op: BO
9096 return 23;
9097 case 1:
9098 // op: at
9099 return 21;
9100 case 2:
9101 // op: BI
9102 return 16;
9103 case 3:
9104 // op: BD
9105 return 2;
9106 }
9107 break;
9108 }
9109 case PPC::XSCMPEXPDP:
9110 case PPC::XSCMPODP:
9111 case PPC::XSCMPUDP:
9112 case PPC::XSTDIVDP:
9113 case PPC::XVTDIVDP:
9114 case PPC::XVTDIVSP: {
9115 switch (OpNum) {
9116 case 0:
9117 // op: CR
9118 return 23;
9119 case 1:
9120 // op: XA
9121 return 2;
9122 case 2:
9123 // op: XB
9124 return 1;
9125 }
9126 break;
9127 }
9128 case PPC::XSTSQRTDP:
9129 case PPC::XVTSQRTDP:
9130 case PPC::XVTSQRTSP: {
9131 switch (OpNum) {
9132 case 0:
9133 // op: CR
9134 return 23;
9135 case 1:
9136 // op: XB
9137 return 1;
9138 }
9139 break;
9140 }
9141 case PPC::CRSET:
9142 case PPC::CRUNSET: {
9143 switch (OpNum) {
9144 case 0:
9145 // op: CRD
9146 return 11;
9147 }
9148 break;
9149 }
9150 case PPC::CRNOT: {
9151 switch (OpNum) {
9152 case 0:
9153 // op: CRD
9154 return 21;
9155 case 1:
9156 // op: CRA
9157 return 11;
9158 }
9159 break;
9160 }
9161 case PPC::CRAND:
9162 case PPC::CRANDC:
9163 case PPC::CREQV:
9164 case PPC::CRNAND:
9165 case PPC::CRNOR:
9166 case PPC::CROR:
9167 case PPC::CRORC:
9168 case PPC::CRXOR: {
9169 switch (OpNum) {
9170 case 0:
9171 // op: CRD
9172 return 21;
9173 case 1:
9174 // op: CRA
9175 return 16;
9176 case 2:
9177 // op: CRB
9178 return 11;
9179 }
9180 break;
9181 }
9182 case PPC::ICBLC:
9183 case PPC::ICBLQ:
9184 case PPC::ICBT:
9185 case PPC::ICBTLS: {
9186 switch (OpNum) {
9187 case 0:
9188 // op: CT
9189 return 21;
9190 case 1:
9191 // op: RA
9192 return 16;
9193 case 2:
9194 // op: RB
9195 return 11;
9196 }
9197 break;
9198 }
9199 case PPC::WRTEEI: {
9200 switch (OpNum) {
9201 case 0:
9202 // op: E
9203 return 15;
9204 }
9205 break;
9206 }
9207 case PPC::MTFSFb: {
9208 switch (OpNum) {
9209 case 0:
9210 // op: FM
9211 return 17;
9212 case 1:
9213 // op: RT
9214 return 11;
9215 }
9216 break;
9217 }
9218 case PPC::MTFSB0:
9219 case PPC::MTFSB1: {
9220 switch (OpNum) {
9221 case 0:
9222 // op: FM
9223 return 21;
9224 }
9225 break;
9226 }
9227 case PPC::DQUA:
9228 case PPC::DQUAQ:
9229 case PPC::DQUAQ_rec:
9230 case PPC::DQUA_rec:
9231 case PPC::DRRND:
9232 case PPC::DRRNDQ:
9233 case PPC::DRRNDQ_rec:
9234 case PPC::DRRND_rec: {
9235 switch (OpNum) {
9236 case 0:
9237 // op: FRT
9238 return 21;
9239 case 1:
9240 // op: FRA
9241 return 16;
9242 case 2:
9243 // op: FRB
9244 return 11;
9245 case 3:
9246 // op: RMC
9247 return 9;
9248 }
9249 break;
9250 }
9251 case PPC::FADD:
9252 case PPC::FADDS:
9253 case PPC::FADDS_rec:
9254 case PPC::FADD_rec:
9255 case PPC::FDIV:
9256 case PPC::FDIVS:
9257 case PPC::FDIVS_rec:
9258 case PPC::FDIV_rec:
9259 case PPC::FSUB:
9260 case PPC::FSUBS:
9261 case PPC::FSUBS_rec:
9262 case PPC::FSUB_rec:
9263 case PPC::XSIEXPQP: {
9264 switch (OpNum) {
9265 case 0:
9266 // op: FRT
9267 return 21;
9268 case 1:
9269 // op: FRA
9270 return 16;
9271 case 2:
9272 // op: FRB
9273 return 11;
9274 }
9275 break;
9276 }
9277 case PPC::FMADD:
9278 case PPC::FMADDS:
9279 case PPC::FMADDS_rec:
9280 case PPC::FMADD_rec:
9281 case PPC::FMSUB:
9282 case PPC::FMSUBS:
9283 case PPC::FMSUBS_rec:
9284 case PPC::FMSUB_rec:
9285 case PPC::FNMADD:
9286 case PPC::FNMADDS:
9287 case PPC::FNMADDS_rec:
9288 case PPC::FNMADD_rec:
9289 case PPC::FNMSUB:
9290 case PPC::FNMSUBS:
9291 case PPC::FNMSUBS_rec:
9292 case PPC::FNMSUB_rec:
9293 case PPC::FSELD:
9294 case PPC::FSELD_rec:
9295 case PPC::FSELS:
9296 case PPC::FSELS_rec: {
9297 switch (OpNum) {
9298 case 0:
9299 // op: FRT
9300 return 21;
9301 case 1:
9302 // op: FRA
9303 return 16;
9304 case 2:
9305 // op: FRC
9306 return 6;
9307 case 3:
9308 // op: FRB
9309 return 11;
9310 }
9311 break;
9312 }
9313 case PPC::FMUL:
9314 case PPC::FMULS:
9315 case PPC::FMULS_rec:
9316 case PPC::FMUL_rec: {
9317 switch (OpNum) {
9318 case 0:
9319 // op: FRT
9320 return 21;
9321 case 1:
9322 // op: FRA
9323 return 16;
9324 case 2:
9325 // op: FRC
9326 return 6;
9327 }
9328 break;
9329 }
9330 case PPC::DSCLI:
9331 case PPC::DSCLIQ:
9332 case PPC::DSCLIQ_rec:
9333 case PPC::DSCLI_rec:
9334 case PPC::DSCRI:
9335 case PPC::DSCRIQ:
9336 case PPC::DSCRIQ_rec:
9337 case PPC::DSCRI_rec: {
9338 switch (OpNum) {
9339 case 0:
9340 // op: FRT
9341 return 21;
9342 case 1:
9343 // op: FRA
9344 return 16;
9345 case 2:
9346 // op: SH
9347 return 10;
9348 }
9349 break;
9350 }
9351 case PPC::DRINTN:
9352 case PPC::DRINTNQ:
9353 case PPC::DRINTNQ_rec:
9354 case PPC::DRINTN_rec:
9355 case PPC::DRINTX:
9356 case PPC::DRINTXQ:
9357 case PPC::DRINTXQ_rec:
9358 case PPC::DRINTX_rec: {
9359 switch (OpNum) {
9360 case 0:
9361 // op: FRT
9362 return 21;
9363 case 1:
9364 // op: R
9365 return 16;
9366 case 2:
9367 // op: FRB
9368 return 11;
9369 case 3:
9370 // op: RMC
9371 return 9;
9372 }
9373 break;
9374 }
9375 case PPC::DQUAI:
9376 case PPC::DQUAIQ:
9377 case PPC::DQUAIQ_rec:
9378 case PPC::DQUAI_rec: {
9379 switch (OpNum) {
9380 case 0:
9381 // op: FRT
9382 return 21;
9383 case 2:
9384 // op: FRB
9385 return 11;
9386 case 3:
9387 // op: RMC
9388 return 9;
9389 case 1:
9390 // op: TE
9391 return 16;
9392 }
9393 break;
9394 }
9395 case PPC::MTCRF:
9396 case PPC::MTCRF8: {
9397 switch (OpNum) {
9398 case 0:
9399 // op: FXM
9400 return 12;
9401 case 1:
9402 // op: RST
9403 return 21;
9404 }
9405 break;
9406 }
9407 case PPC::WAITP10: {
9408 switch (OpNum) {
9409 case 0:
9410 // op: L
9411 return 21;
9412 case 1:
9413 // op: PL
9414 return 16;
9415 }
9416 break;
9417 }
9418 case PPC::SYNCP10: {
9419 switch (OpNum) {
9420 case 0:
9421 // op: L
9422 return 21;
9423 case 1:
9424 // op: SC
9425 return 16;
9426 }
9427 break;
9428 }
9429 case PPC::SYNC:
9430 case PPC::TSR:
9431 case PPC::WAIT: {
9432 switch (OpNum) {
9433 case 0:
9434 // op: L
9435 return 21;
9436 }
9437 break;
9438 }
9439 case PPC::SC:
9440 case PPC::SCV: {
9441 switch (OpNum) {
9442 case 0:
9443 // op: LEV
9444 return 5;
9445 }
9446 break;
9447 }
9448 case PPC::B:
9449 case PPC::BA:
9450 case PPC::BL:
9451 case PPC::BL8:
9452 case PPC::BL8_NOTOC:
9453 case PPC::BL8_NOTOC_RM:
9454 case PPC::BL8_NOTOC_TLS:
9455 case PPC::BL8_RM:
9456 case PPC::BL8_TLS:
9457 case PPC::BL8_TLS_:
9458 case PPC::BLA:
9459 case PPC::BLA8:
9460 case PPC::BLA8_RM:
9461 case PPC::BLA_RM:
9462 case PPC::BL_RM:
9463 case PPC::BL_TLS:
9464 case PPC::TAILB:
9465 case PPC::TAILB8:
9466 case PPC::TAILBA:
9467 case PPC::TAILBA8: {
9468 switch (OpNum) {
9469 case 0:
9470 // op: LI
9471 return 2;
9472 }
9473 break;
9474 }
9475 case PPC::BL8_LDinto_toc:
9476 case PPC::BL8_LDinto_toc_RM:
9477 case PPC::BL8_NOP:
9478 case PPC::BL8_NOP_RM:
9479 case PPC::BL8_NOP_TLS:
9480 case PPC::BLA8_NOP:
9481 case PPC::BLA8_NOP_RM:
9482 case PPC::BL_LWZinto_toc:
9483 case PPC::BL_LWZinto_toc_RM:
9484 case PPC::BL_NOP:
9485 case PPC::BL_NOP_RM: {
9486 switch (OpNum) {
9487 case 0:
9488 // op: LI
9489 return 34;
9490 }
9491 break;
9492 }
9493 case PPC::MBAR: {
9494 switch (OpNum) {
9495 case 0:
9496 // op: MO
9497 return 21;
9498 }
9499 break;
9500 }
9501 case PPC::TBEGIN: {
9502 switch (OpNum) {
9503 case 0:
9504 // op: R
9505 return 21;
9506 }
9507 break;
9508 }
9509 case PPC::CP_COPY:
9510 case PPC::CP_COPY8:
9511 case PPC::DCBA:
9512 case PPC::DCBFEP:
9513 case PPC::DCBI:
9514 case PPC::DCBST:
9515 case PPC::DCBSTEP:
9516 case PPC::DCBZ:
9517 case PPC::DCBZEP:
9518 case PPC::DCBZL:
9519 case PPC::DCBZLEP:
9520 case PPC::DCCCI:
9521 case PPC::ICBI:
9522 case PPC::ICBIEP:
9523 case PPC::ICCCI:
9524 case PPC::TLBIVAX:
9525 case PPC::TLBSX: {
9526 switch (OpNum) {
9527 case 0:
9528 // op: RA
9529 return 16;
9530 case 1:
9531 // op: RB
9532 return 11;
9533 }
9534 break;
9535 }
9536 case PPC::RLWNM:
9537 case PPC::RLWNM8:
9538 case PPC::RLWNM8_rec:
9539 case PPC::RLWNM_rec: {
9540 switch (OpNum) {
9541 case 0:
9542 // op: RA
9543 return 16;
9544 case 1:
9545 // op: RS
9546 return 21;
9547 case 2:
9548 // op: RB
9549 return 11;
9550 case 3:
9551 // op: MB
9552 return 6;
9553 case 4:
9554 // op: ME
9555 return 1;
9556 }
9557 break;
9558 }
9559 case PPC::RLDCL:
9560 case PPC::RLDCL_rec:
9561 case PPC::RLDCR:
9562 case PPC::RLDCR_rec: {
9563 switch (OpNum) {
9564 case 0:
9565 // op: RA
9566 return 16;
9567 case 1:
9568 // op: RS
9569 return 21;
9570 case 2:
9571 // op: RB
9572 return 11;
9573 case 3:
9574 // op: MBE
9575 return 5;
9576 }
9577 break;
9578 }
9579 case PPC::RLWINM:
9580 case PPC::RLWINM8:
9581 case PPC::RLWINM8_rec:
9582 case PPC::RLWINM_rec: {
9583 switch (OpNum) {
9584 case 0:
9585 // op: RA
9586 return 16;
9587 case 1:
9588 // op: RS
9589 return 21;
9590 case 2:
9591 // op: SH
9592 return 11;
9593 case 3:
9594 // op: MB
9595 return 6;
9596 case 4:
9597 // op: ME
9598 return 1;
9599 }
9600 break;
9601 }
9602 case PPC::RLDIC:
9603 case PPC::RLDICL:
9604 case PPC::RLDICL_32:
9605 case PPC::RLDICL_32_64:
9606 case PPC::RLDICL_32_rec:
9607 case PPC::RLDICL_rec:
9608 case PPC::RLDICR:
9609 case PPC::RLDICR_32:
9610 case PPC::RLDICR_rec:
9611 case PPC::RLDIC_rec: {
9612 switch (OpNum) {
9613 case 0:
9614 // op: RA
9615 return 16;
9616 case 1:
9617 // op: RS
9618 return 21;
9619 case 2:
9620 // op: SH
9621 return 1;
9622 case 3:
9623 // op: MBE
9624 return 5;
9625 }
9626 break;
9627 }
9628 case PPC::EXTSWSLI:
9629 case PPC::EXTSWSLI_32_64:
9630 case PPC::EXTSWSLI_32_64_rec:
9631 case PPC::EXTSWSLI_rec:
9632 case PPC::SRADI:
9633 case PPC::SRADI_32:
9634 case PPC::SRADI_rec: {
9635 switch (OpNum) {
9636 case 0:
9637 // op: RA
9638 return 16;
9639 case 1:
9640 // op: RS
9641 return 21;
9642 case 2:
9643 // op: SH
9644 return 1;
9645 }
9646 break;
9647 }
9648 case PPC::ANDI8_rec:
9649 case PPC::ANDIS8_rec:
9650 case PPC::ANDIS_rec:
9651 case PPC::ANDI_rec:
9652 case PPC::ORI:
9653 case PPC::ORI8:
9654 case PPC::ORIS:
9655 case PPC::ORIS8:
9656 case PPC::XORI:
9657 case PPC::XORI8:
9658 case PPC::XORIS:
9659 case PPC::XORIS8: {
9660 switch (OpNum) {
9661 case 0:
9662 // op: RA
9663 return 16;
9664 case 1:
9665 // op: RST
9666 return 21;
9667 case 2:
9668 // op: D
9669 return 0;
9670 }
9671 break;
9672 }
9673 case PPC::AND:
9674 case PPC::AND8:
9675 case PPC::AND8_rec:
9676 case PPC::ANDC:
9677 case PPC::ANDC8:
9678 case PPC::ANDC8_rec:
9679 case PPC::ANDC_rec:
9680 case PPC::AND_rec:
9681 case PPC::BPERMD:
9682 case PPC::CFUGED:
9683 case PPC::CMPB:
9684 case PPC::CMPB8:
9685 case PPC::CNTLZDM:
9686 case PPC::CNTTZDM:
9687 case PPC::EQV:
9688 case PPC::EQV8:
9689 case PPC::EQV8_rec:
9690 case PPC::EQV_rec:
9691 case PPC::NAND:
9692 case PPC::NAND8:
9693 case PPC::NAND8_rec:
9694 case PPC::NAND_rec:
9695 case PPC::NOR:
9696 case PPC::NOR8:
9697 case PPC::NOR8_rec:
9698 case PPC::NOR_rec:
9699 case PPC::OR:
9700 case PPC::OR8:
9701 case PPC::OR8_rec:
9702 case PPC::ORC:
9703 case PPC::ORC8:
9704 case PPC::ORC8_rec:
9705 case PPC::ORC_rec:
9706 case PPC::OR_rec:
9707 case PPC::PDEPD:
9708 case PPC::PEXTD:
9709 case PPC::SLD:
9710 case PPC::SLD_rec:
9711 case PPC::SLW:
9712 case PPC::SLW8:
9713 case PPC::SLW8_rec:
9714 case PPC::SLW_rec:
9715 case PPC::SRAD:
9716 case PPC::SRAD_rec:
9717 case PPC::SRAW:
9718 case PPC::SRAW8:
9719 case PPC::SRAW8_rec:
9720 case PPC::SRAWI:
9721 case PPC::SRAWI8:
9722 case PPC::SRAWI8_rec:
9723 case PPC::SRAWI_rec:
9724 case PPC::SRAW_rec:
9725 case PPC::SRD:
9726 case PPC::SRD_rec:
9727 case PPC::SRW:
9728 case PPC::SRW8:
9729 case PPC::SRW8_rec:
9730 case PPC::SRW_rec:
9731 case PPC::XOR:
9732 case PPC::XOR8:
9733 case PPC::XOR8_rec:
9734 case PPC::XOR_rec: {
9735 switch (OpNum) {
9736 case 0:
9737 // op: RA
9738 return 16;
9739 case 1:
9740 // op: RST
9741 return 21;
9742 case 2:
9743 // op: RB
9744 return 11;
9745 }
9746 break;
9747 }
9748 case PPC::BRD:
9749 case PPC::BRH:
9750 case PPC::BRH8:
9751 case PPC::BRW:
9752 case PPC::BRW8:
9753 case PPC::CBCDTD:
9754 case PPC::CBCDTD8:
9755 case PPC::CDTBCD:
9756 case PPC::CDTBCD8:
9757 case PPC::CNTLZD:
9758 case PPC::CNTLZD_rec:
9759 case PPC::CNTLZW:
9760 case PPC::CNTLZW8:
9761 case PPC::CNTLZW8_rec:
9762 case PPC::CNTLZW_rec:
9763 case PPC::CNTTZD:
9764 case PPC::CNTTZD_rec:
9765 case PPC::CNTTZW:
9766 case PPC::CNTTZW8:
9767 case PPC::CNTTZW8_rec:
9768 case PPC::CNTTZW_rec:
9769 case PPC::EXTSB:
9770 case PPC::EXTSB8:
9771 case PPC::EXTSB8_32_64:
9772 case PPC::EXTSB8_rec:
9773 case PPC::EXTSB_rec:
9774 case PPC::EXTSH:
9775 case PPC::EXTSH8:
9776 case PPC::EXTSH8_32_64:
9777 case PPC::EXTSH8_rec:
9778 case PPC::EXTSH_rec:
9779 case PPC::EXTSW:
9780 case PPC::EXTSW_32:
9781 case PPC::EXTSW_32_64:
9782 case PPC::EXTSW_32_64_rec:
9783 case PPC::EXTSW_rec:
9784 case PPC::POPCNTB:
9785 case PPC::POPCNTB8:
9786 case PPC::POPCNTD:
9787 case PPC::POPCNTW: {
9788 switch (OpNum) {
9789 case 0:
9790 // op: RA
9791 return 16;
9792 case 1:
9793 // op: RST
9794 return 21;
9795 }
9796 break;
9797 }
9798 case PPC::RLWIMI:
9799 case PPC::RLWIMI8:
9800 case PPC::RLWIMI8_rec:
9801 case PPC::RLWIMI_rec: {
9802 switch (OpNum) {
9803 case 0:
9804 // op: RA
9805 return 16;
9806 case 2:
9807 // op: RS
9808 return 21;
9809 case 3:
9810 // op: SH
9811 return 11;
9812 case 4:
9813 // op: MB
9814 return 6;
9815 case 5:
9816 // op: ME
9817 return 1;
9818 }
9819 break;
9820 }
9821 case PPC::RLDIMI:
9822 case PPC::RLDIMI_rec: {
9823 switch (OpNum) {
9824 case 0:
9825 // op: RA
9826 return 16;
9827 case 2:
9828 // op: RS
9829 return 21;
9830 case 3:
9831 // op: SH
9832 return 1;
9833 case 4:
9834 // op: MBE
9835 return 5;
9836 }
9837 break;
9838 }
9839 case PPC::TABORT:
9840 case PPC::TRECLAIM: {
9841 switch (OpNum) {
9842 case 0:
9843 // op: RA
9844 return 16;
9845 }
9846 break;
9847 }
9848 case PPC::MTLPL:
9849 case PPC::MTLPL8: {
9850 switch (OpNum) {
9851 case 0:
9852 // op: RB
9853 return 11;
9854 case 1:
9855 // op: RS
9856 return 21;
9857 }
9858 break;
9859 }
9860 case PPC::MSGSNDP:
9861 case PPC::MSGSNDP8:
9862 case PPC::SLBIE:
9863 case PPC::TLBIEL:
9864 case PPC::TLBLD:
9865 case PPC::TLBLI: {
9866 switch (OpNum) {
9867 case 0:
9868 // op: RB
9869 return 11;
9870 }
9871 break;
9872 }
9873 case PPC::VCNTMBB:
9874 case PPC::VCNTMBD:
9875 case PPC::VCNTMBH:
9876 case PPC::VCNTMBW: {
9877 switch (OpNum) {
9878 case 0:
9879 // op: RD
9880 return 21;
9881 case 1:
9882 // op: VB
9883 return 11;
9884 case 2:
9885 // op: MP
9886 return 16;
9887 }
9888 break;
9889 }
9890 case PPC::VGNB: {
9891 switch (OpNum) {
9892 case 0:
9893 // op: RD
9894 return 21;
9895 case 1:
9896 // op: VB
9897 return 11;
9898 case 2:
9899 // op: N
9900 return 16;
9901 }
9902 break;
9903 }
9904 case PPC::MTMSR:
9905 case PPC::MTMSRD: {
9906 switch (OpNum) {
9907 case 0:
9908 // op: RS
9909 return 21;
9910 case 1:
9911 // op: L
9912 return 16;
9913 }
9914 break;
9915 }
9916 case PPC::MFSRIN:
9917 case PPC::MTSRIN: {
9918 switch (OpNum) {
9919 case 0:
9920 // op: RS
9921 return 21;
9922 case 1:
9923 // op: RB
9924 return 11;
9925 }
9926 break;
9927 }
9928 case PPC::MFSR:
9929 case PPC::MTSR: {
9930 switch (OpNum) {
9931 case 0:
9932 // op: RS
9933 return 21;
9934 case 1:
9935 // op: SR
9936 return 16;
9937 }
9938 break;
9939 }
9940 case PPC::PTESYNCIO:
9941 case PPC::TLBSYNCIO:
9942 case PPC::WRTEE: {
9943 switch (OpNum) {
9944 case 0:
9945 // op: RS
9946 return 21;
9947 }
9948 break;
9949 }
9950 case PPC::SETBC:
9951 case PPC::SETBC8:
9952 case PPC::SETBCR:
9953 case PPC::SETBCR8:
9954 case PPC::SETNBC:
9955 case PPC::SETNBC8:
9956 case PPC::SETNBCR:
9957 case PPC::SETNBCR8: {
9958 switch (OpNum) {
9959 case 0:
9960 // op: RST
9961 return 21;
9962 case 1:
9963 // op: BI
9964 return 16;
9965 }
9966 break;
9967 }
9968 case PPC::LI:
9969 case PPC::LI8:
9970 case PPC::LIS:
9971 case PPC::LIS8:
9972 case PPC::PLBZ8onlypc:
9973 case PPC::PLBZonlypc:
9974 case PPC::PLDonlypc:
9975 case PPC::PLFDonlypc:
9976 case PPC::PLFSonlypc:
9977 case PPC::PLHA8onlypc:
9978 case PPC::PLHAonlypc:
9979 case PPC::PLHZ8onlypc:
9980 case PPC::PLHZonlypc:
9981 case PPC::PLWA8onlypc:
9982 case PPC::PLWAonlypc:
9983 case PPC::PLWZ8onlypc:
9984 case PPC::PLWZonlypc:
9985 case PPC::PLXSDonlypc:
9986 case PPC::PLXSSPonlypc:
9987 case PPC::PSTB8onlypc:
9988 case PPC::PSTBonlypc:
9989 case PPC::PSTDonlypc:
9990 case PPC::PSTFDonlypc:
9991 case PPC::PSTFSonlypc:
9992 case PPC::PSTH8onlypc:
9993 case PPC::PSTHonlypc:
9994 case PPC::PSTW8onlypc:
9995 case PPC::PSTWonlypc:
9996 case PPC::PSTXSDonlypc:
9997 case PPC::PSTXSSPonlypc: {
9998 switch (OpNum) {
9999 case 0:
10000 // op: RST
10001 return 21;
10002 case 1:
10003 // op: D
10004 return 0;
10005 }
10006 break;
10007 }
10008 case PPC::MFFSCDRNI: {
10009 switch (OpNum) {
10010 case 0:
10011 // op: RST
10012 return 21;
10013 case 1:
10014 // op: DRM
10015 return 11;
10016 }
10017 break;
10018 }
10019 case PPC::MFFSCDRN:
10020 case PPC::MFFSCRN: {
10021 switch (OpNum) {
10022 case 0:
10023 // op: RST
10024 return 21;
10025 case 1:
10026 // op: FRB
10027 return 11;
10028 }
10029 break;
10030 }
10031 case PPC::MFOCRF:
10032 case PPC::MFOCRF8: {
10033 switch (OpNum) {
10034 case 0:
10035 // op: RST
10036 return 21;
10037 case 1:
10038 // op: FXM
10039 return 12;
10040 }
10041 break;
10042 }
10043 case PPC::ADDI:
10044 case PPC::ADDI8:
10045 case PPC::ADDIC:
10046 case PPC::ADDIC8:
10047 case PPC::ADDIC_rec:
10048 case PPC::ADDIS:
10049 case PPC::ADDIS8:
10050 case PPC::LA:
10051 case PPC::LA8:
10052 case PPC::MULLI:
10053 case PPC::MULLI8:
10054 case PPC::SUBFIC:
10055 case PPC::SUBFIC8:
10056 case PPC::TDI:
10057 case PPC::TWI: {
10058 switch (OpNum) {
10059 case 0:
10060 // op: RST
10061 return 21;
10062 case 1:
10063 // op: RA
10064 return 16;
10065 case 2:
10066 // op: D
10067 return 0;
10068 }
10069 break;
10070 }
10071 case PPC::DADD:
10072 case PPC::DADDQ:
10073 case PPC::DADDQ_rec:
10074 case PPC::DADD_rec:
10075 case PPC::DDIV:
10076 case PPC::DDIVQ:
10077 case PPC::DDIVQ_rec:
10078 case PPC::DDIV_rec:
10079 case PPC::DIEX:
10080 case PPC::DIEXQ:
10081 case PPC::DIEXQ_rec:
10082 case PPC::DIEX_rec:
10083 case PPC::DMUL:
10084 case PPC::DMULQ:
10085 case PPC::DMULQ_rec:
10086 case PPC::DMUL_rec:
10087 case PPC::DSUB:
10088 case PPC::DSUBQ:
10089 case PPC::DSUBQ_rec:
10090 case PPC::DSUB_rec:
10091 case PPC::FCPSGND:
10092 case PPC::FCPSGND_rec:
10093 case PPC::FCPSGNS:
10094 case PPC::FCPSGNS_rec:
10095 case PPC::LBARX:
10096 case PPC::LBARXL:
10097 case PPC::LBEPX:
10098 case PPC::LBZCIX:
10099 case PPC::LBZX:
10100 case PPC::LBZX8:
10101 case PPC::LBZXTLS:
10102 case PPC::LBZXTLS_:
10103 case PPC::LBZXTLS_32:
10104 case PPC::LDARX:
10105 case PPC::LDARXL:
10106 case PPC::LDBRX:
10107 case PPC::LDCIX:
10108 case PPC::LDX:
10109 case PPC::LDXTLS:
10110 case PPC::LDXTLS_:
10111 case PPC::LFDEPX:
10112 case PPC::LFDX:
10113 case PPC::LFDXTLS:
10114 case PPC::LFDXTLS_:
10115 case PPC::LFIWAX:
10116 case PPC::LFIWZX:
10117 case PPC::LFSX:
10118 case PPC::LFSXTLS:
10119 case PPC::LFSXTLS_:
10120 case PPC::LHARX:
10121 case PPC::LHARXL:
10122 case PPC::LHAX:
10123 case PPC::LHAX8:
10124 case PPC::LHAXTLS:
10125 case PPC::LHAXTLS_:
10126 case PPC::LHAXTLS_32:
10127 case PPC::LHBRX:
10128 case PPC::LHBRX8:
10129 case PPC::LHEPX:
10130 case PPC::LHZCIX:
10131 case PPC::LHZX:
10132 case PPC::LHZX8:
10133 case PPC::LHZXTLS:
10134 case PPC::LHZXTLS_:
10135 case PPC::LHZXTLS_32:
10136 case PPC::LQARX:
10137 case PPC::LQARXL:
10138 case PPC::LSWI:
10139 case PPC::LVEBX:
10140 case PPC::LVEHX:
10141 case PPC::LVEWX:
10142 case PPC::LVSL:
10143 case PPC::LVSR:
10144 case PPC::LVX:
10145 case PPC::LVXL:
10146 case PPC::LWARX:
10147 case PPC::LWARXL:
10148 case PPC::LWAX:
10149 case PPC::LWAXTLS:
10150 case PPC::LWAXTLS_:
10151 case PPC::LWAXTLS_32:
10152 case PPC::LWAX_32:
10153 case PPC::LWBRX:
10154 case PPC::LWBRX8:
10155 case PPC::LWEPX:
10156 case PPC::LWZCIX:
10157 case PPC::LWZX:
10158 case PPC::LWZX8:
10159 case PPC::LWZXTLS:
10160 case PPC::LWZXTLS_:
10161 case PPC::LWZXTLS_32:
10162 case PPC::MODSD:
10163 case PPC::MODSW:
10164 case PPC::MODUD:
10165 case PPC::MODUW:
10166 case PPC::SPELWZX:
10167 case PPC::SPESTWX:
10168 case PPC::STBCIX:
10169 case PPC::STBCX:
10170 case PPC::STBEPX:
10171 case PPC::STBX:
10172 case PPC::STBX8:
10173 case PPC::STBXTLS:
10174 case PPC::STBXTLS_:
10175 case PPC::STBXTLS_32:
10176 case PPC::STDAT:
10177 case PPC::STDBRX:
10178 case PPC::STDCIX:
10179 case PPC::STDCX:
10180 case PPC::STDX:
10181 case PPC::STDXTLS:
10182 case PPC::STDXTLS_:
10183 case PPC::STFDEPX:
10184 case PPC::STFDX:
10185 case PPC::STFDXTLS:
10186 case PPC::STFDXTLS_:
10187 case PPC::STFIWX:
10188 case PPC::STFSX:
10189 case PPC::STFSXTLS:
10190 case PPC::STFSXTLS_:
10191 case PPC::STHBRX:
10192 case PPC::STHCIX:
10193 case PPC::STHCX:
10194 case PPC::STHEPX:
10195 case PPC::STHX:
10196 case PPC::STHX8:
10197 case PPC::STHXTLS:
10198 case PPC::STHXTLS_:
10199 case PPC::STHXTLS_32:
10200 case PPC::STQCX:
10201 case PPC::STSWI:
10202 case PPC::STVEBX:
10203 case PPC::STVEHX:
10204 case PPC::STVEWX:
10205 case PPC::STVX:
10206 case PPC::STVXL:
10207 case PPC::STWAT:
10208 case PPC::STWBRX:
10209 case PPC::STWCIX:
10210 case PPC::STWCX:
10211 case PPC::STWEPX:
10212 case PPC::STWX:
10213 case PPC::STWX8:
10214 case PPC::STWXTLS:
10215 case PPC::STWXTLS_:
10216 case PPC::STWXTLS_32:
10217 case PPC::TABORTDC:
10218 case PPC::TABORTDCI:
10219 case PPC::TABORTWC:
10220 case PPC::TABORTWCI:
10221 case PPC::TD:
10222 case PPC::TLBSX2:
10223 case PPC::TLBSX2D:
10224 case PPC::TW:
10225 case PPC::XSADDQP:
10226 case PPC::XSADDQPO:
10227 case PPC::XSCMPEQQP:
10228 case PPC::XSCMPGEQP:
10229 case PPC::XSCMPGTQP:
10230 case PPC::XSCPSGNQP:
10231 case PPC::XSDIVQP:
10232 case PPC::XSDIVQPO:
10233 case PPC::XSMAXCQP:
10234 case PPC::XSMINCQP:
10235 case PPC::XSMULQP:
10236 case PPC::XSMULQPO:
10237 case PPC::XSSUBQP:
10238 case PPC::XSSUBQPO: {
10239 switch (OpNum) {
10240 case 0:
10241 // op: RST
10242 return 21;
10243 case 1:
10244 // op: RA
10245 return 16;
10246 case 2:
10247 // op: RB
10248 return 11;
10249 }
10250 break;
10251 }
10252 case PPC::TLBRE2:
10253 case PPC::TLBWE2: {
10254 switch (OpNum) {
10255 case 0:
10256 // op: RST
10257 return 21;
10258 case 1:
10259 // op: RA
10260 return 16;
10261 case 2:
10262 // op: WS
10263 return 11;
10264 }
10265 break;
10266 }
10267 case PPC::LDAT_CSNE:
10268 case PPC::LWAT_CSNE: {
10269 switch (OpNum) {
10270 case 0:
10271 // op: RST
10272 return 21;
10273 case 1:
10274 // op: RA
10275 return 16;
10276 }
10277 break;
10278 }
10279 case PPC::DCFFIX:
10280 case PPC::DCFFIXQ:
10281 case PPC::DCFFIXQQ:
10282 case PPC::DCFFIXQ_rec:
10283 case PPC::DCFFIX_rec:
10284 case PPC::DCTDP:
10285 case PPC::DCTDP_rec:
10286 case PPC::DCTFIX:
10287 case PPC::DCTFIXQ:
10288 case PPC::DCTFIXQQ:
10289 case PPC::DCTFIXQ_rec:
10290 case PPC::DCTFIX_rec:
10291 case PPC::DCTQPQ:
10292 case PPC::DCTQPQ_rec:
10293 case PPC::DRDPQ:
10294 case PPC::DRDPQ_rec:
10295 case PPC::DRSP:
10296 case PPC::DRSP_rec:
10297 case PPC::DXEX:
10298 case PPC::DXEXQ:
10299 case PPC::DXEXQ_rec:
10300 case PPC::DXEX_rec:
10301 case PPC::FABSD:
10302 case PPC::FABSD_rec:
10303 case PPC::FABSS:
10304 case PPC::FABSS_rec:
10305 case PPC::FCFID:
10306 case PPC::FCFIDS:
10307 case PPC::FCFIDS_rec:
10308 case PPC::FCFIDU:
10309 case PPC::FCFIDUS:
10310 case PPC::FCFIDUS_rec:
10311 case PPC::FCFIDU_rec:
10312 case PPC::FCFID_rec:
10313 case PPC::FCTID:
10314 case PPC::FCTIDU:
10315 case PPC::FCTIDUZ:
10316 case PPC::FCTIDUZ_rec:
10317 case PPC::FCTIDU_rec:
10318 case PPC::FCTIDZ:
10319 case PPC::FCTIDZ_rec:
10320 case PPC::FCTID_rec:
10321 case PPC::FCTIW:
10322 case PPC::FCTIWU:
10323 case PPC::FCTIWUZ:
10324 case PPC::FCTIWUZ_rec:
10325 case PPC::FCTIWU_rec:
10326 case PPC::FCTIWZ:
10327 case PPC::FCTIWZ_rec:
10328 case PPC::FCTIW_rec:
10329 case PPC::FMR:
10330 case PPC::FMR_rec:
10331 case PPC::FNABSD:
10332 case PPC::FNABSD_rec:
10333 case PPC::FNABSS:
10334 case PPC::FNABSS_rec:
10335 case PPC::FNEGD:
10336 case PPC::FNEGD_rec:
10337 case PPC::FNEGS:
10338 case PPC::FNEGS_rec:
10339 case PPC::FRE:
10340 case PPC::FRES:
10341 case PPC::FRES_rec:
10342 case PPC::FRE_rec:
10343 case PPC::FRIMD:
10344 case PPC::FRIMD_rec:
10345 case PPC::FRIMS:
10346 case PPC::FRIMS_rec:
10347 case PPC::FRIND:
10348 case PPC::FRIND_rec:
10349 case PPC::FRINS:
10350 case PPC::FRINS_rec:
10351 case PPC::FRIPD:
10352 case PPC::FRIPD_rec:
10353 case PPC::FRIPS:
10354 case PPC::FRIPS_rec:
10355 case PPC::FRIZD:
10356 case PPC::FRIZD_rec:
10357 case PPC::FRIZS:
10358 case PPC::FRIZS_rec:
10359 case PPC::FRSP:
10360 case PPC::FRSP_rec:
10361 case PPC::FRSQRTE:
10362 case PPC::FRSQRTES:
10363 case PPC::FRSQRTES_rec:
10364 case PPC::FRSQRTE_rec:
10365 case PPC::FSQRT:
10366 case PPC::FSQRTS:
10367 case PPC::FSQRTS_rec:
10368 case PPC::FSQRT_rec:
10369 case PPC::SLBFEE_rec:
10370 case PPC::SLBIEG:
10371 case PPC::SLBMFEE:
10372 case PPC::SLBMTE:
10373 case PPC::TLBIE:
10374 case PPC::XSABSQP:
10375 case PPC::XSCVDPQP:
10376 case PPC::XSCVQPDP:
10377 case PPC::XSCVQPDPO:
10378 case PPC::XSCVQPSDZ:
10379 case PPC::XSCVQPSQZ:
10380 case PPC::XSCVQPSWZ:
10381 case PPC::XSCVQPUDZ:
10382 case PPC::XSCVQPUQZ:
10383 case PPC::XSCVQPUWZ:
10384 case PPC::XSCVSDQP:
10385 case PPC::XSCVSQQP:
10386 case PPC::XSCVUDQP:
10387 case PPC::XSCVUQQP:
10388 case PPC::XSNABSQP:
10389 case PPC::XSNEGQP:
10390 case PPC::XSSQRTQP:
10391 case PPC::XSSQRTQPO:
10392 case PPC::XSXEXPQP:
10393 case PPC::XSXSIGQP: {
10394 switch (OpNum) {
10395 case 0:
10396 // op: RST
10397 return 21;
10398 case 1:
10399 // op: RB
10400 return 11;
10401 }
10402 break;
10403 }
10404 case PPC::MFFSCRNI: {
10405 switch (OpNum) {
10406 case 0:
10407 // op: RST
10408 return 21;
10409 case 1:
10410 // op: RM
10411 return 11;
10412 }
10413 break;
10414 }
10415 case PPC::MFDCR:
10416 case PPC::MFPMR:
10417 case PPC::MFSPR:
10418 case PPC::MFSPR8:
10419 case PPC::MFTB:
10420 case PPC::MTDCR: {
10421 switch (OpNum) {
10422 case 0:
10423 // op: RST
10424 return 21;
10425 case 1:
10426 // op: SPR
10427 return 11;
10428 }
10429 break;
10430 }
10431 case PPC::LBZ:
10432 case PPC::LBZ8:
10433 case PPC::LFD:
10434 case PPC::LFS:
10435 case PPC::LHA:
10436 case PPC::LHA8:
10437 case PPC::LHZ:
10438 case PPC::LHZ8:
10439 case PPC::LMW:
10440 case PPC::LWZ:
10441 case PPC::LWZ8:
10442 case PPC::PLBZ:
10443 case PPC::PLBZ8:
10444 case PPC::PLBZ8nopc:
10445 case PPC::PLBZ8pc:
10446 case PPC::PLBZnopc:
10447 case PPC::PLBZpc:
10448 case PPC::PLD:
10449 case PPC::PLDnopc:
10450 case PPC::PLDpc:
10451 case PPC::PLFD:
10452 case PPC::PLFDnopc:
10453 case PPC::PLFDpc:
10454 case PPC::PLFS:
10455 case PPC::PLFSnopc:
10456 case PPC::PLFSpc:
10457 case PPC::PLHA:
10458 case PPC::PLHA8:
10459 case PPC::PLHA8nopc:
10460 case PPC::PLHA8pc:
10461 case PPC::PLHAnopc:
10462 case PPC::PLHApc:
10463 case PPC::PLHZ:
10464 case PPC::PLHZ8:
10465 case PPC::PLHZ8nopc:
10466 case PPC::PLHZ8pc:
10467 case PPC::PLHZnopc:
10468 case PPC::PLHZpc:
10469 case PPC::PLWA:
10470 case PPC::PLWA8:
10471 case PPC::PLWA8nopc:
10472 case PPC::PLWA8pc:
10473 case PPC::PLWAnopc:
10474 case PPC::PLWApc:
10475 case PPC::PLWZ:
10476 case PPC::PLWZ8:
10477 case PPC::PLWZ8nopc:
10478 case PPC::PLWZ8pc:
10479 case PPC::PLWZnopc:
10480 case PPC::PLWZpc:
10481 case PPC::PLXSD:
10482 case PPC::PLXSDnopc:
10483 case PPC::PLXSDpc:
10484 case PPC::PLXSSP:
10485 case PPC::PLXSSPnopc:
10486 case PPC::PLXSSPpc:
10487 case PPC::PSTB:
10488 case PPC::PSTB8:
10489 case PPC::PSTB8nopc:
10490 case PPC::PSTB8pc:
10491 case PPC::PSTBnopc:
10492 case PPC::PSTBpc:
10493 case PPC::PSTD:
10494 case PPC::PSTDnopc:
10495 case PPC::PSTDpc:
10496 case PPC::PSTFD:
10497 case PPC::PSTFDnopc:
10498 case PPC::PSTFDpc:
10499 case PPC::PSTFS:
10500 case PPC::PSTFSnopc:
10501 case PPC::PSTFSpc:
10502 case PPC::PSTH:
10503 case PPC::PSTH8:
10504 case PPC::PSTH8nopc:
10505 case PPC::PSTH8pc:
10506 case PPC::PSTHnopc:
10507 case PPC::PSTHpc:
10508 case PPC::PSTW:
10509 case PPC::PSTW8:
10510 case PPC::PSTW8nopc:
10511 case PPC::PSTW8pc:
10512 case PPC::PSTWnopc:
10513 case PPC::PSTWpc:
10514 case PPC::PSTXSD:
10515 case PPC::PSTXSDnopc:
10516 case PPC::PSTXSDpc:
10517 case PPC::PSTXSSP:
10518 case PPC::PSTXSSPnopc:
10519 case PPC::PSTXSSPpc:
10520 case PPC::SPELWZ:
10521 case PPC::SPESTW:
10522 case PPC::STB:
10523 case PPC::STB8:
10524 case PPC::STFD:
10525 case PPC::STFS:
10526 case PPC::STH:
10527 case PPC::STH8:
10528 case PPC::STMW:
10529 case PPC::STW:
10530 case PPC::STW8: {
10531 switch (OpNum) {
10532 case 0:
10533 // op: RST
10534 return 21;
10535 case 2:
10536 // op: RA
10537 return 16;
10538 case 1:
10539 // op: D
10540 return 0;
10541 }
10542 break;
10543 }
10544 case PPC::LD:
10545 case PPC::LWA:
10546 case PPC::LWA_32:
10547 case PPC::LXSD:
10548 case PPC::LXSSP:
10549 case PPC::STD:
10550 case PPC::STQ:
10551 case PPC::STXSD:
10552 case PPC::STXSSP: {
10553 switch (OpNum) {
10554 case 0:
10555 // op: RST
10556 return 21;
10557 case 2:
10558 // op: RA
10559 return 16;
10560 case 1:
10561 // op: D
10562 return 2;
10563 }
10564 break;
10565 }
10566 case PPC::LBZUX:
10567 case PPC::LBZUX8:
10568 case PPC::LDAT:
10569 case PPC::LDUX:
10570 case PPC::LFDUX:
10571 case PPC::LFSUX:
10572 case PPC::LHAUX:
10573 case PPC::LHAUX8:
10574 case PPC::LHZUX:
10575 case PPC::LHZUX8:
10576 case PPC::LWAT:
10577 case PPC::LWAUX:
10578 case PPC::LWZUX:
10579 case PPC::LWZUX8:
10580 case PPC::XSMADDQP:
10581 case PPC::XSMADDQPO:
10582 case PPC::XSMSUBQP:
10583 case PPC::XSMSUBQPO:
10584 case PPC::XSNMADDQP:
10585 case PPC::XSNMADDQPO:
10586 case PPC::XSNMSUBQP:
10587 case PPC::XSNMSUBQPO: {
10588 switch (OpNum) {
10589 case 0:
10590 // op: RST
10591 return 21;
10592 case 2:
10593 // op: RA
10594 return 16;
10595 case 3:
10596 // op: RB
10597 return 11;
10598 }
10599 break;
10600 }
10601 case PPC::LBZU:
10602 case PPC::LBZU8:
10603 case PPC::LFDU:
10604 case PPC::LFSU:
10605 case PPC::LHAU:
10606 case PPC::LHAU8:
10607 case PPC::LHZU:
10608 case PPC::LHZU8:
10609 case PPC::LWZU:
10610 case PPC::LWZU8: {
10611 switch (OpNum) {
10612 case 0:
10613 // op: RST
10614 return 21;
10615 case 3:
10616 // op: RA
10617 return 16;
10618 case 2:
10619 // op: D
10620 return 0;
10621 }
10622 break;
10623 }
10624 case PPC::LDU: {
10625 switch (OpNum) {
10626 case 0:
10627 // op: RST
10628 return 21;
10629 case 3:
10630 // op: RA
10631 return 16;
10632 case 2:
10633 // op: D
10634 return 2;
10635 }
10636 break;
10637 }
10638 case PPC::MFCTR:
10639 case PPC::MFCTR8:
10640 case PPC::MFFS:
10641 case PPC::MFFSCE:
10642 case PPC::MFFSL:
10643 case PPC::MFFS_rec:
10644 case PPC::MFLR:
10645 case PPC::MFLR8:
10646 case PPC::MFMSR:
10647 case PPC::MFTB8:
10648 case PPC::MFUDSCR:
10649 case PPC::MFVRSAVE:
10650 case PPC::MFVRSAVEv:
10651 case PPC::MTCTR:
10652 case PPC::MTCTR8:
10653 case PPC::MTCTR8loop:
10654 case PPC::MTCTRloop:
10655 case PPC::MTLR:
10656 case PPC::MTLR8:
10657 case PPC::MTUDSCR:
10658 case PPC::MTVRSAVE: {
10659 switch (OpNum) {
10660 case 0:
10661 // op: RST
10662 return 21;
10663 }
10664 break;
10665 }
10666 case PPC::SETB:
10667 case PPC::SETB8: {
10668 switch (OpNum) {
10669 case 0:
10670 // op: RT
10671 return 21;
10672 case 1:
10673 // op: BFA
10674 return 18;
10675 }
10676 break;
10677 }
10678 case PPC::ADDPCIS:
10679 case PPC::MTVSRBMI: {
10680 switch (OpNum) {
10681 case 0:
10682 // op: RT
10683 return 21;
10684 case 1:
10685 // op: D
10686 return 0;
10687 }
10688 break;
10689 }
10690 case PPC::DARN: {
10691 switch (OpNum) {
10692 case 0:
10693 // op: RT
10694 return 21;
10695 case 1:
10696 // op: L
10697 return 16;
10698 }
10699 break;
10700 }
10701 case PPC::ISEL:
10702 case PPC::ISEL8: {
10703 switch (OpNum) {
10704 case 0:
10705 // op: RT
10706 return 21;
10707 case 1:
10708 // op: RA
10709 return 16;
10710 case 2:
10711 // op: RB
10712 return 11;
10713 case 3:
10714 // op: COND
10715 return 6;
10716 }
10717 break;
10718 }
10719 case PPC::ADDEX:
10720 case PPC::ADDEX8: {
10721 switch (OpNum) {
10722 case 0:
10723 // op: RT
10724 return 21;
10725 case 1:
10726 // op: RA
10727 return 16;
10728 case 2:
10729 // op: RB
10730 return 11;
10731 case 3:
10732 // op: CY
10733 return 9;
10734 }
10735 break;
10736 }
10737 case PPC::SUBFUS:
10738 case PPC::SUBFUS_rec: {
10739 switch (OpNum) {
10740 case 0:
10741 // op: RT
10742 return 21;
10743 case 1:
10744 // op: RA
10745 return 16;
10746 case 2:
10747 // op: RB
10748 return 11;
10749 case 3:
10750 // op: L
10751 return 10;
10752 }
10753 break;
10754 }
10755 case PPC::MADDHD:
10756 case PPC::MADDHDU:
10757 case PPC::MADDLD:
10758 case PPC::MADDLD8:
10759 case PPC::VADDECUQ:
10760 case PPC::VADDEUQM:
10761 case PPC::VEXTDDVLX:
10762 case PPC::VEXTDDVRX:
10763 case PPC::VEXTDUBVLX:
10764 case PPC::VEXTDUBVRX:
10765 case PPC::VEXTDUHVLX:
10766 case PPC::VEXTDUHVRX:
10767 case PPC::VEXTDUWVLX:
10768 case PPC::VEXTDUWVRX:
10769 case PPC::VMHADDSHS:
10770 case PPC::VMHRADDSHS:
10771 case PPC::VMLADDUHM:
10772 case PPC::VMSUMCUD:
10773 case PPC::VMSUMMBM:
10774 case PPC::VMSUMSHM:
10775 case PPC::VMSUMSHS:
10776 case PPC::VMSUMUBM:
10777 case PPC::VMSUMUDM:
10778 case PPC::VMSUMUHM:
10779 case PPC::VMSUMUHS:
10780 case PPC::VPERM:
10781 case PPC::VPERMR:
10782 case PPC::VSEL:
10783 case PPC::VSUBECUQ:
10784 case PPC::VSUBEUQM: {
10785 switch (OpNum) {
10786 case 0:
10787 // op: RT
10788 return 21;
10789 case 1:
10790 // op: RA
10791 return 16;
10792 case 2:
10793 // op: RB
10794 return 11;
10795 case 3:
10796 // op: RC
10797 return 6;
10798 }
10799 break;
10800 }
10801 case PPC::VSLDOI: {
10802 switch (OpNum) {
10803 case 0:
10804 // op: RT
10805 return 21;
10806 case 1:
10807 // op: RA
10808 return 16;
10809 case 2:
10810 // op: RB
10811 return 11;
10812 case 3:
10813 // op: SH
10814 return 6;
10815 }
10816 break;
10817 }
10818 case PPC::ADD4:
10819 case PPC::ADD4O:
10820 case PPC::ADD4O_rec:
10821 case PPC::ADD4TLS:
10822 case PPC::ADD4_rec:
10823 case PPC::ADD8:
10824 case PPC::ADD8O:
10825 case PPC::ADD8O_rec:
10826 case PPC::ADD8TLS:
10827 case PPC::ADD8TLS_:
10828 case PPC::ADD8_rec:
10829 case PPC::ADDC:
10830 case PPC::ADDC8:
10831 case PPC::ADDC8O:
10832 case PPC::ADDC8O_rec:
10833 case PPC::ADDC8_rec:
10834 case PPC::ADDCO:
10835 case PPC::ADDCO_rec:
10836 case PPC::ADDC_rec:
10837 case PPC::ADDE:
10838 case PPC::ADDE8:
10839 case PPC::ADDE8O:
10840 case PPC::ADDE8O_rec:
10841 case PPC::ADDE8_rec:
10842 case PPC::ADDEO:
10843 case PPC::ADDEO_rec:
10844 case PPC::ADDE_rec:
10845 case PPC::ADDG6S:
10846 case PPC::ADDG6S8:
10847 case PPC::BRINC:
10848 case PPC::DIVD:
10849 case PPC::DIVDE:
10850 case PPC::DIVDEO:
10851 case PPC::DIVDEO_rec:
10852 case PPC::DIVDEU:
10853 case PPC::DIVDEUO:
10854 case PPC::DIVDEUO_rec:
10855 case PPC::DIVDEU_rec:
10856 case PPC::DIVDE_rec:
10857 case PPC::DIVDO:
10858 case PPC::DIVDO_rec:
10859 case PPC::DIVDU:
10860 case PPC::DIVDUO:
10861 case PPC::DIVDUO_rec:
10862 case PPC::DIVDU_rec:
10863 case PPC::DIVD_rec:
10864 case PPC::DIVW:
10865 case PPC::DIVWE:
10866 case PPC::DIVWEO:
10867 case PPC::DIVWEO_rec:
10868 case PPC::DIVWEU:
10869 case PPC::DIVWEUO:
10870 case PPC::DIVWEUO_rec:
10871 case PPC::DIVWEU_rec:
10872 case PPC::DIVWE_rec:
10873 case PPC::DIVWO:
10874 case PPC::DIVWO_rec:
10875 case PPC::DIVWU:
10876 case PPC::DIVWUO:
10877 case PPC::DIVWUO_rec:
10878 case PPC::DIVWU_rec:
10879 case PPC::DIVW_rec:
10880 case PPC::EFDADD:
10881 case PPC::EFDDIV:
10882 case PPC::EFDMUL:
10883 case PPC::EFDSUB:
10884 case PPC::EFSADD:
10885 case PPC::EFSDIV:
10886 case PPC::EFSMUL:
10887 case PPC::EFSSUB:
10888 case PPC::EVADDIW:
10889 case PPC::EVADDW:
10890 case PPC::EVAND:
10891 case PPC::EVANDC:
10892 case PPC::EVDIVWS:
10893 case PPC::EVDIVWU:
10894 case PPC::EVEQV:
10895 case PPC::EVFSADD:
10896 case PPC::EVFSDIV:
10897 case PPC::EVFSMUL:
10898 case PPC::EVFSSUB:
10899 case PPC::EVLDDX:
10900 case PPC::EVLDHX:
10901 case PPC::EVLDWX:
10902 case PPC::EVLHHESPLATX:
10903 case PPC::EVLHHOSSPLATX:
10904 case PPC::EVLHHOUSPLATX:
10905 case PPC::EVLWHEX:
10906 case PPC::EVLWHOSX:
10907 case PPC::EVLWHOUX:
10908 case PPC::EVLWHSPLATX:
10909 case PPC::EVLWWSPLATX:
10910 case PPC::EVMERGEHI:
10911 case PPC::EVMERGEHILO:
10912 case PPC::EVMERGELO:
10913 case PPC::EVMERGELOHI:
10914 case PPC::EVMHEGSMFAA:
10915 case PPC::EVMHEGSMFAN:
10916 case PPC::EVMHEGSMIAA:
10917 case PPC::EVMHEGSMIAN:
10918 case PPC::EVMHEGUMIAA:
10919 case PPC::EVMHEGUMIAN:
10920 case PPC::EVMHESMF:
10921 case PPC::EVMHESMFA:
10922 case PPC::EVMHESMFAAW:
10923 case PPC::EVMHESMFANW:
10924 case PPC::EVMHESMI:
10925 case PPC::EVMHESMIA:
10926 case PPC::EVMHESMIAAW:
10927 case PPC::EVMHESMIANW:
10928 case PPC::EVMHESSF:
10929 case PPC::EVMHESSFA:
10930 case PPC::EVMHESSFAAW:
10931 case PPC::EVMHESSFANW:
10932 case PPC::EVMHESSIAAW:
10933 case PPC::EVMHESSIANW:
10934 case PPC::EVMHEUMI:
10935 case PPC::EVMHEUMIA:
10936 case PPC::EVMHEUMIAAW:
10937 case PPC::EVMHEUMIANW:
10938 case PPC::EVMHEUSIAAW:
10939 case PPC::EVMHEUSIANW:
10940 case PPC::EVMHOGSMFAA:
10941 case PPC::EVMHOGSMFAN:
10942 case PPC::EVMHOGSMIAA:
10943 case PPC::EVMHOGSMIAN:
10944 case PPC::EVMHOGUMIAA:
10945 case PPC::EVMHOGUMIAN:
10946 case PPC::EVMHOSMF:
10947 case PPC::EVMHOSMFA:
10948 case PPC::EVMHOSMFAAW:
10949 case PPC::EVMHOSMFANW:
10950 case PPC::EVMHOSMI:
10951 case PPC::EVMHOSMIA:
10952 case PPC::EVMHOSMIAAW:
10953 case PPC::EVMHOSMIANW:
10954 case PPC::EVMHOSSF:
10955 case PPC::EVMHOSSFA:
10956 case PPC::EVMHOSSFAAW:
10957 case PPC::EVMHOSSFANW:
10958 case PPC::EVMHOSSIAAW:
10959 case PPC::EVMHOSSIANW:
10960 case PPC::EVMHOUMI:
10961 case PPC::EVMHOUMIA:
10962 case PPC::EVMHOUMIAAW:
10963 case PPC::EVMHOUMIANW:
10964 case PPC::EVMHOUSIAAW:
10965 case PPC::EVMHOUSIANW:
10966 case PPC::EVMWHSMF:
10967 case PPC::EVMWHSMFA:
10968 case PPC::EVMWHSMI:
10969 case PPC::EVMWHSMIA:
10970 case PPC::EVMWHSSF:
10971 case PPC::EVMWHSSFA:
10972 case PPC::EVMWHUMI:
10973 case PPC::EVMWHUMIA:
10974 case PPC::EVMWLSMIAAW:
10975 case PPC::EVMWLSMIANW:
10976 case PPC::EVMWLSSIAAW:
10977 case PPC::EVMWLSSIANW:
10978 case PPC::EVMWLUMI:
10979 case PPC::EVMWLUMIA:
10980 case PPC::EVMWLUMIAAW:
10981 case PPC::EVMWLUMIANW:
10982 case PPC::EVMWLUSIAAW:
10983 case PPC::EVMWLUSIANW:
10984 case PPC::EVMWSMF:
10985 case PPC::EVMWSMFA:
10986 case PPC::EVMWSMFAA:
10987 case PPC::EVMWSMFAN:
10988 case PPC::EVMWSMI:
10989 case PPC::EVMWSMIA:
10990 case PPC::EVMWSMIAA:
10991 case PPC::EVMWSMIAN:
10992 case PPC::EVMWSSF:
10993 case PPC::EVMWSSFA:
10994 case PPC::EVMWSSFAA:
10995 case PPC::EVMWSSFAN:
10996 case PPC::EVMWUMI:
10997 case PPC::EVMWUMIA:
10998 case PPC::EVMWUMIAA:
10999 case PPC::EVMWUMIAN:
11000 case PPC::EVNAND:
11001 case PPC::EVNOR:
11002 case PPC::EVOR:
11003 case PPC::EVORC:
11004 case PPC::EVRLW:
11005 case PPC::EVRLWI:
11006 case PPC::EVSLW:
11007 case PPC::EVSLWI:
11008 case PPC::EVSRWIS:
11009 case PPC::EVSRWIU:
11010 case PPC::EVSRWS:
11011 case PPC::EVSRWU:
11012 case PPC::EVSTDDX:
11013 case PPC::EVSTDHX:
11014 case PPC::EVSTDWX:
11015 case PPC::EVSTWHEX:
11016 case PPC::EVSTWHOX:
11017 case PPC::EVSTWWEX:
11018 case PPC::EVSTWWOX:
11019 case PPC::EVSUBFW:
11020 case PPC::EVSUBIFW:
11021 case PPC::EVXOR:
11022 case PPC::MULHD:
11023 case PPC::MULHDU:
11024 case PPC::MULHDU_rec:
11025 case PPC::MULHD_rec:
11026 case PPC::MULHW:
11027 case PPC::MULHWU:
11028 case PPC::MULHWU_rec:
11029 case PPC::MULHW_rec:
11030 case PPC::MULLD:
11031 case PPC::MULLDO:
11032 case PPC::MULLDO_rec:
11033 case PPC::MULLD_rec:
11034 case PPC::MULLW:
11035 case PPC::MULLWO:
11036 case PPC::MULLWO_rec:
11037 case PPC::MULLW_rec:
11038 case PPC::SUBF:
11039 case PPC::SUBF8:
11040 case PPC::SUBF8O:
11041 case PPC::SUBF8O_rec:
11042 case PPC::SUBF8_rec:
11043 case PPC::SUBFC:
11044 case PPC::SUBFC8:
11045 case PPC::SUBFC8O:
11046 case PPC::SUBFC8O_rec:
11047 case PPC::SUBFC8_rec:
11048 case PPC::SUBFCO:
11049 case PPC::SUBFCO_rec:
11050 case PPC::SUBFC_rec:
11051 case PPC::SUBFE:
11052 case PPC::SUBFE8:
11053 case PPC::SUBFE8O:
11054 case PPC::SUBFE8O_rec:
11055 case PPC::SUBFE8_rec:
11056 case PPC::SUBFEO:
11057 case PPC::SUBFEO_rec:
11058 case PPC::SUBFE_rec:
11059 case PPC::SUBFO:
11060 case PPC::SUBFO_rec:
11061 case PPC::SUBF_rec: {
11062 switch (OpNum) {
11063 case 0:
11064 // op: RT
11065 return 21;
11066 case 1:
11067 // op: RA
11068 return 16;
11069 case 2:
11070 // op: RB
11071 return 11;
11072 }
11073 break;
11074 }
11075 case PPC::VMADDFP:
11076 case PPC::VNMSUBFP: {
11077 switch (OpNum) {
11078 case 0:
11079 // op: RT
11080 return 21;
11081 case 1:
11082 // op: RA
11083 return 16;
11084 case 2:
11085 // op: RC
11086 return 6;
11087 case 3:
11088 // op: RB
11089 return 11;
11090 }
11091 break;
11092 }
11093 case PPC::PADDI:
11094 case PPC::PADDI8:
11095 case PPC::PADDI8pc:
11096 case PPC::PADDIS:
11097 case PPC::PADDIS8:
11098 case PPC::PADDIS8pc:
11099 case PPC::PADDISpc:
11100 case PPC::PADDIpc: {
11101 switch (OpNum) {
11102 case 0:
11103 // op: RT
11104 return 21;
11105 case 1:
11106 // op: RA
11107 return 16;
11108 case 2:
11109 // op: SI
11110 return 0;
11111 }
11112 break;
11113 }
11114 case PPC::VPERMXOR: {
11115 switch (OpNum) {
11116 case 0:
11117 // op: RT
11118 return 21;
11119 case 1:
11120 // op: RA
11121 return 16;
11122 case 3:
11123 // op: RC
11124 return 6;
11125 case 2:
11126 // op: RB
11127 return 11;
11128 }
11129 break;
11130 }
11131 case PPC::ADDME:
11132 case PPC::ADDME8:
11133 case PPC::ADDME8O:
11134 case PPC::ADDME8O_rec:
11135 case PPC::ADDME8_rec:
11136 case PPC::ADDMEO:
11137 case PPC::ADDMEO_rec:
11138 case PPC::ADDME_rec:
11139 case PPC::ADDZE:
11140 case PPC::ADDZE8:
11141 case PPC::ADDZE8O:
11142 case PPC::ADDZE8O_rec:
11143 case PPC::ADDZE8_rec:
11144 case PPC::ADDZEO:
11145 case PPC::ADDZEO_rec:
11146 case PPC::ADDZE_rec:
11147 case PPC::EFDABS:
11148 case PPC::EFDNABS:
11149 case PPC::EFDNEG:
11150 case PPC::EFSABS:
11151 case PPC::EFSNABS:
11152 case PPC::EFSNEG:
11153 case PPC::EVABS:
11154 case PPC::EVADDSMIAAW:
11155 case PPC::EVADDSSIAAW:
11156 case PPC::EVADDUMIAAW:
11157 case PPC::EVADDUSIAAW:
11158 case PPC::EVCNTLSW:
11159 case PPC::EVCNTLZW:
11160 case PPC::EVEXTSB:
11161 case PPC::EVEXTSH:
11162 case PPC::EVFSABS:
11163 case PPC::EVFSNABS:
11164 case PPC::EVFSNEG:
11165 case PPC::EVMRA:
11166 case PPC::EVNEG:
11167 case PPC::EVRNDW:
11168 case PPC::EVSPLATFI:
11169 case PPC::EVSPLATI:
11170 case PPC::EVSUBFSMIAAW:
11171 case PPC::EVSUBFSSIAAW:
11172 case PPC::EVSUBFUMIAAW:
11173 case PPC::EVSUBFUSIAAW:
11174 case PPC::NEG:
11175 case PPC::NEG8:
11176 case PPC::NEG8O:
11177 case PPC::NEG8O_rec:
11178 case PPC::NEG8_rec:
11179 case PPC::NEGO:
11180 case PPC::NEGO_rec:
11181 case PPC::NEG_rec:
11182 case PPC::SUBFME:
11183 case PPC::SUBFME8:
11184 case PPC::SUBFME8O:
11185 case PPC::SUBFME8O_rec:
11186 case PPC::SUBFME8_rec:
11187 case PPC::SUBFMEO:
11188 case PPC::SUBFMEO_rec:
11189 case PPC::SUBFME_rec:
11190 case PPC::SUBFZE:
11191 case PPC::SUBFZE8:
11192 case PPC::SUBFZE8O:
11193 case PPC::SUBFZE8O_rec:
11194 case PPC::SUBFZE8_rec:
11195 case PPC::SUBFZEO:
11196 case PPC::SUBFZEO_rec:
11197 case PPC::SUBFZE_rec: {
11198 switch (OpNum) {
11199 case 0:
11200 // op: RT
11201 return 21;
11202 case 1:
11203 // op: RA
11204 return 16;
11205 }
11206 break;
11207 }
11208 case PPC::EFDCFS:
11209 case PPC::EFDCFSF:
11210 case PPC::EFDCFSI:
11211 case PPC::EFDCFSID:
11212 case PPC::EFDCFUF:
11213 case PPC::EFDCFUI:
11214 case PPC::EFDCFUID:
11215 case PPC::EFDCTSF:
11216 case PPC::EFDCTSI:
11217 case PPC::EFDCTSIDZ:
11218 case PPC::EFDCTSIZ:
11219 case PPC::EFDCTUF:
11220 case PPC::EFDCTUI:
11221 case PPC::EFDCTUIDZ:
11222 case PPC::EFDCTUIZ:
11223 case PPC::EFSCFD:
11224 case PPC::EFSCFSF:
11225 case PPC::EFSCFSI:
11226 case PPC::EFSCFUF:
11227 case PPC::EFSCFUI:
11228 case PPC::EFSCTSF:
11229 case PPC::EFSCTSI:
11230 case PPC::EFSCTSIZ:
11231 case PPC::EFSCTUF:
11232 case PPC::EFSCTUI:
11233 case PPC::EFSCTUIZ:
11234 case PPC::EVFSCFSF:
11235 case PPC::EVFSCFSI:
11236 case PPC::EVFSCFUF:
11237 case PPC::EVFSCFUI:
11238 case PPC::EVFSCTSF:
11239 case PPC::EVFSCTSI:
11240 case PPC::EVFSCTSIZ:
11241 case PPC::EVFSCTUF:
11242 case PPC::EVFSCTUI:
11243 case PPC::EVFSCTUIZ:
11244 case PPC::SLBMFEV: {
11245 switch (OpNum) {
11246 case 0:
11247 // op: RT
11248 return 21;
11249 case 1:
11250 // op: RB
11251 return 11;
11252 }
11253 break;
11254 }
11255 case PPC::PLA8pc:
11256 case PPC::PLApc:
11257 case PPC::PLI:
11258 case PPC::PLI8: {
11259 switch (OpNum) {
11260 case 0:
11261 // op: RT
11262 return 21;
11263 case 1:
11264 // op: SI
11265 return 0;
11266 }
11267 break;
11268 }
11269 case PPC::XSXEXPDP:
11270 case PPC::XSXSIGDP: {
11271 switch (OpNum) {
11272 case 0:
11273 // op: RT
11274 return 21;
11275 case 1:
11276 // op: XB
11277 return 1;
11278 }
11279 break;
11280 }
11281 case PPC::MFBHRBE: {
11282 switch (OpNum) {
11283 case 0:
11284 // op: RT
11285 return 21;
11286 case 1:
11287 // op: imm
11288 return 11;
11289 }
11290 break;
11291 }
11292 case PPC::EVLDD:
11293 case PPC::EVLDH:
11294 case PPC::EVLDW:
11295 case PPC::EVLHHESPLAT:
11296 case PPC::EVLHHOSSPLAT:
11297 case PPC::EVLHHOUSPLAT:
11298 case PPC::EVLWHE:
11299 case PPC::EVLWHOS:
11300 case PPC::EVLWHOU:
11301 case PPC::EVLWHSPLAT:
11302 case PPC::EVLWWSPLAT:
11303 case PPC::EVSTDD:
11304 case PPC::EVSTDH:
11305 case PPC::EVSTDW:
11306 case PPC::EVSTWHE:
11307 case PPC::EVSTWHO:
11308 case PPC::EVSTWWE:
11309 case PPC::EVSTWWO: {
11310 switch (OpNum) {
11311 case 0:
11312 // op: RT
11313 return 21;
11314 case 2:
11315 // op: RA
11316 return 16;
11317 case 1:
11318 // op: D
11319 return 11;
11320 }
11321 break;
11322 }
11323 case PPC::PLA:
11324 case PPC::PLA8: {
11325 switch (OpNum) {
11326 case 0:
11327 // op: RT
11328 return 21;
11329 case 2:
11330 // op: SI
11331 return 0;
11332 }
11333 break;
11334 }
11335 case PPC::MFCR:
11336 case PPC::MFCR8: {
11337 switch (OpNum) {
11338 case 0:
11339 // op: RT
11340 return 21;
11341 }
11342 break;
11343 }
11344 case PPC::LQ: {
11345 switch (OpNum) {
11346 case 0:
11347 // op: RTp
11348 return 21;
11349 case 2:
11350 // op: RA
11351 return 16;
11352 case 1:
11353 // op: DQ
11354 return 4;
11355 }
11356 break;
11357 }
11358 case PPC::RFEBB: {
11359 switch (OpNum) {
11360 case 0:
11361 // op: S
11362 return 11;
11363 }
11364 break;
11365 }
11366 case PPC::DST:
11367 case PPC::DST64:
11368 case PPC::DSTST:
11369 case PPC::DSTST64:
11370 case PPC::DSTSTT:
11371 case PPC::DSTSTT64:
11372 case PPC::DSTT:
11373 case PPC::DSTT64: {
11374 switch (OpNum) {
11375 case 0:
11376 // op: STRM
11377 return 21;
11378 case 1:
11379 // op: RA
11380 return 16;
11381 case 2:
11382 // op: RB
11383 return 11;
11384 }
11385 break;
11386 }
11387 case PPC::DSS: {
11388 switch (OpNum) {
11389 case 0:
11390 // op: STRM
11391 return 21;
11392 }
11393 break;
11394 }
11395 case PPC::DCBF:
11396 case PPC::DCBT:
11397 case PPC::DCBTST: {
11398 switch (OpNum) {
11399 case 0:
11400 // op: TH
11401 return 21;
11402 case 1:
11403 // op: RA
11404 return 16;
11405 case 2:
11406 // op: RB
11407 return 11;
11408 }
11409 break;
11410 }
11411 case PPC::MTVSCR: {
11412 switch (OpNum) {
11413 case 0:
11414 // op: VB
11415 return 11;
11416 }
11417 break;
11418 }
11419 case PPC::V_SET0:
11420 case PPC::V_SET0B:
11421 case PPC::V_SET0H: {
11422 switch (OpNum) {
11423 case 0:
11424 // op: VD
11425 return 11;
11426 }
11427 break;
11428 }
11429 case PPC::VSPLTISB:
11430 case PPC::VSPLTISH:
11431 case PPC::VSPLTISW: {
11432 switch (OpNum) {
11433 case 0:
11434 // op: VD
11435 return 21;
11436 case 1:
11437 // op: IMM
11438 return 16;
11439 }
11440 break;
11441 }
11442 case PPC::VSHASIGMAD:
11443 case PPC::VSHASIGMAW: {
11444 switch (OpNum) {
11445 case 0:
11446 // op: VD
11447 return 21;
11448 case 1:
11449 // op: VA
11450 return 16;
11451 case 2:
11452 // op: ST
11453 return 15;
11454 case 3:
11455 // op: SIX
11456 return 11;
11457 }
11458 break;
11459 }
11460 case PPC::BCDADD_rec:
11461 case PPC::BCDSR_rec:
11462 case PPC::BCDSUB_rec:
11463 case PPC::BCDS_rec:
11464 case PPC::BCDTRUNC_rec: {
11465 switch (OpNum) {
11466 case 0:
11467 // op: VD
11468 return 21;
11469 case 1:
11470 // op: VA
11471 return 16;
11472 case 2:
11473 // op: VB
11474 return 11;
11475 case 3:
11476 // op: PS
11477 return 9;
11478 }
11479 break;
11480 }
11481 case PPC::BCDCPSGN_rec:
11482 case PPC::BCDUS_rec:
11483 case PPC::BCDUTRUNC_rec:
11484 case PPC::VABSDUB:
11485 case PPC::VABSDUH:
11486 case PPC::VABSDUW:
11487 case PPC::VADDCUQ:
11488 case PPC::VADDCUW:
11489 case PPC::VADDFP:
11490 case PPC::VADDSBS:
11491 case PPC::VADDSHS:
11492 case PPC::VADDSWS:
11493 case PPC::VADDUBM:
11494 case PPC::VADDUBS:
11495 case PPC::VADDUDM:
11496 case PPC::VADDUHM:
11497 case PPC::VADDUHS:
11498 case PPC::VADDUQM:
11499 case PPC::VADDUWM:
11500 case PPC::VADDUWS:
11501 case PPC::VAND:
11502 case PPC::VANDC:
11503 case PPC::VAVGSB:
11504 case PPC::VAVGSH:
11505 case PPC::VAVGSW:
11506 case PPC::VAVGUB:
11507 case PPC::VAVGUH:
11508 case PPC::VAVGUW:
11509 case PPC::VBPERMD:
11510 case PPC::VBPERMQ:
11511 case PPC::VCFSX:
11512 case PPC::VCFUGED:
11513 case PPC::VCFUX:
11514 case PPC::VCIPHER:
11515 case PPC::VCIPHERLAST:
11516 case PPC::VCLRLB:
11517 case PPC::VCLRRB:
11518 case PPC::VCLZDM:
11519 case PPC::VCMPBFP:
11520 case PPC::VCMPBFP_rec:
11521 case PPC::VCMPEQFP:
11522 case PPC::VCMPEQFP_rec:
11523 case PPC::VCMPEQUB:
11524 case PPC::VCMPEQUB_rec:
11525 case PPC::VCMPEQUD:
11526 case PPC::VCMPEQUD_rec:
11527 case PPC::VCMPEQUH:
11528 case PPC::VCMPEQUH_rec:
11529 case PPC::VCMPEQUQ:
11530 case PPC::VCMPEQUQ_rec:
11531 case PPC::VCMPEQUW:
11532 case PPC::VCMPEQUW_rec:
11533 case PPC::VCMPGEFP:
11534 case PPC::VCMPGEFP_rec:
11535 case PPC::VCMPGTFP:
11536 case PPC::VCMPGTFP_rec:
11537 case PPC::VCMPGTSB:
11538 case PPC::VCMPGTSB_rec:
11539 case PPC::VCMPGTSD:
11540 case PPC::VCMPGTSD_rec:
11541 case PPC::VCMPGTSH:
11542 case PPC::VCMPGTSH_rec:
11543 case PPC::VCMPGTSQ:
11544 case PPC::VCMPGTSQ_rec:
11545 case PPC::VCMPGTSW:
11546 case PPC::VCMPGTSW_rec:
11547 case PPC::VCMPGTUB:
11548 case PPC::VCMPGTUB_rec:
11549 case PPC::VCMPGTUD:
11550 case PPC::VCMPGTUD_rec:
11551 case PPC::VCMPGTUH:
11552 case PPC::VCMPGTUH_rec:
11553 case PPC::VCMPGTUQ:
11554 case PPC::VCMPGTUQ_rec:
11555 case PPC::VCMPGTUW:
11556 case PPC::VCMPGTUW_rec:
11557 case PPC::VCMPNEB:
11558 case PPC::VCMPNEB_rec:
11559 case PPC::VCMPNEH:
11560 case PPC::VCMPNEH_rec:
11561 case PPC::VCMPNEW:
11562 case PPC::VCMPNEW_rec:
11563 case PPC::VCMPNEZB:
11564 case PPC::VCMPNEZB_rec:
11565 case PPC::VCMPNEZH:
11566 case PPC::VCMPNEZH_rec:
11567 case PPC::VCMPNEZW:
11568 case PPC::VCMPNEZW_rec:
11569 case PPC::VCTSXS:
11570 case PPC::VCTUXS:
11571 case PPC::VCTZDM:
11572 case PPC::VDIVESD:
11573 case PPC::VDIVESQ:
11574 case PPC::VDIVESW:
11575 case PPC::VDIVEUD:
11576 case PPC::VDIVEUQ:
11577 case PPC::VDIVEUW:
11578 case PPC::VDIVSD:
11579 case PPC::VDIVSQ:
11580 case PPC::VDIVSW:
11581 case PPC::VDIVUD:
11582 case PPC::VDIVUQ:
11583 case PPC::VDIVUW:
11584 case PPC::VEQV:
11585 case PPC::VEXTRACTD:
11586 case PPC::VEXTRACTUB:
11587 case PPC::VEXTRACTUH:
11588 case PPC::VEXTRACTUW:
11589 case PPC::VEXTUBLX:
11590 case PPC::VEXTUBRX:
11591 case PPC::VEXTUHLX:
11592 case PPC::VEXTUHRX:
11593 case PPC::VEXTUWLX:
11594 case PPC::VEXTUWRX:
11595 case PPC::VINSERTD:
11596 case PPC::VINSERTW:
11597 case PPC::VMAXFP:
11598 case PPC::VMAXSB:
11599 case PPC::VMAXSD:
11600 case PPC::VMAXSH:
11601 case PPC::VMAXSW:
11602 case PPC::VMAXUB:
11603 case PPC::VMAXUD:
11604 case PPC::VMAXUH:
11605 case PPC::VMAXUW:
11606 case PPC::VMINFP:
11607 case PPC::VMINSB:
11608 case PPC::VMINSD:
11609 case PPC::VMINSH:
11610 case PPC::VMINSW:
11611 case PPC::VMINUB:
11612 case PPC::VMINUD:
11613 case PPC::VMINUH:
11614 case PPC::VMINUW:
11615 case PPC::VMODSD:
11616 case PPC::VMODSQ:
11617 case PPC::VMODSW:
11618 case PPC::VMODUD:
11619 case PPC::VMODUQ:
11620 case PPC::VMODUW:
11621 case PPC::VMRGEW:
11622 case PPC::VMRGHB:
11623 case PPC::VMRGHH:
11624 case PPC::VMRGHW:
11625 case PPC::VMRGLB:
11626 case PPC::VMRGLH:
11627 case PPC::VMRGLW:
11628 case PPC::VMRGOW:
11629 case PPC::VMUL10ECUQ:
11630 case PPC::VMUL10EUQ:
11631 case PPC::VMULESB:
11632 case PPC::VMULESD:
11633 case PPC::VMULESH:
11634 case PPC::VMULESW:
11635 case PPC::VMULEUB:
11636 case PPC::VMULEUD:
11637 case PPC::VMULEUH:
11638 case PPC::VMULEUW:
11639 case PPC::VMULHSD:
11640 case PPC::VMULHSW:
11641 case PPC::VMULHUD:
11642 case PPC::VMULHUW:
11643 case PPC::VMULLD:
11644 case PPC::VMULOSB:
11645 case PPC::VMULOSD:
11646 case PPC::VMULOSH:
11647 case PPC::VMULOSW:
11648 case PPC::VMULOUB:
11649 case PPC::VMULOUD:
11650 case PPC::VMULOUH:
11651 case PPC::VMULOUW:
11652 case PPC::VMULUWM:
11653 case PPC::VNAND:
11654 case PPC::VNCIPHER:
11655 case PPC::VNCIPHERLAST:
11656 case PPC::VNOR:
11657 case PPC::VOR:
11658 case PPC::VORC:
11659 case PPC::VPDEPD:
11660 case PPC::VPEXTD:
11661 case PPC::VPKPX:
11662 case PPC::VPKSDSS:
11663 case PPC::VPKSDUS:
11664 case PPC::VPKSHSS:
11665 case PPC::VPKSHUS:
11666 case PPC::VPKSWSS:
11667 case PPC::VPKSWUS:
11668 case PPC::VPKUDUM:
11669 case PPC::VPKUDUS:
11670 case PPC::VPKUHUM:
11671 case PPC::VPKUHUS:
11672 case PPC::VPKUWUM:
11673 case PPC::VPKUWUS:
11674 case PPC::VPMSUMB:
11675 case PPC::VPMSUMD:
11676 case PPC::VPMSUMH:
11677 case PPC::VPMSUMW:
11678 case PPC::VRLB:
11679 case PPC::VRLD:
11680 case PPC::VRLDMI:
11681 case PPC::VRLDNM:
11682 case PPC::VRLH:
11683 case PPC::VRLQ:
11684 case PPC::VRLQMI:
11685 case PPC::VRLQNM:
11686 case PPC::VRLW:
11687 case PPC::VRLWMI:
11688 case PPC::VRLWNM:
11689 case PPC::VSL:
11690 case PPC::VSLB:
11691 case PPC::VSLD:
11692 case PPC::VSLH:
11693 case PPC::VSLO:
11694 case PPC::VSLQ:
11695 case PPC::VSLV:
11696 case PPC::VSLW:
11697 case PPC::VSPLTB:
11698 case PPC::VSPLTBs:
11699 case PPC::VSPLTH:
11700 case PPC::VSPLTHs:
11701 case PPC::VSPLTW:
11702 case PPC::VSR:
11703 case PPC::VSRAB:
11704 case PPC::VSRAD:
11705 case PPC::VSRAH:
11706 case PPC::VSRAQ:
11707 case PPC::VSRAW:
11708 case PPC::VSRB:
11709 case PPC::VSRD:
11710 case PPC::VSRH:
11711 case PPC::VSRO:
11712 case PPC::VSRQ:
11713 case PPC::VSRV:
11714 case PPC::VSRW:
11715 case PPC::VSUBCUQ:
11716 case PPC::VSUBCUW:
11717 case PPC::VSUBFP:
11718 case PPC::VSUBSBS:
11719 case PPC::VSUBSHS:
11720 case PPC::VSUBSWS:
11721 case PPC::VSUBUBM:
11722 case PPC::VSUBUBS:
11723 case PPC::VSUBUDM:
11724 case PPC::VSUBUHM:
11725 case PPC::VSUBUHS:
11726 case PPC::VSUBUQM:
11727 case PPC::VSUBUWM:
11728 case PPC::VSUBUWS:
11729 case PPC::VSUM2SWS:
11730 case PPC::VSUM4SBS:
11731 case PPC::VSUM4SHS:
11732 case PPC::VSUM4UBS:
11733 case PPC::VSUMSWS:
11734 case PPC::VXOR: {
11735 switch (OpNum) {
11736 case 0:
11737 // op: VD
11738 return 21;
11739 case 1:
11740 // op: VA
11741 return 16;
11742 case 2:
11743 // op: VB
11744 return 11;
11745 }
11746 break;
11747 }
11748 case PPC::VMUL10CUQ:
11749 case PPC::VMUL10UQ:
11750 case PPC::VSBOX: {
11751 switch (OpNum) {
11752 case 0:
11753 // op: VD
11754 return 21;
11755 case 1:
11756 // op: VA
11757 return 16;
11758 }
11759 break;
11760 }
11761 case PPC::BCDCFN_rec:
11762 case PPC::BCDCFSQ_rec:
11763 case PPC::BCDCFZ_rec:
11764 case PPC::BCDCTZ_rec:
11765 case PPC::BCDSETSGN_rec: {
11766 switch (OpNum) {
11767 case 0:
11768 // op: VD
11769 return 21;
11770 case 1:
11771 // op: VB
11772 return 11;
11773 case 2:
11774 // op: PS
11775 return 9;
11776 }
11777 break;
11778 }
11779 case PPC::BCDCTN_rec:
11780 case PPC::BCDCTSQ_rec:
11781 case PPC::MTVSRBM:
11782 case PPC::MTVSRDM:
11783 case PPC::MTVSRHM:
11784 case PPC::MTVSRQM:
11785 case PPC::MTVSRWM:
11786 case PPC::VCFSX_0:
11787 case PPC::VCFUX_0:
11788 case PPC::VCLZB:
11789 case PPC::VCLZD:
11790 case PPC::VCLZH:
11791 case PPC::VCLZLSBB:
11792 case PPC::VCLZW:
11793 case PPC::VCTSXS_0:
11794 case PPC::VCTUXS_0:
11795 case PPC::VCTZB:
11796 case PPC::VCTZD:
11797 case PPC::VCTZH:
11798 case PPC::VCTZLSBB:
11799 case PPC::VCTZW:
11800 case PPC::VEXPANDBM:
11801 case PPC::VEXPANDDM:
11802 case PPC::VEXPANDHM:
11803 case PPC::VEXPANDQM:
11804 case PPC::VEXPANDWM:
11805 case PPC::VEXPTEFP:
11806 case PPC::VEXTRACTBM:
11807 case PPC::VEXTRACTDM:
11808 case PPC::VEXTRACTHM:
11809 case PPC::VEXTRACTQM:
11810 case PPC::VEXTRACTWM:
11811 case PPC::VEXTSB2D:
11812 case PPC::VEXTSB2Ds:
11813 case PPC::VEXTSB2W:
11814 case PPC::VEXTSB2Ws:
11815 case PPC::VEXTSD2Q:
11816 case PPC::VEXTSH2D:
11817 case PPC::VEXTSH2Ds:
11818 case PPC::VEXTSH2W:
11819 case PPC::VEXTSH2Ws:
11820 case PPC::VEXTSW2D:
11821 case PPC::VEXTSW2Ds:
11822 case PPC::VGBBD:
11823 case PPC::VLOGEFP:
11824 case PPC::VNEGD:
11825 case PPC::VNEGW:
11826 case PPC::VPOPCNTB:
11827 case PPC::VPOPCNTD:
11828 case PPC::VPOPCNTH:
11829 case PPC::VPOPCNTW:
11830 case PPC::VPRTYBD:
11831 case PPC::VPRTYBQ:
11832 case PPC::VPRTYBW:
11833 case PPC::VREFP:
11834 case PPC::VRFIM:
11835 case PPC::VRFIN:
11836 case PPC::VRFIP:
11837 case PPC::VRFIZ:
11838 case PPC::VRSQRTEFP:
11839 case PPC::VUPKHPX:
11840 case PPC::VUPKHSB:
11841 case PPC::VUPKHSH:
11842 case PPC::VUPKHSW:
11843 case PPC::VUPKLPX:
11844 case PPC::VUPKLSB:
11845 case PPC::VUPKLSH:
11846 case PPC::VUPKLSW: {
11847 switch (OpNum) {
11848 case 0:
11849 // op: VD
11850 return 21;
11851 case 1:
11852 // op: VB
11853 return 11;
11854 }
11855 break;
11856 }
11857 case PPC::VINSBLX:
11858 case PPC::VINSBRX:
11859 case PPC::VINSBVLX:
11860 case PPC::VINSBVRX:
11861 case PPC::VINSD:
11862 case PPC::VINSDLX:
11863 case PPC::VINSDRX:
11864 case PPC::VINSERTB:
11865 case PPC::VINSERTH:
11866 case PPC::VINSHLX:
11867 case PPC::VINSHRX:
11868 case PPC::VINSHVLX:
11869 case PPC::VINSHVRX:
11870 case PPC::VINSW:
11871 case PPC::VINSWLX:
11872 case PPC::VINSWRX:
11873 case PPC::VINSWVLX:
11874 case PPC::VINSWVRX: {
11875 switch (OpNum) {
11876 case 0:
11877 // op: VD
11878 return 21;
11879 case 2:
11880 // op: VA
11881 return 16;
11882 case 3:
11883 // op: VB
11884 return 11;
11885 }
11886 break;
11887 }
11888 case PPC::MFVSCR:
11889 case PPC::V_SETALLONES:
11890 case PPC::V_SETALLONESB:
11891 case PPC::V_SETALLONESH: {
11892 switch (OpNum) {
11893 case 0:
11894 // op: VD
11895 return 21;
11896 }
11897 break;
11898 }
11899 case PPC::XSRQPI:
11900 case PPC::XSRQPIX:
11901 case PPC::XSRQPXP: {
11902 switch (OpNum) {
11903 case 0:
11904 // op: VRT
11905 return 21;
11906 case 1:
11907 // op: R
11908 return 16;
11909 case 2:
11910 // op: VRB
11911 return 11;
11912 case 3:
11913 // op: idx
11914 return 9;
11915 }
11916 break;
11917 }
11918 case PPC::VSLDBI:
11919 case PPC::VSRDBI: {
11920 switch (OpNum) {
11921 case 0:
11922 // op: VRT
11923 return 21;
11924 case 1:
11925 // op: VRA
11926 return 16;
11927 case 2:
11928 // op: VRB
11929 return 11;
11930 case 3:
11931 // op: SD
11932 return 6;
11933 }
11934 break;
11935 }
11936 case PPC::VUPKINT4TOBF16:
11937 case PPC::VUPKINT4TOFP32:
11938 case PPC::VUPKINT8TOBF16:
11939 case PPC::VUPKINT8TOFP32: {
11940 switch (OpNum) {
11941 case 0:
11942 // op: VRT
11943 return 21;
11944 case 1:
11945 // op: VRB
11946 return 11;
11947 case 2:
11948 // op: UIM
11949 return 16;
11950 }
11951 break;
11952 }
11953 case PPC::VUPKHSNTOB:
11954 case PPC::VUPKLSNTOB: {
11955 switch (OpNum) {
11956 case 0:
11957 // op: VRT
11958 return 21;
11959 case 1:
11960 // op: VRB
11961 return 11;
11962 }
11963 break;
11964 }
11965 case PPC::VUCMPRHB:
11966 case PPC::VUCMPRHH:
11967 case PPC::VUCMPRHN:
11968 case PPC::VUCMPRLB:
11969 case PPC::VUCMPRLH:
11970 case PPC::VUCMPRLN: {
11971 switch (OpNum) {
11972 case 0:
11973 // op: VRT
11974 return 21;
11975 case 2:
11976 // op: VRB
11977 return 11;
11978 case 1:
11979 // op: VRA
11980 return 16;
11981 }
11982 break;
11983 }
11984 case PPC::VSTRIBL:
11985 case PPC::VSTRIBL_rec:
11986 case PPC::VSTRIBR:
11987 case PPC::VSTRIBR_rec:
11988 case PPC::VSTRIHL:
11989 case PPC::VSTRIHL_rec:
11990 case PPC::VSTRIHR:
11991 case PPC::VSTRIHR_rec: {
11992 switch (OpNum) {
11993 case 0:
11994 // op: VT
11995 return 21;
11996 case 1:
11997 // op: VB
11998 return 11;
11999 }
12000 break;
12001 }
12002 case PPC::PLXVonlypc:
12003 case PPC::PSTXVonlypc: {
12004 switch (OpNum) {
12005 case 0:
12006 // op: XST
12007 return 21;
12008 case 1:
12009 // op: D
12010 return 0;
12011 }
12012 break;
12013 }
12014 case PPC::PLXV:
12015 case PPC::PLXVnopc:
12016 case PPC::PLXVpc:
12017 case PPC::PSTXV:
12018 case PPC::PSTXVnopc:
12019 case PPC::PSTXVpc: {
12020 switch (OpNum) {
12021 case 0:
12022 // op: XST
12023 return 21;
12024 case 2:
12025 // op: RA
12026 return 16;
12027 case 1:
12028 // op: D
12029 return 0;
12030 }
12031 break;
12032 }
12033 case PPC::XVTSTDCDP:
12034 case PPC::XVTSTDCSP: {
12035 switch (OpNum) {
12036 case 0:
12037 // op: XT
12038 return 0;
12039 case 1:
12040 // op: DCMX
12041 return 2;
12042 case 2:
12043 // op: XB
12044 return 1;
12045 }
12046 break;
12047 }
12048 case PPC::XXSPLTIB: {
12049 switch (OpNum) {
12050 case 0:
12051 // op: XT
12052 return 0;
12053 case 1:
12054 // op: IMM8
12055 return 11;
12056 }
12057 break;
12058 }
12059 case PPC::LXSDX:
12060 case PPC::LXSIBZX:
12061 case PPC::LXSIHZX:
12062 case PPC::LXSIWAX:
12063 case PPC::LXSIWZX:
12064 case PPC::LXSSPX:
12065 case PPC::LXVB16X:
12066 case PPC::LXVD2X:
12067 case PPC::LXVDSX:
12068 case PPC::LXVH8X:
12069 case PPC::LXVL:
12070 case PPC::LXVLL:
12071 case PPC::LXVRBX:
12072 case PPC::LXVRDX:
12073 case PPC::LXVRHX:
12074 case PPC::LXVRL:
12075 case PPC::LXVRLL:
12076 case PPC::LXVRWX:
12077 case PPC::LXVW4X:
12078 case PPC::LXVWSX:
12079 case PPC::LXVX:
12080 case PPC::MTVSRDD:
12081 case PPC::STXSDX:
12082 case PPC::STXSIBX:
12083 case PPC::STXSIBXv:
12084 case PPC::STXSIHX:
12085 case PPC::STXSIHXv:
12086 case PPC::STXSIWX:
12087 case PPC::STXSSPX:
12088 case PPC::STXVB16X:
12089 case PPC::STXVD2X:
12090 case PPC::STXVH8X:
12091 case PPC::STXVL:
12092 case PPC::STXVLL:
12093 case PPC::STXVRBX:
12094 case PPC::STXVRDX:
12095 case PPC::STXVRHX:
12096 case PPC::STXVRL:
12097 case PPC::STXVRLL:
12098 case PPC::STXVRWX:
12099 case PPC::STXVW4X:
12100 case PPC::STXVX:
12101 case PPC::XSIEXPDP: {
12102 switch (OpNum) {
12103 case 0:
12104 // op: XT
12105 return 0;
12106 case 1:
12107 // op: RA
12108 return 16;
12109 case 2:
12110 // op: RB
12111 return 11;
12112 }
12113 break;
12114 }
12115 case PPC::MTVRD:
12116 case PPC::MTVRWA:
12117 case PPC::MTVRWZ:
12118 case PPC::MTVSRD:
12119 case PPC::MTVSRWA:
12120 case PPC::MTVSRWS:
12121 case PPC::MTVSRWZ: {
12122 switch (OpNum) {
12123 case 0:
12124 // op: XT
12125 return 0;
12126 case 1:
12127 // op: RA
12128 return 16;
12129 }
12130 break;
12131 }
12132 case PPC::LXVKQ: {
12133 switch (OpNum) {
12134 case 0:
12135 // op: XT
12136 return 0;
12137 case 1:
12138 // op: UIM
12139 return 11;
12140 }
12141 break;
12142 }
12143 case PPC::XXGENPCVBM:
12144 case PPC::XXGENPCVDM:
12145 case PPC::XXGENPCVHM:
12146 case PPC::XXGENPCVWM: {
12147 switch (OpNum) {
12148 case 0:
12149 // op: XT
12150 return 0;
12151 case 1:
12152 // op: VRB
12153 return 11;
12154 case 2:
12155 // op: IMM
12156 return 16;
12157 }
12158 break;
12159 }
12160 case PPC::XXPERMDIs:
12161 case PPC::XXSLDWIs: {
12162 switch (OpNum) {
12163 case 0:
12164 // op: XT
12165 return 0;
12166 case 1:
12167 // op: XA
12168 return 1;
12169 case 2:
12170 // op: D
12171 return 8;
12172 }
12173 break;
12174 }
12175 case PPC::XXPERMDI:
12176 case PPC::XXSLDWI: {
12177 switch (OpNum) {
12178 case 0:
12179 // op: XT
12180 return 0;
12181 case 1:
12182 // op: XA
12183 return 2;
12184 case 2:
12185 // op: XB
12186 return 1;
12187 case 3:
12188 // op: D
12189 return 8;
12190 }
12191 break;
12192 }
12193 case PPC::XXSSUMUDM:
12194 case PPC::XXSSUMUDMC: {
12195 switch (OpNum) {
12196 case 0:
12197 // op: XT
12198 return 0;
12199 case 1:
12200 // op: XA
12201 return 2;
12202 case 2:
12203 // op: XB
12204 return 1;
12205 case 3:
12206 // op: P
12207 return 10;
12208 }
12209 break;
12210 }
12211 case PPC::XXGFMUL128: {
12212 switch (OpNum) {
12213 case 0:
12214 // op: XT
12215 return 0;
12216 case 1:
12217 // op: XA
12218 return 2;
12219 case 2:
12220 // op: XB
12221 return 1;
12222 case 3:
12223 // op: P
12224 return 8;
12225 }
12226 break;
12227 }
12228 case PPC::XXMULMUL: {
12229 switch (OpNum) {
12230 case 0:
12231 // op: XT
12232 return 0;
12233 case 1:
12234 // op: XA
12235 return 2;
12236 case 2:
12237 // op: XB
12238 return 1;
12239 case 3:
12240 // op: S
12241 return 8;
12242 }
12243 break;
12244 }
12245 case PPC::XXMULMULHIADD: {
12246 switch (OpNum) {
12247 case 0:
12248 // op: XT
12249 return 0;
12250 case 1:
12251 // op: XA
12252 return 2;
12253 case 2:
12254 // op: XB
12255 return 1;
12256 case 3:
12257 // op: S0
12258 return 10;
12259 case 4:
12260 // op: S1
12261 return 9;
12262 case 5:
12263 // op: S2
12264 return 8;
12265 }
12266 break;
12267 }
12268 case PPC::XXMULMULLOADD: {
12269 switch (OpNum) {
12270 case 0:
12271 // op: XT
12272 return 0;
12273 case 1:
12274 // op: XA
12275 return 2;
12276 case 2:
12277 // op: XB
12278 return 1;
12279 case 3:
12280 // op: S1
12281 return 9;
12282 case 4:
12283 // op: S2
12284 return 8;
12285 }
12286 break;
12287 }
12288 case PPC::XXEVAL:
12289 case PPC::XXPERMX: {
12290 switch (OpNum) {
12291 case 0:
12292 // op: XT
12293 return 0;
12294 case 1:
12295 // op: XA
12296 return 2;
12297 case 2:
12298 // op: XB
12299 return 1;
12300 case 3:
12301 // op: XC
12302 return 3;
12303 case 4:
12304 // op: IMM
12305 return 32;
12306 }
12307 break;
12308 }
12309 case PPC::XXSSUMUDMCEXT: {
12310 switch (OpNum) {
12311 case 0:
12312 // op: XT
12313 return 0;
12314 case 1:
12315 // op: XA
12316 return 2;
12317 case 2:
12318 // op: XB
12319 return 1;
12320 case 3:
12321 // op: XC
12322 return 3;
12323 case 4:
12324 // op: P
12325 return 4;
12326 }
12327 break;
12328 }
12329 case PPC::XXBLENDVB:
12330 case PPC::XXBLENDVD:
12331 case PPC::XXBLENDVH:
12332 case PPC::XXBLENDVW:
12333 case PPC::XXSEL: {
12334 switch (OpNum) {
12335 case 0:
12336 // op: XT
12337 return 0;
12338 case 1:
12339 // op: XA
12340 return 2;
12341 case 2:
12342 // op: XB
12343 return 1;
12344 case 3:
12345 // op: XC
12346 return 3;
12347 }
12348 break;
12349 }
12350 case PPC::XSADDADDSUQM:
12351 case PPC::XSADDADDUQM:
12352 case PPC::XSADDDP:
12353 case PPC::XSADDSP:
12354 case PPC::XSADDSUBSUQM:
12355 case PPC::XSADDSUBUQM:
12356 case PPC::XSCMPEQDP:
12357 case PPC::XSCMPGEDP:
12358 case PPC::XSCMPGTDP:
12359 case PPC::XSCPSGNDP:
12360 case PPC::XSDIVDP:
12361 case PPC::XSDIVSP:
12362 case PPC::XSMAXCDP:
12363 case PPC::XSMAXDP:
12364 case PPC::XSMAXJDP:
12365 case PPC::XSMERGE2T1UQM:
12366 case PPC::XSMERGE2T2UQM:
12367 case PPC::XSMERGE2T3UQM:
12368 case PPC::XSMERGE3T1UQM:
12369 case PPC::XSMINCDP:
12370 case PPC::XSMINDP:
12371 case PPC::XSMINJDP:
12372 case PPC::XSMULDP:
12373 case PPC::XSMULSP:
12374 case PPC::XSREBASE2T1UQM:
12375 case PPC::XSREBASE2T2UQM:
12376 case PPC::XSREBASE2T3UQM:
12377 case PPC::XSREBASE2T4UQM:
12378 case PPC::XSREBASE3T1UQM:
12379 case PPC::XSREBASE3T2UQM:
12380 case PPC::XSREBASE3T3UQM:
12381 case PPC::XSSUBDP:
12382 case PPC::XSSUBSP:
12383 case PPC::XVADDDP:
12384 case PPC::XVADDSP:
12385 case PPC::XVADDUHM:
12386 case PPC::XVADDUWM:
12387 case PPC::XVCMPEQDP:
12388 case PPC::XVCMPEQDP_rec:
12389 case PPC::XVCMPEQSP:
12390 case PPC::XVCMPEQSP_rec:
12391 case PPC::XVCMPGEDP:
12392 case PPC::XVCMPGEDP_rec:
12393 case PPC::XVCMPGESP:
12394 case PPC::XVCMPGESP_rec:
12395 case PPC::XVCMPGTDP:
12396 case PPC::XVCMPGTDP_rec:
12397 case PPC::XVCMPGTSP:
12398 case PPC::XVCMPGTSP_rec:
12399 case PPC::XVCPSGNDP:
12400 case PPC::XVCPSGNSP:
12401 case PPC::XVDIVDP:
12402 case PPC::XVDIVSP:
12403 case PPC::XVIEXPDP:
12404 case PPC::XVIEXPSP:
12405 case PPC::XVMAXDP:
12406 case PPC::XVMAXSP:
12407 case PPC::XVMINDP:
12408 case PPC::XVMINSP:
12409 case PPC::XVMULDP:
12410 case PPC::XVMULHSH:
12411 case PPC::XVMULHSW:
12412 case PPC::XVMULHUH:
12413 case PPC::XVMULHUW:
12414 case PPC::XVMULSP:
12415 case PPC::XVMULUHM:
12416 case PPC::XVMULUWM:
12417 case PPC::XVRLW:
12418 case PPC::XVSUBDP:
12419 case PPC::XVSUBSP:
12420 case PPC::XVSUBUHM:
12421 case PPC::XVSUBUWM:
12422 case PPC::XXLAND:
12423 case PPC::XXLANDC:
12424 case PPC::XXLEQV:
12425 case PPC::XXLNAND:
12426 case PPC::XXLNOR:
12427 case PPC::XXLOR:
12428 case PPC::XXLORC:
12429 case PPC::XXLORf:
12430 case PPC::XXLXOR:
12431 case PPC::XXMRGHW:
12432 case PPC::XXMRGLW: {
12433 switch (OpNum) {
12434 case 0:
12435 // op: XT
12436 return 0;
12437 case 1:
12438 // op: XA
12439 return 2;
12440 case 2:
12441 // op: XB
12442 return 1;
12443 }
12444 break;
12445 }
12446 case PPC::XXPERM:
12447 case PPC::XXPERMR: {
12448 switch (OpNum) {
12449 case 0:
12450 // op: XT
12451 return 0;
12452 case 1:
12453 // op: XA
12454 return 2;
12455 case 3:
12456 // op: XB
12457 return 1;
12458 }
12459 break;
12460 }
12461 case PPC::XXSPLTW:
12462 case PPC::XXSPLTWs: {
12463 switch (OpNum) {
12464 case 0:
12465 // op: XT
12466 return 0;
12467 case 1:
12468 // op: XB
12469 return 1;
12470 case 2:
12471 // op: D
12472 return 16;
12473 }
12474 break;
12475 }
12476 case PPC::XXEXTRACTUW: {
12477 switch (OpNum) {
12478 case 0:
12479 // op: XT
12480 return 0;
12481 case 1:
12482 // op: XB
12483 return 1;
12484 case 2:
12485 // op: UIM5
12486 return 16;
12487 }
12488 break;
12489 }
12490 case PPC::XSABSDP:
12491 case PPC::XSCVDPHP:
12492 case PPC::XSCVDPSP:
12493 case PPC::XSCVDPSPN:
12494 case PPC::XSCVDPSXDS:
12495 case PPC::XSCVDPSXDSs:
12496 case PPC::XSCVDPSXWS:
12497 case PPC::XSCVDPSXWSs:
12498 case PPC::XSCVDPUXDS:
12499 case PPC::XSCVDPUXDSs:
12500 case PPC::XSCVDPUXWS:
12501 case PPC::XSCVDPUXWSs:
12502 case PPC::XSCVHPDP:
12503 case PPC::XSCVSPDP:
12504 case PPC::XSCVSPDPN:
12505 case PPC::XSCVSXDDP:
12506 case PPC::XSCVSXDSP:
12507 case PPC::XSCVUXDDP:
12508 case PPC::XSCVUXDSP:
12509 case PPC::XSNABSDP:
12510 case PPC::XSNABSDPs:
12511 case PPC::XSNEGDP:
12512 case PPC::XSRDPI:
12513 case PPC::XSRDPIC:
12514 case PPC::XSRDPIM:
12515 case PPC::XSRDPIP:
12516 case PPC::XSRDPIZ:
12517 case PPC::XSREDP:
12518 case PPC::XSRESP:
12519 case PPC::XSRSP:
12520 case PPC::XSRSQRTEDP:
12521 case PPC::XSRSQRTESP:
12522 case PPC::XSSQRTDP:
12523 case PPC::XSSQRTSP:
12524 case PPC::XVABSDP:
12525 case PPC::XVABSSP:
12526 case PPC::XVCVBF16SPN:
12527 case PPC::XVCVDPSP:
12528 case PPC::XVCVDPSXDS:
12529 case PPC::XVCVDPSXWS:
12530 case PPC::XVCVDPUXDS:
12531 case PPC::XVCVDPUXWS:
12532 case PPC::XVCVHPSP:
12533 case PPC::XVCVSPBF16:
12534 case PPC::XVCVSPDP:
12535 case PPC::XVCVSPHP:
12536 case PPC::XVCVSPSXDS:
12537 case PPC::XVCVSPSXWS:
12538 case PPC::XVCVSPUXDS:
12539 case PPC::XVCVSPUXWS:
12540 case PPC::XVCVSXDDP:
12541 case PPC::XVCVSXDSP:
12542 case PPC::XVCVSXWDP:
12543 case PPC::XVCVSXWSP:
12544 case PPC::XVCVUXDDP:
12545 case PPC::XVCVUXDSP:
12546 case PPC::XVCVUXWDP:
12547 case PPC::XVCVUXWSP:
12548 case PPC::XVNABSDP:
12549 case PPC::XVNABSSP:
12550 case PPC::XVNEGDP:
12551 case PPC::XVNEGSP:
12552 case PPC::XVRDPI:
12553 case PPC::XVRDPIC:
12554 case PPC::XVRDPIM:
12555 case PPC::XVRDPIP:
12556 case PPC::XVRDPIZ:
12557 case PPC::XVREDP:
12558 case PPC::XVRESP:
12559 case PPC::XVRSPI:
12560 case PPC::XVRSPIC:
12561 case PPC::XVRSPIM:
12562 case PPC::XVRSPIP:
12563 case PPC::XVRSPIZ:
12564 case PPC::XVRSQRTEDP:
12565 case PPC::XVRSQRTESP:
12566 case PPC::XVSQRTDP:
12567 case PPC::XVSQRTSP:
12568 case PPC::XVXEXPDP:
12569 case PPC::XVXEXPSP:
12570 case PPC::XVXSIGDP:
12571 case PPC::XVXSIGSP:
12572 case PPC::XXBRD:
12573 case PPC::XXBRH:
12574 case PPC::XXBRQ:
12575 case PPC::XXBRW: {
12576 switch (OpNum) {
12577 case 0:
12578 // op: XT
12579 return 0;
12580 case 1:
12581 // op: XB
12582 return 1;
12583 }
12584 break;
12585 }
12586 case PPC::XSMADDADP:
12587 case PPC::XSMADDASP:
12588 case PPC::XSMADDMDP:
12589 case PPC::XSMADDMSP:
12590 case PPC::XSMSUBADP:
12591 case PPC::XSMSUBASP:
12592 case PPC::XSMSUBMDP:
12593 case PPC::XSMSUBMSP:
12594 case PPC::XSNMADDADP:
12595 case PPC::XSNMADDASP:
12596 case PPC::XSNMADDMDP:
12597 case PPC::XSNMADDMSP:
12598 case PPC::XSNMSUBADP:
12599 case PPC::XSNMSUBASP:
12600 case PPC::XSNMSUBMDP:
12601 case PPC::XSNMSUBMSP:
12602 case PPC::XVMADDADP:
12603 case PPC::XVMADDASP:
12604 case PPC::XVMADDMDP:
12605 case PPC::XVMADDMSP:
12606 case PPC::XVMSUBADP:
12607 case PPC::XVMSUBASP:
12608 case PPC::XVMSUBMDP:
12609 case PPC::XVMSUBMSP:
12610 case PPC::XVNMADDADP:
12611 case PPC::XVNMADDASP:
12612 case PPC::XVNMADDMDP:
12613 case PPC::XVNMADDMSP:
12614 case PPC::XVNMSUBADP:
12615 case PPC::XVNMSUBASP:
12616 case PPC::XVNMSUBMDP:
12617 case PPC::XVNMSUBMSP: {
12618 switch (OpNum) {
12619 case 0:
12620 // op: XT
12621 return 0;
12622 case 2:
12623 // op: XA
12624 return 2;
12625 case 3:
12626 // op: XB
12627 return 1;
12628 }
12629 break;
12630 }
12631 case PPC::XXINSERTW: {
12632 switch (OpNum) {
12633 case 0:
12634 // op: XT
12635 return 0;
12636 case 2:
12637 // op: XB
12638 return 1;
12639 case 3:
12640 // op: UIM5
12641 return 16;
12642 }
12643 break;
12644 }
12645 case PPC::XXLEQVOnes:
12646 case PPC::XXLXORdpz:
12647 case PPC::XXLXORspz:
12648 case PPC::XXLXORz: {
12649 switch (OpNum) {
12650 case 0:
12651 // op: XT
12652 return 0;
12653 }
12654 break;
12655 }
12656 case PPC::XXSPLTIDP:
12657 case PPC::XXSPLTIW: {
12658 switch (OpNum) {
12659 case 0:
12660 // op: XT
12661 return 16;
12662 case 1:
12663 // op: IMM32
12664 return 0;
12665 }
12666 break;
12667 }
12668 case PPC::XXSPLTI32DX: {
12669 switch (OpNum) {
12670 case 0:
12671 // op: XT
12672 return 16;
12673 case 2:
12674 // op: IX
12675 return 17;
12676 case 3:
12677 // op: IMM32
12678 return 0;
12679 }
12680 break;
12681 }
12682 case PPC::LXV:
12683 case PPC::STXV: {
12684 switch (OpNum) {
12685 case 0:
12686 // op: XT
12687 return 3;
12688 case 2:
12689 // op: RA
12690 return 16;
12691 case 1:
12692 // op: DQ
12693 return 4;
12694 }
12695 break;
12696 }
12697 case PPC::PLXVPonlypc:
12698 case PPC::PSTXVPonlypc: {
12699 switch (OpNum) {
12700 case 0:
12701 // op: XTp
12702 return 21;
12703 case 1:
12704 // op: D
12705 return 0;
12706 }
12707 break;
12708 }
12709 case PPC::LXVPB32X:
12710 case PPC::LXVPRL:
12711 case PPC::LXVPRLL:
12712 case PPC::LXVPX:
12713 case PPC::STXVPB32X:
12714 case PPC::STXVPRL:
12715 case PPC::STXVPRLL:
12716 case PPC::STXVPX: {
12717 switch (OpNum) {
12718 case 0:
12719 // op: XTp
12720 return 21;
12721 case 1:
12722 // op: RA
12723 return 16;
12724 case 2:
12725 // op: RB
12726 return 11;
12727 }
12728 break;
12729 }
12730 case PPC::XXAESDECP:
12731 case PPC::XXAESENCP: {
12732 switch (OpNum) {
12733 case 0:
12734 // op: XTp
12735 return 21;
12736 case 1:
12737 // op: XAp
12738 return 2;
12739 case 2:
12740 // op: XBp
12741 return 1;
12742 case 3:
12743 // op: M
12744 return 11;
12745 }
12746 break;
12747 }
12748 case PPC::XXAESGENLKP: {
12749 switch (OpNum) {
12750 case 0:
12751 // op: XTp
12752 return 21;
12753 case 1:
12754 // op: XBp
12755 return 1;
12756 case 2:
12757 // op: M
12758 return 11;
12759 }
12760 break;
12761 }
12762 case PPC::PLXVP:
12763 case PPC::PLXVPnopc:
12764 case PPC::PLXVPpc:
12765 case PPC::PSTXVP:
12766 case PPC::PSTXVPnopc:
12767 case PPC::PSTXVPpc: {
12768 switch (OpNum) {
12769 case 0:
12770 // op: XTp
12771 return 21;
12772 case 2:
12773 // op: RA
12774 return 16;
12775 case 1:
12776 // op: D
12777 return 0;
12778 }
12779 break;
12780 }
12781 case PPC::LXVP:
12782 case PPC::STXVP: {
12783 switch (OpNum) {
12784 case 0:
12785 // op: XTp
12786 return 21;
12787 case 2:
12788 // op: RA
12789 return 16;
12790 case 1:
12791 // op: DQ
12792 return 4;
12793 }
12794 break;
12795 }
12796 case PPC::EFDCMPEQ:
12797 case PPC::EFDCMPGT:
12798 case PPC::EFDCMPLT:
12799 case PPC::EFDTSTEQ:
12800 case PPC::EFDTSTGT:
12801 case PPC::EFDTSTLT:
12802 case PPC::EFSCMPEQ:
12803 case PPC::EFSCMPGT:
12804 case PPC::EFSCMPLT:
12805 case PPC::EFSTSTEQ:
12806 case PPC::EFSTSTGT:
12807 case PPC::EFSTSTLT:
12808 case PPC::EVCMPEQ:
12809 case PPC::EVCMPGTS:
12810 case PPC::EVCMPGTU:
12811 case PPC::EVCMPLTS:
12812 case PPC::EVCMPLTU:
12813 case PPC::EVFSCMPEQ:
12814 case PPC::EVFSCMPGT:
12815 case PPC::EVFSCMPLT:
12816 case PPC::EVFSTSTEQ:
12817 case PPC::EVFSTSTGT:
12818 case PPC::EVFSTSTLT: {
12819 switch (OpNum) {
12820 case 0:
12821 // op: crD
12822 return 23;
12823 case 1:
12824 // op: RA
12825 return 16;
12826 case 2:
12827 // op: RB
12828 return 11;
12829 }
12830 break;
12831 }
12832 case PPC::DMXXEXTFDMR256: {
12833 switch (OpNum) {
12834 case 1:
12835 // op: AT
12836 return 23;
12837 case 0:
12838 // op: XBp
12839 return 1;
12840 case 2:
12841 // op: P
12842 return 11;
12843 }
12844 break;
12845 }
12846 case PPC::XXMFACC:
12847 case PPC::XXMFACCW: {
12848 switch (OpNum) {
12849 case 1:
12850 // op: AT
12851 return 23;
12852 }
12853 break;
12854 }
12855 case PPC::BCTRL_LWZinto_toc:
12856 case PPC::BCTRL_LWZinto_toc_RM: {
12857 switch (OpNum) {
12858 case 1:
12859 // op: RA
12860 return 16;
12861 case 0:
12862 // op: D
12863 return 0;
12864 }
12865 break;
12866 }
12867 case PPC::BCTRL8_LDinto_toc:
12868 case PPC::BCTRL8_LDinto_toc_RM: {
12869 switch (OpNum) {
12870 case 1:
12871 // op: RA
12872 return 16;
12873 case 0:
12874 // op: D
12875 return 2;
12876 }
12877 break;
12878 }
12879 case PPC::TLBILX: {
12880 switch (OpNum) {
12881 case 1:
12882 // op: RA
12883 return 16;
12884 case 2:
12885 // op: RB
12886 return 11;
12887 case 0:
12888 // op: T
12889 return 21;
12890 }
12891 break;
12892 }
12893 case PPC::TLBIE8P9:
12894 case PPC::TLBIEP:
12895 case PPC::TLBIEP8:
12896 case PPC::TLBIEP9: {
12897 switch (OpNum) {
12898 case 1:
12899 // op: RS
12900 return 21;
12901 case 0:
12902 // op: RB
12903 return 11;
12904 case 2:
12905 // op: RIC
12906 return 18;
12907 case 3:
12908 // op: PRS
12909 return 17;
12910 case 4:
12911 // op: R
12912 return 16;
12913 }
12914 break;
12915 }
12916 case PPC::TLBIEIO: {
12917 switch (OpNum) {
12918 case 1:
12919 // op: RS
12920 return 21;
12921 case 0:
12922 // op: RB
12923 return 11;
12924 case 2:
12925 // op: RIC
12926 return 18;
12927 }
12928 break;
12929 }
12930 case PPC::MTOCRF:
12931 case PPC::MTOCRF8: {
12932 switch (OpNum) {
12933 case 1:
12934 // op: RST
12935 return 21;
12936 case 0:
12937 // op: FXM
12938 return 12;
12939 }
12940 break;
12941 }
12942 case PPC::MTPMR:
12943 case PPC::MTSPR:
12944 case PPC::MTSPR8: {
12945 switch (OpNum) {
12946 case 1:
12947 // op: RST
12948 return 21;
12949 case 0:
12950 // op: SPR
12951 return 11;
12952 }
12953 break;
12954 }
12955 case PPC::STBUX:
12956 case PPC::STBUX8:
12957 case PPC::STDUX:
12958 case PPC::STFDUX:
12959 case PPC::STFSUX:
12960 case PPC::STHUX:
12961 case PPC::STHUX8:
12962 case PPC::STWUX:
12963 case PPC::STWUX8: {
12964 switch (OpNum) {
12965 case 1:
12966 // op: RST
12967 return 21;
12968 case 2:
12969 // op: RA
12970 return 16;
12971 case 3:
12972 // op: RB
12973 return 11;
12974 }
12975 break;
12976 }
12977 case PPC::STBU:
12978 case PPC::STBU8:
12979 case PPC::STFDU:
12980 case PPC::STFSU:
12981 case PPC::STHU:
12982 case PPC::STHU8:
12983 case PPC::STWU:
12984 case PPC::STWU8: {
12985 switch (OpNum) {
12986 case 1:
12987 // op: RST
12988 return 21;
12989 case 3:
12990 // op: RA
12991 return 16;
12992 case 2:
12993 // op: D
12994 return 0;
12995 }
12996 break;
12997 }
12998 case PPC::STDU: {
12999 switch (OpNum) {
13000 case 1:
13001 // op: RST
13002 return 21;
13003 case 3:
13004 // op: RA
13005 return 16;
13006 case 2:
13007 // op: D
13008 return 2;
13009 }
13010 break;
13011 }
13012 case PPC::MTVRSAVEv: {
13013 switch (OpNum) {
13014 case 1:
13015 // op: RST
13016 return 21;
13017 }
13018 break;
13019 }
13020 case PPC::DENBCD:
13021 case PPC::DENBCDQ:
13022 case PPC::DENBCDQ_rec:
13023 case PPC::DENBCD_rec: {
13024 switch (OpNum) {
13025 case 1:
13026 // op: S
13027 return 20;
13028 case 0:
13029 // op: FRT
13030 return 21;
13031 case 2:
13032 // op: FRB
13033 return 11;
13034 }
13035 break;
13036 }
13037 case PPC::DDEDPD:
13038 case PPC::DDEDPDQ:
13039 case PPC::DDEDPDQ_rec:
13040 case PPC::DDEDPD_rec: {
13041 switch (OpNum) {
13042 case 1:
13043 // op: SP
13044 return 19;
13045 case 0:
13046 // op: FRT
13047 return 21;
13048 case 2:
13049 // op: FRB
13050 return 11;
13051 }
13052 break;
13053 }
13054 case PPC::MFVRD:
13055 case PPC::MFVRWZ:
13056 case PPC::MFVSRD:
13057 case PPC::MFVSRLD:
13058 case PPC::MFVSRWZ: {
13059 switch (OpNum) {
13060 case 1:
13061 // op: XT
13062 return 0;
13063 case 0:
13064 // op: RA
13065 return 16;
13066 }
13067 break;
13068 }
13069 case PPC::DMXXEXTFDMR512:
13070 case PPC::DMXXEXTFDMR512_HI: {
13071 switch (OpNum) {
13072 case 2:
13073 // op: AT
13074 return 23;
13075 case 0:
13076 // op: XAp
13077 return 2;
13078 case 1:
13079 // op: XBp
13080 return 1;
13081 }
13082 break;
13083 }
13084 case PPC::CP_PASTE8_rec:
13085 case PPC::CP_PASTE_rec: {
13086 switch (OpNum) {
13087 case 2:
13088 // op: L
13089 return 21;
13090 case 0:
13091 // op: RA
13092 return 16;
13093 case 1:
13094 // op: RB
13095 return 11;
13096 }
13097 break;
13098 }
13099 case PPC::MTFSF:
13100 case PPC::MTFSF_rec: {
13101 switch (OpNum) {
13102 case 2:
13103 // op: L
13104 return 25;
13105 case 0:
13106 // op: FLM
13107 return 17;
13108 case 3:
13109 // op: W
13110 return 16;
13111 case 1:
13112 // op: FRB
13113 return 11;
13114 }
13115 break;
13116 }
13117 case PPC::HASHCHK:
13118 case PPC::HASHCHK8:
13119 case PPC::HASHCHKP:
13120 case PPC::HASHCHKP8:
13121 case PPC::HASHST:
13122 case PPC::HASHST8:
13123 case PPC::HASHSTP:
13124 case PPC::HASHSTP8: {
13125 switch (OpNum) {
13126 case 2:
13127 // op: RA
13128 return 16;
13129 case 1:
13130 // op: D
13131 return 0;
13132 case 0:
13133 // op: RB
13134 return 11;
13135 }
13136 break;
13137 }
13138 case PPC::DCBTEP:
13139 case PPC::DCBTSTEP: {
13140 switch (OpNum) {
13141 case 2:
13142 // op: TH
13143 return 21;
13144 case 0:
13145 // op: RA
13146 return 16;
13147 case 1:
13148 // op: RB
13149 return 11;
13150 }
13151 break;
13152 }
13153 case PPC::EVSEL: {
13154 switch (OpNum) {
13155 case 3:
13156 // op: crD
13157 return 0;
13158 case 1:
13159 // op: RA
13160 return 16;
13161 case 2:
13162 // op: RB
13163 return 11;
13164 case 0:
13165 // op: RT
13166 return 21;
13167 }
13168 break;
13169 }
13170 default:
13171 reportUnsupportedInst(MI);
13172 }
13173 reportUnsupportedOperand(MI, OpNum);
13174}
13175
13176#endif // GET_OPERAND_BIT_OFFSET
13177
13178