1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|*                                                                            *|
3|* Machine Code Emitter                                                       *|
4|*                                                                            *|
5|* Automatically generated file, do not edit!                                 *|
6|*                                                                            *|
7\*===----------------------------------------------------------------------===*/
8
9uint64_t SystemZMCCodeEmitter::getBinaryCodeForInstr(const MCInst &MI,
10    SmallVectorImpl<MCFixup> &Fixups,
11    const MCSubtargetInfo &STI) const {
12  static const uint64_t InstBits[] = {
13    UINT64_C(0),
14    UINT64_C(0),
15    UINT64_C(0),
16    UINT64_C(0),
17    UINT64_C(0),
18    UINT64_C(0),
19    UINT64_C(0),
20    UINT64_C(0),
21    UINT64_C(0),
22    UINT64_C(0),
23    UINT64_C(0),
24    UINT64_C(0),
25    UINT64_C(0),
26    UINT64_C(0),
27    UINT64_C(0),
28    UINT64_C(0),
29    UINT64_C(0),
30    UINT64_C(0),
31    UINT64_C(0),
32    UINT64_C(0),
33    UINT64_C(0),
34    UINT64_C(0),
35    UINT64_C(0),
36    UINT64_C(0),
37    UINT64_C(1509949440),	// A
38    UINT64_C(260584255782938),	// ADB
39    UINT64_C(3004825600),	// ADBR
40    UINT64_C(0),
41    UINT64_C(0),
42    UINT64_C(0),
43    UINT64_C(260584255782922),	// AEB
44    UINT64_C(3003777024),	// AEBR
45    UINT64_C(0),
46    UINT64_C(213343910494208),	// AFI
47    UINT64_C(0),
48    UINT64_C(249589139505160),	// AG
49    UINT64_C(249589139505176),	// AGF
50    UINT64_C(213339615526912),	// AGFI
51    UINT64_C(3105357824),	// AGFR
52    UINT64_C(2802515968),	// AGHI
53    UINT64_C(259484744155353),	// AGHIK
54    UINT64_C(3104309248),	// AGR
55    UINT64_C(3118989312),	// AGRK
56    UINT64_C(258385232527482),	// AGSI
57    UINT64_C(1241513984),	// AH
58    UINT64_C(2802450432),	// AHI
59    UINT64_C(259484744155352),	// AHIK
60    UINT64_C(0),
61    UINT64_C(0),
62    UINT64_C(249589139505274),	// AHY
63    UINT64_C(224334731804672),	// AIH
64    UINT64_C(1577058304),	// AL
65    UINT64_C(249589139505304),	// ALC
66    UINT64_C(249589139505288),	// ALCG
67    UINT64_C(3112697856),	// ALCGR
68    UINT64_C(3113746432),	// ALCR
69    UINT64_C(213352500428800),	// ALFI
70    UINT64_C(249589139505162),	// ALG
71    UINT64_C(249589139505178),	// ALGF
72    UINT64_C(213348205461504),	// ALGFI
73    UINT64_C(3105488896),	// ALGFR
74    UINT64_C(259484744155355),	// ALGHSIK
75    UINT64_C(3104440320),	// ALGR
76    UINT64_C(3119120384),	// ALGRK
77    UINT64_C(259484744155354),	// ALHSIK
78    UINT64_C(7680),	// ALR
79    UINT64_C(3120168960),	// ALRK
80    UINT64_C(249589139505246),	// ALY
81    UINT64_C(6656),	// AR
82    UINT64_C(3120037888),	// ARK
83    UINT64_C(258385232527466),	// ASI
84    UINT64_C(0),
85    UINT64_C(0),
86    UINT64_C(0),
87    UINT64_C(0),
88    UINT64_C(0),
89    UINT64_C(0),
90    UINT64_C(0),
91    UINT64_C(0),
92    UINT64_C(0),
93    UINT64_C(0),
94    UINT64_C(0),
95    UINT64_C(0),
96    UINT64_C(0),
97    UINT64_C(0),
98    UINT64_C(0),
99    UINT64_C(0),
100    UINT64_C(0),
101    UINT64_C(0),
102    UINT64_C(0),
103    UINT64_C(0),
104    UINT64_C(0),
105    UINT64_C(0),
106    UINT64_C(0),
107    UINT64_C(0),
108    UINT64_C(0),
109    UINT64_C(0),
110    UINT64_C(0),
111    UINT64_C(0),
112    UINT64_C(0),
113    UINT64_C(0),
114    UINT64_C(0),
115    UINT64_C(0),
116    UINT64_C(0),
117    UINT64_C(0),
118    UINT64_C(0),
119    UINT64_C(0),
120    UINT64_C(0),
121    UINT64_C(0),
122    UINT64_C(0),
123    UINT64_C(0),
124    UINT64_C(0),
125    UINT64_C(0),
126    UINT64_C(0),
127    UINT64_C(0),
128    UINT64_C(0),
129    UINT64_C(0),
130    UINT64_C(0),
131    UINT64_C(0),
132    UINT64_C(0),
133    UINT64_C(0),
134    UINT64_C(0),
135    UINT64_C(0),
136    UINT64_C(0),
137    UINT64_C(0),
138    UINT64_C(0),
139    UINT64_C(0),
140    UINT64_C(0),
141    UINT64_C(0),
142    UINT64_C(0),
143    UINT64_C(0),
144    UINT64_C(0),
145    UINT64_C(0),
146    UINT64_C(0),
147    UINT64_C(0),
148    UINT64_C(0),
149    UINT64_C(0),
150    UINT64_C(0),
151    UINT64_C(0),
152    UINT64_C(0),
153    UINT64_C(0),
154    UINT64_C(0),
155    UINT64_C(0),
156    UINT64_C(0),
157    UINT64_C(3007971328),	// AXBR
158    UINT64_C(249589139505242),	// AY
159    UINT64_C(1792),	// AsmBCR
160    UINT64_C(2802057216),	// AsmBRC
161    UINT64_C(211123412402176),	// AsmBRCL
162    UINT64_C(259484744155260),	// AsmCGIJ
163    UINT64_C(259484744155236),	// AsmCGRJ
164    UINT64_C(259484744155262),	// AsmCIJ
165    UINT64_C(259484744155261),	// AsmCLGIJ
166    UINT64_C(259484744155237),	// AsmCLGRJ
167    UINT64_C(259484744155263),	// AsmCLIJ
168    UINT64_C(259484744155255),	// AsmCLRJ
169    UINT64_C(259484744155254),	// AsmCRJ
170    UINT64_C(1920),	// AsmEBR
171    UINT64_C(2810445824),	// AsmEJ
172    UINT64_C(211673168216064),	// AsmEJG
173    UINT64_C(258419592265970),	// AsmELOC
174    UINT64_C(258419592265954),	// AsmELOCG
175    UINT64_C(3118628864),	// AsmELOCGR
176    UINT64_C(3119677440),	// AsmELOCR
177    UINT64_C(258419592265971),	// AsmESTOC
178    UINT64_C(258419592265955),	// AsmESTOCG
179    UINT64_C(1824),	// AsmHBR
180    UINT64_C(1952),	// AsmHEBR
181    UINT64_C(2812542976),	// AsmHEJ
182    UINT64_C(211810607169536),	// AsmHEJG
183    UINT64_C(258428182200562),	// AsmHELOC
184    UINT64_C(258428182200546),	// AsmHELOCG
185    UINT64_C(3118637056),	// AsmHELOCGR
186    UINT64_C(3119685632),	// AsmHELOCR
187    UINT64_C(258428182200563),	// AsmHESTOC
188    UINT64_C(258428182200547),	// AsmHESTOCG
189    UINT64_C(2804154368),	// AsmHJ
190    UINT64_C(211260851355648),	// AsmHJG
191    UINT64_C(258393822462194),	// AsmHLOC
192    UINT64_C(258393822462178),	// AsmHLOCG
193    UINT64_C(3118604288),	// AsmHLOCGR
194    UINT64_C(3119652864),	// AsmHLOCR
195    UINT64_C(258393822462195),	// AsmHSTOC
196    UINT64_C(258393822462179),	// AsmHSTOCG
197    UINT64_C(259519103893628),	// AsmJEAltCGI
198    UINT64_C(259484744188004),	// AsmJEAltCGR
199    UINT64_C(259519103893630),	// AsmJEAltCI
200    UINT64_C(259519103893629),	// AsmJEAltCLGI
201    UINT64_C(259484744188005),	// AsmJEAltCLGR
202    UINT64_C(259519103893631),	// AsmJEAltCLI
203    UINT64_C(259484744188023),	// AsmJEAltCLR
204    UINT64_C(259484744188022),	// AsmJEAltCR
205    UINT64_C(259519103893628),	// AsmJECGI
206    UINT64_C(259484744188004),	// AsmJECGR
207    UINT64_C(259519103893630),	// AsmJECI
208    UINT64_C(259519103893629),	// AsmJECLGI
209    UINT64_C(259484744188005),	// AsmJECLGR
210    UINT64_C(259519103893631),	// AsmJECLI
211    UINT64_C(259484744188023),	// AsmJECLR
212    UINT64_C(259484744188022),	// AsmJECR
213    UINT64_C(259493334089852),	// AsmJHAltCGI
214    UINT64_C(259484744163428),	// AsmJHAltCGR
215    UINT64_C(259493334089854),	// AsmJHAltCI
216    UINT64_C(259493334089853),	// AsmJHAltCLGI
217    UINT64_C(259484744163429),	// AsmJHAltCLGR
218    UINT64_C(259493334089855),	// AsmJHAltCLI
219    UINT64_C(259484744163447),	// AsmJHAltCLR
220    UINT64_C(259484744163446),	// AsmJHAltCR
221    UINT64_C(259493334089852),	// AsmJHCGI
222    UINT64_C(259484744163428),	// AsmJHCGR
223    UINT64_C(259493334089854),	// AsmJHCI
224    UINT64_C(259493334089853),	// AsmJHCLGI
225    UINT64_C(259484744163429),	// AsmJHCLGR
226    UINT64_C(259493334089855),	// AsmJHCLI
227    UINT64_C(259484744163447),	// AsmJHCLR
228    UINT64_C(259484744163446),	// AsmJHCR
229    UINT64_C(259527693828220),	// AsmJHEAltCGI
230    UINT64_C(259484744196196),	// AsmJHEAltCGR
231    UINT64_C(259527693828222),	// AsmJHEAltCI
232    UINT64_C(259527693828221),	// AsmJHEAltCLGI
233    UINT64_C(259484744196197),	// AsmJHEAltCLGR
234    UINT64_C(259527693828223),	// AsmJHEAltCLI
235    UINT64_C(259484744196215),	// AsmJHEAltCLR
236    UINT64_C(259484744196214),	// AsmJHEAltCR
237    UINT64_C(259527693828220),	// AsmJHECGI
238    UINT64_C(259484744196196),	// AsmJHECGR
239    UINT64_C(259527693828222),	// AsmJHECI
240    UINT64_C(259527693828221),	// AsmJHECLGI
241    UINT64_C(259484744196197),	// AsmJHECLGR
242    UINT64_C(259527693828223),	// AsmJHECLI
243    UINT64_C(259484744196215),	// AsmJHECLR
244    UINT64_C(259484744196214),	// AsmJHECR
245    UINT64_C(259501924024444),	// AsmJLAltCGI
246    UINT64_C(259484744171620),	// AsmJLAltCGR
247    UINT64_C(259501924024446),	// AsmJLAltCI
248    UINT64_C(259501924024445),	// AsmJLAltCLGI
249    UINT64_C(259484744171621),	// AsmJLAltCLGR
250    UINT64_C(259501924024447),	// AsmJLAltCLI
251    UINT64_C(259484744171639),	// AsmJLAltCLR
252    UINT64_C(259484744171638),	// AsmJLAltCR
253    UINT64_C(259501924024444),	// AsmJLCGI
254    UINT64_C(259484744171620),	// AsmJLCGR
255    UINT64_C(259501924024446),	// AsmJLCI
256    UINT64_C(259501924024445),	// AsmJLCLGI
257    UINT64_C(259484744171621),	// AsmJLCLGR
258    UINT64_C(259501924024447),	// AsmJLCLI
259    UINT64_C(259484744171639),	// AsmJLCLR
260    UINT64_C(259484744171638),	// AsmJLCR
261    UINT64_C(259536283762812),	// AsmJLEAltCGI
262    UINT64_C(259484744204388),	// AsmJLEAltCGR
263    UINT64_C(259536283762814),	// AsmJLEAltCI
264    UINT64_C(259536283762813),	// AsmJLEAltCLGI
265    UINT64_C(259484744204389),	// AsmJLEAltCLGR
266    UINT64_C(259536283762815),	// AsmJLEAltCLI
267    UINT64_C(259484744204407),	// AsmJLEAltCLR
268    UINT64_C(259484744204406),	// AsmJLEAltCR
269    UINT64_C(259536283762812),	// AsmJLECGI
270    UINT64_C(259484744204388),	// AsmJLECGR
271    UINT64_C(259536283762814),	// AsmJLECI
272    UINT64_C(259536283762813),	// AsmJLECLGI
273    UINT64_C(259484744204389),	// AsmJLECLGR
274    UINT64_C(259536283762815),	// AsmJLECLI
275    UINT64_C(259484744204407),	// AsmJLECLR
276    UINT64_C(259484744204406),	// AsmJLECR
277    UINT64_C(259510513959036),	// AsmJLHAltCGI
278    UINT64_C(259484744179812),	// AsmJLHAltCGR
279    UINT64_C(259510513959038),	// AsmJLHAltCI
280    UINT64_C(259510513959037),	// AsmJLHAltCLGI
281    UINT64_C(259484744179813),	// AsmJLHAltCLGR
282    UINT64_C(259510513959039),	// AsmJLHAltCLI
283    UINT64_C(259484744179831),	// AsmJLHAltCLR
284    UINT64_C(259484744179830),	// AsmJLHAltCR
285    UINT64_C(259510513959036),	// AsmJLHCGI
286    UINT64_C(259484744179812),	// AsmJLHCGR
287    UINT64_C(259510513959038),	// AsmJLHCI
288    UINT64_C(259510513959037),	// AsmJLHCLGI
289    UINT64_C(259484744179813),	// AsmJLHCLGR
290    UINT64_C(259510513959039),	// AsmJLHCLI
291    UINT64_C(259484744179831),	// AsmJLHCLR
292    UINT64_C(259484744179830),	// AsmJLHCR
293    UINT64_C(1856),	// AsmLBR
294    UINT64_C(1984),	// AsmLEBR
295    UINT64_C(2814640128),	// AsmLEJ
296    UINT64_C(211948046123008),	// AsmLEJG
297    UINT64_C(258436772135154),	// AsmLELOC
298    UINT64_C(258436772135138),	// AsmLELOCG
299    UINT64_C(3118645248),	// AsmLELOCGR
300    UINT64_C(3119693824),	// AsmLELOCR
301    UINT64_C(258436772135155),	// AsmLESTOC
302    UINT64_C(258436772135139),	// AsmLESTOCG
303    UINT64_C(1888),	// AsmLHBR
304    UINT64_C(2808348672),	// AsmLHJ
305    UINT64_C(211535729262592),	// AsmLHJG
306    UINT64_C(258411002331378),	// AsmLHLOC
307    UINT64_C(258411002331362),	// AsmLHLOCG
308    UINT64_C(3118620672),	// AsmLHLOCGR
309    UINT64_C(3119669248),	// AsmLHLOCR
310    UINT64_C(258411002331379),	// AsmLHSTOC
311    UINT64_C(258411002331363),	// AsmLHSTOCG
312    UINT64_C(2806251520),	// AsmLJ
313    UINT64_C(211398290309120),	// AsmLJG
314    UINT64_C(258402412396786),	// AsmLLOC
315    UINT64_C(258402412396770),	// AsmLLOCG
316    UINT64_C(3118612480),	// AsmLLOCGR
317    UINT64_C(3119661056),	// AsmLLOCR
318    UINT64_C(258385232527602),	// AsmLOC
319    UINT64_C(258385232527586),	// AsmLOCG
320    UINT64_C(3118596096),	// AsmLOCGR
321    UINT64_C(3119644672),	// AsmLOCR
322    UINT64_C(258402412396787),	// AsmLSTOC
323    UINT64_C(258402412396771),	// AsmLSTOCG
324    UINT64_C(1904),	// AsmNEBR
325    UINT64_C(2809397248),	// AsmNEJ
326    UINT64_C(211604448739328),	// AsmNEJG
327    UINT64_C(258415297298674),	// AsmNELOC
328    UINT64_C(258415297298658),	// AsmNELOCG
329    UINT64_C(3118624768),	// AsmNELOCGR
330    UINT64_C(3119673344),	// AsmNELOCR
331    UINT64_C(258415297298675),	// AsmNESTOC
332    UINT64_C(258415297298659),	// AsmNESTOCG
333    UINT64_C(2000),	// AsmNHBR
334    UINT64_C(1872),	// AsmNHEBR
335    UINT64_C(2807300096),	// AsmNHEJ
336    UINT64_C(211467009785856),	// AsmNHEJG
337    UINT64_C(258406707364082),	// AsmNHELOC
338    UINT64_C(258406707364066),	// AsmNHELOCG
339    UINT64_C(3118616576),	// AsmNHELOCGR
340    UINT64_C(3119665152),	// AsmNHELOCR
341    UINT64_C(258406707364083),	// AsmNHESTOC
342    UINT64_C(258406707364067),	// AsmNHESTOCG
343    UINT64_C(2815688704),	// AsmNHJ
344    UINT64_C(212016765599744),	// AsmNHJG
345    UINT64_C(258441067102450),	// AsmNHLOC
346    UINT64_C(258441067102434),	// AsmNHLOCG
347    UINT64_C(3118649344),	// AsmNHLOCGR
348    UINT64_C(3119697920),	// AsmNHLOCR
349    UINT64_C(258441067102451),	// AsmNHSTOC
350    UINT64_C(258441067102435),	// AsmNHSTOCG
351    UINT64_C(1968),	// AsmNLBR
352    UINT64_C(1840),	// AsmNLEBR
353    UINT64_C(2805202944),	// AsmNLEJ
354    UINT64_C(211329570832384),	// AsmNLEJG
355    UINT64_C(258398117429490),	// AsmNLELOC
356    UINT64_C(258398117429474),	// AsmNLELOCG
357    UINT64_C(3118608384),	// AsmNLELOCGR
358    UINT64_C(3119656960),	// AsmNLELOCR
359    UINT64_C(258398117429491),	// AsmNLESTOC
360    UINT64_C(258398117429475),	// AsmNLESTOCG
361    UINT64_C(1936),	// AsmNLHBR
362    UINT64_C(2811494400),	// AsmNLHJ
363    UINT64_C(211741887692800),	// AsmNLHJG
364    UINT64_C(258423887233266),	// AsmNLHLOC
365    UINT64_C(258423887233250),	// AsmNLHLOCG
366    UINT64_C(3118632960),	// AsmNLHLOCGR
367    UINT64_C(3119681536),	// AsmNLHLOCR
368    UINT64_C(258423887233267),	// AsmNLHSTOC
369    UINT64_C(258423887233251),	// AsmNLHSTOCG
370    UINT64_C(2813591552),	// AsmNLJ
371    UINT64_C(211879326646272),	// AsmNLJG
372    UINT64_C(258432477167858),	// AsmNLLOC
373    UINT64_C(258432477167842),	// AsmNLLOCG
374    UINT64_C(3118641152),	// AsmNLLOCGR
375    UINT64_C(3119689728),	// AsmNLLOCR
376    UINT64_C(258432477167859),	// AsmNLSTOC
377    UINT64_C(258432477167843),	// AsmNLSTOCG
378    UINT64_C(2016),	// AsmNOBR
379    UINT64_C(2816737280),	// AsmNOJ
380    UINT64_C(212085485076480),	// AsmNOJG
381    UINT64_C(258445362069746),	// AsmNOLOC
382    UINT64_C(258445362069730),	// AsmNOLOCG
383    UINT64_C(3118653440),	// AsmNOLOCGR
384    UINT64_C(3119702016),	// AsmNOLOCR
385    UINT64_C(258445362069747),	// AsmNOSTOC
386    UINT64_C(258445362069731),	// AsmNOSTOCG
387    UINT64_C(1808),	// AsmOBR
388    UINT64_C(2803105792),	// AsmOJ
389    UINT64_C(211192131878912),	// AsmOJG
390    UINT64_C(258389527494898),	// AsmOLOC
391    UINT64_C(258389527494882),	// AsmOLOCG
392    UINT64_C(3118600192),	// AsmOLOCGR
393    UINT64_C(3119648768),	// AsmOLOCR
394    UINT64_C(258389527494899),	// AsmOSTOC
395    UINT64_C(258389527494883),	// AsmOSTOCG
396    UINT64_C(258385232527603),	// AsmSTOC
397    UINT64_C(258385232527587),	// AsmSTOCG
398    UINT64_C(3328),	// BASR
399    UINT64_C(2032),	// BR
400    UINT64_C(2802122752),	// BRAS
401    UINT64_C(211127707369472),	// BRASL
402    UINT64_C(2802057216),	// BRC
403    UINT64_C(211123412402176),	// BRCL
404    UINT64_C(2802188288),	// BRCT
405    UINT64_C(2802253824),	// BRCTG
406    UINT64_C(1493172224),	// C
407    UINT64_C(260584255782937),	// CDB
408    UINT64_C(3004760064),	// CDBR
409    UINT64_C(3012886528),	// CDFBR
410    UINT64_C(3013935104),	// CDGBR
411    UINT64_C(3012624384),	// CDLFBR
412    UINT64_C(3013672960),	// CDLGBR
413    UINT64_C(260584255782921),	// CEB
414    UINT64_C(3003711488),	// CEBR
415    UINT64_C(3012820992),	// CEFBR
416    UINT64_C(3013869568),	// CEGBR
417    UINT64_C(3012558848),	// CELFBR
418    UINT64_C(3013607424),	// CELGBR
419    UINT64_C(3013148672),	// CFDBR
420    UINT64_C(3013083136),	// CFEBR
421    UINT64_C(213361090363392),	// CFI
422    UINT64_C(0),
423    UINT64_C(3013214208),	// CFXBR
424    UINT64_C(249589139505184),	// CG
425    UINT64_C(3014197248),	// CGDBR
426    UINT64_C(3014131712),	// CGEBR
427    UINT64_C(249589139505200),	// CGF
428    UINT64_C(213356795396096),	// CGFI
429    UINT64_C(3106930688),	// CGFR
430    UINT64_C(217754841907200),	// CGFRL
431    UINT64_C(249589139505204),	// CGH
432    UINT64_C(2802778112),	// CGHI
433    UINT64_C(217720482168832),	// CGHRL
434    UINT64_C(252166119882752),	// CGHSI
435    UINT64_C(259484744155260),	// CGIJ
436    UINT64_C(3105882112),	// CGR
437    UINT64_C(259484744155236),	// CGRJ
438    UINT64_C(217737662038016),	// CGRL
439    UINT64_C(3014262784),	// CGXBR
440    UINT64_C(1224736768),	// CH
441    UINT64_C(249589139505357),	// CHF
442    UINT64_C(252148940013568),	// CHHSI
443    UINT64_C(2802712576),	// CHI
444    UINT64_C(217724777136128),	// CHRL
445    UINT64_C(252183299751936),	// CHSI
446    UINT64_C(249589139505273),	// CHY
447    UINT64_C(224356206641152),	// CIH
448    UINT64_C(259484744155262),	// CIJ
449    UINT64_C(1426063360),	// CL
450    UINT64_C(234195976716288),	// CLC
451    UINT64_C(0),
452    UINT64_C(0),
453    UINT64_C(3013410816),	// CLFDBR
454    UINT64_C(3013345280),	// CLFEBR
455    UINT64_C(252187594719232),	// CLFHSI
456    UINT64_C(213369680297984),	// CLFI
457    UINT64_C(0),
458    UINT64_C(3013476352),	// CLFXBR
459    UINT64_C(249589139505185),	// CLG
460    UINT64_C(3014459392),	// CLGDBR
461    UINT64_C(3014393856),	// CLGEBR
462    UINT64_C(249589139505201),	// CLGF
463    UINT64_C(213365385330688),	// CLGFI
464    UINT64_C(3106996224),	// CLGFR
465    UINT64_C(217763431841792),	// CLGFRL
466    UINT64_C(217729072103424),	// CLGHRL
467    UINT64_C(252170414850048),	// CLGHSI
468    UINT64_C(259484744155261),	// CLGIJ
469    UINT64_C(3105947648),	// CLGR
470    UINT64_C(259484744155237),	// CLGRJ
471    UINT64_C(217746251972608),	// CLGRL
472    UINT64_C(3014524928),	// CLGXBR
473    UINT64_C(249589139505359),	// CLHF
474    UINT64_C(252153234980864),	// CLHHSI
475    UINT64_C(217733367070720),	// CLHRL
476    UINT64_C(2499805184),	// CLI
477    UINT64_C(224364796575744),	// CLIH
478    UINT64_C(259484744155263),	// CLIJ
479    UINT64_C(258385232527445),	// CLIY
480    UINT64_C(0),
481    UINT64_C(5376),	// CLR
482    UINT64_C(259484744155255),	// CLRJ
483    UINT64_C(217767726809088),	// CLRL
484    UINT64_C(2992439296),	// CLST
485    UINT64_C(0),
486    UINT64_C(249589139505237),	// CLY
487    UINT64_C(0),
488    UINT64_C(3010592768),	// CPSDRdd
489    UINT64_C(3010592768),	// CPSDRds
490    UINT64_C(3010592768),	// CPSDRsd
491    UINT64_C(3010592768),	// CPSDRss
492    UINT64_C(6400),	// CR
493    UINT64_C(259484744155254),	// CRJ
494    UINT64_C(217759136874496),	// CRL
495    UINT64_C(3120562176),	// CS
496    UINT64_C(258385232527408),	// CSG
497    UINT64_C(258385232527380),	// CSY
498    UINT64_C(3007905792),	// CXBR
499    UINT64_C(3012952064),	// CXFBR
500    UINT64_C(3014000640),	// CXGBR
501    UINT64_C(3012689920),	// CXLFBR
502    UINT64_C(3013738496),	// CXLGBR
503    UINT64_C(249589139505241),	// CY
504    UINT64_C(0),
505    UINT64_C(0),
506    UINT64_C(0),
507    UINT64_C(0),
508    UINT64_C(0),
509    UINT64_C(0),
510    UINT64_C(0),
511    UINT64_C(0),
512    UINT64_C(0),
513    UINT64_C(0),
514    UINT64_C(0),
515    UINT64_C(0),
516    UINT64_C(0),
517    UINT64_C(0),
518    UINT64_C(0),
519    UINT64_C(0),
520    UINT64_C(0),
521    UINT64_C(0),
522    UINT64_C(0),
523    UINT64_C(0),
524    UINT64_C(260584255782941),	// DDB
525    UINT64_C(3005022208),	// DDBR
526    UINT64_C(260584255782925),	// DEB
527    UINT64_C(3003973632),	// DEBR
528    UINT64_C(249589139505303),	// DL
529    UINT64_C(249589139505287),	// DLG
530    UINT64_C(3112632320),	// DLGR
531    UINT64_C(3113680896),	// DLR
532    UINT64_C(249589139505165),	// DSG
533    UINT64_C(249589139505181),	// DSGF
534    UINT64_C(3105685504),	// DSGFR
535    UINT64_C(3104636928),	// DSGR
536    UINT64_C(3008167936),	// DXBR
537    UINT64_C(2991521792),	// EAR
538    UINT64_C(3001810944),	// ETND
539    UINT64_C(3009347584),	// FIDBR
540    UINT64_C(3009347584),	// FIDBRA
541    UINT64_C(3008823296),	// FIEBR
542    UINT64_C(3008823296),	// FIEBRA
543    UINT64_C(3007774720),	// FIXBR
544    UINT64_C(3007774720),	// FIXBRA
545    UINT64_C(3112370176),	// FLOGR
546    UINT64_C(0),
547    UINT64_C(1124073472),	// IC
548    UINT64_C(1124073472),	// IC32
549    UINT64_C(249589139505267),	// IC32Y
550    UINT64_C(249589139505267),	// ICY
551    UINT64_C(0),
552    UINT64_C(211140592271360),	// IIHF
553    UINT64_C(0),
554    UINT64_C(2768240640),	// IIHH
555    UINT64_C(0),
556    UINT64_C(2768306176),	// IIHL
557    UINT64_C(0),
558    UINT64_C(0),
559    UINT64_C(211144887238656),	// IILF
560    UINT64_C(0),
561    UINT64_C(2768371712),	// IILH
562    UINT64_C(0),
563    UINT64_C(2768437248),	// IILL
564    UINT64_C(0),
565    UINT64_C(0),
566    UINT64_C(2988572672),	// IPM
567    UINT64_C(2817785856),	// J
568    UINT64_C(212154204553216),	// JG
569    UINT64_C(1476395008),	// L
570    UINT64_C(0),
571    UINT64_C(1090519040),	// LA
572    UINT64_C(258385232527608),	// LAA
573    UINT64_C(258385232527592),	// LAAG
574    UINT64_C(258385232527610),	// LAAL
575    UINT64_C(258385232527594),	// LAALG
576    UINT64_C(258385232527604),	// LAN
577    UINT64_C(258385232527588),	// LANG
578    UINT64_C(258385232527606),	// LAO
579    UINT64_C(258385232527590),	// LAOG
580    UINT64_C(211106232532992),	// LARL
581    UINT64_C(258385232527607),	// LAX
582    UINT64_C(258385232527591),	// LAXG
583    UINT64_C(249589139505265),	// LAY
584    UINT64_C(249589139505270),	// LB
585    UINT64_C(249589139505344),	// LBH
586    UINT64_C(0),
587    UINT64_C(3106275328),	// LBR
588    UINT64_C(253987186016295),	// LCBB
589    UINT64_C(3004366848),	// LCDBR
590    UINT64_C(3010658304),	// LCDFR
591    UINT64_C(3010658304),	// LCDFR_32
592    UINT64_C(3003318272),	// LCEBR
593    UINT64_C(3105030144),	// LCGFR
594    UINT64_C(3103981568),	// LCGR
595    UINT64_C(4864),	// LCR
596    UINT64_C(3007512576),	// LCXBR
597    UINT64_C(1744830464),	// LD
598    UINT64_C(260584255782948),	// LDE32
599    UINT64_C(260584255782916),	// LDEB
600    UINT64_C(3003383808),	// LDEBR
601    UINT64_C(3015770112),	// LDGR
602    UINT64_C(10240),	// LDR
603    UINT64_C(3007643648),	// LDXBR
604    UINT64_C(3007643648),	// LDXBRA
605    UINT64_C(260584255783013),	// LDY
606    UINT64_C(2013265920),	// LE
607    UINT64_C(3007578112),	// LEDBR
608    UINT64_C(3007578112),	// LEDBRA
609    UINT64_C(0),
610    UINT64_C(14336),	// LER
611    UINT64_C(3007709184),	// LEXBR
612    UINT64_C(3007709184),	// LEXBRA
613    UINT64_C(260584255783012),	// LEY
614    UINT64_C(0),
615    UINT64_C(249589139505354),	// LFH
616    UINT64_C(249589139505156),	// LG
617    UINT64_C(249589139505271),	// LGB
618    UINT64_C(3104178176),	// LGBR
619    UINT64_C(3016556544),	// LGDR
620    UINT64_C(249589139505172),	// LGF
621    UINT64_C(211110527500288),	// LGFI
622    UINT64_C(3105095680),	// LGFR
623    UINT64_C(215555818651648),	// LGFRL
624    UINT64_C(249589139505173),	// LGH
625    UINT64_C(2802384896),	// LGHI
626    UINT64_C(3104243712),	// LGHR
627    UINT64_C(215521458913280),	// LGHRL
628    UINT64_C(3104047104),	// LGR
629    UINT64_C(215538638782464),	// LGRL
630    UINT64_C(1207959552),	// LH
631    UINT64_C(249589139505348),	// LHH
632    UINT64_C(2802319360),	// LHI
633    UINT64_C(0),
634    UINT64_C(0),
635    UINT64_C(3106340864),	// LHR
636    UINT64_C(215525753880576),	// LHRL
637    UINT64_C(249589139505272),	// LHY
638    UINT64_C(249589139505300),	// LLC
639    UINT64_C(249589139505346),	// LLCH
640    UINT64_C(0),
641    UINT64_C(3113484288),	// LLCR
642    UINT64_C(0),
643    UINT64_C(249589139505296),	// LLGC
644    UINT64_C(3112435712),	// LLGCR
645    UINT64_C(249589139505174),	// LLGF
646    UINT64_C(3105226752),	// LLGFR
647    UINT64_C(215564408586240),	// LLGFRL
648    UINT64_C(249589139505297),	// LLGH
649    UINT64_C(3112501248),	// LLGHR
650    UINT64_C(215530048847872),	// LLGHRL
651    UINT64_C(249589139505301),	// LLH
652    UINT64_C(249589139505350),	// LLHH
653    UINT64_C(0),
654    UINT64_C(3113549824),	// LLHR
655    UINT64_C(215512868978688),	// LLHRL
656    UINT64_C(0),
657    UINT64_C(211166362075136),	// LLIHF
658    UINT64_C(2769027072),	// LLIHH
659    UINT64_C(2769092608),	// LLIHL
660    UINT64_C(211170657042432),	// LLILF
661    UINT64_C(2769158144),	// LLILH
662    UINT64_C(2769223680),	// LLILL
663    UINT64_C(258385232527364),	// LMG
664    UINT64_C(0),
665    UINT64_C(3004235776),	// LNDBR
666    UINT64_C(3010527232),	// LNDFR
667    UINT64_C(3010527232),	// LNDFR_32
668    UINT64_C(3003187200),	// LNEBR
669    UINT64_C(3104899072),	// LNGFR
670    UINT64_C(3103850496),	// LNGR
671    UINT64_C(4352),	// LNR
672    UINT64_C(3007381504),	// LNXBR
673    UINT64_C(258385232527602),	// LOC
674    UINT64_C(258385232527586),	// LOCG
675    UINT64_C(3118596096),	// LOCGR
676    UINT64_C(3119644672),	// LOCR
677    UINT64_C(3004170240),	// LPDBR
678    UINT64_C(3010461696),	// LPDFR
679    UINT64_C(3010461696),	// LPDFR_32
680    UINT64_C(3003121664),	// LPEBR
681    UINT64_C(3104833536),	// LPGFR
682    UINT64_C(3103784960),	// LPGR
683    UINT64_C(4096),	// LPR
684    UINT64_C(3007315968),	// LPXBR
685    UINT64_C(6144),	// LR
686    UINT64_C(215560113618944),	// LRL
687    UINT64_C(0),
688    UINT64_C(249589139505182),	// LRV
689    UINT64_C(249589139505167),	// LRVG
690    UINT64_C(3104768000),	// LRVGR
691    UINT64_C(3105816576),	// LRVR
692    UINT64_C(249589139505170),	// LT
693    UINT64_C(3004301312),	// LTDBR
694    UINT64_C(3004301312),	// LTDBRCompare
695    UINT64_C(0),
696    UINT64_C(3003252736),	// LTEBR
697    UINT64_C(3003252736),	// LTEBRCompare
698    UINT64_C(0),
699    UINT64_C(249589139505154),	// LTG
700    UINT64_C(249589139505202),	// LTGF
701    UINT64_C(3104964608),	// LTGFR
702    UINT64_C(3103916032),	// LTGR
703    UINT64_C(4608),	// LTR
704    UINT64_C(3007447040),	// LTXBR
705    UINT64_C(3007447040),	// LTXBRCompare
706    UINT64_C(0),
707    UINT64_C(0),
708    UINT64_C(260584255782917),	// LXDB
709    UINT64_C(3003449344),	// LXDBR
710    UINT64_C(260584255782918),	// LXEB
711    UINT64_C(3003514880),	// LXEBR
712    UINT64_C(3009740800),	// LXR
713    UINT64_C(249589139505240),	// LY
714    UINT64_C(3010789376),	// LZDR
715    UINT64_C(3010723840),	// LZER
716    UINT64_C(3010854912),	// LZXR
717    UINT64_C(260584255782942),	// MADB
718    UINT64_C(3005087744),	// MADBR
719    UINT64_C(260584255782926),	// MAEB
720    UINT64_C(3004039168),	// MAEBR
721    UINT64_C(260584255782940),	// MDB
722    UINT64_C(3004956672),	// MDBR
723    UINT64_C(260584255782924),	// MDEB
724    UINT64_C(3003908096),	// MDEBR
725    UINT64_C(260584255782935),	// MEEB
726    UINT64_C(3004628992),	// MEEBR
727    UINT64_C(2802647040),	// MGHI
728    UINT64_C(1275068416),	// MH
729    UINT64_C(2802581504),	// MHI
730    UINT64_C(249589139505276),	// MHY
731    UINT64_C(249589139505286),	// MLG
732    UINT64_C(3112566784),	// MLGR
733    UINT64_C(1895825408),	// MS
734    UINT64_C(260584255782943),	// MSDB
735    UINT64_C(3005153280),	// MSDBR
736    UINT64_C(260584255782927),	// MSEB
737    UINT64_C(3004104704),	// MSEBR
738    UINT64_C(213309550755840),	// MSFI
739    UINT64_C(249589139505164),	// MSG
740    UINT64_C(249589139505180),	// MSGF
741    UINT64_C(213305255788544),	// MSGFI
742    UINT64_C(3105619968),	// MSGFR
743    UINT64_C(3104571392),	// MSGR
744    UINT64_C(2991718400),	// MSR
745    UINT64_C(249589139505233),	// MSY
746    UINT64_C(230897441832960),	// MVC
747    UINT64_C(0),
748    UINT64_C(0),
749    UINT64_C(252097400406016),	// MVGHI
750    UINT64_C(252080220536832),	// MVHHI
751    UINT64_C(252114580275200),	// MVHI
752    UINT64_C(2449473536),	// MVI
753    UINT64_C(258385232527442),	// MVIY
754    UINT64_C(2991915008),	// MVST
755    UINT64_C(0),
756    UINT64_C(3008102400),	// MXBR
757    UINT64_C(260584255782919),	// MXDB
758    UINT64_C(3003580416),	// MXDBR
759    UINT64_C(1409286144),	// N
760    UINT64_C(233096465088512),	// NC
761    UINT64_C(0),
762    UINT64_C(0),
763    UINT64_C(249589139505280),	// NG
764    UINT64_C(3112173568),	// NGR
765    UINT64_C(3118727168),	// NGRK
766    UINT64_C(2483027968),	// NI
767    UINT64_C(0),
768    UINT64_C(211149182205952),	// NIHF
769    UINT64_C(0),
770    UINT64_C(2768502784),	// NIHH
771    UINT64_C(0),
772    UINT64_C(2768568320),	// NIHL
773    UINT64_C(0),
774    UINT64_C(0),
775    UINT64_C(211153477173248),	// NILF
776    UINT64_C(0),
777    UINT64_C(2768633856),	// NILH
778    UINT64_C(0),
779    UINT64_C(2768699392),	// NILL
780    UINT64_C(0),
781    UINT64_C(0),
782    UINT64_C(258385232527444),	// NIY
783    UINT64_C(5120),	// NR
784    UINT64_C(3119775744),	// NRK
785    UINT64_C(249589139505189),	// NTSTG
786    UINT64_C(249589139505236),	// NY
787    UINT64_C(1442840576),	// O
788    UINT64_C(235295488344064),	// OC
789    UINT64_C(0),
790    UINT64_C(0),
791    UINT64_C(249589139505281),	// OG
792    UINT64_C(3112239104),	// OGR
793    UINT64_C(3118858240),	// OGRK
794    UINT64_C(2516582400),	// OI
795    UINT64_C(0),
796    UINT64_C(211157772140544),	// OIHF
797    UINT64_C(0),
798    UINT64_C(2768764928),	// OIHH
799    UINT64_C(0),
800    UINT64_C(2768830464),	// OIHL
801    UINT64_C(0),
802    UINT64_C(0),
803    UINT64_C(211162067107840),	// OILF
804    UINT64_C(0),
805    UINT64_C(2768896000),	// OILH
806    UINT64_C(0),
807    UINT64_C(2768961536),	// OILL
808    UINT64_C(0),
809    UINT64_C(0),
810    UINT64_C(258385232527446),	// OIY
811    UINT64_C(5632),	// OR
812    UINT64_C(3119906816),	// ORK
813    UINT64_C(249589139505238),	// OY
814    UINT64_C(249589139505206),	// PFD
815    UINT64_C(217711892234240),	// PFDRL
816    UINT64_C(3118530560),	// POPCNT
817    UINT64_C(3001548800),	// PPA
818    UINT64_C(259484744155221),	// RISBG
819    UINT64_C(259484744155221),	// RISBG32
820    UINT64_C(259484744155225),	// RISBGN
821    UINT64_C(259484744155229),	// RISBHG
822    UINT64_C(0),
823    UINT64_C(0),
824    UINT64_C(259484744155217),	// RISBLG
825    UINT64_C(0),
826    UINT64_C(0),
827    UINT64_C(0),
828    UINT64_C(258385232527389),	// RLL
829    UINT64_C(258385232527388),	// RLLG
830    UINT64_C(259484744155220),	// RNSBG
831    UINT64_C(259484744155222),	// ROSBG
832    UINT64_C(259484744155223),	// RXSBG
833    UINT64_C(0),
834    UINT64_C(1526726656),	// S
835    UINT64_C(260584255782939),	// SDB
836    UINT64_C(3004891136),	// SDBR
837    UINT64_C(260584255782923),	// SEB
838    UINT64_C(3003842560),	// SEBR
839    UINT64_C(249589139505161),	// SG
840    UINT64_C(249589139505177),	// SGF
841    UINT64_C(3105423360),	// SGFR
842    UINT64_C(3104374784),	// SGR
843    UINT64_C(3119054848),	// SGRK
844    UINT64_C(1258291200),	// SH
845    UINT64_C(249589139505275),	// SHY
846    UINT64_C(1593835520),	// SL
847    UINT64_C(249589139505305),	// SLB
848    UINT64_C(249589139505289),	// SLBG
849    UINT64_C(3112763392),	// SLBGR
850    UINT64_C(3113811968),	// SLBR
851    UINT64_C(213326730625024),	// SLFI
852    UINT64_C(249589139505163),	// SLG
853    UINT64_C(249589139505179),	// SLGF
854    UINT64_C(213322435657728),	// SLGFI
855    UINT64_C(3105554432),	// SLGFR
856    UINT64_C(3104505856),	// SLGR
857    UINT64_C(3119185920),	// SLGRK
858    UINT64_C(2298478592),	// SLL
859    UINT64_C(258385232527373),	// SLLG
860    UINT64_C(258385232527583),	// SLLK
861    UINT64_C(7936),	// SLR
862    UINT64_C(3120234496),	// SLRK
863    UINT64_C(249589139505247),	// SLY
864    UINT64_C(260584255782933),	// SQDB
865    UINT64_C(3004497920),	// SQDBR
866    UINT64_C(260584255782932),	// SQEB
867    UINT64_C(3004432384),	// SQEBR
868    UINT64_C(3004563456),	// SQXBR
869    UINT64_C(6912),	// SR
870    UINT64_C(2315255808),	// SRA
871    UINT64_C(258385232527370),	// SRAG
872    UINT64_C(258385232527580),	// SRAK
873    UINT64_C(3120103424),	// SRK
874    UINT64_C(2281701376),	// SRL
875    UINT64_C(258385232527372),	// SRLG
876    UINT64_C(258385232527582),	// SRLK
877    UINT64_C(2992504832),	// SRST
878    UINT64_C(0),
879    UINT64_C(1342177280),	// ST
880    UINT64_C(0),
881    UINT64_C(1107296256),	// STC
882    UINT64_C(249589139505347),	// STCH
883    UINT64_C(2986672128),	// STCK
884    UINT64_C(2994208768),	// STCKE
885    UINT64_C(2994470912),	// STCKF
886    UINT64_C(0),
887    UINT64_C(249589139505266),	// STCY
888    UINT64_C(1610612736),	// STD
889    UINT64_C(260584255783015),	// STDY
890    UINT64_C(1879048192),	// STE
891    UINT64_C(260584255783014),	// STEY
892    UINT64_C(249589139505355),	// STFH
893    UINT64_C(2997878784),	// STFLE
894    UINT64_C(249589139505188),	// STG
895    UINT64_C(215551523684352),	// STGRL
896    UINT64_C(1073741824),	// STH
897    UINT64_C(249589139505351),	// STHH
898    UINT64_C(0),
899    UINT64_C(215534343815168),	// STHRL
900    UINT64_C(249589139505264),	// STHY
901    UINT64_C(258385232527396),	// STMG
902    UINT64_C(0),
903    UINT64_C(258385232527603),	// STOC
904    UINT64_C(258385232527587),	// STOCG
905    UINT64_C(215568703553536),	// STRL
906    UINT64_C(249589139505214),	// STRV
907    UINT64_C(249589139505199),	// STRVG
908    UINT64_C(0),
909    UINT64_C(249589139505232),	// STY
910    UINT64_C(3008036864),	// SXBR
911    UINT64_C(249589139505243),	// SY
912    UINT64_C(0),
913    UINT64_C(0),
914    UINT64_C(0),
915    UINT64_C(0),
916    UINT64_C(0),
917    UINT64_C(0),
918    UINT64_C(0),
919    UINT64_C(3002859520),	// TABORT
920    UINT64_C(252200479621120),	// TBEGIN
921    UINT64_C(252204774588416),	// TBEGINC
922    UINT64_C(0),
923    UINT64_C(3002597376),	// TEND
924    UINT64_C(0),
925    UINT64_C(0),
926    UINT64_C(2432696320),	// TM
927    UINT64_C(2801926144),	// TMHH
928    UINT64_C(0),
929    UINT64_C(2801991680),	// TMHL
930    UINT64_C(0),
931    UINT64_C(0),
932    UINT64_C(2801795072),	// TMLH
933    UINT64_C(0),
934    UINT64_C(2801860608),	// TMLL
935    UINT64_C(0),
936    UINT64_C(0),
937    UINT64_C(258385232527441),	// TMY
938    UINT64_C(253987186016499),	// VAB
939    UINT64_C(253987186016497),	// VACCB
940    UINT64_C(253987253125305),	// VACCCQ
941    UINT64_C(253987186024689),	// VACCF
942    UINT64_C(253987186028785),	// VACCG
943    UINT64_C(253987186020593),	// VACCH
944    UINT64_C(253987186032881),	// VACCQ
945    UINT64_C(253987253125307),	// VACQ
946    UINT64_C(253987186024691),	// VAF
947    UINT64_C(253987186028787),	// VAG
948    UINT64_C(253987186020595),	// VAH
949    UINT64_C(253987186032883),	// VAQ
950    UINT64_C(253987186016498),	// VAVGB
951    UINT64_C(253987186024690),	// VAVGF
952    UINT64_C(253987186028786),	// VAVGG
953    UINT64_C(253987186020594),	// VAVGH
954    UINT64_C(253987186016496),	// VAVGLB
955    UINT64_C(253987186024688),	// VAVGLF
956    UINT64_C(253987186028784),	// VAVGLG
957    UINT64_C(253987186020592),	// VAVGLH
958    UINT64_C(253987186028739),	// VCDGB
959    UINT64_C(253987186028737),	// VCDLGB
960    UINT64_C(253987186016504),	// VCEQB
961    UINT64_C(253987187065080),	// VCEQBS
962    UINT64_C(253987186024696),	// VCEQF
963    UINT64_C(253987187073272),	// VCEQFS
964    UINT64_C(253987186028792),	// VCEQG
965    UINT64_C(253987187077368),	// VCEQGS
966    UINT64_C(253987186020600),	// VCEQH
967    UINT64_C(253987187069176),	// VCEQHS
968    UINT64_C(253987186028738),	// VCGDB
969    UINT64_C(253987186016507),	// VCHB
970    UINT64_C(253987187065083),	// VCHBS
971    UINT64_C(253987186024699),	// VCHF
972    UINT64_C(253987187073275),	// VCHFS
973    UINT64_C(253987186028795),	// VCHG
974    UINT64_C(253987187077371),	// VCHGS
975    UINT64_C(253987186020603),	// VCHH
976    UINT64_C(253987187069179),	// VCHHS
977    UINT64_C(253987186016505),	// VCHLB
978    UINT64_C(253987187065081),	// VCHLBS
979    UINT64_C(253987186024697),	// VCHLF
980    UINT64_C(253987187073273),	// VCHLFS
981    UINT64_C(253987186028793),	// VCHLG
982    UINT64_C(253987187077369),	// VCHLGS
983    UINT64_C(253987186020601),	// VCHLH
984    UINT64_C(253987187069177),	// VCHLHS
985    UINT64_C(253987186016358),	// VCKSM
986    UINT64_C(253987186028736),	// VCLGDB
987    UINT64_C(253987186016339),	// VCLZB
988    UINT64_C(253987186024531),	// VCLZF
989    UINT64_C(253987186028627),	// VCLZG
990    UINT64_C(253987186020435),	// VCLZH
991    UINT64_C(253987186016338),	// VCTZB
992    UINT64_C(253987186024530),	// VCTZF
993    UINT64_C(253987186028626),	// VCTZG
994    UINT64_C(253987186020434),	// VCTZH
995    UINT64_C(253987186016475),	// VECB
996    UINT64_C(253987186024667),	// VECF
997    UINT64_C(253987186028763),	// VECG
998    UINT64_C(253987186020571),	// VECH
999    UINT64_C(253987186016473),	// VECLB
1000    UINT64_C(253987186024665),	// VECLF
1001    UINT64_C(253987186028761),	// VECLG
1002    UINT64_C(253987186020569),	// VECLH
1003    UINT64_C(253987186016370),	// VERIMB
1004    UINT64_C(253987186024562),	// VERIMF
1005    UINT64_C(253987186028658),	// VERIMG
1006    UINT64_C(253987186020466),	// VERIMH
1007    UINT64_C(253987186016307),	// VERLLB
1008    UINT64_C(253987186024499),	// VERLLF
1009    UINT64_C(253987186028595),	// VERLLG
1010    UINT64_C(253987186020403),	// VERLLH
1011    UINT64_C(253987186016371),	// VERLLVB
1012    UINT64_C(253987186024563),	// VERLLVF
1013    UINT64_C(253987186028659),	// VERLLVG
1014    UINT64_C(253987186020467),	// VERLLVH
1015    UINT64_C(253987186016304),	// VESLB
1016    UINT64_C(253987186024496),	// VESLF
1017    UINT64_C(253987186028592),	// VESLG
1018    UINT64_C(253987186020400),	// VESLH
1019    UINT64_C(253987186016368),	// VESLVB
1020    UINT64_C(253987186024560),	// VESLVF
1021    UINT64_C(253987186028656),	// VESLVG
1022    UINT64_C(253987186020464),	// VESLVH
1023    UINT64_C(253987186016314),	// VESRAB
1024    UINT64_C(253987186024506),	// VESRAF
1025    UINT64_C(253987186028602),	// VESRAG
1026    UINT64_C(253987186020410),	// VESRAH
1027    UINT64_C(253987186016378),	// VESRAVB
1028    UINT64_C(253987186024570),	// VESRAVF
1029    UINT64_C(253987186028666),	// VESRAVG
1030    UINT64_C(253987186020474),	// VESRAVH
1031    UINT64_C(253987186016312),	// VESRLB
1032    UINT64_C(253987186024504),	// VESRLF
1033    UINT64_C(253987186028600),	// VESRLG
1034    UINT64_C(253987186020408),	// VESRLH
1035    UINT64_C(253987186016376),	// VESRLVB
1036    UINT64_C(253987186024568),	// VESRLVF
1037    UINT64_C(253987186028664),	// VESRLVG
1038    UINT64_C(253987186020472),	// VESRLVH
1039    UINT64_C(253987186028771),	// VFADB
1040    UINT64_C(253987186016386),	// VFAEB
1041    UINT64_C(253987187064962),	// VFAEBS
1042    UINT64_C(253987186024578),	// VFAEF
1043    UINT64_C(253987187073154),	// VFAEFS
1044    UINT64_C(253987186020482),	// VFAEH
1045    UINT64_C(253987187069058),	// VFAEHS
1046    UINT64_C(253987188113538),	// VFAEZB
1047    UINT64_C(253987189162114),	// VFAEZBS
1048    UINT64_C(253987188121730),	// VFAEZF
1049    UINT64_C(253987189170306),	// VFAEZFS
1050    UINT64_C(253987188117634),	// VFAEZH
1051    UINT64_C(253987189166210),	// VFAEZHS
1052    UINT64_C(253987186028776),	// VFCEDB
1053    UINT64_C(253987187077352),	// VFCEDBS
1054    UINT64_C(253987186028779),	// VFCHDB
1055    UINT64_C(253987187077355),	// VFCHDBS
1056    UINT64_C(253987186028778),	// VFCHEDB
1057    UINT64_C(253987187077354),	// VFCHEDBS
1058    UINT64_C(253987186028773),	// VFDDB
1059    UINT64_C(253987186016384),	// VFEEB
1060    UINT64_C(253987187064960),	// VFEEBS
1061    UINT64_C(253987186024576),	// VFEEF
1062    UINT64_C(253987187073152),	// VFEEFS
1063    UINT64_C(253987186020480),	// VFEEH
1064    UINT64_C(253987187069056),	// VFEEHS
1065    UINT64_C(253987188113536),	// VFEEZB
1066    UINT64_C(253987189162112),	// VFEEZBS
1067    UINT64_C(253987188121728),	// VFEEZF
1068    UINT64_C(253987189170304),	// VFEEZFS
1069    UINT64_C(253987188117632),	// VFEEZH
1070    UINT64_C(253987189166208),	// VFEEZHS
1071    UINT64_C(253987186016385),	// VFENEB
1072    UINT64_C(253987187064961),	// VFENEBS
1073    UINT64_C(253987186024577),	// VFENEF
1074    UINT64_C(253987187073153),	// VFENEFS
1075    UINT64_C(253987186020481),	// VFENEH
1076    UINT64_C(253987187069057),	// VFENEHS
1077    UINT64_C(253987188113537),	// VFENEZB
1078    UINT64_C(253987189162113),	// VFENEZBS
1079    UINT64_C(253987188121729),	// VFENEZF
1080    UINT64_C(253987189170305),	// VFENEZFS
1081    UINT64_C(253987188117633),	// VFENEZH
1082    UINT64_C(253987189166209),	// VFENEZHS
1083    UINT64_C(253987186028743),	// VFIDB
1084    UINT64_C(253987186028748),	// VFLCDB
1085    UINT64_C(253987187077324),	// VFLNDB
1086    UINT64_C(253987188125900),	// VFLPDB
1087    UINT64_C(253987236348047),	// VFMADB
1088    UINT64_C(253987186028775),	// VFMDB
1089    UINT64_C(253987236348046),	// VFMSDB
1090    UINT64_C(253987186028770),	// VFSDB
1091    UINT64_C(253987186028750),	// VFSQDB
1092    UINT64_C(253987186028618),	// VFTCIDB
1093    UINT64_C(253987186016324),	// VGBM
1094    UINT64_C(253987186016275),	// VGEF
1095    UINT64_C(253987186016274),	// VGEG
1096    UINT64_C(253987186016444),	// VGFMAB
1097    UINT64_C(253987219570876),	// VGFMAF
1098    UINT64_C(253987236348092),	// VGFMAG
1099    UINT64_C(253987202793660),	// VGFMAH
1100    UINT64_C(253987186016436),	// VGFMB
1101    UINT64_C(253987186024628),	// VGFMF
1102    UINT64_C(253987186028724),	// VGFMG
1103    UINT64_C(253987186020532),	// VGFMH
1104    UINT64_C(253987186016326),	// VGMB
1105    UINT64_C(253987186024518),	// VGMF
1106    UINT64_C(253987186028614),	// VGMG
1107    UINT64_C(253987186020422),	// VGMH
1108    UINT64_C(253987186016348),	// VISTRB
1109    UINT64_C(253987187064924),	// VISTRBS
1110    UINT64_C(253987186024540),	// VISTRF
1111    UINT64_C(253987187073116),	// VISTRFS
1112    UINT64_C(253987186020444),	// VISTRH
1113    UINT64_C(253987187069020),	// VISTRHS
1114    UINT64_C(253987186016262),	// VL
1115    UINT64_C(0),
1116    UINT64_C(0),
1117    UINT64_C(253987186016263),	// VLBB
1118    UINT64_C(253987186016478),	// VLCB
1119    UINT64_C(253987186024670),	// VLCF
1120    UINT64_C(253987186028766),	// VLCG
1121    UINT64_C(253987186020574),	// VLCH
1122    UINT64_C(253987186024644),	// VLDEB
1123    UINT64_C(253987186016256),	// VLEB
1124    UINT64_C(253987186028741),	// VLEDB
1125    UINT64_C(253987186016259),	// VLEF
1126    UINT64_C(253987186016258),	// VLEG
1127    UINT64_C(253987186016257),	// VLEH
1128    UINT64_C(253987186016320),	// VLEIB
1129    UINT64_C(253987186016323),	// VLEIF
1130    UINT64_C(253987186016322),	// VLEIG
1131    UINT64_C(253987186016321),	// VLEIH
1132    UINT64_C(253987186016289),	// VLGVB
1133    UINT64_C(253987186024481),	// VLGVF
1134    UINT64_C(253987186028577),	// VLGVG
1135    UINT64_C(253987186020385),	// VLGVH
1136    UINT64_C(253987186016311),	// VLL
1137    UINT64_C(253987186016260),	// VLLEZB
1138    UINT64_C(253987186024452),	// VLLEZF
1139    UINT64_C(253987186028548),	// VLLEZG
1140    UINT64_C(253987186020356),	// VLLEZH
1141    UINT64_C(253987186016310),	// VLM
1142    UINT64_C(253987186016479),	// VLPB
1143    UINT64_C(253987186024671),	// VLPF
1144    UINT64_C(253987186028767),	// VLPG
1145    UINT64_C(253987186020575),	// VLPH
1146    UINT64_C(253987186016342),	// VLR
1147    UINT64_C(0),
1148    UINT64_C(0),
1149    UINT64_C(253987186016261),	// VLREPB
1150    UINT64_C(253987186024453),	// VLREPF
1151    UINT64_C(253987186028549),	// VLREPG
1152    UINT64_C(253987186020357),	// VLREPH
1153    UINT64_C(253987186016290),	// VLVGB
1154    UINT64_C(253987186024482),	// VLVGF
1155    UINT64_C(253987186028578),	// VLVGG
1156    UINT64_C(253987186020386),	// VLVGH
1157    UINT64_C(253987186016354),	// VLVGP
1158    UINT64_C(0),
1159    UINT64_C(253987186016430),	// VMAEB
1160    UINT64_C(253987219570862),	// VMAEF
1161    UINT64_C(253987202793646),	// VMAEH
1162    UINT64_C(253987186016427),	// VMAHB
1163    UINT64_C(253987219570859),	// VMAHF
1164    UINT64_C(253987202793643),	// VMAHH
1165    UINT64_C(253987186016426),	// VMALB
1166    UINT64_C(253987186016428),	// VMALEB
1167    UINT64_C(253987219570860),	// VMALEF
1168    UINT64_C(253987202793644),	// VMALEH
1169    UINT64_C(253987219570858),	// VMALF
1170    UINT64_C(253987186016425),	// VMALHB
1171    UINT64_C(253987219570857),	// VMALHF
1172    UINT64_C(253987202793641),	// VMALHH
1173    UINT64_C(253987202793642),	// VMALHW
1174    UINT64_C(253987186016429),	// VMALOB
1175    UINT64_C(253987219570861),	// VMALOF
1176    UINT64_C(253987202793645),	// VMALOH
1177    UINT64_C(253987186016431),	// VMAOB
1178    UINT64_C(253987219570863),	// VMAOF
1179    UINT64_C(253987202793647),	// VMAOH
1180    UINT64_C(253987186016422),	// VMEB
1181    UINT64_C(253987186024614),	// VMEF
1182    UINT64_C(253987186020518),	// VMEH
1183    UINT64_C(253987186016419),	// VMHB
1184    UINT64_C(253987186024611),	// VMHF
1185    UINT64_C(253987186020515),	// VMHH
1186    UINT64_C(253987186016418),	// VMLB
1187    UINT64_C(253987186016420),	// VMLEB
1188    UINT64_C(253987186024612),	// VMLEF
1189    UINT64_C(253987186020516),	// VMLEH
1190    UINT64_C(253987186024610),	// VMLF
1191    UINT64_C(253987186016417),	// VMLHB
1192    UINT64_C(253987186024609),	// VMLHF
1193    UINT64_C(253987186020513),	// VMLHH
1194    UINT64_C(253987186020514),	// VMLHW
1195    UINT64_C(253987186016421),	// VMLOB
1196    UINT64_C(253987186024613),	// VMLOF
1197    UINT64_C(253987186020517),	// VMLOH
1198    UINT64_C(253987186016510),	// VMNB
1199    UINT64_C(253987186024702),	// VMNF
1200    UINT64_C(253987186028798),	// VMNG
1201    UINT64_C(253987186020606),	// VMNH
1202    UINT64_C(253987186016508),	// VMNLB
1203    UINT64_C(253987186024700),	// VMNLF
1204    UINT64_C(253987186028796),	// VMNLG
1205    UINT64_C(253987186020604),	// VMNLH
1206    UINT64_C(253987186016423),	// VMOB
1207    UINT64_C(253987186024615),	// VMOF
1208    UINT64_C(253987186020519),	// VMOH
1209    UINT64_C(253987186016353),	// VMRHB
1210    UINT64_C(253987186024545),	// VMRHF
1211    UINT64_C(253987186028641),	// VMRHG
1212    UINT64_C(253987186020449),	// VMRHH
1213    UINT64_C(253987186016352),	// VMRLB
1214    UINT64_C(253987186024544),	// VMRLF
1215    UINT64_C(253987186028640),	// VMRLG
1216    UINT64_C(253987186020448),	// VMRLH
1217    UINT64_C(253987186016511),	// VMXB
1218    UINT64_C(253987186024703),	// VMXF
1219    UINT64_C(253987186028799),	// VMXG
1220    UINT64_C(253987186020607),	// VMXH
1221    UINT64_C(253987186016509),	// VMXLB
1222    UINT64_C(253987186024701),	// VMXLF
1223    UINT64_C(253987186028797),	// VMXLG
1224    UINT64_C(253987186020605),	// VMXLH
1225    UINT64_C(253987186016360),	// VN
1226    UINT64_C(253987186016361),	// VNC
1227    UINT64_C(253987186016363),	// VNO
1228    UINT64_C(253987186016362),	// VO
1229    UINT64_C(253991480918084),	// VONE
1230    UINT64_C(253987186016388),	// VPDI
1231    UINT64_C(253987186016396),	// VPERM
1232    UINT64_C(253987186024596),	// VPKF
1233    UINT64_C(253987186028692),	// VPKG
1234    UINT64_C(253987186020500),	// VPKH
1235    UINT64_C(253987186024597),	// VPKLSF
1236    UINT64_C(253987187073173),	// VPKLSFS
1237    UINT64_C(253987186028693),	// VPKLSG
1238    UINT64_C(253987187077269),	// VPKLSGS
1239    UINT64_C(253987186020501),	// VPKLSH
1240    UINT64_C(253987187069077),	// VPKLSHS
1241    UINT64_C(253987186024599),	// VPKSF
1242    UINT64_C(253987187073175),	// VPKSFS
1243    UINT64_C(253987186028695),	// VPKSG
1244    UINT64_C(253987187077271),	// VPKSGS
1245    UINT64_C(253987186020503),	// VPKSH
1246    UINT64_C(253987187069079),	// VPKSHS
1247    UINT64_C(253987186016336),	// VPOPCT
1248    UINT64_C(253987186016333),	// VREPB
1249    UINT64_C(253987186024525),	// VREPF
1250    UINT64_C(253987186028621),	// VREPG
1251    UINT64_C(253987186020429),	// VREPH
1252    UINT64_C(253987186016325),	// VREPIB
1253    UINT64_C(253987186024517),	// VREPIF
1254    UINT64_C(253987186028613),	// VREPIG
1255    UINT64_C(253987186020421),	// VREPIH
1256    UINT64_C(253987186016503),	// VSB
1257    UINT64_C(253987253125309),	// VSBCBIQ
1258    UINT64_C(253987253125311),	// VSBIQ
1259    UINT64_C(253987186016501),	// VSCBIB
1260    UINT64_C(253987186024693),	// VSCBIF
1261    UINT64_C(253987186028789),	// VSCBIG
1262    UINT64_C(253987186020597),	// VSCBIH
1263    UINT64_C(253987186032885),	// VSCBIQ
1264    UINT64_C(253987186016283),	// VSCEF
1265    UINT64_C(253987186016282),	// VSCEG
1266    UINT64_C(253987186016351),	// VSEGB
1267    UINT64_C(253987186024543),	// VSEGF
1268    UINT64_C(253987186020447),	// VSEGH
1269    UINT64_C(253987186016397),	// VSEL
1270    UINT64_C(253987186024695),	// VSF
1271    UINT64_C(253987186028791),	// VSG
1272    UINT64_C(253987186020599),	// VSH
1273    UINT64_C(253987186016372),	// VSL
1274    UINT64_C(253987186016373),	// VSLB
1275    UINT64_C(253987186016375),	// VSLDB
1276    UINT64_C(253987186032887),	// VSQ
1277    UINT64_C(253987186016382),	// VSRA
1278    UINT64_C(253987186016383),	// VSRAB
1279    UINT64_C(253987186016380),	// VSRL
1280    UINT64_C(253987186016381),	// VSRLB
1281    UINT64_C(253987186016270),	// VST
1282    UINT64_C(0),
1283    UINT64_C(0),
1284    UINT64_C(253987186016264),	// VSTEB
1285    UINT64_C(253987186016267),	// VSTEF
1286    UINT64_C(253987186016266),	// VSTEG
1287    UINT64_C(253987186016265),	// VSTEH
1288    UINT64_C(253987186016319),	// VSTL
1289    UINT64_C(253987186016318),	// VSTM
1290    UINT64_C(253987186016394),	// VSTRCB
1291    UINT64_C(253987187064970),	// VSTRCBS
1292    UINT64_C(253987219570826),	// VSTRCF
1293    UINT64_C(253987220619402),	// VSTRCFS
1294    UINT64_C(253987202793610),	// VSTRCH
1295    UINT64_C(253987203842186),	// VSTRCHS
1296    UINT64_C(253987188113546),	// VSTRCZB
1297    UINT64_C(253987189162122),	// VSTRCZBS
1298    UINT64_C(253987221667978),	// VSTRCZF
1299    UINT64_C(253987222716554),	// VSTRCZFS
1300    UINT64_C(253987204890762),	// VSTRCZH
1301    UINT64_C(253987205939338),	// VSTRCZHS
1302    UINT64_C(253987186016356),	// VSUMB
1303    UINT64_C(253987186024549),	// VSUMGF
1304    UINT64_C(253987186020453),	// VSUMGH
1305    UINT64_C(253987186020452),	// VSUMH
1306    UINT64_C(253987186024551),	// VSUMQF
1307    UINT64_C(253987186028647),	// VSUMQG
1308    UINT64_C(253987186016472),	// VTM
1309    UINT64_C(253987186016471),	// VUPHB
1310    UINT64_C(253987186024663),	// VUPHF
1311    UINT64_C(253987186020567),	// VUPHH
1312    UINT64_C(253987186016470),	// VUPLB
1313    UINT64_C(253987186024662),	// VUPLF
1314    UINT64_C(253987186016469),	// VUPLHB
1315    UINT64_C(253987186024661),	// VUPLHF
1316    UINT64_C(253987186020565),	// VUPLHH
1317    UINT64_C(253987186020566),	// VUPLHW
1318    UINT64_C(253987186016468),	// VUPLLB
1319    UINT64_C(253987186024660),	// VUPLLF
1320    UINT64_C(253987186020564),	// VUPLLH
1321    UINT64_C(253987186016365),	// VX
1322    UINT64_C(253987186016324),	// VZERO
1323    UINT64_C(253987186553027),	// WCDGB
1324    UINT64_C(253987186553025),	// WCDLGB
1325    UINT64_C(253987186553026),	// WCGDB
1326    UINT64_C(253987186553024),	// WCLGDB
1327    UINT64_C(253987186553059),	// WFADB
1328    UINT64_C(253987186028747),	// WFCDB
1329    UINT64_C(253987186553064),	// WFCEDB
1330    UINT64_C(253987187601640),	// WFCEDBS
1331    UINT64_C(253987186553067),	// WFCHDB
1332    UINT64_C(253987187601643),	// WFCHDBS
1333    UINT64_C(253987186553066),	// WFCHEDB
1334    UINT64_C(253987187601642),	// WFCHEDBS
1335    UINT64_C(253987186553061),	// WFDDB
1336    UINT64_C(253987186553031),	// WFIDB
1337    UINT64_C(253987186028746),	// WFKDB
1338    UINT64_C(253987186553036),	// WFLCDB
1339    UINT64_C(253987187601612),	// WFLNDB
1340    UINT64_C(253987188650188),	// WFLPDB
1341    UINT64_C(253987236872335),	// WFMADB
1342    UINT64_C(253987186553063),	// WFMDB
1343    UINT64_C(253987236872334),	// WFMSDB
1344    UINT64_C(253987186553058),	// WFSDB
1345    UINT64_C(253987186553038),	// WFSQDB
1346    UINT64_C(253987186552906),	// WFTCIDB
1347    UINT64_C(253987186548932),	// WLDEB
1348    UINT64_C(253987186553029),	// WLEDB
1349    UINT64_C(1459617792),	// X
1350    UINT64_C(236394999971840),	// XC
1351    UINT64_C(0),
1352    UINT64_C(0),
1353    UINT64_C(249589139505282),	// XG
1354    UINT64_C(3112304640),	// XGR
1355    UINT64_C(3118923776),	// XGRK
1356    UINT64_C(2533359616),	// XI
1357    UINT64_C(0),
1358    UINT64_C(211132002336768),	// XIHF
1359    UINT64_C(0),
1360    UINT64_C(211136297304064),	// XILF
1361    UINT64_C(0),
1362    UINT64_C(258385232527447),	// XIY
1363    UINT64_C(5888),	// XR
1364    UINT64_C(3119972352),	// XRK
1365    UINT64_C(249589139505239),	// XY
1366    UINT64_C(0),
1367    UINT64_C(0),
1368    UINT64_C(0)
1369  };
1370  const unsigned opcode = MI.getOpcode();
1371  uint64_t Value = InstBits[opcode];
1372  uint64_t op = 0;
1373  (void)op;  // suppress warning
1374  switch (opcode) {
1375    case SystemZ::TEND: {
1376      break;
1377    }
1378    case SystemZ::CGHSI:
1379    case SystemZ::CHHSI:
1380    case SystemZ::CHSI:
1381    case SystemZ::CLFHSI:
1382    case SystemZ::CLGHSI:
1383    case SystemZ::CLHHSI:
1384    case SystemZ::MVGHI:
1385    case SystemZ::MVHHI:
1386    case SystemZ::MVHI:
1387    case SystemZ::TBEGIN:
1388    case SystemZ::TBEGINC: {
1389      // op: BD1
1390      op = getBDAddr12Encoding(MI, 0, Fixups, STI);
1391      Value |= (op & UINT64_C(65535)) << 16;
1392      // op: I2
1393      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
1394      Value |= op & UINT64_C(65535);
1395      break;
1396    }
1397    case SystemZ::CLI:
1398    case SystemZ::MVI:
1399    case SystemZ::NI:
1400    case SystemZ::OI:
1401    case SystemZ::TM:
1402    case SystemZ::XI: {
1403      // op: BD1
1404      op = getBDAddr12Encoding(MI, 0, Fixups, STI);
1405      Value |= op & UINT64_C(65535);
1406      // op: I2
1407      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
1408      Value |= (op & UINT64_C(255)) << 16;
1409      break;
1410    }
1411    case SystemZ::AGSI:
1412    case SystemZ::ASI:
1413    case SystemZ::CLIY:
1414    case SystemZ::MVIY:
1415    case SystemZ::NIY:
1416    case SystemZ::OIY:
1417    case SystemZ::TMY:
1418    case SystemZ::XIY: {
1419      // op: BD1
1420      op = getBDAddr20Encoding(MI, 0, Fixups, STI);
1421      Value |= (op & UINT64_C(16777215)) << 8;
1422      // op: I2
1423      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
1424      Value |= (op & UINT64_C(255)) << 32;
1425      break;
1426    }
1427    case SystemZ::STCK:
1428    case SystemZ::STCKE:
1429    case SystemZ::STCKF:
1430    case SystemZ::STFLE:
1431    case SystemZ::TABORT: {
1432      // op: BD2
1433      op = getBDAddr12Encoding(MI, 0, Fixups, STI);
1434      Value |= op & UINT64_C(65535);
1435      break;
1436    }
1437    case SystemZ::CLC:
1438    case SystemZ::MVC:
1439    case SystemZ::NC:
1440    case SystemZ::OC:
1441    case SystemZ::XC: {
1442      // op: BDL1
1443      op = getBDLAddr12Len8Encoding(MI, 0, Fixups, STI);
1444      Value |= (op & UINT64_C(16777215)) << 16;
1445      // op: BD2
1446      op = getBDAddr12Encoding(MI, 3, Fixups, STI);
1447      Value |= op & UINT64_C(65535);
1448      break;
1449    }
1450    case SystemZ::AsmEJ:
1451    case SystemZ::AsmHEJ:
1452    case SystemZ::AsmHJ:
1453    case SystemZ::AsmLEJ:
1454    case SystemZ::AsmLHJ:
1455    case SystemZ::AsmLJ:
1456    case SystemZ::AsmNEJ:
1457    case SystemZ::AsmNHEJ:
1458    case SystemZ::AsmNHJ:
1459    case SystemZ::AsmNLEJ:
1460    case SystemZ::AsmNLHJ:
1461    case SystemZ::AsmNLJ:
1462    case SystemZ::AsmNOJ:
1463    case SystemZ::AsmOJ:
1464    case SystemZ::J: {
1465      // op: I2
1466      op = getPC16DBLEncoding(MI, 0, Fixups, STI);
1467      Value |= op & UINT64_C(65535);
1468      break;
1469    }
1470    case SystemZ::AsmEJG:
1471    case SystemZ::AsmHEJG:
1472    case SystemZ::AsmHJG:
1473    case SystemZ::AsmLEJG:
1474    case SystemZ::AsmLHJG:
1475    case SystemZ::AsmLJG:
1476    case SystemZ::AsmNEJG:
1477    case SystemZ::AsmNHEJG:
1478    case SystemZ::AsmNHJG:
1479    case SystemZ::AsmNLEJG:
1480    case SystemZ::AsmNLHJG:
1481    case SystemZ::AsmNLJG:
1482    case SystemZ::AsmNOJG:
1483    case SystemZ::AsmOJG:
1484    case SystemZ::JG: {
1485      // op: I2
1486      op = getPC32DBLEncoding(MI, 0, Fixups, STI);
1487      Value |= op & UINT64_C(4294967295);
1488      break;
1489    }
1490    case SystemZ::MADB:
1491    case SystemZ::MAEB:
1492    case SystemZ::MSDB:
1493    case SystemZ::MSEB: {
1494      // op: R1
1495      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1496      Value |= (op & UINT64_C(15)) << 12;
1497      // op: R3
1498      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
1499      Value |= (op & UINT64_C(15)) << 36;
1500      // op: XBD2
1501      op = getBDXAddr12Encoding(MI, 3, Fixups, STI);
1502      Value |= (op & UINT64_C(1048575)) << 16;
1503      break;
1504    }
1505    case SystemZ::MADBR:
1506    case SystemZ::MAEBR:
1507    case SystemZ::MSDBR:
1508    case SystemZ::MSEBR: {
1509      // op: R1
1510      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1511      Value |= (op & UINT64_C(15)) << 12;
1512      // op: R3
1513      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
1514      Value |= (op & UINT64_C(15)) << 4;
1515      // op: R2
1516      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
1517      Value |= op & UINT64_C(15);
1518      break;
1519    }
1520    case SystemZ::SLL:
1521    case SystemZ::SRA:
1522    case SystemZ::SRL: {
1523      // op: R1
1524      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1525      Value |= (op & UINT64_C(15)) << 20;
1526      // op: BD2
1527      op = getBDAddr12Encoding(MI, 2, Fixups, STI);
1528      Value |= op & UINT64_C(65535);
1529      break;
1530    }
1531    case SystemZ::CGHI:
1532    case SystemZ::CHI:
1533    case SystemZ::LGHI:
1534    case SystemZ::LHI:
1535    case SystemZ::LLIHH:
1536    case SystemZ::LLIHL:
1537    case SystemZ::LLILH:
1538    case SystemZ::LLILL:
1539    case SystemZ::TMHH:
1540    case SystemZ::TMHL:
1541    case SystemZ::TMLH:
1542    case SystemZ::TMLL: {
1543      // op: R1
1544      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1545      Value |= (op & UINT64_C(15)) << 20;
1546      // op: I2
1547      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
1548      Value |= op & UINT64_C(65535);
1549      break;
1550    }
1551    case SystemZ::AGHI:
1552    case SystemZ::AHI:
1553    case SystemZ::IIHH:
1554    case SystemZ::IIHL:
1555    case SystemZ::IILH:
1556    case SystemZ::IILL:
1557    case SystemZ::MGHI:
1558    case SystemZ::MHI:
1559    case SystemZ::NIHH:
1560    case SystemZ::NIHL:
1561    case SystemZ::NILH:
1562    case SystemZ::NILL:
1563    case SystemZ::OIHH:
1564    case SystemZ::OIHL:
1565    case SystemZ::OILH:
1566    case SystemZ::OILL: {
1567      // op: R1
1568      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1569      Value |= (op & UINT64_C(15)) << 20;
1570      // op: I2
1571      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
1572      Value |= op & UINT64_C(65535);
1573      break;
1574    }
1575    case SystemZ::AsmBRC: {
1576      // op: R1
1577      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1578      Value |= (op & UINT64_C(15)) << 20;
1579      // op: I2
1580      op = getPC16DBLEncoding(MI, 1, Fixups, STI);
1581      Value |= op & UINT64_C(65535);
1582      break;
1583    }
1584    case SystemZ::BRCT:
1585    case SystemZ::BRCTG: {
1586      // op: R1
1587      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1588      Value |= (op & UINT64_C(15)) << 20;
1589      // op: I2
1590      op = getPC16DBLEncoding(MI, 2, Fixups, STI);
1591      Value |= op & UINT64_C(65535);
1592      break;
1593    }
1594    case SystemZ::BRAS: {
1595      // op: R1
1596      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1597      Value |= (op & UINT64_C(15)) << 20;
1598      // op: I2
1599      op = getPC16DBLTLSEncoding(MI, 1, Fixups, STI);
1600      Value |= op & UINT64_C(65535);
1601      break;
1602    }
1603    case SystemZ::CS: {
1604      // op: R1
1605      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1606      Value |= (op & UINT64_C(15)) << 20;
1607      // op: R3
1608      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
1609      Value |= (op & UINT64_C(15)) << 16;
1610      // op: BD2
1611      op = getBDAddr12Encoding(MI, 3, Fixups, STI);
1612      Value |= op & UINT64_C(65535);
1613      break;
1614    }
1615    case SystemZ::C:
1616    case SystemZ::CH:
1617    case SystemZ::CL:
1618    case SystemZ::L:
1619    case SystemZ::LA:
1620    case SystemZ::LD:
1621    case SystemZ::LE:
1622    case SystemZ::LH:
1623    case SystemZ::ST:
1624    case SystemZ::STC:
1625    case SystemZ::STD:
1626    case SystemZ::STE:
1627    case SystemZ::STH: {
1628      // op: R1
1629      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1630      Value |= (op & UINT64_C(15)) << 20;
1631      // op: XBD2
1632      op = getBDXAddr12Encoding(MI, 1, Fixups, STI);
1633      Value |= op & UINT64_C(1048575);
1634      break;
1635    }
1636    case SystemZ::A:
1637    case SystemZ::AH:
1638    case SystemZ::AL:
1639    case SystemZ::IC:
1640    case SystemZ::IC32:
1641    case SystemZ::MH:
1642    case SystemZ::MS:
1643    case SystemZ::N:
1644    case SystemZ::O:
1645    case SystemZ::S:
1646    case SystemZ::SH:
1647    case SystemZ::SL:
1648    case SystemZ::X: {
1649      // op: R1
1650      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1651      Value |= (op & UINT64_C(15)) << 20;
1652      // op: XBD2
1653      op = getBDXAddr12Encoding(MI, 2, Fixups, STI);
1654      Value |= op & UINT64_C(1048575);
1655      break;
1656    }
1657    case SystemZ::VLGVB:
1658    case SystemZ::VLGVF:
1659    case SystemZ::VLGVG:
1660    case SystemZ::VLGVH: {
1661      // op: R1
1662      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1663      Value |= (op & UINT64_C(15)) << 36;
1664      // op: BD2
1665      op = getBDAddr12Encoding(MI, 2, Fixups, STI);
1666      Value |= (op & UINT64_C(65535)) << 16;
1667      // op: V3
1668      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
1669      Value |= (op & UINT64_C(15)) << 32;
1670      Value |= (op & UINT64_C(16)) << 6;
1671      break;
1672    }
1673    case SystemZ::AsmESTOC:
1674    case SystemZ::AsmESTOCG:
1675    case SystemZ::AsmHESTOC:
1676    case SystemZ::AsmHESTOCG:
1677    case SystemZ::AsmHSTOC:
1678    case SystemZ::AsmHSTOCG:
1679    case SystemZ::AsmLESTOC:
1680    case SystemZ::AsmLESTOCG:
1681    case SystemZ::AsmLHSTOC:
1682    case SystemZ::AsmLHSTOCG:
1683    case SystemZ::AsmLSTOC:
1684    case SystemZ::AsmLSTOCG:
1685    case SystemZ::AsmNESTOC:
1686    case SystemZ::AsmNESTOCG:
1687    case SystemZ::AsmNHESTOC:
1688    case SystemZ::AsmNHESTOCG:
1689    case SystemZ::AsmNHSTOC:
1690    case SystemZ::AsmNHSTOCG:
1691    case SystemZ::AsmNLESTOC:
1692    case SystemZ::AsmNLESTOCG:
1693    case SystemZ::AsmNLHSTOC:
1694    case SystemZ::AsmNLHSTOCG:
1695    case SystemZ::AsmNLSTOC:
1696    case SystemZ::AsmNLSTOCG:
1697    case SystemZ::AsmNOSTOC:
1698    case SystemZ::AsmNOSTOCG:
1699    case SystemZ::AsmOSTOC:
1700    case SystemZ::AsmOSTOCG: {
1701      // op: R1
1702      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1703      Value |= (op & UINT64_C(15)) << 36;
1704      // op: BD2
1705      op = getBDAddr20Encoding(MI, 1, Fixups, STI);
1706      Value |= (op & UINT64_C(16777215)) << 8;
1707      break;
1708    }
1709    case SystemZ::AsmELOC:
1710    case SystemZ::AsmELOCG:
1711    case SystemZ::AsmHELOC:
1712    case SystemZ::AsmHELOCG:
1713    case SystemZ::AsmHLOC:
1714    case SystemZ::AsmHLOCG:
1715    case SystemZ::AsmLELOC:
1716    case SystemZ::AsmLELOCG:
1717    case SystemZ::AsmLHLOC:
1718    case SystemZ::AsmLHLOCG:
1719    case SystemZ::AsmLLOC:
1720    case SystemZ::AsmLLOCG:
1721    case SystemZ::AsmNELOC:
1722    case SystemZ::AsmNELOCG:
1723    case SystemZ::AsmNHELOC:
1724    case SystemZ::AsmNHELOCG:
1725    case SystemZ::AsmNHLOC:
1726    case SystemZ::AsmNHLOCG:
1727    case SystemZ::AsmNLELOC:
1728    case SystemZ::AsmNLELOCG:
1729    case SystemZ::AsmNLHLOC:
1730    case SystemZ::AsmNLHLOCG:
1731    case SystemZ::AsmNLLOC:
1732    case SystemZ::AsmNLLOCG:
1733    case SystemZ::AsmNOLOC:
1734    case SystemZ::AsmNOLOCG:
1735    case SystemZ::AsmOLOC:
1736    case SystemZ::AsmOLOCG: {
1737      // op: R1
1738      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1739      Value |= (op & UINT64_C(15)) << 36;
1740      // op: BD2
1741      op = getBDAddr20Encoding(MI, 2, Fixups, STI);
1742      Value |= (op & UINT64_C(16777215)) << 8;
1743      break;
1744    }
1745    case SystemZ::AsmCGIJ:
1746    case SystemZ::AsmCIJ:
1747    case SystemZ::AsmCLGIJ:
1748    case SystemZ::AsmCLIJ:
1749    case SystemZ::CGIJ:
1750    case SystemZ::CIJ:
1751    case SystemZ::CLGIJ:
1752    case SystemZ::CLIJ: {
1753      // op: R1
1754      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1755      Value |= (op & UINT64_C(15)) << 36;
1756      // op: I2
1757      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
1758      Value |= (op & UINT64_C(255)) << 8;
1759      // op: M3
1760      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
1761      Value |= (op & UINT64_C(15)) << 32;
1762      // op: RI4
1763      op = getPC16DBLEncoding(MI, 3, Fixups, STI);
1764      Value |= (op & UINT64_C(65535)) << 16;
1765      break;
1766    }
1767    case SystemZ::AsmJEAltCGI:
1768    case SystemZ::AsmJEAltCI:
1769    case SystemZ::AsmJEAltCLGI:
1770    case SystemZ::AsmJEAltCLI:
1771    case SystemZ::AsmJECGI:
1772    case SystemZ::AsmJECI:
1773    case SystemZ::AsmJECLGI:
1774    case SystemZ::AsmJECLI:
1775    case SystemZ::AsmJHAltCGI:
1776    case SystemZ::AsmJHAltCI:
1777    case SystemZ::AsmJHAltCLGI:
1778    case SystemZ::AsmJHAltCLI:
1779    case SystemZ::AsmJHCGI:
1780    case SystemZ::AsmJHCI:
1781    case SystemZ::AsmJHCLGI:
1782    case SystemZ::AsmJHCLI:
1783    case SystemZ::AsmJHEAltCGI:
1784    case SystemZ::AsmJHEAltCI:
1785    case SystemZ::AsmJHEAltCLGI:
1786    case SystemZ::AsmJHEAltCLI:
1787    case SystemZ::AsmJHECGI:
1788    case SystemZ::AsmJHECI:
1789    case SystemZ::AsmJHECLGI:
1790    case SystemZ::AsmJHECLI:
1791    case SystemZ::AsmJLAltCGI:
1792    case SystemZ::AsmJLAltCI:
1793    case SystemZ::AsmJLAltCLGI:
1794    case SystemZ::AsmJLAltCLI:
1795    case SystemZ::AsmJLCGI:
1796    case SystemZ::AsmJLCI:
1797    case SystemZ::AsmJLCLGI:
1798    case SystemZ::AsmJLCLI:
1799    case SystemZ::AsmJLEAltCGI:
1800    case SystemZ::AsmJLEAltCI:
1801    case SystemZ::AsmJLEAltCLGI:
1802    case SystemZ::AsmJLEAltCLI:
1803    case SystemZ::AsmJLECGI:
1804    case SystemZ::AsmJLECI:
1805    case SystemZ::AsmJLECLGI:
1806    case SystemZ::AsmJLECLI:
1807    case SystemZ::AsmJLHAltCGI:
1808    case SystemZ::AsmJLHAltCI:
1809    case SystemZ::AsmJLHAltCLGI:
1810    case SystemZ::AsmJLHAltCLI:
1811    case SystemZ::AsmJLHCGI:
1812    case SystemZ::AsmJLHCI:
1813    case SystemZ::AsmJLHCLGI:
1814    case SystemZ::AsmJLHCLI: {
1815      // op: R1
1816      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1817      Value |= (op & UINT64_C(15)) << 36;
1818      // op: I2
1819      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
1820      Value |= (op & UINT64_C(255)) << 8;
1821      // op: RI4
1822      op = getPC16DBLEncoding(MI, 2, Fixups, STI);
1823      Value |= (op & UINT64_C(65535)) << 16;
1824      break;
1825    }
1826    case SystemZ::CFI:
1827    case SystemZ::CGFI:
1828    case SystemZ::CIH:
1829    case SystemZ::CLFI:
1830    case SystemZ::CLGFI:
1831    case SystemZ::CLIH:
1832    case SystemZ::IIHF:
1833    case SystemZ::IILF:
1834    case SystemZ::LGFI:
1835    case SystemZ::LLIHF:
1836    case SystemZ::LLILF: {
1837      // op: R1
1838      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1839      Value |= (op & UINT64_C(15)) << 36;
1840      // op: I2
1841      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
1842      Value |= op & UINT64_C(4294967295);
1843      break;
1844    }
1845    case SystemZ::AFI:
1846    case SystemZ::AGFI:
1847    case SystemZ::AIH:
1848    case SystemZ::ALFI:
1849    case SystemZ::ALGFI:
1850    case SystemZ::MSFI:
1851    case SystemZ::MSGFI:
1852    case SystemZ::NIHF:
1853    case SystemZ::NILF:
1854    case SystemZ::OIHF:
1855    case SystemZ::OILF:
1856    case SystemZ::SLFI:
1857    case SystemZ::SLGFI:
1858    case SystemZ::XIHF:
1859    case SystemZ::XILF: {
1860      // op: R1
1861      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1862      Value |= (op & UINT64_C(15)) << 36;
1863      // op: I2
1864      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
1865      Value |= op & UINT64_C(4294967295);
1866      break;
1867    }
1868    case SystemZ::AsmBRCL:
1869    case SystemZ::CGFRL:
1870    case SystemZ::CGHRL:
1871    case SystemZ::CGRL:
1872    case SystemZ::CHRL:
1873    case SystemZ::CLGFRL:
1874    case SystemZ::CLGHRL:
1875    case SystemZ::CLGRL:
1876    case SystemZ::CLHRL:
1877    case SystemZ::CLRL:
1878    case SystemZ::CRL:
1879    case SystemZ::LARL:
1880    case SystemZ::LGFRL:
1881    case SystemZ::LGHRL:
1882    case SystemZ::LGRL:
1883    case SystemZ::LHRL:
1884    case SystemZ::LLGFRL:
1885    case SystemZ::LLGHRL:
1886    case SystemZ::LLHRL:
1887    case SystemZ::LRL:
1888    case SystemZ::PFDRL:
1889    case SystemZ::STGRL:
1890    case SystemZ::STHRL:
1891    case SystemZ::STRL: {
1892      // op: R1
1893      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1894      Value |= (op & UINT64_C(15)) << 36;
1895      // op: I2
1896      op = getPC32DBLEncoding(MI, 1, Fixups, STI);
1897      Value |= op & UINT64_C(4294967295);
1898      break;
1899    }
1900    case SystemZ::BRASL: {
1901      // op: R1
1902      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1903      Value |= (op & UINT64_C(15)) << 36;
1904      // op: I2
1905      op = getPC32DBLTLSEncoding(MI, 1, Fixups, STI);
1906      Value |= op & UINT64_C(4294967295);
1907      break;
1908    }
1909    case SystemZ::AsmCGRJ:
1910    case SystemZ::AsmCLGRJ:
1911    case SystemZ::AsmCLRJ:
1912    case SystemZ::AsmCRJ:
1913    case SystemZ::CGRJ:
1914    case SystemZ::CLGRJ:
1915    case SystemZ::CLRJ:
1916    case SystemZ::CRJ: {
1917      // op: R1
1918      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1919      Value |= (op & UINT64_C(15)) << 36;
1920      // op: R2
1921      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
1922      Value |= (op & UINT64_C(15)) << 32;
1923      // op: M3
1924      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
1925      Value |= (op & UINT64_C(15)) << 12;
1926      // op: RI4
1927      op = getPC16DBLEncoding(MI, 3, Fixups, STI);
1928      Value |= (op & UINT64_C(65535)) << 16;
1929      break;
1930    }
1931    case SystemZ::AsmJEAltCGR:
1932    case SystemZ::AsmJEAltCLGR:
1933    case SystemZ::AsmJEAltCLR:
1934    case SystemZ::AsmJEAltCR:
1935    case SystemZ::AsmJECGR:
1936    case SystemZ::AsmJECLGR:
1937    case SystemZ::AsmJECLR:
1938    case SystemZ::AsmJECR:
1939    case SystemZ::AsmJHAltCGR:
1940    case SystemZ::AsmJHAltCLGR:
1941    case SystemZ::AsmJHAltCLR:
1942    case SystemZ::AsmJHAltCR:
1943    case SystemZ::AsmJHCGR:
1944    case SystemZ::AsmJHCLGR:
1945    case SystemZ::AsmJHCLR:
1946    case SystemZ::AsmJHCR:
1947    case SystemZ::AsmJHEAltCGR:
1948    case SystemZ::AsmJHEAltCLGR:
1949    case SystemZ::AsmJHEAltCLR:
1950    case SystemZ::AsmJHEAltCR:
1951    case SystemZ::AsmJHECGR:
1952    case SystemZ::AsmJHECLGR:
1953    case SystemZ::AsmJHECLR:
1954    case SystemZ::AsmJHECR:
1955    case SystemZ::AsmJLAltCGR:
1956    case SystemZ::AsmJLAltCLGR:
1957    case SystemZ::AsmJLAltCLR:
1958    case SystemZ::AsmJLAltCR:
1959    case SystemZ::AsmJLCGR:
1960    case SystemZ::AsmJLCLGR:
1961    case SystemZ::AsmJLCLR:
1962    case SystemZ::AsmJLCR:
1963    case SystemZ::AsmJLEAltCGR:
1964    case SystemZ::AsmJLEAltCLGR:
1965    case SystemZ::AsmJLEAltCLR:
1966    case SystemZ::AsmJLEAltCR:
1967    case SystemZ::AsmJLECGR:
1968    case SystemZ::AsmJLECLGR:
1969    case SystemZ::AsmJLECLR:
1970    case SystemZ::AsmJLECR:
1971    case SystemZ::AsmJLHAltCGR:
1972    case SystemZ::AsmJLHAltCLGR:
1973    case SystemZ::AsmJLHAltCLR:
1974    case SystemZ::AsmJLHAltCR:
1975    case SystemZ::AsmJLHCGR:
1976    case SystemZ::AsmJLHCLGR:
1977    case SystemZ::AsmJLHCLR:
1978    case SystemZ::AsmJLHCR: {
1979      // op: R1
1980      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
1981      Value |= (op & UINT64_C(15)) << 36;
1982      // op: R2
1983      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
1984      Value |= (op & UINT64_C(15)) << 32;
1985      // op: RI4
1986      op = getPC16DBLEncoding(MI, 2, Fixups, STI);
1987      Value |= (op & UINT64_C(65535)) << 16;
1988      break;
1989    }
1990    case SystemZ::RISBG:
1991    case SystemZ::RISBG32:
1992    case SystemZ::RISBGN:
1993    case SystemZ::RISBHG:
1994    case SystemZ::RISBLG:
1995    case SystemZ::RNSBG:
1996    case SystemZ::ROSBG:
1997    case SystemZ::RXSBG: {
1998      // op: R1
1999      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2000      Value |= (op & UINT64_C(15)) << 36;
2001      // op: R2
2002      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2003      Value |= (op & UINT64_C(15)) << 32;
2004      // op: I3
2005      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
2006      Value |= (op & UINT64_C(255)) << 24;
2007      // op: I4
2008      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
2009      Value |= (op & UINT64_C(255)) << 16;
2010      // op: I5
2011      op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
2012      Value |= (op & UINT64_C(255)) << 8;
2013      break;
2014    }
2015    case SystemZ::LAA:
2016    case SystemZ::LAAG:
2017    case SystemZ::LAAL:
2018    case SystemZ::LAALG:
2019    case SystemZ::LAN:
2020    case SystemZ::LANG:
2021    case SystemZ::LAO:
2022    case SystemZ::LAOG:
2023    case SystemZ::LAX:
2024    case SystemZ::LAXG:
2025    case SystemZ::LMG:
2026    case SystemZ::RLL:
2027    case SystemZ::RLLG:
2028    case SystemZ::SLLG:
2029    case SystemZ::SLLK:
2030    case SystemZ::SRAG:
2031    case SystemZ::SRAK:
2032    case SystemZ::SRLG:
2033    case SystemZ::SRLK:
2034    case SystemZ::STMG: {
2035      // op: R1
2036      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2037      Value |= (op & UINT64_C(15)) << 36;
2038      // op: R3
2039      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2040      Value |= (op & UINT64_C(15)) << 32;
2041      // op: BD2
2042      op = getBDAddr20Encoding(MI, 2, Fixups, STI);
2043      Value |= (op & UINT64_C(16777215)) << 8;
2044      break;
2045    }
2046    case SystemZ::AGHIK:
2047    case SystemZ::AHIK:
2048    case SystemZ::ALGHSIK:
2049    case SystemZ::ALHSIK: {
2050      // op: R1
2051      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2052      Value |= (op & UINT64_C(15)) << 36;
2053      // op: R3
2054      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2055      Value |= (op & UINT64_C(15)) << 32;
2056      // op: I2
2057      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2058      Value |= (op & UINT64_C(65535)) << 16;
2059      break;
2060    }
2061    case SystemZ::CSG:
2062    case SystemZ::CSY: {
2063      // op: R1
2064      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2065      Value |= (op & UINT64_C(15)) << 36;
2066      // op: R3
2067      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2068      Value |= (op & UINT64_C(15)) << 32;
2069      // op: BD2
2070      op = getBDAddr20Encoding(MI, 3, Fixups, STI);
2071      Value |= (op & UINT64_C(16777215)) << 8;
2072      break;
2073    }
2074    case SystemZ::AsmSTOC:
2075    case SystemZ::AsmSTOCG: {
2076      // op: R1
2077      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2078      Value |= (op & UINT64_C(15)) << 36;
2079      // op: R3
2080      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
2081      Value |= (op & UINT64_C(15)) << 32;
2082      // op: BD2
2083      op = getBDAddr20Encoding(MI, 1, Fixups, STI);
2084      Value |= (op & UINT64_C(16777215)) << 8;
2085      break;
2086    }
2087    case SystemZ::STOC:
2088    case SystemZ::STOCG: {
2089      // op: R1
2090      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2091      Value |= (op & UINT64_C(15)) << 36;
2092      // op: R3
2093      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
2094      Value |= (op & UINT64_C(15)) << 32;
2095      // op: BD2
2096      op = getBDAddr20Encoding(MI, 1, Fixups, STI);
2097      Value |= (op & UINT64_C(16777215)) << 8;
2098      break;
2099    }
2100    case SystemZ::AsmLOC:
2101    case SystemZ::AsmLOCG: {
2102      // op: R1
2103      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2104      Value |= (op & UINT64_C(15)) << 36;
2105      // op: R3
2106      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
2107      Value |= (op & UINT64_C(15)) << 32;
2108      // op: BD2
2109      op = getBDAddr20Encoding(MI, 2, Fixups, STI);
2110      Value |= (op & UINT64_C(16777215)) << 8;
2111      break;
2112    }
2113    case SystemZ::LOC:
2114    case SystemZ::LOCG: {
2115      // op: R1
2116      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2117      Value |= (op & UINT64_C(15)) << 36;
2118      // op: R3
2119      op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
2120      Value |= (op & UINT64_C(15)) << 32;
2121      // op: BD2
2122      op = getBDAddr20Encoding(MI, 2, Fixups, STI);
2123      Value |= (op & UINT64_C(16777215)) << 8;
2124      break;
2125    }
2126    case SystemZ::CDB:
2127    case SystemZ::CEB:
2128    case SystemZ::LDE32:
2129    case SystemZ::LDEB:
2130    case SystemZ::LXDB:
2131    case SystemZ::LXEB:
2132    case SystemZ::SQDB:
2133    case SystemZ::SQEB: {
2134      // op: R1
2135      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2136      Value |= (op & UINT64_C(15)) << 36;
2137      // op: XBD2
2138      op = getBDXAddr12Encoding(MI, 1, Fixups, STI);
2139      Value |= (op & UINT64_C(1048575)) << 16;
2140      break;
2141    }
2142    case SystemZ::LCBB: {
2143      // op: R1
2144      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2145      Value |= (op & UINT64_C(15)) << 36;
2146      // op: XBD2
2147      op = getBDXAddr12Encoding(MI, 1, Fixups, STI);
2148      Value |= (op & UINT64_C(1048575)) << 16;
2149      // op: M3
2150      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
2151      Value |= (op & UINT64_C(15)) << 12;
2152      break;
2153    }
2154    case SystemZ::ADB:
2155    case SystemZ::AEB:
2156    case SystemZ::DDB:
2157    case SystemZ::DEB:
2158    case SystemZ::MDB:
2159    case SystemZ::MDEB:
2160    case SystemZ::MEEB:
2161    case SystemZ::MXDB:
2162    case SystemZ::SDB:
2163    case SystemZ::SEB: {
2164      // op: R1
2165      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2166      Value |= (op & UINT64_C(15)) << 36;
2167      // op: XBD2
2168      op = getBDXAddr12Encoding(MI, 2, Fixups, STI);
2169      Value |= (op & UINT64_C(1048575)) << 16;
2170      break;
2171    }
2172    case SystemZ::CG:
2173    case SystemZ::CGF:
2174    case SystemZ::CGH:
2175    case SystemZ::CHF:
2176    case SystemZ::CHY:
2177    case SystemZ::CLG:
2178    case SystemZ::CLGF:
2179    case SystemZ::CLHF:
2180    case SystemZ::CLY:
2181    case SystemZ::CY:
2182    case SystemZ::LAY:
2183    case SystemZ::LB:
2184    case SystemZ::LBH:
2185    case SystemZ::LDY:
2186    case SystemZ::LEY:
2187    case SystemZ::LFH:
2188    case SystemZ::LG:
2189    case SystemZ::LGB:
2190    case SystemZ::LGF:
2191    case SystemZ::LGH:
2192    case SystemZ::LHH:
2193    case SystemZ::LHY:
2194    case SystemZ::LLC:
2195    case SystemZ::LLCH:
2196    case SystemZ::LLGC:
2197    case SystemZ::LLGF:
2198    case SystemZ::LLGH:
2199    case SystemZ::LLH:
2200    case SystemZ::LLHH:
2201    case SystemZ::LRV:
2202    case SystemZ::LRVG:
2203    case SystemZ::LT:
2204    case SystemZ::LTG:
2205    case SystemZ::LTGF:
2206    case SystemZ::LY:
2207    case SystemZ::NTSTG:
2208    case SystemZ::PFD:
2209    case SystemZ::STCH:
2210    case SystemZ::STCY:
2211    case SystemZ::STDY:
2212    case SystemZ::STEY:
2213    case SystemZ::STFH:
2214    case SystemZ::STG:
2215    case SystemZ::STHH:
2216    case SystemZ::STHY:
2217    case SystemZ::STRV:
2218    case SystemZ::STRVG:
2219    case SystemZ::STY: {
2220      // op: R1
2221      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2222      Value |= (op & UINT64_C(15)) << 36;
2223      // op: XBD2
2224      op = getBDXAddr20Encoding(MI, 1, Fixups, STI);
2225      Value |= (op & UINT64_C(268435455)) << 8;
2226      break;
2227    }
2228    case SystemZ::AG:
2229    case SystemZ::AGF:
2230    case SystemZ::AHY:
2231    case SystemZ::ALC:
2232    case SystemZ::ALCG:
2233    case SystemZ::ALG:
2234    case SystemZ::ALGF:
2235    case SystemZ::ALY:
2236    case SystemZ::AY:
2237    case SystemZ::DL:
2238    case SystemZ::DLG:
2239    case SystemZ::DSG:
2240    case SystemZ::DSGF:
2241    case SystemZ::IC32Y:
2242    case SystemZ::ICY:
2243    case SystemZ::MHY:
2244    case SystemZ::MLG:
2245    case SystemZ::MSG:
2246    case SystemZ::MSGF:
2247    case SystemZ::MSY:
2248    case SystemZ::NG:
2249    case SystemZ::NY:
2250    case SystemZ::OG:
2251    case SystemZ::OY:
2252    case SystemZ::SG:
2253    case SystemZ::SGF:
2254    case SystemZ::SHY:
2255    case SystemZ::SLB:
2256    case SystemZ::SLBG:
2257    case SystemZ::SLG:
2258    case SystemZ::SLGF:
2259    case SystemZ::SLY:
2260    case SystemZ::SY:
2261    case SystemZ::XG:
2262    case SystemZ::XY: {
2263      // op: R1
2264      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2265      Value |= (op & UINT64_C(15)) << 36;
2266      // op: XBD2
2267      op = getBDXAddr20Encoding(MI, 2, Fixups, STI);
2268      Value |= (op & UINT64_C(268435455)) << 8;
2269      break;
2270    }
2271    case SystemZ::ETND:
2272    case SystemZ::IPM:
2273    case SystemZ::LZDR:
2274    case SystemZ::LZER:
2275    case SystemZ::LZXR: {
2276      // op: R1
2277      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2278      Value |= (op & UINT64_C(15)) << 4;
2279      break;
2280    }
2281    case SystemZ::AsmBCR:
2282    case SystemZ::BASR:
2283    case SystemZ::CDBR:
2284    case SystemZ::CDFBR:
2285    case SystemZ::CDGBR:
2286    case SystemZ::CEBR:
2287    case SystemZ::CEFBR:
2288    case SystemZ::CEGBR:
2289    case SystemZ::CGFR:
2290    case SystemZ::CGR:
2291    case SystemZ::CLGFR:
2292    case SystemZ::CLGR:
2293    case SystemZ::CLR:
2294    case SystemZ::CLST:
2295    case SystemZ::CR:
2296    case SystemZ::CXBR:
2297    case SystemZ::CXFBR:
2298    case SystemZ::CXGBR:
2299    case SystemZ::EAR:
2300    case SystemZ::FLOGR:
2301    case SystemZ::LBR:
2302    case SystemZ::LCDBR:
2303    case SystemZ::LCDFR:
2304    case SystemZ::LCDFR_32:
2305    case SystemZ::LCEBR:
2306    case SystemZ::LCGFR:
2307    case SystemZ::LCGR:
2308    case SystemZ::LCR:
2309    case SystemZ::LCXBR:
2310    case SystemZ::LDEBR:
2311    case SystemZ::LDGR:
2312    case SystemZ::LDR:
2313    case SystemZ::LDXBR:
2314    case SystemZ::LEDBR:
2315    case SystemZ::LER:
2316    case SystemZ::LEXBR:
2317    case SystemZ::LGBR:
2318    case SystemZ::LGDR:
2319    case SystemZ::LGFR:
2320    case SystemZ::LGHR:
2321    case SystemZ::LGR:
2322    case SystemZ::LHR:
2323    case SystemZ::LLCR:
2324    case SystemZ::LLGCR:
2325    case SystemZ::LLGFR:
2326    case SystemZ::LLGHR:
2327    case SystemZ::LLHR:
2328    case SystemZ::LNDBR:
2329    case SystemZ::LNDFR:
2330    case SystemZ::LNDFR_32:
2331    case SystemZ::LNEBR:
2332    case SystemZ::LNGFR:
2333    case SystemZ::LNGR:
2334    case SystemZ::LNR:
2335    case SystemZ::LNXBR:
2336    case SystemZ::LPDBR:
2337    case SystemZ::LPDFR:
2338    case SystemZ::LPDFR_32:
2339    case SystemZ::LPEBR:
2340    case SystemZ::LPGFR:
2341    case SystemZ::LPGR:
2342    case SystemZ::LPR:
2343    case SystemZ::LPXBR:
2344    case SystemZ::LR:
2345    case SystemZ::LRVGR:
2346    case SystemZ::LRVR:
2347    case SystemZ::LTDBR:
2348    case SystemZ::LTDBRCompare:
2349    case SystemZ::LTEBR:
2350    case SystemZ::LTEBRCompare:
2351    case SystemZ::LTGFR:
2352    case SystemZ::LTGR:
2353    case SystemZ::LTR:
2354    case SystemZ::LTXBR:
2355    case SystemZ::LTXBRCompare:
2356    case SystemZ::LXDBR:
2357    case SystemZ::LXEBR:
2358    case SystemZ::LXR:
2359    case SystemZ::MVST:
2360    case SystemZ::POPCNT:
2361    case SystemZ::SQDBR:
2362    case SystemZ::SQEBR:
2363    case SystemZ::SQXBR:
2364    case SystemZ::SRST: {
2365      // op: R1
2366      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2367      Value |= (op & UINT64_C(15)) << 4;
2368      // op: R2
2369      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2370      Value |= op & UINT64_C(15);
2371      break;
2372    }
2373    case SystemZ::AGRK:
2374    case SystemZ::ALGRK:
2375    case SystemZ::ALRK:
2376    case SystemZ::ARK:
2377    case SystemZ::NGRK:
2378    case SystemZ::NRK:
2379    case SystemZ::OGRK:
2380    case SystemZ::ORK:
2381    case SystemZ::PPA:
2382    case SystemZ::SGRK:
2383    case SystemZ::SLGRK:
2384    case SystemZ::SLRK:
2385    case SystemZ::SRK:
2386    case SystemZ::XGRK:
2387    case SystemZ::XRK: {
2388      // op: R1
2389      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2390      Value |= (op & UINT64_C(15)) << 4;
2391      // op: R2
2392      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2393      Value |= op & UINT64_C(15);
2394      // op: R3
2395      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2396      Value |= (op & UINT64_C(15)) << 12;
2397      break;
2398    }
2399    case SystemZ::LOCGR:
2400    case SystemZ::LOCR: {
2401      // op: R1
2402      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2403      Value |= (op & UINT64_C(15)) << 4;
2404      // op: R2
2405      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2406      Value |= op & UINT64_C(15);
2407      // op: R3
2408      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
2409      Value |= (op & UINT64_C(15)) << 12;
2410      break;
2411    }
2412    case SystemZ::ADBR:
2413    case SystemZ::AEBR:
2414    case SystemZ::AGFR:
2415    case SystemZ::AGR:
2416    case SystemZ::ALCGR:
2417    case SystemZ::ALCR:
2418    case SystemZ::ALGFR:
2419    case SystemZ::ALGR:
2420    case SystemZ::ALR:
2421    case SystemZ::AR:
2422    case SystemZ::AXBR:
2423    case SystemZ::AsmELOCGR:
2424    case SystemZ::AsmELOCR:
2425    case SystemZ::AsmHELOCGR:
2426    case SystemZ::AsmHELOCR:
2427    case SystemZ::AsmHLOCGR:
2428    case SystemZ::AsmHLOCR:
2429    case SystemZ::AsmLELOCGR:
2430    case SystemZ::AsmLELOCR:
2431    case SystemZ::AsmLHLOCGR:
2432    case SystemZ::AsmLHLOCR:
2433    case SystemZ::AsmLLOCGR:
2434    case SystemZ::AsmLLOCR:
2435    case SystemZ::AsmNELOCGR:
2436    case SystemZ::AsmNELOCR:
2437    case SystemZ::AsmNHELOCGR:
2438    case SystemZ::AsmNHELOCR:
2439    case SystemZ::AsmNHLOCGR:
2440    case SystemZ::AsmNHLOCR:
2441    case SystemZ::AsmNLELOCGR:
2442    case SystemZ::AsmNLELOCR:
2443    case SystemZ::AsmNLHLOCGR:
2444    case SystemZ::AsmNLHLOCR:
2445    case SystemZ::AsmNLLOCGR:
2446    case SystemZ::AsmNLLOCR:
2447    case SystemZ::AsmNOLOCGR:
2448    case SystemZ::AsmNOLOCR:
2449    case SystemZ::AsmOLOCGR:
2450    case SystemZ::AsmOLOCR:
2451    case SystemZ::DDBR:
2452    case SystemZ::DEBR:
2453    case SystemZ::DLGR:
2454    case SystemZ::DLR:
2455    case SystemZ::DSGFR:
2456    case SystemZ::DSGR:
2457    case SystemZ::DXBR:
2458    case SystemZ::MDBR:
2459    case SystemZ::MDEBR:
2460    case SystemZ::MEEBR:
2461    case SystemZ::MLGR:
2462    case SystemZ::MSGFR:
2463    case SystemZ::MSGR:
2464    case SystemZ::MSR:
2465    case SystemZ::MXBR:
2466    case SystemZ::MXDBR:
2467    case SystemZ::NGR:
2468    case SystemZ::NR:
2469    case SystemZ::OGR:
2470    case SystemZ::OR:
2471    case SystemZ::SDBR:
2472    case SystemZ::SEBR:
2473    case SystemZ::SGFR:
2474    case SystemZ::SGR:
2475    case SystemZ::SLBGR:
2476    case SystemZ::SLBR:
2477    case SystemZ::SLGFR:
2478    case SystemZ::SLGR:
2479    case SystemZ::SLR:
2480    case SystemZ::SR:
2481    case SystemZ::SXBR:
2482    case SystemZ::XGR:
2483    case SystemZ::XR: {
2484      // op: R1
2485      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2486      Value |= (op & UINT64_C(15)) << 4;
2487      // op: R2
2488      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2489      Value |= op & UINT64_C(15);
2490      break;
2491    }
2492    case SystemZ::CFDBR:
2493    case SystemZ::CFEBR:
2494    case SystemZ::CFXBR:
2495    case SystemZ::CGDBR:
2496    case SystemZ::CGEBR:
2497    case SystemZ::CGXBR:
2498    case SystemZ::CPSDRdd:
2499    case SystemZ::CPSDRds:
2500    case SystemZ::CPSDRsd:
2501    case SystemZ::CPSDRss:
2502    case SystemZ::FIDBR:
2503    case SystemZ::FIEBR:
2504    case SystemZ::FIXBR: {
2505      // op: R1
2506      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2507      Value |= (op & UINT64_C(15)) << 4;
2508      // op: R2
2509      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2510      Value |= op & UINT64_C(15);
2511      // op: R3
2512      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2513      Value |= (op & UINT64_C(15)) << 12;
2514      break;
2515    }
2516    case SystemZ::CDLFBR:
2517    case SystemZ::CDLGBR:
2518    case SystemZ::CELFBR:
2519    case SystemZ::CELGBR:
2520    case SystemZ::CLFDBR:
2521    case SystemZ::CLFEBR:
2522    case SystemZ::CLFXBR:
2523    case SystemZ::CLGDBR:
2524    case SystemZ::CLGEBR:
2525    case SystemZ::CLGXBR:
2526    case SystemZ::CXLFBR:
2527    case SystemZ::CXLGBR:
2528    case SystemZ::FIDBRA:
2529    case SystemZ::FIEBRA:
2530    case SystemZ::FIXBRA:
2531    case SystemZ::LDXBRA:
2532    case SystemZ::LEDBRA:
2533    case SystemZ::LEXBRA: {
2534      // op: R1
2535      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2536      Value |= (op & UINT64_C(15)) << 4;
2537      // op: R2
2538      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2539      Value |= op & UINT64_C(15);
2540      // op: R3
2541      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2542      Value |= (op & UINT64_C(15)) << 12;
2543      // op: R4
2544      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
2545      Value |= (op & UINT64_C(15)) << 8;
2546      break;
2547    }
2548    case SystemZ::AsmLOCGR:
2549    case SystemZ::AsmLOCR: {
2550      // op: R1
2551      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2552      Value |= (op & UINT64_C(15)) << 4;
2553      // op: R2
2554      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2555      Value |= op & UINT64_C(15);
2556      // op: R3
2557      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
2558      Value |= (op & UINT64_C(15)) << 12;
2559      break;
2560    }
2561    case SystemZ::BRC: {
2562      // op: R1
2563      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2564      Value |= (op & UINT64_C(15)) << 20;
2565      // op: I2
2566      op = getPC16DBLEncoding(MI, 2, Fixups, STI);
2567      Value |= op & UINT64_C(65535);
2568      break;
2569    }
2570    case SystemZ::BRCL: {
2571      // op: R1
2572      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2573      Value |= (op & UINT64_C(15)) << 36;
2574      // op: I2
2575      op = getPC32DBLEncoding(MI, 2, Fixups, STI);
2576      Value |= op & UINT64_C(4294967295);
2577      break;
2578    }
2579    case SystemZ::AsmEBR:
2580    case SystemZ::AsmHBR:
2581    case SystemZ::AsmHEBR:
2582    case SystemZ::AsmLBR:
2583    case SystemZ::AsmLEBR:
2584    case SystemZ::AsmLHBR:
2585    case SystemZ::AsmNEBR:
2586    case SystemZ::AsmNHBR:
2587    case SystemZ::AsmNHEBR:
2588    case SystemZ::AsmNLBR:
2589    case SystemZ::AsmNLEBR:
2590    case SystemZ::AsmNLHBR:
2591    case SystemZ::AsmNOBR:
2592    case SystemZ::AsmOBR:
2593    case SystemZ::BR: {
2594      // op: R2
2595      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2596      Value |= op & UINT64_C(15);
2597      break;
2598    }
2599    case SystemZ::VONE:
2600    case SystemZ::VZERO: {
2601      // op: V1
2602      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2603      Value |= (op & UINT64_C(15)) << 36;
2604      Value |= (op & UINT64_C(16)) << 7;
2605      break;
2606    }
2607    case SystemZ::VLL:
2608    case SystemZ::VSTL: {
2609      // op: V1
2610      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2611      Value |= (op & UINT64_C(15)) << 36;
2612      Value |= (op & UINT64_C(16)) << 7;
2613      // op: BD2
2614      op = getBDAddr12Encoding(MI, 2, Fixups, STI);
2615      Value |= (op & UINT64_C(65535)) << 16;
2616      // op: R3
2617      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2618      Value |= (op & UINT64_C(15)) << 32;
2619      break;
2620    }
2621    case SystemZ::VERLLB:
2622    case SystemZ::VERLLF:
2623    case SystemZ::VERLLG:
2624    case SystemZ::VERLLH:
2625    case SystemZ::VESLB:
2626    case SystemZ::VESLF:
2627    case SystemZ::VESLG:
2628    case SystemZ::VESLH:
2629    case SystemZ::VESRAB:
2630    case SystemZ::VESRAF:
2631    case SystemZ::VESRAG:
2632    case SystemZ::VESRAH:
2633    case SystemZ::VESRLB:
2634    case SystemZ::VESRLF:
2635    case SystemZ::VESRLG:
2636    case SystemZ::VESRLH:
2637    case SystemZ::VLM:
2638    case SystemZ::VSTM: {
2639      // op: V1
2640      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2641      Value |= (op & UINT64_C(15)) << 36;
2642      Value |= (op & UINT64_C(16)) << 7;
2643      // op: BD2
2644      op = getBDAddr12Encoding(MI, 2, Fixups, STI);
2645      Value |= (op & UINT64_C(65535)) << 16;
2646      // op: V3
2647      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2648      Value |= (op & UINT64_C(15)) << 32;
2649      Value |= (op & UINT64_C(16)) << 6;
2650      break;
2651    }
2652    case SystemZ::VLVGB:
2653    case SystemZ::VLVGF:
2654    case SystemZ::VLVGG:
2655    case SystemZ::VLVGH: {
2656      // op: V1
2657      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2658      Value |= (op & UINT64_C(15)) << 36;
2659      Value |= (op & UINT64_C(16)) << 7;
2660      // op: BD2
2661      op = getBDAddr12Encoding(MI, 3, Fixups, STI);
2662      Value |= (op & UINT64_C(65535)) << 16;
2663      // op: R3
2664      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2665      Value |= (op & UINT64_C(15)) << 32;
2666      break;
2667    }
2668    case SystemZ::VGMB:
2669    case SystemZ::VGMF:
2670    case SystemZ::VGMG:
2671    case SystemZ::VGMH: {
2672      // op: V1
2673      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2674      Value |= (op & UINT64_C(15)) << 36;
2675      Value |= (op & UINT64_C(16)) << 7;
2676      // op: I2
2677      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2678      Value |= (op & UINT64_C(255)) << 24;
2679      // op: I3
2680      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2681      Value |= (op & UINT64_C(255)) << 16;
2682      break;
2683    }
2684    case SystemZ::VGBM:
2685    case SystemZ::VREPIB:
2686    case SystemZ::VREPIF:
2687    case SystemZ::VREPIG:
2688    case SystemZ::VREPIH: {
2689      // op: V1
2690      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2691      Value |= (op & UINT64_C(15)) << 36;
2692      Value |= (op & UINT64_C(16)) << 7;
2693      // op: I2
2694      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2695      Value |= (op & UINT64_C(65535)) << 16;
2696      break;
2697    }
2698    case SystemZ::VLEIB:
2699    case SystemZ::VLEIF:
2700    case SystemZ::VLEIG:
2701    case SystemZ::VLEIH: {
2702      // op: V1
2703      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2704      Value |= (op & UINT64_C(15)) << 36;
2705      Value |= (op & UINT64_C(16)) << 7;
2706      // op: I2
2707      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2708      Value |= (op & UINT64_C(65535)) << 16;
2709      // op: M3
2710      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
2711      Value |= (op & UINT64_C(15)) << 12;
2712      break;
2713    }
2714    case SystemZ::VLVGP: {
2715      // op: V1
2716      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2717      Value |= (op & UINT64_C(15)) << 36;
2718      Value |= (op & UINT64_C(16)) << 7;
2719      // op: R2
2720      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2721      Value |= (op & UINT64_C(15)) << 32;
2722      // op: R3
2723      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2724      Value |= (op & UINT64_C(15)) << 28;
2725      break;
2726    }
2727    case SystemZ::VCLZB:
2728    case SystemZ::VCLZF:
2729    case SystemZ::VCLZG:
2730    case SystemZ::VCLZH:
2731    case SystemZ::VCTZB:
2732    case SystemZ::VCTZF:
2733    case SystemZ::VCTZG:
2734    case SystemZ::VCTZH:
2735    case SystemZ::VECB:
2736    case SystemZ::VECF:
2737    case SystemZ::VECG:
2738    case SystemZ::VECH:
2739    case SystemZ::VECLB:
2740    case SystemZ::VECLF:
2741    case SystemZ::VECLG:
2742    case SystemZ::VECLH:
2743    case SystemZ::VFLCDB:
2744    case SystemZ::VFLNDB:
2745    case SystemZ::VFLPDB:
2746    case SystemZ::VFSQDB:
2747    case SystemZ::VISTRB:
2748    case SystemZ::VISTRBS:
2749    case SystemZ::VISTRF:
2750    case SystemZ::VISTRFS:
2751    case SystemZ::VISTRH:
2752    case SystemZ::VISTRHS:
2753    case SystemZ::VLCB:
2754    case SystemZ::VLCF:
2755    case SystemZ::VLCG:
2756    case SystemZ::VLCH:
2757    case SystemZ::VLDEB:
2758    case SystemZ::VLPB:
2759    case SystemZ::VLPF:
2760    case SystemZ::VLPG:
2761    case SystemZ::VLPH:
2762    case SystemZ::VLR:
2763    case SystemZ::VSEGB:
2764    case SystemZ::VSEGF:
2765    case SystemZ::VSEGH:
2766    case SystemZ::VTM:
2767    case SystemZ::VUPHB:
2768    case SystemZ::VUPHF:
2769    case SystemZ::VUPHH:
2770    case SystemZ::VUPLB:
2771    case SystemZ::VUPLF:
2772    case SystemZ::VUPLHB:
2773    case SystemZ::VUPLHF:
2774    case SystemZ::VUPLHH:
2775    case SystemZ::VUPLHW:
2776    case SystemZ::VUPLLB:
2777    case SystemZ::VUPLLF:
2778    case SystemZ::VUPLLH:
2779    case SystemZ::WFCDB:
2780    case SystemZ::WFKDB:
2781    case SystemZ::WFLCDB:
2782    case SystemZ::WFLNDB:
2783    case SystemZ::WFLPDB:
2784    case SystemZ::WFSQDB:
2785    case SystemZ::WLDEB: {
2786      // op: V1
2787      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2788      Value |= (op & UINT64_C(15)) << 36;
2789      Value |= (op & UINT64_C(16)) << 7;
2790      // op: V2
2791      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2792      Value |= (op & UINT64_C(15)) << 32;
2793      Value |= (op & UINT64_C(16)) << 6;
2794      break;
2795    }
2796    case SystemZ::VFTCIDB:
2797    case SystemZ::WFTCIDB: {
2798      // op: V1
2799      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2800      Value |= (op & UINT64_C(15)) << 36;
2801      Value |= (op & UINT64_C(16)) << 7;
2802      // op: V2
2803      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2804      Value |= (op & UINT64_C(15)) << 32;
2805      Value |= (op & UINT64_C(16)) << 6;
2806      // op: I3
2807      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2808      Value |= (op & UINT64_C(4095)) << 20;
2809      break;
2810    }
2811    case SystemZ::VPOPCT: {
2812      // op: V1
2813      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2814      Value |= (op & UINT64_C(15)) << 36;
2815      Value |= (op & UINT64_C(16)) << 7;
2816      // op: V2
2817      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2818      Value |= (op & UINT64_C(15)) << 32;
2819      Value |= (op & UINT64_C(16)) << 6;
2820      // op: M3
2821      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2822      Value |= (op & UINT64_C(15)) << 12;
2823      break;
2824    }
2825    case SystemZ::VCDGB:
2826    case SystemZ::VCDLGB:
2827    case SystemZ::VCGDB:
2828    case SystemZ::VCLGDB:
2829    case SystemZ::VFIDB:
2830    case SystemZ::VLEDB: {
2831      // op: V1
2832      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2833      Value |= (op & UINT64_C(15)) << 36;
2834      Value |= (op & UINT64_C(16)) << 7;
2835      // op: V2
2836      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2837      Value |= (op & UINT64_C(15)) << 32;
2838      Value |= (op & UINT64_C(16)) << 6;
2839      // op: M4
2840      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2841      Value |= (op & UINT64_C(15)) << 16;
2842      // op: M5
2843      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
2844      Value |= (op & UINT64_C(15)) << 20;
2845      break;
2846    }
2847    case SystemZ::WCDGB:
2848    case SystemZ::WCDLGB:
2849    case SystemZ::WCGDB:
2850    case SystemZ::WCLGDB:
2851    case SystemZ::WFIDB:
2852    case SystemZ::WLEDB: {
2853      // op: V1
2854      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
2855      Value |= (op & UINT64_C(15)) << 36;
2856      Value |= (op & UINT64_C(16)) << 7;
2857      // op: V2
2858      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
2859      Value |= (op & UINT64_C(15)) << 32;
2860      Value |= (op & UINT64_C(16)) << 6;
2861      // op: M4
2862      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
2863      Value |= (op & UINT64_C(7)) << 16;
2864      // op: M5
2865      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
2866      Value |= (op & UINT64_C(15)) << 20;
2867      break;
2868    }
2869    case SystemZ::VAB:
2870    case SystemZ::VACCB:
2871    case SystemZ::VACCF:
2872    case SystemZ::VACCG:
2873    case SystemZ::VACCH:
2874    case SystemZ::VACCQ:
2875    case SystemZ::VAF:
2876    case SystemZ::VAG:
2877    case SystemZ::VAH:
2878    case SystemZ::VAQ:
2879    case SystemZ::VAVGB:
2880    case SystemZ::VAVGF:
2881    case SystemZ::VAVGG:
2882    case SystemZ::VAVGH:
2883    case SystemZ::VAVGLB:
2884    case SystemZ::VAVGLF:
2885    case SystemZ::VAVGLG:
2886    case SystemZ::VAVGLH:
2887    case SystemZ::VCEQB:
2888    case SystemZ::VCEQBS:
2889    case SystemZ::VCEQF:
2890    case SystemZ::VCEQFS:
2891    case SystemZ::VCEQG:
2892    case SystemZ::VCEQGS:
2893    case SystemZ::VCEQH:
2894    case SystemZ::VCEQHS:
2895    case SystemZ::VCHB:
2896    case SystemZ::VCHBS:
2897    case SystemZ::VCHF:
2898    case SystemZ::VCHFS:
2899    case SystemZ::VCHG:
2900    case SystemZ::VCHGS:
2901    case SystemZ::VCHH:
2902    case SystemZ::VCHHS:
2903    case SystemZ::VCHLB:
2904    case SystemZ::VCHLBS:
2905    case SystemZ::VCHLF:
2906    case SystemZ::VCHLFS:
2907    case SystemZ::VCHLG:
2908    case SystemZ::VCHLGS:
2909    case SystemZ::VCHLH:
2910    case SystemZ::VCHLHS:
2911    case SystemZ::VCKSM:
2912    case SystemZ::VERLLVB:
2913    case SystemZ::VERLLVF:
2914    case SystemZ::VERLLVG:
2915    case SystemZ::VERLLVH:
2916    case SystemZ::VESLVB:
2917    case SystemZ::VESLVF:
2918    case SystemZ::VESLVG:
2919    case SystemZ::VESLVH:
2920    case SystemZ::VESRAVB:
2921    case SystemZ::VESRAVF:
2922    case SystemZ::VESRAVG:
2923    case SystemZ::VESRAVH:
2924    case SystemZ::VESRLVB:
2925    case SystemZ::VESRLVF:
2926    case SystemZ::VESRLVG:
2927    case SystemZ::VESRLVH:
2928    case SystemZ::VFADB:
2929    case SystemZ::VFCEDB:
2930    case SystemZ::VFCEDBS:
2931    case SystemZ::VFCHDB:
2932    case SystemZ::VFCHDBS:
2933    case SystemZ::VFCHEDB:
2934    case SystemZ::VFCHEDBS:
2935    case SystemZ::VFDDB:
2936    case SystemZ::VFEEB:
2937    case SystemZ::VFEEBS:
2938    case SystemZ::VFEEF:
2939    case SystemZ::VFEEFS:
2940    case SystemZ::VFEEH:
2941    case SystemZ::VFEEHS:
2942    case SystemZ::VFEEZB:
2943    case SystemZ::VFEEZBS:
2944    case SystemZ::VFEEZF:
2945    case SystemZ::VFEEZFS:
2946    case SystemZ::VFEEZH:
2947    case SystemZ::VFEEZHS:
2948    case SystemZ::VFENEB:
2949    case SystemZ::VFENEBS:
2950    case SystemZ::VFENEF:
2951    case SystemZ::VFENEFS:
2952    case SystemZ::VFENEH:
2953    case SystemZ::VFENEHS:
2954    case SystemZ::VFENEZB:
2955    case SystemZ::VFENEZBS:
2956    case SystemZ::VFENEZF:
2957    case SystemZ::VFENEZFS:
2958    case SystemZ::VFENEZH:
2959    case SystemZ::VFENEZHS:
2960    case SystemZ::VFMDB:
2961    case SystemZ::VFSDB:
2962    case SystemZ::VGFMB:
2963    case SystemZ::VGFMF:
2964    case SystemZ::VGFMG:
2965    case SystemZ::VGFMH:
2966    case SystemZ::VMEB:
2967    case SystemZ::VMEF:
2968    case SystemZ::VMEH:
2969    case SystemZ::VMHB:
2970    case SystemZ::VMHF:
2971    case SystemZ::VMHH:
2972    case SystemZ::VMLB:
2973    case SystemZ::VMLEB:
2974    case SystemZ::VMLEF:
2975    case SystemZ::VMLEH:
2976    case SystemZ::VMLF:
2977    case SystemZ::VMLHB:
2978    case SystemZ::VMLHF:
2979    case SystemZ::VMLHH:
2980    case SystemZ::VMLHW:
2981    case SystemZ::VMLOB:
2982    case SystemZ::VMLOF:
2983    case SystemZ::VMLOH:
2984    case SystemZ::VMNB:
2985    case SystemZ::VMNF:
2986    case SystemZ::VMNG:
2987    case SystemZ::VMNH:
2988    case SystemZ::VMNLB:
2989    case SystemZ::VMNLF:
2990    case SystemZ::VMNLG:
2991    case SystemZ::VMNLH:
2992    case SystemZ::VMOB:
2993    case SystemZ::VMOF:
2994    case SystemZ::VMOH:
2995    case SystemZ::VMRHB:
2996    case SystemZ::VMRHF:
2997    case SystemZ::VMRHG:
2998    case SystemZ::VMRHH:
2999    case SystemZ::VMRLB:
3000    case SystemZ::VMRLF:
3001    case SystemZ::VMRLG:
3002    case SystemZ::VMRLH:
3003    case SystemZ::VMXB:
3004    case SystemZ::VMXF:
3005    case SystemZ::VMXG:
3006    case SystemZ::VMXH:
3007    case SystemZ::VMXLB:
3008    case SystemZ::VMXLF:
3009    case SystemZ::VMXLG:
3010    case SystemZ::VMXLH:
3011    case SystemZ::VN:
3012    case SystemZ::VNC:
3013    case SystemZ::VNO:
3014    case SystemZ::VO:
3015    case SystemZ::VPKF:
3016    case SystemZ::VPKG:
3017    case SystemZ::VPKH:
3018    case SystemZ::VPKLSF:
3019    case SystemZ::VPKLSFS:
3020    case SystemZ::VPKLSG:
3021    case SystemZ::VPKLSGS:
3022    case SystemZ::VPKLSH:
3023    case SystemZ::VPKLSHS:
3024    case SystemZ::VPKSF:
3025    case SystemZ::VPKSFS:
3026    case SystemZ::VPKSG:
3027    case SystemZ::VPKSGS:
3028    case SystemZ::VPKSH:
3029    case SystemZ::VPKSHS:
3030    case SystemZ::VSB:
3031    case SystemZ::VSCBIB:
3032    case SystemZ::VSCBIF:
3033    case SystemZ::VSCBIG:
3034    case SystemZ::VSCBIH:
3035    case SystemZ::VSCBIQ:
3036    case SystemZ::VSF:
3037    case SystemZ::VSG:
3038    case SystemZ::VSH:
3039    case SystemZ::VSL:
3040    case SystemZ::VSLB:
3041    case SystemZ::VSQ:
3042    case SystemZ::VSRA:
3043    case SystemZ::VSRAB:
3044    case SystemZ::VSRL:
3045    case SystemZ::VSRLB:
3046    case SystemZ::VSUMB:
3047    case SystemZ::VSUMGF:
3048    case SystemZ::VSUMGH:
3049    case SystemZ::VSUMH:
3050    case SystemZ::VSUMQF:
3051    case SystemZ::VSUMQG:
3052    case SystemZ::VX:
3053    case SystemZ::WFADB:
3054    case SystemZ::WFCEDB:
3055    case SystemZ::WFCEDBS:
3056    case SystemZ::WFCHDB:
3057    case SystemZ::WFCHDBS:
3058    case SystemZ::WFCHEDB:
3059    case SystemZ::WFCHEDBS:
3060    case SystemZ::WFDDB:
3061    case SystemZ::WFMDB:
3062    case SystemZ::WFSDB: {
3063      // op: V1
3064      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3065      Value |= (op & UINT64_C(15)) << 36;
3066      Value |= (op & UINT64_C(16)) << 7;
3067      // op: V2
3068      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3069      Value |= (op & UINT64_C(15)) << 32;
3070      Value |= (op & UINT64_C(16)) << 6;
3071      // op: V3
3072      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3073      Value |= (op & UINT64_C(15)) << 28;
3074      Value |= (op & UINT64_C(16)) << 5;
3075      break;
3076    }
3077    case SystemZ::VSLDB: {
3078      // op: V1
3079      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3080      Value |= (op & UINT64_C(15)) << 36;
3081      Value |= (op & UINT64_C(16)) << 7;
3082      // op: V2
3083      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3084      Value |= (op & UINT64_C(15)) << 32;
3085      Value |= (op & UINT64_C(16)) << 6;
3086      // op: V3
3087      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3088      Value |= (op & UINT64_C(15)) << 28;
3089      Value |= (op & UINT64_C(16)) << 5;
3090      // op: I4
3091      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3092      Value |= (op & UINT64_C(255)) << 16;
3093      break;
3094    }
3095    case SystemZ::VPDI: {
3096      // op: V1
3097      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3098      Value |= (op & UINT64_C(15)) << 36;
3099      Value |= (op & UINT64_C(16)) << 7;
3100      // op: V2
3101      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3102      Value |= (op & UINT64_C(15)) << 32;
3103      Value |= (op & UINT64_C(16)) << 6;
3104      // op: V3
3105      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3106      Value |= (op & UINT64_C(15)) << 28;
3107      Value |= (op & UINT64_C(16)) << 5;
3108      // op: M4
3109      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3110      Value |= (op & UINT64_C(15)) << 12;
3111      break;
3112    }
3113    case SystemZ::VFAEZBS:
3114    case SystemZ::VFAEZFS:
3115    case SystemZ::VFAEZHS: {
3116      // op: V1
3117      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3118      Value |= (op & UINT64_C(15)) << 36;
3119      Value |= (op & UINT64_C(16)) << 7;
3120      // op: V2
3121      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3122      Value |= (op & UINT64_C(15)) << 32;
3123      Value |= (op & UINT64_C(16)) << 6;
3124      // op: V3
3125      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3126      Value |= (op & UINT64_C(15)) << 28;
3127      Value |= (op & UINT64_C(16)) << 5;
3128      // op: M5
3129      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3130      Value |= (op & UINT64_C(12)) << 20;
3131      break;
3132    }
3133    case SystemZ::VFAEZB:
3134    case SystemZ::VFAEZF:
3135    case SystemZ::VFAEZH: {
3136      // op: V1
3137      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3138      Value |= (op & UINT64_C(15)) << 36;
3139      Value |= (op & UINT64_C(16)) << 7;
3140      // op: V2
3141      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3142      Value |= (op & UINT64_C(15)) << 32;
3143      Value |= (op & UINT64_C(16)) << 6;
3144      // op: V3
3145      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3146      Value |= (op & UINT64_C(15)) << 28;
3147      Value |= (op & UINT64_C(16)) << 5;
3148      // op: M5
3149      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3150      Value |= (op & UINT64_C(12)) << 20;
3151      Value |= (op & UINT64_C(1)) << 20;
3152      break;
3153    }
3154    case SystemZ::VFAEBS:
3155    case SystemZ::VFAEFS:
3156    case SystemZ::VFAEHS: {
3157      // op: V1
3158      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3159      Value |= (op & UINT64_C(15)) << 36;
3160      Value |= (op & UINT64_C(16)) << 7;
3161      // op: V2
3162      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3163      Value |= (op & UINT64_C(15)) << 32;
3164      Value |= (op & UINT64_C(16)) << 6;
3165      // op: V3
3166      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3167      Value |= (op & UINT64_C(15)) << 28;
3168      Value |= (op & UINT64_C(16)) << 5;
3169      // op: M5
3170      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3171      Value |= (op & UINT64_C(14)) << 20;
3172      break;
3173    }
3174    case SystemZ::VFAEB:
3175    case SystemZ::VFAEF:
3176    case SystemZ::VFAEH: {
3177      // op: V1
3178      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3179      Value |= (op & UINT64_C(15)) << 36;
3180      Value |= (op & UINT64_C(16)) << 7;
3181      // op: V2
3182      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3183      Value |= (op & UINT64_C(15)) << 32;
3184      Value |= (op & UINT64_C(16)) << 6;
3185      // op: V3
3186      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3187      Value |= (op & UINT64_C(15)) << 28;
3188      Value |= (op & UINT64_C(16)) << 5;
3189      // op: M5
3190      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3191      Value |= (op & UINT64_C(15)) << 20;
3192      break;
3193    }
3194    case SystemZ::VACCCQ:
3195    case SystemZ::VACQ:
3196    case SystemZ::VFMADB:
3197    case SystemZ::VFMSDB:
3198    case SystemZ::VGFMAB:
3199    case SystemZ::VGFMAF:
3200    case SystemZ::VGFMAG:
3201    case SystemZ::VGFMAH:
3202    case SystemZ::VMAEB:
3203    case SystemZ::VMAEF:
3204    case SystemZ::VMAEH:
3205    case SystemZ::VMAHB:
3206    case SystemZ::VMAHF:
3207    case SystemZ::VMAHH:
3208    case SystemZ::VMALB:
3209    case SystemZ::VMALEB:
3210    case SystemZ::VMALEF:
3211    case SystemZ::VMALEH:
3212    case SystemZ::VMALF:
3213    case SystemZ::VMALHB:
3214    case SystemZ::VMALHF:
3215    case SystemZ::VMALHH:
3216    case SystemZ::VMALHW:
3217    case SystemZ::VMALOB:
3218    case SystemZ::VMALOF:
3219    case SystemZ::VMALOH:
3220    case SystemZ::VMAOB:
3221    case SystemZ::VMAOF:
3222    case SystemZ::VMAOH:
3223    case SystemZ::VPERM:
3224    case SystemZ::VSBCBIQ:
3225    case SystemZ::VSBIQ:
3226    case SystemZ::VSEL:
3227    case SystemZ::WFMADB:
3228    case SystemZ::WFMSDB: {
3229      // op: V1
3230      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3231      Value |= (op & UINT64_C(15)) << 36;
3232      Value |= (op & UINT64_C(16)) << 7;
3233      // op: V2
3234      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3235      Value |= (op & UINT64_C(15)) << 32;
3236      Value |= (op & UINT64_C(16)) << 6;
3237      // op: V3
3238      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3239      Value |= (op & UINT64_C(15)) << 28;
3240      Value |= (op & UINT64_C(16)) << 5;
3241      // op: V4
3242      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3243      Value |= (op & UINT64_C(15)) << 12;
3244      Value |= (op & UINT64_C(16)) << 4;
3245      break;
3246    }
3247    case SystemZ::VSTRCZBS:
3248    case SystemZ::VSTRCZFS:
3249    case SystemZ::VSTRCZHS: {
3250      // op: V1
3251      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3252      Value |= (op & UINT64_C(15)) << 36;
3253      Value |= (op & UINT64_C(16)) << 7;
3254      // op: V2
3255      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3256      Value |= (op & UINT64_C(15)) << 32;
3257      Value |= (op & UINT64_C(16)) << 6;
3258      // op: V3
3259      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3260      Value |= (op & UINT64_C(15)) << 28;
3261      Value |= (op & UINT64_C(16)) << 5;
3262      // op: V4
3263      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3264      Value |= (op & UINT64_C(15)) << 12;
3265      Value |= (op & UINT64_C(16)) << 4;
3266      // op: M6
3267      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
3268      Value |= (op & UINT64_C(12)) << 20;
3269      break;
3270    }
3271    case SystemZ::VSTRCZB:
3272    case SystemZ::VSTRCZF:
3273    case SystemZ::VSTRCZH: {
3274      // op: V1
3275      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3276      Value |= (op & UINT64_C(15)) << 36;
3277      Value |= (op & UINT64_C(16)) << 7;
3278      // op: V2
3279      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3280      Value |= (op & UINT64_C(15)) << 32;
3281      Value |= (op & UINT64_C(16)) << 6;
3282      // op: V3
3283      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3284      Value |= (op & UINT64_C(15)) << 28;
3285      Value |= (op & UINT64_C(16)) << 5;
3286      // op: V4
3287      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3288      Value |= (op & UINT64_C(15)) << 12;
3289      Value |= (op & UINT64_C(16)) << 4;
3290      // op: M6
3291      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
3292      Value |= (op & UINT64_C(12)) << 20;
3293      Value |= (op & UINT64_C(1)) << 20;
3294      break;
3295    }
3296    case SystemZ::VSTRCBS:
3297    case SystemZ::VSTRCFS:
3298    case SystemZ::VSTRCHS: {
3299      // op: V1
3300      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3301      Value |= (op & UINT64_C(15)) << 36;
3302      Value |= (op & UINT64_C(16)) << 7;
3303      // op: V2
3304      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3305      Value |= (op & UINT64_C(15)) << 32;
3306      Value |= (op & UINT64_C(16)) << 6;
3307      // op: V3
3308      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3309      Value |= (op & UINT64_C(15)) << 28;
3310      Value |= (op & UINT64_C(16)) << 5;
3311      // op: V4
3312      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3313      Value |= (op & UINT64_C(15)) << 12;
3314      Value |= (op & UINT64_C(16)) << 4;
3315      // op: M6
3316      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
3317      Value |= (op & UINT64_C(14)) << 20;
3318      break;
3319    }
3320    case SystemZ::VSTRCB:
3321    case SystemZ::VSTRCF:
3322    case SystemZ::VSTRCH: {
3323      // op: V1
3324      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3325      Value |= (op & UINT64_C(15)) << 36;
3326      Value |= (op & UINT64_C(16)) << 7;
3327      // op: V2
3328      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3329      Value |= (op & UINT64_C(15)) << 32;
3330      Value |= (op & UINT64_C(16)) << 6;
3331      // op: V3
3332      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3333      Value |= (op & UINT64_C(15)) << 28;
3334      Value |= (op & UINT64_C(16)) << 5;
3335      // op: V4
3336      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3337      Value |= (op & UINT64_C(15)) << 12;
3338      Value |= (op & UINT64_C(16)) << 4;
3339      // op: M6
3340      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
3341      Value |= (op & UINT64_C(15)) << 20;
3342      break;
3343    }
3344    case SystemZ::VERIMB:
3345    case SystemZ::VERIMF:
3346    case SystemZ::VERIMG:
3347    case SystemZ::VERIMH: {
3348      // op: V1
3349      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3350      Value |= (op & UINT64_C(15)) << 36;
3351      Value |= (op & UINT64_C(16)) << 7;
3352      // op: V2
3353      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3354      Value |= (op & UINT64_C(15)) << 32;
3355      Value |= (op & UINT64_C(16)) << 6;
3356      // op: V3
3357      op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
3358      Value |= (op & UINT64_C(15)) << 28;
3359      Value |= (op & UINT64_C(16)) << 5;
3360      // op: I4
3361      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
3362      Value |= (op & UINT64_C(255)) << 16;
3363      break;
3364    }
3365    case SystemZ::VREPB:
3366    case SystemZ::VREPF:
3367    case SystemZ::VREPG:
3368    case SystemZ::VREPH: {
3369      // op: V1
3370      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3371      Value |= (op & UINT64_C(15)) << 36;
3372      Value |= (op & UINT64_C(16)) << 7;
3373      // op: V3
3374      op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
3375      Value |= (op & UINT64_C(15)) << 32;
3376      Value |= (op & UINT64_C(16)) << 6;
3377      // op: I2
3378      op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
3379      Value |= (op & UINT64_C(65535)) << 16;
3380      break;
3381    }
3382    case SystemZ::VSCEF:
3383    case SystemZ::VSCEG: {
3384      // op: V1
3385      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3386      Value |= (op & UINT64_C(15)) << 36;
3387      Value |= (op & UINT64_C(16)) << 7;
3388      // op: VBD2
3389      op = getBDVAddr12Encoding(MI, 1, Fixups, STI);
3390      Value |= (op & UINT64_C(1048575)) << 16;
3391      Value |= (op & UINT64_C(1048576)) >> 10;
3392      // op: M3
3393      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
3394      Value |= (op & UINT64_C(15)) << 12;
3395      break;
3396    }
3397    case SystemZ::VGEF:
3398    case SystemZ::VGEG: {
3399      // op: V1
3400      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3401      Value |= (op & UINT64_C(15)) << 36;
3402      Value |= (op & UINT64_C(16)) << 7;
3403      // op: VBD2
3404      op = getBDVAddr12Encoding(MI, 2, Fixups, STI);
3405      Value |= (op & UINT64_C(1048575)) << 16;
3406      Value |= (op & UINT64_C(1048576)) >> 10;
3407      // op: M3
3408      op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
3409      Value |= (op & UINT64_C(15)) << 12;
3410      break;
3411    }
3412    case SystemZ::VL:
3413    case SystemZ::VLLEZB:
3414    case SystemZ::VLLEZF:
3415    case SystemZ::VLLEZG:
3416    case SystemZ::VLLEZH:
3417    case SystemZ::VLREPB:
3418    case SystemZ::VLREPF:
3419    case SystemZ::VLREPG:
3420    case SystemZ::VLREPH:
3421    case SystemZ::VST: {
3422      // op: V1
3423      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3424      Value |= (op & UINT64_C(15)) << 36;
3425      Value |= (op & UINT64_C(16)) << 7;
3426      // op: XBD2
3427      op = getBDXAddr12Encoding(MI, 1, Fixups, STI);
3428      Value |= (op & UINT64_C(1048575)) << 16;
3429      break;
3430    }
3431    case SystemZ::VLBB:
3432    case SystemZ::VSTEB:
3433    case SystemZ::VSTEF:
3434    case SystemZ::VSTEG:
3435    case SystemZ::VSTEH: {
3436      // op: V1
3437      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3438      Value |= (op & UINT64_C(15)) << 36;
3439      Value |= (op & UINT64_C(16)) << 7;
3440      // op: XBD2
3441      op = getBDXAddr12Encoding(MI, 1, Fixups, STI);
3442      Value |= (op & UINT64_C(1048575)) << 16;
3443      // op: M3
3444      op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
3445      Value |= (op & UINT64_C(15)) << 12;
3446      break;
3447    }
3448    case SystemZ::VLEB:
3449    case SystemZ::VLEF:
3450    case SystemZ::VLEG:
3451    case SystemZ::VLEH: {
3452      // op: V1
3453      op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
3454      Value |= (op & UINT64_C(15)) << 36;
3455      Value |= (op & UINT64_C(16)) << 7;
3456      // op: XBD2
3457      op = getBDXAddr12Encoding(MI, 2, Fixups, STI);
3458      Value |= (op & UINT64_C(1048575)) << 16;
3459      // op: M3
3460      op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
3461      Value |= (op & UINT64_C(15)) << 12;
3462      break;
3463    }
3464  default:
3465    std::string msg;
3466    raw_string_ostream Msg(msg);
3467    Msg << "Not supported instr: " << MI;
3468    report_fatal_error(Msg.str());
3469  }
3470  return Value;
3471}
3472
3473