LCOV - code coverage report
Current view: top level - build-llvm/lib/Target/ARM - ARMGenAsmMatcher.inc (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 1401 2545 55.0 %
Date: 2018-07-13 00:08:38 Functions: 13 14 92.9 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
       2             : |*                                                                            *|
       3             : |* Assembly Matcher Source Fragment                                           *|
       4             : |*                                                                            *|
       5             : |* Automatically generated file, do not edit!                                 *|
       6             : |*                                                                            *|
       7             : \*===----------------------------------------------------------------------===*/
       8             : 
       9             : 
      10             : #ifdef GET_ASSEMBLER_HEADER
      11             : #undef GET_ASSEMBLER_HEADER
      12             :   // This should be included into the middle of the declaration of
      13             :   // your subclasses implementation of MCTargetAsmParser.
      14             :   uint64_t ComputeAvailableFeatures(const FeatureBitset& FB) const;
      15             :   void convertToMCInst(unsigned Kind, MCInst &Inst, unsigned Opcode,
      16             :                        const OperandVector &Operands);
      17             :   void convertToMapAndConstraints(unsigned Kind,
      18             :                            const OperandVector &Operands) override;
      19             :   unsigned MatchInstructionImpl(const OperandVector &Operands,
      20             :                                 MCInst &Inst,
      21             :                                 SmallVectorImpl<NearMissInfo> *NearMisses,
      22             :                                 bool matchingInlineAsm,
      23             :                                 unsigned VariantID = 0);
      24             :   OperandMatchResultTy MatchOperandParserImpl(
      25             :     OperandVector &Operands,
      26             :     StringRef Mnemonic,
      27             :     bool ParseForAllFeatures = false);
      28             :   OperandMatchResultTy tryCustomParseOperand(
      29             :     OperandVector &Operands,
      30             :     unsigned MCK);
      31             : 
      32             : #endif // GET_ASSEMBLER_HEADER_INFO
      33             : 
      34             : 
      35             : #ifdef GET_OPERAND_DIAGNOSTIC_TYPES
      36             : #undef GET_OPERAND_DIAGNOSTIC_TYPES
      37             : 
      38             :   Match_AlignedMemory16,
      39             :   Match_AlignedMemory32,
      40             :   Match_AlignedMemory64,
      41             :   Match_AlignedMemory64or128,
      42             :   Match_AlignedMemory64or128or256,
      43             :   Match_AlignedMemoryNone,
      44             :   Match_ComplexRotationEven,
      45             :   Match_ComplexRotationOdd,
      46             :   Match_DPR,
      47             :   Match_DPR_8,
      48             :   Match_DPR_RegList,
      49             :   Match_DPR_VFP2,
      50             :   Match_DupAlignedMemory16,
      51             :   Match_DupAlignedMemory32,
      52             :   Match_DupAlignedMemory64,
      53             :   Match_DupAlignedMemory64or128,
      54             :   Match_DupAlignedMemoryNone,
      55             :   Match_GPR,
      56             :   Match_GPRnopc,
      57             :   Match_GPRsp,
      58             :   Match_GPRwithAPSR,
      59             :   Match_Imm0_1,
      60             :   Match_Imm0_15,
      61             :   Match_Imm0_239,
      62             :   Match_Imm0_255,
      63             :   Match_Imm0_3,
      64             :   Match_Imm0_31,
      65             :   Match_Imm0_32,
      66             :   Match_Imm0_4095,
      67             :   Match_Imm0_63,
      68             :   Match_Imm0_65535,
      69             :   Match_Imm0_65535Expr,
      70             :   Match_Imm0_7,
      71             :   Match_Imm16,
      72             :   Match_Imm1_15,
      73             :   Match_Imm1_31,
      74             :   Match_Imm1_7,
      75             :   Match_Imm24bit,
      76             :   Match_Imm256_65535Expr,
      77             :   Match_Imm32,
      78             :   Match_Imm8,
      79             :   Match_Imm8_255,
      80             :   Match_ImmRange1_16,
      81             :   Match_ImmRange1_32,
      82             :   Match_ImmThumbSR,
      83             :   Match_PKHLSLImm,
      84             :   Match_QPR,
      85             :   Match_QPR_8,
      86             :   Match_QPR_VFP2,
      87             :   Match_SPR,
      88             :   Match_SPRRegList,
      89             :   Match_SPR_8,
      90             :   Match_SetEndImm,
      91             :   Match_ShrImm16,
      92             :   Match_ShrImm32,
      93             :   Match_ShrImm64,
      94             :   Match_ShrImm8,
      95             :   Match_hGPR,
      96             :   Match_rGPR,
      97             :   Match_tGPR,
      98             :   END_OPERAND_DIAGNOSTIC_TYPES
      99             : #endif // GET_OPERAND_DIAGNOSTIC_TYPES
     100             : 
     101             : 
     102             : #ifdef GET_REGISTER_MATCHER
     103             : #undef GET_REGISTER_MATCHER
     104             : 
     105             : // Flags for subtarget features that participate in instruction matching.
     106             : enum SubtargetFeatureFlag : uint64_t {
     107             :   Feature_HasV4T = (1ULL << 20),
     108             :   Feature_HasV5T = (1ULL << 21),
     109             :   Feature_HasV5TE = (1ULL << 22),
     110             :   Feature_HasV6 = (1ULL << 23),
     111             :   Feature_HasV6M = (1ULL << 25),
     112             :   Feature_HasV8MBaseline = (1ULL << 30),
     113             :   Feature_HasV8MMainline = (1ULL << 31),
     114             :   Feature_HasV6T2 = (1ULL << 26),
     115             :   Feature_HasV6K = (1ULL << 24),
     116             :   Feature_HasV7 = (1ULL << 27),
     117             :   Feature_HasV8 = (1ULL << 29),
     118             :   Feature_PreV8 = (1ULL << 45),
     119             :   Feature_HasV8_1a = (1ULL << 32),
     120             :   Feature_HasV8_2a = (1ULL << 33),
     121             :   Feature_HasV8_3a = (1ULL << 34),
     122             :   Feature_HasV8_4a = (1ULL << 35),
     123             :   Feature_HasVFP2 = (1ULL << 36),
     124             :   Feature_HasVFP3 = (1ULL << 37),
     125             :   Feature_HasVFP4 = (1ULL << 38),
     126             :   Feature_HasDPVFP = (1ULL << 7),
     127             :   Feature_HasFPARMv8 = (1ULL << 13),
     128             :   Feature_HasNEON = (1ULL << 16),
     129             :   Feature_HasSHA2 = (1ULL << 18),
     130             :   Feature_HasAES = (1ULL << 1),
     131             :   Feature_HasCrypto = (1ULL << 4),
     132             :   Feature_HasDotProd = (1ULL << 11),
     133             :   Feature_HasCRC = (1ULL << 3),
     134             :   Feature_HasRAS = (1ULL << 17),
     135             :   Feature_HasFP16 = (1ULL << 12),
     136             :   Feature_HasFullFP16 = (1ULL << 14),
     137             :   Feature_HasDivideInThumb = (1ULL << 10),
     138             :   Feature_HasDivideInARM = (1ULL << 9),
     139             :   Feature_HasDSP = (1ULL << 8),
     140             :   Feature_HasDB = (1ULL << 5),
     141             :   Feature_HasDFB = (1ULL << 6),
     142             :   Feature_HasV7Clrex = (1ULL << 28),
     143             :   Feature_HasAcquireRelease = (1ULL << 2),
     144             :   Feature_HasMP = (1ULL << 15),
     145             :   Feature_HasVirtualization = (1ULL << 39),
     146             :   Feature_HasTrustZone = (1ULL << 19),
     147             :   Feature_Has8MSecExt = (1ULL << 0),
     148             :   Feature_IsThumb = (1ULL << 43),
     149             :   Feature_IsThumb2 = (1ULL << 44),
     150             :   Feature_IsMClass = (1ULL << 41),
     151             :   Feature_IsNotMClass = (1ULL << 42),
     152             :   Feature_IsARM = (1ULL << 40),
     153             :   Feature_UseNaClTrap = (1ULL << 46),
     154             :   Feature_UseNegativeImmediates = (1ULL << 47),
     155             :   Feature_None = 0
     156             : };
     157             : 
     158       51412 : static unsigned MatchRegisterName(StringRef Name) {
     159       51412 :   switch (Name.size()) {
     160             :   default: break;
     161       45090 :   case 2:        // 43 strings to match.
     162       45090 :     switch (Name[0]) {
     163             :     default: break;
     164       10529 :     case 'd':    // 10 strings to match.
     165       10529 :       switch (Name[1]) {
     166             :       default: break;
     167             :       case '0':  // 1 string to match.
     168             :         return 14;       // "d0"
     169             :       case '1':  // 1 string to match.
     170             :         return 15;       // "d1"
     171             :       case '2':  // 1 string to match.
     172             :         return 16;       // "d2"
     173             :       case '3':  // 1 string to match.
     174             :         return 17;       // "d3"
     175             :       case '4':  // 1 string to match.
     176             :         return 18;       // "d4"
     177             :       case '5':  // 1 string to match.
     178             :         return 19;       // "d5"
     179             :       case '6':  // 1 string to match.
     180             :         return 20;       // "d6"
     181             :       case '7':  // 1 string to match.
     182             :         return 21;       // "d7"
     183             :       case '8':  // 1 string to match.
     184             :         return 22;       // "d8"
     185             :       case '9':  // 1 string to match.
     186             :         return 23;       // "d9"
     187             :       }
     188             :       break;
     189         898 :     case 'l':    // 1 string to match.
     190         898 :       if (Name[1] != 'r')
     191             :         break;
     192             :       return 10;         // "lr"
     193         645 :     case 'p':    // 1 string to match.
     194         645 :       if (Name[1] != 'c')
     195             :         break;
     196             :       return 11;         // "pc"
     197        3907 :     case 'q':    // 10 strings to match.
     198        3907 :       switch (Name[1]) {
     199             :       default: break;
     200             :       case '0':  // 1 string to match.
     201             :         return 50;       // "q0"
     202             :       case '1':  // 1 string to match.
     203             :         return 51;       // "q1"
     204             :       case '2':  // 1 string to match.
     205             :         return 52;       // "q2"
     206             :       case '3':  // 1 string to match.
     207             :         return 53;       // "q3"
     208             :       case '4':  // 1 string to match.
     209             :         return 54;       // "q4"
     210             :       case '5':  // 1 string to match.
     211             :         return 55;       // "q5"
     212             :       case '6':  // 1 string to match.
     213             :         return 56;       // "q6"
     214             :       case '7':  // 1 string to match.
     215             :         return 57;       // "q7"
     216             :       case '8':  // 1 string to match.
     217             :         return 58;       // "q8"
     218             :       case '9':  // 1 string to match.
     219             :         return 59;       // "q9"
     220             :       }
     221             :       break;
     222       26000 :     case 'r':    // 10 strings to match.
     223       26000 :       switch (Name[1]) {
     224             :       default: break;
     225             :       case '0':  // 1 string to match.
     226             :         return 66;       // "r0"
     227             :       case '1':  // 1 string to match.
     228             :         return 67;       // "r1"
     229             :       case '2':  // 1 string to match.
     230             :         return 68;       // "r2"
     231             :       case '3':  // 1 string to match.
     232             :         return 69;       // "r3"
     233             :       case '4':  // 1 string to match.
     234             :         return 70;       // "r4"
     235             :       case '5':  // 1 string to match.
     236             :         return 71;       // "r5"
     237             :       case '6':  // 1 string to match.
     238             :         return 72;       // "r6"
     239             :       case '7':  // 1 string to match.
     240             :         return 73;       // "r7"
     241             :       case '8':  // 1 string to match.
     242             :         return 74;       // "r8"
     243             :       case '9':  // 1 string to match.
     244             :         return 75;       // "r9"
     245             :       }
     246             :       break;
     247        2983 :     case 's':    // 11 strings to match.
     248        2983 :       switch (Name[1]) {
     249             :       default: break;
     250             :       case '0':  // 1 string to match.
     251             :         return 79;       // "s0"
     252             :       case '1':  // 1 string to match.
     253             :         return 80;       // "s1"
     254             :       case '2':  // 1 string to match.
     255             :         return 81;       // "s2"
     256             :       case '3':  // 1 string to match.
     257             :         return 82;       // "s3"
     258             :       case '4':  // 1 string to match.
     259             :         return 83;       // "s4"
     260             :       case '5':  // 1 string to match.
     261             :         return 84;       // "s5"
     262             :       case '6':  // 1 string to match.
     263             :         return 85;       // "s6"
     264             :       case '7':  // 1 string to match.
     265             :         return 86;       // "s7"
     266             :       case '8':  // 1 string to match.
     267             :         return 87;       // "s8"
     268             :       case '9':  // 1 string to match.
     269             :         return 88;       // "s9"
     270             :       case 'p':  // 1 string to match.
     271             :         return 12;       // "sp"
     272             :       }
     273             :       break;
     274             :     }
     275             :     break;
     276        5918 :   case 3:        // 53 strings to match.
     277        5918 :     switch (Name[0]) {
     278             :     default: break;
     279        3521 :     case 'd':    // 22 strings to match.
     280        3521 :       switch (Name[1]) {
     281             :       default: break;
     282        3139 :       case '1':  // 10 strings to match.
     283        3139 :         switch (Name[2]) {
     284             :         default: break;
     285             :         case '0':        // 1 string to match.
     286             :           return 24;     // "d10"
     287             :         case '1':        // 1 string to match.
     288             :           return 25;     // "d11"
     289             :         case '2':        // 1 string to match.
     290             :           return 26;     // "d12"
     291             :         case '3':        // 1 string to match.
     292             :           return 27;     // "d13"
     293             :         case '4':        // 1 string to match.
     294             :           return 28;     // "d14"
     295             :         case '5':        // 1 string to match.
     296             :           return 29;     // "d15"
     297             :         case '6':        // 1 string to match.
     298             :           return 30;     // "d16"
     299             :         case '7':        // 1 string to match.
     300             :           return 31;     // "d17"
     301             :         case '8':        // 1 string to match.
     302             :           return 32;     // "d18"
     303             :         case '9':        // 1 string to match.
     304             :           return 33;     // "d19"
     305             :         }
     306             :         break;
     307         347 :       case '2':  // 10 strings to match.
     308         347 :         switch (Name[2]) {
     309             :         default: break;
     310             :         case '0':        // 1 string to match.
     311             :           return 34;     // "d20"
     312             :         case '1':        // 1 string to match.
     313             :           return 35;     // "d21"
     314             :         case '2':        // 1 string to match.
     315             :           return 36;     // "d22"
     316             :         case '3':        // 1 string to match.
     317             :           return 37;     // "d23"
     318             :         case '4':        // 1 string to match.
     319             :           return 38;     // "d24"
     320             :         case '5':        // 1 string to match.
     321             :           return 39;     // "d25"
     322             :         case '6':        // 1 string to match.
     323             :           return 40;     // "d26"
     324             :         case '7':        // 1 string to match.
     325             :           return 41;     // "d27"
     326             :         case '8':        // 1 string to match.
     327             :           return 42;     // "d28"
     328             :         case '9':        // 1 string to match.
     329             :           return 43;     // "d29"
     330             :         }
     331             :         break;
     332          35 :       case '3':  // 2 strings to match.
     333          35 :         switch (Name[2]) {
     334             :         default: break;
     335             :         case '0':        // 1 string to match.
     336             :           return 44;     // "d30"
     337          18 :         case '1':        // 1 string to match.
     338          18 :           return 45;     // "d31"
     339             :         }
     340             :         break;
     341             :       }
     342             :       break;
     343         151 :     case 'q':    // 6 strings to match.
     344         151 :       if (Name[1] != '1')
     345             :         break;
     346         151 :       switch (Name[2]) {
     347             :       default: break;
     348             :       case '0':  // 1 string to match.
     349             :         return 60;       // "q10"
     350             :       case '1':  // 1 string to match.
     351             :         return 61;       // "q11"
     352             :       case '2':  // 1 string to match.
     353             :         return 62;       // "q12"
     354             :       case '3':  // 1 string to match.
     355             :         return 63;       // "q13"
     356             :       case '4':  // 1 string to match.
     357             :         return 64;       // "q14"
     358             :       case '5':  // 1 string to match.
     359             :         return 65;       // "q15"
     360             :       }
     361             :       break;
     362        1337 :     case 'r':    // 3 strings to match.
     363        1337 :       if (Name[1] != '1')
     364             :         break;
     365        1123 :       switch (Name[2]) {
     366             :       default: break;
     367             :       case '0':  // 1 string to match.
     368             :         return 76;       // "r10"
     369             :       case '1':  // 1 string to match.
     370             :         return 77;       // "r11"
     371             :       case '2':  // 1 string to match.
     372             :         return 78;       // "r12"
     373             :       }
     374             :       break;
     375         203 :     case 's':    // 22 strings to match.
     376         203 :       switch (Name[1]) {
     377             :       default: break;
     378         140 :       case '1':  // 10 strings to match.
     379         140 :         switch (Name[2]) {
     380             :         default: break;
     381             :         case '0':        // 1 string to match.
     382             :           return 89;     // "s10"
     383             :         case '1':        // 1 string to match.
     384             :           return 90;     // "s11"
     385             :         case '2':        // 1 string to match.
     386             :           return 91;     // "s12"
     387             :         case '3':        // 1 string to match.
     388             :           return 92;     // "s13"
     389             :         case '4':        // 1 string to match.
     390             :           return 93;     // "s14"
     391             :         case '5':        // 1 string to match.
     392             :           return 94;     // "s15"
     393             :         case '6':        // 1 string to match.
     394             :           return 95;     // "s16"
     395             :         case '7':        // 1 string to match.
     396             :           return 96;     // "s17"
     397             :         case '8':        // 1 string to match.
     398             :           return 97;     // "s18"
     399             :         case '9':        // 1 string to match.
     400             :           return 98;     // "s19"
     401             :         }
     402             :         break;
     403          57 :       case '2':  // 10 strings to match.
     404          57 :         switch (Name[2]) {
     405             :         default: break;
     406             :         case '0':        // 1 string to match.
     407             :           return 99;     // "s20"
     408             :         case '1':        // 1 string to match.
     409             :           return 100;    // "s21"
     410             :         case '2':        // 1 string to match.
     411             :           return 101;    // "s22"
     412             :         case '3':        // 1 string to match.
     413             :           return 102;    // "s23"
     414             :         case '4':        // 1 string to match.
     415             :           return 103;    // "s24"
     416             :         case '5':        // 1 string to match.
     417             :           return 104;    // "s25"
     418             :         case '6':        // 1 string to match.
     419             :           return 105;    // "s26"
     420             :         case '7':        // 1 string to match.
     421             :           return 106;    // "s27"
     422             :         case '8':        // 1 string to match.
     423             :           return 107;    // "s28"
     424             :         case '9':        // 1 string to match.
     425             :           return 108;    // "s29"
     426             :         }
     427             :         break;
     428           6 :       case '3':  // 2 strings to match.
     429           6 :         switch (Name[2]) {
     430             :         default: break;
     431             :         case '0':        // 1 string to match.
     432             :           return 109;    // "s30"
     433           0 :         case '1':        // 1 string to match.
     434           0 :           return 110;    // "s31"
     435             :         }
     436             :         break;
     437             :       }
     438             :       break;
     439             :     }
     440             :     break;
     441          70 :   case 4:        // 3 strings to match.
     442          70 :     switch (Name[0]) {
     443             :     default: break;
     444             :     case 'a':    // 1 string to match.
     445           4 :       if (memcmp(Name.data()+1, "psr", 3) != 0)
     446             :         break;
     447             :       return 1;  // "apsr"
     448             :     case 'c':    // 1 string to match.
     449           9 :       if (memcmp(Name.data()+1, "psr", 3) != 0)
     450             :         break;
     451             :       return 3;  // "cpsr"
     452             :     case 's':    // 1 string to match.
     453          15 :       if (memcmp(Name.data()+1, "psr", 3) != 0)
     454             :         break;
     455             :       return 13;         // "spsr"
     456             :     }
     457             :     break;
     458         169 :   case 5:        // 6 strings to match.
     459         169 :     switch (Name[0]) {
     460             :     default: break;
     461         111 :     case 'f':    // 3 strings to match.
     462         111 :       if (Name[1] != 'p')
     463             :         break;
     464         111 :       switch (Name[2]) {
     465             :       default: break;
     466             :       case 'e':  // 1 string to match.
     467           9 :         if (memcmp(Name.data()+3, "xc", 2) != 0)
     468             :           break;
     469             :         return 4;        // "fpexc"
     470         102 :       case 's':  // 2 strings to match.
     471         102 :         switch (Name[3]) {
     472             :         default: break;
     473          77 :         case 'c':        // 1 string to match.
     474          77 :           if (Name[4] != 'r')
     475             :             break;
     476             :           return 6;      // "fpscr"
     477          25 :         case 'i':        // 1 string to match.
     478          25 :           if (Name[4] != 'd')
     479             :             break;
     480             :           return 8;      // "fpsid"
     481             :         }
     482             :         break;
     483             :       }
     484             :       break;
     485             :     case 'm':    // 3 strings to match.
     486          32 :       if (memcmp(Name.data()+1, "vfr", 3) != 0)
     487             :         break;
     488          32 :       switch (Name[4]) {
     489             :       default: break;
     490             :       case '0':  // 1 string to match.
     491             :         return 47;       // "mvfr0"
     492             :       case '1':  // 1 string to match.
     493             :         return 48;       // "mvfr1"
     494             :       case '2':  // 1 string to match.
     495             :         return 49;       // "mvfr2"
     496             :       }
     497             :       break;
     498             :     }
     499             :     break;
     500             :   case 6:        // 1 string to match.
     501          43 :     if (memcmp(Name.data()+0, "fpinst", 6) != 0)
     502             :       break;
     503             :     return 5;    // "fpinst"
     504          11 :   case 7:        // 2 strings to match.
     505          11 :     switch (Name[0]) {
     506             :     default: break;
     507             :     case 'f':    // 1 string to match.
     508           2 :       if (memcmp(Name.data()+1, "pinst2", 6) != 0)
     509             :         break;
     510             :       return 46;         // "fpinst2"
     511             :     case 'i':    // 1 string to match.
     512           2 :       if (memcmp(Name.data()+1, "tstate", 6) != 0)
     513             :         break;
     514             :       return 9;  // "itstate"
     515             :     }
     516             :     break;
     517             :   case 9:        // 1 string to match.
     518          36 :     if (memcmp(Name.data()+0, "apsr_nzcv", 9) != 0)
     519             :       break;
     520             :     return 2;    // "apsr_nzcv"
     521             :   case 10:       // 1 string to match.
     522           8 :     if (memcmp(Name.data()+0, "fpscr_nzcv", 10) != 0)
     523             :       break;
     524             :     return 7;    // "fpscr_nzcv"
     525             :   }
     526             :   return 0;
     527             : }
     528             : 
     529             : #endif // GET_REGISTER_MATCHER
     530             : 
     531             : 
     532             : #ifdef GET_SUBTARGET_FEATURE_NAME
     533             : #undef GET_SUBTARGET_FEATURE_NAME
     534             : 
     535             : // User-level names for subtarget features that participate in
     536             : // instruction matching.
     537        2216 : static const char *getSubtargetFeatureName(uint64_t Val) {
     538        2216 :   switch(Val) {
     539             :   case Feature_HasV4T: return "armv4t";
     540           1 :   case Feature_HasV5T: return "armv5t";
     541           0 :   case Feature_HasV5TE: return "armv5te";
     542           0 :   case Feature_HasV6: return "armv6";
     543          12 :   case Feature_HasV6M: return "armv6m or armv6t2";
     544          12 :   case Feature_HasV8MBaseline: return "armv8m.base";
     545           2 :   case Feature_HasV8MMainline: return "armv8m.main";
     546           4 :   case Feature_HasV6T2: return "armv6t2";
     547           5 :   case Feature_HasV6K: return "armv6k";
     548           6 :   case Feature_HasV7: return "armv7";
     549         113 :   case Feature_HasV8: return "armv8";
     550           2 :   case Feature_PreV8: return "armv7 or earlier";
     551          36 :   case Feature_HasV8_1a: return "armv8.1a";
     552           0 :   case Feature_HasV8_2a: return "armv8.2a";
     553          42 :   case Feature_HasV8_3a: return "armv8.3a";
     554           0 :   case Feature_HasV8_4a: return "armv8.4a";
     555          12 :   case Feature_HasVFP2: return "VFP2";
     556           0 :   case Feature_HasVFP3: return "VFP3";
     557           0 :   case Feature_HasVFP4: return "VFP4";
     558          52 :   case Feature_HasDPVFP: return "double precision VFP";
     559         669 :   case Feature_HasFPARMv8: return "FPARMv8";
     560         287 :   case Feature_HasNEON: return "NEON";
     561           0 :   case Feature_HasSHA2: return "sha2";
     562           0 :   case Feature_HasAES: return "aes";
     563         105 :   case Feature_HasCrypto: return "crypto";
     564          64 :   case Feature_HasDotProd: return "dotprod";
     565          42 :   case Feature_HasCRC: return "crc";
     566           0 :   case Feature_HasRAS: return "ras";
     567           4 :   case Feature_HasFP16: return "half-float conversions";
     568         384 :   case Feature_HasFullFP16: return "full half-float";
     569          11 :   case Feature_HasDivideInThumb: return "divide in THUMB";
     570          11 :   case Feature_HasDivideInARM: return "divide in ARM";
     571          12 :   case Feature_HasDSP: return "dsp";
     572           5 :   case Feature_HasDB: return "data-barriers";
     573           2 :   case Feature_HasDFB: return "full-data-barrier";
     574           2 :   case Feature_HasV7Clrex: return "v7 clrex";
     575          28 :   case Feature_HasAcquireRelease: return "acquire/release";
     576          13 :   case Feature_HasMP: return "mp-extensions";
     577           0 :   case Feature_HasVirtualization: return "virtualization-extensions";
     578          11 :   case Feature_HasTrustZone: return "TrustZone";
     579           0 :   case Feature_Has8MSecExt: return "ARMv8-M Security Extensions";
     580           5 :   case Feature_IsThumb: return "thumb";
     581          91 :   case Feature_IsThumb2: return "thumb2";
     582           0 :   case Feature_IsMClass: return "armv*m";
     583          22 :   case Feature_IsNotMClass: return "!armv*m";
     584          96 :   case Feature_IsARM: return "arm-mode";
     585           0 :   case Feature_UseNaClTrap: return "NaCl";
     586          53 :   case Feature_UseNegativeImmediates: return "NegativeImmediates";
     587           0 :   default: return "(unknown)";
     588             :   }
     589             : }
     590             : 
     591             : #endif // GET_SUBTARGET_FEATURE_NAME
     592             : 
     593             : 
     594             : #ifdef GET_MATCHER_IMPLEMENTATION
     595             : #undef GET_MATCHER_IMPLEMENTATION
     596             : 
     597       50568 : static void applyMnemonicAliases(StringRef &Mnemonic, uint64_t Features, unsigned VariantID) {
     598             :   switch (VariantID) {
     599             :     case 0:
     600             :     break;
     601             :   }
     602       50568 :   switch (Mnemonic.size()) {
     603             :   default: break;
     604       13094 :   case 3:        // 4 strings to match.
     605       26188 :     switch (Mnemonic[0]) {
     606             :     default: break;
     607             :     case 'r':    // 1 string to match.
     608         624 :       if (memcmp(Mnemonic.data()+1, "fe", 2) != 0)
     609             :         break;
     610           4 :       Mnemonic = "rfeia";      // "rfe"
     611             :       return;
     612        1732 :     case 's':    // 3 strings to match.
     613        1732 :       switch (Mnemonic[1]) {
     614             :       default: break;
     615          39 :       case 'm':  // 1 string to match.
     616          39 :         if (Mnemonic[2] != 'i')
     617             :           break;
     618           3 :         Mnemonic = "smc";      // "smi"
     619             :         return;
     620          16 :       case 'r':  // 1 string to match.
     621          16 :         if (Mnemonic[2] != 's')
     622             :           break;
     623          16 :         Mnemonic = "srsia";    // "srs"
     624             :         return;
     625          18 :       case 'w':  // 1 string to match.
     626          18 :         if (Mnemonic[2] != 'i')
     627             :           break;
     628           2 :         Mnemonic = "svc";      // "swi"
     629             :         return;
     630             :       }
     631             :       break;
     632             :     }
     633             :     break;
     634       10693 :   case 4:        // 10 strings to match.
     635       21386 :     switch (Mnemonic[0]) {
     636             :     default: break;
     637           9 :     case 'f':    // 8 strings to match.
     638           9 :       switch (Mnemonic[1]) {
     639             :       default: break;
     640           0 :       case 'l':  // 2 strings to match.
     641           0 :         if (Mnemonic[2] != 'd')
     642             :           break;
     643           0 :         switch (Mnemonic[3]) {
     644             :         default: break;
     645           0 :         case 'd':        // 1 string to match.
     646           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fldd"
     647           0 :             Mnemonic = "vldr";
     648             :           return;
     649           0 :         case 's':        // 1 string to match.
     650           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "flds"
     651           0 :             Mnemonic = "vldr";
     652             :           return;
     653             :         }
     654             :         break;
     655           0 :       case 'm':  // 4 strings to match.
     656           0 :         switch (Mnemonic[2]) {
     657             :         default: break;
     658           0 :         case 'r':        // 2 strings to match.
     659           0 :           switch (Mnemonic[3]) {
     660             :           default: break;
     661           0 :           case 's':      // 1 string to match.
     662           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fmrs"
     663           0 :               Mnemonic = "vmov";
     664             :             return;
     665           0 :           case 'x':      // 1 string to match.
     666           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fmrx"
     667           0 :               Mnemonic = "vmrs";
     668             :             return;
     669             :           }
     670             :           break;
     671           0 :         case 's':        // 1 string to match.
     672           0 :           if (Mnemonic[3] != 'r')
     673             :             break;
     674           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fmsr"
     675           0 :             Mnemonic = "vmov";
     676             :           return;
     677           0 :         case 'x':        // 1 string to match.
     678           0 :           if (Mnemonic[3] != 'r')
     679             :             break;
     680           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fmxr"
     681           0 :             Mnemonic = "vmsr";
     682             :           return;
     683             :         }
     684             :         break;
     685           0 :       case 's':  // 2 strings to match.
     686           0 :         if (Mnemonic[2] != 't')
     687             :           break;
     688           0 :         switch (Mnemonic[3]) {
     689             :         default: break;
     690           0 :         case 'd':        // 1 string to match.
     691           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fstd"
     692           0 :             Mnemonic = "vstr";
     693             :           return;
     694           0 :         case 's':        // 1 string to match.
     695           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fsts"
     696           0 :             Mnemonic = "vstr";
     697             :           return;
     698             :         }
     699             :         break;
     700             :       }
     701             :       break;
     702        5330 :     case 'v':    // 2 strings to match.
     703        5330 :       switch (Mnemonic[1]) {
     704             :       default: break;
     705             :       case 'l':  // 1 string to match.
     706        1751 :         if (memcmp(Mnemonic.data()+2, "dm", 2) != 0)
     707             :           break;
     708           9 :         Mnemonic = "vldmia";   // "vldm"
     709             :         return;
     710             :       case 's':  // 1 string to match.
     711        1490 :         if (memcmp(Mnemonic.data()+2, "tm", 2) != 0)
     712             :           break;
     713           9 :         Mnemonic = "vstmia";   // "vstm"
     714             :         return;
     715             :       }
     716             :       break;
     717             :     }
     718             :     break;
     719        5825 :   case 5:        // 51 strings to match.
     720       11650 :     switch (Mnemonic[0]) {
     721             :     default: break;
     722           0 :     case 'f':    // 18 strings to match.
     723           0 :       switch (Mnemonic[1]) {
     724             :       default: break;
     725             :       case 'a':  // 2 strings to match.
     726           0 :         if (memcmp(Mnemonic.data()+2, "dd", 2) != 0)
     727             :           break;
     728           0 :         switch (Mnemonic[4]) {
     729             :         default: break;
     730           0 :         case 'd':        // 1 string to match.
     731           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "faddd"
     732           0 :             Mnemonic = "vadd.f64";
     733             :           return;
     734           0 :         case 's':        // 1 string to match.
     735           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fadds"
     736           0 :             Mnemonic = "vadd.f32";
     737             :           return;
     738             :         }
     739             :         break;
     740           0 :       case 'c':  // 4 strings to match.
     741           0 :         switch (Mnemonic[2]) {
     742             :         default: break;
     743           0 :         case 'm':        // 2 strings to match.
     744           0 :           if (Mnemonic[3] != 'p')
     745             :             break;
     746           0 :           switch (Mnemonic[4]) {
     747             :           default: break;
     748           0 :           case 'd':      // 1 string to match.
     749           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fcmpd"
     750           0 :               Mnemonic = "vcmp.f64";
     751             :             return;
     752           0 :           case 's':      // 1 string to match.
     753           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fcmps"
     754           0 :               Mnemonic = "vcmp.f32";
     755             :             return;
     756             :           }
     757             :           break;
     758           0 :         case 'p':        // 2 strings to match.
     759           0 :           if (Mnemonic[3] != 'y')
     760             :             break;
     761           0 :           switch (Mnemonic[4]) {
     762             :           default: break;
     763           0 :           case 'd':      // 1 string to match.
     764           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fcpyd"
     765           0 :               Mnemonic = "vmov.f64";
     766             :             return;
     767           0 :           case 's':      // 1 string to match.
     768           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fcpys"
     769           0 :               Mnemonic = "vmov.f32";
     770             :             return;
     771             :           }
     772             :           break;
     773             :         }
     774             :         break;
     775             :       case 'd':  // 2 strings to match.
     776           0 :         if (memcmp(Mnemonic.data()+2, "iv", 2) != 0)
     777             :           break;
     778           0 :         switch (Mnemonic[4]) {
     779             :         default: break;
     780           0 :         case 'd':        // 1 string to match.
     781           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fdivd"
     782           0 :             Mnemonic = "vdiv.f64";
     783             :           return;
     784           0 :         case 's':        // 1 string to match.
     785           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fdivs"
     786           0 :             Mnemonic = "vdiv.f32";
     787             :           return;
     788             :         }
     789             :         break;
     790           0 :       case 'm':  // 8 strings to match.
     791           0 :         switch (Mnemonic[2]) {
     792             :         default: break;
     793           0 :         case 'a':        // 2 strings to match.
     794           0 :           if (Mnemonic[3] != 'c')
     795             :             break;
     796           0 :           switch (Mnemonic[4]) {
     797             :           default: break;
     798           0 :           case 'd':      // 1 string to match.
     799           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fmacd"
     800           0 :               Mnemonic = "vmla.f64";
     801             :             return;
     802           0 :           case 's':      // 1 string to match.
     803           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fmacs"
     804           0 :               Mnemonic = "vmla.f32";
     805             :             return;
     806             :           }
     807             :           break;
     808             :         case 'd':        // 1 string to match.
     809           0 :           if (memcmp(Mnemonic.data()+3, "rr", 2) != 0)
     810             :             break;
     811           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fmdrr"
     812           0 :             Mnemonic = "vmov";
     813             :           return;
     814           0 :         case 'r':        // 3 strings to match.
     815           0 :           switch (Mnemonic[3]) {
     816             :           default: break;
     817           0 :           case 'd':      // 2 strings to match.
     818           0 :             switch (Mnemonic[4]) {
     819             :             default: break;
     820           0 :             case 'd':    // 1 string to match.
     821           0 :               if ((Features & Feature_HasVFP2) == Feature_HasVFP2)   // "fmrdd"
     822           0 :                 Mnemonic = "vmov";
     823             :               return;
     824           0 :             case 's':    // 1 string to match.
     825           0 :               if ((Features & Feature_HasVFP2) == Feature_HasVFP2)   // "fmrds"
     826           0 :                 Mnemonic = "vmov";
     827             :               return;
     828             :             }
     829             :             break;
     830           0 :           case 'r':      // 1 string to match.
     831           0 :             if (Mnemonic[4] != 'd')
     832             :               break;
     833           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fmrrd"
     834           0 :               Mnemonic = "vmov";
     835             :             return;
     836             :           }
     837             :           break;
     838           0 :         case 'u':        // 2 strings to match.
     839           0 :           if (Mnemonic[3] != 'l')
     840             :             break;
     841           0 :           switch (Mnemonic[4]) {
     842             :           default: break;
     843           0 :           case 'd':      // 1 string to match.
     844           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fmuld"
     845           0 :               Mnemonic = "vmul.f64";
     846             :             return;
     847           0 :           case 's':      // 1 string to match.
     848           0 :             if ((Features & Feature_HasVFP2) == Feature_HasVFP2)     // "fmuls"
     849           0 :               Mnemonic = "vmul.f32";
     850             :             return;
     851             :           }
     852             :           break;
     853             :         }
     854             :         break;
     855             :       case 'n':  // 2 strings to match.
     856           0 :         if (memcmp(Mnemonic.data()+2, "eg", 2) != 0)
     857             :           break;
     858           0 :         switch (Mnemonic[4]) {
     859             :         default: break;
     860           0 :         case 'd':        // 1 string to match.
     861           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fnegd"
     862           0 :             Mnemonic = "vneg.f64";
     863             :           return;
     864           0 :         case 's':        // 1 string to match.
     865           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fnegs"
     866           0 :             Mnemonic = "vneg.f32";
     867             :           return;
     868             :         }
     869             :         break;
     870             :       }
     871             :       break;
     872             :     case 'l':    // 3 strings to match.
     873         963 :       if (memcmp(Mnemonic.data()+1, "dm", 2) != 0)
     874             :         break;
     875         211 :       switch (Mnemonic[3]) {
     876             :       default: break;
     877          15 :       case 'e':  // 1 string to match.
     878          15 :         if (Mnemonic[4] != 'a')
     879             :           break;
     880           2 :         Mnemonic = "ldmdb";    // "ldmea"
     881             :         return;
     882          13 :       case 'f':  // 1 string to match.
     883          13 :         if (Mnemonic[4] != 'd')
     884             :           break;
     885          13 :         Mnemonic = "ldm";      // "ldmfd"
     886             :         return;
     887          52 :       case 'i':  // 1 string to match.
     888          52 :         if (Mnemonic[4] != 'a')
     889             :           break;
     890          28 :         Mnemonic = "ldm";      // "ldmia"
     891             :         return;
     892             :       }
     893             :       break;
     894             :     case 'r':    // 4 strings to match.
     895         207 :       if (memcmp(Mnemonic.data()+1, "fe", 2) != 0)
     896             :         break;
     897          78 :       switch (Mnemonic[3]) {
     898             :       default: break;
     899           8 :       case 'e':  // 2 strings to match.
     900           8 :         switch (Mnemonic[4]) {
     901             :         default: break;
     902             :         case 'a':        // 1 string to match.
     903           4 :           Mnemonic = "rfedb";  // "rfeea"
     904             :           return;
     905             :         case 'd':        // 1 string to match.
     906           4 :           Mnemonic = "rfeib";  // "rfeed"
     907             :           return;
     908             :         }
     909             :         break;
     910           8 :       case 'f':  // 2 strings to match.
     911           8 :         switch (Mnemonic[4]) {
     912             :         default: break;
     913             :         case 'a':        // 1 string to match.
     914           4 :           Mnemonic = "rfeda";  // "rfefa"
     915             :           return;
     916             :         case 'd':        // 1 string to match.
     917           4 :           Mnemonic = "rfeia";  // "rfefd"
     918             :           return;
     919             :         }
     920             :         break;
     921             :       }
     922             :       break;
     923        1212 :     case 's':    // 7 strings to match.
     924        1212 :       switch (Mnemonic[1]) {
     925             :       default: break;
     926         210 :       case 'r':  // 4 strings to match.
     927         210 :         if (Mnemonic[2] != 's')
     928             :           break;
     929         210 :         switch (Mnemonic[3]) {
     930             :         default: break;
     931          24 :         case 'e':        // 2 strings to match.
     932          24 :           switch (Mnemonic[4]) {
     933             :           default: break;
     934             :           case 'a':      // 1 string to match.
     935          16 :             Mnemonic = "srsia";        // "srsea"
     936             :             return;
     937             :           case 'd':      // 1 string to match.
     938           8 :             Mnemonic = "srsda";        // "srsed"
     939             :             return;
     940             :           }
     941             :           break;
     942          24 :         case 'f':        // 2 strings to match.
     943          24 :           switch (Mnemonic[4]) {
     944             :           default: break;
     945             :           case 'a':      // 1 string to match.
     946           8 :             Mnemonic = "srsib";        // "srsfa"
     947             :             return;
     948             :           case 'd':      // 1 string to match.
     949          16 :             Mnemonic = "srsdb";        // "srsfd"
     950             :             return;
     951             :           }
     952             :           break;
     953             :         }
     954             :         break;
     955         520 :       case 't':  // 3 strings to match.
     956         520 :         if (Mnemonic[2] != 'm')
     957             :           break;
     958         202 :         switch (Mnemonic[3]) {
     959             :         default: break;
     960           4 :         case 'e':        // 1 string to match.
     961           4 :           if (Mnemonic[4] != 'a')
     962             :             break;
     963           4 :           Mnemonic = "stm";    // "stmea"
     964             :           return;
     965           4 :         case 'f':        // 1 string to match.
     966           4 :           if (Mnemonic[4] != 'd')
     967             :             break;
     968           4 :           Mnemonic = "stmdb";  // "stmfd"
     969             :           return;
     970          50 :         case 'i':        // 1 string to match.
     971          50 :           if (Mnemonic[4] != 'a')
     972             :             break;
     973          18 :           Mnemonic = "stm";    // "stmia"
     974             :           return;
     975             :         }
     976             :         break;
     977             :       }
     978             :       break;
     979        1734 :     case 'v':    // 19 strings to match.
     980        1734 :       switch (Mnemonic[1]) {
     981             :       default: break;
     982         118 :       case 'a':  // 3 strings to match.
     983         118 :         switch (Mnemonic[2]) {
     984             :         default: break;
     985             :         case 'b':        // 1 string to match.
     986          24 :           if (memcmp(Mnemonic.data()+3, "sq", 2) != 0)
     987             :             break;
     988           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vabsq"
     989           0 :             Mnemonic = "vabs";
     990             :           return;
     991             :         case 'd':        // 1 string to match.
     992          30 :           if (memcmp(Mnemonic.data()+3, "dq", 2) != 0)
     993             :             break;
     994           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vaddq"
     995           0 :             Mnemonic = "vadd";
     996             :           return;
     997             :         case 'n':        // 1 string to match.
     998           0 :           if (memcmp(Mnemonic.data()+3, "dq", 2) != 0)
     999             :             break;
    1000           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vandq"
    1001           0 :             Mnemonic = "vand";
    1002             :           return;
    1003             :         }
    1004             :         break;
    1005             :       case 'b':  // 1 string to match.
    1006           0 :         if (memcmp(Mnemonic.data()+2, "icq", 3) != 0)
    1007             :           break;
    1008           0 :         if ((Features & Feature_HasNEON) == Feature_HasNEON)         // "vbicq"
    1009           0 :           Mnemonic = "vbic";
    1010             :         return;
    1011         814 :       case 'c':  // 3 strings to match.
    1012         814 :         switch (Mnemonic[2]) {
    1013             :         default: break;
    1014             :         case 'e':        // 1 string to match.
    1015           0 :           if (memcmp(Mnemonic.data()+3, "qq", 2) != 0)
    1016             :             break;
    1017           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vceqq"
    1018           0 :             Mnemonic = "vceq";
    1019             :           return;
    1020             :         case 'l':        // 1 string to match.
    1021           0 :           if (memcmp(Mnemonic.data()+3, "eq", 2) != 0)
    1022             :             break;
    1023           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vcleq"
    1024           0 :             Mnemonic = "vcle";
    1025             :           return;
    1026             :         case 'v':        // 1 string to match.
    1027         536 :           if (memcmp(Mnemonic.data()+3, "tq", 2) != 0)
    1028             :             break;
    1029           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vcvtq"
    1030           0 :             Mnemonic = "vcvt";
    1031             :           return;
    1032             :         }
    1033             :         break;
    1034             :       case 'e':  // 1 string to match.
    1035           0 :         if (memcmp(Mnemonic.data()+2, "orq", 3) != 0)
    1036             :           break;
    1037           0 :         if ((Features & Feature_HasNEON) == Feature_HasNEON)         // "veorq"
    1038           0 :           Mnemonic = "veor";
    1039             :         return;
    1040          75 :       case 'm':  // 5 strings to match.
    1041          75 :         switch (Mnemonic[2]) {
    1042             :         default: break;
    1043             :         case 'a':        // 1 string to match.
    1044           0 :           if (memcmp(Mnemonic.data()+3, "xq", 2) != 0)
    1045             :             break;
    1046           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vmaxq"
    1047           0 :             Mnemonic = "vmax";
    1048             :           return;
    1049             :         case 'i':        // 1 string to match.
    1050           0 :           if (memcmp(Mnemonic.data()+3, "nq", 2) != 0)
    1051             :             break;
    1052           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vminq"
    1053           0 :             Mnemonic = "vmin";
    1054             :           return;
    1055             :         case 'o':        // 1 string to match.
    1056          22 :           if (memcmp(Mnemonic.data()+3, "vq", 2) != 0)
    1057             :             break;
    1058           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vmovq"
    1059           0 :             Mnemonic = "vmov";
    1060             :           return;
    1061             :         case 'u':        // 1 string to match.
    1062          27 :           if (memcmp(Mnemonic.data()+3, "lq", 2) != 0)
    1063             :             break;
    1064           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vmulq"
    1065           0 :             Mnemonic = "vmul";
    1066             :           return;
    1067             :         case 'v':        // 1 string to match.
    1068           0 :           if (memcmp(Mnemonic.data()+3, "nq", 2) != 0)
    1069             :             break;
    1070           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vmvnq"
    1071           0 :             Mnemonic = "vmvn";
    1072             :           return;
    1073             :         }
    1074             :         break;
    1075             :       case 'o':  // 1 string to match.
    1076           0 :         if (memcmp(Mnemonic.data()+2, "rrq", 3) != 0)
    1077             :           break;
    1078           0 :         if ((Features & Feature_HasNEON) == Feature_HasNEON)         // "vorrq"
    1079           0 :           Mnemonic = "vorr";
    1080             :         return;
    1081         115 :       case 's':  // 4 strings to match.
    1082         115 :         switch (Mnemonic[2]) {
    1083             :         default: break;
    1084          24 :         case 'h':        // 2 strings to match.
    1085          24 :           switch (Mnemonic[3]) {
    1086             :           default: break;
    1087          18 :           case 'l':      // 1 string to match.
    1088          18 :             if (Mnemonic[4] != 'q')
    1089             :               break;
    1090           0 :             if ((Features & Feature_HasNEON) == Feature_HasNEON)     // "vshlq"
    1091           0 :               Mnemonic = "vshl";
    1092             :             return;
    1093           6 :           case 'r':      // 1 string to match.
    1094           6 :             if (Mnemonic[4] != 'q')
    1095             :               break;
    1096           0 :             if ((Features & Feature_HasNEON) == Feature_HasNEON)     // "vshrq"
    1097           0 :               Mnemonic = "vshr";
    1098             :             return;
    1099             :           }
    1100             :           break;
    1101             :         case 'u':        // 1 string to match.
    1102          18 :           if (memcmp(Mnemonic.data()+3, "bq", 2) != 0)
    1103             :             break;
    1104           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vsubq"
    1105           0 :             Mnemonic = "vsub";
    1106             :           return;
    1107             :         case 'w':        // 1 string to match.
    1108           0 :           if (memcmp(Mnemonic.data()+3, "pq", 2) != 0)
    1109             :             break;
    1110           0 :           if ((Features & Feature_HasNEON) == Feature_HasNEON)       // "vswpq"
    1111           0 :             Mnemonic = "vswp";
    1112             :           return;
    1113             :         }
    1114             :         break;
    1115             :       case 'z':  // 1 string to match.
    1116           0 :         if (memcmp(Mnemonic.data()+2, "ipq", 3) != 0)
    1117             :           break;
    1118           0 :         if ((Features & Feature_HasNEON) == Feature_HasNEON)         // "vzipq"
    1119           0 :           Mnemonic = "vzip";
    1120             :         return;
    1121             :       }
    1122             :       break;
    1123             :     }
    1124             :     break;
    1125        4178 :   case 6:        // 10 strings to match.
    1126        8356 :     if (Mnemonic[0] != 'f')
    1127             :       break;
    1128          18 :     switch (Mnemonic[1]) {
    1129             :     default: break;
    1130           2 :     case 's':    // 4 strings to match.
    1131           2 :       switch (Mnemonic[2]) {
    1132             :       default: break;
    1133             :       case 'i':  // 2 strings to match.
    1134           0 :         if (memcmp(Mnemonic.data()+3, "to", 2) != 0)
    1135             :           break;
    1136           0 :         switch (Mnemonic[5]) {
    1137             :         default: break;
    1138           0 :         case 'd':        // 1 string to match.
    1139           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fsitod"
    1140           0 :             Mnemonic = "vcvt.f64.s32";
    1141             :           return;
    1142           0 :         case 's':        // 1 string to match.
    1143           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fsitos"
    1144           0 :             Mnemonic = "vcvt.f32.s32";
    1145             :           return;
    1146             :         }
    1147             :         break;
    1148             :       case 'q':  // 2 strings to match.
    1149           2 :         if (memcmp(Mnemonic.data()+3, "rt", 2) != 0)
    1150             :           break;
    1151           2 :         switch (Mnemonic[5]) {
    1152             :         default: break;
    1153           1 :         case 'd':        // 1 string to match.
    1154           1 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fsqrtd"
    1155           1 :             Mnemonic = "vsqrt";
    1156             :           return;
    1157           1 :         case 's':        // 1 string to match.
    1158           1 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "fsqrts"
    1159           1 :             Mnemonic = "vsqrt";
    1160             :           return;
    1161             :         }
    1162             :         break;
    1163             :       }
    1164             :       break;
    1165           0 :     case 't':    // 4 strings to match.
    1166           0 :       if (Mnemonic[2] != 'o')
    1167             :         break;
    1168           0 :       switch (Mnemonic[3]) {
    1169             :       default: break;
    1170           0 :       case 's':  // 2 strings to match.
    1171           0 :         if (Mnemonic[4] != 'i')
    1172             :           break;
    1173           0 :         switch (Mnemonic[5]) {
    1174             :         default: break;
    1175           0 :         case 'd':        // 1 string to match.
    1176           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "ftosid"
    1177           0 :             Mnemonic = "vcvtr.s32.f64";
    1178             :           return;
    1179           0 :         case 's':        // 1 string to match.
    1180           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "ftosis"
    1181           0 :             Mnemonic = "vcvtr.s32.f32";
    1182             :           return;
    1183             :         }
    1184             :         break;
    1185           0 :       case 'u':  // 2 strings to match.
    1186           0 :         if (Mnemonic[4] != 'i')
    1187             :           break;
    1188           0 :         switch (Mnemonic[5]) {
    1189             :         default: break;
    1190           0 :         case 'd':        // 1 string to match.
    1191           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "ftouid"
    1192           0 :             Mnemonic = "vcvtr.u32.f64";
    1193             :           return;
    1194           0 :         case 's':        // 1 string to match.
    1195           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "ftouis"
    1196           0 :             Mnemonic = "vcvtr.u32.f32";
    1197             :           return;
    1198             :         }
    1199             :         break;
    1200             :       }
    1201             :       break;
    1202             :     case 'u':    // 2 strings to match.
    1203           0 :       if (memcmp(Mnemonic.data()+2, "ito", 3) != 0)
    1204             :         break;
    1205           0 :       switch (Mnemonic[5]) {
    1206             :       default: break;
    1207           0 :       case 'd':  // 1 string to match.
    1208           0 :         if ((Features & Feature_HasVFP2) == Feature_HasVFP2)         // "fuitod"
    1209           0 :           Mnemonic = "vcvt.f64.u32";
    1210             :         return;
    1211           0 :       case 's':  // 1 string to match.
    1212           0 :         if ((Features & Feature_HasVFP2) == Feature_HasVFP2)         // "fuitos"
    1213           0 :           Mnemonic = "vcvt.f32.u32";
    1214             :         return;
    1215             :       }
    1216             :       break;
    1217             :     }
    1218             :     break;
    1219        3462 :   case 7:        // 8 strings to match.
    1220        6924 :     if (Mnemonic[0] != 'f')
    1221             :       break;
    1222          46 :     switch (Mnemonic[1]) {
    1223             :     default: break;
    1224             :     case 'l':    // 2 strings to match.
    1225          12 :       if (memcmp(Mnemonic.data()+2, "dm", 2) != 0)
    1226             :         break;
    1227          12 :       switch (Mnemonic[4]) {
    1228             :       default: break;
    1229             :       case 'e':  // 1 string to match.
    1230           2 :         if (memcmp(Mnemonic.data()+5, "ax", 2) != 0)
    1231             :           break;
    1232           2 :         if ((Features & Feature_HasVFP2) == Feature_HasVFP2)         // "fldmeax"
    1233           2 :           Mnemonic = "fldmdbx";
    1234             :         return;
    1235             :       case 'f':  // 1 string to match.
    1236           2 :         if (memcmp(Mnemonic.data()+5, "dx", 2) != 0)
    1237             :           break;
    1238           2 :         if ((Features & Feature_HasVFP2) == Feature_HasVFP2)         // "fldmfdx"
    1239           2 :           Mnemonic = "fldmiax";
    1240             :         return;
    1241             :       }
    1242             :       break;
    1243             :     case 's':    // 2 strings to match.
    1244          20 :       if (memcmp(Mnemonic.data()+2, "tm", 2) != 0)
    1245             :         break;
    1246          20 :       switch (Mnemonic[4]) {
    1247             :       default: break;
    1248             :       case 'e':  // 1 string to match.
    1249           2 :         if (memcmp(Mnemonic.data()+5, "ax", 2) != 0)
    1250             :           break;
    1251           2 :         if ((Features & Feature_HasVFP2) == Feature_HasVFP2)         // "fstmeax"
    1252           2 :           Mnemonic = "fstmiax";
    1253             :         return;
    1254             :       case 'f':  // 1 string to match.
    1255           2 :         if (memcmp(Mnemonic.data()+5, "dx", 2) != 0)
    1256             :           break;
    1257           2 :         if ((Features & Feature_HasVFP2) == Feature_HasVFP2)         // "fstmfdx"
    1258           2 :           Mnemonic = "fstmdbx";
    1259             :         return;
    1260             :       }
    1261             :       break;
    1262           0 :     case 't':    // 4 strings to match.
    1263           0 :       if (Mnemonic[2] != 'o')
    1264             :         break;
    1265           0 :       switch (Mnemonic[3]) {
    1266             :       default: break;
    1267             :       case 's':  // 2 strings to match.
    1268           0 :         if (memcmp(Mnemonic.data()+4, "iz", 2) != 0)
    1269             :           break;
    1270           0 :         switch (Mnemonic[6]) {
    1271             :         default: break;
    1272           0 :         case 'd':        // 1 string to match.
    1273           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "ftosizd"
    1274           0 :             Mnemonic = "vcvt.s32.f64";
    1275             :           return;
    1276           0 :         case 's':        // 1 string to match.
    1277           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "ftosizs"
    1278           0 :             Mnemonic = "vcvt.s32.f32";
    1279             :           return;
    1280             :         }
    1281             :         break;
    1282             :       case 'u':  // 2 strings to match.
    1283           0 :         if (memcmp(Mnemonic.data()+4, "iz", 2) != 0)
    1284             :           break;
    1285           0 :         switch (Mnemonic[6]) {
    1286             :         default: break;
    1287           0 :         case 'd':        // 1 string to match.
    1288           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "ftouizd"
    1289           0 :             Mnemonic = "vcvt.u32.f64";
    1290             :           return;
    1291           0 :         case 's':        // 1 string to match.
    1292           0 :           if ((Features & Feature_HasVFP2) == Feature_HasVFP2)       // "ftouizs"
    1293           0 :             Mnemonic = "vcvt.u32.f32";
    1294             :           return;
    1295             :         }
    1296             :         break;
    1297             :       }
    1298             :       break;
    1299             :     }
    1300             :     break;
    1301        2332 :   case 8:        // 5 strings to match.
    1302        4664 :     switch (Mnemonic[0]) {
    1303             :     default: break;
    1304             :     case 'q':    // 1 string to match.
    1305           8 :       if (memcmp(Mnemonic.data()+1, "subaddx", 7) != 0)
    1306             :         break;
    1307           0 :       Mnemonic = "qsax";       // "qsubaddx"
    1308             :       return;
    1309         308 :     case 's':    // 2 strings to match.
    1310         308 :       switch (Mnemonic[1]) {
    1311             :       default: break;
    1312             :       case 'a':  // 1 string to match.
    1313          10 :         if (memcmp(Mnemonic.data()+2, "ddsubx", 6) != 0)
    1314             :           break;
    1315           4 :         Mnemonic = "sasx";     // "saddsubx"
    1316             :         return;
    1317             :       case 's':  // 1 string to match.
    1318           8 :         if (memcmp(Mnemonic.data()+2, "ubaddx", 6) != 0)
    1319             :           break;
    1320           4 :         Mnemonic = "ssax";     // "ssubaddx"
    1321             :         return;
    1322             :       }
    1323             :       break;
    1324          49 :     case 'u':    // 2 strings to match.
    1325          49 :       switch (Mnemonic[1]) {
    1326             :       default: break;
    1327             :       case 'a':  // 1 string to match.
    1328           8 :         if (memcmp(Mnemonic.data()+2, "ddsubx", 6) != 0)
    1329             :           break;
    1330           4 :         Mnemonic = "uasx";     // "uaddsubx"
    1331             :         return;
    1332             :       case 's':  // 1 string to match.
    1333          12 :         if (memcmp(Mnemonic.data()+2, "ubaddx", 6) != 0)
    1334             :           break;
    1335           4 :         Mnemonic = "usax";     // "usubaddx"
    1336             :         return;
    1337             :       }
    1338             :       break;
    1339             :     }
    1340             :     break;
    1341        1081 :   case 9:        // 8 strings to match.
    1342        2162 :     switch (Mnemonic[0]) {
    1343             :     default: break;
    1344          70 :     case 's':    // 2 strings to match.
    1345          70 :       if (Mnemonic[1] != 'h')
    1346             :         break;
    1347          38 :       switch (Mnemonic[2]) {
    1348             :       default: break;
    1349             :       case 'a':  // 1 string to match.
    1350          30 :         if (memcmp(Mnemonic.data()+3, "ddsubx", 6) != 0)
    1351             :           break;
    1352           4 :         Mnemonic = "shasx";    // "shaddsubx"
    1353             :         return;
    1354             :       case 's':  // 1 string to match.
    1355           8 :         if (memcmp(Mnemonic.data()+3, "ubaddx", 6) != 0)
    1356             :           break;
    1357           4 :         Mnemonic = "shsax";    // "shsubaddx"
    1358             :         return;
    1359             :       }
    1360             :       break;
    1361          40 :     case 'u':    // 4 strings to match.
    1362          40 :       switch (Mnemonic[1]) {
    1363             :       default: break;
    1364          16 :       case 'h':  // 2 strings to match.
    1365          16 :         switch (Mnemonic[2]) {
    1366             :         default: break;
    1367             :         case 'a':        // 1 string to match.
    1368           8 :           if (memcmp(Mnemonic.data()+3, "ddsubx", 6) != 0)
    1369             :             break;
    1370           4 :           Mnemonic = "uhasx";  // "uhaddsubx"
    1371             :           return;
    1372             :         case 's':        // 1 string to match.
    1373           8 :           if (memcmp(Mnemonic.data()+3, "ubaddx", 6) != 0)
    1374             :             break;
    1375           4 :           Mnemonic = "uhsax";  // "uhsubaddx"
    1376             :           return;
    1377             :         }
    1378             :         break;
    1379          16 :       case 'q':  // 2 strings to match.
    1380          16 :         switch (Mnemonic[2]) {
    1381             :         default: break;
    1382             :         case 'a':        // 1 string to match.
    1383           8 :           if (memcmp(Mnemonic.data()+3, "ddsubx", 6) != 0)
    1384             :             break;
    1385           4 :           Mnemonic = "uqasx";  // "uqaddsubx"
    1386             :           return;
    1387             :         case 's':        // 1 string to match.
    1388           8 :           if (memcmp(Mnemonic.data()+3, "ubaddx", 6) != 0)
    1389             :             break;
    1390           4 :           Mnemonic = "uqsax";  // "uqsubaddx"
    1391             :           return;
    1392             :         }
    1393             :         break;
    1394             :       }
    1395             :       break;
    1396             :     case 'v':    // 2 strings to match.
    1397         884 :       if (memcmp(Mnemonic.data()+1, "movq.f", 6) != 0)
    1398             :         break;
    1399           0 :       switch (Mnemonic[7]) {
    1400             :       default: break;
    1401           0 :       case '3':  // 1 string to match.
    1402           0 :         if (Mnemonic[8] != '2')
    1403             :           break;
    1404           0 :         if ((Features & Feature_HasNEON) == Feature_HasNEON)         // "vmovq.f32"
    1405           0 :           Mnemonic = "vmov.f32";
    1406             :         return;
    1407           0 :       case '6':  // 1 string to match.
    1408           0 :         if (Mnemonic[8] != '4')
    1409             :           break;
    1410           0 :         if ((Features & Feature_HasNEON) == Feature_HasNEON)         // "vmovq.f64"
    1411           0 :           Mnemonic = "vmov.f64";
    1412             :         return;
    1413             :       }
    1414             :       break;
    1415             :     }
    1416             :     break;
    1417             :   case 11:       // 2 strings to match.
    1418         153 :     if (memcmp(Mnemonic.data()+0, "vrecpeq.", 8) != 0)
    1419             :       break;
    1420           0 :     switch (Mnemonic[8]) {
    1421             :     default: break;
    1422             :     case 'f':    // 1 string to match.
    1423           0 :       if (memcmp(Mnemonic.data()+9, "32", 2) != 0)
    1424             :         break;
    1425           0 :       if ((Features & Feature_HasNEON) == Feature_HasNEON)   // "vrecpeq.f32"
    1426           0 :         Mnemonic = "vrecpe.f32";
    1427             :       return;
    1428             :     case 'u':    // 1 string to match.
    1429           0 :       if (memcmp(Mnemonic.data()+9, "32", 2) != 0)
    1430             :         break;
    1431           0 :       if ((Features & Feature_HasNEON) == Feature_HasNEON)   // "vrecpeq.u32"
    1432           0 :         Mnemonic = "vrecpe.u32";
    1433             :       return;
    1434             :     }
    1435             :     break;
    1436             :   }
    1437             : }
    1438             : 
    1439             : enum {
    1440             :   Tie0_1_1,
    1441             :   Tie0_2_2,
    1442             :   Tie0_3_3,
    1443             :   Tie0_4_4,
    1444             :   Tie0_4_5,
    1445             :   Tie1_1_1,
    1446             :   Tie1_3_3,
    1447             :   Tie1_4_4,
    1448             :   Tie2_4_4,
    1449             : };
    1450             : 
    1451             : static const uint8_t TiedAsmOperandTable[][3] = {
    1452             :   /* Tie0_1_1 */ { 0, 1, 1 },
    1453             :   /* Tie0_2_2 */ { 0, 2, 2 },
    1454             :   /* Tie0_3_3 */ { 0, 3, 3 },
    1455             :   /* Tie0_4_4 */ { 0, 4, 4 },
    1456             :   /* Tie0_4_5 */ { 0, 4, 5 },
    1457             :   /* Tie1_1_1 */ { 1, 1, 1 },
    1458             :   /* Tie1_3_3 */ { 1, 3, 3 },
    1459             :   /* Tie1_4_4 */ { 1, 4, 4 },
    1460             :   /* Tie2_4_4 */ { 2, 4, 4 },
    1461             : };
    1462             : 
    1463             : namespace {
    1464             : enum OperatorConversionKind {
    1465             :   CVT_Done,
    1466             :   CVT_Reg,
    1467             :   CVT_Tied,
    1468             :   CVT_95_Reg,
    1469             :   CVT_95_addCCOutOperands,
    1470             :   CVT_95_addCondCodeOperands,
    1471             :   CVT_95_addRegShiftedRegOperands,
    1472             :   CVT_95_addModImmOperands,
    1473             :   CVT_95_addModImmNotOperands,
    1474             :   CVT_95_addRegShiftedImmOperands,
    1475             :   CVT_95_addImmOperands,
    1476             :   CVT_95_addT2SOImmNotOperands,
    1477             :   CVT_95_addImm0_95_508s4Operands,
    1478             :   CVT_regSP,
    1479             :   CVT_95_addImm0_95_508s4NegOperands,
    1480             :   CVT_95_addImm0_95_4095NegOperands,
    1481             :   CVT_95_addThumbModImmNeg8_95_255Operands,
    1482             :   CVT_95_addT2SOImmNegOperands,
    1483             :   CVT_95_addModImmNegOperands,
    1484             :   CVT_95_addImm0_95_1020s4Operands,
    1485             :   CVT_95_addThumbModImmNeg1_95_7Operands,
    1486             :   CVT_95_addUnsignedOffset_95_b8s2Operands,
    1487             :   CVT_95_addAdrLabelOperands,
    1488             :   CVT_95_addARMBranchTargetOperands,
    1489             :   CVT_cvtThumbBranches,
    1490             :   CVT_95_addBitfieldOperands,
    1491             :   CVT_imm_95_0,
    1492             :   CVT_95_addThumbBranchTargetOperands,
    1493             :   CVT_95_addCoprocNumOperands,
    1494             :   CVT_95_addCoprocRegOperands,
    1495             :   CVT_95_addProcIFlagsOperands,
    1496             :   CVT_imm_95_20,
    1497             :   CVT_imm_95_12,
    1498             :   CVT_imm_95_15,
    1499             :   CVT_95_addMemBarrierOptOperands,
    1500             :   CVT_imm_95_16,
    1501             :   CVT_95_addFPImmOperands,
    1502             :   CVT_95_addDPRRegListOperands,
    1503             :   CVT_imm_95_1,
    1504             :   CVT_95_addInstSyncBarrierOptOperands,
    1505             :   CVT_95_addITCondCodeOperands,
    1506             :   CVT_95_addITMaskOperands,
    1507             :   CVT_95_addMemNoOffsetOperands,
    1508             :   CVT_95_addAddrMode5Operands,
    1509             :   CVT_95_addCoprocOptionOperands,
    1510             :   CVT_95_addPostIdxImm8s4Operands,
    1511             :   CVT_95_addRegListOperands,
    1512             :   CVT_95_addThumbMemPCOperands,
    1513             :   CVT_95_addConstPoolAsmImmOperands,
    1514             :   CVT_95_addMemThumbRIs4Operands,
    1515             :   CVT_95_addMemThumbRROperands,
    1516             :   CVT_95_addMemThumbSPIOperands,
    1517             :   CVT_95_addMemImm12OffsetOperands,
    1518             :   CVT_95_addMemNegImm8OffsetOperands,
    1519             :   CVT_95_addMemRegOffsetOperands,
    1520             :   CVT_95_addMemUImm12OffsetOperands,
    1521             :   CVT_95_addT2MemRegOffsetOperands,
    1522             :   CVT_95_addMemPCRelImm12Operands,
    1523             :   CVT_95_addMemImm8OffsetOperands,
    1524             :   CVT_95_addAM2OffsetImmOperands,
    1525             :   CVT_95_addPostIdxRegShiftedOperands,
    1526             :   CVT_95_addMemThumbRIs1Operands,
    1527             :   CVT_95_addMemPosImm8OffsetOperands,
    1528             :   CVT_95_addMemImm8s4OffsetOperands,
    1529             :   CVT_95_addAddrMode3Operands,
    1530             :   CVT_95_addAM3OffsetOperands,
    1531             :   CVT_95_addMemImm0_95_1020s4OffsetOperands,
    1532             :   CVT_95_addMemThumbRIs2Operands,
    1533             :   CVT_95_addPostIdxRegOperands,
    1534             :   CVT_95_addPostIdxImm8Operands,
    1535             :   CVT_reg0,
    1536             :   CVT_regCPSR,
    1537             :   CVT_imm_95_14,
    1538             :   CVT_95_addBankedRegOperands,
    1539             :   CVT_95_addMSRMaskOperands,
    1540             :   CVT_cvtThumbMultiply,
    1541             :   CVT_regR8,
    1542             :   CVT_regR0,
    1543             :   CVT_95_addPKHASRImmOperands,
    1544             :   CVT_95_addImm1_95_32Operands,
    1545             :   CVT_imm_95_4,
    1546             :   CVT_imm_95_5,
    1547             :   CVT_95_addShifterImmOperands,
    1548             :   CVT_95_addImm1_95_16Operands,
    1549             :   CVT_95_addRotImmOperands,
    1550             :   CVT_95_addMemTBBOperands,
    1551             :   CVT_95_addMemTBHOperands,
    1552             :   CVT_95_addTraceSyncBarrierOptOperands,
    1553             :   CVT_95_addNEONi16splatNotOperands,
    1554             :   CVT_95_addNEONi32splatNotOperands,
    1555             :   CVT_95_addNEONi16splatOperands,
    1556             :   CVT_95_addNEONi32splatOperands,
    1557             :   CVT_95_addComplexRotationOddOperands,
    1558             :   CVT_95_addComplexRotationEvenOperands,
    1559             :   CVT_95_addVectorIndex64Operands,
    1560             :   CVT_95_addVectorIndex32Operands,
    1561             :   CVT_95_addFBits16Operands,
    1562             :   CVT_95_addFBits32Operands,
    1563             :   CVT_95_addVectorIndex16Operands,
    1564             :   CVT_95_addVectorIndex8Operands,
    1565             :   CVT_95_addVecListOperands,
    1566             :   CVT_95_addDupAlignedMemory16Operands,
    1567             :   CVT_95_addAlignedMemory64or128Operands,
    1568             :   CVT_95_addAlignedMemory64or128or256Operands,
    1569             :   CVT_95_addAlignedMemory64Operands,
    1570             :   CVT_95_addVecListIndexedOperands,
    1571             :   CVT_95_addAlignedMemory16Operands,
    1572             :   CVT_95_addDupAlignedMemory32Operands,
    1573             :   CVT_95_addAlignedMemory32Operands,
    1574             :   CVT_95_addDupAlignedMemoryNoneOperands,
    1575             :   CVT_95_addAlignedMemoryNoneOperands,
    1576             :   CVT_95_addAlignedMemoryOperands,
    1577             :   CVT_95_addDupAlignedMemory64Operands,
    1578             :   CVT_95_addDupAlignedMemory64or128Operands,
    1579             :   CVT_95_addSPRRegListOperands,
    1580             :   CVT_95_addAddrMode5FP16Operands,
    1581             :   CVT_95_addNEONi32vmovOperands,
    1582             :   CVT_95_addNEONvmovi8ReplicateOperands,
    1583             :   CVT_95_addNEONvmovi16ReplicateOperands,
    1584             :   CVT_95_addNEONi32vmovNegOperands,
    1585             :   CVT_95_addNEONvmovi32ReplicateOperands,
    1586             :   CVT_95_addNEONi64splatOperands,
    1587             :   CVT_95_addNEONi8splatOperands,
    1588             :   CVT_95_addNEONinvi8ReplicateOperands,
    1589             :   CVT_imm_95_2,
    1590             :   CVT_imm_95_3,
    1591             :   CVT_NUM_CONVERTERS
    1592             : };
    1593             : 
    1594             : enum InstructionConversionKind {
    1595             :   Convert_NoOperands,
    1596             :   Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1,
    1597             :   Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0,
    1598             :   Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0,
    1599             :   Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0,
    1600             :   Convert__Reg1_2__Reg1_2__ModImmNot1_3__CondCode2_1__CCOut1_0,
    1601             :   Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0,
    1602             :   Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0,
    1603             :   Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0,
    1604             :   Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0,
    1605             :   Convert__Reg1_2__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0,
    1606             :   Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0,
    1607             :   Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0,
    1608             :   Convert__Reg1_2__Reg1_3__ModImmNot1_4__CondCode2_1__CCOut1_0,
    1609             :   Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0,
    1610             :   Convert__Reg1_3__Reg1_4__RegShiftedImm2_5__CondCode2_1__CCOut1_0,
    1611             :   Convert__Reg1_1__Tie0_1_1__Reg1_2__CondCode2_0,
    1612             :   Convert__Reg1_1__Tie0_1_1__Imm0_508s41_2__CondCode2_0,
    1613             :   Convert__regSP__Tie0_1_1__Imm0_508s4Neg1_2__CondCode2_0,
    1614             :   Convert__Reg1_1__Reg1_1__Imm0_40951_2__CondCode2_0,
    1615             :   Convert__Reg1_1__Reg1_1__Imm0_4095Neg1_2__CondCode2_0,
    1616             :   Convert__Reg1_2__CCOut1_0__Reg1_2__Reg1_3__CondCode2_1,
    1617             :   Convert__Reg1_2__CCOut1_0__Tie0_1_1__Imm0_2551_3__CondCode2_1,
    1618             :   Convert__Reg1_2__CCOut1_0__Tie0_3_3__ThumbModImmNeg8_2551_3__CondCode2_1,
    1619             :   Convert__Reg1_2__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0,
    1620             :   Convert__Reg1_2__Reg1_2__T2SOImmNeg1_3__CondCode2_1__CCOut1_0,
    1621             :   Convert__Reg1_2__Reg1_2__ModImmNeg1_3__CondCode2_1__CCOut1_0,
    1622             :   Convert__regSP__Tie0_1_1__Imm0_508s41_3__CondCode2_0,
    1623             :   Convert__regSP__Tie0_1_1__Imm0_508s4Neg1_3__CondCode2_0,
    1624             :   Convert__Reg1_1__Reg1_2__Imm0_1020s41_3__CondCode2_0,
    1625             :   Convert__Reg1_1__Imm0_40951_3__CondCode2_0,
    1626             :   Convert__Reg1_1__Reg1_2__Imm0_40951_3__CondCode2_0,
    1627             :   Convert__Reg1_1__Reg1_2__Imm0_4095Neg1_3__CondCode2_0,
    1628             :   Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0,
    1629             :   Convert__Reg1_3__Reg1_3__T2SOImmNeg1_4__CondCode2_1__CCOut1_0,
    1630             :   Convert__Reg1_2__CCOut1_0__Reg1_3__Reg1_4__CondCode2_1,
    1631             :   Convert__Reg1_2__CCOut1_0__Reg1_3__Imm0_71_4__CondCode2_1,
    1632             :   Convert__Reg1_2__CCOut1_0__Reg1_3__ThumbModImmNeg1_71_4__CondCode2_1,
    1633             :   Convert__Reg1_2__Reg1_3__T2SOImmNeg1_4__CondCode2_1__CCOut1_0,
    1634             :   Convert__Reg1_2__Reg1_3__ModImmNeg1_4__CondCode2_1__CCOut1_0,
    1635             :   Convert__Reg1_3__Reg1_4__T2SOImm1_5__CondCode2_1__CCOut1_0,
    1636             :   Convert__Reg1_3__Reg1_4__T2SOImmNeg1_5__CondCode2_1__CCOut1_0,
    1637             :   Convert__Reg1_1__Reg1_2__T2SOImmNeg1_3__CondCode2_0,
    1638             :   Convert__Reg1_1__UnsignedOffset_b8s21_2__CondCode2_0,
    1639             :   Convert__Reg1_1__Imm1_2__CondCode2_0,
    1640             :   Convert__Reg1_1__AdrLabel1_2__CondCode2_0,
    1641             :   Convert__Reg1_2__Imm1_3__CondCode2_0,
    1642             :   Convert__Reg1_1__Tie0_1_1__Reg1_2,
    1643             :   Convert__Reg1_1__Reg1_2,
    1644             :   Convert__Reg1_2__Reg1_2__T2SOImmNot1_3__CondCode2_1__CCOut1_0,
    1645             :   Convert__Reg1_3__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0,
    1646             :   Convert__Reg1_3__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0,
    1647             :   Convert__Reg1_3__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0,
    1648             :   Convert__Reg1_3__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0,
    1649             :   Convert__Reg1_3__Reg1_4__T2SOImmNot1_5__CondCode2_1__CCOut1_0,
    1650             :   Convert__Reg1_2__CCOut1_0__Reg1_2__ImmThumbSR1_3__CondCode2_1,
    1651             :   Convert__Reg1_2__Reg1_2__ImmThumbSR1_3__CondCode2_1__CCOut1_0,
    1652             :   Convert__Reg1_2__Reg1_2__Imm0_321_3__CondCode2_1__CCOut1_0,
    1653             :   Convert__Reg1_3__Reg1_3__ImmThumbSR1_4__CondCode2_1__CCOut1_0,
    1654             :   Convert__Reg1_2__CCOut1_0__Reg1_3__ImmThumbSR1_4__CondCode2_1,
    1655             :   Convert__Reg1_2__Reg1_3__ImmThumbSR1_4__CondCode2_1__CCOut1_0,
    1656             :   Convert__Reg1_2__Reg1_3__Imm0_321_4__CondCode2_1__CCOut1_0,
    1657             :   Convert__Reg1_3__Reg1_4__ImmThumbSR1_5__CondCode2_1__CCOut1_0,
    1658             :   Convert__ARMBranchTarget1_1__CondCode2_0,
    1659             :   ConvertCustom_cvtThumbBranches,
    1660             :   Convert__Reg1_1__Tie0_1_1__Bitfield1_2__CondCode2_0,
    1661             :   Convert__Reg1_1__Tie0_1_1__Reg1_2__Bitfield1_3__CondCode2_0,
    1662             :   Convert__imm_95_0,
    1663             :   Convert__Imm0_2551_0,
    1664             :   Convert__Imm0_655351_0,
    1665             :   Convert__ARMBranchTarget1_0,
    1666             :   Convert__CondCode2_0__ThumbBranchTarget1_1,
    1667             :   Convert__Reg1_0,
    1668             :   Convert__ThumbBranchTarget1_0,
    1669             :   Convert__Reg1_1__CondCode2_0,
    1670             :   Convert__CondCode2_0__Reg1_1,
    1671             :   Convert__CondCode2_0__ARMBranchTarget1_1,
    1672             :   Convert__CondCode2_0,
    1673             :   Convert__Reg1_0__ThumbBranchTarget1_1,
    1674             :   Convert__CoprocNum1_1__Imm0_151_2__CoprocReg1_3__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0,
    1675             :   Convert__CoprocNum1_0__Imm0_151_1__CoprocReg1_2__CoprocReg1_3__CoprocReg1_4__Imm0_71_5,
    1676             :   Convert__Reg1_1__Reg1_2__CondCode2_0,
    1677             :   Convert__Reg1_1__ModImmNeg1_2__CondCode2_0,
    1678             :   Convert__Reg1_1__T2SOImmNeg1_2__CondCode2_0,
    1679             :   Convert__Reg1_1__RegShiftedImm2_2__CondCode2_0,
    1680             :   Convert__Reg1_1__RegShiftedReg3_2__CondCode2_0,
    1681             :   Convert__Reg1_1__T2SOImm1_2__CondCode2_0,
    1682             :   Convert__Reg1_1__ModImm1_2__CondCode2_0,
    1683             :   Convert__Reg1_2__Reg1_3__CondCode2_0,
    1684             :   Convert__Reg1_2__RegShiftedImm2_3__CondCode2_0,
    1685             :   Convert__Reg1_2__T2SOImm1_3__CondCode2_0,
    1686             :   Convert__Reg1_1__Imm0_2551_2__CondCode2_0,
    1687             :   Convert__Imm0_311_0,
    1688             :   Convert__Imm0_311_1,
    1689             :   Convert__Imm1_0__ProcIFlags1_1,
    1690             :   Convert__Imm1_0__ProcIFlags1_2,
    1691             :   Convert__Imm1_0__ProcIFlags1_1__Imm0_311_2,
    1692             :   Convert__Imm1_0__ProcIFlags1_1__Imm1_2,
    1693             :   Convert__Imm1_0__ProcIFlags1_2__Imm1_3,
    1694             :   Convert__Reg1_0__Reg1_1__Reg1_2,
    1695             :   Convert__imm_95_20__CondCode2_0,
    1696             :   Convert__Imm0_151_1__CondCode2_0,
    1697             :   Convert__imm_95_12,
    1698             :   Convert__imm_95_12__CondCode2_0,
    1699             :   Convert__imm_95_15,
    1700             :   Convert__imm_95_15__CondCode2_0,
    1701             :   Convert__MemBarrierOpt1_0,
    1702             :   Convert__MemBarrierOpt1_1__CondCode2_0,
    1703             :   Convert__imm_95_0__CondCode2_0,
    1704             :   Convert__imm_95_16__CondCode2_0,
    1705             :   Convert__Reg1_1__FPImm1_2__CondCode2_0,
    1706             :   Convert__Reg1_1__Tie0_2_2__CondCode2_0__DPRRegList1_3,
    1707             :   Convert__Reg1_1__CondCode2_0__DPRRegList1_2,
    1708             :   Convert__Reg1_1__Tie0_2_2__Reg1_2__imm_95_1__CondCode2_0,
    1709             :   Convert__Reg1_1__Tie0_2_2__Reg1_2__imm_95_0__CondCode2_0,
    1710             :   Convert__Imm0_2391_1__CondCode2_0,
    1711             :   Convert__Imm0_2391_2__CondCode2_0,
    1712             :   Convert__Imm0_631_0,
    1713             :   Convert__Imm0_655351_1,
    1714             :   Convert__InstSyncBarrierOpt1_0,
    1715             :   Convert__InstSyncBarrierOpt1_1__CondCode2_0,
    1716             :   Convert__ITCondCode1_1__ITMask1_0,
    1717             :   Convert__Reg1_1__MemNoOffset1_2__CondCode2_0,
    1718             :   Convert__Reg1_1__Reg1_2__MemNoOffset1_3__CondCode2_0,
    1719             :   Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0,
    1720             :   Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0,
    1721             :   Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0,
    1722             :   Convert__CoprocNum1_0__CoprocReg1_1__AddrMode52_2,
    1723             :   Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__CoprocOption1_3,
    1724             :   Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__PostIdxImm8s41_3,
    1725             :   Convert__Reg1_1__CondCode2_0__RegList1_2,
    1726             :   Convert__Reg1_2__CondCode2_0__RegList1_3,
    1727             :   Convert__Reg1_1__CondCode2_0__RegList1_3,
    1728             :   Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3,
    1729             :   Convert__Reg1_2__Tie0_3_3__CondCode2_0__RegList1_4,
    1730             :   Convert__Reg1_1__ThumbMemPC1_2__CondCode2_0,
    1731             :   Convert__Reg1_1__ConstPoolAsmImm1_2__CondCode2_0,
    1732             :   Convert__Reg1_1__MemThumbRIs42_2__CondCode2_0,
    1733             :   Convert__Reg1_1__MemThumbRR2_2__CondCode2_0,
    1734             :   Convert__Reg1_1__MemThumbSPI2_2__CondCode2_0,
    1735             :   Convert__Reg1_1__MemImm12Offset2_2__CondCode2_0,
    1736             :   Convert__Reg1_1__MemNegImm8Offset2_2__CondCode2_0,
    1737             :   Convert__Reg1_1__MemRegOffset3_2__CondCode2_0,
    1738             :   Convert__Reg1_1__MemUImm12Offset2_2__CondCode2_0,
    1739             :   Convert__Reg1_1__T2MemRegOffset3_2__CondCode2_0,
    1740             :   Convert__Reg1_1__MemPCRelImm121_2__CondCode2_0,
    1741             :   Convert__Reg1_2__ConstPoolAsmImm1_3__CondCode2_0,
    1742             :   Convert__Reg1_2__MemUImm12Offset2_3__CondCode2_0,
    1743             :   Convert__Reg1_2__T2MemRegOffset3_3__CondCode2_0,
    1744             :   Convert__Reg1_2__MemPCRelImm121_3__CondCode2_0,
    1745             :   Convert__Reg1_1__imm_95_0__MemImm12Offset2_2__CondCode2_0,
    1746             :   Convert__Reg1_1__imm_95_0__MemImm8Offset2_2__CondCode2_0,
    1747             :   Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM2OffsetImm2_3__CondCode2_0,
    1748             :   Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__Imm1_3__CondCode2_0,
    1749             :   Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxRegShifted2_3__CondCode2_0,
    1750             :   Convert__Reg1_1__imm_95_0__MemRegOffset3_2__CondCode2_0,
    1751             :   Convert__Reg1_1__MemThumbRIs12_2__CondCode2_0,
    1752             :   Convert__Reg1_1__MemPosImm8Offset2_2__CondCode2_0,
    1753             :   Convert__Reg1_1__Reg1_2__MemImm8s4Offset2_3__CondCode2_0,
    1754             :   Convert__Reg1_1__Reg1_2__AddrMode33_3__CondCode2_0,
    1755             :   Convert__Reg1_1__Reg1_2__imm_95_0__MemImm8s4Offset2_3__CondCode2_0,
    1756             :   Convert__Reg1_1__Reg1_2__MemNoOffset1_3__Tie2_4_4__Imm1_4__CondCode2_0,
    1757             :   Convert__Reg1_1__Reg1_2__imm_95_0__AddrMode33_3__CondCode2_0,
    1758             :   Convert__Reg1_1__Reg1_2__MemNoOffset1_3__Tie2_4_4__AM3Offset2_4__CondCode2_0,
    1759             :   Convert__Reg1_1__MemImm0_1020s4Offset2_2__CondCode2_0,
    1760             :   Convert__Reg1_1__MemThumbRIs22_2__CondCode2_0,
    1761             :   Convert__Reg1_1__AddrMode33_2__CondCode2_0,
    1762             :   Convert__Reg1_1__imm_95_0__AddrMode33_2__CondCode2_0,
    1763             :   Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM3Offset2_3__CondCode2_0,
    1764             :   Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxReg2_3__CondCode2_0,
    1765             :   Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxImm81_3__CondCode2_0,
    1766             :   Convert__Reg1_2__CCOut1_0__Reg1_2__Imm0_311_3__CondCode2_1,
    1767             :   Convert__Reg1_2__Reg1_2__Imm1_311_3__CondCode2_1__CCOut1_0,
    1768             :   Convert__Reg1_2__Reg1_2__Imm0_311_3__CondCode2_1__CCOut1_0,
    1769             :   Convert__Reg1_3__Reg1_3__Imm1_311_4__CondCode2_1__CCOut1_0,
    1770             :   Convert__Reg1_2__CCOut1_0__Reg1_3__Imm0_311_4__CondCode2_1,
    1771             :   Convert__Reg1_2__Reg1_3__Imm1_311_4__CondCode2_1__CCOut1_0,
    1772             :   Convert__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0,
    1773             :   Convert__Reg1_2__Reg1_3__Imm0_311_4__CondCode2_1__CCOut1_0,
    1774             :   Convert__Reg1_3__Reg1_4__Imm1_311_5__CondCode2_1__CCOut1_0,
    1775             :   Convert__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0,
    1776             :   Convert__CoprocNum1_1__Imm0_71_2__Reg1_3__CoprocReg1_4__CoprocReg1_5__imm_95_0__CondCode2_0,
    1777             :   Convert__CoprocNum1_1__Imm0_71_2__Reg1_3__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0,
    1778             :   Convert__CoprocNum1_0__Imm0_71_1__Reg1_2__CoprocReg1_3__CoprocReg1_4__imm_95_0,
    1779             :   Convert__CoprocNum1_0__Imm0_71_1__Reg1_2__CoprocReg1_3__CoprocReg1_4__Imm0_71_5,
    1780             :   Convert__CoprocNum1_1__Imm0_151_2__Reg1_3__Reg1_4__CoprocReg1_5__CondCode2_0,
    1781             :   Convert__CoprocNum1_0__Imm0_151_1__Reg1_2__Reg1_3__CoprocReg1_4,
    1782             :   Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0,
    1783             :   Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0,
    1784             :   Convert__Reg1_1__Imm256_65535Expr1_2__CondCode2_0,
    1785             :   Convert__Reg1_1__T2SOImm1_2__CondCode2_0__reg0,
    1786             :   Convert__Reg1_1__T2SOImmNot1_2__CondCode2_0__reg0,
    1787             :   Convert__Reg1_1__Imm0_65535Expr1_2__CondCode2_0,
    1788             :   Convert__Reg1_2__CCOut1_0__Imm0_2551_3__CondCode2_1,
    1789             :   Convert__Reg1_2__ModImmNot1_3__CondCode2_1__CCOut1_0,
    1790             :   Convert__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0,
    1791             :   Convert__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0,
    1792             :   Convert__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0,
    1793             :   Convert__Reg1_2__RegShiftedReg3_3__CondCode2_0,
    1794             :   Convert__Reg1_2__T2SOImm1_3__CondCode2_0__reg0,
    1795             :   Convert__Reg1_2__Reg1_3__CondCode2_0__reg0,
    1796             :   Convert__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0,
    1797             :   Convert__Reg1_0__Reg1_1,
    1798             :   Convert__Reg1_0__regCPSR__Imm0_2551_1__imm_95_14__imm_95_0,
    1799             :   Convert__Reg1_1__T2SOImm1_2__CondCode2_0__regCPSR,
    1800             :   Convert__Reg1_1__Reg1_2__CondCode2_0__regCPSR,
    1801             :   Convert__Reg1_2__T2SOImm1_3__CondCode2_0__regCPSR,
    1802             :   Convert__Reg1_2__Reg1_3__CondCode2_0__regCPSR,
    1803             :   Convert__Reg1_1__Tie0_1_1__Imm0_65535Expr1_2__CondCode2_0,
    1804             :   Convert__Reg1_3__CoprocNum1_1__Imm0_71_2__CoprocReg1_4__CoprocReg1_5__imm_95_0__CondCode2_0,
    1805             :   Convert__Reg1_3__CoprocNum1_1__Imm0_71_2__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0,
    1806             :   Convert__Reg1_2__CoprocNum1_0__Imm0_71_1__CoprocReg1_3__CoprocReg1_4__imm_95_0,
    1807             :   Convert__Reg1_2__CoprocNum1_0__Imm0_71_1__CoprocReg1_3__CoprocReg1_4__Imm0_71_5,
    1808             :   Convert__Reg1_3__Reg1_4__CoprocNum1_1__Imm0_151_2__CoprocReg1_5__CondCode2_0,
    1809             :   Convert__Reg1_2__Reg1_3__CoprocNum1_0__Imm0_151_1__CoprocReg1_4,
    1810             :   Convert__Reg1_1__BankedReg1_2__CondCode2_0,
    1811             :   Convert__Reg1_1__MSRMask1_2__CondCode2_0,
    1812             :   Convert__BankedReg1_1__Reg1_2__CondCode2_0,
    1813             :   Convert__MSRMask1_1__Reg1_2__CondCode2_0,
    1814             :   Convert__MSRMask1_1__ModImm1_2__CondCode2_0,
    1815             :   Convert__Reg1_1__Reg1_2__Reg1_1__CondCode2_0,
    1816             :   ConvertCustom_cvtThumbMultiply,
    1817             :   Convert__Reg1_2__CCOut1_0__Reg1_3__CondCode2_1,
    1818             :   Convert__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0,
    1819             :   Convert__Reg1_2__T2SOImmNot1_3__CondCode2_1__CCOut1_0,
    1820             :   Convert__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0,
    1821             :   Convert__Reg1_2__Reg1_3__imm_95_0__CondCode2_1__CCOut1_0,
    1822             :   Convert__regR8__regR8__imm_95_14__imm_95_0,
    1823             :   Convert__regR0__regR0__CondCode2_0__reg0,
    1824             :   Convert__Reg1_1__Reg1_2__Reg1_3__imm_95_0__CondCode2_0,
    1825             :   Convert__Reg1_1__Reg1_2__Reg1_3__PKHLSLImm1_4__CondCode2_0,
    1826             :   Convert__Reg1_1__Reg1_3__Reg1_2__imm_95_0__CondCode2_0,
    1827             :   Convert__Reg1_1__Reg1_2__Reg1_3__PKHASRImm1_4__CondCode2_0,
    1828             :   Convert__MemImm12Offset2_0,
    1829             :   Convert__MemRegOffset3_0,
    1830             :   Convert__Imm1_1__CondCode2_0,
    1831             :   Convert__MemNegImm8Offset2_1__CondCode2_0,
    1832             :   Convert__MemUImm12Offset2_1__CondCode2_0,
    1833             :   Convert__T2MemRegOffset3_1__CondCode2_0,
    1834             :   Convert__MemPCRelImm121_1__CondCode2_0,
    1835             :   Convert__CondCode2_0__RegList1_1,
    1836             :   Convert__regSP__Tie0_1_1__CondCode2_0__RegList1_1,
    1837             :   Convert__regSP__Tie0_1_1__CondCode2_0__RegList1_2,
    1838             :   Convert__Reg1_3__Reg1_3__Imm0_311_4__CondCode2_1__CCOut1_0,
    1839             :   Convert__Reg1_3__Reg1_4__Imm0_311_5__CondCode2_1__CCOut1_0,
    1840             :   Convert__Reg1_1__Reg1_2__Imm0_311_3__Imm1_321_4__CondCode2_0,
    1841             :   Convert__SetEndImm1_0,
    1842             :   Convert__Imm0_11_0,
    1843             :   Convert__imm_95_4__CondCode2_0,
    1844             :   Convert__imm_95_5__CondCode2_0,
    1845             :   Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3,
    1846             :   Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0,
    1847             :   Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__Tie0_1_1__Tie1_1_1__CondCode2_1__CCOut1_0,
    1848             :   Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__Tie0_3_3__Tie1_4_4__CondCode2_1__CCOut1_0,
    1849             :   Convert__Imm0_311_2,
    1850             :   Convert__Imm0_311_1__CondCode2_0,
    1851             :   Convert__Imm0_311_2__CondCode2_0,
    1852             :   Convert__Imm0_311_3__CondCode2_0,
    1853             :   Convert__Reg1_1__Imm1_321_2__Reg1_3__imm_95_0__CondCode2_0,
    1854             :   Convert__Reg1_1__Imm1_321_2__Reg1_3__ShifterImm1_4__CondCode2_0,
    1855             :   Convert__Reg1_1__Imm1_161_2__Reg1_3__CondCode2_0,
    1856             :   Convert__Reg1_1__Reg1_2__Reg1_3__MemNoOffset1_4__CondCode2_0,
    1857             :   Convert__imm_95_0__Reg1_1__MemImm8Offset2_2__CondCode2_0,
    1858             :   Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__Imm1_3__CondCode2_0,
    1859             :   Convert__imm_95_0__Reg1_1__MemImm12Offset2_2__CondCode2_0,
    1860             :   Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__AM2OffsetImm2_3__CondCode2_0,
    1861             :   Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__PostIdxRegShifted2_3__CondCode2_0,
    1862             :   Convert__imm_95_0__Reg1_1__MemRegOffset3_2__CondCode2_0,
    1863             :   Convert__Reg1_1__MemImm8Offset2_2__CondCode2_0,
    1864             :   Convert__imm_95_0__Reg1_1__Reg1_2__MemImm8s4Offset2_3__CondCode2_0,
    1865             :   Convert__MemNoOffset1_3__Reg1_1__Reg1_2__Tie0_4_4__Imm1_4__CondCode2_0,
    1866             :   Convert__imm_95_0__Reg1_1__Reg1_2__AddrMode33_3__CondCode2_0,
    1867             :   Convert__MemNoOffset1_3__Reg1_1__Reg1_2__Tie0_4_4__AM3Offset2_4__CondCode2_0,
    1868             :   Convert__Reg1_1__Reg1_2__MemImm0_1020s4Offset2_3__CondCode2_0,
    1869             :   Convert__imm_95_0__Reg1_1__AddrMode33_2__CondCode2_0,
    1870             :   Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__AM3Offset2_3__CondCode2_0,
    1871             :   Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__PostIdxImm81_3__CondCode2_0,
    1872             :   Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__PostIdxReg2_3__CondCode2_0,
    1873             :   Convert__Imm0_2551_3__CondCode2_0,
    1874             :   Convert__Imm0_2551_1__CondCode2_0,
    1875             :   Convert__Imm24bit1_1__CondCode2_0,
    1876             :   Convert__Reg1_1__Reg1_2__Reg1_3__RotImm1_4__CondCode2_0,
    1877             :   Convert__Reg1_1__Reg1_2__imm_95_0__CondCode2_0,
    1878             :   Convert__Reg1_2__Reg1_3__imm_95_0__CondCode2_0,
    1879             :   Convert__Reg1_1__Reg1_2__RotImm1_3__CondCode2_0,
    1880             :   Convert__Reg1_2__Reg1_3__RotImm1_4__CondCode2_0,
    1881             :   Convert__MemTBB2_1__CondCode2_0,
    1882             :   Convert__MemTBH2_1__CondCode2_0,
    1883             :   Convert__TraceSyncBarrierOpt1_0,
    1884             :   Convert__TraceSyncBarrierOpt1_1__CondCode2_0,
    1885             :   Convert__Reg1_1__Imm0_311_2__Reg1_3__imm_95_0__CondCode2_0,
    1886             :   Convert__Reg1_1__Imm0_311_2__Reg1_3__ShifterImm1_4__CondCode2_0,
    1887             :   Convert__Reg1_1__Imm0_151_2__Reg1_3__CondCode2_0,
    1888             :   Convert__Reg1_2__Tie0_1_1__Reg1_3__Reg1_4__CondCode2_0,
    1889             :   Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_0,
    1890             :   Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_0,
    1891             :   Convert__Reg1_2__Reg1_3__Reg1_2__CondCode2_0,
    1892             :   Convert__Reg1_2__Reg1_4__Reg1_3__CondCode2_0,
    1893             :   Convert__Reg1_1__Reg1_1__Reg1_2__CondCode2_0,
    1894             :   Convert__Reg1_2__NEONi16splatNot1_3__Tie0_3_3__CondCode2_0,
    1895             :   Convert__Reg1_2__NEONi32splatNot1_3__Tie0_3_3__CondCode2_0,
    1896             :   Convert__Reg1_2__NEONi16splat1_3__Tie0_1_1__CondCode2_0,
    1897             :   Convert__Reg1_2__NEONi32splat1_3__Tie0_1_1__CondCode2_0,
    1898             :   Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3__CondCode2_0,
    1899             :   Convert__Reg1_2__Tie0_3_3__Reg1_3__Reg1_4__CondCode2_0,
    1900             :   Convert__Reg1_1__Reg1_2__Reg1_3__ComplexRotationOdd1_4,
    1901             :   Convert__Reg1_2__Reg1_2__CondCode2_0,
    1902             :   Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3__ComplexRotationEven1_4,
    1903             :   Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3__VectorIndex641_4__ComplexRotationEven1_5,
    1904             :   Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3__VectorIndex321_4__ComplexRotationEven1_5,
    1905             :   Convert__Reg1_2__CondCode2_0,
    1906             :   Convert__Reg1_3__Reg1_4__CondCode2_0,
    1907             :   Convert__Reg1_3__Tie0_4_5__FBits161_5__CondCode2_0,
    1908             :   Convert__Reg1_3__Reg1_4__Imm1_5__CondCode2_0,
    1909             :   Convert__Reg1_3__Tie0_4_5__FBits321_5__CondCode2_0,
    1910             :   Convert__Reg1_2__Reg1_3,
    1911             :   Convert__Reg1_2__Reg1_3__VectorIndex161_4__CondCode2_0,
    1912             :   Convert__Reg1_2__Reg1_3__VectorIndex321_4__CondCode2_0,
    1913             :   Convert__Reg1_2__Reg1_3__VectorIndex81_4__CondCode2_0,
    1914             :   Convert__Reg1_2__Reg1_2__Reg1_3__Imm0_151_4__CondCode2_0,
    1915             :   Convert__Reg1_2__Reg1_2__Reg1_3__Imm0_31_4__CondCode2_0,
    1916             :   Convert__Reg1_2__Reg1_2__Reg1_3__Imm0_11_4__CondCode2_0,
    1917             :   Convert__Reg1_2__Reg1_2__Reg1_3__Imm0_71_4__CondCode2_0,
    1918             :   Convert__Reg1_2__Reg1_3__Reg1_4__Imm0_151_5__CondCode2_0,
    1919             :   Convert__Reg1_2__Reg1_3__Reg1_4__Imm0_31_5__CondCode2_0,
    1920             :   Convert__Reg1_2__Reg1_3__Reg1_4__Imm0_11_5__CondCode2_0,
    1921             :   Convert__Reg1_2__Reg1_3__Reg1_4__Imm0_71_5__CondCode2_0,
    1922             :   Convert__VecListDPairAllLanes1_2__DupAlignedMemory162_3__CondCode2_0,
    1923             :   Convert__VecListDPair1_2__AlignedMemory64or1282_3__CondCode2_0,
    1924             :   Convert__VecListFourD1_2__AlignedMemory64or128or2562_3__CondCode2_0,
    1925             :   Convert__VecListOneDAllLanes1_2__DupAlignedMemory162_3__CondCode2_0,
    1926             :   Convert__VecListOneD1_2__AlignedMemory642_3__CondCode2_0,
    1927             :   Convert__VecListOneDHWordIndexed2_2__AlignedMemory162_3__CondCode2_0,
    1928             :   Convert__VecListThreeD1_2__AlignedMemory642_3__CondCode2_0,
    1929             :   Convert__VecListDPairAllLanes1_2__DupAlignedMemory322_3__CondCode2_0,
    1930             :   Convert__VecListOneDAllLanes1_2__DupAlignedMemory322_3__CondCode2_0,
    1931             :   Convert__VecListOneDWordIndexed2_2__AlignedMemory322_3__CondCode2_0,
    1932             :   Convert__VecListDPairAllLanes1_2__DupAlignedMemoryNone2_3__CondCode2_0,
    1933             :   Convert__VecListOneDAllLanes1_2__DupAlignedMemoryNone2_3__CondCode2_0,
    1934             :   Convert__VecListOneDByteIndexed2_2__AlignedMemoryNone2_3__CondCode2_0,
    1935             :   Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory162_3__CondCode2_0,
    1936             :   Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory162_3__Reg1_4__CondCode2_0,
    1937             :   Convert__VecListDPair1_2__imm_95_0__AlignedMemory64or1282_3__CondCode2_0,
    1938             :   Convert__VecListDPair1_2__imm_95_0__AlignedMemory64or1282_3__Reg1_4__CondCode2_0,
    1939             :   Convert__VecListFourD1_2__imm_95_0__AlignedMemory64or128or2562_3__CondCode2_0,
    1940             :   Convert__VecListFourD1_2__imm_95_0__AlignedMemory64or128or2562_3__Reg1_4__CondCode2_0,
    1941             :   Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemory162_3__CondCode2_0,
    1942             :   Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemory162_3__Reg1_4__CondCode2_0,
    1943             :   Convert__VecListOneD1_2__imm_95_0__AlignedMemory642_3__CondCode2_0,
    1944             :   Convert__VecListOneD1_2__imm_95_0__AlignedMemory642_3__Reg1_4__CondCode2_0,
    1945             :   Convert__VecListOneDHWordIndexed2_2__AlignedMemory162_3__Reg1_4__CondCode2_0,
    1946             :   Convert__VecListThreeD1_2__imm_95_0__AlignedMemory642_3__CondCode2_0,
    1947             :   Convert__VecListThreeD1_2__imm_95_0__AlignedMemory642_3__Reg1_4__CondCode2_0,
    1948             :   Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory322_3__CondCode2_0,
    1949             :   Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory322_3__Reg1_4__CondCode2_0,
    1950             :   Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemory322_3__CondCode2_0,
    1951             :   Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemory322_3__Reg1_4__CondCode2_0,
    1952             :   Convert__VecListOneDWordIndexed2_2__AlignedMemory322_3__Reg1_4__CondCode2_0,
    1953             :   Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemoryNone2_3__CondCode2_0,
    1954             :   Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemoryNone2_3__Reg1_4__CondCode2_0,
    1955             :   Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemoryNone2_3__CondCode2_0,
    1956             :   Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemoryNone2_3__Reg1_4__CondCode2_0,
    1957             :   Convert__VecListOneDByteIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0,
    1958             :   Convert__Reg1_3__AlignedMemory2_8__Tie0_1_1__Imm1_5__CondCode2_0,
    1959             :   Convert__Reg1_3__imm_95_0__AlignedMemory2_8__Imm1_9__Tie0_1_1__Imm1_5__CondCode2_0,
    1960             :   Convert__Reg1_3__Reg1_8__Imm1_9__Tie0_1_1__Imm1_5__CondCode2_0,
    1961             :   Convert__VecListDPairSpacedAllLanes1_2__DupAlignedMemory322_3__CondCode2_0,
    1962             :   Convert__VecListDPairSpaced1_2__AlignedMemory64or1282_3__CondCode2_0,
    1963             :   Convert__VecListTwoDHWordIndexed2_2__AlignedMemory322_3__CondCode2_0,
    1964             :   Convert__VecListTwoQHWordIndexed2_2__AlignedMemory322_3__CondCode2_0,
    1965             :   Convert__VecListDPairAllLanes1_2__DupAlignedMemory642_3__CondCode2_0,
    1966             :   Convert__VecListDPairSpacedAllLanes1_2__DupAlignedMemory642_3__CondCode2_0,
    1967             :   Convert__VecListTwoDWordIndexed2_2__AlignedMemory642_3__CondCode2_0,
    1968             :   Convert__VecListTwoQWordIndexed2_2__AlignedMemory642_3__CondCode2_0,
    1969             :   Convert__VecListDPairSpacedAllLanes1_2__DupAlignedMemory162_3__CondCode2_0,
    1970             :   Convert__VecListTwoDByteIndexed2_2__AlignedMemory162_3__CondCode2_0,
    1971             :   Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory322_3__CondCode2_0,
    1972             :   Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory322_3__Reg1_4__CondCode2_0,
    1973             :   Convert__VecListDPairSpaced1_2__imm_95_0__AlignedMemory64or1282_3__CondCode2_0,
    1974             :   Convert__VecListDPairSpaced1_2__imm_95_0__AlignedMemory64or1282_3__Reg1_4__CondCode2_0,
    1975             :   Convert__VecListTwoDHWordIndexed2_2__AlignedMemory322_3__Reg1_4__CondCode2_0,
    1976             :   Convert__VecListTwoQHWordIndexed2_2__AlignedMemory322_3__Reg1_4__CondCode2_0,
    1977             :   Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory642_3__CondCode2_0,
    1978             :   Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory642_3__Reg1_4__CondCode2_0,
    1979             :   Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory642_3__CondCode2_0,
    1980             :   Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory642_3__Reg1_4__CondCode2_0,
    1981             :   Convert__VecListTwoDWordIndexed2_2__AlignedMemory642_3__Reg1_4__CondCode2_0,
    1982             :   Convert__VecListTwoQWordIndexed2_2__AlignedMemory642_3__Reg1_4__CondCode2_0,
    1983             :   Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory162_3__CondCode2_0,
    1984             :   Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory162_3__Reg1_4__CondCode2_0,
    1985             :   Convert__VecListTwoDByteIndexed2_2__AlignedMemory162_3__Reg1_4__CondCode2_0,
    1986             :   Convert__VecListThreeDAllLanes1_2__DupAlignedMemoryNone2_3__CondCode2_0,
    1987             :   Convert__VecListThreeDHWordIndexed2_2__AlignedMemoryNone2_3__CondCode2_0,
    1988             :   Convert__VecListThreeQAllLanes1_2__DupAlignedMemoryNone2_3__CondCode2_0,
    1989             :   Convert__VecListThreeQ1_2__AlignedMemory642_3__CondCode2_0,
    1990             :   Convert__VecListThreeQHWordIndexed2_2__AlignedMemoryNone2_3__CondCode2_0,
    1991             :   Convert__VecListThreeDWordIndexed2_2__AlignedMemoryNone2_3__CondCode2_0,
    1992             :   Convert__VecListThreeQWordIndexed2_2__AlignedMemoryNone2_3__CondCode2_0,
    1993             :   Convert__VecListThreeDByteIndexed2_2__AlignedMemoryNone2_3__CondCode2_0,
    1994             :   Convert__VecListThreeDAllLanes1_2__DupAlignedMemoryNone2_3__Reg1_4__CondCode2_0,
    1995             :   Convert__VecListThreeD1_2__AlignedMemory642_3__Reg1_4__CondCode2_0,
    1996             :   Convert__VecListThreeDHWordIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0,
    1997             :   Convert__VecListThreeQAllLanes1_2__DupAlignedMemoryNone2_3__Reg1_4__CondCode2_0,
    1998             :   Convert__VecListThreeQ1_2__AlignedMemory642_3__Reg1_4__CondCode2_0,
    1999             :   Convert__VecListThreeQHWordIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0,
    2000             :   Convert__VecListThreeDWordIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0,
    2001             :   Convert__VecListThreeQWordIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0,
    2002             :   Convert__VecListThreeDByteIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0,
    2003             :   Convert__Reg1_3__Reg1_4__Reg1_5__AlignedMemory2_7__CondCode2_0,
    2004             :   Convert__Reg1_3__Reg1_4__Reg1_5__imm_95_0__AlignedMemory2_7__Imm1_8__CondCode2_0,
    2005             :   Convert__Reg1_3__Reg1_6__Reg1_9__AlignedMemory2_13__CondCode2_0,
    2006             :   Convert__Reg1_3__Reg1_6__Reg1_9__imm_95_0__DupAlignedMemory642_13__Imm1_14__CondCode2_0,
    2007             :   Convert__VecListFourDAllLanes1_2__DupAlignedMemory642_3__CondCode2_0,
    2008             :   Convert__VecListFourDHWordIndexed2_2__AlignedMemory642_3__CondCode2_0,
    2009             :   Convert__VecListFourQAllLanes1_2__DupAlignedMemory642_3__CondCode2_0,
    2010             :   Convert__VecListFourQ1_2__AlignedMemory64or128or2562_3__CondCode2_0,
    2011             :   Convert__VecListFourQHWordIndexed2_2__AlignedMemory642_3__CondCode2_0,
    2012             :   Convert__VecListFourDAllLanes1_2__DupAlignedMemory64or1282_3__CondCode2_0,
    2013             :   Convert__VecListFourDWordIndexed2_2__AlignedMemory64or1282_3__CondCode2_0,
    2014             :   Convert__VecListFourQAllLanes1_2__DupAlignedMemory64or1282_3__CondCode2_0,
    2015             :   Convert__VecListFourQWordIndexed2_2__AlignedMemory64or1282_3__CondCode2_0,
    2016             :   Convert__VecListFourDAllLanes1_2__DupAlignedMemory322_3__CondCode2_0,
    2017             :   Convert__VecListFourDByteIndexed2_2__AlignedMemory322_3__CondCode2_0,
    2018             :   Convert__VecListFourQAllLanes1_2__DupAlignedMemory322_3__CondCode2_0,
    2019             :   Convert__VecListFourDAllLanes1_2__DupAlignedMemory642_3__Reg1_4__CondCode2_0,
    2020             :   Convert__VecListFourD1_2__AlignedMemory64or128or2562_3__Reg1_4__CondCode2_0,
    2021             :   Convert__VecListFourDHWordIndexed2_2__AlignedMemory642_3__Reg1_4__CondCode2_0,
    2022             :   Convert__VecListFourQAllLanes1_2__DupAlignedMemory642_3__Reg1_4__CondCode2_0,
    2023             :   Convert__VecListFourQ1_2__AlignedMemory64or128or2562_3__Reg1_4__CondCode2_0,
    2024             :   Convert__VecListFourQHWordIndexed2_2__AlignedMemory642_3__Reg1_4__CondCode2_0,
    2025             :   Convert__VecListFourDAllLanes1_2__DupAlignedMemory64or1282_3__Reg1_4__CondCode2_0,
    2026             :   Convert__VecListFourDWordIndexed2_2__AlignedMemory64or1282_3__Reg1_4__CondCode2_0,
    2027             :   Convert__VecListFourQAllLanes1_2__DupAlignedMemory64or1282_3__Reg1_4__CondCode2_0,
    2028             :   Convert__VecListFourQWordIndexed2_2__AlignedMemory64or1282_3__Reg1_4__CondCode2_0,
    2029             :   Convert__VecListFourDAllLanes1_2__DupAlignedMemory322_3__Reg1_4__CondCode2_0,
    2030             :   Convert__VecListFourDByteIndexed2_2__AlignedMemory322_3__Reg1_4__CondCode2_0,
    2031             :   Convert__VecListFourQAllLanes1_2__DupAlignedMemory322_3__Reg1_4__CondCode2_0,
    2032             :   Convert__Reg1_3__Reg1_4__Reg1_5__Reg1_6__AlignedMemory2_8__CondCode2_0,
    2033             :   Convert__Reg1_3__Reg1_4__Reg1_5__Reg1_6__imm_95_0__AlignedMemory2_8__Imm1_9__CondCode2_0,
    2034             :   Convert__Reg1_3__Reg1_6__Reg1_9__Reg1_12__AlignedMemory2_16__CondCode2_0,
    2035             :   Convert__Reg1_3__Reg1_6__Reg1_9__Reg1_12__imm_95_0__AlignedMemory2_16__Imm1_17__CondCode2_0,
    2036             :   Convert__Reg1_1__Tie0_2_2__CondCode2_0__SPRRegList1_3,
    2037             :   Convert__Reg1_1__CondCode2_0__SPRRegList1_2,
    2038             :   Convert__Reg1_1__AddrMode52_2__CondCode2_0,
    2039             :   Convert__Reg1_2__AddrMode5FP162_3__CondCode2_0,
    2040             :   Convert__Reg1_2__AddrMode52_3__CondCode2_0,
    2041             :   Convert__Reg1_1__Reg1_2__Reg1_3,
    2042             :   Convert__Reg1_2__Tie0_1_1__Reg1_3__Reg1_4__VectorIndex321_5__CondCode2_0,
    2043             :   Convert__Reg1_2__Tie0_1_1__Reg1_3__Reg1_4__VectorIndex161_5__CondCode2_0,
    2044             :   Convert__Reg1_1__Reg1_2__Reg1_2__CondCode2_0,
    2045             :   Convert__Reg1_2__FPImm1_3__CondCode2_0,
    2046             :   Convert__Reg1_2__NEONi32vmov1_3__CondCode2_0,
    2047             :   Convert__Reg1_2__NEONi16vmovi8Replicate1_3__CondCode2_0,
    2048             :   Convert__Reg1_2__NEONi16splat1_3__CondCode2_0,
    2049             :   Convert__Reg1_2__NEONi32vmovi8Replicate1_3__CondCode2_0,
    2050             :   Convert__Reg1_2__NEONi32vmovi16Replicate1_3__CondCode2_0,
    2051             :   Convert__Reg1_2__NEONi32vmovNeg1_3__CondCode2_0,
    2052             :   Convert__Reg1_2__NEONi64vmovi8Replicate1_3__CondCode2_0,
    2053             :   Convert__Reg1_2__NEONi64vmovi16Replicate1_3__CondCode2_0,
    2054             :   Convert__Reg1_2__NEONi64vmovi32Replicate1_3__CondCode2_0,
    2055             :   Convert__Reg1_2__NEONi64splat1_3__CondCode2_0,
    2056             :   Convert__Reg1_2__NEONi8splat1_3__CondCode2_0,
    2057             :   Convert__Reg1_2__Reg1_3__Reg1_3__CondCode2_0,
    2058             :   Convert__Reg1_2__Tie0_1_1__Reg1_4__VectorIndex161_3__CondCode2_0,
    2059             :   Convert__Reg1_2__Tie0_1_1__Reg1_4__VectorIndex321_3__CondCode2_0,
    2060             :   Convert__Reg1_2__Tie0_1_1__Reg1_4__VectorIndex81_3__CondCode2_0,
    2061             :   Convert__Reg1_2__Reg1_2__Reg1_3__VectorIndex321_4__CondCode2_0,
    2062             :   Convert__Reg1_2__Reg1_2__Reg1_3__VectorIndex161_4__CondCode2_0,
    2063             :   Convert__Reg1_2__Reg1_3__Reg1_4__VectorIndex321_5__CondCode2_0,
    2064             :   Convert__Reg1_2__Reg1_3__Reg1_4__VectorIndex161_5__CondCode2_0,
    2065             :   Convert__Reg1_2__NEONi16invi8Replicate1_3__CondCode2_0,
    2066             :   Convert__Reg1_2__NEONi32invi8Replicate1_3__CondCode2_0,
    2067             :   Convert__Reg1_2__NEONi64invi8Replicate1_3__CondCode2_0,
    2068             :   Convert__Reg1_2__Tie0_1_1__Reg1_3__CondCode2_0,
    2069             :   Convert__regSP__Tie0_1_1__CondCode2_0__DPRRegList1_1,
    2070             :   Convert__regSP__Tie0_1_1__CondCode2_0__SPRRegList1_1,
    2071             :   Convert__regSP__Tie0_1_1__CondCode2_0__DPRRegList1_2,
    2072             :   Convert__regSP__Tie0_1_1__CondCode2_0__SPRRegList1_2,
    2073             :   Convert__Reg1_2__Reg1_3__ShrImm81_4__CondCode2_0,
    2074             :   Convert__Reg1_2__Reg1_3__ShrImm161_4__CondCode2_0,
    2075             :   Convert__Reg1_2__Reg1_3__ShrImm321_4__CondCode2_0,
    2076             :   Convert__Reg1_2__Reg1_2__Imm1_3__CondCode2_0,
    2077             :   Convert__Reg1_2__Reg1_3__Imm1_4__CondCode2_0,
    2078             :   Convert__Reg1_2__Reg1_2__ShrImm161_3__CondCode2_0,
    2079             :   Convert__Reg1_2__Reg1_2__ShrImm321_3__CondCode2_0,
    2080             :   Convert__Reg1_2__Reg1_2__ShrImm641_3__CondCode2_0,
    2081             :   Convert__Reg1_2__Reg1_2__ShrImm81_3__CondCode2_0,
    2082             :   Convert__Reg1_2__Reg1_3__ShrImm641_4__CondCode2_0,
    2083             :   Convert__Reg1_2__Tie0_1_1__Reg1_2__ShrImm161_3__CondCode2_0,
    2084             :   Convert__Reg1_2__Tie0_1_1__Reg1_2__ShrImm321_3__CondCode2_0,
    2085             :   Convert__Reg1_2__Tie0_1_1__Reg1_2__ShrImm641_3__CondCode2_0,
    2086             :   Convert__Reg1_2__Tie0_1_1__Reg1_2__ShrImm81_3__CondCode2_0,
    2087             :   Convert__Reg1_2__Tie0_1_1__Reg1_3__ShrImm161_4__CondCode2_0,
    2088             :   Convert__Reg1_2__Tie0_1_1__Reg1_3__ShrImm321_4__CondCode2_0,
    2089             :   Convert__Reg1_2__Tie0_1_1__Reg1_3__ShrImm641_4__CondCode2_0,
    2090             :   Convert__Reg1_2__Tie0_1_1__Reg1_3__ShrImm81_4__CondCode2_0,
    2091             :   Convert__Reg1_1__Tie0_2_2__Reg1_2__Reg1_3,
    2092             :   Convert__Reg1_1__Tie0_2_2__Reg1_2__Reg1_3__VectorIndex321_4,
    2093             :   Convert__Reg1_2__Reg1_3__Imm1_151_4__CondCode2_0,
    2094             :   Convert__Reg1_2__Reg1_3__Imm1_311_4__CondCode2_0,
    2095             :   Convert__Reg1_2__Reg1_3__Imm1_71_4__CondCode2_0,
    2096             :   Convert__Reg1_2__Reg1_3__Imm161_4__CondCode2_0,
    2097             :   Convert__Reg1_2__Reg1_3__Imm321_4__CondCode2_0,
    2098             :   Convert__Reg1_2__Reg1_3__Imm81_4__CondCode2_0,
    2099             :   Convert__Reg1_2__Tie0_1_1__Reg1_2__Imm1_3__CondCode2_0,
    2100             :   Convert__Reg1_2__Tie0_1_1__Reg1_3__Imm1_4__CondCode2_0,
    2101             :   Convert__AlignedMemory64or1282_3__VecListDPair1_2__CondCode2_0,
    2102             :   Convert__AlignedMemory64or128or2562_3__VecListFourD1_2__CondCode2_0,
    2103             :   Convert__AlignedMemory642_3__VecListOneD1_2__CondCode2_0,
    2104             :   Convert__AlignedMemory642_3__VecListThreeD1_2__CondCode2_0,
    2105             :   Convert__imm_95_0__AlignedMemory64or1282_3__VecListDPair1_2__CondCode2_0,
    2106             :   Convert__imm_95_0__AlignedMemory64or1282_3__Reg1_4__VecListDPair1_2__CondCode2_0,
    2107             :   Convert__imm_95_0__AlignedMemory64or128or2562_3__VecListFourD1_2__CondCode2_0,
    2108             :   Convert__imm_95_0__AlignedMemory64or128or2562_3__Reg1_4__VecListFourD1_2__CondCode2_0,
    2109             :   Convert__imm_95_0__AlignedMemory642_3__VecListOneD1_2__CondCode2_0,
    2110             :   Convert__imm_95_0__AlignedMemory642_3__Reg1_4__VecListOneD1_2__CondCode2_0,
    2111             :   Convert__imm_95_0__AlignedMemory642_3__VecListThreeD1_2__CondCode2_0,
    2112             :   Convert__imm_95_0__AlignedMemory642_3__Reg1_4__VecListThreeD1_2__CondCode2_0,
    2113             :   Convert__AlignedMemory2_8__Reg1_3__Imm1_5__CondCode2_0,
    2114             :   Convert__imm_95_0__AlignedMemory2_8__Imm1_9__Reg1_3__Imm1_5__CondCode2_0,
    2115             :   Convert__Reg1_8__Imm1_9__Reg1_3__Imm1_5__CondCode2_0,
    2116             :   Convert__imm_95_0__Reg1_8__Imm1_9__Imm1_10__Reg1_3__Imm1_5__CondCode2_0,
    2117             :   Convert__AlignedMemory64or1282_3__VecListDPairSpaced1_2__CondCode2_0,
    2118             :   Convert__imm_95_0__AlignedMemory64or1282_3__VecListDPairSpaced1_2__CondCode2_0,
    2119             :   Convert__imm_95_0__AlignedMemory64or1282_3__Reg1_4__VecListDPairSpaced1_2__CondCode2_0,
    2120             :   Convert__AlignedMemory2_7__Reg1_3__Reg1_4__Reg1_5__CondCode2_0,
    2121             :   Convert__imm_95_0__AlignedMemory2_7__Imm1_8__Reg1_3__Reg1_4__Reg1_5__CondCode2_0,
    2122             :   Convert__AlignedMemory2_8__Reg1_3__Reg1_4__Reg1_5__Reg1_6__CondCode2_0,
    2123             :   Convert__imm_95_0__AlignedMemory2_8__Imm1_9__Reg1_3__Reg1_4__Reg1_5__Reg1_6__CondCode2_0,
    2124             :   Convert__Reg1_1__Reg1_2__Tie0_1_1__Tie1_1_1__CondCode2_0,
    2125             :   Convert__Reg1_2__Reg1_3__Tie0_3_3__Tie1_4_4__CondCode2_0,
    2126             :   Convert__Reg1_2__VecListDPair1_3__Reg1_4__CondCode2_0,
    2127             :   Convert__Reg1_2__VecListFourD1_3__Reg1_4__CondCode2_0,
    2128             :   Convert__Reg1_2__VecListOneD1_3__Reg1_4__CondCode2_0,
    2129             :   Convert__Reg1_2__VecListThreeD1_3__Reg1_4__CondCode2_0,
    2130             :   Convert__Reg1_2__Tie0_1_1__VecListDPair1_3__Reg1_4__CondCode2_0,
    2131             :   Convert__Reg1_2__Tie0_1_1__VecListFourD1_3__Reg1_4__CondCode2_0,
    2132             :   Convert__Reg1_2__Tie0_1_1__VecListOneD1_3__Reg1_4__CondCode2_0,
    2133             :   Convert__Reg1_2__Tie0_1_1__VecListThreeD1_3__Reg1_4__CondCode2_0,
    2134             :   Convert__Reg1_2__Reg1_3__Tie0_1_1__Tie1_1_1__CondCode2_0,
    2135             :   Convert__imm_95_2__CondCode2_0,
    2136             :   Convert__imm_95_3__CondCode2_0,
    2137             :   Convert__imm_95_1__CondCode2_0,
    2138             :   CVT_NUM_SIGNATURES
    2139             : };
    2140             : 
    2141             : } // end anonymous namespace
    2142             : 
    2143             : static const uint8_t ConversionTable[CVT_NUM_SIGNATURES][17] = {
    2144             :   // Convert_NoOperands
    2145             :   { CVT_Done },
    2146             :   // Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1
    2147             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2148             :   // Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0
    2149             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addRegShiftedRegOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2150             :   // Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0
    2151             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2152             :   // Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0
    2153             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addModImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2154             :   // Convert__Reg1_2__Reg1_2__ModImmNot1_3__CondCode2_1__CCOut1_0
    2155             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addModImmNotOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2156             :   // Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0
    2157             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addRegShiftedImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2158             :   // Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0
    2159             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2160             :   // Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0
    2161             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addRegShiftedImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2162             :   // Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0
    2163             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2164             :   // Convert__Reg1_2__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0
    2165             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addT2SOImmNotOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2166             :   // Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0
    2167             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addRegShiftedRegOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2168             :   // Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0
    2169             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addModImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2170             :   // Convert__Reg1_2__Reg1_3__ModImmNot1_4__CondCode2_1__CCOut1_0
    2171             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addModImmNotOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2172             :   // Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0
    2173             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2174             :   // Convert__Reg1_3__Reg1_4__RegShiftedImm2_5__CondCode2_1__CCOut1_0
    2175             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addRegShiftedImmOperands, 6, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2176             :   // Convert__Reg1_1__Tie0_1_1__Reg1_2__CondCode2_0
    2177             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2178             :   // Convert__Reg1_1__Tie0_1_1__Imm0_508s41_2__CondCode2_0
    2179             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_addImm0_95_508s4Operands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2180             :   // Convert__regSP__Tie0_1_1__Imm0_508s4Neg1_2__CondCode2_0
    2181             :   { CVT_regSP, 0, CVT_Tied, Tie0_1_1, CVT_95_addImm0_95_508s4NegOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2182             :   // Convert__Reg1_1__Reg1_1__Imm0_40951_2__CondCode2_0
    2183             :   { CVT_95_Reg, 2, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2184             :   // Convert__Reg1_1__Reg1_1__Imm0_4095Neg1_2__CondCode2_0
    2185             :   { CVT_95_Reg, 2, CVT_95_Reg, 2, CVT_95_addImm0_95_4095NegOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2186             :   // Convert__Reg1_2__CCOut1_0__Reg1_2__Reg1_3__CondCode2_1
    2187             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2188             :   // Convert__Reg1_2__CCOut1_0__Tie0_1_1__Imm0_2551_3__CondCode2_1
    2189             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_Tied, Tie0_1_1, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2190             :   // Convert__Reg1_2__CCOut1_0__Tie0_3_3__ThumbModImmNeg8_2551_3__CondCode2_1
    2191             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_Tied, Tie0_3_3, CVT_95_addThumbModImmNeg8_95_255Operands, 4, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2192             :   // Convert__Reg1_2__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0
    2193             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2194             :   // Convert__Reg1_2__Reg1_2__T2SOImmNeg1_3__CondCode2_1__CCOut1_0
    2195             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addT2SOImmNegOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2196             :   // Convert__Reg1_2__Reg1_2__ModImmNeg1_3__CondCode2_1__CCOut1_0
    2197             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addModImmNegOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2198             :   // Convert__regSP__Tie0_1_1__Imm0_508s41_3__CondCode2_0
    2199             :   { CVT_regSP, 0, CVT_Tied, Tie0_1_1, CVT_95_addImm0_95_508s4Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2200             :   // Convert__regSP__Tie0_1_1__Imm0_508s4Neg1_3__CondCode2_0
    2201             :   { CVT_regSP, 0, CVT_Tied, Tie0_1_1, CVT_95_addImm0_95_508s4NegOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2202             :   // Convert__Reg1_1__Reg1_2__Imm0_1020s41_3__CondCode2_0
    2203             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addImm0_95_1020s4Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2204             :   // Convert__Reg1_1__Imm0_40951_3__CondCode2_0
    2205             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2206             :   // Convert__Reg1_1__Reg1_2__Imm0_40951_3__CondCode2_0
    2207             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2208             :   // Convert__Reg1_1__Reg1_2__Imm0_4095Neg1_3__CondCode2_0
    2209             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addImm0_95_4095NegOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2210             :   // Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0
    2211             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2212             :   // Convert__Reg1_3__Reg1_3__T2SOImmNeg1_4__CondCode2_1__CCOut1_0
    2213             :   { CVT_95_Reg, 4, CVT_95_Reg, 4, CVT_95_addT2SOImmNegOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2214             :   // Convert__Reg1_2__CCOut1_0__Reg1_3__Reg1_4__CondCode2_1
    2215             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2216             :   // Convert__Reg1_2__CCOut1_0__Reg1_3__Imm0_71_4__CondCode2_1
    2217             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2218             :   // Convert__Reg1_2__CCOut1_0__Reg1_3__ThumbModImmNeg1_71_4__CondCode2_1
    2219             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_95_Reg, 4, CVT_95_addThumbModImmNeg1_95_7Operands, 5, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2220             :   // Convert__Reg1_2__Reg1_3__T2SOImmNeg1_4__CondCode2_1__CCOut1_0
    2221             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addT2SOImmNegOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2222             :   // Convert__Reg1_2__Reg1_3__ModImmNeg1_4__CondCode2_1__CCOut1_0
    2223             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addModImmNegOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2224             :   // Convert__Reg1_3__Reg1_4__T2SOImm1_5__CondCode2_1__CCOut1_0
    2225             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2226             :   // Convert__Reg1_3__Reg1_4__T2SOImmNeg1_5__CondCode2_1__CCOut1_0
    2227             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addT2SOImmNegOperands, 6, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2228             :   // Convert__Reg1_1__Reg1_2__T2SOImmNeg1_3__CondCode2_0
    2229             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addT2SOImmNegOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2230             :   // Convert__Reg1_1__UnsignedOffset_b8s21_2__CondCode2_0
    2231             :   { CVT_95_Reg, 2, CVT_95_addUnsignedOffset_95_b8s2Operands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2232             :   // Convert__Reg1_1__Imm1_2__CondCode2_0
    2233             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2234             :   // Convert__Reg1_1__AdrLabel1_2__CondCode2_0
    2235             :   { CVT_95_Reg, 2, CVT_95_addAdrLabelOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2236             :   // Convert__Reg1_2__Imm1_3__CondCode2_0
    2237             :   { CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2238             :   // Convert__Reg1_1__Tie0_1_1__Reg1_2
    2239             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_Done },
    2240             :   // Convert__Reg1_1__Reg1_2
    2241             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_Done },
    2242             :   // Convert__Reg1_2__Reg1_2__T2SOImmNot1_3__CondCode2_1__CCOut1_0
    2243             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addT2SOImmNotOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2244             :   // Convert__Reg1_3__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0
    2245             :   { CVT_95_Reg, 4, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2246             :   // Convert__Reg1_3__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0
    2247             :   { CVT_95_Reg, 4, CVT_95_Reg, 4, CVT_95_addRegShiftedImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2248             :   // Convert__Reg1_3__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0
    2249             :   { CVT_95_Reg, 4, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2250             :   // Convert__Reg1_3__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0
    2251             :   { CVT_95_Reg, 4, CVT_95_Reg, 4, CVT_95_addT2SOImmNotOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2252             :   // Convert__Reg1_3__Reg1_4__T2SOImmNot1_5__CondCode2_1__CCOut1_0
    2253             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addT2SOImmNotOperands, 6, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2254             :   // Convert__Reg1_2__CCOut1_0__Reg1_2__ImmThumbSR1_3__CondCode2_1
    2255             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2256             :   // Convert__Reg1_2__Reg1_2__ImmThumbSR1_3__CondCode2_1__CCOut1_0
    2257             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2258             :   // Convert__Reg1_2__Reg1_2__Imm0_321_3__CondCode2_1__CCOut1_0
    2259             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2260             :   // Convert__Reg1_3__Reg1_3__ImmThumbSR1_4__CondCode2_1__CCOut1_0
    2261             :   { CVT_95_Reg, 4, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2262             :   // Convert__Reg1_2__CCOut1_0__Reg1_3__ImmThumbSR1_4__CondCode2_1
    2263             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2264             :   // Convert__Reg1_2__Reg1_3__ImmThumbSR1_4__CondCode2_1__CCOut1_0
    2265             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2266             :   // Convert__Reg1_2__Reg1_3__Imm0_321_4__CondCode2_1__CCOut1_0
    2267             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2268             :   // Convert__Reg1_3__Reg1_4__ImmThumbSR1_5__CondCode2_1__CCOut1_0
    2269             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2270             :   // Convert__ARMBranchTarget1_1__CondCode2_0
    2271             :   { CVT_95_addARMBranchTargetOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2272             :   // ConvertCustom_cvtThumbBranches
    2273             :   { CVT_cvtThumbBranches, 0, CVT_Done },
    2274             :   // Convert__Reg1_1__Tie0_1_1__Bitfield1_2__CondCode2_0
    2275             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_addBitfieldOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2276             :   // Convert__Reg1_1__Tie0_1_1__Reg1_2__Bitfield1_3__CondCode2_0
    2277             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_addBitfieldOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2278             :   // Convert__imm_95_0
    2279             :   { CVT_imm_95_0, 0, CVT_Done },
    2280             :   // Convert__Imm0_2551_0
    2281             :   { CVT_95_addImmOperands, 1, CVT_Done },
    2282             :   // Convert__Imm0_655351_0
    2283             :   { CVT_95_addImmOperands, 1, CVT_Done },
    2284             :   // Convert__ARMBranchTarget1_0
    2285             :   { CVT_95_addARMBranchTargetOperands, 1, CVT_Done },
    2286             :   // Convert__CondCode2_0__ThumbBranchTarget1_1
    2287             :   { CVT_95_addCondCodeOperands, 1, CVT_95_addThumbBranchTargetOperands, 2, CVT_Done },
    2288             :   // Convert__Reg1_0
    2289             :   { CVT_95_Reg, 1, CVT_Done },
    2290             :   // Convert__ThumbBranchTarget1_0
    2291             :   { CVT_95_addThumbBranchTargetOperands, 1, CVT_Done },
    2292             :   // Convert__Reg1_1__CondCode2_0
    2293             :   { CVT_95_Reg, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2294             :   // Convert__CondCode2_0__Reg1_1
    2295             :   { CVT_95_addCondCodeOperands, 1, CVT_95_Reg, 2, CVT_Done },
    2296             :   // Convert__CondCode2_0__ARMBranchTarget1_1
    2297             :   { CVT_95_addCondCodeOperands, 1, CVT_95_addARMBranchTargetOperands, 2, CVT_Done },
    2298             :   // Convert__CondCode2_0
    2299             :   { CVT_95_addCondCodeOperands, 1, CVT_Done },
    2300             :   // Convert__Reg1_0__ThumbBranchTarget1_1
    2301             :   { CVT_95_Reg, 1, CVT_95_addThumbBranchTargetOperands, 2, CVT_Done },
    2302             :   // Convert__CoprocNum1_1__Imm0_151_2__CoprocReg1_3__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0
    2303             :   { CVT_95_addCoprocNumOperands, 2, CVT_95_addImmOperands, 3, CVT_95_addCoprocRegOperands, 4, CVT_95_addCoprocRegOperands, 5, CVT_95_addCoprocRegOperands, 6, CVT_95_addImmOperands, 7, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2304             :   // Convert__CoprocNum1_0__Imm0_151_1__CoprocReg1_2__CoprocReg1_3__CoprocReg1_4__Imm0_71_5
    2305             :   { CVT_95_addCoprocNumOperands, 1, CVT_95_addImmOperands, 2, CVT_95_addCoprocRegOperands, 3, CVT_95_addCoprocRegOperands, 4, CVT_95_addCoprocRegOperands, 5, CVT_95_addImmOperands, 6, CVT_Done },
    2306             :   // Convert__Reg1_1__Reg1_2__CondCode2_0
    2307             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2308             :   // Convert__Reg1_1__ModImmNeg1_2__CondCode2_0
    2309             :   { CVT_95_Reg, 2, CVT_95_addModImmNegOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2310             :   // Convert__Reg1_1__T2SOImmNeg1_2__CondCode2_0
    2311             :   { CVT_95_Reg, 2, CVT_95_addT2SOImmNegOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2312             :   // Convert__Reg1_1__RegShiftedImm2_2__CondCode2_0
    2313             :   { CVT_95_Reg, 2, CVT_95_addRegShiftedImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2314             :   // Convert__Reg1_1__RegShiftedReg3_2__CondCode2_0
    2315             :   { CVT_95_Reg, 2, CVT_95_addRegShiftedRegOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2316             :   // Convert__Reg1_1__T2SOImm1_2__CondCode2_0
    2317             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2318             :   // Convert__Reg1_1__ModImm1_2__CondCode2_0
    2319             :   { CVT_95_Reg, 2, CVT_95_addModImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2320             :   // Convert__Reg1_2__Reg1_3__CondCode2_0
    2321             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2322             :   // Convert__Reg1_2__RegShiftedImm2_3__CondCode2_0
    2323             :   { CVT_95_Reg, 3, CVT_95_addRegShiftedImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2324             :   // Convert__Reg1_2__T2SOImm1_3__CondCode2_0
    2325             :   { CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2326             :   // Convert__Reg1_1__Imm0_2551_2__CondCode2_0
    2327             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2328             :   // Convert__Imm0_311_0
    2329             :   { CVT_95_addImmOperands, 1, CVT_Done },
    2330             :   // Convert__Imm0_311_1
    2331             :   { CVT_95_addImmOperands, 2, CVT_Done },
    2332             :   // Convert__Imm1_0__ProcIFlags1_1
    2333             :   { CVT_95_addImmOperands, 1, CVT_95_addProcIFlagsOperands, 2, CVT_Done },
    2334             :   // Convert__Imm1_0__ProcIFlags1_2
    2335             :   { CVT_95_addImmOperands, 1, CVT_95_addProcIFlagsOperands, 3, CVT_Done },
    2336             :   // Convert__Imm1_0__ProcIFlags1_1__Imm0_311_2
    2337             :   { CVT_95_addImmOperands, 1, CVT_95_addProcIFlagsOperands, 2, CVT_95_addImmOperands, 3, CVT_Done },
    2338             :   // Convert__Imm1_0__ProcIFlags1_1__Imm1_2
    2339             :   { CVT_95_addImmOperands, 1, CVT_95_addProcIFlagsOperands, 2, CVT_95_addImmOperands, 3, CVT_Done },
    2340             :   // Convert__Imm1_0__ProcIFlags1_2__Imm1_3
    2341             :   { CVT_95_addImmOperands, 1, CVT_95_addProcIFlagsOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
    2342             :   // Convert__Reg1_0__Reg1_1__Reg1_2
    2343             :   { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_Done },
    2344             :   // Convert__imm_95_20__CondCode2_0
    2345             :   { CVT_imm_95_20, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2346             :   // Convert__Imm0_151_1__CondCode2_0
    2347             :   { CVT_95_addImmOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2348             :   // Convert__imm_95_12
    2349             :   { CVT_imm_95_12, 0, CVT_Done },
    2350             :   // Convert__imm_95_12__CondCode2_0
    2351             :   { CVT_imm_95_12, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2352             :   // Convert__imm_95_15
    2353             :   { CVT_imm_95_15, 0, CVT_Done },
    2354             :   // Convert__imm_95_15__CondCode2_0
    2355             :   { CVT_imm_95_15, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2356             :   // Convert__MemBarrierOpt1_0
    2357             :   { CVT_95_addMemBarrierOptOperands, 1, CVT_Done },
    2358             :   // Convert__MemBarrierOpt1_1__CondCode2_0
    2359             :   { CVT_95_addMemBarrierOptOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2360             :   // Convert__imm_95_0__CondCode2_0
    2361             :   { CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2362             :   // Convert__imm_95_16__CondCode2_0
    2363             :   { CVT_imm_95_16, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2364             :   // Convert__Reg1_1__FPImm1_2__CondCode2_0
    2365             :   { CVT_95_Reg, 2, CVT_95_addFPImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2366             :   // Convert__Reg1_1__Tie0_2_2__CondCode2_0__DPRRegList1_3
    2367             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_2_2, CVT_95_addCondCodeOperands, 1, CVT_95_addDPRRegListOperands, 4, CVT_Done },
    2368             :   // Convert__Reg1_1__CondCode2_0__DPRRegList1_2
    2369             :   { CVT_95_Reg, 2, CVT_95_addCondCodeOperands, 1, CVT_95_addDPRRegListOperands, 3, CVT_Done },
    2370             :   // Convert__Reg1_1__Tie0_2_2__Reg1_2__imm_95_1__CondCode2_0
    2371             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_2_2, CVT_95_Reg, 3, CVT_imm_95_1, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2372             :   // Convert__Reg1_1__Tie0_2_2__Reg1_2__imm_95_0__CondCode2_0
    2373             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_2_2, CVT_95_Reg, 3, CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2374             :   // Convert__Imm0_2391_1__CondCode2_0
    2375             :   { CVT_95_addImmOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2376             :   // Convert__Imm0_2391_2__CondCode2_0
    2377             :   { CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2378             :   // Convert__Imm0_631_0
    2379             :   { CVT_95_addImmOperands, 1, CVT_Done },
    2380             :   // Convert__Imm0_655351_1
    2381             :   { CVT_95_addImmOperands, 2, CVT_Done },
    2382             :   // Convert__InstSyncBarrierOpt1_0
    2383             :   { CVT_95_addInstSyncBarrierOptOperands, 1, CVT_Done },
    2384             :   // Convert__InstSyncBarrierOpt1_1__CondCode2_0
    2385             :   { CVT_95_addInstSyncBarrierOptOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2386             :   // Convert__ITCondCode1_1__ITMask1_0
    2387             :   { CVT_95_addITCondCodeOperands, 2, CVT_95_addITMaskOperands, 1, CVT_Done },
    2388             :   // Convert__Reg1_1__MemNoOffset1_2__CondCode2_0
    2389             :   { CVT_95_Reg, 2, CVT_95_addMemNoOffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2390             :   // Convert__Reg1_1__Reg1_2__MemNoOffset1_3__CondCode2_0
    2391             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addMemNoOffsetOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2392             :   // Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0
    2393             :   { CVT_95_addCoprocNumOperands, 2, CVT_95_addCoprocRegOperands, 3, CVT_95_addAddrMode5Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2394             :   // Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0
    2395             :   { CVT_95_addCoprocNumOperands, 2, CVT_95_addCoprocRegOperands, 3, CVT_95_addMemNoOffsetOperands, 4, CVT_95_addCoprocOptionOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2396             :   // Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0
    2397             :   { CVT_95_addCoprocNumOperands, 2, CVT_95_addCoprocRegOperands, 3, CVT_95_addMemNoOffsetOperands, 4, CVT_95_addPostIdxImm8s4Operands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2398             :   // Convert__CoprocNum1_0__CoprocReg1_1__AddrMode52_2
    2399             :   { CVT_95_addCoprocNumOperands, 1, CVT_95_addCoprocRegOperands, 2, CVT_95_addAddrMode5Operands, 3, CVT_Done },
    2400             :   // Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__CoprocOption1_3
    2401             :   { CVT_95_addCoprocNumOperands, 1, CVT_95_addCoprocRegOperands, 2, CVT_95_addMemNoOffsetOperands, 3, CVT_95_addCoprocOptionOperands, 4, CVT_Done },
    2402             :   // Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__PostIdxImm8s41_3
    2403             :   { CVT_95_addCoprocNumOperands, 1, CVT_95_addCoprocRegOperands, 2, CVT_95_addMemNoOffsetOperands, 3, CVT_95_addPostIdxImm8s4Operands, 4, CVT_Done },
    2404             :   // Convert__Reg1_1__CondCode2_0__RegList1_2
    2405             :   { CVT_95_Reg, 2, CVT_95_addCondCodeOperands, 1, CVT_95_addRegListOperands, 3, CVT_Done },
    2406             :   // Convert__Reg1_2__CondCode2_0__RegList1_3
    2407             :   { CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_95_addRegListOperands, 4, CVT_Done },
    2408             :   // Convert__Reg1_1__CondCode2_0__RegList1_3
    2409             :   { CVT_95_Reg, 2, CVT_95_addCondCodeOperands, 1, CVT_95_addRegListOperands, 4, CVT_Done },
    2410             :   // Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3
    2411             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_2_2, CVT_95_addCondCodeOperands, 1, CVT_95_addRegListOperands, 4, CVT_Done },
    2412             :   // Convert__Reg1_2__Tie0_3_3__CondCode2_0__RegList1_4
    2413             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_3_3, CVT_95_addCondCodeOperands, 1, CVT_95_addRegListOperands, 5, CVT_Done },
    2414             :   // Convert__Reg1_1__ThumbMemPC1_2__CondCode2_0
    2415             :   { CVT_95_Reg, 2, CVT_95_addThumbMemPCOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2416             :   // Convert__Reg1_1__ConstPoolAsmImm1_2__CondCode2_0
    2417             :   { CVT_95_Reg, 2, CVT_95_addConstPoolAsmImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2418             :   // Convert__Reg1_1__MemThumbRIs42_2__CondCode2_0
    2419             :   { CVT_95_Reg, 2, CVT_95_addMemThumbRIs4Operands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2420             :   // Convert__Reg1_1__MemThumbRR2_2__CondCode2_0
    2421             :   { CVT_95_Reg, 2, CVT_95_addMemThumbRROperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2422             :   // Convert__Reg1_1__MemThumbSPI2_2__CondCode2_0
    2423             :   { CVT_95_Reg, 2, CVT_95_addMemThumbSPIOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2424             :   // Convert__Reg1_1__MemImm12Offset2_2__CondCode2_0
    2425             :   { CVT_95_Reg, 2, CVT_95_addMemImm12OffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2426             :   // Convert__Reg1_1__MemNegImm8Offset2_2__CondCode2_0
    2427             :   { CVT_95_Reg, 2, CVT_95_addMemNegImm8OffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2428             :   // Convert__Reg1_1__MemRegOffset3_2__CondCode2_0
    2429             :   { CVT_95_Reg, 2, CVT_95_addMemRegOffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2430             :   // Convert__Reg1_1__MemUImm12Offset2_2__CondCode2_0
    2431             :   { CVT_95_Reg, 2, CVT_95_addMemUImm12OffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2432             :   // Convert__Reg1_1__T2MemRegOffset3_2__CondCode2_0
    2433             :   { CVT_95_Reg, 2, CVT_95_addT2MemRegOffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2434             :   // Convert__Reg1_1__MemPCRelImm121_2__CondCode2_0
    2435             :   { CVT_95_Reg, 2, CVT_95_addMemPCRelImm12Operands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2436             :   // Convert__Reg1_2__ConstPoolAsmImm1_3__CondCode2_0
    2437             :   { CVT_95_Reg, 3, CVT_95_addConstPoolAsmImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2438             :   // Convert__Reg1_2__MemUImm12Offset2_3__CondCode2_0
    2439             :   { CVT_95_Reg, 3, CVT_95_addMemUImm12OffsetOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2440             :   // Convert__Reg1_2__T2MemRegOffset3_3__CondCode2_0
    2441             :   { CVT_95_Reg, 3, CVT_95_addT2MemRegOffsetOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2442             :   // Convert__Reg1_2__MemPCRelImm121_3__CondCode2_0
    2443             :   { CVT_95_Reg, 3, CVT_95_addMemPCRelImm12Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2444             :   // Convert__Reg1_1__imm_95_0__MemImm12Offset2_2__CondCode2_0
    2445             :   { CVT_95_Reg, 2, CVT_imm_95_0, 0, CVT_95_addMemImm12OffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2446             :   // Convert__Reg1_1__imm_95_0__MemImm8Offset2_2__CondCode2_0
    2447             :   { CVT_95_Reg, 2, CVT_imm_95_0, 0, CVT_95_addMemImm8OffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2448             :   // Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM2OffsetImm2_3__CondCode2_0
    2449             :   { CVT_95_Reg, 2, CVT_95_addMemNoOffsetOperands, 3, CVT_Tied, Tie1_3_3, CVT_95_addAM2OffsetImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2450             :   // Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__Imm1_3__CondCode2_0
    2451             :   { CVT_95_Reg, 2, CVT_95_addMemNoOffsetOperands, 3, CVT_Tied, Tie1_3_3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2452             :   // Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxRegShifted2_3__CondCode2_0
    2453             :   { CVT_95_Reg, 2, CVT_95_addMemNoOffsetOperands, 3, CVT_Tied, Tie1_3_3, CVT_95_addPostIdxRegShiftedOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2454             :   // Convert__Reg1_1__imm_95_0__MemRegOffset3_2__CondCode2_0
    2455             :   { CVT_95_Reg, 2, CVT_imm_95_0, 0, CVT_95_addMemRegOffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2456             :   // Convert__Reg1_1__MemThumbRIs12_2__CondCode2_0
    2457             :   { CVT_95_Reg, 2, CVT_95_addMemThumbRIs1Operands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2458             :   // Convert__Reg1_1__MemPosImm8Offset2_2__CondCode2_0
    2459             :   { CVT_95_Reg, 2, CVT_95_addMemPosImm8OffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2460             :   // Convert__Reg1_1__Reg1_2__MemImm8s4Offset2_3__CondCode2_0
    2461             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addMemImm8s4OffsetOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2462             :   // Convert__Reg1_1__Reg1_2__AddrMode33_3__CondCode2_0
    2463             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addAddrMode3Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2464             :   // Convert__Reg1_1__Reg1_2__imm_95_0__MemImm8s4Offset2_3__CondCode2_0
    2465             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_imm_95_0, 0, CVT_95_addMemImm8s4OffsetOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2466             :   // Convert__Reg1_1__Reg1_2__MemNoOffset1_3__Tie2_4_4__Imm1_4__CondCode2_0
    2467             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addMemNoOffsetOperands, 4, CVT_Tied, Tie2_4_4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2468             :   // Convert__Reg1_1__Reg1_2__imm_95_0__AddrMode33_3__CondCode2_0
    2469             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_imm_95_0, 0, CVT_95_addAddrMode3Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2470             :   // Convert__Reg1_1__Reg1_2__MemNoOffset1_3__Tie2_4_4__AM3Offset2_4__CondCode2_0
    2471             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addMemNoOffsetOperands, 4, CVT_Tied, Tie2_4_4, CVT_95_addAM3OffsetOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2472             :   // Convert__Reg1_1__MemImm0_1020s4Offset2_2__CondCode2_0
    2473             :   { CVT_95_Reg, 2, CVT_95_addMemImm0_95_1020s4OffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2474             :   // Convert__Reg1_1__MemThumbRIs22_2__CondCode2_0
    2475             :   { CVT_95_Reg, 2, CVT_95_addMemThumbRIs2Operands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2476             :   // Convert__Reg1_1__AddrMode33_2__CondCode2_0
    2477             :   { CVT_95_Reg, 2, CVT_95_addAddrMode3Operands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2478             :   // Convert__Reg1_1__imm_95_0__AddrMode33_2__CondCode2_0
    2479             :   { CVT_95_Reg, 2, CVT_imm_95_0, 0, CVT_95_addAddrMode3Operands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2480             :   // Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM3Offset2_3__CondCode2_0
    2481             :   { CVT_95_Reg, 2, CVT_95_addMemNoOffsetOperands, 3, CVT_Tied, Tie1_3_3, CVT_95_addAM3OffsetOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2482             :   // Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxReg2_3__CondCode2_0
    2483             :   { CVT_95_Reg, 2, CVT_95_addMemNoOffsetOperands, 3, CVT_Tied, Tie1_3_3, CVT_95_addPostIdxRegOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2484             :   // Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxImm81_3__CondCode2_0
    2485             :   { CVT_95_Reg, 2, CVT_95_addMemNoOffsetOperands, 3, CVT_Tied, Tie1_3_3, CVT_95_addPostIdxImm8Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2486             :   // Convert__Reg1_2__CCOut1_0__Reg1_2__Imm0_311_3__CondCode2_1
    2487             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2488             :   // Convert__Reg1_2__Reg1_2__Imm1_311_3__CondCode2_1__CCOut1_0
    2489             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2490             :   // Convert__Reg1_2__Reg1_2__Imm0_311_3__CondCode2_1__CCOut1_0
    2491             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2492             :   // Convert__Reg1_3__Reg1_3__Imm1_311_4__CondCode2_1__CCOut1_0
    2493             :   { CVT_95_Reg, 4, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2494             :   // Convert__Reg1_2__CCOut1_0__Reg1_3__Imm0_311_4__CondCode2_1
    2495             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2496             :   // Convert__Reg1_2__Reg1_3__Imm1_311_4__CondCode2_1__CCOut1_0
    2497             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2498             :   // Convert__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0
    2499             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2500             :   // Convert__Reg1_2__Reg1_3__Imm0_311_4__CondCode2_1__CCOut1_0
    2501             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2502             :   // Convert__Reg1_3__Reg1_4__Imm1_311_5__CondCode2_1__CCOut1_0
    2503             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2504             :   // Convert__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0
    2505             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2506             :   // Convert__CoprocNum1_1__Imm0_71_2__Reg1_3__CoprocReg1_4__CoprocReg1_5__imm_95_0__CondCode2_0
    2507             :   { CVT_95_addCoprocNumOperands, 2, CVT_95_addImmOperands, 3, CVT_95_Reg, 4, CVT_95_addCoprocRegOperands, 5, CVT_95_addCoprocRegOperands, 6, CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2508             :   // Convert__CoprocNum1_1__Imm0_71_2__Reg1_3__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0
    2509             :   { CVT_95_addCoprocNumOperands, 2, CVT_95_addImmOperands, 3, CVT_95_Reg, 4, CVT_95_addCoprocRegOperands, 5, CVT_95_addCoprocRegOperands, 6, CVT_95_addImmOperands, 7, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2510             :   // Convert__CoprocNum1_0__Imm0_71_1__Reg1_2__CoprocReg1_3__CoprocReg1_4__imm_95_0
    2511             :   { CVT_95_addCoprocNumOperands, 1, CVT_95_addImmOperands, 2, CVT_95_Reg, 3, CVT_95_addCoprocRegOperands, 4, CVT_95_addCoprocRegOperands, 5, CVT_imm_95_0, 0, CVT_Done },
    2512             :   // Convert__CoprocNum1_0__Imm0_71_1__Reg1_2__CoprocReg1_3__CoprocReg1_4__Imm0_71_5
    2513             :   { CVT_95_addCoprocNumOperands, 1, CVT_95_addImmOperands, 2, CVT_95_Reg, 3, CVT_95_addCoprocRegOperands, 4, CVT_95_addCoprocRegOperands, 5, CVT_95_addImmOperands, 6, CVT_Done },
    2514             :   // Convert__CoprocNum1_1__Imm0_151_2__Reg1_3__Reg1_4__CoprocReg1_5__CondCode2_0
    2515             :   { CVT_95_addCoprocNumOperands, 2, CVT_95_addImmOperands, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCoprocRegOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2516             :   // Convert__CoprocNum1_0__Imm0_151_1__Reg1_2__Reg1_3__CoprocReg1_4
    2517             :   { CVT_95_addCoprocNumOperands, 1, CVT_95_addImmOperands, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCoprocRegOperands, 5, CVT_Done },
    2518             :   // Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0
    2519             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2520             :   // Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0
    2521             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2522             :   // Convert__Reg1_1__Imm256_65535Expr1_2__CondCode2_0
    2523             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2524             :   // Convert__Reg1_1__T2SOImm1_2__CondCode2_0__reg0
    2525             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_reg0, 0, CVT_Done },
    2526             :   // Convert__Reg1_1__T2SOImmNot1_2__CondCode2_0__reg0
    2527             :   { CVT_95_Reg, 2, CVT_95_addT2SOImmNotOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_reg0, 0, CVT_Done },
    2528             :   // Convert__Reg1_1__Imm0_65535Expr1_2__CondCode2_0
    2529             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2530             :   // Convert__Reg1_2__CCOut1_0__Imm0_2551_3__CondCode2_1
    2531             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2532             :   // Convert__Reg1_2__ModImmNot1_3__CondCode2_1__CCOut1_0
    2533             :   { CVT_95_Reg, 3, CVT_95_addModImmNotOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2534             :   // Convert__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0
    2535             :   { CVT_95_Reg, 3, CVT_95_addRegShiftedRegOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2536             :   // Convert__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0
    2537             :   { CVT_95_Reg, 3, CVT_95_addModImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2538             :   // Convert__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0
    2539             :   { CVT_95_Reg, 3, CVT_95_addRegShiftedImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2540             :   // Convert__Reg1_2__RegShiftedReg3_3__CondCode2_0
    2541             :   { CVT_95_Reg, 3, CVT_95_addRegShiftedRegOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2542             :   // Convert__Reg1_2__T2SOImm1_3__CondCode2_0__reg0
    2543             :   { CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_reg0, 0, CVT_Done },
    2544             :   // Convert__Reg1_2__Reg1_3__CondCode2_0__reg0
    2545             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_reg0, 0, CVT_Done },
    2546             :   // Convert__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0
    2547             :   { CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2548             :   // Convert__Reg1_0__Reg1_1
    2549             :   { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_Done },
    2550             :   // Convert__Reg1_0__regCPSR__Imm0_2551_1__imm_95_14__imm_95_0
    2551             :   { CVT_95_Reg, 1, CVT_regCPSR, 0, CVT_95_addImmOperands, 2, CVT_imm_95_14, 0, CVT_imm_95_0, 0, CVT_Done },
    2552             :   // Convert__Reg1_1__T2SOImm1_2__CondCode2_0__regCPSR
    2553             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_regCPSR, 0, CVT_Done },
    2554             :   // Convert__Reg1_1__Reg1_2__CondCode2_0__regCPSR
    2555             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_regCPSR, 0, CVT_Done },
    2556             :   // Convert__Reg1_2__T2SOImm1_3__CondCode2_0__regCPSR
    2557             :   { CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_regCPSR, 0, CVT_Done },
    2558             :   // Convert__Reg1_2__Reg1_3__CondCode2_0__regCPSR
    2559             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_regCPSR, 0, CVT_Done },
    2560             :   // Convert__Reg1_1__Tie0_1_1__Imm0_65535Expr1_2__CondCode2_0
    2561             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2562             :   // Convert__Reg1_3__CoprocNum1_1__Imm0_71_2__CoprocReg1_4__CoprocReg1_5__imm_95_0__CondCode2_0
    2563             :   { CVT_95_Reg, 4, CVT_95_addCoprocNumOperands, 2, CVT_95_addImmOperands, 3, CVT_95_addCoprocRegOperands, 5, CVT_95_addCoprocRegOperands, 6, CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2564             :   // Convert__Reg1_3__CoprocNum1_1__Imm0_71_2__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0
    2565             :   { CVT_95_Reg, 4, CVT_95_addCoprocNumOperands, 2, CVT_95_addImmOperands, 3, CVT_95_addCoprocRegOperands, 5, CVT_95_addCoprocRegOperands, 6, CVT_95_addImmOperands, 7, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2566             :   // Convert__Reg1_2__CoprocNum1_0__Imm0_71_1__CoprocReg1_3__CoprocReg1_4__imm_95_0
    2567             :   { CVT_95_Reg, 3, CVT_95_addCoprocNumOperands, 1, CVT_95_addImmOperands, 2, CVT_95_addCoprocRegOperands, 4, CVT_95_addCoprocRegOperands, 5, CVT_imm_95_0, 0, CVT_Done },
    2568             :   // Convert__Reg1_2__CoprocNum1_0__Imm0_71_1__CoprocReg1_3__CoprocReg1_4__Imm0_71_5
    2569             :   { CVT_95_Reg, 3, CVT_95_addCoprocNumOperands, 1, CVT_95_addImmOperands, 2, CVT_95_addCoprocRegOperands, 4, CVT_95_addCoprocRegOperands, 5, CVT_95_addImmOperands, 6, CVT_Done },
    2570             :   // Convert__Reg1_3__Reg1_4__CoprocNum1_1__Imm0_151_2__CoprocReg1_5__CondCode2_0
    2571             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCoprocNumOperands, 2, CVT_95_addImmOperands, 3, CVT_95_addCoprocRegOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2572             :   // Convert__Reg1_2__Reg1_3__CoprocNum1_0__Imm0_151_1__CoprocReg1_4
    2573             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCoprocNumOperands, 1, CVT_95_addImmOperands, 2, CVT_95_addCoprocRegOperands, 5, CVT_Done },
    2574             :   // Convert__Reg1_1__BankedReg1_2__CondCode2_0
    2575             :   { CVT_95_Reg, 2, CVT_95_addBankedRegOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2576             :   // Convert__Reg1_1__MSRMask1_2__CondCode2_0
    2577             :   { CVT_95_Reg, 2, CVT_95_addMSRMaskOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2578             :   // Convert__BankedReg1_1__Reg1_2__CondCode2_0
    2579             :   { CVT_95_addBankedRegOperands, 2, CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2580             :   // Convert__MSRMask1_1__Reg1_2__CondCode2_0
    2581             :   { CVT_95_addMSRMaskOperands, 2, CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2582             :   // Convert__MSRMask1_1__ModImm1_2__CondCode2_0
    2583             :   { CVT_95_addMSRMaskOperands, 2, CVT_95_addModImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2584             :   // Convert__Reg1_1__Reg1_2__Reg1_1__CondCode2_0
    2585             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2586             :   // ConvertCustom_cvtThumbMultiply
    2587             :   { CVT_cvtThumbMultiply, 0, CVT_Done },
    2588             :   // Convert__Reg1_2__CCOut1_0__Reg1_3__CondCode2_1
    2589             :   { CVT_95_Reg, 3, CVT_95_addCCOutOperands, 1, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 2, CVT_Done },
    2590             :   // Convert__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0
    2591             :   { CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2592             :   // Convert__Reg1_2__T2SOImmNot1_3__CondCode2_1__CCOut1_0
    2593             :   { CVT_95_Reg, 3, CVT_95_addT2SOImmNotOperands, 4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2594             :   // Convert__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0
    2595             :   { CVT_95_Reg, 4, CVT_95_addRegShiftedImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2596             :   // Convert__Reg1_2__Reg1_3__imm_95_0__CondCode2_1__CCOut1_0
    2597             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2598             :   // Convert__regR8__regR8__imm_95_14__imm_95_0
    2599             :   { CVT_regR8, 0, CVT_regR8, 0, CVT_imm_95_14, 0, CVT_imm_95_0, 0, CVT_Done },
    2600             :   // Convert__regR0__regR0__CondCode2_0__reg0
    2601             :   { CVT_regR0, 0, CVT_regR0, 0, CVT_95_addCondCodeOperands, 1, CVT_reg0, 0, CVT_Done },
    2602             :   // Convert__Reg1_1__Reg1_2__Reg1_3__imm_95_0__CondCode2_0
    2603             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2604             :   // Convert__Reg1_1__Reg1_2__Reg1_3__PKHLSLImm1_4__CondCode2_0
    2605             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2606             :   // Convert__Reg1_1__Reg1_3__Reg1_2__imm_95_0__CondCode2_0
    2607             :   { CVT_95_Reg, 2, CVT_95_Reg, 4, CVT_95_Reg, 3, CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2608             :   // Convert__Reg1_1__Reg1_2__Reg1_3__PKHASRImm1_4__CondCode2_0
    2609             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addPKHASRImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2610             :   // Convert__MemImm12Offset2_0
    2611             :   { CVT_95_addMemImm12OffsetOperands, 1, CVT_Done },
    2612             :   // Convert__MemRegOffset3_0
    2613             :   { CVT_95_addMemRegOffsetOperands, 1, CVT_Done },
    2614             :   // Convert__Imm1_1__CondCode2_0
    2615             :   { CVT_95_addImmOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2616             :   // Convert__MemNegImm8Offset2_1__CondCode2_0
    2617             :   { CVT_95_addMemNegImm8OffsetOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2618             :   // Convert__MemUImm12Offset2_1__CondCode2_0
    2619             :   { CVT_95_addMemUImm12OffsetOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2620             :   // Convert__T2MemRegOffset3_1__CondCode2_0
    2621             :   { CVT_95_addT2MemRegOffsetOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2622             :   // Convert__MemPCRelImm121_1__CondCode2_0
    2623             :   { CVT_95_addMemPCRelImm12Operands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2624             :   // Convert__CondCode2_0__RegList1_1
    2625             :   { CVT_95_addCondCodeOperands, 1, CVT_95_addRegListOperands, 2, CVT_Done },
    2626             :   // Convert__regSP__Tie0_1_1__CondCode2_0__RegList1_1
    2627             :   { CVT_regSP, 0, CVT_Tied, Tie0_1_1, CVT_95_addCondCodeOperands, 1, CVT_95_addRegListOperands, 2, CVT_Done },
    2628             :   // Convert__regSP__Tie0_1_1__CondCode2_0__RegList1_2
    2629             :   { CVT_regSP, 0, CVT_Tied, Tie0_1_1, CVT_95_addCondCodeOperands, 1, CVT_95_addRegListOperands, 3, CVT_Done },
    2630             :   // Convert__Reg1_3__Reg1_3__Imm0_311_4__CondCode2_1__CCOut1_0
    2631             :   { CVT_95_Reg, 4, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2632             :   // Convert__Reg1_3__Reg1_4__Imm0_311_5__CondCode2_1__CCOut1_0
    2633             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2634             :   // Convert__Reg1_1__Reg1_2__Imm0_311_3__Imm1_321_4__CondCode2_0
    2635             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addImm1_95_32Operands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2636             :   // Convert__SetEndImm1_0
    2637             :   { CVT_95_addImmOperands, 1, CVT_Done },
    2638             :   // Convert__Imm0_11_0
    2639             :   { CVT_95_addImmOperands, 1, CVT_Done },
    2640             :   // Convert__imm_95_4__CondCode2_0
    2641             :   { CVT_imm_95_4, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2642             :   // Convert__imm_95_5__CondCode2_0
    2643             :   { CVT_imm_95_5, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2644             :   // Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3
    2645             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_Done },
    2646             :   // Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0
    2647             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_Tied, Tie0_1_1, CVT_Tied, Tie1_1_1, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2648             :   // Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__Tie0_1_1__Tie1_1_1__CondCode2_1__CCOut1_0
    2649             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_Tied, Tie0_1_1, CVT_Tied, Tie1_1_1, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2650             :   // Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__Tie0_3_3__Tie1_4_4__CondCode2_1__CCOut1_0
    2651             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_Tied, Tie0_3_3, CVT_Tied, Tie1_4_4, CVT_95_addCondCodeOperands, 2, CVT_95_addCCOutOperands, 1, CVT_Done },
    2652             :   // Convert__Imm0_311_2
    2653             :   { CVT_95_addImmOperands, 3, CVT_Done },
    2654             :   // Convert__Imm0_311_1__CondCode2_0
    2655             :   { CVT_95_addImmOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2656             :   // Convert__Imm0_311_2__CondCode2_0
    2657             :   { CVT_95_addImmOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2658             :   // Convert__Imm0_311_3__CondCode2_0
    2659             :   { CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2660             :   // Convert__Reg1_1__Imm1_321_2__Reg1_3__imm_95_0__CondCode2_0
    2661             :   { CVT_95_Reg, 2, CVT_95_addImm1_95_32Operands, 3, CVT_95_Reg, 4, CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2662             :   // Convert__Reg1_1__Imm1_321_2__Reg1_3__ShifterImm1_4__CondCode2_0
    2663             :   { CVT_95_Reg, 2, CVT_95_addImm1_95_32Operands, 3, CVT_95_Reg, 4, CVT_95_addShifterImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2664             :   // Convert__Reg1_1__Imm1_161_2__Reg1_3__CondCode2_0
    2665             :   { CVT_95_Reg, 2, CVT_95_addImm1_95_16Operands, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2666             :   // Convert__Reg1_1__Reg1_2__Reg1_3__MemNoOffset1_4__CondCode2_0
    2667             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addMemNoOffsetOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2668             :   // Convert__imm_95_0__Reg1_1__MemImm8Offset2_2__CondCode2_0
    2669             :   { CVT_imm_95_0, 0, CVT_95_Reg, 2, CVT_95_addMemImm8OffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2670             :   // Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__Imm1_3__CondCode2_0
    2671             :   { CVT_95_addMemNoOffsetOperands, 3, CVT_95_Reg, 2, CVT_Tied, Tie0_3_3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2672             :   // Convert__imm_95_0__Reg1_1__MemImm12Offset2_2__CondCode2_0
    2673             :   { CVT_imm_95_0, 0, CVT_95_Reg, 2, CVT_95_addMemImm12OffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2674             :   // Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__AM2OffsetImm2_3__CondCode2_0
    2675             :   { CVT_95_addMemNoOffsetOperands, 3, CVT_95_Reg, 2, CVT_Tied, Tie0_3_3, CVT_95_addAM2OffsetImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2676             :   // Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__PostIdxRegShifted2_3__CondCode2_0
    2677             :   { CVT_95_addMemNoOffsetOperands, 3, CVT_95_Reg, 2, CVT_Tied, Tie0_3_3, CVT_95_addPostIdxRegShiftedOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2678             :   // Convert__imm_95_0__Reg1_1__MemRegOffset3_2__CondCode2_0
    2679             :   { CVT_imm_95_0, 0, CVT_95_Reg, 2, CVT_95_addMemRegOffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2680             :   // Convert__Reg1_1__MemImm8Offset2_2__CondCode2_0
    2681             :   { CVT_95_Reg, 2, CVT_95_addMemImm8OffsetOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2682             :   // Convert__imm_95_0__Reg1_1__Reg1_2__MemImm8s4Offset2_3__CondCode2_0
    2683             :   { CVT_imm_95_0, 0, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addMemImm8s4OffsetOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2684             :   // Convert__MemNoOffset1_3__Reg1_1__Reg1_2__Tie0_4_4__Imm1_4__CondCode2_0
    2685             :   { CVT_95_addMemNoOffsetOperands, 4, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_Tied, Tie0_4_4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2686             :   // Convert__imm_95_0__Reg1_1__Reg1_2__AddrMode33_3__CondCode2_0
    2687             :   { CVT_imm_95_0, 0, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addAddrMode3Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2688             :   // Convert__MemNoOffset1_3__Reg1_1__Reg1_2__Tie0_4_4__AM3Offset2_4__CondCode2_0
    2689             :   { CVT_95_addMemNoOffsetOperands, 4, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_Tied, Tie0_4_4, CVT_95_addAM3OffsetOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2690             :   // Convert__Reg1_1__Reg1_2__MemImm0_1020s4Offset2_3__CondCode2_0
    2691             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addMemImm0_95_1020s4OffsetOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2692             :   // Convert__imm_95_0__Reg1_1__AddrMode33_2__CondCode2_0
    2693             :   { CVT_imm_95_0, 0, CVT_95_Reg, 2, CVT_95_addAddrMode3Operands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2694             :   // Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__AM3Offset2_3__CondCode2_0
    2695             :   { CVT_95_addMemNoOffsetOperands, 3, CVT_95_Reg, 2, CVT_Tied, Tie0_3_3, CVT_95_addAM3OffsetOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2696             :   // Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__PostIdxImm81_3__CondCode2_0
    2697             :   { CVT_95_addMemNoOffsetOperands, 3, CVT_95_Reg, 2, CVT_Tied, Tie0_3_3, CVT_95_addPostIdxImm8Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2698             :   // Convert__MemNoOffset1_2__Reg1_1__Tie0_3_3__PostIdxReg2_3__CondCode2_0
    2699             :   { CVT_95_addMemNoOffsetOperands, 3, CVT_95_Reg, 2, CVT_Tied, Tie0_3_3, CVT_95_addPostIdxRegOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2700             :   // Convert__Imm0_2551_3__CondCode2_0
    2701             :   { CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2702             :   // Convert__Imm0_2551_1__CondCode2_0
    2703             :   { CVT_95_addImmOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2704             :   // Convert__Imm24bit1_1__CondCode2_0
    2705             :   { CVT_95_addImmOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2706             :   // Convert__Reg1_1__Reg1_2__Reg1_3__RotImm1_4__CondCode2_0
    2707             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addRotImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2708             :   // Convert__Reg1_1__Reg1_2__imm_95_0__CondCode2_0
    2709             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2710             :   // Convert__Reg1_2__Reg1_3__imm_95_0__CondCode2_0
    2711             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2712             :   // Convert__Reg1_1__Reg1_2__RotImm1_3__CondCode2_0
    2713             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addRotImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2714             :   // Convert__Reg1_2__Reg1_3__RotImm1_4__CondCode2_0
    2715             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addRotImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2716             :   // Convert__MemTBB2_1__CondCode2_0
    2717             :   { CVT_95_addMemTBBOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2718             :   // Convert__MemTBH2_1__CondCode2_0
    2719             :   { CVT_95_addMemTBHOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2720             :   // Convert__TraceSyncBarrierOpt1_0
    2721             :   { CVT_95_addTraceSyncBarrierOptOperands, 1, CVT_Done },
    2722             :   // Convert__TraceSyncBarrierOpt1_1__CondCode2_0
    2723             :   { CVT_95_addTraceSyncBarrierOptOperands, 2, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2724             :   // Convert__Reg1_1__Imm0_311_2__Reg1_3__imm_95_0__CondCode2_0
    2725             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_Reg, 4, CVT_imm_95_0, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2726             :   // Convert__Reg1_1__Imm0_311_2__Reg1_3__ShifterImm1_4__CondCode2_0
    2727             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_Reg, 4, CVT_95_addShifterImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2728             :   // Convert__Reg1_1__Imm0_151_2__Reg1_3__CondCode2_0
    2729             :   { CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2730             :   // Convert__Reg1_2__Tie0_1_1__Reg1_3__Reg1_4__CondCode2_0
    2731             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2732             :   // Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_0
    2733             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2734             :   // Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_0
    2735             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2736             :   // Convert__Reg1_2__Reg1_3__Reg1_2__CondCode2_0
    2737             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2738             :   // Convert__Reg1_2__Reg1_4__Reg1_3__CondCode2_0
    2739             :   { CVT_95_Reg, 3, CVT_95_Reg, 5, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2740             :   // Convert__Reg1_1__Reg1_1__Reg1_2__CondCode2_0
    2741             :   { CVT_95_Reg, 2, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2742             :   // Convert__Reg1_2__NEONi16splatNot1_3__Tie0_3_3__CondCode2_0
    2743             :   { CVT_95_Reg, 3, CVT_95_addNEONi16splatNotOperands, 4, CVT_Tied, Tie0_3_3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2744             :   // Convert__Reg1_2__NEONi32splatNot1_3__Tie0_3_3__CondCode2_0
    2745             :   { CVT_95_Reg, 3, CVT_95_addNEONi32splatNotOperands, 4, CVT_Tied, Tie0_3_3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2746             :   // Convert__Reg1_2__NEONi16splat1_3__Tie0_1_1__CondCode2_0
    2747             :   { CVT_95_Reg, 3, CVT_95_addNEONi16splatOperands, 4, CVT_Tied, Tie0_1_1, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2748             :   // Convert__Reg1_2__NEONi32splat1_3__Tie0_1_1__CondCode2_0
    2749             :   { CVT_95_Reg, 3, CVT_95_addNEONi32splatOperands, 4, CVT_Tied, Tie0_1_1, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2750             :   // Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3__CondCode2_0
    2751             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2752             :   // Convert__Reg1_2__Tie0_3_3__Reg1_3__Reg1_4__CondCode2_0
    2753             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_3_3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2754             :   // Convert__Reg1_1__Reg1_2__Reg1_3__ComplexRotationOdd1_4
    2755             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addComplexRotationOddOperands, 5, CVT_Done },
    2756             :   // Convert__Reg1_2__Reg1_2__CondCode2_0
    2757             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2758             :   // Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3__ComplexRotationEven1_4
    2759             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addComplexRotationEvenOperands, 5, CVT_Done },
    2760             :   // Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3__VectorIndex641_4__ComplexRotationEven1_5
    2761             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addVectorIndex64Operands, 5, CVT_95_addComplexRotationEvenOperands, 6, CVT_Done },
    2762             :   // Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3__VectorIndex321_4__ComplexRotationEven1_5
    2763             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addVectorIndex32Operands, 5, CVT_95_addComplexRotationEvenOperands, 6, CVT_Done },
    2764             :   // Convert__Reg1_2__CondCode2_0
    2765             :   { CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2766             :   // Convert__Reg1_3__Reg1_4__CondCode2_0
    2767             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2768             :   // Convert__Reg1_3__Tie0_4_5__FBits161_5__CondCode2_0
    2769             :   { CVT_95_Reg, 4, CVT_Tied, Tie0_4_5, CVT_95_addFBits16Operands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2770             :   // Convert__Reg1_3__Reg1_4__Imm1_5__CondCode2_0
    2771             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2772             :   // Convert__Reg1_3__Tie0_4_5__FBits321_5__CondCode2_0
    2773             :   { CVT_95_Reg, 4, CVT_Tied, Tie0_4_5, CVT_95_addFBits32Operands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2774             :   // Convert__Reg1_2__Reg1_3
    2775             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_Done },
    2776             :   // Convert__Reg1_2__Reg1_3__VectorIndex161_4__CondCode2_0
    2777             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addVectorIndex16Operands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2778             :   // Convert__Reg1_2__Reg1_3__VectorIndex321_4__CondCode2_0
    2779             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addVectorIndex32Operands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2780             :   // Convert__Reg1_2__Reg1_3__VectorIndex81_4__CondCode2_0
    2781             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addVectorIndex8Operands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2782             :   // Convert__Reg1_2__Reg1_2__Reg1_3__Imm0_151_4__CondCode2_0
    2783             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2784             :   // Convert__Reg1_2__Reg1_2__Reg1_3__Imm0_31_4__CondCode2_0
    2785             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2786             :   // Convert__Reg1_2__Reg1_2__Reg1_3__Imm0_11_4__CondCode2_0
    2787             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2788             :   // Convert__Reg1_2__Reg1_2__Reg1_3__Imm0_71_4__CondCode2_0
    2789             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2790             :   // Convert__Reg1_2__Reg1_3__Reg1_4__Imm0_151_5__CondCode2_0
    2791             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2792             :   // Convert__Reg1_2__Reg1_3__Reg1_4__Imm0_31_5__CondCode2_0
    2793             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2794             :   // Convert__Reg1_2__Reg1_3__Reg1_4__Imm0_11_5__CondCode2_0
    2795             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2796             :   // Convert__Reg1_2__Reg1_3__Reg1_4__Imm0_71_5__CondCode2_0
    2797             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2798             :   // Convert__VecListDPairAllLanes1_2__DupAlignedMemory162_3__CondCode2_0
    2799             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory16Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2800             :   // Convert__VecListDPair1_2__AlignedMemory64or1282_3__CondCode2_0
    2801             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2802             :   // Convert__VecListFourD1_2__AlignedMemory64or128or2562_3__CondCode2_0
    2803             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64or128or256Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2804             :   // Convert__VecListOneDAllLanes1_2__DupAlignedMemory162_3__CondCode2_0
    2805             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory16Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2806             :   // Convert__VecListOneD1_2__AlignedMemory642_3__CondCode2_0
    2807             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2808             :   // Convert__VecListOneDHWordIndexed2_2__AlignedMemory162_3__CondCode2_0
    2809             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory16Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2810             :   // Convert__VecListThreeD1_2__AlignedMemory642_3__CondCode2_0
    2811             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2812             :   // Convert__VecListDPairAllLanes1_2__DupAlignedMemory322_3__CondCode2_0
    2813             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2814             :   // Convert__VecListOneDAllLanes1_2__DupAlignedMemory322_3__CondCode2_0
    2815             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2816             :   // Convert__VecListOneDWordIndexed2_2__AlignedMemory322_3__CondCode2_0
    2817             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2818             :   // Convert__VecListDPairAllLanes1_2__DupAlignedMemoryNone2_3__CondCode2_0
    2819             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2820             :   // Convert__VecListOneDAllLanes1_2__DupAlignedMemoryNone2_3__CondCode2_0
    2821             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2822             :   // Convert__VecListOneDByteIndexed2_2__AlignedMemoryNone2_3__CondCode2_0
    2823             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2824             :   // Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory162_3__CondCode2_0
    2825             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory16Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2826             :   // Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory162_3__Reg1_4__CondCode2_0
    2827             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory16Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2828             :   // Convert__VecListDPair1_2__imm_95_0__AlignedMemory64or1282_3__CondCode2_0
    2829             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2830             :   // Convert__VecListDPair1_2__imm_95_0__AlignedMemory64or1282_3__Reg1_4__CondCode2_0
    2831             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2832             :   // Convert__VecListFourD1_2__imm_95_0__AlignedMemory64or128or2562_3__CondCode2_0
    2833             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128or256Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2834             :   // Convert__VecListFourD1_2__imm_95_0__AlignedMemory64or128or2562_3__Reg1_4__CondCode2_0
    2835             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128or256Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2836             :   // Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemory162_3__CondCode2_0
    2837             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory16Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2838             :   // Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemory162_3__Reg1_4__CondCode2_0
    2839             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory16Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2840             :   // Convert__VecListOneD1_2__imm_95_0__AlignedMemory642_3__CondCode2_0
    2841             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2842             :   // Convert__VecListOneD1_2__imm_95_0__AlignedMemory642_3__Reg1_4__CondCode2_0
    2843             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2844             :   // Convert__VecListOneDHWordIndexed2_2__AlignedMemory162_3__Reg1_4__CondCode2_0
    2845             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory16Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2846             :   // Convert__VecListThreeD1_2__imm_95_0__AlignedMemory642_3__CondCode2_0
    2847             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2848             :   // Convert__VecListThreeD1_2__imm_95_0__AlignedMemory642_3__Reg1_4__CondCode2_0
    2849             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2850             :   // Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory322_3__CondCode2_0
    2851             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2852             :   // Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory322_3__Reg1_4__CondCode2_0
    2853             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2854             :   // Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemory322_3__CondCode2_0
    2855             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2856             :   // Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemory322_3__Reg1_4__CondCode2_0
    2857             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2858             :   // Convert__VecListOneDWordIndexed2_2__AlignedMemory322_3__Reg1_4__CondCode2_0
    2859             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory32Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2860             :   // Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemoryNone2_3__CondCode2_0
    2861             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2862             :   // Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemoryNone2_3__Reg1_4__CondCode2_0
    2863             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemoryNoneOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2864             :   // Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemoryNone2_3__CondCode2_0
    2865             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2866             :   // Convert__VecListOneDAllLanes1_2__imm_95_0__DupAlignedMemoryNone2_3__Reg1_4__CondCode2_0
    2867             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemoryNoneOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2868             :   // Convert__VecListOneDByteIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0
    2869             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2870             :   // Convert__Reg1_3__AlignedMemory2_8__Tie0_1_1__Imm1_5__CondCode2_0
    2871             :   { CVT_95_Reg, 4, CVT_95_addAlignedMemoryOperands, 9, CVT_Tied, Tie0_1_1, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2872             :   // Convert__Reg1_3__imm_95_0__AlignedMemory2_8__Imm1_9__Tie0_1_1__Imm1_5__CondCode2_0
    2873             :   { CVT_95_Reg, 4, CVT_imm_95_0, 0, CVT_95_addAlignedMemoryOperands, 9, CVT_95_addImmOperands, 10, CVT_Tied, Tie0_1_1, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2874             :   // Convert__Reg1_3__Reg1_8__Imm1_9__Tie0_1_1__Imm1_5__CondCode2_0
    2875             :   { CVT_95_Reg, 4, CVT_95_Reg, 9, CVT_95_addImmOperands, 10, CVT_Tied, Tie0_1_1, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2876             :   // Convert__VecListDPairSpacedAllLanes1_2__DupAlignedMemory322_3__CondCode2_0
    2877             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2878             :   // Convert__VecListDPairSpaced1_2__AlignedMemory64or1282_3__CondCode2_0
    2879             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2880             :   // Convert__VecListTwoDHWordIndexed2_2__AlignedMemory322_3__CondCode2_0
    2881             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2882             :   // Convert__VecListTwoQHWordIndexed2_2__AlignedMemory322_3__CondCode2_0
    2883             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2884             :   // Convert__VecListDPairAllLanes1_2__DupAlignedMemory642_3__CondCode2_0
    2885             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2886             :   // Convert__VecListDPairSpacedAllLanes1_2__DupAlignedMemory642_3__CondCode2_0
    2887             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2888             :   // Convert__VecListTwoDWordIndexed2_2__AlignedMemory642_3__CondCode2_0
    2889             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2890             :   // Convert__VecListTwoQWordIndexed2_2__AlignedMemory642_3__CondCode2_0
    2891             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2892             :   // Convert__VecListDPairSpacedAllLanes1_2__DupAlignedMemory162_3__CondCode2_0
    2893             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory16Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2894             :   // Convert__VecListTwoDByteIndexed2_2__AlignedMemory162_3__CondCode2_0
    2895             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory16Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2896             :   // Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory322_3__CondCode2_0
    2897             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2898             :   // Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory322_3__Reg1_4__CondCode2_0
    2899             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2900             :   // Convert__VecListDPairSpaced1_2__imm_95_0__AlignedMemory64or1282_3__CondCode2_0
    2901             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2902             :   // Convert__VecListDPairSpaced1_2__imm_95_0__AlignedMemory64or1282_3__Reg1_4__CondCode2_0
    2903             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2904             :   // Convert__VecListTwoDHWordIndexed2_2__AlignedMemory322_3__Reg1_4__CondCode2_0
    2905             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory32Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2906             :   // Convert__VecListTwoQHWordIndexed2_2__AlignedMemory322_3__Reg1_4__CondCode2_0
    2907             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory32Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2908             :   // Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory642_3__CondCode2_0
    2909             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2910             :   // Convert__VecListDPairAllLanes1_2__imm_95_0__DupAlignedMemory642_3__Reg1_4__CondCode2_0
    2911             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2912             :   // Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory642_3__CondCode2_0
    2913             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2914             :   // Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory642_3__Reg1_4__CondCode2_0
    2915             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2916             :   // Convert__VecListTwoDWordIndexed2_2__AlignedMemory642_3__Reg1_4__CondCode2_0
    2917             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2918             :   // Convert__VecListTwoQWordIndexed2_2__AlignedMemory642_3__Reg1_4__CondCode2_0
    2919             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2920             :   // Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory162_3__CondCode2_0
    2921             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory16Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2922             :   // Convert__VecListDPairSpacedAllLanes1_2__imm_95_0__DupAlignedMemory162_3__Reg1_4__CondCode2_0
    2923             :   { CVT_95_addVecListOperands, 3, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory16Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2924             :   // Convert__VecListTwoDByteIndexed2_2__AlignedMemory162_3__Reg1_4__CondCode2_0
    2925             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory16Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2926             :   // Convert__VecListThreeDAllLanes1_2__DupAlignedMemoryNone2_3__CondCode2_0
    2927             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2928             :   // Convert__VecListThreeDHWordIndexed2_2__AlignedMemoryNone2_3__CondCode2_0
    2929             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2930             :   // Convert__VecListThreeQAllLanes1_2__DupAlignedMemoryNone2_3__CondCode2_0
    2931             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2932             :   // Convert__VecListThreeQ1_2__AlignedMemory642_3__CondCode2_0
    2933             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2934             :   // Convert__VecListThreeQHWordIndexed2_2__AlignedMemoryNone2_3__CondCode2_0
    2935             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2936             :   // Convert__VecListThreeDWordIndexed2_2__AlignedMemoryNone2_3__CondCode2_0
    2937             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2938             :   // Convert__VecListThreeQWordIndexed2_2__AlignedMemoryNone2_3__CondCode2_0
    2939             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2940             :   // Convert__VecListThreeDByteIndexed2_2__AlignedMemoryNone2_3__CondCode2_0
    2941             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2942             :   // Convert__VecListThreeDAllLanes1_2__DupAlignedMemoryNone2_3__Reg1_4__CondCode2_0
    2943             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemoryNoneOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2944             :   // Convert__VecListThreeD1_2__AlignedMemory642_3__Reg1_4__CondCode2_0
    2945             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2946             :   // Convert__VecListThreeDHWordIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0
    2947             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2948             :   // Convert__VecListThreeQAllLanes1_2__DupAlignedMemoryNone2_3__Reg1_4__CondCode2_0
    2949             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemoryNoneOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2950             :   // Convert__VecListThreeQ1_2__AlignedMemory642_3__Reg1_4__CondCode2_0
    2951             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2952             :   // Convert__VecListThreeQHWordIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0
    2953             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2954             :   // Convert__VecListThreeDWordIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0
    2955             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2956             :   // Convert__VecListThreeQWordIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0
    2957             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2958             :   // Convert__VecListThreeDByteIndexed2_2__AlignedMemoryNone2_3__Reg1_4__CondCode2_0
    2959             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemoryNoneOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2960             :   // Convert__Reg1_3__Reg1_4__Reg1_5__AlignedMemory2_7__CondCode2_0
    2961             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_95_addAlignedMemoryOperands, 8, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2962             :   // Convert__Reg1_3__Reg1_4__Reg1_5__imm_95_0__AlignedMemory2_7__Imm1_8__CondCode2_0
    2963             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_imm_95_0, 0, CVT_95_addAlignedMemoryOperands, 8, CVT_95_addImmOperands, 9, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2964             :   // Convert__Reg1_3__Reg1_6__Reg1_9__AlignedMemory2_13__CondCode2_0
    2965             :   { CVT_95_Reg, 4, CVT_95_Reg, 7, CVT_95_Reg, 10, CVT_95_addAlignedMemoryOperands, 14, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2966             :   // Convert__Reg1_3__Reg1_6__Reg1_9__imm_95_0__DupAlignedMemory642_13__Imm1_14__CondCode2_0
    2967             :   { CVT_95_Reg, 4, CVT_95_Reg, 7, CVT_95_Reg, 10, CVT_imm_95_0, 0, CVT_95_addDupAlignedMemory64Operands, 14, CVT_95_addImmOperands, 15, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2968             :   // Convert__VecListFourDAllLanes1_2__DupAlignedMemory642_3__CondCode2_0
    2969             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2970             :   // Convert__VecListFourDHWordIndexed2_2__AlignedMemory642_3__CondCode2_0
    2971             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2972             :   // Convert__VecListFourQAllLanes1_2__DupAlignedMemory642_3__CondCode2_0
    2973             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2974             :   // Convert__VecListFourQ1_2__AlignedMemory64or128or2562_3__CondCode2_0
    2975             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64or128or256Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2976             :   // Convert__VecListFourQHWordIndexed2_2__AlignedMemory642_3__CondCode2_0
    2977             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2978             :   // Convert__VecListFourDAllLanes1_2__DupAlignedMemory64or1282_3__CondCode2_0
    2979             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory64or128Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2980             :   // Convert__VecListFourDWordIndexed2_2__AlignedMemory64or1282_3__CondCode2_0
    2981             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2982             :   // Convert__VecListFourQAllLanes1_2__DupAlignedMemory64or1282_3__CondCode2_0
    2983             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory64or128Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2984             :   // Convert__VecListFourQWordIndexed2_2__AlignedMemory64or1282_3__CondCode2_0
    2985             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2986             :   // Convert__VecListFourDAllLanes1_2__DupAlignedMemory322_3__CondCode2_0
    2987             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2988             :   // Convert__VecListFourDByteIndexed2_2__AlignedMemory322_3__CondCode2_0
    2989             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2990             :   // Convert__VecListFourQAllLanes1_2__DupAlignedMemory322_3__CondCode2_0
    2991             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2992             :   // Convert__VecListFourDAllLanes1_2__DupAlignedMemory642_3__Reg1_4__CondCode2_0
    2993             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2994             :   // Convert__VecListFourD1_2__AlignedMemory64or128or2562_3__Reg1_4__CondCode2_0
    2995             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64or128or256Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2996             :   // Convert__VecListFourDHWordIndexed2_2__AlignedMemory642_3__Reg1_4__CondCode2_0
    2997             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    2998             :   // Convert__VecListFourQAllLanes1_2__DupAlignedMemory642_3__Reg1_4__CondCode2_0
    2999             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3000             :   // Convert__VecListFourQ1_2__AlignedMemory64or128or2562_3__Reg1_4__CondCode2_0
    3001             :   { CVT_95_addVecListOperands, 3, CVT_95_addAlignedMemory64or128or256Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3002             :   // Convert__VecListFourQHWordIndexed2_2__AlignedMemory642_3__Reg1_4__CondCode2_0
    3003             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3004             :   // Convert__VecListFourDAllLanes1_2__DupAlignedMemory64or1282_3__Reg1_4__CondCode2_0
    3005             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory64or128Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3006             :   // Convert__VecListFourDWordIndexed2_2__AlignedMemory64or1282_3__Reg1_4__CondCode2_0
    3007             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3008             :   // Convert__VecListFourQAllLanes1_2__DupAlignedMemory64or1282_3__Reg1_4__CondCode2_0
    3009             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory64or128Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3010             :   // Convert__VecListFourQWordIndexed2_2__AlignedMemory64or1282_3__Reg1_4__CondCode2_0
    3011             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3012             :   // Convert__VecListFourDAllLanes1_2__DupAlignedMemory322_3__Reg1_4__CondCode2_0
    3013             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3014             :   // Convert__VecListFourDByteIndexed2_2__AlignedMemory322_3__Reg1_4__CondCode2_0
    3015             :   { CVT_95_addVecListIndexedOperands, 3, CVT_95_addAlignedMemory32Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3016             :   // Convert__VecListFourQAllLanes1_2__DupAlignedMemory322_3__Reg1_4__CondCode2_0
    3017             :   { CVT_95_addVecListOperands, 3, CVT_95_addDupAlignedMemory32Operands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3018             :   // Convert__Reg1_3__Reg1_4__Reg1_5__Reg1_6__AlignedMemory2_8__CondCode2_0
    3019             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_95_Reg, 7, CVT_95_addAlignedMemoryOperands, 9, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3020             :   // Convert__Reg1_3__Reg1_4__Reg1_5__Reg1_6__imm_95_0__AlignedMemory2_8__Imm1_9__CondCode2_0
    3021             :   { CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_95_Reg, 7, CVT_imm_95_0, 0, CVT_95_addAlignedMemoryOperands, 9, CVT_95_addImmOperands, 10, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3022             :   // Convert__Reg1_3__Reg1_6__Reg1_9__Reg1_12__AlignedMemory2_16__CondCode2_0
    3023             :   { CVT_95_Reg, 4, CVT_95_Reg, 7, CVT_95_Reg, 10, CVT_95_Reg, 13, CVT_95_addAlignedMemoryOperands, 17, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3024             :   // Convert__Reg1_3__Reg1_6__Reg1_9__Reg1_12__imm_95_0__AlignedMemory2_16__Imm1_17__CondCode2_0
    3025             :   { CVT_95_Reg, 4, CVT_95_Reg, 7, CVT_95_Reg, 10, CVT_95_Reg, 13, CVT_imm_95_0, 0, CVT_95_addAlignedMemoryOperands, 17, CVT_95_addImmOperands, 18, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3026             :   // Convert__Reg1_1__Tie0_2_2__CondCode2_0__SPRRegList1_3
    3027             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_2_2, CVT_95_addCondCodeOperands, 1, CVT_95_addSPRRegListOperands, 4, CVT_Done },
    3028             :   // Convert__Reg1_1__CondCode2_0__SPRRegList1_2
    3029             :   { CVT_95_Reg, 2, CVT_95_addCondCodeOperands, 1, CVT_95_addSPRRegListOperands, 3, CVT_Done },
    3030             :   // Convert__Reg1_1__AddrMode52_2__CondCode2_0
    3031             :   { CVT_95_Reg, 2, CVT_95_addAddrMode5Operands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3032             :   // Convert__Reg1_2__AddrMode5FP162_3__CondCode2_0
    3033             :   { CVT_95_Reg, 3, CVT_95_addAddrMode5FP16Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3034             :   // Convert__Reg1_2__AddrMode52_3__CondCode2_0
    3035             :   { CVT_95_Reg, 3, CVT_95_addAddrMode5Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3036             :   // Convert__Reg1_1__Reg1_2__Reg1_3
    3037             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_Done },
    3038             :   // Convert__Reg1_2__Tie0_1_1__Reg1_3__Reg1_4__VectorIndex321_5__CondCode2_0
    3039             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addVectorIndex32Operands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3040             :   // Convert__Reg1_2__Tie0_1_1__Reg1_3__Reg1_4__VectorIndex161_5__CondCode2_0
    3041             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addVectorIndex16Operands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3042             :   // Convert__Reg1_1__Reg1_2__Reg1_2__CondCode2_0
    3043             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3044             :   // Convert__Reg1_2__FPImm1_3__CondCode2_0
    3045             :   { CVT_95_Reg, 3, CVT_95_addFPImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3046             :   // Convert__Reg1_2__NEONi32vmov1_3__CondCode2_0
    3047             :   { CVT_95_Reg, 3, CVT_95_addNEONi32vmovOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3048             :   // Convert__Reg1_2__NEONi16vmovi8Replicate1_3__CondCode2_0
    3049             :   { CVT_95_Reg, 3, CVT_95_addNEONvmovi8ReplicateOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3050             :   // Convert__Reg1_2__NEONi16splat1_3__CondCode2_0
    3051             :   { CVT_95_Reg, 3, CVT_95_addNEONi16splatOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3052             :   // Convert__Reg1_2__NEONi32vmovi8Replicate1_3__CondCode2_0
    3053             :   { CVT_95_Reg, 3, CVT_95_addNEONvmovi8ReplicateOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3054             :   // Convert__Reg1_2__NEONi32vmovi16Replicate1_3__CondCode2_0
    3055             :   { CVT_95_Reg, 3, CVT_95_addNEONvmovi16ReplicateOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3056             :   // Convert__Reg1_2__NEONi32vmovNeg1_3__CondCode2_0
    3057             :   { CVT_95_Reg, 3, CVT_95_addNEONi32vmovNegOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3058             :   // Convert__Reg1_2__NEONi64vmovi8Replicate1_3__CondCode2_0
    3059             :   { CVT_95_Reg, 3, CVT_95_addNEONvmovi8ReplicateOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3060             :   // Convert__Reg1_2__NEONi64vmovi16Replicate1_3__CondCode2_0
    3061             :   { CVT_95_Reg, 3, CVT_95_addNEONvmovi16ReplicateOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3062             :   // Convert__Reg1_2__NEONi64vmovi32Replicate1_3__CondCode2_0
    3063             :   { CVT_95_Reg, 3, CVT_95_addNEONvmovi32ReplicateOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3064             :   // Convert__Reg1_2__NEONi64splat1_3__CondCode2_0
    3065             :   { CVT_95_Reg, 3, CVT_95_addNEONi64splatOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3066             :   // Convert__Reg1_2__NEONi8splat1_3__CondCode2_0
    3067             :   { CVT_95_Reg, 3, CVT_95_addNEONi8splatOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3068             :   // Convert__Reg1_2__Reg1_3__Reg1_3__CondCode2_0
    3069             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3070             :   // Convert__Reg1_2__Tie0_1_1__Reg1_4__VectorIndex161_3__CondCode2_0
    3071             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 5, CVT_95_addVectorIndex16Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3072             :   // Convert__Reg1_2__Tie0_1_1__Reg1_4__VectorIndex321_3__CondCode2_0
    3073             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 5, CVT_95_addVectorIndex32Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3074             :   // Convert__Reg1_2__Tie0_1_1__Reg1_4__VectorIndex81_3__CondCode2_0
    3075             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 5, CVT_95_addVectorIndex8Operands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3076             :   // Convert__Reg1_2__Reg1_2__Reg1_3__VectorIndex321_4__CondCode2_0
    3077             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addVectorIndex32Operands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3078             :   // Convert__Reg1_2__Reg1_2__Reg1_3__VectorIndex161_4__CondCode2_0
    3079             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addVectorIndex16Operands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3080             :   // Convert__Reg1_2__Reg1_3__Reg1_4__VectorIndex321_5__CondCode2_0
    3081             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addVectorIndex32Operands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3082             :   // Convert__Reg1_2__Reg1_3__Reg1_4__VectorIndex161_5__CondCode2_0
    3083             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_addVectorIndex16Operands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3084             :   // Convert__Reg1_2__NEONi16invi8Replicate1_3__CondCode2_0
    3085             :   { CVT_95_Reg, 3, CVT_95_addNEONinvi8ReplicateOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3086             :   // Convert__Reg1_2__NEONi32invi8Replicate1_3__CondCode2_0
    3087             :   { CVT_95_Reg, 3, CVT_95_addNEONinvi8ReplicateOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3088             :   // Convert__Reg1_2__NEONi64invi8Replicate1_3__CondCode2_0
    3089             :   { CVT_95_Reg, 3, CVT_95_addNEONinvi8ReplicateOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3090             :   // Convert__Reg1_2__Tie0_1_1__Reg1_3__CondCode2_0
    3091             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3092             :   // Convert__regSP__Tie0_1_1__CondCode2_0__DPRRegList1_1
    3093             :   { CVT_regSP, 0, CVT_Tied, Tie0_1_1, CVT_95_addCondCodeOperands, 1, CVT_95_addDPRRegListOperands, 2, CVT_Done },
    3094             :   // Convert__regSP__Tie0_1_1__CondCode2_0__SPRRegList1_1
    3095             :   { CVT_regSP, 0, CVT_Tied, Tie0_1_1, CVT_95_addCondCodeOperands, 1, CVT_95_addSPRRegListOperands, 2, CVT_Done },
    3096             :   // Convert__regSP__Tie0_1_1__CondCode2_0__DPRRegList1_2
    3097             :   { CVT_regSP, 0, CVT_Tied, Tie0_1_1, CVT_95_addCondCodeOperands, 1, CVT_95_addDPRRegListOperands, 3, CVT_Done },
    3098             :   // Convert__regSP__Tie0_1_1__CondCode2_0__SPRRegList1_2
    3099             :   { CVT_regSP, 0, CVT_Tied, Tie0_1_1, CVT_95_addCondCodeOperands, 1, CVT_95_addSPRRegListOperands, 3, CVT_Done },
    3100             :   // Convert__Reg1_2__Reg1_3__ShrImm81_4__CondCode2_0
    3101             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3102             :   // Convert__Reg1_2__Reg1_3__ShrImm161_4__CondCode2_0
    3103             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3104             :   // Convert__Reg1_2__Reg1_3__ShrImm321_4__CondCode2_0
    3105             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3106             :   // Convert__Reg1_2__Reg1_2__Imm1_3__CondCode2_0
    3107             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3108             :   // Convert__Reg1_2__Reg1_3__Imm1_4__CondCode2_0
    3109             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3110             :   // Convert__Reg1_2__Reg1_2__ShrImm161_3__CondCode2_0
    3111             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3112             :   // Convert__Reg1_2__Reg1_2__ShrImm321_3__CondCode2_0
    3113             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3114             :   // Convert__Reg1_2__Reg1_2__ShrImm641_3__CondCode2_0
    3115             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3116             :   // Convert__Reg1_2__Reg1_2__ShrImm81_3__CondCode2_0
    3117             :   { CVT_95_Reg, 3, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3118             :   // Convert__Reg1_2__Reg1_3__ShrImm641_4__CondCode2_0
    3119             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3120             :   // Convert__Reg1_2__Tie0_1_1__Reg1_2__ShrImm161_3__CondCode2_0
    3121             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3122             :   // Convert__Reg1_2__Tie0_1_1__Reg1_2__ShrImm321_3__CondCode2_0
    3123             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3124             :   // Convert__Reg1_2__Tie0_1_1__Reg1_2__ShrImm641_3__CondCode2_0
    3125             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3126             :   // Convert__Reg1_2__Tie0_1_1__Reg1_2__ShrImm81_3__CondCode2_0
    3127             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3128             :   // Convert__Reg1_2__Tie0_1_1__Reg1_3__ShrImm161_4__CondCode2_0
    3129             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3130             :   // Convert__Reg1_2__Tie0_1_1__Reg1_3__ShrImm321_4__CondCode2_0
    3131             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3132             :   // Convert__Reg1_2__Tie0_1_1__Reg1_3__ShrImm641_4__CondCode2_0
    3133             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3134             :   // Convert__Reg1_2__Tie0_1_1__Reg1_3__ShrImm81_4__CondCode2_0
    3135             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3136             :   // Convert__Reg1_1__Tie0_2_2__Reg1_2__Reg1_3
    3137             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_2_2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_Done },
    3138             :   // Convert__Reg1_1__Tie0_2_2__Reg1_2__Reg1_3__VectorIndex321_4
    3139             :   { CVT_95_Reg, 2, CVT_Tied, Tie0_2_2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addVectorIndex32Operands, 5, CVT_Done },
    3140             :   // Convert__Reg1_2__Reg1_3__Imm1_151_4__CondCode2_0
    3141             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3142             :   // Convert__Reg1_2__Reg1_3__Imm1_311_4__CondCode2_0
    3143             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3144             :   // Convert__Reg1_2__Reg1_3__Imm1_71_4__CondCode2_0
    3145             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3146             :   // Convert__Reg1_2__Reg1_3__Imm161_4__CondCode2_0
    3147             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3148             :   // Convert__Reg1_2__Reg1_3__Imm321_4__CondCode2_0
    3149             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3150             :   // Convert__Reg1_2__Reg1_3__Imm81_4__CondCode2_0
    3151             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3152             :   // Convert__Reg1_2__Tie0_1_1__Reg1_2__Imm1_3__CondCode2_0
    3153             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3154             :   // Convert__Reg1_2__Tie0_1_1__Reg1_3__Imm1_4__CondCode2_0
    3155             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_Reg, 4, CVT_95_addImmOperands, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3156             :   // Convert__AlignedMemory64or1282_3__VecListDPair1_2__CondCode2_0
    3157             :   { CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3158             :   // Convert__AlignedMemory64or128or2562_3__VecListFourD1_2__CondCode2_0
    3159             :   { CVT_95_addAlignedMemory64or128or256Operands, 4, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3160             :   // Convert__AlignedMemory642_3__VecListOneD1_2__CondCode2_0
    3161             :   { CVT_95_addAlignedMemory64Operands, 4, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3162             :   // Convert__AlignedMemory642_3__VecListThreeD1_2__CondCode2_0
    3163             :   { CVT_95_addAlignedMemory64Operands, 4, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3164             :   // Convert__imm_95_0__AlignedMemory64or1282_3__VecListDPair1_2__CondCode2_0
    3165             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3166             :   // Convert__imm_95_0__AlignedMemory64or1282_3__Reg1_4__VecListDPair1_2__CondCode2_0
    3167             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_Reg, 5, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3168             :   // Convert__imm_95_0__AlignedMemory64or128or2562_3__VecListFourD1_2__CondCode2_0
    3169             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128or256Operands, 4, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3170             :   // Convert__imm_95_0__AlignedMemory64or128or2562_3__Reg1_4__VecListFourD1_2__CondCode2_0
    3171             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128or256Operands, 4, CVT_95_Reg, 5, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3172             :   // Convert__imm_95_0__AlignedMemory642_3__VecListOneD1_2__CondCode2_0
    3173             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3174             :   // Convert__imm_95_0__AlignedMemory642_3__Reg1_4__VecListOneD1_2__CondCode2_0
    3175             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3176             :   // Convert__imm_95_0__AlignedMemory642_3__VecListThreeD1_2__CondCode2_0
    3177             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemory64Operands, 4, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3178             :   // Convert__imm_95_0__AlignedMemory642_3__Reg1_4__VecListThreeD1_2__CondCode2_0
    3179             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemory64Operands, 4, CVT_95_Reg, 5, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3180             :   // Convert__AlignedMemory2_8__Reg1_3__Imm1_5__CondCode2_0
    3181             :   { CVT_95_addAlignedMemoryOperands, 9, CVT_95_Reg, 4, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3182             :   // Convert__imm_95_0__AlignedMemory2_8__Imm1_9__Reg1_3__Imm1_5__CondCode2_0
    3183             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemoryOperands, 9, CVT_95_addImmOperands, 10, CVT_95_Reg, 4, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3184             :   // Convert__Reg1_8__Imm1_9__Reg1_3__Imm1_5__CondCode2_0
    3185             :   { CVT_95_Reg, 9, CVT_95_addImmOperands, 10, CVT_95_Reg, 4, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3186             :   // Convert__imm_95_0__Reg1_8__Imm1_9__Imm1_10__Reg1_3__Imm1_5__CondCode2_0
    3187             :   { CVT_imm_95_0, 0, CVT_95_Reg, 9, CVT_95_addImmOperands, 10, CVT_95_addImmOperands, 11, CVT_95_Reg, 4, CVT_95_addImmOperands, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3188             :   // Convert__AlignedMemory64or1282_3__VecListDPairSpaced1_2__CondCode2_0
    3189             :   { CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3190             :   // Convert__imm_95_0__AlignedMemory64or1282_3__VecListDPairSpaced1_2__CondCode2_0
    3191             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3192             :   // Convert__imm_95_0__AlignedMemory64or1282_3__Reg1_4__VecListDPairSpaced1_2__CondCode2_0
    3193             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemory64or128Operands, 4, CVT_95_Reg, 5, CVT_95_addVecListOperands, 3, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3194             :   // Convert__AlignedMemory2_7__Reg1_3__Reg1_4__Reg1_5__CondCode2_0
    3195             :   { CVT_95_addAlignedMemoryOperands, 8, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3196             :   // Convert__imm_95_0__AlignedMemory2_7__Imm1_8__Reg1_3__Reg1_4__Reg1_5__CondCode2_0
    3197             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemoryOperands, 8, CVT_95_addImmOperands, 9, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3198             :   // Convert__AlignedMemory2_8__Reg1_3__Reg1_4__Reg1_5__Reg1_6__CondCode2_0
    3199             :   { CVT_95_addAlignedMemoryOperands, 9, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_95_Reg, 7, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3200             :   // Convert__imm_95_0__AlignedMemory2_8__Imm1_9__Reg1_3__Reg1_4__Reg1_5__Reg1_6__CondCode2_0
    3201             :   { CVT_imm_95_0, 0, CVT_95_addAlignedMemoryOperands, 9, CVT_95_addImmOperands, 10, CVT_95_Reg, 4, CVT_95_Reg, 5, CVT_95_Reg, 6, CVT_95_Reg, 7, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3202             :   // Convert__Reg1_1__Reg1_2__Tie0_1_1__Tie1_1_1__CondCode2_0
    3203             :   { CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_Tied, Tie1_1_1, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3204             :   // Convert__Reg1_2__Reg1_3__Tie0_3_3__Tie1_4_4__CondCode2_0
    3205             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_Tied, Tie0_3_3, CVT_Tied, Tie1_4_4, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3206             :   // Convert__Reg1_2__VecListDPair1_3__Reg1_4__CondCode2_0
    3207             :   { CVT_95_Reg, 3, CVT_95_addVecListOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3208             :   // Convert__Reg1_2__VecListFourD1_3__Reg1_4__CondCode2_0
    3209             :   { CVT_95_Reg, 3, CVT_95_addVecListOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3210             :   // Convert__Reg1_2__VecListOneD1_3__Reg1_4__CondCode2_0
    3211             :   { CVT_95_Reg, 3, CVT_95_addVecListOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3212             :   // Convert__Reg1_2__VecListThreeD1_3__Reg1_4__CondCode2_0
    3213             :   { CVT_95_Reg, 3, CVT_95_addVecListOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3214             :   // Convert__Reg1_2__Tie0_1_1__VecListDPair1_3__Reg1_4__CondCode2_0
    3215             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_addVecListOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3216             :   // Convert__Reg1_2__Tie0_1_1__VecListFourD1_3__Reg1_4__CondCode2_0
    3217             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_addVecListOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3218             :   // Convert__Reg1_2__Tie0_1_1__VecListOneD1_3__Reg1_4__CondCode2_0
    3219             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_addVecListOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3220             :   // Convert__Reg1_2__Tie0_1_1__VecListThreeD1_3__Reg1_4__CondCode2_0
    3221             :   { CVT_95_Reg, 3, CVT_Tied, Tie0_1_1, CVT_95_addVecListOperands, 4, CVT_95_Reg, 5, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3222             :   // Convert__Reg1_2__Reg1_3__Tie0_1_1__Tie1_1_1__CondCode2_0
    3223             :   { CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_Tied, Tie0_1_1, CVT_Tied, Tie1_1_1, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3224             :   // Convert__imm_95_2__CondCode2_0
    3225             :   { CVT_imm_95_2, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3226             :   // Convert__imm_95_3__CondCode2_0
    3227             :   { CVT_imm_95_3, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3228             :   // Convert__imm_95_1__CondCode2_0
    3229             :   { CVT_imm_95_1, 0, CVT_95_addCondCodeOperands, 1, CVT_Done },
    3230             : };
    3231             : 
    3232       30396 : void ARMAsmParser::
    3233             : convertToMCInst(unsigned Kind, MCInst &Inst, unsigned Opcode,
    3234             :                 const OperandVector &Operands) {
    3235             :   assert(Kind < CVT_NUM_SIGNATURES && "Invalid signature!");
    3236       30396 :   const uint8_t *Converter = ConversionTable[Kind];
    3237             :   unsigned OpIdx;
    3238             :   Inst.setOpcode(Opcode);
    3239      233812 :   for (const uint8_t *p = Converter; *p; p+= 2) {
    3240      101708 :     OpIdx = *(p + 1);
    3241      101708 :     switch (*p) {
    3242           0 :     default: llvm_unreachable("invalid conversion entry!");
    3243           0 :     case CVT_Reg:
    3244           0 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addRegOperands(Inst, 1);
    3245           0 :       break;
    3246        3080 :     case CVT_Tied: {
    3247             :       assert(OpIdx < (size_t)(std::end(TiedAsmOperandTable) -
    3248             :                           std::begin(TiedAsmOperandTable)) &&
    3249             :              "Tied operand not found");
    3250        3080 :       unsigned TiedResOpnd = TiedAsmOperandTable[OpIdx][0];
    3251        3080 :       if (TiedResOpnd != (uint8_t) -1)
    3252             :         Inst.addOperand(Inst.getOperand(TiedResOpnd));
    3253             :       break;
    3254             :     }
    3255       37068 :     case CVT_95_Reg:
    3256       74136 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addRegOperands(Inst, 1);
    3257       37068 :       break;
    3258        5106 :     case CVT_95_addCCOutOperands:
    3259       10212 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addCCOutOperands(Inst, 1);
    3260        5106 :       break;
    3261       22162 :     case CVT_95_addCondCodeOperands:
    3262       44324 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addCondCodeOperands(Inst, 2);
    3263       22162 :       break;
    3264         241 :     case CVT_95_addRegShiftedRegOperands:
    3265         482 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addRegShiftedRegOperands(Inst, 3);
    3266         241 :       break;
    3267        1066 :     case CVT_95_addModImmOperands:
    3268        2132 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addModImmOperands(Inst, 1);
    3269        1066 :       break;
    3270          49 :     case CVT_95_addModImmNotOperands:
    3271          98 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addModImmNotOperands(Inst, 1);
    3272          49 :       break;
    3273         926 :     case CVT_95_addRegShiftedImmOperands:
    3274        1852 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addRegShiftedImmOperands(Inst, 2);
    3275         926 :       break;
    3276        4053 :     case CVT_95_addImmOperands:
    3277        4053 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addImmOperands(Inst, 1);
    3278             :       break;
    3279          69 :     case CVT_95_addT2SOImmNotOperands:
    3280         138 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addT2SOImmNotOperands(Inst, 1);
    3281          69 :       break;
    3282          35 :     case CVT_95_addImm0_95_508s4Operands:
    3283          70 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addImm0_508s4Operands(Inst, 1);
    3284          35 :       break;
    3285             :     case CVT_regSP:
    3286         598 :       Inst.addOperand(MCOperand::createReg(ARM::SP));
    3287         299 :       break;
    3288           6 :     case CVT_95_addImm0_95_508s4NegOperands:
    3289          12 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addImm0_508s4NegOperands(Inst, 1);
    3290           6 :       break;
    3291          18 :     case CVT_95_addImm0_95_4095NegOperands:
    3292          36 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addImm0_4095NegOperands(Inst, 1);
    3293          18 :       break;
    3294           4 :     case CVT_95_addThumbModImmNeg8_95_255Operands:
    3295           8 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addThumbModImmNeg8_255Operands(Inst, 1);
    3296           4 :       break;
    3297          67 :     case CVT_95_addT2SOImmNegOperands:
    3298         134 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addT2SOImmNegOperands(Inst, 1);
    3299          67 :       break;
    3300          36 :     case CVT_95_addModImmNegOperands:
    3301          72 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addModImmNegOperands(Inst, 1);
    3302          36 :       break;
    3303          14 :     case CVT_95_addImm0_95_1020s4Operands:
    3304          28 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addImm0_1020s4Operands(Inst, 1);
    3305          14 :       break;
    3306           4 :     case CVT_95_addThumbModImmNeg1_95_7Operands:
    3307           8 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addThumbModImmNeg1_7Operands(Inst, 1);
    3308           4 :       break;
    3309          29 :     case CVT_95_addUnsignedOffset_95_b8s2Operands:
    3310          58 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addUnsignedOffset_b8s2Operands(Inst, 1);
    3311          29 :       break;
    3312          26 :     case CVT_95_addAdrLabelOperands:
    3313          52 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAdrLabelOperands(Inst, 1);
    3314          26 :       break;
    3315         508 :     case CVT_95_addARMBranchTargetOperands:
    3316         508 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addARMBranchTargetOperands(Inst, 1);
    3317             :       break;
    3318         341 :     case CVT_cvtThumbBranches:
    3319         341 :       cvtThumbBranches(Inst, Operands);
    3320         341 :       break;
    3321          45 :     case CVT_95_addBitfieldOperands:
    3322          90 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addBitfieldOperands(Inst, 1);
    3323          45 :       break;
    3324             :     case CVT_imm_95_0:
    3325        2522 :       Inst.addOperand(MCOperand::createImm(0));
    3326        1261 :       break;
    3327         250 :     case CVT_95_addThumbBranchTargetOperands:
    3328         250 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addThumbBranchTargetOperands(Inst, 1);
    3329             :       break;
    3330        1400 :     case CVT_95_addCoprocNumOperands:
    3331        1400 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addCoprocNumOperands(Inst, 1);
    3332             :       break;
    3333        1521 :     case CVT_95_addCoprocRegOperands:
    3334        1521 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addCoprocRegOperands(Inst, 1);
    3335             :       break;
    3336          71 :     case CVT_95_addProcIFlagsOperands:
    3337          71 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addProcIFlagsOperands(Inst, 1);
    3338             :       break;
    3339             :     case CVT_imm_95_20:
    3340          16 :       Inst.addOperand(MCOperand::createImm(20));
    3341           8 :       break;
    3342             :     case CVT_imm_95_12:
    3343           8 :       Inst.addOperand(MCOperand::createImm(12));
    3344           4 :       break;
    3345             :     case CVT_imm_95_15:
    3346          58 :       Inst.addOperand(MCOperand::createImm(15));
    3347          29 :       break;
    3348         254 :     case CVT_95_addMemBarrierOptOperands:
    3349         254 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemBarrierOptOperands(Inst, 1);
    3350             :       break;
    3351             :     case CVT_imm_95_16:
    3352           6 :       Inst.addOperand(MCOperand::createImm(16));
    3353           3 :       break;
    3354          37 :     case CVT_95_addFPImmOperands:
    3355          74 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addFPImmOperands(Inst, 1);
    3356          37 :       break;
    3357          63 :     case CVT_95_addDPRRegListOperands:
    3358          63 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addDPRRegListOperands(Inst, 1);
    3359             :       break;
    3360             :     case CVT_imm_95_1:
    3361          68 :       Inst.addOperand(MCOperand::createImm(1));
    3362          34 :       break;
    3363          18 :     case CVT_95_addInstSyncBarrierOptOperands:
    3364          18 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addInstSyncBarrierOptOperands(Inst, 1);
    3365             :       break;
    3366        5497 :     case CVT_95_addITCondCodeOperands:
    3367        5497 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addITCondCodeOperands(Inst, 1);
    3368             :       break;
    3369        5497 :     case CVT_95_addITMaskOperands:
    3370        5497 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addITMaskOperands(Inst, 1);
    3371             :       break;
    3372        1066 :     case CVT_95_addMemNoOffsetOperands:
    3373        2132 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemNoOffsetOperands(Inst, 1);
    3374        1066 :       break;
    3375         745 :     case CVT_95_addAddrMode5Operands:
    3376        1490 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAddrMode5Operands(Inst, 2);
    3377         745 :       break;
    3378         142 :     case CVT_95_addCoprocOptionOperands:
    3379         284 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addCoprocOptionOperands(Inst, 1);
    3380             :       break;
    3381         352 :     case CVT_95_addPostIdxImm8s4Operands:
    3382         704 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addPostIdxImm8s4Operands(Inst, 1);
    3383         352 :       break;
    3384         935 :     case CVT_95_addRegListOperands:
    3385        1870 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addRegListOperands(Inst, 1);
    3386         935 :       break;
    3387          47 :     case CVT_95_addThumbMemPCOperands:
    3388          94 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addThumbMemPCOperands(Inst, 1);
    3389          47 :       break;
    3390         549 :     case CVT_95_addConstPoolAsmImmOperands:
    3391         549 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addConstPoolAsmImmOperands(Inst, 1);
    3392             :       break;
    3393          40 :     case CVT_95_addMemThumbRIs4Operands:
    3394          80 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemThumbRIs4Operands(Inst, 2);
    3395          40 :       break;
    3396          39 :     case CVT_95_addMemThumbRROperands:
    3397          78 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemThumbRROperands(Inst, 2);
    3398          39 :       break;
    3399          25 :     case CVT_95_addMemThumbSPIOperands:
    3400          50 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemThumbSPIOperands(Inst, 2);
    3401          25 :       break;
    3402         140 :     case CVT_95_addMemImm12OffsetOperands:
    3403         280 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemImm12OffsetOperands(Inst, 2);
    3404         140 :       break;
    3405          38 :     case CVT_95_addMemNegImm8OffsetOperands:
    3406          38 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemNegImm8OffsetOperands(Inst, 2);
    3407             :       break;
    3408          90 :     case CVT_95_addMemRegOffsetOperands:
    3409         180 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemRegOffsetOperands(Inst, 3);
    3410          90 :       break;
    3411         276 :     case CVT_95_addMemUImm12OffsetOperands:
    3412         552 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemUImm12OffsetOperands(Inst, 2);
    3413         276 :       break;
    3414         257 :     case CVT_95_addT2MemRegOffsetOperands:
    3415         514 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addT2MemRegOffsetOperands(Inst, 3);
    3416         257 :       break;
    3417          53 :     case CVT_95_addMemPCRelImm12Operands:
    3418         106 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemPCRelImm12Operands(Inst, 1);
    3419             :       break;
    3420         103 :     case CVT_95_addMemImm8OffsetOperands:
    3421         206 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemImm8OffsetOperands(Inst, 2);
    3422         103 :       break;
    3423          43 :     case CVT_95_addAM2OffsetImmOperands:
    3424          86 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAM2OffsetImmOperands(Inst, 2);
    3425          43 :       break;
    3426          36 :     case CVT_95_addPostIdxRegShiftedOperands:
    3427          72 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addPostIdxRegShiftedOperands(Inst, 2);
    3428          36 :       break;
    3429          23 :     case CVT_95_addMemThumbRIs1Operands:
    3430          46 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemThumbRIs1Operands(Inst, 2);
    3431          23 :       break;
    3432          42 :     case CVT_95_addMemPosImm8OffsetOperands:
    3433          42 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemPosImm8OffsetOperands(Inst, 2);
    3434             :       break;
    3435         145 :     case CVT_95_addMemImm8s4OffsetOperands:
    3436         290 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemImm8s4OffsetOperands(Inst, 2);
    3437         145 :       break;
    3438         147 :     case CVT_95_addAddrMode3Operands:
    3439         294 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAddrMode3Operands(Inst, 3);
    3440         147 :       break;
    3441          78 :     case CVT_95_addAM3OffsetOperands:
    3442         156 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAM3OffsetOperands(Inst, 2);
    3443          78 :       break;
    3444          44 :     case CVT_95_addMemImm0_95_1020s4OffsetOperands:
    3445          88 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemImm0_1020s4OffsetOperands(Inst, 2);
    3446          44 :       break;
    3447          30 :     case CVT_95_addMemThumbRIs2Operands:
    3448          60 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemThumbRIs2Operands(Inst, 2);
    3449          30 :       break;
    3450          12 :     case CVT_95_addPostIdxRegOperands:
    3451          24 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addPostIdxRegOperands(Inst, 2);
    3452          12 :       break;
    3453          16 :     case CVT_95_addPostIdxImm8Operands:
    3454          32 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addPostIdxImm8Operands(Inst, 1);
    3455          16 :       break;
    3456             :     case CVT_reg0:
    3457         110 :       Inst.addOperand(MCOperand::createReg(0));
    3458          55 :       break;
    3459             :     case CVT_regCPSR:
    3460         150 :       Inst.addOperand(MCOperand::createReg(ARM::CPSR));
    3461          75 :       break;
    3462             :     case CVT_imm_95_14:
    3463         122 :       Inst.addOperand(MCOperand::createImm(14));
    3464          61 :       break;
    3465         198 :     case CVT_95_addBankedRegOperands:
    3466         198 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addBankedRegOperands(Inst, 1);
    3467             :       break;
    3468         334 :     case CVT_95_addMSRMaskOperands:
    3469         334 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMSRMaskOperands(Inst, 1);
    3470             :       break;
    3471          30 :     case CVT_cvtThumbMultiply:
    3472          30 :       cvtThumbMultiply(Inst, Operands);
    3473          30 :       break;
    3474             :     case CVT_regR8:
    3475         136 :       Inst.addOperand(MCOperand::createReg(ARM::R8));
    3476          68 :       break;
    3477             :     case CVT_regR0:
    3478           8 :       Inst.addOperand(MCOperand::createReg(ARM::R0));
    3479           4 :       break;
    3480          12 :     case CVT_95_addPKHASRImmOperands:
    3481          24 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addPKHASRImmOperands(Inst, 1);
    3482          12 :       break;
    3483         156 :     case CVT_95_addImm1_95_32Operands:
    3484         312 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addImm1_32Operands(Inst, 1);
    3485         156 :       break;
    3486             :     case CVT_imm_95_4:
    3487          60 :       Inst.addOperand(MCOperand::createImm(4));
    3488          30 :       break;
    3489             :     case CVT_imm_95_5:
    3490          26 :       Inst.addOperand(MCOperand::createImm(5));
    3491          13 :       break;
    3492          44 :     case CVT_95_addShifterImmOperands:
    3493          88 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addShifterImmOperands(Inst, 1);
    3494             :       break;
    3495          18 :     case CVT_95_addImm1_95_16Operands:
    3496          36 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addImm1_16Operands(Inst, 1);
    3497          18 :       break;
    3498         330 :     case CVT_95_addRotImmOperands:
    3499         660 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addRotImmOperands(Inst, 1);
    3500             :       break;
    3501           7 :     case CVT_95_addMemTBBOperands:
    3502          14 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemTBBOperands(Inst, 2);
    3503           7 :       break;
    3504           7 :     case CVT_95_addMemTBHOperands:
    3505          14 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addMemTBHOperands(Inst, 2);
    3506           7 :       break;
    3507           2 :     case CVT_95_addTraceSyncBarrierOptOperands:
    3508           2 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addTraceSyncBarrierOptOperands(Inst, 1);
    3509             :       break;
    3510           4 :     case CVT_95_addNEONi16splatNotOperands:
    3511           8 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONi16splatNotOperands(Inst, 1);
    3512           4 :       break;
    3513           8 :     case CVT_95_addNEONi32splatNotOperands:
    3514          16 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONi32splatNotOperands(Inst, 1);
    3515           8 :       break;
    3516          16 :     case CVT_95_addNEONi16splatOperands:
    3517          32 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONi16splatOperands(Inst, 1);
    3518          16 :       break;
    3519          11 :     case CVT_95_addNEONi32splatOperands:
    3520          22 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONi32splatOperands(Inst, 1);
    3521          11 :       break;
    3522          40 :     case CVT_95_addComplexRotationOddOperands:
    3523          80 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addComplexRotationOddOperands(Inst, 1);
    3524          40 :       break;
    3525         120 :     case CVT_95_addComplexRotationEvenOperands:
    3526         240 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addComplexRotationEvenOperands(Inst, 1);
    3527         120 :       break;
    3528          40 :     case CVT_95_addVectorIndex64Operands:
    3529          40 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addVectorIndex64Operands(Inst, 1);
    3530             :       break;
    3531         143 :     case CVT_95_addVectorIndex32Operands:
    3532         143 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addVectorIndex32Operands(Inst, 1);
    3533             :       break;
    3534          28 :     case CVT_95_addFBits16Operands:
    3535          56 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addFBits16Operands(Inst, 1);
    3536          28 :       break;
    3537          28 :     case CVT_95_addFBits32Operands:
    3538          56 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addFBits32Operands(Inst, 1);
    3539          28 :       break;
    3540         102 :     case CVT_95_addVectorIndex16Operands:
    3541         102 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addVectorIndex16Operands(Inst, 1);
    3542             :       break;
    3543          22 :     case CVT_95_addVectorIndex8Operands:
    3544          22 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addVectorIndex8Operands(Inst, 1);
    3545             :       break;
    3546        1075 :     case CVT_95_addVecListOperands:
    3547        2150 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addVecListOperands(Inst, 1);
    3548        1075 :       break;
    3549          24 :     case CVT_95_addDupAlignedMemory16Operands:
    3550          24 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addDupAlignedMemory16Operands(Inst, 2);
    3551             :       break;
    3552         289 :     case CVT_95_addAlignedMemory64or128Operands:
    3553         289 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAlignedMemory64or128Operands(Inst, 2);
    3554             :       break;
    3555         393 :     case CVT_95_addAlignedMemory64or128or256Operands:
    3556         393 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAlignedMemory64or128or256Operands(Inst, 2);
    3557             :       break;
    3558         346 :     case CVT_95_addAlignedMemory64Operands:
    3559         346 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAlignedMemory64Operands(Inst, 2);
    3560             :       break;
    3561         327 :     case CVT_95_addVecListIndexedOperands:
    3562         654 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addVecListIndexedOperands(Inst, 2);
    3563         327 :       break;
    3564          38 :     case CVT_95_addAlignedMemory16Operands:
    3565          38 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAlignedMemory16Operands(Inst, 2);
    3566             :       break;
    3567          42 :     case CVT_95_addDupAlignedMemory32Operands:
    3568          42 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addDupAlignedMemory32Operands(Inst, 2);
    3569             :       break;
    3570          66 :     case CVT_95_addAlignedMemory32Operands:
    3571          66 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAlignedMemory32Operands(Inst, 2);
    3572             :       break;
    3573          48 :     case CVT_95_addDupAlignedMemoryNoneOperands:
    3574          48 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addDupAlignedMemoryNoneOperands(Inst, 2);
    3575             :       break;
    3576          80 :     case CVT_95_addAlignedMemoryNoneOperands:
    3577          80 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAlignedMemoryNoneOperands(Inst, 2);
    3578             :       break;
    3579           0 :     case CVT_95_addAlignedMemoryOperands:
    3580           0 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAlignedMemoryOperands(Inst, 2);
    3581           0 :       break;
    3582          36 :     case CVT_95_addDupAlignedMemory64Operands:
    3583          36 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addDupAlignedMemory64Operands(Inst, 2);
    3584             :       break;
    3585          24 :     case CVT_95_addDupAlignedMemory64or128Operands:
    3586          24 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addDupAlignedMemory64or128Operands(Inst, 2);
    3587             :       break;
    3588          10 :     case CVT_95_addSPRRegListOperands:
    3589          10 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addSPRRegListOperands(Inst, 1);
    3590             :       break;
    3591          32 :     case CVT_95_addAddrMode5FP16Operands:
    3592          64 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addAddrMode5FP16Operands(Inst, 2);
    3593          32 :       break;
    3594          38 :     case CVT_95_addNEONi32vmovOperands:
    3595          76 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONi32vmovOperands(Inst, 1);
    3596          38 :       break;
    3597           8 :     case CVT_95_addNEONvmovi8ReplicateOperands:
    3598           8 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONvmovi8ReplicateOperands(Inst, 1);
    3599             :       break;
    3600          16 :     case CVT_95_addNEONvmovi16ReplicateOperands:
    3601          32 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONvmovi16ReplicateOperands(Inst, 1);
    3602          16 :       break;
    3603           0 :     case CVT_95_addNEONi32vmovNegOperands:
    3604           0 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONi32vmovNegOperands(Inst, 1);
    3605           0 :       break;
    3606           8 :     case CVT_95_addNEONvmovi32ReplicateOperands:
    3607          16 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONvmovi32ReplicateOperands(Inst, 1);
    3608           8 :       break;
    3609           8 :     case CVT_95_addNEONi64splatOperands:
    3610          16 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONi64splatOperands(Inst, 1);
    3611           8 :       break;
    3612           4 :     case CVT_95_addNEONi8splatOperands:
    3613           8 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONi8splatOperands(Inst, 1);
    3614           4 :       break;
    3615          10 :     case CVT_95_addNEONinvi8ReplicateOperands:
    3616          10 :       static_cast<ARMOperand&>(*Operands[OpIdx]).addNEONinvi8ReplicateOperands(Inst, 1);
    3617             :       break;
    3618             :     case CVT_imm_95_2:
    3619          68 :       Inst.addOperand(MCOperand::createImm(2));
    3620          34 :       break;
    3621             :     case CVT_imm_95_3:
    3622          68 :       Inst.addOperand(MCOperand::createImm(3));
    3623          34 :       break;
    3624             :     }
    3625             :   }
    3626       30396 : }
    3627             : 
    3628           0 : void ARMAsmParser::
    3629             : convertToMapAndConstraints(unsigned Kind,
    3630             :                            const OperandVector &Operands) {
    3631             :   assert(Kind < CVT_NUM_SIGNATURES && "Invalid signature!");
    3632             :   unsigned NumMCOperands = 0;
    3633           0 :   const uint8_t *Converter = ConversionTable[Kind];
    3634           0 :   for (const uint8_t *p = Converter; *p; p+= 2) {
    3635           0 :     switch (*p) {
    3636           0 :     default: llvm_unreachable("invalid conversion entry!");
    3637           0 :     case CVT_Reg:
    3638           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3639           0 :       Operands[*(p + 1)]->setConstraint("r");
    3640           0 :       ++NumMCOperands;
    3641           0 :       break;
    3642           0 :     case CVT_Tied:
    3643           0 :       ++NumMCOperands;
    3644           0 :       break;
    3645           0 :     case CVT_95_Reg:
    3646           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3647           0 :       Operands[*(p + 1)]->setConstraint("r");
    3648           0 :       NumMCOperands += 1;
    3649           0 :       break;
    3650           0 :     case CVT_95_addCCOutOperands:
    3651           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3652           0 :       Operands[*(p + 1)]->setConstraint("m");
    3653           0 :       NumMCOperands += 1;
    3654           0 :       break;
    3655           0 :     case CVT_95_addCondCodeOperands:
    3656           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3657           0 :       Operands[*(p + 1)]->setConstraint("m");
    3658           0 :       NumMCOperands += 2;
    3659           0 :       break;
    3660           0 :     case CVT_95_addRegShiftedRegOperands:
    3661           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3662           0 :       Operands[*(p + 1)]->setConstraint("m");
    3663           0 :       NumMCOperands += 3;
    3664           0 :       break;
    3665           0 :     case CVT_95_addModImmOperands:
    3666           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3667           0 :       Operands[*(p + 1)]->setConstraint("m");
    3668           0 :       NumMCOperands += 1;
    3669           0 :       break;
    3670           0 :     case CVT_95_addModImmNotOperands:
    3671           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3672           0 :       Operands[*(p + 1)]->setConstraint("m");
    3673           0 :       NumMCOperands += 1;
    3674           0 :       break;
    3675           0 :     case CVT_95_addRegShiftedImmOperands:
    3676           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3677           0 :       Operands[*(p + 1)]->setConstraint("m");
    3678           0 :       NumMCOperands += 2;
    3679           0 :       break;
    3680           0 :     case CVT_95_addImmOperands:
    3681           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3682           0 :       Operands[*(p + 1)]->setConstraint("m");
    3683           0 :       NumMCOperands += 1;
    3684           0 :       break;
    3685           0 :     case CVT_95_addT2SOImmNotOperands:
    3686           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3687           0 :       Operands[*(p + 1)]->setConstraint("m");
    3688           0 :       NumMCOperands += 1;
    3689           0 :       break;
    3690           0 :     case CVT_95_addImm0_95_508s4Operands:
    3691           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3692           0 :       Operands[*(p + 1)]->setConstraint("m");
    3693           0 :       NumMCOperands += 1;
    3694           0 :       break;
    3695           0 :     case CVT_regSP:
    3696           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3697           0 :       Operands[*(p + 1)]->setConstraint("m");
    3698           0 :       ++NumMCOperands;
    3699           0 :       break;
    3700           0 :     case CVT_95_addImm0_95_508s4NegOperands:
    3701           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3702           0 :       Operands[*(p + 1)]->setConstraint("m");
    3703           0 :       NumMCOperands += 1;
    3704           0 :       break;
    3705           0 :     case CVT_95_addImm0_95_4095NegOperands:
    3706           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3707           0 :       Operands[*(p + 1)]->setConstraint("m");
    3708           0 :       NumMCOperands += 1;
    3709           0 :       break;
    3710           0 :     case CVT_95_addThumbModImmNeg8_95_255Operands:
    3711           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3712           0 :       Operands[*(p + 1)]->setConstraint("m");
    3713           0 :       NumMCOperands += 1;
    3714           0 :       break;
    3715           0 :     case CVT_95_addT2SOImmNegOperands:
    3716           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3717           0 :       Operands[*(p + 1)]->setConstraint("m");
    3718           0 :       NumMCOperands += 1;
    3719           0 :       break;
    3720           0 :     case CVT_95_addModImmNegOperands:
    3721           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3722           0 :       Operands[*(p + 1)]->setConstraint("m");
    3723           0 :       NumMCOperands += 1;
    3724           0 :       break;
    3725           0 :     case CVT_95_addImm0_95_1020s4Operands:
    3726           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3727           0 :       Operands[*(p + 1)]->setConstraint("m");
    3728           0 :       NumMCOperands += 1;
    3729           0 :       break;
    3730           0 :     case CVT_95_addThumbModImmNeg1_95_7Operands:
    3731           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3732           0 :       Operands[*(p + 1)]->setConstraint("m");
    3733           0 :       NumMCOperands += 1;
    3734           0 :       break;
    3735           0 :     case CVT_95_addUnsignedOffset_95_b8s2Operands:
    3736           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3737           0 :       Operands[*(p + 1)]->setConstraint("m");
    3738           0 :       NumMCOperands += 1;
    3739           0 :       break;
    3740           0 :     case CVT_95_addAdrLabelOperands:
    3741           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3742           0 :       Operands[*(p + 1)]->setConstraint("m");
    3743           0 :       NumMCOperands += 1;
    3744           0 :       break;
    3745           0 :     case CVT_95_addARMBranchTargetOperands:
    3746           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3747           0 :       Operands[*(p + 1)]->setConstraint("m");
    3748           0 :       NumMCOperands += 1;
    3749           0 :       break;
    3750           0 :     case CVT_95_addBitfieldOperands:
    3751           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3752           0 :       Operands[*(p + 1)]->setConstraint("m");
    3753           0 :       NumMCOperands += 1;
    3754           0 :       break;
    3755           0 :     case CVT_imm_95_0:
    3756           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3757           0 :       Operands[*(p + 1)]->setConstraint("");
    3758           0 :       ++NumMCOperands;
    3759           0 :       break;
    3760           0 :     case CVT_95_addThumbBranchTargetOperands:
    3761           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3762           0 :       Operands[*(p + 1)]->setConstraint("m");
    3763           0 :       NumMCOperands += 1;
    3764           0 :       break;
    3765           0 :     case CVT_95_addCoprocNumOperands:
    3766           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3767           0 :       Operands[*(p + 1)]->setConstraint("m");
    3768           0 :       NumMCOperands += 1;
    3769           0 :       break;
    3770           0 :     case CVT_95_addCoprocRegOperands:
    3771           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3772           0 :       Operands[*(p + 1)]->setConstraint("m");
    3773           0 :       NumMCOperands += 1;
    3774           0 :       break;
    3775           0 :     case CVT_95_addProcIFlagsOperands:
    3776           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3777           0 :       Operands[*(p + 1)]->setConstraint("m");
    3778           0 :       NumMCOperands += 1;
    3779           0 :       break;
    3780           0 :     case CVT_imm_95_20:
    3781           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3782           0 :       Operands[*(p + 1)]->setConstraint("");
    3783           0 :       ++NumMCOperands;
    3784           0 :       break;
    3785           0 :     case CVT_imm_95_12:
    3786           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3787           0 :       Operands[*(p + 1)]->setConstraint("");
    3788           0 :       ++NumMCOperands;
    3789           0 :       break;
    3790           0 :     case CVT_imm_95_15:
    3791           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3792           0 :       Operands[*(p + 1)]->setConstraint("");
    3793           0 :       ++NumMCOperands;
    3794           0 :       break;
    3795           0 :     case CVT_95_addMemBarrierOptOperands:
    3796           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3797           0 :       Operands[*(p + 1)]->setConstraint("m");
    3798           0 :       NumMCOperands += 1;
    3799           0 :       break;
    3800           0 :     case CVT_imm_95_16:
    3801           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3802           0 :       Operands[*(p + 1)]->setConstraint("");
    3803           0 :       ++NumMCOperands;
    3804           0 :       break;
    3805           0 :     case CVT_95_addFPImmOperands:
    3806           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3807           0 :       Operands[*(p + 1)]->setConstraint("m");
    3808           0 :       NumMCOperands += 1;
    3809           0 :       break;
    3810           0 :     case CVT_95_addDPRRegListOperands:
    3811           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3812           0 :       Operands[*(p + 1)]->setConstraint("m");
    3813           0 :       NumMCOperands += 1;
    3814           0 :       break;
    3815           0 :     case CVT_imm_95_1:
    3816           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3817           0 :       Operands[*(p + 1)]->setConstraint("");
    3818           0 :       ++NumMCOperands;
    3819           0 :       break;
    3820           0 :     case CVT_95_addInstSyncBarrierOptOperands:
    3821           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3822           0 :       Operands[*(p + 1)]->setConstraint("m");
    3823           0 :       NumMCOperands += 1;
    3824           0 :       break;
    3825           0 :     case CVT_95_addITCondCodeOperands:
    3826           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3827           0 :       Operands[*(p + 1)]->setConstraint("m");
    3828           0 :       NumMCOperands += 1;
    3829           0 :       break;
    3830           0 :     case CVT_95_addITMaskOperands:
    3831           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3832           0 :       Operands[*(p + 1)]->setConstraint("m");
    3833           0 :       NumMCOperands += 1;
    3834           0 :       break;
    3835           0 :     case CVT_95_addMemNoOffsetOperands:
    3836           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3837           0 :       Operands[*(p + 1)]->setConstraint("m");
    3838           0 :       NumMCOperands += 1;
    3839           0 :       break;
    3840           0 :     case CVT_95_addAddrMode5Operands:
    3841           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3842           0 :       Operands[*(p + 1)]->setConstraint("m");
    3843           0 :       NumMCOperands += 2;
    3844           0 :       break;
    3845           0 :     case CVT_95_addCoprocOptionOperands:
    3846           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3847           0 :       Operands[*(p + 1)]->setConstraint("m");
    3848           0 :       NumMCOperands += 1;
    3849           0 :       break;
    3850           0 :     case CVT_95_addPostIdxImm8s4Operands:
    3851           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3852           0 :       Operands[*(p + 1)]->setConstraint("m");
    3853           0 :       NumMCOperands += 1;
    3854           0 :       break;
    3855           0 :     case CVT_95_addRegListOperands:
    3856           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3857           0 :       Operands[*(p + 1)]->setConstraint("m");
    3858           0 :       NumMCOperands += 1;
    3859           0 :       break;
    3860           0 :     case CVT_95_addThumbMemPCOperands:
    3861           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3862           0 :       Operands[*(p + 1)]->setConstraint("m");
    3863           0 :       NumMCOperands += 1;
    3864           0 :       break;
    3865           0 :     case CVT_95_addConstPoolAsmImmOperands:
    3866           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3867           0 :       Operands[*(p + 1)]->setConstraint("m");
    3868           0 :       NumMCOperands += 1;
    3869           0 :       break;
    3870           0 :     case CVT_95_addMemThumbRIs4Operands:
    3871           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3872           0 :       Operands[*(p + 1)]->setConstraint("m");
    3873           0 :       NumMCOperands += 2;
    3874           0 :       break;
    3875           0 :     case CVT_95_addMemThumbRROperands:
    3876           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3877           0 :       Operands[*(p + 1)]->setConstraint("m");
    3878           0 :       NumMCOperands += 2;
    3879           0 :       break;
    3880           0 :     case CVT_95_addMemThumbSPIOperands:
    3881           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3882           0 :       Operands[*(p + 1)]->setConstraint("m");
    3883           0 :       NumMCOperands += 2;
    3884           0 :       break;
    3885           0 :     case CVT_95_addMemImm12OffsetOperands:
    3886           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3887           0 :       Operands[*(p + 1)]->setConstraint("m");
    3888           0 :       NumMCOperands += 2;
    3889           0 :       break;
    3890           0 :     case CVT_95_addMemNegImm8OffsetOperands:
    3891           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3892           0 :       Operands[*(p + 1)]->setConstraint("m");
    3893           0 :       NumMCOperands += 2;
    3894           0 :       break;
    3895           0 :     case CVT_95_addMemRegOffsetOperands:
    3896           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3897           0 :       Operands[*(p + 1)]->setConstraint("m");
    3898           0 :       NumMCOperands += 3;
    3899           0 :       break;
    3900           0 :     case CVT_95_addMemUImm12OffsetOperands:
    3901           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3902           0 :       Operands[*(p + 1)]->setConstraint("m");
    3903           0 :       NumMCOperands += 2;
    3904           0 :       break;
    3905           0 :     case CVT_95_addT2MemRegOffsetOperands:
    3906           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3907           0 :       Operands[*(p + 1)]->setConstraint("m");
    3908           0 :       NumMCOperands += 3;
    3909           0 :       break;
    3910           0 :     case CVT_95_addMemPCRelImm12Operands:
    3911           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3912           0 :       Operands[*(p + 1)]->setConstraint("m");
    3913           0 :       NumMCOperands += 1;
    3914           0 :       break;
    3915           0 :     case CVT_95_addMemImm8OffsetOperands:
    3916           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3917           0 :       Operands[*(p + 1)]->setConstraint("m");
    3918           0 :       NumMCOperands += 2;
    3919           0 :       break;
    3920           0 :     case CVT_95_addAM2OffsetImmOperands:
    3921           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3922           0 :       Operands[*(p + 1)]->setConstraint("m");
    3923           0 :       NumMCOperands += 2;
    3924           0 :       break;
    3925           0 :     case CVT_95_addPostIdxRegShiftedOperands:
    3926           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3927           0 :       Operands[*(p + 1)]->setConstraint("m");
    3928           0 :       NumMCOperands += 2;
    3929           0 :       break;
    3930           0 :     case CVT_95_addMemThumbRIs1Operands:
    3931           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3932           0 :       Operands[*(p + 1)]->setConstraint("m");
    3933           0 :       NumMCOperands += 2;
    3934           0 :       break;
    3935           0 :     case CVT_95_addMemPosImm8OffsetOperands:
    3936           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3937           0 :       Operands[*(p + 1)]->setConstraint("m");
    3938           0 :       NumMCOperands += 2;
    3939           0 :       break;
    3940           0 :     case CVT_95_addMemImm8s4OffsetOperands:
    3941           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3942           0 :       Operands[*(p + 1)]->setConstraint("m");
    3943           0 :       NumMCOperands += 2;
    3944           0 :       break;
    3945           0 :     case CVT_95_addAddrMode3Operands:
    3946           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3947           0 :       Operands[*(p + 1)]->setConstraint("m");
    3948           0 :       NumMCOperands += 3;
    3949           0 :       break;
    3950           0 :     case CVT_95_addAM3OffsetOperands:
    3951           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3952           0 :       Operands[*(p + 1)]->setConstraint("m");
    3953           0 :       NumMCOperands += 2;
    3954           0 :       break;
    3955           0 :     case CVT_95_addMemImm0_95_1020s4OffsetOperands:
    3956           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3957           0 :       Operands[*(p + 1)]->setConstraint("m");
    3958           0 :       NumMCOperands += 2;
    3959           0 :       break;
    3960           0 :     case CVT_95_addMemThumbRIs2Operands:
    3961           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3962           0 :       Operands[*(p + 1)]->setConstraint("m");
    3963           0 :       NumMCOperands += 2;
    3964           0 :       break;
    3965           0 :     case CVT_95_addPostIdxRegOperands:
    3966           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3967           0 :       Operands[*(p + 1)]->setConstraint("m");
    3968           0 :       NumMCOperands += 2;
    3969           0 :       break;
    3970           0 :     case CVT_95_addPostIdxImm8Operands:
    3971           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3972           0 :       Operands[*(p + 1)]->setConstraint("m");
    3973           0 :       NumMCOperands += 1;
    3974           0 :       break;
    3975           0 :     case CVT_reg0:
    3976           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3977           0 :       Operands[*(p + 1)]->setConstraint("m");
    3978           0 :       ++NumMCOperands;
    3979           0 :       break;
    3980           0 :     case CVT_regCPSR:
    3981           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3982           0 :       Operands[*(p + 1)]->setConstraint("m");
    3983           0 :       ++NumMCOperands;
    3984           0 :       break;
    3985           0 :     case CVT_imm_95_14:
    3986           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3987           0 :       Operands[*(p + 1)]->setConstraint("");
    3988           0 :       ++NumMCOperands;
    3989           0 :       break;
    3990           0 :     case CVT_95_addBankedRegOperands:
    3991           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3992           0 :       Operands[*(p + 1)]->setConstraint("m");
    3993           0 :       NumMCOperands += 1;
    3994           0 :       break;
    3995           0 :     case CVT_95_addMSRMaskOperands:
    3996           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    3997           0 :       Operands[*(p + 1)]->setConstraint("m");
    3998           0 :       NumMCOperands += 1;
    3999           0 :       break;
    4000           0 :     case CVT_regR8:
    4001           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4002           0 :       Operands[*(p + 1)]->setConstraint("m");
    4003           0 :       ++NumMCOperands;
    4004           0 :       break;
    4005           0 :     case CVT_regR0:
    4006           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4007           0 :       Operands[*(p + 1)]->setConstraint("m");
    4008           0 :       ++NumMCOperands;
    4009           0 :       break;
    4010           0 :     case CVT_95_addPKHASRImmOperands:
    4011           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4012           0 :       Operands[*(p + 1)]->setConstraint("m");
    4013           0 :       NumMCOperands += 1;
    4014           0 :       break;
    4015           0 :     case CVT_95_addImm1_95_32Operands:
    4016           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4017           0 :       Operands[*(p + 1)]->setConstraint("m");
    4018           0 :       NumMCOperands += 1;
    4019           0 :       break;
    4020           0 :     case CVT_imm_95_4:
    4021           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4022           0 :       Operands[*(p + 1)]->setConstraint("");
    4023           0 :       ++NumMCOperands;
    4024           0 :       break;
    4025           0 :     case CVT_imm_95_5:
    4026           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4027           0 :       Operands[*(p + 1)]->setConstraint("");
    4028           0 :       ++NumMCOperands;
    4029           0 :       break;
    4030           0 :     case CVT_95_addShifterImmOperands:
    4031           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4032           0 :       Operands[*(p + 1)]->setConstraint("m");
    4033           0 :       NumMCOperands += 1;
    4034           0 :       break;
    4035           0 :     case CVT_95_addImm1_95_16Operands:
    4036           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4037           0 :       Operands[*(p + 1)]->setConstraint("m");
    4038           0 :       NumMCOperands += 1;
    4039           0 :       break;
    4040           0 :     case CVT_95_addRotImmOperands:
    4041           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4042           0 :       Operands[*(p + 1)]->setConstraint("m");
    4043           0 :       NumMCOperands += 1;
    4044           0 :       break;
    4045           0 :     case CVT_95_addMemTBBOperands:
    4046           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4047           0 :       Operands[*(p + 1)]->setConstraint("m");
    4048           0 :       NumMCOperands += 2;
    4049           0 :       break;
    4050           0 :     case CVT_95_addMemTBHOperands:
    4051           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4052           0 :       Operands[*(p + 1)]->setConstraint("m");
    4053           0 :       NumMCOperands += 2;
    4054           0 :       break;
    4055           0 :     case CVT_95_addTraceSyncBarrierOptOperands:
    4056           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4057           0 :       Operands[*(p + 1)]->setConstraint("m");
    4058           0 :       NumMCOperands += 1;
    4059           0 :       break;
    4060           0 :     case CVT_95_addNEONi16splatNotOperands:
    4061           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4062           0 :       Operands[*(p + 1)]->setConstraint("m");
    4063           0 :       NumMCOperands += 1;
    4064           0 :       break;
    4065           0 :     case CVT_95_addNEONi32splatNotOperands:
    4066           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4067           0 :       Operands[*(p + 1)]->setConstraint("m");
    4068           0 :       NumMCOperands += 1;
    4069           0 :       break;
    4070           0 :     case CVT_95_addNEONi16splatOperands:
    4071           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4072           0 :       Operands[*(p + 1)]->setConstraint("m");
    4073           0 :       NumMCOperands += 1;
    4074           0 :       break;
    4075           0 :     case CVT_95_addNEONi32splatOperands:
    4076           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4077           0 :       Operands[*(p + 1)]->setConstraint("m");
    4078           0 :       NumMCOperands += 1;
    4079           0 :       break;
    4080           0 :     case CVT_95_addComplexRotationOddOperands:
    4081           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4082           0 :       Operands[*(p + 1)]->setConstraint("m");
    4083           0 :       NumMCOperands += 1;
    4084           0 :       break;
    4085           0 :     case CVT_95_addComplexRotationEvenOperands:
    4086           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4087           0 :       Operands[*(p + 1)]->setConstraint("m");
    4088           0 :       NumMCOperands += 1;
    4089           0 :       break;
    4090           0 :     case CVT_95_addVectorIndex64Operands:
    4091           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4092           0 :       Operands[*(p + 1)]->setConstraint("m");
    4093           0 :       NumMCOperands += 1;
    4094           0 :       break;
    4095           0 :     case CVT_95_addVectorIndex32Operands:
    4096           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4097           0 :       Operands[*(p + 1)]->setConstraint("m");
    4098           0 :       NumMCOperands += 1;
    4099           0 :       break;
    4100           0 :     case CVT_95_addFBits16Operands:
    4101           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4102           0 :       Operands[*(p + 1)]->setConstraint("m");
    4103           0 :       NumMCOperands += 1;
    4104           0 :       break;
    4105           0 :     case CVT_95_addFBits32Operands:
    4106           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4107           0 :       Operands[*(p + 1)]->setConstraint("m");
    4108           0 :       NumMCOperands += 1;
    4109           0 :       break;
    4110           0 :     case CVT_95_addVectorIndex16Operands:
    4111           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4112           0 :       Operands[*(p + 1)]->setConstraint("m");
    4113           0 :       NumMCOperands += 1;
    4114           0 :       break;
    4115           0 :     case CVT_95_addVectorIndex8Operands:
    4116           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4117           0 :       Operands[*(p + 1)]->setConstraint("m");
    4118           0 :       NumMCOperands += 1;
    4119           0 :       break;
    4120           0 :     case CVT_95_addVecListOperands:
    4121           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4122           0 :       Operands[*(p + 1)]->setConstraint("m");
    4123           0 :       NumMCOperands += 1;
    4124           0 :       break;
    4125           0 :     case CVT_95_addDupAlignedMemory16Operands:
    4126           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4127           0 :       Operands[*(p + 1)]->setConstraint("m");
    4128           0 :       NumMCOperands += 2;
    4129           0 :       break;
    4130           0 :     case CVT_95_addAlignedMemory64or128Operands:
    4131           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4132           0 :       Operands[*(p + 1)]->setConstraint("m");
    4133           0 :       NumMCOperands += 2;
    4134           0 :       break;
    4135           0 :     case CVT_95_addAlignedMemory64or128or256Operands:
    4136           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4137           0 :       Operands[*(p + 1)]->setConstraint("m");
    4138           0 :       NumMCOperands += 2;
    4139           0 :       break;
    4140           0 :     case CVT_95_addAlignedMemory64Operands:
    4141           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4142           0 :       Operands[*(p + 1)]->setConstraint("m");
    4143           0 :       NumMCOperands += 2;
    4144           0 :       break;
    4145           0 :     case CVT_95_addVecListIndexedOperands:
    4146           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4147           0 :       Operands[*(p + 1)]->setConstraint("m");
    4148           0 :       NumMCOperands += 2;
    4149           0 :       break;
    4150           0 :     case CVT_95_addAlignedMemory16Operands:
    4151           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4152           0 :       Operands[*(p + 1)]->setConstraint("m");
    4153           0 :       NumMCOperands += 2;
    4154           0 :       break;
    4155           0 :     case CVT_95_addDupAlignedMemory32Operands:
    4156           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4157           0 :       Operands[*(p + 1)]->setConstraint("m");
    4158           0 :       NumMCOperands += 2;
    4159           0 :       break;
    4160           0 :     case CVT_95_addAlignedMemory32Operands:
    4161           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4162           0 :       Operands[*(p + 1)]->setConstraint("m");
    4163           0 :       NumMCOperands += 2;
    4164           0 :       break;
    4165           0 :     case CVT_95_addDupAlignedMemoryNoneOperands:
    4166           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4167           0 :       Operands[*(p + 1)]->setConstraint("m");
    4168           0 :       NumMCOperands += 2;
    4169           0 :       break;
    4170           0 :     case CVT_95_addAlignedMemoryNoneOperands:
    4171           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4172           0 :       Operands[*(p + 1)]->setConstraint("m");
    4173           0 :       NumMCOperands += 2;
    4174           0 :       break;
    4175           0 :     case CVT_95_addAlignedMemoryOperands:
    4176           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4177           0 :       Operands[*(p + 1)]->setConstraint("m");
    4178           0 :       NumMCOperands += 2;
    4179           0 :       break;
    4180           0 :     case CVT_95_addDupAlignedMemory64Operands:
    4181           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4182           0 :       Operands[*(p + 1)]->setConstraint("m");
    4183           0 :       NumMCOperands += 2;
    4184           0 :       break;
    4185           0 :     case CVT_95_addDupAlignedMemory64or128Operands:
    4186           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4187           0 :       Operands[*(p + 1)]->setConstraint("m");
    4188           0 :       NumMCOperands += 2;
    4189           0 :       break;
    4190           0 :     case CVT_95_addSPRRegListOperands:
    4191           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4192           0 :       Operands[*(p + 1)]->setConstraint("m");
    4193           0 :       NumMCOperands += 1;
    4194           0 :       break;
    4195           0 :     case CVT_95_addAddrMode5FP16Operands:
    4196           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4197           0 :       Operands[*(p + 1)]->setConstraint("m");
    4198           0 :       NumMCOperands += 2;
    4199           0 :       break;
    4200           0 :     case CVT_95_addNEONi32vmovOperands:
    4201           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4202           0 :       Operands[*(p + 1)]->setConstraint("m");
    4203           0 :       NumMCOperands += 1;
    4204           0 :       break;
    4205           0 :     case CVT_95_addNEONvmovi8ReplicateOperands:
    4206           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4207           0 :       Operands[*(p + 1)]->setConstraint("m");
    4208           0 :       NumMCOperands += 1;
    4209           0 :       break;
    4210           0 :     case CVT_95_addNEONvmovi16ReplicateOperands:
    4211           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4212           0 :       Operands[*(p + 1)]->setConstraint("m");
    4213           0 :       NumMCOperands += 1;
    4214           0 :       break;
    4215           0 :     case CVT_95_addNEONi32vmovNegOperands:
    4216           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4217           0 :       Operands[*(p + 1)]->setConstraint("m");
    4218           0 :       NumMCOperands += 1;
    4219           0 :       break;
    4220           0 :     case CVT_95_addNEONvmovi32ReplicateOperands:
    4221           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4222           0 :       Operands[*(p + 1)]->setConstraint("m");
    4223           0 :       NumMCOperands += 1;
    4224           0 :       break;
    4225           0 :     case CVT_95_addNEONi64splatOperands:
    4226           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4227           0 :       Operands[*(p + 1)]->setConstraint("m");
    4228           0 :       NumMCOperands += 1;
    4229           0 :       break;
    4230           0 :     case CVT_95_addNEONi8splatOperands:
    4231           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4232           0 :       Operands[*(p + 1)]->setConstraint("m");
    4233           0 :       NumMCOperands += 1;
    4234           0 :       break;
    4235           0 :     case CVT_95_addNEONinvi8ReplicateOperands:
    4236           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4237           0 :       Operands[*(p + 1)]->setConstraint("m");
    4238           0 :       NumMCOperands += 1;
    4239           0 :       break;
    4240           0 :     case CVT_imm_95_2:
    4241           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4242           0 :       Operands[*(p + 1)]->setConstraint("");
    4243           0 :       ++NumMCOperands;
    4244           0 :       break;
    4245           0 :     case CVT_imm_95_3:
    4246           0 :       Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
    4247           0 :       Operands[*(p + 1)]->setConstraint("");
    4248           0 :       ++NumMCOperands;
    4249           0 :       break;
    4250             :     }
    4251             :   }
    4252           0 : }
    4253             : 
    4254             : namespace {
    4255             : 
    4256             : /// MatchClassKind - The kinds of classes which participate in
    4257             : /// instruction matching.
    4258             : enum MatchClassKind {
    4259             :   InvalidMatchClass = 0,
    4260             :   OptionalMatchClass = 1,
    4261             :   MCK__DOT_d, // '.d'
    4262             :   MCK__DOT_f, // '.f'
    4263             :   MCK__DOT_s16, // '.s16'
    4264             :   MCK__DOT_s32, // '.s32'
    4265             :   MCK__DOT_s64, // '.s64'
    4266             :   MCK__DOT_s8, // '.s8'
    4267             :   MCK__DOT_u16, // '.u16'
    4268             :   MCK__DOT_u32, // '.u32'
    4269             :   MCK__DOT_u64, // '.u64'
    4270             :   MCK__DOT_u8, // '.u8'
    4271             :   MCK__DOT_f32, // '.f32'
    4272             :   MCK__DOT_f64, // '.f64'
    4273             :   MCK__DOT_i16, // '.i16'
    4274             :   MCK__DOT_i32, // '.i32'
    4275             :   MCK__DOT_i64, // '.i64'
    4276             :   MCK__DOT_i8, // '.i8'
    4277             :   MCK__DOT_p16, // '.p16'
    4278             :   MCK__DOT_p8, // '.p8'
    4279             :   MCK__EXCLAIM_, // '!'
    4280             :   MCK__35_0, // '#0'
    4281             :   MCK__DOT_16, // '.16'
    4282             :   MCK__DOT_32, // '.32'
    4283             :   MCK__DOT_64, // '.64'
    4284             :   MCK__DOT_8, // '.8'
    4285             :   MCK__DOT_f16, // '.f16'
    4286             :   MCK__DOT_p64, // '.p64'
    4287             :   MCK__DOT_w, // '.w'
    4288             :   MCK__91_, // '['
    4289             :   MCK__93_, // ']'
    4290             :   MCK__94_, // '^'
    4291             :   MCK__123_, // '{'
    4292             :   MCK__125_, // '}'
    4293             :   MCK_LAST_TOKEN = MCK__125_,
    4294             :   MCK_Reg11, // derived register class
    4295             :   MCK_Reg59, // derived register class
    4296             :   MCK_Reg75, // derived register class
    4297             :   MCK_APSR, // register class 'APSR'
    4298             :   MCK_APSR_NZCV, // register class 'APSR_NZCV'
    4299             :   MCK_CCR, // register class 'CCR,CPSR'
    4300             :   MCK_FPEXC, // register class 'FPEXC'
    4301             :   MCK_FPINST, // register class 'FPINST'
    4302             :   MCK_FPINST2, // register class 'FPINST2'
    4303             :   MCK_FPSCR, // register class 'FPSCR'
    4304             :   MCK_FPSID, // register class 'FPSID'
    4305             :   MCK_GPRsp, // register class 'GPRsp,SP'
    4306             :   MCK_LR, // register class 'LR'
    4307             :   MCK_MVFR0, // register class 'MVFR0'
    4308             :   MCK_MVFR1, // register class 'MVFR1'
    4309             :   MCK_MVFR2, // register class 'MVFR2'
    4310             :   MCK_PC, // register class 'PC'
    4311             :   MCK_SPSR, // register class 'SPSR'
    4312             :   MCK_Reg60, // derived register class
    4313             :   MCK_Reg68, // derived register class
    4314             :   MCK_Reg73, // derived register class
    4315             :   MCK_Reg100, // derived register class
    4316             :   MCK_Reg45, // derived register class
    4317             :   MCK_Reg61, // derived register class
    4318             :   MCK_Reg72, // derived register class
    4319             :   MCK_Reg74, // derived register class
    4320             :   MCK_Reg83, // derived register class
    4321             :   MCK_Reg88, // derived register class
    4322             :   MCK_Reg101, // derived register class
    4323             :   MCK_Reg0, // derived register class
    4324             :   MCK_Reg46, // derived register class
    4325             :   MCK_Reg62, // derived register class
    4326             :   MCK_Reg69, // derived register class
    4327             :   MCK_Reg84, // derived register class
    4328             :   MCK_Reg89, // derived register class
    4329             :   MCK_Reg93, // derived register class
    4330             :   MCK_Reg102, // derived register class
    4331             :   MCK_QPR_8, // register class 'QPR_8'
    4332             :   MCK_Reg57, // derived register class
    4333             :   MCK_Reg63, // derived register class
    4334             :   MCK_tcGPR, // register class 'tcGPR'
    4335             :   MCK_Reg10, // derived register class
    4336             :   MCK_Reg40, // derived register class
    4337             :   MCK_Reg58, // derived register class
    4338             :   MCK_Reg64, // derived register class
    4339             :   MCK_Reg70, // derived register class
    4340             :   MCK_Reg76, // derived register class
    4341             :   MCK_Reg94, // derived register class
    4342             :   MCK_Reg103, // derived register class
    4343             :   MCK_Reg8, // derived register class
    4344             :   MCK_Reg26, // derived register class
    4345             :   MCK_Reg47, // derived register class
    4346             :   MCK_Reg55, // derived register class
    4347             :   MCK_Reg65, // derived register class
    4348             :   MCK_Reg77, // derived register class
    4349             :   MCK_Reg85, // derived register class
    4350             :   MCK_Reg90, // derived register class
    4351             :   MCK_Reg104, // derived register class
    4352             :   MCK_GPRPair, // register class 'GPRPair'
    4353             :   MCK_Reg27, // derived register class
    4354             :   MCK_Reg41, // derived register class
    4355             :   MCK_Reg48, // derived register class
    4356             :   MCK_Reg56, // derived register class
    4357             :   MCK_Reg66, // derived register class
    4358             :   MCK_Reg78, // derived register class
    4359             :   MCK_Reg86, // derived register class
    4360             :   MCK_Reg91, // derived register class
    4361             :   MCK_Reg95, // derived register class
    4362             :   MCK_Reg105, // derived register class
    4363             :   MCK_DPR_8, // register class 'DPR_8'
    4364             :   MCK_QPR_VFP2, // register class 'QPR_VFP2'
    4365             :   MCK_hGPR, // register class 'hGPR'
    4366             :   MCK_tGPR, // register class 'tGPR'
    4367             :   MCK_tGPRwithpc, // register class 'tGPRwithpc'
    4368             :   MCK_Reg96, // derived register class
    4369             :   MCK_Reg53, // derived register class
    4370             :   MCK_QQQQPR, // register class 'QQQQPR'
    4371             :   MCK_Reg42, // derived register class
    4372             :   MCK_Reg54, // derived register class
    4373             :   MCK_Reg79, // derived register class
    4374             :   MCK_Reg97, // derived register class
    4375             :   MCK_Reg106, // derived register class
    4376             :   MCK_rGPR, // register class 'rGPR'
    4377             :   MCK_Reg24, // derived register class
    4378             :   MCK_Reg51, // derived register class
    4379             :   MCK_Reg80, // derived register class
    4380             :   MCK_Reg87, // derived register class
    4381             :   MCK_Reg92, // derived register class
    4382             :   MCK_GPRnopc, // register class 'GPRnopc'
    4383             :   MCK_QQPR, // register class 'QQPR'
    4384             :   MCK_Reg25, // derived register class
    4385             :   MCK_Reg43, // derived register class
    4386             :   MCK_Reg52, // derived register class
    4387             :   MCK_Reg81, // derived register class
    4388             :   MCK_Reg98, // derived register class
    4389             :   MCK_DPR_VFP2, // register class 'DPR_VFP2'
    4390             :   MCK_GPR, // register class 'GPR'
    4391             :   MCK_GPRwithAPSR, // register class 'GPRwithAPSR'
    4392             :   MCK_QPR, // register class 'QPR'
    4393             :   MCK_SPR_8, // register class 'SPR_8'
    4394             :   MCK_DTripleSpc, // register class 'DTripleSpc,DQuadSpc'
    4395             :   MCK_DQuad, // register class 'DQuad'
    4396             :   MCK_DPairSpc, // register class 'DPairSpc'
    4397             :   MCK_DTriple, // register class 'DTriple'
    4398             :   MCK_DPair, // register class 'DPair'
    4399             :   MCK_DPR, // register class 'DPR'
    4400             :   MCK_HPR, // register class 'HPR,SPR'
    4401             :   MCK_LAST_REGISTER = MCK_HPR,
    4402             :   MCK_AM2OffsetImm, // user defined class 'AM2OffsetImmAsmOperand'
    4403             :   MCK_AM3Offset, // user defined class 'AM3OffsetAsmOperand'
    4404             :   MCK_ARMBranchTarget, // user defined class 'ARMBranchTarget'
    4405             :   MCK_AddrMode3, // user defined class 'AddrMode3AsmOperand'
    4406             :   MCK_AddrMode5, // user defined class 'AddrMode5AsmOperand'
    4407             :   MCK_AddrMode5FP16, // user defined class 'AddrMode5FP16AsmOperand'
    4408             :   MCK_AlignedMemory16, // user defined class 'AddrMode6Align16AsmOperand'
    4409             :   MCK_AlignedMemory32, // user defined class 'AddrMode6Align32AsmOperand'
    4410             :   MCK_AlignedMemory64, // user defined class 'AddrMode6Align64AsmOperand'
    4411             :   MCK_AlignedMemory64or128, // user defined class 'AddrMode6Align64or128AsmOperand'
    4412             :   MCK_AlignedMemory64or128or256, // user defined class 'AddrMode6Align64or128or256AsmOperand'
    4413             :   MCK_AlignedMemoryNone, // user defined class 'AddrMode6AlignNoneAsmOperand'
    4414             :   MCK_AlignedMemory, // user defined class 'AddrMode6AsmOperand'
    4415             :   MCK_DupAlignedMemory16, // user defined class 'AddrMode6dupAlign16AsmOperand'
    4416             :   MCK_DupAlignedMemory32, // user defined class 'AddrMode6dupAlign32AsmOperand'
    4417             :   MCK_DupAlignedMemory64, // user defined class 'AddrMode6dupAlign64AsmOperand'
    4418             :   MCK_DupAlignedMemory64or128, // user defined class 'AddrMode6dupAlign64or128AsmOperand'
    4419             :   MCK_DupAlignedMemoryNone, // user defined class 'AddrMode6dupAlignNoneAsmOperand'
    4420             :   MCK_AdrLabel, // user defined class 'AdrLabelAsmOperand'
    4421             :   MCK_BankedReg, // user defined class 'BankedRegOperand'
    4422             :   MCK_Bitfield, // user defined class 'BitfieldAsmOperand'
    4423             :   MCK_CCOut, // user defined class 'CCOutOperand'
    4424             :   MCK_CondCode, // user defined class 'CondCodeOperand'
    4425             :   MCK_CoprocNum, // user defined class 'CoprocNumAsmOperand'
    4426             :   MCK_CoprocOption, // user defined class 'CoprocOptionAsmOperand'
    4427             :   MCK_CoprocReg, // user defined class 'CoprocRegAsmOperand'
    4428             :   MCK_DPRRegList, // user defined class 'DPRRegListAsmOperand'
    4429             :   MCK_FPImm, // user defined class 'FPImmOperand'
    4430             :   MCK_Imm0_15, // user defined class 'Imm0_15AsmOperand'
    4431             :   MCK_Imm0_1, // user defined class 'Imm0_1AsmOperand'
    4432             :   MCK_Imm0_239, // user defined class 'Imm0_239AsmOperand'
    4433             :   MCK_Imm0_255, // user defined class 'Imm0_255AsmOperand'
    4434             :   MCK_Imm0_31, // user defined class 'Imm0_31AsmOperand'
    4435             :   MCK_Imm0_32, // user defined class 'Imm0_32AsmOperand'
    4436             :   MCK_Imm0_3, // user defined class 'Imm0_3AsmOperand'
    4437             :   MCK_Imm0_63, // user defined class 'Imm0_63AsmOperand'
    4438             :   MCK_Imm0_65535, // user defined class 'Imm0_65535AsmOperand'
    4439             :   MCK_Imm0_65535Expr, // user defined class 'Imm0_65535ExprAsmOperand'
    4440             :   MCK_Imm0_7, // user defined class 'Imm0_7AsmOperand'
    4441             :   MCK_Imm16, // user defined class 'Imm16AsmOperand'
    4442             :   MCK_Imm1_15, // user defined class 'Imm1_15AsmOperand'
    4443             :   MCK_Imm1_16, // user defined class 'Imm1_16AsmOperand'
    4444             :   MCK_Imm1_31, // user defined class 'Imm1_31AsmOperand'
    4445             :   MCK_Imm1_32, // user defined class 'Imm1_32AsmOperand'
    4446             :   MCK_Imm1_7, // user defined class 'Imm1_7AsmOperand'
    4447             :   MCK_Imm24bit, // user defined class 'Imm24bitAsmOperand'
    4448             :   MCK_Imm256_65535Expr, // user defined class 'Imm256_65535ExprAsmOperand'
    4449             :   MCK_Imm32, // user defined class 'Imm32AsmOperand'
    4450             :   MCK_Imm8, // user defined class 'Imm8AsmOperand'
    4451             :   MCK_Imm8_255, // user defined class 'Imm8_255AsmOperand'
    4452             :   MCK_Imm, // user defined class 'ImmAsmOperand'
    4453             :   MCK_InstSyncBarrierOpt, // user defined class 'InstSyncBarrierOptOperand'
    4454             :   MCK_MSRMask, // user defined class 'MSRMaskOperand'
    4455             :   MCK_MemBarrierOpt, // user defined class 'MemBarrierOptOperand'
    4456             :   MCK_MemImm0_1020s4Offset, // user defined class 'MemImm0_1020s4OffsetAsmOperand'
    4457             :   MCK_MemImm12Offset, // user defined class 'MemImm12OffsetAsmOperand'
    4458             :   MCK_MemImm8Offset, // user defined class 'MemImm8OffsetAsmOperand'
    4459             :   MCK_MemImm8s4Offset, // user defined class 'MemImm8s4OffsetAsmOperand'
    4460             :   MCK_MemNegImm8Offset, // user defined class 'MemNegImm8OffsetAsmOperand'
    4461             :   MCK_MemNoOffset, // user defined class 'MemNoOffsetAsmOperand'
    4462             :   MCK_MemPosImm8Offset, // user defined class 'MemPosImm8OffsetAsmOperand'
    4463             :   MCK_MemRegOffset, // user defined class 'MemRegOffsetAsmOperand'
    4464             :   MCK_ModImm, // user defined class 'ModImmAsmOperand'
    4465             :   MCK_ModImmNeg, // user defined class 'ModImmNegAsmOperand'
    4466             :   MCK_ModImmNot, // user defined class 'ModImmNotAsmOperand'
    4467             :   MCK_PKHASRImm, // user defined class 'PKHASRAsmOperand'
    4468             :   MCK_PKHLSLImm, // user defined class 'PKHLSLAsmOperand'
    4469             :   MCK_PostIdxImm8, // user defined class 'PostIdxImm8AsmOperand'
    4470             :   MCK_PostIdxImm8s4, // user defined class 'PostIdxImm8s4AsmOperand'
    4471             :   MCK_PostIdxReg, // user defined class 'PostIdxRegAsmOperand'
    4472             :   MCK_PostIdxRegShifted, // user defined class 'PostIdxRegShiftedAsmOperand'
    4473             :   MCK_ProcIFlags, // user defined class 'ProcIFlagsOperand'
    4474             :   MCK_RegList, // user defined class 'RegListAsmOperand'
    4475             :   MCK_RotImm, // user defined class 'RotImmAsmOperand'
    4476             :   MCK_SPRRegList, // user defined class 'SPRRegListAsmOperand'
    4477             :   MCK_SetEndImm, // user defined class 'SetEndAsmOperand'
    4478             :   MCK_RegShiftedImm, // user defined class 'ShiftedImmAsmOperand'
    4479             :   MCK_RegShiftedReg, // user defined class 'ShiftedRegAsmOperand'
    4480             :   MCK_ShifterImm, // user defined class 'ShifterImmAsmOperand'
    4481             :   MCK_ThumbBranchTarget, // user defined class 'ThumbBranchTarget'
    4482             :   MCK_ThumbMemPC, // user defined class 'ThumbMemPC'
    4483             :   MCK_ThumbModImmNeg1_7, // user defined class 'ThumbModImmNeg1_7AsmOperand'
    4484             :   MCK_ThumbModImmNeg8_255, // user defined class 'ThumbModImmNeg8_255AsmOperand'
    4485             :   MCK_ImmThumbSR, // user defined class 'ThumbSRImmAsmOperand'
    4486             :   MCK_TraceSyncBarrierOpt, // user defined class 'TraceSyncBarrierOptOperand'
    4487             :   MCK_UnsignedOffset_b8s2, // user defined class 'UnsignedOffset_b8s2'
    4488             :   MCK_VecListDPairAllLanes, // user defined class 'VecListDPairAllLanesAsmOperand'
    4489             :   MCK_VecListDPair, // user defined class 'VecListDPairAsmOperand'
    4490             :   MCK_VecListDPairSpacedAllLanes, // user defined class 'VecListDPairSpacedAllLanesAsmOperand'
    4491             :   MCK_VecListDPairSpaced, // user defined class 'VecListDPairSpacedAsmOperand'
    4492             :   MCK_VecListFourDAllLanes, // user defined class 'VecListFourDAllLanesAsmOperand'
    4493             :   MCK_VecListFourD, // user defined class 'VecListFourDAsmOperand'
    4494             :   MCK_VecListFourDByteIndexed, // user defined class 'VecListFourDByteIndexAsmOperand'
    4495             :   MCK_VecListFourDHWordIndexed, // user defined class 'VecListFourDHWordIndexAsmOperand'
    4496             :   MCK_VecListFourDWordIndexed, // user defined class 'VecListFourDWordIndexAsmOperand'
    4497             :   MCK_VecListFourQAllLanes, // user defined class 'VecListFourQAllLanesAsmOperand'
    4498             :   MCK_VecListFourQ, // user defined class 'VecListFourQAsmOperand'
    4499             :   MCK_VecListFourQHWordIndexed, // user defined class 'VecListFourQHWordIndexAsmOperand'
    4500             :   MCK_VecListFourQWordIndexed, // user defined class 'VecListFourQWordIndexAsmOperand'
    4501             :   MCK_VecListOneDAllLanes, // user defined class 'VecListOneDAllLanesAsmOperand'
    4502             :   MCK_VecListOneD, // user defined class 'VecListOneDAsmOperand'
    4503             :   MCK_VecListOneDByteIndexed, // user defined class 'VecListOneDByteIndexAsmOperand'
    4504             :   MCK_VecListOneDHWordIndexed, // user defined class 'VecListOneDHWordIndexAsmOperand'
    4505             :   MCK_VecListOneDWordIndexed, // user defined class 'VecListOneDWordIndexAsmOperand'
    4506             :   MCK_VecListThreeDAllLanes, // user defined class 'VecListThreeDAllLanesAsmOperand'
    4507             :   MCK_VecListThreeD, // user defined class 'VecListThreeDAsmOperand'
    4508             :   MCK_VecListThreeDByteIndexed, // user defined class 'VecListThreeDByteIndexAsmOperand'
    4509             :   MCK_VecListThreeDHWordIndexed, // user defined class 'VecListThreeDHWordIndexAsmOperand'
    4510             :   MCK_VecListThreeDWordIndexed, // user defined class 'VecListThreeDWordIndexAsmOperand'
    4511             :   MCK_VecListThreeQAllLanes, // user defined class 'VecListThreeQAllLanesAsmOperand'
    4512             :   MCK_VecListThreeQ, // user defined class 'VecListThreeQAsmOperand'
    4513             :   MCK_VecListThreeQHWordIndexed, // user defined class 'VecListThreeQHWordIndexAsmOperand'
    4514             :   MCK_VecListThreeQWordIndexed, // user defined class 'VecListThreeQWordIndexAsmOperand'
    4515             :   MCK_VecListTwoDByteIndexed, // user defined class 'VecListTwoDByteIndexAsmOperand'
    4516             :   MCK_VecListTwoDHWordIndexed, // user defined class 'VecListTwoDHWordIndexAsmOperand'
    4517             :   MCK_VecListTwoDWordIndexed, // user defined class 'VecListTwoDWordIndexAsmOperand'
    4518             :   MCK_VecListTwoQHWordIndexed, // user defined class 'VecListTwoQHWordIndexAsmOperand'
    4519             :   MCK_VecListTwoQWordIndexed, // user defined class 'VecListTwoQWordIndexAsmOperand'
    4520             :   MCK_VectorIndex16, // user defined class 'VectorIndex16Operand'
    4521             :   MCK_VectorIndex32, // user defined class 'VectorIndex32Operand'
    4522             :   MCK_VectorIndex64, // user defined class 'VectorIndex64Operand'
    4523             :   MCK_VectorIndex8, // user defined class 'VectorIndex8Operand'
    4524             :   MCK_MemTBB, // user defined class 'addrmode_tbb_asmoperand'
    4525             :   MCK_MemTBH, // user defined class 'addrmode_tbh_asmoperand'
    4526             :   MCK_ComplexRotationEven, // user defined class 'anonymous_3111'
    4527             :   MCK_ComplexRotationOdd, // user defined class 'anonymous_3112'
    4528             :   MCK_NEONi16vmovi8Replicate, // user defined class 'anonymous_4141'
    4529             :   MCK_NEONi16invi8Replicate, // user defined class 'anonymous_4143'
    4530             :   MCK_NEONi32vmovi8Replicate, // user defined class 'anonymous_4146'
    4531             :   MCK_NEONi32invi8Replicate, // user defined class 'anonymous_4148'
    4532             :   MCK_NEONi64vmovi8Replicate, // user defined class 'anonymous_4155'
    4533             :   MCK_NEONi64invi8Replicate, // user defined class 'anonymous_4157'
    4534             :   MCK_NEONi32vmovi16Replicate, // user defined class 'anonymous_4168'
    4535             :   MCK_NEONi64vmovi16Replicate, // user defined class 'anonymous_4171'
    4536             :   MCK_NEONi64vmovi32Replicate, // user defined class 'anonymous_4178'
    4537             :   MCK_ConstPoolAsmImm, // user defined class 'const_pool_asm_operand'
    4538             :   MCK_FBits16, // user defined class 'fbits16_asm_operand'
    4539             :   MCK_FBits32, // user defined class 'fbits32_asm_operand'
    4540             :   MCK_Imm0_4095, // user defined class 'imm0_4095_asmoperand'
    4541             :   MCK_Imm0_4095Neg, // user defined class 'imm0_4095_neg_asmoperand'
    4542             :   MCK_ITMask, // user defined class 'it_mask_asmoperand'
    4543             :   MCK_ITCondCode, // user defined class 'it_pred_asmoperand'
    4544             :   MCK_NEONi16splat, // user defined class 'nImmSplatI16AsmOperand'
    4545             :   MCK_NEONi32splat, // user defined class 'nImmSplatI32AsmOperand'
    4546             :   MCK_NEONi64splat, // user defined class 'nImmSplatI64AsmOperand'
    4547             :   MCK_NEONi8splat, // user defined class 'nImmSplatI8AsmOperand'
    4548             :   MCK_NEONi16splatNot, // user defined class 'nImmSplatNotI16AsmOperand'
    4549             :   MCK_NEONi32splatNot, // user defined class 'nImmSplatNotI32AsmOperand'
    4550             :   MCK_NEONi32vmov, // user defined class 'nImmVMOVI32AsmOperand'
    4551             :   MCK_NEONi32vmovNeg, // user defined class 'nImmVMOVI32NegAsmOperand'
    4552             :   MCK_ShrImm16, // user defined class 'shr_imm16_asm_operand'
    4553             :   MCK_ShrImm32, // user defined class 'shr_imm32_asm_operand'
    4554             :   MCK_ShrImm64, // user defined class 'shr_imm64_asm_operand'
    4555             :   MCK_ShrImm8, // user defined class 'shr_imm8_asm_operand'
    4556             :   MCK_T2SOImm, // user defined class 't2_so_imm_asmoperand'
    4557             :   MCK_T2SOImmNeg, // user defined class 't2_so_imm_neg_asmoperand'
    4558             :   MCK_T2SOImmNot, // user defined class 't2_so_imm_not_asmoperand'
    4559             :   MCK_MemUImm12Offset, // user defined class 't2addrmode_imm12_asmoperand'
    4560             :   MCK_T2MemRegOffset, // user defined class 't2addrmode_so_reg_asmoperand'
    4561             :   MCK_Imm8s4, // user defined class 't2am_imm8s4_offset_asmoperand'
    4562             :   MCK_MemPCRelImm12, // user defined class 't2ldr_pcrel_imm12_asmoperand'
    4563             :   MCK_MemThumbRIs1, // user defined class 't_addrmode_is1_asm_operand'
    4564             :   MCK_MemThumbRIs2, // user defined class 't_addrmode_is2_asm_operand'
    4565             :   MCK_MemThumbRIs4, // user defined class 't_addrmode_is4_asm_operand'
    4566             :   MCK_MemThumbRR, // user defined class 't_addrmode_rr_asm_operand'
    4567             :   MCK_MemThumbSPI, // user defined class 't_addrmode_sp_asm_operand'
    4568             :   MCK_Imm0_1020s4, // user defined class 't_imm0_1020s4_asmoperand'
    4569             :   MCK_Imm0_508s4, // user defined class 't_imm0_508s4_asmoperand'
    4570             :   MCK_Imm0_508s4Neg, // user defined class 't_imm0_508s4_neg_asmoperand'
    4571             :   NumMatchClassKinds
    4572             : };
    4573             : 
    4574             : }
    4575             : 
    4576        4809 : static const char *getMatchKindDiag(ARMAsmParser::ARMMatchResultTy MatchResult) {
    4577        4809 :   switch (MatchResult) {
    4578             :   case ARMAsmParser::Match_GPRsp:
    4579             :     return "operand must be a register sp";
    4580           0 :   case ARMAsmParser::Match_QPR_8:
    4581           0 :     return "operand must be a register in range [q0, q3]";
    4582           0 :   case ARMAsmParser::Match_DPR_8:
    4583           0 :     return "operand must be a register in range [d0, d7]";
    4584           0 :   case ARMAsmParser::Match_QPR_VFP2:
    4585           0 :     return "operand must be a register in range [q0, q7]";
    4586           0 :   case ARMAsmParser::Match_hGPR:
    4587           0 :     return "operand must be a register in range [r8, r15]";
    4588          39 :   case ARMAsmParser::Match_tGPR:
    4589          39 :     return "operand must be a register in range [r0, r7]";
    4590         118 :   case ARMAsmParser::Match_GPRnopc:
    4591         118 :     return "operand must be a register in range [r0, r14]";
    4592           4 :   case ARMAsmParser::Match_DPR_VFP2:
    4593           4 :     return "operand must be a register in range [d0, d15]";
    4594          59 :   case ARMAsmParser::Match_GPR:
    4595          59 :     return "operand must be a register in range [r0, r15]";
    4596           0 :   case ARMAsmParser::Match_GPRwithAPSR:
    4597           0 :     return "operand must be a register in range [r0, r14] or apsr_nzcv";
    4598          26 :   case ARMAsmParser::Match_QPR:
    4599          26 :     return "operand must be a register in range [q0, q15]";
    4600           0 :   case ARMAsmParser::Match_SPR_8:
    4601           0 :     return "operand must be a register in range [s0, s15]";
    4602           4 :   case ARMAsmParser::Match_SPR:
    4603           4 :     return "operand must be a register in range [s0, s31]";
    4604          48 :   case ARMAsmParser::Match_AlignedMemory16:
    4605          48 :     return "alignment must be 16 or omitted";
    4606          84 :   case ARMAsmParser::Match_AlignedMemory32:
    4607          84 :     return "alignment must be 32 or omitted";
    4608         432 :   case ARMAsmParser::Match_AlignedMemory64:
    4609         432 :     return "alignment must be 64 or omitted";
    4610         213 :   case ARMAsmParser::Match_AlignedMemory64or128:
    4611         213 :     return "alignment must be 64, 128 or omitted";
    4612         150 :   case ARMAsmParser::Match_AlignedMemory64or128or256:
    4613         150 :     return "alignment must be 64, 128, 256 or omitted";
    4614         180 :   case ARMAsmParser::Match_AlignedMemoryNone:
    4615         180 :     return "alignment must be omitted";
    4616          48 :   case ARMAsmParser::Match_DupAlignedMemory16:
    4617          48 :     return "alignment must be 16 or omitted";
    4618          72 :   case ARMAsmParser::Match_DupAlignedMemory32:
    4619          72 :     return "alignment must be 32 or omitted";
    4620          48 :   case ARMAsmParser::Match_DupAlignedMemory64:
    4621          48 :     return "alignment must be 64 or omitted";
    4622          18 :   case ARMAsmParser::Match_DupAlignedMemory64or128:
    4623          18 :     return "alignment must be 64, 128 or omitted";
    4624         120 :   case ARMAsmParser::Match_DupAlignedMemoryNone:
    4625         120 :     return "alignment must be omitted";
    4626          15 :   case ARMAsmParser::Match_Imm0_15:
    4627          15 :     return "operand must be an immediate in the range [0,15]";
    4628           4 :   case ARMAsmParser::Match_Imm0_1:
    4629           4 :     return "operand must be an immediate in the range [0,1]";
    4630           4 :   case ARMAsmParser::Match_Imm0_239:
    4631           4 :     return "operand must be an immediate in the range [0,239]";
    4632          23 :   case ARMAsmParser::Match_Imm0_255:
    4633          23 :     return "operand must be an immediate in the range [0,255]";
    4634           8 :   case ARMAsmParser::Match_Imm0_31:
    4635           8 :     return "operand must be an immediate in the range [0,31]";
    4636           0 :   case ARMAsmParser::Match_Imm0_32:
    4637           0 :     return "operand must be an immediate in the range [0,32]";
    4638           0 :   case ARMAsmParser::Match_Imm0_3:
    4639           0 :     return "operand must be an immediate in the range [0,3]";
    4640           2 :   case ARMAsmParser::Match_Imm0_63:
    4641           2 :     return "operand must be an immediate in the range [0,63]";
    4642           6 :   case ARMAsmParser::Match_Imm0_65535:
    4643           6 :     return "operand must be an immediate in the range [0,65535]";
    4644           8 :   case ARMAsmParser::Match_Imm0_65535Expr:
    4645           8 :     return "operand must be an immediate in the range [0,0xffff] or a relocatable expression";
    4646          30 :   case ARMAsmParser::Match_Imm0_7:
    4647          30 :     return "operand must be an immediate in the range [0,7]";
    4648           0 :   case ARMAsmParser::Match_Imm16:
    4649           0 :     return "operand must be an immediate in the range [16,16]";
    4650           0 :   case ARMAsmParser::Match_Imm1_15:
    4651           0 :     return "operand must be an immediate in the range [1,15]";
    4652           4 :   case ARMAsmParser::Match_ImmRange1_16:
    4653           4 :     return "operand must be an immediate in the range [1,16]";
    4654           4 :   case ARMAsmParser::Match_Imm1_31:
    4655           4 :     return "operand must be an immediate in the range [1,31]";
    4656           4 :   case ARMAsmParser::Match_ImmRange1_32:
    4657           4 :     return "operand must be an immediate in the range [1,32]";
    4658           0 :   case ARMAsmParser::Match_Imm1_7:
    4659           0 :     return "operand must be an immediate in the range [1,7]";
    4660           2 :   case ARMAsmParser::Match_Imm24bit:
    4661           2 :     return "operand must be an immediate in the range [0,0xffffff]";
    4662           5 :   case ARMAsmParser::Match_Imm256_65535Expr:
    4663           5 :     return "operand must be an immediate in the range [256,65535]";
    4664           0 :   case ARMAsmParser::Match_Imm32:
    4665           0 :     return "operand must be an immediate in the range [32,32]";
    4666           0 :   case ARMAsmParser::Match_Imm8:
    4667           0 :     return "operand must be an immediate in the range [8,8]";
    4668           0 :   case ARMAsmParser::Match_Imm8_255:
    4669           0 :     return "operand must be an immediate in the range [8,255]";
    4670           0 :   case ARMAsmParser::Match_PKHLSLImm:
    4671           0 :     return "operand must be an immediate in the range [0,31]";
    4672           8 :   case ARMAsmParser::Match_SPRRegList:
    4673           8 :     return "operand must be a list of registers in range [s0, s31]";
    4674           0 :   case ARMAsmParser::Match_SetEndImm:
    4675           0 :     return "operand must be an immediate in the range [0,1]";
    4676           6 :   case ARMAsmParser::Match_ImmThumbSR:
    4677           6 :     return "operand must be an immediate in the range [1,32]";
    4678          24 :   case ARMAsmParser::Match_ComplexRotationEven:
    4679          24 :     return "complex rotation must be 0, 90, 180 or 270";
    4680          20 :   case ARMAsmParser::Match_ComplexRotationOdd:
    4681          20 :     return "complex rotation must be 90 or 270";
    4682           5 :   case ARMAsmParser::Match_Imm0_4095:
    4683           5 :     return "operand must be an immediate in the range [0,4095]";
    4684           0 :   case ARMAsmParser::Match_ShrImm16:
    4685           0 :     return "operand must be an immediate in the range [1,16]";
    4686           0 :   case ARMAsmParser::Match_ShrImm32:
    4687           0 :     return "operand must be an immediate in the range [1,32]";
    4688           0 :   case ARMAsmParser::Match_ShrImm64:
    4689           0 :     return "operand must be an immediate in the range [1,64]";
    4690           0 :   case ARMAsmParser::Match_ShrImm8:
    4691           0 :     return "operand must be an immediate in the range [1,8]";
    4692        2961 :   default:
    4693        2961 :     return nullptr;
    4694             :   }
    4695             : }
    4696             : 
    4697             : static unsigned getDiagKindFromRegisterClass(MatchClassKind RegisterClass) {
    4698             :   switch (RegisterClass) {
    4699             :   case MCK_GPRsp:
    4700             :     return ARMAsmParser::Match_GPRsp;
    4701             :   case MCK_QPR_8:
    4702             :     return ARMAsmParser::Match_QPR_8;
    4703             :   case MCK_DPR_8:
    4704             :     return ARMAsmParser::Match_DPR_8;
    4705             :   case MCK_QPR_VFP2:
    4706             :     return ARMAsmParser::Match_QPR_VFP2;
    4707             :   case MCK_hGPR:
    4708             :     return ARMAsmParser::Match_hGPR;
    4709             :   case MCK_tGPR:
    4710             :     return ARMAsmParser::Match_tGPR;
    4711             :   case MCK_rGPR:
    4712             :     return ARMAsmParser::Match_rGPR;
    4713             :   case MCK_GPRnopc:
    4714             :     return ARMAsmParser::Match_GPRnopc;
    4715             :   case MCK_DPR_VFP2:
    4716             :     return ARMAsmParser::Match_DPR_VFP2;
    4717             :   case MCK_GPR:
    4718             :     return ARMAsmParser::Match_GPR;
    4719             :   case MCK_GPRwithAPSR:
    4720             :     return ARMAsmParser::Match_GPRwithAPSR;
    4721             :   case MCK_QPR:
    4722             :     return ARMAsmParser::Match_QPR;
    4723             :   case MCK_SPR_8:
    4724             :     return ARMAsmParser::Match_SPR_8;
    4725             :   case MCK_DPR:
    4726             :     return ARMAsmParser::Match_DPR;
    4727             :   case MCK_HPR:
    4728             :     return ARMAsmParser::Match_SPR;
    4729             :   default:
    4730             :     return MCTargetAsmParser::Match_InvalidOperand;
    4731             :   }
    4732             : }
    4733             : 
    4734      233733 : static MatchClassKind matchTokenString(StringRef Name) {
    4735      233733 :   switch (Name.size()) {
    4736             :   default: break;
    4737        3693 :   case 1:        // 6 strings to match.
    4738        3693 :     switch (Name[0]) {
    4739             :     default: break;
    4740             :     case '!':    // 1 string to match.
    4741             :       return MCK__EXCLAIM_;      // "!"
    4742           0 :     case '[':    // 1 string to match.
    4743           0 :       return MCK__91_;   // "["
    4744           0 :     case ']':    // 1 string to match.
    4745           0 :       return MCK__93_;   // "]"
    4746           8 :     case '^':    // 1 string to match.
    4747           8 :       return MCK__94_;   // "^"
    4748           0 :     case '{':    // 1 string to match.
    4749           0 :       return MCK__123_;  // "{"
    4750           0 :     case '}':    // 1 string to match.
    4751           0 :       return MCK__125_;  // "}"
    4752             :     }
    4753             :     break;
    4754       44486 :   case 2:        // 5 strings to match.
    4755       44486 :     switch (Name[0]) {
    4756             :     default: break;
    4757           0 :     case '#':    // 1 string to match.
    4758           0 :       if (Name[1] != '0')
    4759             :         break;
    4760             :       return MCK__35_0;  // "#0"
    4761       44486 :     case '.':    // 4 strings to match.
    4762       44486 :       switch (Name[1]) {
    4763             :       default: break;
    4764             :       case '8':  // 1 string to match.
    4765             :         return MCK__DOT_8;       // ".8"
    4766          56 :       case 'd':  // 1 string to match.
    4767          56 :         return MCK__DOT_d;       // ".d"
    4768          52 :       case 'f':  // 1 string to match.
    4769          52 :         return MCK__DOT_f;       // ".f"
    4770        3023 :       case 'w':  // 1 string to match.
    4771        3023 :         return MCK__DOT_w;       // ".w"
    4772             :       }
    4773             :       break;
    4774             :     }
    4775             :     break;
    4776       97654 :   case 3:        // 7 strings to match.
    4777       97654 :     if (Name[0] != '.')
    4778             :       break;
    4779       97654 :     switch (Name[1]) {
    4780             :     default: break;
    4781       34939 :     case '1':    // 1 string to match.
    4782       34939 :       if (Name[2] != '6')
    4783             :         break;
    4784             :       return MCK__DOT_16;        // ".16"
    4785       43816 :     case '3':    // 1 string to match.
    4786       43816 :       if (Name[2] != '2')
    4787             :         break;
    4788             :       return MCK__DOT_32;        // ".32"
    4789        9138 :     case '6':    // 1 string to match.
    4790        9138 :       if (Name[2] != '4')
    4791             :         break;
    4792             :       return MCK__DOT_64;        // ".64"
    4793        1415 :     case 'i':    // 1 string to match.
    4794        1415 :       if (Name[2] != '8')
    4795             :         break;
    4796             :       return MCK__DOT_i8;        // ".i8"
    4797         864 :     case 'p':    // 1 string to match.
    4798         864 :       if (Name[2] != '8')
    4799             :         break;
    4800             :       return MCK__DOT_p8;        // ".p8"
    4801        3420 :     case 's':    // 1 string to match.
    4802        3420 :       if (Name[2] != '8')
    4803             :         break;
    4804             :       return MCK__DOT_s8;        // ".s8"
    4805        4062 :     case 'u':    // 1 string to match.
    4806        4062 :       if (Name[2] != '8')
    4807             :         break;
    4808             :       return MCK__DOT_u8;        // ".u8"
    4809             :     }
    4810             :     break;
    4811       87900 :   case 4:        // 14 strings to match.
    4812       87900 :     if (Name[0] != '.')
    4813             :       break;
    4814       87900 :     switch (Name[1]) {
    4815             :     default: break;
    4816       47121 :     case 'f':    // 3 strings to match.
    4817       47121 :       switch (Name[2]) {
    4818             :       default: break;
    4819       26246 :       case '1':  // 1 string to match.
    4820       26246 :         if (Name[3] != '6')
    4821             :           break;
    4822             :         return MCK__DOT_f16;     // ".f16"
    4823       12339 :       case '3':  // 1 string to match.
    4824       12339 :         if (Name[3] != '2')
    4825             :           break;
    4826             :         return MCK__DOT_f32;     // ".f32"
    4827        8536 :       case '6':  // 1 string to match.
    4828        8536 :         if (Name[3] != '4')
    4829             :           break;
    4830             :         return MCK__DOT_f64;     // ".f64"
    4831             :       }
    4832             :       break;
    4833        5078 :     case 'i':    // 3 strings to match.
    4834        5078 :       switch (Name[2]) {
    4835             :       default: break;
    4836        1470 :       case '1':  // 1 string to match.
    4837        1470 :         if (Name[3] != '6')
    4838             :           break;
    4839             :         return MCK__DOT_i16;     // ".i16"
    4840        2482 :       case '3':  // 1 string to match.
    4841        2482 :         if (Name[3] != '2')
    4842             :           break;
    4843             :         return MCK__DOT_i32;     // ".i32"
    4844        1126 :       case '6':  // 1 string to match.
    4845        1126 :         if (Name[3] != '4')
    4846             :           break;
    4847             :         return MCK__DOT_i64;     // ".i64"
    4848             :       }
    4849             :       break;
    4850         255 :     case 'p':    // 2 strings to match.
    4851         255 :       switch (Name[2]) {
    4852             :       default: break;
    4853         242 :       case '1':  // 1 string to match.
    4854         242 :         if (Name[3] != '6')
    4855             :           break;
    4856             :         return MCK__DOT_p16;     // ".p16"
    4857          13 :       case '6':  // 1 string to match.
    4858          13 :         if (Name[3] != '4')
    4859             :           break;
    4860             :         return MCK__DOT_p64;     // ".p64"
    4861             :       }
    4862             :       break;
    4863       15808 :     case 's':    // 3 strings to match.
    4864       15808 :       switch (Name[2]) {
    4865             :       default: break;
    4866        7220 :       case '1':  // 1 string to match.
    4867        7220 :         if (Name[3] != '6')
    4868             :           break;
    4869             :         return MCK__DOT_s16;     // ".s16"
    4870        7253 :       case '3':  // 1 string to match.
    4871        7253 :         if (Name[3] != '2')
    4872             :           break;
    4873             :         return MCK__DOT_s32;     // ".s32"
    4874        1335 :       case '6':  // 1 string to match.
    4875        1335 :         if (Name[3] != '4')
    4876             :           break;
    4877             :         return MCK__DOT_s64;     // ".s64"
    4878             :       }
    4879             :       break;
    4880       19638 :     case 'u':    // 3 strings to match.
    4881       19638 :       switch (Name[2]) {
    4882             :       default: break;
    4883        8671 :       case '1':  // 1 string to match.
    4884        8671 :         if (Name[3] != '6')
    4885             :           break;
    4886             :         return MCK__DOT_u16;     // ".u16"
    4887        8972 :       case '3':  // 1 string to match.
    4888        8972 :         if (Name[3] != '2')
    4889             :           break;
    4890             :         return MCK__DOT_u32;     // ".u32"
    4891        1995 :       case '6':  // 1 string to match.
    4892        1995 :         if (Name[3] != '4')
    4893             :           break;
    4894             :         return MCK__DOT_u64;     // ".u64"
    4895             :       }
    4896             :       break;
    4897             :     }
    4898             :     break;
    4899             :   }
    4900             :   return InvalidMatchClass;
    4901             : }
    4902             : 
    4903             : /// isSubclass - Compute whether \p A is a subclass of \p B.
    4904      913853 : static bool isSubclass(MatchClassKind A, MatchClassKind B) {
    4905      913853 :   if (A == B)
    4906             :     return true;
    4907             : 
    4908      818131 :   switch (A) {
    4909             :   default:
    4910             :     return false;
    4911             : 
    4912          56 :   case MCK__DOT_d:
    4913          56 :     switch (B) {
    4914             :     default: return false;
    4915           0 :     case MCK__DOT_f64: return true;
    4916          12 :     case MCK__DOT_64: return true;
    4917             :     }
    4918             : 
    4919          52 :   case MCK__DOT_f:
    4920          52 :     switch (B) {
    4921             :     default: return false;
    4922           0 :     case MCK__DOT_f32: return true;
    4923          14 :     case MCK__DOT_32: return true;
    4924             :     }
    4925             : 
    4926       13970 :   case MCK__DOT_s16:
    4927       13970 :     switch (B) {
    4928             :     default: return false;
    4929          60 :     case MCK__DOT_i16: return true;
    4930          73 :     case MCK__DOT_16: return true;
    4931             :     }
    4932             : 
    4933       14795 :   case MCK__DOT_s32:
    4934       14795 :     switch (B) {
    4935             :     default: return false;
    4936          40 :     case MCK__DOT_i32: return true;
    4937          61 :     case MCK__DOT_32: return true;
    4938             :     }
    4939             : 
    4940        2676 :   case MCK__DOT_s64:
    4941        2676 :     switch (B) {
    4942             :     default: return false;
    4943           7 :     case MCK__DOT_i64: return true;
    4944          12 :     case MCK__DOT_64: return true;
    4945             :     }
    4946             : 
    4947        6112 :   case MCK__DOT_s8:
    4948        6112 :     switch (B) {
    4949             :     default: return false;
    4950          15 :     case MCK__DOT_i8: return true;
    4951          82 :     case MCK__DOT_8: return true;
    4952             :     }
    4953             : 
    4954       13112 :   case MCK__DOT_u16:
    4955       13112 :     switch (B) {
    4956             :     default: return false;
    4957          65 :     case MCK__DOT_i16: return true;
    4958         216 :     case MCK__DOT_16: return true;
    4959             :     }
    4960             : 
    4961       14049 :   case MCK__DOT_u32:
    4962       14049 :     switch (B) {
    4963             :     default: return false;
    4964          59 :     case MCK__DOT_i32: return true;
    4965         150 :     case MCK__DOT_32: return true;
    4966             :     }
    4967             : 
    4968        2697 :   case MCK__DOT_u64:
    4969        2697 :     switch (B) {
    4970             :     default: return false;
    4971          16 :     case MCK__DOT_i64: return true;
    4972          12 :     case MCK__DOT_64: return true;
    4973             :     }
    4974             : 
    4975        5183 :   case MCK__DOT_u8:
    4976        5183 :     switch (B) {
    4977             :     default: return false;
    4978          12 :     case MCK__DOT_i8: return true;
    4979          98 :     case MCK__DOT_8: return true;
    4980             :     }
    4981             : 
    4982       23715 :   case MCK__DOT_f32:
    4983       23715 :     return B == MCK__DOT_32;
    4984             : 
    4985       11987 :   case MCK__DOT_f64:
    4986       11987 :     return B == MCK__DOT_64;
    4987             : 
    4988        3552 :   case MCK__DOT_i16:
    4989        3552 :     return B == MCK__DOT_16;
    4990             : 
    4991        4567 :   case MCK__DOT_i32:
    4992        4567 :     return B == MCK__DOT_32;
    4993             : 
    4994        2275 :   case MCK__DOT_i64:
    4995        2275 :     return B == MCK__DOT_64;
    4996             : 
    4997        2425 :   case MCK__DOT_i8:
    4998        2425 :     return B == MCK__DOT_8;
    4999             : 
    5000         242 :   case MCK__DOT_p16:
    5001         242 :     return B == MCK__DOT_16;
    5002             : 
    5003        1098 :   case MCK__DOT_p8:
    5004        1098 :     return B == MCK__DOT_8;
    5005             : 
    5006        1565 :   case MCK_Reg11:
    5007             :     switch (B) {
    5008             :     default: return false;
    5009             :     case MCK_tcGPR: return true;
    5010             :     case MCK_Reg10: return true;
    5011             :     case MCK_Reg8: return true;
    5012             :     case MCK_hGPR: return true;
    5013             :     case MCK_rGPR: return true;
    5014             :     case MCK_GPRnopc: return true;
    5015             :     case MCK_GPR: return true;
    5016             :     case MCK_GPRwithAPSR: return true;
    5017             :     }
    5018             : 
    5019           0 :   case MCK_Reg59:
    5020             :     switch (B) {
    5021             :     default: return false;
    5022             :     case MCK_Reg60: return true;
    5023             :     case MCK_Reg61: return true;
    5024             :     case MCK_Reg62: return true;
    5025             :     case MCK_Reg63: return true;
    5026             :     case MCK_Reg64: return true;
    5027             :     case MCK_Reg65: return true;
    5028             :     case MCK_Reg66: return true;
    5029             :     case MCK_QQQQPR: return true;
    5030             :     }
    5031             : 
    5032           0 :   case MCK_Reg75:
    5033           0 :     switch (B) {
    5034             :     default: return false;
    5035           0 :     case MCK_Reg72: return true;
    5036           0 :     case MCK_Reg74: return true;
    5037           0 :     case MCK_GPRPair: return true;
    5038             :     }
    5039             : 
    5040         153 :   case MCK_APSR_NZCV:
    5041         153 :     return B == MCK_GPRwithAPSR;
    5042             : 
    5043        5790 :   case MCK_GPRsp:
    5044        5790 :     switch (B) {
    5045             :     default: return false;
    5046           0 :     case MCK_Reg8: return true;
    5047           0 :     case MCK_hGPR: return true;
    5048        1262 :     case MCK_GPRnopc: return true;
    5049        1233 :     case MCK_GPR: return true;
    5050           0 :     case MCK_GPRwithAPSR: return true;
    5051             :     }
    5052             : 
    5053        2335 :   case MCK_LR:
    5054             :     switch (B) {
    5055             :     default: return false;
    5056             :     case MCK_Reg10: return true;
    5057             :     case MCK_Reg8: return true;
    5058             :     case MCK_hGPR: return true;
    5059             :     case MCK_rGPR: return true;
    5060             :     case MCK_GPRnopc: return true;
    5061             :     case MCK_GPR: return true;
    5062             :     case MCK_GPRwithAPSR: return true;
    5063             :     }
    5064             : 
    5065        3079 :   case MCK_PC:
    5066        3079 :     switch (B) {
    5067             :     default: return false;
    5068           0 :     case MCK_hGPR: return true;
    5069           0 :     case MCK_tGPRwithpc: return true;
    5070         566 :     case MCK_GPR: return true;
    5071             :     }
    5072             : 
    5073           0 :   case MCK_Reg60:
    5074             :     switch (B) {
    5075             :     default: return false;
    5076             :     case MCK_Reg61: return true;
    5077             :     case MCK_Reg62: return true;
    5078             :     case MCK_Reg63: return true;
    5079             :     case MCK_Reg64: return true;
    5080             :     case MCK_Reg65: return true;
    5081             :     case MCK_Reg66: return true;
    5082             :     case MCK_QQQQPR: return true;
    5083             :     }
    5084             : 
    5085           7 :   case MCK_Reg68:
    5086           7 :     switch (B) {
    5087             :     default: return false;
    5088           0 :     case MCK_Reg72: return true;
    5089           0 :     case MCK_Reg69: return true;
    5090           0 :     case MCK_Reg70: return true;
    5091           6 :     case MCK_GPRPair: return true;
    5092             :     }
    5093             : 
    5094           4 :   case MCK_Reg73:
    5095           4 :     switch (B) {
    5096             :     default: return false;
    5097           0 :     case MCK_Reg74: return true;
    5098           0 :     case MCK_Reg70: return true;
    5099           4 :     case MCK_GPRPair: return true;
    5100             :     }
    5101             : 
    5102           0 :   case MCK_Reg100:
    5103             :     switch (B) {
    5104             :     default: return false;
    5105             :     case MCK_Reg101: return true;
    5106             :     case MCK_Reg102: return true;
    5107             :     case MCK_Reg57: return true;
    5108             :     case MCK_Reg58: return true;
    5109             :     case MCK_Reg103: return true;
    5110             :     case MCK_Reg55: return true;
    5111             :     case MCK_Reg104: return true;
    5112             :     case MCK_Reg56: return true;
    5113             :     case MCK_Reg105: return true;
    5114             :     case MCK_Reg53: return true;
    5115             :     case MCK_Reg54: return true;
    5116             :     case MCK_Reg106: return true;
    5117             :     case MCK_Reg51: return true;
    5118             :     case MCK_Reg52: return true;
    5119             :     case MCK_DQuad: return true;
    5120             :     }
    5121             : 
    5122           0 :   case MCK_Reg45:
    5123             :     switch (B) {
    5124             :     default: return false;
    5125             :     case MCK_Reg46: return true;
    5126             :     case MCK_Reg57: return true;
    5127             :     case MCK_Reg58: return true;
    5128             :     case MCK_Reg47: return true;
    5129             :     case MCK_Reg55: return true;
    5130             :     case MCK_Reg48: return true;
    5131             :     case MCK_Reg56: return true;
    5132             :     case MCK_Reg53: return true;
    5133             :     case MCK_Reg54: return true;
    5134             :     case MCK_Reg51: return true;
    5135             :     case MCK_QQPR: return true;
    5136             :     case MCK_Reg52: return true;
    5137             :     case MCK_DQuad: return true;
    5138             :     }
    5139             : 
    5140           0 :   case MCK_Reg61:
    5141             :     switch (B) {
    5142             :     default: return false;
    5143             :     case MCK_Reg62: return true;
    5144             :     case MCK_Reg63: return true;
    5145             :     case MCK_Reg64: return true;
    5146             :     case MCK_Reg65: return true;
    5147             :     case MCK_Reg66: return true;
    5148             :     case MCK_QQQQPR: return true;
    5149             :     }
    5150             : 
    5151           0 :   case MCK_Reg72:
    5152           0 :     return B == MCK_GPRPair;
    5153             : 
    5154           0 :   case MCK_Reg74:
    5155           0 :     return B == MCK_GPRPair;
    5156             : 
    5157           0 :   case MCK_Reg83:
    5158             :     switch (B) {
    5159             :     default: return false;
    5160             :     case MCK_Reg84: return true;
    5161             :     case MCK_Reg76: return true;
    5162             :     case MCK_Reg77: return true;
    5163             :     case MCK_Reg85: return true;
    5164             :     case MCK_Reg78: return true;
    5165             :     case MCK_Reg86: return true;
    5166             :     case MCK_Reg79: return true;
    5167             :     case MCK_Reg80: return true;
    5168             :     case MCK_Reg87: return true;
    5169             :     case MCK_Reg81: return true;
    5170             :     case MCK_DTriple: return true;
    5171             :     }
    5172             : 
    5173           0 :   case MCK_Reg88:
    5174             :     switch (B) {
    5175             :     default: return false;
    5176             :     case MCK_Reg89: return true;
    5177             :     case MCK_Reg76: return true;
    5178             :     case MCK_Reg77: return true;
    5179             :     case MCK_Reg90: return true;
    5180             :     case MCK_Reg78: return true;
    5181             :     case MCK_Reg91: return true;
    5182             :     case MCK_Reg79: return true;
    5183             :     case MCK_Reg80: return true;
    5184             :     case MCK_Reg92: return true;
    5185             :     case MCK_Reg81: return true;
    5186             :     case MCK_DTriple: return true;
    5187             :     }
    5188             : 
    5189           0 :   case MCK_Reg101:
    5190             :     switch (B) {
    5191             :     default: return false;
    5192             :     case MCK_Reg102: return true;
    5193             :     case MCK_Reg58: return true;
    5194             :     case MCK_Reg103: return true;
    5195             :     case MCK_Reg55: return true;
    5196             :     case MCK_Reg104: return true;
    5197             :     case MCK_Reg56: return true;
    5198             :     case MCK_Reg105: return true;
    5199             :     case MCK_Reg53: return true;
    5200             :     case MCK_Reg54: return true;
    5201             :     case MCK_Reg106: return true;
    5202             :     case MCK_Reg51: return true;
    5203             :     case MCK_Reg52: return true;
    5204             :     case MCK_DQuad: return true;
    5205             :     }
    5206             : 
    5207       93904 :   case MCK_Reg0:
    5208       93904 :     switch (B) {
    5209             :     default: return false;
    5210         114 :     case MCK_tcGPR: return true;
    5211       14295 :     case MCK_tGPR: return true;
    5212           0 :     case MCK_tGPRwithpc: return true;
    5213       19368 :     case MCK_rGPR: return true;
    5214       15171 :     case MCK_GPRnopc: return true;
    5215       19308 :     case MCK_GPR: return true;
    5216          79 :     case MCK_GPRwithAPSR: return true;
    5217             :     }
    5218             : 
    5219           0 :   case MCK_Reg46:
    5220             :     switch (B) {
    5221             :     default: return false;
    5222             :     case MCK_Reg47: return true;
    5223             :     case MCK_Reg55: return true;
    5224             :     case MCK_Reg48: return true;
    5225             :     case MCK_Reg56: return true;
    5226             :     case MCK_Reg53: return true;
    5227             :     case MCK_Reg54: return true;
    5228             :     case MCK_Reg51: return true;
    5229             :     case MCK_QQPR: return true;
    5230             :     case MCK_Reg52: return true;
    5231             :     case MCK_DQuad: return true;
    5232             :     }
    5233             : 
    5234           0 :   case MCK_Reg62:
    5235             :     switch (B) {
    5236             :     default: return false;
    5237             :     case MCK_Reg63: return true;
    5238             :     case MCK_Reg64: return true;
    5239             :     case MCK_Reg65: return true;
    5240             :     case MCK_Reg66: return true;
    5241             :     case MCK_QQQQPR: return true;
    5242             :     }
    5243             : 
    5244          13 :   case MCK_Reg69:
    5245          13 :     switch (B) {
    5246             :     default: return false;
    5247           0 :     case MCK_Reg70: return true;
    5248          12 :     case MCK_GPRPair: return true;
    5249             :     }
    5250             : 
    5251           0 :   case MCK_Reg84:
    5252             :     switch (B) {
    5253             :     default: return false;
    5254             :     case MCK_Reg77: return true;
    5255             :     case MCK_Reg85: return true;
    5256             :     case MCK_Reg78: return true;
    5257             :     case MCK_Reg86: return true;
    5258             :     case MCK_Reg79: return true;
    5259             :     case MCK_Reg80: return true;
    5260             :     case MCK_Reg87: return true;
    5261             :     case MCK_Reg81: return true;
    5262             :     case MCK_DTriple: return true;
    5263             :     }
    5264             : 
    5265           0 :   case MCK_Reg89:
    5266             :     switch (B) {
    5267             :     default: return false;
    5268             :     case MCK_Reg90: return true;
    5269             :     case MCK_Reg78: return true;
    5270             :     case MCK_Reg91: return true;
    5271             :     case MCK_Reg79: return true;
    5272             :     case MCK_Reg80: return true;
    5273             :     case MCK_Reg92: return true;
    5274             :     case MCK_Reg81: return true;
    5275             :     case MCK_DTriple: return true;
    5276             :     }
    5277             : 
    5278           0 :   case MCK_Reg93:
    5279           0 :     switch (B) {
    5280             :     default: return false;
    5281           0 :     case MCK_Reg94: return true;
    5282           0 :     case MCK_Reg95: return true;
    5283           0 :     case MCK_Reg96: return true;
    5284           0 :     case MCK_Reg97: return true;
    5285           0 :     case MCK_Reg98: return true;
    5286           0 :     case MCK_DTripleSpc: return true;
    5287             :     }
    5288             : 
    5289           0 :   case MCK_Reg102:
    5290             :     switch (B) {
    5291             :     default: return false;
    5292             :     case MCK_Reg103: return true;
    5293             :     case MCK_Reg104: return true;
    5294             :     case MCK_Reg56: return true;
    5295             :     case MCK_Reg105: return true;
    5296             :     case MCK_Reg53: return true;
    5297             :     case MCK_Reg54: return true;
    5298             :     case MCK_Reg106: return true;
    5299             :     case MCK_Reg51: return true;
    5300             :     case MCK_Reg52: return true;
    5301             :     case MCK_DQuad: return true;
    5302             :     }
    5303             : 
    5304       14252 :   case MCK_QPR_8:
    5305             :     switch (B) {
    5306             :     default: return false;
    5307             :     case MCK_Reg26: return true;
    5308             :     case MCK_Reg27: return true;
    5309             :     case MCK_QPR_VFP2: return true;
    5310             :     case MCK_Reg24: return true;
    5311             :     case MCK_Reg25: return true;
    5312             :     case MCK_QPR: return true;
    5313             :     case MCK_DPair: return true;
    5314             :     }
    5315             : 
    5316           0 :   case MCK_Reg57:
    5317             :     switch (B) {
    5318             :     default: return false;
    5319             :     case MCK_Reg58: return true;
    5320             :     case MCK_Reg55: return true;
    5321             :     case MCK_Reg56: return true;
    5322             :     case MCK_Reg53: return true;
    5323             :     case MCK_Reg54: return true;
    5324             :     case MCK_Reg51: return true;
    5325             :     case MCK_Reg52: return true;
    5326             :     case MCK_DQuad: return true;
    5327             :     }
    5328             : 
    5329           0 :   case MCK_Reg63:
    5330             :     switch (B) {
    5331             :     default: return false;
    5332             :     case MCK_Reg64: return true;
    5333             :     case MCK_Reg65: return true;
    5334             :     case MCK_Reg66: return true;
    5335             :     case MCK_QQQQPR: return true;
    5336             :     }
    5337             : 
    5338         176 :   case MCK_tcGPR:
    5339             :     switch (B) {
    5340             :     default: return false;
    5341             :     case MCK_rGPR: return true;
    5342             :     case MCK_GPRnopc: return true;
    5343             :     case MCK_GPR: return true;
    5344             :     case MCK_GPRwithAPSR: return true;
    5345             :     }
    5346             : 
    5347       14476 :   case MCK_Reg10:
    5348             :     switch (B) {
    5349             :     default: return false;
    5350             :     case MCK_Reg8: return true;
    5351             :     case MCK_hGPR: return true;
    5352             :     case MCK_rGPR: return true;
    5353             :     case MCK_GPRnopc: return true;
    5354             :     case MCK_GPR: return true;
    5355             :     case MCK_GPRwithAPSR: return true;
    5356             :     }
    5357             : 
    5358           0 :   case MCK_Reg40:
    5359           0 :     switch (B) {
    5360             :     default: return false;
    5361           0 :     case MCK_Reg41: return true;
    5362           0 :     case MCK_Reg42: return true;
    5363           0 :     case MCK_Reg43: return true;
    5364           0 :     case MCK_DPairSpc: return true;
    5365             :     }
    5366             : 
    5367           0 :   case MCK_Reg58:
    5368             :     switch (B) {
    5369             :     default: return false;
    5370             :     case MCK_Reg55: return true;
    5371             :     case MCK_Reg56: return true;
    5372             :     case MCK_Reg53: return true;
    5373             :     case MCK_Reg54: return true;
    5374             :     case MCK_Reg51: return true;
    5375             :     case MCK_Reg52: return true;
    5376             :     case MCK_DQuad: return true;
    5377             :     }
    5378             : 
    5379           0 :   case MCK_Reg64:
    5380             :     switch (B) {
    5381             :     default: return false;
    5382             :     case MCK_Reg65: return true;
    5383             :     case MCK_Reg66: return true;
    5384             :     case MCK_QQQQPR: return true;
    5385             :     }
    5386             : 
    5387           0 :   case MCK_Reg70:
    5388           0 :     return B == MCK_GPRPair;
    5389             : 
    5390           0 :   case MCK_Reg76:
    5391           0 :     switch (B) {
    5392             :     default: return false;
    5393           0 :     case MCK_Reg77: return true;
    5394           0 :     case MCK_Reg78: return true;
    5395           0 :     case MCK_Reg79: return true;
    5396           0 :     case MCK_Reg80: return true;
    5397           0 :     case MCK_Reg81: return true;
    5398           0 :     case MCK_DTriple: return true;
    5399             :     }
    5400             : 
    5401           0 :   case MCK_Reg94:
    5402             :     switch (B) {
    5403             :     default: return false;
    5404             :     case MCK_Reg95: return true;
    5405             :     case MCK_Reg96: return true;
    5406             :     case MCK_Reg97: return true;
    5407             :     case MCK_Reg98: return true;
    5408             :     case MCK_DTripleSpc: return true;
    5409             :     }
    5410             : 
    5411           0 :   case MCK_Reg103:
    5412             :     switch (B) {
    5413             :     default: return false;
    5414             :     case MCK_Reg104: return true;
    5415             :     case MCK_Reg105: return true;
    5416             :     case MCK_Reg53: return true;
    5417             :     case MCK_Reg54: return true;
    5418             :     case MCK_Reg106: return true;
    5419             :     case MCK_Reg51: return true;
    5420             :     case MCK_Reg52: return true;
    5421             :     case MCK_DQuad: return true;
    5422             :     }
    5423             : 
    5424           0 :   case MCK_Reg8:
    5425             :     switch (B) {
    5426             :     default: return false;
    5427             :     case MCK_hGPR: return true;
    5428             :     case MCK_GPRnopc: return true;
    5429             :     case MCK_GPR: return true;
    5430             :     case MCK_GPRwithAPSR: return true;
    5431             :     }
    5432             : 
    5433           0 :   case MCK_Reg26:
    5434           0 :     switch (B) {
    5435             :     default: return false;
    5436           0 :     case MCK_Reg27: return true;
    5437           0 :     case MCK_Reg24: return true;
    5438           0 :     case MCK_Reg25: return true;
    5439           0 :     case MCK_DPair: return true;
    5440             :     }
    5441             : 
    5442           0 :   case MCK_Reg47:
    5443             :     switch (B) {
    5444             :     default: return false;
    5445             :     case MCK_Reg48: return true;
    5446             :     case MCK_Reg53: return true;
    5447             :     case MCK_Reg54: return true;
    5448             :     case MCK_Reg51: return true;
    5449             :     case MCK_QQPR: return true;
    5450             :     case MCK_Reg52: return true;
    5451             :     case MCK_DQuad: return true;
    5452             :     }
    5453             : 
    5454           0 :   case MCK_Reg55:
    5455             :     switch (B) {
    5456             :     default: return false;
    5457             :     case MCK_Reg56: return true;
    5458             :     case MCK_Reg53: return true;
    5459             :     case MCK_Reg54: return true;
    5460             :     case MCK_Reg51: return true;
    5461             :     case MCK_Reg52: return true;
    5462             :     case MCK_DQuad: return true;
    5463             :     }
    5464             : 
    5465           0 :   case MCK_Reg65:
    5466           0 :     switch (B) {
    5467             :     default: return false;
    5468           0 :     case MCK_Reg66: return true;
    5469           0 :     case MCK_QQQQPR: return true;
    5470             :     }
    5471             : 
    5472           0 :   case MCK_Reg77:
    5473             :     switch (B) {
    5474             :     default: return false;
    5475             :     case MCK_Reg78: return true;
    5476             :     case MCK_Reg79: return true;
    5477             :     case MCK_Reg80: return true;
    5478             :     case MCK_Reg81: return true;
    5479             :     case MCK_DTriple: return true;
    5480             :     }
    5481             : 
    5482           0 :   case MCK_Reg85:
    5483             :     switch (B) {
    5484             :     default: return false;
    5485             :     case MCK_Reg86: return true;
    5486             :     case MCK_Reg79: return true;
    5487             :     case MCK_Reg80: return true;
    5488             :     case MCK_Reg87: return true;
    5489             :     case MCK_Reg81: return true;
    5490             :     case MCK_DTriple: return true;
    5491             :     }
    5492             : 
    5493           0 :   case MCK_Reg90:
    5494             :     switch (B) {
    5495             :     default: return false;
    5496             :     case MCK_Reg91: return true;
    5497             :     case MCK_Reg79: return true;
    5498             :     case MCK_Reg80: return true;
    5499             :     case MCK_Reg92: return true;
    5500             :     case MCK_Reg81: return true;
    5501             :     case MCK_DTriple: return true;
    5502             :     }
    5503             : 
    5504           0 :   case MCK_Reg104:
    5505             :     switch (B) {
    5506             :     default: return false;
    5507             :     case MCK_Reg105: return true;
    5508             :     case MCK_Reg54: return true;
    5509             :     case MCK_Reg106: return true;
    5510             :     case MCK_Reg51: return true;
    5511             :     case MCK_Reg52: return true;
    5512             :     case MCK_DQuad: return true;
    5513             :     }
    5514             : 
    5515           0 :   case MCK_Reg27:
    5516             :     switch (B) {
    5517             :     default: return false;
    5518             :     case MCK_Reg24: return true;
    5519             :     case MCK_Reg25: return true;
    5520             :     case MCK_DPair: return true;
    5521             :     }
    5522             : 
    5523           0 :   case MCK_Reg41:
    5524           0 :     switch (B) {
    5525             :     default: return false;
    5526           0 :     case MCK_Reg42: return true;
    5527           0 :     case MCK_Reg43: return true;
    5528           0 :     case MCK_DPairSpc: return true;
    5529             :     }
    5530             : 
    5531           0 :   case MCK_Reg48:
    5532             :     switch (B) {
    5533             :     default: return false;
    5534             :     case MCK_Reg51: return true;
    5535             :     case MCK_QQPR: return true;
    5536             :     case MCK_Reg52: return true;
    5537             :     case MCK_DQuad: return true;
    5538             :     }
    5539             : 
    5540           0 :   case MCK_Reg56:
    5541             :     switch (B) {
    5542             :     default: return false;
    5543             :     case MCK_Reg53: return true;
    5544             :     case MCK_Reg54: return true;
    5545             :     case MCK_Reg51: return true;
    5546             :     case MCK_Reg52: return true;
    5547             :     case MCK_DQuad: return true;
    5548             :     }
    5549             : 
    5550           0 :   case MCK_Reg66:
    5551           0 :     return B == MCK_QQQQPR;
    5552             : 
    5553           0 :   case MCK_Reg78:
    5554             :     switch (B) {
    5555             :     default: return false;
    5556             :     case MCK_Reg79: return true;
    5557             :     case MCK_Reg80: return true;
    5558             :     case MCK_Reg81: return true;
    5559             :     case MCK_DTriple: return true;
    5560             :     }
    5561             : 
    5562           0 :   case MCK_Reg86:
    5563             :     switch (B) {
    5564             :     default: return false;
    5565             :     case MCK_Reg80: return true;
    5566             :     case MCK_Reg87: return true;
    5567             :     case MCK_Reg81: return true;
    5568             :     case MCK_DTriple: return true;
    5569             :     }
    5570             : 
    5571           0 :   case MCK_Reg91:
    5572             :     switch (B) {
    5573             :     default: return false;
    5574             :     case MCK_Reg92: return true;
    5575             :     case MCK_Reg81: return true;
    5576             :     case MCK_DTriple: return true;
    5577             :     }
    5578             : 
    5579           0 :   case MCK_Reg95:
    5580             :     switch (B) {
    5581             :     default: return false;
    5582             :     case MCK_Reg96: return true;
    5583             :     case MCK_Reg97: return true;
    5584             :     case MCK_Reg98: return true;
    5585             :     case MCK_DTripleSpc: return true;
    5586             :     }
    5587             : 
    5588           0 :   case MCK_Reg105:
    5589             :     switch (B) {
    5590             :     default: return false;
    5591             :     case MCK_Reg106: return true;
    5592             :     case MCK_Reg52: return true;
    5593             :     case MCK_DQuad: return true;
    5594             :     }
    5595             : 
    5596       25933 :   case MCK_DPR_8:
    5597       25933 :     switch (B) {
    5598             :     default: return false;
    5599         457 :     case MCK_DPR_VFP2: return true;
    5600       14562 :     case MCK_DPR: return true;
    5601             :     }
    5602             : 
    5603        4889 :   case MCK_QPR_VFP2:
    5604             :     switch (B) {
    5605             :     default: return false;
    5606             :     case MCK_Reg24: return true;
    5607             :     case MCK_Reg25: return true;
    5608             :     case MCK_QPR: return true;
    5609             :     case MCK_DPair: return true;
    5610             :     }
    5611             : 
    5612           0 :   case MCK_hGPR:
    5613           0 :     return B == MCK_GPR;
    5614             : 
    5615       33857 :   case MCK_tGPR:
    5616             :     switch (B) {
    5617             :     default: return false;
    5618             :     case MCK_tGPRwithpc: return true;
    5619             :     case MCK_rGPR: return true;
    5620             :     case MCK_GPRnopc: return true;
    5621             :     case MCK_GPR: return true;
    5622             :     case MCK_GPRwithAPSR: return true;
    5623             :     }
    5624             : 
    5625           0 :   case MCK_tGPRwithpc:
    5626           0 :     return B == MCK_GPR;
    5627             : 
    5628           0 :   case MCK_Reg96:
    5629             :     switch (B) {
    5630             :     default: return false;
    5631             :     case MCK_Reg97: return true;
    5632             :     case MCK_Reg98: return true;
    5633             :     case MCK_DTripleSpc: return true;
    5634             :     }
    5635             : 
    5636           0 :   case MCK_Reg53:
    5637             :     switch (B) {
    5638             :     default: return false;
    5639             :     case MCK_Reg54: return true;
    5640             :     case MCK_Reg51: return true;
    5641             :     case MCK_Reg52: return true;
    5642             :     case MCK_DQuad: return true;
    5643             :     }
    5644             : 
    5645           0 :   case MCK_Reg42:
    5646           0 :     switch (B) {
    5647             :     default: return false;
    5648           0 :     case MCK_Reg43: return true;
    5649           0 :     case MCK_DPairSpc: return true;
    5650             :     }
    5651             : 
    5652           0 :   case MCK_Reg54:
    5653             :     switch (B) {
    5654             :     default: return false;
    5655             :     case MCK_Reg51: return true;
    5656             :     case MCK_Reg52: return true;
    5657             :     case MCK_DQuad: return true;
    5658             :     }
    5659             : 
    5660           0 :   case MCK_Reg79:
    5661             :     switch (B) {
    5662             :     default: return false;
    5663             :     case MCK_Reg80: return true;
    5664             :     case MCK_Reg81: return true;
    5665             :     case MCK_DTriple: return true;
    5666             :     }
    5667             : 
    5668           0 :   case MCK_Reg97:
    5669           0 :     switch (B) {
    5670             :     default: return false;
    5671           0 :     case MCK_Reg98: return true;
    5672           0 :     case MCK_DTripleSpc: return true;
    5673             :     }
    5674             : 
    5675           0 :   case MCK_Reg106:
    5676           0 :     return B == MCK_DQuad;
    5677             : 
    5678        1024 :   case MCK_rGPR:
    5679             :     switch (B) {
    5680             :     default: return false;
    5681             :     case MCK_GPRnopc: return true;
    5682             :     case MCK_GPR: return true;
    5683             :     case MCK_GPRwithAPSR: return true;
    5684             :     }
    5685             : 
    5686           0 :   case MCK_Reg24:
    5687           0 :     switch (B) {
    5688             :     default: return false;
    5689           0 :     case MCK_Reg25: return true;
    5690           0 :     case MCK_DPair: return true;
    5691             :     }
    5692             : 
    5693           0 :   case MCK_Reg51:
    5694           0 :     switch (B) {
    5695             :     default: return false;
    5696           0 :     case MCK_Reg52: return true;
    5697           0 :     case MCK_DQuad: return true;
    5698             :     }
    5699             : 
    5700           0 :   case MCK_Reg80:
    5701           0 :     switch (B) {
    5702             :     default: return false;
    5703           0 :     case MCK_Reg81: return true;
    5704           0 :     case MCK_DTriple: return true;
    5705             :     }
    5706             : 
    5707           0 :   case MCK_Reg87:
    5708           0 :     return B == MCK_DTriple;
    5709             : 
    5710           0 :   case MCK_Reg92:
    5711           0 :     return B == MCK_DTriple;
    5712             : 
    5713         302 :   case MCK_GPRnopc:
    5714         302 :     switch (B) {
    5715             :     default: return false;
    5716           0 :     case MCK_GPR: return true;
    5717           0 :     case MCK_GPRwithAPSR: return true;
    5718             :     }
    5719             : 
    5720           0 :   case MCK_QQPR:
    5721           0 :     return B == MCK_DQuad;
    5722             : 
    5723           0 :   case MCK_Reg25:
    5724           0 :     return B == MCK_DPair;
    5725             : 
    5726           0 :   case MCK_Reg43:
    5727           0 :     return B == MCK_DPairSpc;
    5728             : 
    5729           0 :   case MCK_Reg52:
    5730           0 :     return B == MCK_DQuad;
    5731             : 
    5732           0 :   case MCK_Reg81:
    5733           0 :     return B == MCK_DTriple;
    5734             : 
    5735           0 :   case MCK_Reg98:
    5736           0 :     return B == MCK_DTripleSpc;
    5737             : 
    5738        3722 :   case MCK_DPR_VFP2:
    5739        3722 :     return B == MCK_DPR;
    5740             : 
    5741        5810 :   case MCK_QPR:
    5742        5810 :     return B == MCK_DPair;
    5743             : 
    5744       11555 :   case MCK_SPR_8:
    5745       11555 :     return B == MCK_HPR;
    5746             :   }
    5747             : }
    5748             : 
    5749     1222583 : static unsigned validateOperandClass(MCParsedAsmOperand &GOp, MatchClassKind Kind) {
    5750             :   ARMOperand &Operand = (ARMOperand&)GOp;
    5751     1222583 :   if (Kind == InvalidMatchClass)
    5752             :     return MCTargetAsmParser::Match_InvalidOperand;
    5753             : 
    5754     1170431 :   if (Operand.isToken() && Kind <= MCK_LAST_TOKEN)
    5755      467466 :     return isSubclass(matchTokenString(Operand.getToken()), Kind) ?
    5756             :              MCTargetAsmParser::Match_Success :
    5757             :              MCTargetAsmParser::Match_InvalidOperand;
    5758             : 
    5759      936698 :   switch (Kind) {
    5760             :   default: break;
    5761             :   // 'AM2OffsetImm' class
    5762             :   case MCK_AM2OffsetImm: {
    5763             :     DiagnosticPredicate DP(Operand.isAM2OffsetImm());
    5764         106 :     if (DP.isMatch())
    5765             :       return MCTargetAsmParser::Match_Success;
    5766             :     break;
    5767             :     }
    5768             :   // 'AM3Offset' class
    5769          83 :   case MCK_AM3Offset: {
    5770          83 :     DiagnosticPredicate DP(Operand.isAM3Offset());
    5771          83 :     if (DP.isMatch())
    5772             :       return MCTargetAsmParser::Match_Success;
    5773             :     break;
    5774             :     }
    5775             :   // 'ARMBranchTarget' class
    5776             :   case MCK_ARMBranchTarget: {
    5777             :     DiagnosticPredicate DP(Operand.isARMBranchTarget());
    5778         970 :     if (DP.isMatch())
    5779             :       return MCTargetAsmParser::Match_Success;
    5780             :     break;
    5781             :     }
    5782             :   // 'AddrMode3' class
    5783         711 :   case MCK_AddrMode3: {
    5784         711 :     DiagnosticPredicate DP(Operand.isAddrMode3());
    5785         711 :     if (DP.isMatch())
    5786             :       return MCTargetAsmParser::Match_Success;
    5787             :     break;
    5788             :     }
    5789             :   // 'AddrMode5' class
    5790        2250 :   case MCK_AddrMode5: {
    5791        2250 :     DiagnosticPredicate DP(Operand.isAddrMode5());
    5792        2250 :     if (DP.isMatch())
    5793             :       return MCTargetAsmParser::Match_Success;
    5794             :     break;
    5795             :     }
    5796             :   // 'AddrMode5FP16' class
    5797          43 :   case MCK_AddrMode5FP16: {
    5798          43 :     DiagnosticPredicate DP(Operand.isAddrMode5FP16());
    5799          43 :     if (DP.isMatch())
    5800             :       return MCTargetAsmParser::Match_Success;
    5801             :     break;
    5802             :     }
    5803             :   // 'AlignedMemory16' class
    5804        1262 :   case MCK_AlignedMemory16: {
    5805        1262 :     DiagnosticPredicate DP(Operand.isAlignedMemory16());
    5806        1262 :     if (DP.isMatch())
    5807             :       return MCTargetAsmParser::Match_Success;
    5808             :     if (DP.isNearMatch())
    5809             :       return ARMAsmParser::Match_AlignedMemory16;
    5810             :     break;
    5811             :     }
    5812             :   // 'AlignedMemory32' class
    5813        1994 :   case MCK_AlignedMemory32: {
    5814        1994 :     DiagnosticPredicate DP(Operand.isAlignedMemory32());
    5815        1994 :     if (DP.isMatch())
    5816             :       return MCTargetAsmParser::Match_Success;
    5817             :     if (DP.isNearMatch())
    5818             :       return ARMAsmParser::Match_AlignedMemory32;
    5819             :     break;
    5820             :     }
    5821             :   // 'AlignedMemory64' class
    5822       12694 :   case MCK_AlignedMemory64: {
    5823       12694 :     DiagnosticPredicate DP(Operand.isAlignedMemory64());
    5824       12694 :     if (DP.isMatch())
    5825             :       return MCTargetAsmParser::Match_Success;
    5826             :     if (DP.isNearMatch())
    5827             :       return ARMAsmParser::Match_AlignedMemory64;
    5828             :     break;
    5829             :     }
    5830             :   // 'AlignedMemory64or128' class
    5831        8472 :   case MCK_AlignedMemory64or128: {
    5832        8472 :     DiagnosticPredicate DP(Operand.isAlignedMemory64or128());
    5833        8472 :     if (DP.isMatch())
    5834             :       return MCTargetAsmParser::Match_Success;
    5835             :     if (DP.isNearMatch())
    5836             :       return ARMAsmParser::Match_AlignedMemory64or128;
    5837             :     break;
    5838             :     }
    5839             :   // 'AlignedMemory64or128or256' class
    5840        8721 :   case MCK_AlignedMemory64or128or256: {
    5841        8721 :     DiagnosticPredicate DP(Operand.isAlignedMemory64or128or256());
    5842        8721 :     if (DP.isMatch())
    5843             :       return MCTargetAsmParser::Match_Success;
    5844             :     if (DP.isNearMatch())
    5845             :       return ARMAsmParser::Match_AlignedMemory64or128or256;
    5846             :     break;
    5847             :     }
    5848             :   // 'AlignedMemoryNone' class
    5849             :   case MCK_AlignedMemoryNone: {
    5850             :     DiagnosticPredicate DP(Operand.isAlignedMemoryNone());
    5851        4099 :     if (DP.isMatch())
    5852             :       return MCTargetAsmParser::Match_Success;
    5853             :     if (DP.isNearMatch())
    5854             :       return ARMAsmParser::Match_AlignedMemoryNone;
    5855             :     break;
    5856             :     }
    5857             :   // 'AlignedMemory' class
    5858             :   case MCK_AlignedMemory: {
    5859             :     DiagnosticPredicate DP(Operand.isAlignedMemory());
    5860           0 :     if (DP.isMatch())
    5861             :       return MCTargetAsmParser::Match_Success;
    5862             :     break;
    5863             :     }
    5864             :   // 'DupAlignedMemory16' class
    5865        1686 :   case MCK_DupAlignedMemory16: {
    5866        1686 :     DiagnosticPredicate DP(Operand.isDupAlignedMemory16());
    5867        1686 :     if (DP.isMatch())
    5868             :       return MCTargetAsmParser::Match_Success;
    5869             :     if (DP.isNearMatch())
    5870             :       return ARMAsmParser::Match_DupAlignedMemory16;
    5871             :     break;
    5872             :     }
    5873             :   // 'DupAlignedMemory32' class
    5874        2558 :   case MCK_DupAlignedMemory32: {
    5875        2558 :     DiagnosticPredicate DP(Operand.isDupAlignedMemory32());
    5876        2558 :     if (DP.isMatch())
    5877             :       return MCTargetAsmParser::Match_Success;
    5878             :     if (DP.isNearMatch())
    5879             :       return ARMAsmParser::Match_DupAlignedMemory32;
    5880             :     break;
    5881             :     }
    5882             :   // 'DupAlignedMemory64' class
    5883        1743 :   case MCK_DupAlignedMemory64: {
    5884        1743 :     DiagnosticPredicate DP(Operand.isDupAlignedMemory64());
    5885        1743 :     if (DP.isMatch())
    5886             :       return MCTargetAsmParser::Match_Success;
    5887             :     if (DP.isNearMatch())
    5888             :       return ARMAsmParser::Match_DupAlignedMemory64;
    5889             :     break;
    5890             :     }
    5891             :   // 'DupAlignedMemory64or128' class
    5892         793 :   case MCK_DupAlignedMemory64or128: {
    5893         793 :     DiagnosticPredicate DP(Operand.isDupAlignedMemory64or128());
    5894         793 :     if (DP.isMatch())
    5895             :       return MCTargetAsmParser::Match_Success;
    5896             :     if (DP.isNearMatch())
    5897             :       return ARMAsmParser::Match_DupAlignedMemory64or128;
    5898             :     break;
    5899             :     }
    5900             :   // 'DupAlignedMemoryNone' class
    5901             :   case MCK_DupAlignedMemoryNone: {
    5902             :     DiagnosticPredicate DP(Operand.isDupAlignedMemoryNone());
    5903        3476 :     if (DP.isMatch())
    5904             :       return MCTargetAsmParser::Match_Success;
    5905             :     if (DP.isNearMatch())
    5906             :       return ARMAsmParser::Match_DupAlignedMemoryNone;
    5907             :     break;
    5908             :     }
    5909             :   // 'AdrLabel' class
    5910          33 :   case MCK_AdrLabel: {
    5911          33 :     DiagnosticPredicate DP(Operand.isAdrLabel());
    5912          33 :     if (DP.isMatch())
    5913             :       return MCTargetAsmParser::Match_Success;
    5914             :     break;
    5915             :     }
    5916             :   // 'BankedReg' class
    5917         654 :   case MCK_BankedReg: {
    5918             :     DiagnosticPredicate DP(Operand.isBankedReg());
    5919         654 :     if (DP.isMatch())
    5920             :       return MCTargetAsmParser::Match_Success;
    5921             :     break;
    5922             :     }
    5923             :   // 'Bitfield' class
    5924          45 :   case MCK_Bitfield: {
    5925             :     DiagnosticPredicate DP(Operand.isBitfield());
    5926          45 :     if (DP.isMatch())
    5927             :       return MCTargetAsmParser::Match_Success;
    5928             :     break;
    5929             :     }
    5930             :   // 'CCOut' class
    5931       63486 :   case MCK_CCOut: {
    5932             :     DiagnosticPredicate DP(Operand.isCCOut());
    5933       63486 :     if (DP.isMatch())
    5934             :       return MCTargetAsmParser::Match_Success;
    5935             :     break;
    5936             :     }
    5937             :   // 'CondCode' class
    5938      311897 :   case MCK_CondCode: {
    5939             :     DiagnosticPredicate DP(Operand.isCondCode());
    5940      311897 :     if (DP.isMatch())
    5941             :       return MCTargetAsmParser::Match_Success;
    5942             :     break;
    5943             :     }
    5944             :   // 'CoprocNum' class
    5945        3695 :   case MCK_CoprocNum: {
    5946             :     DiagnosticPredicate DP(Operand.isCoprocNum());
    5947        3695 :     if (DP.isMatch())
    5948             :       return MCTargetAsmParser::Match_Success;
    5949             :     break;
    5950             :     }
    5951             :   // 'CoprocOption' class
    5952         526 :   case MCK_CoprocOption: {
    5953             :     DiagnosticPredicate DP(Operand.isCoprocOption());
    5954         526 :     if (DP.isMatch())
    5955             :       return MCTargetAsmParser::Match_Success;
    5956             :     break;
    5957             :     }
    5958             :   // 'CoprocReg' class
    5959        3888 :   case MCK_CoprocReg: {
    5960             :     DiagnosticPredicate DP(Operand.isCoprocReg());
    5961        3888 :     if (DP.isMatch())
    5962             :       return MCTargetAsmParser::Match_Success;
    5963             :     break;
    5964             :     }
    5965             :   // 'DPRRegList' class
    5966         119 :   case MCK_DPRRegList: {
    5967             :     DiagnosticPredicate DP(Operand.isDPRRegList());
    5968         119 :     if (DP.isMatch())
    5969             :       return MCTargetAsmParser::Match_Success;
    5970             :     if (DP.isNearMatch())
    5971             :       return ARMAsmParser::Match_DPR_RegList;
    5972             :     break;
    5973             :     }
    5974             :   // 'FPImm' class
    5975         279 :   case MCK_FPImm: {
    5976         279 :     DiagnosticPredicate DP(Operand.isFPImm());
    5977         279 :     if (DP.isMatch())
    5978             :       return MCTargetAsmParser::Match_Success;
    5979             :     break;
    5980             :     }
    5981             :   // 'Imm0_15' class
    5982             :   case MCK_Imm0_15: {
    5983             :     DiagnosticPredicate DP(Operand.isImmediate<0,15>());
    5984         372 :     if (DP.isMatch())
    5985             :       return MCTargetAsmParser::Match_Success;
    5986             :     if (DP.isNearMatch())
    5987             :       return ARMAsmParser::Match_Imm0_15;
    5988             :     break;
    5989             :     }
    5990             :   // 'Imm0_1' class
    5991             :   case MCK_Imm0_1: {
    5992             :     DiagnosticPredicate DP(Operand.isImmediate<0,1>());
    5993          47 :     if (DP.isMatch())
    5994             :       return MCTargetAsmParser::Match_Success;
    5995             :     if (DP.isNearMatch())
    5996             :       return ARMAsmParser::Match_Imm0_1;
    5997             :     break;
    5998             :     }
    5999             :   // 'Imm0_239' class
    6000             :   case MCK_Imm0_239: {
    6001             :     DiagnosticPredicate DP(Operand.isImmediate<0,239>());
    6002          64 :     if (DP.isMatch())
    6003             :       return MCTargetAsmParser::Match_Success;
    6004             :     if (DP.isNearMatch())
    6005             :       return ARMAsmParser::Match_Imm0_239;
    6006             :     break;
    6007             :     }
    6008             :   // 'Imm0_255' class
    6009             :   case MCK_Imm0_255: {
    6010             :     DiagnosticPredicate DP(Operand.isImmediate<0,255>());
    6011        2003 :     if (DP.isMatch())
    6012             :       return MCTargetAsmParser::Match_Success;
    6013             :     if (DP.isNearMatch())
    6014             :       return ARMAsmParser::Match_Imm0_255;
    6015             :     break;
    6016             :     }
    6017             :   // 'Imm0_31' class
    6018             :   case MCK_Imm0_31: {
    6019             :     DiagnosticPredicate DP(Operand.isImmediate<0,31>());
    6020        1412 :     if (DP.isMatch())
    6021             :       return MCTargetAsmParser::Match_Success;
    6022             :     if (DP.isNearMatch())
    6023             :       return ARMAsmParser::Match_Imm0_31;
    6024             :     break;
    6025             :     }
    6026             :   // 'Imm0_32' class
    6027             :   case MCK_Imm0_32: {
    6028             :     DiagnosticPredicate DP(Operand.isImmediate<0,32>());
    6029         183 :     if (DP.isMatch())
    6030             :       return MCTargetAsmParser::Match_Success;
    6031             :     if (DP.isNearMatch())
    6032             :       return ARMAsmParser::Match_Imm0_32;
    6033             :     break;
    6034             :     }
    6035             :   // 'Imm0_3' class
    6036             :   case MCK_Imm0_3: {
    6037             :     DiagnosticPredicate DP(Operand.isImmediate<0,3>());
    6038          21 :     if (DP.isMatch())
    6039             :       return MCTargetAsmParser::Match_Success;
    6040             :     if (DP.isNearMatch())
    6041             :       return ARMAsmParser::Match_Imm0_3;
    6042             :     break;
    6043             :     }
    6044             :   // 'Imm0_63' class
    6045             :   case MCK_Imm0_63: {
    6046             :     DiagnosticPredicate DP(Operand.isImmediate<0,63>());
    6047          26 :     if (DP.isMatch())
    6048             :       return MCTargetAsmParser::Match_Success;
    6049             :     if (DP.isNearMatch())
    6050             :       return ARMAsmParser::Match_Imm0_63;
    6051             :     break;
    6052             :     }
    6053             :   // 'Imm0_65535' class
    6054             :   case MCK_Imm0_65535: {
    6055             :     DiagnosticPredicate DP(Operand.isImmediate<0,65535>());
    6056          75 :     if (DP.isMatch())
    6057             :       return MCTargetAsmParser::Match_Success;
    6058             :     if (DP.isNearMatch())
    6059             :       return ARMAsmParser::Match_Imm0_65535;
    6060             :     break;
    6061             :     }
    6062             :   // 'Imm0_65535Expr' class
    6063             :   case MCK_Imm0_65535Expr: {
    6064             :     DiagnosticPredicate DP(Operand.isImm0_65535Expr());
    6065         479 :     if (DP.isMatch())
    6066             :       return MCTargetAsmParser::Match_Success;
    6067             :     if (DP.isNearMatch())
    6068             :       return ARMAsmParser::Match_Imm0_65535Expr;
    6069             :     break;
    6070             :     }
    6071             :   // 'Imm0_7' class
    6072             :   case MCK_Imm0_7: {
    6073             :     DiagnosticPredicate DP(Operand.isImmediate<0,7>());
    6074        1601 :     if (DP.isMatch())
    6075             :       return MCTargetAsmParser::Match_Success;
    6076             :     if (DP.isNearMatch())
    6077             :       return ARMAsmParser::Match_Imm0_7;
    6078             :     break;
    6079             :     }
    6080             :   // 'Imm16' class
    6081             :   case MCK_Imm16: {
    6082             :     DiagnosticPredicate DP(Operand.isImmediate<16,16>());
    6083           6 :     if (DP.isMatch())
    6084             :       return MCTargetAsmParser::Match_Success;
    6085             :     if (DP.isNearMatch())
    6086             :       return ARMAsmParser::Match_Imm16;
    6087             :     break;
    6088             :     }
    6089             :   // 'Imm1_15' class
    6090             :   case MCK_Imm1_15: {
    6091             :     DiagnosticPredicate DP(Operand.isImmediate<1,15>());
    6092          30 :     if (DP.isMatch())
    6093             :       return MCTargetAsmParser::Match_Success;
    6094             :     if (DP.isNearMatch())
    6095             :       return ARMAsmParser::Match_Imm1_15;
    6096             :     break;
    6097             :     }
    6098             :   // 'Imm1_16' class
    6099             :   case MCK_Imm1_16: {
    6100             :     DiagnosticPredicate DP(Operand.isImmediate<1,16>());
    6101          26 :     if (DP.isMatch())
    6102             :       return MCTargetAsmParser::Match_Success;
    6103             :     if (DP.isNearMatch())
    6104             :       return ARMAsmParser::Match_ImmRange1_16;
    6105             :     break;
    6106             :     }
    6107             :   // 'Imm1_31' class
    6108             :   case MCK_Imm1_31: {
    6109             :     DiagnosticPredicate DP(Operand.isImmediate<1,31>());
    6110         335 :     if (DP.isMatch())
    6111             :       return MCTargetAsmParser::Match_Success;
    6112             :     if (DP.isNearMatch())
    6113             :       return ARMAsmParser::Match_Imm1_31;
    6114             :     break;
    6115             :     }
    6116             :   // 'Imm1_32' class
    6117             :   case MCK_Imm1_32: {
    6118             :     DiagnosticPredicate DP(Operand.isImmediate<1,32>());
    6119         215 :     if (DP.isMatch())
    6120             :       return MCTargetAsmParser::Match_Success;
    6121             :     if (DP.isNearMatch())
    6122             :       return ARMAsmParser::Match_ImmRange1_32;
    6123             :     break;
    6124             :     }
    6125             :   // 'Imm1_7' class
    6126             :   case MCK_Imm1_7: {
    6127             :     DiagnosticPredicate DP(Operand.isImmediate<1,7>());
    6128          22 :     if (DP.isMatch())
    6129             :       return MCTargetAsmParser::Match_Success;
    6130             :     if (DP.isNearMatch())
    6131             :       return ARMAsmParser::Match_Imm1_7;
    6132             :     break;
    6133             :     }
    6134             :   // 'Imm24bit' class
    6135             :   case MCK_Imm24bit: {
    6136             :     DiagnosticPredicate DP(Operand.isImmediate<0,16777215>());
    6137          22 :     if (DP.isMatch())
    6138             :       return MCTargetAsmParser::Match_Success;
    6139             :     if (DP.isNearMatch())
    6140             :       return ARMAsmParser::Match_Imm24bit;
    6141             :     break;
    6142             :     }
    6143             :   // 'Imm256_65535Expr' class
    6144             :   case MCK_Imm256_65535Expr: {
    6145             :     DiagnosticPredicate DP(Operand.isImmediate<256,65535>());
    6146         162 :     if (DP.isMatch())
    6147             :       return MCTargetAsmParser::Match_Success;
    6148             :     if (DP.isNearMatch())
    6149             :       return ARMAsmParser::Match_Imm256_65535Expr;
    6150             :     break;
    6151             :     }
    6152             :   // 'Imm32' class
    6153             :   case MCK_Imm32: {
    6154             :     DiagnosticPredicate DP(Operand.isImmediate<32,32>());
    6155           4 :     if (DP.isMatch())
    6156             :       return MCTargetAsmParser::Match_Success;
    6157             :     if (DP.isNearMatch())
    6158             :       return ARMAsmParser::Match_Imm32;
    6159             :     break;
    6160             :     }
    6161             :   // 'Imm8' class
    6162             :   case MCK_Imm8: {
    6163             :     DiagnosticPredicate DP(Operand.isImmediate<8,8>());
    6164           2 :     if (DP.isMatch())
    6165             :       return MCTargetAsmParser::Match_Success;
    6166             :     if (DP.isNearMatch())
    6167             :       return ARMAsmParser::Match_Imm8;
    6168             :     break;
    6169             :     }
    6170             :   // 'Imm8_255' class
    6171             :   case MCK_Imm8_255: {
    6172             :     DiagnosticPredicate DP(Operand.isImmediate<8,255>());
    6173           0 :     if (DP.isMatch())
    6174             :       return MCTargetAsmParser::Match_Success;
    6175             :     if (DP.isNearMatch())
    6176             :       return ARMAsmParser::Match_Imm8_255;
    6177             :     break;
    6178             :     }
    6179             :   // 'Imm' class
    6180        3607 :   case MCK_Imm: {
    6181             :     DiagnosticPredicate DP(Operand.isImm());
    6182        3607 :     if (DP.isMatch())
    6183             :       return MCTargetAsmParser::Match_Success;
    6184             :     break;
    6185             :     }
    6186             :   // 'InstSyncBarrierOpt' class
    6187          36 :   case MCK_InstSyncBarrierOpt: {
    6188             :     DiagnosticPredicate DP(Operand.isInstSyncBarrierOpt());
    6189          36 :     if (DP.isMatch())
    6190             :       return MCTargetAsmParser::Match_Success;
    6191             :     break;
    6192             :     }
    6193             :   // 'MSRMask' class
    6194         617 :   case MCK_MSRMask: {
    6195             :     DiagnosticPredicate DP(Operand.isMSRMask());
    6196         617 :     if (DP.isMatch())
    6197             :       return MCTargetAsmParser::Match_Success;
    6198             :     break;
    6199             :     }
    6200             :   // 'MemBarrierOpt' class
    6201         416 :   case MCK_MemBarrierOpt: {
    6202             :     DiagnosticPredicate DP(Operand.isMemBarrierOpt());
    6203         416 :     if (DP.isMatch())
    6204             :       return MCTargetAsmParser::Match_Success;
    6205             :     break;
    6206             :     }
    6207             :   // 'MemImm0_1020s4Offset' class
    6208          44 :   case MCK_MemImm0_1020s4Offset: {
    6209          44 :     DiagnosticPredicate DP(Operand.isMemImm0_1020s4Offset());
    6210          44 :     if (DP.isMatch())
    6211             :       return MCTargetAsmParser::Match_Success;
    6212             :     break;
    6213             :     }
    6214             :   // 'MemImm12Offset' class
    6215         903 :   case MCK_MemImm12Offset: {
    6216         903 :     DiagnosticPredicate DP(Operand.isMemImm12Offset());
    6217         903 :     if (DP.isMatch())
    6218             :       return MCTargetAsmParser::Match_Success;
    6219             :     break;
    6220             :     }
    6221             :   // 'MemImm8Offset' class
    6222         356 :   case MCK_MemImm8Offset: {
    6223         356 :     DiagnosticPredicate DP(Operand.isMemImm8Offset());
    6224         356 :     if (DP.isMatch())
    6225             :       return MCTargetAsmParser::Match_Success;
    6226             :     break;
    6227             :     }
    6228             :   // 'MemImm8s4Offset' class
    6229         421 :   case MCK_MemImm8s4Offset: {
    6230         421 :     DiagnosticPredicate DP(Operand.isMemImm8s4Offset());
    6231         421 :     if (DP.isMatch())
    6232             :       return MCTargetAsmParser::Match_Success;
    6233             :     break;
    6234             :     }
    6235             :   // 'MemNegImm8Offset' class
    6236        1078 :   case MCK_MemNegImm8Offset: {
    6237        1078 :     DiagnosticPredicate DP(Operand.isMemNegImm8Offset());
    6238        1078 :     if (DP.isMatch())
    6239             :       return MCTargetAsmParser::Match_Success;
    6240             :     break;
    6241             :     }
    6242             :   // 'MemNoOffset' class
    6243        1942 :   case MCK_MemNoOffset: {
    6244        1942 :     DiagnosticPredicate DP(Operand.isMemNoOffset());
    6245        1942 :     if (DP.isMatch())
    6246             :       return MCTargetAsmParser::Match_Success;
    6247             :     break;
    6248             :     }
    6249             :   // 'MemPosImm8Offset' class
    6250          74 :   case MCK_MemPosImm8Offset: {
    6251          74 :     DiagnosticPredicate DP(Operand.isMemPosImm8Offset());
    6252          74 :     if (DP.isMatch())
    6253             :       return MCTargetAsmParser::Match_Success;
    6254             :     break;
    6255             :     }
    6256             :   // 'MemRegOffset' class
    6257             :   case MCK_MemRegOffset: {
    6258             :     DiagnosticPredicate DP(Operand.isMemRegOffset());
    6259         773 :     if (DP.isMatch())
    6260             :       return MCTargetAsmParser::Match_Success;
    6261             :     break;
    6262             :     }
    6263             :   // 'ModImm' class
    6264        5070 :   case MCK_ModImm: {
    6265             :     DiagnosticPredicate DP(Operand.isModImm());
    6266        5070 :     if (DP.isMatch())
    6267             :       return MCTargetAsmParser::Match_Success;
    6268             :     break;
    6269             :     }
    6270             :   // 'ModImmNeg' class
    6271        1840 :   case MCK_ModImmNeg: {
    6272        1840 :     DiagnosticPredicate DP(Operand.isModImmNeg());
    6273        1840 :     if (DP.isMatch())
    6274             :       return MCTargetAsmParser::Match_Success;
    6275             :     break;
    6276             :     }
    6277             :   // 'ModImmNot' class
    6278        1518 :   case MCK_ModImmNot: {
    6279        1518 :     DiagnosticPredicate DP(Operand.isModImmNot());
    6280        1518 :     if (DP.isMatch())
    6281             :       return MCTargetAsmParser::Match_Success;
    6282             :     break;
    6283             :     }
    6284             :   // 'PKHASRImm' class
    6285             :   case MCK_PKHASRImm: {
    6286             :     DiagnosticPredicate DP(Operand.isPKHASRImm());
    6287          12 :     if (DP.isMatch())
    6288             :       return MCTargetAsmParser::Match_Success;
    6289             :     break;
    6290             :     }
    6291             :   // 'PKHLSLImm' class
    6292             :   case MCK_PKHLSLImm: {
    6293             :     DiagnosticPredicate DP(Operand.isImmediate<0,31>());
    6294          22 :     if (DP.isMatch())
    6295             :       return MCTargetAsmParser::Match_Success;
    6296             :     if (DP.isNearMatch())
    6297             :       return ARMAsmParser::Match_PKHLSLImm;
    6298             :     break;
    6299             :     }
    6300             :   // 'PostIdxImm8' class
    6301             :   case MCK_PostIdxImm8: {
    6302             :     DiagnosticPredicate DP(Operand.isPostIdxImm8());
    6303          19 :     if (DP.isMatch())
    6304             :       return MCTargetAsmParser::Match_Success;
    6305             :     break;
    6306             :     }
    6307             :   // 'PostIdxImm8s4' class
    6308             :   case MCK_PostIdxImm8s4: {
    6309             :     DiagnosticPredicate DP(Operand.isPostIdxImm8s4());
    6310         352 :     if (DP.isMatch())
    6311             :       return MCTargetAsmParser::Match_Success;
    6312             :     break;
    6313             :     }
    6314             :   // 'PostIdxReg' class
    6315          25 :   case MCK_PostIdxReg: {
    6316          25 :     DiagnosticPredicate DP(Operand.isPostIdxReg());
    6317          25 :     if (DP.isMatch())
    6318             :       return MCTargetAsmParser::Match_Success;
    6319             :     break;
    6320             :     }
    6321             :   // 'PostIdxRegShifted' class
    6322          67 :   case MCK_PostIdxRegShifted: {
    6323             :     DiagnosticPredicate DP(Operand.isPostIdxRegShifted());
    6324          67 :     if (DP.isMatch())
    6325             :       return MCTargetAsmParser::Match_Success;
    6326             :     break;
    6327             :     }
    6328             :   // 'ProcIFlags' class
    6329         154 :   case MCK_ProcIFlags: {
    6330             :     DiagnosticPredicate DP(Operand.isProcIFlags());
    6331         154 :     if (DP.isMatch())
    6332             :       return MCTargetAsmParser::Match_Success;
    6333             :     break;
    6334             :     }
    6335             :   // 'RegList' class
    6336        1743 :   case MCK_RegList: {
    6337             :     DiagnosticPredicate DP(Operand.isRegList());
    6338        1743 :     if (DP.isMatch())
    6339             :       return MCTargetAsmParser::Match_Success;
    6340             :     break;
    6341             :     }
    6342             :   // 'RotImm' class
    6343         342 :   case MCK_RotImm: {
    6344             :     DiagnosticPredicate DP(Operand.isRotImm());
    6345         342 :     if (DP.isMatch())
    6346             :       return MCTargetAsmParser::Match_Success;
    6347             :     break;
    6348             :     }
    6349             :   // 'SPRRegList' class
    6350          42 :   case MCK_SPRRegList: {
    6351             :     DiagnosticPredicate DP(Operand.isSPRRegList());
    6352          42 :     if (DP.isMatch())
    6353             :       return MCTargetAsmParser::Match_Success;
    6354             :     if (DP.isNearMatch())
    6355             :       return ARMAsmParser::Match_SPRRegList;
    6356             :     break;
    6357             :     }
    6358             :   // 'SetEndImm' class
    6359             :   case MCK_SetEndImm: {
    6360             :     DiagnosticPredicate DP(Operand.isImmediate<0,1>());
    6361          44 :     if (DP.isMatch())
    6362             :       return MCTargetAsmParser::Match_Success;
    6363             :     if (DP.isNearMatch())
    6364             :       return ARMAsmParser::Match_SetEndImm;
    6365             :     break;
    6366             :     }
    6367             :   // 'RegShiftedImm' class
    6368       10647 :   case MCK_RegShiftedImm: {
    6369             :     DiagnosticPredicate DP(Operand.isRegShiftedImm());
    6370       10647 :     if (DP.isMatch())
    6371             :       return MCTargetAsmParser::Match_Success;
    6372             :     break;
    6373             :     }
    6374             :   // 'RegShiftedReg' class
    6375        4427 :   case MCK_RegShiftedReg: {
    6376        4427 :     DiagnosticPredicate DP(Operand.isRegShiftedReg());
    6377        4427 :     if (DP.isMatch())
    6378             :       return MCTargetAsmParser::Match_Success;
    6379             :     break;
    6380             :     }
    6381             :   // 'ShifterImm' class
    6382          52 :   case MCK_ShifterImm: {
    6383             :     DiagnosticPredicate DP(Operand.isShifterImm());
    6384          52 :     if (DP.isMatch())
    6385             :       return MCTargetAsmParser::Match_Success;
    6386             :     break;
    6387             :     }
    6388             :   // 'ThumbBranchTarget' class
    6389             :   case MCK_ThumbBranchTarget: {
    6390             :     DiagnosticPredicate DP(Operand.isThumbBranchTarget());
    6391         439 :     if (DP.isMatch())
    6392             :       return MCTargetAsmParser::Match_Success;
    6393             :     break;
    6394             :     }
    6395             :   // 'ThumbMemPC' class
    6396         649 :   case MCK_ThumbMemPC: {
    6397         649 :     DiagnosticPredicate DP(Operand.isThumbMemPC());
    6398         649 :     if (DP.isMatch())
    6399             :       return MCTargetAsmParser::Match_Success;
    6400             :     break;
    6401             :     }
    6402             :   // 'ThumbModImmNeg1_7' class
    6403             :   case MCK_ThumbModImmNeg1_7: {
    6404             :     DiagnosticPredicate DP(Operand.isThumbModImmNeg1_7());
    6405         798 :     if (DP.isMatch())
    6406             :       return MCTargetAsmParser::Match_Success;
    6407             :     break;
    6408             :     }
    6409             :   // 'ThumbModImmNeg8_255' class
    6410             :   case MCK_ThumbModImmNeg8_255: {
    6411             :     DiagnosticPredicate DP(Operand.isThumbModImmNeg8_255());
    6412        1499 :     if (DP.isMatch())
    6413             :       return MCTargetAsmParser::Match_Success;
    6414             :     break;
    6415             :     }
    6416             :   // 'ImmThumbSR' class
    6417             :   case MCK_ImmThumbSR: {
    6418             :     DiagnosticPredicate DP(Operand.isImmediate<1,32>());
    6419         660 :     if (DP.isMatch())
    6420             :       return MCTargetAsmParser::Match_Success;
    6421             :     if (DP.isNearMatch())
    6422             :       return ARMAsmParser::Match_ImmThumbSR;
    6423             :     break;
    6424             :     }
    6425             :   // 'TraceSyncBarrierOpt' class
    6426          14 :   case MCK_TraceSyncBarrierOpt: {
    6427             :     DiagnosticPredicate DP(Operand.isTraceSyncBarrierOpt());
    6428          14 :     if (DP.isMatch())
    6429             :       return MCTargetAsmParser::Match_Success;
    6430             :     break;
    6431             :     }
    6432             :   // 'UnsignedOffset_b8s2' class
    6433             :   case MCK_UnsignedOffset_b8s2: {
    6434             :     DiagnosticPredicate DP(Operand.isUnsignedOffset<8, 2>());
    6435          61 :     if (DP.isMatch())
    6436             :       return MCTargetAsmParser::Match_Success;
    6437             :     break;
    6438             :     }
    6439             :   // 'VecListDPairAllLanes' class
    6440             :   case MCK_VecListDPairAllLanes: {
    6441             :     DiagnosticPredicate DP(Operand.isVecListDPairAllLanes());
    6442        6762 :     if (DP.isMatch())
    6443             :       return MCTargetAsmParser::Match_Success;
    6444             :     break;
    6445             :     }
    6446             :   // 'VecListDPair' class
    6447             :   case MCK_VecListDPair: {
    6448             :     DiagnosticPredicate DP(Operand.isVecListDPair());
    6449       12735 :     if (DP.isMatch())
    6450             :       return MCTargetAsmParser::Match_Success;
    6451             :     break;
    6452             :     }
    6453             :   // 'VecListDPairSpacedAllLanes' class
    6454             :   case MCK_VecListDPairSpacedAllLanes: {
    6455             :     DiagnosticPredicate DP(Operand.isVecListDPairSpacedAllLanes());
    6456        2741 :     if (DP.isMatch())
    6457             :       return MCTargetAsmParser::Match_Success;
    6458             :     break;
    6459             :     }
    6460             :   // 'VecListDPairSpaced' class
    6461             :   case MCK_VecListDPairSpaced: {
    6462             :     DiagnosticPredicate DP(Operand.isVecListDPairSpaced());
    6463        4028 :     if (DP.isMatch())
    6464             :       return MCTargetAsmParser::Match_Success;
    6465             :     break;
    6466             :     }
    6467             :   // 'VecListFourDAllLanes' class
    6468             :   case MCK_VecListFourDAllLanes: {
    6469             :     DiagnosticPredicate DP(Operand.isVecListFourDAllLanes());
    6470        2508 :     if (DP.isMatch())
    6471             :       return MCTargetAsmParser::Match_Success;
    6472             :     break;
    6473             :     }
    6474             :   // 'VecListFourD' class
    6475             :   case MCK_VecListFourD: {
    6476             :     DiagnosticPredicate DP(Operand.isVecListFourD());
    6477       16598 :     if (DP.isMatch())
    6478             :       return MCTargetAsmParser::Match_Success;
    6479             :     break;
    6480             :     }
    6481             :   // 'VecListFourDByteIndexed' class
    6482             :   case MCK_VecListFourDByteIndexed: {
    6483             :     DiagnosticPredicate DP(Operand.isVecListFourDByteIndexed());
    6484        1134 :     if (DP.isMatch())
    6485             :       return MCTargetAsmParser::Match_Success;
    6486             :     break;
    6487             :     }
    6488             :   // 'VecListFourDHWordIndexed' class
    6489             :   case MCK_VecListFourDHWordIndexed: {
    6490             :     DiagnosticPredicate DP(Operand.isVecListFourDHWordIndexed());
    6491        1598 :     if (DP.isMatch())
    6492             :       return MCTargetAsmParser::Match_Success;
    6493             :     break;
    6494             :     }
    6495             :   // 'VecListFourDWordIndexed' class
    6496             :   case MCK_VecListFourDWordIndexed: {
    6497             :     DiagnosticPredicate DP(Operand.isVecListFourDWordIndexed());
    6498        1385 :     if (DP.isMatch())
    6499             :       return MCTargetAsmParser::Match_Success;
    6500             :     break;
    6501             :     }
    6502             :   // 'VecListFourQAllLanes' class
    6503             :   case MCK_VecListFourQAllLanes: {
    6504             :     DiagnosticPredicate DP(Operand.isVecListFourQAllLanes());
    6505        2327 :     if (DP.isMatch())
    6506             :       return MCTargetAsmParser::Match_Success;
    6507             :     break;
    6508             :     }
    6509             :   // 'VecListFourQ' class
    6510             :   case MCK_VecListFourQ: {
    6511             :     DiagnosticPredicate DP(Operand.isVecListFourQ());
    6512        3930 :     if (DP.isMatch())
    6513             :       return MCTargetAsmParser::Match_Success;
    6514             :     break;
    6515             :     }
    6516             :   // 'VecListFourQHWordIndexed' class
    6517             :   case MCK_VecListFourQHWordIndexed: {
    6518             :     DiagnosticPredicate DP(Operand.isVecListFourQHWordIndexed());
    6519        1493 :     if (DP.isMatch())
    6520             :       return MCTargetAsmParser::Match_Success;
    6521             :     break;
    6522             :     }
    6523             :   // 'VecListFourQWordIndexed' class
    6524             :   case MCK_VecListFourQWordIndexed: {
    6525             :     DiagnosticPredicate DP(Operand.isVecListFourQWordIndexed());
    6526        1253 :     if (DP.isMatch())
    6527             :       return MCTargetAsmParser::Match_Success;
    6528             :     break;
    6529             :     }
    6530             :   // 'VecListOneDAllLanes' class
    6531             :   case MCK_VecListOneDAllLanes: {
    6532             :     DiagnosticPredicate DP(Operand.isVecListOneDAllLanes());
    6533        3747 :     if (DP.isMatch())
    6534             :       return MCTargetAsmParser::Match_Success;
    6535             :     break;
    6536             :     }
    6537             :   // 'VecListOneD' class
    6538             :   case MCK_VecListOneD: {
    6539             :     DiagnosticPredicate DP(Operand.isVecListOneD());
    6540        8187 :     if (DP.isMatch())
    6541             :       return MCTargetAsmParser::Match_Success;
    6542             :     break;
    6543             :     }
    6544             :   // 'VecListOneDByteIndexed' class
    6545             :   case MCK_VecListOneDByteIndexed: {
    6546             :     DiagnosticPredicate DP(Operand.isVecListOneDByteIndexed());
    6547        1752 :     if (DP.isMatch())
    6548             :       return MCTargetAsmParser::Match_Success;
    6549             :     break;
    6550             :     }
    6551             :   // 'VecListOneDHWordIndexed' class
    6552             :   case MCK_VecListOneDHWordIndexed: {
    6553             :     DiagnosticPredicate DP(Operand.isVecListOneDHWordIndexed());
    6554        2287 :     if (DP.isMatch())
    6555             :       return MCTargetAsmParser::Match_Success;
    6556             :     break;
    6557             :     }
    6558             :   // 'VecListOneDWordIndexed' class
    6559             :   case MCK_VecListOneDWordIndexed: {
    6560             :     DiagnosticPredicate DP(Operand.isVecListOneDWordIndexed());
    6561        2100 :     if (DP.isMatch())
    6562             :       return MCTargetAsmParser::Match_Success;
    6563             :     break;
    6564             :     }
    6565             :   // 'VecListThreeDAllLanes' class
    6566             :   case MCK_VecListThreeDAllLanes: {
    6567             :     DiagnosticPredicate DP(Operand.isVecListThreeDAllLanes());
    6568        2814 :     if (DP.isMatch())
    6569             :       return MCTargetAsmParser::Match_Success;
    6570             :     break;
    6571             :     }
    6572             :   // 'VecListThreeD' class
    6573             :   case MCK_VecListThreeD: {
    6574             :     DiagnosticPredicate DP(Operand.isVecListThreeD());
    6575       12575 :     if (DP.isMatch())
    6576             :       return MCTargetAsmParser::Match_Success;
    6577             :     break;
    6578             :     }
    6579             :   // 'VecListThreeDByteIndexed' class
    6580             :   case MCK_VecListThreeDByteIndexed: {
    6581             :     DiagnosticPredicate DP(Operand.isVecListThreeDByteIndexed());
    6582        1366 :     if (DP.isMatch())
    6583             :       return MCTargetAsmParser::Match_Success;
    6584             :     break;
    6585             :     }
    6586             :   // 'VecListThreeDHWordIndexed' class
    6587             :   case MCK_VecListThreeDHWordIndexed: {
    6588             :     DiagnosticPredicate DP(Operand.isVecListThreeDHWordIndexed());
    6589        1634 :     if (DP.isMatch())
    6590             :       return MCTargetAsmParser::Match_Success;
    6591             :     break;
    6592             :     }
    6593             :   // 'VecListThreeDWordIndexed' class
    6594             :   case MCK_VecListThreeDWordIndexed: {
    6595             :     DiagnosticPredicate DP(Operand.isVecListThreeDWordIndexed());
    6596        1500 :     if (DP.isMatch())
    6597             :       return MCTargetAsmParser::Match_Success;
    6598             :     break;
    6599             :     }
    6600             :   // 'VecListThreeQAllLanes' class
    6601             :   case MCK_VecListThreeQAllLanes: {
    6602             :     DiagnosticPredicate DP(Operand.isVecListThreeQAllLanes());
    6603        2703 :     if (DP.isMatch())
    6604             :       return MCTargetAsmParser::Match_Success;
    6605             :     break;
    6606             :     }
    6607             :   // 'VecListThreeQ' class
    6608             :   case MCK_VecListThreeQ: {
    6609             :     DiagnosticPredicate DP(Operand.isVecListThreeQ());
    6610        4386 :     if (DP.isMatch())
    6611             :       return MCTargetAsmParser::Match_Success;
    6612             :     break;
    6613             :     }
    6614             :   // 'VecListThreeQHWordIndexed' class
    6615             :   case MCK_VecListThreeQHWordIndexed: {
    6616             :     DiagnosticPredicate DP(Operand.isVecListThreeQHWordIndexed());
    6617        1564 :     if (DP.isMatch())
    6618             :       return MCTargetAsmParser::Match_Success;
    6619             :     break;
    6620             :     }
    6621             :   // 'VecListThreeQWordIndexed' class
    6622             :   case MCK_VecListThreeQWordIndexed: {
    6623             :     DiagnosticPredicate DP(Operand.isVecListThreeQWordIndexed());
    6624        1430 :     if (DP.isMatch())
    6625             :       return MCTargetAsmParser::Match_Success;
    6626             :     break;
    6627             :     }
    6628             :   // 'VecListTwoDByteIndexed' class
    6629             :   case MCK_VecListTwoDByteIndexed: {
    6630             :     DiagnosticPredicate DP(Operand.isVecListTwoDByteIndexed());
    6631        1079 :     if (DP.isMatch())
    6632             :       return MCTargetAsmParser::Match_Success;
    6633             :     break;
    6634             :     }
    6635             :   // 'VecListTwoDHWordIndexed' class
    6636             :   case MCK_VecListTwoDHWordIndexed: {
    6637             :     DiagnosticPredicate DP(Operand.isVecListTwoDHWordIndexed());
    6638        1465 :     if (DP.isMatch())
    6639             :       return MCTargetAsmParser::Match_Success;
    6640             :     break;
    6641             :     }
    6642             :   // 'VecListTwoDWordIndexed' class
    6643             :   case MCK_VecListTwoDWordIndexed: {
    6644             :     DiagnosticPredicate DP(Operand.isVecListTwoDWordIndexed());
    6645        1280 :     if (DP.isMatch())
    6646             :       return MCTargetAsmParser::Match_Success;
    6647             :     break;
    6648             :     }
    6649             :   // 'VecListTwoQHWordIndexed' class
    6650             :   case MCK_VecListTwoQHWordIndexed: {
    6651             :     DiagnosticPredicate DP(Operand.isVecListTwoQHWordIndexed());
    6652        1450 :     if (DP.isMatch())
    6653             :       return MCTargetAsmParser::Match_Success;
    6654             :     break;
    6655             :     }
    6656             :   // 'VecListTwoQWordIndexed' class
    6657             :   case MCK_VecListTwoQWordIndexed: {
    6658             :     DiagnosticPredicate DP(Operand.isVecListTwoQWordIndexed());
    6659        1254 :     if (DP.isMatch())
    6660             :       return MCTargetAsmParser::Match_Success;
    6661             :     break;
    6662             :     }
    6663             :   // 'VectorIndex16' class
    6664         342 :   case MCK_VectorIndex16: {
    6665             :     DiagnosticPredicate DP(Operand.isVectorIndex16());
    6666         342 :     if (DP.isMatch())
    6667             :       return MCTargetAsmParser::Match_Success;
    6668             :     break;
    6669             :     }
    6670             :   // 'VectorIndex32' class
    6671         492 :   case MCK_VectorIndex32: {
    6672             :     DiagnosticPredicate DP(Operand.isVectorIndex32());
    6673         492 :     if (DP.isMatch())
    6674             :       return MCTargetAsmParser::Match_Success;
    6675             :     break;
    6676             :     }
    6677             :   // 'VectorIndex64' class
    6678         154 :   case MCK_VectorIndex64: {
    6679             :     DiagnosticPredicate DP(Operand.isVectorIndex64());
    6680         154 :     if (DP.isMatch())
    6681             :       return MCTargetAsmParser::Match_Success;
    6682             :     break;
    6683             :     }
    6684             :   // 'VectorIndex8' class
    6685          66 :   case MCK_VectorIndex8: {
    6686             :     DiagnosticPredicate DP(Operand.isVectorIndex8());
    6687          66 :     if (DP.isMatch())
    6688             :       return MCTargetAsmParser::Match_Success;
    6689             :     break;
    6690             :     }
    6691             :   // 'MemTBB' class
    6692           7 :   case MCK_MemTBB: {
    6693           7 :     DiagnosticPredicate DP(Operand.isMemTBB());
    6694           7 :     if (DP.isMatch())
    6695             :       return MCTargetAsmParser::Match_Success;
    6696             :     break;
    6697             :     }
    6698             :   // 'MemTBH' class
    6699           7 :   case MCK_MemTBH: {
    6700           7 :     DiagnosticPredicate DP(Operand.isMemTBH());
    6701           7 :     if (DP.isMatch())
    6702             :       return MCTargetAsmParser::Match_Success;
    6703             :     break;
    6704             :     }
    6705             :   // 'ComplexRotationEven' class
    6706             :   case MCK_ComplexRotationEven: {
    6707             :     DiagnosticPredicate DP(Operand.isComplexRotation<90, 0>());
    6708         504 :     if (DP.isMatch())
    6709             :       return MCTargetAsmParser::Match_Success;
    6710             :     if (DP.isNearMatch())
    6711             :       return ARMAsmParser::Match_ComplexRotationEven;
    6712             :     break;
    6713             :     }
    6714             :   // 'ComplexRotationOdd' class
    6715             :   case MCK_ComplexRotationOdd: {
    6716             :     DiagnosticPredicate DP(Operand.isComplexRotation<180, 90>());
    6717         148 :     if (DP.isMatch())
    6718             :       return MCTargetAsmParser::Match_Success;
    6719             :     if (DP.isNearMatch())
    6720             :       return ARMAsmParser::Match_ComplexRotationOdd;
    6721             :     break;
    6722             :     }
    6723             :   // 'NEONi16vmovi8Replicate' class
    6724             :   case MCK_NEONi16vmovi8Replicate: {
    6725             :     DiagnosticPredicate DP(Operand.isNEONmovReplicate<8, 16>());
    6726         128 :     if (DP.isMatch())
    6727             :       return MCTargetAsmParser::Match_Success;
    6728             :     break;
    6729             :     }
    6730             :   // 'NEONi16invi8Replicate' class
    6731             :   case MCK_NEONi16invi8Replicate: {
    6732             :     DiagnosticPredicate DP(Operand.isNEONinvReplicate<8, 16>());
    6733          71 :     if (DP.isMatch())
    6734             :       return MCTargetAsmParser::Match_Success;
    6735             :     break;
    6736             :     }
    6737             :   // 'NEONi32vmovi8Replicate' class
    6738             :   case MCK_NEONi32vmovi8Replicate: {
    6739             :     DiagnosticPredicate DP(Operand.isNEONmovReplicate<8, 32>());
    6740         115 :     if (DP.isMatch())
    6741             :       return MCTargetAsmParser::Match_Success;
    6742             :     break;
    6743             :     }
    6744             :   // 'NEONi32invi8Replicate' class
    6745          77 :   case MCK_NEONi32invi8Replicate: {
    6746          77 :     DiagnosticPredicate DP(Operand.isNEONinvReplicate<8, 32>());
    6747          77 :     if (DP.isMatch())
    6748             :       return MCTargetAsmParser::Match_Success;
    6749             :     break;
    6750             :     }
    6751             :   // 'NEONi64vmovi8Replicate' class
    6752          70 :   case MCK_NEONi64vmovi8Replicate: {
    6753          70 :     DiagnosticPredicate DP(Operand.isNEONmovReplicate<8, 64>());
    6754          70 :     if (DP.isMatch())
    6755             :       return MCTargetAsmParser::Match_Success;
    6756             :     break;
    6757             :     }
    6758             :   // 'NEONi64invi8Replicate' class
    6759          44 :   case MCK_NEONi64invi8Replicate: {
    6760          44 :     DiagnosticPredicate DP(Operand.isNEONinvReplicate<8, 64>());
    6761          44 :     if (DP.isMatch())
    6762             :       return MCTargetAsmParser::Match_Success;
    6763             :     break;
    6764             :     }
    6765             :   // 'NEONi32vmovi16Replicate' class
    6766             :   case MCK_NEONi32vmovi16Replicate: {
    6767             :     DiagnosticPredicate DP(Operand.isNEONmovReplicate<16, 32>());
    6768         184 :     if (DP.isMatch())
    6769             :       return MCTargetAsmParser::Match_Success;
    6770             :     break;
    6771             :     }
    6772             :   // 'NEONi64vmovi16Replicate' class
    6773         108 :   case MCK_NEONi64vmovi16Replicate: {
    6774         108 :     DiagnosticPredicate DP(Operand.isNEONmovReplicate<16, 64>());
    6775         108 :     if (DP.isMatch())
    6776             :       return MCTargetAsmParser::Match_Success;
    6777             :     break;
    6778             :     }
    6779             :   // 'NEONi64vmovi32Replicate' class
    6780         100 :   case MCK_NEONi64vmovi32Replicate: {
    6781         100 :     DiagnosticPredicate DP(Operand.isNEONmovReplicate<32, 64>());
    6782         100 :     if (DP.isMatch())
    6783             :       return MCTargetAsmParser::Match_Success;
    6784             :     break;
    6785             :     }
    6786             :   // 'ConstPoolAsmImm' class
    6787             :   case MCK_ConstPoolAsmImm: {
    6788             :     DiagnosticPredicate DP(Operand.isConstPoolAsmImm());
    6789        1158 :     if (DP.isMatch())
    6790             :       return MCTargetAsmParser::Match_Success;
    6791             :     break;
    6792             :     }
    6793             :   // 'FBits16' class
    6794             :   case MCK_FBits16: {
    6795             :     DiagnosticPredicate DP(Operand.isFBits16());
    6796         136 :     if (DP.isMatch())
    6797             :       return MCTargetAsmParser::Match_Success;
    6798             :     break;
    6799             :     }
    6800             :   // 'FBits32' class
    6801             :   case MCK_FBits32: {
    6802             :     DiagnosticPredicate DP(Operand.isFBits32());
    6803          96 :     if (DP.isMatch())
    6804             :       return MCTargetAsmParser::Match_Success;
    6805             :     break;
    6806             :     }
    6807             :   // 'Imm0_4095' class
    6808             :   case MCK_Imm0_4095: {
    6809             :     DiagnosticPredicate DP(Operand.isImmediate<0,4095>());
    6810         327 :     if (DP.isMatch())
    6811             :       return MCTargetAsmParser::Match_Success;
    6812             :     if (DP.isNearMatch())
    6813             :       return ARMAsmParser::Match_Imm0_4095;
    6814             :     break;
    6815             :     }
    6816             :   // 'Imm0_4095Neg' class
    6817             :   case MCK_Imm0_4095Neg: {
    6818             :     DiagnosticPredicate DP(Operand.isImm0_4095Neg());
    6819         225 :     if (DP.isMatch())
    6820             :       return MCTargetAsmParser::Match_Success;
    6821             :     break;
    6822             :     }
    6823             :   // 'ITMask' class
    6824        5503 :   case MCK_ITMask: {
    6825             :     DiagnosticPredicate DP(Operand.isITMask());
    6826        5503 :     if (DP.isMatch())
    6827             :       return MCTargetAsmParser::Match_Success;
    6828             :     break;
    6829             :     }
    6830             :   // 'ITCondCode' class
    6831        5503 :   case MCK_ITCondCode: {
    6832             :     DiagnosticPredicate DP(Operand.isITCondCode());
    6833        5503 :     if (DP.isMatch())
    6834             :       return MCTargetAsmParser::Match_Success;
    6835             :     break;
    6836             :     }
    6837             :   // 'NEONi16splat' class
    6838         272 :   case MCK_NEONi16splat: {
    6839         272 :     DiagnosticPredicate DP(Operand.isNEONi16splat());
    6840         272 :     if (DP.isMatch())
    6841             :       return MCTargetAsmParser::Match_Success;
    6842             :     break;
    6843             :     }
    6844             :   // 'NEONi32splat' class
    6845          81 :   case MCK_NEONi32splat: {
    6846          81 :     DiagnosticPredicate DP(Operand.isNEONi32splat());
    6847          81 :     if (DP.isMatch())
    6848             :       return MCTargetAsmParser::Match_Success;
    6849             :     break;
    6850             :     }
    6851             :   // 'NEONi64splat' class
    6852             :   case MCK_NEONi64splat: {
    6853             :     DiagnosticPredicate DP(Operand.isNEONi64splat());
    6854          60 :     if (DP.isMatch())
    6855             :       return MCTargetAsmParser::Match_Success;
    6856             :     break;
    6857             :     }
    6858             :   // 'NEONi8splat' class
    6859             :   case MCK_NEONi8splat: {
    6860             :     DiagnosticPredicate DP(Operand.isNEONi8splat());
    6861          60 :     if (DP.isMatch())
    6862             :       return MCTargetAsmParser::Match_Success;
    6863             :     break;
    6864             :     }
    6865             :   // 'NEONi16splatNot' class
    6866          50 :   case MCK_NEONi16splatNot: {
    6867          50 :     DiagnosticPredicate DP(Operand.isNEONi16splatNot());
    6868          50 :     if (DP.isMatch())
    6869             :       return MCTargetAsmParser::Match_Success;
    6870             :     break;
    6871             :     }
    6872             :   // 'NEONi32splatNot' class
    6873          48 :   case MCK_NEONi32splatNot: {
    6874          48 :     DiagnosticPredicate DP(Operand.isNEONi32splatNot());
    6875          48 :     if (DP.isMatch())
    6876             :       return MCTargetAsmParser::Match_Success;
    6877             :     break;
    6878             :     }
    6879             :   // 'NEONi32vmov' class
    6880         320 :   case MCK_NEONi32vmov: {
    6881         320 :     DiagnosticPredicate DP(Operand.isNEONi32vmov());
    6882         320 :     if (DP.isMatch())
    6883             :       return MCTargetAsmParser::Match_Success;
    6884             :     break;
    6885             :     }
    6886             :   // 'NEONi32vmovNeg' class
    6887         140 :   case MCK_NEONi32vmovNeg: {
    6888         140 :     DiagnosticPredicate DP(Operand.isNEONi32vmovNeg());
    6889         140 :     if (DP.isMatch())
    6890             :       return MCTargetAsmParser::Match_Success;
    6891             :     break;
    6892             :     }
    6893             :   // 'ShrImm16' class
    6894             :   case MCK_ShrImm16: {
    6895             :     DiagnosticPredicate DP(Operand.isImmediate<1,16>());
    6896         880 :     if (DP.isMatch())
    6897             :       return MCTargetAsmParser::Match_Success;
    6898             :     if (DP.isNearMatch())
    6899             :       return ARMAsmParser::Match_ShrImm16;
    6900             :     break;
    6901             :     }
    6902             :   // 'ShrImm32' class
    6903             :   case MCK_ShrImm32: {
    6904             :     DiagnosticPredicate DP(Operand.isImmediate<1,32>());
    6905         782 :     if (DP.isMatch())
    6906             :       return MCTargetAsmParser::Match_Success;
    6907             :     if (DP.isNearMatch())
    6908             :       return ARMAsmParser::Match_ShrImm32;
    6909             :     break;
    6910             :     }
    6911             :   // 'ShrImm64' class
    6912             :   case MCK_ShrImm64: {
    6913             :     DiagnosticPredicate DP(Operand.isImmediate<1,64>());
    6914         669 :     if (DP.isMatch())
    6915             :       return MCTargetAsmParser::Match_Success;
    6916             :     if (DP.isNearMatch())
    6917             :       return ARMAsmParser::Match_ShrImm64;
    6918             :     break;
    6919             :     }
    6920             :   // 'ShrImm8' class
    6921             :   case MCK_ShrImm8: {
    6922             :     DiagnosticPredicate DP(Operand.isImmediate<1,8>());
    6923         658 :     if (DP.isMatch())
    6924             :       return MCTargetAsmParser::Match_Success;
    6925             :     if (DP.isNearMatch())
    6926             :       return ARMAsmParser::Match_ShrImm8;
    6927             :     break;
    6928             :     }
    6929             :   // 'T2SOImm' class
    6930        6472 :   case MCK_T2SOImm: {
    6931        6472 :     DiagnosticPredicate DP(Operand.isT2SOImm());
    6932        6472 :     if (DP.isMatch())
    6933             :       return MCTargetAsmParser::Match_Success;
    6934             :     break;
    6935             :     }
    6936             :   // 'T2SOImmNeg' class
    6937        4786 :   case MCK_T2SOImmNeg: {
    6938        4786 :     DiagnosticPredicate DP(Operand.isT2SOImmNeg());
    6939        4786 :     if (DP.isMatch())
    6940             :       return MCTargetAsmParser::Match_Success;
    6941             :     break;
    6942             :     }
    6943             :   // 'T2SOImmNot' class
    6944        2114 :   case MCK_T2SOImmNot: {
    6945        2114 :     DiagnosticPredicate DP(Operand.isT2SOImmNot());
    6946        2114 :     if (DP.isMatch())
    6947             :       return MCTargetAsmParser::Match_Success;
    6948             :     break;
    6949             :     }
    6950             :   // 'MemUImm12Offset' class
    6951        1273 :   case MCK_MemUImm12Offset: {
    6952        1273 :     DiagnosticPredicate DP(Operand.isMemUImm12Offset());
    6953        1273 :     if (DP.isMatch())
    6954             :       return MCTargetAsmParser::Match_Success;
    6955             :     break;
    6956             :     }
    6957             :   // 'T2MemRegOffset' class
    6958        1023 :   case MCK_T2MemRegOffset: {
    6959        1023 :     DiagnosticPredicate DP(Operand.isT2MemRegOffset());
    6960        1023 :     if (DP.isMatch())
    6961             :       return MCTargetAsmParser::Match_Success;
    6962             :     break;
    6963             :     }
    6964             :   // 'Imm8s4' class
    6965             :   case MCK_Imm8s4: {
    6966             :     DiagnosticPredicate DP(Operand.isImm8s4());
    6967           0 :     if (DP.isMatch())
    6968             :       return MCTargetAsmParser::Match_Success;
    6969             :     break;
    6970             :     }
    6971             :   // 'MemPCRelImm12' class
    6972         506 :   case MCK_MemPCRelImm12: {
    6973         506 :     DiagnosticPredicate DP(Operand.isMemPCRelImm12());
    6974         506 :     if (DP.isMatch())
    6975             :       return MCTargetAsmParser::Match_Success;
    6976             :     break;
    6977             :     }
    6978             :   // 'MemThumbRIs1' class
    6979         243 :   case MCK_MemThumbRIs1: {
    6980         243 :     DiagnosticPredicate DP(Operand.isMemThumbRIs1());
    6981         243 :     if (DP.isMatch())
    6982             :       return MCTargetAsmParser::Match_Success;
    6983             :     break;
    6984             :     }
    6985             :   // 'MemThumbRIs2' class
    6986         237 :   case MCK_MemThumbRIs2: {
    6987         237 :     DiagnosticPredicate DP(Operand.isMemThumbRIs2());
    6988         237 :     if (DP.isMatch())
    6989             :       return MCTargetAsmParser::Match_Success;
    6990             :     break;
    6991             :     }
    6992             :   // 'MemThumbRIs4' class
    6993         564 :   case MCK_MemThumbRIs4: {
    6994         564 :     DiagnosticPredicate DP(Operand.isMemThumbRIs4());
    6995         564 :     if (DP.isMatch())
    6996             :       return MCTargetAsmParser::Match_Success;
    6997             :     break;
    6998             :     }
    6999             :   // 'MemThumbRR' class
    7000        1185 :   case MCK_MemThumbRR: {
    7001        1185 :     DiagnosticPredicate DP(Operand.isMemThumbRR());
    7002        1185 :     if (DP.isMatch())
    7003             :       return MCTargetAsmParser::Match_Success;
    7004             :     break;
    7005             :     }
    7006             :   // 'MemThumbSPI' class
    7007         524 :   case MCK_MemThumbSPI: {
    7008         524 :     DiagnosticPredicate DP(Operand.isMemThumbSPI());
    7009         524 :     if (DP.isMatch())
    7010             :       return MCTargetAsmParser::Match_Success;
    7011             :     break;
    7012             :     }
    7013             :   // 'Imm0_1020s4' class
    7014             :   case MCK_Imm0_1020s4: {
    7015             :     DiagnosticPredicate DP(Operand.isImm0_1020s4());
    7016          51 :     if (DP.isMatch())
    7017             :       return MCTargetAsmParser::Match_Success;
    7018             :     break;
    7019             :     }
    7020             :   // 'Imm0_508s4' class
    7021             :   case MCK_Imm0_508s4: {
    7022             :     DiagnosticPredicate DP(Operand.isImm0_508s4());
    7023         248 :     if (DP.isMatch())
    7024             :       return MCTargetAsmParser::Match_Success;
    7025             :     break;
    7026             :     }
    7027             :   // 'Imm0_508s4Neg' class
    7028             :   case MCK_Imm0_508s4Neg: {
    7029             :     DiagnosticPredicate DP(Operand.isImm0_508s4Neg());
    7030         198 :     if (DP.isMatch())
    7031             :       return MCTargetAsmParser::Match_Success;
    7032             :     break;
    7033             :     }
    7034             :   } // end switch (Kind)
    7035             : 
    7036      467734 :   if (Operand.isReg()) {
    7037             :     MatchClassKind OpKind;
    7038             :     switch (Operand.getReg()) {
    7039             :     default: OpKind = InvalidMatchClass; break;
    7040             :     case ARM::R0: OpKind = MCK_Reg0; break;
    7041             :     case ARM::R1: OpKind = MCK_Reg0; break;
    7042             :     case ARM::R2: OpKind = MCK_Reg0; break;
    7043             :     case ARM::R3: OpKind = MCK_Reg0; break;
    7044             :     case ARM::R4: OpKind = MCK_tGPR; break;
    7045             :     case ARM::R5: OpKind = MCK_tGPR; break;
    7046             :     case ARM::R6: OpKind = MCK_tGPR; break;
    7047             :     case ARM::R7: OpKind = MCK_tGPR; break;
    7048             :     case ARM::R8: OpKind = MCK_Reg10; break;
    7049             :     case ARM::R9: OpKind = MCK_Reg10; break;
    7050             :     case ARM::R10: OpKind = MCK_Reg10; break;
    7051             :     case ARM::R11: OpKind = MCK_Reg10; break;
    7052             :     case ARM::R12: OpKind = MCK_Reg11; break;
    7053             :     case ARM::SP: OpKind = MCK_GPRsp; break;
    7054             :     case ARM::LR: OpKind = MCK_LR; break;
    7055             :     case ARM::PC: OpKind = MCK_PC; break;
    7056             :     case ARM::S0: OpKind = MCK_SPR_8; break;
    7057             :     case ARM::S1: OpKind = MCK_SPR_8; break;
    7058             :     case ARM::S2: OpKind = MCK_SPR_8; break;
    7059             :     case ARM::S3: OpKind = MCK_SPR_8; break;
    7060             :     case ARM::S4: OpKind = MCK_SPR_8; break;
    7061             :     case ARM::S5: OpKind = MCK_SPR_8; break;
    7062             :     case ARM::S6: OpKind = MCK_SPR_8; break;
    7063             :     case ARM::S7: OpKind = MCK_SPR_8; break;
    7064             :     case ARM::S8: OpKind = MCK_SPR_8; break;
    7065             :     case ARM::S9: OpKind = MCK_SPR_8; break;
    7066             :     case ARM::S10: OpKind = MCK_SPR_8; break;
    7067             :     case ARM::S11: OpKind = MCK_SPR_8; break;
    7068             :     case ARM::S12: OpKind = MCK_SPR_8; break;
    7069             :     case ARM::S13: OpKind = MCK_SPR_8; break;
    7070             :     case ARM::S14: OpKind = MCK_SPR_8; break;
    7071             :     case ARM::S15: OpKind = MCK_SPR_8; break;
    7072             :     case ARM::S16: OpKind = MCK_HPR; break;
    7073             :     case ARM::S17: OpKind = MCK_HPR; break;
    7074             :     case ARM::S18: OpKind = MCK_HPR; break;
    7075             :     case ARM::S19: OpKind = MCK_HPR; break;
    7076             :     case ARM::S20: OpKind = MCK_HPR; break;
    7077             :     case ARM::S21: OpKind = MCK_HPR; break;
    7078             :     case ARM::S22: OpKind = MCK_HPR; break;
    7079             :     case ARM::S23: OpKind = MCK_HPR; break;
    7080             :     case ARM::S24: OpKind = MCK_HPR; break;
    7081             :     case ARM::S25: OpKind = MCK_HPR; break;
    7082             :     case ARM::S26: OpKind = MCK_HPR; break;
    7083             :     case ARM::S27: OpKind = MCK_HPR; break;
    7084             :     case ARM::S28: OpKind = MCK_HPR; break;
    7085             :     case ARM::S29: OpKind = MCK_HPR; break;
    7086             :     case ARM::S30: OpKind = MCK_HPR; break;
    7087             :     case ARM::S31: OpKind = MCK_HPR; break;
    7088             :     case ARM::D0: OpKind = MCK_DPR_8; break;
    7089             :     case ARM::D1: OpKind = MCK_DPR_8; break;
    7090             :     case ARM::D2: OpKind = MCK_DPR_8; break;
    7091             :     case ARM::D3: OpKind = MCK_DPR_8; break;
    7092             :     case ARM::D4: OpKind = MCK_DPR_8; break;
    7093             :     case ARM::D5: OpKind = MCK_DPR_8; break;
    7094             :     case ARM::D6: OpKind = MCK_DPR_8; break;
    7095             :     case ARM::D7: OpKind = MCK_DPR_8; break;
    7096             :     case ARM::D8: OpKind = MCK_DPR_VFP2; break;
    7097             :     case ARM::D9: OpKind = MCK_DPR_VFP2; break;
    7098             :     case ARM::D10: OpKind = MCK_DPR_VFP2; break;
    7099             :     case ARM::D11: OpKind = MCK_DPR_VFP2; break;
    7100             :     case ARM::D12: OpKind = MCK_DPR_VFP2; break;
    7101             :     case ARM::D13: OpKind = MCK_DPR_VFP2; break;
    7102             :     case ARM::D14: OpKind = MCK_DPR_VFP2; break;
    7103             :     case ARM::D15: OpKind = MCK_DPR_VFP2; break;
    7104             :     case ARM::D16: OpKind = MCK_DPR; break;
    7105             :     case ARM::D17: OpKind = MCK_DPR; break;
    7106             :     case ARM::D18: OpKind = MCK_DPR; break;
    7107             :     case ARM::D19: OpKind = MCK_DPR; break;
    7108             :     case ARM::D20: OpKind = MCK_DPR; break;
    7109             :     case ARM::D21: OpKind = MCK_DPR; break;
    7110             :     case ARM::D22: OpKind = MCK_DPR; break;
    7111             :     case ARM::D23: OpKind = MCK_DPR; break;
    7112             :     case ARM::D24: OpKind = MCK_DPR; break;
    7113             :     case ARM::D25: OpKind = MCK_DPR; break;
    7114             :     case ARM::D26: OpKind = MCK_DPR; break;
    7115             :     case ARM::D27: OpKind = MCK_DPR; break;
    7116             :     case ARM::D28: OpKind = MCK_DPR; break;
    7117             :     case ARM::D29: OpKind = MCK_DPR; break;
    7118             :     case ARM::D30: OpKind = MCK_DPR; break;
    7119             :     case ARM::D31: OpKind = MCK_DPR; break;
    7120             :     case ARM::Q0: OpKind = MCK_QPR_8; break;
    7121             :     case ARM::Q1: OpKind = MCK_QPR_8; break;
    7122             :     case ARM::Q2: OpKind = MCK_QPR_8; break;
    7123             :     case ARM::Q3: OpKind = MCK_QPR_8; break;
    7124             :     case ARM::Q4: OpKind = MCK_QPR_VFP2; break;
    7125             :     case ARM::Q5: OpKind = MCK_QPR_VFP2; break;
    7126             :     case ARM::Q6: OpKind = MCK_QPR_VFP2; break;
    7127             :     case ARM::Q7: OpKind = MCK_QPR_VFP2; break;
    7128             :     case ARM::Q8: OpKind = MCK_QPR; break;
    7129             :     case ARM::Q9: OpKind = MCK_QPR; break;
    7130             :     case ARM::Q10: OpKind = MCK_QPR; break;
    7131             :     case ARM::Q11: OpKind = MCK_QPR; break;
    7132             :     case ARM::Q12: OpKind = MCK_QPR; break;
    7133             :     case ARM::Q13: OpKind = MCK_QPR; break;
    7134             :     case ARM::Q14: OpKind = MCK_QPR; break;
    7135             :     case ARM::Q15: OpKind = MCK_QPR; break;
    7136             :     case ARM::CPSR: OpKind = MCK_CCR; break;
    7137             :     case ARM::APSR: OpKind = MCK_APSR; break;
    7138             :     case ARM::APSR_NZCV: OpKind = MCK_APSR_NZCV; break;
    7139             :     case ARM::SPSR: OpKind = MCK_SPSR; break;
    7140             :     case ARM::FPSCR: OpKind = MCK_FPSCR; break;
    7141             :     case ARM::FPSID: OpKind = MCK_FPSID; break;
    7142             :     case ARM::MVFR2: OpKind = MCK_MVFR2; break;
    7143             :     case ARM::MVFR1: OpKind = MCK_MVFR1; break;
    7144             :     case ARM::MVFR0: OpKind = MCK_MVFR0; break;
    7145             :     case ARM::FPEXC: OpKind = MCK_FPEXC; break;
    7146             :     case ARM::FPINST: OpKind = MCK_FPINST; break;
    7147             :     case ARM::FPINST2: OpKind = MCK_FPINST2; break;
    7148             :     case ARM::D0_D2: OpKind = MCK_Reg40; break;
    7149             :     case ARM::D1_D3: OpKind = MCK_Reg40; break;
    7150             :     case ARM::D2_D4: OpKind = MCK_Reg40; break;
    7151             :     case ARM::D3_D5: OpKind = MCK_Reg40; break;
    7152             :     case ARM::D4_D6: OpKind = MCK_Reg40; break;
    7153             :     case ARM::D5_D7: OpKind = MCK_Reg40; break;
    7154             :     case ARM::D6_D8: OpKind = MCK_Reg41; break;
    7155             :     case ARM::D7_D9: OpKind = MCK_Reg41; break;
    7156             :     case ARM::D8_D10: OpKind = MCK_Reg42; break;
    7157             :     case ARM::D9_D11: OpKind = MCK_Reg42; break;
    7158             :     case ARM::D10_D12: OpKind = MCK_Reg42; break;
    7159             :     case ARM::D11_D13: OpKind = MCK_Reg42; break;
    7160             :     case ARM::D12_D14: OpKind = MCK_Reg42; break;
    7161             :     case ARM::D13_D15: OpKind = MCK_Reg42; break;
    7162             :     case ARM::D14_D16: OpKind = MCK_Reg43; break;
    7163             :     case ARM::D15_D17: OpKind = MCK_Reg43; break;
    7164             :     case ARM::D16_D18: OpKind = MCK_DPairSpc; break;
    7165             :     case ARM::D17_D19: OpKind = MCK_DPairSpc; break;
    7166             :     case ARM::D18_D20: OpKind = MCK_DPairSpc; break;
    7167             :     case ARM::D19_D21: OpKind = MCK_DPairSpc; break;
    7168             :     case ARM::D20_D22: OpKind = MCK_DPairSpc; break;
    7169             :     case ARM::D21_D23: OpKind = MCK_DPairSpc; break;
    7170             :     case ARM::D22_D24: OpKind = MCK_DPairSpc; break;
    7171             :     case ARM::D23_D25: OpKind = MCK_DPairSpc; break;
    7172             :     case ARM::D24_D26: OpKind = MCK_DPairSpc; break;
    7173             :     case ARM::D25_D27: OpKind = MCK_DPairSpc; break;
    7174             :     case ARM::D26_D28: OpKind = MCK_DPairSpc; break;
    7175             :     case ARM::D27_D29: OpKind = MCK_DPairSpc; break;
    7176             :     case ARM::D28_D30: OpKind = MCK_DPairSpc; break;
    7177             :     case ARM::D29_D31: OpKind = MCK_DPairSpc; break;
    7178             :     case ARM::Q0_Q1: OpKind = MCK_Reg45; break;
    7179             :     case ARM::Q1_Q2: OpKind = MCK_Reg45; break;
    7180             :     case ARM::Q2_Q3: OpKind = MCK_Reg45; break;
    7181             :     case ARM::Q3_Q4: OpKind = MCK_Reg46; break;
    7182             :     case ARM::Q4_Q5: OpKind = MCK_Reg47; break;
    7183             :     case ARM::Q5_Q6: OpKind = MCK_Reg47; break;
    7184             :     case ARM::Q6_Q7: OpKind = MCK_Reg47; break;
    7185             :     case ARM::Q7_Q8: OpKind = MCK_Reg48; break;
    7186             :     case ARM::Q8_Q9: OpKind = MCK_QQPR; break;
    7187             :     case ARM::Q9_Q10: OpKind = MCK_QQPR; break;
    7188             :     case ARM::Q10_Q11: OpKind = MCK_QQPR; break;
    7189             :     case ARM::Q11_Q12: OpKind = MCK_QQPR; break;
    7190             :     case ARM::Q12_Q13: OpKind = MCK_QQPR; break;
    7191             :     case ARM::Q13_Q14: OpKind = MCK_QQPR; break;
    7192             :     case ARM::Q14_Q15: OpKind = MCK_QQPR; break;
    7193             :     case ARM::Q0_Q1_Q2_Q3: OpKind = MCK_Reg59; break;
    7194             :     case ARM::Q1_Q2_Q3_Q4: OpKind = MCK_Reg60; break;
    7195             :     case ARM::Q2_Q3_Q4_Q5: OpKind = MCK_Reg61; break;
    7196             :     case ARM::Q3_Q4_Q5_Q6: OpKind = MCK_Reg62; break;
    7197             :     case ARM::Q4_Q5_Q6_Q7: OpKind = MCK_Reg63; break;
    7198             :     case ARM::Q5_Q6_Q7_Q8: OpKind = MCK_Reg64; break;
    7199             :     case ARM::Q6_Q7_Q8_Q9: OpKind = MCK_Reg65; break;
    7200             :     case ARM::Q7_Q8_Q9_Q10: OpKind = MCK_Reg66; break;
    7201             :     case ARM::Q8_Q9_Q10_Q11: OpKind = MCK_QQQQPR; break;
    7202             :     case ARM::Q9_Q10_Q11_Q12: OpKind = MCK_QQQQPR; break;
    7203             :     case ARM::Q10_Q11_Q12_Q13: OpKind = MCK_QQQQPR; break;
    7204             :     case ARM::Q11_Q12_Q13_Q14: OpKind = MCK_QQQQPR; break;
    7205             :     case ARM::Q12_Q13_Q14_Q15: OpKind = MCK_QQQQPR; break;
    7206             :     case ARM::R0_R1: OpKind = MCK_Reg68; break;
    7207             :     case ARM::R2_R3: OpKind = MCK_Reg68; break;
    7208             :     case ARM::R4_R5: OpKind = MCK_Reg69; break;
    7209             :     case ARM::R6_R7: OpKind = MCK_Reg69; break;
    7210             :     case ARM::R8_R9: OpKind = MCK_Reg73; break;
    7211             :     case ARM::R10_R11: OpKind = MCK_Reg73; break;
    7212             :     case ARM::R12_SP: OpKind = MCK_Reg75; break;
    7213             :     case ARM::D0_D1_D2: OpKind = MCK_Reg83; break;
    7214             :     case ARM::D1_D2_D3: OpKind = MCK_Reg88; break;
    7215             :     case ARM::D2_D3_D4: OpKind = MCK_Reg83; break;
    7216             :     case ARM::D3_D4_D5: OpKind = MCK_Reg88; break;
    7217             :     case ARM::D4_D5_D6: OpKind = MCK_Reg83; break;
    7218             :     case ARM::D5_D6_D7: OpKind = MCK_Reg88; break;
    7219             :     case ARM::D6_D7_D8: OpKind = MCK_Reg84; break;
    7220             :     case ARM::D7_D8_D9: OpKind = MCK_Reg89; break;
    7221             :     case ARM::D8_D9_D10: OpKind = MCK_Reg85; break;
    7222             :     case ARM::D9_D10_D11: OpKind = MCK_Reg90; break;
    7223             :     case ARM::D10_D11_D12: OpKind = MCK_Reg85; break;
    7224             :     case ARM::D11_D12_D13: OpKind = MCK_Reg90; break;
    7225             :     case ARM::D12_D13_D14: OpKind = MCK_Reg85; break;
    7226             :     case ARM::D13_D14_D15: OpKind = MCK_Reg90; break;
    7227             :     case ARM::D14_D15_D16: OpKind = MCK_Reg86; break;
    7228             :     case ARM::D15_D16_D17: OpKind = MCK_Reg91; break;
    7229             :     case ARM::D16_D17_D18: OpKind = MCK_Reg87; break;
    7230             :     case ARM::D17_D18_D19: OpKind = MCK_Reg92; break;
    7231             :     case ARM::D18_D19_D20: OpKind = MCK_Reg87; break;
    7232             :     case ARM::D19_D20_D21: OpKind = MCK_Reg92; break;
    7233             :     case ARM::D20_D21_D22: OpKind = MCK_Reg87; break;
    7234             :     case ARM::D21_D22_D23: OpKind = MCK_Reg92; break;
    7235             :     case ARM::D22_D23_D24: OpKind = MCK_Reg87; break;
    7236             :     case ARM::D23_D24_D25: OpKind = MCK_Reg92; break;
    7237             :     case ARM::D24_D25_D26: OpKind = MCK_Reg87; break;
    7238             :     case ARM::D25_D26_D27: OpKind = MCK_Reg92; break;
    7239             :     case ARM::D26_D27_D28: OpKind = MCK_Reg87; break;
    7240             :     case ARM::D27_D28_D29: OpKind = MCK_Reg92; break;
    7241             :     case ARM::D28_D29_D30: OpKind = MCK_Reg87; break;
    7242             :     case ARM::D29_D30_D31: OpKind = MCK_Reg92; break;
    7243             :     case ARM::D0_D2_D4: OpKind = MCK_Reg93; break;
    7244             :     case ARM::D1_D3_D5: OpKind = MCK_Reg93; break;
    7245             :     case ARM::D2_D4_D6: OpKind = MCK_Reg93; break;
    7246             :     case ARM::D3_D5_D7: OpKind = MCK_Reg93; break;
    7247             :     case ARM::D4_D6_D8: OpKind = MCK_Reg94; break;
    7248             :     case ARM::D5_D7_D9: OpKind = MCK_Reg94; break;
    7249             :     case ARM::D6_D8_D10: OpKind = MCK_Reg95; break;
    7250             :     case ARM::D7_D9_D11: OpKind = MCK_Reg95; break;
    7251             :     case ARM::D8_D10_D12: OpKind = MCK_Reg96; break;
    7252             :     case ARM::D9_D11_D13: OpKind = MCK_Reg96; break;
    7253             :     case ARM::D10_D12_D14: OpKind = MCK_Reg96; break;
    7254             :     case ARM::D11_D13_D15: OpKind = MCK_Reg96; break;
    7255             :     case ARM::D12_D14_D16: OpKind = MCK_Reg97; break;
    7256             :     case ARM::D13_D15_D17: OpKind = MCK_Reg97; break;
    7257             :     case ARM::D14_D16_D18: OpKind = MCK_Reg98; break;
    7258             :     case ARM::D15_D17_D19: OpKind = MCK_Reg98; break;
    7259             :     case ARM::D16_D18_D20: OpKind = MCK_DTripleSpc; break;
    7260             :     case ARM::D17_D19_D21: OpKind = MCK_DTripleSpc; break;
    7261             :     case ARM::D18_D20_D22: OpKind = MCK_DTripleSpc; break;
    7262             :     case ARM::D19_D21_D23: OpKind = MCK_DTripleSpc; break;
    7263             :     case ARM::D20_D22_D24: OpKind = MCK_DTripleSpc; break;
    7264             :     case ARM::D21_D23_D25: OpKind = MCK_DTripleSpc; break;
    7265             :     case ARM::D22_D24_D26: OpKind = MCK_DTripleSpc; break;
    7266             :     case ARM::D23_D25_D27: OpKind = MCK_DTripleSpc; break;
    7267             :     case ARM::D24_D26_D28: OpKind = MCK_DTripleSpc; break;
    7268             :     case ARM::D25_D27_D29: OpKind = MCK_DTripleSpc; break;
    7269             :     case ARM::D26_D28_D30: OpKind = MCK_DTripleSpc; break;
    7270             :     case ARM::D27_D29_D31: OpKind = MCK_DTripleSpc; break;
    7271             :     case ARM::D1_D2: OpKind = MCK_Reg26; break;
    7272             :     case ARM::D3_D4: OpKind = MCK_Reg26; break;
    7273             :     case ARM::D5_D6: OpKind = MCK_Reg26; break;
    7274             :     case ARM::D7_D8: OpKind = MCK_Reg27; break;
    7275             :     case ARM::D9_D10: OpKind = MCK_Reg24; break;
    7276             :     case ARM::D11_D12: OpKind = MCK_Reg24; break;
    7277             :     case ARM::D13_D14: OpKind = MCK_Reg24; break;
    7278             :     case ARM::D15_D16: OpKind = MCK_Reg25; break;
    7279             :     case ARM::D17_D18: OpKind = MCK_DPair; break;
    7280             :     case ARM::D19_D20: OpKind = MCK_DPair; break;
    7281             :     case ARM::D21_D22: OpKind = MCK_DPair; break;
    7282             :     case ARM::D23_D24: OpKind = MCK_DPair; break;
    7283             :     case ARM::D25_D26: OpKind = MCK_DPair; break;
    7284             :     case ARM::D27_D28: OpKind = MCK_DPair; break;
    7285             :     case ARM::D29_D30: OpKind = MCK_DPair; break;
    7286             :     case ARM::D1_D2_D3_D4: OpKind = MCK_Reg100; break;
    7287             :     case ARM::D3_D4_D5_D6: OpKind = MCK_Reg100; break;
    7288             :     case ARM::D5_D6_D7_D8: OpKind = MCK_Reg101; break;
    7289             :     case ARM::D7_D8_D9_D10: OpKind = MCK_Reg102; break;
    7290             :     case ARM::D9_D10_D11_D12: OpKind = MCK_Reg103; break;
    7291             :     case ARM::D11_D12_D13_D14: OpKind = MCK_Reg103; break;
    7292             :     case ARM::D13_D14_D15_D16: OpKind = MCK_Reg104; break;
    7293             :     case ARM::D15_D16_D17_D18: OpKind = MCK_Reg105; break;
    7294             :     case ARM::D17_D18_D19_D20: OpKind = MCK_Reg106; break;
    7295             :     case ARM::D19_D20_D21_D22: OpKind = MCK_Reg106; break;
    7296             :     case ARM::D21_D22_D23_D24: OpKind = MCK_Reg106; break;
    7297             :     case ARM::D23_D24_D25_D26: OpKind = MCK_Reg106; break;
    7298             :     case ARM::D25_D26_D27_D28: OpKind = MCK_Reg106; break;
    7299             :     case ARM::D27_D28_D29_D30: OpKind = MCK_Reg106; break;
    7300             :     }
    7301      259299 :     return isSubclass(OpKind, Kind) ? (unsigned)MCTargetAsmParser::Match_Success :
    7302             :                                       getDiagKindFromRegisterClass(Kind);
    7303             :   }
    7304             : 
    7305      208435 :   if (Kind > MCK_LAST_TOKEN && Kind <= MCK_LAST_REGISTER)
    7306             :     return getDiagKindFromRegisterClass(Kind);
    7307             : 
    7308             :   return MCTargetAsmParser::Match_InvalidOperand;
    7309             : }
    7310             : 
    7311             : #ifndef NDEBUG
    7312             : const char *getMatchClassName(MatchClassKind Kind) {
    7313             :   switch (Kind) {
    7314             :   case InvalidMatchClass: return "InvalidMatchClass";
    7315             :   case OptionalMatchClass: return "OptionalMatchClass";
    7316             :   case MCK__DOT_d: return "MCK__DOT_d";
    7317             :   case MCK__DOT_f: return "MCK__DOT_f";
    7318             :   case MCK__DOT_s16: return "MCK__DOT_s16";
    7319             :   case MCK__DOT_s32: return "MCK__DOT_s32";
    7320             :   case MCK__DOT_s64: return "MCK__DOT_s64";
    7321             :   case MCK__DOT_s8: return "MCK__DOT_s8";
    7322             :   case MCK__DOT_u16: return "MCK__DOT_u16";
    7323             :   case MCK__DOT_u32: return "MCK__DOT_u32";
    7324             :   case MCK__DOT_u64: return "MCK__DOT_u64";
    7325             :   case MCK__DOT_u8: return "MCK__DOT_u8";
    7326             :   case MCK__DOT_f32: return "MCK__DOT_f32";
    7327             :   case MCK__DOT_f64: return "MCK__DOT_f64";
    7328             :   case MCK__DOT_i16: return "MCK__DOT_i16";
    7329             :   case MCK__DOT_i32: return "MCK__DOT_i32";
    7330             :   case MCK__DOT_i64: return "MCK__DOT_i64";
    7331             :   case MCK__DOT_i8: return "MCK__DOT_i8";
    7332             :   case MCK__DOT_p16: return "MCK__DOT_p16";
    7333             :   case MCK__DOT_p8: return "MCK__DOT_p8";
    7334             :   case MCK__EXCLAIM_: return "MCK__EXCLAIM_";
    7335             :   case MCK__35_0: return "MCK__35_0";
    7336             :   case MCK__DOT_16: return "MCK__DOT_16";
    7337             :   case MCK__DOT_32: return "MCK__DOT_32";
    7338             :   case MCK__DOT_64: return "MCK__DOT_64";
    7339             :   case MCK__DOT_8: return "MCK__DOT_8";
    7340             :   case MCK__DOT_f16: return "MCK__DOT_f16";
    7341             :   case MCK__DOT_p64: return "MCK__DOT_p64";
    7342             :   case MCK__DOT_w: return "MCK__DOT_w";
    7343             :   case MCK__91_: return "MCK__91_";
    7344             :   case MCK__93_: return "MCK__93_";
    7345             :   case MCK__94_: return "MCK__94_";
    7346             :   case MCK__123_: return "MCK__123_";
    7347             :   case MCK__125_: return "MCK__125_";
    7348             :   case MCK_Reg11: return "MCK_Reg11";
    7349             :   case MCK_Reg59: return "MCK_Reg59";
    7350             :   case MCK_Reg75: return "MCK_Reg75";
    7351             :   case MCK_APSR: return "MCK_APSR";
    7352             :   case MCK_APSR_NZCV: return "MCK_APSR_NZCV";
    7353             :   case MCK_CCR: return "MCK_CCR";
    7354             :   case MCK_FPEXC: return "MCK_FPEXC";
    7355             :   case MCK_FPINST: return "MCK_FPINST";
    7356             :   case MCK_FPINST2: return "MCK_FPINST2";
    7357             :   case MCK_FPSCR: return "MCK_FPSCR";
    7358             :   case MCK_FPSID: return "MCK_FPSID";
    7359             :   case MCK_GPRsp: return "MCK_GPRsp";
    7360             :   case MCK_LR: return "MCK_LR";
    7361             :   case MCK_MVFR0: return "MCK_MVFR0";
    7362             :   case MCK_MVFR1: return "MCK_MVFR1";
    7363             :   case MCK_MVFR2: return "MCK_MVFR2";
    7364             :   case MCK_PC: return "MCK_PC";
    7365             :   case MCK_SPSR: return "MCK_SPSR";
    7366             :   case MCK_Reg60: return "MCK_Reg60";
    7367             :   case MCK_Reg68: return "MCK_Reg68";
    7368             :   case MCK_Reg73: return "MCK_Reg73";
    7369             :   case MCK_Reg100: return "MCK_Reg100";
    7370             :   case MCK_Reg45: return "MCK_Reg45";
    7371             :   case MCK_Reg61: return "MCK_Reg61";
    7372             :   case MCK_Reg72: return "MCK_Reg72";
    7373             :   case MCK_Reg74: return "MCK_Reg74";
    7374             :   case MCK_Reg83: return "MCK_Reg83";
    7375             :   case MCK_Reg88: return "MCK_Reg88";
    7376             :   case MCK_Reg101: return "MCK_Reg101";
    7377             :   case MCK_Reg0: return "MCK_Reg0";
    7378             :   case MCK_Reg46: return "MCK_Reg46";
    7379             :   case MCK_Reg62: return "MCK_Reg62";
    7380             :   case MCK_Reg69: return "MCK_Reg69";
    7381             :   case MCK_Reg84: return "MCK_Reg84";
    7382             :   case MCK_Reg89: return "MCK_Reg89";
    7383             :   case MCK_Reg93: return "MCK_Reg93";
    7384             :   case MCK_Reg102: return "MCK_Reg102";
    7385             :   case MCK_QPR_8: return "MCK_QPR_8";
    7386             :   case MCK_Reg57: return "MCK_Reg57";
    7387             :   case MCK_Reg63: return "MCK_Reg63";
    7388             :   case MCK_tcGPR: return "MCK_tcGPR";
    7389             :   case MCK_Reg10: return "MCK_Reg10";
    7390             :   case MCK_Reg40: return "MCK_Reg40";
    7391             :   case MCK_Reg58: return "MCK_Reg58";
    7392             :   case MCK_Reg64: return "MCK_Reg64";
    7393             :   case MCK_Reg70: return "MCK_Reg70";
    7394             :   case MCK_Reg76: return "MCK_Reg76";
    7395             :   case MCK_Reg94: return "MCK_Reg94";
    7396             :   case MCK_Reg103: return "MCK_Reg103";
    7397             :   case MCK_Reg8: return "MCK_Reg8";
    7398             :   case MCK_Reg26: return "MCK_Reg26";
    7399             :   case MCK_Reg47: return "MCK_Reg47";
    7400             :   case MCK_Reg55: return "MCK_Reg55";
    7401             :   case MCK_Reg65: return "MCK_Reg65";
    7402             :   case MCK_Reg77: return "MCK_Reg77";
    7403             :   case MCK_Reg85: return "MCK_Reg85";
    7404             :   case MCK_Reg90: return "MCK_Reg90";
    7405             :   case MCK_Reg104: return "MCK_Reg104";
    7406             :   case MCK_GPRPair: return "MCK_GPRPair";
    7407             :   case MCK_Reg27: return "MCK_Reg27";
    7408             :   case MCK_Reg41: return "MCK_Reg41";
    7409             :   case MCK_Reg48: return "MCK_Reg48";
    7410             :   case MCK_Reg56: return "MCK_Reg56";
    7411             :   case MCK_Reg66: return "MCK_Reg66";
    7412             :   case MCK_Reg78: return "MCK_Reg78";
    7413             :   case MCK_Reg86: return "MCK_Reg86";
    7414             :   case MCK_Reg91: return "MCK_Reg91";
    7415             :   case MCK_Reg95: return "MCK_Reg95";
    7416             :   case MCK_Reg105: return "MCK_Reg105";
    7417             :   case MCK_DPR_8: return "MCK_DPR_8";
    7418             :   case MCK_QPR_VFP2: return "MCK_QPR_VFP2";
    7419             :   case MCK_hGPR: return "MCK_hGPR";
    7420             :   case MCK_tGPR: return "MCK_tGPR";
    7421             :   case MCK_tGPRwithpc: return "MCK_tGPRwithpc";
    7422             :   case MCK_Reg96: return "MCK_Reg96";
    7423             :   case MCK_Reg53: return "MCK_Reg53";
    7424             :   case MCK_QQQQPR: return "MCK_QQQQPR";
    7425             :   case MCK_Reg42: return "MCK_Reg42";
    7426             :   case MCK_Reg54: return "MCK_Reg54";
    7427             :   case MCK_Reg79: return "MCK_Reg79";
    7428             :   case MCK_Reg97: return "MCK_Reg97";
    7429             :   case MCK_Reg106: return "MCK_Reg106";
    7430             :   case MCK_rGPR: return "MCK_rGPR";
    7431             :   case MCK_Reg24: return "MCK_Reg24";
    7432             :   case MCK_Reg51: return "MCK_Reg51";
    7433             :   case MCK_Reg80: return "MCK_Reg80";
    7434             :   case MCK_Reg87: return "MCK_Reg87";
    7435             :   case MCK_Reg92: return "MCK_Reg92";
    7436             :   case MCK_GPRnopc: return "MCK_GPRnopc";
    7437             :   case MCK_QQPR: return "MCK_QQPR";
    7438             :   case MCK_Reg25: return "MCK_Reg25";
    7439             :   case MCK_Reg43: return "MCK_Reg43";
    7440             :   case MCK_Reg52: return "MCK_Reg52";
    7441             :   case MCK_Reg81: return "MCK_Reg81";
    7442             :   case MCK_Reg98: return "MCK_Reg98";
    7443             :   case MCK_DPR_VFP2: return "MCK_DPR_VFP2";
    7444             :   case MCK_GPR: return "MCK_GPR";
    7445             :   case MCK_GPRwithAPSR: return "MCK_GPRwithAPSR";
    7446             :   case MCK_QPR: return "MCK_QPR";
    7447             :   case MCK_SPR_8: return "MCK_SPR_8";
    7448             :   case MCK_DTripleSpc: return "MCK_DTripleSpc";
    7449             :   case MCK_DQuad: return "MCK_DQuad";
    7450             :   case MCK_DPairSpc: return "MCK_DPairSpc";
    7451             :   case MCK_DTriple: return "MCK_DTriple";
    7452             :   case MCK_DPair: return "MCK_DPair";
    7453             :   case MCK_DPR: return "MCK_DPR";
    7454             :   case MCK_HPR: return "MCK_HPR";
    7455             :   case MCK_AM2OffsetImm: return "MCK_AM2OffsetImm";
    7456             :   case MCK_AM3Offset: return "MCK_AM3Offset";
    7457             :   case MCK_ARMBranchTarget: return "MCK_ARMBranchTarget";
    7458             :   case MCK_AddrMode3: return "MCK_AddrMode3";
    7459             :   case MCK_AddrMode5: return "MCK_AddrMode5";
    7460             :   case MCK_AddrMode5FP16: return "MCK_AddrMode5FP16";
    7461             :   case MCK_AlignedMemory16: return "MCK_AlignedMemory16";
    7462             :   case MCK_AlignedMemory32: return "MCK_AlignedMemory32";
    7463             :   case MCK_AlignedMemory64: return "MCK_AlignedMemory64";
    7464             :   case MCK_AlignedMemory64or128: return "MCK_AlignedMemory64or128";
    7465             :   case MCK_AlignedMemory64or128or256: return "MCK_AlignedMemory64or128or256";
    7466             :   case MCK_AlignedMemoryNone: return "MCK_AlignedMemoryNone";
    7467             :   case MCK_AlignedMemory: return "MCK_AlignedMemory";
    7468             :   case MCK_DupAlignedMemory16: return "MCK_DupAlignedMemory16";
    7469             :   case MCK_DupAlignedMemory32: return "MCK_DupAlignedMemory32";
    7470             :   case MCK_DupAlignedMemory64: return "MCK_DupAlignedMemory64";
    7471             :   case MCK_DupAlignedMemory64or128: return "MCK_DupAlignedMemory64or128";
    7472             :   case MCK_DupAlignedMemoryNone: return "MCK_DupAlignedMemoryNone";
    7473             :   case MCK_AdrLabel: return "MCK_AdrLabel";
    7474             :   case MCK_BankedReg: return "MCK_BankedReg";
    7475             :   case MCK_Bitfield: return "MCK_Bitfield";
    7476             :   case MCK_CCOut: return "MCK_CCOut";
    7477             :   case MCK_CondCode: return "MCK_CondCode";
    7478             :   case MCK_CoprocNum: return "MCK_CoprocNum";
    7479             :   case MCK_CoprocOption: return "MCK_CoprocOption";
    7480             :   case MCK_CoprocReg: return "MCK_CoprocReg";
    7481             :   case MCK_DPRRegList: return "MCK_DPRRegList";
    7482             :   case MCK_FPImm: return "MCK_FPImm";
    7483             :   case MCK_Imm0_15: return "MCK_Imm0_15";
    7484             :   case MCK_Imm0_1: return "MCK_Imm0_1";
    7485             :   case MCK_Imm0_239: return "MCK_Imm0_239";
    7486             :   case MCK_Imm0_255: return "MCK_Imm0_255";
    7487             :   case MCK_Imm0_31: return "MCK_Imm0_31";
    7488             :   case MCK_Imm0_32: return "MCK_Imm0_32";
    7489             :   case MCK_Imm0_3: return "MCK_Imm0_3";
    7490             :   case MCK_Imm0_63: return "MCK_Imm0_63";
    7491             :   case MCK_Imm0_65535: return "MCK_Imm0_65535";
    7492             :   case MCK_Imm0_65535Expr: return "MCK_Imm0_65535Expr";
    7493             :   case MCK_Imm0_7: return "MCK_Imm0_7";
    7494             :   case MCK_Imm16: return "MCK_Imm16";
    7495             :   case MCK_Imm1_15: return "MCK_Imm1_15";
    7496             :   case MCK_Imm1_16: return "MCK_Imm1_16";
    7497             :   case MCK_Imm1_31: return "MCK_Imm1_31";
    7498             :   case MCK_Imm1_32: return "MCK_Imm1_32";
    7499             :   case MCK_Imm1_7: return "MCK_Imm1_7";
    7500             :   case MCK_Imm24bit: return "MCK_Imm24bit";
    7501             :   case MCK_Imm256_65535Expr: return "MCK_Imm256_65535Expr";
    7502             :   case MCK_Imm32: return "MCK_Imm32";
    7503             :   case MCK_Imm8: return "MCK_Imm8";
    7504             :   case MCK_Imm8_255: return "MCK_Imm8_255";
    7505             :   case MCK_Imm: return "MCK_Imm";
    7506             :   case MCK_InstSyncBarrierOpt: return "MCK_InstSyncBarrierOpt";
    7507             :   case MCK_MSRMask: return "MCK_MSRMask";
    7508             :   case MCK_MemBarrierOpt: return "MCK_MemBarrierOpt";
    7509             :   case MCK_MemImm0_1020s4Offset: return "MCK_MemImm0_1020s4Offset";
    7510             :   case MCK_MemImm12Offset: return "MCK_MemImm12Offset";
    7511             :   case MCK_MemImm8Offset: return "MCK_MemImm8Offset";
    7512             :   case MCK_MemImm8s4Offset: return "MCK_MemImm8s4Offset";
    7513             :   case MCK_MemNegImm8Offset: return "MCK_MemNegImm8Offset";
    7514             :   case MCK_MemNoOffset: return "MCK_MemNoOffset";
    7515             :   case MCK_MemPosImm8Offset: return "MCK_MemPosImm8Offset";
    7516             :   case MCK_MemRegOffset: return "MCK_MemRegOffset";
    7517             :   case MCK_ModImm: return "MCK_ModImm";
    7518             :   case MCK_ModImmNeg: return "MCK_ModImmNeg";
    7519             :   case MCK_ModImmNot: return "MCK_ModImmNot";
    7520             :   case MCK_PKHASRImm: return "MCK_PKHASRImm";
    7521             :   case MCK_PKHLSLImm: return "MCK_PKHLSLImm";
    7522             :   case MCK_PostIdxImm8: return "MCK_PostIdxImm8";
    7523             :   case MCK_PostIdxImm8s4: return "MCK_PostIdxImm8s4";
    7524             :   case MCK_PostIdxReg: return "MCK_PostIdxReg";
    7525             :   case MCK_PostIdxRegShifted: return "MCK_PostIdxRegShifted";
    7526             :   case MCK_ProcIFlags: return "MCK_ProcIFlags";
    7527             :   case MCK_RegList: return "MCK_RegList";
    7528             :   case MCK_RotImm: return "MCK_RotImm";
    7529             :   case MCK_SPRRegList: return "MCK_SPRRegList";
    7530             :   case MCK_SetEndImm: return "MCK_SetEndImm";
    7531             :   case MCK_RegShiftedImm: return "MCK_RegShiftedImm";
    7532             :   case MCK_RegShiftedReg: return "MCK_RegShiftedReg";
    7533             :   case MCK_ShifterImm: return "MCK_ShifterImm";
    7534             :   case MCK_ThumbBranchTarget: return "MCK_ThumbBranchTarget";
    7535             :   case MCK_ThumbMemPC: return "MCK_ThumbMemPC";
    7536             :   case MCK_ThumbModImmNeg1_7: return "MCK_ThumbModImmNeg1_7";
    7537             :   case MCK_ThumbModImmNeg8_255: return "MCK_ThumbModImmNeg8_255";
    7538             :   case MCK_ImmThumbSR: return "MCK_ImmThumbSR";
    7539             :   case MCK_TraceSyncBarrierOpt: return "MCK_TraceSyncBarrierOpt";
    7540             :   case MCK_UnsignedOffset_b8s2: return "MCK_UnsignedOffset_b8s2";
    7541             :   case MCK_VecListDPairAllLanes: return "MCK_VecListDPairAllLanes";
    7542             :   case MCK_VecListDPair: return "MCK_VecListDPair";
    7543             :   case MCK_VecListDPairSpacedAllLanes: return "MCK_VecListDPairSpacedAllLanes";
    7544             :   case MCK_VecListDPairSpaced: return "MCK_VecListDPairSpaced";
    7545             :   case MCK_VecListFourDAllLanes: return "MCK_VecListFourDAllLanes";
    7546             :   case MCK_VecListFourD: return "MCK_VecListFourD";
    7547             :   case MCK_VecListFourDByteIndexed: return "MCK_VecListFourDByteIndexed";
    7548             :   case MCK_VecListFourDHWordIndexed: return "MCK_VecListFourDHWordIndexed";
    7549             :   case MCK_VecListFourDWordIndexed: return "MCK_VecListFourDWordIndexed";
    7550             :   case MCK_VecListFourQAllLanes: return "MCK_VecListFourQAllLanes";
    7551             :   case MCK_VecListFourQ: return "MCK_VecListFourQ";
    7552             :   case MCK_VecListFourQHWordIndexed: return "MCK_VecListFourQHWordIndexed";
    7553             :   case MCK_VecListFourQWordIndexed: return "MCK_VecListFourQWordIndexed";
    7554             :   case MCK_VecListOneDAllLanes: return "MCK_VecListOneDAllLanes";
    7555             :   case MCK_VecListOneD: return "MCK_VecListOneD";
    7556             :   case MCK_VecListOneDByteIndexed: return "MCK_VecListOneDByteIndexed";
    7557             :   case MCK_VecListOneDHWordIndexed: return "MCK_VecListOneDHWordIndexed";
    7558             :   case MCK_VecListOneDWordIndexed: return "MCK_VecListOneDWordIndexed";
    7559             :   case MCK_VecListThreeDAllLanes: return "MCK_VecListThreeDAllLanes";
    7560             :   case MCK_VecListThreeD: return "MCK_VecListThreeD";
    7561             :   case MCK_VecListThreeDByteIndexed: return "MCK_VecListThreeDByteIndexed";
    7562             :   case MCK_VecListThreeDHWordIndexed: return "MCK_VecListThreeDHWordIndexed";
    7563             :   case MCK_VecListThreeDWordIndexed: return "MCK_VecListThreeDWordIndexed";
    7564             :   case MCK_VecListThreeQAllLanes: return "MCK_VecListThreeQAllLanes";
    7565             :   case MCK_VecListThreeQ: return "MCK_VecListThreeQ";
    7566             :   case MCK_VecListThreeQHWordIndexed: return "MCK_VecListThreeQHWordIndexed";
    7567             :   case MCK_VecListThreeQWordIndexed: return "MCK_VecListThreeQWordIndexed";
    7568             :   case MCK_VecListTwoDByteIndexed: return "MCK_VecListTwoDByteIndexed";
    7569             :   case MCK_VecListTwoDHWordIndexed: return "MCK_VecListTwoDHWordIndexed";
    7570             :   case MCK_VecListTwoDWordIndexed: return "MCK_VecListTwoDWordIndexed";
    7571             :   case MCK_VecListTwoQHWordIndexed: return "MCK_VecListTwoQHWordIndexed";
    7572             :   case MCK_VecListTwoQWordIndexed: return "MCK_VecListTwoQWordIndexed";
    7573             :   case MCK_VectorIndex16: return "MCK_VectorIndex16";
    7574             :   case MCK_VectorIndex32: return "MCK_VectorIndex32";
    7575             :   case MCK_VectorIndex64: return "MCK_VectorIndex64";
    7576             :   case MCK_VectorIndex8: return "MCK_VectorIndex8";
    7577             :   case MCK_MemTBB: return "MCK_MemTBB";
    7578             :   case MCK_MemTBH: return "MCK_MemTBH";
    7579             :   case MCK_ComplexRotationEven: return "MCK_ComplexRotationEven";
    7580             :   case MCK_ComplexRotationOdd: return "MCK_ComplexRotationOdd";
    7581             :   case MCK_NEONi16vmovi8Replicate: return "MCK_NEONi16vmovi8Replicate";
    7582             :   case MCK_NEONi16invi8Replicate: return "MCK_NEONi16invi8Replicate";
    7583             :   case MCK_NEONi32vmovi8Replicate: return "MCK_NEONi32vmovi8Replicate";
    7584             :   case MCK_NEONi32invi8Replicate: return "MCK_NEONi32invi8Replicate";
    7585             :   case MCK_NEONi64vmovi8Replicate: return "MCK_NEONi64vmovi8Replicate";
    7586             :   case MCK_NEONi64invi8Replicate: return "MCK_NEONi64invi8Replicate";
    7587             :   case MCK_NEONi32vmovi16Replicate: return "MCK_NEONi32vmovi16Replicate";
    7588             :   case MCK_NEONi64vmovi16Replicate: return "MCK_NEONi64vmovi16Replicate";
    7589             :   case MCK_NEONi64vmovi32Replicate: return "MCK_NEONi64vmovi32Replicate";
    7590             :   case MCK_ConstPoolAsmImm: return "MCK_ConstPoolAsmImm";
    7591             :   case MCK_FBits16: return "MCK_FBits16";
    7592             :   case MCK_FBits32: return "MCK_FBits32";
    7593             :   case MCK_Imm0_4095: return "MCK_Imm0_4095";
    7594             :   case MCK_Imm0_4095Neg: return "MCK_Imm0_4095Neg";
    7595             :   case MCK_ITMask: return "MCK_ITMask";
    7596             :   case MCK_ITCondCode: return "MCK_ITCondCode";
    7597             :   case MCK_NEONi16splat: return "MCK_NEONi16splat";
    7598             :   case MCK_NEONi32splat: return "MCK_NEONi32splat";
    7599             :   case MCK_NEONi64splat: return "MCK_NEONi64splat";
    7600             :   case MCK_NEONi8splat: return "MCK_NEONi8splat";
    7601             :   case MCK_NEONi16splatNot: return "MCK_NEONi16splatNot";
    7602             :   case MCK_NEONi32splatNot: return "MCK_NEONi32splatNot";
    7603             :   case MCK_NEONi32vmov: return "MCK_NEONi32vmov";
    7604             :   case MCK_NEONi32vmovNeg: return "MCK_NEONi32vmovNeg";
    7605             :   case MCK_ShrImm16: return "MCK_ShrImm16";
    7606             :   case MCK_ShrImm32: return "MCK_ShrImm32";
    7607             :   case MCK_ShrImm64: return "MCK_ShrImm64";
    7608             :   case MCK_ShrImm8: return "MCK_ShrImm8";
    7609             :   case MCK_T2SOImm: return "MCK_T2SOImm";
    7610             :   case MCK_T2SOImmNeg: return "MCK_T2SOImmNeg";
    7611             :   case MCK_T2SOImmNot: return "MCK_T2SOImmNot";
    7612             :   case MCK_MemUImm12Offset: return "MCK_MemUImm12Offset";
    7613             :   case MCK_T2MemRegOffset: return "MCK_T2MemRegOffset";
    7614             :   case MCK_Imm8s4: return "MCK_Imm8s4";
    7615             :   case MCK_MemPCRelImm12: return "MCK_MemPCRelImm12";
    7616             :   case MCK_MemThumbRIs1: return "MCK_MemThumbRIs1";
    7617             :   case MCK_MemThumbRIs2: return "MCK_MemThumbRIs2";
    7618             :   case MCK_MemThumbRIs4: return "MCK_MemThumbRIs4";
    7619             :   case MCK_MemThumbRR: return "MCK_MemThumbRR";
    7620             :   case MCK_MemThumbSPI: return "MCK_MemThumbSPI";
    7621             :   case MCK_Imm0_1020s4: return "MCK_Imm0_1020s4";
    7622             :   case MCK_Imm0_508s4: return "MCK_Imm0_508s4";
    7623             :   case MCK_Imm0_508s4Neg: return "MCK_Imm0_508s4Neg";
    7624             :   case NumMatchClassKinds: return "NumMatchClassKinds";
    7625             :   }
    7626             :   llvm_unreachable("unhandled MatchClassKind!");
    7627             : }
    7628             : 
    7629             : #endif // NDEBUG
    7630        1669 : uint64_t ARMAsmParser::
    7631             : ComputeAvailableFeatures(const FeatureBitset& FB) const {
    7632             :   uint64_t Features = 0;
    7633        1669 :   if ((FB[ARM::HasV4TOps]))
    7634             :     Features |= Feature_HasV4T;
    7635        1669 :   if ((FB[ARM::HasV5TOps]))
    7636        1408 :     Features |= Feature_HasV5T;
    7637        1669 :   if ((FB[ARM::HasV5TEOps]))
    7638        1358 :     Features |= Feature_HasV5TE;
    7639        1669 :   if ((FB[ARM::HasV6Ops]))
    7640        1348 :     Features |= Feature_HasV6;
    7641        1669 :   if ((FB[ARM::HasV6MOps]))
    7642        1302 :     Features |= Feature_HasV6M;
    7643        1669 :   if ((FB[ARM::HasV8MBaselineOps]))
    7644        1270 :     Features |= Feature_HasV8MBaseline;
    7645        1669 :   if ((FB[ARM::HasV8MMainlineOps]))
    7646           5 :     Features |= Feature_HasV8MMainline;
    7647        1669 :   if ((FB[ARM::HasV6T2Ops]))
    7648        1262 :     Features |= Feature_HasV6T2;
    7649        1669 :   if ((FB[ARM::HasV6KOps]))
    7650        1276 :     Features |= Feature_HasV6K;
    7651        1669 :   if ((FB[ARM::HasV7Ops]))
    7652        1247 :     Features |= Feature_HasV7;
    7653        1669 :   if ((FB[ARM::HasV8Ops]))
    7654         148 :     Features |= Feature_HasV8;
    7655        1669 :   if ((!FB[ARM::HasV8Ops]))
    7656        1521 :     Features |= Feature_PreV8;
    7657        1669 :   if ((FB[ARM::HasV8_1aOps]))
    7658          28 :     Features |= Feature_HasV8_1a;
    7659        1669 :   if ((FB[ARM::HasV8_2aOps]))
    7660          24 :     Features |= Feature_HasV8_2a;
    7661        1669 :   if ((FB[ARM::HasV8_3aOps]))
    7662          13 :     Features |= Feature_HasV8_3a;
    7663        1669 :   if ((FB[ARM::HasV8_4aOps]))
    7664           4 :     Features |= Feature_HasV8_4a;
    7665        1669 :   if ((FB[ARM::FeatureVFP2]))
    7666        1215 :     Features |= Feature_HasVFP2;
    7667        1669 :   if ((FB[ARM::FeatureVFP3]))
    7668        1198 :     Features |= Feature_HasVFP3;
    7669        1669 :   if ((FB[ARM::FeatureVFP4]))
    7670         180 :     Features |= Feature_HasVFP4;
    7671        1669 :   if ((!FB[ARM::FeatureVFPOnlySP]))
    7672        1663 :     Features |= Feature_HasDPVFP;
    7673        1669 :   if ((FB[ARM::FeatureFPARMv8]))
    7674         137 :     Features |= Feature_HasFPARMv8;
    7675        1669 :   if ((FB[ARM::FeatureNEON]))
    7676        1134 :     Features |= Feature_HasNEON;
    7677        1669 :   if ((FB[ARM::FeatureSHA2]))
    7678         105 :     Features |= Feature_HasSHA2;
    7679        1669 :   if ((FB[ARM::FeatureAES]))
    7680         105 :     Features |= Feature_HasAES;
    7681        1669 :   if ((FB[ARM::FeatureCrypto]))
    7682         103 :     Features |= Feature_HasCrypto;
    7683        1669 :   if ((FB[ARM::FeatureDotProd]))
    7684          12 :     Features |= Feature_HasDotProd;
    7685        1669 :   if ((FB[ARM::FeatureCRC]))
    7686         121 :     Features |= Feature_HasCRC;
    7687        1669 :   if ((FB[ARM::FeatureRAS]))
    7688           8 :     Features |= Feature_HasRAS;
    7689        1669 :   if ((FB[ARM::FeatureFP16]))
    7690         195 :     Features |= Feature_HasFP16;
    7691        1669 :   if ((FB[ARM::FeatureFullFP16]))
    7692          12 :     Features |= Feature_HasFullFP16;
    7693        1669 :   if ((FB[ARM::FeatureHWDivThumb]))
    7694         241 :     Features |= Feature_HasDivideInThumb;
    7695        1669 :   if ((FB[ARM::FeatureHWDivARM]))
    7696         157 :     Features |= Feature_HasDivideInARM;
    7697        1669 :   if ((FB[ARM::FeatureDSP]))
    7698        1206 :     Features |= Feature_HasDSP;
    7699        1669 :   if ((FB[ARM::FeatureDB]))
    7700        1259 :     Features |= Feature_HasDB;
    7701        1669 :   if ((FB[ARM::FeatureDFB]))
    7702           2 :     Features |= Feature_HasDFB;
    7703        1669 :   if ((FB[ARM::FeatureV7Clrex]))
    7704        1255 :     Features |= Feature_HasV7Clrex;
    7705        1669 :   if ((FB[ARM::FeatureAcquireRelease]))
    7706         161 :     Features |= Feature_HasAcquireRelease;
    7707        1669 :   if ((FB[ARM::FeatureMP]))
    7708         161 :     Features |= Feature_HasMP;
    7709        1669 :   if ((FB[ARM::FeatureVirtualization]))
    7710         142 :     Features |= Feature_HasVirtualization;
    7711        1669 :   if ((FB[ARM::FeatureTrustZone]))
    7712         261 :     Features |= Feature_HasTrustZone;
    7713        1669 :   if ((FB[ARM::Feature8MSecExt]))
    7714          13 :     Features |= Feature_Has8MSecExt;
    7715        1669 :   if ((FB[ARM::ModeThumb]))
    7716         705 :     Features |= Feature_IsThumb;
    7717        2374 :   if ((FB[ARM::ModeThumb]) && (FB[ARM::FeatureThumb2]))
    7718         538 :     Features |= Feature_IsThumb2;
    7719        1669 :   if ((FB[ARM::FeatureMClass]))
    7720         107 :     Features |= Feature_IsMClass;
    7721        1669 :   if ((!FB[ARM::FeatureMClass]))
    7722        1562 :     Features |= Feature_IsNotMClass;
    7723        1669 :   if ((!FB[ARM::ModeThumb]))
    7724         964 :     Features |= Feature_IsARM;
    7725        1669 :   if ((FB[ARM::FeatureNaClTrap]))
    7726           2 :     Features |= Feature_UseNaClTrap;
    7727        1669 :   if ((!FB[ARM::FeatureNoNegativeImmediates]))
    7728        1666 :     Features |= Feature_UseNegativeImmediates;
    7729        1669 :   return Features;
    7730             : }
    7731             : 
    7732             : static const char *const MnemonicTable =
    7733             :     "\t__brkdiv0\003adc\003add\004addw\003adr\004aesd\004aese\006aesimc\005a"
    7734             :     "esmc\003and\003asr\001b\003bfc\003bfi\003bic\004bkpt\002bl\003blx\005bl"
    7735             :     "xns\002bx\003bxj\004bxns\004cbnz\003cbz\003cdp\004cdp2\005clrex\003clz\003"
    7736             :     "cmn\003cmp\003cps\006crc32b\007crc32cb\007crc32ch\007crc32cw\006crc32h\006"
    7737             :     "crc32w\004csdb\003dbg\005dcps1\005dcps2\005dcps3\003dfb\003dmb\003dsb\003"
    7738             :     "eor\004eret\003esb\005faddd\005fadds\006fcmpzd\006fcmpzs\007fconstd\007"
    7739             :     "fconsts\007fldmdbx\007fldmiax\005fmdhr\005fmdlr\006fmstat\007fstmdbx\007"
    7740             :     "fstmiax\005fsubd\005fsubs\004hint\003hlt\003hvc\003isb\002it\003lda\004"
    7741             :     "ldab\005ldaex\006ldaexb\006ldaexd\006ldaexh\004ldah\003ldc\004ldc2\005l"
    7742             :     "dc2l\004ldcl\003ldm\005ldmda\005ldmdb\005ldmib\003ldr\004ldrb\005ldrbt\004"
    7743             :     "ldrd\005ldrex\006ldrexb\006ldrexd\006ldrexh\004ldrh\005ldrht\005ldrsb\006"
    7744             :     "ldrsbt\005ldrsh\006ldrsht\004ldrt\003lsl\003lsr\003mcr\004mcr2\004mcrr\005"
    7745             :     "mcrr2\003mla\003mls\003mov\004movs\004movt\004movw\003mrc\004mrc2\004mr"
    7746             :     "rc\005mrrc2\003mrs\003msr\003mul\003mvn\003neg\003nop\003orn\003orr\005"
    7747             :     "pkhbt\005pkhtb\003pld\004pldw\003pli\003pop\004push\004qadd\006qadd16\005"
    7748             :     "qadd8\004qasx\005qdadd\005qdsub\004qsax\004qsub\006qsub16\005qsub8\004r"
    7749             :     "bit\003rev\005rev16\005revsh\005rfeda\005rfedb\005rfeia\005rfeib\003ror"
    7750             :     "\003rrx\003rsb\003rsc\006sadd16\005sadd8\004sasx\003sbc\004sbfx\004sdiv"
    7751             :     "\003sel\006setend\006setpan\003sev\004sevl\002sg\005sha1c\005sha1h\005s"
    7752             :     "ha1m\005sha1p\007sha1su0\007sha1su1\007sha256h\010sha256h2\tsha256su0\t"
    7753             :     "sha256su1\007shadd16\006shadd8\005shasx\005shsax\007shsub16\006shsub8\003"
    7754             :     "smc\006smlabb\006smlabt\005smlad\006smladx\005smlal\007smlalbb\007smlal"
    7755             :     "bt\006smlald\007smlaldx\007smlaltb\007smlaltt\006smlatb\006smlatt\006sm"
    7756             :     "lawb\006smlawt\005smlsd\006smlsdx\006smlsld\007smlsldx\005smmla\006smml"
    7757             :     "ar\005smmls\006smmlsr\005smmul\006smmulr\005smuad\006smuadx\006smulbb\006"
    7758             :     "smulbt\005smull\006smultb\006smultt\006smulwb\006smulwt\005smusd\006smu"
    7759             :     "sdx\005srsda\005srsdb\005srsia\005srsib\004ssat\006ssat16\004ssax\006ss"
    7760             :     "ub16\005ssub8\003stc\004stc2\005stc2l\004stcl\003stl\004stlb\005stlex\006"
    7761             :     "stlexb\006stlexd\006stlexh\004stlh\003stm\005stmda\005stmdb\005stmib\003"
    7762             :     "str\004strb\005strbt\004strd\005strex\006strexb\006strexd\006strexh\004"
    7763             :     "strh\005strht\004strt\003sub\004subs\004subw\003svc\003swp\004swpb\005s"
    7764             :     "xtab\007sxtab16\005sxtah\004sxtb\006sxtb16\004sxth\003tbb\003tbh\003teq"
    7765             :     "\004trap\003tsb\003tst\002tt\003tta\004ttat\003ttt\006uadd16\005uadd8\004"
    7766             :     "uasx\004ubfx\003udf\004udiv\007uhadd16\006uhadd8\005uhasx\005uhsax\007u"
    7767             :     "hsub16\006uhsub8\005umaal\005umlal\005umull\007uqadd16\006uqadd8\005uqa"
    7768             :     "sx\005uqsax\007uqsub16\006uqsub8\005usad8\006usada8\004usat\006usat16\004"
    7769             :     "usax\006usub16\005usub8\005uxtab\007uxtab16\005uxtah\004uxtb\006uxtb16\004"
    7770             :     "uxth\004vaba\005vabal\004vabd\005vabdl\004vabs\005vacge\005vacgt\005vac"
    7771             :     "le\005vaclt\004vadd\006vaddhn\005vaddl\005vaddw\004vand\004vbic\004vbif"
    7772             :     "\004vbit\004vbsl\005vcadd\004vceq\004vcge\004vcgt\004vcle\004vcls\004vc"
    7773             :     "lt\004vclz\005vcmla\004vcmp\005vcmpe\004vcnt\004vcvt\005vcvta\005vcvtb\005"
    7774             :     "vcvtm\005vcvtn\005vcvtp\005vcvtr\005vcvtt\004vdiv\004vdup\004veor\004ve"
    7775             :     "xt\004vfma\004vfms\005vfnma\005vfnms\005vhadd\005vhsub\004vins\005vjcvt"
    7776             :     "\004vld1\004vld2\004vld3\004vld4\006vldmdb\006vldmia\004vldr\005vlldm\005"
    7777             :     "vlstm\004vmax\006vmaxnm\004vmin\006vminnm\004vmla\005vmlal\004vmls\005v"
    7778             :     "mlsl\004vmov\005vmovl\005vmovn\005vmovx\004vmrs\004vmsr\004vmul\005vmul"
    7779             :     "l\004vmvn\004vneg\005vnmla\005vnmls\005vnmul\004vorn\004vorr\006vpadal\005"
    7780             :     "vpadd\006vpaddl\005vpmax\005vpmin\004vpop\005vpush\005vqabs\005vqadd\007"
    7781             :     "vqdmlal\007vqdmlsl\007vqdmulh\007vqdmull\006vqmovn\007vqmovun\005vqneg\010"
    7782             :     "vqrdmlah\010vqrdmlsh\010vqrdmulh\006vqrshl\007vqrshrn\010vqrshrun\005vq"
    7783             :     "shl\006vqshlu\006vqshrn\007vqshrun\005vqsub\007vraddhn\006vrecpe\006vre"
    7784             :     "cps\006vrev16\006vrev32\006vrev64\006vrhadd\006vrinta\006vrintm\006vrin"
    7785             :     "tn\006vrintp\006vrintr\006vrintx\006vrintz\005vrshl\005vrshr\006vrshrn\007"
    7786             :     "vrsqrte\007vrsqrts\005vrsra\007vrsubhn\005vsdot\006vseleq\006vselge\006"
    7787             :     "vselgt\006vselvs\004vshl\005vshll\004vshr\005vshrn\004vsli\005vsqrt\004"
    7788             :     "vsra\004vsri\004vst1\004vst2\004vst3\004vst4\006vstmdb\006vstmia\004vst"
    7789             :     "r\004vsub\006vsubhn\005vsubl\005vsubw\004vswp\004vtbl\004vtbx\004vtrn\004"
    7790             :     "vtst\005vudot\004vuzp\004vzip\003wfe\003wfi\005yield";
    7791             : 
    7792             : namespace {
    7793             :   struct MatchEntry {
    7794             :     uint16_t Mnemonic;
    7795             :     uint16_t Opcode;
    7796             :     uint16_t ConvertFn;
    7797             :     uint64_t RequiredFeatures;
    7798             :     uint16_t Classes[18];
    7799             :     StringRef getMnemonic() const {
    7800      549912 :       return StringRef(MnemonicTable + Mnemonic + 1,
    7801      549912 :                        MnemonicTable[Mnemonic]);
    7802             :     }
    7803             :   };
    7804             : 
    7805             :   // Predicate for searching for an opcode.
    7806             :   struct LessOpcode {
    7807             :     bool operator()(const MatchEntry &LHS, StringRef RHS) {
    7808      602716 :       return LHS.getMnemonic() < RHS;
    7809             :     }
    7810             :     bool operator()(StringRef LHS, const MatchEntry &RHS) {
    7811      466550 :       return LHS < RHS.getMnemonic();
    7812             :     }
    7813             :     bool operator()(const MatchEntry &LHS, const MatchEntry &RHS) {
    7814             :       return LHS.getMnemonic() < RHS.getMnemonic();
    7815             :     }
    7816             :   };
    7817             : } // end anonymous namespace.
    7818             : 
    7819             : static const MatchEntry MatchTable0[] = {
    7820             :   { 0 /* __brkdiv0 */, ARM::t__brkdiv0, Convert_NoOperands, Feature_IsThumb, {  }, },
    7821             :   { 10 /* adc */, ARM::tADC, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    7822             :   { 10 /* adc */, ARM::ADCrsr, Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_RegShiftedReg }, },
    7823             :   { 10 /* adc */, ARM::ADCrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    7824             :   { 10 /* adc */, ARM::ADCri, Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    7825             :   { 10 /* adc */, ARM::SBCri, Convert__Reg1_2__Reg1_2__ModImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImmNot }, },
    7826             :   { 10 /* adc */, ARM::ADCrsi, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    7827             :   { 10 /* adc */, ARM::t2ADCrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    7828             :   { 10 /* adc */, ARM::t2ADCrs, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    7829             :   { 10 /* adc */, ARM::t2ADCri, Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    7830             :   { 10 /* adc */, ARM::t2SBCri, Convert__Reg1_2__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImmNot }, },
    7831             :   { 10 /* adc */, ARM::ADCrsr, Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_RegShiftedReg }, },
    7832             :   { 10 /* adc */, ARM::ADCrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    7833             :   { 10 /* adc */, ARM::ADCri, Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImm }, },
    7834             :   { 10 /* adc */, ARM::SBCri, Convert__Reg1_2__Reg1_3__ModImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImmNot }, },
    7835             :   { 10 /* adc */, ARM::ADCrsi, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedImm }, },
    7836             :   { 10 /* adc */, ARM::t2ADCrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    7837             :   { 10 /* adc */, ARM::t2ADCrs, Convert__Reg1_3__Reg1_4__RegShiftedImm2_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    7838             :   { 14 /* add */, ARM::tADDspr, Convert__Reg1_1__Tie0_1_1__Reg1_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_GPRsp, MCK_GPR }, },
    7839             :   { 14 /* add */, ARM::tADDspi, Convert__Reg1_1__Tie0_1_1__Imm0_508s41_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_GPRsp, MCK_Imm0_508s4 }, },
    7840             :   { 14 /* add */, ARM::tSUBspi, Convert__regSP__Tie0_1_1__Imm0_508s4Neg1_2__CondCode2_0, Feature_IsThumb|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_GPRsp, MCK_Imm0_508s4Neg }, },
    7841             :   { 14 /* add */, ARM::t2ADDri12, Convert__Reg1_1__Reg1_1__Imm0_40951_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_Imm0_4095 }, },
    7842             :   { 14 /* add */, ARM::t2SUBri12, Convert__Reg1_1__Reg1_1__Imm0_4095Neg1_2__CondCode2_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_GPRnopc, MCK_Imm0_4095Neg }, },
    7843             :   { 14 /* add */, ARM::tADDhirr, Convert__Reg1_1__Tie0_1_1__Reg1_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_GPR, MCK_GPR }, },
    7844             :   { 14 /* add */, ARM::tADDrr, Convert__Reg1_2__CCOut1_0__Reg1_2__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    7845             :   { 14 /* add */, ARM::tADDi8, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Imm0_2551_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_Imm0_255 }, },
    7846             :   { 14 /* add */, ARM::tSUBi8, Convert__Reg1_2__CCOut1_0__Tie0_3_3__ThumbModImmNeg8_2551_3__CondCode2_1, Feature_IsThumb|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_ThumbModImmNeg8_255 }, },
    7847             :   { 14 /* add */, ARM::t2ADDrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_rGPR }, },
    7848             :   { 14 /* add */, ARM::t2ADDrs, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_RegShiftedImm }, },
    7849             :   { 14 /* add */, ARM::t2ADDri, Convert__Reg1_2__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_T2SOImm }, },
    7850             :   { 14 /* add */, ARM::t2SUBri, Convert__Reg1_2__Reg1_2__T2SOImmNeg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_T2SOImmNeg }, },
    7851             :   { 14 /* add */, ARM::t2SUBri, Convert__Reg1_2__Reg1_2__T2SOImmNeg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_T2SOImmNeg }, },
    7852             :   { 14 /* add */, ARM::ADDrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    7853             :   { 14 /* add */, ARM::ADDri, Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    7854             :   { 14 /* add */, ARM::SUBri, Convert__Reg1_2__Reg1_2__ModImmNeg1_3__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImmNeg }, },
    7855             :   { 14 /* add */, ARM::ADDrsi, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    7856             :   { 14 /* add */, ARM::ADDrsr, Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedReg }, },
    7857             :   { 14 /* add */, ARM::tADDspi, Convert__regSP__Tie0_1_1__Imm0_508s41_3__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_GPRsp, MCK_GPRsp, MCK_Imm0_508s4 }, },
    7858             :   { 14 /* add */, ARM::tSUBspi, Convert__regSP__Tie0_1_1__Imm0_508s4Neg1_3__CondCode2_0, Feature_IsThumb|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_GPRsp, MCK_GPRsp, MCK_Imm0_508s4Neg }, },
    7859             :   { 14 /* add */, ARM::tADDrSPi, Convert__Reg1_1__Reg1_2__Imm0_1020s41_3__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_GPRsp, MCK_Imm0_1020s4 }, },
    7860             :   { 14 /* add */, ARM::t2ADR, Convert__Reg1_1__Imm0_40951_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_PC, MCK_Imm0_4095 }, },
    7861             :   { 14 /* add */, ARM::t2ADDri12, Convert__Reg1_1__Reg1_2__Imm0_40951_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_GPR, MCK_Imm0_4095 }, },
    7862             :   { 14 /* add */, ARM::t2SUBri12, Convert__Reg1_1__Reg1_2__Imm0_4095Neg1_3__CondCode2_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_GPRnopc, MCK_GPR, MCK_Imm0_4095Neg }, },
    7863             :   { 14 /* add */, ARM::tADDrSP, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_GPR, MCK_GPRsp, MCK_GPR }, },
    7864             :   { 14 /* add */, ARM::t2SUBri, Convert__Reg1_3__Reg1_3__T2SOImmNeg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_T2SOImmNeg }, },
    7865             :   { 14 /* add */, ARM::tADDrr, Convert__Reg1_2__CCOut1_0__Reg1_3__Reg1_4__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR, MCK_tGPR }, },
    7866             :   { 14 /* add */, ARM::tADDi3, Convert__Reg1_2__CCOut1_0__Reg1_3__Imm0_71_4__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR, MCK_Imm0_7 }, },
    7867             :   { 14 /* add */, ARM::tSUBi3, Convert__Reg1_2__CCOut1_0__Reg1_3__ThumbModImmNeg1_71_4__CondCode2_1, Feature_IsThumb|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR, MCK_ThumbModImmNeg1_7 }, },
    7868             :   { 14 /* add */, ARM::t2ADDrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_rGPR }, },
    7869             :   { 14 /* add */, ARM::t2ADDrs, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_RegShiftedImm }, },
    7870             :   { 14 /* add */, ARM::t2ADDri, Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_T2SOImm }, },
    7871             :   { 14 /* add */, ARM::t2SUBri, Convert__Reg1_2__Reg1_3__T2SOImmNeg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_T2SOImmNeg }, },
    7872             :   { 14 /* add */, ARM::t2SUBri, Convert__Reg1_2__Reg1_3__T2SOImmNeg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_T2SOImmNeg }, },
    7873             :   { 14 /* add */, ARM::ADDrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    7874             :   { 14 /* add */, ARM::ADDri, Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImm }, },
    7875             :   { 14 /* add */, ARM::SUBri, Convert__Reg1_2__Reg1_3__ModImmNeg1_4__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImmNeg }, },
    7876             :   { 14 /* add */, ARM::ADDrsi, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedImm }, },
    7877             :   { 14 /* add */, ARM::ADDrsr, Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedReg }, },
    7878             :   { 14 /* add */, ARM::t2ADDrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_GPRnopc, MCK_rGPR }, },
    7879             :   { 14 /* add */, ARM::t2ADDrs, Convert__Reg1_3__Reg1_4__RegShiftedImm2_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_GPRnopc, MCK_RegShiftedImm }, },
    7880             :   { 14 /* add */, ARM::t2ADDri, Convert__Reg1_3__Reg1_4__T2SOImm1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_GPRnopc, MCK_T2SOImm }, },
    7881             :   { 14 /* add */, ARM::t2SUBri, Convert__Reg1_3__Reg1_4__T2SOImmNeg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_GPRnopc, MCK_T2SOImmNeg }, },
    7882             :   { 14 /* add */, ARM::t2SUBri, Convert__Reg1_3__Reg1_4__T2SOImmNeg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_GPRnopc, MCK_T2SOImmNeg }, },
    7883             :   { 18 /* addw */, ARM::t2SUBri12, Convert__Reg1_1__Reg1_1__Imm0_4095Neg1_2__CondCode2_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_GPRnopc, MCK_Imm0_4095Neg }, },
    7884             :   { 18 /* addw */, ARM::t2ADDri12, Convert__Reg1_1__Reg1_2__Imm0_40951_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_GPR, MCK_Imm0_4095 }, },
    7885             :   { 18 /* addw */, ARM::t2SUBri12, Convert__Reg1_1__Reg1_2__Imm0_4095Neg1_3__CondCode2_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_GPRnopc, MCK_GPR, MCK_Imm0_4095Neg }, },
    7886             :   { 18 /* addw */, ARM::t2SUBri12, Convert__Reg1_1__Reg1_2__T2SOImmNeg1_3__CondCode2_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_GPRnopc, MCK_GPR, MCK_T2SOImmNeg }, },
    7887             :   { 23 /* adr */, ARM::tADR, Convert__Reg1_1__UnsignedOffset_b8s21_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_UnsignedOffset_b8s2 }, },
    7888             :   { 23 /* adr */, ARM::t2ADR, Convert__Reg1_1__Imm1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_Imm }, },
    7889             :   { 23 /* adr */, ARM::ADR, Convert__Reg1_1__AdrLabel1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_AdrLabel }, },
    7890             :   { 23 /* adr */, ARM::t2ADR, Convert__Reg1_2__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_Imm }, },
    7891             :   { 27 /* aesd */, ARM::AESD, Convert__Reg1_1__Tie0_1_1__Reg1_2, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_8, MCK_QPR, MCK_QPR }, },
    7892             :   { 32 /* aese */, ARM::AESE, Convert__Reg1_1__Tie0_1_1__Reg1_2, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_8, MCK_QPR, MCK_QPR }, },
    7893             :   { 37 /* aesimc */, ARM::AESIMC, Convert__Reg1_1__Reg1_2, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_8, MCK_QPR, MCK_QPR }, },
    7894             :   { 44 /* aesmc */, ARM::AESMC, Convert__Reg1_1__Reg1_2, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_8, MCK_QPR, MCK_QPR }, },
    7895             :   { 50 /* and */, ARM::tAND, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    7896             :   { 50 /* and */, ARM::t2ANDrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    7897             :   { 50 /* and */, ARM::t2ANDrs, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_RegShiftedImm }, },
    7898             :   { 50 /* and */, ARM::t2ANDri, Convert__Reg1_2__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImm }, },
    7899             :   { 50 /* and */, ARM::t2BICri, Convert__Reg1_2__Reg1_2__T2SOImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImmNot }, },
    7900             :   { 50 /* and */, ARM::ANDrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    7901             :   { 50 /* and */, ARM::ANDri, Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    7902             :   { 50 /* and */, ARM::BICri, Convert__Reg1_2__Reg1_2__ModImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImmNot }, },
    7903             :   { 50 /* and */, ARM::ANDrsi, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    7904             :   { 50 /* and */, ARM::ANDrsr, Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedReg }, },
    7905             :   { 50 /* and */, ARM::t2ANDrr, Convert__Reg1_3__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    7906             :   { 50 /* and */, ARM::t2ANDrs, Convert__Reg1_3__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_RegShiftedImm }, },
    7907             :   { 50 /* and */, ARM::t2ANDri, Convert__Reg1_3__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_T2SOImm }, },
    7908             :   { 50 /* and */, ARM::t2BICri, Convert__Reg1_3__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_T2SOImmNot }, },
    7909             :   { 50 /* and */, ARM::t2ANDrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    7910             :   { 50 /* and */, ARM::t2ANDrs, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    7911             :   { 50 /* and */, ARM::t2ANDri, Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    7912             :   { 50 /* and */, ARM::t2BICri, Convert__Reg1_2__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImmNot }, },
    7913             :   { 50 /* and */, ARM::ANDrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    7914             :   { 50 /* and */, ARM::ANDri, Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImm }, },
    7915             :   { 50 /* and */, ARM::BICri, Convert__Reg1_2__Reg1_3__ModImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImmNot }, },
    7916             :   { 50 /* and */, ARM::ANDrsi, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedImm }, },
    7917             :   { 50 /* and */, ARM::ANDrsr, Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedReg }, },
    7918             :   { 50 /* and */, ARM::t2ANDrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    7919             :   { 50 /* and */, ARM::t2ANDrs, Convert__Reg1_3__Reg1_4__RegShiftedImm2_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    7920             :   { 50 /* and */, ARM::t2ANDri, Convert__Reg1_3__Reg1_4__T2SOImm1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    7921             :   { 50 /* and */, ARM::t2BICri, Convert__Reg1_3__Reg1_4__T2SOImmNot1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_T2SOImmNot }, },
    7922             :   { 54 /* asr */, ARM::tASRrr, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    7923             :   { 54 /* asr */, ARM::tASRri, Convert__Reg1_2__CCOut1_0__Reg1_2__ImmThumbSR1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_ImmThumbSR }, },
    7924             :   { 54 /* asr */, ARM::t2ASRrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    7925             :   { 54 /* asr */, ARM::t2ASRri, Convert__Reg1_2__Reg1_2__ImmThumbSR1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_ImmThumbSR }, },
    7926             :   { 54 /* asr */, ARM::ASRr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc }, },
    7927             :   { 54 /* asr */, ARM::ASRi, Convert__Reg1_2__Reg1_2__Imm0_321_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_Imm0_32 }, },
    7928             :   { 54 /* asr */, ARM::t2ASRrr, Convert__Reg1_3__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    7929             :   { 54 /* asr */, ARM::t2ASRri, Convert__Reg1_3__Reg1_3__ImmThumbSR1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_ImmThumbSR }, },
    7930             :   { 54 /* asr */, ARM::tASRri, Convert__Reg1_2__CCOut1_0__Reg1_3__ImmThumbSR1_4__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR, MCK_ImmThumbSR }, },
    7931             :   { 54 /* asr */, ARM::t2ASRrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    7932             :   { 54 /* asr */, ARM::t2ASRri, Convert__Reg1_2__Reg1_3__ImmThumbSR1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_ImmThumbSR }, },
    7933             :   { 54 /* asr */, ARM::ASRr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    7934             :   { 54 /* asr */, ARM::ASRi, Convert__Reg1_2__Reg1_3__Imm0_321_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_Imm0_32 }, },
    7935             :   { 54 /* asr */, ARM::t2ASRrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    7936             :   { 54 /* asr */, ARM::t2ASRri, Convert__Reg1_3__Reg1_4__ImmThumbSR1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_ImmThumbSR }, },
    7937             :   { 58 /* b */, ARM::Bcc, Convert__ARMBranchTarget1_1__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_ARMBranchTarget }, },
    7938             :   { 58 /* b */, ARM::tB, ConvertCustom_cvtThumbBranches, Feature_IsThumb, { MCK_CondCode, MCK_Imm }, },
    7939             :   { 58 /* b */, ARM::tBcc, ConvertCustom_cvtThumbBranches, Feature_IsThumb, { MCK_CondCode, MCK_ThumbBranchTarget }, },
    7940             :   { 58 /* b */, ARM::t2Bcc, ConvertCustom_cvtThumbBranches, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_Imm }, },
    7941             :   { 58 /* b */, ARM::t2B, ConvertCustom_cvtThumbBranches, Feature_IsThumb|Feature_HasV8MBaseline, { MCK_CondCode, MCK__DOT_w, MCK_ThumbBranchTarget }, },
    7942             :   { 60 /* bfc */, ARM::t2BFC, Convert__Reg1_1__Tie0_1_1__Bitfield1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_Bitfield }, },
    7943             :   { 60 /* bfc */, ARM::BFC, Convert__Reg1_1__Tie0_1_1__Bitfield1_2__CondCode2_0, Feature_IsARM|Feature_HasV6T2, { MCK_CondCode, MCK_GPR, MCK_Bitfield }, },
    7944             :   { 64 /* bfi */, ARM::t2BFI, Convert__Reg1_1__Tie0_1_1__Reg1_2__Bitfield1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_Bitfield }, },
    7945             :   { 64 /* bfi */, ARM::BFI, Convert__Reg1_1__Tie0_1_1__Reg1_2__Bitfield1_3__CondCode2_0, Feature_IsARM|Feature_HasV6T2, { MCK_CondCode, MCK_GPRnopc, MCK_GPR, MCK_Bitfield }, },
    7946             :   { 68 /* bic */, ARM::tBIC, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    7947             :   { 68 /* bic */, ARM::t2BICrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    7948             :   { 68 /* bic */, ARM::t2BICrs, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_RegShiftedImm }, },
    7949             :   { 68 /* bic */, ARM::t2BICri, Convert__Reg1_2__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImm }, },
    7950             :   { 68 /* bic */, ARM::t2ANDri, Convert__Reg1_2__Reg1_2__T2SOImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImmNot }, },
    7951             :   { 68 /* bic */, ARM::BICrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    7952             :   { 68 /* bic */, ARM::BICri, Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    7953             :   { 68 /* bic */, ARM::ANDri, Convert__Reg1_2__Reg1_2__ModImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImmNot }, },
    7954             :   { 68 /* bic */, ARM::BICrsi, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    7955             :   { 68 /* bic */, ARM::BICrsr, Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedReg }, },
    7956             :   { 68 /* bic */, ARM::t2BICrr, Convert__Reg1_3__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    7957             :   { 68 /* bic */, ARM::t2BICrs, Convert__Reg1_3__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_RegShiftedImm }, },
    7958             :   { 68 /* bic */, ARM::t2BICri, Convert__Reg1_3__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_T2SOImm }, },
    7959             :   { 68 /* bic */, ARM::t2ANDri, Convert__Reg1_3__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_T2SOImmNot }, },
    7960             :   { 68 /* bic */, ARM::t2BICrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    7961             :   { 68 /* bic */, ARM::t2BICrs, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    7962             :   { 68 /* bic */, ARM::t2BICri, Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    7963             :   { 68 /* bic */, ARM::t2ANDri, Convert__Reg1_2__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImmNot }, },
    7964             :   { 68 /* bic */, ARM::BICrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    7965             :   { 68 /* bic */, ARM::BICri, Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImm }, },
    7966             :   { 68 /* bic */, ARM::ANDri, Convert__Reg1_2__Reg1_3__ModImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImmNot }, },
    7967             :   { 68 /* bic */, ARM::BICrsi, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedImm }, },
    7968             :   { 68 /* bic */, ARM::BICrsr, Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedReg }, },
    7969             :   { 68 /* bic */, ARM::t2BICrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    7970             :   { 68 /* bic */, ARM::t2BICrs, Convert__Reg1_3__Reg1_4__RegShiftedImm2_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    7971             :   { 68 /* bic */, ARM::t2BICri, Convert__Reg1_3__Reg1_4__T2SOImm1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    7972             :   { 68 /* bic */, ARM::t2ANDri, Convert__Reg1_3__Reg1_4__T2SOImmNot1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_T2SOImmNot }, },
    7973             :   { 72 /* bkpt */, ARM::BKPT, Convert__imm_95_0, Feature_IsARM, {  }, },
    7974             :   { 72 /* bkpt */, ARM::tBKPT, Convert__imm_95_0, Feature_IsThumb, {  }, },
    7975             :   { 72 /* bkpt */, ARM::tBKPT, Convert__Imm0_2551_0, Feature_IsThumb, { MCK_Imm0_255 }, },
    7976             :   { 72 /* bkpt */, ARM::BKPT, Convert__Imm0_655351_0, Feature_IsARM, { MCK_Imm0_65535 }, },
    7977             :   { 77 /* bl */, ARM::BL, Convert__ARMBranchTarget1_0, Feature_IsARM, { MCK_ARMBranchTarget }, },
    7978             :   { 77 /* bl */, ARM::BL_pred, Convert__ARMBranchTarget1_1__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_ARMBranchTarget }, },
    7979             :   { 77 /* bl */, ARM::tBL, Convert__CondCode2_0__ThumbBranchTarget1_1, Feature_IsThumb, { MCK_CondCode, MCK_ThumbBranchTarget }, },
    7980             :   { 80 /* blx */, ARM::BLX, Convert__Reg1_0, Feature_IsARM|Feature_HasV5T, { MCK_GPR }, },
    7981             :   { 80 /* blx */, ARM::BLXi, Convert__ThumbBranchTarget1_0, Feature_IsARM|Feature_HasV5T, { MCK_ThumbBranchTarget }, },
    7982             :   { 80 /* blx */, ARM::BLX_pred, Convert__Reg1_1__CondCode2_0, Feature_IsARM|Feature_HasV5T, { MCK_CondCode, MCK_GPR }, },
    7983             :   { 80 /* blx */, ARM::tBLXr, Convert__CondCode2_0__Reg1_1, Feature_IsThumb|Feature_HasV5T, { MCK_CondCode, MCK_GPR }, },
    7984             :   { 80 /* blx */, ARM::tBLXi, Convert__CondCode2_0__ARMBranchTarget1_1, Feature_IsThumb|Feature_HasV5T|Feature_IsNotMClass, { MCK_CondCode, MCK_ARMBranchTarget }, },
    7985             :   { 84 /* blxns */, ARM::tBLXNSr, Convert__CondCode2_0__Reg1_1, Feature_IsThumb|Feature_Has8MSecExt, { MCK_CondCode, MCK_GPRnopc }, },
    7986             :   { 90 /* bx */, ARM::BX, Convert__Reg1_0, Feature_IsARM|Feature_HasV4T, { MCK_GPR }, },
    7987             :   { 90 /* bx */, ARM::BX_RET, Convert__CondCode2_0, Feature_IsARM|Feature_HasV4T, { MCK_CondCode, MCK_LR }, },
    7988             :   { 90 /* bx */, ARM::BX_pred, Convert__Reg1_1__CondCode2_0, Feature_IsARM|Feature_HasV4T, { MCK_CondCode, MCK_GPR }, },
    7989             :   { 90 /* bx */, ARM::tBX, Convert__Reg1_1__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_GPR }, },
    7990             :   { 93 /* bxj */, ARM::t2BXJ, Convert__Reg1_1__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPRnopc }, },
    7991             :   { 93 /* bxj */, ARM::BXJ, Convert__Reg1_1__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR }, },
    7992             :   { 97 /* bxns */, ARM::tBXNS, Convert__Reg1_1__CondCode2_0, Feature_IsThumb|Feature_Has8MSecExt, { MCK_CondCode, MCK_GPR }, },
    7993             :   { 102 /* cbnz */, ARM::tCBNZ, Convert__Reg1_0__ThumbBranchTarget1_1, Feature_IsThumb|Feature_HasV8MBaseline, { MCK_tGPR, MCK_ThumbBranchTarget }, },
    7994             :   { 107 /* cbz */, ARM::tCBZ, Convert__Reg1_0__ThumbBranchTarget1_1, Feature_IsThumb|Feature_HasV8MBaseline, { MCK_tGPR, MCK_ThumbBranchTarget }, },
    7995             :   { 111 /* cdp */, ARM::CDP, Convert__CoprocNum1_1__Imm0_151_2__CoprocReg1_3__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0, Feature_IsARM|Feature_PreV8, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_15, MCK_CoprocReg, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    7996             :   { 111 /* cdp */, ARM::t2CDP, Convert__CoprocNum1_1__Imm0_151_2__CoprocReg1_3__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0, Feature_IsThumb2|Feature_PreV8, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_15, MCK_CoprocReg, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    7997             :   { 115 /* cdp2 */, ARM::CDP2, Convert__CoprocNum1_0__Imm0_151_1__CoprocReg1_2__CoprocReg1_3__CoprocReg1_4__Imm0_71_5, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_Imm0_15, MCK_CoprocReg, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    7998             :   { 115 /* cdp2 */, ARM::t2CDP2, Convert__CoprocNum1_1__Imm0_151_2__CoprocReg1_3__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0, Feature_IsThumb2|Feature_PreV8, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_15, MCK_CoprocReg, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    7999             :   { 120 /* clrex */, ARM::CLREX, Convert_NoOperands, Feature_IsARM|Feature_HasV6K, {  }, },
    8000             :   { 120 /* clrex */, ARM::t2CLREX, Convert__CondCode2_0, Feature_IsThumb|Feature_HasV7Clrex, { MCK_CondCode }, },
    8001             :   { 126 /* clz */, ARM::t2CLZ, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8002             :   { 126 /* clz */, ARM::CLZ, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsARM|Feature_HasV5T, { MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8003             :   { 130 /* cmn */, ARM::tCMNz, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8004             :   { 130 /* cmn */, ARM::CMPri, Convert__Reg1_1__ModImmNeg1_2__CondCode2_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_rGPR, MCK_ModImmNeg }, },
    8005             :   { 130 /* cmn */, ARM::t2CMPri, Convert__Reg1_1__T2SOImmNeg1_2__CondCode2_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_rGPR, MCK_T2SOImmNeg }, },
    8006             :   { 130 /* cmn */, ARM::t2CMNzrr, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_rGPR }, },
    8007             :   { 130 /* cmn */, ARM::t2CMNzrs, Convert__Reg1_1__RegShiftedImm2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_RegShiftedImm }, },
    8008             :   { 130 /* cmn */, ARM::CMNzrsr, Convert__Reg1_1__RegShiftedReg3_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_RegShiftedReg }, },
    8009             :   { 130 /* cmn */, ARM::t2CMNri, Convert__Reg1_1__T2SOImm1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_T2SOImm }, },
    8010             :   { 130 /* cmn */, ARM::CMNzrr, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8011             :   { 130 /* cmn */, ARM::CMNri, Convert__Reg1_1__ModImm1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    8012             :   { 130 /* cmn */, ARM::CMNzrsi, Convert__Reg1_1__RegShiftedImm2_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    8013             :   { 130 /* cmn */, ARM::t2CMNzrr, Convert__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_rGPR }, },
    8014             :   { 130 /* cmn */, ARM::t2CMNzrs, Convert__Reg1_2__RegShiftedImm2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_RegShiftedImm }, },
    8015             :   { 130 /* cmn */, ARM::t2CMNri, Convert__Reg1_2__T2SOImm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_T2SOImm }, },
    8016             :   { 134 /* cmp */, ARM::tCMPr, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8017             :   { 134 /* cmp */, ARM::tCMPi8, Convert__Reg1_1__Imm0_2551_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_Imm0_255 }, },
    8018             :   { 134 /* cmp */, ARM::CMNri, Convert__Reg1_1__ModImmNeg1_2__CondCode2_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_rGPR, MCK_ModImmNeg }, },
    8019             :   { 134 /* cmp */, ARM::t2CMNri, Convert__Reg1_1__T2SOImmNeg1_2__CondCode2_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_rGPR, MCK_T2SOImmNeg }, },
    8020             :   { 134 /* cmp */, ARM::t2CMPrs, Convert__Reg1_1__RegShiftedImm2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_RegShiftedImm }, },
    8021             :   { 134 /* cmp */, ARM::CMPrsr, Convert__Reg1_1__RegShiftedReg3_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_RegShiftedReg }, },
    8022             :   { 134 /* cmp */, ARM::t2CMPri, Convert__Reg1_1__T2SOImm1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_T2SOImm }, },
    8023             :   { 134 /* cmp */, ARM::CMPrr, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8024             :   { 134 /* cmp */, ARM::tCMPhir, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8025             :   { 134 /* cmp */, ARM::CMPri, Convert__Reg1_1__ModImm1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    8026             :   { 134 /* cmp */, ARM::CMPrsi, Convert__Reg1_1__RegShiftedImm2_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    8027             :   { 134 /* cmp */, ARM::t2CMPrr, Convert__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_rGPR }, },
    8028             :   { 134 /* cmp */, ARM::t2CMPrs, Convert__Reg1_2__RegShiftedImm2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_RegShiftedImm }, },
    8029             :   { 134 /* cmp */, ARM::t2CMPri, Convert__Reg1_2__T2SOImm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_T2SOImm }, },
    8030             :   { 138 /* cps */, ARM::t2CPS1p, Convert__Imm0_311_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_Imm0_31 }, },
    8031             :   { 138 /* cps */, ARM::CPS1p, Convert__Imm0_311_0, Feature_IsARM, { MCK_Imm0_31 }, },
    8032             :   { 138 /* cps */, ARM::t2CPS1p, Convert__Imm0_311_1, Feature_IsThumb2, { MCK__DOT_w, MCK_Imm0_31 }, },
    8033             :   { 138 /* cps */, ARM::CPS2p, Convert__Imm1_0__ProcIFlags1_1, Feature_IsARM, { MCK_Imm, MCK_ProcIFlags }, },
    8034             :   { 138 /* cps */, ARM::tCPS, Convert__Imm1_0__ProcIFlags1_1, Feature_IsThumb, { MCK_Imm, MCK_ProcIFlags }, },
    8035             :   { 138 /* cps */, ARM::t2CPS2p, Convert__Imm1_0__ProcIFlags1_2, Feature_IsThumb2|Feature_IsNotMClass, { MCK_Imm, MCK__DOT_w, MCK_ProcIFlags }, },
    8036             :   { 138 /* cps */, ARM::CPS3p, Convert__Imm1_0__ProcIFlags1_1__Imm0_311_2, Feature_IsARM, { MCK_Imm, MCK_ProcIFlags, MCK_Imm0_31 }, },
    8037             :   { 138 /* cps */, ARM::t2CPS3p, Convert__Imm1_0__ProcIFlags1_1__Imm1_2, Feature_IsThumb2|Feature_IsNotMClass, { MCK_Imm, MCK_ProcIFlags, MCK_Imm }, },
    8038             :   { 138 /* cps */, ARM::t2CPS3p, Convert__Imm1_0__ProcIFlags1_2__Imm1_3, Feature_IsThumb2, { MCK_Imm, MCK__DOT_w, MCK_ProcIFlags, MCK_Imm }, },
    8039             :   { 142 /* crc32b */, ARM::t2CRC32B, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsThumb2|Feature_HasV8|Feature_HasCRC, { MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8040             :   { 142 /* crc32b */, ARM::CRC32B, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsARM|Feature_HasV8|Feature_HasCRC, { MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8041             :   { 149 /* crc32cb */, ARM::t2CRC32CB, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsThumb2|Feature_HasV8|Feature_HasCRC, { MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8042             :   { 149 /* crc32cb */, ARM::CRC32CB, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsARM|Feature_HasV8|Feature_HasCRC, { MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8043             :   { 157 /* crc32ch */, ARM::t2CRC32CH, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsThumb2|Feature_HasV8|Feature_HasCRC, { MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8044             :   { 157 /* crc32ch */, ARM::CRC32CH, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsARM|Feature_HasV8|Feature_HasCRC, { MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8045             :   { 165 /* crc32cw */, ARM::t2CRC32CW, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsThumb2|Feature_HasV8|Feature_HasCRC, { MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8046             :   { 165 /* crc32cw */, ARM::CRC32CW, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsARM|Feature_HasV8|Feature_HasCRC, { MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8047             :   { 173 /* crc32h */, ARM::t2CRC32H, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsThumb2|Feature_HasV8|Feature_HasCRC, { MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8048             :   { 173 /* crc32h */, ARM::CRC32H, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsARM|Feature_HasV8|Feature_HasCRC, { MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8049             :   { 180 /* crc32w */, ARM::t2CRC32W, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsThumb2|Feature_HasV8|Feature_HasCRC, { MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8050             :   { 180 /* crc32w */, ARM::CRC32W, Convert__Reg1_0__Reg1_1__Reg1_2, Feature_IsARM|Feature_HasV8|Feature_HasCRC, { MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8051             :   { 187 /* csdb */, ARM::HINT, Convert__imm_95_20__CondCode2_0, Feature_IsARM|Feature_HasV6K, { MCK_CondCode }, },
    8052             :   { 187 /* csdb */, ARM::t2HINT, Convert__imm_95_20__CondCode2_0, Feature_IsThumb2, { MCK_CondCode }, },
    8053             :   { 187 /* csdb */, ARM::t2HINT, Convert__imm_95_20__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w }, },
    8054             :   { 192 /* dbg */, ARM::DBG, Convert__Imm0_151_1__CondCode2_0, Feature_IsARM|Feature_HasV7, { MCK_CondCode, MCK_Imm0_15 }, },
    8055             :   { 192 /* dbg */, ARM::t2DBG, Convert__Imm0_151_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_Imm0_15 }, },
    8056             :   { 196 /* dcps1 */, ARM::t2DCPS1, Convert__CondCode2_0, Feature_IsThumb2|Feature_HasV8, { MCK_CondCode }, },
    8057             :   { 202 /* dcps2 */, ARM::t2DCPS2, Convert__CondCode2_0, Feature_IsThumb2|Feature_HasV8, { MCK_CondCode }, },
    8058             :   { 208 /* dcps3 */, ARM::t2DCPS3, Convert__CondCode2_0, Feature_IsThumb2|Feature_HasV8, { MCK_CondCode }, },
    8059             :   { 214 /* dfb */, ARM::DSB, Convert__imm_95_12, Feature_IsARM|Feature_HasDFB, {  }, },
    8060             :   { 214 /* dfb */, ARM::t2DSB, Convert__imm_95_12__CondCode2_0, Feature_HasDFB, { MCK_CondCode }, },
    8061             :   { 218 /* dmb */, ARM::DMB, Convert__imm_95_15, Feature_IsARM|Feature_HasDB, {  }, },
    8062             :   { 218 /* dmb */, ARM::t2DMB, Convert__imm_95_15__CondCode2_0, Feature_HasDB, { MCK_CondCode }, },
    8063             :   { 218 /* dmb */, ARM::DMB, Convert__MemBarrierOpt1_0, Feature_IsARM|Feature_HasDB, { MCK_MemBarrierOpt }, },
    8064             :   { 218 /* dmb */, ARM::t2DMB, Convert__MemBarrierOpt1_1__CondCode2_0, Feature_IsThumb|Feature_HasDB, { MCK_CondCode, MCK_MemBarrierOpt }, },
    8065             :   { 222 /* dsb */, ARM::DSB, Convert__imm_95_15, Feature_IsARM|Feature_HasDB, {  }, },
    8066             :   { 222 /* dsb */, ARM::t2DSB, Convert__imm_95_15__CondCode2_0, Feature_HasDB, { MCK_CondCode }, },
    8067             :   { 222 /* dsb */, ARM::DSB, Convert__MemBarrierOpt1_0, Feature_IsARM|Feature_HasDB, { MCK_MemBarrierOpt }, },
    8068             :   { 222 /* dsb */, ARM::t2DSB, Convert__MemBarrierOpt1_1__CondCode2_0, Feature_IsThumb|Feature_HasDB, { MCK_CondCode, MCK_MemBarrierOpt }, },
    8069             :   { 226 /* eor */, ARM::tEOR, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8070             :   { 226 /* eor */, ARM::t2EORrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8071             :   { 226 /* eor */, ARM::t2EORrs, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_RegShiftedImm }, },
    8072             :   { 226 /* eor */, ARM::t2EORri, Convert__Reg1_2__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImm }, },
    8073             :   { 226 /* eor */, ARM::EORrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8074             :   { 226 /* eor */, ARM::EORri, Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    8075             :   { 226 /* eor */, ARM::EORrsi, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    8076             :   { 226 /* eor */, ARM::EORrsr, Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedReg }, },
    8077             :   { 226 /* eor */, ARM::t2EORrr, Convert__Reg1_3__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    8078             :   { 226 /* eor */, ARM::t2EORrs, Convert__Reg1_3__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_RegShiftedImm }, },
    8079             :   { 226 /* eor */, ARM::t2EORri, Convert__Reg1_3__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_T2SOImm }, },
    8080             :   { 226 /* eor */, ARM::t2EORrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8081             :   { 226 /* eor */, ARM::t2EORrs, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    8082             :   { 226 /* eor */, ARM::t2EORri, Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    8083             :   { 226 /* eor */, ARM::EORrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8084             :   { 226 /* eor */, ARM::EORri, Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImm }, },
    8085             :   { 226 /* eor */, ARM::EORrsi, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedImm }, },
    8086             :   { 226 /* eor */, ARM::EORrsr, Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedReg }, },
    8087             :   { 226 /* eor */, ARM::t2EORrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8088             :   { 226 /* eor */, ARM::t2EORrs, Convert__Reg1_3__Reg1_4__RegShiftedImm2_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    8089             :   { 226 /* eor */, ARM::t2EORri, Convert__Reg1_3__Reg1_4__T2SOImm1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    8090             :   { 230 /* eret */, ARM::ERET, Convert__CondCode2_0, Feature_IsARM|Feature_HasVirtualization, { MCK_CondCode }, },
    8091             :   { 230 /* eret */, ARM::t2SUBS_PC_LR, Convert__imm_95_0__CondCode2_0, Feature_IsThumb2|Feature_HasVirtualization, { MCK_CondCode }, },
    8092             :   { 235 /* esb */, ARM::HINT, Convert__imm_95_16__CondCode2_0, Feature_IsARM|Feature_HasRAS, { MCK_CondCode }, },
    8093             :   { 235 /* esb */, ARM::t2HINT, Convert__imm_95_16__CondCode2_0, Feature_IsThumb2|Feature_HasRAS, { MCK_CondCode }, },
    8094             :   { 235 /* esb */, ARM::t2HINT, Convert__imm_95_16__CondCode2_0, Feature_IsThumb2|Feature_HasRAS, { MCK_CondCode, MCK__DOT_w }, },
    8095             :   { 239 /* faddd */, ARM::VADDD, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_HasVFP2|Feature_HasDPVFP, { MCK_CondCode, MCK_DPR, MCK_DPR, MCK_DPR }, },
    8096             :   { 245 /* fadds */, ARM::VADDS, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_HasVFP2, { MCK_CondCode, MCK_HPR, MCK_HPR, MCK_HPR }, },
    8097             :   { 251 /* fcmpzd */, ARM::VCMPZD, Convert__Reg1_1__CondCode2_0, Feature_HasVFP2|Feature_HasDPVFP, { MCK_CondCode, MCK_DPR }, },
    8098             :   { 258 /* fcmpzs */, ARM::VCMPZS, Convert__Reg1_1__CondCode2_0, Feature_HasVFP2, { MCK_CondCode, MCK_HPR }, },
    8099             :   { 265 /* fconstd */, ARM::FCONSTD, Convert__Reg1_1__FPImm1_2__CondCode2_0, Feature_HasVFP3, { MCK_CondCode, MCK_DPR, MCK_FPImm }, },
    8100             :   { 273 /* fconsts */, ARM::FCONSTS, Convert__Reg1_1__FPImm1_2__CondCode2_0, Feature_HasVFP3, { MCK_CondCode, MCK_HPR, MCK_FPImm }, },
    8101             :   { 281 /* fldmdbx */, ARM::FLDMXDB_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__DPRRegList1_3, Feature_HasVFP2, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_DPRRegList }, },
    8102             :   { 289 /* fldmiax */, ARM::FLDMXIA, Convert__Reg1_1__CondCode2_0__DPRRegList1_2, Feature_HasVFP2, { MCK_CondCode, MCK_GPR, MCK_DPRRegList }, },
    8103             :   { 289 /* fldmiax */, ARM::FLDMXIA_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__DPRRegList1_3, Feature_HasVFP2, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_DPRRegList }, },
    8104             :   { 297 /* fmdhr */, ARM::VSETLNi32, Convert__Reg1_1__Tie0_2_2__Reg1_2__imm_95_1__CondCode2_0, Feature_HasVFP2, { MCK_CondCode, MCK_DPR, MCK_GPR }, },
    8105             :   { 303 /* fmdlr */, ARM::VSETLNi32, Convert__Reg1_1__Tie0_2_2__Reg1_2__imm_95_0__CondCode2_0, Feature_HasVFP2, { MCK_CondCode, MCK_DPR, MCK_GPR }, },
    8106             :   { 309 /* fmstat */, ARM::FMSTAT, Convert__CondCode2_0, Feature_HasVFP2, { MCK_CondCode }, },
    8107             :   { 316 /* fstmdbx */, ARM::FSTMXDB_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__DPRRegList1_3, Feature_HasVFP2, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_DPRRegList }, },
    8108             :   { 324 /* fstmiax */, ARM::FSTMXIA, Convert__Reg1_1__CondCode2_0__DPRRegList1_2, Feature_HasVFP2, { MCK_CondCode, MCK_GPR, MCK_DPRRegList }, },
    8109             :   { 324 /* fstmiax */, ARM::FSTMXIA_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__DPRRegList1_3, Feature_HasVFP2, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_DPRRegList }, },
    8110             :   { 332 /* fsubd */, ARM::VSUBD, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_HasVFP2|Feature_HasDPVFP, { MCK_CondCode, MCK_DPR, MCK_DPR, MCK_DPR }, },
    8111             :   { 338 /* fsubs */, ARM::VSUBS, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_HasVFP2, { MCK_CondCode, MCK_HPR, MCK_HPR, MCK_HPR }, },
    8112             :   { 344 /* hint */, ARM::tHINT, Convert__Imm0_151_1__CondCode2_0, Feature_IsThumb|Feature_HasV6M, { MCK_CondCode, MCK_Imm0_15 }, },
    8113             :   { 344 /* hint */, ARM::HINT, Convert__Imm0_2391_1__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_Imm0_239 }, },
    8114             :   { 344 /* hint */, ARM::t2HINT, Convert__Imm0_2391_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_Imm0_239 }, },
    8115             :   { 344 /* hint */, ARM::t2HINT, Convert__Imm0_2391_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_Imm0_239 }, },
    8116             :   { 349 /* hlt */, ARM::tHLT, Convert__Imm0_631_0, Feature_IsThumb|Feature_HasV8, { MCK_Imm0_63 }, },
    8117             :   { 349 /* hlt */, ARM::HLT, Convert__Imm0_655351_0, Feature_IsARM|Feature_HasV8, { MCK_Imm0_65535 }, },
    8118             :   { 353 /* hvc */, ARM::HVC, Convert__Imm0_655351_0, Feature_IsARM|Feature_HasVirtualization, { MCK_Imm0_65535 }, },
    8119             :   { 353 /* hvc */, ARM::t2HVC, Convert__Imm0_655351_0, Feature_IsThumb2, { MCK_Imm0_65535 }, },
    8120             :   { 353 /* hvc */, ARM::t2HVC, Convert__Imm0_655351_1, Feature_IsThumb2|Feature_HasVirtualization, { MCK__DOT_w, MCK_Imm0_65535 }, },
    8121             :   { 357 /* isb */, ARM::ISB, Convert__imm_95_15, Feature_IsARM|Feature_HasDB, {  }, },
    8122             :   { 357 /* isb */, ARM::t2ISB, Convert__imm_95_15__CondCode2_0, Feature_HasDB, { MCK_CondCode }, },
    8123             :   { 357 /* isb */, ARM::ISB, Convert__InstSyncBarrierOpt1_0, Feature_IsARM|Feature_HasDB, { MCK_InstSyncBarrierOpt }, },
    8124             :   { 357 /* isb */, ARM::t2ISB, Convert__InstSyncBarrierOpt1_1__CondCode2_0, Feature_IsThumb|Feature_HasDB, { MCK_CondCode, MCK_InstSyncBarrierOpt }, },
    8125             :   { 361 /* it */, ARM::ITasm, Convert__ITCondCode1_1__ITMask1_0, Feature_IsARM, { MCK_ITMask, MCK_ITCondCode }, },
    8126             :   { 361 /* it */, ARM::t2IT, Convert__ITCondCode1_1__ITMask1_0, Feature_IsThumb2, { MCK_ITMask, MCK_ITCondCode }, },
    8127             :   { 364 /* lda */, ARM::t2LDA, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsThumb|Feature_HasAcquireRelease, { MCK_CondCode, MCK_rGPR, MCK_MemNoOffset }, },
    8128             :   { 364 /* lda */, ARM::LDA, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM|Feature_HasAcquireRelease, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8129             :   { 368 /* ldab */, ARM::t2LDAB, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsThumb|Feature_HasAcquireRelease, { MCK_CondCode, MCK_rGPR, MCK_MemNoOffset }, },
    8130             :   { 368 /* ldab */, ARM::LDAB, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM|Feature_HasAcquireRelease, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8131             :   { 373 /* ldaex */, ARM::t2LDAEX, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsThumb|Feature_HasAcquireRelease|Feature_HasV7Clrex, { MCK_CondCode, MCK_rGPR, MCK_MemNoOffset }, },
    8132             :   { 373 /* ldaex */, ARM::LDAEX, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM|Feature_HasAcquireRelease|Feature_HasV7Clrex, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8133             :   { 379 /* ldaexb */, ARM::t2LDAEXB, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsThumb|Feature_HasAcquireRelease|Feature_HasV7Clrex, { MCK_CondCode, MCK_rGPR, MCK_MemNoOffset }, },
    8134             :   { 379 /* ldaexb */, ARM::LDAEXB, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM|Feature_HasAcquireRelease|Feature_HasV7Clrex, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8135             :   { 386 /* ldaexd */, ARM::LDAEXD, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM|Feature_HasAcquireRelease|Feature_HasV7Clrex, { MCK_CondCode, MCK_GPRPair, MCK_MemNoOffset }, },
    8136             :   { 386 /* ldaexd */, ARM::t2LDAEXD, Convert__Reg1_1__Reg1_2__MemNoOffset1_3__CondCode2_0, Feature_IsThumb|Feature_HasAcquireRelease|Feature_HasV7Clrex|Feature_IsNotMClass, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_MemNoOffset }, },
    8137             :   { 393 /* ldaexh */, ARM::t2LDAEXH, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsThumb|Feature_HasAcquireRelease|Feature_HasV7Clrex, { MCK_CondCode, MCK_rGPR, MCK_MemNoOffset }, },
    8138             :   { 393 /* ldaexh */, ARM::LDAEXH, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM|Feature_HasAcquireRelease|Feature_HasV7Clrex, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8139             :   { 400 /* ldah */, ARM::t2LDAH, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsThumb|Feature_HasAcquireRelease, { MCK_CondCode, MCK_rGPR, MCK_MemNoOffset }, },
    8140             :   { 400 /* ldah */, ARM::LDAH, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM|Feature_HasAcquireRelease, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8141             :   { 405 /* ldc */, ARM::LDC_OFFSET, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8142             :   { 405 /* ldc */, ARM::t2LDC_OFFSET, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8143             :   { 405 /* ldc */, ARM::LDC_PRE, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8144             :   { 405 /* ldc */, ARM::t2LDC_PRE, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8145             :   { 405 /* ldc */, ARM::LDC_OPTION, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8146             :   { 405 /* ldc */, ARM::t2LDC_OPTION, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8147             :   { 405 /* ldc */, ARM::LDC_POST, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8148             :   { 405 /* ldc */, ARM::t2LDC_POST, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8149             :   { 409 /* ldc2 */, ARM::LDC2_OFFSET, Convert__CoprocNum1_0__CoprocReg1_1__AddrMode52_2, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8150             :   { 409 /* ldc2 */, ARM::t2LDC2_OFFSET, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8151             :   { 409 /* ldc2 */, ARM::LDC2_PRE, Convert__CoprocNum1_0__CoprocReg1_1__AddrMode52_2, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8152             :   { 409 /* ldc2 */, ARM::LDC2_OPTION, Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__CoprocOption1_3, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8153             :   { 409 /* ldc2 */, ARM::LDC2_POST, Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__PostIdxImm8s41_3, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8154             :   { 409 /* ldc2 */, ARM::t2LDC2_PRE, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8155             :   { 409 /* ldc2 */, ARM::t2LDC2_OPTION, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8156             :   { 409 /* ldc2 */, ARM::t2LDC2_POST, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8157             :   { 414 /* ldc2l */, ARM::LDC2L_OFFSET, Convert__CoprocNum1_0__CoprocReg1_1__AddrMode52_2, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8158             :   { 414 /* ldc2l */, ARM::t2LDC2L_OFFSET, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8159             :   { 414 /* ldc2l */, ARM::LDC2L_PRE, Convert__CoprocNum1_0__CoprocReg1_1__AddrMode52_2, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8160             :   { 414 /* ldc2l */, ARM::LDC2L_OPTION, Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__CoprocOption1_3, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8161             :   { 414 /* ldc2l */, ARM::LDC2L_POST, Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__PostIdxImm8s41_3, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8162             :   { 414 /* ldc2l */, ARM::t2LDC2L_PRE, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8163             :   { 414 /* ldc2l */, ARM::t2LDC2L_OPTION, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8164             :   { 414 /* ldc2l */, ARM::t2LDC2L_POST, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8165             :   { 420 /* ldcl */, ARM::LDCL_OFFSET, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8166             :   { 420 /* ldcl */, ARM::t2LDCL_OFFSET, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8167             :   { 420 /* ldcl */, ARM::LDCL_PRE, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8168             :   { 420 /* ldcl */, ARM::t2LDCL_PRE, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8169             :   { 420 /* ldcl */, ARM::LDCL_OPTION, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8170             :   { 420 /* ldcl */, ARM::t2LDCL_OPTION, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8171             :   { 420 /* ldcl */, ARM::LDCL_POST, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8172             :   { 420 /* ldcl */, ARM::t2LDCL_POST, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8173             :   { 425 /* ldm */, ARM::tLDMIA, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_RegList }, },
    8174             :   { 425 /* ldm */, ARM::LDMIA, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_RegList }, },
    8175             :   { 425 /* ldm */, ARM::t2LDMIA, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_RegList }, },
    8176             :   { 425 /* ldm */, ARM::t2LDMIA, Convert__Reg1_2__CondCode2_0__RegList1_3, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPR, MCK_RegList }, },
    8177             :   { 425 /* ldm */, ARM::tLDMIA, Convert__Reg1_1__CondCode2_0__RegList1_3, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK__EXCLAIM_, MCK_RegList }, },
    8178             :   { 425 /* ldm */, ARM::LDMIA_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_RegList }, },
    8179             :   { 425 /* ldm */, ARM::t2LDMIA_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_RegList }, },
    8180             :   { 425 /* ldm */, ARM::sysLDMIA, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_RegList, MCK__94_ }, },
    8181             :   { 425 /* ldm */, ARM::t2LDMIA_UPD, Convert__Reg1_2__Tie0_3_3__CondCode2_0__RegList1_4, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPR, MCK__EXCLAIM_, MCK_RegList }, },
    8182             :   { 425 /* ldm */, ARM::sysLDMIA_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_RegList, MCK__94_ }, },
    8183             :   { 429 /* ldmda */, ARM::LDMDA, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_RegList }, },
    8184             :   { 429 /* ldmda */, ARM::LDMDA_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_RegList }, },
    8185             :   { 429 /* ldmda */, ARM::sysLDMDA, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_RegList, MCK__94_ }, },
    8186             :   { 429 /* ldmda */, ARM::sysLDMDA_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_RegList, MCK__94_ }, },
    8187             :   { 435 /* ldmdb */, ARM::LDMDB, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_RegList }, },
    8188             :   { 435 /* ldmdb */, ARM::t2LDMDB, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_RegList }, },
    8189             :   { 435 /* ldmdb */, ARM::t2LDMDB, Convert__Reg1_2__CondCode2_0__RegList1_3, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPR, MCK_RegList }, },
    8190             :   { 435 /* ldmdb */, ARM::LDMDB_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_RegList }, },
    8191             :   { 435 /* ldmdb */, ARM::t2LDMDB_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_RegList }, },
    8192             :   { 435 /* ldmdb */, ARM::sysLDMDB, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_RegList, MCK__94_ }, },
    8193             :   { 435 /* ldmdb */, ARM::t2LDMDB_UPD, Convert__Reg1_2__Tie0_3_3__CondCode2_0__RegList1_4, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPR, MCK__EXCLAIM_, MCK_RegList }, },
    8194             :   { 435 /* ldmdb */, ARM::sysLDMDB_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_RegList, MCK__94_ }, },
    8195             :   { 441 /* ldmib */, ARM::LDMIB, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_RegList }, },
    8196             :   { 441 /* ldmib */, ARM::LDMIB_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_RegList }, },
    8197             :   { 441 /* ldmib */, ARM::sysLDMIB, Convert__Reg1_1__CondCode2_0__RegList1_2, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_RegList, MCK__94_ }, },
    8198             :   { 441 /* ldmib */, ARM::sysLDMIB_UPD, Convert__Reg1_1__Tie0_2_2__CondCode2_0__RegList1_3, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_, MCK_RegList, MCK__94_ }, },
    8199             :   { 447 /* ldr */, ARM::tLDRpci, Convert__Reg1_1__ThumbMemPC1_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_ThumbMemPC }, },
    8200             :   { 447 /* ldr */, ARM::tLDRConstPool, Convert__Reg1_1__ConstPoolAsmImm1_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_ConstPoolAsmImm }, },
    8201             :   { 447 /* ldr */, ARM::tLDRi, Convert__Reg1_1__MemThumbRIs42_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_MemThumbRIs4 }, },
    8202             :   { 447 /* ldr */, ARM::tLDRr, Convert__Reg1_1__MemThumbRR2_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_MemThumbRR }, },
    8203             :   { 447 /* ldr */, ARM::tLDRspi, Convert__Reg1_1__MemThumbSPI2_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_MemThumbSPI }, },
    8204             :   { 447 /* ldr */, ARM::t2LDRpci, Convert__Reg1_1__Imm1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_Imm }, },
    8205             :   { 447 /* ldr */, ARM::LDRi12, Convert__Reg1_1__MemImm12Offset2_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemImm12Offset }, },
    8206             :   { 447 /* ldr */, ARM::t2LDRi8, Convert__Reg1_1__MemNegImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemNegImm8Offset }, },
    8207             :   { 447 /* ldr */, ARM::LDRrs, Convert__Reg1_1__MemRegOffset3_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemRegOffset }, },
    8208             :   { 447 /* ldr */, ARM::LDRConstPool, Convert__Reg1_1__ConstPoolAsmImm1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_ConstPoolAsmImm }, },
    8209             :   { 447 /* ldr */, ARM::t2LDRConstPool, Convert__Reg1_1__ConstPoolAsmImm1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_ConstPoolAsmImm }, },
    8210             :   { 447 /* ldr */, ARM::t2LDRi12, Convert__Reg1_1__MemUImm12Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemUImm12Offset }, },
    8211             :   { 447 /* ldr */, ARM::t2LDRs, Convert__Reg1_1__T2MemRegOffset3_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_T2MemRegOffset }, },
    8212             :   { 447 /* ldr */, ARM::t2LDRpcrel, Convert__Reg1_1__MemPCRelImm121_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemPCRelImm12 }, },
    8213             :   { 447 /* ldr */, ARM::t2LDRConstPool, Convert__Reg1_2__ConstPoolAsmImm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_ConstPoolAsmImm }, },
    8214             :   { 447 /* ldr */, ARM::t2LDRpci, Convert__Reg1_2__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPR, MCK_Imm }, },
    8215             :   { 447 /* ldr */, ARM::t2LDRi12, Convert__Reg1_2__MemUImm12Offset2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPR, MCK_MemUImm12Offset }, },
    8216             :   { 447 /* ldr */, ARM::t2LDRs, Convert__Reg1_2__T2MemRegOffset3_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPR, MCK_T2MemRegOffset }, },
    8217             :   { 447 /* ldr */, ARM::t2LDRpcrel, Convert__Reg1_2__MemPCRelImm121_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPR, MCK_MemPCRelImm12 }, },
    8218             :   { 447 /* ldr */, ARM::LDR_PRE_IMM, Convert__Reg1_1__imm_95_0__MemImm12Offset2_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemImm12Offset, MCK__EXCLAIM_ }, },
    8219             :   { 447 /* ldr */, ARM::t2LDR_PRE, Convert__Reg1_1__imm_95_0__MemImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemImm8Offset, MCK__EXCLAIM_ }, },
    8220             :   { 447 /* ldr */, ARM::LDR_POST_IMM, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM2OffsetImm2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_AM2OffsetImm }, },
    8221             :   { 447 /* ldr */, ARM::t2LDR_POST, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_Imm }, },
    8222             :   { 447 /* ldr */, ARM::LDR_POST_REG, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxRegShifted2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_PostIdxRegShifted }, },
    8223             :   { 447 /* ldr */, ARM::LDR_PRE_REG, Convert__Reg1_1__imm_95_0__MemRegOffset3_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemRegOffset, MCK__EXCLAIM_ }, },
    8224             :   { 451 /* ldrb */, ARM::tLDRBi, Convert__Reg1_1__MemThumbRIs12_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_MemThumbRIs1 }, },
    8225             :   { 451 /* ldrb */, ARM::tLDRBr, Convert__Reg1_1__MemThumbRR2_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_MemThumbRR }, },
    8226             :   { 451 /* ldrb */, ARM::t2LDRBpci, Convert__Reg1_1__Imm1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_Imm }, },
    8227             :   { 451 /* ldrb */, ARM::t2LDRBi12, Convert__Reg1_1__MemUImm12Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_MemUImm12Offset }, },
    8228             :   { 451 /* ldrb */, ARM::t2LDRBs, Convert__Reg1_1__T2MemRegOffset3_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_T2MemRegOffset }, },
    8229             :   { 451 /* ldrb */, ARM::LDRBi12, Convert__Reg1_1__MemImm12Offset2_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_MemImm12Offset }, },
    8230             :   { 451 /* ldrb */, ARM::t2LDRBi8, Convert__Reg1_1__MemNegImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_MemNegImm8Offset }, },
    8231             :   { 451 /* ldrb */, ARM::LDRBrs, Convert__Reg1_1__MemRegOffset3_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_MemRegOffset }, },
    8232             :   { 451 /* ldrb */, ARM::t2LDRBpcrel, Convert__Reg1_1__MemPCRelImm121_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_MemPCRelImm12 }, },
    8233             :   { 451 /* ldrb */, ARM::t2LDRBpci, Convert__Reg1_2__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_Imm }, },
    8234             :   { 451 /* ldrb */, ARM::t2LDRBi12, Convert__Reg1_2__MemUImm12Offset2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_MemUImm12Offset }, },
    8235             :   { 451 /* ldrb */, ARM::t2LDRBs, Convert__Reg1_2__T2MemRegOffset3_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_T2MemRegOffset }, },
    8236             :   { 451 /* ldrb */, ARM::t2LDRBpcrel, Convert__Reg1_2__MemPCRelImm121_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_MemPCRelImm12 }, },
    8237             :   { 451 /* ldrb */, ARM::LDRB_PRE_IMM, Convert__Reg1_1__imm_95_0__MemImm12Offset2_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemImm12Offset, MCK__EXCLAIM_ }, },
    8238             :   { 451 /* ldrb */, ARM::t2LDRB_PRE, Convert__Reg1_1__imm_95_0__MemImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemImm8Offset, MCK__EXCLAIM_ }, },
    8239             :   { 451 /* ldrb */, ARM::LDRB_POST_IMM, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM2OffsetImm2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_AM2OffsetImm }, },
    8240             :   { 451 /* ldrb */, ARM::t2LDRB_POST, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_Imm }, },
    8241             :   { 451 /* ldrb */, ARM::LDRB_POST_REG, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxRegShifted2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_PostIdxRegShifted }, },
    8242             :   { 451 /* ldrb */, ARM::LDRB_PRE_REG, Convert__Reg1_1__imm_95_0__MemRegOffset3_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemRegOffset, MCK__EXCLAIM_ }, },
    8243             :   { 456 /* ldrbt */, ARM::t2LDRBT, Convert__Reg1_1__MemPosImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_MemPosImm8Offset }, },
    8244             :   { 456 /* ldrbt */, ARM::LDRBT_POST, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8245             :   { 456 /* ldrbt */, ARM::LDRBT_POST_IMM, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM2OffsetImm2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_AM2OffsetImm }, },
    8246             :   { 456 /* ldrbt */, ARM::LDRBT_POST_REG, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxRegShifted2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_PostIdxRegShifted }, },
    8247             :   { 462 /* ldrd */, ARM::t2LDRDi8, Convert__Reg1_1__Reg1_2__MemImm8s4Offset2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_MemImm8s4Offset }, },
    8248             :   { 462 /* ldrd */, ARM::LDRD, Convert__Reg1_1__Reg1_2__AddrMode33_3__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_AddrMode3 }, },
    8249             :   { 462 /* ldrd */, ARM::t2LDRD_PRE, Convert__Reg1_1__Reg1_2__imm_95_0__MemImm8s4Offset2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_MemImm8s4Offset, MCK__EXCLAIM_ }, },
    8250             :   { 462 /* ldrd */, ARM::t2LDRD_POST, Convert__Reg1_1__Reg1_2__MemNoOffset1_3__Tie2_4_4__Imm1_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_MemNoOffset, MCK_Imm }, },
    8251             :   { 462 /* ldrd */, ARM::LDRD_PRE, Convert__Reg1_1__Reg1_2__imm_95_0__AddrMode33_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_AddrMode3, MCK__EXCLAIM_ }, },
    8252             :   { 462 /* ldrd */, ARM::LDRD_POST, Convert__Reg1_1__Reg1_2__MemNoOffset1_3__Tie2_4_4__AM3Offset2_4__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_MemNoOffset, MCK_AM3Offset }, },
    8253             :   { 467 /* ldrex */, ARM::t2LDREX, Convert__Reg1_1__MemImm0_1020s4Offset2_2__CondCode2_0, Feature_IsThumb|Feature_HasV8MBaseline, { MCK_CondCode, MCK_rGPR, MCK_MemImm0_1020s4Offset }, },
    8254             :   { 467 /* ldrex */, ARM::LDREX, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8255             :   { 473 /* ldrexb */, ARM::t2LDREXB, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsThumb|Feature_HasV8MBaseline, { MCK_CondCode, MCK_rGPR, MCK_MemNoOffset }, },
    8256             :   { 473 /* ldrexb */, ARM::LDREXB, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8257             :   { 480 /* ldrexd */, ARM::LDREXD, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRPair, MCK_MemNoOffset }, },
    8258             :   { 480 /* ldrexd */, ARM::t2LDREXD, Convert__Reg1_1__Reg1_2__MemNoOffset1_3__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_MemNoOffset }, },
    8259             :   { 487 /* ldrexh */, ARM::t2LDREXH, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsThumb|Feature_HasV8MBaseline, { MCK_CondCode, MCK_rGPR, MCK_MemNoOffset }, },
    8260             :   { 487 /* ldrexh */, ARM::LDREXH, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8261             :   { 494 /* ldrh */, ARM::tLDRHi, Convert__Reg1_1__MemThumbRIs22_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_MemThumbRIs2 }, },
    8262             :   { 494 /* ldrh */, ARM::tLDRHr, Convert__Reg1_1__MemThumbRR2_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_MemThumbRR }, },
    8263             :   { 494 /* ldrh */, ARM::t2LDRHpci, Convert__Reg1_1__Imm1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_Imm }, },
    8264             :   { 494 /* ldrh */, ARM::t2LDRHi12, Convert__Reg1_1__MemUImm12Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_MemUImm12Offset }, },
    8265             :   { 494 /* ldrh */, ARM::t2LDRHs, Convert__Reg1_1__T2MemRegOffset3_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_T2MemRegOffset }, },
    8266             :   { 494 /* ldrh */, ARM::t2LDRHi8, Convert__Reg1_1__MemNegImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_MemNegImm8Offset }, },
    8267             :   { 494 /* ldrh */, ARM::t2LDRHpcrel, Convert__Reg1_1__MemPCRelImm121_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_MemPCRelImm12 }, },
    8268             :   { 494 /* ldrh */, ARM::LDRH, Convert__Reg1_1__AddrMode33_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_AddrMode3 }, },
    8269             :   { 494 /* ldrh */, ARM::t2LDRHpci, Convert__Reg1_2__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_Imm }, },
    8270             :   { 494 /* ldrh */, ARM::t2LDRHi12, Convert__Reg1_2__MemUImm12Offset2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_MemUImm12Offset }, },
    8271             :   { 494 /* ldrh */, ARM::t2LDRHs, Convert__Reg1_2__T2MemRegOffset3_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_T2MemRegOffset }, },
    8272             :   { 494 /* ldrh */, ARM::t2LDRHpcrel, Convert__Reg1_2__MemPCRelImm121_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_MemPCRelImm12 }, },
    8273             :   { 494 /* ldrh */, ARM::LDRH_PRE, Convert__Reg1_1__imm_95_0__AddrMode33_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_AddrMode3, MCK__EXCLAIM_ }, },
    8274             :   { 494 /* ldrh */, ARM::t2LDRH_PRE, Convert__Reg1_1__imm_95_0__MemImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemImm8Offset, MCK__EXCLAIM_ }, },
    8275             :   { 494 /* ldrh */, ARM::LDRH_POST, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM3Offset2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_AM3Offset }, },
    8276             :   { 494 /* ldrh */, ARM::t2LDRH_POST, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_Imm }, },
    8277             :   { 499 /* ldrht */, ARM::t2LDRHT, Convert__Reg1_1__MemPosImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_MemPosImm8Offset }, },
    8278             :   { 499 /* ldrht */, ARM::LDRHTr, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxReg2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_MemNoOffset, MCK_PostIdxReg }, },
    8279             :   { 499 /* ldrht */, ARM::LDRHTi, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxImm81_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_PostIdxImm8 }, },
    8280             :   { 505 /* ldrsb */, ARM::tLDRSB, Convert__Reg1_1__MemThumbRR2_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_MemThumbRR }, },
    8281             :   { 505 /* ldrsb */, ARM::t2LDRSBpci, Convert__Reg1_1__Imm1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_Imm }, },
    8282             :   { 505 /* ldrsb */, ARM::t2LDRSBi12, Convert__Reg1_1__MemUImm12Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_MemUImm12Offset }, },
    8283             :   { 505 /* ldrsb */, ARM::t2LDRSBs, Convert__Reg1_1__T2MemRegOffset3_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_T2MemRegOffset }, },
    8284             :   { 505 /* ldrsb */, ARM::t2LDRSBi8, Convert__Reg1_1__MemNegImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_MemNegImm8Offset }, },
    8285             :   { 505 /* ldrsb */, ARM::t2LDRSBpcrel, Convert__Reg1_1__MemPCRelImm121_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_MemPCRelImm12 }, },
    8286             :   { 505 /* ldrsb */, ARM::LDRSB, Convert__Reg1_1__AddrMode33_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_AddrMode3 }, },
    8287             :   { 505 /* ldrsb */, ARM::t2LDRSBpci, Convert__Reg1_2__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_Imm }, },
    8288             :   { 505 /* ldrsb */, ARM::t2LDRSBi12, Convert__Reg1_2__MemUImm12Offset2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_MemUImm12Offset }, },
    8289             :   { 505 /* ldrsb */, ARM::t2LDRSBs, Convert__Reg1_2__T2MemRegOffset3_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_T2MemRegOffset }, },
    8290             :   { 505 /* ldrsb */, ARM::t2LDRSBpcrel, Convert__Reg1_2__MemPCRelImm121_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_MemPCRelImm12 }, },
    8291             :   { 505 /* ldrsb */, ARM::LDRSB_PRE, Convert__Reg1_1__imm_95_0__AddrMode33_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_AddrMode3, MCK__EXCLAIM_ }, },
    8292             :   { 505 /* ldrsb */, ARM::t2LDRSB_PRE, Convert__Reg1_1__imm_95_0__MemImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemImm8Offset, MCK__EXCLAIM_ }, },
    8293             :   { 505 /* ldrsb */, ARM::LDRSB_POST, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM3Offset2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_AM3Offset }, },
    8294             :   { 505 /* ldrsb */, ARM::t2LDRSB_POST, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_Imm }, },
    8295             :   { 511 /* ldrsbt */, ARM::t2LDRSBT, Convert__Reg1_1__MemPosImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_MemPosImm8Offset }, },
    8296             :   { 511 /* ldrsbt */, ARM::LDRSBTr, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxReg2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_MemNoOffset, MCK_PostIdxReg }, },
    8297             :   { 511 /* ldrsbt */, ARM::LDRSBTi, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxImm81_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_PostIdxImm8 }, },
    8298             :   { 518 /* ldrsh */, ARM::tLDRSH, Convert__Reg1_1__MemThumbRR2_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_tGPR, MCK_MemThumbRR }, },
    8299             :   { 518 /* ldrsh */, ARM::t2LDRSHpci, Convert__Reg1_1__Imm1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_Imm }, },
    8300             :   { 518 /* ldrsh */, ARM::t2LDRSHi12, Convert__Reg1_1__MemUImm12Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_MemUImm12Offset }, },
    8301             :   { 518 /* ldrsh */, ARM::t2LDRSHs, Convert__Reg1_1__T2MemRegOffset3_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_T2MemRegOffset }, },
    8302             :   { 518 /* ldrsh */, ARM::t2LDRSHi8, Convert__Reg1_1__MemNegImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_MemNegImm8Offset }, },
    8303             :   { 518 /* ldrsh */, ARM::t2LDRSHpcrel, Convert__Reg1_1__MemPCRelImm121_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_MemPCRelImm12 }, },
    8304             :   { 518 /* ldrsh */, ARM::LDRSH, Convert__Reg1_1__AddrMode33_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_AddrMode3 }, },
    8305             :   { 518 /* ldrsh */, ARM::t2LDRSHpci, Convert__Reg1_2__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_Imm }, },
    8306             :   { 518 /* ldrsh */, ARM::t2LDRSHi12, Convert__Reg1_2__MemUImm12Offset2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_MemUImm12Offset }, },
    8307             :   { 518 /* ldrsh */, ARM::t2LDRSHs, Convert__Reg1_2__T2MemRegOffset3_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_T2MemRegOffset }, },
    8308             :   { 518 /* ldrsh */, ARM::t2LDRSHpcrel, Convert__Reg1_2__MemPCRelImm121_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_MemPCRelImm12 }, },
    8309             :   { 518 /* ldrsh */, ARM::LDRSH_PRE, Convert__Reg1_1__imm_95_0__AddrMode33_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_AddrMode3, MCK__EXCLAIM_ }, },
    8310             :   { 518 /* ldrsh */, ARM::t2LDRSH_PRE, Convert__Reg1_1__imm_95_0__MemImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemImm8Offset, MCK__EXCLAIM_ }, },
    8311             :   { 518 /* ldrsh */, ARM::LDRSH_POST, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM3Offset2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_AM3Offset }, },
    8312             :   { 518 /* ldrsh */, ARM::t2LDRSH_POST, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__Imm1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_Imm }, },
    8313             :   { 524 /* ldrsht */, ARM::t2LDRSHT, Convert__Reg1_1__MemPosImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_MemPosImm8Offset }, },
    8314             :   { 524 /* ldrsht */, ARM::LDRSHTr, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxReg2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_MemNoOffset, MCK_PostIdxReg }, },
    8315             :   { 524 /* ldrsht */, ARM::LDRSHTi, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxImm81_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_PostIdxImm8 }, },
    8316             :   { 531 /* ldrt */, ARM::t2LDRT, Convert__Reg1_1__MemPosImm8Offset2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_MemPosImm8Offset }, },
    8317             :   { 531 /* ldrt */, ARM::LDRT_POST, Convert__Reg1_1__MemNoOffset1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset }, },
    8318             :   { 531 /* ldrt */, ARM::LDRT_POST_IMM, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__AM2OffsetImm2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_AM2OffsetImm }, },
    8319             :   { 531 /* ldrt */, ARM::LDRT_POST_REG, Convert__Reg1_1__MemNoOffset1_2__Tie1_3_3__PostIdxRegShifted2_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPR, MCK_MemNoOffset, MCK_PostIdxRegShifted }, },
    8320             :   { 536 /* lsl */, ARM::tLSLrr, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8321             :   { 536 /* lsl */, ARM::tLSLri, Convert__Reg1_2__CCOut1_0__Reg1_2__Imm0_311_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_Imm0_31 }, },
    8322             :   { 536 /* lsl */, ARM::t2LSLrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8323             :   { 536 /* lsl */, ARM::t2LSLri, Convert__Reg1_2__Reg1_2__Imm1_311_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_Imm1_31 }, },
    8324             :   { 536 /* lsl */, ARM::LSLr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc }, },
    8325             :   { 536 /* lsl */, ARM::LSLi, Convert__Reg1_2__Reg1_2__Imm0_311_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_Imm0_31 }, },
    8326             :   { 536 /* lsl */, ARM::t2LSLrr, Convert__Reg1_3__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    8327             :   { 536 /* lsl */, ARM::t2LSLri, Convert__Reg1_3__Reg1_3__Imm1_311_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_Imm1_31 }, },
    8328             :   { 536 /* lsl */, ARM::tLSLri, Convert__Reg1_2__CCOut1_0__Reg1_3__Imm0_311_4__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR, MCK_Imm0_31 }, },
    8329             :   { 536 /* lsl */, ARM::t2LSLrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8330             :   { 536 /* lsl */, ARM::t2LSLri, Convert__Reg1_2__Reg1_3__Imm1_311_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_Imm1_31 }, },
    8331             :   { 536 /* lsl */, ARM::t2MOVr, Convert__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK__35_0 }, },
    8332             :   { 536 /* lsl */, ARM::LSLr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8333             :   { 536 /* lsl */, ARM::LSLi, Convert__Reg1_2__Reg1_3__Imm0_311_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_Imm0_31 }, },
    8334             :   { 536 /* lsl */, ARM::t2LSLrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8335             :   { 536 /* lsl */, ARM::t2LSLri, Convert__Reg1_3__Reg1_4__Imm1_311_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_Imm1_31 }, },
    8336             :   { 536 /* lsl */, ARM::t2MOVr, Convert__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_GPRnopc, MCK__35_0 }, },
    8337             :   { 540 /* lsr */, ARM::tLSRrr, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8338             :   { 540 /* lsr */, ARM::tLSRri, Convert__Reg1_2__CCOut1_0__Reg1_2__ImmThumbSR1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_ImmThumbSR }, },
    8339             :   { 540 /* lsr */, ARM::t2LSRrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8340             :   { 540 /* lsr */, ARM::t2LSRri, Convert__Reg1_2__Reg1_2__ImmThumbSR1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_ImmThumbSR }, },
    8341             :   { 540 /* lsr */, ARM::LSRr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc }, },
    8342             :   { 540 /* lsr */, ARM::LSRi, Convert__Reg1_2__Reg1_2__Imm0_321_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_Imm0_32 }, },
    8343             :   { 540 /* lsr */, ARM::t2LSRrr, Convert__Reg1_3__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    8344             :   { 540 /* lsr */, ARM::t2LSRri, Convert__Reg1_3__Reg1_3__ImmThumbSR1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_ImmThumbSR }, },
    8345             :   { 540 /* lsr */, ARM::tLSRri, Convert__Reg1_2__CCOut1_0__Reg1_3__ImmThumbSR1_4__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR, MCK_ImmThumbSR }, },
    8346             :   { 540 /* lsr */, ARM::t2LSRrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8347             :   { 540 /* lsr */, ARM::t2LSRri, Convert__Reg1_2__Reg1_3__ImmThumbSR1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_ImmThumbSR }, },
    8348             :   { 540 /* lsr */, ARM::LSRr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8349             :   { 540 /* lsr */, ARM::LSRi, Convert__Reg1_2__Reg1_3__Imm0_321_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_Imm0_32 }, },
    8350             :   { 540 /* lsr */, ARM::t2LSRrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8351             :   { 540 /* lsr */, ARM::t2LSRri, Convert__Reg1_3__Reg1_4__ImmThumbSR1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_ImmThumbSR }, },
    8352             :   { 544 /* mcr */, ARM::MCR, Convert__CoprocNum1_1__Imm0_71_2__Reg1_3__CoprocReg1_4__CoprocReg1_5__imm_95_0__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPR, MCK_CoprocReg, MCK_CoprocReg }, },
    8353             :   { 544 /* mcr */, ARM::t2MCR, Convert__CoprocNum1_1__Imm0_71_2__Reg1_3__CoprocReg1_4__CoprocReg1_5__imm_95_0__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPR, MCK_CoprocReg, MCK_CoprocReg }, },
    8354             :   { 544 /* mcr */, ARM::MCR, Convert__CoprocNum1_1__Imm0_71_2__Reg1_3__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPR, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    8355             :   { 544 /* mcr */, ARM::t2MCR, Convert__CoprocNum1_1__Imm0_71_2__Reg1_3__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPR, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    8356             :   { 548 /* mcr2 */, ARM::MCR2, Convert__CoprocNum1_0__Imm0_71_1__Reg1_2__CoprocReg1_3__CoprocReg1_4__imm_95_0, Feature_IsARM, { MCK_CoprocNum, MCK_Imm0_7, MCK_GPR, MCK_CoprocReg, MCK_CoprocReg }, },
    8357             :   { 548 /* mcr2 */, ARM::t2MCR2, Convert__CoprocNum1_1__Imm0_71_2__Reg1_3__CoprocReg1_4__CoprocReg1_5__imm_95_0__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPR, MCK_CoprocReg, MCK_CoprocReg }, },
    8358             :   { 548 /* mcr2 */, ARM::MCR2, Convert__CoprocNum1_0__Imm0_71_1__Reg1_2__CoprocReg1_3__CoprocReg1_4__Imm0_71_5, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_Imm0_7, MCK_GPR, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    8359             :   { 548 /* mcr2 */, ARM::t2MCR2, Convert__CoprocNum1_1__Imm0_71_2__Reg1_3__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0, Feature_IsThumb2|Feature_PreV8, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPR, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    8360             :   { 553 /* mcrr */, ARM::MCRR, Convert__CoprocNum1_1__Imm0_151_2__Reg1_3__Reg1_4__CoprocReg1_5__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_15, MCK_GPRnopc, MCK_GPRnopc, MCK_CoprocReg }, },
    8361             :   { 553 /* mcrr */, ARM::t2MCRR, Convert__CoprocNum1_1__Imm0_151_2__Reg1_3__Reg1_4__CoprocReg1_5__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_15, MCK_GPR, MCK_GPR, MCK_CoprocReg }, },
    8362             :   { 558 /* mcrr2 */, ARM::MCRR2, Convert__CoprocNum1_0__Imm0_151_1__Reg1_2__Reg1_3__CoprocReg1_4, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_Imm0_15, MCK_GPRnopc, MCK_GPRnopc, MCK_CoprocReg }, },
    8363             :   { 558 /* mcrr2 */, ARM::t2MCRR2, Convert__CoprocNum1_1__Imm0_151_2__Reg1_3__Reg1_4__CoprocReg1_5__CondCode2_0, Feature_IsThumb2|Feature_PreV8, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_15, MCK_GPR, MCK_GPR, MCK_CoprocReg }, },
    8364             :   { 564 /* mla */, ARM::t2MLA, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8365             :   { 564 /* mla */, ARM::MLA, Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_HasV6, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8366             :   { 564 /* mla */, ARM::MLA, Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8367             :   { 568 /* mls */, ARM::t2MLS, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8368             :   { 568 /* mls */, ARM::MLS, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV6T2, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8369             :   { 572 /* mov */, ARM::MOVPCLR, Convert__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_PC, MCK_LR }, },
    8370             :   { 572 /* mov */, ARM::t2MOVi16, Convert__Reg1_1__Imm256_65535Expr1_2__CondCode2_0, Feature_IsThumb|Feature_HasV8MBaseline, { MCK_CondCode, MCK_rGPR, MCK_Imm256_65535Expr }, },
    8371             :   { 572 /* mov */, ARM::t2MOVsi, Convert__Reg1_1__RegShiftedImm2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_RegShiftedImm }, },
    8372             :   { 572 /* mov */, ARM::t2MOVsr, Convert__Reg1_1__RegShiftedReg3_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_RegShiftedReg }, },
    8373             :   { 572 /* mov */, ARM::t2MOVi, Convert__Reg1_1__T2SOImm1_2__CondCode2_0__reg0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_T2SOImm }, },
    8374             :   { 572 /* mov */, ARM::t2MVNi, Convert__Reg1_1__T2SOImmNot1_2__CondCode2_0__reg0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CondCode, MCK_rGPR, MCK_T2SOImmNot }, },
    8375             :   { 572 /* mov */, ARM::tMOVr, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb, { MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8376             :   { 572 /* mov */, ARM::MOVi16, Convert__Reg1_1__Imm0_65535Expr1_2__CondCode2_0, Feature_IsARM|Feature_HasV6T2, { MCK_CondCode, MCK_GPR, MCK_Imm0_65535Expr }, },
    8377             :   { 572 /* mov */, ARM::MOVr_TC, Convert__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_tcGPR, MCK_tcGPR }, },
    8378             :   { 572 /* mov */, ARM::tMOVi8, Convert__Reg1_2__CCOut1_0__Imm0_2551_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_Imm0_255 }, },
    8379             :   { 572 /* mov */, ARM::MVNi, Convert__Reg1_2__ModImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_ModImmNot }, },
    8380             :   { 572 /* mov */, ARM::MOVsr, Convert__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_RegShiftedReg }, },
    8381             :   { 572 /* mov */, ARM::MOVr, Convert__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8382             :   { 572 /* mov */, ARM::MOVi, Convert__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    8383             :   { 572 /* mov */, ARM::MOVsi, Convert__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    8384             :   { 572 /* mov */, ARM::t2MOVsi, Convert__Reg1_2__RegShiftedImm2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_RegShiftedImm }, },
    8385             :   { 572 /* mov */, ARM::t2MOVsr, Convert__Reg1_2__RegShiftedReg3_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_RegShiftedReg }, },
    8386             :   { 572 /* mov */, ARM::t2MOVi, Convert__Reg1_2__T2SOImm1_3__CondCode2_0__reg0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_T2SOImm }, },
    8387             :   { 572 /* mov */, ARM::t2MOVr, Convert__Reg1_2__Reg1_3__CondCode2_0__reg0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_GPRnopc }, },
    8388             :   { 572 /* mov */, ARM::t2MOVi, Convert__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_T2SOImm }, },
    8389             :   { 572 /* mov */, ARM::t2MOVr, Convert__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_GPRnopc }, },
    8390             :   { 576 /* movs */, ARM::tMOVSr, Convert__Reg1_0__Reg1_1, Feature_IsThumb, { MCK_tGPR, MCK_tGPR }, },
    8391             :   { 576 /* movs */, ARM::tMOVi8, Convert__Reg1_0__regCPSR__Imm0_2551_1__imm_95_14__imm_95_0, Feature_IsThumb, { MCK_tGPR, MCK_Imm0_255 }, },
    8392             :   { 576 /* movs */, ARM::t2MOVSsi, Convert__Reg1_1__RegShiftedImm2_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_RegShiftedImm }, },
    8393             :   { 576 /* movs */, ARM::t2MOVSsr, Convert__Reg1_1__RegShiftedReg3_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_RegShiftedReg }, },
    8394             :   { 576 /* movs */, ARM::t2MOVi, Convert__Reg1_1__T2SOImm1_2__CondCode2_0__regCPSR, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_T2SOImm }, },
    8395             :   { 576 /* movs */, ARM::t2MOVr, Convert__Reg1_1__Reg1_2__CondCode2_0__regCPSR, Feature_IsThumb2, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc }, },
    8396             :   { 576 /* movs */, ARM::t2MOVSsi, Convert__Reg1_2__RegShiftedImm2_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_RegShiftedImm }, },
    8397             :   { 576 /* movs */, ARM::t2MOVSsr, Convert__Reg1_2__RegShiftedReg3_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_RegShiftedReg }, },
    8398             :   { 576 /* movs */, ARM::t2MOVi, Convert__Reg1_2__T2SOImm1_3__CondCode2_0__regCPSR, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_T2SOImm }, },
    8399             :   { 576 /* movs */, ARM::t2MOVr, Convert__Reg1_2__Reg1_3__CondCode2_0__regCPSR, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_GPRnopc, MCK_GPRnopc }, },
    8400             :   { 581 /* movt */, ARM::t2MOVTi16, Convert__Reg1_1__Tie0_1_1__Imm0_65535Expr1_2__CondCode2_0, Feature_IsThumb|Feature_HasV8MBaseline, { MCK_CondCode, MCK_rGPR, MCK_Imm0_65535Expr }, },
    8401             :   { 581 /* movt */, ARM::MOVTi16, Convert__Reg1_1__Tie0_1_1__Imm0_65535Expr1_2__CondCode2_0, Feature_IsARM|Feature_HasV6T2, { MCK_CondCode, MCK_GPRnopc, MCK_Imm0_65535Expr }, },
    8402             :   { 586 /* movw */, ARM::t2MOVi16, Convert__Reg1_1__Imm0_65535Expr1_2__CondCode2_0, Feature_IsThumb|Feature_HasV8MBaseline, { MCK_CondCode, MCK_rGPR, MCK_Imm0_65535Expr }, },
    8403             :   { 586 /* movw */, ARM::MOVi16, Convert__Reg1_1__Imm0_65535Expr1_2__CondCode2_0, Feature_IsARM|Feature_HasV6T2, { MCK_CondCode, MCK_GPR, MCK_Imm0_65535Expr }, },
    8404             :   { 591 /* mrc */, ARM::MRC, Convert__Reg1_3__CoprocNum1_1__Imm0_71_2__CoprocReg1_4__CoprocReg1_5__imm_95_0__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPRwithAPSR, MCK_CoprocReg, MCK_CoprocReg }, },
    8405             :   { 591 /* mrc */, ARM::t2MRC, Convert__Reg1_3__CoprocNum1_1__Imm0_71_2__CoprocReg1_4__CoprocReg1_5__imm_95_0__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPRwithAPSR, MCK_CoprocReg, MCK_CoprocReg }, },
    8406             :   { 591 /* mrc */, ARM::MRC, Convert__Reg1_3__CoprocNum1_1__Imm0_71_2__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPRwithAPSR, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    8407             :   { 591 /* mrc */, ARM::t2MRC, Convert__Reg1_3__CoprocNum1_1__Imm0_71_2__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPRwithAPSR, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    8408             :   { 595 /* mrc2 */, ARM::MRC2, Convert__Reg1_2__CoprocNum1_0__Imm0_71_1__CoprocReg1_3__CoprocReg1_4__imm_95_0, Feature_IsARM, { MCK_CoprocNum, MCK_Imm0_7, MCK_GPRwithAPSR, MCK_CoprocReg, MCK_CoprocReg }, },
    8409             :   { 595 /* mrc2 */, ARM::t2MRC2, Convert__Reg1_3__CoprocNum1_1__Imm0_71_2__CoprocReg1_4__CoprocReg1_5__imm_95_0__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPRwithAPSR, MCK_CoprocReg, MCK_CoprocReg }, },
    8410             :   { 595 /* mrc2 */, ARM::MRC2, Convert__Reg1_2__CoprocNum1_0__Imm0_71_1__CoprocReg1_3__CoprocReg1_4__Imm0_71_5, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_Imm0_7, MCK_GPRwithAPSR, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    8411             :   { 595 /* mrc2 */, ARM::t2MRC2, Convert__Reg1_3__CoprocNum1_1__Imm0_71_2__CoprocReg1_4__CoprocReg1_5__Imm0_71_6__CondCode2_0, Feature_IsThumb2|Feature_PreV8, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_7, MCK_GPRwithAPSR, MCK_CoprocReg, MCK_CoprocReg, MCK_Imm0_7 }, },
    8412             :   { 600 /* mrrc */, ARM::MRRC, Convert__Reg1_3__Reg1_4__CoprocNum1_1__Imm0_151_2__CoprocReg1_5__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_15, MCK_GPRnopc, MCK_GPRnopc, MCK_CoprocReg }, },
    8413             :   { 600 /* mrrc */, ARM::t2MRRC, Convert__Reg1_3__Reg1_4__CoprocNum1_1__Imm0_151_2__CoprocReg1_5__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_15, MCK_GPR, MCK_GPR, MCK_CoprocReg }, },
    8414             :   { 605 /* mrrc2 */, ARM::MRRC2, Convert__Reg1_2__Reg1_3__CoprocNum1_0__Imm0_151_1__CoprocReg1_4, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_Imm0_15, MCK_GPRnopc, MCK_GPRnopc, MCK_CoprocReg }, },
    8415             :   { 605 /* mrrc2 */, ARM::t2MRRC2, Convert__Reg1_3__Reg1_4__CoprocNum1_1__Imm0_151_2__CoprocReg1_5__CondCode2_0, Feature_IsThumb2|Feature_PreV8, { MCK_CondCode, MCK_CoprocNum, MCK_Imm0_15, MCK_GPR, MCK_GPR, MCK_CoprocReg }, },
    8416             :   { 611 /* mrs */, ARM::t2MRSbanked, Convert__Reg1_1__BankedReg1_2__CondCode2_0, Feature_IsThumb|Feature_HasVirtualization, { MCK_CondCode, MCK_rGPR, MCK_BankedReg }, },
    8417             :   { 611 /* mrs */, ARM::t2MRS_M, Convert__Reg1_1__MSRMask1_2__CondCode2_0, Feature_IsThumb|Feature_IsMClass, { MCK_CondCode, MCK_rGPR, MCK_MSRMask }, },
    8418             :   { 611 /* mrs */, ARM::MRS, Convert__Reg1_1__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_APSR }, },
    8419             :   { 611 /* mrs */, ARM::MRS, Convert__Reg1_1__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_CCR }, },
    8420             :   { 611 /* mrs */, ARM::MRSsys, Convert__Reg1_1__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_SPSR }, },
    8421             :   { 611 /* mrs */, ARM::MRSbanked, Convert__Reg1_1__BankedReg1_2__CondCode2_0, Feature_IsARM|Feature_HasVirtualization, { MCK_CondCode, MCK_GPRnopc, MCK_BankedReg }, },
    8422             :   { 611 /* mrs */, ARM::t2MRS_AR, Convert__Reg1_1__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPR, MCK_APSR }, },
    8423             :   { 611 /* mrs */, ARM::t2MRS_AR, Convert__Reg1_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_GPR, MCK_CCR }, },
    8424             :   { 611 /* mrs */, ARM::t2MRSsys_AR, Convert__Reg1_1__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPR, MCK_SPSR }, },
    8425             :   { 615 /* msr */, ARM::t2MSRbanked, Convert__BankedReg1_1__Reg1_2__CondCode2_0, Feature_IsThumb|Feature_HasVirtualization, { MCK_CondCode, MCK_BankedReg, MCK_rGPR }, },
    8426             :   { 615 /* msr */, ARM::MSRbanked, Convert__BankedReg1_1__Reg1_2__CondCode2_0, Feature_IsARM|Feature_HasVirtualization, { MCK_CondCode, MCK_BankedReg, MCK_GPRnopc }, },
    8427             :   { 615 /* msr */, ARM::t2MSR_AR, Convert__MSRMask1_1__Reg1_2__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_MSRMask, MCK_rGPR }, },
    8428             :   { 615 /* msr */, ARM::t2MSR_M, Convert__MSRMask1_1__Reg1_2__CondCode2_0, Feature_IsThumb|Feature_IsMClass, { MCK_CondCode, MCK_MSRMask, MCK_rGPR }, },
    8429             :   { 615 /* msr */, ARM::MSR, Convert__MSRMask1_1__Reg1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_MSRMask, MCK_GPR }, },
    8430             :   { 615 /* msr */, ARM::MSRi, Convert__MSRMask1_1__ModImm1_2__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_MSRMask, MCK_ModImm }, },
    8431             :   { 619 /* mul */, ARM::t2MUL, Convert__Reg1_1__Reg1_2__Reg1_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8432             :   { 619 /* mul */, ARM::tMUL, ConvertCustom_cvtThumbMultiply, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8433             :   { 619 /* mul */, ARM::MUL, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_HasV6, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc }, },
    8434             :   { 619 /* mul */, ARM::t2MUL, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8435             :   { 619 /* mul */, ARM::tMUL, ConvertCustom_cvtThumbMultiply, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR, MCK_tGPR }, },
    8436             :   { 619 /* mul */, ARM::MUL, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_HasV6, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8437             :   { 619 /* mul */, ARM::MUL, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8438             :   { 623 /* mvn */, ARM::tMVN, Convert__Reg1_2__CCOut1_0__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8439             :   { 623 /* mvn */, ARM::t2MVNr, Convert__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8440             :   { 623 /* mvn */, ARM::MOVi, Convert__Reg1_2__ModImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_ModImmNot }, },
    8441             :   { 623 /* mvn */, ARM::t2MVNs, Convert__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_RegShiftedImm }, },
    8442             :   { 623 /* mvn */, ARM::t2MVNi, Convert__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImm }, },
    8443             :   { 623 /* mvn */, ARM::t2MOVi, Convert__Reg1_2__T2SOImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImmNot }, },
    8444             :   { 623 /* mvn */, ARM::MVNsr, Convert__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_RegShiftedReg }, },
    8445             :   { 623 /* mvn */, ARM::MVNr, Convert__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8446             :   { 623 /* mvn */, ARM::MVNi, Convert__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    8447             :   { 623 /* mvn */, ARM::MVNsi, Convert__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    8448             :   { 623 /* mvn */, ARM::t2MVNr, Convert__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    8449             :   { 623 /* mvn */, ARM::t2MVNs, Convert__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_RegShiftedImm }, },
    8450             :   { 623 /* mvn */, ARM::t2MVNi, Convert__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_T2SOImm }, },
    8451             :   { 627 /* neg */, ARM::tRSB, Convert__Reg1_2__CCOut1_0__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8452             :   { 627 /* neg */, ARM::t2RSBri, Convert__Reg1_2__Reg1_3__imm_95_0__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8453             :   { 627 /* neg */, ARM::RSBri, Convert__Reg1_2__Reg1_3__imm_95_0__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8454             :   { 631 /* nop */, ARM::tMOVr, Convert__regR8__regR8__imm_95_14__imm_95_0, Feature_IsThumb, {  }, },
    8455             :   { 631 /* nop */, ARM::HINT, Convert__imm_95_0__CondCode2_0, Feature_IsARM|Feature_HasV6K, { MCK_CondCode }, },
    8456             :   { 631 /* nop */, ARM::tHINT, Convert__imm_95_0__CondCode2_0, Feature_IsThumb|Feature_HasV6M, { MCK_CondCode }, },
    8457             :   { 631 /* nop */, ARM::MOVr, Convert__regR0__regR0__CondCode2_0__reg0, Feature_IsARM, { MCK_CondCode }, },
    8458             :   { 631 /* nop */, ARM::t2HINT, Convert__imm_95_0__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w }, },
    8459             :   { 635 /* orn */, ARM::t2ORNrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8460             :   { 635 /* orn */, ARM::t2ORNrs, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_RegShiftedImm }, },
    8461             :   { 635 /* orn */, ARM::t2ORNri, Convert__Reg1_2__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImm }, },
    8462             :   { 635 /* orn */, ARM::t2ORRri, Convert__Reg1_2__Reg1_2__T2SOImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImmNot }, },
    8463             :   { 635 /* orn */, ARM::t2ORNrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8464             :   { 635 /* orn */, ARM::t2ORNrs, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    8465             :   { 635 /* orn */, ARM::t2ORNri, Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    8466             :   { 635 /* orn */, ARM::t2ORRri, Convert__Reg1_2__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImmNot }, },
    8467             :   { 639 /* orr */, ARM::tORR, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8468             :   { 639 /* orr */, ARM::t2ORRrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8469             :   { 639 /* orr */, ARM::t2ORRrs, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_RegShiftedImm }, },
    8470             :   { 639 /* orr */, ARM::t2ORRri, Convert__Reg1_2__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImm }, },
    8471             :   { 639 /* orr */, ARM::t2ORNri, Convert__Reg1_2__Reg1_2__T2SOImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImmNot }, },
    8472             :   { 639 /* orr */, ARM::ORRrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8473             :   { 639 /* orr */, ARM::ORRri, Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    8474             :   { 639 /* orr */, ARM::ORRrsi, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    8475             :   { 639 /* orr */, ARM::ORRrsr, Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedReg }, },
    8476             :   { 639 /* orr */, ARM::t2ORRrr, Convert__Reg1_3__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    8477             :   { 639 /* orr */, ARM::t2ORRrs, Convert__Reg1_3__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_RegShiftedImm }, },
    8478             :   { 639 /* orr */, ARM::t2ORRri, Convert__Reg1_3__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_T2SOImm }, },
    8479             :   { 639 /* orr */, ARM::t2ORRrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8480             :   { 639 /* orr */, ARM::t2ORRrs, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    8481             :   { 639 /* orr */, ARM::t2ORRri, Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    8482             :   { 639 /* orr */, ARM::t2ORNri, Convert__Reg1_2__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImmNot }, },
    8483             :   { 639 /* orr */, ARM::ORRrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8484             :   { 639 /* orr */, ARM::ORRri, Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImm }, },
    8485             :   { 639 /* orr */, ARM::ORRrsi, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedImm }, },
    8486             :   { 639 /* orr */, ARM::ORRrsr, Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedReg }, },
    8487             :   { 639 /* orr */, ARM::t2ORRrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8488             :   { 639 /* orr */, ARM::t2ORRrs, Convert__Reg1_3__Reg1_4__RegShiftedImm2_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    8489             :   { 639 /* orr */, ARM::t2ORRri, Convert__Reg1_3__Reg1_4__T2SOImm1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    8490             :   { 643 /* pkhbt */, ARM::t2PKHBT, Convert__Reg1_1__Reg1_2__Reg1_3__imm_95_0__CondCode2_0, Feature_HasDSP|Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8491             :   { 643 /* pkhbt */, ARM::PKHBT, Convert__Reg1_1__Reg1_2__Reg1_3__imm_95_0__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8492             :   { 643 /* pkhbt */, ARM::t2PKHBT, Convert__Reg1_1__Reg1_2__Reg1_3__PKHLSLImm1_4__CondCode2_0, Feature_HasDSP|Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_PKHLSLImm }, },
    8493             :   { 643 /* pkhbt */, ARM::PKHBT, Convert__Reg1_1__Reg1_2__Reg1_3__PKHLSLImm1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_PKHLSLImm }, },
    8494             :   { 649 /* pkhtb */, ARM::t2PKHBT, Convert__Reg1_1__Reg1_3__Reg1_2__imm_95_0__CondCode2_0, Feature_HasDSP|Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8495             :   { 649 /* pkhtb */, ARM::PKHBT, Convert__Reg1_1__Reg1_3__Reg1_2__imm_95_0__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8496             :   { 649 /* pkhtb */, ARM::t2PKHTB, Convert__Reg1_1__Reg1_2__Reg1_3__PKHASRImm1_4__CondCode2_0, Feature_HasDSP|Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_PKHASRImm }, },
    8497             :   { 649 /* pkhtb */, ARM::PKHTB, Convert__Reg1_1__Reg1_2__Reg1_3__PKHASRImm1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_PKHASRImm }, },
    8498             :   { 655 /* pld */, ARM::PLDi12, Convert__MemImm12Offset2_0, Feature_IsARM, { MCK_MemImm12Offset }, },
    8499             :   { 655 /* pld */, ARM::PLDrs, Convert__MemRegOffset3_0, Feature_IsARM, { MCK_MemRegOffset }, },
    8500             :   { 655 /* pld */, ARM::t2PLDpci, Convert__Imm1_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_Imm }, },
    8501             :   { 655 /* pld */, ARM::t2PLDi8, Convert__MemNegImm8Offset2_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_MemNegImm8Offset }, },
    8502             :   { 655 /* pld */, ARM::t2PLDi12, Convert__MemUImm12Offset2_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_MemUImm12Offset }, },
    8503             :   { 655 /* pld */, ARM::t2PLDs, Convert__T2MemRegOffset3_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_T2MemRegOffset }, },
    8504             :   { 655 /* pld */, ARM::t2PLDpci, Convert__MemPCRelImm121_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_MemPCRelImm12 }, },
    8505             :   { 659 /* pldw */, ARM::PLDWi12, Convert__MemImm12Offset2_0, Feature_IsARM|Feature_HasV7|Feature_HasMP, { MCK_MemImm12Offset }, },
    8506             :   { 659 /* pldw */, ARM::PLDWrs, Convert__MemRegOffset3_0, Feature_IsARM|Feature_HasV7|Feature_HasMP, { MCK_MemRegOffset }, },
    8507             :   { 659 /* pldw */, ARM::t2PLDWi8, Convert__MemNegImm8Offset2_1__CondCode2_0, Feature_IsThumb2|Feature_HasV7|Feature_HasMP, { MCK_CondCode, MCK_MemNegImm8Offset }, },
    8508             :   { 659 /* pldw */, ARM::t2PLDWi12, Convert__MemUImm12Offset2_1__CondCode2_0, Feature_IsThumb2|Feature_HasV7|Feature_HasMP, { MCK_CondCode, MCK_MemUImm12Offset }, },
    8509             :   { 659 /* pldw */, ARM::t2PLDWs, Convert__T2MemRegOffset3_1__CondCode2_0, Feature_IsThumb2|Feature_HasV7|Feature_HasMP, { MCK_CondCode, MCK_T2MemRegOffset }, },
    8510             :   { 664 /* pli */, ARM::PLIi12, Convert__MemImm12Offset2_0, Feature_IsARM|Feature_HasV7, { MCK_MemImm12Offset }, },
    8511             :   { 664 /* pli */, ARM::PLIrs, Convert__MemRegOffset3_0, Feature_IsARM|Feature_HasV7, { MCK_MemRegOffset }, },
    8512             :   { 664 /* pli */, ARM::t2PLIpci, Convert__Imm1_1__CondCode2_0, Feature_IsThumb2|Feature_HasV7, { MCK_CondCode, MCK_Imm }, },
    8513             :   { 664 /* pli */, ARM::t2PLIi8, Convert__MemNegImm8Offset2_1__CondCode2_0, Feature_IsThumb2|Feature_HasV7, { MCK_CondCode, MCK_MemNegImm8Offset }, },
    8514             :   { 664 /* pli */, ARM::t2PLIi12, Convert__MemUImm12Offset2_1__CondCode2_0, Feature_IsThumb2|Feature_HasV7, { MCK_CondCode, MCK_MemUImm12Offset }, },
    8515             :   { 664 /* pli */, ARM::t2PLIs, Convert__T2MemRegOffset3_1__CondCode2_0, Feature_IsThumb2|Feature_HasV7, { MCK_CondCode, MCK_T2MemRegOffset }, },
    8516             :   { 664 /* pli */, ARM::t2PLIpci, Convert__MemPCRelImm121_1__CondCode2_0, Feature_IsThumb2|Feature_HasV7, { MCK_CondCode, MCK_MemPCRelImm12 }, },
    8517             :   { 668 /* pop */, ARM::tPOP, Convert__CondCode2_0__RegList1_1, Feature_IsThumb, { MCK_CondCode, MCK_RegList }, },
    8518             :   { 668 /* pop */, ARM::t2LDMIA_UPD, Convert__regSP__Tie0_1_1__CondCode2_0__RegList1_1, Feature_IsThumb2, { MCK_CondCode, MCK_RegList }, },
    8519             :   { 668 /* pop */, ARM::LDMIA_UPD, Convert__regSP__Tie0_1_1__CondCode2_0__RegList1_1, Feature_IsARM, { MCK_CondCode, MCK_RegList }, },
    8520             :   { 668 /* pop */, ARM::t2LDMIA_UPD, Convert__regSP__Tie0_1_1__CondCode2_0__RegList1_2, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_RegList }, },
    8521             :   { 672 /* push */, ARM::tPUSH, Convert__CondCode2_0__RegList1_1, Feature_IsThumb, { MCK_CondCode, MCK_RegList }, },
    8522             :   { 672 /* push */, ARM::t2STMDB_UPD, Convert__regSP__Tie0_1_1__CondCode2_0__RegList1_1, Feature_IsThumb2, { MCK_CondCode, MCK_RegList }, },
    8523             :   { 672 /* push */, ARM::STMDB_UPD, Convert__regSP__Tie0_1_1__CondCode2_0__RegList1_1, Feature_IsARM, { MCK_CondCode, MCK_RegList }, },
    8524             :   { 672 /* push */, ARM::t2STMDB_UPD, Convert__regSP__Tie0_1_1__CondCode2_0__RegList1_2, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_RegList }, },
    8525             :   { 677 /* qadd */, ARM::t2QADD, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8526             :   { 677 /* qadd */, ARM::QADD, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8527             :   { 682 /* qadd16 */, ARM::t2QADD16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8528             :   { 682 /* qadd16 */, ARM::QADD16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8529             :   { 689 /* qadd8 */, ARM::t2QADD8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8530             :   { 689 /* qadd8 */, ARM::QADD8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8531             :   { 695 /* qasx */, ARM::t2QASX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8532             :   { 695 /* qasx */, ARM::QASX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8533             :   { 700 /* qdadd */, ARM::t2QDADD, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8534             :   { 700 /* qdadd */, ARM::QDADD, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8535             :   { 706 /* qdsub */, ARM::t2QDSUB, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8536             :   { 706 /* qdsub */, ARM::QDSUB, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8537             :   { 712 /* qsax */, ARM::t2QSAX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8538             :   { 712 /* qsax */, ARM::QSAX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8539             :   { 717 /* qsub */, ARM::t2QSUB, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8540             :   { 717 /* qsub */, ARM::QSUB, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8541             :   { 722 /* qsub16 */, ARM::t2QSUB16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8542             :   { 722 /* qsub16 */, ARM::QSUB16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8543             :   { 729 /* qsub8 */, ARM::t2QSUB8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8544             :   { 729 /* qsub8 */, ARM::QSUB8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8545             :   { 735 /* rbit */, ARM::t2RBIT, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8546             :   { 735 /* rbit */, ARM::RBIT, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsARM|Feature_HasV6T2, { MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8547             :   { 740 /* rev */, ARM::tREV, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb|Feature_HasV6, { MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8548             :   { 740 /* rev */, ARM::t2REV, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8549             :   { 740 /* rev */, ARM::REV, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8550             :   { 740 /* rev */, ARM::t2REV, Convert__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    8551             :   { 744 /* rev16 */, ARM::tREV16, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb|Feature_HasV6, { MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8552             :   { 744 /* rev16 */, ARM::t2REV16, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8553             :   { 744 /* rev16 */, ARM::REV16, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8554             :   { 744 /* rev16 */, ARM::t2REV16, Convert__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    8555             :   { 750 /* revsh */, ARM::tREVSH, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb|Feature_HasV6, { MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8556             :   { 750 /* revsh */, ARM::t2REVSH, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8557             :   { 750 /* revsh */, ARM::REVSH, Convert__Reg1_1__Reg1_2__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8558             :   { 750 /* revsh */, ARM::t2REVSH, Convert__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    8559             :   { 756 /* rfeda */, ARM::RFEDA, Convert__Reg1_0, Feature_IsARM, { MCK_GPR }, },
    8560             :   { 756 /* rfeda */, ARM::RFEDA_UPD, Convert__Reg1_0, Feature_IsARM, { MCK_GPR, MCK__EXCLAIM_ }, },
    8561             :   { 762 /* rfedb */, ARM::RFEDB, Convert__Reg1_0, Feature_IsARM, { MCK_GPR }, },
    8562             :   { 762 /* rfedb */, ARM::RFEDB_UPD, Convert__Reg1_0, Feature_IsARM, { MCK_GPR, MCK__EXCLAIM_ }, },
    8563             :   { 762 /* rfedb */, ARM::t2RFEDB, Convert__Reg1_1__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPR }, },
    8564             :   { 762 /* rfedb */, ARM::t2RFEDBW, Convert__Reg1_1__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_ }, },
    8565             :   { 768 /* rfeia */, ARM::RFEIA, Convert__Reg1_0, Feature_IsARM, { MCK_GPR }, },
    8566             :   { 768 /* rfeia */, ARM::RFEIA_UPD, Convert__Reg1_0, Feature_IsARM, { MCK_GPR, MCK__EXCLAIM_ }, },
    8567             :   { 768 /* rfeia */, ARM::t2RFEIA, Convert__Reg1_1__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPR }, },
    8568             :   { 768 /* rfeia */, ARM::t2RFEIAW, Convert__Reg1_1__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPR, MCK__EXCLAIM_ }, },
    8569             :   { 774 /* rfeib */, ARM::RFEIB, Convert__Reg1_0, Feature_IsARM, { MCK_GPR }, },
    8570             :   { 774 /* rfeib */, ARM::RFEIB_UPD, Convert__Reg1_0, Feature_IsARM, { MCK_GPR, MCK__EXCLAIM_ }, },
    8571             :   { 780 /* ror */, ARM::tROR, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8572             :   { 780 /* ror */, ARM::t2RORrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8573             :   { 780 /* ror */, ARM::t2RORri, Convert__Reg1_2__Reg1_2__Imm0_311_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_Imm0_31 }, },
    8574             :   { 780 /* ror */, ARM::RORr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc }, },
    8575             :   { 780 /* ror */, ARM::RORi, Convert__Reg1_2__Reg1_2__Imm0_311_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_Imm0_31 }, },
    8576             :   { 780 /* ror */, ARM::t2RORrr, Convert__Reg1_3__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR }, },
    8577             :   { 780 /* ror */, ARM::t2RORri, Convert__Reg1_3__Reg1_3__Imm0_311_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_Imm0_31 }, },
    8578             :   { 780 /* ror */, ARM::t2RORrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8579             :   { 780 /* ror */, ARM::t2RORri, Convert__Reg1_2__Reg1_3__Imm0_311_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_Imm0_31 }, },
    8580             :   { 780 /* ror */, ARM::RORr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8581             :   { 780 /* ror */, ARM::RORi, Convert__Reg1_2__Reg1_3__Imm0_311_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_Imm0_31 }, },
    8582             :   { 780 /* ror */, ARM::t2RORrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8583             :   { 780 /* ror */, ARM::t2RORri, Convert__Reg1_3__Reg1_4__Imm0_311_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_Imm0_31 }, },
    8584             :   { 784 /* rrx */, ARM::t2RRX, Convert__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8585             :   { 784 /* rrx */, ARM::RRXi, Convert__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8586             :   { 788 /* rsb */, ARM::t2RSBrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR }, },
    8587             :   { 788 /* rsb */, ARM::t2RSBrs, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_RegShiftedImm }, },
    8588             :   { 788 /* rsb */, ARM::t2RSBri, Convert__Reg1_2__Reg1_2__T2SOImm1_3__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_T2SOImm }, },
    8589             :   { 788 /* rsb */, ARM::RSBrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8590             :   { 788 /* rsb */, ARM::RSBri, Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    8591             :   { 788 /* rsb */, ARM::RSBrsi, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    8592             :   { 788 /* rsb */, ARM::RSBrsr, Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedReg }, },
    8593             :   { 788 /* rsb */, ARM::tRSB, Convert__Reg1_2__CCOut1_0__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR, MCK__35_0 }, },
    8594             :   { 788 /* rsb */, ARM::t2RSBrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8595             :   { 788 /* rsb */, ARM::t2RSBrs, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    8596             :   { 788 /* rsb */, ARM::t2RSBri, Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    8597             :   { 788 /* rsb */, ARM::RSBrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8598             :   { 788 /* rsb */, ARM::RSBri, Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImm }, },
    8599             :   { 788 /* rsb */, ARM::RSBrsi, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedImm }, },
    8600             :   { 788 /* rsb */, ARM::RSBrsr, Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedReg }, },
    8601             :   { 788 /* rsb */, ARM::t2RSBri, Convert__Reg1_3__Reg1_4__T2SOImm1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    8602             :   { 792 /* rsc */, ARM::RSCrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8603             :   { 792 /* rsc */, ARM::RSCri, Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    8604             :   { 792 /* rsc */, ARM::RSCrsi, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    8605             :   { 792 /* rsc */, ARM::RSCrsr, Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedReg }, },
    8606             :   { 792 /* rsc */, ARM::RSCrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8607             :   { 792 /* rsc */, ARM::RSCri, Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImm }, },
    8608             :   { 792 /* rsc */, ARM::RSCrsi, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedImm }, },
    8609             :   { 792 /* rsc */, ARM::RSCrsr, Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedReg }, },
    8610             :   { 796 /* sadd16 */, ARM::t2SADD16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8611             :   { 796 /* sadd16 */, ARM::SADD16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8612             :   { 803 /* sadd8 */, ARM::t2SADD8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8613             :   { 803 /* sadd8 */, ARM::SADD8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8614             :   { 809 /* sasx */, ARM::t2SASX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8615             :   { 809 /* sasx */, ARM::SASX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8616             :   { 814 /* sbc */, ARM::tSBC, Convert__Reg1_2__CCOut1_0__Tie0_1_1__Reg1_3__CondCode2_1, Feature_IsThumb, { MCK_CCOut, MCK_CondCode, MCK_tGPR, MCK_tGPR }, },
    8617             :   { 814 /* sbc */, ARM::SBCrsr, Convert__Reg1_2__Reg1_2__RegShiftedReg3_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_RegShiftedReg }, },
    8618             :   { 814 /* sbc */, ARM::SBCrr, Convert__Reg1_2__Reg1_2__Reg1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR }, },
    8619             :   { 814 /* sbc */, ARM::SBCri, Convert__Reg1_2__Reg1_2__ModImm1_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImm }, },
    8620             :   { 814 /* sbc */, ARM::ADCri, Convert__Reg1_2__Reg1_2__ModImmNot1_3__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_ModImmNot }, },
    8621             :   { 814 /* sbc */, ARM::SBCrsi, Convert__Reg1_2__Reg1_2__RegShiftedImm2_3__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_RegShiftedImm }, },
    8622             :   { 814 /* sbc */, ARM::t2SBCrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8623             :   { 814 /* sbc */, ARM::t2SBCrs, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    8624             :   { 814 /* sbc */, ARM::t2SBCri, Convert__Reg1_2__Reg1_3__T2SOImm1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImm }, },
    8625             :   { 814 /* sbc */, ARM::t2ADCri, Convert__Reg1_2__Reg1_3__T2SOImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsThumb2|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_T2SOImmNot }, },
    8626             :   { 814 /* sbc */, ARM::SBCrsr, Convert__Reg1_2__Reg1_3__RegShiftedReg3_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_RegShiftedReg }, },
    8627             :   { 814 /* sbc */, ARM::SBCrr, Convert__Reg1_2__Reg1_3__Reg1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8628             :   { 814 /* sbc */, ARM::SBCri, Convert__Reg1_2__Reg1_3__ModImm1_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImm }, },
    8629             :   { 814 /* sbc */, ARM::ADCri, Convert__Reg1_2__Reg1_3__ModImmNot1_4__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_UseNegativeImmediates, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_ModImmNot }, },
    8630             :   { 814 /* sbc */, ARM::SBCrsi, Convert__Reg1_2__Reg1_3__RegShiftedImm2_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_RegShiftedImm }, },
    8631             :   { 814 /* sbc */, ARM::t2SBCrr, Convert__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8632             :   { 814 /* sbc */, ARM::t2SBCrs, Convert__Reg1_3__Reg1_4__RegShiftedImm2_5__CondCode2_1__CCOut1_0, Feature_IsThumb2, { MCK_CCOut, MCK_CondCode, MCK__DOT_w, MCK_rGPR, MCK_rGPR, MCK_RegShiftedImm }, },
    8633             :   { 818 /* sbfx */, ARM::t2SBFX, Convert__Reg1_1__Reg1_2__Imm0_311_3__Imm1_321_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_Imm0_31, MCK_Imm1_32 }, },
    8634             :   { 818 /* sbfx */, ARM::SBFX, Convert__Reg1_1__Reg1_2__Imm0_311_3__Imm1_321_4__CondCode2_0, Feature_IsARM|Feature_HasV6T2, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_Imm0_31, MCK_Imm1_32 }, },
    8635             :   { 823 /* sdiv */, ARM::t2SDIV, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_HasDivideInThumb|Feature_IsThumb|Feature_HasV8MBaseline, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8636             :   { 823 /* sdiv */, ARM::SDIV, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasDivideInARM, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8637             :   { 828 /* sel */, ARM::SEL, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8638             :   { 828 /* sel */, ARM::t2SEL, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8639             :   { 832 /* setend */, ARM::tSETEND, Convert__SetEndImm1_0, Feature_IsThumb|Feature_IsNotMClass, { MCK_SetEndImm }, },
    8640             :   { 832 /* setend */, ARM::SETEND, Convert__SetEndImm1_0, Feature_IsARM, { MCK_SetEndImm }, },
    8641             :   { 839 /* setpan */, ARM::SETPAN, Convert__Imm0_11_0, Feature_IsARM|Feature_HasV8|Feature_HasV8_1a, { MCK_Imm0_1 }, },
    8642             :   { 839 /* setpan */, ARM::t2SETPAN, Convert__Imm0_11_0, Feature_IsThumb2|Feature_HasV8|Feature_HasV8_1a, { MCK_Imm0_1 }, },
    8643             :   { 846 /* sev */, ARM::HINT, Convert__imm_95_4__CondCode2_0, Feature_IsARM|Feature_HasV6K, { MCK_CondCode }, },
    8644             :   { 846 /* sev */, ARM::tHINT, Convert__imm_95_4__CondCode2_0, Feature_IsThumb|Feature_HasV6M, { MCK_CondCode }, },
    8645             :   { 846 /* sev */, ARM::t2HINT, Convert__imm_95_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK__DOT_w }, },
    8646             :   { 850 /* sevl */, ARM::HINT, Convert__imm_95_5__CondCode2_0, Feature_IsARM|Feature_HasV8, { MCK_CondCode }, },
    8647             :   { 850 /* sevl */, ARM::tHINT, Convert__imm_95_5__CondCode2_0, Feature_IsThumb2|Feature_HasV8, { MCK_CondCode }, },
    8648             :   { 850 /* sevl */, ARM::t2HINT, Convert__imm_95_5__CondCode2_0, Feature_IsThumb2|Feature_HasV8, { MCK_CondCode, MCK__DOT_w }, },
    8649             :   { 855 /* sg */, ARM::t2SG, Convert__CondCode2_0, Feature_Has8MSecExt, { MCK_CondCode }, },
    8650             :   { 858 /* sha1c */, ARM::SHA1C, Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_32, MCK_QPR, MCK_QPR, MCK_QPR }, },
    8651             :   { 864 /* sha1h */, ARM::SHA1H, Convert__Reg1_1__Reg1_2, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_32, MCK_QPR, MCK_QPR }, },
    8652             :   { 870 /* sha1m */, ARM::SHA1M, Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_32, MCK_QPR, MCK_QPR, MCK_QPR }, },
    8653             :   { 876 /* sha1p */, ARM::SHA1P, Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_32, MCK_QPR, MCK_QPR, MCK_QPR }, },
    8654             :   { 882 /* sha1su0 */, ARM::SHA1SU0, Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_32, MCK_QPR, MCK_QPR, MCK_QPR }, },
    8655             :   { 890 /* sha1su1 */, ARM::SHA1SU1, Convert__Reg1_1__Tie0_1_1__Reg1_2, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_32, MCK_QPR, MCK_QPR }, },
    8656             :   { 898 /* sha256h */, ARM::SHA256H, Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_32, MCK_QPR, MCK_QPR, MCK_QPR }, },
    8657             :   { 906 /* sha256h2 */, ARM::SHA256H2, Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_32, MCK_QPR, MCK_QPR, MCK_QPR }, },
    8658             :   { 915 /* sha256su0 */, ARM::SHA256SU0, Convert__Reg1_1__Tie0_1_1__Reg1_2, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_32, MCK_QPR, MCK_QPR }, },
    8659             :   { 925 /* sha256su1 */, ARM::SHA256SU1, Convert__Reg1_1__Tie0_1_1__Reg1_2__Reg1_3, Feature_HasV8|Feature_HasCrypto, { MCK__DOT_32, MCK_QPR, MCK_QPR, MCK_QPR }, },
    8660             :   { 935 /* shadd16 */, ARM::t2SHADD16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8661             :   { 935 /* shadd16 */, ARM::SHADD16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8662             :   { 943 /* shadd8 */, ARM::t2SHADD8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8663             :   { 943 /* shadd8 */, ARM::SHADD8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8664             :   { 950 /* shasx */, ARM::t2SHASX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8665             :   { 950 /* shasx */, ARM::SHASX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8666             :   { 956 /* shsax */, ARM::t2SHSAX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8667             :   { 956 /* shsax */, ARM::SHSAX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8668             :   { 962 /* shsub16 */, ARM::t2SHSUB16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8669             :   { 962 /* shsub16 */, ARM::SHSUB16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8670             :   { 970 /* shsub8 */, ARM::t2SHSUB8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8671             :   { 970 /* shsub8 */, ARM::SHSUB8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8672             :   { 977 /* smc */, ARM::SMC, Convert__Imm0_151_1__CondCode2_0, Feature_IsARM|Feature_HasTrustZone, { MCK_CondCode, MCK_Imm0_15 }, },
    8673             :   { 977 /* smc */, ARM::t2SMC, Convert__Imm0_151_1__CondCode2_0, Feature_IsThumb2|Feature_HasTrustZone, { MCK_CondCode, MCK_Imm0_15 }, },
    8674             :   { 981 /* smlabb */, ARM::t2SMLABB, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8675             :   { 981 /* smlabb */, ARM::SMLABB, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPR }, },
    8676             :   { 988 /* smlabt */, ARM::t2SMLABT, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8677             :   { 988 /* smlabt */, ARM::SMLABT, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPR }, },
    8678             :   { 995 /* smlad */, ARM::t2SMLAD, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8679             :   { 995 /* smlad */, ARM::SMLAD, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPR }, },
    8680             :   { 1001 /* smladx */, ARM::t2SMLADX, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8681             :   { 1001 /* smladx */, ARM::SMLADX, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPR }, },
    8682             :   { 1008 /* smlal */, ARM::t2SMLAL, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8683             :   { 1008 /* smlal */, ARM::SMLAL, Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__Tie0_1_1__Tie1_1_1__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_HasV6, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8684             :   { 1008 /* smlal */, ARM::SMLAL, Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__Tie0_3_3__Tie1_4_4__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8685             :   { 1014 /* smlalbb */, ARM::t2SMLALBB, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8686             :   { 1014 /* smlalbb */, ARM::SMLALBB, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8687             :   { 1022 /* smlalbt */, ARM::t2SMLALBT, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8688             :   { 1022 /* smlalbt */, ARM::SMLALBT, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8689             :   { 1030 /* smlald */, ARM::t2SMLALD, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8690             :   { 1030 /* smlald */, ARM::SMLALD, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8691             :   { 1037 /* smlaldx */, ARM::t2SMLALDX, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8692             :   { 1037 /* smlaldx */, ARM::SMLALDX, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8693             :   { 1045 /* smlaltb */, ARM::t2SMLALTB, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8694             :   { 1045 /* smlaltb */, ARM::SMLALTB, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8695             :   { 1053 /* smlaltt */, ARM::t2SMLALTT, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8696             :   { 1053 /* smlaltt */, ARM::SMLALTT, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8697             :   { 1061 /* smlatb */, ARM::t2SMLATB, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8698             :   { 1061 /* smlatb */, ARM::SMLATB, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPR }, },
    8699             :   { 1068 /* smlatt */, ARM::t2SMLATT, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8700             :   { 1068 /* smlatt */, ARM::SMLATT, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPR }, },
    8701             :   { 1075 /* smlawb */, ARM::t2SMLAWB, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8702             :   { 1075 /* smlawb */, ARM::SMLAWB, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPR }, },
    8703             :   { 1082 /* smlawt */, ARM::t2SMLAWT, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8704             :   { 1082 /* smlawt */, ARM::SMLAWT, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPR }, },
    8705             :   { 1089 /* smlsd */, ARM::t2SMLSD, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8706             :   { 1089 /* smlsd */, ARM::SMLSD, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPR }, },
    8707             :   { 1095 /* smlsdx */, ARM::t2SMLSDX, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8708             :   { 1095 /* smlsdx */, ARM::SMLSDX, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPR }, },
    8709             :   { 1102 /* smlsld */, ARM::t2SMLSLD, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8710             :   { 1102 /* smlsld */, ARM::SMLSLD, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8711             :   { 1109 /* smlsldx */, ARM::t2SMLSLDX, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8712             :   { 1109 /* smlsldx */, ARM::SMLSLDX, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__Tie0_1_1__Tie1_1_1__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8713             :   { 1117 /* smmla */, ARM::t2SMMLA, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8714             :   { 1117 /* smmla */, ARM::SMMLA, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8715             :   { 1123 /* smmlar */, ARM::t2SMMLAR, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8716             :   { 1123 /* smmlar */, ARM::SMMLAR, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8717             :   { 1130 /* smmls */, ARM::t2SMMLS, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8718             :   { 1130 /* smmls */, ARM::SMMLS, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8719             :   { 1136 /* smmlsr */, ARM::t2SMMLSR, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8720             :   { 1136 /* smmlsr */, ARM::SMMLSR, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8721             :   { 1143 /* smmul */, ARM::t2SMMUL, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8722             :   { 1143 /* smmul */, ARM::SMMUL, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8723             :   { 1149 /* smmulr */, ARM::t2SMMULR, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8724             :   { 1149 /* smmulr */, ARM::SMMULR, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8725             :   { 1156 /* smuad */, ARM::t2SMUAD, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8726             :   { 1156 /* smuad */, ARM::SMUAD, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8727             :   { 1162 /* smuadx */, ARM::t2SMUADX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8728             :   { 1162 /* smuadx */, ARM::SMUADX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8729             :   { 1169 /* smulbb */, ARM::t2SMULBB, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8730             :   { 1169 /* smulbb */, ARM::SMULBB, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8731             :   { 1176 /* smulbt */, ARM::t2SMULBT, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8732             :   { 1176 /* smulbt */, ARM::SMULBT, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8733             :   { 1183 /* smull */, ARM::t2SMULL, Convert__Reg1_1__Reg1_2__Reg1_3__Reg1_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8734             :   { 1183 /* smull */, ARM::SMULL, Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsARM|Feature_HasV6, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8735             :   { 1183 /* smull */, ARM::SMULL, Convert__Reg1_2__Reg1_3__Reg1_4__Reg1_5__CondCode2_1__CCOut1_0, Feature_IsARM, { MCK_CCOut, MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8736             :   { 1189 /* smultb */, ARM::t2SMULTB, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8737             :   { 1189 /* smultb */, ARM::SMULTB, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8738             :   { 1196 /* smultt */, ARM::t2SMULTT, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8739             :   { 1196 /* smultt */, ARM::SMULTT, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8740             :   { 1203 /* smulwb */, ARM::t2SMULWB, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8741             :   { 1203 /* smulwb */, ARM::SMULWB, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8742             :   { 1210 /* smulwt */, ARM::t2SMULWT, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8743             :   { 1210 /* smulwt */, ARM::SMULWT, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV5TE, { MCK_CondCode, MCK_GPR, MCK_GPR, MCK_GPR }, },
    8744             :   { 1217 /* smusd */, ARM::t2SMUSD, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8745             :   { 1217 /* smusd */, ARM::SMUSD, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8746             :   { 1223 /* smusdx */, ARM::t2SMUSDX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8747             :   { 1223 /* smusdx */, ARM::SMUSDX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8748             :   { 1230 /* srsda */, ARM::SRSDA, Convert__Imm0_311_0, Feature_IsARM, { MCK_Imm0_31 }, },
    8749             :   { 1230 /* srsda */, ARM::SRSDA, Convert__Imm0_311_1, Feature_IsARM, { MCK_GPRsp, MCK_Imm0_31 }, },
    8750             :   { 1230 /* srsda */, ARM::SRSDA_UPD, Convert__Imm0_311_0, Feature_IsARM, { MCK_Imm0_31, MCK__EXCLAIM_ }, },
    8751             :   { 1230 /* srsda */, ARM::SRSDA_UPD, Convert__Imm0_311_2, Feature_IsARM, { MCK_GPRsp, MCK__EXCLAIM_, MCK_Imm0_31 }, },
    8752             :   { 1236 /* srsdb */, ARM::SRSDB, Convert__Imm0_311_0, Feature_IsARM, { MCK_Imm0_31 }, },
    8753             :   { 1236 /* srsdb */, ARM::SRSDB, Convert__Imm0_311_1, Feature_IsARM, { MCK_GPRsp, MCK_Imm0_31 }, },
    8754             :   { 1236 /* srsdb */, ARM::t2SRSDB, Convert__Imm0_311_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_Imm0_31 }, },
    8755             :   { 1236 /* srsdb */, ARM::SRSDB_UPD, Convert__Imm0_311_0, Feature_IsARM, { MCK_Imm0_31, MCK__EXCLAIM_ }, },
    8756             :   { 1236 /* srsdb */, ARM::SRSDB_UPD, Convert__Imm0_311_2, Feature_IsARM, { MCK_GPRsp, MCK__EXCLAIM_, MCK_Imm0_31 }, },
    8757             :   { 1236 /* srsdb */, ARM::t2SRSDB, Convert__Imm0_311_2__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPRsp, MCK_Imm0_31 }, },
    8758             :   { 1236 /* srsdb */, ARM::t2SRSDB_UPD, Convert__Imm0_311_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_Imm0_31, MCK__EXCLAIM_ }, },
    8759             :   { 1236 /* srsdb */, ARM::t2SRSDB_UPD, Convert__Imm0_311_3__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPRsp, MCK__EXCLAIM_, MCK_Imm0_31 }, },
    8760             :   { 1242 /* srsia */, ARM::SRSIA, Convert__Imm0_311_0, Feature_IsARM, { MCK_Imm0_31 }, },
    8761             :   { 1242 /* srsia */, ARM::SRSIA, Convert__Imm0_311_1, Feature_IsARM, { MCK_GPRsp, MCK_Imm0_31 }, },
    8762             :   { 1242 /* srsia */, ARM::t2SRSIA, Convert__Imm0_311_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_Imm0_31 }, },
    8763             :   { 1242 /* srsia */, ARM::SRSIA_UPD, Convert__Imm0_311_0, Feature_IsARM, { MCK_Imm0_31, MCK__EXCLAIM_ }, },
    8764             :   { 1242 /* srsia */, ARM::SRSIA_UPD, Convert__Imm0_311_2, Feature_IsARM, { MCK_GPRsp, MCK__EXCLAIM_, MCK_Imm0_31 }, },
    8765             :   { 1242 /* srsia */, ARM::t2SRSIA, Convert__Imm0_311_2__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPRsp, MCK_Imm0_31 }, },
    8766             :   { 1242 /* srsia */, ARM::t2SRSIA_UPD, Convert__Imm0_311_1__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_Imm0_31, MCK__EXCLAIM_ }, },
    8767             :   { 1242 /* srsia */, ARM::t2SRSIA_UPD, Convert__Imm0_311_3__CondCode2_0, Feature_IsThumb2|Feature_IsNotMClass, { MCK_CondCode, MCK_GPRsp, MCK__EXCLAIM_, MCK_Imm0_31 }, },
    8768             :   { 1248 /* srsib */, ARM::SRSIB, Convert__Imm0_311_0, Feature_IsARM, { MCK_Imm0_31 }, },
    8769             :   { 1248 /* srsib */, ARM::SRSIB, Convert__Imm0_311_1, Feature_IsARM, { MCK_GPRsp, MCK_Imm0_31 }, },
    8770             :   { 1248 /* srsib */, ARM::SRSIB_UPD, Convert__Imm0_311_0, Feature_IsARM, { MCK_Imm0_31, MCK__EXCLAIM_ }, },
    8771             :   { 1248 /* srsib */, ARM::SRSIB_UPD, Convert__Imm0_311_2, Feature_IsARM, { MCK_GPRsp, MCK__EXCLAIM_, MCK_Imm0_31 }, },
    8772             :   { 1254 /* ssat */, ARM::t2SSAT, Convert__Reg1_1__Imm1_321_2__Reg1_3__imm_95_0__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_Imm1_32, MCK_rGPR }, },
    8773             :   { 1254 /* ssat */, ARM::SSAT, Convert__Reg1_1__Imm1_321_2__Reg1_3__imm_95_0__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_Imm1_32, MCK_GPRnopc }, },
    8774             :   { 1254 /* ssat */, ARM::t2SSAT, Convert__Reg1_1__Imm1_321_2__Reg1_3__ShifterImm1_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_rGPR, MCK_Imm1_32, MCK_rGPR, MCK_ShifterImm }, },
    8775             :   { 1254 /* ssat */, ARM::SSAT, Convert__Reg1_1__Imm1_321_2__Reg1_3__ShifterImm1_4__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_Imm1_32, MCK_GPRnopc, MCK_ShifterImm }, },
    8776             :   { 1259 /* ssat16 */, ARM::t2SSAT16, Convert__Reg1_1__Imm1_161_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_Imm1_16, MCK_rGPR }, },
    8777             :   { 1259 /* ssat16 */, ARM::SSAT16, Convert__Reg1_1__Imm1_161_2__Reg1_3__CondCode2_0, Feature_IsARM|Feature_HasV6, { MCK_CondCode, MCK_GPRnopc, MCK_Imm1_16, MCK_GPRnopc }, },
    8778             :   { 1266 /* ssax */, ARM::t2SSAX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8779             :   { 1266 /* ssax */, ARM::SSAX, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8780             :   { 1271 /* ssub16 */, ARM::t2SSUB16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8781             :   { 1271 /* ssub16 */, ARM::SSUB16, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8782             :   { 1278 /* ssub8 */, ARM::t2SSUB8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsThumb2|Feature_HasDSP, { MCK_CondCode, MCK_rGPR, MCK_rGPR, MCK_rGPR }, },
    8783             :   { 1278 /* ssub8 */, ARM::SSUB8, Convert__Reg1_1__Reg1_2__Reg1_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_GPRnopc, MCK_GPRnopc, MCK_GPRnopc }, },
    8784             :   { 1284 /* stc */, ARM::STC_OFFSET, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8785             :   { 1284 /* stc */, ARM::t2STC_OFFSET, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8786             :   { 1284 /* stc */, ARM::STC_PRE, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8787             :   { 1284 /* stc */, ARM::t2STC_PRE, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8788             :   { 1284 /* stc */, ARM::STC_OPTION, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8789             :   { 1284 /* stc */, ARM::t2STC_OPTION, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8790             :   { 1284 /* stc */, ARM::STC_POST, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0, Feature_IsARM, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8791             :   { 1284 /* stc */, ARM::t2STC_POST, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0, Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8792             :   { 1288 /* stc2 */, ARM::STC2_OFFSET, Convert__CoprocNum1_0__CoprocReg1_1__AddrMode52_2, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8793             :   { 1288 /* stc2 */, ARM::t2STC2_OFFSET, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8794             :   { 1288 /* stc2 */, ARM::STC2_PRE, Convert__CoprocNum1_0__CoprocReg1_1__AddrMode52_2, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8795             :   { 1288 /* stc2 */, ARM::STC2_OPTION, Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__CoprocOption1_3, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8796             :   { 1288 /* stc2 */, ARM::STC2_POST, Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__PostIdxImm8s41_3, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8797             :   { 1288 /* stc2 */, ARM::t2STC2_PRE, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8798             :   { 1288 /* stc2 */, ARM::t2STC2_OPTION, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8799             :   { 1288 /* stc2 */, ARM::t2STC2_POST, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8800             :   { 1293 /* stc2l */, ARM::STC2L_OFFSET, Convert__CoprocNum1_0__CoprocReg1_1__AddrMode52_2, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8801             :   { 1293 /* stc2l */, ARM::t2STC2L_OFFSET, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5 }, },
    8802             :   { 1293 /* stc2l */, ARM::STC2L_PRE, Convert__CoprocNum1_0__CoprocReg1_1__AddrMode52_2, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8803             :   { 1293 /* stc2l */, ARM::STC2L_OPTION, Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__CoprocOption1_3, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8804             :   { 1293 /* stc2l */, ARM::STC2L_POST, Convert__CoprocNum1_0__CoprocReg1_1__MemNoOffset1_2__PostIdxImm8s41_3, Feature_IsARM|Feature_PreV8, { MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8805             :   { 1293 /* stc2l */, ARM::t2STC2L_PRE, Convert__CoprocNum1_1__CoprocReg1_2__AddrMode52_3__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_AddrMode5, MCK__EXCLAIM_ }, },
    8806             :   { 1293 /* stc2l */, ARM::t2STC2L_OPTION, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__CoprocOption1_4__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_CoprocOption }, },
    8807             :   { 1293 /* stc2l */, ARM::t2STC2L_POST, Convert__CoprocNum1_1__CoprocReg1_2__MemNoOffset1_3__PostIdxImm8s41_4__CondCode2_0, Feature_PreV8|Feature_IsThumb2, { MCK_CondCode, MCK_CoprocNum, MCK_CoprocReg, MCK_MemNoOffset, MCK_PostIdxImm8s4 }, },
    8808 <