1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|*                                                                            *|
3|*Assembly Writer Source Fragment                                             *|
4|*                                                                            *|
5|* Automatically generated file, do not edit!                                 *|
6|*                                                                            *|
7\*===----------------------------------------------------------------------===*/
8
9/* Capstone Disassembly Engine */
10/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2015 */
11
12#include <stdio.h>	// debug
13#include <capstone/platform.h>
14
15
16/// printInstruction - This method is automatically generated by tablegen
17/// from the instruction set description.
18static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
19{
20  static const uint32_t OpInfo[] = {
21    0U,	// PHI
22    0U,	// INLINEASM
23    0U,	// CFI_INSTRUCTION
24    0U,	// EH_LABEL
25    0U,	// GC_LABEL
26    0U,	// KILL
27    0U,	// EXTRACT_SUBREG
28    0U,	// INSERT_SUBREG
29    0U,	// IMPLICIT_DEF
30    0U,	// SUBREG_TO_REG
31    0U,	// COPY_TO_REGCLASS
32    3946U,	// DBG_VALUE
33    0U,	// REG_SEQUENCE
34    0U,	// COPY
35    3939U,	// BUNDLE
36    3956U,	// LIFETIME_START
37    3926U,	// LIFETIME_END
38    0U,	// STACKMAP
39    0U,	// PATCHPOINT
40    0U,	// LOAD_STACK_GUARD
41    0U,	// STATEPOINT
42    0U,	// FRAME_ALLOC
43    4099U,	// A
44    4160U,	// ADB
45    1055559U,	// ADBR
46    0U,	// ADJCALLSTACKDOWN
47    0U,	// ADJCALLSTACKUP
48    0U,	// ADJDYNALLOC
49    4205U,	// AEB
50    1055678U,	// AEBR
51    0U,	// AEXT128_64
52    2103171U,	// AFI
53    0U,	// AFIMux
54    5195U,	// AG
55    5068U,	// AGF
56    2103181U,	// AGFI
57    1056088U,	// AGFR
58    3151831U,	// AGHI
59    37755030U,	// AGHIK
60    1056164U,	// AGR
61    171972799U,	// AGRK
62    75807U,	// AGSI
63    5397U,	// AH
64    3151821U,	// AHI
65    37755024U,	// AHIK
66    0U,	// AHIMux
67    0U,	// AHIMuxK
68    7917U,	// AHY
69    2102663U,	// AIH
70    6413U,	// AL
71    4271U,	// ALC
72    5239U,	// ALCG
73    1056176U,	// ALCGR
74    1056003U,	// ALCR
75    5248949U,	// ALFI
76    5272U,	// ALG
77    5078U,	// ALGF
78    5248921U,	// ALGFI
79    1056101U,	// ALGFR
80    37755037U,	// ALGHSIK
81    1056196U,	// ALGR
82    171972805U,	// ALGRK
83    37755046U,	// ALHSIK
84    1056312U,	// ALR
85    171972843U,	// ALRK
86    7975U,	// ALY
87    1055554U,	// AR
88    171972794U,	// ARK
89    75802U,	// ASI
90    0U,	// ATOMIC_CMP_SWAPW
91    0U,	// ATOMIC_LOADW_AFI
92    0U,	// ATOMIC_LOADW_AR
93    0U,	// ATOMIC_LOADW_MAX
94    0U,	// ATOMIC_LOADW_MIN
95    0U,	// ATOMIC_LOADW_NILH
96    0U,	// ATOMIC_LOADW_NILHi
97    0U,	// ATOMIC_LOADW_NR
98    0U,	// ATOMIC_LOADW_NRi
99    0U,	// ATOMIC_LOADW_OILH
100    0U,	// ATOMIC_LOADW_OR
101    0U,	// ATOMIC_LOADW_SR
102    0U,	// ATOMIC_LOADW_UMAX
103    0U,	// ATOMIC_LOADW_UMIN
104    0U,	// ATOMIC_LOADW_XILF
105    0U,	// ATOMIC_LOADW_XR
106    0U,	// ATOMIC_LOAD_AFI
107    0U,	// ATOMIC_LOAD_AGFI
108    0U,	// ATOMIC_LOAD_AGHI
109    0U,	// ATOMIC_LOAD_AGR
110    0U,	// ATOMIC_LOAD_AHI
111    0U,	// ATOMIC_LOAD_AR
112    0U,	// ATOMIC_LOAD_MAX_32
113    0U,	// ATOMIC_LOAD_MAX_64
114    0U,	// ATOMIC_LOAD_MIN_32
115    0U,	// ATOMIC_LOAD_MIN_64
116    0U,	// ATOMIC_LOAD_NGR
117    0U,	// ATOMIC_LOAD_NGRi
118    0U,	// ATOMIC_LOAD_NIHF64
119    0U,	// ATOMIC_LOAD_NIHF64i
120    0U,	// ATOMIC_LOAD_NIHH64
121    0U,	// ATOMIC_LOAD_NIHH64i
122    0U,	// ATOMIC_LOAD_NIHL64
123    0U,	// ATOMIC_LOAD_NIHL64i
124    0U,	// ATOMIC_LOAD_NILF
125    0U,	// ATOMIC_LOAD_NILF64
126    0U,	// ATOMIC_LOAD_NILF64i
127    0U,	// ATOMIC_LOAD_NILFi
128    0U,	// ATOMIC_LOAD_NILH
129    0U,	// ATOMIC_LOAD_NILH64
130    0U,	// ATOMIC_LOAD_NILH64i
131    0U,	// ATOMIC_LOAD_NILHi
132    0U,	// ATOMIC_LOAD_NILL
133    0U,	// ATOMIC_LOAD_NILL64
134    0U,	// ATOMIC_LOAD_NILL64i
135    0U,	// ATOMIC_LOAD_NILLi
136    0U,	// ATOMIC_LOAD_NR
137    0U,	// ATOMIC_LOAD_NRi
138    0U,	// ATOMIC_LOAD_OGR
139    0U,	// ATOMIC_LOAD_OIHF64
140    0U,	// ATOMIC_LOAD_OIHH64
141    0U,	// ATOMIC_LOAD_OIHL64
142    0U,	// ATOMIC_LOAD_OILF
143    0U,	// ATOMIC_LOAD_OILF64
144    0U,	// ATOMIC_LOAD_OILH
145    0U,	// ATOMIC_LOAD_OILH64
146    0U,	// ATOMIC_LOAD_OILL
147    0U,	// ATOMIC_LOAD_OILL64
148    0U,	// ATOMIC_LOAD_OR
149    0U,	// ATOMIC_LOAD_SGR
150    0U,	// ATOMIC_LOAD_SR
151    0U,	// ATOMIC_LOAD_UMAX_32
152    0U,	// ATOMIC_LOAD_UMAX_64
153    0U,	// ATOMIC_LOAD_UMIN_32
154    0U,	// ATOMIC_LOAD_UMIN_64
155    0U,	// ATOMIC_LOAD_XGR
156    0U,	// ATOMIC_LOAD_XIHF64
157    0U,	// ATOMIC_LOAD_XILF
158    0U,	// ATOMIC_LOAD_XILF64
159    0U,	// ATOMIC_LOAD_XR
160    0U,	// ATOMIC_SWAPW
161    0U,	// ATOMIC_SWAP_32
162    0U,	// ATOMIC_SWAP_64
163    1055887U,	// AXBR
164    7880U,	// AY
165    6438135U,	// AsmBCR
166    209101U,	// AsmBRC
167    211230U,	// AsmBRCL
168    74455135U,	// AsmCGIJ
169    306190455U,	// AsmCGRJ
170    74455130U,	// AsmCIJ
171    75503717U,	// AsmCLGIJ
172    306190461U,	// AsmCLGRJ
173    75503724U,	// AsmCLIJ
174    306190468U,	// AsmCLRJ
175    306190450U,	// AsmCRJ
176    269613U,	// AsmEBR
177    16910U,	// AsmEJ
178    16650U,	// AsmEJG
179    9441518U,	// AsmELOC
180    9441531U,	// AsmELOCG
181    1053631U,	// AsmELOCGR
182    1053624U,	// AsmELOCR
183    10490100U,	// AsmESTOC
184    10490114U,	// AsmESTOCG
185    269843U,	// AsmHBR
186    269618U,	// AsmHEBR
187    16695U,	// AsmHEJ
188    16687U,	// AsmHEJG
189    9441551U,	// AsmHELOC
190    9441566U,	// AsmHELOCG
191    1053187U,	// AsmHELOCGR
192    1053179U,	// AsmHELOCR
193    10490134U,	// AsmHESTOC
194    10490150U,	// AsmHESTOCG
195    17817U,	// AsmHJ
196    17745U,	// AsmHJG
197    9442596U,	// AsmHLOC
198    9442626U,	// AsmHLOCG
199    1054578U,	// AsmHLOCGR
200    1054571U,	// AsmHLOCR
201    10491178U,	// AsmHSTOC
202    10491209U,	// AsmHSTOCG
203    108009100U,	// AsmJEAltCGI
204    440407728U,	// AsmJEAltCGR
205    108009092U,	// AsmJEAltCI
206    109057685U,	// AsmJEAltCLGI
207    440407737U,	// AsmJEAltCLGR
208    109057695U,	// AsmJEAltCLI
209    440407747U,	// AsmJEAltCLR
210    440407720U,	// AsmJEAltCR
211    108007954U,	// AsmJECGI
212    440406574U,	// AsmJECGR
213    108007948U,	// AsmJECI
214    109056537U,	// AsmJECLGI
215    440406581U,	// AsmJECLGR
216    109056545U,	// AsmJECLI
217    440406589U,	// AsmJECLR
218    440406568U,	// AsmJECR
219    108008157U,	// AsmJHAltCGI
220    440406785U,	// AsmJHAltCGR
221    108008149U,	// AsmJHAltCI
222    109056742U,	// AsmJHAltCLGI
223    440406794U,	// AsmJHAltCLGR
224    109056752U,	// AsmJHAltCLI
225    440406804U,	// AsmJHAltCLR
226    440406777U,	// AsmJHAltCR
227    108008861U,	// AsmJHCGI
228    440407481U,	// AsmJHCGR
229    108008855U,	// AsmJHCI
230    109057444U,	// AsmJHCLGI
231    440407488U,	// AsmJHCLGR
232    109057452U,	// AsmJHCLI
233    440407496U,	// AsmJHCLR
234    440407475U,	// AsmJHCR
235    108009961U,	// AsmJHEAltCGI
236    440408585U,	// AsmJHEAltCGR
237    108009954U,	// AsmJHEAltCI
238    109058545U,	// AsmJHEAltCLGI
239    440408593U,	// AsmJHEAltCLGR
240    109058554U,	// AsmJHEAltCLI
241    440408602U,	// AsmJHEAltCLR
242    440408578U,	// AsmJHEAltCR
243    108007740U,	// AsmJHECGI
244    440406364U,	// AsmJHECGR
245    108007733U,	// AsmJHECI
246    109056324U,	// AsmJHECLGI
247    440406372U,	// AsmJHECLGR
248    109056333U,	// AsmJHECLI
249    440406381U,	// AsmJHECLR
250    440406357U,	// AsmJHECR
251    108007848U,	// AsmJLAltCGI
252    440406476U,	// AsmJLAltCGR
253    108007840U,	// AsmJLAltCI
254    109056433U,	// AsmJLAltCLGI
255    440406485U,	// AsmJLAltCLGR
256    109056443U,	// AsmJLAltCLI
257    440406495U,	// AsmJLAltCLR
258    440406468U,	// AsmJLAltCR
259    108009825U,	// AsmJLCGI
260    440408445U,	// AsmJLCGR
261    108009819U,	// AsmJLCI
262    109058408U,	// AsmJLCLGI
263    440408452U,	// AsmJLCLGR
264    109058416U,	// AsmJLCLI
265    440408460U,	// AsmJLCLR
266    440408439U,	// AsmJLCR
267    108009249U,	// AsmJLEAltCGI
268    440407873U,	// AsmJLEAltCGR
269    108009242U,	// AsmJLEAltCI
270    109057833U,	// AsmJLEAltCLGI
271    440407881U,	// AsmJLEAltCLGR
272    109057842U,	// AsmJLEAltCLI
273    440407890U,	// AsmJLEAltCLR
274    440407866U,	// AsmJLEAltCR
275    108008049U,	// AsmJLECGI
276    440406673U,	// AsmJLECGR
277    108008042U,	// AsmJLECI
278    109056633U,	// AsmJLECLGI
279    440406681U,	// AsmJLECLGR
280    109056642U,	// AsmJLECLI
281    440406690U,	// AsmJLECLR
282    440406666U,	// AsmJLECR
283    108008302U,	// AsmJLHAltCGI
284    440406926U,	// AsmJLHAltCGR
285    108008295U,	// AsmJLHAltCI
286    109056886U,	// AsmJLHAltCLGI
287    440406934U,	// AsmJLHAltCLGR
288    109056895U,	// AsmJLHAltCLI
289    440406943U,	// AsmJLHAltCLR
290    440406919U,	// AsmJLHAltCR
291    108008981U,	// AsmJLHCGI
292    440407605U,	// AsmJLHCGR
293    108008974U,	// AsmJLHCI
294    109057565U,	// AsmJLHCLGI
295    440407613U,	// AsmJLHCLGR
296    109057574U,	// AsmJLHCLI
297    440407622U,	// AsmJLHCLR
298    440407598U,	// AsmJLHCR
299    269885U,	// AsmLBR
300    269631U,	// AsmLEBR
301    17004U,	// AsmLEJ
302    16996U,	// AsmLEJG
303    9441860U,	// AsmLELOC
304    9441875U,	// AsmLELOCG
305    1053496U,	// AsmLELOCGR
306    1053488U,	// AsmLELOCR
307    10490443U,	// AsmLESTOC
308    10490459U,	// AsmLESTOCG
309    269855U,	// AsmLHBR
310    17936U,	// AsmLHJ
311    17903U,	// AsmLHJG
312    9442767U,	// AsmLHLOC
313    9442782U,	// AsmLHLOCG
314    1054439U,	// AsmLHLOCGR
315    1054431U,	// AsmLHLOCR
316    10491350U,	// AsmLHSTOC
317    10491366U,	// AsmLHSTOCG
318    18781U,	// AsmLJ
319    18743U,	// AsmLJG
320    9443601U,	// AsmLLOC
321    9443624U,	// AsmLLOCG
322    1055326U,	// AsmLLOCGR
323    1055289U,	// AsmLLOCR
324    579866818U,	// AsmLOC
325    579867773U,	// AsmLOCG
326    705699255U,	// AsmLOCGR
327    705699087U,	// AsmLOCR
328    10492183U,	// AsmLSTOC
329    10492207U,	// AsmLSTOCG
330    269644U,	// AsmNEBR
331    17257U,	// AsmNEJ
332    17249U,	// AsmNEJG
333    9442113U,	// AsmNELOC
334    9442128U,	// AsmNELOCG
335    1053615U,	// AsmNELOCGR
336    1053607U,	// AsmNELOCR
337    10490696U,	// AsmNESTOC
338    10490712U,	// AsmNESTOCG
339    269874U,	// AsmNHBR
340    269624U,	// AsmNHEBR
341    16802U,	// AsmNHEJ
342    16793U,	// AsmNHEJG
343    9441653U,	// AsmNHELOC
344    9441670U,	// AsmNHELOCG
345    1053169U,	// AsmNHELOCGR
346    1053160U,	// AsmNHELOCR
347    10490237U,	// AsmNHESTOC
348    10490255U,	// AsmNHESTOCG
349    18204U,	// AsmNHJ
350    18196U,	// AsmNHJG
351    9443060U,	// AsmNHLOC
352    9443075U,	// AsmNHLOCG
353    1054562U,	// AsmNHLOCGR
354    1054554U,	// AsmNHLOCR
355    10491643U,	// AsmNHSTOC
356    10491659U,	// AsmNHSTOCG
357    269900U,	// AsmNLBR
358    269637U,	// AsmNLEBR
359    17111U,	// AsmNLEJ
360    17102U,	// AsmNLEJG
361    9441962U,	// AsmNLELOC
362    9441979U,	// AsmNLELOCG
363    1053478U,	// AsmNLELOCGR
364    1053469U,	// AsmNLELOCR
365    10490546U,	// AsmNLESTOC
366    10490564U,	// AsmNLESTOCG
367    269867U,	// AsmNLHBR
368    18054U,	// AsmNLHJ
369    18045U,	// AsmNLHJG
370    9442905U,	// AsmNLHLOC
371    9442922U,	// AsmNLHLOCG
372    1054421U,	// AsmNLHLOCGR
373    1054412U,	// AsmNLHLOCR
374    10491489U,	// AsmNLHSTOC
375    10491507U,	// AsmNLHSTOCG
376    18916U,	// AsmNLJ
377    18908U,	// AsmNLJG
378    9443772U,	// AsmNLLOC
379    9443787U,	// AsmNLLOCG
380    1055274U,	// AsmNLLOCGR
381    1055266U,	// AsmNLLOCR
382    10492355U,	// AsmNLSTOC
383    10492371U,	// AsmNLSTOCG
384    269921U,	// AsmNOBR
385    19228U,	// AsmNOJ
386    19222U,	// AsmNOJG
387    9444086U,	// AsmNOLOC
388    9444101U,	// AsmNOLOCG
389    1055529U,	// AsmNOLOCGR
390    1055521U,	// AsmNOLOCR
391    10492669U,	// AsmNOSTOC
392    10492685U,	// AsmNOSTOCG
393    269916U,	// AsmOBR
394    19186U,	// AsmOJ
395    19181U,	// AsmOJG
396    9444049U,	// AsmOLOC
397    9444062U,	// AsmOLOCG
398    1055545U,	// AsmOLOCGR
399    1055538U,	// AsmOLOCR
400    10492631U,	// AsmOSTOC
401    10492645U,	// AsmOSTOCG
402    715133127U,	// AsmSTOC
403    715134083U,	// AsmSTOCG
404    4202092U,	// BASR
405    269129U,	// BR
406    11542157U,	// BRAS
407    11541175U,	// BRASL
408    24476U,	// BRC
409    24471U,	// BRCL
410    12590747U,	// BRCT
411    12588273U,	// BRCTG
412    13635752U,	// C
413    13635653U,	// CDB
414    4201294U,	// CDBR
415    4201519U,	// CDFBR
416    4201564U,	// CDGBR
417    719330365U,	// CDLFBR
418    719330410U,	// CDLGBR
419    13635698U,	// CEB
420    4201413U,	// CEBR
421    4201526U,	// CEFBR
422    4201571U,	// CEGBR
423    719330373U,	// CELFBR
424    719330418U,	// CELGBR
425    14687073U,	// CFDBR
426    14687200U,	// CFEBR
427    15734664U,	// CFI
428    0U,	// CFIMux
429    14687402U,	// CFXBR
430    13636729U,	// CG
431    14687088U,	// CGDBR
432    14687215U,	// CGEBR
433    13636561U,	// CGF
434    15734675U,	// CGFI
435    4201823U,	// CGFR
436    16783943U,	// CGFRL
437    13636932U,	// CGH
438    17831901U,	// CGHI
439    16783994U,	// CGHRL
440    337971U,	// CGHSI
441    421790U,	// CGIJ
442    4201906U,	// CGR
443    19034034U,	// CGRJ
444    16783968U,	// CGRL
445    14687417U,	// CGXBR
446    13636896U,	// CH
447    13636608U,	// CHF
448    337986U,	// CHHSI
449    17831890U,	// CHI
450    16783988U,	// CHRL
451    337957U,	// CHSI
452    13639410U,	// CHY
453    15734156U,	// CIH
454    421786U,	// CIJ
455    13637907U,	// CL
456    28852U,	// CLC
457    0U,	// CLCLoop
458    0U,	// CLCSequence
459    719330152U,	// CLFDBR
460    719330279U,	// CLFEBR
461    469035U,	// CLFHSI
462    19929019U,	// CLFI
463    0U,	// CLFIMux
464    719330481U,	// CLFXBR
465    13636773U,	// CLG
466    719330167U,	// CLGDBR
467    719330294U,	// CLGEBR
468    13636572U,	// CLGF
469    19928992U,	// CLGFI
470    4201836U,	// CLGFR
471    16783950U,	// CLGFRL
472    16784001U,	// CLGHRL
473    469050U,	// CLGHSI
474    552867U,	// CLGIJ
475    4201930U,	// CLGR
476    19034039U,	// CLGRJ
477    16783974U,	// CLGRL
478    719330496U,	// CLGXBR
479    13636644U,	// CLHF
480    469065U,	// CLHHSI
481    16784017U,	// CLHRL
482    600077U,	// CLI
483    19928465U,	// CLIH
484    552873U,	// CLIJ
485    601868U,	// CLIY
486    0U,	// CLMux
487    4202050U,	// CLR
488    19034045U,	// CLRJ
489    16784038U,	// CLRL
490    4202149U,	// CLST
491    0U,	// CLSTLoop
492    13639468U,	// CLY
493    0U,	// CMux
494    171973920U,	// CPSDRdd
495    171973920U,	// CPSDRds
496    171973920U,	// CPSDRsd
497    171973920U,	// CPSDRss
498    4201720U,	// CR
499    19034030U,	// CRJ
500    16783931U,	// CRL
501    839917203U,	// CS
502    839914722U,	// CSG
503    839917379U,	// CSY
504    4201622U,	// CXBR
505    4201557U,	// CXFBR
506    4201602U,	// CXGBR
507    719330381U,	// CXLFBR
508    719330426U,	// CXLGBR
509    13639373U,	// CY
510    0U,	// CallBASR
511    0U,	// CallBR
512    0U,	// CallBRASL
513    0U,	// CallJG
514    0U,	// CondStore16
515    0U,	// CondStore16Inv
516    0U,	// CondStore16Mux
517    0U,	// CondStore16MuxInv
518    0U,	// CondStore32
519    0U,	// CondStore32Inv
520    0U,	// CondStore64
521    0U,	// CondStore64Inv
522    0U,	// CondStore8
523    0U,	// CondStore8Inv
524    0U,	// CondStore8Mux
525    0U,	// CondStore8MuxInv
526    0U,	// CondStoreF32
527    0U,	// CondStoreF32Inv
528    0U,	// CondStoreF64
529    0U,	// CondStoreF64Inv
530    4170U,	// DDB
531    1055572U,	// DDBR
532    4216U,	// DEB
533    1055692U,	// DEBR
534    6436U,	// DL
535    5290U,	// DLG
536    1056208U,	// DLGR
537    1056327U,	// DLR
538    5351U,	// DSG
539    5102U,	// DSGF
540    1056143U,	// DSGFR
541    1056245U,	// DSGR
542    1055901U,	// DXBR
543    20978497U,	// EAR
544    14687103U,	// FIDBR
545    719327250U,	// FIDBRA
546    14687230U,	// FIEBR
547    719327258U,	// FIEBRA
548    14687432U,	// FIXBR
549    719327282U,	// FIXBRA
550    4201960U,	// FLOGR
551    0U,	// GOT
552    4267U,	// IC
553    4267U,	// IC32
554    7884U,	// IC32Y
555    7884U,	// ICY
556    0U,	// IIFMux
557    19928069U,	// IIHF
558    0U,	// IIHF64
559    22025564U,	// IIHH
560    0U,	// IIHH64
561    22026556U,	// IIHL
562    0U,	// IIHL64
563    0U,	// IIHMux
564    19928106U,	// IILF
565    0U,	// IILF64
566    22025717U,	// IILH
567    0U,	// IILH64
568    22026643U,	// IILL
569    0U,	// IILL64
570    0U,	// IILMux
571    268990U,	// IPM
572    18524U,	// J
573    17554U,	// JG
574    13637902U,	// L
575    0U,	// L128
576    13635590U,	// LA
577    977276929U,	// LAA
578    977278025U,	// LAAG
579    977279243U,	// LAAL
580    977278102U,	// LAALG
581    977279687U,	// LAN
582    977278166U,	// LANG
583    977279692U,	// LAO
584    977278172U,	// LAOG
585    16783923U,	// LARL
586    977280706U,	// LAX
587    977278223U,	// LAXG
588    13639367U,	// LAY
589    13635745U,	// LB
590    13636889U,	// LBH
591    0U,	// LBMux
592    4201610U,	// LBR
593    4201293U,	// LCDBR
594    4201412U,	// LCEBR
595    4201822U,	// LCGFR
596    4201905U,	// LCGR
597    4201732U,	// LCR
598    4201621U,	// LCXBR
599    13635813U,	// LD
600    13635703U,	// LDEB
601    4201419U,	// LDEBR
602    4201918U,	// LDGR
603    4201755U,	// LDR
604    4201628U,	// LDXBR
605    719327266U,	// LDXBRA
606    13639383U,	// LDY
607    13636167U,	// LE
608    4201306U,	// LEDBR
609    719327242U,	// LEDBRA
610    4201792U,	// LER
611    4201635U,	// LEXBR
612    719327274U,	// LEXBRA
613    13639394U,	// LEY
614    13636919U,	// LFH
615    13636761U,	// LG
616    13635739U,	// LGB
617    4201580U,	// LGBR
618    4201749U,	// LGDR
619    13636567U,	// LGF
620    15734682U,	// LGFI
621    4201830U,	// LGFR
622    16783951U,	// LGFRL
623    13636951U,	// LGH
624    17831907U,	// LGHI
625    4202009U,	// LGHR
626    16784002U,	// LGHRL
627    4201925U,	// LGR
628    16783975U,	// LGRL
629    13637074U,	// LH
630    13636982U,	// LHH
631    17831933U,	// LHI
632    0U,	// LHIMux
633    0U,	// LHMux
634    4202016U,	// LHR
635    16784018U,	// LHRL
636    13639415U,	// LHY
637    13635769U,	// LLC
638    13636894U,	// LLCH
639    0U,	// LLCMux
640    4201737U,	// LLCR
641    0U,	// LLCRMux
642    13635749U,	// LLGC
643    4201724U,	// LLGCR
644    13636578U,	// LLGF
645    4201843U,	// LLGFR
646    16783958U,	// LLGFRL
647    13636950U,	// LLGH
648    4202008U,	// LLGHR
649    16784009U,	// LLGHRL
650    13637198U,	// LLH
651    13636981U,	// LLHH
652    0U,	// LLHMux
653    4202021U,	// LLHR
654    16784024U,	// LLHRL
655    0U,	// LLHRMux
656    19928075U,	// LLIHF
657    23074146U,	// LLIHH
658    23075138U,	// LLIHL
659    19928112U,	// LLILF
660    23074299U,	// LLILH
661    23075225U,	// LLILL
662    977278155U,	// LMG
663    0U,	// LMux
664    4201356U,	// LNDBR
665    4201477U,	// LNEBR
666    4201857U,	// LNGFR
667    4201954U,	// LNGR
668    4202071U,	// LNR
669    4201685U,	// LNXBR
670    36739U,	// LOC
671    36748U,	// LOCG
672    40903U,	// LOCGR
673    40898U,	// LOCR
674    4201363U,	// LPDBR
675    4201484U,	// LPEBR
676    4201864U,	// LPGFR
677    4201967U,	// LPGR
678    4202087U,	// LPR
679    4201692U,	// LPXBR
680    4202041U,	// LR
681    16784039U,	// LRL
682    0U,	// LRMux
683    13639351U,	// LRV
684    13636866U,	// LRVG
685    4201991U,	// LRVGR
686    4202108U,	// LRVR
687    13639329U,	// LT
688    4201384U,	// LTDBR
689    4201384U,	// LTDBRCompare
690    4201505U,	// LTEBR
691    4201505U,	// LTEBRCompare
692    13636856U,	// LTG
693    13636602U,	// LTGF
694    4201885U,	// LTGFR
695    4201985U,	// LTGR
696    4202103U,	// LTR
697    4201712U,	// LTXBR
698    4201712U,	// LTXBRCompare
699    0U,	// LX
700    13635680U,	// LXDB
701    4201391U,	// LXDBR
702    13635733U,	// LXEB
703    4201512U,	// LXEBR
704    4202114U,	// LXR
705    13639464U,	// LY
706    269607U,	// LZDR
707    269650U,	// LZER
708    269959U,	// LZXR
709    1108348991U,	// MADB
710    1242569542U,	// MADBR
711    1108349036U,	// MAEB
712    1242569661U,	// MAEBR
713    4175U,	// MDB
714    1055622U,	// MDBR
715    4221U,	// MDEB
716    1055698U,	// MDEBR
717    4227U,	// MEEB
718    1055705U,	// MEEBR
719    3151849U,	// MGHI
720    5872U,	// MH
721    3151874U,	// MHI
722    7932U,	// MHY
723    5307U,	// MLG
724    1056214U,	// MLGR
725    7831U,	// MS
726    1108349018U,	// MSDB
727    1242569633U,	// MSDBR
728    1108349071U,	// MSEB
729    1242569754U,	// MSEBR
730    2103239U,	// MSFI
731    5356U,	// MSG
732    5108U,	// MSGF
733    2103214U,	// MSGFI
734    1056150U,	// MSGFR
735    1056251U,	// MSGR
736    1056370U,	// MSR
737    8008U,	// MSY
738    28887U,	// MVC
739    0U,	// MVCLoop
740    0U,	// MVCSequence
741    337903U,	// MVGHI
742    337910U,	// MVHHI
743    337927U,	// MVHI
744    600145U,	// MVI
745    601884U,	// MVIY
746    4202161U,	// MVST
747    0U,	// MVSTLoop
748    1055951U,	// MXBR
749    4198U,	// MXDB
750    1055670U,	// MXDBR
751    6857U,	// N
752    28862U,	// NC
753    0U,	// NCLoop
754    0U,	// NCSequence
755    5336U,	// NG
756    1056227U,	// NGR
757    171972819U,	// NGRK
758    600082U,	// NI
759    0U,	// NIFMux
760    5248018U,	// NIHF
761    0U,	// NIHF64
762    22025577U,	// NIHH
763    0U,	// NIHH64
764    22026569U,	// NIHL
765    0U,	// NIHL64
766    0U,	// NIHMux
767    5248055U,	// NILF
768    0U,	// NILF64
769    22025730U,	// NILH
770    0U,	// NILH64
771    22026656U,	// NILL
772    0U,	// NILL64
773    0U,	// NILMux
774    601874U,	// NIY
775    1056344U,	// NR
776    171972855U,	// NRK
777    7995U,	// NY
778    6862U,	// O
779    28867U,	// OC
780    0U,	// OCLoop
781    0U,	// OCSequence
782    5342U,	// OG
783    1056234U,	// OGR
784    171972825U,	// OGRK
785    600086U,	// OI
786    0U,	// OIFMux
787    5248024U,	// OIHF
788    0U,	// OIHF64
789    22025583U,	// OIHH
790    0U,	// OIHH64
791    22026575U,	// OIHL
792    0U,	// OIHL64
793    0U,	// OIHMux
794    5248061U,	// OILF
795    0U,	// OILF64
796    22025736U,	// OILH
797    0U,	// OILH64
798    22026662U,	// OILL
799    0U,	// OILL64
800    0U,	// OILMux
801    601879U,	// OIY
802    1056349U,	// OR
803    171972860U,	// ORK
804    7999U,	// OY
805    667872U,	// PFD
806    211520U,	// PFDRL
807    1376785499U,	// RISBG
808    1376785499U,	// RISBG32
809    1376785546U,	// RISBHG
810    0U,	// RISBHH
811    0U,	// RISBHL
812    1376785565U,	// RISBLG
813    0U,	// RISBLH
814    0U,	// RISBLL
815    0U,	// RISBMux
816    977279410U,	// RLL
817    977278127U,	// RLLG
818    1376785506U,	// RNSBG
819    1376785513U,	// ROSBG
820    1376785520U,	// RXSBG
821    0U,	// Return
822    7824U,	// S
823    4187U,	// SDB
824    1055650U,	// SDBR
825    4240U,	// SEB
826    1055771U,	// SEBR
827    5347U,	// SG
828    5103U,	// SGF
829    1056144U,	// SGFR
830    1056246U,	// SGR
831    171972831U,	// SGRK
832    6010U,	// SH
833    7937U,	// SHY
834    6842U,	// SL
835    4256U,	// SLB
836    5205U,	// SLBG
837    1055881U,	// SLBR
838    5248961U,	// SLFI
839    5318U,	// SLG
840    1056169U,	// SLGBR
841    5096U,	// SLGF
842    5248935U,	// SLGFI
843    1056122U,	// SLGFR
844    1056220U,	// SLGR
845    171972812U,	// SLGRK
846    9443767U,	// SLL
847    977278133U,	// SLLG
848    977279150U,	// SLLK
849    1056338U,	// SLR
850    171972849U,	// SLRK
851    7985U,	// SLY
852    13635668U,	// SQDB
853    4201370U,	// SQDBR
854    13635721U,	// SQEB
855    4201491U,	// SQEBR
856    4201699U,	// SQXBR
857    1056366U,	// SR
858    9441338U,	// SRA
859    977278031U,	// SRAG
860    977279114U,	// SRAK
861    171972865U,	// SRK
862    9444012U,	// SRL
863    977278144U,	// SRLG
864    977279156U,	// SRLK
865    4202155U,	// SRST
866    0U,	// SRSTLoop
867    13639335U,	// ST
868    0U,	// ST128
869    13635794U,	// STC
870    13636913U,	// STCH
871    0U,	// STCMux
872    13639377U,	// STCY
873    13635817U,	// STD
874    13639388U,	// STDY
875    13636551U,	// STE
876    13639399U,	// STEY
877    13636924U,	// STFH
878    13636861U,	// STG
879    16783981U,	// STGRL
880    13637502U,	// STH
881    13636993U,	// STHH
882    0U,	// STHMux
883    16784031U,	// STHRL
884    13639430U,	// STHY
885    977278160U,	// STMG
886    0U,	// STMux
887    44935U,	// STOC
888    44945U,	// STOCG
889    16784049U,	// STRL
890    13639356U,	// STRV
891    13636872U,	// STRVG
892    0U,	// STX
893    13639501U,	// STY
894    1055978U,	// SXBR
895    8004U,	// SY
896    0U,	// Select32
897    0U,	// Select32Mux
898    0U,	// Select64
899    0U,	// SelectF128
900    0U,	// SelectF32
901    0U,	// SelectF64
902    0U,	// Serialize
903    0U,	// TLS_GDCALL
904    0U,	// TLS_LDCALL
905    600771U,	// TM
906    23074171U,	// TMHH
907    0U,	// TMHH64
908    23075157U,	// TMHL
909    0U,	// TMHL64
910    0U,	// TMHMux
911    23074387U,	// TMLH
912    0U,	// TMLH64
913    23075244U,	// TMLL
914    0U,	// TMLL64
915    0U,	// TMLMux
916    601910U,	// TMY
917    7876U,	// X
918    28892U,	// XC
919    0U,	// XCLoop
920    0U,	// XCSequence
921    5393U,	// XG
922    1056270U,	// XGR
923    171972837U,	// XGRK
924    600150U,	// XI
925    0U,	// XIFMux
926    5248030U,	// XIHF
927    0U,	// XIHF64
928    5248067U,	// XILF
929    0U,	// XILF64
930    601890U,	// XIY
931    1056387U,	// XR
932    171972870U,	// XRK
933    8018U,	// XY
934    0U,	// ZEXT128_32
935    0U,	// ZEXT128_64
936    0U
937  };
938
939#ifndef CAPSTONE_DIET
940  static const char AsmStrs[] = {
941  /* 0 */ 'l', 'a', 'a', 9, 0,
942  /* 5 */ 'l', 'a', 9, 0,
943  /* 9 */ 'l', 'e', 'd', 'b', 'r', 'a', 9, 0,
944  /* 17 */ 'f', 'i', 'd', 'b', 'r', 'a', 9, 0,
945  /* 25 */ 'f', 'i', 'e', 'b', 'r', 'a', 9, 0,
946  /* 33 */ 'l', 'd', 'x', 'b', 'r', 'a', 9, 0,
947  /* 41 */ 'l', 'e', 'x', 'b', 'r', 'a', 9, 0,
948  /* 49 */ 'f', 'i', 'x', 'b', 'r', 'a', 9, 0,
949  /* 57 */ 's', 'r', 'a', 9, 0,
950  /* 62 */ 'm', 'a', 'd', 'b', 9, 0,
951  /* 68 */ 'c', 'd', 'b', 9, 0,
952  /* 73 */ 'd', 'd', 'b', 9, 0,
953  /* 78 */ 'm', 'd', 'b', 9, 0,
954  /* 83 */ 's', 'q', 'd', 'b', 9, 0,
955  /* 89 */ 'm', 's', 'd', 'b', 9, 0,
956  /* 95 */ 'l', 'x', 'd', 'b', 9, 0,
957  /* 101 */ 'm', 'x', 'd', 'b', 9, 0,
958  /* 107 */ 'm', 'a', 'e', 'b', 9, 0,
959  /* 113 */ 'c', 'e', 'b', 9, 0,
960  /* 118 */ 'l', 'd', 'e', 'b', 9, 0,
961  /* 124 */ 'm', 'd', 'e', 'b', 9, 0,
962  /* 130 */ 'm', 'e', 'e', 'b', 9, 0,
963  /* 136 */ 's', 'q', 'e', 'b', 9, 0,
964  /* 142 */ 'm', 's', 'e', 'b', 9, 0,
965  /* 148 */ 'l', 'x', 'e', 'b', 9, 0,
966  /* 154 */ 'l', 'g', 'b', 9, 0,
967  /* 159 */ 's', 'l', 'b', 9, 0,
968  /* 164 */ 'l', 'l', 'g', 'c', 9, 0,
969  /* 170 */ 'i', 'c', 9, 0,
970  /* 174 */ 'a', 'l', 'c', 9, 0,
971  /* 179 */ 'c', 'l', 'c', 9, 0,
972  /* 184 */ 'l', 'l', 'c', 9, 0,
973  /* 189 */ 'n', 'c', 9, 0,
974  /* 193 */ 'l', 'o', 'c', 9, 0,
975  /* 198 */ 's', 't', 'o', 'c', 9, 0,
976  /* 204 */ 'b', 'r', 'c', 9, 0,
977  /* 209 */ 's', 't', 'c', 9, 0,
978  /* 214 */ 'm', 'v', 'c', 9, 0,
979  /* 219 */ 'x', 'c', 9, 0,
980  /* 223 */ 'p', 'f', 'd', 9, 0,
981  /* 228 */ 'l', 'd', 9, 0,
982  /* 232 */ 's', 't', 'd', 9, 0,
983  /* 237 */ 'l', 'o', 'c', 'e', 9, 0,
984  /* 243 */ 's', 't', 'o', 'c', 'e', 9, 0,
985  /* 250 */ 'l', 'o', 'c', 'g', 'e', 9, 0,
986  /* 257 */ 's', 't', 'o', 'c', 'g', 'e', 9, 0,
987  /* 265 */ 'j', 'g', 'e', 9, 0,
988  /* 270 */ 'l', 'o', 'c', 'h', 'e', 9, 0,
989  /* 277 */ 's', 't', 'o', 'c', 'h', 'e', 9, 0,
990  /* 285 */ 'l', 'o', 'c', 'g', 'h', 'e', 9, 0,
991  /* 293 */ 's', 't', 'o', 'c', 'g', 'h', 'e', 9, 0,
992  /* 302 */ 'j', 'g', 'h', 'e', 9, 0,
993  /* 308 */ 'c', 'i', 'j', 'h', 'e', 9, 0,
994  /* 315 */ 'c', 'g', 'i', 'j', 'h', 'e', 9, 0,
995  /* 323 */ 'c', 'l', 'g', 'i', 'j', 'h', 'e', 9, 0,
996  /* 332 */ 'c', 'l', 'i', 'j', 'h', 'e', 9, 0,
997  /* 340 */ 'c', 'r', 'j', 'h', 'e', 9, 0,
998  /* 347 */ 'c', 'g', 'r', 'j', 'h', 'e', 9, 0,
999  /* 355 */ 'c', 'l', 'g', 'r', 'j', 'h', 'e', 9, 0,
1000  /* 364 */ 'c', 'l', 'r', 'j', 'h', 'e', 9, 0,
1001  /* 372 */ 'l', 'o', 'c', 'n', 'h', 'e', 9, 0,
1002  /* 380 */ 's', 't', 'o', 'c', 'n', 'h', 'e', 9, 0,
1003  /* 389 */ 'l', 'o', 'c', 'g', 'n', 'h', 'e', 9, 0,
1004  /* 398 */ 's', 't', 'o', 'c', 'g', 'n', 'h', 'e', 9, 0,
1005  /* 408 */ 'j', 'g', 'n', 'h', 'e', 9, 0,
1006  /* 415 */ 'c', 'i', 'j', 'n', 'h', 'e', 9, 0,
1007  /* 423 */ 'c', 'g', 'i', 'j', 'n', 'h', 'e', 9, 0,
1008  /* 432 */ 'c', 'l', 'g', 'i', 'j', 'n', 'h', 'e', 9, 0,
1009  /* 442 */ 'c', 'l', 'i', 'j', 'n', 'h', 'e', 9, 0,
1010  /* 451 */ 'c', 'r', 'j', 'n', 'h', 'e', 9, 0,
1011  /* 459 */ 'c', 'g', 'r', 'j', 'n', 'h', 'e', 9, 0,
1012  /* 468 */ 'c', 'l', 'g', 'r', 'j', 'n', 'h', 'e', 9, 0,
1013  /* 478 */ 'c', 'l', 'r', 'j', 'n', 'h', 'e', 9, 0,
1014  /* 487 */ 'l', 'o', 'c', 'r', 'n', 'h', 'e', 9, 0,
1015  /* 496 */ 'l', 'o', 'c', 'g', 'r', 'n', 'h', 'e', 9, 0,
1016  /* 506 */ 'l', 'o', 'c', 'r', 'h', 'e', 9, 0,
1017  /* 514 */ 'l', 'o', 'c', 'g', 'r', 'h', 'e', 9, 0,
1018  /* 523 */ 'c', 'i', 'j', 'e', 9, 0,
1019  /* 529 */ 'c', 'g', 'i', 'j', 'e', 9, 0,
1020  /* 536 */ 'c', 'l', 'g', 'i', 'j', 'e', 9, 0,
1021  /* 544 */ 'c', 'l', 'i', 'j', 'e', 9, 0,
1022  /* 551 */ 'c', 'r', 'j', 'e', 9, 0,
1023  /* 557 */ 'c', 'g', 'r', 'j', 'e', 9, 0,
1024  /* 564 */ 'c', 'l', 'g', 'r', 'j', 'e', 9, 0,
1025  /* 572 */ 'c', 'l', 'r', 'j', 'e', 9, 0,
1026  /* 579 */ 'l', 'o', 'c', 'l', 'e', 9, 0,
1027  /* 586 */ 's', 't', 'o', 'c', 'l', 'e', 9, 0,
1028  /* 594 */ 'l', 'o', 'c', 'g', 'l', 'e', 9, 0,
1029  /* 602 */ 's', 't', 'o', 'c', 'g', 'l', 'e', 9, 0,
1030  /* 611 */ 'j', 'g', 'l', 'e', 9, 0,
1031  /* 617 */ 'c', 'i', 'j', 'l', 'e', 9, 0,
1032  /* 624 */ 'c', 'g', 'i', 'j', 'l', 'e', 9, 0,
1033  /* 632 */ 'c', 'l', 'g', 'i', 'j', 'l', 'e', 9, 0,
1034  /* 641 */ 'c', 'l', 'i', 'j', 'l', 'e', 9, 0,
1035  /* 649 */ 'c', 'r', 'j', 'l', 'e', 9, 0,
1036  /* 656 */ 'c', 'g', 'r', 'j', 'l', 'e', 9, 0,
1037  /* 664 */ 'c', 'l', 'g', 'r', 'j', 'l', 'e', 9, 0,
1038  /* 673 */ 'c', 'l', 'r', 'j', 'l', 'e', 9, 0,
1039  /* 681 */ 'l', 'o', 'c', 'n', 'l', 'e', 9, 0,
1040  /* 689 */ 's', 't', 'o', 'c', 'n', 'l', 'e', 9, 0,
1041  /* 698 */ 'l', 'o', 'c', 'g', 'n', 'l', 'e', 9, 0,
1042  /* 707 */ 's', 't', 'o', 'c', 'g', 'n', 'l', 'e', 9, 0,
1043  /* 717 */ 'j', 'g', 'n', 'l', 'e', 9, 0,
1044  /* 724 */ 'c', 'i', 'j', 'n', 'l', 'e', 9, 0,
1045  /* 732 */ 'c', 'g', 'i', 'j', 'n', 'l', 'e', 9, 0,
1046  /* 741 */ 'c', 'l', 'g', 'i', 'j', 'n', 'l', 'e', 9, 0,
1047  /* 751 */ 'c', 'l', 'i', 'j', 'n', 'l', 'e', 9, 0,
1048  /* 760 */ 'c', 'r', 'j', 'n', 'l', 'e', 9, 0,
1049  /* 768 */ 'c', 'g', 'r', 'j', 'n', 'l', 'e', 9, 0,
1050  /* 777 */ 'c', 'l', 'g', 'r', 'j', 'n', 'l', 'e', 9, 0,
1051  /* 787 */ 'c', 'l', 'r', 'j', 'n', 'l', 'e', 9, 0,
1052  /* 796 */ 'l', 'o', 'c', 'r', 'n', 'l', 'e', 9, 0,
1053  /* 805 */ 'l', 'o', 'c', 'g', 'r', 'n', 'l', 'e', 9, 0,
1054  /* 815 */ 'l', 'o', 'c', 'r', 'l', 'e', 9, 0,
1055  /* 823 */ 'l', 'o', 'c', 'g', 'r', 'l', 'e', 9, 0,
1056  /* 832 */ 'l', 'o', 'c', 'n', 'e', 9, 0,
1057  /* 839 */ 's', 't', 'o', 'c', 'n', 'e', 9, 0,
1058  /* 847 */ 'l', 'o', 'c', 'g', 'n', 'e', 9, 0,
1059  /* 855 */ 's', 't', 'o', 'c', 'g', 'n', 'e', 9, 0,
1060  /* 864 */ 'j', 'g', 'n', 'e', 9, 0,
1061  /* 870 */ 'c', 'i', 'j', 'n', 'e', 9, 0,
1062  /* 877 */ 'c', 'g', 'i', 'j', 'n', 'e', 9, 0,
1063  /* 885 */ 'c', 'l', 'g', 'i', 'j', 'n', 'e', 9, 0,
1064  /* 894 */ 'c', 'l', 'i', 'j', 'n', 'e', 9, 0,
1065  /* 902 */ 'c', 'r', 'j', 'n', 'e', 9, 0,
1066  /* 909 */ 'c', 'g', 'r', 'j', 'n', 'e', 9, 0,
1067  /* 917 */ 'c', 'l', 'g', 'r', 'j', 'n', 'e', 9, 0,
1068  /* 926 */ 'c', 'l', 'r', 'j', 'n', 'e', 9, 0,
1069  /* 934 */ 'l', 'o', 'c', 'r', 'n', 'e', 9, 0,
1070  /* 942 */ 'l', 'o', 'c', 'g', 'r', 'n', 'e', 9, 0,
1071  /* 951 */ 'l', 'o', 'c', 'r', 'e', 9, 0,
1072  /* 958 */ 'l', 'o', 'c', 'g', 'r', 'e', 9, 0,
1073  /* 966 */ 's', 't', 'e', 9, 0,
1074  /* 971 */ 'a', 'g', 'f', 9, 0,
1075  /* 976 */ 'c', 'g', 'f', 9, 0,
1076  /* 981 */ 'a', 'l', 'g', 'f', 9, 0,
1077  /* 987 */ 'c', 'l', 'g', 'f', 9, 0,
1078  /* 993 */ 'l', 'l', 'g', 'f', 9, 0,
1079  /* 999 */ 's', 'l', 'g', 'f', 9, 0,
1080  /* 1005 */ 'd', 's', 'g', 'f', 9, 0,
1081  /* 1011 */ 'm', 's', 'g', 'f', 9, 0,
1082  /* 1017 */ 'l', 't', 'g', 'f', 9, 0,
1083  /* 1023 */ 'c', 'h', 'f', 9, 0,
1084  /* 1028 */ 'i', 'i', 'h', 'f', 9, 0,
1085  /* 1034 */ 'l', 'l', 'i', 'h', 'f', 9, 0,
1086  /* 1041 */ 'n', 'i', 'h', 'f', 9, 0,
1087  /* 1047 */ 'o', 'i', 'h', 'f', 9, 0,
1088  /* 1053 */ 'x', 'i', 'h', 'f', 9, 0,
1089  /* 1059 */ 'c', 'l', 'h', 'f', 9, 0,
1090  /* 1065 */ 'i', 'i', 'l', 'f', 9, 0,
1091  /* 1071 */ 'l', 'l', 'i', 'l', 'f', 9, 0,
1092  /* 1078 */ 'n', 'i', 'l', 'f', 9, 0,
1093  /* 1084 */ 'o', 'i', 'l', 'f', 9, 0,
1094  /* 1090 */ 'x', 'i', 'l', 'f', 9, 0,
1095  /* 1096 */ 'l', 'a', 'a', 'g', 9, 0,
1096  /* 1102 */ 's', 'r', 'a', 'g', 9, 0,
1097  /* 1108 */ 's', 'l', 'b', 'g', 9, 0,
1098  /* 1114 */ 'r', 'i', 's', 'b', 'g', 9, 0,
1099  /* 1121 */ 'r', 'n', 's', 'b', 'g', 9, 0,
1100  /* 1128 */ 'r', 'o', 's', 'b', 'g', 9, 0,
1101  /* 1135 */ 'r', 'x', 's', 'b', 'g', 9, 0,
1102  /* 1142 */ 'a', 'l', 'c', 'g', 9, 0,
1103  /* 1148 */ 'l', 'o', 'c', 'g', 9, 0,
1104  /* 1154 */ 's', 't', 'o', 'c', 'g', 9, 0,
1105  /* 1161 */ 'r', 'i', 's', 'b', 'h', 'g', 9, 0,
1106  /* 1169 */ 'j', 'g', 9, 0,
1107  /* 1173 */ 'l', 'a', 'a', 'l', 'g', 9, 0,
1108  /* 1180 */ 'r', 'i', 's', 'b', 'l', 'g', 9, 0,
1109  /* 1188 */ 'c', 'l', 'g', 9, 0,
1110  /* 1193 */ 'd', 'l', 'g', 9, 0,
1111  /* 1198 */ 'r', 'l', 'l', 'g', 9, 0,
1112  /* 1204 */ 's', 'l', 'l', 'g', 9, 0,
1113  /* 1210 */ 'm', 'l', 'g', 9, 0,
1114  /* 1215 */ 's', 'r', 'l', 'g', 9, 0,
1115  /* 1221 */ 's', 'l', 'g', 9, 0,
1116  /* 1226 */ 'l', 'm', 'g', 9, 0,
1117  /* 1231 */ 's', 't', 'm', 'g', 9, 0,
1118  /* 1237 */ 'l', 'a', 'n', 'g', 9, 0,
1119  /* 1243 */ 'l', 'a', 'o', 'g', 9, 0,
1120  /* 1249 */ 'c', 's', 'g', 9, 0,
1121  /* 1254 */ 'd', 's', 'g', 9, 0,
1122  /* 1259 */ 'm', 's', 'g', 9, 0,
1123  /* 1264 */ 'b', 'r', 'c', 't', 'g', 9, 0,
1124  /* 1271 */ 'l', 't', 'g', 9, 0,
1125  /* 1276 */ 's', 't', 'g', 9, 0,
1126  /* 1281 */ 'l', 'r', 'v', 'g', 9, 0,
1127  /* 1287 */ 's', 't', 'r', 'v', 'g', 9, 0,
1128  /* 1294 */ 'l', 'a', 'x', 'g', 9, 0,
1129  /* 1300 */ 'a', 'h', 9, 0,
1130  /* 1304 */ 'l', 'b', 'h', 9, 0,
1131  /* 1309 */ 'l', 'l', 'c', 'h', 9, 0,
1132  /* 1315 */ 'l', 'o', 'c', 'h', 9, 0,
1133  /* 1321 */ 's', 't', 'o', 'c', 'h', 9, 0,
1134  /* 1328 */ 's', 't', 'c', 'h', 9, 0,
1135  /* 1334 */ 'l', 'f', 'h', 9, 0,
1136  /* 1339 */ 's', 't', 'f', 'h', 9, 0,
1137  /* 1345 */ 'l', 'o', 'c', 'g', 'h', 9, 0,
1138  /* 1352 */ 's', 't', 'o', 'c', 'g', 'h', 9, 0,
1139  /* 1360 */ 'j', 'g', 'h', 9, 0,
1140  /* 1365 */ 'l', 'l', 'g', 'h', 9, 0,
1141  /* 1371 */ 'i', 'i', 'h', 'h', 9, 0,
1142  /* 1377 */ 'l', 'l', 'i', 'h', 'h', 9, 0,
1143  /* 1384 */ 'n', 'i', 'h', 'h', 9, 0,
1144  /* 1390 */ 'o', 'i', 'h', 'h', 9, 0,
1145  /* 1396 */ 'l', 'l', 'h', 'h', 9, 0,
1146  /* 1402 */ 't', 'm', 'h', 'h', 9, 0,
1147  /* 1408 */ 's', 't', 'h', 'h', 9, 0,
1148  /* 1414 */ 'a', 'i', 'h', 9, 0,
1149  /* 1419 */ 'c', 'i', 'h', 9, 0,
1150  /* 1424 */ 'c', 'l', 'i', 'h', 9, 0,
1151  /* 1430 */ 'c', 'i', 'j', 'h', 9, 0,
1152  /* 1436 */ 'c', 'g', 'i', 'j', 'h', 9, 0,
1153  /* 1443 */ 'c', 'l', 'g', 'i', 'j', 'h', 9, 0,
1154  /* 1451 */ 'c', 'l', 'i', 'j', 'h', 9, 0,
1155  /* 1458 */ 'c', 'r', 'j', 'h', 9, 0,
1156  /* 1464 */ 'c', 'g', 'r', 'j', 'h', 9, 0,
1157  /* 1471 */ 'c', 'l', 'g', 'r', 'j', 'h', 9, 0,
1158  /* 1479 */ 'c', 'l', 'r', 'j', 'h', 9, 0,
1159  /* 1486 */ 'l', 'o', 'c', 'l', 'h', 9, 0,
1160  /* 1493 */ 's', 't', 'o', 'c', 'l', 'h', 9, 0,
1161  /* 1501 */ 'l', 'o', 'c', 'g', 'l', 'h', 9, 0,
1162  /* 1509 */ 's', 't', 'o', 'c', 'g', 'l', 'h', 9, 0,
1163  /* 1518 */ 'j', 'g', 'l', 'h', 9, 0,
1164  /* 1524 */ 'i', 'i', 'l', 'h', 9, 0,
1165  /* 1530 */ 'l', 'l', 'i', 'l', 'h', 9, 0,
1166  /* 1537 */ 'n', 'i', 'l', 'h', 9, 0,
1167  /* 1543 */ 'o', 'i', 'l', 'h', 9, 0,
1168  /* 1549 */ 'c', 'i', 'j', 'l', 'h', 9, 0,
1169  /* 1556 */ 'c', 'g', 'i', 'j', 'l', 'h', 9, 0,
1170  /* 1564 */ 'c', 'l', 'g', 'i', 'j', 'l', 'h', 9, 0,
1171  /* 1573 */ 'c', 'l', 'i', 'j', 'l', 'h', 9, 0,
1172  /* 1581 */ 'c', 'r', 'j', 'l', 'h', 9, 0,
1173  /* 1588 */ 'c', 'g', 'r', 'j', 'l', 'h', 9, 0,
1174  /* 1596 */ 'c', 'l', 'g', 'r', 'j', 'l', 'h', 9, 0,
1175  /* 1605 */ 'c', 'l', 'r', 'j', 'l', 'h', 9, 0,
1176  /* 1613 */ 'l', 'l', 'h', 9, 0,
1177  /* 1618 */ 't', 'm', 'l', 'h', 9, 0,
1178  /* 1624 */ 'l', 'o', 'c', 'n', 'l', 'h', 9, 0,
1179  /* 1632 */ 's', 't', 'o', 'c', 'n', 'l', 'h', 9, 0,
1180  /* 1641 */ 'l', 'o', 'c', 'g', 'n', 'l', 'h', 9, 0,
1181  /* 1650 */ 's', 't', 'o', 'c', 'g', 'n', 'l', 'h', 9, 0,
1182  /* 1660 */ 'j', 'g', 'n', 'l', 'h', 9, 0,
1183  /* 1667 */ 'c', 'i', 'j', 'n', 'l', 'h', 9, 0,
1184  /* 1675 */ 'c', 'g', 'i', 'j', 'n', 'l', 'h', 9, 0,
1185  /* 1684 */ 'c', 'l', 'g', 'i', 'j', 'n', 'l', 'h', 9, 0,
1186  /* 1694 */ 'c', 'l', 'i', 'j', 'n', 'l', 'h', 9, 0,
1187  /* 1703 */ 'c', 'r', 'j', 'n', 'l', 'h', 9, 0,
1188  /* 1711 */ 'c', 'g', 'r', 'j', 'n', 'l', 'h', 9, 0,
1189  /* 1720 */ 'c', 'l', 'g', 'r', 'j', 'n', 'l', 'h', 9, 0,
1190  /* 1730 */ 'c', 'l', 'r', 'j', 'n', 'l', 'h', 9, 0,
1191  /* 1739 */ 'l', 'o', 'c', 'r', 'n', 'l', 'h', 9, 0,
1192  /* 1748 */ 'l', 'o', 'c', 'g', 'r', 'n', 'l', 'h', 9, 0,
1193  /* 1758 */ 'l', 'o', 'c', 'r', 'l', 'h', 9, 0,
1194  /* 1766 */ 'l', 'o', 'c', 'g', 'r', 'l', 'h', 9, 0,
1195  /* 1775 */ 'm', 'h', 9, 0,
1196  /* 1779 */ 'l', 'o', 'c', 'n', 'h', 9, 0,
1197  /* 1786 */ 's', 't', 'o', 'c', 'n', 'h', 9, 0,
1198  /* 1794 */ 'l', 'o', 'c', 'g', 'n', 'h', 9, 0,
1199  /* 1802 */ 's', 't', 'o', 'c', 'g', 'n', 'h', 9, 0,
1200  /* 1811 */ 'j', 'g', 'n', 'h', 9, 0,
1201  /* 1817 */ 'c', 'i', 'j', 'n', 'h', 9, 0,
1202  /* 1824 */ 'c', 'g', 'i', 'j', 'n', 'h', 9, 0,
1203  /* 1832 */ 'c', 'l', 'g', 'i', 'j', 'n', 'h', 9, 0,
1204  /* 1841 */ 'c', 'l', 'i', 'j', 'n', 'h', 9, 0,
1205  /* 1849 */ 'c', 'r', 'j', 'n', 'h', 9, 0,
1206  /* 1856 */ 'c', 'g', 'r', 'j', 'n', 'h', 9, 0,
1207  /* 1864 */ 'c', 'l', 'g', 'r', 'j', 'n', 'h', 9, 0,
1208  /* 1873 */ 'c', 'l', 'r', 'j', 'n', 'h', 9, 0,
1209  /* 1881 */ 'l', 'o', 'c', 'r', 'n', 'h', 9, 0,
1210  /* 1889 */ 'l', 'o', 'c', 'g', 'r', 'n', 'h', 9, 0,
1211  /* 1898 */ 'l', 'o', 'c', 'r', 'h', 9, 0,
1212  /* 1905 */ 'l', 'o', 'c', 'g', 'r', 'h', 9, 0,
1213  /* 1913 */ 's', 'h', 9, 0,
1214  /* 1917 */ 's', 't', 'h', 9, 0,
1215  /* 1922 */ 'a', 'f', 'i', 9, 0,
1216  /* 1927 */ 'c', 'f', 'i', 9, 0,
1217  /* 1932 */ 'a', 'g', 'f', 'i', 9, 0,
1218  /* 1938 */ 'c', 'g', 'f', 'i', 9, 0,
1219  /* 1944 */ 'a', 'l', 'g', 'f', 'i', 9, 0,
1220  /* 1951 */ 'c', 'l', 'g', 'f', 'i', 9, 0,
1221  /* 1958 */ 's', 'l', 'g', 'f', 'i', 9, 0,
1222  /* 1965 */ 'm', 's', 'g', 'f', 'i', 9, 0,
1223  /* 1972 */ 'a', 'l', 'f', 'i', 9, 0,
1224  /* 1978 */ 'c', 'l', 'f', 'i', 9, 0,
1225  /* 1984 */ 's', 'l', 'f', 'i', 9, 0,
1226  /* 1990 */ 'm', 's', 'f', 'i', 9, 0,
1227  /* 1996 */ 'a', 'h', 'i', 9, 0,
1228  /* 2001 */ 'c', 'h', 'i', 9, 0,
1229  /* 2006 */ 'a', 'g', 'h', 'i', 9, 0,
1230  /* 2012 */ 'c', 'g', 'h', 'i', 9, 0,
1231  /* 2018 */ 'l', 'g', 'h', 'i', 9, 0,
1232  /* 2024 */ 'm', 'g', 'h', 'i', 9, 0,
1233  /* 2030 */ 'm', 'v', 'g', 'h', 'i', 9, 0,
1234  /* 2037 */ 'm', 'v', 'h', 'h', 'i', 9, 0,
1235  /* 2044 */ 'l', 'h', 'i', 9, 0,
1236  /* 2049 */ 'm', 'h', 'i', 9, 0,
1237  /* 2054 */ 'm', 'v', 'h', 'i', 9, 0,
1238  /* 2060 */ 'c', 'l', 'i', 9, 0,
1239  /* 2065 */ 'n', 'i', 9, 0,
1240  /* 2069 */ 'o', 'i', 9, 0,
1241  /* 2073 */ 'a', 's', 'i', 9, 0,
1242  /* 2078 */ 'a', 'g', 's', 'i', 9, 0,
1243  /* 2084 */ 'c', 'h', 's', 'i', 9, 0,
1244  /* 2090 */ 'c', 'l', 'f', 'h', 's', 'i', 9, 0,
1245  /* 2098 */ 'c', 'g', 'h', 's', 'i', 9, 0,
1246  /* 2105 */ 'c', 'l', 'g', 'h', 's', 'i', 9, 0,
1247  /* 2113 */ 'c', 'h', 'h', 's', 'i', 9, 0,
1248  /* 2120 */ 'c', 'l', 'h', 'h', 's', 'i', 9, 0,
1249  /* 2128 */ 'm', 'v', 'i', 9, 0,
1250  /* 2133 */ 'x', 'i', 9, 0,
1251  /* 2137 */ 'c', 'i', 'j', 9, 0,
1252  /* 2142 */ 'c', 'g', 'i', 'j', 9, 0,
1253  /* 2148 */ 'c', 'l', 'g', 'i', 'j', 9, 0,
1254  /* 2155 */ 'c', 'l', 'i', 'j', 9, 0,
1255  /* 2161 */ 'c', 'r', 'j', 9, 0,
1256  /* 2166 */ 'c', 'g', 'r', 'j', 9, 0,
1257  /* 2172 */ 'c', 'l', 'g', 'r', 'j', 9, 0,
1258  /* 2179 */ 'c', 'l', 'r', 'j', 9, 0,
1259  /* 2185 */ 's', 'r', 'a', 'k', 9, 0,
1260  /* 2191 */ 'a', 'h', 'i', 'k', 9, 0,
1261  /* 2197 */ 'a', 'g', 'h', 'i', 'k', 9, 0,
1262  /* 2204 */ 'a', 'l', 'g', 'h', 's', 'i', 'k', 9, 0,
1263  /* 2213 */ 'a', 'l', 'h', 's', 'i', 'k', 9, 0,
1264  /* 2221 */ 's', 'l', 'l', 'k', 9, 0,
1265  /* 2227 */ 's', 'r', 'l', 'k', 9, 0,
1266  /* 2233 */ 'a', 'r', 'k', 9, 0,
1267  /* 2238 */ 'a', 'g', 'r', 'k', 9, 0,
1268  /* 2244 */ 'a', 'l', 'g', 'r', 'k', 9, 0,
1269  /* 2251 */ 's', 'l', 'g', 'r', 'k', 9, 0,
1270  /* 2258 */ 'n', 'g', 'r', 'k', 9, 0,
1271  /* 2264 */ 'o', 'g', 'r', 'k', 9, 0,
1272  /* 2270 */ 's', 'g', 'r', 'k', 9, 0,
1273  /* 2276 */ 'x', 'g', 'r', 'k', 9, 0,
1274  /* 2282 */ 'a', 'l', 'r', 'k', 9, 0,
1275  /* 2288 */ 's', 'l', 'r', 'k', 9, 0,
1276  /* 2294 */ 'n', 'r', 'k', 9, 0,
1277  /* 2299 */ 'o', 'r', 'k', 9, 0,
1278  /* 2304 */ 's', 'r', 'k', 9, 0,
1279  /* 2309 */ 'x', 'r', 'k', 9, 0,
1280  /* 2314 */ 'l', 'a', 'a', 'l', 9, 0,
1281  /* 2320 */ 'l', 'o', 'c', 'l', 9, 0,
1282  /* 2326 */ 's', 't', 'o', 'c', 'l', 9, 0,
1283  /* 2333 */ 'b', 'r', 'c', 'l', 9, 0,
1284  /* 2339 */ 'd', 'l', 9, 0,
1285  /* 2343 */ 'l', 'o', 'c', 'g', 'l', 9, 0,
1286  /* 2350 */ 's', 't', 'o', 'c', 'g', 'l', 9, 0,
1287  /* 2358 */ 'j', 'g', 'l', 9, 0,
1288  /* 2363 */ 'i', 'i', 'h', 'l', 9, 0,
1289  /* 2369 */ 'l', 'l', 'i', 'h', 'l', 9, 0,
1290  /* 2376 */ 'n', 'i', 'h', 'l', 9, 0,
1291  /* 2382 */ 'o', 'i', 'h', 'l', 9, 0,
1292  /* 2388 */ 't', 'm', 'h', 'l', 9, 0,
1293  /* 2394 */ 'c', 'i', 'j', 'l', 9, 0,
1294  /* 2400 */ 'c', 'g', 'i', 'j', 'l', 9, 0,
1295  /* 2407 */ 'c', 'l', 'g', 'i', 'j', 'l', 9, 0,
1296  /* 2415 */ 'c', 'l', 'i', 'j', 'l', 9, 0,
1297  /* 2422 */ 'c', 'r', 'j', 'l', 9, 0,
1298  /* 2428 */ 'c', 'g', 'r', 'j', 'l', 9, 0,
1299  /* 2435 */ 'c', 'l', 'g', 'r', 'j', 'l', 9, 0,
1300  /* 2443 */ 'c', 'l', 'r', 'j', 'l', 9, 0,
1301  /* 2450 */ 'i', 'i', 'l', 'l', 9, 0,
1302  /* 2456 */ 'l', 'l', 'i', 'l', 'l', 9, 0,
1303  /* 2463 */ 'n', 'i', 'l', 'l', 9, 0,
1304  /* 2469 */ 'o', 'i', 'l', 'l', 9, 0,
1305  /* 2475 */ 't', 'm', 'l', 'l', 9, 0,
1306  /* 2481 */ 'r', 'l', 'l', 9, 0,
1307  /* 2486 */ 's', 'l', 'l', 9, 0,
1308  /* 2491 */ 'l', 'o', 'c', 'n', 'l', 9, 0,
1309  /* 2498 */ 's', 't', 'o', 'c', 'n', 'l', 9, 0,
1310  /* 2506 */ 'l', 'o', 'c', 'g', 'n', 'l', 9, 0,
1311  /* 2514 */ 's', 't', 'o', 'c', 'g', 'n', 'l', 9, 0,
1312  /* 2523 */ 'j', 'g', 'n', 'l', 9, 0,
1313  /* 2529 */ 'c', 'i', 'j', 'n', 'l', 9, 0,
1314  /* 2536 */ 'c', 'g', 'i', 'j', 'n', 'l', 9, 0,
1315  /* 2544 */ 'c', 'l', 'g', 'i', 'j', 'n', 'l', 9, 0,
1316  /* 2553 */ 'c', 'l', 'i', 'j', 'n', 'l', 9, 0,
1317  /* 2561 */ 'c', 'r', 'j', 'n', 'l', 9, 0,
1318  /* 2568 */ 'c', 'g', 'r', 'j', 'n', 'l', 9, 0,
1319  /* 2576 */ 'c', 'l', 'g', 'r', 'j', 'n', 'l', 9, 0,
1320  /* 2585 */ 'c', 'l', 'r', 'j', 'n', 'l', 9, 0,
1321  /* 2593 */ 'l', 'o', 'c', 'r', 'n', 'l', 9, 0,
1322  /* 2601 */ 'l', 'o', 'c', 'g', 'r', 'n', 'l', 9, 0,
1323  /* 2610 */ 'l', 'a', 'r', 'l', 9, 0,
1324  /* 2616 */ 'l', 'o', 'c', 'r', 'l', 9, 0,
1325  /* 2623 */ 'p', 'f', 'd', 'r', 'l', 9, 0,
1326  /* 2630 */ 'c', 'g', 'f', 'r', 'l', 9, 0,
1327  /* 2637 */ 'c', 'l', 'g', 'f', 'r', 'l', 9, 0,
1328  /* 2645 */ 'l', 'l', 'g', 'f', 'r', 'l', 9, 0,
1329  /* 2653 */ 'l', 'o', 'c', 'g', 'r', 'l', 9, 0,
1330  /* 2661 */ 'c', 'l', 'g', 'r', 'l', 9, 0,
1331  /* 2668 */ 's', 't', 'g', 'r', 'l', 9, 0,
1332  /* 2675 */ 'c', 'h', 'r', 'l', 9, 0,
1333  /* 2681 */ 'c', 'g', 'h', 'r', 'l', 9, 0,
1334  /* 2688 */ 'c', 'l', 'g', 'h', 'r', 'l', 9, 0,
1335  /* 2696 */ 'l', 'l', 'g', 'h', 'r', 'l', 9, 0,
1336  /* 2704 */ 'c', 'l', 'h', 'r', 'l', 9, 0,
1337  /* 2711 */ 'l', 'l', 'h', 'r', 'l', 9, 0,
1338  /* 2718 */ 's', 't', 'h', 'r', 'l', 9, 0,
1339  /* 2725 */ 'c', 'l', 'r', 'l', 9, 0,
1340  /* 2731 */ 's', 'r', 'l', 9, 0,
1341  /* 2736 */ 's', 't', 'r', 'l', 9, 0,
1342  /* 2742 */ 'b', 'r', 'a', 's', 'l', 9, 0,
1343  /* 2749 */ 'i', 'p', 'm', 9, 0,
1344  /* 2754 */ 't', 'm', 9, 0,
1345  /* 2758 */ 'l', 'a', 'n', 9, 0,
1346  /* 2763 */ 'l', 'a', 'o', 9, 0,
1347  /* 2768 */ 'l', 'o', 'c', 'o', 9, 0,
1348  /* 2774 */ 's', 't', 'o', 'c', 'o', 9, 0,
1349  /* 2781 */ 'l', 'o', 'c', 'g', 'o', 9, 0,
1350  /* 2788 */ 's', 't', 'o', 'c', 'g', 'o', 9, 0,
1351  /* 2796 */ 'j', 'g', 'o', 9, 0,
1352  /* 2801 */ 'j', 'o', 9, 0,
1353  /* 2805 */ 'l', 'o', 'c', 'n', 'o', 9, 0,
1354  /* 2812 */ 's', 't', 'o', 'c', 'n', 'o', 9, 0,
1355  /* 2820 */ 'l', 'o', 'c', 'g', 'n', 'o', 9, 0,
1356  /* 2828 */ 's', 't', 'o', 'c', 'g', 'n', 'o', 9, 0,
1357  /* 2837 */ 'j', 'g', 'n', 'o', 9, 0,
1358  /* 2843 */ 'j', 'n', 'o', 9, 0,
1359  /* 2848 */ 'l', 'o', 'c', 'r', 'n', 'o', 9, 0,
1360  /* 2856 */ 'l', 'o', 'c', 'g', 'r', 'n', 'o', 9, 0,
1361  /* 2865 */ 'l', 'o', 'c', 'r', 'o', 9, 0,
1362  /* 2872 */ 'l', 'o', 'c', 'g', 'r', 'o', 9, 0,
1363  /* 2880 */ 'e', 'a', 'r', 9, 0,
1364  /* 2885 */ 'm', 'a', 'd', 'b', 'r', 9, 0,
1365  /* 2892 */ 'l', 'c', 'd', 'b', 'r', 9, 0,
1366  /* 2899 */ 'd', 'd', 'b', 'r', 9, 0,
1367  /* 2905 */ 'l', 'e', 'd', 'b', 'r', 9, 0,
1368  /* 2912 */ 'c', 'f', 'd', 'b', 'r', 9, 0,
1369  /* 2919 */ 'c', 'l', 'f', 'd', 'b', 'r', 9, 0,
1370  /* 2927 */ 'c', 'g', 'd', 'b', 'r', 9, 0,
1371  /* 2934 */ 'c', 'l', 'g', 'd', 'b', 'r', 9, 0,
1372  /* 2942 */ 'f', 'i', 'd', 'b', 'r', 9, 0,
1373  /* 2949 */ 'm', 'd', 'b', 'r', 9, 0,
1374  /* 2955 */ 'l', 'n', 'd', 'b', 'r', 9, 0,
1375  /* 2962 */ 'l', 'p', 'd', 'b', 'r', 9, 0,
1376  /* 2969 */ 's', 'q', 'd', 'b', 'r', 9, 0,
1377  /* 2976 */ 'm', 's', 'd', 'b', 'r', 9, 0,
1378  /* 2983 */ 'l', 't', 'd', 'b', 'r', 9, 0,
1379  /* 2990 */ 'l', 'x', 'd', 'b', 'r', 9, 0,
1380  /* 2997 */ 'm', 'x', 'd', 'b', 'r', 9, 0,
1381  /* 3004 */ 'm', 'a', 'e', 'b', 'r', 9, 0,
1382  /* 3011 */ 'l', 'c', 'e', 'b', 'r', 9, 0,
1383  /* 3018 */ 'l', 'd', 'e', 'b', 'r', 9, 0,
1384  /* 3025 */ 'm', 'd', 'e', 'b', 'r', 9, 0,
1385  /* 3032 */ 'm', 'e', 'e', 'b', 'r', 9, 0,
1386  /* 3039 */ 'c', 'f', 'e', 'b', 'r', 9, 0,
1387  /* 3046 */ 'c', 'l', 'f', 'e', 'b', 'r', 9, 0,
1388  /* 3054 */ 'c', 'g', 'e', 'b', 'r', 9, 0,
1389  /* 3061 */ 'c', 'l', 'g', 'e', 'b', 'r', 9, 0,
1390  /* 3069 */ 'f', 'i', 'e', 'b', 'r', 9, 0,
1391  /* 3076 */ 'l', 'n', 'e', 'b', 'r', 9, 0,
1392  /* 3083 */ 'l', 'p', 'e', 'b', 'r', 9, 0,
1393  /* 3090 */ 's', 'q', 'e', 'b', 'r', 9, 0,
1394  /* 3097 */ 'm', 's', 'e', 'b', 'r', 9, 0,
1395  /* 3104 */ 'l', 't', 'e', 'b', 'r', 9, 0,
1396  /* 3111 */ 'l', 'x', 'e', 'b', 'r', 9, 0,
1397  /* 3118 */ 'c', 'd', 'f', 'b', 'r', 9, 0,
1398  /* 3125 */ 'c', 'e', 'f', 'b', 'r', 9, 0,
1399  /* 3132 */ 'c', 'd', 'l', 'f', 'b', 'r', 9, 0,
1400  /* 3140 */ 'c', 'e', 'l', 'f', 'b', 'r', 9, 0,
1401  /* 3148 */ 'c', 'x', 'l', 'f', 'b', 'r', 9, 0,
1402  /* 3156 */ 'c', 'x', 'f', 'b', 'r', 9, 0,
1403  /* 3163 */ 'c', 'd', 'g', 'b', 'r', 9, 0,
1404  /* 3170 */ 'c', 'e', 'g', 'b', 'r', 9, 0,
1405  /* 3177 */ 'c', 'd', 'l', 'g', 'b', 'r', 9, 0,
1406  /* 3185 */ 'c', 'e', 'l', 'g', 'b', 'r', 9, 0,
1407  /* 3193 */ 'c', 'x', 'l', 'g', 'b', 'r', 9, 0,
1408  /* 3201 */ 'c', 'x', 'g', 'b', 'r', 9, 0,
1409  /* 3208 */ 's', 'l', 'b', 'r', 9, 0,
1410  /* 3214 */ 'a', 'x', 'b', 'r', 9, 0,
1411  /* 3220 */ 'l', 'c', 'x', 'b', 'r', 9, 0,
1412  /* 3227 */ 'l', 'd', 'x', 'b', 'r', 9, 0,
1413  /* 3234 */ 'l', 'e', 'x', 'b', 'r', 9, 0,
1414  /* 3241 */ 'c', 'f', 'x', 'b', 'r', 9, 0,
1415  /* 3248 */ 'c', 'l', 'f', 'x', 'b', 'r', 9, 0,
1416  /* 3256 */ 'c', 'g', 'x', 'b', 'r', 9, 0,
1417  /* 3263 */ 'c', 'l', 'g', 'x', 'b', 'r', 9, 0,
1418  /* 3271 */ 'f', 'i', 'x', 'b', 'r', 9, 0,
1419  /* 3278 */ 'm', 'x', 'b', 'r', 9, 0,
1420  /* 3284 */ 'l', 'n', 'x', 'b', 'r', 9, 0,
1421  /* 3291 */ 'l', 'p', 'x', 'b', 'r', 9, 0,
1422  /* 3298 */ 's', 'q', 'x', 'b', 'r', 9, 0,
1423  /* 3305 */ 's', 'x', 'b', 'r', 9, 0,
1424  /* 3311 */ 'l', 't', 'x', 'b', 'r', 9, 0,
1425  /* 3318 */ 'b', 'c', 'r', 9, 0,
1426  /* 3323 */ 'l', 'l', 'g', 'c', 'r', 9, 0,
1427  /* 3330 */ 'a', 'l', 'c', 'r', 9, 0,
1428  /* 3336 */ 'l', 'l', 'c', 'r', 9, 0,
1429  /* 3342 */ 'l', 'o', 'c', 'r', 9, 0,
1430  /* 3348 */ 'l', 'g', 'd', 'r', 9, 0,
1431  /* 3354 */ 'l', 'd', 'r', 9, 0,
1432  /* 3359 */ 'c', 'p', 's', 'd', 'r', 9, 0,
1433  /* 3366 */ 'l', 'z', 'd', 'r', 9, 0,
1434  /* 3372 */ 'b', 'e', 'r', 9, 0,
1435  /* 3377 */ 'b', 'h', 'e', 'r', 9, 0,
1436  /* 3383 */ 'b', 'n', 'h', 'e', 'r', 9, 0,
1437  /* 3390 */ 'b', 'l', 'e', 'r', 9, 0,
1438  /* 3396 */ 'b', 'n', 'l', 'e', 'r', 9, 0,
1439  /* 3403 */ 'b', 'n', 'e', 'r', 9, 0,
1440  /* 3409 */ 'l', 'z', 'e', 'r', 9, 0,
1441  /* 3415 */ 'a', 'g', 'f', 'r', 9, 0,
1442  /* 3421 */ 'l', 'c', 'g', 'f', 'r', 9, 0,
1443  /* 3428 */ 'a', 'l', 'g', 'f', 'r', 9, 0,
1444  /* 3435 */ 'c', 'l', 'g', 'f', 'r', 9, 0,
1445  /* 3442 */ 'l', 'l', 'g', 'f', 'r', 9, 0,
1446  /* 3449 */ 's', 'l', 'g', 'f', 'r', 9, 0,
1447  /* 3456 */ 'l', 'n', 'g', 'f', 'r', 9, 0,
1448  /* 3463 */ 'l', 'p', 'g', 'f', 'r', 9, 0,
1449  /* 3470 */ 'd', 's', 'g', 'f', 'r', 9, 0,
1450  /* 3477 */ 'm', 's', 'g', 'f', 'r', 9, 0,
1451  /* 3484 */ 'l', 't', 'g', 'f', 'r', 9, 0,
1452  /* 3491 */ 'a', 'g', 'r', 9, 0,
1453  /* 3496 */ 's', 'l', 'b', 'g', 'r', 9, 0,
1454  /* 3503 */ 'a', 'l', 'c', 'g', 'r', 9, 0,
1455  /* 3510 */ 'l', 'o', 'c', 'g', 'r', 9, 0,
1456  /* 3517 */ 'l', 'd', 'g', 'r', 9, 0,
1457  /* 3523 */ 'a', 'l', 'g', 'r', 9, 0,
1458  /* 3529 */ 'c', 'l', 'g', 'r', 9, 0,
1459  /* 3535 */ 'd', 'l', 'g', 'r', 9, 0,
1460  /* 3541 */ 'm', 'l', 'g', 'r', 9, 0,
1461  /* 3547 */ 's', 'l', 'g', 'r', 9, 0,
1462  /* 3553 */ 'l', 'n', 'g', 'r', 9, 0,
1463  /* 3559 */ 'f', 'l', 'o', 'g', 'r', 9, 0,
1464  /* 3566 */ 'l', 'p', 'g', 'r', 9, 0,
1465  /* 3572 */ 'd', 's', 'g', 'r', 9, 0,
1466  /* 3578 */ 'm', 's', 'g', 'r', 9, 0,
1467  /* 3584 */ 'l', 't', 'g', 'r', 9, 0,
1468  /* 3590 */ 'l', 'r', 'v', 'g', 'r', 9, 0,
1469  /* 3597 */ 'x', 'g', 'r', 9, 0,
1470  /* 3602 */ 'b', 'h', 'r', 9, 0,
1471  /* 3607 */ 'l', 'l', 'g', 'h', 'r', 9, 0,
1472  /* 3614 */ 'b', 'l', 'h', 'r', 9, 0,
1473  /* 3620 */ 'l', 'l', 'h', 'r', 9, 0,
1474  /* 3626 */ 'b', 'n', 'l', 'h', 'r', 9, 0,
1475  /* 3633 */ 'b', 'n', 'h', 'r', 9, 0,
1476  /* 3639 */ 'a', 'l', 'r', 9, 0,
1477  /* 3644 */ 'b', 'l', 'r', 9, 0,
1478  /* 3649 */ 'c', 'l', 'r', 9, 0,
1479  /* 3654 */ 'd', 'l', 'r', 9, 0,
1480  /* 3659 */ 'b', 'n', 'l', 'r', 9, 0,
1481  /* 3665 */ 's', 'l', 'r', 9, 0,
1482  /* 3670 */ 'l', 'n', 'r', 9, 0,
1483  /* 3675 */ 'b', 'o', 'r', 9, 0,
1484  /* 3680 */ 'b', 'n', 'o', 'r', 9, 0,
1485  /* 3686 */ 'l', 'p', 'r', 9, 0,
1486  /* 3691 */ 'b', 'a', 's', 'r', 9, 0,
1487  /* 3697 */ 'm', 's', 'r', 9, 0,
1488  /* 3702 */ 'l', 't', 'r', 9, 0,
1489  /* 3707 */ 'l', 'r', 'v', 'r', 9, 0,
1490  /* 3713 */ 'l', 'x', 'r', 9, 0,
1491  /* 3718 */ 'l', 'z', 'x', 'r', 9, 0,
1492  /* 3724 */ 'b', 'r', 'a', 's', 9, 0,
1493  /* 3730 */ 'c', 's', 9, 0,
1494  /* 3734 */ 'm', 's', 9, 0,
1495  /* 3738 */ 'b', 'r', 'c', 't', 9, 0,
1496  /* 3744 */ 'l', 't', 9, 0,
1497  /* 3748 */ 'c', 'l', 's', 't', 9, 0,
1498  /* 3754 */ 's', 'r', 's', 't', 9, 0,
1499  /* 3760 */ 'm', 'v', 's', 't', 9, 0,
1500  /* 3766 */ 'l', 'r', 'v', 9, 0,
1501  /* 3771 */ 's', 't', 'r', 'v', 9, 0,
1502  /* 3777 */ 'l', 'a', 'x', 9, 0,
1503  /* 3782 */ 'l', 'a', 'y', 9, 0,
1504  /* 3787 */ 'i', 'c', 'y', 9, 0,
1505  /* 3792 */ 's', 't', 'c', 'y', 9, 0,
1506  /* 3798 */ 'l', 'd', 'y', 9, 0,
1507  /* 3803 */ 's', 't', 'd', 'y', 9, 0,
1508  /* 3809 */ 'l', 'e', 'y', 9, 0,
1509  /* 3814 */ 's', 't', 'e', 'y', 9, 0,
1510  /* 3820 */ 'a', 'h', 'y', 9, 0,
1511  /* 3825 */ 'c', 'h', 'y', 9, 0,
1512  /* 3830 */ 'l', 'h', 'y', 9, 0,
1513  /* 3835 */ 'm', 'h', 'y', 9, 0,
1514  /* 3840 */ 's', 'h', 'y', 9, 0,
1515  /* 3845 */ 's', 't', 'h', 'y', 9, 0,
1516  /* 3851 */ 'c', 'l', 'i', 'y', 9, 0,
1517  /* 3857 */ 'n', 'i', 'y', 9, 0,
1518  /* 3862 */ 'o', 'i', 'y', 9, 0,
1519  /* 3867 */ 'm', 'v', 'i', 'y', 9, 0,
1520  /* 3873 */ 'x', 'i', 'y', 9, 0,
1521  /* 3878 */ 'a', 'l', 'y', 9, 0,
1522  /* 3883 */ 'c', 'l', 'y', 9, 0,
1523  /* 3888 */ 's', 'l', 'y', 9, 0,
1524  /* 3893 */ 't', 'm', 'y', 9, 0,
1525  /* 3898 */ 'n', 'y', 9, 0,
1526  /* 3902 */ 'o', 'y', 9, 0,
1527  /* 3906 */ 'c', 's', 'y', 9, 0,
1528  /* 3911 */ 'm', 's', 'y', 9, 0,
1529  /* 3916 */ 's', 't', 'y', 9, 0,
1530  /* 3921 */ 'x', 'y', 9, 0,
1531  /* 3925 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0,
1532  /* 3938 */ 'B', 'U', 'N', 'D', 'L', 'E', 0,
1533  /* 3945 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0,
1534  /* 3955 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0,
1535  /* 3970 */ 'l', 'o', 'c', 0,
1536  /* 3974 */ 's', 't', 'o', 'c', 0,
1537  /* 3979 */ 'l', 'o', 'c', 'g', 0,
1538  /* 3984 */ 's', 't', 'o', 'c', 'g', 0,
1539  /* 3990 */ 'j', 'g', 0,
1540  /* 3993 */ 'c', 'i', 'j', 0,
1541  /* 3997 */ 'c', 'g', 'i', 'j', 0,
1542  /* 4002 */ 'c', 'l', 'g', 'i', 'j', 0,
1543  /* 4008 */ 'c', 'l', 'i', 'j', 0,
1544  /* 4013 */ 'c', 'r', 'j', 0,
1545  /* 4017 */ 'c', 'g', 'r', 'j', 0,
1546  /* 4022 */ 'c', 'l', 'g', 'r', 'j', 0,
1547  /* 4028 */ 'c', 'l', 'r', 'j', 0,
1548  /* 4033 */ 'l', 'o', 'c', 'r', 0,
1549  /* 4038 */ 'l', 'o', 'c', 'g', 'r', 0,
1550  };
1551#endif
1552
1553  // Emit the opcode for the instruction.
1554  uint32_t Bits = OpInfo[MCInst_getOpcode(MI)];
1555  // assert(Bits != 0 && "Cannot print this instruction.");
1556#ifndef CAPSTONE_DIET
1557  SStream_concat0(O, AsmStrs+(Bits & 4095)-1);
1558#endif
1559
1560
1561  // Fragment 0 encoded into 4 bits for 11 unique commands.
1562  //printf("Frag-0: %"PRIu64"\n", (Bits >> 12) & 15);
1563  switch ((Bits >> 12) & 15) {
1564  default: // llvm_unreachable("Invalid command number.");
1565  case 0:
1566    // DBG_VALUE, BUNDLE, LIFETIME_START, LIFETIME_END
1567    return;
1568    break;
1569  case 1:
1570    // A, ADB, ADBR, AEB, AEBR, AFI, AG, AGF, AGFI, AGFR, AGHI, AGHIK, AGR, A...
1571    printOperand(MI, 0, O);
1572    break;
1573  case 2:
1574    // AGSI, ASI, CGHSI, CHHSI, CHSI, CLFHSI, CLGHSI, CLHHSI, CLI, CLIY, MVGH...
1575    printBDAddrOperand(MI, 0, O);
1576    SStream_concat0(O, ", ");
1577    break;
1578  case 3:
1579    // AsmBCR, AsmBRC, AsmBRCL, PFD, PFDRL
1580    printU4ImmOperand(MI, 0, O);
1581    SStream_concat0(O, ", ");
1582    break;
1583  case 4:
1584    // AsmEJ, AsmEJG, AsmHEJ, AsmHEJG, AsmHJ, AsmHJG, AsmLEJ, AsmLEJG, AsmLHJ...
1585    printPCRelOperand(MI, 0, O);
1586    return;
1587    break;
1588  case 5:
1589    // BRC, BRCL
1590    printCond4Operand(MI, 1, O);
1591    SStream_concat0(O, "\t");
1592    printPCRelOperand(MI, 2, O);
1593    return;
1594    break;
1595  case 6:
1596    // CGIJ, CGRJ, CIJ, CLGIJ, CLGRJ, CLIJ, CLRJ, CRJ
1597    printCond4Operand(MI, 2, O);
1598    SStream_concat0(O, "\t");
1599    printOperand(MI, 0, O);
1600    SStream_concat0(O, ", ");
1601    break;
1602  case 7:
1603    // CLC, MVC, NC, OC, XC
1604    printBDLAddrOperand(MI, 0, O);
1605    SStream_concat0(O, ", ");
1606    printBDAddrOperand(MI, 3, O);
1607    return;
1608    break;
1609  case 8:
1610    // LOC, LOCG
1611    printCond4Operand(MI, 5, O);
1612    SStream_concat0(O, "\t");
1613    printOperand(MI, 0, O);
1614    SStream_concat0(O, ", ");
1615    printBDAddrOperand(MI, 2, O);
1616    return;
1617    break;
1618  case 9:
1619    // LOCGR, LOCR
1620    printCond4Operand(MI, 3, O);
1621    SStream_concat0(O, "\t");
1622    printOperand(MI, 0, O);
1623    SStream_concat0(O, ", ");
1624    printOperand(MI, 1, O);
1625    return;
1626    break;
1627  case 10:
1628    // STOC, STOCG
1629    printCond4Operand(MI, 4, O);
1630    SStream_concat0(O, "\t");
1631    printOperand(MI, 0, O);
1632    SStream_concat0(O, ", ");
1633    printBDAddrOperand(MI, 1, O);
1634    return;
1635    break;
1636  }
1637
1638
1639  // Fragment 1 encoded into 4 bits for 11 unique commands.
1640  //printf("Frag-1: %"PRIu64"\n", (Bits >> 16) & 15);
1641  switch ((Bits >> 16) & 15) {
1642  default: // llvm_unreachable("Invalid command number.");
1643  case 0:
1644    // A, ADB, ADBR, AEB, AEBR, AFI, AG, AGF, AGFI, AGFR, AGHI, AGHIK, AGR, A...
1645    SStream_concat0(O, ", ");
1646    break;
1647  case 1:
1648    // AGSI, ASI
1649    printS8ImmOperand(MI, 2, O);
1650    return;
1651    break;
1652  case 2:
1653    // AsmBCR, CGRJ, CLGRJ, CLRJ, CRJ
1654    printOperand(MI, 1, O);
1655    break;
1656  case 3:
1657    // AsmBRC, AsmBRCL, PFDRL
1658    printPCRelOperand(MI, 1, O);
1659    return;
1660    break;
1661  case 4:
1662    // AsmEBR, AsmHBR, AsmHEBR, AsmLBR, AsmLEBR, AsmLHBR, AsmNEBR, AsmNHBR, A...
1663    return;
1664    break;
1665  case 5:
1666    // CGHSI, CHHSI, CHSI, MVGHI, MVHHI, MVHI
1667    printS16ImmOperand(MI, 2, O);
1668    return;
1669    break;
1670  case 6:
1671    // CGIJ, CIJ
1672    printS8ImmOperand(MI, 1, O);
1673    SStream_concat0(O, ", ");
1674    printPCRelOperand(MI, 3, O);
1675    return;
1676    break;
1677  case 7:
1678    // CLFHSI, CLGHSI, CLHHSI
1679    printU16ImmOperand(MI, 2, O);
1680    return;
1681    break;
1682  case 8:
1683    // CLGIJ, CLIJ
1684    printU8ImmOperand(MI, 1, O);
1685    SStream_concat0(O, ", ");
1686    printPCRelOperand(MI, 3, O);
1687    return;
1688    break;
1689  case 9:
1690    // CLI, CLIY, MVI, MVIY, NI, NIY, OI, OIY, TM, TMY, XI, XIY
1691    printU8ImmOperand(MI, 2, O);
1692    return;
1693    break;
1694  case 10:
1695    // PFD
1696    printBDXAddrOperand(MI, 1, O);
1697    return;
1698    break;
1699  }
1700
1701
1702  // Fragment 2 encoded into 5 bits for 23 unique commands.
1703  //printf("Frag-2: %"PRIu64"\n", (Bits >> 20) & 31);
1704  switch ((Bits >> 20) & 31) {
1705  default: // llvm_unreachable("Invalid command number.");
1706  case 0:
1707    // A, ADB, AEB, AG, AGF, AH, AHY, AL, ALC, ALCG, ALG, ALGF, ALY, AY, DDB,...
1708    printBDXAddrOperand(MI, 2, O);
1709    return;
1710    break;
1711  case 1:
1712    // ADBR, AEBR, AGFR, AGR, ALCGR, ALCR, ALGFR, ALGR, ALR, AR, AXBR, AsmELO...
1713    printOperand(MI, 2, O);
1714    break;
1715  case 2:
1716    // AFI, AGFI, AIH, MSFI, MSGFI
1717    printS32ImmOperand(MI, 2, O);
1718    return;
1719    break;
1720  case 3:
1721    // AGHI, AHI, MGHI, MHI
1722    printS16ImmOperand(MI, 2, O);
1723    return;
1724    break;
1725  case 4:
1726    // AGHIK, AGRK, AHIK, ALGHSIK, ALGRK, ALHSIK, ALRK, ARK, AsmCGRJ, AsmCLGR...
1727    printOperand(MI, 1, O);
1728    break;
1729  case 5:
1730    // ALFI, ALGFI, NIHF, NILF, OIHF, OILF, SLFI, SLGFI, XIHF, XILF
1731    printU32ImmOperand(MI, 2, O);
1732    return;
1733    break;
1734  case 6:
1735    // AsmBCR
1736    return;
1737    break;
1738  case 7:
1739    // AsmCGIJ, AsmCIJ, AsmJEAltCGI, AsmJEAltCI, AsmJECGI, AsmJECI, AsmJHAltC...
1740    printS8ImmOperand(MI, 1, O);
1741    SStream_concat0(O, ", ");
1742    break;
1743  case 8:
1744    // AsmCLGIJ, AsmCLIJ, AsmJEAltCLGI, AsmJEAltCLI, AsmJECLGI, AsmJECLI, Asm...
1745    printU8ImmOperand(MI, 1, O);
1746    SStream_concat0(O, ", ");
1747    break;
1748  case 9:
1749    // AsmELOC, AsmELOCG, AsmHELOC, AsmHELOCG, AsmHLOC, AsmHLOCG, AsmLELOC, A...
1750    printBDAddrOperand(MI, 2, O);
1751    break;
1752  case 10:
1753    // AsmESTOC, AsmESTOCG, AsmHESTOC, AsmHESTOCG, AsmHSTOC, AsmHSTOCG, AsmLE...
1754    printBDAddrOperand(MI, 1, O);
1755    break;
1756  case 11:
1757    // BRAS, BRASL
1758    printPCRelTLSOperand(MI, 1, O);
1759    return;
1760    break;
1761  case 12:
1762    // BRCT, BRCTG
1763    printPCRelOperand(MI, 2, O);
1764    return;
1765    break;
1766  case 13:
1767    // C, CDB, CEB, CG, CGF, CGH, CH, CHF, CHY, CL, CLG, CLGF, CLHF, CLY, CY,...
1768    printBDXAddrOperand(MI, 1, O);
1769    return;
1770    break;
1771  case 14:
1772    // CDLFBR, CDLGBR, CELFBR, CELGBR, CFDBR, CFEBR, CFXBR, CGDBR, CGEBR, CGX...
1773    printU4ImmOperand(MI, 1, O);
1774    SStream_concat0(O, ", ");
1775    printOperand(MI, 2, O);
1776    break;
1777  case 15:
1778    // CFI, CGFI, CIH, LGFI
1779    printS32ImmOperand(MI, 1, O);
1780    return;
1781    break;
1782  case 16:
1783    // CGFRL, CGHRL, CGRL, CHRL, CLGFRL, CLGHRL, CLGRL, CLHRL, CLRL, CRL, LAR...
1784    printPCRelOperand(MI, 1, O);
1785    return;
1786    break;
1787  case 17:
1788    // CGHI, CHI, LGHI, LHI
1789    printS16ImmOperand(MI, 1, O);
1790    return;
1791    break;
1792  case 18:
1793    // CGRJ, CLGRJ, CLRJ, CRJ
1794    SStream_concat0(O, ", ");
1795    printPCRelOperand(MI, 3, O);
1796    return;
1797    break;
1798  case 19:
1799    // CLFI, CLGFI, CLIH, IIHF, IILF, LLIHF, LLILF
1800    printU32ImmOperand(MI, 1, O);
1801    return;
1802    break;
1803  case 20:
1804    // EAR
1805    printAccessRegOperand(MI, 1, O);
1806    return;
1807    break;
1808  case 21:
1809    // IIHH, IIHL, IILH, IILL, NIHH, NIHL, NILH, NILL, OIHH, OIHL, OILH, OILL
1810    printU16ImmOperand(MI, 2, O);
1811    return;
1812    break;
1813  case 22:
1814    // LLIHH, LLIHL, LLILH, LLILL, TMHH, TMHL, TMLH, TMLL
1815    printU16ImmOperand(MI, 1, O);
1816    return;
1817    break;
1818  }
1819
1820
1821  // Fragment 3 encoded into 2 bits for 4 unique commands.
1822  //printf("Frag-3: %"PRIu64"\n", (Bits >> 25) & 3);
1823  switch ((Bits >> 25) & 3) {
1824  default: // llvm_unreachable("Invalid command number.");
1825  case 0:
1826    // ADBR, AEBR, AGFR, AGR, ALCGR, ALCR, ALGFR, ALGR, ALR, AR, AXBR, AsmELO...
1827    return;
1828    break;
1829  case 1:
1830    // AGHIK, AGRK, AHIK, ALGHSIK, ALGRK, ALHSIK, ALRK, ARK, AsmCGRJ, AsmCLGR...
1831    SStream_concat0(O, ", ");
1832    break;
1833  case 2:
1834    // AsmCGIJ, AsmCIJ, AsmCLGIJ, AsmCLIJ
1835    printU4ImmOperand(MI, 2, O);
1836    SStream_concat0(O, ", ");
1837    printPCRelOperand(MI, 3, O);
1838    return;
1839    break;
1840  case 3:
1841    // AsmJEAltCGI, AsmJEAltCI, AsmJEAltCLGI, AsmJEAltCLI, AsmJECGI, AsmJECI,...
1842    printPCRelOperand(MI, 2, O);
1843    return;
1844    break;
1845  }
1846
1847
1848  // Fragment 4 encoded into 4 bits for 11 unique commands.
1849  //printf("Frag-4: %"PRIu64"\n", (Bits >> 27) & 15);
1850  switch ((Bits >> 27) & 15) {
1851  default: // llvm_unreachable("Invalid command number.");
1852  case 0:
1853    // AGHIK, AHIK, ALGHSIK, ALHSIK
1854    printS16ImmOperand(MI, 2, O);
1855    return;
1856    break;
1857  case 1:
1858    // AGRK, ALGRK, ALRK, ARK, CPSDRdd, CPSDRds, CPSDRsd, CPSDRss, NGRK, NRK,...
1859    printOperand(MI, 2, O);
1860    return;
1861    break;
1862  case 2:
1863    // AsmCGRJ, AsmCLGRJ, AsmCLRJ, AsmCRJ
1864    printU4ImmOperand(MI, 2, O);
1865    SStream_concat0(O, ", ");
1866    printPCRelOperand(MI, 3, O);
1867    return;
1868    break;
1869  case 3:
1870    // AsmJEAltCGR, AsmJEAltCLGR, AsmJEAltCLR, AsmJEAltCR, AsmJECGR, AsmJECLG...
1871    printPCRelOperand(MI, 2, O);
1872    return;
1873    break;
1874  case 4:
1875    // AsmLOC, AsmLOCG
1876    printU4ImmOperand(MI, 4, O);
1877    return;
1878    break;
1879  case 5:
1880    // AsmLOCGR, AsmLOCR, AsmSTOC, AsmSTOCG, CDLFBR, CDLGBR, CELFBR, CELGBR, ...
1881    printU4ImmOperand(MI, 3, O);
1882    return;
1883    break;
1884  case 6:
1885    // CS, CSG, CSY
1886    printBDAddrOperand(MI, 3, O);
1887    return;
1888    break;
1889  case 7:
1890    // LAA, LAAG, LAAL, LAALG, LAN, LANG, LAO, LAOG, LAX, LAXG, LMG, RLL, RLL...
1891    printBDAddrOperand(MI, 2, O);
1892    return;
1893    break;
1894  case 8:
1895    // MADB, MAEB, MSDB, MSEB
1896    printBDXAddrOperand(MI, 3, O);
1897    return;
1898    break;
1899  case 9:
1900    // MADBR, MAEBR, MSDBR, MSEBR
1901    printOperand(MI, 3, O);
1902    return;
1903    break;
1904  case 10:
1905    // RISBG, RISBG32, RISBHG, RISBLG, RNSBG, ROSBG, RXSBG
1906    printU8ImmOperand(MI, 3, O);
1907    SStream_concat0(O, ", ");
1908    printU8ImmOperand(MI, 4, O);
1909    SStream_concat0(O, ", ");
1910    printU6ImmOperand(MI, 5, O);
1911    return;
1912    break;
1913  }
1914}
1915
1916
1917/// getRegisterName - This method is automatically generated by tblgen
1918/// from the register set description.  This returns the assembler name
1919/// for the specified register.
1920static const char *getRegisterName(unsigned RegNo)
1921{
1922  // assert(RegNo && RegNo < 98 && "Invalid register number!");
1923
1924#ifndef CAPSTONE_DIET
1925  static const char AsmStrs[] = {
1926  /* 0 */ 'f', '1', '0', 0,
1927  /* 4 */ 'r', '1', '0', 0,
1928  /* 8 */ 'f', '0', 0,
1929  /* 11 */ 'r', '0', 0,
1930  /* 14 */ 'f', '1', '1', 0,
1931  /* 18 */ 'r', '1', '1', 0,
1932  /* 22 */ 'f', '1', 0,
1933  /* 25 */ 'r', '1', 0,
1934  /* 28 */ 'f', '1', '2', 0,
1935  /* 32 */ 'r', '1', '2', 0,
1936  /* 36 */ 'f', '2', 0,
1937  /* 39 */ 'r', '2', 0,
1938  /* 42 */ 'f', '1', '3', 0,
1939  /* 46 */ 'r', '1', '3', 0,
1940  /* 50 */ 'f', '3', 0,
1941  /* 53 */ 'r', '3', 0,
1942  /* 56 */ 'f', '1', '4', 0,
1943  /* 60 */ 'r', '1', '4', 0,
1944  /* 64 */ 'f', '4', 0,
1945  /* 67 */ 'r', '4', 0,
1946  /* 70 */ 'f', '1', '5', 0,
1947  /* 74 */ 'r', '1', '5', 0,
1948  /* 78 */ 'f', '5', 0,
1949  /* 81 */ 'r', '5', 0,
1950  /* 84 */ 'f', '6', 0,
1951  /* 87 */ 'r', '6', 0,
1952  /* 90 */ 'f', '7', 0,
1953  /* 93 */ 'r', '7', 0,
1954  /* 96 */ 'f', '8', 0,
1955  /* 99 */ 'r', '8', 0,
1956  /* 102 */ 'f', '9', 0,
1957  /* 105 */ 'r', '9', 0,
1958  /* 108 */ 'c', 'c', 0,
1959  };
1960
1961  static const uint8_t RegAsmOffset[] = {
1962    108, 8, 22, 36, 50, 64, 78, 84, 90, 96, 102, 0, 14, 28,
1963    42, 56, 70, 8, 22, 64, 78, 96, 102, 28, 42, 8, 22, 36,
1964    50, 64, 78, 84, 90, 96, 102, 0, 14, 28, 42, 56, 70, 11,
1965    25, 39, 53, 67, 81, 87, 93, 99, 105, 4, 18, 32, 46, 60,
1966    74, 11, 25, 39, 53, 67, 81, 87, 93, 99, 105, 4, 18, 32,
1967    46, 60, 74, 11, 25, 39, 53, 67, 81, 87, 93, 99, 105, 4,
1968    18, 32, 46, 60, 74, 11, 39, 67, 87, 99, 4, 32, 60,
1969  };
1970
1971  //int i;
1972  //for (i = 0; i < sizeof(RegAsmOffset); i++)
1973  //     printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1);
1974  //printf("*************************\n");
1975  return AsmStrs+RegAsmOffset[RegNo-1];
1976#else
1977  return NULL;
1978#endif
1979}
1980