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, http://www.capstone-engine.org */
10/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
11
12/// printInstruction - This method is automatically generated by tablegen
13/// from the instruction set description.
14static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
15{
16  static const uint32_t OpInfo[] = {
17    0U,	// PHI
18    0U,	// INLINEASM
19    0U,	// CFI_INSTRUCTION
20    0U,	// EH_LABEL
21    0U,	// GC_LABEL
22    0U,	// KILL
23    0U,	// EXTRACT_SUBREG
24    0U,	// INSERT_SUBREG
25    0U,	// IMPLICIT_DEF
26    0U,	// SUBREG_TO_REG
27    0U,	// COPY_TO_REGCLASS
28    1329U,	// DBG_VALUE
29    0U,	// REG_SEQUENCE
30    0U,	// COPY
31    1322U,	// BUNDLE
32    1339U,	// LIFETIME_START
33    1309U,	// LIFETIME_END
34    0U,	// STACKMAP
35    0U,	// PATCHPOINT
36    0U,	// LOAD_STACK_GUARD
37    0U,	// ABS
38    5768U,	// ADCri
39    5768U,	// ADCrr
40    9864U,	// ADCrsi
41    13960U,	// ADCrsr
42    0U,	// ADDSri
43    0U,	// ADDSrr
44    0U,	// ADDSrsi
45    0U,	// ADDSrsr
46    5829U,	// ADDri
47    5829U,	// ADDrr
48    9925U,	// ADDrsi
49    14021U,	// ADDrsr
50    0U,	// ADJCALLSTACKDOWN
51    0U,	// ADJCALLSTACKUP
52    18806U,	// ADR
53    1090671288U,	// AESD
54    1090671296U,	// AESE
55    1107448485U,	// AESIMC
56    1107448495U,	// AESMC
57    5882U,	// ANDri
58    5882U,	// ANDrr
59    9978U,	// ANDrsi
60    14074U,	// ANDrsr
61    268708U,	// ASRi
62    268708U,	// ASRr
63    0U,	// B
64    0U,	// BCCZi64
65    0U,	// BCCi64
66    26256U,	// BFC
67    30677U,	// BFI
68    5781U,	// BICri
69    5781U,	// BICrr
70    9877U,	// BICrsi
71    13973U,	// BICrsr
72    414542U,	// BKPT
73    414522U,	// BL
74    414582U,	// BLX
75    1073777581U,	// BLX_pred
76    414582U,	// BLXi
77    1073776678U,	// BL_pred
78    0U,	// BMOVPCB_CALL
79    0U,	// BMOVPCRX_CALL
80    0U,	// BR_JTadd
81    0U,	// BR_JTm
82    0U,	// BR_JTr
83    414578U,	// BX
84    1073776615U,	// BXJ
85    0U,	// BX_CALL
86    564041U,	// BX_RET
87    1073777481U,	// BX_pred
88    1073776035U,	// Bcc
89    2197858625U,	// CDP
90    67809687U,	// CDP2
91    2967U,	// CLREX
92    19417U,	// CLZ
93    18663U,	// CMNri
94    18663U,	// CMNzrr
95    26855U,	// CMNzrsi
96    30951U,	// CMNzrsr
97    18763U,	// CMPri
98    18763U,	// CMPrr
99    26955U,	// CMPrsi
100    31051U,	// CMPrsr
101    0U,	// CONSTPOOL_ENTRY
102    0U,	// COPY_STRUCT_BYVAL_I32
103    414526U,	// CPS1p
104    1157679610U,	// CPS2p
105    83937786U,	// CPS3p
106    33706710U,	// CRC32B
107    33706718U,	// CRC32CB
108    33706782U,	// CRC32CH
109    33706851U,	// CRC32CW
110    33706774U,	// CRC32H
111    33706843U,	// CRC32W
112    1073776474U,	// DBG
113    54005U,	// DMB
114    54010U,	// DSB
115    6546U,	// EORri
116    6546U,	// EORrr
117    10642U,	// EORrsi
118    14738U,	// EORrsr
119    3322694386U,	// FCONSTD
120    3322825458U,	// FCONSTS
121    33573700U,	// FLDMXDB_UPD
122    35597U,	// FLDMXIA
123    33573645U,	// FLDMXIA_UPD
124    1087998U,	// FMSTAT
125    33573708U,	// FSTMXDB_UPD
126    35605U,	// FSTMXIA
127    33573653U,	// FSTMXIA_UPD
128    1073777285U,	// HINT
129    414537U,	// HLT
130    58111U,	// ISB
131    117766771U,	// ITasm
132    0U,	// Int_eh_sjlj_dispatchsetup
133    0U,	// Int_eh_sjlj_longjmp
134    0U,	// Int_eh_sjlj_setjmp
135    0U,	// Int_eh_sjlj_setjmp_nofp
136    17743U,	// LDA
137    17824U,	// LDAB
138    19333U,	// LDAEX
139    18024U,	// LDAEXB
140    134235924U,	// LDAEXD
141    18361U,	// LDAEXH
142    18281U,	// LDAH
143    152220460U,	// LDC2L_OFFSET
144    1242739500U,	// LDC2L_OPTION
145    2316481324U,	// LDC2L_POST
146    185774892U,	// LDC2L_PRE
147    152220030U,	// LDC2_OFFSET
148    1242739070U,	// LDC2_OPTION
149    2316480894U,	// LDC2_POST
150    185774462U,	// LDC2_PRE
151    3271587887U,	// LDCL_OFFSET
152    3271587887U,	// LDCL_OPTION
153    3271587887U,	// LDCL_POST
154    3271587887U,	// LDCL_PRE
155    3271587468U,	// LDC_OFFSET
156    3271587468U,	// LDC_OPTION
157    3271587468U,	// LDC_POST
158    3271587468U,	// LDC_PRE
159    34131U,	// LDMDA
160    33572179U,	// LDMDA_UPD
161    34258U,	// LDMDB
162    33572306U,	// LDMDB_UPD
163    34998U,	// LDMIA
164    0U,	// LDMIA_RET
165    33573046U,	// LDMIA_UPD
166    34277U,	// LDMIB
167    33572325U,	// LDMIB_UPD
168    281152U,	// LDRBT_POST
169    68160U,	// LDRBT_POST_IMM
170    68160U,	// LDRBT_POST_REG
171    67071U,	// LDRB_POST_IMM
172    67071U,	// LDRB_POST_REG
173    30207U,	// LDRB_PRE_IMM
174    67071U,	// LDRB_PRE_REG
175    26111U,	// LDRBi12
176    30207U,	// LDRBrs
177    67326U,	// LDRD
178    42750U,	// LDRD_POST
179    42750U,	// LDRD_PRE
180    19345U,	// LDREX
181    18038U,	// LDREXB
182    134235938U,	// LDREXD
183    18375U,	// LDREXH
184    30612U,	// LDRH
185    31326U,	// LDRHTi
186    68190U,	// LDRHTr
187    67476U,	// LDRH_POST
188    67476U,	// LDRH_PRE
189    0U,	// LDRLIT_ga_abs
190    0U,	// LDRLIT_ga_pcrel
191    0U,	// LDRLIT_ga_pcrel_ldr
192    30225U,	// LDRSB
193    31308U,	// LDRSBTi
194    68172U,	// LDRSBTr
195    67089U,	// LDRSB_POST
196    67089U,	// LDRSB_PRE
197    30622U,	// LDRSH
198    31338U,	// LDRSHTi
199    68202U,	// LDRSHTr
200    67486U,	// LDRSH_POST
201    67486U,	// LDRSH_PRE
202    281226U,	// LDRT_POST
203    68234U,	// LDRT_POST_IMM
204    68234U,	// LDRT_POST_REG
205    67963U,	// LDR_POST_IMM
206    67963U,	// LDR_POST_REG
207    31099U,	// LDR_PRE_IMM
208    67963U,	// LDR_PRE_REG
209    27003U,	// LDRcp
210    27003U,	// LDRi12
211    31099U,	// LDRrs
212    0U,	// LEApcrel
213    0U,	// LEApcrelJT
214    268433U,	// LSLi
215    268433U,	// LSLr
216    268715U,	// LSRi
217    268715U,	// LSRr
218    2197858674U,	// MCR
219    17478045U,	// MCR2
220    2197883290U,	// MCRR
221    17478051U,	// MCRR2
222    9595U,	// MLA
223    0U,	// MLAv5
224    31197U,	// MLS
225    0U,	// MOVCCi
226    0U,	// MOVCCi16
227    0U,	// MOVCCi32imm
228    0U,	// MOVCCr
229    0U,	// MOVCCsi
230    0U,	// MOVCCsr
231    1350387U,	// MOVPCLR
232    0U,	// MOVPCRX
233    27328U,	// MOVTi16
234    0U,	// MOVTi16_ga_pcrel
235    0U,	// MOV_ga_pcrel
236    0U,	// MOV_ga_pcrel_ldr
237    72435U,	// MOVi
238    19208U,	// MOVi16
239    0U,	// MOVi16_ga_pcrel
240    0U,	// MOVi32imm
241    72435U,	// MOVr
242    72435U,	// MOVr_TC
243    6899U,	// MOVsi
244    10995U,	// MOVsr
245    0U,	// MOVsra_flag
246    0U,	// MOVsrl_flag
247    201369245U,	// MRC
248    74116U,	// MRC2
249    2197882529U,	// MRRC
250    17478026U,	// MRRC2
251    35327U,	// MRS
252    1073777151U,	// MRSsys
253    218122672U,	// MSR
254    218122672U,	// MSRi
255    6305U,	// MUL
256    0U,	// MULv5
257    0U,	// MVNCCi
258    71979U,	// MVNi
259    71979U,	// MVNr
260    6443U,	// MVNsi
261    10539U,	// MVNsr
262    6560U,	// ORRri
263    6560U,	// ORRrr
264    10656U,	// ORRrsi
265    14752U,	// ORRrsr
266    0U,	// PICADD
267    0U,	// PICLDR
268    0U,	// PICLDRB
269    0U,	// PICLDRH
270    0U,	// PICLDRSB
271    0U,	// PICLDRSH
272    0U,	// PICSTR
273    0U,	// PICSTRB
274    0U,	// PICSTRH
275    31275U,	// PKHBT
276    30238U,	// PKHTB
277    78700U,	// PLDWi12
278    82796U,	// PLDWrs
279    78596U,	// PLDi12
280    82692U,	// PLDrs
281    78631U,	// PLIi12
282    82727U,	// PLIrs
283    26333U,	// QADD
284    25764U,	// QADD16
285    25867U,	// QADD8
286    27586U,	// QASX
287    26307U,	// QDADD
288    26179U,	// QDSUB
289    27445U,	// QSAX
290    26192U,	// QSUB
291    25726U,	// QSUB16
292    25828U,	// QSUB8
293    19057U,	// RBIT
294    19167U,	// REV
295    17608U,	// REV16
296    18345U,	// REVSH
297    414408U,	// RFEDA
298    1462984U,	// RFEDA_UPD
299    414439U,	// RFEDB
300    1463015U,	// RFEDB_UPD
301    414415U,	// RFEIA
302    1462991U,	// RFEIA_UPD
303    414446U,	// RFEIB
304    1463022U,	// RFEIB_UPD
305    268694U,	// RORi
306    268694U,	// RORr
307    0U,	// RRX
308    334769U,	// RRXi
309    0U,	// RSBSri
310    0U,	// RSBSrsi
311    0U,	// RSBSrsr
312    5651U,	// RSBri
313    5651U,	// RSBrr
314    9747U,	// RSBrsi
315    13843U,	// RSBrsr
316    5798U,	// RSCri
317    5798U,	// RSCrr
318    9894U,	// RSCrsi
319    13990U,	// RSCrsr
320    25771U,	// SADD16
321    25873U,	// SADD8
322    27591U,	// SASX
323    5764U,	// SBCri
324    5764U,	// SBCrr
325    9860U,	// SBCrsi
326    13956U,	// SBCrsr
327    31651U,	// SBFX
328    27363U,	// SDIV
329    26700U,	// SEL
330    86793U,	// SETEND
331    16928834U,	// SHA1C
332    1107447884U,	// SHA1H
333    16928866U,	// SHA1M
334    16928876U,	// SHA1P
335    16928769U,	// SHA1SU0
336    1090670619U,	// SHA1SU1
337    16928854U,	// SHA256H
338    16928821U,	// SHA256H2
339    1090670605U,	// SHA256SU0
340    16928807U,	// SHA256SU1
341    25747U,	// SHADD16
342    25852U,	// SHADD8
343    27573U,	// SHASX
344    27432U,	// SHSAX
345    25709U,	// SHSUB16
346    25813U,	// SHSUB8
347    1073776281U,	// SMC
348    30129U,	// SMLABB
349    31268U,	// SMLABT
350    30386U,	// SMLAD
351    31577U,	// SMLADX
352    92178U,	// SMLAL
353    30136U,	// SMLALBB
354    31281U,	// SMLALBT
355    30439U,	// SMLALD
356    31591U,	// SMLALDX
357    30244U,	// SMLALTB
358    31398U,	// SMLALTT
359    0U,	// SMLALv5
360    30231U,	// SMLATB
361    31391U,	// SMLATT
362    30298U,	// SMLAWB
363    31429U,	// SMLAWT
364    30472U,	// SMLSD
365    31607U,	// SMLSDX
366    30450U,	// SMLSLD
367    31599U,	// SMLSLDX
368    30073U,	// SMMLA
369    31083U,	// SMMLAR
370    31195U,	// SMMLS
371    31144U,	// SMMLSR
372    26783U,	// SMMUL
373    27018U,	// SMMULR
374    26296U,	// SMUAD
375    27488U,	// SMUADX
376    26048U,	// SMULBB
377    27193U,	// SMULBT
378    10358U,	// SMULL
379    0U,	// SMULLv5
380    26156U,	// SMULTB
381    27310U,	// SMULTT
382    26209U,	// SMULWB
383    27340U,	// SMULWT
384    26382U,	// SMUSD
385    27518U,	// SMUSDX
386    414646U,	// SRSDA
387    414598U,	// SRSDA_UPD
388    414668U,	// SRSDB
389    414622U,	// SRSDB_UPD
390    414657U,	// SRSIA
391    414610U,	// SRSIA_UPD
392    414679U,	// SRSIB
393    414634U,	// SRSIB_UPD
394    31258U,	// SSAT
395    25785U,	// SSAT16
396    27450U,	// SSAX
397    25733U,	// SSUB16
398    25834U,	// SSUB8
399    152220467U,	// STC2L_OFFSET
400    1242739507U,	// STC2L_OPTION
401    2316481331U,	// STC2L_POST
402    185774899U,	// STC2L_PRE
403    152220049U,	// STC2_OFFSET
404    1242739089U,	// STC2_OPTION
405    2316480913U,	// STC2_POST
406    185774481U,	// STC2_PRE
407    3271587892U,	// STCL_OFFSET
408    3271587892U,	// STCL_OPTION
409    3271587892U,	// STCL_POST
410    3271587892U,	// STCL_PRE
411    3271587498U,	// STC_OFFSET
412    3271587498U,	// STC_OPTION
413    3271587498U,	// STC_POST
414    3271587498U,	// STC_PRE
415    18587U,	// STL
416    17905U,	// STLB
417    27531U,	// STLEX
418    26223U,	// STLEXB
419    26395U,	// STLEXD
420    26560U,	// STLEXH
421    18302U,	// STLH
422    34137U,	// STMDA
423    33572185U,	// STMDA_UPD
424    34265U,	// STMDB
425    33572313U,	// STMDB_UPD
426    35002U,	// STMIA
427    33573050U,	// STMIA_UPD
428    34283U,	// STMIB
429    33572331U,	// STMIB_UPD
430    281158U,	// STRBT_POST
431    33622598U,	// STRBT_POST_IMM
432    33622598U,	// STRBT_POST_REG
433    33621508U,	// STRB_POST_IMM
434    33621508U,	// STRB_POST_REG
435    33584644U,	// STRB_PRE_IMM
436    33621508U,	// STRB_PRE_REG
437    26116U,	// STRBi12
438    0U,	// STRBi_preidx
439    0U,	// STRBr_preidx
440    30212U,	// STRBrs
441    67331U,	// STRD
442    33597187U,	// STRD_POST
443    33597187U,	// STRD_PRE
444    27549U,	// STREX
445    26237U,	// STREXB
446    26409U,	// STREXD
447    26574U,	// STREXH
448    30617U,	// STRH
449    33585764U,	// STRHTi
450    33622628U,	// STRHTr
451    33621913U,	// STRH_POST
452    33621913U,	// STRH_PRE
453    0U,	// STRH_preidx
454    281237U,	// STRT_POST
455    33622677U,	// STRT_POST_IMM
456    33622677U,	// STRT_POST_REG
457    33622460U,	// STR_POST_IMM
458    33622460U,	// STR_POST_REG
459    33585596U,	// STR_PRE_IMM
460    33622460U,	// STR_PRE_REG
461    27068U,	// STRi12
462    0U,	// STRi_preidx
463    0U,	// STRr_preidx
464    31164U,	// STRrs
465    0U,	// SUBS_PC_LR
466    0U,	// SUBSri
467    0U,	// SUBSrr
468    0U,	// SUBSrsi
469    0U,	// SUBSrsr
470    5701U,	// SUBri
471    5701U,	// SUBrr
472    9797U,	// SUBrsi
473    13893U,	// SUBrsr
474    1073776302U,	// SVC
475    26969U,	// SWP
476    26106U,	// SWPB
477    30117U,	// SXTAB
478    29775U,	// SXTAB16
479    30574U,	// SXTAH
480    26169U,	// SXTB
481    25695U,	// SXTB16
482    26543U,	// SXTH
483    0U,	// TAILJMPd
484    0U,	// TAILJMPr
485    0U,	// TCRETURNdi
486    0U,	// TCRETURNri
487    18791U,	// TEQri
488    18791U,	// TEQrr
489    26983U,	// TEQrsi
490    31079U,	// TEQrsr
491    0U,	// TPsoft
492    2364U,	// TRAP
493    2364U,	// TRAPNaCl
494    19099U,	// TSTri
495    19099U,	// TSTrr
496    27291U,	// TSTrsi
497    31387U,	// TSTrsr
498    25778U,	// UADD16
499    25879U,	// UADD8
500    27596U,	// UASX
501    31656U,	// UBFX
502    414481U,	// UDF
503    27368U,	// UDIV
504    25755U,	// UHADD16
505    25859U,	// UHADD8
506    27579U,	// UHASX
507    27438U,	// UHSAX
508    25717U,	// UHSUB16
509    25820U,	// UHSUB8
510    30711U,	// UMAAL
511    92184U,	// UMLAL
512    0U,	// UMLALv5
513    10364U,	// UMULL
514    0U,	// UMULLv5
515    25763U,	// UQADD16
516    25866U,	// UQADD8
517    27585U,	// UQASX
518    27444U,	// UQSAX
519    25725U,	// UQSUB16
520    25827U,	// UQSUB8
521    25846U,	// USAD8
522    29902U,	// USADA8
523    31263U,	// USAT
524    25792U,	// USAT16
525    27455U,	// USAX
526    25740U,	// USUB16
527    25840U,	// USUB8
528    30123U,	// UXTAB
529    29783U,	// UXTAB16
530    30580U,	// UXTAH
531    26174U,	// UXTB
532    25702U,	// UXTB16
533    26548U,	// UXTH
534    18380797U,	// VABALsv2i64
535    18511869U,	// VABALsv4i32
536    18642941U,	// VABALsv8i16
537    18774013U,	// VABALuv2i64
538    18905085U,	// VABALuv4i32
539    19036157U,	// VABALuv8i16
540    18642250U,	// VABAsv16i8
541    18380106U,	// VABAsv2i32
542    18511178U,	// VABAsv4i16
543    18380106U,	// VABAsv4i32
544    18511178U,	// VABAsv8i16
545    18642250U,	// VABAsv8i8
546    19035466U,	// VABAuv16i8
547    18773322U,	// VABAuv2i32
548    18904394U,	// VABAuv4i16
549    18773322U,	// VABAuv4i32
550    18904394U,	// VABAuv8i16
551    19035466U,	// VABAuv8i8
552    35153977U,	// VABDLsv2i64
553    35285049U,	// VABDLsv4i32
554    35416121U,	// VABDLsv8i16
555    35547193U,	// VABDLuv2i64
556    35678265U,	// VABDLuv4i32
557    35809337U,	// VABDLuv8i16
558    2249090750U,	// VABDfd
559    2249090750U,	// VABDfq
560    35415742U,	// VABDsv16i8
561    35153598U,	// VABDsv2i32
562    35284670U,	// VABDsv4i16
563    35153598U,	// VABDsv4i32
564    35284670U,	// VABDsv8i16
565    35415742U,	// VABDsv8i8
566    35808958U,	// VABDuv16i8
567    35546814U,	// VABDuv2i32
568    35677886U,	// VABDuv4i16
569    35546814U,	// VABDuv4i32
570    35677886U,	// VABDuv8i16
571    35808958U,	// VABDuv8i8
572    2248952268U,	// VABSD
573    2249083340U,	// VABSS
574    2249083340U,	// VABSfd
575    2249083340U,	// VABSfq
576    1109150156U,	// VABSv16i8
577    1108888012U,	// VABSv2i32
578    1109019084U,	// VABSv4i16
579    1108888012U,	// VABSv4i32
580    1109019084U,	// VABSv8i16
581    1109150156U,	// VABSv8i8
582    2249090864U,	// VACGEd
583    2249090864U,	// VACGEq
584    2249091667U,	// VACGTd
585    2249091667U,	// VACGTq
586    2248959714U,	// VADDD
587    35940565U,	// VADDHNv2i32
588    36071637U,	// VADDHNv4i16
589    36202709U,	// VADDHNv8i8
590    35153990U,	// VADDLsv2i64
591    35285062U,	// VADDLsv4i32
592    35416134U,	// VADDLsv8i16
593    35547206U,	// VADDLuv2i64
594    35678278U,	// VADDLuv4i32
595    35809350U,	// VADDLuv8i16
596    2249090786U,	// VADDS
597    35154685U,	// VADDWsv2i64
598    35285757U,	// VADDWsv4i32
599    35416829U,	// VADDWsv8i16
600    35547901U,	// VADDWuv2i64
601    35678973U,	// VADDWuv4i32
602    35810045U,	// VADDWuv8i16
603    2249090786U,	// VADDfd
604    2249090786U,	// VADDfq
605    36333282U,	// VADDv16i8
606    35940066U,	// VADDv1i64
607    36071138U,	// VADDv2i32
608    35940066U,	// VADDv2i64
609    36202210U,	// VADDv4i16
610    36071138U,	// VADDv4i32
611    36202210U,	// VADDv8i16
612    36333282U,	// VADDv8i8
613    26361U,	// VANDd
614    26361U,	// VANDq
615    26260U,	// VBICd
616    237397652U,	// VBICiv2i32
617    237528724U,	// VBICiv4i16
618    237397652U,	// VBICiv4i32
619    237528724U,	// VBICiv8i16
620    26260U,	// VBICq
621    30549U,	// VBIFd
622    30549U,	// VBIFq
623    31350U,	// VBITd
624    31350U,	// VBITq
625    30856U,	// VBSLd
626    30856U,	// VBSLq
627    2249091426U,	// VCEQfd
628    2249091426U,	// VCEQfq
629    36333922U,	// VCEQv16i8
630    36071778U,	// VCEQv2i32
631    36202850U,	// VCEQv4i16
632    36071778U,	// VCEQv4i32
633    36202850U,	// VCEQv8i16
634    36333922U,	// VCEQv8i8
635    2183809378U,	// VCEQzv16i8
636    2249083234U,	// VCEQzv2f32
637    2183547234U,	// VCEQzv2i32
638    2249083234U,	// VCEQzv4f32
639    2183678306U,	// VCEQzv4i16
640    2183547234U,	// VCEQzv4i32
641    2183678306U,	// VCEQzv8i16
642    2183809378U,	// VCEQzv8i8
643    2249090870U,	// VCGEfd
644    2249090870U,	// VCGEfq
645    35415862U,	// VCGEsv16i8
646    35153718U,	// VCGEsv2i32
647    35284790U,	// VCGEsv4i16
648    35153718U,	// VCGEsv4i32
649    35284790U,	// VCGEsv8i16
650    35415862U,	// VCGEsv8i8
651    35809078U,	// VCGEuv16i8
652    35546934U,	// VCGEuv2i32
653    35678006U,	// VCGEuv4i16
654    35546934U,	// VCGEuv4i32
655    35678006U,	// VCGEuv8i16
656    35809078U,	// VCGEuv8i8
657    2182891318U,	// VCGEzv16i8
658    2249082678U,	// VCGEzv2f32
659    2182629174U,	// VCGEzv2i32
660    2249082678U,	// VCGEzv4f32
661    2182760246U,	// VCGEzv4i16
662    2182629174U,	// VCGEzv4i32
663    2182760246U,	// VCGEzv8i16
664    2182891318U,	// VCGEzv8i8
665    2249091673U,	// VCGTfd
666    2249091673U,	// VCGTfq
667    35416665U,	// VCGTsv16i8
668    35154521U,	// VCGTsv2i32
669    35285593U,	// VCGTsv4i16
670    35154521U,	// VCGTsv4i32
671    35285593U,	// VCGTsv8i16
672    35416665U,	// VCGTsv8i8
673    35809881U,	// VCGTuv16i8
674    35547737U,	// VCGTuv2i32
675    35678809U,	// VCGTuv4i16
676    35547737U,	// VCGTuv4i32
677    35678809U,	// VCGTuv8i16
678    35809881U,	// VCGTuv8i8
679    2182892121U,	// VCGTzv16i8
680    2249083481U,	// VCGTzv2f32
681    2182629977U,	// VCGTzv2i32
682    2249083481U,	// VCGTzv4f32
683    2182761049U,	// VCGTzv4i16
684    2182629977U,	// VCGTzv4i32
685    2182761049U,	// VCGTzv8i16
686    2182892121U,	// VCGTzv8i8
687    2182891323U,	// VCLEzv16i8
688    2249082683U,	// VCLEzv2f32
689    2182629179U,	// VCLEzv2i32
690    2249082683U,	// VCLEzv4f32
691    2182760251U,	// VCLEzv4i16
692    2182629179U,	// VCLEzv4i32
693    2182760251U,	// VCLEzv8i16
694    2182891323U,	// VCLEzv8i8
695    1109150166U,	// VCLSv16i8
696    1108888022U,	// VCLSv2i32
697    1109019094U,	// VCLSv4i16
698    1108888022U,	// VCLSv4i32
699    1109019094U,	// VCLSv8i16
700    1109150166U,	// VCLSv8i8
701    2182892155U,	// VCLTzv16i8
702    2249083515U,	// VCLTzv2f32
703    2182630011U,	// VCLTzv2i32
704    2249083515U,	// VCLTzv4f32
705    2182761083U,	// VCLTzv4i16
706    2182630011U,	// VCLTzv4i32
707    2182761083U,	// VCLTzv8i16
708    2182892155U,	// VCLTzv8i8
709    1110068184U,	// VCLZv16i8
710    1109806040U,	// VCLZv2i32
711    1109937112U,	// VCLZv4i16
712    1109806040U,	// VCLZv4i32
713    1109937112U,	// VCLZv8i16
714    1110068184U,	// VCLZv8i8
715    2248952138U,	// VCMPD
716    2248951623U,	// VCMPED
717    2249082695U,	// VCMPES
718    252479303U,	// VCMPEZD
719    252610375U,	// VCMPEZS
720    2249083210U,	// VCMPS
721    252479818U,	// VCMPZD
722    252610890U,	// VCMPZS
723    2902656U,	// VCNTd
724    2902656U,	// VCNTq
725    1107447926U,	// VCVTANSD
726    1107447926U,	// VCVTANSQ
727    1107447986U,	// VCVTANUD
728    1107447986U,	// VCVTANUQ
729    1107448234U,	// VCVTASD
730    1107447926U,	// VCVTASS
731    1107448294U,	// VCVTAUD
732    1107447986U,	// VCVTAUS
733    3032627U,	// VCVTBDH
734    3163699U,	// VCVTBHD
735    3294771U,	// VCVTBHS
736    3425843U,	// VCVTBSH
737    3558075U,	// VCVTDS
738    1107447941U,	// VCVTMNSD
739    1107447941U,	// VCVTMNSQ
740    1107448001U,	// VCVTMNUD
741    1107448001U,	// VCVTMNUQ
742    1107448249U,	// VCVTMSD
743    1107447941U,	// VCVTMSS
744    1107448309U,	// VCVTMUD
745    1107448001U,	// VCVTMUS
746    1107447956U,	// VCVTNNSD
747    1107447956U,	// VCVTNNSQ
748    1107448016U,	// VCVTNNUD
749    1107448016U,	// VCVTNNUQ
750    1107448264U,	// VCVTNSD
751    1107447956U,	// VCVTNSS
752    1107448324U,	// VCVTNUD
753    1107448016U,	// VCVTNUS
754    1107447971U,	// VCVTPNSD
755    1107447971U,	// VCVTPNSQ
756    1107448031U,	// VCVTPNUD
757    1107448031U,	// VCVTPNUQ
758    1107448279U,	// VCVTPSD
759    1107447971U,	// VCVTPSS
760    1107448339U,	// VCVTPUD
761    1107448031U,	// VCVTPUS
762    3689147U,	// VCVTSD
763    3033781U,	// VCVTTDH
764    3164853U,	// VCVTTHD
765    3295925U,	// VCVTTHS
766    3426997U,	// VCVTTSH
767    3427003U,	// VCVTf2h
768    272255675U,	// VCVTf2sd
769    272255675U,	// VCVTf2sq
770    272386747U,	// VCVTf2ud
771    272386747U,	// VCVTf2uq
772    3325717179U,	// VCVTf2xsd
773    3325717179U,	// VCVTf2xsq
774    3325848251U,	// VCVTf2xud
775    3325848251U,	// VCVTf2xuq
776    3295931U,	// VCVTh2f
777    272517819U,	// VCVTs2fd
778    272517819U,	// VCVTs2fq
779    272648891U,	// VCVTu2fd
780    272648891U,	// VCVTu2fq
781    3325979323U,	// VCVTxs2fd
782    3325979323U,	// VCVTxs2fq
783    3326110395U,	// VCVTxu2fd
784    3326110395U,	// VCVTxu2fq
785    2248960749U,	// VDIVD
786    2249091821U,	// VDIVS
787    4344147U,	// VDUP16d
788    4344147U,	// VDUP16q
789    4475219U,	// VDUP32d
790    4475219U,	// VDUP32q
791    2902355U,	// VDUP8d
792    2902355U,	// VDUP8q
793    4352339U,	// VDUPLN16d
794    4352339U,	// VDUPLN16q
795    4483411U,	// VDUPLN32d
796    4483411U,	// VDUPLN32q
797    2910547U,	// VDUPLN8d
798    2910547U,	// VDUPLN8q
799    27025U,	// VEORd
800    27025U,	// VEORq
801    4356819U,	// VEXTd16
802    4487891U,	// VEXTd32
803    2915027U,	// VEXTd8
804    4356819U,	// VEXTq16
805    4487891U,	// VEXTq32
806    4618963U,	// VEXTq64
807    2915027U,	// VEXTq8
808    3322705290U,	// VFMAD
809    3322836362U,	// VFMAS
810    3322836362U,	// VFMAfd
811    3322836362U,	// VFMAfq
812    3322706412U,	// VFMSD
813    3322837484U,	// VFMSS
814    3322837484U,	// VFMSfd
815    3322837484U,	// VFMSfq
816    3322705295U,	// VFNMAD
817    3322836367U,	// VFNMAS
818    3322706417U,	// VFNMSD
819    3322837489U,	// VFNMSS
820    4483826U,	// VGETLNi32
821    35285746U,	// VGETLNs16
822    35416818U,	// VGETLNs8
823    35678962U,	// VGETLNu16
824    35810034U,	// VGETLNu8
825    35415760U,	// VHADDsv16i8
826    35153616U,	// VHADDsv2i32
827    35284688U,	// VHADDsv4i16
828    35153616U,	// VHADDsv4i32
829    35284688U,	// VHADDsv8i16
830    35415760U,	// VHADDsv8i8
831    35808976U,	// VHADDuv16i8
832    35546832U,	// VHADDuv2i32
833    35677904U,	// VHADDuv4i16
834    35546832U,	// VHADDuv4i32
835    35677904U,	// VHADDuv8i16
836    35808976U,	// VHADDuv8i8
837    35415625U,	// VHSUBsv16i8
838    35153481U,	// VHSUBsv2i32
839    35284553U,	// VHSUBsv4i16
840    35153481U,	// VHSUBsv4i32
841    35284553U,	// VHSUBsv8i16
842    35415625U,	// VHSUBsv8i8
843    35808841U,	// VHSUBuv16i8
844    35546697U,	// VHSUBuv2i32
845    35677769U,	// VHSUBuv4i16
846    35546697U,	// VHSUBuv4i32
847    35677769U,	// VHSUBuv8i16
848    35808841U,	// VHSUBuv8i8
849    1363305442U,	// VLD1DUPd16
850    2437051362U,	// VLD1DUPd16wb_fixed
851    2437088226U,	// VLD1DUPd16wb_register
852    1363436514U,	// VLD1DUPd32
853    2437182434U,	// VLD1DUPd32wb_fixed
854    2437219298U,	// VLD1DUPd32wb_register
855    1361863650U,	// VLD1DUPd8
856    2435609570U,	// VLD1DUPd8wb_fixed
857    2435646434U,	// VLD1DUPd8wb_register
858    1380082658U,	// VLD1DUPq16
859    2453828578U,	// VLD1DUPq16wb_fixed
860    2453865442U,	// VLD1DUPq16wb_register
861    1380213730U,	// VLD1DUPq32
862    2453959650U,	// VLD1DUPq32wb_fixed
863    2453996514U,	// VLD1DUPq32wb_register
864    1378640866U,	// VLD1DUPq8
865    2452386786U,	// VLD1DUPq8wb_fixed
866    2452423650U,	// VLD1DUPq8wb_register
867    3226010594U,	// VLD1LNd16
868    3226039266U,	// VLD1LNd16_UPD
869    3226141666U,	// VLD1LNd32
870    3226170338U,	// VLD1LNd32_UPD
871    3226272738U,	// VLD1LNd8
872    3226301410U,	// VLD1LNd8_UPD
873    4355042U,	// VLD1LNdAsm_16
874    4486114U,	// VLD1LNdAsm_32
875    2913250U,	// VLD1LNdAsm_8
876    4355042U,	// VLD1LNdWB_fixed_Asm_16
877    4486114U,	// VLD1LNdWB_fixed_Asm_32
878    2913250U,	// VLD1LNdWB_fixed_Asm_8
879    4391906U,	// VLD1LNdWB_register_Asm_16
880    4522978U,	// VLD1LNdWB_register_Asm_32
881    2950114U,	// VLD1LNdWB_register_Asm_8
882    0U,	// VLD1LNq16Pseudo
883    0U,	// VLD1LNq16Pseudo_UPD
884    0U,	// VLD1LNq32Pseudo
885    0U,	// VLD1LNq32Pseudo_UPD
886    0U,	// VLD1LNq8Pseudo
887    0U,	// VLD1LNq8Pseudo_UPD
888    1396859874U,	// VLD1d16
889    1413637090U,	// VLD1d16Q
890    2487383010U,	// VLD1d16Qwb_fixed
891    2487419874U,	// VLD1d16Qwb_register
892    1430414306U,	// VLD1d16T
893    2504160226U,	// VLD1d16Twb_fixed
894    2504197090U,	// VLD1d16Twb_register
895    2470605794U,	// VLD1d16wb_fixed
896    2470642658U,	// VLD1d16wb_register
897    1396990946U,	// VLD1d32
898    1413768162U,	// VLD1d32Q
899    2487514082U,	// VLD1d32Qwb_fixed
900    2487550946U,	// VLD1d32Qwb_register
901    1430545378U,	// VLD1d32T
902    2504291298U,	// VLD1d32Twb_fixed
903    2504328162U,	// VLD1d32Twb_register
904    2470736866U,	// VLD1d32wb_fixed
905    2470773730U,	// VLD1d32wb_register
906    1397122018U,	// VLD1d64
907    1413899234U,	// VLD1d64Q
908    0U,	// VLD1d64QPseudo
909    0U,	// VLD1d64QPseudoWB_fixed
910    0U,	// VLD1d64QPseudoWB_register
911    2487645154U,	// VLD1d64Qwb_fixed
912    2487682018U,	// VLD1d64Qwb_register
913    1430676450U,	// VLD1d64T
914    0U,	// VLD1d64TPseudo
915    0U,	// VLD1d64TPseudoWB_fixed
916    0U,	// VLD1d64TPseudoWB_register
917    2504422370U,	// VLD1d64Twb_fixed
918    2504459234U,	// VLD1d64Twb_register
919    2470867938U,	// VLD1d64wb_fixed
920    2470904802U,	// VLD1d64wb_register
921    1395418082U,	// VLD1d8
922    1412195298U,	// VLD1d8Q
923    2485941218U,	// VLD1d8Qwb_fixed
924    2485978082U,	// VLD1d8Qwb_register
925    1428972514U,	// VLD1d8T
926    2502718434U,	// VLD1d8Twb_fixed
927    2502755298U,	// VLD1d8Twb_register
928    2469164002U,	// VLD1d8wb_fixed
929    2469200866U,	// VLD1d8wb_register
930    1447191522U,	// VLD1q16
931    2520937442U,	// VLD1q16wb_fixed
932    2520974306U,	// VLD1q16wb_register
933    1447322594U,	// VLD1q32
934    2521068514U,	// VLD1q32wb_fixed
935    2521105378U,	// VLD1q32wb_register
936    1447453666U,	// VLD1q64
937    2521199586U,	// VLD1q64wb_fixed
938    2521236450U,	// VLD1q64wb_register
939    1445749730U,	// VLD1q8
940    2519495650U,	// VLD1q8wb_fixed
941    2519532514U,	// VLD1q8wb_register
942    1380082702U,	// VLD2DUPd16
943    2453828622U,	// VLD2DUPd16wb_fixed
944    2453865486U,	// VLD2DUPd16wb_register
945    1463968782U,	// VLD2DUPd16x2
946    2537714702U,	// VLD2DUPd16x2wb_fixed
947    2537751566U,	// VLD2DUPd16x2wb_register
948    1380213774U,	// VLD2DUPd32
949    2453959694U,	// VLD2DUPd32wb_fixed
950    2453996558U,	// VLD2DUPd32wb_register
951    1464099854U,	// VLD2DUPd32x2
952    2537845774U,	// VLD2DUPd32x2wb_fixed
953    2537882638U,	// VLD2DUPd32x2wb_register
954    1378640910U,	// VLD2DUPd8
955    2452386830U,	// VLD2DUPd8wb_fixed
956    2452423694U,	// VLD2DUPd8wb_register
957    1462526990U,	// VLD2DUPd8x2
958    2536272910U,	// VLD2DUPd8x2wb_fixed
959    2536309774U,	// VLD2DUPd8x2wb_register
960    3226039310U,	// VLD2LNd16
961    0U,	// VLD2LNd16Pseudo
962    0U,	// VLD2LNd16Pseudo_UPD
963    3226043406U,	// VLD2LNd16_UPD
964    3226170382U,	// VLD2LNd32
965    0U,	// VLD2LNd32Pseudo
966    0U,	// VLD2LNd32Pseudo_UPD
967    3226174478U,	// VLD2LNd32_UPD
968    3226301454U,	// VLD2LNd8
969    0U,	// VLD2LNd8Pseudo
970    0U,	// VLD2LNd8Pseudo_UPD
971    3226305550U,	// VLD2LNd8_UPD
972    4355086U,	// VLD2LNdAsm_16
973    4486158U,	// VLD2LNdAsm_32
974    2913294U,	// VLD2LNdAsm_8
975    4355086U,	// VLD2LNdWB_fixed_Asm_16
976    4486158U,	// VLD2LNdWB_fixed_Asm_32
977    2913294U,	// VLD2LNdWB_fixed_Asm_8
978    4391950U,	// VLD2LNdWB_register_Asm_16
979    4523022U,	// VLD2LNdWB_register_Asm_32
980    2950158U,	// VLD2LNdWB_register_Asm_8
981    3226039310U,	// VLD2LNq16
982    0U,	// VLD2LNq16Pseudo
983    0U,	// VLD2LNq16Pseudo_UPD
984    3226043406U,	// VLD2LNq16_UPD
985    3226170382U,	// VLD2LNq32
986    0U,	// VLD2LNq32Pseudo
987    0U,	// VLD2LNq32Pseudo_UPD
988    3226174478U,	// VLD2LNq32_UPD
989    4355086U,	// VLD2LNqAsm_16
990    4486158U,	// VLD2LNqAsm_32
991    4355086U,	// VLD2LNqWB_fixed_Asm_16
992    4486158U,	// VLD2LNqWB_fixed_Asm_32
993    4391950U,	// VLD2LNqWB_register_Asm_16
994    4523022U,	// VLD2LNqWB_register_Asm_32
995    1480745998U,	// VLD2b16
996    2554491918U,	// VLD2b16wb_fixed
997    2554528782U,	// VLD2b16wb_register
998    1480877070U,	// VLD2b32
999    2554622990U,	// VLD2b32wb_fixed
1000    2554659854U,	// VLD2b32wb_register
1001    1479304206U,	// VLD2b8
1002    2553050126U,	// VLD2b8wb_fixed
1003    2553086990U,	// VLD2b8wb_register
1004    1447191566U,	// VLD2d16
1005    2520937486U,	// VLD2d16wb_fixed
1006    2520974350U,	// VLD2d16wb_register
1007    1447322638U,	// VLD2d32
1008    2521068558U,	// VLD2d32wb_fixed
1009    2521105422U,	// VLD2d32wb_register
1010    1445749774U,	// VLD2d8
1011    2519495694U,	// VLD2d8wb_fixed
1012    2519532558U,	// VLD2d8wb_register
1013    1413637134U,	// VLD2q16
1014    0U,	// VLD2q16Pseudo
1015    0U,	// VLD2q16PseudoWB_fixed
1016    0U,	// VLD2q16PseudoWB_register
1017    2487383054U,	// VLD2q16wb_fixed
1018    2487419918U,	// VLD2q16wb_register
1019    1413768206U,	// VLD2q32
1020    0U,	// VLD2q32Pseudo
1021    0U,	// VLD2q32PseudoWB_fixed
1022    0U,	// VLD2q32PseudoWB_register
1023    2487514126U,	// VLD2q32wb_fixed
1024    2487550990U,	// VLD2q32wb_register
1025    1412195342U,	// VLD2q8
1026    0U,	// VLD2q8Pseudo
1027    0U,	// VLD2q8PseudoWB_fixed
1028    0U,	// VLD2q8PseudoWB_register
1029    2485941262U,	// VLD2q8wb_fixed
1030    2485978126U,	// VLD2q8wb_register
1031    4785198U,	// VLD3DUPd16
1032    0U,	// VLD3DUPd16Pseudo
1033    0U,	// VLD3DUPd16Pseudo_UPD
1034    4813870U,	// VLD3DUPd16_UPD
1035    4916270U,	// VLD3DUPd32
1036    0U,	// VLD3DUPd32Pseudo
1037    0U,	// VLD3DUPd32Pseudo_UPD
1038    4944942U,	// VLD3DUPd32_UPD
1039    5047342U,	// VLD3DUPd8
1040    0U,	// VLD3DUPd8Pseudo
1041    0U,	// VLD3DUPd8Pseudo_UPD
1042    5076014U,	// VLD3DUPd8_UPD
1043    1497523246U,	// VLD3DUPdAsm_16
1044    1497654318U,	// VLD3DUPdAsm_32
1045    1496081454U,	// VLD3DUPdAsm_8
1046    1497523246U,	// VLD3DUPdWB_fixed_Asm_16
1047    1497654318U,	// VLD3DUPdWB_fixed_Asm_32
1048    1496081454U,	// VLD3DUPdWB_fixed_Asm_8
1049    423785518U,	// VLD3DUPdWB_register_Asm_16
1050    423916590U,	// VLD3DUPdWB_register_Asm_32
1051    422343726U,	// VLD3DUPdWB_register_Asm_8
1052    4785198U,	// VLD3DUPq16
1053    4813870U,	// VLD3DUPq16_UPD
1054    4916270U,	// VLD3DUPq32
1055    4944942U,	// VLD3DUPq32_UPD
1056    5047342U,	// VLD3DUPq8
1057    5076014U,	// VLD3DUPq8_UPD
1058    1514300462U,	// VLD3DUPqAsm_16
1059    1514431534U,	// VLD3DUPqAsm_32
1060    1512858670U,	// VLD3DUPqAsm_8
1061    1514300462U,	// VLD3DUPqWB_fixed_Asm_16
1062    1514431534U,	// VLD3DUPqWB_fixed_Asm_32
1063    1512858670U,	// VLD3DUPqWB_fixed_Asm_8
1064    440562734U,	// VLD3DUPqWB_register_Asm_16
1065    440693806U,	// VLD3DUPqWB_register_Asm_32
1066    439120942U,	// VLD3DUPqWB_register_Asm_8
1067    3226043438U,	// VLD3LNd16
1068    0U,	// VLD3LNd16Pseudo
1069    0U,	// VLD3LNd16Pseudo_UPD
1070    3226047534U,	// VLD3LNd16_UPD
1071    3226174510U,	// VLD3LNd32
1072    0U,	// VLD3LNd32Pseudo
1073    0U,	// VLD3LNd32Pseudo_UPD
1074    3226178606U,	// VLD3LNd32_UPD
1075    3226305582U,	// VLD3LNd8
1076    0U,	// VLD3LNd8Pseudo
1077    0U,	// VLD3LNd8Pseudo_UPD
1078    3226309678U,	// VLD3LNd8_UPD
1079    4355118U,	// VLD3LNdAsm_16
1080    4486190U,	// VLD3LNdAsm_32
1081    2913326U,	// VLD3LNdAsm_8
1082    4355118U,	// VLD3LNdWB_fixed_Asm_16
1083    4486190U,	// VLD3LNdWB_fixed_Asm_32
1084    2913326U,	// VLD3LNdWB_fixed_Asm_8
1085    4391982U,	// VLD3LNdWB_register_Asm_16
1086    4523054U,	// VLD3LNdWB_register_Asm_32
1087    2950190U,	// VLD3LNdWB_register_Asm_8
1088    3226043438U,	// VLD3LNq16
1089    0U,	// VLD3LNq16Pseudo
1090    0U,	// VLD3LNq16Pseudo_UPD
1091    3226047534U,	// VLD3LNq16_UPD
1092    3226174510U,	// VLD3LNq32
1093    0U,	// VLD3LNq32Pseudo
1094    0U,	// VLD3LNq32Pseudo_UPD
1095    3226178606U,	// VLD3LNq32_UPD
1096    4355118U,	// VLD3LNqAsm_16
1097    4486190U,	// VLD3LNqAsm_32
1098    4355118U,	// VLD3LNqWB_fixed_Asm_16
1099    4486190U,	// VLD3LNqWB_fixed_Asm_32
1100    4391982U,	// VLD3LNqWB_register_Asm_16
1101    4523054U,	// VLD3LNqWB_register_Asm_32
1102    4785198U,	// VLD3d16
1103    0U,	// VLD3d16Pseudo
1104    0U,	// VLD3d16Pseudo_UPD
1105    4813870U,	// VLD3d16_UPD
1106    4916270U,	// VLD3d32
1107    0U,	// VLD3d32Pseudo
1108    0U,	// VLD3d32Pseudo_UPD
1109    4944942U,	// VLD3d32_UPD
1110    5047342U,	// VLD3d8
1111    0U,	// VLD3d8Pseudo
1112    0U,	// VLD3d8Pseudo_UPD
1113    5076014U,	// VLD3d8_UPD
1114    1430414382U,	// VLD3dAsm_16
1115    1430545454U,	// VLD3dAsm_32
1116    1428972590U,	// VLD3dAsm_8
1117    1430414382U,	// VLD3dWB_fixed_Asm_16
1118    1430545454U,	// VLD3dWB_fixed_Asm_32
1119    1428972590U,	// VLD3dWB_fixed_Asm_8
1120    1430418478U,	// VLD3dWB_register_Asm_16
1121    1430549550U,	// VLD3dWB_register_Asm_32
1122    1428976686U,	// VLD3dWB_register_Asm_8
1123    4785198U,	// VLD3q16
1124    0U,	// VLD3q16Pseudo_UPD
1125    4813870U,	// VLD3q16_UPD
1126    0U,	// VLD3q16oddPseudo
1127    0U,	// VLD3q16oddPseudo_UPD
1128    4916270U,	// VLD3q32
1129    0U,	// VLD3q32Pseudo_UPD
1130    4944942U,	// VLD3q32_UPD
1131    0U,	// VLD3q32oddPseudo
1132    0U,	// VLD3q32oddPseudo_UPD
1133    5047342U,	// VLD3q8
1134    0U,	// VLD3q8Pseudo_UPD
1135    5076014U,	// VLD3q8_UPD
1136    0U,	// VLD3q8oddPseudo
1137    0U,	// VLD3q8oddPseudo_UPD
1138    1531077678U,	// VLD3qAsm_16
1139    1531208750U,	// VLD3qAsm_32
1140    1529635886U,	// VLD3qAsm_8
1141    1531077678U,	// VLD3qWB_fixed_Asm_16
1142    1531208750U,	// VLD3qWB_fixed_Asm_32
1143    1529635886U,	// VLD3qWB_fixed_Asm_8
1144    457339950U,	// VLD3qWB_register_Asm_16
1145    457471022U,	// VLD3qWB_register_Asm_32
1146    455898158U,	// VLD3qWB_register_Asm_8
1147    4760645U,	// VLD4DUPd16
1148    0U,	// VLD4DUPd16Pseudo
1149    0U,	// VLD4DUPd16Pseudo_UPD
1150    4826181U,	// VLD4DUPd16_UPD
1151    4891717U,	// VLD4DUPd32
1152    0U,	// VLD4DUPd32Pseudo
1153    0U,	// VLD4DUPd32Pseudo_UPD
1154    4957253U,	// VLD4DUPd32_UPD
1155    5022789U,	// VLD4DUPd8
1156    0U,	// VLD4DUPd8Pseudo
1157    0U,	// VLD4DUPd8Pseudo_UPD
1158    5088325U,	// VLD4DUPd8_UPD
1159    1547854917U,	// VLD4DUPdAsm_16
1160    1547985989U,	// VLD4DUPdAsm_32
1161    1546413125U,	// VLD4DUPdAsm_8
1162    1547854917U,	// VLD4DUPdWB_fixed_Asm_16
1163    1547985989U,	// VLD4DUPdWB_fixed_Asm_32
1164    1546413125U,	// VLD4DUPdWB_fixed_Asm_8
1165    474117189U,	// VLD4DUPdWB_register_Asm_16
1166    474248261U,	// VLD4DUPdWB_register_Asm_32
1167    472675397U,	// VLD4DUPdWB_register_Asm_8
1168    4760645U,	// VLD4DUPq16
1169    4826181U,	// VLD4DUPq16_UPD
1170    4891717U,	// VLD4DUPq32
1171    4957253U,	// VLD4DUPq32_UPD
1172    5022789U,	// VLD4DUPq8
1173    5088325U,	// VLD4DUPq8_UPD
1174    1564632133U,	// VLD4DUPqAsm_16
1175    1564763205U,	// VLD4DUPqAsm_32
1176    1563190341U,	// VLD4DUPqAsm_8
1177    1564632133U,	// VLD4DUPqWB_fixed_Asm_16
1178    1564763205U,	// VLD4DUPqWB_fixed_Asm_32
1179    1563190341U,	// VLD4DUPqWB_fixed_Asm_8
1180    490894405U,	// VLD4DUPqWB_register_Asm_16
1181    491025477U,	// VLD4DUPqWB_register_Asm_32
1182    489452613U,	// VLD4DUPqWB_register_Asm_8
1183    3226047557U,	// VLD4LNd16
1184    0U,	// VLD4LNd16Pseudo
1185    0U,	// VLD4LNd16Pseudo_UPD
1186    3226055749U,	// VLD4LNd16_UPD
1187    3226178629U,	// VLD4LNd32
1188    0U,	// VLD4LNd32Pseudo
1189    0U,	// VLD4LNd32Pseudo_UPD
1190    3226186821U,	// VLD4LNd32_UPD
1191    3226309701U,	// VLD4LNd8
1192    0U,	// VLD4LNd8Pseudo
1193    0U,	// VLD4LNd8Pseudo_UPD
1194    3226317893U,	// VLD4LNd8_UPD
1195    4355141U,	// VLD4LNdAsm_16
1196    4486213U,	// VLD4LNdAsm_32
1197    2913349U,	// VLD4LNdAsm_8
1198    4355141U,	// VLD4LNdWB_fixed_Asm_16
1199    4486213U,	// VLD4LNdWB_fixed_Asm_32
1200    2913349U,	// VLD4LNdWB_fixed_Asm_8
1201    4392005U,	// VLD4LNdWB_register_Asm_16
1202    4523077U,	// VLD4LNdWB_register_Asm_32
1203    2950213U,	// VLD4LNdWB_register_Asm_8
1204    3226047557U,	// VLD4LNq16
1205    0U,	// VLD4LNq16Pseudo
1206    0U,	// VLD4LNq16Pseudo_UPD
1207    3226055749U,	// VLD4LNq16_UPD
1208    3226178629U,	// VLD4LNq32
1209    0U,	// VLD4LNq32Pseudo
1210    0U,	// VLD4LNq32Pseudo_UPD
1211    3226186821U,	// VLD4LNq32_UPD
1212    4355141U,	// VLD4LNqAsm_16
1213    4486213U,	// VLD4LNqAsm_32
1214    4355141U,	// VLD4LNqWB_fixed_Asm_16
1215    4486213U,	// VLD4LNqWB_fixed_Asm_32
1216    4392005U,	// VLD4LNqWB_register_Asm_16
1217    4523077U,	// VLD4LNqWB_register_Asm_32
1218    4760645U,	// VLD4d16
1219    0U,	// VLD4d16Pseudo
1220    0U,	// VLD4d16Pseudo_UPD
1221    4826181U,	// VLD4d16_UPD
1222    4891717U,	// VLD4d32
1223    0U,	// VLD4d32Pseudo
1224    0U,	// VLD4d32Pseudo_UPD
1225    4957253U,	// VLD4d32_UPD
1226    5022789U,	// VLD4d8
1227    0U,	// VLD4d8Pseudo
1228    0U,	// VLD4d8Pseudo_UPD
1229    5088325U,	// VLD4d8_UPD
1230    1413637189U,	// VLD4dAsm_16
1231    1413768261U,	// VLD4dAsm_32
1232    1412195397U,	// VLD4dAsm_8
1233    1413637189U,	// VLD4dWB_fixed_Asm_16
1234    1413768261U,	// VLD4dWB_fixed_Asm_32
1235    1412195397U,	// VLD4dWB_fixed_Asm_8
1236    1413641285U,	// VLD4dWB_register_Asm_16
1237    1413772357U,	// VLD4dWB_register_Asm_32
1238    1412199493U,	// VLD4dWB_register_Asm_8
1239    4760645U,	// VLD4q16
1240    0U,	// VLD4q16Pseudo_UPD
1241    4826181U,	// VLD4q16_UPD
1242    0U,	// VLD4q16oddPseudo
1243    0U,	// VLD4q16oddPseudo_UPD
1244    4891717U,	// VLD4q32
1245    0U,	// VLD4q32Pseudo_UPD
1246    4957253U,	// VLD4q32_UPD
1247    0U,	// VLD4q32oddPseudo
1248    0U,	// VLD4q32oddPseudo_UPD
1249    5022789U,	// VLD4q8
1250    0U,	// VLD4q8Pseudo_UPD
1251    5088325U,	// VLD4q8_UPD
1252    0U,	// VLD4q8oddPseudo
1253    0U,	// VLD4q8oddPseudo_UPD
1254    1581409349U,	// VLD4qAsm_16
1255    1581540421U,	// VLD4qAsm_32
1256    1579967557U,	// VLD4qAsm_8
1257    1581409349U,	// VLD4qWB_fixed_Asm_16
1258    1581540421U,	// VLD4qWB_fixed_Asm_32
1259    1579967557U,	// VLD4qWB_fixed_Asm_8
1260    507671621U,	// VLD4qWB_register_Asm_16
1261    507802693U,	// VLD4qWB_register_Asm_32
1262    506229829U,	// VLD4qWB_register_Asm_8
1263    33572305U,	// VLDMDDB_UPD
1264    34149U,	// VLDMDIA
1265    33572197U,	// VLDMDIA_UPD
1266    0U,	// VLDMQIA
1267    33572305U,	// VLDMSDB_UPD
1268    34149U,	// VLDMSIA
1269    33572197U,	// VLDMSIA_UPD
1270    27002U,	// VLDRD
1271    27002U,	// VLDRS
1272    33706566U,	// VMAXNMD
1273    33706258U,	// VMAXNMND
1274    33706258U,	// VMAXNMNQ
1275    33706258U,	// VMAXNMS
1276    2249091875U,	// VMAXfd
1277    2249091875U,	// VMAXfq
1278    35416867U,	// VMAXsv16i8
1279    35154723U,	// VMAXsv2i32
1280    35285795U,	// VMAXsv4i16
1281    35154723U,	// VMAXsv4i32
1282    35285795U,	// VMAXsv8i16
1283    35416867U,	// VMAXsv8i8
1284    35810083U,	// VMAXuv16i8
1285    35547939U,	// VMAXuv2i32
1286    35679011U,	// VMAXuv4i16
1287    35547939U,	// VMAXuv4i32
1288    35679011U,	// VMAXuv8i16
1289    35810083U,	// VMAXuv8i8
1290    33706554U,	// VMINNMD
1291    33706246U,	// VMINNMND
1292    33706246U,	// VMINNMNQ
1293    33706246U,	// VMINNMS
1294    2249091298U,	// VMINfd
1295    2249091298U,	// VMINfq
1296    35416290U,	// VMINsv16i8
1297    35154146U,	// VMINsv2i32
1298    35285218U,	// VMINsv4i16
1299    35154146U,	// VMINsv4i32
1300    35285218U,	// VMINsv8i16
1301    35416290U,	// VMINsv8i8
1302    35809506U,	// VMINuv16i8
1303    35547362U,	// VMINuv2i32
1304    35678434U,	// VMINuv4i16
1305    35547362U,	// VMINuv4i32
1306    35678434U,	// VMINuv8i16
1307    35809506U,	// VMINuv8i8
1308    3322705285U,	// VMLAD
1309    18417694U,	// VMLALslsv2i32
1310    18548766U,	// VMLALslsv4i16
1311    18810910U,	// VMLALsluv2i32
1312    18941982U,	// VMLALsluv4i16
1313    18380830U,	// VMLALsv2i64
1314    18511902U,	// VMLALsv4i32
1315    18642974U,	// VMLALsv8i16
1316    18774046U,	// VMLALuv2i64
1317    18905118U,	// VMLALuv4i32
1318    19036190U,	// VMLALuv8i16
1319    3322836357U,	// VMLAS
1320    3322836357U,	// VMLAfd
1321    3322836357U,	// VMLAfq
1322    3322873221U,	// VMLAslfd
1323    3322873221U,	// VMLAslfq
1324    19334533U,	// VMLAslv2i32
1325    19465605U,	// VMLAslv4i16
1326    19334533U,	// VMLAslv4i32
1327    19465605U,	// VMLAslv8i16
1328    19559813U,	// VMLAv16i8
1329    19297669U,	// VMLAv2i32
1330    19428741U,	// VMLAv4i16
1331    19297669U,	// VMLAv4i32
1332    19428741U,	// VMLAv8i16
1333    19559813U,	// VMLAv8i8
1334    3322706407U,	// VMLSD
1335    18417813U,	// VMLSLslsv2i32
1336    18548885U,	// VMLSLslsv4i16
1337    18811029U,	// VMLSLsluv2i32
1338    18942101U,	// VMLSLsluv4i16
1339    18380949U,	// VMLSLsv2i64
1340    18512021U,	// VMLSLsv4i32
1341    18643093U,	// VMLSLsv8i16
1342    18774165U,	// VMLSLuv2i64
1343    18905237U,	// VMLSLuv4i32
1344    19036309U,	// VMLSLuv8i16
1345    3322837479U,	// VMLSS
1346    3322837479U,	// VMLSfd
1347    3322837479U,	// VMLSfq
1348    3322874343U,	// VMLSslfd
1349    3322874343U,	// VMLSslfq
1350    19335655U,	// VMLSslv2i32
1351    19466727U,	// VMLSslv4i16
1352    19335655U,	// VMLSslv4i32
1353    19466727U,	// VMLSslv8i16
1354    19560935U,	// VMLSv16i8
1355    19298791U,	// VMLSv2i32
1356    19429863U,	// VMLSv4i16
1357    19298791U,	// VMLSv4i32
1358    19429863U,	// VMLSv8i16
1359    19560935U,	// VMLSv8i8
1360    2248952562U,	// VMOVD
1361    0U,	// VMOVD0
1362    27378U,	// VMOVDRR
1363    0U,	// VMOVDcc
1364    1108887728U,	// VMOVLsv2i64
1365    1109018800U,	// VMOVLsv4i32
1366    1109149872U,	// VMOVLsv8i16
1367    1109280944U,	// VMOVLuv2i64
1368    1109412016U,	// VMOVLuv4i32
1369    1109543088U,	// VMOVLuv8i16
1370    1109674294U,	// VMOVNv2i32
1371    1109805366U,	// VMOVNv4i16
1372    1109936438U,	// VMOVNv8i8
1373    0U,	// VMOVQ0
1374    27378U,	// VMOVRRD
1375    31474U,	// VMOVRRS
1376    19186U,	// VMOVRS
1377    2249083634U,	// VMOVS
1378    19186U,	// VMOVSR
1379    31474U,	// VMOVSRR
1380    0U,	// VMOVScc
1381    237652722U,	// VMOVv16i8
1382    237259506U,	// VMOVv1i64
1383    3322825458U,	// VMOVv2f32
1384    237390578U,	// VMOVv2i32
1385    237259506U,	// VMOVv2i64
1386    3322825458U,	// VMOVv4f32
1387    237521650U,	// VMOVv4i16
1388    237390578U,	// VMOVv4i32
1389    237521650U,	// VMOVv8i16
1390    237652722U,	// VMOVv8i8
1391    2147518974U,	// VMRS
1392    3221260798U,	// VMRS_FPEXC
1393    35326U,	// VMRS_FPINST
1394    1073777150U,	// VMRS_FPINST2
1395    2147518974U,	// VMRS_FPSID
1396    3221260798U,	// VMRS_MVFR0
1397    35326U,	// VMRS_MVFR1
1398    1073777150U,	// VMRS_MVFR2
1399    5147055U,	// VMSR
1400    5278127U,	// VMSR_FPEXC
1401    5409199U,	// VMSR_FPINST
1402    5540271U,	// VMSR_FPINST2
1403    5671343U,	// VMSR_FPSID
1404    2248960171U,	// VMULD
1405    33706650U,	// VMULLp64
1406    5793922U,	// VMULLp8
1407    35158146U,	// VMULLslsv2i32
1408    35289218U,	// VMULLslsv4i16
1409    35551362U,	// VMULLsluv2i32
1410    35682434U,	// VMULLsluv4i16
1411    35154050U,	// VMULLsv2i64
1412    35285122U,	// VMULLsv4i32
1413    35416194U,	// VMULLsv8i16
1414    35547266U,	// VMULLuv2i64
1415    35678338U,	// VMULLuv4i32
1416    35809410U,	// VMULLuv8i16
1417    2249091243U,	// VMULS
1418    2249091243U,	// VMULfd
1419    2249091243U,	// VMULfq
1420    5793963U,	// VMULpd
1421    5793963U,	// VMULpq
1422    2249095339U,	// VMULslfd
1423    2249095339U,	// VMULslfq
1424    36075691U,	// VMULslv2i32
1425    36206763U,	// VMULslv4i16
1426    36075691U,	// VMULslv4i32
1427    36206763U,	// VMULslv8i16
1428    36333739U,	// VMULv16i8
1429    36071595U,	// VMULv2i32
1430    36202667U,	// VMULv4i16
1431    36071595U,	// VMULv4i32
1432    36202667U,	// VMULv8i16
1433    36333739U,	// VMULv8i8
1434    18730U,	// VMVNd
1435    18730U,	// VMVNq
1436    237390122U,	// VMVNv2i32
1437    237521194U,	// VMVNv4i16
1438    237390122U,	// VMVNv4i32
1439    237521194U,	// VMVNv8i16
1440    2248951652U,	// VNEGD
1441    2249082724U,	// VNEGS
1442    2249082724U,	// VNEGf32q
1443    2249082724U,	// VNEGfd
1444    1109018468U,	// VNEGs16d
1445    1109018468U,	// VNEGs16q
1446    1108887396U,	// VNEGs32d
1447    1108887396U,	// VNEGs32q
1448    1109149540U,	// VNEGs8d
1449    1109149540U,	// VNEGs8q
1450    3322705279U,	// VNMLAD
1451    3322836351U,	// VNMLAS
1452    3322706401U,	// VNMLSD
1453    3322837473U,	// VNMLSS
1454    2248960165U,	// VNMULD
1455    2249091237U,	// VNMULS
1456    26887U,	// VORNd
1457    26887U,	// VORNq
1458    27039U,	// VORRd
1459    237398431U,	// VORRiv2i32
1460    237529503U,	// VORRiv4i16
1461    237398431U,	// VORRiv4i32
1462    237529503U,	// VORRiv8i16
1463    27039U,	// VORRq
1464    1092380675U,	// VPADALsv16i8
1465    1092118531U,	// VPADALsv2i32
1466    1092249603U,	// VPADALsv4i16
1467    1092118531U,	// VPADALsv4i32
1468    1092249603U,	// VPADALsv8i16
1469    1092380675U,	// VPADALsv8i8
1470    1092773891U,	// VPADALuv16i8
1471    1092511747U,	// VPADALuv2i32
1472    1092642819U,	// VPADALuv4i16
1473    1092511747U,	// VPADALuv4i32
1474    1092642819U,	// VPADALuv8i16
1475    1092773891U,	// VPADALuv8i8
1476    1109149759U,	// VPADDLsv16i8
1477    1108887615U,	// VPADDLsv2i32
1478    1109018687U,	// VPADDLsv4i16
1479    1108887615U,	// VPADDLsv4i32
1480    1109018687U,	// VPADDLsv8i16
1481    1109149759U,	// VPADDLsv8i8
1482    1109542975U,	// VPADDLuv16i8
1483    1109280831U,	// VPADDLuv2i32
1484    1109411903U,	// VPADDLuv4i16
1485    1109280831U,	// VPADDLuv4i32
1486    1109411903U,	// VPADDLuv8i16
1487    1109542975U,	// VPADDLuv8i8
1488    2249090774U,	// VPADDf
1489    36202198U,	// VPADDi16
1490    36071126U,	// VPADDi32
1491    36333270U,	// VPADDi8
1492    2249091869U,	// VPMAXf
1493    35285789U,	// VPMAXs16
1494    35154717U,	// VPMAXs32
1495    35416861U,	// VPMAXs8
1496    35679005U,	// VPMAXu16
1497    35547933U,	// VPMAXu32
1498    35810077U,	// VPMAXu8
1499    2249091292U,	// VPMINf
1500    35285212U,	// VPMINs16
1501    35154140U,	// VPMINs32
1502    35416284U,	// VPMINs8
1503    35678428U,	// VPMINu16
1504    35547356U,	// VPMINu32
1505    35809500U,	// VPMINu8
1506    1109150150U,	// VQABSv16i8
1507    1108888006U,	// VQABSv2i32
1508    1109019078U,	// VQABSv4i16
1509    1108888006U,	// VQABSv4i32
1510    1109019078U,	// VQABSv8i16
1511    1109150150U,	// VQABSv8i8
1512    35415772U,	// VQADDsv16i8
1513    39479004U,	// VQADDsv1i64
1514    35153628U,	// VQADDsv2i32
1515    39479004U,	// VQADDsv2i64
1516    35284700U,	// VQADDsv4i16
1517    35153628U,	// VQADDsv4i32
1518    35284700U,	// VQADDsv8i16
1519    35415772U,	// VQADDsv8i8
1520    35808988U,	// VQADDuv16i8
1521    39610076U,	// VQADDuv1i64
1522    35546844U,	// VQADDuv2i32
1523    39610076U,	// VQADDuv2i64
1524    35677916U,	// VQADDuv4i16
1525    35546844U,	// VQADDuv4i32
1526    35677916U,	// VQADDuv8i16
1527    35808988U,	// VQADDuv8i8
1528    18417674U,	// VQDMLALslv2i32
1529    18548746U,	// VQDMLALslv4i16
1530    18380810U,	// VQDMLALv2i64
1531    18511882U,	// VQDMLALv4i32
1532    18417805U,	// VQDMLSLslv2i32
1533    18548877U,	// VQDMLSLslv4i16
1534    18380941U,	// VQDMLSLv2i64
1535    18512013U,	// VQDMLSLv4i32
1536    35157891U,	// VQDMULHslv2i32
1537    35288963U,	// VQDMULHslv4i16
1538    35157891U,	// VQDMULHslv4i32
1539    35288963U,	// VQDMULHslv8i16
1540    35153795U,	// VQDMULHv2i32
1541    35284867U,	// VQDMULHv4i16
1542    35153795U,	// VQDMULHv4i32
1543    35284867U,	// VQDMULHv8i16
1544    35158126U,	// VQDMULLslv2i32
1545    35289198U,	// VQDMULLslv4i16
1546    35154030U,	// VQDMULLv2i64
1547    35285102U,	// VQDMULLv4i32
1548    1113213218U,	// VQMOVNsuv2i32
1549    1108887842U,	// VQMOVNsuv4i16
1550    1109018914U,	// VQMOVNsuv8i8
1551    1113213231U,	// VQMOVNsv2i32
1552    1108887855U,	// VQMOVNsv4i16
1553    1109018927U,	// VQMOVNsv8i8
1554    1113344303U,	// VQMOVNuv2i32
1555    1109281071U,	// VQMOVNuv4i16
1556    1109412143U,	// VQMOVNuv8i8
1557    1109149534U,	// VQNEGv16i8
1558    1108887390U,	// VQNEGv2i32
1559    1109018462U,	// VQNEGv4i16
1560    1108887390U,	// VQNEGv4i32
1561    1109018462U,	// VQNEGv8i16
1562    1109149534U,	// VQNEGv8i8
1563    35157899U,	// VQRDMULHslv2i32
1564    35288971U,	// VQRDMULHslv4i16
1565    35157899U,	// VQRDMULHslv4i32
1566    35288971U,	// VQRDMULHslv8i16
1567    35153803U,	// VQRDMULHv2i32
1568    35284875U,	// VQRDMULHv4i16
1569    35153803U,	// VQRDMULHv4i32
1570    35284875U,	// VQRDMULHv8i16
1571    35416150U,	// VQRSHLsv16i8
1572    39479382U,	// VQRSHLsv1i64
1573    35154006U,	// VQRSHLsv2i32
1574    39479382U,	// VQRSHLsv2i64
1575    35285078U,	// VQRSHLsv4i16
1576    35154006U,	// VQRSHLsv4i32
1577    35285078U,	// VQRSHLsv8i16
1578    35416150U,	// VQRSHLsv8i8
1579    35809366U,	// VQRSHLuv16i8
1580    39610454U,	// VQRSHLuv1i64
1581    35547222U,	// VQRSHLuv2i32
1582    39610454U,	// VQRSHLuv2i64
1583    35678294U,	// VQRSHLuv4i16
1584    35547222U,	// VQRSHLuv4i32
1585    35678294U,	// VQRSHLuv8i16
1586    35809366U,	// VQRSHLuv8i8
1587    39479538U,	// VQRSHRNsv2i32
1588    35154162U,	// VQRSHRNsv4i16
1589    35285234U,	// VQRSHRNsv8i8
1590    39610610U,	// VQRSHRNuv2i32
1591    35547378U,	// VQRSHRNuv4i16
1592    35678450U,	// VQRSHRNuv8i8
1593    39479577U,	// VQRSHRUNv2i32
1594    35154201U,	// VQRSHRUNv4i16
1595    35285273U,	// VQRSHRUNv8i8
1596    35416144U,	// VQSHLsiv16i8
1597    39479376U,	// VQSHLsiv1i64
1598    35154000U,	// VQSHLsiv2i32
1599    39479376U,	// VQSHLsiv2i64
1600    35285072U,	// VQSHLsiv4i16
1601    35154000U,	// VQSHLsiv4i32
1602    35285072U,	// VQSHLsiv8i16
1603    35416144U,	// VQSHLsiv8i8
1604    35416792U,	// VQSHLsuv16i8
1605    39480024U,	// VQSHLsuv1i64
1606    35154648U,	// VQSHLsuv2i32
1607    39480024U,	// VQSHLsuv2i64
1608    35285720U,	// VQSHLsuv4i16
1609    35154648U,	// VQSHLsuv4i32
1610    35285720U,	// VQSHLsuv8i16
1611    35416792U,	// VQSHLsuv8i8
1612    35416144U,	// VQSHLsv16i8
1613    39479376U,	// VQSHLsv1i64
1614    35154000U,	// VQSHLsv2i32
1615    39479376U,	// VQSHLsv2i64
1616    35285072U,	// VQSHLsv4i16
1617    35154000U,	// VQSHLsv4i32
1618    35285072U,	// VQSHLsv8i16
1619    35416144U,	// VQSHLsv8i8
1620    35809360U,	// VQSHLuiv16i8
1621    39610448U,	// VQSHLuiv1i64
1622    35547216U,	// VQSHLuiv2i32
1623    39610448U,	// VQSHLuiv2i64
1624    35678288U,	// VQSHLuiv4i16
1625    35547216U,	// VQSHLuiv4i32
1626    35678288U,	// VQSHLuiv8i16
1627    35809360U,	// VQSHLuiv8i8
1628    35809360U,	// VQSHLuv16i8
1629    39610448U,	// VQSHLuv1i64
1630    35547216U,	// VQSHLuv2i32
1631    39610448U,	// VQSHLuv2i64
1632    35678288U,	// VQSHLuv4i16
1633    35547216U,	// VQSHLuv4i32
1634    35678288U,	// VQSHLuv8i16
1635    35809360U,	// VQSHLuv8i8
1636    39479531U,	// VQSHRNsv2i32
1637    35154155U,	// VQSHRNsv4i16
1638    35285227U,	// VQSHRNsv8i8
1639    39610603U,	// VQSHRNuv2i32
1640    35547371U,	// VQSHRNuv4i16
1641    35678443U,	// VQSHRNuv8i8
1642    39479569U,	// VQSHRUNv2i32
1643    35154193U,	// VQSHRUNv4i16
1644    35285265U,	// VQSHRUNv8i8
1645    35415631U,	// VQSUBsv16i8
1646    39478863U,	// VQSUBsv1i64
1647    35153487U,	// VQSUBsv2i32
1648    39478863U,	// VQSUBsv2i64
1649    35284559U,	// VQSUBsv4i16
1650    35153487U,	// VQSUBsv4i32
1651    35284559U,	// VQSUBsv8i16
1652    35415631U,	// VQSUBsv8i8
1653    35808847U,	// VQSUBuv16i8
1654    39609935U,	// VQSUBuv1i64
1655    35546703U,	// VQSUBuv2i32
1656    39609935U,	// VQSUBuv2i64
1657    35677775U,	// VQSUBuv4i16
1658    35546703U,	// VQSUBuv4i32
1659    35677775U,	// VQSUBuv8i16
1660    35808847U,	// VQSUBuv8i8
1661    35940557U,	// VRADDHNv2i32
1662    36071629U,	// VRADDHNv4i16
1663    36202701U,	// VRADDHNv8i8
1664    1109280576U,	// VRECPEd
1665    2249082688U,	// VRECPEfd
1666    2249082688U,	// VRECPEfq
1667    1109280576U,	// VRECPEq
1668    2249091575U,	// VRECPSfd
1669    2249091575U,	// VRECPSfq
1670    2901191U,	// VREV16d8
1671    2901191U,	// VREV16q8
1672    4342770U,	// VREV32d16
1673    2900978U,	// VREV32d8
1674    4342770U,	// VREV32q16
1675    2900978U,	// VREV32q8
1676    4342846U,	// VREV64d16
1677    4473918U,	// VREV64d32
1678    2901054U,	// VREV64d8
1679    4342846U,	// VREV64q16
1680    4473918U,	// VREV64q32
1681    2901054U,	// VREV64q8
1682    35415753U,	// VRHADDsv16i8
1683    35153609U,	// VRHADDsv2i32
1684    35284681U,	// VRHADDsv4i16
1685    35153609U,	// VRHADDsv4i32
1686    35284681U,	// VRHADDsv8i16
1687    35415753U,	// VRHADDsv8i8
1688    35808969U,	// VRHADDuv16i8
1689    35546825U,	// VRHADDuv2i32
1690    35677897U,	// VRHADDuv4i16
1691    35546825U,	// VRHADDuv4i32
1692    35677897U,	// VRHADDuv8i16
1693    35808969U,	// VRHADDuv8i8
1694    1107448354U,	// VRINTAD
1695    1107448046U,	// VRINTAND
1696    1107448046U,	// VRINTANQ
1697    1107448046U,	// VRINTAS
1698    1107448402U,	// VRINTMD
1699    1107448094U,	// VRINTMND
1700    1107448094U,	// VRINTMNQ
1701    1107448094U,	// VRINTMS
1702    1107448414U,	// VRINTND
1703    1107448106U,	// VRINTNND
1704    1107448106U,	// VRINTNNQ
1705    1107448106U,	// VRINTNS
1706    1107448426U,	// VRINTPD
1707    1107448118U,	// VRINTPND
1708    1107448118U,	// VRINTPNQ
1709    1107448118U,	// VRINTPS
1710    2248952244U,	// VRINTRD
1711    2249083316U,	// VRINTRS
1712    2248952785U,	// VRINTXD
1713    1107448166U,	// VRINTXND
1714    1107448166U,	// VRINTXNQ
1715    2249083857U,	// VRINTXS
1716    2248952797U,	// VRINTZD
1717    1107448178U,	// VRINTZND
1718    1107448178U,	// VRINTZNQ
1719    2249083869U,	// VRINTZS
1720    35416157U,	// VRSHLsv16i8
1721    39479389U,	// VRSHLsv1i64
1722    35154013U,	// VRSHLsv2i32
1723    39479389U,	// VRSHLsv2i64
1724    35285085U,	// VRSHLsv4i16
1725    35154013U,	// VRSHLsv4i32
1726    35285085U,	// VRSHLsv8i16
1727    35416157U,	// VRSHLsv8i8
1728    35809373U,	// VRSHLuv16i8
1729    39610461U,	// VRSHLuv1i64
1730    35547229U,	// VRSHLuv2i32
1731    39610461U,	// VRSHLuv2i64
1732    35678301U,	// VRSHLuv4i16
1733    35547229U,	// VRSHLuv4i32
1734    35678301U,	// VRSHLuv8i16
1735    35809373U,	// VRSHLuv8i8
1736    35940602U,	// VRSHRNv2i32
1737    36071674U,	// VRSHRNv4i16
1738    36202746U,	// VRSHRNv8i8
1739    35416447U,	// VRSHRsv16i8
1740    39479679U,	// VRSHRsv1i64
1741    35154303U,	// VRSHRsv2i32
1742    39479679U,	// VRSHRsv2i64
1743    35285375U,	// VRSHRsv4i16
1744    35154303U,	// VRSHRsv4i32
1745    35285375U,	// VRSHRsv8i16
1746    35416447U,	// VRSHRsv8i8
1747    35809663U,	// VRSHRuv16i8
1748    39610751U,	// VRSHRuv1i64
1749    35547519U,	// VRSHRuv2i32
1750    39610751U,	// VRSHRuv2i64
1751    35678591U,	// VRSHRuv4i16
1752    35547519U,	// VRSHRuv4i32
1753    35678591U,	// VRSHRuv8i16
1754    35809663U,	// VRSHRuv8i8
1755    1109280589U,	// VRSQRTEd
1756    2249082701U,	// VRSQRTEfd
1757    2249082701U,	// VRSQRTEfq
1758    1109280589U,	// VRSQRTEq
1759    2249091597U,	// VRSQRTSfd
1760    2249091597U,	// VRSQRTSfq
1761    18642325U,	// VRSRAsv16i8
1762    22705557U,	// VRSRAsv1i64
1763    18380181U,	// VRSRAsv2i32
1764    22705557U,	// VRSRAsv2i64
1765    18511253U,	// VRSRAsv4i16
1766    18380181U,	// VRSRAsv4i32
1767    18511253U,	// VRSRAsv8i16
1768    18642325U,	// VRSRAsv8i8
1769    19035541U,	// VRSRAuv16i8
1770    22836629U,	// VRSRAuv1i64
1771    18773397U,	// VRSRAuv2i32
1772    22836629U,	// VRSRAuv2i64
1773    18904469U,	// VRSRAuv4i16
1774    18773397U,	// VRSRAuv4i32
1775    18904469U,	// VRSRAuv8i16
1776    19035541U,	// VRSRAuv8i8
1777    35940542U,	// VRSUBHNv2i32
1778    36071614U,	// VRSUBHNv4i16
1779    36202686U,	// VRSUBHNv8i8
1780    33706614U,	// VSELEQD
1781    33706306U,	// VSELEQS
1782    33706542U,	// VSELGED
1783    33706234U,	// VSELGES
1784    33706638U,	// VSELGTD
1785    33706330U,	// VSELGTS
1786    33706626U,	// VSELVSD
1787    33706318U,	// VSELVSS
1788    2151840498U,	// VSETLNi16
1789    2151971570U,	// VSETLNi32
1790    2150398706U,	// VSETLNi8
1791    36202600U,	// VSHLLi16
1792    36071528U,	// VSHLLi32
1793    36333672U,	// VSHLLi8
1794    35154024U,	// VSHLLsv2i64
1795    35285096U,	// VSHLLsv4i32
1796    35416168U,	// VSHLLsv8i16
1797    35547240U,	// VSHLLuv2i64
1798    35678312U,	// VSHLLuv4i32
1799    35809384U,	// VSHLLuv8i16
1800    36333667U,	// VSHLiv16i8
1801    35940451U,	// VSHLiv1i64
1802    36071523U,	// VSHLiv2i32
1803    35940451U,	// VSHLiv2i64
1804    36202595U,	// VSHLiv4i16
1805    36071523U,	// VSHLiv4i32
1806    36202595U,	// VSHLiv8i16
1807    36333667U,	// VSHLiv8i8
1808    35416163U,	// VSHLsv16i8
1809    39479395U,	// VSHLsv1i64
1810    35154019U,	// VSHLsv2i32
1811    39479395U,	// VSHLsv2i64
1812    35285091U,	// VSHLsv4i16
1813    35154019U,	// VSHLsv4i32
1814    35285091U,	// VSHLsv8i16
1815    35416163U,	// VSHLsv8i8
1816    35809379U,	// VSHLuv16i8
1817    39610467U,	// VSHLuv1i64
1818    35547235U,	// VSHLuv2i32
1819    39610467U,	// VSHLuv2i64
1820    35678307U,	// VSHLuv4i16
1821    35547235U,	// VSHLuv4i32
1822    35678307U,	// VSHLuv8i16
1823    35809379U,	// VSHLuv8i8
1824    35940609U,	// VSHRNv2i32
1825    36071681U,	// VSHRNv4i16
1826    36202753U,	// VSHRNv8i8
1827    35416453U,	// VSHRsv16i8
1828    39479685U,	// VSHRsv1i64
1829    35154309U,	// VSHRsv2i32
1830    39479685U,	// VSHRsv2i64
1831    35285381U,	// VSHRsv4i16
1832    35154309U,	// VSHRsv4i32
1833    35285381U,	// VSHRsv8i16
1834    35416453U,	// VSHRsv8i8
1835    35809669U,	// VSHRuv16i8
1836    39610757U,	// VSHRuv1i64
1837    35547525U,	// VSHRuv2i32
1838    39610757U,	// VSHRuv2i64
1839    35678597U,	// VSHRuv4i16
1840    35547525U,	// VSHRuv4i32
1841    35678597U,	// VSHRuv8i16
1842    35809669U,	// VSHRuv8i8
1843    6187707U,	// VSHTOD
1844    6318779U,	// VSHTOS
1845    274877115U,	// VSITOD
1846    272517819U,	// VSITOS
1847    2914269U,	// VSLIv16i8
1848    4618205U,	// VSLIv1i64
1849    4487133U,	// VSLIv2i32
1850    4618205U,	// VSLIv2i64
1851    4356061U,	// VSLIv4i16
1852    4487133U,	// VSLIv4i32
1853    4356061U,	// VSLIv8i16
1854    2914269U,	// VSLIv8i8
1855    3328338619U,	// VSLTOD
1856    3325979323U,	// VSLTOS
1857    2248952463U,	// VSQRTD
1858    2249083535U,	// VSQRTS
1859    18642331U,	// VSRAsv16i8
1860    22705563U,	// VSRAsv1i64
1861    18380187U,	// VSRAsv2i32
1862    22705563U,	// VSRAsv2i64
1863    18511259U,	// VSRAsv4i16
1864    18380187U,	// VSRAsv4i32
1865    18511259U,	// VSRAsv8i16
1866    18642331U,	// VSRAsv8i8
1867    19035547U,	// VSRAuv16i8
1868    22836635U,	// VSRAuv1i64
1869    18773403U,	// VSRAuv2i32
1870    22836635U,	// VSRAuv2i64
1871    18904475U,	// VSRAuv4i16
1872    18773403U,	// VSRAuv4i32
1873    18904475U,	// VSRAuv8i16
1874    19035547U,	// VSRAuv8i8
1875    2914274U,	// VSRIv16i8
1876    4618210U,	// VSRIv1i64
1877    4487138U,	// VSRIv2i32
1878    4618210U,	// VSRIv2i64
1879    4356066U,	// VSRIv4i16
1880    4487138U,	// VSRIv4i32
1881    4356066U,	// VSRIv8i16
1882    2914274U,	// VSRIv8i8
1883    3242750957U,	// VST1LNd16
1884    3746079725U,	// VST1LNd16_UPD
1885    3242882029U,	// VST1LNd32
1886    3746210797U,	// VST1LNd32_UPD
1887    3243013101U,	// VST1LNd8
1888    3746341869U,	// VST1LNd8_UPD
1889    4355053U,	// VST1LNdAsm_16
1890    4486125U,	// VST1LNdAsm_32
1891    2913261U,	// VST1LNdAsm_8
1892    4355053U,	// VST1LNdWB_fixed_Asm_16
1893    4486125U,	// VST1LNdWB_fixed_Asm_32
1894    2913261U,	// VST1LNdWB_fixed_Asm_8
1895    4391917U,	// VST1LNdWB_register_Asm_16
1896    4522989U,	// VST1LNdWB_register_Asm_32
1897    2950125U,	// VST1LNdWB_register_Asm_8
1898    0U,	// VST1LNq16Pseudo
1899    0U,	// VST1LNq16Pseudo_UPD
1900    0U,	// VST1LNq32Pseudo
1901    0U,	// VST1LNq32Pseudo_UPD
1902    0U,	// VST1LNq8Pseudo
1903    0U,	// VST1LNq8Pseudo_UPD
1904    541221869U,	// VST1d16
1905    557999085U,	// VST1d16Q
1906    574780397U,	// VST1d16Qwb_fixed
1907    591594477U,	// VST1d16Qwb_register
1908    608330733U,	// VST1d16T
1909    625112045U,	// VST1d16Twb_fixed
1910    641926125U,	// VST1d16Twb_register
1911    658666477U,	// VST1d16wb_fixed
1912    675480557U,	// VST1d16wb_register
1913    541352941U,	// VST1d32
1914    558130157U,	// VST1d32Q
1915    574911469U,	// VST1d32Qwb_fixed
1916    591725549U,	// VST1d32Qwb_register
1917    608461805U,	// VST1d32T
1918    625243117U,	// VST1d32Twb_fixed
1919    642057197U,	// VST1d32Twb_register
1920    658797549U,	// VST1d32wb_fixed
1921    675611629U,	// VST1d32wb_register
1922    541484013U,	// VST1d64
1923    558261229U,	// VST1d64Q
1924    0U,	// VST1d64QPseudo
1925    0U,	// VST1d64QPseudoWB_fixed
1926    0U,	// VST1d64QPseudoWB_register
1927    575042541U,	// VST1d64Qwb_fixed
1928    591856621U,	// VST1d64Qwb_register
1929    608592877U,	// VST1d64T
1930    0U,	// VST1d64TPseudo
1931    0U,	// VST1d64TPseudoWB_fixed
1932    0U,	// VST1d64TPseudoWB_register
1933    625374189U,	// VST1d64Twb_fixed
1934    642188269U,	// VST1d64Twb_register
1935    658928621U,	// VST1d64wb_fixed
1936    675742701U,	// VST1d64wb_register
1937    539780077U,	// VST1d8
1938    556557293U,	// VST1d8Q
1939    573338605U,	// VST1d8Qwb_fixed
1940    590152685U,	// VST1d8Qwb_register
1941    606888941U,	// VST1d8T
1942    623670253U,	// VST1d8Twb_fixed
1943    640484333U,	// VST1d8Twb_register
1944    657224685U,	// VST1d8wb_fixed
1945    674038765U,	// VST1d8wb_register
1946    692216813U,	// VST1q16
1947    708998125U,	// VST1q16wb_fixed
1948    725812205U,	// VST1q16wb_register
1949    692347885U,	// VST1q32
1950    709129197U,	// VST1q32wb_fixed
1951    725943277U,	// VST1q32wb_register
1952    692478957U,	// VST1q64
1953    709260269U,	// VST1q64wb_fixed
1954    726074349U,	// VST1q64wb_register
1955    690775021U,	// VST1q8
1956    707556333U,	// VST1q8wb_fixed
1957    724370413U,	// VST1q8wb_register
1958    3242787881U,	// VST2LNd16
1959    0U,	// VST2LNd16Pseudo
1960    0U,	// VST2LNd16Pseudo_UPD
1961    3746133033U,	// VST2LNd16_UPD
1962    3242918953U,	// VST2LNd32
1963    0U,	// VST2LNd32Pseudo
1964    0U,	// VST2LNd32Pseudo_UPD
1965    3746264105U,	// VST2LNd32_UPD
1966    3243050025U,	// VST2LNd8
1967    0U,	// VST2LNd8Pseudo
1968    0U,	// VST2LNd8Pseudo_UPD
1969    3746395177U,	// VST2LNd8_UPD
1970    4355113U,	// VST2LNdAsm_16
1971    4486185U,	// VST2LNdAsm_32
1972    2913321U,	// VST2LNdAsm_8
1973    4355113U,	// VST2LNdWB_fixed_Asm_16
1974    4486185U,	// VST2LNdWB_fixed_Asm_32
1975    2913321U,	// VST2LNdWB_fixed_Asm_8
1976    4391977U,	// VST2LNdWB_register_Asm_16
1977    4523049U,	// VST2LNdWB_register_Asm_32
1978    2950185U,	// VST2LNdWB_register_Asm_8
1979    3242787881U,	// VST2LNq16
1980    0U,	// VST2LNq16Pseudo
1981    0U,	// VST2LNq16Pseudo_UPD
1982    3746133033U,	// VST2LNq16_UPD
1983    3242918953U,	// VST2LNq32
1984    0U,	// VST2LNq32Pseudo
1985    0U,	// VST2LNq32Pseudo_UPD
1986    3746264105U,	// VST2LNq32_UPD
1987    4355113U,	// VST2LNqAsm_16
1988    4486185U,	// VST2LNqAsm_32
1989    4355113U,	// VST2LNqWB_fixed_Asm_16
1990    4486185U,	// VST2LNqWB_fixed_Asm_32
1991    4391977U,	// VST2LNqWB_register_Asm_16
1992    4523049U,	// VST2LNqWB_register_Asm_32
1993    742548521U,	// VST2b16
1994    759329833U,	// VST2b16wb_fixed
1995    776143913U,	// VST2b16wb_register
1996    742679593U,	// VST2b32
1997    759460905U,	// VST2b32wb_fixed
1998    776274985U,	// VST2b32wb_register
1999    741106729U,	// VST2b8
2000    757888041U,	// VST2b8wb_fixed
2001    774702121U,	// VST2b8wb_register
2002    692216873U,	// VST2d16
2003    708998185U,	// VST2d16wb_fixed
2004    725812265U,	// VST2d16wb_register
2005    692347945U,	// VST2d32
2006    709129257U,	// VST2d32wb_fixed
2007    725943337U,	// VST2d32wb_register
2008    690775081U,	// VST2d8
2009    707556393U,	// VST2d8wb_fixed
2010    724370473U,	// VST2d8wb_register
2011    557999145U,	// VST2q16
2012    0U,	// VST2q16Pseudo
2013    0U,	// VST2q16PseudoWB_fixed
2014    0U,	// VST2q16PseudoWB_register
2015    574780457U,	// VST2q16wb_fixed
2016    591594537U,	// VST2q16wb_register
2017    558130217U,	// VST2q32
2018    0U,	// VST2q32Pseudo
2019    0U,	// VST2q32PseudoWB_fixed
2020    0U,	// VST2q32PseudoWB_register
2021    574911529U,	// VST2q32wb_fixed
2022    591725609U,	// VST2q32wb_register
2023    556557353U,	// VST2q8
2024    0U,	// VST2q8Pseudo
2025    0U,	// VST2q8PseudoWB_fixed
2026    0U,	// VST2q8PseudoWB_register
2027    573338665U,	// VST2q8wb_fixed
2028    590152745U,	// VST2q8wb_register
2029    3242763321U,	// VST3LNd16
2030    0U,	// VST3LNd16Pseudo
2031    0U,	// VST3LNd16Pseudo_UPD
2032    3746145337U,	// VST3LNd16_UPD
2033    3242894393U,	// VST3LNd32
2034    0U,	// VST3LNd32Pseudo
2035    0U,	// VST3LNd32Pseudo_UPD
2036    3746276409U,	// VST3LNd32_UPD
2037    3243025465U,	// VST3LNd8
2038    0U,	// VST3LNd8Pseudo
2039    0U,	// VST3LNd8Pseudo_UPD
2040    3746407481U,	// VST3LNd8_UPD
2041    4355129U,	// VST3LNdAsm_16
2042    4486201U,	// VST3LNdAsm_32
2043    2913337U,	// VST3LNdAsm_8
2044    4355129U,	// VST3LNdWB_fixed_Asm_16
2045    4486201U,	// VST3LNdWB_fixed_Asm_32
2046    2913337U,	// VST3LNdWB_fixed_Asm_8
2047    4391993U,	// VST3LNdWB_register_Asm_16
2048    4523065U,	// VST3LNdWB_register_Asm_32
2049    2950201U,	// VST3LNdWB_register_Asm_8
2050    3242763321U,	// VST3LNq16
2051    0U,	// VST3LNq16Pseudo
2052    0U,	// VST3LNq16Pseudo_UPD
2053    3746145337U,	// VST3LNq16_UPD
2054    3242894393U,	// VST3LNq32
2055    0U,	// VST3LNq32Pseudo
2056    0U,	// VST3LNq32Pseudo_UPD
2057    3746276409U,	// VST3LNq32_UPD
2058    4355129U,	// VST3LNqAsm_16
2059    4486201U,	// VST3LNqAsm_32
2060    4355129U,	// VST3LNqWB_fixed_Asm_16
2061    4486201U,	// VST3LNqWB_fixed_Asm_32
2062    4391993U,	// VST3LNqWB_register_Asm_16
2063    4523065U,	// VST3LNqWB_register_Asm_32
2064    21562425U,	// VST3d16
2065    0U,	// VST3d16Pseudo
2066    0U,	// VST3d16Pseudo_UPD
2067    524907577U,	// VST3d16_UPD
2068    21693497U,	// VST3d32
2069    0U,	// VST3d32Pseudo
2070    0U,	// VST3d32Pseudo_UPD
2071    525038649U,	// VST3d32_UPD
2072    21824569U,	// VST3d8
2073    0U,	// VST3d8Pseudo
2074    0U,	// VST3d8Pseudo_UPD
2075    525169721U,	// VST3d8_UPD
2076    1430414393U,	// VST3dAsm_16
2077    1430545465U,	// VST3dAsm_32
2078    1428972601U,	// VST3dAsm_8
2079    1430414393U,	// VST3dWB_fixed_Asm_16
2080    1430545465U,	// VST3dWB_fixed_Asm_32
2081    1428972601U,	// VST3dWB_fixed_Asm_8
2082    1430418489U,	// VST3dWB_register_Asm_16
2083    1430549561U,	// VST3dWB_register_Asm_32
2084    1428976697U,	// VST3dWB_register_Asm_8
2085    21562425U,	// VST3q16
2086    0U,	// VST3q16Pseudo_UPD
2087    524907577U,	// VST3q16_UPD
2088    0U,	// VST3q16oddPseudo
2089    0U,	// VST3q16oddPseudo_UPD
2090    21693497U,	// VST3q32
2091    0U,	// VST3q32Pseudo_UPD
2092    525038649U,	// VST3q32_UPD
2093    0U,	// VST3q32oddPseudo
2094    0U,	// VST3q32oddPseudo_UPD
2095    21824569U,	// VST3q8
2096    0U,	// VST3q8Pseudo_UPD
2097    525169721U,	// VST3q8_UPD
2098    0U,	// VST3q8oddPseudo
2099    0U,	// VST3q8oddPseudo_UPD
2100    1531077689U,	// VST3qAsm_16
2101    1531208761U,	// VST3qAsm_32
2102    1529635897U,	// VST3qAsm_8
2103    1531077689U,	// VST3qWB_fixed_Asm_16
2104    1531208761U,	// VST3qWB_fixed_Asm_32
2105    1529635897U,	// VST3qWB_fixed_Asm_8
2106    457339961U,	// VST3qWB_register_Asm_16
2107    457471033U,	// VST3qWB_register_Asm_32
2108    455898169U,	// VST3qWB_register_Asm_8
2109    3242816586U,	// VST4LNd16
2110    0U,	// VST4LNd16Pseudo
2111    0U,	// VST4LNd16Pseudo_UPD
2112    3746137162U,	// VST4LNd16_UPD
2113    3242947658U,	// VST4LNd32
2114    0U,	// VST4LNd32Pseudo
2115    0U,	// VST4LNd32Pseudo_UPD
2116    3746268234U,	// VST4LNd32_UPD
2117    3243078730U,	// VST4LNd8
2118    0U,	// VST4LNd8Pseudo
2119    0U,	// VST4LNd8Pseudo_UPD
2120    3746399306U,	// VST4LNd8_UPD
2121    4355146U,	// VST4LNdAsm_16
2122    4486218U,	// VST4LNdAsm_32
2123    2913354U,	// VST4LNdAsm_8
2124    4355146U,	// VST4LNdWB_fixed_Asm_16
2125    4486218U,	// VST4LNdWB_fixed_Asm_32
2126    2913354U,	// VST4LNdWB_fixed_Asm_8
2127    4392010U,	// VST4LNdWB_register_Asm_16
2128    4523082U,	// VST4LNdWB_register_Asm_32
2129    2950218U,	// VST4LNdWB_register_Asm_8
2130    3242816586U,	// VST4LNq16
2131    0U,	// VST4LNq16Pseudo
2132    0U,	// VST4LNq16Pseudo_UPD
2133    3746137162U,	// VST4LNq16_UPD
2134    3242947658U,	// VST4LNq32
2135    0U,	// VST4LNq32Pseudo
2136    0U,	// VST4LNq32Pseudo_UPD
2137    3746268234U,	// VST4LNq32_UPD
2138    4355146U,	// VST4LNqAsm_16
2139    4486218U,	// VST4LNqAsm_32
2140    4355146U,	// VST4LNqWB_fixed_Asm_16
2141    4486218U,	// VST4LNqWB_fixed_Asm_32
2142    4392010U,	// VST4LNqWB_register_Asm_16
2143    4523082U,	// VST4LNqWB_register_Asm_32
2144    21537866U,	// VST4d16
2145    0U,	// VST4d16Pseudo
2146    0U,	// VST4d16Pseudo_UPD
2147    524919882U,	// VST4d16_UPD
2148    21668938U,	// VST4d32
2149    0U,	// VST4d32Pseudo
2150    0U,	// VST4d32Pseudo_UPD
2151    525050954U,	// VST4d32_UPD
2152    21800010U,	// VST4d8
2153    0U,	// VST4d8Pseudo
2154    0U,	// VST4d8Pseudo_UPD
2155    525182026U,	// VST4d8_UPD
2156    1413637194U,	// VST4dAsm_16
2157    1413768266U,	// VST4dAsm_32
2158    1412195402U,	// VST4dAsm_8
2159    1413637194U,	// VST4dWB_fixed_Asm_16
2160    1413768266U,	// VST4dWB_fixed_Asm_32
2161    1412195402U,	// VST4dWB_fixed_Asm_8
2162    1413641290U,	// VST4dWB_register_Asm_16
2163    1413772362U,	// VST4dWB_register_Asm_32
2164    1412199498U,	// VST4dWB_register_Asm_8
2165    21537866U,	// VST4q16
2166    0U,	// VST4q16Pseudo_UPD
2167    524919882U,	// VST4q16_UPD
2168    0U,	// VST4q16oddPseudo
2169    0U,	// VST4q16oddPseudo_UPD
2170    21668938U,	// VST4q32
2171    0U,	// VST4q32Pseudo_UPD
2172    525050954U,	// VST4q32_UPD
2173    0U,	// VST4q32oddPseudo
2174    0U,	// VST4q32oddPseudo_UPD
2175    21800010U,	// VST4q8
2176    0U,	// VST4q8Pseudo_UPD
2177    525182026U,	// VST4q8_UPD
2178    0U,	// VST4q8oddPseudo
2179    0U,	// VST4q8oddPseudo_UPD
2180    1581409354U,	// VST4qAsm_16
2181    1581540426U,	// VST4qAsm_32
2182    1579967562U,	// VST4qAsm_8
2183    1581409354U,	// VST4qWB_fixed_Asm_16
2184    1581540426U,	// VST4qWB_fixed_Asm_32
2185    1579967562U,	// VST4qWB_fixed_Asm_8
2186    507671626U,	// VST4qWB_register_Asm_16
2187    507802698U,	// VST4qWB_register_Asm_32
2188    506229834U,	// VST4qWB_register_Asm_8
2189    33572312U,	// VSTMDDB_UPD
2190    34156U,	// VSTMDIA
2191    33572204U,	// VSTMDIA_UPD
2192    0U,	// VSTMQIA
2193    33572312U,	// VSTMSDB_UPD
2194    34156U,	// VSTMSIA
2195    33572204U,	// VSTMSIA_UPD
2196    27067U,	// VSTRD
2197    27067U,	// VSTRS
2198    2248959573U,	// VSUBD
2199    35940550U,	// VSUBHNv2i32
2200    36071622U,	// VSUBHNv4i16
2201    36202694U,	// VSUBHNv8i8
2202    35153961U,	// VSUBLsv2i64
2203    35285033U,	// VSUBLsv4i32
2204    35416105U,	// VSUBLsv8i16
2205    35547177U,	// VSUBLuv2i64
2206    35678249U,	// VSUBLuv4i32
2207    35809321U,	// VSUBLuv8i16
2208    2249090645U,	// VSUBS
2209    35154679U,	// VSUBWsv2i64
2210    35285751U,	// VSUBWsv4i32
2211    35416823U,	// VSUBWsv8i16
2212    35547895U,	// VSUBWuv2i64
2213    35678967U,	// VSUBWuv4i32
2214    35810039U,	// VSUBWuv8i16
2215    2249090645U,	// VSUBfd
2216    2249090645U,	// VSUBfq
2217    36333141U,	// VSUBv16i8
2218    35939925U,	// VSUBv1i64
2219    36070997U,	// VSUBv2i32
2220    35939925U,	// VSUBv2i64
2221    36202069U,	// VSUBv4i16
2222    36070997U,	// VSUBv4i32
2223    36202069U,	// VSUBv8i16
2224    36333141U,	// VSUBv8i8
2225    31064U,	// VSWPd
2226    31064U,	// VSWPq
2227    2910244U,	// VTBL1
2228    2910244U,	// VTBL2
2229    2910244U,	// VTBL3
2230    0U,	// VTBL3Pseudo
2231    2910244U,	// VTBL4
2232    0U,	// VTBL4Pseudo
2233    2915156U,	// VTBX1
2234    2915156U,	// VTBX2
2235    2915156U,	// VTBX3
2236    0U,	// VTBX3Pseudo
2237    2915156U,	// VTBX4
2238    0U,	// VTBX4Pseudo
2239    6580923U,	// VTOSHD
2240    6711995U,	// VTOSHS
2241    275270080U,	// VTOSIRD
2242    272255424U,	// VTOSIRS
2243    275270331U,	// VTOSIZD
2244    272255675U,	// VTOSIZS
2245    3328731835U,	// VTOSLD
2246    3325717179U,	// VTOSLS
2247    6974139U,	// VTOUHD
2248    7105211U,	// VTOUHS
2249    275663296U,	// VTOUIRD
2250    272386496U,	// VTOUIRS
2251    275663547U,	// VTOUIZD
2252    272386747U,	// VTOUIZS
2253    3329125051U,	// VTOULD
2254    3325848251U,	// VTOULS
2255    4356364U,	// VTRNd16
2256    4487436U,	// VTRNd32
2257    2914572U,	// VTRNd8
2258    4356364U,	// VTRNq16
2259    4487436U,	// VTRNq32
2260    2914572U,	// VTRNq8
2261    2910874U,	// VTSTv16i8
2262    4483738U,	// VTSTv2i32
2263    4352666U,	// VTSTv4i16
2264    4483738U,	// VTSTv4i32
2265    4352666U,	// VTSTv8i16
2266    2910874U,	// VTSTv8i8
2267    7367355U,	// VUHTOD
2268    7498427U,	// VUHTOS
2269    276056763U,	// VUITOD
2270    272648891U,	// VUITOS
2271    3329518267U,	// VULTOD
2272    3326110395U,	// VULTOS
2273    4356445U,	// VUZPd16
2274    2914653U,	// VUZPd8
2275    4356445U,	// VUZPq16
2276    4487517U,	// VUZPq32
2277    2914653U,	// VUZPq8
2278    4356421U,	// VZIPd16
2279    2914629U,	// VZIPd8
2280    4356421U,	// VZIPq16
2281    4487493U,	// VZIPq32
2282    2914629U,	// VZIPq8
2283    0U,	// WIN__CHKSTK
2284    34131U,	// sysLDMDA
2285    33572179U,	// sysLDMDA_UPD
2286    34258U,	// sysLDMDB
2287    33572306U,	// sysLDMDB_UPD
2288    34998U,	// sysLDMIA
2289    33573046U,	// sysLDMIA_UPD
2290    34277U,	// sysLDMIB
2291    33572325U,	// sysLDMIB_UPD
2292    34137U,	// sysSTMDA
2293    33572185U,	// sysSTMDA_UPD
2294    34265U,	// sysSTMDB
2295    33572313U,	// sysSTMDB_UPD
2296    35002U,	// sysSTMIA
2297    33573050U,	// sysSTMIA_UPD
2298    34283U,	// sysSTMIB
2299    33572331U,	// sysSTMIB_UPD
2300    0U,	// t2ABS
2301    5768U,	// t2ADCri
2302    7739016U,	// t2ADCrr
2303    7743112U,	// t2ADCrs
2304    0U,	// t2ADDSri
2305    0U,	// t2ADDSrr
2306    0U,	// t2ADDSrs
2307    7739077U,	// t2ADDri
2308    27390U,	// t2ADDri12
2309    7739077U,	// t2ADDrr
2310    7743173U,	// t2ADDrs
2311    7752054U,	// t2ADR
2312    5882U,	// t2ANDri
2313    7739130U,	// t2ANDrr
2314    7743226U,	// t2ANDrs
2315    7739812U,	// t2ASRri
2316    7739812U,	// t2ASRrr
2317    1081509283U,	// t2B
2318    26256U,	// t2BFC
2319    30677U,	// t2BFI
2320    5781U,	// t2BICri
2321    7739029U,	// t2BICrr
2322    7743125U,	// t2BICrs
2323    0U,	// t2BR_JT
2324    1073776615U,	// t2BXJ
2325    1081509283U,	// t2Bcc
2326    2197858625U,	// t2CDP
2327    2197857299U,	// t2CDP2
2328    433047U,	// t2CLREX
2329    19417U,	// t2CLZ
2330    7751911U,	// t2CMNri
2331    7751911U,	// t2CMNzrr
2332    7760103U,	// t2CMNzrs
2333    7752011U,	// t2CMPri
2334    7752011U,	// t2CMPrr
2335    7760203U,	// t2CMPrs
2336    414526U,	// t2CPS1p
2337    1165412858U,	// t2CPS2p
2338    83937786U,	// t2CPS3p
2339    33706710U,	// t2CRC32B
2340    33706718U,	// t2CRC32CB
2341    33706782U,	// t2CRC32CH
2342    33706851U,	// t2CRC32CW
2343    33706774U,	// t2CRC32H
2344    33706843U,	// t2CRC32W
2345    1073776474U,	// t2DBG
2346    431079U,	// t2DCPS1
2347    431139U,	// t2DCPS2
2348    431155U,	// t2DCPS3
2349    788563446U,	// t2DMB
2350    788563465U,	// t2DSB
2351    6546U,	// t2EORri
2352    7739794U,	// t2EORrr
2353    7743890U,	// t2EORrs
2354    1081510533U,	// t2HINT
2355    805340685U,	// t2ISB
2356    117504627U,	// t2IT
2357    0U,	// t2Int_eh_sjlj_setjmp
2358    0U,	// t2Int_eh_sjlj_setjmp_nofp
2359    17743U,	// t2LDA
2360    17824U,	// t2LDAB
2361    19333U,	// t2LDAEX
2362    18024U,	// t2LDAEXB
2363    26388U,	// t2LDAEXD
2364    18361U,	// t2LDAEXH
2365    18281U,	// t2LDAH
2366    3271587819U,	// t2LDC2L_OFFSET
2367    3271587819U,	// t2LDC2L_OPTION
2368    3271587819U,	// t2LDC2L_POST
2369    3271587819U,	// t2LDC2L_PRE
2370    3271586809U,	// t2LDC2_OFFSET
2371    3271586809U,	// t2LDC2_OPTION
2372    3271586809U,	// t2LDC2_POST
2373    3271586809U,	// t2LDC2_PRE
2374    3271587887U,	// t2LDCL_OFFSET
2375    3271587887U,	// t2LDCL_OPTION
2376    3271587887U,	// t2LDCL_POST
2377    3271587887U,	// t2LDCL_PRE
2378    3271587468U,	// t2LDC_OFFSET
2379    3271587468U,	// t2LDC_OPTION
2380    3271587468U,	// t2LDC_POST
2381    3271587468U,	// t2LDC_PRE
2382    34258U,	// t2LDMDB
2383    33572306U,	// t2LDMDB_UPD
2384    7768246U,	// t2LDMIA
2385    0U,	// t2LDMIA_RET
2386    41306294U,	// t2LDMIA_UPD
2387    27200U,	// t2LDRBT
2388    30207U,	// t2LDRB_POST
2389    30207U,	// t2LDRB_PRE
2390    7759359U,	// t2LDRBi12
2391    26111U,	// t2LDRBi8
2392    7751167U,	// t2LDRBpci
2393    280063U,	// t2LDRBpcrel
2394    7763455U,	// t2LDRBs
2395    67326U,	// t2LDRD_POST
2396    67326U,	// t2LDRD_PRE
2397    30462U,	// t2LDRDi8
2398    27537U,	// t2LDREX
2399    18038U,	// t2LDREXB
2400    26402U,	// t2LDREXD
2401    18375U,	// t2LDREXH
2402    27230U,	// t2LDRHT
2403    30612U,	// t2LDRH_POST
2404    30612U,	// t2LDRH_PRE
2405    7759764U,	// t2LDRHi12
2406    26516U,	// t2LDRHi8
2407    7751572U,	// t2LDRHpci
2408    280468U,	// t2LDRHpcrel
2409    7763860U,	// t2LDRHs
2410    27212U,	// t2LDRSBT
2411    30225U,	// t2LDRSB_POST
2412    30225U,	// t2LDRSB_PRE
2413    7759377U,	// t2LDRSBi12
2414    26129U,	// t2LDRSBi8
2415    7751185U,	// t2LDRSBpci
2416    280081U,	// t2LDRSBpcrel
2417    7763473U,	// t2LDRSBs
2418    27242U,	// t2LDRSHT
2419    30622U,	// t2LDRSH_POST
2420    30622U,	// t2LDRSH_PRE
2421    7759774U,	// t2LDRSHi12
2422    26526U,	// t2LDRSHi8
2423    7751582U,	// t2LDRSHpci
2424    280478U,	// t2LDRSHpcrel
2425    7763870U,	// t2LDRSHs
2426    27274U,	// t2LDRT
2427    31099U,	// t2LDR_POST
2428    31099U,	// t2LDR_PRE
2429    7760251U,	// t2LDRi12
2430    27003U,	// t2LDRi8
2431    7752059U,	// t2LDRpci
2432    0U,	// t2LDRpci_pic
2433    280955U,	// t2LDRpcrel
2434    7764347U,	// t2LDRs
2435    0U,	// t2LEApcrel
2436    0U,	// t2LEApcrelJT
2437    7739537U,	// t2LSLri
2438    7739537U,	// t2LSLrr
2439    7739819U,	// t2LSRri
2440    7739819U,	// t2LSRrr
2441    2197858674U,	// t2MCR
2442    2197857304U,	// t2MCR2
2443    2197883290U,	// t2MCRR
2444    2197881885U,	// t2MCRR2
2445    30075U,	// t2MLA
2446    31197U,	// t2MLS
2447    0U,	// t2MOVCCasr
2448    0U,	// t2MOVCCi
2449    0U,	// t2MOVCCi16
2450    0U,	// t2MOVCCi32imm
2451    0U,	// t2MOVCClsl
2452    0U,	// t2MOVCClsr
2453    0U,	// t2MOVCCr
2454    0U,	// t2MOVCCror
2455    289301U,	// t2MOVSsi
2456    293397U,	// t2MOVSsr
2457    27328U,	// t2MOVTi16
2458    0U,	// t2MOVTi16_ga_pcrel
2459    0U,	// t2MOV_ga_pcrel
2460    7805683U,	// t2MOVi
2461    19208U,	// t2MOVi16
2462    0U,	// t2MOVi16_ga_pcrel
2463    0U,	// t2MOVi32imm
2464    7805683U,	// t2MOVr
2465    289523U,	// t2MOVsi
2466    293619U,	// t2MOVsr
2467    7752195U,	// t2MOVsra_flag
2468    7752200U,	// t2MOVsrl_flag
2469    201369245U,	// t2MRC
2470    201368574U,	// t2MRC2
2471    2197882529U,	// t2MRRC
2472    2197881859U,	// t2MRRC2
2473    35327U,	// t2MRS_AR
2474    18943U,	// t2MRS_M
2475    1073777151U,	// t2MRSsys_AR
2476    218122672U,	// t2MSR_AR
2477    218122672U,	// t2MSR_M
2478    26785U,	// t2MUL
2479    0U,	// t2MVNCCi
2480    71979U,	// t2MVNi
2481    7805227U,	// t2MVNr
2482    7739691U,	// t2MVNs
2483    6408U,	// t2ORNri
2484    6408U,	// t2ORNrr
2485    10504U,	// t2ORNrs
2486    6560U,	// t2ORRri
2487    7739808U,	// t2ORRrr
2488    7743904U,	// t2ORRrs
2489    31275U,	// t2PKHBT
2490    30238U,	// t2PKHTB
2491    822102787U,	// t2PLDWi12
2492    838880003U,	// t2PLDWi8
2493    855665411U,	// t2PLDWs
2494    822101742U,	// t2PLDi12
2495    838878958U,	// t2PLDi8
2496    872449774U,	// t2PLDpci
2497    855664366U,	// t2PLDs
2498    822101977U,	// t2PLIi12
2499    838879193U,	// t2PLIi8
2500    872450009U,	// t2PLIpci
2501    855664601U,	// t2PLIs
2502    26333U,	// t2QADD
2503    25764U,	// t2QADD16
2504    25867U,	// t2QADD8
2505    27586U,	// t2QASX
2506    26307U,	// t2QDADD
2507    26179U,	// t2QDSUB
2508    27445U,	// t2QSAX
2509    26192U,	// t2QSUB
2510    25726U,	// t2QSUB16
2511    25828U,	// t2QSUB8
2512    19057U,	// t2RBIT
2513    7752415U,	// t2REV
2514    7750856U,	// t2REV16
2515    7751593U,	// t2REVSH
2516    1073776075U,	// t2RFEDB
2517    1073776075U,	// t2RFEDBW
2518    1073775967U,	// t2RFEIA
2519    1073775967U,	// t2RFEIAW
2520    7739798U,	// t2RORri
2521    7739798U,	// t2RORrr
2522    72625U,	// t2RRX
2523    0U,	// t2RSBSri
2524    0U,	// t2RSBSrs
2525    7738899U,	// t2RSBri
2526    5651U,	// t2RSBrr
2527    9747U,	// t2RSBrs
2528    25771U,	// t2SADD16
2529    25873U,	// t2SADD8
2530    27591U,	// t2SASX
2531    5764U,	// t2SBCri
2532    7739012U,	// t2SBCrr
2533    7743108U,	// t2SBCrs
2534    31651U,	// t2SBFX
2535    27363U,	// t2SDIV
2536    26700U,	// t2SEL
2537    25747U,	// t2SHADD16
2538    25852U,	// t2SHADD8
2539    27573U,	// t2SHASX
2540    27432U,	// t2SHSAX
2541    25709U,	// t2SHSUB16
2542    25813U,	// t2SHSUB8
2543    1073776281U,	// t2SMC
2544    30129U,	// t2SMLABB
2545    31268U,	// t2SMLABT
2546    30386U,	// t2SMLAD
2547    31577U,	// t2SMLADX
2548    43026U,	// t2SMLAL
2549    30136U,	// t2SMLALBB
2550    31281U,	// t2SMLALBT
2551    30439U,	// t2SMLALD
2552    31591U,	// t2SMLALDX
2553    30244U,	// t2SMLALTB
2554    31398U,	// t2SMLALTT
2555    30231U,	// t2SMLATB
2556    31391U,	// t2SMLATT
2557    30298U,	// t2SMLAWB
2558    31429U,	// t2SMLAWT
2559    30472U,	// t2SMLSD
2560    31607U,	// t2SMLSDX
2561    30450U,	// t2SMLSLD
2562    31599U,	// t2SMLSLDX
2563    30073U,	// t2SMMLA
2564    31083U,	// t2SMMLAR
2565    31195U,	// t2SMMLS
2566    31144U,	// t2SMMLSR
2567    26783U,	// t2SMMUL
2568    27018U,	// t2SMMULR
2569    26296U,	// t2SMUAD
2570    27488U,	// t2SMUADX
2571    26048U,	// t2SMULBB
2572    27193U,	// t2SMULBT
2573    30838U,	// t2SMULL
2574    26156U,	// t2SMULTB
2575    27310U,	// t2SMULTT
2576    26209U,	// t2SMULWB
2577    27340U,	// t2SMULWT
2578    26382U,	// t2SMUSD
2579    27518U,	// t2SMUSDX
2580    7898591U,	// t2SRSDB
2581    8029663U,	// t2SRSDB_UPD
2582    7898483U,	// t2SRSIA
2583    8029555U,	// t2SRSIA_UPD
2584    31258U,	// t2SSAT
2585    25785U,	// t2SSAT16
2586    27450U,	// t2SSAX
2587    25733U,	// t2SSUB16
2588    25834U,	// t2SSUB8
2589    3271587825U,	// t2STC2L_OFFSET
2590    3271587825U,	// t2STC2L_OPTION
2591    3271587825U,	// t2STC2L_POST
2592    3271587825U,	// t2STC2L_PRE
2593    3271586825U,	// t2STC2_OFFSET
2594    3271586825U,	// t2STC2_OPTION
2595    3271586825U,	// t2STC2_POST
2596    3271586825U,	// t2STC2_PRE
2597    3271587892U,	// t2STCL_OFFSET
2598    3271587892U,	// t2STCL_OPTION
2599    3271587892U,	// t2STCL_POST
2600    3271587892U,	// t2STCL_PRE
2601    3271587498U,	// t2STC_OFFSET
2602    3271587498U,	// t2STC_OPTION
2603    3271587498U,	// t2STC_POST
2604    3271587498U,	// t2STC_PRE
2605    18587U,	// t2STL
2606    17905U,	// t2STLB
2607    27531U,	// t2STLEX
2608    26223U,	// t2STLEXB
2609    30491U,	// t2STLEXD
2610    26560U,	// t2STLEXH
2611    18302U,	// t2STLH
2612    34265U,	// t2STMDB
2613    33572313U,	// t2STMDB_UPD
2614    7768250U,	// t2STMIA
2615    41306298U,	// t2STMIA_UPD
2616    27206U,	// t2STRBT
2617    33584644U,	// t2STRB_POST
2618    33584644U,	// t2STRB_PRE
2619    0U,	// t2STRB_preidx
2620    7759364U,	// t2STRBi12
2621    26116U,	// t2STRBi8
2622    7763460U,	// t2STRBs
2623    33621763U,	// t2STRD_POST
2624    33621763U,	// t2STRD_PRE
2625    30467U,	// t2STRDi8
2626    31645U,	// t2STREX
2627    26237U,	// t2STREXB
2628    30505U,	// t2STREXD
2629    26574U,	// t2STREXH
2630    27236U,	// t2STRHT
2631    33585049U,	// t2STRH_POST
2632    33585049U,	// t2STRH_PRE
2633    0U,	// t2STRH_preidx
2634    7759769U,	// t2STRHi12
2635    26521U,	// t2STRHi8
2636    7763865U,	// t2STRHs
2637    27285U,	// t2STRT
2638    33585596U,	// t2STR_POST
2639    33585596U,	// t2STR_PRE
2640    0U,	// t2STR_preidx
2641    7760316U,	// t2STRi12
2642    27068U,	// t2STRi8
2643    7764412U,	// t2STRs
2644    8161745U,	// t2SUBS_PC_LR
2645    0U,	// t2SUBSri
2646    0U,	// t2SUBSrr
2647    0U,	// t2SUBSrs
2648    7738949U,	// t2SUBri
2649    27384U,	// t2SUBri12
2650    7738949U,	// t2SUBrr
2651    7743045U,	// t2SUBrs
2652    30117U,	// t2SXTAB
2653    29775U,	// t2SXTAB16
2654    30574U,	// t2SXTAH
2655    7759417U,	// t2SXTB
2656    25695U,	// t2SXTB16
2657    7759791U,	// t2SXTH
2658    889210311U,	// t2TBB
2659    0U,	// t2TBB_JT
2660    905987962U,	// t2TBH
2661    0U,	// t2TBH_JT
2662    7752039U,	// t2TEQri
2663    7752039U,	// t2TEQrr
2664    7760231U,	// t2TEQrs
2665    7752347U,	// t2TSTri
2666    7752347U,	// t2TSTrr
2667    7760539U,	// t2TSTrs
2668    25778U,	// t2UADD16
2669    25879U,	// t2UADD8
2670    27596U,	// t2UASX
2671    31656U,	// t2UBFX
2672    414548U,	// t2UDF
2673    27368U,	// t2UDIV
2674    25755U,	// t2UHADD16
2675    25859U,	// t2UHADD8
2676    27579U,	// t2UHASX
2677    27438U,	// t2UHSAX
2678    25717U,	// t2UHSUB16
2679    25820U,	// t2UHSUB8
2680    30711U,	// t2UMAAL
2681    43032U,	// t2UMLAL
2682    30844U,	// t2UMULL
2683    25763U,	// t2UQADD16
2684    25866U,	// t2UQADD8
2685    27585U,	// t2UQASX
2686    27444U,	// t2UQSAX
2687    25725U,	// t2UQSUB16
2688    25827U,	// t2UQSUB8
2689    25846U,	// t2USAD8
2690    29902U,	// t2USADA8
2691    31263U,	// t2USAT
2692    25792U,	// t2USAT16
2693    27455U,	// t2USAX
2694    25740U,	// t2USUB16
2695    25840U,	// t2USUB8
2696    30123U,	// t2UXTAB
2697    29783U,	// t2UXTAB16
2698    30580U,	// t2UXTAH
2699    7759422U,	// t2UXTB
2700    25702U,	// t2UXTB16
2701    7759796U,	// t2UXTH
2702    931120776U,	// tADC
2703    26309U,	// tADDhirr
2704    25151173U,	// tADDi3
2705    931120837U,	// tADDi8
2706    26309U,	// tADDrSP
2707    26309U,	// tADDrSPi
2708    25151173U,	// tADDrr
2709    26309U,	// tADDspi
2710    26309U,	// tADDspr
2711    0U,	// tADJCALLSTACKDOWN
2712    0U,	// tADJCALLSTACKUP
2713    18806U,	// tADR
2714    931120890U,	// tAND
2715    25151908U,	// tASRri
2716    931121572U,	// tASRrr
2717    1073776035U,	// tB
2718    931120789U,	// tBIC
2719    414542U,	// tBKPT
2720    1090557990U,	// tBL
2721    1090558893U,	// tBLXi
2722    1090558893U,	// tBLXr
2723    0U,	// tBRIND
2724    0U,	// tBR_JTr
2725    1073777481U,	// tBX
2726    0U,	// tBX_CALL
2727    0U,	// tBX_RET
2728    0U,	// tBX_RET_vararg
2729    1073776035U,	// tBcc
2730    0U,	// tBfar
2731    1107448704U,	// tCBNZ
2732    1107448699U,	// tCBZ
2733    18663U,	// tCMNz
2734    18763U,	// tCMPhir
2735    18763U,	// tCMPi8
2736    18763U,	// tCMPr
2737    1157941754U,	// tCPS
2738    931121554U,	// tEOR
2739    1073777285U,	// tHINT
2740    414537U,	// tHLT
2741    0U,	// tInt_eh_sjlj_longjmp
2742    0U,	// tInt_eh_sjlj_setjmp
2743    34998U,	// tLDMIA
2744    0U,	// tLDMIA_UPD
2745    26111U,	// tLDRBi
2746    26111U,	// tLDRBr
2747    26516U,	// tLDRHi
2748    26516U,	// tLDRHr
2749    0U,	// tLDRLIT_ga_abs
2750    0U,	// tLDRLIT_ga_pcrel
2751    26129U,	// tLDRSB
2752    26526U,	// tLDRSH
2753    27003U,	// tLDRi
2754    18811U,	// tLDRpci
2755    0U,	// tLDRpci_pic
2756    27003U,	// tLDRr
2757    27003U,	// tLDRspi
2758    0U,	// tLEApcrel
2759    0U,	// tLEApcrelJT
2760    25151633U,	// tLSLri
2761    931121297U,	// tLSLrr
2762    25151915U,	// tLSRri
2763    931121579U,	// tLSRrr
2764    0U,	// tMOVCCr_pseudo
2765    1107448643U,	// tMOVSr
2766    276941555U,	// tMOVi8
2767    19187U,	// tMOVr
2768    25151649U,	// tMUL
2769    276941099U,	// tMVN
2770    931121568U,	// tORR
2771    0U,	// tPICADD
2772    939563343U,	// tPOP
2773    0U,	// tPOP_RET
2774    939562916U,	// tPUSH
2775    19167U,	// tREV
2776    17608U,	// tREV16
2777    18345U,	// tREVSH
2778    931121558U,	// tROR
2779    260163091U,	// tRSB
2780    931120772U,	// tSBC
2781    86793U,	// tSETEND
2782    33573050U,	// tSTMIA_UPD
2783    26116U,	// tSTRBi
2784    26116U,	// tSTRBr
2785    26521U,	// tSTRHi
2786    26521U,	// tSTRHr
2787    27068U,	// tSTRi
2788    27068U,	// tSTRr
2789    27068U,	// tSTRspi
2790    25151045U,	// tSUBi3
2791    931120709U,	// tSUBi8
2792    25151045U,	// tSUBrr
2793    26181U,	// tSUBspi
2794    1073776302U,	// tSVC
2795    17977U,	// tSXTB
2796    18351U,	// tSXTH
2797    0U,	// tTAILJMPd
2798    0U,	// tTAILJMPdND
2799    0U,	// tTAILJMPr
2800    0U,	// tTPsoft
2801    2364U,	// tTRAP
2802    19099U,	// tTST
2803    414481U,	// tUDF
2804    17982U,	// tUXTB
2805    18356U,	// tUXTH
2806    0U
2807  };
2808
2809  static const uint32_t OpInfo2[] = {
2810    0U,	// PHI
2811    0U,	// INLINEASM
2812    0U,	// CFI_INSTRUCTION
2813    0U,	// EH_LABEL
2814    0U,	// GC_LABEL
2815    0U,	// KILL
2816    0U,	// EXTRACT_SUBREG
2817    0U,	// INSERT_SUBREG
2818    0U,	// IMPLICIT_DEF
2819    0U,	// SUBREG_TO_REG
2820    0U,	// COPY_TO_REGCLASS
2821    0U,	// DBG_VALUE
2822    0U,	// REG_SEQUENCE
2823    0U,	// COPY
2824    0U,	// BUNDLE
2825    0U,	// LIFETIME_START
2826    0U,	// LIFETIME_END
2827    0U,	// STACKMAP
2828    0U,	// PATCHPOINT
2829    0U,	// LOAD_STACK_GUARD
2830    0U,	// ABS
2831    0U,	// ADCri
2832    0U,	// ADCrr
2833    16384U,	// ADCrsi
2834    0U,	// ADCrsr
2835    0U,	// ADDSri
2836    0U,	// ADDSrr
2837    0U,	// ADDSrsi
2838    0U,	// ADDSrsr
2839    0U,	// ADDri
2840    0U,	// ADDrr
2841    16384U,	// ADDrsi
2842    0U,	// ADDrsr
2843    0U,	// ADJCALLSTACKDOWN
2844    0U,	// ADJCALLSTACKUP
2845    8U,	// ADR
2846    0U,	// AESD
2847    0U,	// AESE
2848    0U,	// AESIMC
2849    0U,	// AESMC
2850    0U,	// ANDri
2851    0U,	// ANDrr
2852    16384U,	// ANDrsi
2853    0U,	// ANDrsr
2854    0U,	// ASRi
2855    0U,	// ASRr
2856    0U,	// B
2857    0U,	// BCCZi64
2858    0U,	// BCCi64
2859    16U,	// BFC
2860    32792U,	// BFI
2861    0U,	// BICri
2862    0U,	// BICrr
2863    16384U,	// BICrsi
2864    0U,	// BICrsr
2865    0U,	// BKPT
2866    0U,	// BL
2867    0U,	// BLX
2868    0U,	// BLX_pred
2869    0U,	// BLXi
2870    0U,	// BL_pred
2871    0U,	// BMOVPCB_CALL
2872    0U,	// BMOVPCRX_CALL
2873    0U,	// BR_JTadd
2874    0U,	// BR_JTm
2875    0U,	// BR_JTr
2876    0U,	// BX
2877    0U,	// BXJ
2878    0U,	// BX_CALL
2879    0U,	// BX_RET
2880    0U,	// BX_pred
2881    0U,	// Bcc
2882    544U,	// CDP
2883    0U,	// CDP2
2884    0U,	// CLREX
2885    1024U,	// CLZ
2886    1024U,	// CMNri
2887    1024U,	// CMNzrr
2888    40U,	// CMNzrsi
2889    48U,	// CMNzrsr
2890    1024U,	// CMPri
2891    1024U,	// CMPrr
2892    40U,	// CMPrsi
2893    48U,	// CMPrsr
2894    0U,	// CONSTPOOL_ENTRY
2895    0U,	// COPY_STRUCT_BYVAL_I32
2896    0U,	// CPS1p
2897    0U,	// CPS2p
2898    1048U,	// CPS3p
2899    1048U,	// CRC32B
2900    1048U,	// CRC32CB
2901    1048U,	// CRC32CH
2902    1048U,	// CRC32CW
2903    1048U,	// CRC32H
2904    1048U,	// CRC32W
2905    0U,	// DBG
2906    0U,	// DMB
2907    0U,	// DSB
2908    0U,	// EORri
2909    0U,	// EORrr
2910    16384U,	// EORrsi
2911    0U,	// EORrsr
2912    0U,	// FCONSTD
2913    0U,	// FCONSTS
2914    57U,	// FLDMXDB_UPD
2915    1088U,	// FLDMXIA
2916    57U,	// FLDMXIA_UPD
2917    0U,	// FMSTAT
2918    57U,	// FSTMXDB_UPD
2919    1088U,	// FSTMXIA
2920    57U,	// FSTMXIA_UPD
2921    0U,	// HINT
2922    0U,	// HLT
2923    0U,	// ISB
2924    0U,	// ITasm
2925    0U,	// Int_eh_sjlj_dispatchsetup
2926    0U,	// Int_eh_sjlj_longjmp
2927    0U,	// Int_eh_sjlj_setjmp
2928    0U,	// Int_eh_sjlj_setjmp_nofp
2929    72U,	// LDA
2930    72U,	// LDAB
2931    72U,	// LDAEX
2932    72U,	// LDAEXB
2933    0U,	// LDAEXD
2934    72U,	// LDAEXH
2935    72U,	// LDAH
2936    0U,	// LDC2L_OFFSET
2937    1U,	// LDC2L_OPTION
2938    1U,	// LDC2L_POST
2939    0U,	// LDC2L_PRE
2940    0U,	// LDC2_OFFSET
2941    1U,	// LDC2_OPTION
2942    1U,	// LDC2_POST
2943    0U,	// LDC2_PRE
2944    81U,	// LDCL_OFFSET
2945    49241U,	// LDCL_OPTION
2946    65625U,	// LDCL_POST
2947    97U,	// LDCL_PRE
2948    81U,	// LDC_OFFSET
2949    49241U,	// LDC_OPTION
2950    65625U,	// LDC_POST
2951    97U,	// LDC_PRE
2952    1088U,	// LDMDA
2953    57U,	// LDMDA_UPD
2954    1088U,	// LDMDB
2955    57U,	// LDMDB_UPD
2956    1088U,	// LDMIA
2957    0U,	// LDMIA_RET
2958    57U,	// LDMIA_UPD
2959    1088U,	// LDMIB
2960    57U,	// LDMIB_UPD
2961    72U,	// LDRBT_POST
2962    82008U,	// LDRBT_POST_IMM
2963    82008U,	// LDRBT_POST_REG
2964    82008U,	// LDRB_POST_IMM
2965    82008U,	// LDRB_POST_REG
2966    104U,	// LDRB_PRE_IMM
2967    112U,	// LDRB_PRE_REG
2968    120U,	// LDRBi12
2969    128U,	// LDRBrs
2970    98304U,	// LDRD
2971    1163264U,	// LDRD_POST
2972    131072U,	// LDRD_PRE
2973    72U,	// LDREX
2974    72U,	// LDREXB
2975    0U,	// LDREXD
2976    72U,	// LDREXH
2977    136U,	// LDRH
2978    147544U,	// LDRHTi
2979    163928U,	// LDRHTr
2980    180312U,	// LDRH_POST
2981    144U,	// LDRH_PRE
2982    0U,	// LDRLIT_ga_abs
2983    0U,	// LDRLIT_ga_pcrel
2984    0U,	// LDRLIT_ga_pcrel_ldr
2985    136U,	// LDRSB
2986    147544U,	// LDRSBTi
2987    163928U,	// LDRSBTr
2988    180312U,	// LDRSB_POST
2989    144U,	// LDRSB_PRE
2990    136U,	// LDRSH
2991    147544U,	// LDRSHTi
2992    163928U,	// LDRSHTr
2993    180312U,	// LDRSH_POST
2994    144U,	// LDRSH_PRE
2995    72U,	// LDRT_POST
2996    82008U,	// LDRT_POST_IMM
2997    82008U,	// LDRT_POST_REG
2998    82008U,	// LDR_POST_IMM
2999    82008U,	// LDR_POST_REG
3000    104U,	// LDR_PRE_IMM
3001    112U,	// LDR_PRE_REG
3002    120U,	// LDRcp
3003    120U,	// LDRi12
3004    128U,	// LDRrs
3005    0U,	// LEApcrel
3006    0U,	// LEApcrelJT
3007    0U,	// LSLi
3008    0U,	// LSLr
3009    0U,	// LSRi
3010    0U,	// LSRr
3011    2295328U,	// MCR
3012    152U,	// MCR2
3013    3343904U,	// MCRR
3014    213152U,	// MCRR2
3015    17825792U,	// MLA
3016    0U,	// MLAv5
3017    17825792U,	// MLS
3018    0U,	// MOVCCi
3019    0U,	// MOVCCi16
3020    0U,	// MOVCCi32imm
3021    0U,	// MOVCCr
3022    0U,	// MOVCCsi
3023    0U,	// MOVCCsr
3024    0U,	// MOVPCLR
3025    0U,	// MOVPCRX
3026    1048U,	// MOVTi16
3027    0U,	// MOVTi16_ga_pcrel
3028    0U,	// MOV_ga_pcrel
3029    0U,	// MOV_ga_pcrel_ldr
3030    1024U,	// MOVi
3031    1024U,	// MOVi16
3032    0U,	// MOVi16_ga_pcrel
3033    0U,	// MOVi32imm
3034    1024U,	// MOVr
3035    1024U,	// MOVr_TC
3036    40U,	// MOVsi
3037    48U,	// MOVsr
3038    0U,	// MOVsra_flag
3039    0U,	// MOVsrl_flag
3040    0U,	// MRC
3041    0U,	// MRC2
3042    3343904U,	// MRRC
3043    213152U,	// MRRC2
3044    2U,	// MRS
3045    2U,	// MRSsys
3046    0U,	// MSR
3047    0U,	// MSRi
3048    0U,	// MUL
3049    0U,	// MULv5
3050    0U,	// MVNCCi
3051    1024U,	// MVNi
3052    1024U,	// MVNr
3053    40U,	// MVNsi
3054    48U,	// MVNsr
3055    0U,	// ORRri
3056    0U,	// ORRrr
3057    16384U,	// ORRrsi
3058    0U,	// ORRrsr
3059    0U,	// PICADD
3060    0U,	// PICLDR
3061    0U,	// PICLDRB
3062    0U,	// PICLDRH
3063    0U,	// PICLDRSB
3064    0U,	// PICLDRSH
3065    0U,	// PICSTR
3066    0U,	// PICSTRB
3067    0U,	// PICSTRH
3068    4194304U,	// PKHBT
3069    5242880U,	// PKHTB
3070    0U,	// PLDWi12
3071    0U,	// PLDWrs
3072    0U,	// PLDi12
3073    0U,	// PLDrs
3074    0U,	// PLIi12
3075    0U,	// PLIrs
3076    0U,	// QADD
3077    0U,	// QADD16
3078    0U,	// QADD8
3079    0U,	// QASX
3080    0U,	// QDADD
3081    0U,	// QDSUB
3082    0U,	// QSAX
3083    0U,	// QSUB
3084    0U,	// QSUB16
3085    0U,	// QSUB8
3086    1024U,	// RBIT
3087    1024U,	// REV
3088    1024U,	// REV16
3089    1024U,	// REVSH
3090    0U,	// RFEDA
3091    0U,	// RFEDA_UPD
3092    0U,	// RFEDB
3093    0U,	// RFEDB_UPD
3094    0U,	// RFEIA
3095    0U,	// RFEIA_UPD
3096    0U,	// RFEIB
3097    0U,	// RFEIB_UPD
3098    0U,	// RORi
3099    0U,	// RORr
3100    0U,	// RRX
3101    1024U,	// RRXi
3102    0U,	// RSBSri
3103    0U,	// RSBSrsi
3104    0U,	// RSBSrsr
3105    0U,	// RSBri
3106    0U,	// RSBrr
3107    16384U,	// RSBrsi
3108    0U,	// RSBrsr
3109    0U,	// RSCri
3110    0U,	// RSCrr
3111    16384U,	// RSCrsi
3112    0U,	// RSCrsr
3113    0U,	// SADD16
3114    0U,	// SADD8
3115    0U,	// SASX
3116    0U,	// SBCri
3117    0U,	// SBCrr
3118    16384U,	// SBCrsi
3119    0U,	// SBCrsr
3120    34603008U,	// SBFX
3121    0U,	// SDIV
3122    0U,	// SEL
3123    0U,	// SETEND
3124    1184U,	// SHA1C
3125    0U,	// SHA1H
3126    1184U,	// SHA1M
3127    1184U,	// SHA1P
3128    1184U,	// SHA1SU0
3129    0U,	// SHA1SU1
3130    1184U,	// SHA256H
3131    1184U,	// SHA256H2
3132    0U,	// SHA256SU0
3133    1184U,	// SHA256SU1
3134    0U,	// SHADD16
3135    0U,	// SHADD8
3136    0U,	// SHASX
3137    0U,	// SHSAX
3138    0U,	// SHSUB16
3139    0U,	// SHSUB8
3140    0U,	// SMC
3141    17825792U,	// SMLABB
3142    17825792U,	// SMLABT
3143    17825792U,	// SMLAD
3144    17825792U,	// SMLADX
3145    0U,	// SMLAL
3146    17825792U,	// SMLALBB
3147    17825792U,	// SMLALBT
3148    17825792U,	// SMLALD
3149    17825792U,	// SMLALDX
3150    17825792U,	// SMLALTB
3151    17825792U,	// SMLALTT
3152    0U,	// SMLALv5
3153    17825792U,	// SMLATB
3154    17825792U,	// SMLATT
3155    17825792U,	// SMLAWB
3156    17825792U,	// SMLAWT
3157    17825792U,	// SMLSD
3158    17825792U,	// SMLSDX
3159    17825792U,	// SMLSLD
3160    17825792U,	// SMLSLDX
3161    17825792U,	// SMMLA
3162    17825792U,	// SMMLAR
3163    17825792U,	// SMMLS
3164    17825792U,	// SMMLSR
3165    0U,	// SMMUL
3166    0U,	// SMMULR
3167    0U,	// SMUAD
3168    0U,	// SMUADX
3169    0U,	// SMULBB
3170    0U,	// SMULBT
3171    17825792U,	// SMULL
3172    0U,	// SMULLv5
3173    0U,	// SMULTB
3174    0U,	// SMULTT
3175    0U,	// SMULWB
3176    0U,	// SMULWT
3177    0U,	// SMUSD
3178    0U,	// SMUSDX
3179    0U,	// SRSDA
3180    0U,	// SRSDA_UPD
3181    0U,	// SRSDB
3182    0U,	// SRSDB_UPD
3183    0U,	// SRSIA
3184    0U,	// SRSIA_UPD
3185    0U,	// SRSIB
3186    0U,	// SRSIB_UPD
3187    2216U,	// SSAT
3188    1192U,	// SSAT16
3189    0U,	// SSAX
3190    0U,	// SSUB16
3191    0U,	// SSUB8
3192    0U,	// STC2L_OFFSET
3193    1U,	// STC2L_OPTION
3194    1U,	// STC2L_POST
3195    0U,	// STC2L_PRE
3196    0U,	// STC2_OFFSET
3197    1U,	// STC2_OPTION
3198    1U,	// STC2_POST
3199    0U,	// STC2_PRE
3200    81U,	// STCL_OFFSET
3201    49241U,	// STCL_OPTION
3202    65625U,	// STCL_POST
3203    97U,	// STCL_PRE
3204    81U,	// STC_OFFSET
3205    49241U,	// STC_OPTION
3206    65625U,	// STC_POST
3207    97U,	// STC_PRE
3208    72U,	// STL
3209    72U,	// STLB
3210    229376U,	// STLEX
3211    229376U,	// STLEXB
3212    176U,	// STLEXD
3213    229376U,	// STLEXH
3214    72U,	// STLH
3215    1088U,	// STMDA
3216    57U,	// STMDA_UPD
3217    1088U,	// STMDB
3218    57U,	// STMDB_UPD
3219    1088U,	// STMIA
3220    57U,	// STMIA_UPD
3221    1088U,	// STMIB
3222    57U,	// STMIB_UPD
3223    72U,	// STRBT_POST
3224    82008U,	// STRBT_POST_IMM
3225    82008U,	// STRBT_POST_REG
3226    82008U,	// STRB_POST_IMM
3227    82008U,	// STRB_POST_REG
3228    104U,	// STRB_PRE_IMM
3229    112U,	// STRB_PRE_REG
3230    120U,	// STRBi12
3231    0U,	// STRBi_preidx
3232    0U,	// STRBr_preidx
3233    128U,	// STRBrs
3234    98304U,	// STRD
3235    1163288U,	// STRD_POST
3236    131096U,	// STRD_PRE
3237    229376U,	// STREX
3238    229376U,	// STREXB
3239    176U,	// STREXD
3240    229376U,	// STREXH
3241    136U,	// STRH
3242    147544U,	// STRHTi
3243    163928U,	// STRHTr
3244    180312U,	// STRH_POST
3245    144U,	// STRH_PRE
3246    0U,	// STRH_preidx
3247    72U,	// STRT_POST
3248    82008U,	// STRT_POST_IMM
3249    82008U,	// STRT_POST_REG
3250    82008U,	// STR_POST_IMM
3251    82008U,	// STR_POST_REG
3252    104U,	// STR_PRE_IMM
3253    112U,	// STR_PRE_REG
3254    120U,	// STRi12
3255    0U,	// STRi_preidx
3256    0U,	// STRr_preidx
3257    128U,	// STRrs
3258    0U,	// SUBS_PC_LR
3259    0U,	// SUBSri
3260    0U,	// SUBSrr
3261    0U,	// SUBSrsi
3262    0U,	// SUBSrsr
3263    0U,	// SUBri
3264    0U,	// SUBrr
3265    16384U,	// SUBrsi
3266    0U,	// SUBrsr
3267    0U,	// SVC
3268    229376U,	// SWP
3269    229376U,	// SWPB
3270    6291456U,	// SXTAB
3271    6291456U,	// SXTAB16
3272    6291456U,	// SXTAH
3273    2560U,	// SXTB
3274    2560U,	// SXTB16
3275    2560U,	// SXTH
3276    0U,	// TAILJMPd
3277    0U,	// TAILJMPr
3278    0U,	// TCRETURNdi
3279    0U,	// TCRETURNri
3280    1024U,	// TEQri
3281    1024U,	// TEQrr
3282    40U,	// TEQrsi
3283    48U,	// TEQrsr
3284    0U,	// TPsoft
3285    0U,	// TRAP
3286    0U,	// TRAPNaCl
3287    1024U,	// TSTri
3288    1024U,	// TSTrr
3289    40U,	// TSTrsi
3290    48U,	// TSTrsr
3291    0U,	// UADD16
3292    0U,	// UADD8
3293    0U,	// UASX
3294    34603008U,	// UBFX
3295    0U,	// UDF
3296    0U,	// UDIV
3297    0U,	// UHADD16
3298    0U,	// UHADD8
3299    0U,	// UHASX
3300    0U,	// UHSAX
3301    0U,	// UHSUB16
3302    0U,	// UHSUB8
3303    17825792U,	// UMAAL
3304    0U,	// UMLAL
3305    0U,	// UMLALv5
3306    17825792U,	// UMULL
3307    0U,	// UMULLv5
3308    0U,	// UQADD16
3309    0U,	// UQADD8
3310    0U,	// UQASX
3311    0U,	// UQSAX
3312    0U,	// UQSUB16
3313    0U,	// UQSUB8
3314    0U,	// USAD8
3315    17825792U,	// USADA8
3316    7340032U,	// USAT
3317    0U,	// USAT16
3318    0U,	// USAX
3319    0U,	// USUB16
3320    0U,	// USUB8
3321    6291456U,	// UXTAB
3322    6291456U,	// UXTAB16
3323    6291456U,	// UXTAH
3324    2560U,	// UXTB
3325    2560U,	// UXTB16
3326    2560U,	// UXTH
3327    1184U,	// VABALsv2i64
3328    1184U,	// VABALsv4i32
3329    1184U,	// VABALsv8i16
3330    1184U,	// VABALuv2i64
3331    1184U,	// VABALuv4i32
3332    1184U,	// VABALuv8i16
3333    1184U,	// VABAsv16i8
3334    1184U,	// VABAsv2i32
3335    1184U,	// VABAsv4i16
3336    1184U,	// VABAsv4i32
3337    1184U,	// VABAsv8i16
3338    1184U,	// VABAsv8i8
3339    1184U,	// VABAuv16i8
3340    1184U,	// VABAuv2i32
3341    1184U,	// VABAuv4i16
3342    1184U,	// VABAuv4i32
3343    1184U,	// VABAuv8i16
3344    1184U,	// VABAuv8i8
3345    1048U,	// VABDLsv2i64
3346    1048U,	// VABDLsv4i32
3347    1048U,	// VABDLsv8i16
3348    1048U,	// VABDLuv2i64
3349    1048U,	// VABDLuv4i32
3350    1048U,	// VABDLuv8i16
3351    247328U,	// VABDfd
3352    247328U,	// VABDfq
3353    1048U,	// VABDsv16i8
3354    1048U,	// VABDsv2i32
3355    1048U,	// VABDsv4i16
3356    1048U,	// VABDsv4i32
3357    1048U,	// VABDsv8i16
3358    1048U,	// VABDsv8i8
3359    1048U,	// VABDuv16i8
3360    1048U,	// VABDuv2i32
3361    1048U,	// VABDuv4i16
3362    1048U,	// VABDuv4i32
3363    1048U,	// VABDuv8i16
3364    1048U,	// VABDuv8i8
3365    56U,	// VABSD
3366    56U,	// VABSS
3367    56U,	// VABSfd
3368    56U,	// VABSfq
3369    0U,	// VABSv16i8
3370    0U,	// VABSv2i32
3371    0U,	// VABSv4i16
3372    0U,	// VABSv4i32
3373    0U,	// VABSv8i16
3374    0U,	// VABSv8i8
3375    247328U,	// VACGEd
3376    247328U,	// VACGEq
3377    247328U,	// VACGTd
3378    247328U,	// VACGTq
3379    247328U,	// VADDD
3380    1048U,	// VADDHNv2i32
3381    1048U,	// VADDHNv4i16
3382    1048U,	// VADDHNv8i8
3383    1048U,	// VADDLsv2i64
3384    1048U,	// VADDLsv4i32
3385    1048U,	// VADDLsv8i16
3386    1048U,	// VADDLuv2i64
3387    1048U,	// VADDLuv4i32
3388    1048U,	// VADDLuv8i16
3389    247328U,	// VADDS
3390    1048U,	// VADDWsv2i64
3391    1048U,	// VADDWsv4i32
3392    1048U,	// VADDWsv8i16
3393    1048U,	// VADDWuv2i64
3394    1048U,	// VADDWuv4i32
3395    1048U,	// VADDWuv8i16
3396    247328U,	// VADDfd
3397    247328U,	// VADDfq
3398    1048U,	// VADDv16i8
3399    1048U,	// VADDv1i64
3400    1048U,	// VADDv2i32
3401    1048U,	// VADDv2i64
3402    1048U,	// VADDv4i16
3403    1048U,	// VADDv4i32
3404    1048U,	// VADDv8i16
3405    1048U,	// VADDv8i8
3406    0U,	// VANDd
3407    0U,	// VANDq
3408    0U,	// VBICd
3409    0U,	// VBICiv2i32
3410    0U,	// VBICiv4i16
3411    0U,	// VBICiv4i32
3412    0U,	// VBICiv8i16
3413    0U,	// VBICq
3414    262168U,	// VBIFd
3415    262168U,	// VBIFq
3416    262168U,	// VBITd
3417    262168U,	// VBITq
3418    262168U,	// VBSLd
3419    262168U,	// VBSLq
3420    247328U,	// VCEQfd
3421    247328U,	// VCEQfq
3422    1048U,	// VCEQv16i8
3423    1048U,	// VCEQv2i32
3424    1048U,	// VCEQv4i16
3425    1048U,	// VCEQv4i32
3426    1048U,	// VCEQv8i16
3427    1048U,	// VCEQv8i8
3428    2U,	// VCEQzv16i8
3429    184U,	// VCEQzv2f32
3430    2U,	// VCEQzv2i32
3431    184U,	// VCEQzv4f32
3432    2U,	// VCEQzv4i16
3433    2U,	// VCEQzv4i32
3434    2U,	// VCEQzv8i16
3435    2U,	// VCEQzv8i8
3436    247328U,	// VCGEfd
3437    247328U,	// VCGEfq
3438    1048U,	// VCGEsv16i8
3439    1048U,	// VCGEsv2i32
3440    1048U,	// VCGEsv4i16
3441    1048U,	// VCGEsv4i32
3442    1048U,	// VCGEsv8i16
3443    1048U,	// VCGEsv8i8
3444    1048U,	// VCGEuv16i8
3445    1048U,	// VCGEuv2i32
3446    1048U,	// VCGEuv4i16
3447    1048U,	// VCGEuv4i32
3448    1048U,	// VCGEuv8i16
3449    1048U,	// VCGEuv8i8
3450    2U,	// VCGEzv16i8
3451    184U,	// VCGEzv2f32
3452    2U,	// VCGEzv2i32
3453    184U,	// VCGEzv4f32
3454    2U,	// VCGEzv4i16
3455    2U,	// VCGEzv4i32
3456    2U,	// VCGEzv8i16
3457    2U,	// VCGEzv8i8
3458    247328U,	// VCGTfd
3459    247328U,	// VCGTfq
3460    1048U,	// VCGTsv16i8
3461    1048U,	// VCGTsv2i32
3462    1048U,	// VCGTsv4i16
3463    1048U,	// VCGTsv4i32
3464    1048U,	// VCGTsv8i16
3465    1048U,	// VCGTsv8i8
3466    1048U,	// VCGTuv16i8
3467    1048U,	// VCGTuv2i32
3468    1048U,	// VCGTuv4i16
3469    1048U,	// VCGTuv4i32
3470    1048U,	// VCGTuv8i16
3471    1048U,	// VCGTuv8i8
3472    2U,	// VCGTzv16i8
3473    184U,	// VCGTzv2f32
3474    2U,	// VCGTzv2i32
3475    184U,	// VCGTzv4f32
3476    2U,	// VCGTzv4i16
3477    2U,	// VCGTzv4i32
3478    2U,	// VCGTzv8i16
3479    2U,	// VCGTzv8i8
3480    2U,	// VCLEzv16i8
3481    184U,	// VCLEzv2f32
3482    2U,	// VCLEzv2i32
3483    184U,	// VCLEzv4f32
3484    2U,	// VCLEzv4i16
3485    2U,	// VCLEzv4i32
3486    2U,	// VCLEzv8i16
3487    2U,	// VCLEzv8i8
3488    0U,	// VCLSv16i8
3489    0U,	// VCLSv2i32
3490    0U,	// VCLSv4i16
3491    0U,	// VCLSv4i32
3492    0U,	// VCLSv8i16
3493    0U,	// VCLSv8i8
3494    2U,	// VCLTzv16i8
3495    184U,	// VCLTzv2f32
3496    2U,	// VCLTzv2i32
3497    184U,	// VCLTzv4f32
3498    2U,	// VCLTzv4i16
3499    2U,	// VCLTzv4i32
3500    2U,	// VCLTzv8i16
3501    2U,	// VCLTzv8i8
3502    0U,	// VCLZv16i8
3503    0U,	// VCLZv2i32
3504    0U,	// VCLZv4i16
3505    0U,	// VCLZv4i32
3506    0U,	// VCLZv8i16
3507    0U,	// VCLZv8i8
3508    56U,	// VCMPD
3509    56U,	// VCMPED
3510    56U,	// VCMPES
3511    0U,	// VCMPEZD
3512    0U,	// VCMPEZS
3513    56U,	// VCMPS
3514    0U,	// VCMPZD
3515    0U,	// VCMPZS
3516    1024U,	// VCNTd
3517    1024U,	// VCNTq
3518    0U,	// VCVTANSD
3519    0U,	// VCVTANSQ
3520    0U,	// VCVTANUD
3521    0U,	// VCVTANUQ
3522    0U,	// VCVTASD
3523    0U,	// VCVTASS
3524    0U,	// VCVTAUD
3525    0U,	// VCVTAUS
3526    0U,	// VCVTBDH
3527    0U,	// VCVTBHD
3528    0U,	// VCVTBHS
3529    0U,	// VCVTBSH
3530    0U,	// VCVTDS
3531    0U,	// VCVTMNSD
3532    0U,	// VCVTMNSQ
3533    0U,	// VCVTMNUD
3534    0U,	// VCVTMNUQ
3535    0U,	// VCVTMSD
3536    0U,	// VCVTMSS
3537    0U,	// VCVTMUD
3538    0U,	// VCVTMUS
3539    0U,	// VCVTNNSD
3540    0U,	// VCVTNNSQ
3541    0U,	// VCVTNNUD
3542    0U,	// VCVTNNUQ
3543    0U,	// VCVTNSD
3544    0U,	// VCVTNSS
3545    0U,	// VCVTNUD
3546    0U,	// VCVTNUS
3547    0U,	// VCVTPNSD
3548    0U,	// VCVTPNSQ
3549    0U,	// VCVTPNUD
3550    0U,	// VCVTPNUQ
3551    0U,	// VCVTPSD
3552    0U,	// VCVTPSS
3553    0U,	// VCVTPUD
3554    0U,	// VCVTPUS
3555    0U,	// VCVTSD
3556    0U,	// VCVTTDH
3557    0U,	// VCVTTHD
3558    0U,	// VCVTTHS
3559    0U,	// VCVTTSH
3560    0U,	// VCVTf2h
3561    0U,	// VCVTf2sd
3562    0U,	// VCVTf2sq
3563    0U,	// VCVTf2ud
3564    0U,	// VCVTf2uq
3565    58U,	// VCVTf2xsd
3566    58U,	// VCVTf2xsq
3567    58U,	// VCVTf2xud
3568    58U,	// VCVTf2xuq
3569    0U,	// VCVTh2f
3570    0U,	// VCVTs2fd
3571    0U,	// VCVTs2fq
3572    0U,	// VCVTu2fd
3573    0U,	// VCVTu2fq
3574    58U,	// VCVTxs2fd
3575    58U,	// VCVTxs2fq
3576    58U,	// VCVTxu2fd
3577    58U,	// VCVTxu2fq
3578    247328U,	// VDIVD
3579    247328U,	// VDIVS
3580    1024U,	// VDUP16d
3581    1024U,	// VDUP16q
3582    1024U,	// VDUP32d
3583    1024U,	// VDUP32q
3584    1024U,	// VDUP8d
3585    1024U,	// VDUP8q
3586    3072U,	// VDUPLN16d
3587    3072U,	// VDUPLN16q
3588    3072U,	// VDUPLN32d
3589    3072U,	// VDUPLN32q
3590    3072U,	// VDUPLN8d
3591    3072U,	// VDUPLN8q
3592    0U,	// VEORd
3593    0U,	// VEORq
3594    17825792U,	// VEXTd16
3595    17825792U,	// VEXTd32
3596    17825792U,	// VEXTd8
3597    17825792U,	// VEXTq16
3598    17825792U,	// VEXTq32
3599    17825792U,	// VEXTq64
3600    17825792U,	// VEXTq8
3601    249378U,	// VFMAD
3602    249378U,	// VFMAS
3603    249378U,	// VFMAfd
3604    249378U,	// VFMAfq
3605    249378U,	// VFMSD
3606    249378U,	// VFMSS
3607    249378U,	// VFMSfd
3608    249378U,	// VFMSfq
3609    249378U,	// VFNMAD
3610    249378U,	// VFNMAS
3611    249378U,	// VFNMSD
3612    249378U,	// VFNMSS
3613    3072U,	// VGETLNi32
3614    3U,	// VGETLNs16
3615    3U,	// VGETLNs8
3616    3U,	// VGETLNu16
3617    3U,	// VGETLNu8
3618    1048U,	// VHADDsv16i8
3619    1048U,	// VHADDsv2i32
3620    1048U,	// VHADDsv4i16
3621    1048U,	// VHADDsv4i32
3622    1048U,	// VHADDsv8i16
3623    1048U,	// VHADDsv8i8
3624    1048U,	// VHADDuv16i8
3625    1048U,	// VHADDuv2i32
3626    1048U,	// VHADDuv4i16
3627    1048U,	// VHADDuv4i32
3628    1048U,	// VHADDuv8i16
3629    1048U,	// VHADDuv8i8
3630    1048U,	// VHSUBsv16i8
3631    1048U,	// VHSUBsv2i32
3632    1048U,	// VHSUBsv4i16
3633    1048U,	// VHSUBsv4i32
3634    1048U,	// VHSUBsv8i16
3635    1048U,	// VHSUBsv8i8
3636    1048U,	// VHSUBuv16i8
3637    1048U,	// VHSUBuv2i32
3638    1048U,	// VHSUBuv4i16
3639    1048U,	// VHSUBuv4i32
3640    1048U,	// VHSUBuv8i16
3641    1048U,	// VHSUBuv8i8
3642    59U,	// VLD1DUPd16
3643    195U,	// VLD1DUPd16wb_fixed
3644    4131U,	// VLD1DUPd16wb_register
3645    59U,	// VLD1DUPd32
3646    195U,	// VLD1DUPd32wb_fixed
3647    4131U,	// VLD1DUPd32wb_register
3648    59U,	// VLD1DUPd8
3649    195U,	// VLD1DUPd8wb_fixed
3650    4131U,	// VLD1DUPd8wb_register
3651    59U,	// VLD1DUPq16
3652    195U,	// VLD1DUPq16wb_fixed
3653    4131U,	// VLD1DUPq16wb_register
3654    59U,	// VLD1DUPq32
3655    195U,	// VLD1DUPq32wb_fixed
3656    4131U,	// VLD1DUPq32wb_register
3657    59U,	// VLD1DUPq8
3658    195U,	// VLD1DUPq8wb_fixed
3659    4131U,	// VLD1DUPq8wb_register
3660    283339U,	// VLD1LNd16
3661    299731U,	// VLD1LNd16_UPD
3662    283339U,	// VLD1LNd32
3663    299731U,	// VLD1LNd32_UPD
3664    283339U,	// VLD1LNd8
3665    299731U,	// VLD1LNd8_UPD
3666    1240U,	// VLD1LNdAsm_16
3667    1240U,	// VLD1LNdAsm_32
3668    1240U,	// VLD1LNdAsm_8
3669    5336U,	// VLD1LNdWB_fixed_Asm_16
3670    5336U,	// VLD1LNdWB_fixed_Asm_32
3671    5336U,	// VLD1LNdWB_fixed_Asm_8
3672    311512U,	// VLD1LNdWB_register_Asm_16
3673    311512U,	// VLD1LNdWB_register_Asm_32
3674    311512U,	// VLD1LNdWB_register_Asm_8
3675    0U,	// VLD1LNq16Pseudo
3676    0U,	// VLD1LNq16Pseudo_UPD
3677    0U,	// VLD1LNq32Pseudo
3678    0U,	// VLD1LNq32Pseudo_UPD
3679    0U,	// VLD1LNq8Pseudo
3680    0U,	// VLD1LNq8Pseudo_UPD
3681    59U,	// VLD1d16
3682    59U,	// VLD1d16Q
3683    195U,	// VLD1d16Qwb_fixed
3684    4131U,	// VLD1d16Qwb_register
3685    59U,	// VLD1d16T
3686    195U,	// VLD1d16Twb_fixed
3687    4131U,	// VLD1d16Twb_register
3688    195U,	// VLD1d16wb_fixed
3689    4131U,	// VLD1d16wb_register
3690    59U,	// VLD1d32
3691    59U,	// VLD1d32Q
3692    195U,	// VLD1d32Qwb_fixed
3693    4131U,	// VLD1d32Qwb_register
3694    59U,	// VLD1d32T
3695    195U,	// VLD1d32Twb_fixed
3696    4131U,	// VLD1d32Twb_register
3697    195U,	// VLD1d32wb_fixed
3698    4131U,	// VLD1d32wb_register
3699    59U,	// VLD1d64
3700    59U,	// VLD1d64Q
3701    0U,	// VLD1d64QPseudo
3702    0U,	// VLD1d64QPseudoWB_fixed
3703    0U,	// VLD1d64QPseudoWB_register
3704    195U,	// VLD1d64Qwb_fixed
3705    4131U,	// VLD1d64Qwb_register
3706    59U,	// VLD1d64T
3707    0U,	// VLD1d64TPseudo
3708    0U,	// VLD1d64TPseudoWB_fixed
3709    0U,	// VLD1d64TPseudoWB_register
3710    195U,	// VLD1d64Twb_fixed
3711    4131U,	// VLD1d64Twb_register
3712    195U,	// VLD1d64wb_fixed
3713    4131U,	// VLD1d64wb_register
3714    59U,	// VLD1d8
3715    59U,	// VLD1d8Q
3716    195U,	// VLD1d8Qwb_fixed
3717    4131U,	// VLD1d8Qwb_register
3718    59U,	// VLD1d8T
3719    195U,	// VLD1d8Twb_fixed
3720    4131U,	// VLD1d8Twb_register
3721    195U,	// VLD1d8wb_fixed
3722    4131U,	// VLD1d8wb_register
3723    59U,	// VLD1q16
3724    195U,	// VLD1q16wb_fixed
3725    4131U,	// VLD1q16wb_register
3726    59U,	// VLD1q32
3727    195U,	// VLD1q32wb_fixed
3728    4131U,	// VLD1q32wb_register
3729    59U,	// VLD1q64
3730    195U,	// VLD1q64wb_fixed
3731    4131U,	// VLD1q64wb_register
3732    59U,	// VLD1q8
3733    195U,	// VLD1q8wb_fixed
3734    4131U,	// VLD1q8wb_register
3735    59U,	// VLD2DUPd16
3736    195U,	// VLD2DUPd16wb_fixed
3737    4131U,	// VLD2DUPd16wb_register
3738    59U,	// VLD2DUPd16x2
3739    195U,	// VLD2DUPd16x2wb_fixed
3740    4131U,	// VLD2DUPd16x2wb_register
3741    59U,	// VLD2DUPd32
3742    195U,	// VLD2DUPd32wb_fixed
3743    4131U,	// VLD2DUPd32wb_register
3744    59U,	// VLD2DUPd32x2
3745    195U,	// VLD2DUPd32x2wb_fixed
3746    4131U,	// VLD2DUPd32x2wb_register
3747    59U,	// VLD2DUPd8
3748    195U,	// VLD2DUPd8wb_fixed
3749    4131U,	// VLD2DUPd8wb_register
3750    59U,	// VLD2DUPd8x2
3751    195U,	// VLD2DUPd8x2wb_fixed
3752    4131U,	// VLD2DUPd8x2wb_register
3753    333523U,	// VLD2LNd16
3754    0U,	// VLD2LNd16Pseudo
3755    0U,	// VLD2LNd16Pseudo_UPD
3756    350435U,	// VLD2LNd16_UPD
3757    333523U,	// VLD2LNd32
3758    0U,	// VLD2LNd32Pseudo
3759    0U,	// VLD2LNd32Pseudo_UPD
3760    350435U,	// VLD2LNd32_UPD
3761    333523U,	// VLD2LNd8
3762    0U,	// VLD2LNd8Pseudo
3763    0U,	// VLD2LNd8Pseudo_UPD
3764    350435U,	// VLD2LNd8_UPD
3765    1240U,	// VLD2LNdAsm_16
3766    1240U,	// VLD2LNdAsm_32
3767    1240U,	// VLD2LNdAsm_8
3768    5336U,	// VLD2LNdWB_fixed_Asm_16
3769    5336U,	// VLD2LNdWB_fixed_Asm_32
3770    5336U,	// VLD2LNdWB_fixed_Asm_8
3771    311512U,	// VLD2LNdWB_register_Asm_16
3772    311512U,	// VLD2LNdWB_register_Asm_32
3773    311512U,	// VLD2LNdWB_register_Asm_8
3774    333523U,	// VLD2LNq16
3775    0U,	// VLD2LNq16Pseudo
3776    0U,	// VLD2LNq16Pseudo_UPD
3777    350435U,	// VLD2LNq16_UPD
3778    333523U,	// VLD2LNq32
3779    0U,	// VLD2LNq32Pseudo
3780    0U,	// VLD2LNq32Pseudo_UPD
3781    350435U,	// VLD2LNq32_UPD
3782    1240U,	// VLD2LNqAsm_16
3783    1240U,	// VLD2LNqAsm_32
3784    5336U,	// VLD2LNqWB_fixed_Asm_16
3785    5336U,	// VLD2LNqWB_fixed_Asm_32
3786    311512U,	// VLD2LNqWB_register_Asm_16
3787    311512U,	// VLD2LNqWB_register_Asm_32
3788    59U,	// VLD2b16
3789    195U,	// VLD2b16wb_fixed
3790    4131U,	// VLD2b16wb_register
3791    59U,	// VLD2b32
3792    195U,	// VLD2b32wb_fixed
3793    4131U,	// VLD2b32wb_register
3794    59U,	// VLD2b8
3795    195U,	// VLD2b8wb_fixed
3796    4131U,	// VLD2b8wb_register
3797    59U,	// VLD2d16
3798    195U,	// VLD2d16wb_fixed
3799    4131U,	// VLD2d16wb_register
3800    59U,	// VLD2d32
3801    195U,	// VLD2d32wb_fixed
3802    4131U,	// VLD2d32wb_register
3803    59U,	// VLD2d8
3804    195U,	// VLD2d8wb_fixed
3805    4131U,	// VLD2d8wb_register
3806    59U,	// VLD2q16
3807    0U,	// VLD2q16Pseudo
3808    0U,	// VLD2q16PseudoWB_fixed
3809    0U,	// VLD2q16PseudoWB_register
3810    195U,	// VLD2q16wb_fixed
3811    4131U,	// VLD2q16wb_register
3812    59U,	// VLD2q32
3813    0U,	// VLD2q32Pseudo
3814    0U,	// VLD2q32PseudoWB_fixed
3815    0U,	// VLD2q32PseudoWB_register
3816    195U,	// VLD2q32wb_fixed
3817    4131U,	// VLD2q32wb_register
3818    59U,	// VLD2q8
3819    0U,	// VLD2q8Pseudo
3820    0U,	// VLD2q8PseudoWB_fixed
3821    0U,	// VLD2q8PseudoWB_register
3822    195U,	// VLD2q8wb_fixed
3823    4131U,	// VLD2q8wb_register
3824    6892U,	// VLD3DUPd16
3825    0U,	// VLD3DUPd16Pseudo
3826    0U,	// VLD3DUPd16Pseudo_UPD
3827    367852U,	// VLD3DUPd16_UPD
3828    6892U,	// VLD3DUPd32
3829    0U,	// VLD3DUPd32Pseudo
3830    0U,	// VLD3DUPd32Pseudo_UPD
3831    367852U,	// VLD3DUPd32_UPD
3832    6892U,	// VLD3DUPd8
3833    0U,	// VLD3DUPd8Pseudo
3834    0U,	// VLD3DUPd8Pseudo_UPD
3835    367852U,	// VLD3DUPd8_UPD
3836    0U,	// VLD3DUPdAsm_16
3837    0U,	// VLD3DUPdAsm_32
3838    0U,	// VLD3DUPdAsm_8
3839    4U,	// VLD3DUPdWB_fixed_Asm_16
3840    4U,	// VLD3DUPdWB_fixed_Asm_32
3841    4U,	// VLD3DUPdWB_fixed_Asm_8
3842    1184U,	// VLD3DUPdWB_register_Asm_16
3843    1184U,	// VLD3DUPdWB_register_Asm_32
3844    1184U,	// VLD3DUPdWB_register_Asm_8
3845    6892U,	// VLD3DUPq16
3846    367852U,	// VLD3DUPq16_UPD
3847    6892U,	// VLD3DUPq32
3848    367852U,	// VLD3DUPq32_UPD
3849    6892U,	// VLD3DUPq8
3850    367852U,	// VLD3DUPq8_UPD
3851    0U,	// VLD3DUPqAsm_16
3852    0U,	// VLD3DUPqAsm_32
3853    0U,	// VLD3DUPqAsm_8
3854    4U,	// VLD3DUPqWB_fixed_Asm_16
3855    4U,	// VLD3DUPqWB_fixed_Asm_32
3856    4U,	// VLD3DUPqWB_fixed_Asm_8
3857    1184U,	// VLD3DUPqWB_register_Asm_16
3858    1184U,	// VLD3DUPqWB_register_Asm_32
3859    1184U,	// VLD3DUPqWB_register_Asm_8
3860    383203U,	// VLD3LNd16
3861    0U,	// VLD3LNd16Pseudo
3862    0U,	// VLD3LNd16Pseudo_UPD
3863    398067U,	// VLD3LNd16_UPD
3864    383203U,	// VLD3LNd32
3865    0U,	// VLD3LNd32Pseudo
3866    0U,	// VLD3LNd32Pseudo_UPD
3867    398067U,	// VLD3LNd32_UPD
3868    383203U,	// VLD3LNd8
3869    0U,	// VLD3LNd8Pseudo
3870    0U,	// VLD3LNd8Pseudo_UPD
3871    398067U,	// VLD3LNd8_UPD
3872    1240U,	// VLD3LNdAsm_16
3873    1240U,	// VLD3LNdAsm_32
3874    1240U,	// VLD3LNdAsm_8
3875    5336U,	// VLD3LNdWB_fixed_Asm_16
3876    5336U,	// VLD3LNdWB_fixed_Asm_32
3877    5336U,	// VLD3LNdWB_fixed_Asm_8
3878    311512U,	// VLD3LNdWB_register_Asm_16
3879    311512U,	// VLD3LNdWB_register_Asm_32
3880    311512U,	// VLD3LNdWB_register_Asm_8
3881    383203U,	// VLD3LNq16
3882    0U,	// VLD3LNq16Pseudo
3883    0U,	// VLD3LNq16Pseudo_UPD
3884    398067U,	// VLD3LNq16_UPD
3885    383203U,	// VLD3LNq32
3886    0U,	// VLD3LNq32Pseudo
3887    0U,	// VLD3LNq32Pseudo_UPD
3888    398067U,	// VLD3LNq32_UPD
3889    1240U,	// VLD3LNqAsm_16
3890    1240U,	// VLD3LNqAsm_32
3891    5336U,	// VLD3LNqWB_fixed_Asm_16
3892    5336U,	// VLD3LNqWB_fixed_Asm_32
3893    311512U,	// VLD3LNqWB_register_Asm_16
3894    311512U,	// VLD3LNqWB_register_Asm_32
3895    58720256U,	// VLD3d16
3896    0U,	// VLD3d16Pseudo
3897    0U,	// VLD3d16Pseudo_UPD
3898    75497472U,	// VLD3d16_UPD
3899    58720256U,	// VLD3d32
3900    0U,	// VLD3d32Pseudo
3901    0U,	// VLD3d32Pseudo_UPD
3902    75497472U,	// VLD3d32_UPD
3903    58720256U,	// VLD3d8
3904    0U,	// VLD3d8Pseudo
3905    0U,	// VLD3d8Pseudo_UPD
3906    75497472U,	// VLD3d8_UPD
3907    59U,	// VLD3dAsm_16
3908    59U,	// VLD3dAsm_32
3909    59U,	// VLD3dAsm_8
3910    195U,	// VLD3dWB_fixed_Asm_16
3911    195U,	// VLD3dWB_fixed_Asm_32
3912    195U,	// VLD3dWB_fixed_Asm_8
3913    249379U,	// VLD3dWB_register_Asm_16
3914    249379U,	// VLD3dWB_register_Asm_32
3915    249379U,	// VLD3dWB_register_Asm_8
3916    58720256U,	// VLD3q16
3917    0U,	// VLD3q16Pseudo_UPD
3918    75497472U,	// VLD3q16_UPD
3919    0U,	// VLD3q16oddPseudo
3920    0U,	// VLD3q16oddPseudo_UPD
3921    58720256U,	// VLD3q32
3922    0U,	// VLD3q32Pseudo_UPD
3923    75497472U,	// VLD3q32_UPD
3924    0U,	// VLD3q32oddPseudo
3925    0U,	// VLD3q32oddPseudo_UPD
3926    58720256U,	// VLD3q8
3927    0U,	// VLD3q8Pseudo_UPD
3928    75497472U,	// VLD3q8_UPD
3929    0U,	// VLD3q8oddPseudo
3930    0U,	// VLD3q8oddPseudo_UPD
3931    0U,	// VLD3qAsm_16
3932    0U,	// VLD3qAsm_32
3933    0U,	// VLD3qAsm_8
3934    4U,	// VLD3qWB_fixed_Asm_16
3935    4U,	// VLD3qWB_fixed_Asm_32
3936    4U,	// VLD3qWB_fixed_Asm_8
3937    1184U,	// VLD3qWB_register_Asm_16
3938    1184U,	// VLD3qWB_register_Asm_32
3939    1184U,	// VLD3qWB_register_Asm_8
3940    253180U,	// VLD4DUPd16
3941    0U,	// VLD4DUPd16Pseudo
3942    0U,	// VLD4DUPd16Pseudo_UPD
3943    7932U,	// VLD4DUPd16_UPD
3944    253180U,	// VLD4DUPd32
3945    0U,	// VLD4DUPd32Pseudo
3946    0U,	// VLD4DUPd32Pseudo_UPD
3947    7932U,	// VLD4DUPd32_UPD
3948    253180U,	// VLD4DUPd8
3949    0U,	// VLD4DUPd8Pseudo
3950    0U,	// VLD4DUPd8Pseudo_UPD
3951    7932U,	// VLD4DUPd8_UPD
3952    0U,	// VLD4DUPdAsm_16
3953    0U,	// VLD4DUPdAsm_32
3954    0U,	// VLD4DUPdAsm_8
3955    4U,	// VLD4DUPdWB_fixed_Asm_16
3956    4U,	// VLD4DUPdWB_fixed_Asm_32
3957    4U,	// VLD4DUPdWB_fixed_Asm_8
3958    1184U,	// VLD4DUPdWB_register_Asm_16
3959    1184U,	// VLD4DUPdWB_register_Asm_32
3960    1184U,	// VLD4DUPdWB_register_Asm_8
3961    253180U,	// VLD4DUPq16
3962    7932U,	// VLD4DUPq16_UPD
3963    253180U,	// VLD4DUPq32
3964    7932U,	// VLD4DUPq32_UPD
3965    253180U,	// VLD4DUPq8
3966    7932U,	// VLD4DUPq8_UPD
3967    0U,	// VLD4DUPqAsm_16
3968    0U,	// VLD4DUPqAsm_32
3969    0U,	// VLD4DUPqAsm_8
3970    4U,	// VLD4DUPqWB_fixed_Asm_16
3971    4U,	// VLD4DUPqWB_fixed_Asm_32
3972    4U,	// VLD4DUPqWB_fixed_Asm_8
3973    1184U,	// VLD4DUPqWB_register_Asm_16
3974    1184U,	// VLD4DUPqWB_register_Asm_32
3975    1184U,	// VLD4DUPqWB_register_Asm_8
3976    93591283U,	// VLD4LNd16
3977    0U,	// VLD4LNd16Pseudo
3978    0U,	// VLD4LNd16Pseudo_UPD
3979    259U,	// VLD4LNd16_UPD
3980    93591283U,	// VLD4LNd32
3981    0U,	// VLD4LNd32Pseudo
3982    0U,	// VLD4LNd32Pseudo_UPD
3983    259U,	// VLD4LNd32_UPD
3984    93591283U,	// VLD4LNd8
3985    0U,	// VLD4LNd8Pseudo
3986    0U,	// VLD4LNd8Pseudo_UPD
3987    259U,	// VLD4LNd8_UPD
3988    1240U,	// VLD4LNdAsm_16
3989    1240U,	// VLD4LNdAsm_32
3990    1240U,	// VLD4LNdAsm_8
3991    5336U,	// VLD4LNdWB_fixed_Asm_16
3992    5336U,	// VLD4LNdWB_fixed_Asm_32
3993    5336U,	// VLD4LNdWB_fixed_Asm_8
3994    311512U,	// VLD4LNdWB_register_Asm_16
3995    311512U,	// VLD4LNdWB_register_Asm_32
3996    311512U,	// VLD4LNdWB_register_Asm_8
3997    93591283U,	// VLD4LNq16
3998    0U,	// VLD4LNq16Pseudo
3999    0U,	// VLD4LNq16Pseudo_UPD
4000    259U,	// VLD4LNq16_UPD
4001    93591283U,	// VLD4LNq32
4002    0U,	// VLD4LNq32Pseudo
4003    0U,	// VLD4LNq32Pseudo_UPD
4004    259U,	// VLD4LNq32_UPD
4005    1240U,	// VLD4LNqAsm_16
4006    1240U,	// VLD4LNqAsm_32
4007    5336U,	// VLD4LNqWB_fixed_Asm_16
4008    5336U,	// VLD4LNqWB_fixed_Asm_32
4009    311512U,	// VLD4LNqWB_register_Asm_16
4010    311512U,	// VLD4LNqWB_register_Asm_32
4011    286261248U,	// VLD4d16
4012    0U,	// VLD4d16Pseudo
4013    0U,	// VLD4d16Pseudo_UPD
4014    823132160U,	// VLD4d16_UPD
4015    286261248U,	// VLD4d32
4016    0U,	// VLD4d32Pseudo
4017    0U,	// VLD4d32Pseudo_UPD
4018    823132160U,	// VLD4d32_UPD
4019    286261248U,	// VLD4d8
4020    0U,	// VLD4d8Pseudo
4021    0U,	// VLD4d8Pseudo_UPD
4022    823132160U,	// VLD4d8_UPD
4023    59U,	// VLD4dAsm_16
4024    59U,	// VLD4dAsm_32
4025    59U,	// VLD4dAsm_8
4026    195U,	// VLD4dWB_fixed_Asm_16
4027    195U,	// VLD4dWB_fixed_Asm_32
4028    195U,	// VLD4dWB_fixed_Asm_8
4029    249379U,	// VLD4dWB_register_Asm_16
4030    249379U,	// VLD4dWB_register_Asm_32
4031    249379U,	// VLD4dWB_register_Asm_8
4032    286261248U,	// VLD4q16
4033    0U,	// VLD4q16Pseudo_UPD
4034    823132160U,	// VLD4q16_UPD
4035    0U,	// VLD4q16oddPseudo
4036    0U,	// VLD4q16oddPseudo_UPD
4037    286261248U,	// VLD4q32
4038    0U,	// VLD4q32Pseudo_UPD
4039    823132160U,	// VLD4q32_UPD
4040    0U,	// VLD4q32oddPseudo
4041    0U,	// VLD4q32oddPseudo_UPD
4042    286261248U,	// VLD4q8
4043    0U,	// VLD4q8Pseudo_UPD
4044    823132160U,	// VLD4q8_UPD
4045    0U,	// VLD4q8oddPseudo
4046    0U,	// VLD4q8oddPseudo_UPD
4047    0U,	// VLD4qAsm_16
4048    0U,	// VLD4qAsm_32
4049    0U,	// VLD4qAsm_8
4050    4U,	// VLD4qWB_fixed_Asm_16
4051    4U,	// VLD4qWB_fixed_Asm_32
4052    4U,	// VLD4qWB_fixed_Asm_8
4053    1184U,	// VLD4qWB_register_Asm_16
4054    1184U,	// VLD4qWB_register_Asm_32
4055    1184U,	// VLD4qWB_register_Asm_8
4056    57U,	// VLDMDDB_UPD
4057    1088U,	// VLDMDIA
4058    57U,	// VLDMDIA_UPD
4059    0U,	// VLDMQIA
4060    57U,	// VLDMSDB_UPD
4061    1088U,	// VLDMSIA
4062    57U,	// VLDMSIA_UPD
4063    264U,	// VLDRD
4064    264U,	// VLDRS
4065    1048U,	// VMAXNMD
4066    1048U,	// VMAXNMND
4067    1048U,	// VMAXNMNQ
4068    1048U,	// VMAXNMS
4069    247328U,	// VMAXfd
4070    247328U,	// VMAXfq
4071    1048U,	// VMAXsv16i8
4072    1048U,	// VMAXsv2i32
4073    1048U,	// VMAXsv4i16
4074    1048U,	// VMAXsv4i32
4075    1048U,	// VMAXsv8i16
4076    1048U,	// VMAXsv8i8
4077    1048U,	// VMAXuv16i8
4078    1048U,	// VMAXuv2i32
4079    1048U,	// VMAXuv4i16
4080    1048U,	// VMAXuv4i32
4081    1048U,	// VMAXuv8i16
4082    1048U,	// VMAXuv8i8
4083    1048U,	// VMINNMD
4084    1048U,	// VMINNMND
4085    1048U,	// VMINNMNQ
4086    1048U,	// VMINNMS
4087    247328U,	// VMINfd
4088    247328U,	// VMINfq
4089    1048U,	// VMINsv16i8
4090    1048U,	// VMINsv2i32
4091    1048U,	// VMINsv4i16
4092    1048U,	// VMINsv4i32
4093    1048U,	// VMINsv8i16
4094    1048U,	// VMINsv8i8
4095    1048U,	// VMINuv16i8
4096    1048U,	// VMINuv2i32
4097    1048U,	// VMINuv4i16
4098    1048U,	// VMINuv4i32
4099    1048U,	// VMINuv8i16
4100    1048U,	// VMINuv8i8
4101    249378U,	// VMLAD
4102    8352U,	// VMLALslsv2i32
4103    8352U,	// VMLALslsv4i16
4104    8352U,	// VMLALsluv2i32
4105    8352U,	// VMLALsluv4i16
4106    1184U,	// VMLALsv2i64
4107    1184U,	// VMLALsv4i32
4108    1184U,	// VMLALsv8i16
4109    1184U,	// VMLALuv2i64
4110    1184U,	// VMLALuv4i32
4111    1184U,	// VMLALuv8i16
4112    249378U,	// VMLAS
4113    249378U,	// VMLAfd
4114    249378U,	// VMLAfq
4115    413218U,	// VMLAslfd
4116    413218U,	// VMLAslfq
4117    8352U,	// VMLAslv2i32
4118    8352U,	// VMLAslv4i16
4119    8352U,	// VMLAslv4i32
4120    8352U,	// VMLAslv8i16
4121    1184U,	// VMLAv16i8
4122    1184U,	// VMLAv2i32
4123    1184U,	// VMLAv4i16
4124    1184U,	// VMLAv4i32
4125    1184U,	// VMLAv8i16
4126    1184U,	// VMLAv8i8
4127    249378U,	// VMLSD
4128    8352U,	// VMLSLslsv2i32
4129    8352U,	// VMLSLslsv4i16
4130    8352U,	// VMLSLsluv2i32
4131    8352U,	// VMLSLsluv4i16
4132    1184U,	// VMLSLsv2i64
4133    1184U,	// VMLSLsv4i32
4134    1184U,	// VMLSLsv8i16
4135    1184U,	// VMLSLuv2i64
4136    1184U,	// VMLSLuv4i32
4137    1184U,	// VMLSLuv8i16
4138    249378U,	// VMLSS
4139    249378U,	// VMLSfd
4140    249378U,	// VMLSfq
4141    413218U,	// VMLSslfd
4142    413218U,	// VMLSslfq
4143    8352U,	// VMLSslv2i32
4144    8352U,	// VMLSslv4i16
4145    8352U,	// VMLSslv4i32
4146    8352U,	// VMLSslv8i16
4147    1184U,	// VMLSv16i8
4148    1184U,	// VMLSv2i32
4149    1184U,	// VMLSv4i16
4150    1184U,	// VMLSv4i32
4151    1184U,	// VMLSv8i16
4152    1184U,	// VMLSv8i8
4153    56U,	// VMOVD
4154    0U,	// VMOVD0
4155    0U,	// VMOVDRR
4156    0U,	// VMOVDcc
4157    0U,	// VMOVLsv2i64
4158    0U,	// VMOVLsv4i32
4159    0U,	// VMOVLsv8i16
4160    0U,	// VMOVLuv2i64
4161    0U,	// VMOVLuv4i32
4162    0U,	// VMOVLuv8i16
4163    0U,	// VMOVNv2i32
4164    0U,	// VMOVNv4i16
4165    0U,	// VMOVNv8i8
4166    0U,	// VMOVQ0
4167    0U,	// VMOVRRD
4168    17825792U,	// VMOVRRS
4169    1024U,	// VMOVRS
4170    56U,	// VMOVS
4171    1024U,	// VMOVSR
4172    17825792U,	// VMOVSRR
4173    0U,	// VMOVScc
4174    0U,	// VMOVv16i8
4175    0U,	// VMOVv1i64
4176    0U,	// VMOVv2f32
4177    0U,	// VMOVv2i32
4178    0U,	// VMOVv2i64
4179    0U,	// VMOVv4f32
4180    0U,	// VMOVv4i16
4181    0U,	// VMOVv4i32
4182    0U,	// VMOVv8i16
4183    0U,	// VMOVv8i8
4184    4U,	// VMRS
4185    4U,	// VMRS_FPEXC
4186    5U,	// VMRS_FPINST
4187    5U,	// VMRS_FPINST2
4188    5U,	// VMRS_FPSID
4189    5U,	// VMRS_MVFR0
4190    6U,	// VMRS_MVFR1
4191    6U,	// VMRS_MVFR2
4192    0U,	// VMSR
4193    0U,	// VMSR_FPEXC
4194    0U,	// VMSR_FPINST
4195    0U,	// VMSR_FPINST2
4196    0U,	// VMSR_FPSID
4197    247328U,	// VMULD
4198    1048U,	// VMULLp64
4199    0U,	// VMULLp8
4200    8728U,	// VMULLslsv2i32
4201    8728U,	// VMULLslsv4i16
4202    8728U,	// VMULLsluv2i32
4203    8728U,	// VMULLsluv4i16
4204    1048U,	// VMULLsv2i64
4205    1048U,	// VMULLsv4i32
4206    1048U,	// VMULLsv8i16
4207    1048U,	// VMULLuv2i64
4208    1048U,	// VMULLuv4i32
4209    1048U,	// VMULLuv8i16
4210    247328U,	// VMULS
4211    247328U,	// VMULfd
4212    247328U,	// VMULfq
4213    0U,	// VMULpd
4214    0U,	// VMULpq
4215    427552U,	// VMULslfd
4216    427552U,	// VMULslfq
4217    8728U,	// VMULslv2i32
4218    8728U,	// VMULslv4i16
4219    8728U,	// VMULslv4i32
4220    8728U,	// VMULslv8i16
4221    1048U,	// VMULv16i8
4222    1048U,	// VMULv2i32
4223    1048U,	// VMULv4i16
4224    1048U,	// VMULv4i32
4225    1048U,	// VMULv8i16
4226    1048U,	// VMULv8i8
4227    1024U,	// VMVNd
4228    1024U,	// VMVNq
4229    0U,	// VMVNv2i32
4230    0U,	// VMVNv4i16
4231    0U,	// VMVNv4i32
4232    0U,	// VMVNv8i16
4233    56U,	// VNEGD
4234    56U,	// VNEGS
4235    56U,	// VNEGf32q
4236    56U,	// VNEGfd
4237    0U,	// VNEGs16d
4238    0U,	// VNEGs16q
4239    0U,	// VNEGs32d
4240    0U,	// VNEGs32q
4241    0U,	// VNEGs8d
4242    0U,	// VNEGs8q
4243    249378U,	// VNMLAD
4244    249378U,	// VNMLAS
4245    249378U,	// VNMLSD
4246    249378U,	// VNMLSS
4247    247328U,	// VNMULD
4248    247328U,	// VNMULS
4249    0U,	// VORNd
4250    0U,	// VORNq
4251    0U,	// VORRd
4252    0U,	// VORRiv2i32
4253    0U,	// VORRiv4i16
4254    0U,	// VORRiv4i32
4255    0U,	// VORRiv8i16
4256    0U,	// VORRq
4257    0U,	// VPADALsv16i8
4258    0U,	// VPADALsv2i32
4259    0U,	// VPADALsv4i16
4260    0U,	// VPADALsv4i32
4261    0U,	// VPADALsv8i16
4262    0U,	// VPADALsv8i8
4263    0U,	// VPADALuv16i8
4264    0U,	// VPADALuv2i32
4265    0U,	// VPADALuv4i16
4266    0U,	// VPADALuv4i32
4267    0U,	// VPADALuv8i16
4268    0U,	// VPADALuv8i8
4269    0U,	// VPADDLsv16i8
4270    0U,	// VPADDLsv2i32
4271    0U,	// VPADDLsv4i16
4272    0U,	// VPADDLsv4i32
4273    0U,	// VPADDLsv8i16
4274    0U,	// VPADDLsv8i8
4275    0U,	// VPADDLuv16i8
4276    0U,	// VPADDLuv2i32
4277    0U,	// VPADDLuv4i16
4278    0U,	// VPADDLuv4i32
4279    0U,	// VPADDLuv8i16
4280    0U,	// VPADDLuv8i8
4281    247328U,	// VPADDf
4282    1048U,	// VPADDi16
4283    1048U,	// VPADDi32
4284    1048U,	// VPADDi8
4285    247328U,	// VPMAXf
4286    1048U,	// VPMAXs16
4287    1048U,	// VPMAXs32
4288    1048U,	// VPMAXs8
4289    1048U,	// VPMAXu16
4290    1048U,	// VPMAXu32
4291    1048U,	// VPMAXu8
4292    247328U,	// VPMINf
4293    1048U,	// VPMINs16
4294    1048U,	// VPMINs32
4295    1048U,	// VPMINs8
4296    1048U,	// VPMINu16
4297    1048U,	// VPMINu32
4298    1048U,	// VPMINu8
4299    0U,	// VQABSv16i8
4300    0U,	// VQABSv2i32
4301    0U,	// VQABSv4i16
4302    0U,	// VQABSv4i32
4303    0U,	// VQABSv8i16
4304    0U,	// VQABSv8i8
4305    1048U,	// VQADDsv16i8
4306    1048U,	// VQADDsv1i64
4307    1048U,	// VQADDsv2i32
4308    1048U,	// VQADDsv2i64
4309    1048U,	// VQADDsv4i16
4310    1048U,	// VQADDsv4i32
4311    1048U,	// VQADDsv8i16
4312    1048U,	// VQADDsv8i8
4313    1048U,	// VQADDuv16i8
4314    1048U,	// VQADDuv1i64
4315    1048U,	// VQADDuv2i32
4316    1048U,	// VQADDuv2i64
4317    1048U,	// VQADDuv4i16
4318    1048U,	// VQADDuv4i32
4319    1048U,	// VQADDuv8i16
4320    1048U,	// VQADDuv8i8
4321    8352U,	// VQDMLALslv2i32
4322    8352U,	// VQDMLALslv4i16
4323    1184U,	// VQDMLALv2i64
4324    1184U,	// VQDMLALv4i32
4325    8352U,	// VQDMLSLslv2i32
4326    8352U,	// VQDMLSLslv4i16
4327    1184U,	// VQDMLSLv2i64
4328    1184U,	// VQDMLSLv4i32
4329    8728U,	// VQDMULHslv2i32
4330    8728U,	// VQDMULHslv4i16
4331    8728U,	// VQDMULHslv4i32
4332    8728U,	// VQDMULHslv8i16
4333    1048U,	// VQDMULHv2i32
4334    1048U,	// VQDMULHv4i16
4335    1048U,	// VQDMULHv4i32
4336    1048U,	// VQDMULHv8i16
4337    8728U,	// VQDMULLslv2i32
4338    8728U,	// VQDMULLslv4i16
4339    1048U,	// VQDMULLv2i64
4340    1048U,	// VQDMULLv4i32
4341    0U,	// VQMOVNsuv2i32
4342    0U,	// VQMOVNsuv4i16
4343    0U,	// VQMOVNsuv8i8
4344    0U,	// VQMOVNsv2i32
4345    0U,	// VQMOVNsv4i16
4346    0U,	// VQMOVNsv8i8
4347    0U,	// VQMOVNuv2i32
4348    0U,	// VQMOVNuv4i16
4349    0U,	// VQMOVNuv8i8
4350    0U,	// VQNEGv16i8
4351    0U,	// VQNEGv2i32
4352    0U,	// VQNEGv4i16
4353    0U,	// VQNEGv4i32
4354    0U,	// VQNEGv8i16
4355    0U,	// VQNEGv8i8
4356    8728U,	// VQRDMULHslv2i32
4357    8728U,	// VQRDMULHslv4i16
4358    8728U,	// VQRDMULHslv4i32
4359    8728U,	// VQRDMULHslv8i16
4360    1048U,	// VQRDMULHv2i32
4361    1048U,	// VQRDMULHv4i16
4362    1048U,	// VQRDMULHv4i32
4363    1048U,	// VQRDMULHv8i16
4364    1048U,	// VQRSHLsv16i8
4365    1048U,	// VQRSHLsv1i64
4366    1048U,	// VQRSHLsv2i32
4367    1048U,	// VQRSHLsv2i64
4368    1048U,	// VQRSHLsv4i16
4369    1048U,	// VQRSHLsv4i32
4370    1048U,	// VQRSHLsv8i16
4371    1048U,	// VQRSHLsv8i8
4372    1048U,	// VQRSHLuv16i8
4373    1048U,	// VQRSHLuv1i64
4374    1048U,	// VQRSHLuv2i32
4375    1048U,	// VQRSHLuv2i64
4376    1048U,	// VQRSHLuv4i16
4377    1048U,	// VQRSHLuv4i32
4378    1048U,	// VQRSHLuv8i16
4379    1048U,	// VQRSHLuv8i8
4380    1048U,	// VQRSHRNsv2i32
4381    1048U,	// VQRSHRNsv4i16
4382    1048U,	// VQRSHRNsv8i8
4383    1048U,	// VQRSHRNuv2i32
4384    1048U,	// VQRSHRNuv4i16
4385    1048U,	// VQRSHRNuv8i8
4386    1048U,	// VQRSHRUNv2i32
4387    1048U,	// VQRSHRUNv4i16
4388    1048U,	// VQRSHRUNv8i8
4389    1048U,	// VQSHLsiv16i8
4390    1048U,	// VQSHLsiv1i64
4391    1048U,	// VQSHLsiv2i32
4392    1048U,	// VQSHLsiv2i64
4393    1048U,	// VQSHLsiv4i16
4394    1048U,	// VQSHLsiv4i32
4395    1048U,	// VQSHLsiv8i16
4396    1048U,	// VQSHLsiv8i8
4397    1048U,	// VQSHLsuv16i8
4398    1048U,	// VQSHLsuv1i64
4399    1048U,	// VQSHLsuv2i32
4400    1048U,	// VQSHLsuv2i64
4401    1048U,	// VQSHLsuv4i16
4402    1048U,	// VQSHLsuv4i32
4403    1048U,	// VQSHLsuv8i16
4404    1048U,	// VQSHLsuv8i8
4405    1048U,	// VQSHLsv16i8
4406    1048U,	// VQSHLsv1i64
4407    1048U,	// VQSHLsv2i32
4408    1048U,	// VQSHLsv2i64
4409    1048U,	// VQSHLsv4i16
4410    1048U,	// VQSHLsv4i32
4411    1048U,	// VQSHLsv8i16
4412    1048U,	// VQSHLsv8i8
4413    1048U,	// VQSHLuiv16i8
4414    1048U,	// VQSHLuiv1i64
4415    1048U,	// VQSHLuiv2i32
4416    1048U,	// VQSHLuiv2i64
4417    1048U,	// VQSHLuiv4i16
4418    1048U,	// VQSHLuiv4i32
4419    1048U,	// VQSHLuiv8i16
4420    1048U,	// VQSHLuiv8i8
4421    1048U,	// VQSHLuv16i8
4422    1048U,	// VQSHLuv1i64
4423    1048U,	// VQSHLuv2i32
4424    1048U,	// VQSHLuv2i64
4425    1048U,	// VQSHLuv4i16
4426    1048U,	// VQSHLuv4i32
4427    1048U,	// VQSHLuv8i16
4428    1048U,	// VQSHLuv8i8
4429    1048U,	// VQSHRNsv2i32
4430    1048U,	// VQSHRNsv4i16
4431    1048U,	// VQSHRNsv8i8
4432    1048U,	// VQSHRNuv2i32
4433    1048U,	// VQSHRNuv4i16
4434    1048U,	// VQSHRNuv8i8
4435    1048U,	// VQSHRUNv2i32
4436    1048U,	// VQSHRUNv4i16
4437    1048U,	// VQSHRUNv8i8
4438    1048U,	// VQSUBsv16i8
4439    1048U,	// VQSUBsv1i64
4440    1048U,	// VQSUBsv2i32
4441    1048U,	// VQSUBsv2i64
4442    1048U,	// VQSUBsv4i16
4443    1048U,	// VQSUBsv4i32
4444    1048U,	// VQSUBsv8i16
4445    1048U,	// VQSUBsv8i8
4446    1048U,	// VQSUBuv16i8
4447    1048U,	// VQSUBuv1i64
4448    1048U,	// VQSUBuv2i32
4449    1048U,	// VQSUBuv2i64
4450    1048U,	// VQSUBuv4i16
4451    1048U,	// VQSUBuv4i32
4452    1048U,	// VQSUBuv8i16
4453    1048U,	// VQSUBuv8i8
4454    1048U,	// VRADDHNv2i32
4455    1048U,	// VRADDHNv4i16
4456    1048U,	// VRADDHNv8i8
4457    0U,	// VRECPEd
4458    56U,	// VRECPEfd
4459    56U,	// VRECPEfq
4460    0U,	// VRECPEq
4461    247328U,	// VRECPSfd
4462    247328U,	// VRECPSfq
4463    1024U,	// VREV16d8
4464    1024U,	// VREV16q8
4465    1024U,	// VREV32d16
4466    1024U,	// VREV32d8
4467    1024U,	// VREV32q16
4468    1024U,	// VREV32q8
4469    1024U,	// VREV64d16
4470    1024U,	// VREV64d32
4471    1024U,	// VREV64d8
4472    1024U,	// VREV64q16
4473    1024U,	// VREV64q32
4474    1024U,	// VREV64q8
4475    1048U,	// VRHADDsv16i8
4476    1048U,	// VRHADDsv2i32
4477    1048U,	// VRHADDsv4i16
4478    1048U,	// VRHADDsv4i32
4479    1048U,	// VRHADDsv8i16
4480    1048U,	// VRHADDsv8i8
4481    1048U,	// VRHADDuv16i8
4482    1048U,	// VRHADDuv2i32
4483    1048U,	// VRHADDuv4i16
4484    1048U,	// VRHADDuv4i32
4485    1048U,	// VRHADDuv8i16
4486    1048U,	// VRHADDuv8i8
4487    0U,	// VRINTAD
4488    0U,	// VRINTAND
4489    0U,	// VRINTANQ
4490    0U,	// VRINTAS
4491    0U,	// VRINTMD
4492    0U,	// VRINTMND
4493    0U,	// VRINTMNQ
4494    0U,	// VRINTMS
4495    0U,	// VRINTND
4496    0U,	// VRINTNND
4497    0U,	// VRINTNNQ
4498    0U,	// VRINTNS
4499    0U,	// VRINTPD
4500    0U,	// VRINTPND
4501    0U,	// VRINTPNQ
4502    0U,	// VRINTPS
4503    56U,	// VRINTRD
4504    56U,	// VRINTRS
4505    56U,	// VRINTXD
4506    0U,	// VRINTXND
4507    0U,	// VRINTXNQ
4508    56U,	// VRINTXS
4509    56U,	// VRINTZD
4510    0U,	// VRINTZND
4511    0U,	// VRINTZNQ
4512    56U,	// VRINTZS
4513    1048U,	// VRSHLsv16i8
4514    1048U,	// VRSHLsv1i64
4515    1048U,	// VRSHLsv2i32
4516    1048U,	// VRSHLsv2i64
4517    1048U,	// VRSHLsv4i16
4518    1048U,	// VRSHLsv4i32
4519    1048U,	// VRSHLsv8i16
4520    1048U,	// VRSHLsv8i8
4521    1048U,	// VRSHLuv16i8
4522    1048U,	// VRSHLuv1i64
4523    1048U,	// VRSHLuv2i32
4524    1048U,	// VRSHLuv2i64
4525    1048U,	// VRSHLuv4i16
4526    1048U,	// VRSHLuv4i32
4527    1048U,	// VRSHLuv8i16
4528    1048U,	// VRSHLuv8i8
4529    1048U,	// VRSHRNv2i32
4530    1048U,	// VRSHRNv4i16
4531    1048U,	// VRSHRNv8i8
4532    1048U,	// VRSHRsv16i8
4533    1048U,	// VRSHRsv1i64
4534    1048U,	// VRSHRsv2i32
4535    1048U,	// VRSHRsv2i64
4536    1048U,	// VRSHRsv4i16
4537    1048U,	// VRSHRsv4i32
4538    1048U,	// VRSHRsv8i16
4539    1048U,	// VRSHRsv8i8
4540    1048U,	// VRSHRuv16i8
4541    1048U,	// VRSHRuv1i64
4542    1048U,	// VRSHRuv2i32
4543    1048U,	// VRSHRuv2i64
4544    1048U,	// VRSHRuv4i16
4545    1048U,	// VRSHRuv4i32
4546    1048U,	// VRSHRuv8i16
4547    1048U,	// VRSHRuv8i8
4548    0U,	// VRSQRTEd
4549    56U,	// VRSQRTEfd
4550    56U,	// VRSQRTEfq
4551    0U,	// VRSQRTEq
4552    247328U,	// VRSQRTSfd
4553    247328U,	// VRSQRTSfq
4554    1184U,	// VRSRAsv16i8
4555    1184U,	// VRSRAsv1i64
4556    1184U,	// VRSRAsv2i32
4557    1184U,	// VRSRAsv2i64
4558    1184U,	// VRSRAsv4i16
4559    1184U,	// VRSRAsv4i32
4560    1184U,	// VRSRAsv8i16
4561    1184U,	// VRSRAsv8i8
4562    1184U,	// VRSRAuv16i8
4563    1184U,	// VRSRAuv1i64
4564    1184U,	// VRSRAuv2i32
4565    1184U,	// VRSRAuv2i64
4566    1184U,	// VRSRAuv4i16
4567    1184U,	// VRSRAuv4i32
4568    1184U,	// VRSRAuv8i16
4569    1184U,	// VRSRAuv8i8
4570    1048U,	// VRSUBHNv2i32
4571    1048U,	// VRSUBHNv4i16
4572    1048U,	// VRSUBHNv8i8
4573    1048U,	// VSELEQD
4574    1048U,	// VSELEQS
4575    1048U,	// VSELGED
4576    1048U,	// VSELGES
4577    1048U,	// VSELGTD
4578    1048U,	// VSELGTS
4579    1048U,	// VSELVSD
4580    1048U,	// VSELVSS
4581    6U,	// VSETLNi16
4582    6U,	// VSETLNi32
4583    6U,	// VSETLNi8
4584    1048U,	// VSHLLi16
4585    1048U,	// VSHLLi32
4586    1048U,	// VSHLLi8
4587    1048U,	// VSHLLsv2i64
4588    1048U,	// VSHLLsv4i32
4589    1048U,	// VSHLLsv8i16
4590    1048U,	// VSHLLuv2i64
4591    1048U,	// VSHLLuv4i32
4592    1048U,	// VSHLLuv8i16
4593    1048U,	// VSHLiv16i8
4594    1048U,	// VSHLiv1i64
4595    1048U,	// VSHLiv2i32
4596    1048U,	// VSHLiv2i64
4597    1048U,	// VSHLiv4i16
4598    1048U,	// VSHLiv4i32
4599    1048U,	// VSHLiv8i16
4600    1048U,	// VSHLiv8i8
4601    1048U,	// VSHLsv16i8
4602    1048U,	// VSHLsv1i64
4603    1048U,	// VSHLsv2i32
4604    1048U,	// VSHLsv2i64
4605    1048U,	// VSHLsv4i16
4606    1048U,	// VSHLsv4i32
4607    1048U,	// VSHLsv8i16
4608    1048U,	// VSHLsv8i8
4609    1048U,	// VSHLuv16i8
4610    1048U,	// VSHLuv1i64
4611    1048U,	// VSHLuv2i32
4612    1048U,	// VSHLuv2i64
4613    1048U,	// VSHLuv4i16
4614    1048U,	// VSHLuv4i32
4615    1048U,	// VSHLuv8i16
4616    1048U,	// VSHLuv8i8
4617    1048U,	// VSHRNv2i32
4618    1048U,	// VSHRNv4i16
4619    1048U,	// VSHRNv8i8
4620    1048U,	// VSHRsv16i8
4621    1048U,	// VSHRsv1i64
4622    1048U,	// VSHRsv2i32
4623    1048U,	// VSHRsv2i64
4624    1048U,	// VSHRsv4i16
4625    1048U,	// VSHRsv4i32
4626    1048U,	// VSHRsv8i16
4627    1048U,	// VSHRsv8i8
4628    1048U,	// VSHRuv16i8
4629    1048U,	// VSHRuv1i64
4630    1048U,	// VSHRuv2i32
4631    1048U,	// VSHRuv2i64
4632    1048U,	// VSHRuv4i16
4633    1048U,	// VSHRuv4i32
4634    1048U,	// VSHRuv8i16
4635    1048U,	// VSHRuv8i8
4636    0U,	// VSHTOD
4637    0U,	// VSHTOS
4638    0U,	// VSITOD
4639    0U,	// VSITOS
4640    262168U,	// VSLIv16i8
4641    262168U,	// VSLIv1i64
4642    262168U,	// VSLIv2i32
4643    262168U,	// VSLIv2i64
4644    262168U,	// VSLIv4i16
4645    262168U,	// VSLIv4i32
4646    262168U,	// VSLIv8i16
4647    262168U,	// VSLIv8i8
4648    6U,	// VSLTOD
4649    6U,	// VSLTOS
4650    56U,	// VSQRTD
4651    56U,	// VSQRTS
4652    1184U,	// VSRAsv16i8
4653    1184U,	// VSRAsv1i64
4654    1184U,	// VSRAsv2i32
4655    1184U,	// VSRAsv2i64
4656    1184U,	// VSRAsv4i16
4657    1184U,	// VSRAsv4i32
4658    1184U,	// VSRAsv8i16
4659    1184U,	// VSRAsv8i8
4660    1184U,	// VSRAuv16i8
4661    1184U,	// VSRAuv1i64
4662    1184U,	// VSRAuv2i32
4663    1184U,	// VSRAuv2i64
4664    1184U,	// VSRAuv4i16
4665    1184U,	// VSRAuv4i32
4666    1184U,	// VSRAuv8i16
4667    1184U,	// VSRAuv8i8
4668    262168U,	// VSRIv16i8
4669    262168U,	// VSRIv1i64
4670    262168U,	// VSRIv2i32
4671    262168U,	// VSRIv2i64
4672    262168U,	// VSRIv4i16
4673    262168U,	// VSRIv4i32
4674    262168U,	// VSRIv8i16
4675    262168U,	// VSRIv8i8
4676    275U,	// VST1LNd16
4677    10769179U,	// VST1LNd16_UPD
4678    275U,	// VST1LNd32
4679    10769179U,	// VST1LNd32_UPD
4680    275U,	// VST1LNd8
4681    10769179U,	// VST1LNd8_UPD
4682    1240U,	// VST1LNdAsm_16
4683    1240U,	// VST1LNdAsm_32
4684    1240U,	// VST1LNdAsm_8
4685    5336U,	// VST1LNdWB_fixed_Asm_16
4686    5336U,	// VST1LNdWB_fixed_Asm_32
4687    5336U,	// VST1LNdWB_fixed_Asm_8
4688    311512U,	// VST1LNdWB_register_Asm_16
4689    311512U,	// VST1LNdWB_register_Asm_32
4690    311512U,	// VST1LNdWB_register_Asm_8
4691    0U,	// VST1LNq16Pseudo
4692    0U,	// VST1LNq16Pseudo_UPD
4693    0U,	// VST1LNq32Pseudo
4694    0U,	// VST1LNq32Pseudo_UPD
4695    0U,	// VST1LNq8Pseudo
4696    0U,	// VST1LNq8Pseudo_UPD
4697    0U,	// VST1d16
4698    0U,	// VST1d16Q
4699    0U,	// VST1d16Qwb_fixed
4700    0U,	// VST1d16Qwb_register
4701    0U,	// VST1d16T
4702    0U,	// VST1d16Twb_fixed
4703    0U,	// VST1d16Twb_register
4704    0U,	// VST1d16wb_fixed
4705    0U,	// VST1d16wb_register
4706    0U,	// VST1d32
4707    0U,	// VST1d32Q
4708    0U,	// VST1d32Qwb_fixed
4709    0U,	// VST1d32Qwb_register
4710    0U,	// VST1d32T
4711    0U,	// VST1d32Twb_fixed
4712    0U,	// VST1d32Twb_register
4713    0U,	// VST1d32wb_fixed
4714    0U,	// VST1d32wb_register
4715    0U,	// VST1d64
4716    0U,	// VST1d64Q
4717    0U,	// VST1d64QPseudo
4718    0U,	// VST1d64QPseudoWB_fixed
4719    0U,	// VST1d64QPseudoWB_register
4720    0U,	// VST1d64Qwb_fixed
4721    0U,	// VST1d64Qwb_register
4722    0U,	// VST1d64T
4723    0U,	// VST1d64TPseudo
4724    0U,	// VST1d64TPseudoWB_fixed
4725    0U,	// VST1d64TPseudoWB_register
4726    0U,	// VST1d64Twb_fixed
4727    0U,	// VST1d64Twb_register
4728    0U,	// VST1d64wb_fixed
4729    0U,	// VST1d64wb_register
4730    0U,	// VST1d8
4731    0U,	// VST1d8Q
4732    0U,	// VST1d8Qwb_fixed
4733    0U,	// VST1d8Qwb_register
4734    0U,	// VST1d8T
4735    0U,	// VST1d8Twb_fixed
4736    0U,	// VST1d8Twb_register
4737    0U,	// VST1d8wb_fixed
4738    0U,	// VST1d8wb_register
4739    0U,	// VST1q16
4740    0U,	// VST1q16wb_fixed
4741    0U,	// VST1q16wb_register
4742    0U,	// VST1q32
4743    0U,	// VST1q32wb_fixed
4744    0U,	// VST1q32wb_register
4745    0U,	// VST1q64
4746    0U,	// VST1q64wb_fixed
4747    0U,	// VST1q64wb_register
4748    0U,	// VST1q8
4749    0U,	// VST1q8wb_fixed
4750    0U,	// VST1q8wb_register
4751    110368459U,	// VST2LNd16
4752    0U,	// VST2LNd16Pseudo
4753    0U,	// VST2LNd16Pseudo_UPD
4754    448211U,	// VST2LNd16_UPD
4755    110368459U,	// VST2LNd32
4756    0U,	// VST2LNd32Pseudo
4757    0U,	// VST2LNd32Pseudo_UPD
4758    448211U,	// VST2LNd32_UPD
4759    110368459U,	// VST2LNd8
4760    0U,	// VST2LNd8Pseudo
4761    0U,	// VST2LNd8Pseudo_UPD
4762    448211U,	// VST2LNd8_UPD
4763    1240U,	// VST2LNdAsm_16
4764    1240U,	// VST2LNdAsm_32
4765    1240U,	// VST2LNdAsm_8
4766    5336U,	// VST2LNdWB_fixed_Asm_16
4767    5336U,	// VST2LNdWB_fixed_Asm_32
4768    5336U,	// VST2LNdWB_fixed_Asm_8
4769    311512U,	// VST2LNdWB_register_Asm_16
4770    311512U,	// VST2LNdWB_register_Asm_32
4771    311512U,	// VST2LNdWB_register_Asm_8
4772    110368459U,	// VST2LNq16
4773    0U,	// VST2LNq16Pseudo
4774    0U,	// VST2LNq16Pseudo_UPD
4775    448211U,	// VST2LNq16_UPD
4776    110368459U,	// VST2LNq32
4777    0U,	// VST2LNq32Pseudo
4778    0U,	// VST2LNq32Pseudo_UPD
4779    448211U,	// VST2LNq32_UPD
4780    1240U,	// VST2LNqAsm_16
4781    1240U,	// VST2LNqAsm_32
4782    5336U,	// VST2LNqWB_fixed_Asm_16
4783    5336U,	// VST2LNqWB_fixed_Asm_32
4784    311512U,	// VST2LNqWB_register_Asm_16
4785    311512U,	// VST2LNqWB_register_Asm_32
4786    0U,	// VST2b16
4787    0U,	// VST2b16wb_fixed
4788    0U,	// VST2b16wb_register
4789    0U,	// VST2b32
4790    0U,	// VST2b32wb_fixed
4791    0U,	// VST2b32wb_register
4792    0U,	// VST2b8
4793    0U,	// VST2b8wb_fixed
4794    0U,	// VST2b8wb_register
4795    0U,	// VST2d16
4796    0U,	// VST2d16wb_fixed
4797    0U,	// VST2d16wb_register
4798    0U,	// VST2d32
4799    0U,	// VST2d32wb_fixed
4800    0U,	// VST2d32wb_register
4801    0U,	// VST2d8
4802    0U,	// VST2d8wb_fixed
4803    0U,	// VST2d8wb_register
4804    0U,	// VST2q16
4805    0U,	// VST2q16Pseudo
4806    0U,	// VST2q16PseudoWB_fixed
4807    0U,	// VST2q16PseudoWB_register
4808    0U,	// VST2q16wb_fixed
4809    0U,	// VST2q16wb_register
4810    0U,	// VST2q32
4811    0U,	// VST2q32Pseudo
4812    0U,	// VST2q32PseudoWB_fixed
4813    0U,	// VST2q32PseudoWB_register
4814    0U,	// VST2q32wb_fixed
4815    0U,	// VST2q32wb_register
4816    0U,	// VST2q8
4817    0U,	// VST2q8Pseudo
4818    0U,	// VST2q8PseudoWB_fixed
4819    0U,	// VST2q8PseudoWB_register
4820    0U,	// VST2q8wb_fixed
4821    0U,	// VST2q8wb_register
4822    127145755U,	// VST3LNd16
4823    0U,	// VST3LNd16Pseudo
4824    0U,	// VST3LNd16Pseudo_UPD
4825    291U,	// VST3LNd16_UPD
4826    127145755U,	// VST3LNd32
4827    0U,	// VST3LNd32Pseudo
4828    0U,	// VST3LNd32Pseudo_UPD
4829    291U,	// VST3LNd32_UPD
4830    127145755U,	// VST3LNd8
4831    0U,	// VST3LNd8Pseudo
4832    0U,	// VST3LNd8Pseudo_UPD
4833    291U,	// VST3LNd8_UPD
4834    1240U,	// VST3LNdAsm_16
4835    1240U,	// VST3LNdAsm_32
4836    1240U,	// VST3LNdAsm_8
4837    5336U,	// VST3LNdWB_fixed_Asm_16
4838    5336U,	// VST3LNdWB_fixed_Asm_32
4839    5336U,	// VST3LNdWB_fixed_Asm_8
4840    311512U,	// VST3LNdWB_register_Asm_16
4841    311512U,	// VST3LNdWB_register_Asm_32
4842    311512U,	// VST3LNdWB_register_Asm_8
4843    127145755U,	// VST3LNq16
4844    0U,	// VST3LNq16Pseudo
4845    0U,	// VST3LNq16Pseudo_UPD
4846    291U,	// VST3LNq16_UPD
4847    127145755U,	// VST3LNq32
4848    0U,	// VST3LNq32Pseudo
4849    0U,	// VST3LNq32Pseudo_UPD
4850    291U,	// VST3LNq32_UPD
4851    1240U,	// VST3LNqAsm_16
4852    1240U,	// VST3LNqAsm_32
4853    5336U,	// VST3LNqWB_fixed_Asm_16
4854    5336U,	// VST3LNqWB_fixed_Asm_32
4855    311512U,	// VST3LNqWB_register_Asm_16
4856    311512U,	// VST3LNqWB_register_Asm_32
4857    142917792U,	// VST3d16
4858    0U,	// VST3d16Pseudo
4859    0U,	// VST3d16Pseudo_UPD
4860    9512U,	// VST3d16_UPD
4861    142917792U,	// VST3d32
4862    0U,	// VST3d32Pseudo
4863    0U,	// VST3d32Pseudo_UPD
4864    9512U,	// VST3d32_UPD
4865    142917792U,	// VST3d8
4866    0U,	// VST3d8Pseudo
4867    0U,	// VST3d8Pseudo_UPD
4868    9512U,	// VST3d8_UPD
4869    59U,	// VST3dAsm_16
4870    59U,	// VST3dAsm_32
4871    59U,	// VST3dAsm_8
4872    195U,	// VST3dWB_fixed_Asm_16
4873    195U,	// VST3dWB_fixed_Asm_32
4874    195U,	// VST3dWB_fixed_Asm_8
4875    249379U,	// VST3dWB_register_Asm_16
4876    249379U,	// VST3dWB_register_Asm_32
4877    249379U,	// VST3dWB_register_Asm_8
4878    142917792U,	// VST3q16
4879    0U,	// VST3q16Pseudo_UPD
4880    9512U,	// VST3q16_UPD
4881    0U,	// VST3q16oddPseudo
4882    0U,	// VST3q16oddPseudo_UPD
4883    142917792U,	// VST3q32
4884    0U,	// VST3q32Pseudo_UPD
4885    9512U,	// VST3q32_UPD
4886    0U,	// VST3q32oddPseudo
4887    0U,	// VST3q32oddPseudo_UPD
4888    142917792U,	// VST3q8
4889    0U,	// VST3q8Pseudo_UPD
4890    9512U,	// VST3q8_UPD
4891    0U,	// VST3q8oddPseudo
4892    0U,	// VST3q8oddPseudo_UPD
4893    0U,	// VST3qAsm_16
4894    0U,	// VST3qAsm_32
4895    0U,	// VST3qAsm_8
4896    4U,	// VST3qWB_fixed_Asm_16
4897    4U,	// VST3qWB_fixed_Asm_32
4898    4U,	// VST3qWB_fixed_Asm_8
4899    1184U,	// VST3qWB_register_Asm_16
4900    1184U,	// VST3qWB_register_Asm_32
4901    1184U,	// VST3qWB_register_Asm_8
4902    160700115U,	// VST4LNd16
4903    0U,	// VST4LNd16Pseudo
4904    0U,	// VST4LNd16Pseudo_UPD
4905    9955U,	// VST4LNd16_UPD
4906    160700115U,	// VST4LNd32
4907    0U,	// VST4LNd32Pseudo
4908    0U,	// VST4LNd32Pseudo_UPD
4909    9955U,	// VST4LNd32_UPD
4910    160700115U,	// VST4LNd8
4911    0U,	// VST4LNd8Pseudo
4912    0U,	// VST4LNd8Pseudo_UPD
4913    9955U,	// VST4LNd8_UPD
4914    1240U,	// VST4LNdAsm_16
4915    1240U,	// VST4LNdAsm_32
4916    1240U,	// VST4LNdAsm_8
4917    5336U,	// VST4LNdWB_fixed_Asm_16
4918    5336U,	// VST4LNdWB_fixed_Asm_32
4919    5336U,	// VST4LNdWB_fixed_Asm_8
4920    311512U,	// VST4LNdWB_register_Asm_16
4921    311512U,	// VST4LNdWB_register_Asm_32
4922    311512U,	// VST4LNdWB_register_Asm_8
4923    160700115U,	// VST4LNq16
4924    0U,	// VST4LNq16Pseudo
4925    0U,	// VST4LNq16Pseudo_UPD
4926    9955U,	// VST4LNq16_UPD
4927    160700115U,	// VST4LNq32
4928    0U,	// VST4LNq32Pseudo
4929    0U,	// VST4LNq32Pseudo_UPD
4930    9955U,	// VST4LNq32_UPD
4931    1240U,	// VST4LNqAsm_16
4932    1240U,	// VST4LNqAsm_32
4933    5336U,	// VST4LNqWB_fixed_Asm_16
4934    5336U,	// VST4LNqWB_fixed_Asm_32
4935    311512U,	// VST4LNqWB_register_Asm_16
4936    311512U,	// VST4LNqWB_register_Asm_32
4937    169132192U,	// VST4d16
4938    0U,	// VST4d16Pseudo
4939    0U,	// VST4d16Pseudo_UPD
4940    459048U,	// VST4d16_UPD
4941    169132192U,	// VST4d32
4942    0U,	// VST4d32Pseudo
4943    0U,	// VST4d32Pseudo_UPD
4944    459048U,	// VST4d32_UPD
4945    169132192U,	// VST4d8
4946    0U,	// VST4d8Pseudo
4947    0U,	// VST4d8Pseudo_UPD
4948    459048U,	// VST4d8_UPD
4949    59U,	// VST4dAsm_16
4950    59U,	// VST4dAsm_32
4951    59U,	// VST4dAsm_8
4952    195U,	// VST4dWB_fixed_Asm_16
4953    195U,	// VST4dWB_fixed_Asm_32
4954    195U,	// VST4dWB_fixed_Asm_8
4955    249379U,	// VST4dWB_register_Asm_16
4956    249379U,	// VST4dWB_register_Asm_32
4957    249379U,	// VST4dWB_register_Asm_8
4958    169132192U,	// VST4q16
4959    0U,	// VST4q16Pseudo_UPD
4960    459048U,	// VST4q16_UPD
4961    0U,	// VST4q16oddPseudo
4962    0U,	// VST4q16oddPseudo_UPD
4963    169132192U,	// VST4q32
4964    0U,	// VST4q32Pseudo_UPD
4965    459048U,	// VST4q32_UPD
4966    0U,	// VST4q32oddPseudo
4967    0U,	// VST4q32oddPseudo_UPD
4968    169132192U,	// VST4q8
4969    0U,	// VST4q8Pseudo_UPD
4970    459048U,	// VST4q8_UPD
4971    0U,	// VST4q8oddPseudo
4972    0U,	// VST4q8oddPseudo_UPD
4973    0U,	// VST4qAsm_16
4974    0U,	// VST4qAsm_32
4975    0U,	// VST4qAsm_8
4976    4U,	// VST4qWB_fixed_Asm_16
4977    4U,	// VST4qWB_fixed_Asm_32
4978    4U,	// VST4qWB_fixed_Asm_8
4979    1184U,	// VST4qWB_register_Asm_16
4980    1184U,	// VST4qWB_register_Asm_32
4981    1184U,	// VST4qWB_register_Asm_8
4982    57U,	// VSTMDDB_UPD
4983    1088U,	// VSTMDIA
4984    57U,	// VSTMDIA_UPD
4985    0U,	// VSTMQIA
4986    57U,	// VSTMSDB_UPD
4987    1088U,	// VSTMSIA
4988    57U,	// VSTMSIA_UPD
4989    264U,	// VSTRD
4990    264U,	// VSTRS
4991    247328U,	// VSUBD
4992    1048U,	// VSUBHNv2i32
4993    1048U,	// VSUBHNv4i16
4994    1048U,	// VSUBHNv8i8
4995    1048U,	// VSUBLsv2i64
4996    1048U,	// VSUBLsv4i32
4997    1048U,	// VSUBLsv8i16
4998    1048U,	// VSUBLuv2i64
4999    1048U,	// VSUBLuv4i32
5000    1048U,	// VSUBLuv8i16
5001    247328U,	// VSUBS
5002    1048U,	// VSUBWsv2i64
5003    1048U,	// VSUBWsv4i32
5004    1048U,	// VSUBWsv8i16
5005    1048U,	// VSUBWuv2i64
5006    1048U,	// VSUBWuv4i32
5007    1048U,	// VSUBWuv8i16
5008    247328U,	// VSUBfd
5009    247328U,	// VSUBfq
5010    1048U,	// VSUBv16i8
5011    1048U,	// VSUBv1i64
5012    1048U,	// VSUBv2i32
5013    1048U,	// VSUBv2i64
5014    1048U,	// VSUBv4i16
5015    1048U,	// VSUBv4i32
5016    1048U,	// VSUBv8i16
5017    1048U,	// VSUBv8i8
5018    1024U,	// VSWPd
5019    1024U,	// VSWPq
5020    304U,	// VTBL1
5021    312U,	// VTBL2
5022    320U,	// VTBL3
5023    0U,	// VTBL3Pseudo
5024    328U,	// VTBL4
5025    0U,	// VTBL4Pseudo
5026    336U,	// VTBX1
5027    344U,	// VTBX2
5028    352U,	// VTBX3
5029    0U,	// VTBX3Pseudo
5030    360U,	// VTBX4
5031    0U,	// VTBX4Pseudo
5032    0U,	// VTOSHD
5033    0U,	// VTOSHS
5034    0U,	// VTOSIRD
5035    0U,	// VTOSIRS
5036    0U,	// VTOSIZD
5037    0U,	// VTOSIZS
5038    6U,	// VTOSLD
5039    6U,	// VTOSLS
5040    0U,	// VTOUHD
5041    0U,	// VTOUHS
5042    0U,	// VTOUIRD
5043    0U,	// VTOUIRS
5044    0U,	// VTOUIZD
5045    0U,	// VTOUIZS
5046    6U,	// VTOULD
5047    6U,	// VTOULS
5048    1024U,	// VTRNd16
5049    1024U,	// VTRNd32
5050    1024U,	// VTRNd8
5051    1024U,	// VTRNq16
5052    1024U,	// VTRNq32
5053    1024U,	// VTRNq8
5054    0U,	// VTSTv16i8
5055    0U,	// VTSTv2i32
5056    0U,	// VTSTv4i16
5057    0U,	// VTSTv4i32
5058    0U,	// VTSTv8i16
5059    0U,	// VTSTv8i8
5060    0U,	// VUHTOD
5061    0U,	// VUHTOS
5062    0U,	// VUITOD
5063    0U,	// VUITOS
5064    6U,	// VULTOD
5065    6U,	// VULTOS
5066    1024U,	// VUZPd16
5067    1024U,	// VUZPd8
5068    1024U,	// VUZPq16
5069    1024U,	// VUZPq32
5070    1024U,	// VUZPq8
5071    1024U,	// VZIPd16
5072    1024U,	// VZIPd8
5073    1024U,	// VZIPq16
5074    1024U,	// VZIPq32
5075    1024U,	// VZIPq8
5076    0U,	// WIN__CHKSTK
5077    10304U,	// sysLDMDA
5078    369U,	// sysLDMDA_UPD
5079    10304U,	// sysLDMDB
5080    369U,	// sysLDMDB_UPD
5081    10304U,	// sysLDMIA
5082    369U,	// sysLDMIA_UPD
5083    10304U,	// sysLDMIB
5084    369U,	// sysLDMIB_UPD
5085    10304U,	// sysSTMDA
5086    369U,	// sysSTMDA_UPD
5087    10304U,	// sysSTMDB
5088    369U,	// sysSTMDB_UPD
5089    10304U,	// sysSTMIA
5090    369U,	// sysSTMIA_UPD
5091    10304U,	// sysSTMIB
5092    369U,	// sysSTMIB_UPD
5093    0U,	// t2ABS
5094    0U,	// t2ADCri
5095    0U,	// t2ADCrr
5096    475136U,	// t2ADCrs
5097    0U,	// t2ADDSri
5098    0U,	// t2ADDSrr
5099    0U,	// t2ADDSrs
5100    0U,	// t2ADDri
5101    0U,	// t2ADDri12
5102    0U,	// t2ADDrr
5103    475136U,	// t2ADDrs
5104    8U,	// t2ADR
5105    0U,	// t2ANDri
5106    0U,	// t2ANDrr
5107    475136U,	// t2ANDrs
5108    491520U,	// t2ASRri
5109    0U,	// t2ASRrr
5110    0U,	// t2B
5111    16U,	// t2BFC
5112    32792U,	// t2BFI
5113    0U,	// t2BICri
5114    0U,	// t2BICrr
5115    475136U,	// t2BICrs
5116    0U,	// t2BR_JT
5117    0U,	// t2BXJ
5118    0U,	// t2Bcc
5119    544U,	// t2CDP
5120    544U,	// t2CDP2
5121    0U,	// t2CLREX
5122    1024U,	// t2CLZ
5123    1024U,	// t2CMNri
5124    1024U,	// t2CMNzrr
5125    376U,	// t2CMNzrs
5126    1024U,	// t2CMPri
5127    1024U,	// t2CMPrr
5128    376U,	// t2CMPrs
5129    0U,	// t2CPS1p
5130    0U,	// t2CPS2p
5131    1048U,	// t2CPS3p
5132    1048U,	// t2CRC32B
5133    1048U,	// t2CRC32CB
5134    1048U,	// t2CRC32CH
5135    1048U,	// t2CRC32CW
5136    1048U,	// t2CRC32H
5137    1048U,	// t2CRC32W
5138    0U,	// t2DBG
5139    0U,	// t2DCPS1
5140    0U,	// t2DCPS2
5141    0U,	// t2DCPS3
5142    0U,	// t2DMB
5143    0U,	// t2DSB
5144    0U,	// t2EORri
5145    0U,	// t2EORrr
5146    475136U,	// t2EORrs
5147    0U,	// t2HINT
5148    0U,	// t2ISB
5149    0U,	// t2IT
5150    0U,	// t2Int_eh_sjlj_setjmp
5151    0U,	// t2Int_eh_sjlj_setjmp_nofp
5152    72U,	// t2LDA
5153    72U,	// t2LDAB
5154    72U,	// t2LDAEX
5155    72U,	// t2LDAEXB
5156    229376U,	// t2LDAEXD
5157    72U,	// t2LDAEXH
5158    72U,	// t2LDAH
5159    81U,	// t2LDC2L_OFFSET
5160    49241U,	// t2LDC2L_OPTION
5161    65625U,	// t2LDC2L_POST
5162    97U,	// t2LDC2L_PRE
5163    81U,	// t2LDC2_OFFSET
5164    49241U,	// t2LDC2_OPTION
5165    65625U,	// t2LDC2_POST
5166    97U,	// t2LDC2_PRE
5167    81U,	// t2LDCL_OFFSET
5168    49241U,	// t2LDCL_OPTION
5169    65625U,	// t2LDCL_POST
5170    97U,	// t2LDCL_PRE
5171    81U,	// t2LDC_OFFSET
5172    49241U,	// t2LDC_OPTION
5173    65625U,	// t2LDC_POST
5174    97U,	// t2LDC_PRE
5175    1088U,	// t2LDMDB
5176    57U,	// t2LDMDB_UPD
5177    1088U,	// t2LDMIA
5178    0U,	// t2LDMIA_RET
5179    57U,	// t2LDMIA_UPD
5180    384U,	// t2LDRBT
5181    10840U,	// t2LDRB_POST
5182    392U,	// t2LDRB_PRE
5183    120U,	// t2LDRBi12
5184    384U,	// t2LDRBi8
5185    400U,	// t2LDRBpci
5186    1024U,	// t2LDRBpcrel
5187    408U,	// t2LDRBs
5188    11649024U,	// t2LDRD_POST
5189    507904U,	// t2LDRD_PRE
5190    524288U,	// t2LDRDi8
5191    416U,	// t2LDREX
5192    72U,	// t2LDREXB
5193    229376U,	// t2LDREXD
5194    72U,	// t2LDREXH
5195    384U,	// t2LDRHT
5196    10840U,	// t2LDRH_POST
5197    392U,	// t2LDRH_PRE
5198    120U,	// t2LDRHi12
5199    384U,	// t2LDRHi8
5200    400U,	// t2LDRHpci
5201    1024U,	// t2LDRHpcrel
5202    408U,	// t2LDRHs
5203    384U,	// t2LDRSBT
5204    10840U,	// t2LDRSB_POST
5205    392U,	// t2LDRSB_PRE
5206    120U,	// t2LDRSBi12
5207    384U,	// t2LDRSBi8
5208    400U,	// t2LDRSBpci
5209    1024U,	// t2LDRSBpcrel
5210    408U,	// t2LDRSBs
5211    384U,	// t2LDRSHT
5212    10840U,	// t2LDRSH_POST
5213    392U,	// t2LDRSH_PRE
5214    120U,	// t2LDRSHi12
5215    384U,	// t2LDRSHi8
5216    400U,	// t2LDRSHpci
5217    1024U,	// t2LDRSHpcrel
5218    408U,	// t2LDRSHs
5219    384U,	// t2LDRT
5220    10840U,	// t2LDR_POST
5221    392U,	// t2LDR_PRE
5222    120U,	// t2LDRi12
5223    384U,	// t2LDRi8
5224    400U,	// t2LDRpci
5225    0U,	// t2LDRpci_pic
5226    1024U,	// t2LDRpcrel
5227    408U,	// t2LDRs
5228    0U,	// t2LEApcrel
5229    0U,	// t2LEApcrelJT
5230    0U,	// t2LSLri
5231    0U,	// t2LSLrr
5232    491520U,	// t2LSRri
5233    0U,	// t2LSRrr
5234    2295328U,	// t2MCR
5235    2295328U,	// t2MCR2
5236    3343904U,	// t2MCRR
5237    3343904U,	// t2MCRR2
5238    17825792U,	// t2MLA
5239    17825792U,	// t2MLS
5240    0U,	// t2MOVCCasr
5241    0U,	// t2MOVCCi
5242    0U,	// t2MOVCCi16
5243    0U,	// t2MOVCCi32imm
5244    0U,	// t2MOVCClsl
5245    0U,	// t2MOVCClsr
5246    0U,	// t2MOVCCr
5247    0U,	// t2MOVCCror
5248    376U,	// t2MOVSsi
5249    48U,	// t2MOVSsr
5250    1048U,	// t2MOVTi16
5251    0U,	// t2MOVTi16_ga_pcrel
5252    0U,	// t2MOV_ga_pcrel
5253    1024U,	// t2MOVi
5254    1024U,	// t2MOVi16
5255    0U,	// t2MOVi16_ga_pcrel
5256    0U,	// t2MOVi32imm
5257    1024U,	// t2MOVr
5258    376U,	// t2MOVsi
5259    48U,	// t2MOVsr
5260    11264U,	// t2MOVsra_flag
5261    11264U,	// t2MOVsrl_flag
5262    0U,	// t2MRC
5263    0U,	// t2MRC2
5264    3343904U,	// t2MRRC
5265    3343904U,	// t2MRRC2
5266    2U,	// t2MRS_AR
5267    424U,	// t2MRS_M
5268    2U,	// t2MRSsys_AR
5269    0U,	// t2MSR_AR
5270    0U,	// t2MSR_M
5271    0U,	// t2MUL
5272    0U,	// t2MVNCCi
5273    1024U,	// t2MVNi
5274    1024U,	// t2MVNr
5275    376U,	// t2MVNs
5276    0U,	// t2ORNri
5277    0U,	// t2ORNrr
5278    475136U,	// t2ORNrs
5279    0U,	// t2ORRri
5280    0U,	// t2ORRrr
5281    475136U,	// t2ORRrs
5282    4194304U,	// t2PKHBT
5283    5242880U,	// t2PKHTB
5284    0U,	// t2PLDWi12
5285    0U,	// t2PLDWi8
5286    0U,	// t2PLDWs
5287    0U,	// t2PLDi12
5288    0U,	// t2PLDi8
5289    0U,	// t2PLDpci
5290    0U,	// t2PLDs
5291    0U,	// t2PLIi12
5292    0U,	// t2PLIi8
5293    0U,	// t2PLIpci
5294    0U,	// t2PLIs
5295    0U,	// t2QADD
5296    0U,	// t2QADD16
5297    0U,	// t2QADD8
5298    0U,	// t2QASX
5299    0U,	// t2QDADD
5300    0U,	// t2QDSUB
5301    0U,	// t2QSAX
5302    0U,	// t2QSUB
5303    0U,	// t2QSUB16
5304    0U,	// t2QSUB8
5305    1024U,	// t2RBIT
5306    1024U,	// t2REV
5307    1024U,	// t2REV16
5308    1024U,	// t2REVSH
5309    0U,	// t2RFEDB
5310    4U,	// t2RFEDBW
5311    0U,	// t2RFEIA
5312    4U,	// t2RFEIAW
5313    0U,	// t2RORri
5314    0U,	// t2RORrr
5315    1024U,	// t2RRX
5316    0U,	// t2RSBSri
5317    0U,	// t2RSBSrs
5318    0U,	// t2RSBri
5319    0U,	// t2RSBrr
5320    475136U,	// t2RSBrs
5321    0U,	// t2SADD16
5322    0U,	// t2SADD8
5323    0U,	// t2SASX
5324    0U,	// t2SBCri
5325    0U,	// t2SBCrr
5326    475136U,	// t2SBCrs
5327    34603008U,	// t2SBFX
5328    0U,	// t2SDIV
5329    0U,	// t2SEL
5330    0U,	// t2SHADD16
5331    0U,	// t2SHADD8
5332    0U,	// t2SHASX
5333    0U,	// t2SHSAX
5334    0U,	// t2SHSUB16
5335    0U,	// t2SHSUB8
5336    0U,	// t2SMC
5337    17825792U,	// t2SMLABB
5338    17825792U,	// t2SMLABT
5339    17825792U,	// t2SMLAD
5340    17825792U,	// t2SMLADX
5341    17825792U,	// t2SMLAL
5342    17825792U,	// t2SMLALBB
5343    17825792U,	// t2SMLALBT
5344    17825792U,	// t2SMLALD
5345    17825792U,	// t2SMLALDX
5346    17825792U,	// t2SMLALTB
5347    17825792U,	// t2SMLALTT
5348    17825792U,	// t2SMLATB
5349    17825792U,	// t2SMLATT
5350    17825792U,	// t2SMLAWB
5351    17825792U,	// t2SMLAWT
5352    17825792U,	// t2SMLSD
5353    17825792U,	// t2SMLSDX
5354    17825792U,	// t2SMLSLD
5355    185860096U,	// t2SMLSLDX
5356    17825792U,	// t2SMMLA
5357    17825792U,	// t2SMMLAR
5358    17825792U,	// t2SMMLS
5359    17825792U,	// t2SMMLSR
5360    0U,	// t2SMMUL
5361    0U,	// t2SMMULR
5362    0U,	// t2SMUAD
5363    0U,	// t2SMUADX
5364    0U,	// t2SMULBB
5365    0U,	// t2SMULBT
5366    17825792U,	// t2SMULL
5367    0U,	// t2SMULTB
5368    0U,	// t2SMULTT
5369    0U,	// t2SMULWB
5370    0U,	// t2SMULWT
5371    0U,	// t2SMUSD
5372    0U,	// t2SMUSDX
5373    0U,	// t2SRSDB
5374    0U,	// t2SRSDB_UPD
5375    0U,	// t2SRSIA
5376    0U,	// t2SRSIA_UPD
5377    2216U,	// t2SSAT
5378    1192U,	// t2SSAT16
5379    0U,	// t2SSAX
5380    0U,	// t2SSUB16
5381    0U,	// t2SSUB8
5382    81U,	// t2STC2L_OFFSET
5383    49241U,	// t2STC2L_OPTION
5384    65625U,	// t2STC2L_POST
5385    97U,	// t2STC2L_PRE
5386    81U,	// t2STC2_OFFSET
5387    49241U,	// t2STC2_OPTION
5388    65625U,	// t2STC2_POST
5389    97U,	// t2STC2_PRE
5390    81U,	// t2STCL_OFFSET
5391    49241U,	// t2STCL_OPTION
5392    65625U,	// t2STCL_POST
5393    97U,	// t2STCL_PRE
5394    81U,	// t2STC_OFFSET
5395    49241U,	// t2STC_OPTION
5396    65625U,	// t2STC_POST
5397    97U,	// t2STC_PRE
5398    72U,	// t2STL
5399    72U,	// t2STLB
5400    229376U,	// t2STLEX
5401    229376U,	// t2STLEXB
5402    202375168U,	// t2STLEXD
5403    229376U,	// t2STLEXH
5404    72U,	// t2STLH
5405    1088U,	// t2STMDB
5406    57U,	// t2STMDB_UPD
5407    1088U,	// t2STMIA
5408    57U,	// t2STMIA_UPD
5409    384U,	// t2STRBT
5410    10840U,	// t2STRB_POST
5411    392U,	// t2STRB_PRE
5412    0U,	// t2STRB_preidx
5413    120U,	// t2STRBi12
5414    384U,	// t2STRBi8
5415    408U,	// t2STRBs
5416    11649048U,	// t2STRD_POST
5417    507928U,	// t2STRD_PRE
5418    524288U,	// t2STRDi8
5419    540672U,	// t2STREX
5420    229376U,	// t2STREXB
5421    202375168U,	// t2STREXD
5422    229376U,	// t2STREXH
5423    384U,	// t2STRHT
5424    10840U,	// t2STRH_POST
5425    392U,	// t2STRH_PRE
5426    0U,	// t2STRH_preidx
5427    120U,	// t2STRHi12
5428    384U,	// t2STRHi8
5429    408U,	// t2STRHs
5430    384U,	// t2STRT
5431    10840U,	// t2STR_POST
5432    392U,	// t2STR_PRE
5433    0U,	// t2STR_preidx
5434    120U,	// t2STRi12
5435    384U,	// t2STRi8
5436    408U,	// t2STRs
5437    0U,	// t2SUBS_PC_LR
5438    0U,	// t2SUBSri
5439    0U,	// t2SUBSrr
5440    0U,	// t2SUBSrs
5441    0U,	// t2SUBri
5442    0U,	// t2SUBri12
5443    0U,	// t2SUBrr
5444    475136U,	// t2SUBrs
5445    6291456U,	// t2SXTAB
5446    6291456U,	// t2SXTAB16
5447    6291456U,	// t2SXTAH
5448    2560U,	// t2SXTB
5449    2560U,	// t2SXTB16
5450    2560U,	// t2SXTH
5451    0U,	// t2TBB
5452    0U,	// t2TBB_JT
5453    0U,	// t2TBH
5454    0U,	// t2TBH_JT
5455    1024U,	// t2TEQri
5456    1024U,	// t2TEQrr
5457    376U,	// t2TEQrs
5458    1024U,	// t2TSTri
5459    1024U,	// t2TSTrr
5460    376U,	// t2TSTrs
5461    0U,	// t2UADD16
5462    0U,	// t2UADD8
5463    0U,	// t2UASX
5464    34603008U,	// t2UBFX
5465    0U,	// t2UDF
5466    0U,	// t2UDIV
5467    0U,	// t2UHADD16
5468    0U,	// t2UHADD8
5469    0U,	// t2UHASX
5470    0U,	// t2UHSAX
5471    0U,	// t2UHSUB16
5472    0U,	// t2UHSUB8
5473    17825792U,	// t2UMAAL
5474    17825792U,	// t2UMLAL
5475    17825792U,	// t2UMULL
5476    0U,	// t2UQADD16
5477    0U,	// t2UQADD8
5478    0U,	// t2UQASX
5479    0U,	// t2UQSAX
5480    0U,	// t2UQSUB16
5481    0U,	// t2UQSUB8
5482    0U,	// t2USAD8
5483    17825792U,	// t2USADA8
5484    7340032U,	// t2USAT
5485    0U,	// t2USAT16
5486    0U,	// t2USAX
5487    0U,	// t2USUB16
5488    0U,	// t2USUB8
5489    6291456U,	// t2UXTAB
5490    6291456U,	// t2UXTAB16
5491    6291456U,	// t2UXTAH
5492    2560U,	// t2UXTB
5493    2560U,	// t2UXTB16
5494    2560U,	// t2UXTH
5495    0U,	// tADC
5496    1048U,	// tADDhirr
5497    1184U,	// tADDi3
5498    0U,	// tADDi8
5499    0U,	// tADDrSP
5500    557056U,	// tADDrSPi
5501    1184U,	// tADDrr
5502    432U,	// tADDspi
5503    1048U,	// tADDspr
5504    0U,	// tADJCALLSTACKDOWN
5505    0U,	// tADJCALLSTACKUP
5506    440U,	// tADR
5507    0U,	// tAND
5508    448U,	// tASRri
5509    0U,	// tASRrr
5510    0U,	// tB
5511    0U,	// tBIC
5512    0U,	// tBKPT
5513    0U,	// tBL
5514    0U,	// tBLXi
5515    0U,	// tBLXr
5516    0U,	// tBRIND
5517    0U,	// tBR_JTr
5518    0U,	// tBX
5519    0U,	// tBX_CALL
5520    0U,	// tBX_RET
5521    0U,	// tBX_RET_vararg
5522    0U,	// tBcc
5523    0U,	// tBfar
5524    0U,	// tCBNZ
5525    0U,	// tCBZ
5526    1024U,	// tCMNz
5527    1024U,	// tCMPhir
5528    1024U,	// tCMPi8
5529    1024U,	// tCMPr
5530    0U,	// tCPS
5531    0U,	// tEOR
5532    0U,	// tHINT
5533    0U,	// tHLT
5534    0U,	// tInt_eh_sjlj_longjmp
5535    0U,	// tInt_eh_sjlj_setjmp
5536    1088U,	// tLDMIA
5537    0U,	// tLDMIA_UPD
5538    456U,	// tLDRBi
5539    464U,	// tLDRBr
5540    472U,	// tLDRHi
5541    464U,	// tLDRHr
5542    0U,	// tLDRLIT_ga_abs
5543    0U,	// tLDRLIT_ga_pcrel
5544    464U,	// tLDRSB
5545    464U,	// tLDRSH
5546    480U,	// tLDRi
5547    400U,	// tLDRpci
5548    0U,	// tLDRpci_pic
5549    464U,	// tLDRr
5550    488U,	// tLDRspi
5551    0U,	// tLEApcrel
5552    0U,	// tLEApcrelJT
5553    1184U,	// tLSLri
5554    0U,	// tLSLrr
5555    448U,	// tLSRri
5556    0U,	// tLSRrr
5557    0U,	// tMOVCCr_pseudo
5558    0U,	// tMOVSr
5559    0U,	// tMOVi8
5560    1024U,	// tMOVr
5561    1184U,	// tMUL
5562    0U,	// tMVN
5563    0U,	// tORR
5564    0U,	// tPICADD
5565    0U,	// tPOP
5566    0U,	// tPOP_RET
5567    0U,	// tPUSH
5568    1024U,	// tREV
5569    1024U,	// tREV16
5570    1024U,	// tREVSH
5571    0U,	// tROR
5572    0U,	// tRSB
5573    0U,	// tSBC
5574    0U,	// tSETEND
5575    57U,	// tSTMIA_UPD
5576    456U,	// tSTRBi
5577    464U,	// tSTRBr
5578    472U,	// tSTRHi
5579    464U,	// tSTRHr
5580    480U,	// tSTRi
5581    464U,	// tSTRr
5582    488U,	// tSTRspi
5583    1184U,	// tSUBi3
5584    0U,	// tSUBi8
5585    1184U,	// tSUBrr
5586    432U,	// tSUBspi
5587    0U,	// tSVC
5588    1024U,	// tSXTB
5589    1024U,	// tSXTH
5590    0U,	// tTAILJMPd
5591    0U,	// tTAILJMPdND
5592    0U,	// tTAILJMPr
5593    0U,	// tTPsoft
5594    0U,	// tTRAP
5595    1024U,	// tTST
5596    0U,	// tUDF
5597    1024U,	// tUXTB
5598    1024U,	// tUXTH
5599    0U
5600  };
5601
5602#ifndef CAPSTONE_DIET
5603  static const char AsmStrs[] = {
5604  /* 0 */ 's', 'h', 'a', '1', 's', 'u', '0', '.', '3', '2', 9, 0,
5605  /* 12 */ 's', 'h', 'a', '2', '5', '6', 's', 'u', '0', '.', '3', '2', 9, 0,
5606  /* 26 */ 's', 'h', 'a', '1', 's', 'u', '1', '.', '3', '2', 9, 0,
5607  /* 38 */ 's', 'h', 'a', '2', '5', '6', 's', 'u', '1', '.', '3', '2', 9, 0,
5608  /* 52 */ 's', 'h', 'a', '2', '5', '6', 'h', '2', '.', '3', '2', 9, 0,
5609  /* 65 */ 's', 'h', 'a', '1', 'c', '.', '3', '2', 9, 0,
5610  /* 75 */ 's', 'h', 'a', '1', 'h', '.', '3', '2', 9, 0,
5611  /* 85 */ 's', 'h', 'a', '2', '5', '6', 'h', '.', '3', '2', 9, 0,
5612  /* 97 */ 's', 'h', 'a', '1', 'm', '.', '3', '2', 9, 0,
5613  /* 107 */ 's', 'h', 'a', '1', 'p', '.', '3', '2', 9, 0,
5614  /* 117 */ 'v', 'c', 'v', 't', 'a', '.', 's', '3', '2', '.', 'f', '3', '2', 9, 0,
5615  /* 132 */ 'v', 'c', 'v', 't', 'm', '.', 's', '3', '2', '.', 'f', '3', '2', 9, 0,
5616  /* 147 */ 'v', 'c', 'v', 't', 'n', '.', 's', '3', '2', '.', 'f', '3', '2', 9, 0,
5617  /* 162 */ 'v', 'c', 'v', 't', 'p', '.', 's', '3', '2', '.', 'f', '3', '2', 9, 0,
5618  /* 177 */ 'v', 'c', 'v', 't', 'a', '.', 'u', '3', '2', '.', 'f', '3', '2', 9, 0,
5619  /* 192 */ 'v', 'c', 'v', 't', 'm', '.', 'u', '3', '2', '.', 'f', '3', '2', 9, 0,
5620  /* 207 */ 'v', 'c', 'v', 't', 'n', '.', 'u', '3', '2', '.', 'f', '3', '2', 9, 0,
5621  /* 222 */ 'v', 'c', 'v', 't', 'p', '.', 'u', '3', '2', '.', 'f', '3', '2', 9, 0,
5622  /* 237 */ 'v', 'r', 'i', 'n', 't', 'a', '.', 'f', '3', '2', 9, 0,
5623  /* 249 */ 'v', 's', 'e', 'l', 'g', 'e', '.', 'f', '3', '2', 9, 0,
5624  /* 261 */ 'v', 'm', 'i', 'n', 'n', 'm', '.', 'f', '3', '2', 9, 0,
5625  /* 273 */ 'v', 'm', 'a', 'x', 'n', 'm', '.', 'f', '3', '2', 9, 0,
5626  /* 285 */ 'v', 'r', 'i', 'n', 't', 'm', '.', 'f', '3', '2', 9, 0,
5627  /* 297 */ 'v', 'r', 'i', 'n', 't', 'n', '.', 'f', '3', '2', 9, 0,
5628  /* 309 */ 'v', 'r', 'i', 'n', 't', 'p', '.', 'f', '3', '2', 9, 0,
5629  /* 321 */ 'v', 's', 'e', 'l', 'e', 'q', '.', 'f', '3', '2', 9, 0,
5630  /* 333 */ 'v', 's', 'e', 'l', 'v', 's', '.', 'f', '3', '2', 9, 0,
5631  /* 345 */ 'v', 's', 'e', 'l', 'g', 't', '.', 'f', '3', '2', 9, 0,
5632  /* 357 */ 'v', 'r', 'i', 'n', 't', 'x', '.', 'f', '3', '2', 9, 0,
5633  /* 369 */ 'v', 'r', 'i', 'n', 't', 'z', '.', 'f', '3', '2', 9, 0,
5634  /* 381 */ 'l', 'd', 'c', '2', 9, 0,
5635  /* 387 */ 'm', 'r', 'c', '2', 9, 0,
5636  /* 393 */ 'm', 'r', 'r', 'c', '2', 9, 0,
5637  /* 400 */ 's', 't', 'c', '2', 9, 0,
5638  /* 406 */ 'c', 'd', 'p', '2', 9, 0,
5639  /* 412 */ 'm', 'c', 'r', '2', 9, 0,
5640  /* 418 */ 'm', 'c', 'r', 'r', '2', 9, 0,
5641  /* 425 */ 'v', 'c', 'v', 't', 'a', '.', 's', '3', '2', '.', 'f', '6', '4', 9, 0,
5642  /* 440 */ 'v', 'c', 'v', 't', 'm', '.', 's', '3', '2', '.', 'f', '6', '4', 9, 0,
5643  /* 455 */ 'v', 'c', 'v', 't', 'n', '.', 's', '3', '2', '.', 'f', '6', '4', 9, 0,
5644  /* 470 */ 'v', 'c', 'v', 't', 'p', '.', 's', '3', '2', '.', 'f', '6', '4', 9, 0,
5645  /* 485 */ 'v', 'c', 'v', 't', 'a', '.', 'u', '3', '2', '.', 'f', '6', '4', 9, 0,
5646  /* 500 */ 'v', 'c', 'v', 't', 'm', '.', 'u', '3', '2', '.', 'f', '6', '4', 9, 0,
5647  /* 515 */ 'v', 'c', 'v', 't', 'n', '.', 'u', '3', '2', '.', 'f', '6', '4', 9, 0,
5648  /* 530 */ 'v', 'c', 'v', 't', 'p', '.', 'u', '3', '2', '.', 'f', '6', '4', 9, 0,
5649  /* 545 */ 'v', 'r', 'i', 'n', 't', 'a', '.', 'f', '6', '4', 9, 0,
5650  /* 557 */ 'v', 's', 'e', 'l', 'g', 'e', '.', 'f', '6', '4', 9, 0,
5651  /* 569 */ 'v', 'm', 'i', 'n', 'n', 'm', '.', 'f', '6', '4', 9, 0,
5652  /* 581 */ 'v', 'm', 'a', 'x', 'n', 'm', '.', 'f', '6', '4', 9, 0,
5653  /* 593 */ 'v', 'r', 'i', 'n', 't', 'm', '.', 'f', '6', '4', 9, 0,
5654  /* 605 */ 'v', 'r', 'i', 'n', 't', 'n', '.', 'f', '6', '4', 9, 0,
5655  /* 617 */ 'v', 'r', 'i', 'n', 't', 'p', '.', 'f', '6', '4', 9, 0,
5656  /* 629 */ 'v', 's', 'e', 'l', 'e', 'q', '.', 'f', '6', '4', 9, 0,
5657  /* 641 */ 'v', 's', 'e', 'l', 'v', 's', '.', 'f', '6', '4', 9, 0,
5658  /* 653 */ 'v', 's', 'e', 'l', 'g', 't', '.', 'f', '6', '4', 9, 0,
5659  /* 665 */ 'v', 'm', 'u', 'l', 'l', '.', 'p', '6', '4', 9, 0,
5660  /* 676 */ 'a', 'e', 's', 'i', 'm', 'c', '.', '8', 9, 0,
5661  /* 686 */ 'a', 'e', 's', 'm', 'c', '.', '8', 9, 0,
5662  /* 695 */ 'a', 'e', 's', 'd', '.', '8', 9, 0,
5663  /* 703 */ 'a', 'e', 's', 'e', '.', '8', 9, 0,
5664  /* 711 */ 'r', 'f', 'e', 'd', 'a', 9, 0,
5665  /* 718 */ 'r', 'f', 'e', 'i', 'a', 9, 0,
5666  /* 725 */ 'c', 'r', 'c', '3', '2', 'b', 9, 0,
5667  /* 733 */ 'c', 'r', 'c', '3', '2', 'c', 'b', 9, 0,
5668  /* 742 */ 'r', 'f', 'e', 'd', 'b', 9, 0,
5669  /* 749 */ 'r', 'f', 'e', 'i', 'b', 9, 0,
5670  /* 756 */ 'd', 'm', 'b', 9, 0,
5671  /* 761 */ 'd', 's', 'b', 9, 0,
5672  /* 766 */ 'i', 's', 'b', 9, 0,
5673  /* 771 */ 'p', 'l', 'd', 9, 0,
5674  /* 776 */ 's', 'e', 't', 'e', 'n', 'd', 9, 0,
5675  /* 784 */ 'u', 'd', 'f', 9, 0,
5676  /* 789 */ 'c', 'r', 'c', '3', '2', 'h', 9, 0,
5677  /* 797 */ 'c', 'r', 'c', '3', '2', 'c', 'h', 9, 0,
5678  /* 806 */ 'p', 'l', 'i', 9, 0,
5679  /* 811 */ 'l', 'd', 'c', '2', 'l', 9, 0,
5680  /* 818 */ 's', 't', 'c', '2', 'l', 9, 0,
5681  /* 825 */ 'b', 'l', 9, 0,
5682  /* 829 */ 'c', 'p', 's', 9, 0,
5683  /* 834 */ 'm', 'o', 'v', 's', 9, 0,
5684  /* 840 */ 'h', 'l', 't', 9, 0,
5685  /* 845 */ 'b', 'k', 'p', 't', 9, 0,
5686  /* 851 */ 'u', 'd', 'f', '.', 'w', 9, 0,
5687  /* 858 */ 'c', 'r', 'c', '3', '2', 'w', 9, 0,
5688  /* 866 */ 'c', 'r', 'c', '3', '2', 'c', 'w', 9, 0,
5689  /* 875 */ 'p', 'l', 'd', 'w', 9, 0,
5690  /* 881 */ 'b', 'x', 9, 0,
5691  /* 885 */ 'b', 'l', 'x', 9, 0,
5692  /* 890 */ 'c', 'b', 'z', 9, 0,
5693  /* 895 */ 'c', 'b', 'n', 'z', 9, 0,
5694  /* 901 */ 's', 'r', 's', 'd', 'a', 9, 's', 'p', '!', ',', 32, 0,
5695  /* 913 */ 's', 'r', 's', 'i', 'a', 9, 's', 'p', '!', ',', 32, 0,
5696  /* 925 */ 's', 'r', 's', 'd', 'b', 9, 's', 'p', '!', ',', 32, 0,
5697  /* 937 */ 's', 'r', 's', 'i', 'b', 9, 's', 'p', '!', ',', 32, 0,
5698  /* 949 */ 's', 'r', 's', 'd', 'a', 9, 's', 'p', ',', 32, 0,
5699  /* 960 */ 's', 'r', 's', 'i', 'a', 9, 's', 'p', ',', 32, 0,
5700  /* 971 */ 's', 'r', 's', 'd', 'b', 9, 's', 'p', ',', 32, 0,
5701  /* 982 */ 's', 'r', 's', 'i', 'b', 9, 's', 'p', ',', 32, 0,
5702  /* 993 */ 'v', 'l', 'd', '1', 0,
5703  /* 998 */ 'd', 'c', 'p', 's', '1', 0,
5704  /* 1004 */ 'v', 's', 't', '1', 0,
5705  /* 1009 */ 'v', 'r', 'e', 'v', '3', '2', 0,
5706  /* 1016 */ 'l', 'd', 'c', '2', 0,
5707  /* 1021 */ 'm', 'r', 'c', '2', 0,
5708  /* 1026 */ 'm', 'r', 'r', 'c', '2', 0,
5709  /* 1032 */ 's', 't', 'c', '2', 0,
5710  /* 1037 */ 'v', 'l', 'd', '2', 0,
5711  /* 1042 */ 'c', 'd', 'p', '2', 0,
5712  /* 1047 */ 'm', 'c', 'r', '2', 0,
5713  /* 1052 */ 'm', 'c', 'r', 'r', '2', 0,
5714  /* 1058 */ 'd', 'c', 'p', 's', '2', 0,
5715  /* 1064 */ 'v', 's', 't', '2', 0,
5716  /* 1069 */ 'v', 'l', 'd', '3', 0,
5717  /* 1074 */ 'd', 'c', 'p', 's', '3', 0,
5718  /* 1080 */ 'v', 's', 't', '3', 0,
5719  /* 1085 */ 'v', 'r', 'e', 'v', '6', '4', 0,
5720  /* 1092 */ 'v', 'l', 'd', '4', 0,
5721  /* 1097 */ 'v', 's', 't', '4', 0,
5722  /* 1102 */ 's', 'x', 't', 'a', 'b', '1', '6', 0,
5723  /* 1110 */ 'u', 'x', 't', 'a', 'b', '1', '6', 0,
5724  /* 1118 */ 's', 'x', 't', 'b', '1', '6', 0,
5725  /* 1125 */ 'u', 'x', 't', 'b', '1', '6', 0,
5726  /* 1132 */ 's', 'h', 's', 'u', 'b', '1', '6', 0,
5727  /* 1140 */ 'u', 'h', 's', 'u', 'b', '1', '6', 0,
5728  /* 1148 */ 'u', 'q', 's', 'u', 'b', '1', '6', 0,
5729  /* 1156 */ 's', 's', 'u', 'b', '1', '6', 0,
5730  /* 1163 */ 'u', 's', 'u', 'b', '1', '6', 0,
5731  /* 1170 */ 's', 'h', 'a', 'd', 'd', '1', '6', 0,
5732  /* 1178 */ 'u', 'h', 'a', 'd', 'd', '1', '6', 0,
5733  /* 1186 */ 'u', 'q', 'a', 'd', 'd', '1', '6', 0,
5734  /* 1194 */ 's', 'a', 'd', 'd', '1', '6', 0,
5735  /* 1201 */ 'u', 'a', 'd', 'd', '1', '6', 0,
5736  /* 1208 */ 's', 's', 'a', 't', '1', '6', 0,
5737  /* 1215 */ 'u', 's', 'a', 't', '1', '6', 0,
5738  /* 1222 */ 'v', 'r', 'e', 'v', '1', '6', 0,
5739  /* 1229 */ 'u', 's', 'a', 'd', 'a', '8', 0,
5740  /* 1236 */ 's', 'h', 's', 'u', 'b', '8', 0,
5741  /* 1243 */ 'u', 'h', 's', 'u', 'b', '8', 0,
5742  /* 1250 */ 'u', 'q', 's', 'u', 'b', '8', 0,
5743  /* 1257 */ 's', 's', 'u', 'b', '8', 0,
5744  /* 1263 */ 'u', 's', 'u', 'b', '8', 0,
5745  /* 1269 */ 'u', 's', 'a', 'd', '8', 0,
5746  /* 1275 */ 's', 'h', 'a', 'd', 'd', '8', 0,
5747  /* 1282 */ 'u', 'h', 'a', 'd', 'd', '8', 0,
5748  /* 1289 */ 'u', 'q', 'a', 'd', 'd', '8', 0,
5749  /* 1296 */ 's', 'a', 'd', 'd', '8', 0,
5750  /* 1302 */ 'u', 'a', 'd', 'd', '8', 0,
5751  /* 1308 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0,
5752  /* 1321 */ 'B', 'U', 'N', 'D', 'L', 'E', 0,
5753  /* 1328 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0,
5754  /* 1338 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0,
5755  /* 1353 */ 'v', 'a', 'b', 'a', 0,
5756  /* 1358 */ 'l', 'd', 'a', 0,
5757  /* 1362 */ 'l', 'd', 'm', 'd', 'a', 0,
5758  /* 1368 */ 's', 't', 'm', 'd', 'a', 0,
5759  /* 1374 */ 'r', 'f', 'e', 'i', 'a', 0,
5760  /* 1380 */ 'v', 'l', 'd', 'm', 'i', 'a', 0,
5761  /* 1387 */ 'v', 's', 't', 'm', 'i', 'a', 0,
5762  /* 1394 */ 's', 'r', 's', 'i', 'a', 0,
5763  /* 1400 */ 's', 'm', 'm', 'l', 'a', 0,
5764  /* 1406 */ 'v', 'n', 'm', 'l', 'a', 0,
5765  /* 1412 */ 'v', 'm', 'l', 'a', 0,
5766  /* 1417 */ 'v', 'f', 'm', 'a', 0,
5767  /* 1422 */ 'v', 'f', 'n', 'm', 'a', 0,
5768  /* 1428 */ 'v', 'r', 's', 'r', 'a', 0,
5769  /* 1434 */ 'v', 's', 'r', 'a', 0,
5770  /* 1439 */ 'l', 'd', 'a', 'b', 0,
5771  /* 1444 */ 's', 'x', 't', 'a', 'b', 0,
5772  /* 1450 */ 'u', 'x', 't', 'a', 'b', 0,
5773  /* 1456 */ 's', 'm', 'l', 'a', 'b', 'b', 0,
5774  /* 1463 */ 's', 'm', 'l', 'a', 'l', 'b', 'b', 0,
5775  /* 1471 */ 's', 'm', 'u', 'l', 'b', 'b', 0,
5776  /* 1478 */ 't', 'b', 'b', 0,
5777  /* 1482 */ 'r', 'f', 'e', 'd', 'b', 0,
5778  /* 1488 */ 'v', 'l', 'd', 'm', 'd', 'b', 0,
5779  /* 1495 */ 'v', 's', 't', 'm', 'd', 'b', 0,
5780  /* 1502 */ 's', 'r', 's', 'd', 'b', 0,
5781  /* 1508 */ 'l', 'd', 'm', 'i', 'b', 0,
5782  /* 1514 */ 's', 't', 'm', 'i', 'b', 0,
5783  /* 1520 */ 's', 't', 'l', 'b', 0,
5784  /* 1525 */ 'd', 'm', 'b', 0,
5785  /* 1529 */ 's', 'w', 'p', 'b', 0,
5786  /* 1534 */ 'l', 'd', 'r', 'b', 0,
5787  /* 1539 */ 's', 't', 'r', 'b', 0,
5788  /* 1544 */ 'd', 's', 'b', 0,
5789  /* 1548 */ 'i', 's', 'b', 0,
5790  /* 1552 */ 'l', 'd', 'r', 's', 'b', 0,
5791  /* 1558 */ 's', 'm', 'l', 'a', 't', 'b', 0,
5792  /* 1565 */ 'p', 'k', 'h', 't', 'b', 0,
5793  /* 1571 */ 's', 'm', 'l', 'a', 'l', 't', 'b', 0,
5794  /* 1579 */ 's', 'm', 'u', 'l', 't', 'b', 0,
5795  /* 1586 */ 'v', 'c', 'v', 't', 'b', 0,
5796  /* 1592 */ 's', 'x', 't', 'b', 0,
5797  /* 1597 */ 'u', 'x', 't', 'b', 0,
5798  /* 1602 */ 'q', 'd', 's', 'u', 'b', 0,
5799  /* 1608 */ 'v', 'h', 's', 'u', 'b', 0,
5800  /* 1614 */ 'v', 'q', 's', 'u', 'b', 0,
5801  /* 1620 */ 'v', 's', 'u', 'b', 0,
5802  /* 1625 */ 's', 'm', 'l', 'a', 'w', 'b', 0,
5803  /* 1632 */ 's', 'm', 'u', 'l', 'w', 'b', 0,
5804  /* 1639 */ 'l', 'd', 'a', 'e', 'x', 'b', 0,
5805  /* 1646 */ 's', 't', 'l', 'e', 'x', 'b', 0,
5806  /* 1653 */ 'l', 'd', 'r', 'e', 'x', 'b', 0,
5807  /* 1660 */ 's', 't', 'r', 'e', 'x', 'b', 0,
5808  /* 1667 */ 's', 'b', 'c', 0,
5809  /* 1671 */ 'a', 'd', 'c', 0,
5810  /* 1675 */ 'l', 'd', 'c', 0,
5811  /* 1679 */ 'b', 'f', 'c', 0,
5812  /* 1683 */ 'v', 'b', 'i', 'c', 0,
5813  /* 1688 */ 's', 'm', 'c', 0,
5814  /* 1692 */ 'm', 'r', 'c', 0,
5815  /* 1696 */ 'm', 'r', 'r', 'c', 0,
5816  /* 1701 */ 'r', 's', 'c', 0,
5817  /* 1705 */ 's', 't', 'c', 0,
5818  /* 1709 */ 's', 'v', 'c', 0,
5819  /* 1713 */ 's', 'm', 'l', 'a', 'd', 0,
5820  /* 1719 */ 's', 'm', 'u', 'a', 'd', 0,
5821  /* 1725 */ 'v', 'a', 'b', 'd', 0,
5822  /* 1730 */ 'q', 'd', 'a', 'd', 'd', 0,
5823  /* 1736 */ 'v', 'r', 'h', 'a', 'd', 'd', 0,
5824  /* 1743 */ 'v', 'h', 'a', 'd', 'd', 0,
5825  /* 1749 */ 'v', 'p', 'a', 'd', 'd', 0,
5826  /* 1755 */ 'v', 'q', 'a', 'd', 'd', 0,
5827  /* 1761 */ 'v', 'a', 'd', 'd', 0,
5828  /* 1766 */ 's', 'm', 'l', 'a', 'l', 'd', 0,
5829  /* 1773 */ 'p', 'l', 'd', 0,
5830  /* 1777 */ 's', 'm', 'l', 's', 'l', 'd', 0,
5831  /* 1784 */ 'v', 'a', 'n', 'd', 0,
5832  /* 1789 */ 'l', 'd', 'r', 'd', 0,
5833  /* 1794 */ 's', 't', 'r', 'd', 0,
5834  /* 1799 */ 's', 'm', 'l', 's', 'd', 0,
5835  /* 1805 */ 's', 'm', 'u', 's', 'd', 0,
5836  /* 1811 */ 'l', 'd', 'a', 'e', 'x', 'd', 0,
5837  /* 1818 */ 's', 't', 'l', 'e', 'x', 'd', 0,
5838  /* 1825 */ 'l', 'd', 'r', 'e', 'x', 'd', 0,
5839  /* 1832 */ 's', 't', 'r', 'e', 'x', 'd', 0,
5840  /* 1839 */ 'v', 'a', 'c', 'g', 'e', 0,
5841  /* 1845 */ 'v', 'c', 'g', 'e', 0,
5842  /* 1850 */ 'v', 'c', 'l', 'e', 0,
5843  /* 1855 */ 'v', 'r', 'e', 'c', 'p', 'e', 0,
5844  /* 1862 */ 'v', 'c', 'm', 'p', 'e', 0,
5845  /* 1868 */ 'v', 'r', 's', 'q', 'r', 't', 'e', 0,
5846  /* 1876 */ 'v', 'b', 'i', 'f', 0,
5847  /* 1881 */ 'd', 'b', 'g', 0,
5848  /* 1885 */ 'v', 'q', 'n', 'e', 'g', 0,
5849  /* 1891 */ 'v', 'n', 'e', 'g', 0,
5850  /* 1896 */ 'l', 'd', 'a', 'h', 0,
5851  /* 1901 */ 's', 'x', 't', 'a', 'h', 0,
5852  /* 1907 */ 'u', 'x', 't', 'a', 'h', 0,
5853  /* 1913 */ 't', 'b', 'h', 0,
5854  /* 1917 */ 's', 't', 'l', 'h', 0,
5855  /* 1922 */ 'v', 'q', 'd', 'm', 'u', 'l', 'h', 0,
5856  /* 1930 */ 'v', 'q', 'r', 'd', 'm', 'u', 'l', 'h', 0,
5857  /* 1939 */ 'l', 'd', 'r', 'h', 0,
5858  /* 1944 */ 's', 't', 'r', 'h', 0,
5859  /* 1949 */ 'l', 'd', 'r', 's', 'h', 0,
5860  /* 1955 */ 'p', 'u', 's', 'h', 0,
5861  /* 1960 */ 'r', 'e', 'v', 's', 'h', 0,
5862  /* 1966 */ 's', 'x', 't', 'h', 0,
5863  /* 1971 */ 'u', 'x', 't', 'h', 0,
5864  /* 1976 */ 'l', 'd', 'a', 'e', 'x', 'h', 0,
5865  /* 1983 */ 's', 't', 'l', 'e', 'x', 'h', 0,
5866  /* 1990 */ 'l', 'd', 'r', 'e', 'x', 'h', 0,
5867  /* 1997 */ 's', 't', 'r', 'e', 'x', 'h', 0,
5868  /* 2004 */ 'b', 'f', 'i', 0,
5869  /* 2008 */ 'p', 'l', 'i', 0,
5870  /* 2012 */ 'v', 's', 'l', 'i', 0,
5871  /* 2017 */ 'v', 's', 'r', 'i', 0,
5872  /* 2022 */ 'b', 'x', 'j', 0,
5873  /* 2026 */ 'l', 'd', 'c', '2', 'l', 0,
5874  /* 2032 */ 's', 't', 'c', '2', 'l', 0,
5875  /* 2038 */ 'u', 'm', 'a', 'a', 'l', 0,
5876  /* 2044 */ 'v', 'a', 'b', 'a', 'l', 0,
5877  /* 2050 */ 'v', 'p', 'a', 'd', 'a', 'l', 0,
5878  /* 2057 */ 'v', 'q', 'd', 'm', 'l', 'a', 'l', 0,
5879  /* 2065 */ 's', 'm', 'l', 'a', 'l', 0,
5880  /* 2071 */ 'u', 'm', 'l', 'a', 'l', 0,
5881  /* 2077 */ 'v', 'm', 'l', 'a', 'l', 0,
5882  /* 2083 */ 'v', 't', 'b', 'l', 0,
5883  /* 2088 */ 'v', 's', 'u', 'b', 'l', 0,
5884  /* 2094 */ 'l', 'd', 'c', 'l', 0,
5885  /* 2099 */ 's', 't', 'c', 'l', 0,
5886  /* 2104 */ 'v', 'a', 'b', 'd', 'l', 0,
5887  /* 2110 */ 'v', 'p', 'a', 'd', 'd', 'l', 0,
5888  /* 2117 */ 'v', 'a', 'd', 'd', 'l', 0,
5889  /* 2123 */ 's', 'e', 'l', 0,
5890  /* 2127 */ 'v', 'q', 's', 'h', 'l', 0,
5891  /* 2133 */ 'v', 'q', 'r', 's', 'h', 'l', 0,
5892  /* 2140 */ 'v', 'r', 's', 'h', 'l', 0,
5893  /* 2146 */ 'v', 's', 'h', 'l', 0,
5894  /* 2151 */ 'v', 's', 'h', 'l', 'l', 0,
5895  /* 2157 */ 'v', 'q', 'd', 'm', 'u', 'l', 'l', 0,
5896  /* 2165 */ 's', 'm', 'u', 'l', 'l', 0,
5897  /* 2171 */ 'u', 'm', 'u', 'l', 'l', 0,
5898  /* 2177 */ 'v', 'm', 'u', 'l', 'l', 0,
5899  /* 2183 */ 'v', 'b', 's', 'l', 0,
5900  /* 2188 */ 'v', 'q', 'd', 'm', 'l', 's', 'l', 0,
5901  /* 2196 */ 'v', 'm', 'l', 's', 'l', 0,
5902  /* 2202 */ 's', 't', 'l', 0,
5903  /* 2206 */ 's', 'm', 'm', 'u', 'l', 0,
5904  /* 2212 */ 'v', 'n', 'm', 'u', 'l', 0,
5905  /* 2218 */ 'v', 'm', 'u', 'l', 0,
5906  /* 2223 */ 'v', 'm', 'o', 'v', 'l', 0,
5907  /* 2229 */ 'l', 'd', 'm', 0,
5908  /* 2233 */ 's', 't', 'm', 0,
5909  /* 2237 */ 'v', 'r', 's', 'u', 'b', 'h', 'n', 0,
5910  /* 2245 */ 'v', 's', 'u', 'b', 'h', 'n', 0,
5911  /* 2252 */ 'v', 'r', 'a', 'd', 'd', 'h', 'n', 0,
5912  /* 2260 */ 'v', 'a', 'd', 'd', 'h', 'n', 0,
5913  /* 2267 */ 'v', 'p', 'm', 'i', 'n', 0,
5914  /* 2273 */ 'v', 'm', 'i', 'n', 0,
5915  /* 2278 */ 'c', 'm', 'n', 0,
5916  /* 2282 */ 'v', 'q', 's', 'h', 'r', 'n', 0,
5917  /* 2289 */ 'v', 'q', 'r', 's', 'h', 'r', 'n', 0,
5918  /* 2297 */ 'v', 'r', 's', 'h', 'r', 'n', 0,
5919  /* 2304 */ 'v', 's', 'h', 'r', 'n', 0,
5920  /* 2310 */ 'v', 'o', 'r', 'n', 0,
5921  /* 2315 */ 'v', 't', 'r', 'n', 0,
5922  /* 2320 */ 'v', 'q', 's', 'h', 'r', 'u', 'n', 0,
5923  /* 2328 */ 'v', 'q', 'r', 's', 'h', 'r', 'u', 'n', 0,
5924  /* 2337 */ 'v', 'q', 'm', 'o', 'v', 'u', 'n', 0,
5925  /* 2345 */ 'v', 'm', 'v', 'n', 0,
5926  /* 2350 */ 'v', 'q', 'm', 'o', 'v', 'n', 0,
5927  /* 2357 */ 'v', 'm', 'o', 'v', 'n', 0,
5928  /* 2363 */ 't', 'r', 'a', 'p', 0,
5929  /* 2368 */ 'c', 'd', 'p', 0,
5930  /* 2372 */ 'v', 'z', 'i', 'p', 0,
5931  /* 2377 */ 'v', 'c', 'm', 'p', 0,
5932  /* 2382 */ 'p', 'o', 'p', 0,
5933  /* 2386 */ 'v', 'd', 'u', 'p', 0,
5934  /* 2391 */ 'v', 's', 'w', 'p', 0,
5935  /* 2396 */ 'v', 'u', 'z', 'p', 0,
5936  /* 2401 */ 'v', 'c', 'e', 'q', 0,
5937  /* 2406 */ 't', 'e', 'q', 0,
5938  /* 2410 */ 's', 'm', 'm', 'l', 'a', 'r', 0,
5939  /* 2417 */ 'm', 'c', 'r', 0,
5940  /* 2421 */ 'a', 'd', 'r', 0,
5941  /* 2425 */ 'v', 'l', 'd', 'r', 0,
5942  /* 2430 */ 'v', 'r', 's', 'h', 'r', 0,
5943  /* 2436 */ 'v', 's', 'h', 'r', 0,
5944  /* 2441 */ 's', 'm', 'm', 'u', 'l', 'r', 0,
5945  /* 2448 */ 'v', 'e', 'o', 'r', 0,
5946  /* 2453 */ 'r', 'o', 'r', 0,
5947  /* 2457 */ 'm', 'c', 'r', 'r', 0,
5948  /* 2462 */ 'v', 'o', 'r', 'r', 0,
5949  /* 2467 */ 'a', 's', 'r', 0,
5950  /* 2471 */ 's', 'm', 'm', 'l', 's', 'r', 0,
5951  /* 2478 */ 'v', 'm', 's', 'r', 0,
5952  /* 2483 */ 'v', 'r', 'i', 'n', 't', 'r', 0,
5953  /* 2490 */ 'v', 's', 't', 'r', 0,
5954  /* 2495 */ 'v', 'c', 'v', 't', 'r', 0,
5955  /* 2501 */ 'v', 'q', 'a', 'b', 's', 0,
5956  /* 2507 */ 'v', 'a', 'b', 's', 0,
5957  /* 2512 */ 's', 'u', 'b', 's', 0,
5958  /* 2517 */ 'v', 'c', 'l', 's', 0,
5959  /* 2522 */ 's', 'm', 'm', 'l', 's', 0,
5960  /* 2528 */ 'v', 'n', 'm', 'l', 's', 0,
5961  /* 2534 */ 'v', 'm', 'l', 's', 0,
5962  /* 2539 */ 'v', 'f', 'm', 's', 0,
5963  /* 2544 */ 'v', 'f', 'n', 'm', 's', 0,
5964  /* 2550 */ 'v', 'r', 'e', 'c', 'p', 's', 0,
5965  /* 2557 */ 'v', 'm', 'r', 's', 0,
5966  /* 2562 */ 'a', 's', 'r', 's', 0,
5967  /* 2567 */ 'l', 's', 'r', 's', 0,
5968  /* 2572 */ 'v', 'r', 's', 'q', 'r', 't', 's', 0,
5969  /* 2580 */ 'm', 'o', 'v', 's', 0,
5970  /* 2585 */ 's', 's', 'a', 't', 0,
5971  /* 2590 */ 'u', 's', 'a', 't', 0,
5972  /* 2595 */ 's', 'm', 'l', 'a', 'b', 't', 0,
5973  /* 2602 */ 'p', 'k', 'h', 'b', 't', 0,
5974  /* 2608 */ 's', 'm', 'l', 'a', 'l', 'b', 't', 0,
5975  /* 2616 */ 's', 'm', 'u', 'l', 'b', 't', 0,
5976  /* 2623 */ 'l', 'd', 'r', 'b', 't', 0,
5977  /* 2629 */ 's', 't', 'r', 'b', 't', 0,
5978  /* 2635 */ 'l', 'd', 'r', 's', 'b', 't', 0,
5979  /* 2642 */ 'v', 'a', 'c', 'g', 't', 0,
5980  /* 2648 */ 'v', 'c', 'g', 't', 0,
5981  /* 2653 */ 'l', 'd', 'r', 'h', 't', 0,
5982  /* 2659 */ 's', 't', 'r', 'h', 't', 0,
5983  /* 2665 */ 'l', 'd', 'r', 's', 'h', 't', 0,
5984  /* 2672 */ 'r', 'b', 'i', 't', 0,
5985  /* 2677 */ 'v', 'b', 'i', 't', 0,
5986  /* 2682 */ 'v', 'c', 'l', 't', 0,
5987  /* 2687 */ 'v', 'c', 'n', 't', 0,
5988  /* 2692 */ 'h', 'i', 'n', 't', 0,
5989  /* 2697 */ 'l', 'd', 'r', 't', 0,
5990  /* 2702 */ 'v', 's', 'q', 'r', 't', 0,
5991  /* 2708 */ 's', 't', 'r', 't', 0,
5992  /* 2713 */ 'v', 't', 's', 't', 0,
5993  /* 2718 */ 's', 'm', 'l', 'a', 't', 't', 0,
5994  /* 2725 */ 's', 'm', 'l', 'a', 'l', 't', 't', 0,
5995  /* 2733 */ 's', 'm', 'u', 'l', 't', 't', 0,
5996  /* 2740 */ 'v', 'c', 'v', 't', 't', 0,
5997  /* 2746 */ 'v', 'c', 'v', 't', 0,
5998  /* 2751 */ 'm', 'o', 'v', 't', 0,
5999  /* 2756 */ 's', 'm', 'l', 'a', 'w', 't', 0,
6000  /* 2763 */ 's', 'm', 'u', 'l', 'w', 't', 0,
6001  /* 2770 */ 'v', 'e', 'x', 't', 0,
6002  /* 2775 */ 'v', 'q', 's', 'h', 'l', 'u', 0,
6003  /* 2782 */ 'r', 'e', 'v', 0,
6004  /* 2786 */ 's', 'd', 'i', 'v', 0,
6005  /* 2791 */ 'u', 'd', 'i', 'v', 0,
6006  /* 2796 */ 'v', 'd', 'i', 'v', 0,
6007  /* 2801 */ 'v', 'm', 'o', 'v', 0,
6008  /* 2806 */ 'v', 's', 'u', 'b', 'w', 0,
6009  /* 2812 */ 'v', 'a', 'd', 'd', 'w', 0,
6010  /* 2818 */ 'p', 'l', 'd', 'w', 0,
6011  /* 2823 */ 'm', 'o', 'v', 'w', 0,
6012  /* 2828 */ 'f', 'l', 'd', 'm', 'i', 'a', 'x', 0,
6013  /* 2836 */ 'f', 's', 't', 'm', 'i', 'a', 'x', 0,
6014  /* 2844 */ 'v', 'p', 'm', 'a', 'x', 0,
6015  /* 2850 */ 'v', 'm', 'a', 'x', 0,
6016  /* 2855 */ 's', 'h', 's', 'a', 'x', 0,
6017  /* 2861 */ 'u', 'h', 's', 'a', 'x', 0,
6018  /* 2867 */ 'u', 'q', 's', 'a', 'x', 0,
6019  /* 2873 */ 's', 's', 'a', 'x', 0,
6020  /* 2878 */ 'u', 's', 'a', 'x', 0,
6021  /* 2883 */ 'f', 'l', 'd', 'm', 'd', 'b', 'x', 0,
6022  /* 2891 */ 'f', 's', 't', 'm', 'd', 'b', 'x', 0,
6023  /* 2899 */ 'v', 't', 'b', 'x', 0,
6024  /* 2904 */ 's', 'm', 'l', 'a', 'd', 'x', 0,
6025  /* 2911 */ 's', 'm', 'u', 'a', 'd', 'x', 0,
6026  /* 2918 */ 's', 'm', 'l', 'a', 'l', 'd', 'x', 0,
6027  /* 2926 */ 's', 'm', 'l', 's', 'l', 'd', 'x', 0,
6028  /* 2934 */ 's', 'm', 'l', 's', 'd', 'x', 0,
6029  /* 2941 */ 's', 'm', 'u', 's', 'd', 'x', 0,
6030  /* 2948 */ 'l', 'd', 'a', 'e', 'x', 0,
6031  /* 2954 */ 's', 't', 'l', 'e', 'x', 0,
6032  /* 2960 */ 'l', 'd', 'r', 'e', 'x', 0,
6033  /* 2966 */ 'c', 'l', 'r', 'e', 'x', 0,
6034  /* 2972 */ 's', 't', 'r', 'e', 'x', 0,
6035  /* 2978 */ 's', 'b', 'f', 'x', 0,
6036  /* 2983 */ 'u', 'b', 'f', 'x', 0,
6037  /* 2988 */ 'b', 'l', 'x', 0,
6038  /* 2992 */ 'r', 'r', 'x', 0,
6039  /* 2996 */ 's', 'h', 'a', 's', 'x', 0,
6040  /* 3002 */ 'u', 'h', 'a', 's', 'x', 0,
6041  /* 3008 */ 'u', 'q', 'a', 's', 'x', 0,
6042  /* 3014 */ 's', 'a', 's', 'x', 0,
6043  /* 3019 */ 'u', 'a', 's', 'x', 0,
6044  /* 3024 */ 'v', 'r', 'i', 'n', 't', 'x', 0,
6045  /* 3031 */ 'v', 'c', 'l', 'z', 0,
6046  /* 3036 */ 'v', 'r', 'i', 'n', 't', 'z', 0,
6047  };
6048#endif
6049
6050  // Emit the opcode for the instruction.
6051  uint64_t Bits1 = OpInfo[MCInst_getOpcode(MI)];
6052  uint64_t Bits2 = OpInfo2[MCInst_getOpcode(MI)];
6053  uint64_t Bits = (Bits2 << 32) | Bits1;
6054  // assert(Bits != 0 && "Cannot print this instruction.");
6055#ifndef CAPSTONE_DIET
6056  SStream_concat0(O, AsmStrs+(Bits & 4095)-1);
6057#endif
6058
6059
6060  // Fragment 0 encoded into 5 bits for 29 unique commands.
6061  //printf("Frag-0: %"PRIu64"\n", (Bits >> 12) & 31);
6062  switch ((Bits >> 12) & 31) {
6063  default:   // unreachable.
6064  case 0:
6065    // DBG_VALUE, BUNDLE, LIFETIME_START, LIFETIME_END, CLREX, TRAP, TRAPNaCl...
6066    return;
6067    break;
6068  case 1:
6069    // ADCri, ADCrr, ADDri, ADDrr, ANDri, ANDrr, ASRi, ASRr, BICri, BICrr, EO...
6070    printSBitModifierOperand(MI, 5, O);
6071    printPredicateOperand(MI, 3, O);
6072    break;
6073  case 2:
6074    // ADCrsi, ADDrsi, ANDrsi, BICrsi, EORrsi, MLA, MOVsr, MVNsr, ORRrsi, RSB...
6075    printSBitModifierOperand(MI, 6, O);
6076    printPredicateOperand(MI, 4, O);
6077    break;
6078  case 3:
6079    // ADCrsr, ADDrsr, ANDrsr, BICrsr, EORrsr, ORRrsr, RSBrsr, RSCrsr, SBCrsr...
6080    printSBitModifierOperand(MI, 7, O);
6081    printPredicateOperand(MI, 5, O);
6082    SStream_concat0(O, "\t");
6083    printOperand(MI, 0, O);
6084    SStream_concat0(O, ", ");
6085    printOperand(MI, 1, O);
6086    SStream_concat0(O, ", ");
6087    printSORegRegOperand(MI, 2, O);
6088    return;
6089    break;
6090  case 4:
6091    // ADR, CLZ, CMNri, CMNzrr, CMPri, CMPrr, FCONSTD, FCONSTS, FLDMXDB_UPD, ...
6092    printPredicateOperand(MI, 2, O);
6093    break;
6094  case 5:
6095    // AESD, AESE, AESIMC, AESMC, BKPT, BL, BLX, BLXi, BX, CPS1p, CRC32B, CRC...
6096    printOperand(MI, 0, O);
6097    break;
6098  case 6:
6099    // BFC, CMNzrsi, CMPrsi, LDRBi12, LDRcp, LDRi12, MOVTi16, QADD, QADD16, Q...
6100    printPredicateOperand(MI, 3, O);
6101    break;
6102  case 7:
6103    // BFI, CMNzrsr, CMPrsr, LDCL_OFFSET, LDCL_OPTION, LDCL_POST, LDCL_PRE, L...
6104    printPredicateOperand(MI, 4, O);
6105    break;
6106  case 8:
6107    // BLX_pred, BL_pred, BXJ, BX_pred, Bcc, DBG, FLDMXIA, FSTMXIA, HINT, LDM...
6108    printPredicateOperand(MI, 1, O);
6109    break;
6110  case 9:
6111    // BX_RET, FMSTAT, MOVPCLR, t2CLREX, t2DCPS1, t2DCPS2, t2DCPS3, tBL, tBLX...
6112    printPredicateOperand(MI, 0, O);
6113    break;
6114  case 10:
6115    // CDP, LDRD_POST, LDRD_PRE, MCR, MRC, STRD_POST, STRD_PRE, VLD4DUPd16, V...
6116    printPredicateOperand(MI, 6, O);
6117    break;
6118  case 11:
6119    // CDP2, LDC2L_OFFSET, LDC2L_OPTION, LDC2L_POST, LDC2L_PRE, LDC2_OFFSET, ...
6120    printPImmediate(MI, 0, O);
6121    SStream_concat0(O, ", ");
6122    break;
6123  case 12:
6124    // CPS2p, CPS3p, t2CPS2p, t2CPS3p, tCPS
6125    printCPSIMod(MI, 0, O);
6126    break;
6127  case 13:
6128    // DMB, DSB
6129    printMemBOption(MI, 0, O);
6130    return;
6131    break;
6132  case 14:
6133    // ISB
6134    printInstSyncBOption(MI, 0, O);
6135    return;
6136    break;
6137  case 15:
6138    // ITasm, t2IT
6139    printThumbITMask(MI, 1, O);
6140    break;
6141  case 16:
6142    // LDRBT_POST_IMM, LDRBT_POST_REG, LDRB_POST_IMM, LDRB_POST_REG, LDRB_PRE...
6143    printPredicateOperand(MI, 5, O);
6144    break;
6145  case 17:
6146    // MOVi, MOVr, MOVr_TC, MVNi, MVNr, RRXi, t2MOVi, t2MOVr, t2MVNi, t2MVNr,...
6147    printSBitModifierOperand(MI, 4, O);
6148    printPredicateOperand(MI, 2, O);
6149    break;
6150  case 18:
6151    // MRC2
6152    printPImmediate(MI, 1, O);
6153    SStream_concat0(O, ", ");
6154    printOperand(MI, 2, O);
6155    SStream_concat0(O, ", ");
6156    printOperand(MI, 0, O);
6157    SStream_concat0(O, ", ");
6158    printCImmediate(MI, 3, O);
6159    SStream_concat0(O, ", ");
6160    printCImmediate(MI, 4, O);
6161    SStream_concat0(O, ", ");
6162    printOperand(MI, 5, O);
6163    return;
6164    break;
6165  case 19:
6166    // PLDWi12, PLDi12, PLIi12
6167    printAddrModeImm12Operand(MI, 0, O, false);
6168    return;
6169    break;
6170  case 20:
6171    // PLDWrs, PLDrs, PLIrs
6172    printAddrMode2Operand(MI, 0, O);
6173    return;
6174    break;
6175  case 21:
6176    // SETEND, tSETEND
6177    printSetendOperand(MI, 0, O);
6178    return;
6179    break;
6180  case 22:
6181    // SMLAL, UMLAL
6182    printSBitModifierOperand(MI, 8, O);
6183    printPredicateOperand(MI, 6, O);
6184    SStream_concat0(O, "\t");
6185    printOperand(MI, 0, O);
6186    SStream_concat0(O, ", ");
6187    printOperand(MI, 1, O);
6188    SStream_concat0(O, ", ");
6189    printOperand(MI, 2, O);
6190    SStream_concat0(O, ", ");
6191    printOperand(MI, 3, O);
6192    return;
6193    break;
6194  case 23:
6195    // VLD1LNd16_UPD, VLD1LNd32_UPD, VLD1LNd8_UPD, VLD2LNd16, VLD2LNd32, VLD2...
6196    printPredicateOperand(MI, 7, O);
6197    break;
6198  case 24:
6199    // VLD2LNd16_UPD, VLD2LNd32_UPD, VLD2LNd8_UPD, VLD2LNq16_UPD, VLD2LNq32_U...
6200    printPredicateOperand(MI, 9, O);
6201    break;
6202  case 25:
6203    // VLD3LNd16_UPD, VLD3LNd32_UPD, VLD3LNd8_UPD, VLD3LNq16_UPD, VLD3LNq32_U...
6204    printPredicateOperand(MI, 11, O);
6205    break;
6206  case 26:
6207    // VLD4DUPd16_UPD, VLD4DUPd32_UPD, VLD4DUPd8_UPD, VLD4DUPq16_UPD, VLD4DUP...
6208    printPredicateOperand(MI, 8, O);
6209    break;
6210  case 27:
6211    // VLD4LNd16_UPD, VLD4LNd32_UPD, VLD4LNd8_UPD, VLD4LNq16_UPD, VLD4LNq32_U...
6212    printPredicateOperand(MI, 13, O);
6213    break;
6214  case 28:
6215    // tADC, tADDi3, tADDi8, tADDrr, tAND, tASRri, tASRrr, tBIC, tEOR, tLSLri...
6216    printSBitModifierOperand(MI, 1, O);
6217    break;
6218  }
6219
6220
6221  // Fragment 1 encoded into 7 bits for 65 unique commands.
6222  //printf("Frag-1: %"PRIu64"\n", (Bits >> 17) & 127);
6223  switch ((Bits >> 17) & 127) {
6224  default:   // unreachable.
6225  case 0:
6226    // ADCri, ADCrr, ADCrsi, ADDri, ADDrr, ADDrsi, ADR, ANDri, ANDrr, ANDrsi,...
6227    SStream_concat0(O, "\t");
6228    break;
6229  case 1:
6230    // AESD, AESE, AESIMC, AESMC, CRC32B, CRC32CB, CRC32CH, CRC32CW, CRC32H, ...
6231    SStream_concat0(O, ", ");
6232    break;
6233  case 2:
6234    // ASRi, ASRr, ITasm, LDRBT_POST, LDRT_POST, LSLi, LSLr, LSRi, LSRr, RORi...
6235    SStream_concat0(O, " ");
6236    break;
6237  case 3:
6238    // BKPT, BL, BLX, BLXi, BX, CPS1p, HLT, RFEDA, RFEDB, RFEIA, RFEIB, SRSDA...
6239    return;
6240    break;
6241  case 4:
6242    // BX_RET
6243    SStream_concat0(O, "\tlr");
6244	ARM_addReg(MI, ARM_REG_LR);
6245    return;
6246    break;
6247  case 5:
6248    // CDP2, MCR2, MCRR2, MRRC2
6249    printOperand(MI, 1, O);
6250    SStream_concat0(O, ", ");
6251    break;
6252  case 6:
6253    // FCONSTD, VABSD, VADDD, VCMPD, VCMPED, VCMPEZD, VCMPZD, VDIVD, VFMAD, V...
6254    SStream_concat0(O, ".f64\t");
6255	ARM_addVectorDataType(MI, ARM_VECTORDATA_F64);
6256    printOperand(MI, 0, O);
6257    break;
6258  case 7:
6259    // FCONSTS, VABDfd, VABDfq, VABSS, VABSfd, VABSfq, VACGEd, VACGEq, VACGTd...
6260    SStream_concat0(O, ".f32\t");
6261	ARM_addVectorDataType(MI, ARM_VECTORDATA_F32);
6262    printOperand(MI, 0, O);
6263    break;
6264  case 8:
6265    // FMSTAT
6266    SStream_concat0(O, "\tapsr_nzcv, fpscr");
6267	ARM_addReg(MI, ARM_REG_APSR_NZCV);
6268	ARM_addReg(MI, ARM_REG_FPSCR);
6269    return;
6270    break;
6271  case 9:
6272    // LDC2L_OFFSET, LDC2L_OPTION, LDC2L_POST, LDC2L_PRE, LDC2_OFFSET, LDC2_O...
6273    printCImmediate(MI, 1, O);
6274    SStream_concat0(O, ", ");
6275    break;
6276  case 10:
6277    // MOVPCLR
6278    SStream_concat0(O, "\tpc, lr");
6279	ARM_addReg(MI, ARM_REG_PC);
6280	ARM_addReg(MI, ARM_REG_LR);
6281    return;
6282    break;
6283  case 11:
6284    // RFEDA_UPD, RFEDB_UPD, RFEIA_UPD, RFEIB_UPD
6285    SStream_concat0(O, "!");
6286    return;
6287    break;
6288  case 12:
6289    // VABALsv2i64, VABAsv2i32, VABAsv4i32, VABDLsv2i64, VABDsv2i32, VABDsv4i...
6290    SStream_concat0(O, ".s32\t");
6291	ARM_addVectorDataType(MI, ARM_VECTORDATA_S32);
6292    printOperand(MI, 0, O);
6293    SStream_concat0(O, ", ");
6294    break;
6295  case 13:
6296    // VABALsv4i32, VABAsv4i16, VABAsv8i16, VABDLsv4i32, VABDsv4i16, VABDsv8i...
6297    SStream_concat0(O, ".s16\t");
6298	ARM_addVectorDataType(MI, ARM_VECTORDATA_S16);
6299    printOperand(MI, 0, O);
6300    SStream_concat0(O, ", ");
6301    break;
6302  case 14:
6303    // VABALsv8i16, VABAsv16i8, VABAsv8i8, VABDLsv8i16, VABDsv16i8, VABDsv8i8...
6304    SStream_concat0(O, ".s8\t");
6305	ARM_addVectorDataType(MI, ARM_VECTORDATA_S8);
6306    printOperand(MI, 0, O);
6307    SStream_concat0(O, ", ");
6308    break;
6309  case 15:
6310    // VABALuv2i64, VABAuv2i32, VABAuv4i32, VABDLuv2i64, VABDuv2i32, VABDuv4i...
6311    SStream_concat0(O, ".u32\t");
6312	ARM_addVectorDataType(MI, ARM_VECTORDATA_U32);
6313    printOperand(MI, 0, O);
6314    SStream_concat0(O, ", ");
6315    break;
6316  case 16:
6317    // VABALuv4i32, VABAuv4i16, VABAuv8i16, VABDLuv4i32, VABDuv4i16, VABDuv8i...
6318    SStream_concat0(O, ".u16\t");
6319	ARM_addVectorDataType(MI, ARM_VECTORDATA_U16);
6320    printOperand(MI, 0, O);
6321    SStream_concat0(O, ", ");
6322    break;
6323  case 17:
6324    // VABALuv8i16, VABAuv16i8, VABAuv8i8, VABDLuv8i16, VABDuv16i8, VABDuv8i8...
6325    SStream_concat0(O, ".u8\t");
6326	ARM_addVectorDataType(MI, ARM_VECTORDATA_U8);
6327    printOperand(MI, 0, O);
6328    SStream_concat0(O, ", ");
6329    break;
6330  case 18:
6331    // VADDHNv2i32, VADDv1i64, VADDv2i64, VMOVNv2i32, VMOVv1i64, VMOVv2i64, V...
6332    SStream_concat0(O, ".i64\t");
6333	ARM_addVectorDataType(MI, ARM_VECTORDATA_I64);
6334    printOperand(MI, 0, O);
6335    SStream_concat0(O, ", ");
6336    break;
6337  case 19:
6338    // VADDHNv4i16, VADDv2i32, VADDv4i32, VBICiv2i32, VBICiv4i32, VCEQv2i32, ...
6339    SStream_concat0(O, ".i32\t");
6340	ARM_addVectorDataType(MI, ARM_VECTORDATA_I32);
6341    printOperand(MI, 0, O);
6342    SStream_concat0(O, ", ");
6343    break;
6344  case 20:
6345    // VADDHNv8i8, VADDv4i16, VADDv8i16, VBICiv4i16, VBICiv8i16, VCEQv4i16, V...
6346    SStream_concat0(O, ".i16\t");
6347	ARM_addVectorDataType(MI, ARM_VECTORDATA_I16);
6348    printOperand(MI, 0, O);
6349    SStream_concat0(O, ", ");
6350    break;
6351  case 21:
6352    // VADDv16i8, VADDv8i8, VCEQv16i8, VCEQv8i8, VCEQzv16i8, VCEQzv8i8, VCLZv...
6353    SStream_concat0(O, ".i8\t");
6354	ARM_addVectorDataType(MI, ARM_VECTORDATA_I8);
6355    printOperand(MI, 0, O);
6356    SStream_concat0(O, ", ");
6357    break;
6358  case 22:
6359    // VCNTd, VCNTq, VDUP8d, VDUP8q, VDUPLN8d, VDUPLN8q, VEXTd8, VEXTq8, VLD1...
6360    SStream_concat0(O, ".8\t");
6361	ARM_addVectorDataSize(MI, 8);
6362    break;
6363  case 23:
6364    // VCVTBDH, VCVTTDH
6365    SStream_concat0(O, ".f16.f64\t");
6366	ARM_addVectorDataType(MI, ARM_VECTORDATA_F16F64);
6367    printOperand(MI, 0, O);
6368    SStream_concat0(O, ", ");
6369    printOperand(MI, 1, O);
6370    return;
6371    break;
6372  case 24:
6373    // VCVTBHD, VCVTTHD
6374    SStream_concat0(O, ".f64.f16\t");
6375	ARM_addVectorDataType(MI, ARM_VECTORDATA_F64F16);
6376    printOperand(MI, 0, O);
6377    SStream_concat0(O, ", ");
6378    printOperand(MI, 1, O);
6379    return;
6380    break;
6381  case 25:
6382    // VCVTBHS, VCVTTHS, VCVTh2f
6383    SStream_concat0(O, ".f32.f16\t");
6384	ARM_addVectorDataType(MI, ARM_VECTORDATA_F32F16);
6385    printOperand(MI, 0, O);
6386    SStream_concat0(O, ", ");
6387    printOperand(MI, 1, O);
6388    return;
6389    break;
6390  case 26:
6391    // VCVTBSH, VCVTTSH, VCVTf2h
6392    SStream_concat0(O, ".f16.f32\t");
6393	ARM_addVectorDataType(MI, ARM_VECTORDATA_F16F32);
6394    printOperand(MI, 0, O);
6395    SStream_concat0(O, ", ");
6396    printOperand(MI, 1, O);
6397    return;
6398    break;
6399  case 27:
6400    // VCVTDS
6401    SStream_concat0(O, ".f64.f32\t");
6402	ARM_addVectorDataType(MI, ARM_VECTORDATA_F64F32);
6403    printOperand(MI, 0, O);
6404    SStream_concat0(O, ", ");
6405    printOperand(MI, 1, O);
6406    return;
6407    break;
6408  case 28:
6409    // VCVTSD
6410    SStream_concat0(O, ".f32.f64\t");
6411	ARM_addVectorDataType(MI, ARM_VECTORDATA_F32F64);
6412    printOperand(MI, 0, O);
6413    SStream_concat0(O, ", ");
6414    printOperand(MI, 1, O);
6415    return;
6416    break;
6417  case 29:
6418    // VCVTf2sd, VCVTf2sq, VCVTf2xsd, VCVTf2xsq, VTOSIRS, VTOSIZS, VTOSLS
6419    SStream_concat0(O, ".s32.f32\t");
6420	ARM_addVectorDataType(MI, ARM_VECTORDATA_S32F32);
6421    printOperand(MI, 0, O);
6422    SStream_concat0(O, ", ");
6423    printOperand(MI, 1, O);
6424    break;
6425  case 30:
6426    // VCVTf2ud, VCVTf2uq, VCVTf2xud, VCVTf2xuq, VTOUIRS, VTOUIZS, VTOULS
6427    SStream_concat0(O, ".u32.f32\t");
6428	ARM_addVectorDataType(MI, ARM_VECTORDATA_U32F32);
6429    printOperand(MI, 0, O);
6430    SStream_concat0(O, ", ");
6431    printOperand(MI, 1, O);
6432    break;
6433  case 31:
6434    // VCVTs2fd, VCVTs2fq, VCVTxs2fd, VCVTxs2fq, VSITOS, VSLTOS
6435    SStream_concat0(O, ".f32.s32\t");
6436	ARM_addVectorDataType(MI, ARM_VECTORDATA_F32S32);
6437    printOperand(MI, 0, O);
6438    SStream_concat0(O, ", ");
6439    printOperand(MI, 1, O);
6440    break;
6441  case 32:
6442    // VCVTu2fd, VCVTu2fq, VCVTxu2fd, VCVTxu2fq, VUITOS, VULTOS
6443    SStream_concat0(O, ".f32.u32\t");
6444	ARM_addVectorDataType(MI, ARM_VECTORDATA_F32U32);
6445    printOperand(MI, 0, O);
6446    SStream_concat0(O, ", ");
6447    printOperand(MI, 1, O);
6448    break;
6449  case 33:
6450    // VDUP16d, VDUP16q, VDUPLN16d, VDUPLN16q, VEXTd16, VEXTq16, VLD1DUPd16, ...
6451    SStream_concat0(O, ".16\t");
6452	ARM_addVectorDataSize(MI, 16);
6453    break;
6454  case 34:
6455    // VDUP32d, VDUP32q, VDUPLN32d, VDUPLN32q, VEXTd32, VEXTq32, VGETLNi32, V...
6456    SStream_concat0(O, ".32\t");
6457	ARM_addVectorDataSize(MI, 32);
6458    break;
6459  case 35:
6460    // VEXTq64, VLD1d64, VLD1d64Q, VLD1d64Qwb_fixed, VLD1d64Qwb_register, VLD...
6461    SStream_concat0(O, ".64\t");
6462	ARM_addVectorDataSize(MI, 64);
6463    break;
6464  case 36:
6465    // VLD1LNd16, VLD1LNd16_UPD, VLD2LNd16, VLD2LNd16_UPD, VLD2LNq16, VLD2LNq...
6466    SStream_concat0(O, ".16\t{");
6467	ARM_addVectorDataSize(MI, 16);
6468    break;
6469  case 37:
6470    // VLD1LNd32, VLD1LNd32_UPD, VLD2LNd32, VLD2LNd32_UPD, VLD2LNq32, VLD2LNq...
6471    SStream_concat0(O, ".32\t{");
6472	ARM_addVectorDataSize(MI, 32);
6473    break;
6474  case 38:
6475    // VLD1LNd8, VLD1LNd8_UPD, VLD2LNd8, VLD2LNd8_UPD, VLD3DUPd8, VLD3DUPd8_U...
6476    SStream_concat0(O, ".8\t{");
6477	ARM_addVectorDataSize(MI, 8);
6478    break;
6479  case 39:
6480    // VMSR
6481    SStream_concat0(O, "\tfpscr, ");
6482	ARM_addReg(MI, ARM_REG_FPSCR);
6483    printOperand(MI, 0, O);
6484    return;
6485    break;
6486  case 40:
6487    // VMSR_FPEXC
6488    SStream_concat0(O, "\tfpexc, ");
6489	ARM_addReg(MI, ARM_REG_FPEXC);
6490    printOperand(MI, 0, O);
6491    return;
6492    break;
6493  case 41:
6494    // VMSR_FPINST
6495    SStream_concat0(O, "\tfpinst, ");
6496	ARM_addReg(MI, ARM_REG_FPINST);
6497    printOperand(MI, 0, O);
6498    return;
6499    break;
6500  case 42:
6501    // VMSR_FPINST2
6502    SStream_concat0(O, "\tfpinst2, ");
6503	ARM_addReg(MI, ARM_REG_FPINST2);
6504    printOperand(MI, 0, O);
6505    return;
6506    break;
6507  case 43:
6508    // VMSR_FPSID
6509    SStream_concat0(O, "\tfpsid, ");
6510	ARM_addReg(MI, ARM_REG_FPSID);
6511    printOperand(MI, 0, O);
6512    return;
6513    break;
6514  case 44:
6515    // VMULLp8, VMULpd, VMULpq
6516    SStream_concat0(O, ".p8\t");
6517	ARM_addVectorDataType(MI, ARM_VECTORDATA_P8);
6518    printOperand(MI, 0, O);
6519    SStream_concat0(O, ", ");
6520    printOperand(MI, 1, O);
6521    SStream_concat0(O, ", ");
6522    printOperand(MI, 2, O);
6523    return;
6524    break;
6525  case 45:
6526    // VQADDsv1i64, VQADDsv2i64, VQMOVNsuv2i32, VQMOVNsv2i32, VQRSHLsv1i64, V...
6527    SStream_concat0(O, ".s64\t");
6528	ARM_addVectorDataType(MI, ARM_VECTORDATA_S64);
6529    printOperand(MI, 0, O);
6530    SStream_concat0(O, ", ");
6531    break;
6532  case 46:
6533    // VQADDuv1i64, VQADDuv2i64, VQMOVNuv2i32, VQRSHLuv1i64, VQRSHLuv2i64, VQ...
6534    SStream_concat0(O, ".u64\t");
6535	ARM_addVectorDataType(MI, ARM_VECTORDATA_U64);
6536    printOperand(MI, 0, O);
6537    SStream_concat0(O, ", ");
6538    break;
6539  case 47:
6540    // VSHTOD
6541    SStream_concat0(O, ".f64.s16\t");
6542	ARM_addVectorDataType(MI, ARM_VECTORDATA_F64S16);
6543    printOperand(MI, 0, O);
6544    SStream_concat0(O, ", ");
6545    printOperand(MI, 1, O);
6546    SStream_concat0(O, ", ");
6547    printFBits16(MI, 2, O);
6548    return;
6549    break;
6550  case 48:
6551    // VSHTOS
6552    SStream_concat0(O, ".f32.s16\t");
6553	ARM_addVectorDataType(MI, ARM_VECTORDATA_F32S16);
6554    printOperand(MI, 0, O);
6555    SStream_concat0(O, ", ");
6556    printOperand(MI, 1, O);
6557    SStream_concat0(O, ", ");
6558    printFBits16(MI, 2, O);
6559    return;
6560    break;
6561  case 49:
6562    // VSITOD, VSLTOD
6563    SStream_concat0(O, ".f64.s32\t");
6564	ARM_addVectorDataType(MI, ARM_VECTORDATA_F64S32);
6565    printOperand(MI, 0, O);
6566    SStream_concat0(O, ", ");
6567    printOperand(MI, 1, O);
6568    break;
6569  case 50:
6570    // VTOSHD
6571    SStream_concat0(O, ".s16.f64\t");
6572	ARM_addVectorDataType(MI, ARM_VECTORDATA_S16F64);
6573    printOperand(MI, 0, O);
6574    SStream_concat0(O, ", ");
6575    printOperand(MI, 1, O);
6576    SStream_concat0(O, ", ");
6577    printFBits16(MI, 2, O);
6578    return;
6579    break;
6580  case 51:
6581    // VTOSHS
6582    SStream_concat0(O, ".s16.f32\t");
6583	ARM_addVectorDataType(MI, ARM_VECTORDATA_S16F32);
6584    printOperand(MI, 0, O);
6585    SStream_concat0(O, ", ");
6586    printOperand(MI, 1, O);
6587    SStream_concat0(O, ", ");
6588    printFBits16(MI, 2, O);
6589    return;
6590    break;
6591  case 52:
6592    // VTOSIRD, VTOSIZD, VTOSLD
6593    SStream_concat0(O, ".s32.f64\t");
6594	ARM_addVectorDataType(MI, ARM_VECTORDATA_S32F64);
6595    printOperand(MI, 0, O);
6596    SStream_concat0(O, ", ");
6597    printOperand(MI, 1, O);
6598    break;
6599  case 53:
6600    // VTOUHD
6601    SStream_concat0(O, ".u16.f64\t");
6602	ARM_addVectorDataType(MI, ARM_VECTORDATA_U16F64);
6603    printOperand(MI, 0, O);
6604    SStream_concat0(O, ", ");
6605    printOperand(MI, 1, O);
6606    SStream_concat0(O, ", ");
6607    printFBits16(MI, 2, O);
6608    return;
6609    break;
6610  case 54:
6611    // VTOUHS
6612    SStream_concat0(O, ".u16.f32\t");
6613	ARM_addVectorDataType(MI, ARM_VECTORDATA_U16F32);
6614    printOperand(MI, 0, O);
6615    SStream_concat0(O, ", ");
6616    printOperand(MI, 1, O);
6617    SStream_concat0(O, ", ");
6618    printFBits16(MI, 2, O);
6619    return;
6620    break;
6621  case 55:
6622    // VTOUIRD, VTOUIZD, VTOULD
6623    SStream_concat0(O, ".u32.f64\t");
6624	ARM_addVectorDataType(MI, ARM_VECTORDATA_U32F64);
6625    printOperand(MI, 0, O);
6626    SStream_concat0(O, ", ");
6627    printOperand(MI, 1, O);
6628    break;
6629  case 56:
6630    // VUHTOD
6631    SStream_concat0(O, ".f64.u16\t");
6632	ARM_addVectorDataType(MI, ARM_VECTORDATA_F64U16);
6633    printOperand(MI, 0, O);
6634    SStream_concat0(O, ", ");
6635    printOperand(MI, 1, O);
6636    SStream_concat0(O, ", ");
6637    printFBits16(MI, 2, O);
6638    return;
6639    break;
6640  case 57:
6641    // VUHTOS
6642    SStream_concat0(O, ".f32.u16\t");
6643	ARM_addVectorDataType(MI, ARM_VECTORDATA_F32U16);
6644    printOperand(MI, 0, O);
6645    SStream_concat0(O, ", ");
6646    printOperand(MI, 1, O);
6647    SStream_concat0(O, ", ");
6648    printFBits16(MI, 2, O);
6649    return;
6650    break;
6651  case 58:
6652    // VUITOD, VULTOD
6653    SStream_concat0(O, ".f64.u32\t");
6654	ARM_addVectorDataType(MI, ARM_VECTORDATA_F64U32);
6655    printOperand(MI, 0, O);
6656    SStream_concat0(O, ", ");
6657    printOperand(MI, 1, O);
6658    break;
6659  case 59:
6660    // t2ADCrr, t2ADCrs, t2ADDri, t2ADDrr, t2ADDrs, t2ADR, t2ANDrr, t2ANDrs, ...
6661    SStream_concat0(O, ".w\t");
6662    break;
6663  case 60:
6664    // t2SRSDB, t2SRSIA
6665    SStream_concat0(O, "\tsp, ");
6666	ARM_addReg(MI, ARM_REG_SP);
6667    printOperand(MI, 0, O);
6668    return;
6669    break;
6670  case 61:
6671    // t2SRSDB_UPD, t2SRSIA_UPD
6672    SStream_concat0(O, "\tsp!, ");
6673	ARM_addReg(MI, ARM_REG_SP);
6674    printOperand(MI, 0, O);
6675    return;
6676    break;
6677  case 62:
6678    // t2SUBS_PC_LR
6679    SStream_concat0(O, "\tpc, lr, ");
6680	ARM_addReg(MI, ARM_REG_PC);
6681	ARM_addReg(MI, ARM_REG_LR);
6682    printOperand(MI, 0, O);
6683    return;
6684    break;
6685  case 63:
6686    // tADC, tADDi3, tADDi8, tADDrr, tAND, tASRri, tASRrr, tBIC, tEOR, tLSLri...
6687    printPredicateOperand(MI, 4, O);
6688    SStream_concat0(O, "\t");
6689    printOperand(MI, 0, O);
6690    SStream_concat0(O, ", ");
6691    break;
6692  case 64:
6693    // tMOVi8, tMVN, tRSB
6694    printPredicateOperand(MI, 3, O);
6695    SStream_concat0(O, "\t");
6696    printOperand(MI, 0, O);
6697    SStream_concat0(O, ", ");
6698    printOperand(MI, 2, O);
6699    break;
6700  }
6701
6702
6703  // Fragment 2 encoded into 6 bits for 57 unique commands.
6704  //printf("Frag-2: %"PRIu64"\n", (Bits >> 24) & 63);
6705  switch ((Bits >> 24) & 63) {
6706  default:   // unreachable.
6707  case 0:
6708    // ADCri, ADCrr, ADCrsi, ADDri, ADDrr, ADDrsi, ADR, ANDri, ANDrr, ANDrsi,...
6709    printOperand(MI, 0, O);
6710    break;
6711  case 1:
6712    // AESD, AESE, MCR2, MCRR2, MRRC2, SHA1C, SHA1M, SHA1P, SHA1SU0, SHA1SU1,...
6713    printOperand(MI, 2, O);
6714    break;
6715  case 2:
6716    // AESIMC, AESMC, CRC32B, CRC32CB, CRC32CH, CRC32CW, CRC32H, CRC32W, FLDM...
6717    printOperand(MI, 1, O);
6718    break;
6719  case 3:
6720    // CDP, LDCL_OFFSET, LDCL_OPTION, LDCL_POST, LDCL_PRE, LDC_OFFSET, LDC_OP...
6721    printPImmediate(MI, 0, O);
6722    SStream_concat0(O, ", ");
6723    break;
6724  case 4:
6725    // CDP2
6726    printCImmediate(MI, 2, O);
6727    SStream_concat0(O, ", ");
6728    printCImmediate(MI, 3, O);
6729    SStream_concat0(O, ", ");
6730    printCImmediate(MI, 4, O);
6731    SStream_concat0(O, ", ");
6732    printOperand(MI, 5, O);
6733    return;
6734    break;
6735  case 5:
6736    // CPS2p, CPS3p, t2CPS2p, t2CPS3p, tCPS
6737    printCPSIFlag(MI, 1, O);
6738    break;
6739  case 6:
6740    // FCONSTD, FCONSTS, VABDfd, VABDfq, VABSD, VABSS, VABSfd, VABSfq, VACGEd...
6741    SStream_concat0(O, ", ");
6742    break;
6743  case 7:
6744    // ITasm, t2IT
6745    printMandatoryPredicateOperand(MI, 0, O);
6746    return;
6747    break;
6748  case 8:
6749    // LDAEXD, LDREXD
6750    printGPRPairOperand(MI, 0, O, MRI);
6751    SStream_concat0(O, ", ");
6752    printAddrMode7Operand(MI, 1, O);
6753    return;
6754    break;
6755  case 9:
6756    // LDC2L_OFFSET, LDC2_OFFSET, STC2L_OFFSET, STC2_OFFSET
6757    printAddrMode5Operand(MI, 2, O, false);
6758    return;
6759    break;
6760  case 10:
6761    // LDC2L_OPTION, LDC2L_POST, LDC2_OPTION, LDC2_POST, STC2L_OPTION, STC2L_...
6762    printAddrMode7Operand(MI, 2, O);
6763    SStream_concat0(O, ", ");
6764    break;
6765  case 11:
6766    // LDC2L_PRE, LDC2_PRE, STC2L_PRE, STC2_PRE
6767    printAddrMode5Operand(MI, 2, O, true);
6768    SStream_concat0(O, "!");
6769    return;
6770    break;
6771  case 12:
6772    // MRC, t2MRC, t2MRC2
6773    printPImmediate(MI, 1, O);
6774    SStream_concat0(O, ", ");
6775    printOperand(MI, 2, O);
6776    SStream_concat0(O, ", ");
6777    printOperand(MI, 0, O);
6778    SStream_concat0(O, ", ");
6779    printCImmediate(MI, 3, O);
6780    SStream_concat0(O, ", ");
6781    printCImmediate(MI, 4, O);
6782    SStream_concat0(O, ", ");
6783    printOperand(MI, 5, O);
6784    return;
6785    break;
6786  case 13:
6787    // MSR, MSRi, t2MSR_AR, t2MSR_M
6788    printMSRMaskOperand(MI, 0, O);
6789    SStream_concat0(O, ", ");
6790    printOperand(MI, 1, O);
6791    return;
6792    break;
6793  case 14:
6794    // VBICiv2i32, VBICiv4i16, VBICiv4i32, VBICiv8i16, VMOVv16i8, VMOVv1i64, ...
6795    printNEONModImmOperand(MI, 1, O);
6796    return;
6797    break;
6798  case 15:
6799    // VCMPEZD, VCMPEZS, VCMPZD, VCMPZS, tRSB
6800    SStream_concat0(O, ", #0");
6801	op_addImm(MI, 0);
6802    return;
6803    break;
6804  case 16:
6805    // VCVTf2sd, VCVTf2sq, VCVTf2ud, VCVTf2uq, VCVTs2fd, VCVTs2fq, VCVTu2fd, ...
6806    return;
6807    break;
6808  case 17:
6809    // VLD1DUPd16, VLD1DUPd16wb_fixed, VLD1DUPd16wb_register, VLD1DUPd32, VLD...
6810    printVectorListOneAllLanes(MI, 0, O);
6811    SStream_concat0(O, ", ");
6812    break;
6813  case 18:
6814    // VLD1DUPq16, VLD1DUPq16wb_fixed, VLD1DUPq16wb_register, VLD1DUPq32, VLD...
6815    printVectorListTwoAllLanes(MI, 0, O, MRI);
6816    SStream_concat0(O, ", ");
6817    break;
6818  case 19:
6819    // VLD1d16, VLD1d16wb_fixed, VLD1d16wb_register, VLD1d32, VLD1d32wb_fixed...
6820    printVectorListOne(MI, 0, O);
6821    SStream_concat0(O, ", ");
6822    break;
6823  case 20:
6824    // VLD1d16Q, VLD1d16Qwb_fixed, VLD1d16Qwb_register, VLD1d32Q, VLD1d32Qwb_...
6825    printVectorListFour(MI, 0, O);
6826    SStream_concat0(O, ", ");
6827    break;
6828  case 21:
6829    // VLD1d16T, VLD1d16Twb_fixed, VLD1d16Twb_register, VLD1d32T, VLD1d32Twb_...
6830    printVectorListThree(MI, 0, O);
6831    SStream_concat0(O, ", ");
6832    break;
6833  case 22:
6834    // VLD1q16, VLD1q16wb_fixed, VLD1q16wb_register, VLD1q32, VLD1q32wb_fixed...
6835    printVectorListTwo(MI, 0, O, MRI);
6836    SStream_concat0(O, ", ");
6837    break;
6838  case 23:
6839    // VLD2DUPd16x2, VLD2DUPd16x2wb_fixed, VLD2DUPd16x2wb_register, VLD2DUPd3...
6840    printVectorListTwoSpacedAllLanes(MI, 0, O, MRI);
6841    SStream_concat0(O, ", ");
6842    break;
6843  case 24:
6844    // VLD2b16, VLD2b16wb_fixed, VLD2b16wb_register, VLD2b32, VLD2b32wb_fixed...
6845    printVectorListTwoSpaced(MI, 0, O, MRI);
6846    SStream_concat0(O, ", ");
6847    break;
6848  case 25:
6849    // VLD3DUPdAsm_16, VLD3DUPdAsm_32, VLD3DUPdAsm_8, VLD3DUPdWB_fixed_Asm_16...
6850    printVectorListThreeAllLanes(MI, 0, O);
6851    SStream_concat0(O, ", ");
6852    printAddrMode6Operand(MI, 1, O);
6853    break;
6854  case 26:
6855    // VLD3DUPqAsm_16, VLD3DUPqAsm_32, VLD3DUPqAsm_8, VLD3DUPqWB_fixed_Asm_16...
6856    printVectorListThreeSpacedAllLanes(MI, 0, O);
6857    SStream_concat0(O, ", ");
6858    printAddrMode6Operand(MI, 1, O);
6859    break;
6860  case 27:
6861    // VLD3qAsm_16, VLD3qAsm_32, VLD3qAsm_8, VLD3qWB_fixed_Asm_16, VLD3qWB_fi...
6862    printVectorListThreeSpaced(MI, 0, O);
6863    SStream_concat0(O, ", ");
6864    printAddrMode6Operand(MI, 1, O);
6865    break;
6866  case 28:
6867    // VLD4DUPdAsm_16, VLD4DUPdAsm_32, VLD4DUPdAsm_8, VLD4DUPdWB_fixed_Asm_16...
6868    printVectorListFourAllLanes(MI, 0, O);
6869    SStream_concat0(O, ", ");
6870    printAddrMode6Operand(MI, 1, O);
6871    break;
6872  case 29:
6873    // VLD4DUPqAsm_16, VLD4DUPqAsm_32, VLD4DUPqAsm_8, VLD4DUPqWB_fixed_Asm_16...
6874    printVectorListFourSpacedAllLanes(MI, 0, O);
6875    SStream_concat0(O, ", ");
6876    printAddrMode6Operand(MI, 1, O);
6877    break;
6878  case 30:
6879    // VLD4qAsm_16, VLD4qAsm_32, VLD4qAsm_8, VLD4qWB_fixed_Asm_16, VLD4qWB_fi...
6880    printVectorListFourSpaced(MI, 0, O);
6881    SStream_concat0(O, ", ");
6882    printAddrMode6Operand(MI, 1, O);
6883    break;
6884  case 31:
6885    // VST1LNd16_UPD, VST1LNd32_UPD, VST1LNd8_UPD, VST2LNd16_UPD, VST2LNd32_U...
6886    printOperand(MI, 4, O);
6887    break;
6888  case 32:
6889    // VST1d16, VST1d32, VST1d64, VST1d8
6890    printVectorListOne(MI, 2, O);
6891    SStream_concat0(O, ", ");
6892    printAddrMode6Operand(MI, 0, O);
6893    return;
6894    break;
6895  case 33:
6896    // VST1d16Q, VST1d32Q, VST1d64Q, VST1d8Q, VST2q16, VST2q32, VST2q8
6897    printVectorListFour(MI, 2, O);
6898    SStream_concat0(O, ", ");
6899    printAddrMode6Operand(MI, 0, O);
6900    return;
6901    break;
6902  case 34:
6903    // VST1d16Qwb_fixed, VST1d32Qwb_fixed, VST1d64Qwb_fixed, VST1d8Qwb_fixed,...
6904    printVectorListFour(MI, 3, O);
6905    SStream_concat0(O, ", ");
6906    printAddrMode6Operand(MI, 1, O);
6907    SStream_concat0(O, "!");
6908    return;
6909    break;
6910  case 35:
6911    // VST1d16Qwb_register, VST1d32Qwb_register, VST1d64Qwb_register, VST1d8Q...
6912    printVectorListFour(MI, 4, O);
6913    SStream_concat0(O, ", ");
6914    printAddrMode6Operand(MI, 1, O);
6915    SStream_concat0(O, ", ");
6916    printOperand(MI, 3, O);
6917    return;
6918    break;
6919  case 36:
6920    // VST1d16T, VST1d32T, VST1d64T, VST1d8T
6921    printVectorListThree(MI, 2, O);
6922    SStream_concat0(O, ", ");
6923    printAddrMode6Operand(MI, 0, O);
6924    return;
6925    break;
6926  case 37:
6927    // VST1d16Twb_fixed, VST1d32Twb_fixed, VST1d64Twb_fixed, VST1d8Twb_fixed
6928    printVectorListThree(MI, 3, O);
6929    SStream_concat0(O, ", ");
6930    printAddrMode6Operand(MI, 1, O);
6931    SStream_concat0(O, "!");
6932    return;
6933    break;
6934  case 38:
6935    // VST1d16Twb_register, VST1d32Twb_register, VST1d64Twb_register, VST1d8T...
6936    printVectorListThree(MI, 4, O);
6937    SStream_concat0(O, ", ");
6938    printAddrMode6Operand(MI, 1, O);
6939    SStream_concat0(O, ", ");
6940    printOperand(MI, 3, O);
6941    return;
6942    break;
6943  case 39:
6944    // VST1d16wb_fixed, VST1d32wb_fixed, VST1d64wb_fixed, VST1d8wb_fixed
6945    printVectorListOne(MI, 3, O);
6946    SStream_concat0(O, ", ");
6947    printAddrMode6Operand(MI, 1, O);
6948    SStream_concat0(O, "!");
6949    return;
6950    break;
6951  case 40:
6952    // VST1d16wb_register, VST1d32wb_register, VST1d64wb_register, VST1d8wb_r...
6953    printVectorListOne(MI, 4, O);
6954    SStream_concat0(O, ", ");
6955    printAddrMode6Operand(MI, 1, O);
6956    SStream_concat0(O, ", ");
6957    printOperand(MI, 3, O);
6958    return;
6959    break;
6960  case 41:
6961    // VST1q16, VST1q32, VST1q64, VST1q8, VST2d16, VST2d32, VST2d8
6962    printVectorListTwo(MI, 2, O, MRI);
6963    SStream_concat0(O, ", ");
6964    printAddrMode6Operand(MI, 0, O);
6965    return;
6966    break;
6967  case 42:
6968    // VST1q16wb_fixed, VST1q32wb_fixed, VST1q64wb_fixed, VST1q8wb_fixed, VST...
6969    printVectorListTwo(MI, 3, O, MRI);
6970    SStream_concat0(O, ", ");
6971    printAddrMode6Operand(MI, 1, O);
6972    SStream_concat0(O, "!");
6973    return;
6974    break;
6975  case 43:
6976    // VST1q16wb_register, VST1q32wb_register, VST1q64wb_register, VST1q8wb_r...
6977    printVectorListTwo(MI, 4, O, MRI);
6978    SStream_concat0(O, ", ");
6979    printAddrMode6Operand(MI, 1, O);
6980    SStream_concat0(O, ", ");
6981    printOperand(MI, 3, O);
6982    return;
6983    break;
6984  case 44:
6985    // VST2b16, VST2b32, VST2b8
6986    printVectorListTwoSpaced(MI, 2, O, MRI);
6987    SStream_concat0(O, ", ");
6988    printAddrMode6Operand(MI, 0, O);
6989    return;
6990    break;
6991  case 45:
6992    // VST2b16wb_fixed, VST2b32wb_fixed, VST2b8wb_fixed
6993    printVectorListTwoSpaced(MI, 3, O, MRI);
6994    SStream_concat0(O, ", ");
6995    printAddrMode6Operand(MI, 1, O);
6996    SStream_concat0(O, "!");
6997    return;
6998    break;
6999  case 46:
7000    // VST2b16wb_register, VST2b32wb_register, VST2b8wb_register
7001    printVectorListTwoSpaced(MI, 4, O, MRI);
7002    SStream_concat0(O, ", ");
7003    printAddrMode6Operand(MI, 1, O);
7004    SStream_concat0(O, ", ");
7005    printOperand(MI, 3, O);
7006    return;
7007    break;
7008  case 47:
7009    // t2DMB, t2DSB
7010    printMemBOption(MI, 0, O);
7011    return;
7012    break;
7013  case 48:
7014    // t2ISB
7015    printInstSyncBOption(MI, 0, O);
7016    return;
7017    break;
7018  case 49:
7019    // t2PLDWi12, t2PLDi12, t2PLIi12
7020    printAddrModeImm12Operand(MI, 0, O, false);
7021    return;
7022    break;
7023  case 50:
7024    // t2PLDWi8, t2PLDi8, t2PLIi8
7025    printT2AddrModeImm8Operand(MI, 0, O, false);
7026    return;
7027    break;
7028  case 51:
7029    // t2PLDWs, t2PLDs, t2PLIs
7030    printT2AddrModeSoRegOperand(MI, 0, O);
7031    return;
7032    break;
7033  case 52:
7034    // t2PLDpci, t2PLIpci
7035    printThumbLdrLabelOperand(MI, 0, O);
7036    return;
7037    break;
7038  case 53:
7039    // t2TBB
7040    printAddrModeTBB(MI, 0, O);
7041    return;
7042    break;
7043  case 54:
7044    // t2TBH
7045    printAddrModeTBH(MI, 0, O);
7046    return;
7047    break;
7048  case 55:
7049    // tADC, tADDi8, tAND, tASRrr, tBIC, tEOR, tLSLrr, tLSRrr, tORR, tROR, tS...
7050    printOperand(MI, 3, O);
7051    return;
7052    break;
7053  case 56:
7054    // tPOP, tPUSH
7055    printRegisterList(MI, 2, O);
7056    return;
7057    break;
7058  }
7059
7060
7061  // Fragment 3 encoded into 5 bits for 28 unique commands.
7062  //printf("Frag-3: %"PRIu64"\n", (Bits >> 30) & 31);
7063  switch ((Bits >> 30) & 31) {
7064  default:   // unreachable.
7065  case 0:
7066    // ADCri, ADCrr, ADCrsi, ADDri, ADDrr, ADDrsi, ADR, ANDri, ANDrr, ANDrsi,...
7067    SStream_concat0(O, ", ");
7068    break;
7069  case 1:
7070    // AESD, AESE, AESIMC, AESMC, BLX_pred, BL_pred, BXJ, BX_pred, Bcc, CPS2p...
7071    return;
7072    break;
7073  case 2:
7074    // CDP, MCR, MCRR, MRRC, VABDfd, VABDfq, VABSD, VABSS, VABSfd, VABSfq, VA...
7075    printOperand(MI, 1, O);
7076    break;
7077  case 3:
7078    // FCONSTD, FCONSTS, VMOVv2f32, VMOVv4f32
7079    printFPImmOperand(MI, 1, O);
7080    return;
7081    break;
7082  case 4:
7083    // FLDMXDB_UPD, FLDMXIA_UPD, FSTMXDB_UPD, FSTMXIA_UPD, LDMDA_UPD, LDMDB_U...
7084    SStream_concat0(O, "!, ");
7085    printRegisterList(MI, 4, O);
7086    break;
7087  case 5:
7088    // LDC2L_OPTION, LDC2_OPTION, STC2L_OPTION, STC2_OPTION
7089    printCoprocOptionImm(MI, 3, O);
7090    return;
7091    break;
7092  case 6:
7093    // LDC2L_POST, LDC2_POST, STC2L_POST, STC2_POST
7094    printPostIdxImm8s4Operand(MI, 3, O);
7095    return;
7096    break;
7097  case 7:
7098    // LDCL_OFFSET, LDCL_OPTION, LDCL_POST, LDCL_PRE, LDC_OFFSET, LDC_OPTION,...
7099    printCImmediate(MI, 1, O);
7100    SStream_concat0(O, ", ");
7101    break;
7102  case 8:
7103    // MRS, t2MRS_AR
7104    SStream_concat0(O, ", apsr");
7105	ARM_addReg(MI, ARM_REG_APSR);
7106    return;
7107    break;
7108  case 9:
7109    // MRSsys, t2MRSsys_AR
7110    SStream_concat0(O, ", spsr");
7111	ARM_addReg(MI, ARM_REG_SPSR);
7112    return;
7113    break;
7114  case 10:
7115    // VCEQzv16i8, VCEQzv2i32, VCEQzv4i16, VCEQzv4i32, VCEQzv8i16, VCEQzv8i8,...
7116    SStream_concat0(O, ", #0");
7117	op_addImm(MI, 0);
7118    return;
7119    break;
7120  case 11:
7121    // VCVTf2xsd, VCVTf2xsq, VCVTf2xud, VCVTf2xuq, VCVTxs2fd, VCVTxs2fq, VCVT...
7122    printOperand(MI, 2, O);
7123    break;
7124  case 12:
7125    // VGETLNs16, VGETLNs8, VGETLNu16, VGETLNu8
7126    printVectorIndex(MI, 2, O);
7127    return;
7128    break;
7129  case 13:
7130    // VLD1DUPd16, VLD1DUPd32, VLD1DUPd8, VLD1DUPq16, VLD1DUPq32, VLD1DUPq8, ...
7131    printAddrMode6Operand(MI, 1, O);
7132    break;
7133  case 14:
7134    // VLD1DUPd16wb_fixed, VLD1DUPd16wb_register, VLD1DUPd32wb_fixed, VLD1DUP...
7135    printAddrMode6Operand(MI, 2, O);
7136    break;
7137  case 15:
7138    // VLD1LNd16, VLD1LNd16_UPD, VLD1LNd32, VLD1LNd32_UPD, VLD1LNd8, VLD1LNd8...
7139    SStream_concat0(O, "[");
7140	set_mem_access(MI, true);
7141    break;
7142  case 16:
7143    // VLD3DUPd16, VLD3DUPd16_UPD, VLD3DUPd32, VLD3DUPd32_UPD, VLD3DUPd8, VLD...
7144    SStream_concat0(O, "[], ");
7145    printOperand(MI, 1, O);
7146    SStream_concat0(O, "[], ");
7147    printOperand(MI, 2, O);
7148    break;
7149  case 17:
7150    // VLD3DUPdWB_fixed_Asm_16, VLD3DUPdWB_fixed_Asm_32, VLD3DUPdWB_fixed_Asm...
7151    SStream_concat0(O, "!");
7152    return;
7153    break;
7154  case 18:
7155    // VMRS
7156    SStream_concat0(O, ", fpscr");
7157	ARM_addReg(MI, ARM_REG_FPSCR);
7158    return;
7159    break;
7160  case 19:
7161    // VMRS_FPEXC
7162    SStream_concat0(O, ", fpexc");
7163	ARM_addReg(MI, ARM_REG_FPEXC);
7164    return;
7165    break;
7166  case 20:
7167    // VMRS_FPINST
7168    SStream_concat0(O, ", fpinst");
7169	ARM_addReg(MI, ARM_REG_FPINST);
7170    return;
7171    break;
7172  case 21:
7173    // VMRS_FPINST2
7174    SStream_concat0(O, ", fpinst2");
7175	ARM_addReg(MI, ARM_REG_FPINST2);
7176    return;
7177    break;
7178  case 22:
7179    // VMRS_FPSID
7180    SStream_concat0(O, ", fpsid");
7181	ARM_addReg(MI, ARM_REG_FPSID);
7182    return;
7183    break;
7184  case 23:
7185    // VMRS_MVFR0
7186    SStream_concat0(O, ", mvfr0");
7187	ARM_addReg(MI, ARM_REG_MVFR0);
7188    return;
7189    break;
7190  case 24:
7191    // VMRS_MVFR1
7192    SStream_concat0(O, ", mvfr1");
7193	ARM_addReg(MI, ARM_REG_MVFR1);
7194    return;
7195    break;
7196  case 25:
7197    // VMRS_MVFR2
7198    SStream_concat0(O, ", mvfr2");
7199	ARM_addReg(MI, ARM_REG_MVFR2);
7200    return;
7201    break;
7202  case 26:
7203    // VSETLNi16, VSETLNi32, VSETLNi8
7204    printVectorIndex(MI, 3, O);
7205    SStream_concat0(O, ", ");
7206    printOperand(MI, 2, O);
7207    return;
7208    break;
7209  case 27:
7210    // VSLTOD, VSLTOS, VTOSLD, VTOSLS, VTOULD, VTOULS, VULTOD, VULTOS
7211    printFBits32(MI, 2, O);
7212    return;
7213    break;
7214  }
7215
7216
7217  // Fragment 4 encoded into 6 bits for 62 unique commands.
7218  //printf("Frag-4: %"PRIu64"\n", (Bits >> 35) & 63);
7219  switch ((Bits >> 35) & 63) {
7220  default:   // unreachable.
7221  case 0:
7222    // ADCri, ADCrr, ADCrsi, ADDri, ADDrr, ADDrsi, ANDri, ANDrr, ANDrsi, ASRi...
7223    printOperand(MI, 1, O);
7224    break;
7225  case 1:
7226    // ADR, t2ADR
7227    printAdrLabelOperand(MI, 1, O, 0);
7228    return;
7229    break;
7230  case 2:
7231    // BFC, t2BFC
7232    printBitfieldInvMaskImmOperand(MI, 2, O);
7233    return;
7234    break;
7235  case 3:
7236    // BFI, CPS3p, CRC32B, CRC32CB, CRC32CH, CRC32CW, CRC32H, CRC32W, MOVTi16...
7237    printOperand(MI, 2, O);
7238    break;
7239  case 4:
7240    // CDP, MCR, MCRR, MRRC, VABDfd, VABDfq, VACGEd, VACGEq, VACGTd, VACGTq, ...
7241    SStream_concat0(O, ", ");
7242    break;
7243  case 5:
7244    // CMNzrsi, CMPrsi, MOVsi, MVNsi, TEQrsi, TSTrsi
7245    printSORegImmOperand(MI, 1, O);
7246    return;
7247    break;
7248  case 6:
7249    // CMNzrsr, CMPrsr, MOVsr, MVNsr, TEQrsr, TSTrsr, t2MOVSsr, t2MOVsr
7250    printSORegRegOperand(MI, 1, O);
7251    return;
7252    break;
7253  case 7:
7254    // FLDMXDB_UPD, FLDMXIA_UPD, FSTMXDB_UPD, FSTMXIA_UPD, LDMDA_UPD, LDMDB_U...
7255    return;
7256    break;
7257  case 8:
7258    // FLDMXIA, FSTMXIA, LDMDA, LDMDB, LDMIA, LDMIB, STMDA, STMDB, STMIA, STM...
7259    printRegisterList(MI, 3, O);
7260    break;
7261  case 9:
7262    // LDA, LDAB, LDAEX, LDAEXB, LDAEXH, LDAH, LDRBT_POST, LDREX, LDREXB, LDR...
7263    printAddrMode7Operand(MI, 1, O);
7264    return;
7265    break;
7266  case 10:
7267    // LDCL_OFFSET, LDC_OFFSET, STCL_OFFSET, STC_OFFSET, t2LDC2L_OFFSET, t2LD...
7268    printAddrMode5Operand(MI, 2, O, false);
7269    return;
7270    break;
7271  case 11:
7272    // LDCL_OPTION, LDCL_POST, LDC_OPTION, LDC_POST, LDRBT_POST_IMM, LDRBT_PO...
7273    printAddrMode7Operand(MI, 2, O);
7274    break;
7275  case 12:
7276    // LDCL_PRE, LDC_PRE, STCL_PRE, STC_PRE, t2LDC2L_PRE, t2LDC2_PRE, t2LDCL_...
7277    printAddrMode5Operand(MI, 2, O, true);
7278    SStream_concat0(O, "!");
7279    return;
7280    break;
7281  case 13:
7282    // LDRB_PRE_IMM, LDR_PRE_IMM, STRB_PRE_IMM, STR_PRE_IMM
7283    printAddrModeImm12Operand(MI, 2, O, true);
7284    SStream_concat0(O, "!");
7285    return;
7286    break;
7287  case 14:
7288    // LDRB_PRE_REG, LDR_PRE_REG, STRB_PRE_REG, STR_PRE_REG
7289    printAddrMode2Operand(MI, 2, O);
7290    SStream_concat0(O, "!");
7291    return;
7292    break;
7293  case 15:
7294    // LDRBi12, LDRcp, LDRi12, STRBi12, STRi12, t2LDRBi12, t2LDRHi12, t2LDRSB...
7295    printAddrModeImm12Operand(MI, 1, O, false);
7296    return;
7297    break;
7298  case 16:
7299    // LDRBrs, LDRrs, STRBrs, STRrs
7300    printAddrMode2Operand(MI, 1, O);
7301    return;
7302    break;
7303  case 17:
7304    // LDRH, LDRSB, LDRSH, STRH
7305    printAddrMode3Operand(MI, 1, O, false);
7306    return;
7307    break;
7308  case 18:
7309    // LDRH_PRE, LDRSB_PRE, LDRSH_PRE, STRH_PRE
7310    printAddrMode3Operand(MI, 2, O, true);
7311    SStream_concat0(O, "!");
7312    return;
7313    break;
7314  case 19:
7315    // MCR2
7316    printCImmediate(MI, 3, O);
7317    SStream_concat0(O, ", ");
7318    printCImmediate(MI, 4, O);
7319    SStream_concat0(O, ", ");
7320    printOperand(MI, 5, O);
7321    return;
7322    break;
7323  case 20:
7324    // MCRR2, MRRC2, SHA1C, SHA1M, SHA1P, SHA1SU0, SHA256H, SHA256H2, SHA256S...
7325    printOperand(MI, 3, O);
7326    break;
7327  case 21:
7328    // SSAT, SSAT16, t2SSAT, t2SSAT16
7329    printImmPlusOneOperand(MI, 1, O);
7330    SStream_concat0(O, ", ");
7331    printOperand(MI, 2, O);
7332    break;
7333  case 22:
7334    // STLEXD, STREXD
7335    printGPRPairOperand(MI, 1, O, MRI);
7336    SStream_concat0(O, ", ");
7337    printAddrMode7Operand(MI, 2, O);
7338    return;
7339    break;
7340  case 23:
7341    // VCEQzv2f32, VCEQzv4f32, VCGEzv2f32, VCGEzv4f32, VCGTzv2f32, VCGTzv4f32...
7342    SStream_concat0(O, ", #0");
7343	op_addImm(MI, 0);
7344    return;
7345    break;
7346  case 24:
7347    // VLD1DUPd16wb_fixed, VLD1DUPd32wb_fixed, VLD1DUPd8wb_fixed, VLD1DUPq16w...
7348    SStream_concat0(O, "!");
7349    return;
7350    break;
7351  case 25:
7352    // VLD1LNd16, VLD1LNd32, VLD1LNd8, VST2LNd16, VST2LNd32, VST2LNd8, VST2LN...
7353    printNoHashImmediate(MI, 4, O);
7354    break;
7355  case 26:
7356    // VLD1LNd16_UPD, VLD1LNd32_UPD, VLD1LNd8_UPD, VLD2LNd16, VLD2LNd32, VLD2...
7357    printNoHashImmediate(MI, 6, O);
7358    break;
7359  case 27:
7360    // VLD1LNdAsm_16, VLD1LNdAsm_32, VLD1LNdAsm_8, VLD1LNdWB_fixed_Asm_16, VL...
7361    printAddrMode6Operand(MI, 2, O);
7362    break;
7363  case 28:
7364    // VLD2LNd16_UPD, VLD2LNd32_UPD, VLD2LNd8_UPD, VLD2LNq16_UPD, VLD2LNq32_U...
7365    printNoHashImmediate(MI, 8, O);
7366    SStream_concat0(O, "], ");
7367	set_mem_access(MI, false);
7368    break;
7369  case 29:
7370    // VLD3DUPd16, VLD3DUPd16_UPD, VLD3DUPd32, VLD3DUPd32_UPD, VLD3DUPd8, VLD...
7371    SStream_concat0(O, "[]}, ");
7372    break;
7373  case 30:
7374    // VLD3LNd16_UPD, VLD3LNd32_UPD, VLD3LNd8_UPD, VLD3LNq16_UPD, VLD3LNq32_U...
7375    printNoHashImmediate(MI, 10, O);
7376    SStream_concat0(O, "], ");
7377	set_mem_access(MI, false);
7378    printOperand(MI, 1, O);
7379    SStream_concat0(O, "[");
7380	set_mem_access(MI, true);
7381    printNoHashImmediate(MI, 10, O);
7382    SStream_concat0(O, "], ");
7383	set_mem_access(MI, false);
7384    printOperand(MI, 2, O);
7385    SStream_concat0(O, "[");
7386	set_mem_access(MI, true);
7387    printNoHashImmediate(MI, 10, O);
7388    break;
7389  case 31:
7390    // VLD4DUPd16, VLD4DUPd16_UPD, VLD4DUPd32, VLD4DUPd32_UPD, VLD4DUPd8, VLD...
7391    SStream_concat0(O, "[], ");
7392    printOperand(MI, 3, O);
7393    SStream_concat0(O, "[]}, ");
7394    break;
7395  case 32:
7396    // VLD4LNd16_UPD, VLD4LNd32_UPD, VLD4LNd8_UPD, VLD4LNq16_UPD, VLD4LNq32_U...
7397    printNoHashImmediate(MI, 12, O);
7398    SStream_concat0(O, "], ");
7399	set_mem_access(MI, false);
7400    printOperand(MI, 1, O);
7401    SStream_concat0(O, "[");
7402	set_mem_access(MI, true);
7403    printNoHashImmediate(MI, 12, O);
7404    SStream_concat0(O, "], ");
7405	set_mem_access(MI, false);
7406    printOperand(MI, 2, O);
7407    SStream_concat0(O, "[");
7408	set_mem_access(MI, true);
7409    printNoHashImmediate(MI, 12, O);
7410    SStream_concat0(O, "], ");
7411	set_mem_access(MI, false);
7412    printOperand(MI, 3, O);
7413    SStream_concat0(O, "[");
7414	set_mem_access(MI, true);
7415    printNoHashImmediate(MI, 12, O);
7416    SStream_concat0(O, "]}, ");
7417	set_mem_access(MI, false);
7418    printAddrMode6Operand(MI, 5, O);
7419    printAddrMode6OffsetOperand(MI, 7, O);
7420    return;
7421    break;
7422  case 33:
7423    // VLDRD, VLDRS, VSTRD, VSTRS
7424    printAddrMode5Operand(MI, 1, O, false);
7425    return;
7426    break;
7427  case 34:
7428    // VST1LNd16, VST1LNd32, VST1LNd8
7429    printNoHashImmediate(MI, 3, O);
7430    SStream_concat0(O, "]}, ");
7431	set_mem_access(MI, false);
7432    printAddrMode6Operand(MI, 0, O);
7433    return;
7434    break;
7435  case 35:
7436    // VST1LNd16_UPD, VST1LNd32_UPD, VST1LNd8_UPD, VST3LNd16, VST3LNd32, VST3...
7437    printNoHashImmediate(MI, 5, O);
7438    break;
7439  case 36:
7440    // VST3LNd16_UPD, VST3LNd32_UPD, VST3LNd8_UPD, VST3LNq16_UPD, VST3LNq32_U...
7441    printNoHashImmediate(MI, 7, O);
7442    SStream_concat0(O, "], ");
7443	set_mem_access(MI, false);
7444    printOperand(MI, 5, O);
7445    SStream_concat0(O, "[");
7446	set_mem_access(MI, true);
7447    printNoHashImmediate(MI, 7, O);
7448    SStream_concat0(O, "], ");
7449	set_mem_access(MI, false);
7450    printOperand(MI, 6, O);
7451    SStream_concat0(O, "[");
7452	set_mem_access(MI, true);
7453    printNoHashImmediate(MI, 7, O);
7454    SStream_concat0(O, "]}, ");
7455	set_mem_access(MI, false);
7456    printAddrMode6Operand(MI, 1, O);
7457    printAddrMode6OffsetOperand(MI, 3, O);
7458    return;
7459    break;
7460  case 37:
7461    // VST3d16_UPD, VST3d32_UPD, VST3d8_UPD, VST3q16_UPD, VST3q32_UPD, VST3q8...
7462    printOperand(MI, 5, O);
7463    SStream_concat0(O, ", ");
7464    printOperand(MI, 6, O);
7465    break;
7466  case 38:
7467    // VTBL1
7468    printVectorListOne(MI, 1, O);
7469    SStream_concat0(O, ", ");
7470    printOperand(MI, 2, O);
7471    return;
7472    break;
7473  case 39:
7474    // VTBL2
7475    printVectorListTwo(MI, 1, O, MRI);
7476    SStream_concat0(O, ", ");
7477    printOperand(MI, 2, O);
7478    return;
7479    break;
7480  case 40:
7481    // VTBL3
7482    printVectorListThree(MI, 1, O);
7483    SStream_concat0(O, ", ");
7484    printOperand(MI, 2, O);
7485    return;
7486    break;
7487  case 41:
7488    // VTBL4
7489    printVectorListFour(MI, 1, O);
7490    SStream_concat0(O, ", ");
7491    printOperand(MI, 2, O);
7492    return;
7493    break;
7494  case 42:
7495    // VTBX1
7496    printVectorListOne(MI, 2, O);
7497    SStream_concat0(O, ", ");
7498    printOperand(MI, 3, O);
7499    return;
7500    break;
7501  case 43:
7502    // VTBX2
7503    printVectorListTwo(MI, 2, O, MRI);
7504    SStream_concat0(O, ", ");
7505    printOperand(MI, 3, O);
7506    return;
7507    break;
7508  case 44:
7509    // VTBX3
7510    printVectorListThree(MI, 2, O);
7511    SStream_concat0(O, ", ");
7512    printOperand(MI, 3, O);
7513    return;
7514    break;
7515  case 45:
7516    // VTBX4
7517    printVectorListFour(MI, 2, O);
7518    SStream_concat0(O, ", ");
7519    printOperand(MI, 3, O);
7520    return;
7521    break;
7522  case 46:
7523    // sysLDMDA_UPD, sysLDMDB_UPD, sysLDMIA_UPD, sysLDMIB_UPD, sysSTMDA_UPD, ...
7524    SStream_concat0(O, " ^");
7525	ARM_addUserMode(MI);
7526    return;
7527    break;
7528  case 47:
7529    // t2CMNzrs, t2CMPrs, t2MOVSsi, t2MOVsi, t2MVNs, t2TEQrs, t2TSTrs
7530    printT2SOOperand(MI, 1, O);
7531    return;
7532    break;
7533  case 48:
7534    // t2LDRBT, t2LDRBi8, t2LDRHT, t2LDRHi8, t2LDRSBT, t2LDRSBi8, t2LDRSHT, t...
7535    printT2AddrModeImm8Operand(MI, 1, O, false);
7536    return;
7537    break;
7538  case 49:
7539    // t2LDRB_PRE, t2LDRH_PRE, t2LDRSB_PRE, t2LDRSH_PRE, t2LDR_PRE, t2STRB_PR...
7540    printT2AddrModeImm8Operand(MI, 2, O, true);
7541    SStream_concat0(O, "!");
7542    return;
7543    break;
7544  case 50:
7545    // t2LDRBpci, t2LDRHpci, t2LDRSBpci, t2LDRSHpci, t2LDRpci, tLDRpci
7546    printThumbLdrLabelOperand(MI, 1, O);
7547    return;
7548    break;
7549  case 51:
7550    // t2LDRBs, t2LDRHs, t2LDRSBs, t2LDRSHs, t2LDRs, t2STRBs, t2STRHs, t2STRs
7551    printT2AddrModeSoRegOperand(MI, 1, O);
7552    return;
7553    break;
7554  case 52:
7555    // t2LDREX
7556    printT2AddrModeImm0_1020s4Operand(MI, 1, O);
7557    return;
7558    break;
7559  case 53:
7560    // t2MRS_M
7561    printMSRMaskOperand(MI, 1, O);
7562    return;
7563    break;
7564  case 54:
7565    // tADDspi, tSUBspi
7566    printThumbS4ImmOperand(MI, 2, O);
7567    return;
7568    break;
7569  case 55:
7570    // tADR
7571    printAdrLabelOperand(MI, 1, O, 2);
7572    return;
7573    break;
7574  case 56:
7575    // tASRri, tLSRri
7576    printThumbSRImm(MI, 3, O);
7577    return;
7578    break;
7579  case 57:
7580    // tLDRBi, tSTRBi
7581    printThumbAddrModeImm5S1Operand(MI, 1, O);
7582    return;
7583    break;
7584  case 58:
7585    // tLDRBr, tLDRHr, tLDRSB, tLDRSH, tLDRr, tSTRBr, tSTRHr, tSTRr
7586    printThumbAddrModeRROperand(MI, 1, O);
7587    return;
7588    break;
7589  case 59:
7590    // tLDRHi, tSTRHi
7591    printThumbAddrModeImm5S2Operand(MI, 1, O);
7592    return;
7593    break;
7594  case 60:
7595    // tLDRi, tSTRi
7596    printThumbAddrModeImm5S4Operand(MI, 1, O);
7597    return;
7598    break;
7599  case 61:
7600    // tLDRspi, tSTRspi
7601    printThumbAddrModeSPOperand(MI, 1, O);
7602    return;
7603    break;
7604  }
7605
7606
7607  // Fragment 5 encoded into 5 bits for 23 unique commands.
7608  //printf("Frag-5: %"PRIu64"\n", (Bits >> 41) & 31);
7609  switch ((Bits >> 41) & 31) {
7610  default:   // unreachable.
7611  case 0:
7612    // ADCri, ADCrr, ADCrsi, ADDri, ADDrr, ADDrsi, ANDri, ANDrr, ANDrsi, ASRi...
7613    SStream_concat0(O, ", ");
7614    break;
7615  case 1:
7616    // CDP, t2CDP, t2CDP2
7617    printCImmediate(MI, 2, O);
7618    SStream_concat0(O, ", ");
7619    printCImmediate(MI, 3, O);
7620    SStream_concat0(O, ", ");
7621    printCImmediate(MI, 4, O);
7622    SStream_concat0(O, ", ");
7623    printOperand(MI, 5, O);
7624    return;
7625    break;
7626  case 2:
7627    // CLZ, CMNri, CMNzrr, CMPri, CMPrr, CPS3p, CRC32B, CRC32CB, CRC32CH, CRC...
7628    return;
7629    break;
7630  case 3:
7631    // MCR, MCRR, MRRC, VABDfd, VABDfq, VACGEd, VACGEq, VACGTd, VACGTq, VADDD...
7632    printOperand(MI, 2, O);
7633    break;
7634  case 4:
7635    // SSAT, t2SSAT
7636    printShiftImmOperand(MI, 3, O);
7637    return;
7638    break;
7639  case 5:
7640    // SXTB, SXTB16, SXTH, UXTB, UXTB16, UXTH, t2SXTB, t2SXTB16, t2SXTH, t2UX...
7641    printRotImmOperand(MI, 2, O);
7642    return;
7643    break;
7644  case 6:
7645    // VDUPLN16d, VDUPLN16q, VDUPLN32d, VDUPLN32q, VDUPLN8d, VDUPLN8q, VGETLN...
7646    printVectorIndex(MI, 2, O);
7647    return;
7648    break;
7649  case 7:
7650    // VFMAD, VFMAS, VFMAfd, VFMAfq, VFMSD, VFMSS, VFMSfd, VFMSfq, VFNMAD, VF...
7651    printOperand(MI, 3, O);
7652    break;
7653  case 8:
7654    // VLD1DUPd16wb_register, VLD1DUPd32wb_register, VLD1DUPd8wb_register, VL...
7655    printOperand(MI, 4, O);
7656    return;
7657    break;
7658  case 9:
7659    // VLD1LNd16, VLD1LNd16_UPD, VLD1LNd32, VLD1LNd32_UPD, VLD1LNd8, VLD1LNd8...
7660    SStream_concat0(O, "]}, ");
7661	set_mem_access(MI, false);
7662    break;
7663  case 10:
7664    // VLD1LNdWB_fixed_Asm_16, VLD1LNdWB_fixed_Asm_32, VLD1LNdWB_fixed_Asm_8,...
7665    SStream_concat0(O, "!");
7666    return;
7667    break;
7668  case 11:
7669    // VLD2LNd16, VLD2LNd32, VLD2LNd8, VLD2LNq16, VLD2LNq32, VLD4LNd16, VLD4L...
7670    SStream_concat0(O, "], ");
7671	set_mem_access(MI, false);
7672    break;
7673  case 12:
7674    // VLD2LNd16_UPD, VLD2LNd32_UPD, VLD2LNd8_UPD, VLD2LNq16_UPD, VLD2LNq32_U...
7675    printOperand(MI, 1, O);
7676    SStream_concat0(O, "[");
7677	set_mem_access(MI, true);
7678    printNoHashImmediate(MI, 8, O);
7679    break;
7680  case 13:
7681    // VLD3DUPd16, VLD3DUPd32, VLD3DUPd8, VLD3DUPq16, VLD3DUPq32, VLD3DUPq8
7682    printAddrMode6Operand(MI, 3, O);
7683    return;
7684    break;
7685  case 14:
7686    // VLD3DUPd16_UPD, VLD3DUPd32_UPD, VLD3DUPd8_UPD, VLD3DUPq16_UPD, VLD3DUP...
7687    printAddrMode6Operand(MI, 4, O);
7688    break;
7689  case 15:
7690    // VLD4DUPd16_UPD, VLD4DUPd32_UPD, VLD4DUPd8_UPD, VLD4DUPq16_UPD, VLD4DUP...
7691    printAddrMode6Operand(MI, 5, O);
7692    printAddrMode6OffsetOperand(MI, 7, O);
7693    return;
7694    break;
7695  case 16:
7696    // VMLALslsv2i32, VMLALslsv4i16, VMLALsluv2i32, VMLALsluv4i16, VMLAslv2i3...
7697    printVectorIndex(MI, 4, O);
7698    return;
7699    break;
7700  case 17:
7701    // VMULLslsv2i32, VMULLslsv4i16, VMULLsluv2i32, VMULLsluv4i16, VMULslv2i3...
7702    printVectorIndex(MI, 3, O);
7703    return;
7704    break;
7705  case 18:
7706    // VST3d16_UPD, VST3d32_UPD, VST3d8_UPD, VST3q16_UPD, VST3q32_UPD, VST3q8...
7707    SStream_concat0(O, "}, ");
7708    printAddrMode6Operand(MI, 1, O);
7709    printAddrMode6OffsetOperand(MI, 3, O);
7710    return;
7711    break;
7712  case 19:
7713    // VST4LNd16_UPD, VST4LNd32_UPD, VST4LNd8_UPD, VST4LNq16_UPD, VST4LNq32_U...
7714    printOperand(MI, 5, O);
7715    SStream_concat0(O, "[");
7716	set_mem_access(MI, true);
7717    printNoHashImmediate(MI, 8, O);
7718    SStream_concat0(O, "], ");
7719	set_mem_access(MI, false);
7720    printOperand(MI, 6, O);
7721    SStream_concat0(O, "[");
7722	set_mem_access(MI, true);
7723    printNoHashImmediate(MI, 8, O);
7724    SStream_concat0(O, "], ");
7725	set_mem_access(MI, false);
7726    printOperand(MI, 7, O);
7727    SStream_concat0(O, "[");
7728	set_mem_access(MI, true);
7729    printNoHashImmediate(MI, 8, O);
7730    SStream_concat0(O, "]}, ");
7731	set_mem_access(MI, false);
7732    printAddrMode6Operand(MI, 1, O);
7733    printAddrMode6OffsetOperand(MI, 3, O);
7734    return;
7735    break;
7736  case 20:
7737    // sysLDMDA, sysLDMDB, sysLDMIA, sysLDMIB, sysSTMDA, sysSTMDB, sysSTMIA, ...
7738    SStream_concat0(O, " ^");
7739	ARM_addUserMode(MI);
7740    return;
7741    break;
7742  case 21:
7743    // t2LDRB_POST, t2LDRH_POST, t2LDRSB_POST, t2LDRSH_POST, t2LDR_POST, t2ST...
7744    printT2AddrModeImm8OffsetOperand(MI, 3, O);
7745    return;
7746    break;
7747  case 22:
7748    // t2MOVsra_flag, t2MOVsrl_flag
7749    SStream_concat0(O, ", #1");
7750	op_addImm(MI, 1);
7751    return;
7752    break;
7753  }
7754
7755
7756  // Fragment 6 encoded into 6 bits for 35 unique commands.
7757  //printf("Frag-6: %"PRIu64"\n", (Bits >> 46) & 63);
7758  switch ((Bits >> 46) & 63) {
7759  default:   // unreachable.
7760  case 0:
7761    // ADCri, ADCrr, ADDri, ADDrr, ANDri, ANDrr, ASRi, ASRr, BICri, BICrr, EO...
7762    printOperand(MI, 2, O);
7763    break;
7764  case 1:
7765    // ADCrsi, ADDrsi, ANDrsi, BICrsi, EORrsi, ORRrsi, RSBrsi, RSCrsi, SBCrsi...
7766    printSORegImmOperand(MI, 2, O);
7767    return;
7768    break;
7769  case 2:
7770    // BFI, t2BFI
7771    printBitfieldInvMaskImmOperand(MI, 3, O);
7772    return;
7773    break;
7774  case 3:
7775    // LDCL_OPTION, LDC_OPTION, STCL_OPTION, STC_OPTION, t2LDC2L_OPTION, t2LD...
7776    printCoprocOptionImm(MI, 3, O);
7777    return;
7778    break;
7779  case 4:
7780    // LDCL_POST, LDC_POST, STCL_POST, STC_POST, t2LDC2L_POST, t2LDC2_POST, t...
7781    printPostIdxImm8s4Operand(MI, 3, O);
7782    return;
7783    break;
7784  case 5:
7785    // LDRBT_POST_IMM, LDRBT_POST_REG, LDRB_POST_IMM, LDRB_POST_REG, LDRT_POS...
7786    printAddrMode2OffsetOperand(MI, 3, O);
7787    return;
7788    break;
7789  case 6:
7790    // LDRD, STRD
7791    printAddrMode3Operand(MI, 2, O, false);
7792    return;
7793    break;
7794  case 7:
7795    // LDRD_POST, STRD_POST, t2LDRD_POST, t2STRD_POST
7796    printAddrMode7Operand(MI, 3, O);
7797    break;
7798  case 8:
7799    // LDRD_PRE, STRD_PRE
7800    printAddrMode3Operand(MI, 3, O, true);
7801    SStream_concat0(O, "!");
7802    return;
7803    break;
7804  case 9:
7805    // LDRHTi, LDRSBTi, LDRSHTi, STRHTi
7806    printPostIdxImm8Operand(MI, 3, O);
7807    return;
7808    break;
7809  case 10:
7810    // LDRHTr, LDRSBTr, LDRSHTr, STRHTr
7811    printPostIdxRegOperand(MI, 3, O);
7812    return;
7813    break;
7814  case 11:
7815    // LDRH_POST, LDRSB_POST, LDRSH_POST, STRH_POST
7816    printAddrMode3OffsetOperand(MI, 3, O);
7817    return;
7818    break;
7819  case 12:
7820    // MCR, MCRR, MRRC, t2MCR, t2MCR2, t2MCRR, t2MCRR2, t2MRRC, t2MRRC2
7821    SStream_concat0(O, ", ");
7822    break;
7823  case 13:
7824    // MCRR2, MRRC2
7825    printCImmediate(MI, 4, O);
7826    return;
7827    break;
7828  case 14:
7829    // STLEX, STLEXB, STLEXH, STREX, STREXB, STREXH, SWP, SWPB, t2LDAEXD, t2L...
7830    printAddrMode7Operand(MI, 2, O);
7831    return;
7832    break;
7833  case 15:
7834    // VABDfd, VABDfq, VACGEd, VACGEq, VACGTd, VACGTq, VADDD, VADDS, VADDfd, ...
7835    return;
7836    break;
7837  case 16:
7838    // VBIFd, VBIFq, VBITd, VBITq, VBSLd, VBSLq, VLD4LNd16, VLD4LNd32, VLD4LN...
7839    printOperand(MI, 3, O);
7840    break;
7841  case 17:
7842    // VLD1LNd16, VLD1LNd32, VLD1LNd8, VST1LNd16_UPD, VST1LNd32_UPD, VST1LNd8...
7843    printAddrMode6Operand(MI, 1, O);
7844    break;
7845  case 18:
7846    // VLD1LNd16_UPD, VLD1LNd32_UPD, VLD1LNd8_UPD
7847    printAddrMode6Operand(MI, 2, O);
7848    printAddrMode6OffsetOperand(MI, 4, O);
7849    return;
7850    break;
7851  case 19:
7852    // VLD1LNdWB_register_Asm_16, VLD1LNdWB_register_Asm_32, VLD1LNdWB_regist...
7853    printOperand(MI, 4, O);
7854    break;
7855  case 20:
7856    // VLD2LNd16, VLD2LNd32, VLD2LNd8, VLD2LNq16, VLD2LNq32
7857    printOperand(MI, 1, O);
7858    SStream_concat0(O, "[");
7859	set_mem_access(MI, true);
7860    printNoHashImmediate(MI, 6, O);
7861    SStream_concat0(O, "]}, ");
7862	set_mem_access(MI, false);
7863    printAddrMode6Operand(MI, 2, O);
7864    return;
7865    break;
7866  case 21:
7867    // VLD2LNd16_UPD, VLD2LNd32_UPD, VLD2LNd8_UPD, VLD2LNq16_UPD, VLD2LNq32_U...
7868    SStream_concat0(O, "]}, ");
7869	set_mem_access(MI, false);
7870    printAddrMode6Operand(MI, 3, O);
7871    printAddrMode6OffsetOperand(MI, 5, O);
7872    return;
7873    break;
7874  case 22:
7875    // VLD3DUPd16_UPD, VLD3DUPd32_UPD, VLD3DUPd8_UPD, VLD3DUPq16_UPD, VLD3DUP...
7876    printAddrMode6OffsetOperand(MI, 6, O);
7877    return;
7878    break;
7879  case 23:
7880    // VLD3LNd16, VLD3LNd32, VLD3LNd8, VLD3LNq16, VLD3LNq32
7881    SStream_concat0(O, "], ");
7882	set_mem_access(MI, false);
7883    printOperand(MI, 2, O);
7884    SStream_concat0(O, "[");
7885	set_mem_access(MI, true);
7886    printNoHashImmediate(MI, 8, O);
7887    SStream_concat0(O, "]}, ");
7888	set_mem_access(MI, false);
7889    printAddrMode6Operand(MI, 3, O);
7890    return;
7891    break;
7892  case 24:
7893    // VLD3LNd16_UPD, VLD3LNd32_UPD, VLD3LNd8_UPD, VLD3LNq16_UPD, VLD3LNq32_U...
7894    printAddrMode6Operand(MI, 4, O);
7895    printAddrMode6OffsetOperand(MI, 6, O);
7896    return;
7897    break;
7898  case 25:
7899    // VMLAslfd, VMLAslfq, VMLSslfd, VMLSslfq
7900    printVectorIndex(MI, 4, O);
7901    return;
7902    break;
7903  case 26:
7904    // VMULslfd, VMULslfq
7905    printVectorIndex(MI, 3, O);
7906    return;
7907    break;
7908  case 27:
7909    // VST2LNd16_UPD, VST2LNd32_UPD, VST2LNd8_UPD, VST2LNq16_UPD, VST2LNq32_U...
7910    printOperand(MI, 5, O);
7911    SStream_concat0(O, "[");
7912	set_mem_access(MI, true);
7913    printNoHashImmediate(MI, 6, O);
7914    SStream_concat0(O, "]}, ");
7915	set_mem_access(MI, false);
7916    printAddrMode6Operand(MI, 1, O);
7917    printAddrMode6OffsetOperand(MI, 3, O);
7918    return;
7919    break;
7920  case 28:
7921    // VST4d16_UPD, VST4d32_UPD, VST4d8_UPD, VST4q16_UPD, VST4q32_UPD, VST4q8...
7922    printOperand(MI, 7, O);
7923    SStream_concat0(O, "}, ");
7924    printAddrMode6Operand(MI, 1, O);
7925    printAddrMode6OffsetOperand(MI, 3, O);
7926    return;
7927    break;
7928  case 29:
7929    // t2ADCrs, t2ADDrs, t2ANDrs, t2BICrs, t2EORrs, t2ORNrs, t2ORRrs, t2RSBrs...
7930    printT2SOOperand(MI, 2, O);
7931    return;
7932    break;
7933  case 30:
7934    // t2ASRri, t2LSRri
7935    printThumbSRImm(MI, 2, O);
7936    return;
7937    break;
7938  case 31:
7939    // t2LDRD_PRE, t2STRD_PRE
7940    printT2AddrModeImm8s4Operand(MI, 3, O, true);
7941    SStream_concat0(O, "!");
7942    return;
7943    break;
7944  case 32:
7945    // t2LDRDi8, t2STRDi8
7946    printT2AddrModeImm8s4Operand(MI, 2, O, false);
7947    return;
7948    break;
7949  case 33:
7950    // t2STREX
7951    printT2AddrModeImm0_1020s4Operand(MI, 2, O);
7952    return;
7953    break;
7954  case 34:
7955    // tADDrSPi
7956    printThumbS4ImmOperand(MI, 2, O);
7957    return;
7958    break;
7959  }
7960
7961
7962  // Fragment 7 encoded into 4 bits for 12 unique commands.
7963  //printf("Frag-7: %"PRIu64"\n", (Bits >> 52) & 15);
7964  switch ((Bits >> 52) & 15) {
7965  default:   // unreachable.
7966  case 0:
7967    // ADCri, ADCrr, ADDri, ADDrr, ANDri, ANDrr, ASRi, ASRr, BICri, BICrr, EO...
7968    return;
7969    break;
7970  case 1:
7971    // LDRD_POST, MLA, MLS, SBFX, SMLABB, SMLABT, SMLAD, SMLADX, SMLALBB, SML...
7972    SStream_concat0(O, ", ");
7973    break;
7974  case 2:
7975    // MCR, t2MCR, t2MCR2
7976    printCImmediate(MI, 3, O);
7977    SStream_concat0(O, ", ");
7978    printCImmediate(MI, 4, O);
7979    SStream_concat0(O, ", ");
7980    printOperand(MI, 5, O);
7981    return;
7982    break;
7983  case 3:
7984    // MCRR, MRRC, t2MCRR, t2MCRR2, t2MRRC, t2MRRC2
7985    printOperand(MI, 3, O);
7986    SStream_concat0(O, ", ");
7987    printCImmediate(MI, 4, O);
7988    return;
7989    break;
7990  case 4:
7991    // PKHBT, t2PKHBT
7992    printPKHLSLShiftImm(MI, 3, O);
7993    return;
7994    break;
7995  case 5:
7996    // PKHTB, t2PKHTB
7997    printPKHASRShiftImm(MI, 3, O);
7998    return;
7999    break;
8000  case 6:
8001    // SXTAB, SXTAB16, SXTAH, UXTAB, UXTAB16, UXTAH, t2SXTAB, t2SXTAB16, t2SX...
8002    printRotImmOperand(MI, 3, O);
8003    return;
8004    break;
8005  case 7:
8006    // USAT, t2USAT
8007    printShiftImmOperand(MI, 3, O);
8008    return;
8009    break;
8010  case 8:
8011    // VLD3d16, VLD3d16_UPD, VLD3d32, VLD3d32_UPD, VLD3d8, VLD3d8_UPD, VLD3q1...
8012    SStream_concat0(O, "}, ");
8013    break;
8014  case 9:
8015    // VLD4LNd16, VLD4LNd32, VLD4LNd8, VLD4LNq16, VLD4LNq32, VST2LNd16, VST2L...
8016    SStream_concat0(O, "[");
8017	set_mem_access(MI, true);
8018    break;
8019  case 10:
8020    // VST1LNd16_UPD, VST1LNd32_UPD, VST1LNd8_UPD
8021    printAddrMode6OffsetOperand(MI, 3, O);
8022    return;
8023    break;
8024  case 11:
8025    // t2LDRD_POST, t2STRD_POST
8026    printT2AddrModeImm8s4OffsetOperand(MI, 4, O);
8027    return;
8028    break;
8029  }
8030
8031
8032  // Fragment 8 encoded into 4 bits for 13 unique commands.
8033  //printf("Frag-8: %"PRIu64"\n", (Bits >> 56) & 15);
8034  switch ((Bits >> 56) & 15) {
8035  default:   // unreachable.
8036  case 0:
8037    // LDRD_POST, STRD_POST
8038    printAddrMode3OffsetOperand(MI, 4, O);
8039    return;
8040    break;
8041  case 1:
8042    // MLA, MLS, SMLABB, SMLABT, SMLAD, SMLADX, SMLALBB, SMLALBT, SMLALD, SML...
8043    printOperand(MI, 3, O);
8044    break;
8045  case 2:
8046    // SBFX, UBFX, t2SBFX, t2UBFX
8047    printImmPlusOneOperand(MI, 3, O);
8048    return;
8049    break;
8050  case 3:
8051    // VLD3d16, VLD3d32, VLD3d8, VLD3q16, VLD3q32, VLD3q8
8052    printAddrMode6Operand(MI, 3, O);
8053    return;
8054    break;
8055  case 4:
8056    // VLD3d16_UPD, VLD3d32_UPD, VLD3d8_UPD, VLD3q16_UPD, VLD3q32_UPD, VLD3q8...
8057    printAddrMode6Operand(MI, 4, O);
8058    printAddrMode6OffsetOperand(MI, 6, O);
8059    return;
8060    break;
8061  case 5:
8062    // VLD4LNd16, VLD4LNd32, VLD4LNd8, VLD4LNq16, VLD4LNq32
8063    printNoHashImmediate(MI, 10, O);
8064    SStream_concat0(O, "]}, ");
8065	set_mem_access(MI, false);
8066    printAddrMode6Operand(MI, 4, O);
8067    return;
8068    break;
8069  case 6:
8070    // VST2LNd16, VST2LNd32, VST2LNd8, VST2LNq16, VST2LNq32
8071    printNoHashImmediate(MI, 4, O);
8072    SStream_concat0(O, "]}, ");
8073	set_mem_access(MI, false);
8074    printAddrMode6Operand(MI, 0, O);
8075    return;
8076    break;
8077  case 7:
8078    // VST3LNd16, VST3LNd32, VST3LNd8, VST3LNq16, VST3LNq32
8079    printNoHashImmediate(MI, 5, O);
8080    SStream_concat0(O, "], ");
8081	set_mem_access(MI, false);
8082    printOperand(MI, 4, O);
8083    SStream_concat0(O, "[");
8084	set_mem_access(MI, true);
8085    printNoHashImmediate(MI, 5, O);
8086    SStream_concat0(O, "]}, ");
8087	set_mem_access(MI, false);
8088    printAddrMode6Operand(MI, 0, O);
8089    return;
8090    break;
8091  case 8:
8092    // VST3d16, VST3d32, VST3d8, VST3q16, VST3q32, VST3q8
8093    printAddrMode6Operand(MI, 0, O);
8094    return;
8095    break;
8096  case 9:
8097    // VST4LNd16, VST4LNd32, VST4LNd8, VST4LNq16, VST4LNq32
8098    printNoHashImmediate(MI, 6, O);
8099    SStream_concat0(O, "], ");
8100	set_mem_access(MI, false);
8101    printOperand(MI, 4, O);
8102    SStream_concat0(O, "[");
8103	set_mem_access(MI, true);
8104    printNoHashImmediate(MI, 6, O);
8105    SStream_concat0(O, "], ");
8106	set_mem_access(MI, false);
8107    printOperand(MI, 5, O);
8108    SStream_concat0(O, "[");
8109	set_mem_access(MI, true);
8110    printNoHashImmediate(MI, 6, O);
8111    SStream_concat0(O, "]}, ");
8112	set_mem_access(MI, false);
8113    printAddrMode6Operand(MI, 0, O);
8114    return;
8115    break;
8116  case 10:
8117    // VST4d16, VST4d32, VST4d8, VST4q16, VST4q32, VST4q8
8118    printOperand(MI, 5, O);
8119    SStream_concat0(O, "}, ");
8120    printAddrMode6Operand(MI, 0, O);
8121    return;
8122    break;
8123  case 11:
8124    // t2SMLSLDX
8125    printOperand(MI, 2, O);
8126    return;
8127    break;
8128  case 12:
8129    // t2STLEXD, t2STREXD
8130    printAddrMode7Operand(MI, 3, O);
8131    return;
8132    break;
8133  }
8134
8135
8136  // Fragment 9 encoded into 1 bits for 2 unique commands.
8137  //printf("Frag-9: %"PRIu64"\n", (Bits >> 60) & 1);
8138  if ((Bits >> 60) & 1) {
8139    // VLD4d16, VLD4d16_UPD, VLD4d32, VLD4d32_UPD, VLD4d8, VLD4d8_UPD, VLD4q1...
8140    SStream_concat0(O, "}, ");
8141  } else {
8142    // MLA, MLS, SMLABB, SMLABT, SMLAD, SMLADX, SMLALBB, SMLALBT, SMLALD, SML...
8143    return;
8144  }
8145
8146
8147  // Fragment 10 encoded into 1 bits for 2 unique commands.
8148  //printf("Frag-10: %"PRIu64"\n", (Bits >> 61) & 1);
8149  if ((Bits >> 61) & 1) {
8150    // VLD4d16_UPD, VLD4d32_UPD, VLD4d8_UPD, VLD4q16_UPD, VLD4q32_UPD, VLD4q8...
8151    printAddrMode6Operand(MI, 5, O);
8152    printAddrMode6OffsetOperand(MI, 7, O);
8153    return;
8154  } else {
8155    // VLD4d16, VLD4d32, VLD4d8, VLD4q16, VLD4q32, VLD4q8
8156    printAddrMode6Operand(MI, 4, O);
8157    return;
8158  }
8159}
8160
8161
8162/// getRegisterName - This method is automatically generated by tblgen
8163/// from the register set description.  This returns the assembler name
8164/// for the specified register.
8165static const char *getRegisterName(unsigned RegNo)
8166{
8167  // assert(RegNo && RegNo < 289 && "Invalid register number!");
8168
8169#ifndef CAPSTONE_DIET
8170  static const char AsmStrs[] = {
8171  /* 0 */ 'D', '4', '_', 'D', '6', '_', 'D', '8', '_', 'D', '1', '0', 0,
8172  /* 13 */ 'D', '7', '_', 'D', '8', '_', 'D', '9', '_', 'D', '1', '0', 0,
8173  /* 26 */ 'Q', '7', '_', 'Q', '8', '_', 'Q', '9', '_', 'Q', '1', '0', 0,
8174  /* 39 */ 'd', '1', '0', 0,
8175  /* 43 */ 'q', '1', '0', 0,
8176  /* 47 */ 's', '1', '0', 0,
8177  /* 51 */ 'D', '1', '4', '_', 'D', '1', '6', '_', 'D', '1', '8', '_', 'D', '2', '0', 0,
8178  /* 67 */ 'D', '1', '7', '_', 'D', '1', '8', '_', 'D', '1', '9', '_', 'D', '2', '0', 0,
8179  /* 83 */ 'd', '2', '0', 0,
8180  /* 87 */ 's', '2', '0', 0,
8181  /* 91 */ 'D', '2', '4', '_', 'D', '2', '6', '_', 'D', '2', '8', '_', 'D', '3', '0', 0,
8182  /* 107 */ 'D', '2', '7', '_', 'D', '2', '8', '_', 'D', '2', '9', '_', 'D', '3', '0', 0,
8183  /* 123 */ 'd', '3', '0', 0,
8184  /* 127 */ 's', '3', '0', 0,
8185  /* 131 */ 'd', '0', 0,
8186  /* 134 */ 'q', '0', 0,
8187  /* 137 */ 'm', 'v', 'f', 'r', '0', 0,
8188  /* 143 */ 's', '0', 0,
8189  /* 146 */ 'D', '9', '_', 'D', '1', '0', '_', 'D', '1', '1', 0,
8190  /* 157 */ 'D', '5', '_', 'D', '7', '_', 'D', '9', '_', 'D', '1', '1', 0,
8191  /* 170 */ 'Q', '8', '_', 'Q', '9', '_', 'Q', '1', '0', '_', 'Q', '1', '1', 0,
8192  /* 184 */ 'R', '1', '0', '_', 'R', '1', '1', 0,
8193  /* 192 */ 'd', '1', '1', 0,
8194  /* 196 */ 'q', '1', '1', 0,
8195  /* 200 */ 's', '1', '1', 0,
8196  /* 204 */ 'D', '1', '9', '_', 'D', '2', '0', '_', 'D', '2', '1', 0,
8197  /* 216 */ 'D', '1', '5', '_', 'D', '1', '7', '_', 'D', '1', '9', '_', 'D', '2', '1', 0,
8198  /* 232 */ 'd', '2', '1', 0,
8199  /* 236 */ 's', '2', '1', 0,
8200  /* 240 */ 'D', '2', '9', '_', 'D', '3', '0', '_', 'D', '3', '1', 0,
8201  /* 252 */ 'D', '2', '5', '_', 'D', '2', '7', '_', 'D', '2', '9', '_', 'D', '3', '1', 0,
8202  /* 268 */ 'd', '3', '1', 0,
8203  /* 272 */ 's', '3', '1', 0,
8204  /* 276 */ 'Q', '0', '_', 'Q', '1', 0,
8205  /* 282 */ 'R', '0', '_', 'R', '1', 0,
8206  /* 288 */ 'd', '1', 0,
8207  /* 291 */ 'q', '1', 0,
8208  /* 294 */ 'm', 'v', 'f', 'r', '1', 0,
8209  /* 300 */ 's', '1', 0,
8210  /* 303 */ 'D', '6', '_', 'D', '8', '_', 'D', '1', '0', '_', 'D', '1', '2', 0,
8211  /* 317 */ 'D', '9', '_', 'D', '1', '0', '_', 'D', '1', '1', '_', 'D', '1', '2', 0,
8212  /* 332 */ 'Q', '9', '_', 'Q', '1', '0', '_', 'Q', '1', '1', '_', 'Q', '1', '2', 0,
8213  /* 347 */ 'd', '1', '2', 0,
8214  /* 351 */ 'q', '1', '2', 0,
8215  /* 355 */ 's', '1', '2', 0,
8216  /* 359 */ 'D', '1', '6', '_', 'D', '1', '8', '_', 'D', '2', '0', '_', 'D', '2', '2', 0,
8217  /* 375 */ 'D', '1', '9', '_', 'D', '2', '0', '_', 'D', '2', '1', '_', 'D', '2', '2', 0,
8218  /* 391 */ 'd', '2', '2', 0,
8219  /* 395 */ 's', '2', '2', 0,
8220  /* 399 */ 'D', '0', '_', 'D', '2', 0,
8221  /* 405 */ 'D', '0', '_', 'D', '1', '_', 'D', '2', 0,
8222  /* 414 */ 'Q', '1', '_', 'Q', '2', 0,
8223  /* 420 */ 'd', '2', 0,
8224  /* 423 */ 'q', '2', 0,
8225  /* 426 */ 'm', 'v', 'f', 'r', '2', 0,
8226  /* 432 */ 's', '2', 0,
8227  /* 435 */ 'f', 'p', 'i', 'n', 's', 't', '2', 0,
8228  /* 443 */ 'D', '7', '_', 'D', '9', '_', 'D', '1', '1', '_', 'D', '1', '3', 0,
8229  /* 457 */ 'D', '1', '1', '_', 'D', '1', '2', '_', 'D', '1', '3', 0,
8230  /* 469 */ 'Q', '1', '0', '_', 'Q', '1', '1', '_', 'Q', '1', '2', '_', 'Q', '1', '3', 0,
8231  /* 485 */ 'd', '1', '3', 0,
8232  /* 489 */ 'q', '1', '3', 0,
8233  /* 493 */ 's', '1', '3', 0,
8234  /* 497 */ 'D', '1', '7', '_', 'D', '1', '9', '_', 'D', '2', '1', '_', 'D', '2', '3', 0,
8235  /* 513 */ 'D', '2', '1', '_', 'D', '2', '2', '_', 'D', '2', '3', 0,
8236  /* 525 */ 'd', '2', '3', 0,
8237  /* 529 */ 's', '2', '3', 0,
8238  /* 533 */ 'D', '1', '_', 'D', '3', 0,
8239  /* 539 */ 'D', '1', '_', 'D', '2', '_', 'D', '3', 0,
8240  /* 548 */ 'Q', '0', '_', 'Q', '1', '_', 'Q', '2', '_', 'Q', '3', 0,
8241  /* 560 */ 'R', '2', '_', 'R', '3', 0,
8242  /* 566 */ 'd', '3', 0,
8243  /* 569 */ 'q', '3', 0,
8244  /* 572 */ 'r', '3', 0,
8245  /* 575 */ 's', '3', 0,
8246  /* 578 */ 'D', '8', '_', 'D', '1', '0', '_', 'D', '1', '2', '_', 'D', '1', '4', 0,
8247  /* 593 */ 'D', '1', '1', '_', 'D', '1', '2', '_', 'D', '1', '3', '_', 'D', '1', '4', 0,
8248  /* 609 */ 'Q', '1', '1', '_', 'Q', '1', '2', '_', 'Q', '1', '3', '_', 'Q', '1', '4', 0,
8249  /* 625 */ 'd', '1', '4', 0,
8250  /* 629 */ 'q', '1', '4', 0,
8251  /* 633 */ 's', '1', '4', 0,
8252  /* 637 */ 'D', '1', '8', '_', 'D', '2', '0', '_', 'D', '2', '2', '_', 'D', '2', '4', 0,
8253  /* 653 */ 'D', '2', '1', '_', 'D', '2', '2', '_', 'D', '2', '3', '_', 'D', '2', '4', 0,
8254  /* 669 */ 'd', '2', '4', 0,
8255  /* 673 */ 's', '2', '4', 0,
8256  /* 677 */ 'D', '0', '_', 'D', '2', '_', 'D', '4', 0,
8257  /* 686 */ 'D', '1', '_', 'D', '2', '_', 'D', '3', '_', 'D', '4', 0,
8258  /* 698 */ 'Q', '1', '_', 'Q', '2', '_', 'Q', '3', '_', 'Q', '4', 0,
8259  /* 710 */ 'd', '4', 0,
8260  /* 713 */ 'q', '4', 0,
8261  /* 716 */ 'r', '4', 0,
8262  /* 719 */ 's', '4', 0,
8263  /* 722 */ 'D', '9', '_', 'D', '1', '1', '_', 'D', '1', '3', '_', 'D', '1', '5', 0,
8264  /* 737 */ 'D', '1', '3', '_', 'D', '1', '4', '_', 'D', '1', '5', 0,
8265  /* 749 */ 'Q', '1', '2', '_', 'Q', '1', '3', '_', 'Q', '1', '4', '_', 'Q', '1', '5', 0,
8266  /* 765 */ 'd', '1', '5', 0,
8267  /* 769 */ 'q', '1', '5', 0,
8268  /* 773 */ 's', '1', '5', 0,
8269  /* 777 */ 'D', '1', '9', '_', 'D', '2', '1', '_', 'D', '2', '3', '_', 'D', '2', '5', 0,
8270  /* 793 */ 'D', '2', '3', '_', 'D', '2', '4', '_', 'D', '2', '5', 0,
8271  /* 805 */ 'd', '2', '5', 0,
8272  /* 809 */ 's', '2', '5', 0,
8273  /* 813 */ 'D', '1', '_', 'D', '3', '_', 'D', '5', 0,
8274  /* 822 */ 'D', '3', '_', 'D', '4', '_', 'D', '5', 0,
8275  /* 831 */ 'Q', '2', '_', 'Q', '3', '_', 'Q', '4', '_', 'Q', '5', 0,
8276  /* 843 */ 'R', '4', '_', 'R', '5', 0,
8277  /* 849 */ 'd', '5', 0,
8278  /* 852 */ 'q', '5', 0,
8279  /* 855 */ 'r', '5', 0,
8280  /* 858 */ 's', '5', 0,
8281  /* 861 */ 'D', '1', '0', '_', 'D', '1', '2', '_', 'D', '1', '4', '_', 'D', '1', '6', 0,
8282  /* 877 */ 'D', '1', '3', '_', 'D', '1', '4', '_', 'D', '1', '5', '_', 'D', '1', '6', 0,
8283  /* 893 */ 'd', '1', '6', 0,
8284  /* 897 */ 's', '1', '6', 0,
8285  /* 901 */ 'D', '2', '0', '_', 'D', '2', '2', '_', 'D', '2', '4', '_', 'D', '2', '6', 0,
8286  /* 917 */ 'D', '2', '3', '_', 'D', '2', '4', '_', 'D', '2', '5', '_', 'D', '2', '6', 0,
8287  /* 933 */ 'd', '2', '6', 0,
8288  /* 937 */ 's', '2', '6', 0,
8289  /* 941 */ 'D', '0', '_', 'D', '2', '_', 'D', '4', '_', 'D', '6', 0,
8290  /* 953 */ 'D', '3', '_', 'D', '4', '_', 'D', '5', '_', 'D', '6', 0,
8291  /* 965 */ 'Q', '3', '_', 'Q', '4', '_', 'Q', '5', '_', 'Q', '6', 0,
8292  /* 977 */ 'd', '6', 0,
8293  /* 980 */ 'q', '6', 0,
8294  /* 983 */ 'r', '6', 0,
8295  /* 986 */ 's', '6', 0,
8296  /* 989 */ 'D', '1', '1', '_', 'D', '1', '3', '_', 'D', '1', '5', '_', 'D', '1', '7', 0,
8297  /* 1005 */ 'D', '1', '5', '_', 'D', '1', '6', '_', 'D', '1', '7', 0,
8298  /* 1017 */ 'd', '1', '7', 0,
8299  /* 1021 */ 's', '1', '7', 0,
8300  /* 1025 */ 'D', '2', '1', '_', 'D', '2', '3', '_', 'D', '2', '5', '_', 'D', '2', '7', 0,
8301  /* 1041 */ 'D', '2', '5', '_', 'D', '2', '6', '_', 'D', '2', '7', 0,
8302  /* 1053 */ 'd', '2', '7', 0,
8303  /* 1057 */ 's', '2', '7', 0,
8304  /* 1061 */ 'D', '1', '_', 'D', '3', '_', 'D', '5', '_', 'D', '7', 0,
8305  /* 1073 */ 'D', '5', '_', 'D', '6', '_', 'D', '7', 0,
8306  /* 1082 */ 'Q', '4', '_', 'Q', '5', '_', 'Q', '6', '_', 'Q', '7', 0,
8307  /* 1094 */ 'R', '6', '_', 'R', '7', 0,
8308  /* 1100 */ 'd', '7', 0,
8309  /* 1103 */ 'q', '7', 0,
8310  /* 1106 */ 'r', '7', 0,
8311  /* 1109 */ 's', '7', 0,
8312  /* 1112 */ 'D', '1', '2', '_', 'D', '1', '4', '_', 'D', '1', '6', '_', 'D', '1', '8', 0,
8313  /* 1128 */ 'D', '1', '5', '_', 'D', '1', '6', '_', 'D', '1', '7', '_', 'D', '1', '8', 0,
8314  /* 1144 */ 'd', '1', '8', 0,
8315  /* 1148 */ 's', '1', '8', 0,
8316  /* 1152 */ 'D', '2', '2', '_', 'D', '2', '4', '_', 'D', '2', '6', '_', 'D', '2', '8', 0,
8317  /* 1168 */ 'D', '2', '5', '_', 'D', '2', '6', '_', 'D', '2', '7', '_', 'D', '2', '8', 0,
8318  /* 1184 */ 'd', '2', '8', 0,
8319  /* 1188 */ 's', '2', '8', 0,
8320  /* 1192 */ 'D', '2', '_', 'D', '4', '_', 'D', '6', '_', 'D', '8', 0,
8321  /* 1204 */ 'D', '5', '_', 'D', '6', '_', 'D', '7', '_', 'D', '8', 0,
8322  /* 1216 */ 'Q', '5', '_', 'Q', '6', '_', 'Q', '7', '_', 'Q', '8', 0,
8323  /* 1228 */ 'd', '8', 0,
8324  /* 1231 */ 'q', '8', 0,
8325  /* 1234 */ 'r', '8', 0,
8326  /* 1237 */ 's', '8', 0,
8327  /* 1240 */ 'D', '1', '3', '_', 'D', '1', '5', '_', 'D', '1', '7', '_', 'D', '1', '9', 0,
8328  /* 1256 */ 'D', '1', '7', '_', 'D', '1', '8', '_', 'D', '1', '9', 0,
8329  /* 1268 */ 'd', '1', '9', 0,
8330  /* 1272 */ 's', '1', '9', 0,
8331  /* 1276 */ 'D', '2', '3', '_', 'D', '2', '5', '_', 'D', '2', '7', '_', 'D', '2', '9', 0,
8332  /* 1292 */ 'D', '2', '7', '_', 'D', '2', '8', '_', 'D', '2', '9', 0,
8333  /* 1304 */ 'd', '2', '9', 0,
8334  /* 1308 */ 's', '2', '9', 0,
8335  /* 1312 */ 'D', '3', '_', 'D', '5', '_', 'D', '7', '_', 'D', '9', 0,
8336  /* 1324 */ 'D', '7', '_', 'D', '8', '_', 'D', '9', 0,
8337  /* 1333 */ 'Q', '6', '_', 'Q', '7', '_', 'Q', '8', '_', 'Q', '9', 0,
8338  /* 1345 */ 'R', '8', '_', 'R', '9', 0,
8339  /* 1351 */ 'd', '9', 0,
8340  /* 1354 */ 'q', '9', 0,
8341  /* 1357 */ 's', '9', 0,
8342  /* 1360 */ 'R', '1', '2', '_', 'S', 'P', 0,
8343  /* 1367 */ 's', 'b', 0,
8344  /* 1370 */ 'p', 'c', 0,
8345  /* 1373 */ 'f', 'p', 'e', 'x', 'c', 0,
8346  /* 1379 */ 'f', 'p', 's', 'i', 'd', 0,
8347  /* 1385 */ 'i', 't', 's', 't', 'a', 't', 'e', 0,
8348  /* 1393 */ 's', 'l', 0,
8349  /* 1396 */ 'f', 'p', 0,
8350  /* 1399 */ 'i', 'p', 0,
8351  /* 1402 */ 's', 'p', 0,
8352  /* 1405 */ 'f', 'p', 's', 'c', 'r', 0,
8353  /* 1411 */ 'l', 'r', 0,
8354  /* 1414 */ 'a', 'p', 's', 'r', 0,
8355  /* 1419 */ 'c', 'p', 's', 'r', 0,
8356  /* 1424 */ 's', 'p', 's', 'r', 0,
8357  /* 1429 */ 'f', 'p', 'i', 'n', 's', 't', 0,
8358  /* 1436 */ 'f', 'p', 's', 'c', 'r', '_', 'n', 'z', 'c', 'v', 0,
8359  /* 1447 */ 'a', 'p', 's', 'r', '_', 'n', 'z', 'c', 'v', 0,
8360  };
8361
8362  static const uint32_t RegAsmOffset[] = {
8363    1414, 1447, 1419, 1373, 1429, 1405, 1436, 1379, 1385, 1411, 1370, 1402, 1424, 131,
8364    288, 420, 566, 710, 849, 977, 1100, 1228, 1351, 39, 192, 347, 485, 625,
8365    765, 893, 1017, 1144, 1268, 83, 232, 391, 525, 669, 805, 933, 1053, 1184,
8366    1304, 123, 268, 435, 137, 294, 426, 134, 291, 423, 569, 713, 852, 980,
8367    1103, 1231, 1354, 43, 196, 351, 489, 629, 769, 140, 297, 429, 572, 716,
8368    855, 983, 1106, 1234, 1367, 1393, 1396, 1399, 143, 300, 432, 575, 719, 858,
8369    986, 1109, 1237, 1357, 47, 200, 355, 493, 633, 773, 897, 1021, 1148, 1272,
8370    87, 236, 395, 529, 673, 809, 937, 1057, 1188, 1308, 127, 272, 399, 533,
8371    680, 816, 947, 1067, 1198, 1318, 6, 163, 309, 449, 585, 729, 869, 997,
8372    1120, 1248, 59, 224, 367, 505, 645, 785, 909, 1033, 1160, 1284, 99, 260,
8373    276, 414, 554, 704, 837, 971, 1088, 1222, 1339, 32, 176, 339, 477, 617,
8374    757, 548, 698, 831, 965, 1082, 1216, 1333, 26, 170, 332, 469, 609, 749,
8375    1360, 282, 560, 843, 1094, 1345, 184, 405, 539, 689, 822, 956, 1073, 1207,
8376    1324, 16, 146, 320, 457, 597, 737, 881, 1005, 1132, 1256, 71, 204, 379,
8377    513, 657, 793, 921, 1041, 1172, 1292, 111, 240, 677, 813, 944, 1064, 1195,
8378    1315, 3, 160, 306, 446, 581, 725, 865, 993, 1116, 1244, 55, 220, 363,
8379    501, 641, 781, 905, 1029, 1156, 1280, 95, 256, 941, 1061, 1192, 1312, 0,
8380    157, 303, 443, 578, 722, 861, 989, 1112, 1240, 51, 216, 359, 497, 637,
8381    777, 901, 1025, 1152, 1276, 91, 252, 408, 692, 959, 1210, 19, 324, 601,
8382    885, 1136, 75, 383, 661, 925, 1176, 115, 686, 953, 1204, 13, 317, 593,
8383    877, 1128, 67, 375, 653, 917, 1168, 107,
8384  };
8385
8386  //int i;
8387  //for (i = 0; i < sizeof(RegAsmOffset)/4; i++)
8388  //     printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1);
8389  //printf("*************************\n");
8390  return AsmStrs+RegAsmOffset[RegNo-1];
8391#else
8392  return NULL;
8393#endif
8394}
8395
8396// get registers with number only
8397static const char *getRegisterName2(unsigned RegNo)
8398{
8399  // assert(RegNo && RegNo < 289 && "Invalid register number!");
8400
8401#ifndef CAPSTONE_DIET
8402  static const char AsmStrs[] = {
8403  /* 0 */ 'D', '4', '_', 'D', '6', '_', 'D', '8', '_', 'D', '1', '0', 0,
8404  /* 13 */ 'D', '7', '_', 'D', '8', '_', 'D', '9', '_', 'D', '1', '0', 0,
8405  /* 26 */ 'Q', '7', '_', 'Q', '8', '_', 'Q', '9', '_', 'Q', '1', '0', 0,
8406  /* 39 */ 'd', '1', '0', 0,
8407  /* 43 */ 'q', '1', '0', 0,
8408  /* 47 */ 'r', '1', '0', 0,
8409  /* 51 */ 's', '1', '0', 0,
8410  /* 55 */ 'D', '1', '4', '_', 'D', '1', '6', '_', 'D', '1', '8', '_', 'D', '2', '0', 0,
8411  /* 71 */ 'D', '1', '7', '_', 'D', '1', '8', '_', 'D', '1', '9', '_', 'D', '2', '0', 0,
8412  /* 87 */ 'd', '2', '0', 0,
8413  /* 91 */ 's', '2', '0', 0,
8414  /* 95 */ 'D', '2', '4', '_', 'D', '2', '6', '_', 'D', '2', '8', '_', 'D', '3', '0', 0,
8415  /* 111 */ 'D', '2', '7', '_', 'D', '2', '8', '_', 'D', '2', '9', '_', 'D', '3', '0', 0,
8416  /* 127 */ 'd', '3', '0', 0,
8417  /* 131 */ 's', '3', '0', 0,
8418  /* 135 */ 'd', '0', 0,
8419  /* 138 */ 'q', '0', 0,
8420  /* 141 */ 'm', 'v', 'f', 'r', '0', 0,
8421  /* 147 */ 's', '0', 0,
8422  /* 150 */ 'D', '9', '_', 'D', '1', '0', '_', 'D', '1', '1', 0,
8423  /* 161 */ 'D', '5', '_', 'D', '7', '_', 'D', '9', '_', 'D', '1', '1', 0,
8424  /* 174 */ 'Q', '8', '_', 'Q', '9', '_', 'Q', '1', '0', '_', 'Q', '1', '1', 0,
8425  /* 188 */ 'R', '1', '0', '_', 'R', '1', '1', 0,
8426  /* 196 */ 'd', '1', '1', 0,
8427  /* 200 */ 'q', '1', '1', 0,
8428  /* 204 */ 'r', '1', '1', 0,
8429  /* 208 */ 's', '1', '1', 0,
8430  /* 212 */ 'D', '1', '9', '_', 'D', '2', '0', '_', 'D', '2', '1', 0,
8431  /* 224 */ 'D', '1', '5', '_', 'D', '1', '7', '_', 'D', '1', '9', '_', 'D', '2', '1', 0,
8432  /* 240 */ 'd', '2', '1', 0,
8433  /* 244 */ 's', '2', '1', 0,
8434  /* 248 */ 'D', '2', '9', '_', 'D', '3', '0', '_', 'D', '3', '1', 0,
8435  /* 260 */ 'D', '2', '5', '_', 'D', '2', '7', '_', 'D', '2', '9', '_', 'D', '3', '1', 0,
8436  /* 276 */ 'd', '3', '1', 0,
8437  /* 280 */ 's', '3', '1', 0,
8438  /* 284 */ 'Q', '0', '_', 'Q', '1', 0,
8439  /* 290 */ 'R', '0', '_', 'R', '1', 0,
8440  /* 296 */ 'd', '1', 0,
8441  /* 299 */ 'q', '1', 0,
8442  /* 302 */ 'm', 'v', 'f', 'r', '1', 0,
8443  /* 308 */ 's', '1', 0,
8444  /* 311 */ 'D', '6', '_', 'D', '8', '_', 'D', '1', '0', '_', 'D', '1', '2', 0,
8445  /* 325 */ 'D', '9', '_', 'D', '1', '0', '_', 'D', '1', '1', '_', 'D', '1', '2', 0,
8446  /* 340 */ 'Q', '9', '_', 'Q', '1', '0', '_', 'Q', '1', '1', '_', 'Q', '1', '2', 0,
8447  /* 355 */ 'd', '1', '2', 0,
8448  /* 359 */ 'q', '1', '2', 0,
8449  /* 363 */ 'r', '1', '2', 0,
8450  /* 367 */ 's', '1', '2', 0,
8451  /* 371 */ 'D', '1', '6', '_', 'D', '1', '8', '_', 'D', '2', '0', '_', 'D', '2', '2', 0,
8452  /* 387 */ 'D', '1', '9', '_', 'D', '2', '0', '_', 'D', '2', '1', '_', 'D', '2', '2', 0,
8453  /* 403 */ 'd', '2', '2', 0,
8454  /* 407 */ 's', '2', '2', 0,
8455  /* 411 */ 'D', '0', '_', 'D', '2', 0,
8456  /* 417 */ 'D', '0', '_', 'D', '1', '_', 'D', '2', 0,
8457  /* 426 */ 'Q', '1', '_', 'Q', '2', 0,
8458  /* 432 */ 'd', '2', 0,
8459  /* 435 */ 'q', '2', 0,
8460  /* 438 */ 'm', 'v', 'f', 'r', '2', 0,
8461  /* 444 */ 's', '2', 0,
8462  /* 447 */ 'f', 'p', 'i', 'n', 's', 't', '2', 0,
8463  /* 455 */ 'D', '7', '_', 'D', '9', '_', 'D', '1', '1', '_', 'D', '1', '3', 0,
8464  /* 469 */ 'D', '1', '1', '_', 'D', '1', '2', '_', 'D', '1', '3', 0,
8465  /* 481 */ 'Q', '1', '0', '_', 'Q', '1', '1', '_', 'Q', '1', '2', '_', 'Q', '1', '3', 0,
8466  /* 497 */ 'd', '1', '3', 0,
8467  /* 501 */ 'q', '1', '3', 0,
8468  /* 505 */ 's', '1', '3', 0,
8469  /* 509 */ 'D', '1', '7', '_', 'D', '1', '9', '_', 'D', '2', '1', '_', 'D', '2', '3', 0,
8470  /* 525 */ 'D', '2', '1', '_', 'D', '2', '2', '_', 'D', '2', '3', 0,
8471  /* 537 */ 'd', '2', '3', 0,
8472  /* 541 */ 's', '2', '3', 0,
8473  /* 545 */ 'D', '1', '_', 'D', '3', 0,
8474  /* 551 */ 'D', '1', '_', 'D', '2', '_', 'D', '3', 0,
8475  /* 560 */ 'Q', '0', '_', 'Q', '1', '_', 'Q', '2', '_', 'Q', '3', 0,
8476  /* 572 */ 'R', '2', '_', 'R', '3', 0,
8477  /* 578 */ 'd', '3', 0,
8478  /* 581 */ 'q', '3', 0,
8479  /* 584 */ 'r', '3', 0,
8480  /* 587 */ 's', '3', 0,
8481  /* 590 */ 'D', '8', '_', 'D', '1', '0', '_', 'D', '1', '2', '_', 'D', '1', '4', 0,
8482  /* 605 */ 'D', '1', '1', '_', 'D', '1', '2', '_', 'D', '1', '3', '_', 'D', '1', '4', 0,
8483  /* 621 */ 'Q', '1', '1', '_', 'Q', '1', '2', '_', 'Q', '1', '3', '_', 'Q', '1', '4', 0,
8484  /* 637 */ 'd', '1', '4', 0,
8485  /* 641 */ 'q', '1', '4', 0,
8486  /* 645 */ 's', '1', '4', 0,
8487  /* 649 */ 'D', '1', '8', '_', 'D', '2', '0', '_', 'D', '2', '2', '_', 'D', '2', '4', 0,
8488  /* 665 */ 'D', '2', '1', '_', 'D', '2', '2', '_', 'D', '2', '3', '_', 'D', '2', '4', 0,
8489  /* 681 */ 'd', '2', '4', 0,
8490  /* 685 */ 's', '2', '4', 0,
8491  /* 689 */ 'D', '0', '_', 'D', '2', '_', 'D', '4', 0,
8492  /* 698 */ 'D', '1', '_', 'D', '2', '_', 'D', '3', '_', 'D', '4', 0,
8493  /* 710 */ 'Q', '1', '_', 'Q', '2', '_', 'Q', '3', '_', 'Q', '4', 0,
8494  /* 722 */ 'd', '4', 0,
8495  /* 725 */ 'q', '4', 0,
8496  /* 728 */ 'r', '4', 0,
8497  /* 731 */ 's', '4', 0,
8498  /* 734 */ 'D', '9', '_', 'D', '1', '1', '_', 'D', '1', '3', '_', 'D', '1', '5', 0,
8499  /* 749 */ 'D', '1', '3', '_', 'D', '1', '4', '_', 'D', '1', '5', 0,
8500  /* 761 */ 'Q', '1', '2', '_', 'Q', '1', '3', '_', 'Q', '1', '4', '_', 'Q', '1', '5', 0,
8501  /* 777 */ 'd', '1', '5', 0,
8502  /* 781 */ 'q', '1', '5', 0,
8503  /* 785 */ 's', '1', '5', 0,
8504  /* 789 */ 'D', '1', '9', '_', 'D', '2', '1', '_', 'D', '2', '3', '_', 'D', '2', '5', 0,
8505  /* 805 */ 'D', '2', '3', '_', 'D', '2', '4', '_', 'D', '2', '5', 0,
8506  /* 817 */ 'd', '2', '5', 0,
8507  /* 821 */ 's', '2', '5', 0,
8508  /* 825 */ 'D', '1', '_', 'D', '3', '_', 'D', '5', 0,
8509  /* 834 */ 'D', '3', '_', 'D', '4', '_', 'D', '5', 0,
8510  /* 843 */ 'Q', '2', '_', 'Q', '3', '_', 'Q', '4', '_', 'Q', '5', 0,
8511  /* 855 */ 'R', '4', '_', 'R', '5', 0,
8512  /* 861 */ 'd', '5', 0,
8513  /* 864 */ 'q', '5', 0,
8514  /* 867 */ 'r', '5', 0,
8515  /* 870 */ 's', '5', 0,
8516  /* 873 */ 'D', '1', '0', '_', 'D', '1', '2', '_', 'D', '1', '4', '_', 'D', '1', '6', 0,
8517  /* 889 */ 'D', '1', '3', '_', 'D', '1', '4', '_', 'D', '1', '5', '_', 'D', '1', '6', 0,
8518  /* 905 */ 'd', '1', '6', 0,
8519  /* 909 */ 's', '1', '6', 0,
8520  /* 913 */ 'D', '2', '0', '_', 'D', '2', '2', '_', 'D', '2', '4', '_', 'D', '2', '6', 0,
8521  /* 929 */ 'D', '2', '3', '_', 'D', '2', '4', '_', 'D', '2', '5', '_', 'D', '2', '6', 0,
8522  /* 945 */ 'd', '2', '6', 0,
8523  /* 949 */ 's', '2', '6', 0,
8524  /* 953 */ 'D', '0', '_', 'D', '2', '_', 'D', '4', '_', 'D', '6', 0,
8525  /* 965 */ 'D', '3', '_', 'D', '4', '_', 'D', '5', '_', 'D', '6', 0,
8526  /* 977 */ 'Q', '3', '_', 'Q', '4', '_', 'Q', '5', '_', 'Q', '6', 0,
8527  /* 989 */ 'd', '6', 0,
8528  /* 992 */ 'q', '6', 0,
8529  /* 995 */ 'r', '6', 0,
8530  /* 998 */ 's', '6', 0,
8531  /* 1001 */ 'D', '1', '1', '_', 'D', '1', '3', '_', 'D', '1', '5', '_', 'D', '1', '7', 0,
8532  /* 1017 */ 'D', '1', '5', '_', 'D', '1', '6', '_', 'D', '1', '7', 0,
8533  /* 1029 */ 'd', '1', '7', 0,
8534  /* 1033 */ 's', '1', '7', 0,
8535  /* 1037 */ 'D', '2', '1', '_', 'D', '2', '3', '_', 'D', '2', '5', '_', 'D', '2', '7', 0,
8536  /* 1053 */ 'D', '2', '5', '_', 'D', '2', '6', '_', 'D', '2', '7', 0,
8537  /* 1065 */ 'd', '2', '7', 0,
8538  /* 1069 */ 's', '2', '7', 0,
8539  /* 1073 */ 'D', '1', '_', 'D', '3', '_', 'D', '5', '_', 'D', '7', 0,
8540  /* 1085 */ 'D', '5', '_', 'D', '6', '_', 'D', '7', 0,
8541  /* 1094 */ 'Q', '4', '_', 'Q', '5', '_', 'Q', '6', '_', 'Q', '7', 0,
8542  /* 1106 */ 'R', '6', '_', 'R', '7', 0,
8543  /* 1112 */ 'd', '7', 0,
8544  /* 1115 */ 'q', '7', 0,
8545  /* 1118 */ 'r', '7', 0,
8546  /* 1121 */ 's', '7', 0,
8547  /* 1124 */ 'D', '1', '2', '_', 'D', '1', '4', '_', 'D', '1', '6', '_', 'D', '1', '8', 0,
8548  /* 1140 */ 'D', '1', '5', '_', 'D', '1', '6', '_', 'D', '1', '7', '_', 'D', '1', '8', 0,
8549  /* 1156 */ 'd', '1', '8', 0,
8550  /* 1160 */ 's', '1', '8', 0,
8551  /* 1164 */ 'D', '2', '2', '_', 'D', '2', '4', '_', 'D', '2', '6', '_', 'D', '2', '8', 0,
8552  /* 1180 */ 'D', '2', '5', '_', 'D', '2', '6', '_', 'D', '2', '7', '_', 'D', '2', '8', 0,
8553  /* 1196 */ 'd', '2', '8', 0,
8554  /* 1200 */ 's', '2', '8', 0,
8555  /* 1204 */ 'D', '2', '_', 'D', '4', '_', 'D', '6', '_', 'D', '8', 0,
8556  /* 1216 */ 'D', '5', '_', 'D', '6', '_', 'D', '7', '_', 'D', '8', 0,
8557  /* 1228 */ 'Q', '5', '_', 'Q', '6', '_', 'Q', '7', '_', 'Q', '8', 0,
8558  /* 1240 */ 'd', '8', 0,
8559  /* 1243 */ 'q', '8', 0,
8560  /* 1246 */ 'r', '8', 0,
8561  /* 1249 */ 's', '8', 0,
8562  /* 1252 */ 'D', '1', '3', '_', 'D', '1', '5', '_', 'D', '1', '7', '_', 'D', '1', '9', 0,
8563  /* 1268 */ 'D', '1', '7', '_', 'D', '1', '8', '_', 'D', '1', '9', 0,
8564  /* 1280 */ 'd', '1', '9', 0,
8565  /* 1284 */ 's', '1', '9', 0,
8566  /* 1288 */ 'D', '2', '3', '_', 'D', '2', '5', '_', 'D', '2', '7', '_', 'D', '2', '9', 0,
8567  /* 1304 */ 'D', '2', '7', '_', 'D', '2', '8', '_', 'D', '2', '9', 0,
8568  /* 1316 */ 'd', '2', '9', 0,
8569  /* 1320 */ 's', '2', '9', 0,
8570  /* 1324 */ 'D', '3', '_', 'D', '5', '_', 'D', '7', '_', 'D', '9', 0,
8571  /* 1336 */ 'D', '7', '_', 'D', '8', '_', 'D', '9', 0,
8572  /* 1345 */ 'Q', '6', '_', 'Q', '7', '_', 'Q', '8', '_', 'Q', '9', 0,
8573  /* 1357 */ 'R', '8', '_', 'R', '9', 0,
8574  /* 1363 */ 'd', '9', 0,
8575  /* 1366 */ 'q', '9', 0,
8576  /* 1369 */ 'r', '9', 0,
8577  /* 1372 */ 's', '9', 0,
8578  /* 1375 */ 'R', '1', '2', '_', 'S', 'P', 0,
8579  /* 1382 */ 'p', 'c', 0,
8580  /* 1385 */ 'f', 'p', 'e', 'x', 'c', 0,
8581  /* 1391 */ 'f', 'p', 's', 'i', 'd', 0,
8582  /* 1397 */ 'i', 't', 's', 't', 'a', 't', 'e', 0,
8583  /* 1405 */ 's', 'p', 0,
8584  /* 1408 */ 'f', 'p', 's', 'c', 'r', 0,
8585  /* 1414 */ 'l', 'r', 0,
8586  /* 1417 */ 'a', 'p', 's', 'r', 0,
8587  /* 1422 */ 'c', 'p', 's', 'r', 0,
8588  /* 1427 */ 's', 'p', 's', 'r', 0,
8589  /* 1432 */ 'f', 'p', 'i', 'n', 's', 't', 0,
8590  /* 1439 */ 'f', 'p', 's', 'c', 'r', '_', 'n', 'z', 'c', 'v', 0,
8591  /* 1450 */ 'a', 'p', 's', 'r', '_', 'n', 'z', 'c', 'v', 0,
8592  };
8593
8594  static const uint32_t RegAsmOffset[] = {
8595    1417, 1450, 1422, 1385, 1432, 1408, 1439, 1391, 1397, 1414, 1382, 1405, 1427, 135,
8596    296, 432, 578, 722, 861, 989, 1112, 1240, 1363, 39, 196, 355, 497, 637,
8597    777, 905, 1029, 1156, 1280, 87, 240, 403, 537, 681, 817, 945, 1065, 1196,
8598    1316, 127, 276, 447, 141, 302, 438, 138, 299, 435, 581, 725, 864, 992,
8599    1115, 1243, 1366, 43, 200, 359, 501, 641, 781, 144, 305, 441, 584, 728,
8600    867, 995, 1118, 1246, 1369, 47, 204, 363, 147, 308, 444, 587, 731, 870,
8601    998, 1121, 1249, 1372, 51, 208, 367, 505, 645, 785, 909, 1033, 1160, 1284,
8602    91, 244, 407, 541, 685, 821, 949, 1069, 1200, 1320, 131, 280, 411, 545,
8603    692, 828, 959, 1079, 1210, 1330, 6, 167, 317, 461, 597, 741, 881, 1009,
8604    1132, 1260, 63, 232, 379, 517, 657, 797, 921, 1045, 1172, 1296, 103, 268,
8605    284, 426, 566, 716, 849, 983, 1100, 1234, 1351, 32, 180, 347, 489, 629,
8606    769, 560, 710, 843, 977, 1094, 1228, 1345, 26, 174, 340, 481, 621, 761,
8607    1375, 290, 572, 855, 1106, 1357, 188, 417, 551, 701, 834, 968, 1085, 1219,
8608    1336, 16, 150, 328, 469, 609, 749, 893, 1017, 1144, 1268, 75, 212, 391,
8609    525, 669, 805, 933, 1053, 1184, 1304, 115, 248, 689, 825, 956, 1076, 1207,
8610    1327, 3, 164, 314, 458, 593, 737, 877, 1005, 1128, 1256, 59, 228, 375,
8611    513, 653, 793, 917, 1041, 1168, 1292, 99, 264, 953, 1073, 1204, 1324, 0,
8612    161, 311, 455, 590, 734, 873, 1001, 1124, 1252, 55, 224, 371, 509, 649,
8613    789, 913, 1037, 1164, 1288, 95, 260, 420, 704, 971, 1222, 19, 332, 613,
8614    897, 1148, 79, 395, 673, 937, 1188, 119, 698, 965, 1216, 13, 325, 605,
8615    889, 1140, 71, 387, 665, 929, 1180, 111,
8616  };
8617
8618  //int i;
8619  //for (i = 0; i < sizeof(RegAsmOffset)/4; i++)
8620  //     printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1);
8621  //printf("*************************\n");
8622  return AsmStrs+RegAsmOffset[RegNo-1];
8623#else
8624  return NULL;
8625#endif
8626}
8627
8628#ifdef PRINT_ALIAS_INSTR
8629#undef PRINT_ALIAS_INSTR
8630
8631static void printCustomAliasOperand(MCInst *MI, unsigned OpIdx,
8632  unsigned PrintMethodIdx, SStream *OS)
8633{
8634  switch (PrintMethodIdx) {
8635  default:
8636    // llvm_unreachable("Unknown PrintMethod kind");
8637    break;
8638  case 0:
8639    printPredicateOperand(MI, OpIdx, OS);
8640    break;
8641  case 1:
8642    printSBitModifierOperand(MI, OpIdx, OS);
8643    break;
8644  case 2:
8645    printFPImmOperand(MI, OpIdx, OS);
8646    break;
8647  case 3:
8648    printRegisterList(MI, OpIdx, OS);
8649    break;
8650  case 4:
8651    printPImmediate(MI, OpIdx, OS);
8652    break;
8653  case 5:
8654    printCImmediate(MI, OpIdx, OS);
8655    break;
8656  case 6:
8657    printImmPlusOneOperand(MI, OpIdx, OS);
8658    break;
8659  case 7:
8660    printAddrMode5Operand(MI, OpIdx, OS, false);
8661    break;
8662  case 8:
8663    printNEONModImmOperand(MI, OpIdx, OS);
8664    break;
8665  case 9:
8666    printT2SOOperand(MI, OpIdx, OS);
8667    break;
8668  case 10:
8669    printAdrLabelOperand<0>(MI, OpIdx, OS, 0);
8670    break;
8671  case 11:
8672    printThumbSRImm(MI, OpIdx, OS);
8673    break;
8674  case 12:
8675    printAddrModeImm12Operand(MI, OpIdx, OS, false);
8676    break;
8677  case 13:
8678    printThumbLdrLabelOperand(MI, OpIdx, OS);
8679    break;
8680  case 14:
8681    printT2AddrModeSoRegOperand(MI, OpIdx, OS);
8682    break;
8683  case 15:
8684    printRotImmOperand(MI, OpIdx, OS);
8685    break;
8686  case 16:
8687    printCPSIMod(MI, OpIdx, OS);
8688    break;
8689  }
8690}
8691
8692static char *printAliasInstr(MCInst *MI, SStream *OS, void *info)
8693{
8694  #define GETREGCLASS_CONTAIN(_class, _reg) MCRegisterClass_contains(MCRegisterInfo_getRegClass(MRI, _class), MCOperand_getReg(MCInst_getOperand(MI, _reg)))
8695  const char *AsmString;
8696  char *tmp, *AsmMnem, *AsmOps, *c;
8697  int OpIdx, PrintMethodIdx;
8698  MCRegisterInfo *MRI = (MCRegisterInfo *)info;
8699  switch (MCInst_getOpcode(MI)) {
8700  default: return NULL;
8701  case ARM_ANDri:
8702    if (MCInst_getNumOperands(MI) == 6 &&
8703        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8704        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
8705        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
8706        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
8707      // (ANDri rGPR:$Rd, rGPR:$Rn, so_imm_not:$imm, pred:$p, cc_out:$s)
8708      AsmString = "bic$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
8709      break;
8710    }
8711    if (MCInst_getNumOperands(MI) == 6 &&
8712        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8713        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
8714        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
8715        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
8716      // (ANDri rGPR:$Rdn, rGPR:$Rdn, so_imm_not:$imm, pred:$p, cc_out:$s)
8717      AsmString = "bic$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x03";
8718      break;
8719    }
8720    return NULL;
8721  case ARM_BICri:
8722    if (MCInst_getNumOperands(MI) == 6 &&
8723        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8724        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
8725        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
8726        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
8727      // (BICri rGPR:$Rd, rGPR:$Rn, so_imm_not:$imm, pred:$p, cc_out:$s)
8728      AsmString = "and$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
8729      break;
8730    }
8731    if (MCInst_getNumOperands(MI) == 6 &&
8732        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8733        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
8734        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
8735        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
8736      // (BICri rGPR:$Rdn, rGPR:$Rdn, so_imm_not:$imm, pred:$p, cc_out:$s)
8737      AsmString = "and$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x03";
8738      break;
8739    }
8740    return NULL;
8741  case ARM_BKPT:
8742    if (MCInst_getNumOperands(MI) == 1 &&
8743        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
8744        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 0) {
8745      // (BKPT 0)
8746      AsmString = "bkpt";
8747      break;
8748    }
8749    return NULL;
8750  case ARM_CMNri:
8751    if (MCInst_getNumOperands(MI) == 4 &&
8752        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8753        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
8754      // (CMNri rGPR:$Rd, so_imm_neg:$imm, pred:$p)
8755      AsmString = "cmp$\xFF\x03\x01} $\x01, $\x02";
8756      break;
8757    }
8758    return NULL;
8759  case ARM_CMPri:
8760    if (MCInst_getNumOperands(MI) == 4 &&
8761        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8762        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
8763      // (CMPri rGPR:$Rd, so_imm_neg:$imm, pred:$p)
8764      AsmString = "cmn$\xFF\x03\x01} $\x01, $\x02";
8765      break;
8766    }
8767    return NULL;
8768  case ARM_DMB:
8769    if (MCInst_getNumOperands(MI) == 1 &&
8770        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
8771        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 15) {
8772      // (DMB 15)
8773      AsmString = "dmb";
8774      break;
8775    }
8776    return NULL;
8777  case ARM_DSB:
8778    if (MCInst_getNumOperands(MI) == 1 &&
8779        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
8780        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 15) {
8781      // (DSB 15)
8782      AsmString = "dsb";
8783      break;
8784    }
8785    return NULL;
8786  case ARM_FCONSTD:
8787    if (MCInst_getNumOperands(MI) == 4 &&
8788        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8789        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0)) {
8790      // (FCONSTD DPR:$Dd, vfp_f64imm:$val, pred:$p)
8791      AsmString = "fconstd$\xFF\x03\x01} $\x01, $\xFF\x02\x03";
8792      break;
8793    }
8794    return NULL;
8795  case ARM_FCONSTS:
8796    if (MCInst_getNumOperands(MI) == 4 &&
8797        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8798        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0)) {
8799      // (FCONSTS SPR:$Sd, vfp_f32imm:$val, pred:$p)
8800      AsmString = "fconsts$\xFF\x03\x01} $\x01, $\xFF\x02\x03";
8801      break;
8802    }
8803    return NULL;
8804  case ARM_FMSTAT:
8805    if (MCInst_getNumOperands(MI) == 2) {
8806      // (FMSTAT pred:$p)
8807      AsmString = "fmstat$\xFF\x01\x01}";
8808      break;
8809    }
8810    return NULL;
8811  case ARM_HINT:
8812    if (MCInst_getNumOperands(MI) == 3 &&
8813        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
8814        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 0) {
8815      // (HINT 0, pred:$p)
8816      AsmString = "nop$\xFF\x02\x01";
8817      break;
8818    }
8819    if (MCInst_getNumOperands(MI) == 3 &&
8820        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
8821        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 1) {
8822      // (HINT 1, pred:$p)
8823      AsmString = "yield$\xFF\x02\x01";
8824      break;
8825    }
8826    if (MCInst_getNumOperands(MI) == 3 &&
8827        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
8828        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 2) {
8829      // (HINT 2, pred:$p)
8830      AsmString = "wfe$\xFF\x02\x01";
8831      break;
8832    }
8833    if (MCInst_getNumOperands(MI) == 3 &&
8834        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
8835        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 3) {
8836      // (HINT 3, pred:$p)
8837      AsmString = "wfi$\xFF\x02\x01";
8838      break;
8839    }
8840    if (MCInst_getNumOperands(MI) == 3 &&
8841        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
8842        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 4) {
8843      // (HINT 4, pred:$p)
8844      AsmString = "sev$\xFF\x02\x01";
8845      break;
8846    }
8847    if (MCInst_getNumOperands(MI) == 3 &&
8848        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
8849        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 5) {
8850      // (HINT 5, pred:$p)
8851      AsmString = "sevl$\xFF\x02\x01";
8852      break;
8853    }
8854    return NULL;
8855  case ARM_ISB:
8856    if (MCInst_getNumOperands(MI) == 1 &&
8857        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
8858        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 15) {
8859      // (ISB 15)
8860      AsmString = "isb";
8861      break;
8862    }
8863    return NULL;
8864  case ARM_LDMIA_UPD:
8865    if (MCInst_getNumOperands(MI) == 4 &&
8866        MCOperand_getReg(MCInst_getOperand(MI, 0)) == ARM_SP) {
8867      // (LDMIA_UPD SP, pred:$p, reglist:$regs)
8868      AsmString = "pop$\xFF\x02\x01} $\xFF\x04\x04";
8869      break;
8870    }
8871    return NULL;
8872  case ARM_MCR:
8873    if (MCInst_getNumOperands(MI) == 8 &&
8874        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
8875        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 2) &&
8876        MCOperand_isImm(MCInst_getOperand(MI, 5)) &&
8877        MCOperand_getImm(MCInst_getOperand(MI, 5)) == 0) {
8878      // (MCR p_imm:$cop, imm0_7:$opc1, GPR:$Rt, c_imm:$CRn, c_imm:$CRm, 0, pred:$p)
8879      AsmString = "mcr$\xFF\x07\x01} $\xFF\x01\x05, $\x02, $\x03, $\xFF\x04\x06, $\xFF\x05\x06";
8880      break;
8881    }
8882    return NULL;
8883  case ARM_MCR2:
8884    if (MCInst_getNumOperands(MI) == 6 &&
8885        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
8886        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 2) &&
8887        MCOperand_isImm(MCInst_getOperand(MI, 5)) &&
8888        MCOperand_getImm(MCInst_getOperand(MI, 5)) == 0) {
8889      // (MCR2 p_imm:$cop, imm0_7:$opc1, GPR:$Rt, c_imm:$CRn, c_imm:$CRm, 0)
8890      AsmString = "mcr2 $\xFF\x01\x05, $\x02, $\x03, $\xFF\x04\x06, $\xFF\x05\x06";
8891      break;
8892    }
8893    return NULL;
8894  case ARM_MLA:
8895    if (MCInst_getNumOperands(MI) == 7 &&
8896        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8897        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
8898        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
8899        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1) &&
8900        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
8901        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 2) &&
8902        MCOperand_isReg(MCInst_getOperand(MI, 3)) &&
8903        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 3)) {
8904      // (MLA GPRnopc:$Rd, GPRnopc:$Rn, GPRnopc:$Rm, GPRnopc:$Ra, pred:$p, cc_out:$s)
8905      AsmString = "mla$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\x03, $\x04";
8906      break;
8907    }
8908    return NULL;
8909  case ARM_MOVi:
8910    if (MCInst_getNumOperands(MI) == 5 &&
8911        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8912        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
8913      // (MOVi rGPR:$Rd, so_imm_not:$imm, pred:$p, cc_out:$s)
8914      AsmString = "mvn$\xFF\x05\x02}$\xFF\x03\x01} $\x01, $\x02";
8915      break;
8916    }
8917    return NULL;
8918  case ARM_MOVi16:
8919    if (MCInst_getNumOperands(MI) == 4 &&
8920        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8921        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
8922      // (MOVi16 GPR:$Rd, imm0_65535_expr:$imm, pred:$p)
8923      AsmString = "mov$\xFF\x03\x01} $\x01, $\x02";
8924      break;
8925    }
8926    return NULL;
8927  case ARM_MRC:
8928    if (MCInst_getNumOperands(MI) == 8 &&
8929        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8930        GETREGCLASS_CONTAIN(ARM_GPRwithAPSRRegClassID, 0) &&
8931        MCOperand_isImm(MCInst_getOperand(MI, 5)) &&
8932        MCOperand_getImm(MCInst_getOperand(MI, 5)) == 0) {
8933      // (MRC GPRwithAPSR:$Rt, p_imm:$cop, imm0_7:$opc1, c_imm:$CRn, c_imm:$CRm, 0, pred:$p)
8934      AsmString = "mrc$\xFF\x07\x01} $\xFF\x02\x05, $\x03, $\x01, $\xFF\x04\x06, $\xFF\x05\x06";
8935      break;
8936    }
8937    return NULL;
8938  case ARM_MRC2:
8939    if (MCInst_getNumOperands(MI) == 6 &&
8940        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8941        GETREGCLASS_CONTAIN(ARM_GPRwithAPSRRegClassID, 0) &&
8942        MCOperand_isImm(MCInst_getOperand(MI, 5)) &&
8943        MCOperand_getImm(MCInst_getOperand(MI, 5)) == 0) {
8944      // (MRC2 GPRwithAPSR:$Rt, p_imm:$cop, imm0_7:$opc1, c_imm:$CRn, c_imm:$CRm, 0)
8945      AsmString = "mrc2 $\xFF\x02\x05, $\x03, $\x01, $\xFF\x04\x06, $\xFF\x05\x06";
8946      break;
8947    }
8948    return NULL;
8949  case ARM_MRS:
8950    if (MCInst_getNumOperands(MI) == 3 &&
8951        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8952        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
8953      // (MRS GPRnopc:$Rd, pred:$p)
8954      AsmString = "mrs$\xFF\x02\x01} $\x01, cpsr";
8955      break;
8956    }
8957    return NULL;
8958  case ARM_MUL:
8959    if (MCInst_getNumOperands(MI) == 6 &&
8960        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8961        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
8962        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
8963        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1) &&
8964        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
8965        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 2)) {
8966      // (MUL GPRnopc:$Rd, GPRnopc:$Rn, GPRnopc:$Rm, pred:$p, cc_out:$s)
8967      AsmString = "mul$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
8968      break;
8969    }
8970    return NULL;
8971  case ARM_MVNi:
8972    if (MCInst_getNumOperands(MI) == 5 &&
8973        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8974        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
8975      // (MVNi rGPR:$Rd, so_imm_not:$imm, pred:$p, cc_out:$s)
8976      AsmString = "mov$\xFF\x05\x02}$\xFF\x03\x01} $\x01, $\x02";
8977      break;
8978    }
8979    return NULL;
8980  case ARM_RSBri:
8981    if (MCInst_getNumOperands(MI) == 6 &&
8982        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8983        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0) &&
8984        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
8985        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
8986        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
8987        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
8988      // (RSBri GPR:$Rd, GPR:$Rm, 0, pred:$p, cc_out:$s)
8989      AsmString = "neg$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02";
8990      break;
8991    }
8992    return NULL;
8993  case ARM_SMLAL:
8994    if (MCInst_getNumOperands(MI) == 7 &&
8995        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
8996        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0) &&
8997        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
8998        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
8999        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9000        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 2) &&
9001        MCOperand_isReg(MCInst_getOperand(MI, 3)) &&
9002        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 3)) {
9003      // (SMLAL GPR:$RdLo, GPR:$RdHi, GPR:$Rn, GPR:$Rm, pred:$p, cc_out:$s)
9004      AsmString = "smlal$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\x03, $\x04";
9005      break;
9006    }
9007    return NULL;
9008  case ARM_SMULL:
9009    if (MCInst_getNumOperands(MI) == 7 &&
9010        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9011        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0) &&
9012        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9013        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9014        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9015        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 2) &&
9016        MCOperand_isReg(MCInst_getOperand(MI, 3)) &&
9017        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 3)) {
9018      // (SMULL GPR:$RdLo, GPR:$RdHi, GPR:$Rn, GPR:$Rm, pred:$p, cc_out:$s)
9019      AsmString = "smull$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\x03, $\x04";
9020      break;
9021    }
9022    return NULL;
9023  case ARM_SRSDA:
9024    if (MCInst_getNumOperands(MI) == 1) {
9025      // (SRSDA imm0_31:$mode)
9026      AsmString = "srsda $\x01";
9027      break;
9028    }
9029    return NULL;
9030  case ARM_SRSDA_UPD:
9031    if (MCInst_getNumOperands(MI) == 1) {
9032      // (SRSDA_UPD imm0_31:$mode)
9033      AsmString = "srsda $\x01!";
9034      break;
9035    }
9036    return NULL;
9037  case ARM_SRSDB:
9038    if (MCInst_getNumOperands(MI) == 1) {
9039      // (SRSDB imm0_31:$mode)
9040      AsmString = "srsdb $\x01";
9041      break;
9042    }
9043    return NULL;
9044  case ARM_SRSDB_UPD:
9045    if (MCInst_getNumOperands(MI) == 1) {
9046      // (SRSDB_UPD imm0_31:$mode)
9047      AsmString = "srsdb $\x01!";
9048      break;
9049    }
9050    return NULL;
9051  case ARM_SRSIA:
9052    if (MCInst_getNumOperands(MI) == 1) {
9053      // (SRSIA imm0_31:$mode)
9054      AsmString = "srsia $\x01";
9055      break;
9056    }
9057    return NULL;
9058  case ARM_SRSIA_UPD:
9059    if (MCInst_getNumOperands(MI) == 1) {
9060      // (SRSIA_UPD imm0_31:$mode)
9061      AsmString = "srsia $\x01!";
9062      break;
9063    }
9064    return NULL;
9065  case ARM_SRSIB:
9066    if (MCInst_getNumOperands(MI) == 1) {
9067      // (SRSIB imm0_31:$mode)
9068      AsmString = "srsib $\x01";
9069      break;
9070    }
9071    return NULL;
9072  case ARM_SRSIB_UPD:
9073    if (MCInst_getNumOperands(MI) == 1) {
9074      // (SRSIB_UPD imm0_31:$mode)
9075      AsmString = "srsib $\x01!";
9076      break;
9077    }
9078    return NULL;
9079  case ARM_SSAT:
9080    if (MCInst_getNumOperands(MI) == 6 &&
9081        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9082        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9083        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9084        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 2) &&
9085        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
9086        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
9087      // (SSAT GPRnopc:$Rd, imm1_32:$sat_imm, GPRnopc:$Rn, 0, pred:$p)
9088      AsmString = "ssat$\xFF\x05\x01} $\x01, $\xFF\x02\x07, $\x03";
9089      break;
9090    }
9091    return NULL;
9092  case ARM_STMDB_UPD:
9093    if (MCInst_getNumOperands(MI) == 4 &&
9094        MCOperand_getReg(MCInst_getOperand(MI, 0)) == ARM_SP) {
9095      // (STMDB_UPD SP, pred:$p, reglist:$regs)
9096      AsmString = "push$\xFF\x02\x01} $\xFF\x04\x04";
9097      break;
9098    }
9099    return NULL;
9100  case ARM_SUBri:
9101    if (MCInst_getNumOperands(MI) == 6 &&
9102        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9103        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0) &&
9104        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9105        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1)) {
9106      // (SUBri GPR:$Rd, GPR:$Rn, so_imm_neg:$imm, pred:$p, cc_out:$s)
9107      AsmString = "add$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
9108      break;
9109    }
9110    if (MCInst_getNumOperands(MI) == 6 &&
9111        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9112        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0) &&
9113        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9114        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
9115      // (SUBri GPR:$Rd, GPR:$Rd, so_imm_neg:$imm, pred:$p, cc_out:$s)
9116      AsmString = "add$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x03";
9117      break;
9118    }
9119    return NULL;
9120  case ARM_SXTAB:
9121    if (MCInst_getNumOperands(MI) == 6 &&
9122        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9123        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9124        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9125        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9126        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9127        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 2) &&
9128        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
9129        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
9130      // (SXTAB GPRnopc:$Rd, GPR:$Rn, GPRnopc:$Rm, 0, pred:$p)
9131      AsmString = "sxtab$\xFF\x05\x01} $\x01, $\x02, $\x03";
9132      break;
9133    }
9134    return NULL;
9135  case ARM_SXTAB16:
9136    if (MCInst_getNumOperands(MI) == 6 &&
9137        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9138        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9139        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9140        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9141        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9142        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 2) &&
9143        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
9144        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
9145      // (SXTAB16 GPRnopc:$Rd, GPR:$Rn, GPRnopc:$Rm, 0, pred:$p)
9146      AsmString = "sxtab16$\xFF\x05\x01} $\x01, $\x02, $\x03";
9147      break;
9148    }
9149    return NULL;
9150  case ARM_SXTAH:
9151    if (MCInst_getNumOperands(MI) == 6 &&
9152        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9153        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9154        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9155        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9156        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9157        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 2) &&
9158        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
9159        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
9160      // (SXTAH GPRnopc:$Rd, GPR:$Rn, GPRnopc:$Rm, 0, pred:$p)
9161      AsmString = "sxtah$\xFF\x05\x01} $\x01, $\x02, $\x03";
9162      break;
9163    }
9164    return NULL;
9165  case ARM_SXTB:
9166    if (MCInst_getNumOperands(MI) == 5 &&
9167        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9168        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9169        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9170        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1) &&
9171        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
9172        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
9173      // (SXTB GPRnopc:$Rd, GPRnopc:$Rm, 0, pred:$p)
9174      AsmString = "sxtb$\xFF\x04\x01} $\x01, $\x02";
9175      break;
9176    }
9177    return NULL;
9178  case ARM_SXTB16:
9179    if (MCInst_getNumOperands(MI) == 5 &&
9180        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9181        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9182        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9183        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1) &&
9184        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
9185        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
9186      // (SXTB16 GPRnopc:$Rd, GPRnopc:$Rm, 0, pred:$p)
9187      AsmString = "sxtb16$\xFF\x04\x01} $\x01, $\x02";
9188      break;
9189    }
9190    return NULL;
9191  case ARM_SXTH:
9192    if (MCInst_getNumOperands(MI) == 5 &&
9193        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9194        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9195        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9196        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1) &&
9197        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
9198        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
9199      // (SXTH GPRnopc:$Rd, GPRnopc:$Rm, 0, pred:$p)
9200      AsmString = "sxth$\xFF\x04\x01} $\x01, $\x02";
9201      break;
9202    }
9203    return NULL;
9204  case ARM_UMLAL:
9205    if (MCInst_getNumOperands(MI) == 7 &&
9206        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9207        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0) &&
9208        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9209        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9210        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9211        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 2) &&
9212        MCOperand_isReg(MCInst_getOperand(MI, 3)) &&
9213        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 3)) {
9214      // (UMLAL GPR:$RdLo, GPR:$RdHi, GPR:$Rn, GPR:$Rm, pred:$p, cc_out:$s)
9215      AsmString = "umlal$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\x03, $\x04";
9216      break;
9217    }
9218    return NULL;
9219  case ARM_UMULL:
9220    if (MCInst_getNumOperands(MI) == 7 &&
9221        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9222        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0) &&
9223        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9224        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9225        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9226        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 2) &&
9227        MCOperand_isReg(MCInst_getOperand(MI, 3)) &&
9228        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 3)) {
9229      // (UMULL GPR:$RdLo, GPR:$RdHi, GPR:$Rn, GPR:$Rm, pred:$p, cc_out:$s)
9230      AsmString = "umull$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\x03, $\x04";
9231      break;
9232    }
9233    return NULL;
9234  case ARM_USAT:
9235    if (MCInst_getNumOperands(MI) == 6 &&
9236        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9237        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9238        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9239        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 2) &&
9240        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
9241        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
9242      // (USAT GPRnopc:$Rd, imm0_31:$sat_imm, GPRnopc:$Rn, 0, pred:$p)
9243      AsmString = "usat$\xFF\x05\x01} $\x01, $\x02, $\x03";
9244      break;
9245    }
9246    return NULL;
9247  case ARM_UXTAB:
9248    if (MCInst_getNumOperands(MI) == 6 &&
9249        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9250        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9251        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9252        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9253        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9254        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 2) &&
9255        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
9256        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
9257      // (UXTAB GPRnopc:$Rd, GPR:$Rn, GPRnopc:$Rm, 0, pred:$p)
9258      AsmString = "uxtab$\xFF\x05\x01} $\x01, $\x02, $\x03";
9259      break;
9260    }
9261    return NULL;
9262  case ARM_UXTAB16:
9263    if (MCInst_getNumOperands(MI) == 6 &&
9264        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9265        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9266        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9267        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9268        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9269        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 2) &&
9270        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
9271        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
9272      // (UXTAB16 GPRnopc:$Rd, GPR:$Rn, GPRnopc:$Rm, 0, pred:$p)
9273      AsmString = "uxtab16$\xFF\x05\x01} $\x01, $\x02, $\x03";
9274      break;
9275    }
9276    return NULL;
9277  case ARM_UXTAH:
9278    if (MCInst_getNumOperands(MI) == 6 &&
9279        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9280        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9281        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9282        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9283        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9284        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 2) &&
9285        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
9286        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
9287      // (UXTAH GPRnopc:$Rd, GPR:$Rn, GPRnopc:$Rm, 0, pred:$p)
9288      AsmString = "uxtah$\xFF\x05\x01} $\x01, $\x02, $\x03";
9289      break;
9290    }
9291    return NULL;
9292  case ARM_UXTB:
9293    if (MCInst_getNumOperands(MI) == 5 &&
9294        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9295        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9296        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9297        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1) &&
9298        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
9299        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
9300      // (UXTB GPRnopc:$Rd, GPRnopc:$Rm, 0, pred:$p)
9301      AsmString = "uxtb$\xFF\x04\x01} $\x01, $\x02";
9302      break;
9303    }
9304    return NULL;
9305  case ARM_UXTB16:
9306    if (MCInst_getNumOperands(MI) == 5 &&
9307        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9308        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9309        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9310        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1) &&
9311        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
9312        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
9313      // (UXTB16 GPRnopc:$Rd, GPRnopc:$Rm, 0, pred:$p)
9314      AsmString = "uxtb16$\xFF\x04\x01} $\x01, $\x02";
9315      break;
9316    }
9317    return NULL;
9318  case ARM_UXTH:
9319    if (MCInst_getNumOperands(MI) == 5 &&
9320        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9321        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
9322        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9323        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1) &&
9324        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
9325        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
9326      // (UXTH GPRnopc:$Rd, GPRnopc:$Rm, 0, pred:$p)
9327      AsmString = "uxth$\xFF\x04\x01} $\x01, $\x02";
9328      break;
9329    }
9330    return NULL;
9331  case ARM_VACGEd:
9332    if (MCInst_getNumOperands(MI) == 5 &&
9333        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9334        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9335        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9336        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9337        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9338        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9339      // (VACGEd DPR:$Vd, DPR:$Vm, DPR:$Vn, pred:$p)
9340      AsmString = "vacle$\xFF\x04\x01}.f32 $\x01, $\x03, $\x02";
9341      break;
9342    }
9343    if (MCInst_getNumOperands(MI) == 5 &&
9344        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9345        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9346        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9347        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9348        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9349        MCOperand_getReg(MCInst_getOperand(MI, 2)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
9350      // (VACGEd DPR:$Vd, DPR:$Vm, DPR:$Vd, pred:$p)
9351      AsmString = "vacle$\xFF\x04\x01}.f32 $\x01, $\x02";
9352      break;
9353    }
9354    return NULL;
9355  case ARM_VACGEq:
9356    if (MCInst_getNumOperands(MI) == 5 &&
9357        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9358        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9359        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9360        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9361        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9362        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9363      // (VACGEq QPR:$Vd, QPR:$Vm, QPR:$Vn, pred:$p)
9364      AsmString = "vacle$\xFF\x04\x01}.f32 $\x01, $\x03, $\x02";
9365      break;
9366    }
9367    if (MCInst_getNumOperands(MI) == 5 &&
9368        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9369        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9370        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9371        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9372        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9373        MCOperand_getReg(MCInst_getOperand(MI, 2)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
9374      // (VACGEq QPR:$Vd, QPR:$Vm, QPR:$Vd, pred:$p)
9375      AsmString = "vacle$\xFF\x04\x01}.f32 $\x01, $\x02";
9376      break;
9377    }
9378    return NULL;
9379  case ARM_VACGTd:
9380    if (MCInst_getNumOperands(MI) == 5 &&
9381        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9382        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9383        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9384        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9385        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9386        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9387      // (VACGTd DPR:$Vd, DPR:$Vm, DPR:$Vn, pred:$p)
9388      AsmString = "vaclt$\xFF\x04\x01}.f32 $\x01, $\x03, $\x02";
9389      break;
9390    }
9391    if (MCInst_getNumOperands(MI) == 5 &&
9392        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9393        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9394        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9395        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9396        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9397        MCOperand_getReg(MCInst_getOperand(MI, 2)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
9398      // (VACGTd DPR:$Vd, DPR:$Vm, DPR:$Vd, pred:$p)
9399      AsmString = "vaclt$\xFF\x04\x01}.f32 $\x01, $\x02";
9400      break;
9401    }
9402    return NULL;
9403  case ARM_VACGTq:
9404    if (MCInst_getNumOperands(MI) == 5 &&
9405        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9406        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9407        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9408        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9409        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9410        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9411      // (VACGTq QPR:$Vd, QPR:$Vm, QPR:$Vn, pred:$p)
9412      AsmString = "vaclt$\xFF\x04\x01}.f32 $\x01, $\x03, $\x02";
9413      break;
9414    }
9415    if (MCInst_getNumOperands(MI) == 5 &&
9416        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9417        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9418        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9419        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9420        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9421        MCOperand_getReg(MCInst_getOperand(MI, 2)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
9422      // (VACGTq QPR:$Vd, QPR:$Vm, QPR:$Vd, pred:$p)
9423      AsmString = "vaclt$\xFF\x04\x01}.f32 $\x01, $\x02";
9424      break;
9425    }
9426    return NULL;
9427  case ARM_VADDD:
9428    if (MCInst_getNumOperands(MI) == 5 &&
9429        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9430        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9431        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9432        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9433        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9434        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9435      // (VADDD DPR:$Dd, DPR:$Dn, DPR:$Dm, pred:$p)
9436      AsmString = "faddd$\xFF\x04\x01} $\x01, $\x02, $\x03";
9437      break;
9438    }
9439    return NULL;
9440  case ARM_VADDS:
9441    if (MCInst_getNumOperands(MI) == 5 &&
9442        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9443        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
9444        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9445        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1) &&
9446        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9447        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 2)) {
9448      // (VADDS SPR:$Sd, SPR:$Sn, SPR:$Sm, pred:$p)
9449      AsmString = "fadds$\xFF\x04\x01} $\x01, $\x02, $\x03";
9450      break;
9451    }
9452    return NULL;
9453  case ARM_VCGEfd:
9454    if (MCInst_getNumOperands(MI) == 5 &&
9455        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9456        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9457        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9458        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9459        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9460        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9461      // (VCGEfd DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9462      AsmString = "vcle$\xFF\x04\x01}.f32 $\x01, $\x03, $\x02";
9463      break;
9464    }
9465    return NULL;
9466  case ARM_VCGEfq:
9467    if (MCInst_getNumOperands(MI) == 5 &&
9468        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9469        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9470        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9471        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9472        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9473        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9474      // (VCGEfq QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9475      AsmString = "vcle$\xFF\x04\x01}.f32 $\x01, $\x03, $\x02";
9476      break;
9477    }
9478    return NULL;
9479  case ARM_VCGEsv16i8:
9480    if (MCInst_getNumOperands(MI) == 5 &&
9481        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9482        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9483        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9484        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9485        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9486        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9487      // (VCGEsv16i8 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9488      AsmString = "vcle$\xFF\x04\x01}.s8 $\x01, $\x03, $\x02";
9489      break;
9490    }
9491    return NULL;
9492  case ARM_VCGEsv2i32:
9493    if (MCInst_getNumOperands(MI) == 5 &&
9494        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9495        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9496        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9497        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9498        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9499        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9500      // (VCGEsv2i32 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9501      AsmString = "vcle$\xFF\x04\x01}.s32 $\x01, $\x03, $\x02";
9502      break;
9503    }
9504    return NULL;
9505  case ARM_VCGEsv4i16:
9506    if (MCInst_getNumOperands(MI) == 5 &&
9507        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9508        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9509        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9510        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9511        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9512        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9513      // (VCGEsv4i16 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9514      AsmString = "vcle$\xFF\x04\x01}.s16 $\x01, $\x03, $\x02";
9515      break;
9516    }
9517    return NULL;
9518  case ARM_VCGEsv4i32:
9519    if (MCInst_getNumOperands(MI) == 5 &&
9520        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9521        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9522        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9523        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9524        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9525        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9526      // (VCGEsv4i32 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9527      AsmString = "vcle$\xFF\x04\x01}.s32 $\x01, $\x03, $\x02";
9528      break;
9529    }
9530    return NULL;
9531  case ARM_VCGEsv8i16:
9532    if (MCInst_getNumOperands(MI) == 5 &&
9533        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9534        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9535        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9536        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9537        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9538        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9539      // (VCGEsv8i16 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9540      AsmString = "vcle$\xFF\x04\x01}.s16 $\x01, $\x03, $\x02";
9541      break;
9542    }
9543    return NULL;
9544  case ARM_VCGEsv8i8:
9545    if (MCInst_getNumOperands(MI) == 5 &&
9546        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9547        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9548        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9549        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9550        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9551        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9552      // (VCGEsv8i8 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9553      AsmString = "vcle$\xFF\x04\x01}.s8 $\x01, $\x03, $\x02";
9554      break;
9555    }
9556    return NULL;
9557  case ARM_VCGEuv16i8:
9558    if (MCInst_getNumOperands(MI) == 5 &&
9559        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9560        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9561        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9562        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9563        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9564        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9565      // (VCGEuv16i8 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9566      AsmString = "vcle$\xFF\x04\x01}.u8 $\x01, $\x03, $\x02";
9567      break;
9568    }
9569    return NULL;
9570  case ARM_VCGEuv2i32:
9571    if (MCInst_getNumOperands(MI) == 5 &&
9572        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9573        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9574        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9575        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9576        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9577        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9578      // (VCGEuv2i32 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9579      AsmString = "vcle$\xFF\x04\x01}.u32 $\x01, $\x03, $\x02";
9580      break;
9581    }
9582    return NULL;
9583  case ARM_VCGEuv4i16:
9584    if (MCInst_getNumOperands(MI) == 5 &&
9585        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9586        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9587        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9588        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9589        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9590        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9591      // (VCGEuv4i16 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9592      AsmString = "vcle$\xFF\x04\x01}.u16 $\x01, $\x03, $\x02";
9593      break;
9594    }
9595    return NULL;
9596  case ARM_VCGEuv4i32:
9597    if (MCInst_getNumOperands(MI) == 5 &&
9598        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9599        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9600        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9601        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9602        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9603        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9604      // (VCGEuv4i32 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9605      AsmString = "vcle$\xFF\x04\x01}.u32 $\x01, $\x03, $\x02";
9606      break;
9607    }
9608    return NULL;
9609  case ARM_VCGEuv8i16:
9610    if (MCInst_getNumOperands(MI) == 5 &&
9611        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9612        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9613        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9614        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9615        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9616        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9617      // (VCGEuv8i16 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9618      AsmString = "vcle$\xFF\x04\x01}.u16 $\x01, $\x03, $\x02";
9619      break;
9620    }
9621    return NULL;
9622  case ARM_VCGEuv8i8:
9623    if (MCInst_getNumOperands(MI) == 5 &&
9624        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9625        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9626        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9627        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9628        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9629        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9630      // (VCGEuv8i8 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9631      AsmString = "vcle$\xFF\x04\x01}.u8 $\x01, $\x03, $\x02";
9632      break;
9633    }
9634    return NULL;
9635  case ARM_VCGTfd:
9636    if (MCInst_getNumOperands(MI) == 5 &&
9637        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9638        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9639        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9640        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9641        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9642        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9643      // (VCGTfd DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9644      AsmString = "vclt$\xFF\x04\x01}.f32 $\x01, $\x03, $\x02";
9645      break;
9646    }
9647    return NULL;
9648  case ARM_VCGTfq:
9649    if (MCInst_getNumOperands(MI) == 5 &&
9650        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9651        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9652        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9653        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9654        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9655        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9656      // (VCGTfq QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9657      AsmString = "vclt$\xFF\x04\x01}.f32 $\x01, $\x03, $\x02";
9658      break;
9659    }
9660    return NULL;
9661  case ARM_VCGTsv16i8:
9662    if (MCInst_getNumOperands(MI) == 5 &&
9663        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9664        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9665        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9666        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9667        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9668        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9669      // (VCGTsv16i8 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9670      AsmString = "vclt$\xFF\x04\x01}.s8 $\x01, $\x03, $\x02";
9671      break;
9672    }
9673    return NULL;
9674  case ARM_VCGTsv2i32:
9675    if (MCInst_getNumOperands(MI) == 5 &&
9676        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9677        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9678        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9679        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9680        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9681        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9682      // (VCGTsv2i32 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9683      AsmString = "vclt$\xFF\x04\x01}.s32 $\x01, $\x03, $\x02";
9684      break;
9685    }
9686    return NULL;
9687  case ARM_VCGTsv4i16:
9688    if (MCInst_getNumOperands(MI) == 5 &&
9689        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9690        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9691        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9692        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9693        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9694        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9695      // (VCGTsv4i16 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9696      AsmString = "vclt$\xFF\x04\x01}.s16 $\x01, $\x03, $\x02";
9697      break;
9698    }
9699    return NULL;
9700  case ARM_VCGTsv4i32:
9701    if (MCInst_getNumOperands(MI) == 5 &&
9702        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9703        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9704        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9705        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9706        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9707        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9708      // (VCGTsv4i32 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9709      AsmString = "vclt$\xFF\x04\x01}.s32 $\x01, $\x03, $\x02";
9710      break;
9711    }
9712    return NULL;
9713  case ARM_VCGTsv8i16:
9714    if (MCInst_getNumOperands(MI) == 5 &&
9715        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9716        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9717        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9718        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9719        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9720        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9721      // (VCGTsv8i16 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9722      AsmString = "vclt$\xFF\x04\x01}.s16 $\x01, $\x03, $\x02";
9723      break;
9724    }
9725    return NULL;
9726  case ARM_VCGTsv8i8:
9727    if (MCInst_getNumOperands(MI) == 5 &&
9728        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9729        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9730        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9731        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9732        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9733        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9734      // (VCGTsv8i8 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9735      AsmString = "vclt$\xFF\x04\x01}.s8 $\x01, $\x03, $\x02";
9736      break;
9737    }
9738    return NULL;
9739  case ARM_VCGTuv16i8:
9740    if (MCInst_getNumOperands(MI) == 5 &&
9741        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9742        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9743        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9744        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9745        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9746        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9747      // (VCGTuv16i8 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9748      AsmString = "vclt$\xFF\x04\x01}.u8 $\x01, $\x03, $\x02";
9749      break;
9750    }
9751    return NULL;
9752  case ARM_VCGTuv2i32:
9753    if (MCInst_getNumOperands(MI) == 5 &&
9754        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9755        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9756        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9757        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9758        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9759        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9760      // (VCGTuv2i32 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9761      AsmString = "vclt$\xFF\x04\x01}.u32 $\x01, $\x03, $\x02";
9762      break;
9763    }
9764    return NULL;
9765  case ARM_VCGTuv4i16:
9766    if (MCInst_getNumOperands(MI) == 5 &&
9767        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9768        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9769        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9770        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9771        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9772        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9773      // (VCGTuv4i16 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9774      AsmString = "vclt$\xFF\x04\x01}.u16 $\x01, $\x03, $\x02";
9775      break;
9776    }
9777    return NULL;
9778  case ARM_VCGTuv4i32:
9779    if (MCInst_getNumOperands(MI) == 5 &&
9780        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9781        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9782        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9783        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9784        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9785        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9786      // (VCGTuv4i32 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9787      AsmString = "vclt$\xFF\x04\x01}.u32 $\x01, $\x03, $\x02";
9788      break;
9789    }
9790    return NULL;
9791  case ARM_VCGTuv8i16:
9792    if (MCInst_getNumOperands(MI) == 5 &&
9793        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9794        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9795        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9796        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1) &&
9797        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9798        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 2)) {
9799      // (VCGTuv8i16 QPR:$Qd, QPR:$Qm, QPR:$Qn, pred:$p)
9800      AsmString = "vclt$\xFF\x04\x01}.u16 $\x01, $\x03, $\x02";
9801      break;
9802    }
9803    return NULL;
9804  case ARM_VCGTuv8i8:
9805    if (MCInst_getNumOperands(MI) == 5 &&
9806        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9807        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9808        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9809        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
9810        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9811        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9812      // (VCGTuv8i8 DPR:$Dd, DPR:$Dm, DPR:$Dn, pred:$p)
9813      AsmString = "vclt$\xFF\x04\x01}.u8 $\x01, $\x03, $\x02";
9814      break;
9815    }
9816    return NULL;
9817  case ARM_VCMPZD:
9818    if (MCInst_getNumOperands(MI) == 3 &&
9819        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9820        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0)) {
9821      // (VCMPZD DPR:$val, pred:$p)
9822      AsmString = "fcmpzd$\xFF\x02\x01} $\x01";
9823      break;
9824    }
9825    return NULL;
9826  case ARM_VCMPZS:
9827    if (MCInst_getNumOperands(MI) == 3 &&
9828        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9829        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0)) {
9830      // (VCMPZS SPR:$val, pred:$p)
9831      AsmString = "fcmpzs$\xFF\x02\x01} $\x01";
9832      break;
9833    }
9834    return NULL;
9835  case ARM_VLDRD:
9836    if (MCInst_getNumOperands(MI) == 5 &&
9837        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9838        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0)) {
9839      // (VLDRD DPR:$Dd, addrmode5:$addr, pred:$p)
9840      AsmString = "vldr$\xFF\x04\x01}.64 $\x01, $\xFF\x02\x08";
9841      break;
9842    }
9843    return NULL;
9844  case ARM_VLDRS:
9845    if (MCInst_getNumOperands(MI) == 5 &&
9846        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9847        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0)) {
9848      // (VLDRS SPR:$Sd, addrmode5:$addr, pred:$p)
9849      AsmString = "vldr$\xFF\x04\x01}.32 $\x01, $\xFF\x02\x08";
9850      break;
9851    }
9852    return NULL;
9853  case ARM_VMOVDRR:
9854    if (MCInst_getNumOperands(MI) == 5 &&
9855        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9856        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9857        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9858        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9859        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9860        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 2)) {
9861      // (VMOVDRR DPR:$Dn, GPR:$Rt, GPR:$Rt2, pred:$p)
9862      AsmString = "vmov$\xFF\x04\x01}.f64 $\x01, $\x02, $\x03";
9863      break;
9864    }
9865    return NULL;
9866  case ARM_VMOVRRD:
9867    if (MCInst_getNumOperands(MI) == 5 &&
9868        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9869        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0) &&
9870        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9871        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
9872        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
9873        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
9874      // (VMOVRRD GPR:$Rt, GPR:$Rt2, DPR:$Dn, pred:$p)
9875      AsmString = "vmov$\xFF\x04\x01}.f64 $\x01, $\x02, $\x03";
9876      break;
9877    }
9878    return NULL;
9879  case ARM_VMOVS:
9880    if (MCInst_getNumOperands(MI) == 4 &&
9881        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9882        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
9883        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9884        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1)) {
9885      // (VMOVS SPR:$Sd, SPR:$Sm, pred:$p)
9886      AsmString = "vmov$\xFF\x03\x01} $\x01, $\x02";
9887      break;
9888    }
9889    return NULL;
9890  case ARM_VMVNv2i32:
9891    if (MCInst_getNumOperands(MI) == 4 &&
9892        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9893        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0)) {
9894      // (VMVNv2i32 DPR:$Vd, nImmVMOVI32Neg:$imm, pred:$p)
9895      AsmString = "vmov$\xFF\x03\x01}.i32 $\x01, $\xFF\x02\x09";
9896      break;
9897    }
9898    return NULL;
9899  case ARM_VMVNv4i32:
9900    if (MCInst_getNumOperands(MI) == 4 &&
9901        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9902        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0)) {
9903      // (VMVNv4i32 QPR:$Vd, nImmVMOVI32Neg:$imm, pred:$p)
9904      AsmString = "vmov$\xFF\x03\x01}.i32 $\x01, $\xFF\x02\x09";
9905      break;
9906    }
9907    return NULL;
9908  case ARM_VRINTAD:
9909    if (MCInst_getNumOperands(MI) == 2 &&
9910        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9911        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9912        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9913        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
9914      // (VRINTAD DPR:$Dd, DPR:$Dm)
9915      AsmString = "vrinta.f64.f64	$\x01, $\x02";
9916      break;
9917    }
9918    return NULL;
9919  case ARM_VRINTAND:
9920    if (MCInst_getNumOperands(MI) == 2 &&
9921        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9922        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9923        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9924        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
9925      // (VRINTAND DPR:$Dd, DPR:$Dm)
9926      AsmString = "vrinta.f32.f32	$\x01, $\x02";
9927      break;
9928    }
9929    return NULL;
9930  case ARM_VRINTANQ:
9931    if (MCInst_getNumOperands(MI) == 2 &&
9932        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9933        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9934        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9935        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1)) {
9936      // (VRINTANQ QPR:$Qd, QPR:$Qm)
9937      AsmString = "vrinta.f32.f32	$\x01, $\x02";
9938      break;
9939    }
9940    return NULL;
9941  case ARM_VRINTAS:
9942    if (MCInst_getNumOperands(MI) == 2 &&
9943        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9944        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
9945        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9946        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1)) {
9947      // (VRINTAS SPR:$Sd, SPR:$Sm)
9948      AsmString = "vrinta.f32.f32	$\x01, $\x02";
9949      break;
9950    }
9951    return NULL;
9952  case ARM_VRINTMD:
9953    if (MCInst_getNumOperands(MI) == 2 &&
9954        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9955        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9956        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9957        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
9958      // (VRINTMD DPR:$Dd, DPR:$Dm)
9959      AsmString = "vrintm.f64.f64	$\x01, $\x02";
9960      break;
9961    }
9962    return NULL;
9963  case ARM_VRINTMND:
9964    if (MCInst_getNumOperands(MI) == 2 &&
9965        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9966        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
9967        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9968        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
9969      // (VRINTMND DPR:$Dd, DPR:$Dm)
9970      AsmString = "vrintm.f32.f32	$\x01, $\x02";
9971      break;
9972    }
9973    return NULL;
9974  case ARM_VRINTMNQ:
9975    if (MCInst_getNumOperands(MI) == 2 &&
9976        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9977        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
9978        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9979        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1)) {
9980      // (VRINTMNQ QPR:$Qd, QPR:$Qm)
9981      AsmString = "vrintm.f32.f32	$\x01, $\x02";
9982      break;
9983    }
9984    return NULL;
9985  case ARM_VRINTMS:
9986    if (MCInst_getNumOperands(MI) == 2 &&
9987        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9988        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
9989        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
9990        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1)) {
9991      // (VRINTMS SPR:$Sd, SPR:$Sm)
9992      AsmString = "vrintm.f32.f32	$\x01, $\x02";
9993      break;
9994    }
9995    return NULL;
9996  case ARM_VRINTND:
9997    if (MCInst_getNumOperands(MI) == 2 &&
9998        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
9999        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10000        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10001        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
10002      // (VRINTND DPR:$Dd, DPR:$Dm)
10003      AsmString = "vrintn.f64.f64	$\x01, $\x02";
10004      break;
10005    }
10006    return NULL;
10007  case ARM_VRINTNND:
10008    if (MCInst_getNumOperands(MI) == 2 &&
10009        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10010        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10011        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10012        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
10013      // (VRINTNND DPR:$Dd, DPR:$Dm)
10014      AsmString = "vrintn.f32.f32	$\x01, $\x02";
10015      break;
10016    }
10017    return NULL;
10018  case ARM_VRINTNNQ:
10019    if (MCInst_getNumOperands(MI) == 2 &&
10020        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10021        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
10022        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10023        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1)) {
10024      // (VRINTNNQ QPR:$Qd, QPR:$Qm)
10025      AsmString = "vrintn.f32.f32	$\x01, $\x02";
10026      break;
10027    }
10028    return NULL;
10029  case ARM_VRINTNS:
10030    if (MCInst_getNumOperands(MI) == 2 &&
10031        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10032        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
10033        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10034        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1)) {
10035      // (VRINTNS SPR:$Sd, SPR:$Sm)
10036      AsmString = "vrintn.f32.f32	$\x01, $\x02";
10037      break;
10038    }
10039    return NULL;
10040  case ARM_VRINTPD:
10041    if (MCInst_getNumOperands(MI) == 2 &&
10042        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10043        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10044        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10045        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
10046      // (VRINTPD DPR:$Dd, DPR:$Dm)
10047      AsmString = "vrintp.f64.f64	$\x01, $\x02";
10048      break;
10049    }
10050    return NULL;
10051  case ARM_VRINTPND:
10052    if (MCInst_getNumOperands(MI) == 2 &&
10053        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10054        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10055        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10056        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
10057      // (VRINTPND DPR:$Dd, DPR:$Dm)
10058      AsmString = "vrintp.f32.f32	$\x01, $\x02";
10059      break;
10060    }
10061    return NULL;
10062  case ARM_VRINTPNQ:
10063    if (MCInst_getNumOperands(MI) == 2 &&
10064        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10065        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
10066        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10067        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1)) {
10068      // (VRINTPNQ QPR:$Qd, QPR:$Qm)
10069      AsmString = "vrintp.f32.f32	$\x01, $\x02";
10070      break;
10071    }
10072    return NULL;
10073  case ARM_VRINTPS:
10074    if (MCInst_getNumOperands(MI) == 2 &&
10075        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10076        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
10077        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10078        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1)) {
10079      // (VRINTPS SPR:$Sd, SPR:$Sm)
10080      AsmString = "vrintp.f32.f32	$\x01, $\x02";
10081      break;
10082    }
10083    return NULL;
10084  case ARM_VRINTRD:
10085    if (MCInst_getNumOperands(MI) == 4 &&
10086        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10087        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10088        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10089        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
10090      // (VRINTRD DPR:$Dd, DPR:$Dm, pred:$p)
10091      AsmString = "vrintr$\xFF\x03\x01.f64.f64	$\x01, $\x02";
10092      break;
10093    }
10094    return NULL;
10095  case ARM_VRINTRS:
10096    if (MCInst_getNumOperands(MI) == 4 &&
10097        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10098        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
10099        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10100        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1)) {
10101      // (VRINTRS SPR:$Sd, SPR:$Sm, pred:$p)
10102      AsmString = "vrintr$\xFF\x03\x01.f32.f32	$\x01, $\x02";
10103      break;
10104    }
10105    return NULL;
10106  case ARM_VRINTXD:
10107    if (MCInst_getNumOperands(MI) == 4 &&
10108        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10109        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10110        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10111        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
10112      // (VRINTXD DPR:$Dd, DPR:$Dm, pred:$p)
10113      AsmString = "vrintx$\xFF\x03\x01.f64.f64	$\x01, $\x02";
10114      break;
10115    }
10116    return NULL;
10117  case ARM_VRINTXND:
10118    if (MCInst_getNumOperands(MI) == 2 &&
10119        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10120        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10121        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10122        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
10123      // (VRINTXND DPR:$Dd, DPR:$Dm)
10124      AsmString = "vrintx.f32.f32	$\x01, $\x02";
10125      break;
10126    }
10127    return NULL;
10128  case ARM_VRINTXNQ:
10129    if (MCInst_getNumOperands(MI) == 2 &&
10130        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10131        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
10132        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10133        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1)) {
10134      // (VRINTXNQ QPR:$Qd, QPR:$Qm)
10135      AsmString = "vrintx.f32.f32	$\x01, $\x02";
10136      break;
10137    }
10138    return NULL;
10139  case ARM_VRINTXS:
10140    if (MCInst_getNumOperands(MI) == 4 &&
10141        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10142        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
10143        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10144        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1)) {
10145      // (VRINTXS SPR:$Sd, SPR:$Sm, pred:$p)
10146      AsmString = "vrintx$\xFF\x03\x01.f32.f32	$\x01, $\x02";
10147      break;
10148    }
10149    return NULL;
10150  case ARM_VRINTZD:
10151    if (MCInst_getNumOperands(MI) == 4 &&
10152        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10153        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10154        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10155        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
10156      // (VRINTZD DPR:$Dd, DPR:$Dm, pred:$p)
10157      AsmString = "vrintz$\xFF\x03\x01.f64.f64	$\x01, $\x02";
10158      break;
10159    }
10160    return NULL;
10161  case ARM_VRINTZND:
10162    if (MCInst_getNumOperands(MI) == 2 &&
10163        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10164        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10165        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10166        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
10167      // (VRINTZND DPR:$Dd, DPR:$Dm)
10168      AsmString = "vrintz.f32.f32	$\x01, $\x02";
10169      break;
10170    }
10171    return NULL;
10172  case ARM_VRINTZNQ:
10173    if (MCInst_getNumOperands(MI) == 2 &&
10174        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10175        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 0) &&
10176        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10177        GETREGCLASS_CONTAIN(ARM_QPRRegClassID, 1)) {
10178      // (VRINTZNQ QPR:$Qd, QPR:$Qm)
10179      AsmString = "vrintz.f32.f32	$\x01, $\x02";
10180      break;
10181    }
10182    return NULL;
10183  case ARM_VRINTZS:
10184    if (MCInst_getNumOperands(MI) == 4 &&
10185        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10186        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
10187        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10188        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1)) {
10189      // (VRINTZS SPR:$Sd, SPR:$Sm, pred:$p)
10190      AsmString = "vrintz$\xFF\x03\x01.f32.f32	$\x01, $\x02";
10191      break;
10192    }
10193    return NULL;
10194  case ARM_VSETLNi32:
10195    if (MCInst_getNumOperands(MI) == 5 &&
10196        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10197        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10198        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10199        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
10200        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
10201        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
10202      // (VSETLNi32 DPR:$Dd, GPR:$Rn, 1, pred:$p)
10203      AsmString = "fmdhr$\xFF\x04\x01} $\x01, $\x02";
10204      break;
10205    }
10206    if (MCInst_getNumOperands(MI) == 5 &&
10207        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10208        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10209        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10210        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1) &&
10211        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
10212        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
10213      // (VSETLNi32 DPR:$Dd, GPR:$Rn, 0, pred:$p)
10214      AsmString = "fmdlr$\xFF\x04\x01} $\x01, $\x02";
10215      break;
10216    }
10217    return NULL;
10218  case ARM_VSQRTD:
10219    if (MCInst_getNumOperands(MI) == 4 &&
10220        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10221        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10222        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10223        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1)) {
10224      // (VSQRTD DPR:$Dd, DPR:$Dm, pred:$p)
10225      AsmString = "vsqrt$\xFF\x03\x01} $\x01, $\x02";
10226      break;
10227    }
10228    return NULL;
10229  case ARM_VSQRTS:
10230    if (MCInst_getNumOperands(MI) == 4 &&
10231        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10232        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
10233        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10234        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1)) {
10235      // (VSQRTS SPR:$Sd, SPR:$Sm, pred:$p)
10236      AsmString = "vsqrt$\xFF\x03\x01} $\x01, $\x02";
10237      break;
10238    }
10239    return NULL;
10240  case ARM_VSTRD:
10241    if (MCInst_getNumOperands(MI) == 5 &&
10242        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10243        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0)) {
10244      // (VSTRD DPR:$Dd, addrmode5:$addr, pred:$p)
10245      AsmString = "vstr$\xFF\x04\x01}.64 $\x01, $\xFF\x02\x08";
10246      break;
10247    }
10248    return NULL;
10249  case ARM_VSTRS:
10250    if (MCInst_getNumOperands(MI) == 5 &&
10251        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10252        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0)) {
10253      // (VSTRS SPR:$Sd, addrmode5:$addr, pred:$p)
10254      AsmString = "vstr$\xFF\x04\x01}.32 $\x01, $\xFF\x02\x08";
10255      break;
10256    }
10257    return NULL;
10258  case ARM_VSUBD:
10259    if (MCInst_getNumOperands(MI) == 5 &&
10260        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10261        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 0) &&
10262        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10263        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 1) &&
10264        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10265        GETREGCLASS_CONTAIN(ARM_DPRRegClassID, 2)) {
10266      // (VSUBD DPR:$Dd, DPR:$Dn, DPR:$Dm, pred:$p)
10267      AsmString = "fsubd$\xFF\x04\x01} $\x01, $\x02, $\x03";
10268      break;
10269    }
10270    return NULL;
10271  case ARM_VSUBS:
10272    if (MCInst_getNumOperands(MI) == 5 &&
10273        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10274        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 0) &&
10275        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10276        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 1) &&
10277        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10278        GETREGCLASS_CONTAIN(ARM_SPRRegClassID, 2)) {
10279      // (VSUBS SPR:$Sd, SPR:$Sn, SPR:$Sm, pred:$p)
10280      AsmString = "fsubs$\xFF\x04\x01} $\x01, $\x02, $\x03";
10281      break;
10282    }
10283    return NULL;
10284  case ARM_t2ADCrr:
10285    if (MCInst_getNumOperands(MI) == 6 &&
10286        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10287        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10288        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10289        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
10290        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10291        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
10292      // (t2ADCrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
10293      AsmString = "adc$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
10294      break;
10295    }
10296    return NULL;
10297  case ARM_t2ADCrs:
10298    if (MCInst_getNumOperands(MI) == 7 &&
10299        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10300        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10301        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10302        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
10303      // (t2ADCrs rGPR:$Rd, rGPR:$Rn, t2_so_reg:$ShiftedRm, pred:$p, cc_out:$s)
10304      AsmString = "adc$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\xFF\x03\x0A";
10305      break;
10306    }
10307    return NULL;
10308  case ARM_t2ADDri:
10309    if (MCInst_getNumOperands(MI) == 6 &&
10310        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10311        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
10312        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10313        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1)) {
10314      // (t2ADDri GPRnopc:$Rd, GPRnopc:$Rn, t2_so_imm:$imm, pred:$p, cc_out:$s)
10315      AsmString = "add$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
10316      break;
10317    }
10318    if (MCInst_getNumOperands(MI) == 6 &&
10319        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10320        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
10321        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10322        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
10323      // (t2ADDri GPRnopc:$Rdn, GPRnopc:$Rdn, t2_so_imm:$imm, pred:$p, cc_out:$s)
10324      AsmString = "add$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x03";
10325      break;
10326    }
10327    return NULL;
10328  case ARM_t2ADDri12:
10329    if (MCInst_getNumOperands(MI) == 5 &&
10330        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10331        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
10332        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10333        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 1)) {
10334      // (t2ADDri12 GPRnopc:$Rd, GPR:$Rn, imm0_4095:$imm, pred:$p)
10335      AsmString = "add$\xFF\x04\x01} $\x01, $\x02, $\x03";
10336      break;
10337    }
10338    if (MCInst_getNumOperands(MI) == 5 &&
10339        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10340        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
10341        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10342        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
10343      // (t2ADDri12 GPRnopc:$Rdn, GPRnopc:$Rdn, imm0_4095:$imm, pred:$p)
10344      AsmString = "add$\xFF\x04\x01} $\x01, $\x03";
10345      break;
10346    }
10347    return NULL;
10348  case ARM_t2ADDrr:
10349    if (MCInst_getNumOperands(MI) == 6 &&
10350        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10351        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
10352        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10353        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1) &&
10354        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10355        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
10356      // (t2ADDrr GPRnopc:$Rd, GPRnopc:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
10357      AsmString = "add$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
10358      break;
10359    }
10360    if (MCInst_getNumOperands(MI) == 6 &&
10361        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10362        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
10363        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10364        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0)) &&
10365        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10366        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
10367      // (t2ADDrr GPRnopc:$Rdn, GPRnopc:$Rdn, rGPR:$Rm, pred:$p, cc_out:$s)
10368      AsmString = "add$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x03";
10369      break;
10370    }
10371    return NULL;
10372  case ARM_t2ADDrs:
10373    if (MCInst_getNumOperands(MI) == 7 &&
10374        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10375        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
10376        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10377        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1)) {
10378      // (t2ADDrs GPRnopc:$Rd, GPRnopc:$Rn, t2_so_reg:$ShiftedRm, pred:$p, cc_out:$s)
10379      AsmString = "add$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\xFF\x03\x0A";
10380      break;
10381    }
10382    if (MCInst_getNumOperands(MI) == 7 &&
10383        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10384        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
10385        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10386        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
10387      // (t2ADDrs GPRnopc:$Rdn, GPRnopc:$Rdn, t2_so_reg:$ShiftedRm, pred:$p, cc_out:$s)
10388      AsmString = "add$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\xFF\x03\x0A";
10389      break;
10390    }
10391    return NULL;
10392  case ARM_t2ADR:
10393    if (MCInst_getNumOperands(MI) == 4 &&
10394        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10395        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10396      // (t2ADR rGPR:$Rd, t2adrlabel:$addr, pred:$p)
10397      AsmString = "adr$\xFF\x03\x01} $\x01, $\xFF\x02\x0B";
10398      break;
10399    }
10400    return NULL;
10401  case ARM_t2ANDrr:
10402    if (MCInst_getNumOperands(MI) == 6 &&
10403        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10404        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10405        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10406        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
10407        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10408        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
10409      // (t2ANDrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
10410      AsmString = "and$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
10411      break;
10412    }
10413    return NULL;
10414  case ARM_t2ANDrs:
10415    if (MCInst_getNumOperands(MI) == 7 &&
10416        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10417        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10418        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10419        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
10420      // (t2ANDrs rGPR:$Rd, rGPR:$Rn, t2_so_reg:$shift, pred:$p, cc_out:$s)
10421      AsmString = "and$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\xFF\x03\x0A";
10422      break;
10423    }
10424    return NULL;
10425  case ARM_t2ASRri:
10426    if (MCInst_getNumOperands(MI) == 6 &&
10427        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10428        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10429        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10430        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
10431      // (t2ASRri rGPR:$Rd, rGPR:$Rn, imm_sr:$imm, pred:$p, cc_out:$s)
10432      AsmString = "asr$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\xFF\x03\x0C";
10433      break;
10434    }
10435    return NULL;
10436  case ARM_t2ASRrr:
10437    if (MCInst_getNumOperands(MI) == 6 &&
10438        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10439        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10440        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10441        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
10442        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10443        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
10444      // (t2ASRrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
10445      AsmString = "asr$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
10446      break;
10447    }
10448    return NULL;
10449  case ARM_t2BICrr:
10450    if (MCInst_getNumOperands(MI) == 6 &&
10451        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10452        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10453        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10454        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
10455        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10456        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
10457      // (t2BICrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
10458      AsmString = "bic$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
10459      break;
10460    }
10461    return NULL;
10462  case ARM_t2BICrs:
10463    if (MCInst_getNumOperands(MI) == 7 &&
10464        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10465        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10466        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10467        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
10468      // (t2BICrs rGPR:$Rd, rGPR:$Rn, t2_so_reg:$shift, pred:$p, cc_out:$s)
10469      AsmString = "bic$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\xFF\x03\x0A";
10470      break;
10471    }
10472    return NULL;
10473  case ARM_t2CMNri:
10474    if (MCInst_getNumOperands(MI) == 4 &&
10475        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10476        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
10477      // (t2CMNri GPRnopc:$Rn, t2_so_imm:$imm, pred:$p)
10478      AsmString = "cmn$\xFF\x03\x01} $\x01, $\x02";
10479      break;
10480    }
10481    if (MCInst_getNumOperands(MI) == 4 &&
10482        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10483        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10484      // (t2CMNri rGPR:$Rd, t2_so_imm_neg:$imm, pred:$p)
10485      AsmString = "cmp$\xFF\x03\x01} $\x01, $\x02";
10486      break;
10487    }
10488    return NULL;
10489  case ARM_t2CMNzrr:
10490    if (MCInst_getNumOperands(MI) == 4 &&
10491        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10492        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
10493        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10494        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
10495      // (t2CMNzrr GPRnopc:$Rn, rGPR:$Rm, pred:$p)
10496      AsmString = "cmn$\xFF\x03\x01} $\x01, $\x02";
10497      break;
10498    }
10499    return NULL;
10500  case ARM_t2CMNzrs:
10501    if (MCInst_getNumOperands(MI) == 5 &&
10502        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10503        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
10504      // (t2CMNzrs GPRnopc:$Rn, t2_so_reg:$shift, pred:$p)
10505      AsmString = "cmn$\xFF\x04\x01} $\x01, $\xFF\x02\x0A";
10506      break;
10507    }
10508    return NULL;
10509  case ARM_t2CMPri:
10510    if (MCInst_getNumOperands(MI) == 4 &&
10511        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10512        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10513      // (t2CMPri rGPR:$Rd, t2_so_imm_neg:$imm, pred:$p)
10514      AsmString = "cmn$\xFF\x03\x01} $\x01, $\x02";
10515      break;
10516    }
10517    if (MCInst_getNumOperands(MI) == 4 &&
10518        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10519        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
10520      // (t2CMPri GPRnopc:$Rn, t2_so_imm:$imm, pred:$p)
10521      AsmString = "cmp$\xFF\x03\x01} $\x01, $\x02";
10522      break;
10523    }
10524    return NULL;
10525  case ARM_t2CMPrs:
10526    if (MCInst_getNumOperands(MI) == 5 &&
10527        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10528        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
10529      // (t2CMPrs GPRnopc:$Rn, t2_so_reg:$shift, pred:$p)
10530      AsmString = "cmp$\xFF\x04\x01} $\x01, $\xFF\x02\x0A";
10531      break;
10532    }
10533    return NULL;
10534  case ARM_t2DMB:
10535    if (MCInst_getNumOperands(MI) == 3 &&
10536        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
10537        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 15) {
10538      // (t2DMB 15, pred:$p)
10539      AsmString = "dmb$\xFF\x02\x01}";
10540      break;
10541    }
10542    return NULL;
10543  case ARM_t2DSB:
10544    if (MCInst_getNumOperands(MI) == 3 &&
10545        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
10546        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 15) {
10547      // (t2DSB 15, pred:$p)
10548      AsmString = "dsb$\xFF\x02\x01}";
10549      break;
10550    }
10551    return NULL;
10552  case ARM_t2EORri:
10553    if (MCInst_getNumOperands(MI) == 6 &&
10554        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10555        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10556        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10557        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
10558      // (t2EORri rGPR:$Rd, rGPR:$Rn, t2_so_imm:$imm, pred:$p, cc_out:$s)
10559      AsmString = "eor$\xFF\x06\x02}$\xFF\x04\x01}.w $\x01, $\x02, $\x03";
10560      break;
10561    }
10562    return NULL;
10563  case ARM_t2EORrr:
10564    if (MCInst_getNumOperands(MI) == 6 &&
10565        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10566        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10567        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10568        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
10569        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10570        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
10571      // (t2EORrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
10572      AsmString = "eor$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
10573      break;
10574    }
10575    return NULL;
10576  case ARM_t2EORrs:
10577    if (MCInst_getNumOperands(MI) == 7 &&
10578        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10579        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10580        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10581        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
10582      // (t2EORrs rGPR:$Rd, rGPR:$Rn, t2_so_reg:$shift, pred:$p, cc_out:$s)
10583      AsmString = "eor$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\xFF\x03\x0A";
10584      break;
10585    }
10586    return NULL;
10587  case ARM_t2HINT:
10588    if (MCInst_getNumOperands(MI) == 3) {
10589      // (t2HINT imm0_239:$imm, pred:$p)
10590      AsmString = "hint$\xFF\x02\x01 $\x01";
10591      break;
10592    }
10593    if (MCInst_getNumOperands(MI) == 3 &&
10594        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
10595        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 0) {
10596      // (t2HINT 0, pred:$p)
10597      AsmString = "nop$\xFF\x02\x01.w";
10598      break;
10599    }
10600    if (MCInst_getNumOperands(MI) == 3 &&
10601        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
10602        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 1) {
10603      // (t2HINT 1, pred:$p)
10604      AsmString = "yield$\xFF\x02\x01.w";
10605      break;
10606    }
10607    if (MCInst_getNumOperands(MI) == 3 &&
10608        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
10609        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 2) {
10610      // (t2HINT 2, pred:$p)
10611      AsmString = "wfe$\xFF\x02\x01.w";
10612      break;
10613    }
10614    if (MCInst_getNumOperands(MI) == 3 &&
10615        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
10616        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 3) {
10617      // (t2HINT 3, pred:$p)
10618      AsmString = "wfi$\xFF\x02\x01.w";
10619      break;
10620    }
10621    if (MCInst_getNumOperands(MI) == 3 &&
10622        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
10623        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 4) {
10624      // (t2HINT 4, pred:$p)
10625      AsmString = "sev$\xFF\x02\x01.w";
10626      break;
10627    }
10628    if (MCInst_getNumOperands(MI) == 3 &&
10629        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
10630        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 5) {
10631      // (t2HINT 5, pred:$p)
10632      AsmString = "sevl$\xFF\x02\x01.w";
10633      break;
10634    }
10635    return NULL;
10636  case ARM_t2ISB:
10637    if (MCInst_getNumOperands(MI) == 3 &&
10638        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
10639        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 15) {
10640      // (t2ISB 15, pred:$p)
10641      AsmString = "isb$\xFF\x02\x01}";
10642      break;
10643    }
10644    return NULL;
10645  case ARM_t2LDMDB:
10646    if (MCInst_getNumOperands(MI) == 4 &&
10647        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10648        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
10649      // (t2LDMDB GPR:$Rn, pred:$p, reglist:$regs)
10650      AsmString = "ldmdb$\xFF\x02\x01}.w $\x01, $\xFF\x04\x04";
10651      break;
10652    }
10653    return NULL;
10654  case ARM_t2LDMDB_UPD:
10655    if (MCInst_getNumOperands(MI) == 4 &&
10656        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10657        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
10658      // (t2LDMDB_UPD GPR:$Rn, pred:$p, reglist:$regs)
10659      AsmString = "ldmdb$\xFF\x02\x01}.w $\x01!, $\xFF\x04\x04";
10660      break;
10661    }
10662    return NULL;
10663  case ARM_t2LDMIA:
10664    if (MCInst_getNumOperands(MI) == 4 &&
10665        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10666        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
10667      // (t2LDMIA GPR:$Rn, pred:$p, reglist:$regs)
10668      AsmString = "ldm$\xFF\x02\x01} $\x01, $\xFF\x04\x04";
10669      break;
10670    }
10671    return NULL;
10672  case ARM_t2LDMIA_UPD:
10673    if (MCInst_getNumOperands(MI) == 4 &&
10674        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10675        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
10676      // (t2LDMIA_UPD GPR:$Rn, pred:$p, reglist:$regs)
10677      AsmString = "ldm$\xFF\x02\x01} $\x01!, $\xFF\x04\x04";
10678      break;
10679    }
10680    return NULL;
10681  case ARM_t2LDRBi12:
10682    if (MCInst_getNumOperands(MI) == 5 &&
10683        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10684        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10685      // (t2LDRBi12 rGPR:$Rt, t2addrmode_imm12:$addr, pred:$p)
10686      AsmString = "ldrb$\xFF\x04\x01} $\x01, $\xFF\x02\x0D";
10687      break;
10688    }
10689    return NULL;
10690  case ARM_t2LDRBpci:
10691    if (MCInst_getNumOperands(MI) == 4 &&
10692        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10693        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10694      // (t2LDRBpci rGPR:$Rt, t2ldrlabel:$addr, pred:$p)
10695      AsmString = "ldrb$\xFF\x03\x01} $\x01, $\xFF\x02\x0E";
10696      break;
10697    }
10698    return NULL;
10699  case ARM_t2LDRBpcrel:
10700    if (MCInst_getNumOperands(MI) == 4 &&
10701        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10702        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
10703      // (t2LDRBpcrel GPRnopc:$Rt, t2ldr_pcrel_imm12:$addr, pred:$p)
10704      AsmString = "ldrb$\xFF\x03\x01}.w $\x01, $\x02";
10705      break;
10706    }
10707    return NULL;
10708  case ARM_t2LDRBs:
10709    if (MCInst_getNumOperands(MI) == 6 &&
10710        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10711        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10712      // (t2LDRBs rGPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)
10713      AsmString = "ldrb$\xFF\x05\x01} $\x01, $\xFF\x02\x0F";
10714      break;
10715    }
10716    return NULL;
10717  case ARM_t2LDRHi12:
10718    if (MCInst_getNumOperands(MI) == 5 &&
10719        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10720        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10721      // (t2LDRHi12 rGPR:$Rt, t2addrmode_imm12:$addr, pred:$p)
10722      AsmString = "ldrh$\xFF\x04\x01} $\x01, $\xFF\x02\x0D";
10723      break;
10724    }
10725    return NULL;
10726  case ARM_t2LDRHpci:
10727    if (MCInst_getNumOperands(MI) == 4 &&
10728        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10729        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10730      // (t2LDRHpci rGPR:$Rt, t2ldrlabel:$addr, pred:$p)
10731      AsmString = "ldrh$\xFF\x03\x01} $\x01, $\xFF\x02\x0E";
10732      break;
10733    }
10734    return NULL;
10735  case ARM_t2LDRHpcrel:
10736    if (MCInst_getNumOperands(MI) == 4 &&
10737        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10738        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
10739      // (t2LDRHpcrel GPRnopc:$Rt, t2ldr_pcrel_imm12:$addr, pred:$p)
10740      AsmString = "ldrh$\xFF\x03\x01}.w $\x01, $\x02";
10741      break;
10742    }
10743    return NULL;
10744  case ARM_t2LDRHs:
10745    if (MCInst_getNumOperands(MI) == 6 &&
10746        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10747        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10748      // (t2LDRHs rGPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)
10749      AsmString = "ldrh$\xFF\x05\x01} $\x01, $\xFF\x02\x0F";
10750      break;
10751    }
10752    return NULL;
10753  case ARM_t2LDRSBi12:
10754    if (MCInst_getNumOperands(MI) == 5 &&
10755        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10756        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10757      // (t2LDRSBi12 rGPR:$Rt, t2addrmode_imm12:$addr, pred:$p)
10758      AsmString = "ldrsb$\xFF\x04\x01} $\x01, $\xFF\x02\x0D";
10759      break;
10760    }
10761    return NULL;
10762  case ARM_t2LDRSBpci:
10763    if (MCInst_getNumOperands(MI) == 4 &&
10764        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10765        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10766      // (t2LDRSBpci rGPR:$Rt, t2ldrlabel:$addr, pred:$p)
10767      AsmString = "ldrsb$\xFF\x03\x01} $\x01, $\xFF\x02\x0E";
10768      break;
10769    }
10770    return NULL;
10771  case ARM_t2LDRSBpcrel:
10772    if (MCInst_getNumOperands(MI) == 4 &&
10773        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10774        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
10775      // (t2LDRSBpcrel GPRnopc:$Rt, t2ldr_pcrel_imm12:$addr, pred:$p)
10776      AsmString = "ldrsb$\xFF\x03\x01}.w $\x01, $\x02";
10777      break;
10778    }
10779    return NULL;
10780  case ARM_t2LDRSBs:
10781    if (MCInst_getNumOperands(MI) == 6 &&
10782        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10783        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10784      // (t2LDRSBs rGPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)
10785      AsmString = "ldrsb$\xFF\x05\x01} $\x01, $\xFF\x02\x0F";
10786      break;
10787    }
10788    return NULL;
10789  case ARM_t2LDRSHi12:
10790    if (MCInst_getNumOperands(MI) == 5 &&
10791        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10792        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10793      // (t2LDRSHi12 rGPR:$Rt, t2addrmode_imm12:$addr, pred:$p)
10794      AsmString = "ldrsh$\xFF\x04\x01} $\x01, $\xFF\x02\x0D";
10795      break;
10796    }
10797    return NULL;
10798  case ARM_t2LDRSHpci:
10799    if (MCInst_getNumOperands(MI) == 4 &&
10800        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10801        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10802      // (t2LDRSHpci rGPR:$Rt, t2ldrlabel:$addr, pred:$p)
10803      AsmString = "ldrsh$\xFF\x03\x01} $\x01, $\xFF\x02\x0E";
10804      break;
10805    }
10806    return NULL;
10807  case ARM_t2LDRSHpcrel:
10808    if (MCInst_getNumOperands(MI) == 4 &&
10809        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10810        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
10811      // (t2LDRSHpcrel GPRnopc:$Rt, t2ldr_pcrel_imm12:$addr, pred:$p)
10812      AsmString = "ldrsh$\xFF\x03\x01}.w $\x01, $\x02";
10813      break;
10814    }
10815    return NULL;
10816  case ARM_t2LDRSHs:
10817    if (MCInst_getNumOperands(MI) == 6 &&
10818        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10819        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10820      // (t2LDRSHs rGPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)
10821      AsmString = "ldrsh$\xFF\x05\x01} $\x01, $\xFF\x02\x0F";
10822      break;
10823    }
10824    return NULL;
10825  case ARM_t2LDRi12:
10826    if (MCInst_getNumOperands(MI) == 5 &&
10827        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10828        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
10829      // (t2LDRi12 GPR:$Rt, t2addrmode_imm12:$addr, pred:$p)
10830      AsmString = "ldr$\xFF\x04\x01} $\x01, $\xFF\x02\x0D";
10831      break;
10832    }
10833    return NULL;
10834  case ARM_t2LDRpci:
10835    if (MCInst_getNumOperands(MI) == 4 &&
10836        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10837        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
10838      // (t2LDRpci GPRnopc:$Rt, t2ldrlabel:$addr, pred:$p)
10839      AsmString = "ldr$\xFF\x03\x01} $\x01, $\xFF\x02\x0E";
10840      break;
10841    }
10842    return NULL;
10843  case ARM_t2LDRs:
10844    if (MCInst_getNumOperands(MI) == 6 &&
10845        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10846        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
10847      // (t2LDRs GPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)
10848      AsmString = "ldr$\xFF\x05\x01} $\x01, $\xFF\x02\x0F";
10849      break;
10850    }
10851    return NULL;
10852  case ARM_t2LSLri:
10853    if (MCInst_getNumOperands(MI) == 6 &&
10854        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10855        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10856        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10857        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
10858      // (t2LSLri rGPR:$Rd, rGPR:$Rn, imm0_31:$imm, pred:$p, cc_out:$s)
10859      AsmString = "lsl$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
10860      break;
10861    }
10862    return NULL;
10863  case ARM_t2LSLrr:
10864    if (MCInst_getNumOperands(MI) == 6 &&
10865        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10866        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10867        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10868        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
10869        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10870        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
10871      // (t2LSLrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
10872      AsmString = "lsl$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
10873      break;
10874    }
10875    return NULL;
10876  case ARM_t2LSRri:
10877    if (MCInst_getNumOperands(MI) == 6 &&
10878        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10879        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10880        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10881        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
10882      // (t2LSRri rGPR:$Rd, rGPR:$Rn, imm_sr:$imm, pred:$p, cc_out:$s)
10883      AsmString = "lsr$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\xFF\x03\x0C";
10884      break;
10885    }
10886    return NULL;
10887  case ARM_t2LSRrr:
10888    if (MCInst_getNumOperands(MI) == 6 &&
10889        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10890        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10891        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10892        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
10893        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10894        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
10895      // (t2LSRrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
10896      AsmString = "lsr$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
10897      break;
10898    }
10899    return NULL;
10900  case ARM_t2MCR:
10901    if (MCInst_getNumOperands(MI) == 8 &&
10902        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10903        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 2) &&
10904        MCOperand_isImm(MCInst_getOperand(MI, 5)) &&
10905        MCOperand_getImm(MCInst_getOperand(MI, 5)) == 0) {
10906      // (t2MCR p_imm:$cop, imm0_7:$opc1, GPR:$Rt, c_imm:$CRn, c_imm:$CRm, 0, pred:$p)
10907      AsmString = "mcr$\xFF\x07\x01} $\xFF\x01\x05, $\x02, $\x03, $\xFF\x04\x06, $\xFF\x05\x06";
10908      break;
10909    }
10910    return NULL;
10911  case ARM_t2MCR2:
10912    if (MCInst_getNumOperands(MI) == 8 &&
10913        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10914        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 2) &&
10915        MCOperand_isImm(MCInst_getOperand(MI, 5)) &&
10916        MCOperand_getImm(MCInst_getOperand(MI, 5)) == 0) {
10917      // (t2MCR2 p_imm:$cop, imm0_7:$opc1, GPR:$Rt, c_imm:$CRn, c_imm:$CRm, 0, pred:$p)
10918      AsmString = "mcr2$\xFF\x07\x01} $\xFF\x01\x05, $\x02, $\x03, $\xFF\x04\x06, $\xFF\x05\x06";
10919      break;
10920    }
10921    return NULL;
10922  case ARM_t2MOVi16:
10923    if (MCInst_getNumOperands(MI) == 4 &&
10924        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10925        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10926      // (t2MOVi16 rGPR:$Rd, imm256_65535_expr:$imm, pred:$p)
10927      AsmString = "mov$\xFF\x03\x01} $\x01, $\x02";
10928      break;
10929    }
10930    return NULL;
10931  case ARM_t2MRC:
10932    if (MCInst_getNumOperands(MI) == 8 &&
10933        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10934        GETREGCLASS_CONTAIN(ARM_GPRwithAPSRRegClassID, 0) &&
10935        MCOperand_isImm(MCInst_getOperand(MI, 5)) &&
10936        MCOperand_getImm(MCInst_getOperand(MI, 5)) == 0) {
10937      // (t2MRC GPRwithAPSR:$Rt, p_imm:$cop, imm0_7:$opc1, c_imm:$CRn, c_imm:$CRm, 0, pred:$p)
10938      AsmString = "mrc$\xFF\x07\x01} $\xFF\x02\x05, $\x03, $\x01, $\xFF\x04\x06, $\xFF\x05\x06";
10939      break;
10940    }
10941    return NULL;
10942  case ARM_t2MRC2:
10943    if (MCInst_getNumOperands(MI) == 8 &&
10944        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10945        GETREGCLASS_CONTAIN(ARM_GPRwithAPSRRegClassID, 0) &&
10946        MCOperand_isImm(MCInst_getOperand(MI, 5)) &&
10947        MCOperand_getImm(MCInst_getOperand(MI, 5)) == 0) {
10948      // (t2MRC2 GPRwithAPSR:$Rt, p_imm:$cop, imm0_7:$opc1, c_imm:$CRn, c_imm:$CRm, 0, pred:$p)
10949      AsmString = "mrc2$\xFF\x07\x01} $\xFF\x02\x05, $\x03, $\x01, $\xFF\x04\x06, $\xFF\x05\x06";
10950      break;
10951    }
10952    return NULL;
10953  case ARM_t2MRS_AR:
10954    if (MCInst_getNumOperands(MI) == 3 &&
10955        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10956        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
10957      // (t2MRS_AR GPR:$Rd, pred:$p)
10958      AsmString = "mrs$\xFF\x02\x01} $\x01, cpsr";
10959      break;
10960    }
10961    return NULL;
10962  case ARM_t2MUL:
10963    if (MCInst_getNumOperands(MI) == 5 &&
10964        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10965        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10966        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10967        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
10968        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
10969        MCOperand_getReg(MCInst_getOperand(MI, 2)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
10970      // (t2MUL rGPR:$Rn, rGPR:$Rm, rGPR:$Rn, pred:$p)
10971      AsmString = "mul$\xFF\x04\x01} $\x01, $\x02";
10972      break;
10973    }
10974    return NULL;
10975  case ARM_t2MVNi:
10976    if (MCInst_getNumOperands(MI) == 5 &&
10977        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10978        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10979      // (t2MVNi rGPR:$Rd, t2_so_imm:$imm, pred:$p, cc_out:$s)
10980      AsmString = "mvn$\xFF\x05\x02}$\xFF\x03\x01}.w $\x01, $\x02";
10981      break;
10982    }
10983    return NULL;
10984  case ARM_t2MVNr:
10985    if (MCInst_getNumOperands(MI) == 5 &&
10986        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10987        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
10988        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
10989        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
10990      // (t2MVNr rGPR:$Rd, rGPR:$Rm, pred:$p, cc_out:$s)
10991      AsmString = "mvn$\xFF\x05\x02}$\xFF\x03\x01} $\x01, $\x02";
10992      break;
10993    }
10994    return NULL;
10995  case ARM_t2MVNs:
10996    if (MCInst_getNumOperands(MI) == 6 &&
10997        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
10998        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
10999      // (t2MVNs rGPR:$Rd, t2_so_reg:$ShiftedRm, pred:$p, cc_out:$s)
11000      AsmString = "mvn$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\xFF\x02\x0A";
11001      break;
11002    }
11003    return NULL;
11004  case ARM_t2ORNri:
11005    if (MCInst_getNumOperands(MI) == 6 &&
11006        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11007        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11008        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11009        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
11010      // (t2ORNri rGPR:$Rdn, rGPR:$Rdn, t2_so_imm:$imm, pred:$p, cc_out:$s)
11011      AsmString = "orn$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x03";
11012      break;
11013    }
11014    return NULL;
11015  case ARM_t2ORNrr:
11016    if (MCInst_getNumOperands(MI) == 6 &&
11017        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11018        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11019        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11020        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0)) &&
11021        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11022        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
11023      // (t2ORNrr rGPR:$Rdn, rGPR:$Rdn, rGPR:$Rm, pred:$p, cc_out:$s)
11024      AsmString = "orn$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x03";
11025      break;
11026    }
11027    return NULL;
11028  case ARM_t2ORNrs:
11029    if (MCInst_getNumOperands(MI) == 7 &&
11030        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11031        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11032        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11033        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
11034      // (t2ORNrs rGPR:$Rdn, rGPR:$Rdn, t2_so_reg:$shift, pred:$p, cc_out:$s)
11035      AsmString = "orn$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\xFF\x03\x0A";
11036      break;
11037    }
11038    return NULL;
11039  case ARM_t2ORRri:
11040    if (MCInst_getNumOperands(MI) == 6 &&
11041        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11042        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11043        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11044        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11045      // (t2ORRri rGPR:$Rd, rGPR:$Rn, t2_so_imm:$imm, pred:$p, cc_out:$s)
11046      AsmString = "orr$\xFF\x06\x02}$\xFF\x04\x01}.w $\x01, $\x02, $\x03";
11047      break;
11048    }
11049    return NULL;
11050  case ARM_t2ORRrr:
11051    if (MCInst_getNumOperands(MI) == 6 &&
11052        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11053        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11054        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11055        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11056        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11057        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
11058      // (t2ORRrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
11059      AsmString = "orr$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
11060      break;
11061    }
11062    return NULL;
11063  case ARM_t2ORRrs:
11064    if (MCInst_getNumOperands(MI) == 7 &&
11065        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11066        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11067        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11068        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11069      // (t2ORRrs rGPR:$Rd, rGPR:$Rn, t2_so_reg:$shift, pred:$p, cc_out:$s)
11070      AsmString = "orr$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\xFF\x03\x0A";
11071      break;
11072    }
11073    return NULL;
11074  case ARM_t2PLDpci:
11075    if (MCInst_getNumOperands(MI) == 3) {
11076      // (t2PLDpci t2ldr_pcrel_imm12:$addr, pred:$p)
11077      AsmString = "pld$\xFF\x02\x01} $\x01";
11078      break;
11079    }
11080    return NULL;
11081  case ARM_t2PLIpci:
11082    if (MCInst_getNumOperands(MI) == 3) {
11083      // (t2PLIpci t2ldr_pcrel_imm12:$addr, pred:$p)
11084      AsmString = "pli$\xFF\x02\x01} $\x01";
11085      break;
11086    }
11087    return NULL;
11088  case ARM_t2REV:
11089    if (MCInst_getNumOperands(MI) == 4 &&
11090        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11091        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11092        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11093        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11094      // (t2REV rGPR:$Rd, rGPR:$Rm, pred:$p)
11095      AsmString = "rev$\xFF\x03\x01} $\x01, $\x02";
11096      break;
11097    }
11098    return NULL;
11099  case ARM_t2REV16:
11100    if (MCInst_getNumOperands(MI) == 4 &&
11101        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11102        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11103        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11104        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11105      // (t2REV16 rGPR:$Rd, rGPR:$Rm, pred:$p)
11106      AsmString = "rev16$\xFF\x03\x01} $\x01, $\x02";
11107      break;
11108    }
11109    return NULL;
11110  case ARM_t2REVSH:
11111    if (MCInst_getNumOperands(MI) == 4 &&
11112        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11113        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11114        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11115        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11116      // (t2REVSH rGPR:$Rd, rGPR:$Rm, pred:$p)
11117      AsmString = "revsh$\xFF\x03\x01} $\x01, $\x02";
11118      break;
11119    }
11120    return NULL;
11121  case ARM_t2RORri:
11122    if (MCInst_getNumOperands(MI) == 6 &&
11123        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11124        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11125        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11126        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11127      // (t2RORri rGPR:$Rd, rGPR:$Rn, imm0_31:$imm, pred:$p, cc_out:$s)
11128      AsmString = "ror$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
11129      break;
11130    }
11131    return NULL;
11132  case ARM_t2RORrr:
11133    if (MCInst_getNumOperands(MI) == 6 &&
11134        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11135        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11136        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11137        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11138        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11139        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
11140      // (t2RORrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
11141      AsmString = "ror$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
11142      break;
11143    }
11144    return NULL;
11145  case ARM_t2RSBri:
11146    if (MCInst_getNumOperands(MI) == 6 &&
11147        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11148        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11149        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11150        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11151      // (t2RSBri rGPR:$Rd, rGPR:$Rn, t2_so_imm:$imm, pred:$p, cc_out:$s)
11152      AsmString = "rsb$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
11153      break;
11154    }
11155    if (MCInst_getNumOperands(MI) == 6 &&
11156        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11157        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11158        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11159        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
11160      // (t2RSBri rGPR:$Rdn, rGPR:$Rdn, t2_so_imm:$imm, pred:$p, cc_out:$s)
11161      AsmString = "rsb$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x03";
11162      break;
11163    }
11164    if (MCInst_getNumOperands(MI) == 6 &&
11165        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11166        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11167        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11168        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11169        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
11170        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
11171      // (t2RSBri rGPR:$Rd, rGPR:$Rm, 0, pred:$p, cc_out:$s)
11172      AsmString = "neg$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02";
11173      break;
11174    }
11175    return NULL;
11176  case ARM_t2RSBrr:
11177    if (MCInst_getNumOperands(MI) == 6 &&
11178        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11179        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11180        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11181        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0)) &&
11182        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11183        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
11184      // (t2RSBrr rGPR:$Rdn, rGPR:$Rdn, rGPR:$Rm, pred:$p, cc_out:$s)
11185      AsmString = "rsb$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x03";
11186      break;
11187    }
11188    return NULL;
11189  case ARM_t2RSBrs:
11190    if (MCInst_getNumOperands(MI) == 7 &&
11191        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11192        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11193        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11194        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
11195      // (t2RSBrs rGPR:$Rdn, rGPR:$Rdn, t2_so_reg:$ShiftedRm, pred:$p, cc_out:$s)
11196      AsmString = "rsb$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\xFF\x03\x0A";
11197      break;
11198    }
11199    return NULL;
11200  case ARM_t2SBCrr:
11201    if (MCInst_getNumOperands(MI) == 6 &&
11202        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11203        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11204        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11205        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11206        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11207        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
11208      // (t2SBCrr rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
11209      AsmString = "sbc$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
11210      break;
11211    }
11212    return NULL;
11213  case ARM_t2SBCrs:
11214    if (MCInst_getNumOperands(MI) == 7 &&
11215        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11216        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11217        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11218        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11219      // (t2SBCrs rGPR:$Rd, rGPR:$Rn, t2_so_reg:$ShiftedRm, pred:$p, cc_out:$s)
11220      AsmString = "sbc$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\xFF\x03\x0A";
11221      break;
11222    }
11223    return NULL;
11224  case ARM_t2SRSDB:
11225    if (MCInst_getNumOperands(MI) == 3) {
11226      // (t2SRSDB imm0_31:$mode, pred:$p)
11227      AsmString = "srsdb$\xFF\x02\x01} $\x01";
11228      break;
11229    }
11230    return NULL;
11231  case ARM_t2SRSDB_UPD:
11232    if (MCInst_getNumOperands(MI) == 3) {
11233      // (t2SRSDB_UPD imm0_31:$mode, pred:$p)
11234      AsmString = "srsdb$\xFF\x02\x01} $\x01!";
11235      break;
11236    }
11237    return NULL;
11238  case ARM_t2SRSIA:
11239    if (MCInst_getNumOperands(MI) == 3) {
11240      // (t2SRSIA imm0_31:$mode, pred:$p)
11241      AsmString = "srsia$\xFF\x02\x01} $\x01";
11242      break;
11243    }
11244    return NULL;
11245  case ARM_t2SRSIA_UPD:
11246    if (MCInst_getNumOperands(MI) == 3) {
11247      // (t2SRSIA_UPD imm0_31:$mode, pred:$p)
11248      AsmString = "srsia$\xFF\x02\x01} $\x01!";
11249      break;
11250    }
11251    return NULL;
11252  case ARM_t2SSAT:
11253    if (MCInst_getNumOperands(MI) == 6 &&
11254        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11255        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11256        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11257        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2) &&
11258        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
11259        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
11260      // (t2SSAT rGPR:$Rd, imm1_32:$sat_imm, rGPR:$Rn, 0, pred:$p)
11261      AsmString = "ssat$\xFF\x05\x01} $\x01, $\xFF\x02\x07, $\x03";
11262      break;
11263    }
11264    return NULL;
11265  case ARM_t2STMDB:
11266    if (MCInst_getNumOperands(MI) == 4 &&
11267        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11268        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
11269      // (t2STMDB GPR:$Rn, pred:$p, reglist:$regs)
11270      AsmString = "stmdb$\xFF\x02\x01}.w $\x01, $\xFF\x04\x04";
11271      break;
11272    }
11273    return NULL;
11274  case ARM_t2STMDB_UPD:
11275    if (MCInst_getNumOperands(MI) == 4 &&
11276        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11277        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
11278      // (t2STMDB_UPD GPR:$Rn, pred:$p, reglist:$regs)
11279      AsmString = "stmdb$\xFF\x02\x01}.w $\x01!, $\xFF\x04\x04";
11280      break;
11281    }
11282    return NULL;
11283  case ARM_t2STMIA_UPD:
11284    if (MCInst_getNumOperands(MI) == 4 &&
11285        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11286        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
11287      // (t2STMIA_UPD GPR:$Rn, pred:$p, reglist:$regs)
11288      AsmString = "stm$\xFF\x02\x01} $\x01!, $\xFF\x04\x04";
11289      break;
11290    }
11291    return NULL;
11292  case ARM_t2STRBi12:
11293    if (MCInst_getNumOperands(MI) == 5 &&
11294        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11295        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
11296      // (t2STRBi12 rGPR:$Rt, t2addrmode_imm12:$addr, pred:$p)
11297      AsmString = "strb$\xFF\x04\x01} $\x01, $\xFF\x02\x0D";
11298      break;
11299    }
11300    return NULL;
11301  case ARM_t2STRBs:
11302    if (MCInst_getNumOperands(MI) == 6 &&
11303        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11304        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
11305      // (t2STRBs rGPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)
11306      AsmString = "strb$\xFF\x05\x01} $\x01, $\xFF\x02\x0F";
11307      break;
11308    }
11309    return NULL;
11310  case ARM_t2STRHi12:
11311    if (MCInst_getNumOperands(MI) == 5 &&
11312        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11313        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
11314      // (t2STRHi12 rGPR:$Rt, t2addrmode_imm12:$addr, pred:$p)
11315      AsmString = "strh$\xFF\x04\x01} $\x01, $\xFF\x02\x0D";
11316      break;
11317    }
11318    return NULL;
11319  case ARM_t2STRHs:
11320    if (MCInst_getNumOperands(MI) == 6 &&
11321        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11322        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0)) {
11323      // (t2STRHs rGPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)
11324      AsmString = "strh$\xFF\x05\x01} $\x01, $\xFF\x02\x0F";
11325      break;
11326    }
11327    return NULL;
11328  case ARM_t2STRi12:
11329    if (MCInst_getNumOperands(MI) == 5 &&
11330        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11331        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
11332      // (t2STRi12 GPR:$Rt, t2addrmode_imm12:$addr, pred:$p)
11333      AsmString = "str$\xFF\x04\x01} $\x01, $\xFF\x02\x0D";
11334      break;
11335    }
11336    return NULL;
11337  case ARM_t2STRs:
11338    if (MCInst_getNumOperands(MI) == 6 &&
11339        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11340        GETREGCLASS_CONTAIN(ARM_GPRRegClassID, 0)) {
11341      // (t2STRs GPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)
11342      AsmString = "str$\xFF\x05\x01} $\x01, $\xFF\x02\x0F";
11343      break;
11344    }
11345    return NULL;
11346  case ARM_t2SUBrr:
11347    if (MCInst_getNumOperands(MI) == 6 &&
11348        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11349        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
11350        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11351        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1) &&
11352        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11353        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2)) {
11354      // (t2SUBrr GPRnopc:$Rd, GPRnopc:$Rn, rGPR:$Rm, pred:$p, cc_out:$s)
11355      AsmString = "sub$\xFF\x06\x02}$\xFF\x04\x01} $\x01, $\x02, $\x03";
11356      break;
11357    }
11358    return NULL;
11359  case ARM_t2SUBrs:
11360    if (MCInst_getNumOperands(MI) == 7 &&
11361        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11362        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
11363        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11364        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 1)) {
11365      // (t2SUBrs GPRnopc:$Rd, GPRnopc:$Rn, t2_so_reg:$ShiftedRm, pred:$p, cc_out:$s)
11366      AsmString = "sub$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\x02, $\xFF\x03\x0A";
11367      break;
11368    }
11369    if (MCInst_getNumOperands(MI) == 7 &&
11370        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11371        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
11372        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11373        MCOperand_getReg(MCInst_getOperand(MI, 1)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
11374      // (t2SUBrs GPRnopc:$Rdn, GPRnopc:$Rdn, t2_so_reg:$ShiftedRm, pred:$p, cc_out:$s)
11375      AsmString = "sub$\xFF\x07\x02}$\xFF\x05\x01} $\x01, $\xFF\x03\x0A";
11376      break;
11377    }
11378    return NULL;
11379  case ARM_t2SXTAB:
11380    if (MCInst_getNumOperands(MI) == 6 &&
11381        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11382        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11383        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11384        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11385        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11386        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2) &&
11387        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
11388        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
11389      // (t2SXTAB rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)
11390      AsmString = "sxtab$\xFF\x05\x01} $\x01, $\x02, $\x03";
11391      break;
11392    }
11393    return NULL;
11394  case ARM_t2SXTAB16:
11395    if (MCInst_getNumOperands(MI) == 6 &&
11396        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11397        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11398        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11399        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11400        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11401        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2) &&
11402        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
11403        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
11404      // (t2SXTAB16 rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)
11405      AsmString = "sxtab16$\xFF\x05\x01} $\x01, $\x02, $\x03";
11406      break;
11407    }
11408    return NULL;
11409  case ARM_t2SXTAH:
11410    if (MCInst_getNumOperands(MI) == 6 &&
11411        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11412        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11413        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11414        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11415        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11416        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2) &&
11417        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
11418        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
11419      // (t2SXTAH rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)
11420      AsmString = "sxtah$\xFF\x05\x01} $\x01, $\x02, $\x03";
11421      break;
11422    }
11423    return NULL;
11424  case ARM_t2SXTB:
11425    if (MCInst_getNumOperands(MI) == 5 &&
11426        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11427        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11428        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11429        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11430      // (t2SXTB rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)
11431      AsmString = "sxtb$\xFF\x04\x01} $\x01, $\x02$\xFF\x03\x10";
11432      break;
11433    }
11434    return NULL;
11435  case ARM_t2SXTB16:
11436    if (MCInst_getNumOperands(MI) == 5 &&
11437        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11438        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11439        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11440        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11441        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
11442        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
11443      // (t2SXTB16 rGPR:$Rd, rGPR:$Rm, 0, pred:$p)
11444      AsmString = "sxtb16$\xFF\x04\x01} $\x01, $\x02";
11445      break;
11446    }
11447    if (MCInst_getNumOperands(MI) == 5 &&
11448        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11449        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11450        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11451        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11452      // (t2SXTB16 rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)
11453      AsmString = "sxtb16$\xFF\x04\x01} $\x01, $\x02$\xFF\x03\x10";
11454      break;
11455    }
11456    return NULL;
11457  case ARM_t2SXTH:
11458    if (MCInst_getNumOperands(MI) == 5 &&
11459        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11460        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11461        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11462        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11463      // (t2SXTH rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)
11464      AsmString = "sxth$\xFF\x04\x01} $\x01, $\x02$\xFF\x03\x10";
11465      break;
11466    }
11467    return NULL;
11468  case ARM_t2TEQri:
11469    if (MCInst_getNumOperands(MI) == 4 &&
11470        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11471        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
11472      // (t2TEQri GPRnopc:$Rn, t2_so_imm:$imm, pred:$p)
11473      AsmString = "teq$\xFF\x03\x01} $\x01, $\x02";
11474      break;
11475    }
11476    return NULL;
11477  case ARM_t2TEQrr:
11478    if (MCInst_getNumOperands(MI) == 4 &&
11479        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11480        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
11481        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11482        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11483      // (t2TEQrr GPRnopc:$Rn, rGPR:$Rm, pred:$p)
11484      AsmString = "teq$\xFF\x03\x01} $\x01, $\x02";
11485      break;
11486    }
11487    return NULL;
11488  case ARM_t2TEQrs:
11489    if (MCInst_getNumOperands(MI) == 5 &&
11490        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11491        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
11492      // (t2TEQrs GPRnopc:$Rn, t2_so_reg:$shift, pred:$p)
11493      AsmString = "teq$\xFF\x04\x01} $\x01, $\xFF\x02\x0A";
11494      break;
11495    }
11496    return NULL;
11497  case ARM_t2TSTri:
11498    if (MCInst_getNumOperands(MI) == 4 &&
11499        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11500        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
11501      // (t2TSTri GPRnopc:$Rn, t2_so_imm:$imm, pred:$p)
11502      AsmString = "tst$\xFF\x03\x01} $\x01, $\x02";
11503      break;
11504    }
11505    return NULL;
11506  case ARM_t2TSTrr:
11507    if (MCInst_getNumOperands(MI) == 4 &&
11508        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11509        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0) &&
11510        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11511        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11512      // (t2TSTrr GPRnopc:$Rn, rGPR:$Rm, pred:$p)
11513      AsmString = "tst$\xFF\x03\x01} $\x01, $\x02";
11514      break;
11515    }
11516    return NULL;
11517  case ARM_t2TSTrs:
11518    if (MCInst_getNumOperands(MI) == 5 &&
11519        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11520        GETREGCLASS_CONTAIN(ARM_GPRnopcRegClassID, 0)) {
11521      // (t2TSTrs GPRnopc:$Rn, t2_so_reg:$shift, pred:$p)
11522      AsmString = "tst$\xFF\x04\x01} $\x01, $\xFF\x02\x0A";
11523      break;
11524    }
11525    return NULL;
11526  case ARM_t2USAT:
11527    if (MCInst_getNumOperands(MI) == 6 &&
11528        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11529        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11530        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11531        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2) &&
11532        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
11533        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
11534      // (t2USAT rGPR:$Rd, imm0_31:$sat_imm, rGPR:$Rn, 0, pred:$p)
11535      AsmString = "usat$\xFF\x05\x01} $\x01, $\x02, $\x03";
11536      break;
11537    }
11538    return NULL;
11539  case ARM_t2UXTAB:
11540    if (MCInst_getNumOperands(MI) == 6 &&
11541        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11542        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11543        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11544        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11545        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11546        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2) &&
11547        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
11548        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
11549      // (t2UXTAB rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)
11550      AsmString = "uxtab$\xFF\x05\x01} $\x01, $\x02, $\x03";
11551      break;
11552    }
11553    return NULL;
11554  case ARM_t2UXTAB16:
11555    if (MCInst_getNumOperands(MI) == 6 &&
11556        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11557        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11558        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11559        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11560        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11561        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2) &&
11562        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
11563        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
11564      // (t2UXTAB16 rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)
11565      AsmString = "uxtab16$\xFF\x05\x01} $\x01, $\x02, $\x03";
11566      break;
11567    }
11568    return NULL;
11569  case ARM_t2UXTAH:
11570    if (MCInst_getNumOperands(MI) == 6 &&
11571        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11572        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11573        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11574        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11575        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11576        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 2) &&
11577        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
11578        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
11579      // (t2UXTAH rGPR:$Rd, rGPR:$Rn, rGPR:$Rm, 0, pred:$p)
11580      AsmString = "uxtah$\xFF\x05\x01} $\x01, $\x02, $\x03";
11581      break;
11582    }
11583    return NULL;
11584  case ARM_t2UXTB:
11585    if (MCInst_getNumOperands(MI) == 5 &&
11586        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11587        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11588        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11589        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11590      // (t2UXTB rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)
11591      AsmString = "uxtb$\xFF\x04\x01} $\x01, $\x02$\xFF\x03\x10";
11592      break;
11593    }
11594    return NULL;
11595  case ARM_t2UXTB16:
11596    if (MCInst_getNumOperands(MI) == 5 &&
11597        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11598        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11599        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11600        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1) &&
11601        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
11602        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
11603      // (t2UXTB16 rGPR:$Rd, rGPR:$Rm, 0, pred:$p)
11604      AsmString = "uxtb16$\xFF\x04\x01} $\x01, $\x02";
11605      break;
11606    }
11607    if (MCInst_getNumOperands(MI) == 5 &&
11608        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11609        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11610        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11611        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11612      // (t2UXTB16 rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)
11613      AsmString = "uxtb16$\xFF\x04\x01} $\x01, $\x02$\xFF\x03\x10";
11614      break;
11615    }
11616    return NULL;
11617  case ARM_t2UXTH:
11618    if (MCInst_getNumOperands(MI) == 5 &&
11619        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11620        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 0) &&
11621        MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
11622        GETREGCLASS_CONTAIN(ARM_rGPRRegClassID, 1)) {
11623      // (t2UXTH rGPR:$Rd, rGPR:$Rm, rot_imm:$rot, pred:$p)
11624      AsmString = "uxth$\xFF\x04\x01} $\x01, $\x02$\xFF\x03\x10";
11625      break;
11626    }
11627    return NULL;
11628  case ARM_tASRri:
11629    if (MCInst_getNumOperands(MI) == 6 &&
11630        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11631        GETREGCLASS_CONTAIN(ARM_tGPRRegClassID, 0) &&
11632        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11633        MCOperand_getReg(MCInst_getOperand(MI, 2)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
11634      // (tASRri tGPR:$Rdm, cc_out:$s, tGPR:$Rdm, imm_sr:$imm, pred:$p)
11635      AsmString = "asr$\xFF\x02\x02}$\xFF\x05\x01} $\x01, $\xFF\x04\x0C";
11636      break;
11637    }
11638    return NULL;
11639  case ARM_tBKPT:
11640    if (MCInst_getNumOperands(MI) == 1 &&
11641        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
11642        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 0) {
11643      // (tBKPT 0)
11644      AsmString = "bkpt";
11645      break;
11646    }
11647    return NULL;
11648  case ARM_tHINT:
11649    if (MCInst_getNumOperands(MI) == 3 &&
11650        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
11651        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 0) {
11652      // (tHINT 0, pred:$p)
11653      AsmString = "nop$\xFF\x02\x01";
11654      break;
11655    }
11656    if (MCInst_getNumOperands(MI) == 3 &&
11657        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
11658        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 1) {
11659      // (tHINT 1, pred:$p)
11660      AsmString = "yield$\xFF\x02\x01";
11661      break;
11662    }
11663    if (MCInst_getNumOperands(MI) == 3 &&
11664        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
11665        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 2) {
11666      // (tHINT 2, pred:$p)
11667      AsmString = "wfe$\xFF\x02\x01";
11668      break;
11669    }
11670    if (MCInst_getNumOperands(MI) == 3 &&
11671        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
11672        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 3) {
11673      // (tHINT 3, pred:$p)
11674      AsmString = "wfi$\xFF\x02\x01";
11675      break;
11676    }
11677    if (MCInst_getNumOperands(MI) == 3 &&
11678        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
11679        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 4) {
11680      // (tHINT 4, pred:$p)
11681      AsmString = "sev$\xFF\x02\x01";
11682      break;
11683    }
11684    if (MCInst_getNumOperands(MI) == 3 &&
11685        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
11686        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 5) {
11687      // (tHINT 5, pred:$p)
11688      AsmString = "sevl$\xFF\x02\x01";
11689      break;
11690    }
11691    return NULL;
11692  case ARM_tLDMIA:
11693    if (MCInst_getNumOperands(MI) == 4 &&
11694        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11695        GETREGCLASS_CONTAIN(ARM_tGPRRegClassID, 0)) {
11696      // (tLDMIA tGPR:$Rn, pred:$p, reglist:$regs)
11697      AsmString = "ldm$\xFF\x02\x01} $\x01!, $\xFF\x04\x04";
11698      break;
11699    }
11700    return NULL;
11701  case ARM_tLSLri:
11702    if (MCInst_getNumOperands(MI) == 6 &&
11703        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11704        GETREGCLASS_CONTAIN(ARM_tGPRRegClassID, 0) &&
11705        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11706        MCOperand_getReg(MCInst_getOperand(MI, 2)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
11707      // (tLSLri tGPR:$Rdm, cc_out:$s, tGPR:$Rdm, imm0_31:$imm, pred:$p)
11708      AsmString = "lsl$\xFF\x02\x02}$\xFF\x05\x01} $\x01, $\x04";
11709      break;
11710    }
11711    return NULL;
11712  case ARM_tLSRri:
11713    if (MCInst_getNumOperands(MI) == 6 &&
11714        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11715        GETREGCLASS_CONTAIN(ARM_tGPRRegClassID, 0) &&
11716        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11717        MCOperand_getReg(MCInst_getOperand(MI, 2)) == MCOperand_getReg(MCInst_getOperand(MI, 0))) {
11718      // (tLSRri tGPR:$Rdm, cc_out:$s, tGPR:$Rdm, imm_sr:$imm, pred:$p)
11719      AsmString = "lsr$\xFF\x02\x02}$\xFF\x05\x01} $\x01, $\xFF\x04\x0C";
11720      break;
11721    }
11722    return NULL;
11723  case ARM_tMOVi8:
11724    if (MCInst_getNumOperands(MI) == 5 &&
11725        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11726        GETREGCLASS_CONTAIN(ARM_tGPRRegClassID, 0) &&
11727        MCOperand_getReg(MCInst_getOperand(MI, 1)) == ARM_CPSR &&
11728        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
11729        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 14 &&
11730        MCOperand_isImm(MCInst_getOperand(MI, 4)) &&
11731        MCOperand_getImm(MCInst_getOperand(MI, 4)) == 0) {
11732      // (tMOVi8 tGPR:$Rdn, CPSR, imm0_255:$imm, 14, 0)
11733      AsmString = "movs $\x01, $\x03";
11734      break;
11735    }
11736    return NULL;
11737  case ARM_tMOVr:
11738    if (MCInst_getNumOperands(MI) == 4 &&
11739        MCOperand_getReg(MCInst_getOperand(MI, 0)) == ARM_R8 &&
11740        MCOperand_getReg(MCInst_getOperand(MI, 1)) == ARM_R8 &&
11741        MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
11742        MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14 &&
11743        MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
11744        MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
11745      // (tMOVr R8, R8, 14, 0)
11746      AsmString = "nop";
11747      break;
11748    }
11749    return NULL;
11750  case ARM_tMUL:
11751    if (MCInst_getNumOperands(MI) == 5 &&
11752        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11753        GETREGCLASS_CONTAIN(ARM_tGPRRegClassID, 0) &&
11754        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11755        GETREGCLASS_CONTAIN(ARM_tGPRRegClassID, 2)) {
11756      // (tMUL tGPR:$Rdm, s_cc_out:$s, tGPR:$Rn, pred:$p)
11757      AsmString = "mul$\xFF\x02\x02}$\xFF\x04\x01} $\x01, $\x03";
11758      break;
11759    }
11760    return NULL;
11761  case ARM_tRSB:
11762    if (MCInst_getNumOperands(MI) == 5 &&
11763        MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
11764        GETREGCLASS_CONTAIN(ARM_tGPRRegClassID, 0) &&
11765        MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
11766        GETREGCLASS_CONTAIN(ARM_tGPRRegClassID, 2)) {
11767      // (tRSB tGPR:$Rd, s_cc_out:$s, tGPR:$Rm, pred:$p)
11768      AsmString = "neg$\xFF\x02\x02}$\xFF\x04\x01} $\x01, $\x03";
11769      break;
11770    }
11771    return NULL;
11772  case ARM_tSUBspi:
11773    if (MCInst_getNumOperands(MI) == 4 &&
11774        MCOperand_getReg(MCInst_getOperand(MI, 0)) == ARM_SP) {
11775      // (tSUBspi SP, t_imm0_508s4_neg:$imm, pred:$p)
11776      AsmString = "add$\xFF\x03\x01} sp, $\x02";
11777      break;
11778    }
11779    return NULL;
11780  }
11781
11782  tmp = cs_strdup(AsmString);
11783  AsmMnem = tmp;
11784  for(AsmOps = tmp; *AsmOps; AsmOps++) {
11785    if (*AsmOps == ' ' || *AsmOps == '\t') {
11786      *AsmOps = '\0';
11787      AsmOps++;
11788      break;
11789    }
11790  }
11791
11792  SStream_concat0(OS, AsmMnem);
11793  if (*AsmOps) {
11794    SStream_concat0(OS, "\t");
11795    for (c = AsmOps; *c; c++) {
11796      if (*c == '$') {
11797        c += 1;
11798        if (*c == (char)0xff) {
11799          c += 1;
11800          OpIdx = *c - 1;
11801          c += 1;
11802          PrintMethodIdx = *c - 1;
11803          printCustomAliasOperand(MI, OpIdx, PrintMethodIdx, OS);
11804        } else
11805          printOperand(MI, *c - 1, OS);
11806      } else {
11807        SStream_concat(OS, "%c", *c);
11808      }
11809    }
11810  }
11811  return tmp;
11812}
11813
11814#endif // PRINT_ALIAS_INSTR
11815