LCOV - code coverage report
Current view: top level - build-llvm/lib/Target/ARM - ARMGenMCCodeEmitter.inc (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 3489 3553 98.2 %
Date: 2018-10-20 13:21:21 Functions: 1 1 100.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
       2             : |*                                                                            *|
       3             : |* Machine Code Emitter                                                       *|
       4             : |*                                                                            *|
       5             : |* Automatically generated file, do not edit!                                 *|
       6             : |*                                                                            *|
       7             : \*===----------------------------------------------------------------------===*/
       8             : 
       9             : // Undef for HURD
      10             : #ifdef EIEIO
      11             : #undef EIEIO
      12             : #endif
      13       41931 : uint64_t ARMMCCodeEmitter::getBinaryCodeForInstr(const MCInst &MI,
      14             :     SmallVectorImpl<MCFixup> &Fixups,
      15             :     const MCSubtargetInfo &STI) const {
      16             :   static const uint64_t InstBits[] = {
      17             :     UINT64_C(0),
      18             :     UINT64_C(0),
      19             :     UINT64_C(0),
      20             :     UINT64_C(0),
      21             :     UINT64_C(0),
      22             :     UINT64_C(0),
      23             :     UINT64_C(0),
      24             :     UINT64_C(0),
      25             :     UINT64_C(0),
      26             :     UINT64_C(0),
      27             :     UINT64_C(0),
      28             :     UINT64_C(0),
      29             :     UINT64_C(0),
      30             :     UINT64_C(0),
      31             :     UINT64_C(0),
      32             :     UINT64_C(0),
      33             :     UINT64_C(0),
      34             :     UINT64_C(0),
      35             :     UINT64_C(0),
      36             :     UINT64_C(0),
      37             :     UINT64_C(0),
      38             :     UINT64_C(0),
      39             :     UINT64_C(0),
      40             :     UINT64_C(0),
      41             :     UINT64_C(0),
      42             :     UINT64_C(0),
      43             :     UINT64_C(0),
      44             :     UINT64_C(0),
      45             :     UINT64_C(0),
      46             :     UINT64_C(0),
      47             :     UINT64_C(0),
      48             :     UINT64_C(0),
      49             :     UINT64_C(0),
      50             :     UINT64_C(0),
      51             :     UINT64_C(0),
      52             :     UINT64_C(0),
      53             :     UINT64_C(0),
      54             :     UINT64_C(0),
      55             :     UINT64_C(0),
      56             :     UINT64_C(0),
      57             :     UINT64_C(0),
      58             :     UINT64_C(0),
      59             :     UINT64_C(0),
      60             :     UINT64_C(0),
      61             :     UINT64_C(0),
      62             :     UINT64_C(0),
      63             :     UINT64_C(0),
      64             :     UINT64_C(0),
      65             :     UINT64_C(0),
      66             :     UINT64_C(0),
      67             :     UINT64_C(0),
      68             :     UINT64_C(0),
      69             :     UINT64_C(0),
      70             :     UINT64_C(0),
      71             :     UINT64_C(0),
      72             :     UINT64_C(0),
      73             :     UINT64_C(0),
      74             :     UINT64_C(0),
      75             :     UINT64_C(0),
      76             :     UINT64_C(0),
      77             :     UINT64_C(0),
      78             :     UINT64_C(0),
      79             :     UINT64_C(0),
      80             :     UINT64_C(0),
      81             :     UINT64_C(0),
      82             :     UINT64_C(0),
      83             :     UINT64_C(0),
      84             :     UINT64_C(0),
      85             :     UINT64_C(0),
      86             :     UINT64_C(0),
      87             :     UINT64_C(0),
      88             :     UINT64_C(0),
      89             :     UINT64_C(0),
      90             :     UINT64_C(0),
      91             :     UINT64_C(0),
      92             :     UINT64_C(0),
      93             :     UINT64_C(0),
      94             :     UINT64_C(0),
      95             :     UINT64_C(0),
      96             :     UINT64_C(0),
      97             :     UINT64_C(0),
      98             :     UINT64_C(0),
      99             :     UINT64_C(0),
     100             :     UINT64_C(0),
     101             :     UINT64_C(0),
     102             :     UINT64_C(0),
     103             :     UINT64_C(0),
     104             :     UINT64_C(0),
     105             :     UINT64_C(0),
     106             :     UINT64_C(0),
     107             :     UINT64_C(0),
     108             :     UINT64_C(0),
     109             :     UINT64_C(0),
     110             :     UINT64_C(0),
     111             :     UINT64_C(0),
     112             :     UINT64_C(0),
     113             :     UINT64_C(0),
     114             :     UINT64_C(0),
     115             :     UINT64_C(0),
     116             :     UINT64_C(0),
     117             :     UINT64_C(0),
     118             :     UINT64_C(0),
     119             :     UINT64_C(0),
     120             :     UINT64_C(0),
     121             :     UINT64_C(0),
     122             :     UINT64_C(0),
     123             :     UINT64_C(0),
     124             :     UINT64_C(0),
     125             :     UINT64_C(0),
     126             :     UINT64_C(0),
     127             :     UINT64_C(0),
     128             :     UINT64_C(0),
     129             :     UINT64_C(0),
     130             :     UINT64_C(0),
     131             :     UINT64_C(0),
     132             :     UINT64_C(0),
     133             :     UINT64_C(0),
     134             :     UINT64_C(0),
     135             :     UINT64_C(0),
     136             :     UINT64_C(0),
     137             :     UINT64_C(0),
     138             :     UINT64_C(0),
     139             :     UINT64_C(0),
     140             :     UINT64_C(0),
     141             :     UINT64_C(0),
     142             :     UINT64_C(0),
     143             :     UINT64_C(0),
     144             :     UINT64_C(0),
     145             :     UINT64_C(0),
     146             :     UINT64_C(0),
     147             :     UINT64_C(0),
     148             :     UINT64_C(0),
     149             :     UINT64_C(0),
     150             :     UINT64_C(0),
     151             :     UINT64_C(0),
     152             :     UINT64_C(0),
     153             :     UINT64_C(0),
     154             :     UINT64_C(0),
     155             :     UINT64_C(0),
     156             :     UINT64_C(0),
     157             :     UINT64_C(0),
     158             :     UINT64_C(0),
     159             :     UINT64_C(0),
     160             :     UINT64_C(0),
     161             :     UINT64_C(0),
     162             :     UINT64_C(0),
     163             :     UINT64_C(0),
     164             :     UINT64_C(0),
     165             :     UINT64_C(0),
     166             :     UINT64_C(0),
     167             :     UINT64_C(0),
     168             :     UINT64_C(0),
     169             :     UINT64_C(0),
     170             :     UINT64_C(0),
     171             :     UINT64_C(0),
     172             :     UINT64_C(0),
     173             :     UINT64_C(0),
     174             :     UINT64_C(0),
     175             :     UINT64_C(0),
     176             :     UINT64_C(0),
     177             :     UINT64_C(0),
     178             :     UINT64_C(0),
     179             :     UINT64_C(0),
     180             :     UINT64_C(0),
     181             :     UINT64_C(0),
     182             :     UINT64_C(0),
     183             :     UINT64_C(0),
     184             :     UINT64_C(0),
     185             :     UINT64_C(0),
     186             :     UINT64_C(0),
     187             :     UINT64_C(0),
     188             :     UINT64_C(0),
     189             :     UINT64_C(0),
     190             :     UINT64_C(0),
     191             :     UINT64_C(0),
     192             :     UINT64_C(0),
     193             :     UINT64_C(0),
     194             :     UINT64_C(0),
     195             :     UINT64_C(0),
     196             :     UINT64_C(0),
     197             :     UINT64_C(0),
     198             :     UINT64_C(0),
     199             :     UINT64_C(0),
     200             :     UINT64_C(0),
     201             :     UINT64_C(0),
     202             :     UINT64_C(0),
     203             :     UINT64_C(0),
     204             :     UINT64_C(0),
     205             :     UINT64_C(0),
     206             :     UINT64_C(0),
     207             :     UINT64_C(0),
     208             :     UINT64_C(0),
     209             :     UINT64_C(0),
     210             :     UINT64_C(0),
     211             :     UINT64_C(0),
     212             :     UINT64_C(0),
     213             :     UINT64_C(0),
     214             :     UINT64_C(0),
     215             :     UINT64_C(0),
     216             :     UINT64_C(0),
     217             :     UINT64_C(0),
     218             :     UINT64_C(0),
     219             :     UINT64_C(0),
     220             :     UINT64_C(0),
     221             :     UINT64_C(0),
     222             :     UINT64_C(0),
     223             :     UINT64_C(0),
     224             :     UINT64_C(0),
     225             :     UINT64_C(0),
     226             :     UINT64_C(0),
     227             :     UINT64_C(0),
     228             :     UINT64_C(0),
     229             :     UINT64_C(0),
     230             :     UINT64_C(0),
     231             :     UINT64_C(0),
     232             :     UINT64_C(0),
     233             :     UINT64_C(0),
     234             :     UINT64_C(0),
     235             :     UINT64_C(0),
     236             :     UINT64_C(0),
     237             :     UINT64_C(0),
     238             :     UINT64_C(0),
     239             :     UINT64_C(0),
     240             :     UINT64_C(0),
     241             :     UINT64_C(0),
     242             :     UINT64_C(0),
     243             :     UINT64_C(0),
     244             :     UINT64_C(0),
     245             :     UINT64_C(0),
     246             :     UINT64_C(0),
     247             :     UINT64_C(0),
     248             :     UINT64_C(0),
     249             :     UINT64_C(0),
     250             :     UINT64_C(0),
     251             :     UINT64_C(0),
     252             :     UINT64_C(0),
     253             :     UINT64_C(0),
     254             :     UINT64_C(0),
     255             :     UINT64_C(0),
     256             :     UINT64_C(0),
     257             :     UINT64_C(0),
     258             :     UINT64_C(0),
     259             :     UINT64_C(0),
     260             :     UINT64_C(0),
     261             :     UINT64_C(0),
     262             :     UINT64_C(0),
     263             :     UINT64_C(0),
     264             :     UINT64_C(0),
     265             :     UINT64_C(0),
     266             :     UINT64_C(0),
     267             :     UINT64_C(0),
     268             :     UINT64_C(0),
     269             :     UINT64_C(0),
     270             :     UINT64_C(0),
     271             :     UINT64_C(0),
     272             :     UINT64_C(0),
     273             :     UINT64_C(0),
     274             :     UINT64_C(0),
     275             :     UINT64_C(0),
     276             :     UINT64_C(0),
     277             :     UINT64_C(0),
     278             :     UINT64_C(0),
     279             :     UINT64_C(0),
     280             :     UINT64_C(0),
     281             :     UINT64_C(0),
     282             :     UINT64_C(0),
     283             :     UINT64_C(0),
     284             :     UINT64_C(0),
     285             :     UINT64_C(0),
     286             :     UINT64_C(0),
     287             :     UINT64_C(0),
     288             :     UINT64_C(0),
     289             :     UINT64_C(0),
     290             :     UINT64_C(0),
     291             :     UINT64_C(0),
     292             :     UINT64_C(0),
     293             :     UINT64_C(0),
     294             :     UINT64_C(0),
     295             :     UINT64_C(0),
     296             :     UINT64_C(0),
     297             :     UINT64_C(0),
     298             :     UINT64_C(0),
     299             :     UINT64_C(0),
     300             :     UINT64_C(0),
     301             :     UINT64_C(0),
     302             :     UINT64_C(0),
     303             :     UINT64_C(0),
     304             :     UINT64_C(0),
     305             :     UINT64_C(0),
     306             :     UINT64_C(0),
     307             :     UINT64_C(0),
     308             :     UINT64_C(0),
     309             :     UINT64_C(0),
     310             :     UINT64_C(0),
     311             :     UINT64_C(0),
     312             :     UINT64_C(0),
     313             :     UINT64_C(0),
     314             :     UINT64_C(0),
     315             :     UINT64_C(0),
     316             :     UINT64_C(0),
     317             :     UINT64_C(0),
     318             :     UINT64_C(0),
     319             :     UINT64_C(0),
     320             :     UINT64_C(0),
     321             :     UINT64_C(0),
     322             :     UINT64_C(0),
     323             :     UINT64_C(0),
     324             :     UINT64_C(0),
     325             :     UINT64_C(0),
     326             :     UINT64_C(0),
     327             :     UINT64_C(0),
     328             :     UINT64_C(0),
     329             :     UINT64_C(0),
     330             :     UINT64_C(0),
     331             :     UINT64_C(0),
     332             :     UINT64_C(0),
     333             :     UINT64_C(0),
     334             :     UINT64_C(0),
     335             :     UINT64_C(0),
     336             :     UINT64_C(0),
     337             :     UINT64_C(0),
     338             :     UINT64_C(0),
     339             :     UINT64_C(0),
     340             :     UINT64_C(0),
     341             :     UINT64_C(0),
     342             :     UINT64_C(0),
     343             :     UINT64_C(0),
     344             :     UINT64_C(0),
     345             :     UINT64_C(0),
     346             :     UINT64_C(0),
     347             :     UINT64_C(0),
     348             :     UINT64_C(0),
     349             :     UINT64_C(0),
     350             :     UINT64_C(0),
     351             :     UINT64_C(0),
     352             :     UINT64_C(0),
     353             :     UINT64_C(0),
     354             :     UINT64_C(0),
     355             :     UINT64_C(0),
     356             :     UINT64_C(0),
     357             :     UINT64_C(0),
     358             :     UINT64_C(0),
     359             :     UINT64_C(0),
     360             :     UINT64_C(0),
     361             :     UINT64_C(0),
     362             :     UINT64_C(0),
     363             :     UINT64_C(0),
     364             :     UINT64_C(0),
     365             :     UINT64_C(0),
     366             :     UINT64_C(0),
     367             :     UINT64_C(0),
     368             :     UINT64_C(0),
     369             :     UINT64_C(0),
     370             :     UINT64_C(0),
     371             :     UINT64_C(0),
     372             :     UINT64_C(0),
     373             :     UINT64_C(0),
     374             :     UINT64_C(0),
     375             :     UINT64_C(0),
     376             :     UINT64_C(0),
     377             :     UINT64_C(0),
     378             :     UINT64_C(0),
     379             :     UINT64_C(0),
     380             :     UINT64_C(0),
     381             :     UINT64_C(0),
     382             :     UINT64_C(0),
     383             :     UINT64_C(0),
     384             :     UINT64_C(0),
     385             :     UINT64_C(0),
     386             :     UINT64_C(0),
     387             :     UINT64_C(0),
     388             :     UINT64_C(0),
     389             :     UINT64_C(0),
     390             :     UINT64_C(0),
     391             :     UINT64_C(0),
     392             :     UINT64_C(0),
     393             :     UINT64_C(0),
     394             :     UINT64_C(0),
     395             :     UINT64_C(0),
     396             :     UINT64_C(0),
     397             :     UINT64_C(0),
     398             :     UINT64_C(0),
     399             :     UINT64_C(0),
     400             :     UINT64_C(0),
     401             :     UINT64_C(0),
     402             :     UINT64_C(0),
     403             :     UINT64_C(0),
     404             :     UINT64_C(0),
     405             :     UINT64_C(0),
     406             :     UINT64_C(0),
     407             :     UINT64_C(0),
     408             :     UINT64_C(0),
     409             :     UINT64_C(0),
     410             :     UINT64_C(0),
     411             :     UINT64_C(0),
     412             :     UINT64_C(0),
     413             :     UINT64_C(0),
     414             :     UINT64_C(0),
     415             :     UINT64_C(0),
     416             :     UINT64_C(0),
     417             :     UINT64_C(0),
     418             :     UINT64_C(0),
     419             :     UINT64_C(0),
     420             :     UINT64_C(0),
     421             :     UINT64_C(0),
     422             :     UINT64_C(0),
     423             :     UINT64_C(0),
     424             :     UINT64_C(0),
     425             :     UINT64_C(0),
     426             :     UINT64_C(0),
     427             :     UINT64_C(0),
     428             :     UINT64_C(0),
     429             :     UINT64_C(0),
     430             :     UINT64_C(0),
     431             :     UINT64_C(0),
     432             :     UINT64_C(0),
     433             :     UINT64_C(0),
     434             :     UINT64_C(0),
     435             :     UINT64_C(0),
     436             :     UINT64_C(0),
     437             :     UINT64_C(0),
     438             :     UINT64_C(0),
     439             :     UINT64_C(0),
     440             :     UINT64_C(0),
     441             :     UINT64_C(0),
     442             :     UINT64_C(0),
     443             :     UINT64_C(0),
     444             :     UINT64_C(0),
     445             :     UINT64_C(0),
     446             :     UINT64_C(0),
     447             :     UINT64_C(0),
     448             :     UINT64_C(0),
     449             :     UINT64_C(0),
     450             :     UINT64_C(0),
     451             :     UINT64_C(0),
     452             :     UINT64_C(0),
     453             :     UINT64_C(0),
     454             :     UINT64_C(0),
     455             :     UINT64_C(0),
     456             :     UINT64_C(0),
     457             :     UINT64_C(0),
     458             :     UINT64_C(0),
     459             :     UINT64_C(0),
     460             :     UINT64_C(0),
     461             :     UINT64_C(0),
     462             :     UINT64_C(0),
     463             :     UINT64_C(0),
     464             :     UINT64_C(0),
     465             :     UINT64_C(0),
     466             :     UINT64_C(0),
     467             :     UINT64_C(0),
     468             :     UINT64_C(0),
     469             :     UINT64_C(0),
     470             :     UINT64_C(0),
     471             :     UINT64_C(0),
     472             :     UINT64_C(0),
     473             :     UINT64_C(0),
     474             :     UINT64_C(0),
     475             :     UINT64_C(0),
     476             :     UINT64_C(0),
     477             :     UINT64_C(0),
     478             :     UINT64_C(0),
     479             :     UINT64_C(0),
     480             :     UINT64_C(0),
     481             :     UINT64_C(0),
     482             :     UINT64_C(0),
     483             :     UINT64_C(0),
     484             :     UINT64_C(0),
     485             :     UINT64_C(0),
     486             :     UINT64_C(0),
     487             :     UINT64_C(0),
     488             :     UINT64_C(0),
     489             :     UINT64_C(0),
     490             :     UINT64_C(0),
     491             :     UINT64_C(0),
     492             :     UINT64_C(0),
     493             :     UINT64_C(0),
     494             :     UINT64_C(0),
     495             :     UINT64_C(0),
     496             :     UINT64_C(0),
     497             :     UINT64_C(0),
     498             :     UINT64_C(0),
     499             :     UINT64_C(0),
     500             :     UINT64_C(0),
     501             :     UINT64_C(0),
     502             :     UINT64_C(0),
     503             :     UINT64_C(0),
     504             :     UINT64_C(0),
     505             :     UINT64_C(0),
     506             :     UINT64_C(0),
     507             :     UINT64_C(0),
     508             :     UINT64_C(0),
     509             :     UINT64_C(0),
     510             :     UINT64_C(0),
     511             :     UINT64_C(0),
     512             :     UINT64_C(0),
     513             :     UINT64_C(0),
     514             :     UINT64_C(0),
     515             :     UINT64_C(0),
     516             :     UINT64_C(0),
     517             :     UINT64_C(0),
     518             :     UINT64_C(0),
     519             :     UINT64_C(0),
     520             :     UINT64_C(0),
     521             :     UINT64_C(0),
     522             :     UINT64_C(0),
     523             :     UINT64_C(0),
     524             :     UINT64_C(0),
     525             :     UINT64_C(0),
     526             :     UINT64_C(0),
     527             :     UINT64_C(0),
     528             :     UINT64_C(0),
     529             :     UINT64_C(0),
     530             :     UINT64_C(0),
     531             :     UINT64_C(0),
     532             :     UINT64_C(0),
     533             :     UINT64_C(0),
     534             :     UINT64_C(0),
     535             :     UINT64_C(0),
     536             :     UINT64_C(0),
     537             :     UINT64_C(0),
     538             :     UINT64_C(0),
     539             :     UINT64_C(0),
     540             :     UINT64_C(0),
     541             :     UINT64_C(0),
     542             :     UINT64_C(0),
     543             :     UINT64_C(0),
     544             :     UINT64_C(0),
     545             :     UINT64_C(0),
     546             :     UINT64_C(0),
     547             :     UINT64_C(0),
     548             :     UINT64_C(0),
     549             :     UINT64_C(0),
     550             :     UINT64_C(0),
     551             :     UINT64_C(0),
     552             :     UINT64_C(0),
     553             :     UINT64_C(0),
     554             :     UINT64_C(0),
     555             :     UINT64_C(0),
     556             :     UINT64_C(0),
     557             :     UINT64_C(44040192), // ADCri
     558             :     UINT64_C(10485760), // ADCrr
     559             :     UINT64_C(10485760), // ADCrsi
     560             :     UINT64_C(10485776), // ADCrsr
     561             :     UINT64_C(41943040), // ADDri
     562             :     UINT64_C(8388608),  // ADDrr
     563             :     UINT64_C(8388608),  // ADDrsi
     564             :     UINT64_C(8388624),  // ADDrsr
     565             :     UINT64_C(34537472), // ADR
     566             :     UINT64_C(4088398656),       // AESD
     567             :     UINT64_C(4088398592),       // AESE
     568             :     UINT64_C(4088398784),       // AESIMC
     569             :     UINT64_C(4088398720),       // AESMC
     570             :     UINT64_C(33554432), // ANDri
     571             :     UINT64_C(0),        // ANDrr
     572             :     UINT64_C(0),        // ANDrsi
     573             :     UINT64_C(16),       // ANDrsr
     574             :     UINT64_C(130023455),        // BFC
     575             :     UINT64_C(130023440),        // BFI
     576             :     UINT64_C(62914560), // BICri
     577             :     UINT64_C(29360128), // BICrr
     578             :     UINT64_C(29360128), // BICrsi
     579             :     UINT64_C(29360144), // BICrsr
     580             :     UINT64_C(3776970864),       // BKPT
     581             :     UINT64_C(3942645760),       // BL
     582             :     UINT64_C(3778019120),       // BLX
     583             :     UINT64_C(19922736), // BLX_pred
     584             :     UINT64_C(4194304000),       // BLXi
     585             :     UINT64_C(184549376),        // BL_pred
     586             :     UINT64_C(3778019088),       // BX
     587             :     UINT64_C(19922720), // BXJ
     588             :     UINT64_C(19922718), // BX_RET
     589             :     UINT64_C(19922704), // BX_pred
     590             :     UINT64_C(167772160),        // Bcc
     591             :     UINT64_C(234881024),        // CDP
     592             :     UINT64_C(4261412864),       // CDP2
     593             :     UINT64_C(4118802463),       // CLREX
     594             :     UINT64_C(24055568), // CLZ
     595             :     UINT64_C(57671680), // CMNri
     596             :     UINT64_C(24117248), // CMNzrr
     597             :     UINT64_C(24117248), // CMNzrsi
     598             :     UINT64_C(24117264), // CMNzrsr
     599             :     UINT64_C(55574528), // CMPri
     600             :     UINT64_C(22020096), // CMPrr
     601             :     UINT64_C(22020096), // CMPrsi
     602             :     UINT64_C(22020112), // CMPrsr
     603             :     UINT64_C(4043440128),       // CPS1p
     604             :     UINT64_C(4043309056),       // CPS2p
     605             :     UINT64_C(4043440128),       // CPS3p
     606             :     UINT64_C(3774873664),       // CRC32B
     607             :     UINT64_C(3774874176),       // CRC32CB
     608             :     UINT64_C(3776971328),       // CRC32CH
     609             :     UINT64_C(3779068480),       // CRC32CW
     610             :     UINT64_C(3776970816),       // CRC32H
     611             :     UINT64_C(3779067968),       // CRC32W
     612             :     UINT64_C(52490480), // DBG
     613             :     UINT64_C(4118802512),       // DMB
     614             :     UINT64_C(4118802496),       // DSB
     615             :     UINT64_C(35651584), // EORri
     616             :     UINT64_C(2097152),  // EORrr
     617             :     UINT64_C(2097152),  // EORrsi
     618             :     UINT64_C(2097168),  // EORrsr
     619             :     UINT64_C(23068782), // ERET
     620             :     UINT64_C(246418176),        // FCONSTD
     621             :     UINT64_C(246417664),        // FCONSTH
     622             :     UINT64_C(246417920),        // FCONSTS
     623             :     UINT64_C(221252353),        // FLDMXDB_UPD
     624             :     UINT64_C(210766593),        // FLDMXIA
     625             :     UINT64_C(212863745),        // FLDMXIA_UPD
     626             :     UINT64_C(250739216),        // FMSTAT
     627             :     UINT64_C(220203777),        // FSTMXDB_UPD
     628             :     UINT64_C(209718017),        // FSTMXIA
     629             :     UINT64_C(211815169),        // FSTMXIA_UPD
     630             :     UINT64_C(52490240), // HINT
     631             :     UINT64_C(3774873712),       // HLT
     632             :     UINT64_C(3779068016),       // HVC
     633             :     UINT64_C(4118802528),       // ISB
     634             :     UINT64_C(26217631), // LDA
     635             :     UINT64_C(30411935), // LDAB
     636             :     UINT64_C(26218143), // LDAEX
     637             :     UINT64_C(30412447), // LDAEXB
     638             :     UINT64_C(28315295), // LDAEXD
     639             :     UINT64_C(32509599), // LDAEXH
     640             :     UINT64_C(32509087), // LDAH
     641             :     UINT64_C(4249878528),       // LDC2L_OFFSET
     642             :     UINT64_C(4241489920),       // LDC2L_OPTION
     643             :     UINT64_C(4235198464),       // LDC2L_POST
     644             :     UINT64_C(4251975680),       // LDC2L_PRE
     645             :     UINT64_C(4245684224),       // LDC2_OFFSET
     646             :     UINT64_C(4237295616),       // LDC2_OPTION
     647             :     UINT64_C(4231004160),       // LDC2_POST
     648             :     UINT64_C(4247781376),       // LDC2_PRE
     649             :     UINT64_C(223346688),        // LDCL_OFFSET
     650             :     UINT64_C(214958080),        // LDCL_OPTION
     651             :     UINT64_C(208666624),        // LDCL_POST
     652             :     UINT64_C(225443840),        // LDCL_PRE
     653             :     UINT64_C(219152384),        // LDC_OFFSET
     654             :     UINT64_C(210763776),        // LDC_OPTION
     655             :     UINT64_C(204472320),        // LDC_POST
     656             :     UINT64_C(221249536),        // LDC_PRE
     657             :     UINT64_C(135266304),        // LDMDA
     658             :     UINT64_C(137363456),        // LDMDA_UPD
     659             :     UINT64_C(152043520),        // LDMDB
     660             :     UINT64_C(154140672),        // LDMDB_UPD
     661             :     UINT64_C(143654912),        // LDMIA
     662             :     UINT64_C(145752064),        // LDMIA_UPD
     663             :     UINT64_C(160432128),        // LDMIB
     664             :     UINT64_C(162529280),        // LDMIB_UPD
     665             :     UINT64_C(74448896), // LDRBT_POST_IMM
     666             :     UINT64_C(108003328),        // LDRBT_POST_REG
     667             :     UINT64_C(72351744), // LDRB_POST_IMM
     668             :     UINT64_C(105906176),        // LDRB_POST_REG
     669             :     UINT64_C(91226112), // LDRB_PRE_IMM
     670             :     UINT64_C(124780544),        // LDRB_PRE_REG
     671             :     UINT64_C(89128960), // LDRBi12
     672             :     UINT64_C(122683392),        // LDRBrs
     673             :     UINT64_C(16777424), // LDRD
     674             :     UINT64_C(208),      // LDRD_POST
     675             :     UINT64_C(18874576), // LDRD_PRE
     676             :     UINT64_C(26218399), // LDREX
     677             :     UINT64_C(30412703), // LDREXB
     678             :     UINT64_C(28315551), // LDREXD
     679             :     UINT64_C(32509855), // LDREXH
     680             :     UINT64_C(17825968), // LDRH
     681             :     UINT64_C(7340208),  // LDRHTi
     682             :     UINT64_C(3145904),  // LDRHTr
     683             :     UINT64_C(1048752),  // LDRH_POST
     684             :     UINT64_C(19923120), // LDRH_PRE
     685             :     UINT64_C(17826000), // LDRSB
     686             :     UINT64_C(7340240),  // LDRSBTi
     687             :     UINT64_C(3145936),  // LDRSBTr
     688             :     UINT64_C(1048784),  // LDRSB_POST
     689             :     UINT64_C(19923152), // LDRSB_PRE
     690             :     UINT64_C(17826032), // LDRSH
     691             :     UINT64_C(7340272),  // LDRSHTi
     692             :     UINT64_C(3145968),  // LDRSHTr
     693             :     UINT64_C(1048816),  // LDRSH_POST
     694             :     UINT64_C(19923184), // LDRSH_PRE
     695             :     UINT64_C(70254592), // LDRT_POST_IMM
     696             :     UINT64_C(103809024),        // LDRT_POST_REG
     697             :     UINT64_C(68157440), // LDR_POST_IMM
     698             :     UINT64_C(101711872),        // LDR_POST_REG
     699             :     UINT64_C(87031808), // LDR_PRE_IMM
     700             :     UINT64_C(120586240),        // LDR_PRE_REG
     701             :     UINT64_C(85917696), // LDRcp
     702             :     UINT64_C(84934656), // LDRi12
     703             :     UINT64_C(118489088),        // LDRrs
     704             :     UINT64_C(234881040),        // MCR
     705             :     UINT64_C(4261412880),       // MCR2
     706             :     UINT64_C(205520896),        // MCRR
     707             :     UINT64_C(4232052736),       // MCRR2
     708             :     UINT64_C(2097296),  // MLA
     709             :     UINT64_C(6291600),  // MLS
     710             :     UINT64_C(27324430), // MOVPCLR
     711             :     UINT64_C(54525952), // MOVTi16
     712             :     UINT64_C(60817408), // MOVi
     713             :     UINT64_C(50331648), // MOVi16
     714             :     UINT64_C(27262976), // MOVr
     715             :     UINT64_C(27262976), // MOVr_TC
     716             :     UINT64_C(27262976), // MOVsi
     717             :     UINT64_C(27262992), // MOVsr
     718             :     UINT64_C(235929616),        // MRC
     719             :     UINT64_C(4262461456),       // MRC2
     720             :     UINT64_C(206569472),        // MRRC
     721             :     UINT64_C(4233101312),       // MRRC2
     722             :     UINT64_C(17760256), // MRS
     723             :     UINT64_C(16777728), // MRSbanked
     724             :     UINT64_C(21954560), // MRSsys
     725             :     UINT64_C(18935808), // MSR
     726             :     UINT64_C(18936320), // MSRbanked
     727             :     UINT64_C(52490240), // MSRi
     728             :     UINT64_C(144),      // MUL
     729             :     UINT64_C(65011712), // MVNi
     730             :     UINT64_C(31457280), // MVNr
     731             :     UINT64_C(31457280), // MVNsi
     732             :     UINT64_C(31457296), // MVNsr
     733             :     UINT64_C(58720256), // ORRri
     734             :     UINT64_C(25165824), // ORRrr
     735             :     UINT64_C(25165824), // ORRrsi
     736             :     UINT64_C(25165840), // ORRrsr
     737             :     UINT64_C(109051920),        // PKHBT
     738             :     UINT64_C(109051984),        // PKHTB
     739             :     UINT64_C(4111527936),       // PLDWi12
     740             :     UINT64_C(4145082368),       // PLDWrs
     741             :     UINT64_C(4115722240),       // PLDi12
     742             :     UINT64_C(4149276672),       // PLDrs
     743             :     UINT64_C(4098945024),       // PLIi12
     744             :     UINT64_C(4132499456),       // PLIrs
     745             :     UINT64_C(16777296), // QADD
     746             :     UINT64_C(102764304),        // QADD16
     747             :     UINT64_C(102764432),        // QADD8
     748             :     UINT64_C(102764336),        // QASX
     749             :     UINT64_C(20971600), // QDADD
     750             :     UINT64_C(23068752), // QDSUB
     751             :     UINT64_C(102764368),        // QSAX
     752             :     UINT64_C(18874448), // QSUB
     753             :     UINT64_C(102764400),        // QSUB16
     754             :     UINT64_C(102764528),        // QSUB8
     755             :     UINT64_C(117378864),        // RBIT
     756             :     UINT64_C(113184560),        // REV
     757             :     UINT64_C(113184688),        // REV16
     758             :     UINT64_C(117378992),        // REVSH
     759             :     UINT64_C(4161800704),       // RFEDA
     760             :     UINT64_C(4163897856),       // RFEDA_UPD
     761             :     UINT64_C(4178577920),       // RFEDB
     762             :     UINT64_C(4180675072),       // RFEDB_UPD
     763             :     UINT64_C(4170189312),       // RFEIA
     764             :     UINT64_C(4172286464),       // RFEIA_UPD
     765             :     UINT64_C(4186966528),       // RFEIB
     766             :     UINT64_C(4189063680),       // RFEIB_UPD
     767             :     UINT64_C(39845888), // RSBri
     768             :     UINT64_C(6291456),  // RSBrr
     769             :     UINT64_C(6291456),  // RSBrsi
     770             :     UINT64_C(6291472),  // RSBrsr
     771             :     UINT64_C(48234496), // RSCri
     772             :     UINT64_C(14680064), // RSCrr
     773             :     UINT64_C(14680064), // RSCrsi
     774             :     UINT64_C(14680080), // RSCrsr
     775             :     UINT64_C(101715728),        // SADD16
     776             :     UINT64_C(101715856),        // SADD8
     777             :     UINT64_C(101715760),        // SASX
     778             :     UINT64_C(4118802544),       // SB
     779             :     UINT64_C(46137344), // SBCri
     780             :     UINT64_C(12582912), // SBCrr
     781             :     UINT64_C(12582912), // SBCrsi
     782             :     UINT64_C(12582928), // SBCrsr
     783             :     UINT64_C(127926352),        // SBFX
     784             :     UINT64_C(118550544),        // SDIV
     785             :     UINT64_C(109055920),        // SEL
     786             :     UINT64_C(4043374592),       // SETEND
     787             :     UINT64_C(4044357632),       // SETPAN
     788             :     UINT64_C(4060089408),       // SHA1C
     789             :     UINT64_C(4088988352),       // SHA1H
     790             :     UINT64_C(4062186560),       // SHA1M
     791             :     UINT64_C(4061137984),       // SHA1P
     792             :     UINT64_C(4063235136),       // SHA1SU0
     793             :     UINT64_C(4089054080),       // SHA1SU1
     794             :     UINT64_C(4076866624),       // SHA256H
     795             :     UINT64_C(4077915200),       // SHA256H2
     796             :     UINT64_C(4089054144),       // SHA256SU0
     797             :     UINT64_C(4078963776),       // SHA256SU1
     798             :     UINT64_C(103812880),        // SHADD16
     799             :     UINT64_C(103813008),        // SHADD8
     800             :     UINT64_C(103812912),        // SHASX
     801             :     UINT64_C(103812944),        // SHSAX
     802             :     UINT64_C(103812976),        // SHSUB16
     803             :     UINT64_C(103813104),        // SHSUB8
     804             :     UINT64_C(23068784), // SMC
     805             :     UINT64_C(16777344), // SMLABB
     806             :     UINT64_C(16777408), // SMLABT
     807             :     UINT64_C(117440528),        // SMLAD
     808             :     UINT64_C(117440560),        // SMLADX
     809             :     UINT64_C(14680208), // SMLAL
     810             :     UINT64_C(20971648), // SMLALBB
     811             :     UINT64_C(20971712), // SMLALBT
     812             :     UINT64_C(121634832),        // SMLALD
     813             :     UINT64_C(121634864),        // SMLALDX
     814             :     UINT64_C(20971680), // SMLALTB
     815             :     UINT64_C(20971744), // SMLALTT
     816             :     UINT64_C(16777376), // SMLATB
     817             :     UINT64_C(16777440), // SMLATT
     818             :     UINT64_C(18874496), // SMLAWB
     819             :     UINT64_C(18874560), // SMLAWT
     820             :     UINT64_C(117440592),        // SMLSD
     821             :     UINT64_C(117440624),        // SMLSDX
     822             :     UINT64_C(121634896),        // SMLSLD
     823             :     UINT64_C(121634928),        // SMLSLDX
     824             :     UINT64_C(122683408),        // SMMLA
     825             :     UINT64_C(122683440),        // SMMLAR
     826             :     UINT64_C(122683600),        // SMMLS
     827             :     UINT64_C(122683632),        // SMMLSR
     828             :     UINT64_C(122744848),        // SMMUL
     829             :     UINT64_C(122744880),        // SMMULR
     830             :     UINT64_C(117501968),        // SMUAD
     831             :     UINT64_C(117502000),        // SMUADX
     832             :     UINT64_C(23068800), // SMULBB
     833             :     UINT64_C(23068864), // SMULBT
     834             :     UINT64_C(12583056), // SMULL
     835             :     UINT64_C(23068832), // SMULTB
     836             :     UINT64_C(23068896), // SMULTT
     837             :     UINT64_C(18874528), // SMULWB
     838             :     UINT64_C(18874592), // SMULWT
     839             :     UINT64_C(117502032),        // SMUSD
     840             :     UINT64_C(117502064),        // SMUSDX
     841             :     UINT64_C(4165797120),       // SRSDA
     842             :     UINT64_C(4167894272),       // SRSDA_UPD
     843             :     UINT64_C(4182574336),       // SRSDB
     844             :     UINT64_C(4184671488),       // SRSDB_UPD
     845             :     UINT64_C(4174185728),       // SRSIA
     846             :     UINT64_C(4176282880),       // SRSIA_UPD
     847             :     UINT64_C(4190962944),       // SRSIB
     848             :     UINT64_C(4193060096),       // SRSIB_UPD
     849             :     UINT64_C(111149072),        // SSAT
     850             :     UINT64_C(111152944),        // SSAT16
     851             :     UINT64_C(101715792),        // SSAX
     852             :     UINT64_C(101715824),        // SSUB16
     853             :     UINT64_C(101715952),        // SSUB8
     854             :     UINT64_C(4248829952),       // STC2L_OFFSET
     855             :     UINT64_C(4240441344),       // STC2L_OPTION
     856             :     UINT64_C(4234149888),       // STC2L_POST
     857             :     UINT64_C(4250927104),       // STC2L_PRE
     858             :     UINT64_C(4244635648),       // STC2_OFFSET
     859             :     UINT64_C(4236247040),       // STC2_OPTION
     860             :     UINT64_C(4229955584),       // STC2_POST
     861             :     UINT64_C(4246732800),       // STC2_PRE
     862             :     UINT64_C(222298112),        // STCL_OFFSET
     863             :     UINT64_C(213909504),        // STCL_OPTION
     864             :     UINT64_C(207618048),        // STCL_POST
     865             :     UINT64_C(224395264),        // STCL_PRE
     866             :     UINT64_C(218103808),        // STC_OFFSET
     867             :     UINT64_C(209715200),        // STC_OPTION
     868             :     UINT64_C(203423744),        // STC_POST
     869             :     UINT64_C(220200960),        // STC_PRE
     870             :     UINT64_C(25230480), // STL
     871             :     UINT64_C(29424784), // STLB
     872             :     UINT64_C(25169552), // STLEX
     873             :     UINT64_C(29363856), // STLEXB
     874             :     UINT64_C(27266704), // STLEXD
     875             :     UINT64_C(31461008), // STLEXH
     876             :     UINT64_C(31521936), // STLH
     877             :     UINT64_C(134217728),        // STMDA
     878             :     UINT64_C(136314880),        // STMDA_UPD
     879             :     UINT64_C(150994944),        // STMDB
     880             :     UINT64_C(153092096),        // STMDB_UPD
     881             :     UINT64_C(142606336),        // STMIA
     882             :     UINT64_C(144703488),        // STMIA_UPD
     883             :     UINT64_C(159383552),        // STMIB
     884             :     UINT64_C(161480704),        // STMIB_UPD
     885             :     UINT64_C(73400320), // STRBT_POST_IMM
     886             :     UINT64_C(106954752),        // STRBT_POST_REG
     887             :     UINT64_C(71303168), // STRB_POST_IMM
     888             :     UINT64_C(104857600),        // STRB_POST_REG
     889             :     UINT64_C(90177536), // STRB_PRE_IMM
     890             :     UINT64_C(123731968),        // STRB_PRE_REG
     891             :     UINT64_C(88080384), // STRBi12
     892             :     UINT64_C(121634816),        // STRBrs
     893             :     UINT64_C(16777456), // STRD
     894             :     UINT64_C(240),      // STRD_POST
     895             :     UINT64_C(18874608), // STRD_PRE
     896             :     UINT64_C(25169808), // STREX
     897             :     UINT64_C(29364112), // STREXB
     898             :     UINT64_C(27266960), // STREXD
     899             :     UINT64_C(31461264), // STREXH
     900             :     UINT64_C(16777392), // STRH
     901             :     UINT64_C(6291632),  // STRHTi
     902             :     UINT64_C(2097328),  // STRHTr
     903             :     UINT64_C(176),      // STRH_POST
     904             :     UINT64_C(18874544), // STRH_PRE
     905             :     UINT64_C(69206016), // STRT_POST_IMM
     906             :     UINT64_C(102760448),        // STRT_POST_REG
     907             :     UINT64_C(67108864), // STR_POST_IMM
     908             :     UINT64_C(100663296),        // STR_POST_REG
     909             :     UINT64_C(85983232), // STR_PRE_IMM
     910             :     UINT64_C(119537664),        // STR_PRE_REG
     911             :     UINT64_C(83886080), // STRi12
     912             :     UINT64_C(117440512),        // STRrs
     913             :     UINT64_C(37748736), // SUBri
     914             :     UINT64_C(4194304),  // SUBrr
     915             :     UINT64_C(4194304),  // SUBrsi
     916             :     UINT64_C(4194320),  // SUBrsr
     917             :     UINT64_C(251658240),        // SVC
     918             :     UINT64_C(16777360), // SWP
     919             :     UINT64_C(20971664), // SWPB
     920             :     UINT64_C(111149168),        // SXTAB
     921             :     UINT64_C(109052016),        // SXTAB16
     922             :     UINT64_C(112197744),        // SXTAH
     923             :     UINT64_C(112132208),        // SXTB
     924             :     UINT64_C(110035056),        // SXTB16
     925             :     UINT64_C(113180784),        // SXTH
     926             :     UINT64_C(53477376), // TEQri
     927             :     UINT64_C(19922944), // TEQrr
     928             :     UINT64_C(19922944), // TEQrsi
     929             :     UINT64_C(19922960), // TEQrsr
     930             :     UINT64_C(3892305662),       // TRAP
     931             :     UINT64_C(3892240112),       // TRAPNaCl
     932             :     UINT64_C(3810586642),       // TSB
     933             :     UINT64_C(51380224), // TSTri
     934             :     UINT64_C(17825792), // TSTrr
     935             :     UINT64_C(17825792), // TSTrsi
     936             :     UINT64_C(17825808), // TSTrsr
     937             :     UINT64_C(105910032),        // UADD16
     938             :     UINT64_C(105910160),        // UADD8
     939             :     UINT64_C(105910064),        // UASX
     940             :     UINT64_C(132120656),        // UBFX
     941             :     UINT64_C(3891265776),       // UDF
     942             :     UINT64_C(120647696),        // UDIV
     943             :     UINT64_C(108007184),        // UHADD16
     944             :     UINT64_C(108007312),        // UHADD8
     945             :     UINT64_C(108007216),        // UHASX
     946             :     UINT64_C(108007248),        // UHSAX
     947             :     UINT64_C(108007280),        // UHSUB16
     948             :     UINT64_C(108007408),        // UHSUB8
     949             :     UINT64_C(4194448),  // UMAAL
     950             :     UINT64_C(10485904), // UMLAL
     951             :     UINT64_C(8388752),  // UMULL
     952             :     UINT64_C(106958608),        // UQADD16
     953             :     UINT64_C(106958736),        // UQADD8
     954             :     UINT64_C(106958640),        // UQASX
     955             :     UINT64_C(106958672),        // UQSAX
     956             :     UINT64_C(106958704),        // UQSUB16
     957             :     UINT64_C(106958832),        // UQSUB8
     958             :     UINT64_C(125890576),        // USAD8
     959             :     UINT64_C(125829136),        // USADA8
     960             :     UINT64_C(115343376),        // USAT
     961             :     UINT64_C(115347248),        // USAT16
     962             :     UINT64_C(105910096),        // USAX
     963             :     UINT64_C(105910128),        // USUB16
     964             :     UINT64_C(105910256),        // USUB8
     965             :     UINT64_C(115343472),        // UXTAB
     966             :     UINT64_C(113246320),        // UXTAB16
     967             :     UINT64_C(116392048),        // UXTAH
     968             :     UINT64_C(116326512),        // UXTB
     969             :     UINT64_C(114229360),        // UXTB16
     970             :     UINT64_C(117375088),        // UXTH
     971             :     UINT64_C(4070573312),       // VABALsv2i64
     972             :     UINT64_C(4069524736),       // VABALsv4i32
     973             :     UINT64_C(4068476160),       // VABALsv8i16
     974             :     UINT64_C(4087350528),       // VABALuv2i64
     975             :     UINT64_C(4086301952),       // VABALuv4i32
     976             :     UINT64_C(4085253376),       // VABALuv8i16
     977             :     UINT64_C(4060088144),       // VABAsv16i8
     978             :     UINT64_C(4062185232),       // VABAsv2i32
     979             :     UINT64_C(4061136656),       // VABAsv4i16
     980             :     UINT64_C(4062185296),       // VABAsv4i32
     981             :     UINT64_C(4061136720),       // VABAsv8i16
     982             :     UINT64_C(4060088080),       // VABAsv8i8
     983             :     UINT64_C(4076865360),       // VABAuv16i8
     984             :     UINT64_C(4078962448),       // VABAuv2i32
     985             :     UINT64_C(4077913872),       // VABAuv4i16
     986             :     UINT64_C(4078962512),       // VABAuv4i32
     987             :     UINT64_C(4077913936),       // VABAuv8i16
     988             :     UINT64_C(4076865296),       // VABAuv8i8
     989             :     UINT64_C(4070573824),       // VABDLsv2i64
     990             :     UINT64_C(4069525248),       // VABDLsv4i32
     991             :     UINT64_C(4068476672),       // VABDLsv8i16
     992             :     UINT64_C(4087351040),       // VABDLuv2i64
     993             :     UINT64_C(4086302464),       // VABDLuv4i32
     994             :     UINT64_C(4085253888),       // VABDLuv8i16
     995             :     UINT64_C(4078963968),       // VABDfd
     996             :     UINT64_C(4078964032),       // VABDfq
     997             :     UINT64_C(4080012544),       // VABDhd
     998             :     UINT64_C(4080012608),       // VABDhq
     999             :     UINT64_C(4060088128),       // VABDsv16i8
    1000             :     UINT64_C(4062185216),       // VABDsv2i32
    1001             :     UINT64_C(4061136640),       // VABDsv4i16
    1002             :     UINT64_C(4062185280),       // VABDsv4i32
    1003             :     UINT64_C(4061136704),       // VABDsv8i16
    1004             :     UINT64_C(4060088064),       // VABDsv8i8
    1005             :     UINT64_C(4076865344),       // VABDuv16i8
    1006             :     UINT64_C(4078962432),       // VABDuv2i32
    1007             :     UINT64_C(4077913856),       // VABDuv4i16
    1008             :     UINT64_C(4078962496),       // VABDuv4i32
    1009             :     UINT64_C(4077913920),       // VABDuv8i16
    1010             :     UINT64_C(4076865280),       // VABDuv8i8
    1011             :     UINT64_C(246418368),        // VABSD
    1012             :     UINT64_C(246417856),        // VABSH
    1013             :     UINT64_C(246418112),        // VABSS
    1014             :     UINT64_C(4088989440),       // VABSfd
    1015             :     UINT64_C(4088989504),       // VABSfq
    1016             :     UINT64_C(4088727296),       // VABShd
    1017             :     UINT64_C(4088727360),       // VABShq
    1018             :     UINT64_C(4088464192),       // VABSv16i8
    1019             :     UINT64_C(4088988416),       // VABSv2i32
    1020             :     UINT64_C(4088726272),       // VABSv4i16
    1021             :     UINT64_C(4088988480),       // VABSv4i32
    1022             :     UINT64_C(4088726336),       // VABSv8i16
    1023             :     UINT64_C(4088464128),       // VABSv8i8
    1024             :     UINT64_C(4076867088),       // VACGEfd
    1025             :     UINT64_C(4076867152),       // VACGEfq
    1026             :     UINT64_C(4077915664),       // VACGEhd
    1027             :     UINT64_C(4077915728),       // VACGEhq
    1028             :     UINT64_C(4078964240),       // VACGTfd
    1029             :     UINT64_C(4078964304),       // VACGTfq
    1030             :     UINT64_C(4080012816),       // VACGThd
    1031             :     UINT64_C(4080012880),       // VACGThq
    1032             :     UINT64_C(238029568),        // VADDD
    1033             :     UINT64_C(238029056),        // VADDH
    1034             :     UINT64_C(4070573056),       // VADDHNv2i32
    1035             :     UINT64_C(4069524480),       // VADDHNv4i16
    1036             :     UINT64_C(4068475904),       // VADDHNv8i8
    1037             :     UINT64_C(4070572032),       // VADDLsv2i64
    1038             :     UINT64_C(4069523456),       // VADDLsv4i32
    1039             :     UINT64_C(4068474880),       // VADDLsv8i16
    1040             :     UINT64_C(4087349248),       // VADDLuv2i64
    1041             :     UINT64_C(4086300672),       // VADDLuv4i32
    1042             :     UINT64_C(4085252096),       // VADDLuv8i16
    1043             :     UINT64_C(238029312),        // VADDS
    1044             :     UINT64_C(4070572288),       // VADDWsv2i64
    1045             :     UINT64_C(4069523712),       // VADDWsv4i32
    1046             :     UINT64_C(4068475136),       // VADDWsv8i16
    1047             :     UINT64_C(4087349504),       // VADDWuv2i64
    1048             :     UINT64_C(4086300928),       // VADDWuv4i32
    1049             :     UINT64_C(4085252352),       // VADDWuv8i16
    1050             :     UINT64_C(4060089600),       // VADDfd
    1051             :     UINT64_C(4060089664),       // VADDfq
    1052             :     UINT64_C(4061138176),       // VADDhd
    1053             :     UINT64_C(4061138240),       // VADDhq
    1054             :     UINT64_C(4060088384),       // VADDv16i8
    1055             :     UINT64_C(4063234048),       // VADDv1i64
    1056             :     UINT64_C(4062185472),       // VADDv2i32
    1057             :     UINT64_C(4063234112),       // VADDv2i64
    1058             :     UINT64_C(4061136896),       // VADDv4i16
    1059             :     UINT64_C(4062185536),       // VADDv4i32
    1060             :     UINT64_C(4061136960),       // VADDv8i16
    1061             :     UINT64_C(4060088320),       // VADDv8i8
    1062             :     UINT64_C(4060086544),       // VANDd
    1063             :     UINT64_C(4060086608),       // VANDq
    1064             :     UINT64_C(4061135120),       // VBICd
    1065             :     UINT64_C(4068475184),       // VBICiv2i32
    1066             :     UINT64_C(4068477232),       // VBICiv4i16
    1067             :     UINT64_C(4068475248),       // VBICiv4i32
    1068             :     UINT64_C(4068477296),       // VBICiv8i16
    1069             :     UINT64_C(4061135184),       // VBICq
    1070             :     UINT64_C(4080009488),       // VBIFd
    1071             :     UINT64_C(4080009552),       // VBIFq
    1072             :     UINT64_C(4078960912),       // VBITd
    1073             :     UINT64_C(4078960976),       // VBITq
    1074             :     UINT64_C(4077912336),       // VBSLd
    1075             :     UINT64_C(4077912400),       // VBSLq
    1076             :     UINT64_C(4237297664),       // VCADDv2f32
    1077             :     UINT64_C(4236249088),       // VCADDv4f16
    1078             :     UINT64_C(4237297728),       // VCADDv4f32
    1079             :     UINT64_C(4236249152),       // VCADDv8f16
    1080             :     UINT64_C(4060089856),       // VCEQfd
    1081             :     UINT64_C(4060089920),       // VCEQfq
    1082             :     UINT64_C(4061138432),       // VCEQhd
    1083             :     UINT64_C(4061138496),       // VCEQhq
    1084             :     UINT64_C(4076865616),       // VCEQv16i8
    1085             :     UINT64_C(4078962704),       // VCEQv2i32
    1086             :     UINT64_C(4077914128),       // VCEQv4i16
    1087             :     UINT64_C(4078962768),       // VCEQv4i32
    1088             :     UINT64_C(4077914192),       // VCEQv8i16
    1089             :     UINT64_C(4076865552),       // VCEQv8i8
    1090             :     UINT64_C(4088463680),       // VCEQzv16i8
    1091             :     UINT64_C(4088988928),       // VCEQzv2f32
    1092             :     UINT64_C(4088987904),       // VCEQzv2i32
    1093             :     UINT64_C(4088726784),       // VCEQzv4f16
    1094             :     UINT64_C(4088988992),       // VCEQzv4f32
    1095             :     UINT64_C(4088725760),       // VCEQzv4i16
    1096             :     UINT64_C(4088987968),       // VCEQzv4i32
    1097             :     UINT64_C(4088726848),       // VCEQzv8f16
    1098             :     UINT64_C(4088725824),       // VCEQzv8i16
    1099             :     UINT64_C(4088463616),       // VCEQzv8i8
    1100             :     UINT64_C(4076867072),       // VCGEfd
    1101             :     UINT64_C(4076867136),       // VCGEfq
    1102             :     UINT64_C(4077915648),       // VCGEhd
    1103             :     UINT64_C(4077915712),       // VCGEhq
    1104             :     UINT64_C(4060087120),       // VCGEsv16i8
    1105             :     UINT64_C(4062184208),       // VCGEsv2i32
    1106             :     UINT64_C(4061135632),       // VCGEsv4i16
    1107             :     UINT64_C(4062184272),       // VCGEsv4i32
    1108             :     UINT64_C(4061135696),       // VCGEsv8i16
    1109             :     UINT64_C(4060087056),       // VCGEsv8i8
    1110             :     UINT64_C(4076864336),       // VCGEuv16i8
    1111             :     UINT64_C(4078961424),       // VCGEuv2i32
    1112             :     UINT64_C(4077912848),       // VCGEuv4i16
    1113             :     UINT64_C(4078961488),       // VCGEuv4i32
    1114             :     UINT64_C(4077912912),       // VCGEuv8i16
    1115             :     UINT64_C(4076864272),       // VCGEuv8i8
    1116             :     UINT64_C(4088463552),       // VCGEzv16i8
    1117             :     UINT64_C(4088988800),       // VCGEzv2f32
    1118             :     UINT64_C(4088987776),       // VCGEzv2i32
    1119             :     UINT64_C(4088726656),       // VCGEzv4f16
    1120             :     UINT64_C(4088988864),       // VCGEzv4f32
    1121             :     UINT64_C(4088725632),       // VCGEzv4i16
    1122             :     UINT64_C(4088987840),       // VCGEzv4i32
    1123             :     UINT64_C(4088726720),       // VCGEzv8f16
    1124             :     UINT64_C(4088725696),       // VCGEzv8i16
    1125             :     UINT64_C(4088463488),       // VCGEzv8i8
    1126             :     UINT64_C(4078964224),       // VCGTfd
    1127             :     UINT64_C(4078964288),       // VCGTfq
    1128             :     UINT64_C(4080012800),       // VCGThd
    1129             :     UINT64_C(4080012864),       // VCGThq
    1130             :     UINT64_C(4060087104),       // VCGTsv16i8
    1131             :     UINT64_C(4062184192),       // VCGTsv2i32
    1132             :     UINT64_C(4061135616),       // VCGTsv4i16
    1133             :     UINT64_C(4062184256),       // VCGTsv4i32
    1134             :     UINT64_C(4061135680),       // VCGTsv8i16
    1135             :     UINT64_C(4060087040),       // VCGTsv8i8
    1136             :     UINT64_C(4076864320),       // VCGTuv16i8
    1137             :     UINT64_C(4078961408),       // VCGTuv2i32
    1138             :     UINT64_C(4077912832),       // VCGTuv4i16
    1139             :     UINT64_C(4078961472),       // VCGTuv4i32
    1140             :     UINT64_C(4077912896),       // VCGTuv8i16
    1141             :     UINT64_C(4076864256),       // VCGTuv8i8
    1142             :     UINT64_C(4088463424),       // VCGTzv16i8
    1143             :     UINT64_C(4088988672),       // VCGTzv2f32
    1144             :     UINT64_C(4088987648),       // VCGTzv2i32
    1145             :     UINT64_C(4088726528),       // VCGTzv4f16
    1146             :     UINT64_C(4088988736),       // VCGTzv4f32
    1147             :     UINT64_C(4088725504),       // VCGTzv4i16
    1148             :     UINT64_C(4088987712),       // VCGTzv4i32
    1149             :     UINT64_C(4088726592),       // VCGTzv8f16
    1150             :     UINT64_C(4088725568),       // VCGTzv8i16
    1151             :     UINT64_C(4088463360),       // VCGTzv8i8
    1152             :     UINT64_C(4088463808),       // VCLEzv16i8
    1153             :     UINT64_C(4088989056),       // VCLEzv2f32
    1154             :     UINT64_C(4088988032),       // VCLEzv2i32
    1155             :     UINT64_C(4088726912),       // VCLEzv4f16
    1156             :     UINT64_C(4088989120),       // VCLEzv4f32
    1157             :     UINT64_C(4088725888),       // VCLEzv4i16
    1158             :     UINT64_C(4088988096),       // VCLEzv4i32
    1159             :     UINT64_C(4088726976),       // VCLEzv8f16
    1160             :     UINT64_C(4088725952),       // VCLEzv8i16
    1161             :     UINT64_C(4088463744),       // VCLEzv8i8
    1162             :     UINT64_C(4088398912),       // VCLSv16i8
    1163             :     UINT64_C(4088923136),       // VCLSv2i32
    1164             :     UINT64_C(4088660992),       // VCLSv4i16
    1165             :     UINT64_C(4088923200),       // VCLSv4i32
    1166             :     UINT64_C(4088661056),       // VCLSv8i16
    1167             :     UINT64_C(4088398848),       // VCLSv8i8
    1168             :     UINT64_C(4088463936),       // VCLTzv16i8
    1169             :     UINT64_C(4088989184),       // VCLTzv2f32
    1170             :     UINT64_C(4088988160),       // VCLTzv2i32
    1171             :     UINT64_C(4088727040),       // VCLTzv4f16
    1172             :     UINT64_C(4088989248),       // VCLTzv4f32
    1173             :     UINT64_C(4088726016),       // VCLTzv4i16
    1174             :     UINT64_C(4088988224),       // VCLTzv4i32
    1175             :     UINT64_C(4088727104),       // VCLTzv8f16
    1176             :     UINT64_C(4088726080),       // VCLTzv8i16
    1177             :     UINT64_C(4088463872),       // VCLTzv8i8
    1178             :     UINT64_C(4088399040),       // VCLZv16i8
    1179             :     UINT64_C(4088923264),       // VCLZv2i32
    1180             :     UINT64_C(4088661120),       // VCLZv4i16
    1181             :     UINT64_C(4088923328),       // VCLZv4i32
    1182             :     UINT64_C(4088661184),       // VCLZv8i16
    1183             :     UINT64_C(4088398976),       // VCLZv8i8
    1184             :     UINT64_C(4231006208),       // VCMLAv2f32
    1185             :     UINT64_C(4269803520),       // VCMLAv2f32_indexed
    1186             :     UINT64_C(4229957632),       // VCMLAv4f16
    1187             :     UINT64_C(4261414912),       // VCMLAv4f16_indexed
    1188             :     UINT64_C(4231006272),       // VCMLAv4f32
    1189             :     UINT64_C(4269803584),       // VCMLAv4f32_indexed
    1190             :     UINT64_C(4229957696),       // VCMLAv8f16
    1191             :     UINT64_C(4261414976),       // VCMLAv8f16_indexed
    1192             :     UINT64_C(246680384),        // VCMPD
    1193             :     UINT64_C(246680512),        // VCMPED
    1194             :     UINT64_C(246680000),        // VCMPEH
    1195             :     UINT64_C(246680256),        // VCMPES
    1196             :     UINT64_C(246746048),        // VCMPEZD
    1197             :     UINT64_C(246745536),        // VCMPEZH
    1198             :     UINT64_C(246745792),        // VCMPEZS
    1199             :     UINT64_C(246679872),        // VCMPH
    1200             :     UINT64_C(246680128),        // VCMPS
    1201             :     UINT64_C(246745920),        // VCMPZD
    1202             :     UINT64_C(246745408),        // VCMPZH
    1203             :     UINT64_C(246745664),        // VCMPZS
    1204             :     UINT64_C(4088399104),       // VCNTd
    1205             :     UINT64_C(4088399168),       // VCNTq
    1206             :     UINT64_C(4089118720),       // VCVTANSDf
    1207             :     UINT64_C(4088856576),       // VCVTANSDh
    1208             :     UINT64_C(4089118784),       // VCVTANSQf
    1209             :     UINT64_C(4088856640),       // VCVTANSQh
    1210             :     UINT64_C(4089118848),       // VCVTANUDf
    1211             :     UINT64_C(4088856704),       // VCVTANUDh
    1212             :     UINT64_C(4089118912),       // VCVTANUQf
    1213             :     UINT64_C(4088856768),       // VCVTANUQh
    1214             :     UINT64_C(4273736640),       // VCVTASD
    1215             :     UINT64_C(4273736128),       // VCVTASH
    1216             :     UINT64_C(4273736384),       // VCVTASS
    1217             :     UINT64_C(4273736512),       // VCVTAUD
    1218             :     UINT64_C(4273736000),       // VCVTAUH
    1219             :     UINT64_C(4273736256),       // VCVTAUS
    1220             :     UINT64_C(246614848),        // VCVTBDH
    1221             :     UINT64_C(246549312),        // VCVTBHD
    1222             :     UINT64_C(246549056),        // VCVTBHS
    1223             :     UINT64_C(246614592),        // VCVTBSH
    1224             :     UINT64_C(246876864),        // VCVTDS
    1225             :     UINT64_C(4089119488),       // VCVTMNSDf
    1226             :     UINT64_C(4088857344),       // VCVTMNSDh
    1227             :     UINT64_C(4089119552),       // VCVTMNSQf
    1228             :     UINT64_C(4088857408),       // VCVTMNSQh
    1229             :     UINT64_C(4089119616),       // VCVTMNUDf
    1230             :     UINT64_C(4088857472),       // VCVTMNUDh
    1231             :     UINT64_C(4089119680),       // VCVTMNUQf
    1232             :     UINT64_C(4088857536),       // VCVTMNUQh
    1233             :     UINT64_C(4273933248),       // VCVTMSD
    1234             :     UINT64_C(4273932736),       // VCVTMSH
    1235             :     UINT64_C(4273932992),       // VCVTMSS
    1236             :     UINT64_C(4273933120),       // VCVTMUD
    1237             :     UINT64_C(4273932608),       // VCVTMUH
    1238             :     UINT64_C(4273932864),       // VCVTMUS
    1239             :     UINT64_C(4089118976),       // VCVTNNSDf
    1240             :     UINT64_C(4088856832),       // VCVTNNSDh
    1241             :     UINT64_C(4089119040),       // VCVTNNSQf
    1242             :     UINT64_C(4088856896),       // VCVTNNSQh
    1243             :     UINT64_C(4089119104),       // VCVTNNUDf
    1244             :     UINT64_C(4088856960),       // VCVTNNUDh
    1245             :     UINT64_C(4089119168),       // VCVTNNUQf
    1246             :     UINT64_C(4088857024),       // VCVTNNUQh
    1247             :     UINT64_C(4273802176),       // VCVTNSD
    1248             :     UINT64_C(4273801664),       // VCVTNSH
    1249             :     UINT64_C(4273801920),       // VCVTNSS
    1250             :     UINT64_C(4273802048),       // VCVTNUD
    1251             :     UINT64_C(4273801536),       // VCVTNUH
    1252             :     UINT64_C(4273801792),       // VCVTNUS
    1253             :     UINT64_C(4089119232),       // VCVTPNSDf
    1254             :     UINT64_C(4088857088),       // VCVTPNSDh
    1255             :     UINT64_C(4089119296),       // VCVTPNSQf
    1256             :     UINT64_C(4088857152),       // VCVTPNSQh
    1257             :     UINT64_C(4089119360),       // VCVTPNUDf
    1258             :     UINT64_C(4088857216),       // VCVTPNUDh
    1259             :     UINT64_C(4089119424),       // VCVTPNUQf
    1260             :     UINT64_C(4088857280),       // VCVTPNUQh
    1261             :     UINT64_C(4273867712),       // VCVTPSD
    1262             :     UINT64_C(4273867200),       // VCVTPSH
    1263             :     UINT64_C(4273867456),       // VCVTPSS
    1264             :     UINT64_C(4273867584),       // VCVTPUD
    1265             :     UINT64_C(4273867072),       // VCVTPUH
    1266             :     UINT64_C(4273867328),       // VCVTPUS
    1267             :     UINT64_C(246877120),        // VCVTSD
    1268             :     UINT64_C(246614976),        // VCVTTDH
    1269             :     UINT64_C(246549440),        // VCVTTHD
    1270             :     UINT64_C(246549184),        // VCVTTHS
    1271             :     UINT64_C(246614720),        // VCVTTSH
    1272             :     UINT64_C(4088792576),       // VCVTf2h
    1273             :     UINT64_C(4089120512),       // VCVTf2sd
    1274             :     UINT64_C(4089120576),       // VCVTf2sq
    1275             :     UINT64_C(4089120640),       // VCVTf2ud
    1276             :     UINT64_C(4089120704),       // VCVTf2uq
    1277             :     UINT64_C(4068478736),       // VCVTf2xsd
    1278             :     UINT64_C(4068478800),       // VCVTf2xsq
    1279             :     UINT64_C(4085255952),       // VCVTf2xud
    1280             :     UINT64_C(4085256016),       // VCVTf2xuq
    1281             :     UINT64_C(4088792832),       // VCVTh2f
    1282             :     UINT64_C(4088858368),       // VCVTh2sd
    1283             :     UINT64_C(4088858432),       // VCVTh2sq
    1284             :     UINT64_C(4088858496),       // VCVTh2ud
    1285             :     UINT64_C(4088858560),       // VCVTh2uq
    1286             :     UINT64_C(4068478224),       // VCVTh2xsd
    1287             :     UINT64_C(4068478288),       // VCVTh2xsq
    1288             :     UINT64_C(4085255440),       // VCVTh2xud
    1289             :     UINT64_C(4085255504),       // VCVTh2xuq
    1290             :     UINT64_C(4089120256),       // VCVTs2fd
    1291             :     UINT64_C(4089120320),       // VCVTs2fq
    1292             :     UINT64_C(4088858112),       // VCVTs2hd
    1293             :     UINT64_C(4088858176),       // VCVTs2hq
    1294             :     UINT64_C(4089120384),       // VCVTu2fd
    1295             :     UINT64_C(4089120448),       // VCVTu2fq
    1296             :     UINT64_C(4088858240),       // VCVTu2hd
    1297             :     UINT64_C(4088858304),       // VCVTu2hq
    1298             :     UINT64_C(4068478480),       // VCVTxs2fd
    1299             :     UINT64_C(4068478544),       // VCVTxs2fq
    1300             :     UINT64_C(4068477968),       // VCVTxs2hd
    1301             :     UINT64_C(4068478032),       // VCVTxs2hq
    1302             :     UINT64_C(4085255696),       // VCVTxu2fd
    1303             :     UINT64_C(4085255760),       // VCVTxu2fq
    1304             :     UINT64_C(4085255184),       // VCVTxu2hd
    1305             :     UINT64_C(4085255248),       // VCVTxu2hq
    1306             :     UINT64_C(243272448),        // VDIVD
    1307             :     UINT64_C(243271936),        // VDIVH
    1308             :     UINT64_C(243272192),        // VDIVS
    1309             :     UINT64_C(243272496),        // VDUP16d
    1310             :     UINT64_C(245369648),        // VDUP16q
    1311             :     UINT64_C(243272464),        // VDUP32d
    1312             :     UINT64_C(245369616),        // VDUP32q
    1313             :     UINT64_C(247466768),        // VDUP8d
    1314             :     UINT64_C(249563920),        // VDUP8q
    1315             :     UINT64_C(4088531968),       // VDUPLN16d
    1316             :     UINT64_C(4088532032),       // VDUPLN16q
    1317             :     UINT64_C(4088663040),       // VDUPLN32d
    1318             :     UINT64_C(4088663104),       // VDUPLN32q
    1319             :     UINT64_C(4088466432),       // VDUPLN8d
    1320             :     UINT64_C(4088466496),       // VDUPLN8q
    1321             :     UINT64_C(4076863760),       // VEORd
    1322             :     UINT64_C(4076863824),       // VEORq
    1323             :     UINT64_C(4071620608),       // VEXTd16
    1324             :     UINT64_C(4071620608),       // VEXTd32
    1325             :     UINT64_C(4071620608),       // VEXTd8
    1326             :     UINT64_C(4071620672),       // VEXTq16
    1327             :     UINT64_C(4071620672),       // VEXTq32
    1328             :     UINT64_C(4071620672),       // VEXTq64
    1329             :     UINT64_C(4071620672),       // VEXTq8
    1330             :     UINT64_C(245369600),        // VFMAD
    1331             :     UINT64_C(245369088),        // VFMAH
    1332             :     UINT64_C(4229957648),       // VFMALD
    1333             :     UINT64_C(4261414928),       // VFMALDI
    1334             :     UINT64_C(4229957712),       // VFMALQ
    1335             :     UINT64_C(4261414992),       // VFMALQI
    1336             :     UINT64_C(245369344),        // VFMAS
    1337             :     UINT64_C(4060089360),       // VFMAfd
    1338             :     UINT64_C(4060089424),       // VFMAfq
    1339             :     UINT64_C(4061137936),       // VFMAhd
    1340             :     UINT64_C(4061138000),       // VFMAhq
    1341             :     UINT64_C(245369664),        // VFMSD
    1342             :     UINT64_C(245369152),        // VFMSH
    1343             :     UINT64_C(4238346256),       // VFMSLD
    1344             :     UINT64_C(4262463504),       // VFMSLDI
    1345             :     UINT64_C(4238346320),       // VFMSLQ
    1346             :     UINT64_C(4262463568),       // VFMSLQI
    1347             :     UINT64_C(245369408),        // VFMSS
    1348             :     UINT64_C(4062186512),       // VFMSfd
    1349             :     UINT64_C(4062186576),       // VFMSfq
    1350             :     UINT64_C(4063235088),       // VFMShd
    1351             :     UINT64_C(4063235152),       // VFMShq
    1352             :     UINT64_C(244321088),        // VFNMAD
    1353             :     UINT64_C(244320576),        // VFNMAH
    1354             :     UINT64_C(244320832),        // VFNMAS
    1355             :     UINT64_C(244321024),        // VFNMSD
    1356             :     UINT64_C(244320512),        // VFNMSH
    1357             :     UINT64_C(244320768),        // VFNMSS
    1358             :     UINT64_C(235932432),        // VGETLNi32
    1359             :     UINT64_C(235932464),        // VGETLNs16
    1360             :     UINT64_C(240126736),        // VGETLNs8
    1361             :     UINT64_C(244321072),        // VGETLNu16
    1362             :     UINT64_C(248515344),        // VGETLNu8
    1363             :     UINT64_C(4060086336),       // VHADDsv16i8
    1364             :     UINT64_C(4062183424),       // VHADDsv2i32
    1365             :     UINT64_C(4061134848),       // VHADDsv4i16
    1366             :     UINT64_C(4062183488),       // VHADDsv4i32
    1367             :     UINT64_C(4061134912),       // VHADDsv8i16
    1368             :     UINT64_C(4060086272),       // VHADDsv8i8
    1369             :     UINT64_C(4076863552),       // VHADDuv16i8
    1370             :     UINT64_C(4078960640),       // VHADDuv2i32
    1371             :     UINT64_C(4077912064),       // VHADDuv4i16
    1372             :     UINT64_C(4078960704),       // VHADDuv4i32
    1373             :     UINT64_C(4077912128),       // VHADDuv8i16
    1374             :     UINT64_C(4076863488),       // VHADDuv8i8
    1375             :     UINT64_C(4060086848),       // VHSUBsv16i8
    1376             :     UINT64_C(4062183936),       // VHSUBsv2i32
    1377             :     UINT64_C(4061135360),       // VHSUBsv4i16
    1378             :     UINT64_C(4062184000),       // VHSUBsv4i32
    1379             :     UINT64_C(4061135424),       // VHSUBsv8i16
    1380             :     UINT64_C(4060086784),       // VHSUBsv8i8
    1381             :     UINT64_C(4076864064),       // VHSUBuv16i8
    1382             :     UINT64_C(4078961152),       // VHSUBuv2i32
    1383             :     UINT64_C(4077912576),       // VHSUBuv4i16
    1384             :     UINT64_C(4078961216),       // VHSUBuv4i32
    1385             :     UINT64_C(4077912640),       // VHSUBuv8i16
    1386             :     UINT64_C(4076864000),       // VHSUBuv8i8
    1387             :     UINT64_C(4272949952),       // VINSH
    1388             :     UINT64_C(247008192),        // VJCVT
    1389             :     UINT64_C(4104129615),       // VLD1DUPd16
    1390             :     UINT64_C(4104129613),       // VLD1DUPd16wb_fixed
    1391             :     UINT64_C(4104129600),       // VLD1DUPd16wb_register
    1392             :     UINT64_C(4104129679),       // VLD1DUPd32
    1393             :     UINT64_C(4104129677),       // VLD1DUPd32wb_fixed
    1394             :     UINT64_C(4104129664),       // VLD1DUPd32wb_register
    1395             :     UINT64_C(4104129551),       // VLD1DUPd8
    1396             :     UINT64_C(4104129549),       // VLD1DUPd8wb_fixed
    1397             :     UINT64_C(4104129536),       // VLD1DUPd8wb_register
    1398             :     UINT64_C(4104129647),       // VLD1DUPq16
    1399             :     UINT64_C(4104129645),       // VLD1DUPq16wb_fixed
    1400             :     UINT64_C(4104129632),       // VLD1DUPq16wb_register
    1401             :     UINT64_C(4104129711),       // VLD1DUPq32
    1402             :     UINT64_C(4104129709),       // VLD1DUPq32wb_fixed
    1403             :     UINT64_C(4104129696),       // VLD1DUPq32wb_register
    1404             :     UINT64_C(4104129583),       // VLD1DUPq8
    1405             :     UINT64_C(4104129581),       // VLD1DUPq8wb_fixed
    1406             :     UINT64_C(4104129568),       // VLD1DUPq8wb_register
    1407             :     UINT64_C(4104127503),       // VLD1LNd16
    1408             :     UINT64_C(4104127488),       // VLD1LNd16_UPD
    1409             :     UINT64_C(4104128527),       // VLD1LNd32
    1410             :     UINT64_C(4104128512),       // VLD1LNd32_UPD
    1411             :     UINT64_C(4104126479),       // VLD1LNd8
    1412             :     UINT64_C(4104126464),       // VLD1LNd8_UPD
    1413             :     UINT64_C(0),        // VLD1LNq16Pseudo
    1414             :     UINT64_C(0),        // VLD1LNq16Pseudo_UPD
    1415             :     UINT64_C(0),        // VLD1LNq32Pseudo
    1416             :     UINT64_C(0),        // VLD1LNq32Pseudo_UPD
    1417             :     UINT64_C(0),        // VLD1LNq8Pseudo
    1418             :     UINT64_C(0),        // VLD1LNq8Pseudo_UPD
    1419             :     UINT64_C(4095739727),       // VLD1d16
    1420             :     UINT64_C(4095738447),       // VLD1d16Q
    1421             :     UINT64_C(0),        // VLD1d16QPseudo
    1422             :     UINT64_C(4095738445),       // VLD1d16Qwb_fixed
    1423             :     UINT64_C(4095738432),       // VLD1d16Qwb_register
    1424             :     UINT64_C(4095739471),       // VLD1d16T
    1425             :     UINT64_C(0),        // VLD1d16TPseudo
    1426             :     UINT64_C(4095739469),       // VLD1d16Twb_fixed
    1427             :     UINT64_C(4095739456),       // VLD1d16Twb_register
    1428             :     UINT64_C(4095739725),       // VLD1d16wb_fixed
    1429             :     UINT64_C(4095739712),       // VLD1d16wb_register
    1430             :     UINT64_C(4095739791),       // VLD1d32
    1431             :     UINT64_C(4095738511),       // VLD1d32Q
    1432             :     UINT64_C(0),        // VLD1d32QPseudo
    1433             :     UINT64_C(4095738509),       // VLD1d32Qwb_fixed
    1434             :     UINT64_C(4095738496),       // VLD1d32Qwb_register
    1435             :     UINT64_C(4095739535),       // VLD1d32T
    1436             :     UINT64_C(0),        // VLD1d32TPseudo
    1437             :     UINT64_C(4095739533),       // VLD1d32Twb_fixed
    1438             :     UINT64_C(4095739520),       // VLD1d32Twb_register
    1439             :     UINT64_C(4095739789),       // VLD1d32wb_fixed
    1440             :     UINT64_C(4095739776),       // VLD1d32wb_register
    1441             :     UINT64_C(4095739855),       // VLD1d64
    1442             :     UINT64_C(4095738575),       // VLD1d64Q
    1443             :     UINT64_C(0),        // VLD1d64QPseudo
    1444             :     UINT64_C(0),        // VLD1d64QPseudoWB_fixed
    1445             :     UINT64_C(0),        // VLD1d64QPseudoWB_register
    1446             :     UINT64_C(4095738573),       // VLD1d64Qwb_fixed
    1447             :     UINT64_C(4095738560),       // VLD1d64Qwb_register
    1448             :     UINT64_C(4095739599),       // VLD1d64T
    1449             :     UINT64_C(0),        // VLD1d64TPseudo
    1450             :     UINT64_C(0),        // VLD1d64TPseudoWB_fixed
    1451             :     UINT64_C(0),        // VLD1d64TPseudoWB_register
    1452             :     UINT64_C(4095739597),       // VLD1d64Twb_fixed
    1453             :     UINT64_C(4095739584),       // VLD1d64Twb_register
    1454             :     UINT64_C(4095739853),       // VLD1d64wb_fixed
    1455             :     UINT64_C(4095739840),       // VLD1d64wb_register
    1456             :     UINT64_C(4095739663),       // VLD1d8
    1457             :     UINT64_C(4095738383),       // VLD1d8Q
    1458             :     UINT64_C(0),        // VLD1d8QPseudo
    1459             :     UINT64_C(4095738381),       // VLD1d8Qwb_fixed
    1460             :     UINT64_C(4095738368),       // VLD1d8Qwb_register
    1461             :     UINT64_C(4095739407),       // VLD1d8T
    1462             :     UINT64_C(0),        // VLD1d8TPseudo
    1463             :     UINT64_C(4095739405),       // VLD1d8Twb_fixed
    1464             :     UINT64_C(4095739392),       // VLD1d8Twb_register
    1465             :     UINT64_C(4095739661),       // VLD1d8wb_fixed
    1466             :     UINT64_C(4095739648),       // VLD1d8wb_register
    1467             :     UINT64_C(4095740495),       // VLD1q16
    1468             :     UINT64_C(0),        // VLD1q16HighQPseudo
    1469             :     UINT64_C(0),        // VLD1q16HighTPseudo
    1470             :     UINT64_C(0),        // VLD1q16LowQPseudo_UPD
    1471             :     UINT64_C(0),        // VLD1q16LowTPseudo_UPD
    1472             :     UINT64_C(4095740493),       // VLD1q16wb_fixed
    1473             :     UINT64_C(4095740480),       // VLD1q16wb_register
    1474             :     UINT64_C(4095740559),       // VLD1q32
    1475             :     UINT64_C(0),        // VLD1q32HighQPseudo
    1476             :     UINT64_C(0),        // VLD1q32HighTPseudo
    1477             :     UINT64_C(0),        // VLD1q32LowQPseudo_UPD
    1478             :     UINT64_C(0),        // VLD1q32LowTPseudo_UPD
    1479             :     UINT64_C(4095740557),       // VLD1q32wb_fixed
    1480             :     UINT64_C(4095740544),       // VLD1q32wb_register
    1481             :     UINT64_C(4095740623),       // VLD1q64
    1482             :     UINT64_C(0),        // VLD1q64HighQPseudo
    1483             :     UINT64_C(0),        // VLD1q64HighTPseudo
    1484             :     UINT64_C(0),        // VLD1q64LowQPseudo_UPD
    1485             :     UINT64_C(0),        // VLD1q64LowTPseudo_UPD
    1486             :     UINT64_C(4095740621),       // VLD1q64wb_fixed
    1487             :     UINT64_C(4095740608),       // VLD1q64wb_register
    1488             :     UINT64_C(4095740431),       // VLD1q8
    1489             :     UINT64_C(0),        // VLD1q8HighQPseudo
    1490             :     UINT64_C(0),        // VLD1q8HighTPseudo
    1491             :     UINT64_C(0),        // VLD1q8LowQPseudo_UPD
    1492             :     UINT64_C(0),        // VLD1q8LowTPseudo_UPD
    1493             :     UINT64_C(4095740429),       // VLD1q8wb_fixed
    1494             :     UINT64_C(4095740416),       // VLD1q8wb_register
    1495             :     UINT64_C(4104129871),       // VLD2DUPd16
    1496             :     UINT64_C(4104129869),       // VLD2DUPd16wb_fixed
    1497             :     UINT64_C(4104129856),       // VLD2DUPd16wb_register
    1498             :     UINT64_C(4104129903),       // VLD2DUPd16x2
    1499             :     UINT64_C(4104129901),       // VLD2DUPd16x2wb_fixed
    1500             :     UINT64_C(4104129888),       // VLD2DUPd16x2wb_register
    1501             :     UINT64_C(4104129935),       // VLD2DUPd32
    1502             :     UINT64_C(4104129933),       // VLD2DUPd32wb_fixed
    1503             :     UINT64_C(4104129920),       // VLD2DUPd32wb_register
    1504             :     UINT64_C(4104129967),       // VLD2DUPd32x2
    1505             :     UINT64_C(4104129965),       // VLD2DUPd32x2wb_fixed
    1506             :     UINT64_C(4104129952),       // VLD2DUPd32x2wb_register
    1507             :     UINT64_C(4104129807),       // VLD2DUPd8
    1508             :     UINT64_C(4104129805),       // VLD2DUPd8wb_fixed
    1509             :     UINT64_C(4104129792),       // VLD2DUPd8wb_register
    1510             :     UINT64_C(4104129839),       // VLD2DUPd8x2
    1511             :     UINT64_C(4104129837),       // VLD2DUPd8x2wb_fixed
    1512             :     UINT64_C(4104129824),       // VLD2DUPd8x2wb_register
    1513             :     UINT64_C(0),        // VLD2DUPq16EvenPseudo
    1514             :     UINT64_C(0),        // VLD2DUPq16OddPseudo
    1515             :     UINT64_C(0),        // VLD2DUPq32EvenPseudo
    1516             :     UINT64_C(0),        // VLD2DUPq32OddPseudo
    1517             :     UINT64_C(0),        // VLD2DUPq8EvenPseudo
    1518             :     UINT64_C(0),        // VLD2DUPq8OddPseudo
    1519             :     UINT64_C(4104127759),       // VLD2LNd16
    1520             :     UINT64_C(0),        // VLD2LNd16Pseudo
    1521             :     UINT64_C(0),        // VLD2LNd16Pseudo_UPD
    1522             :     UINT64_C(4104127744),       // VLD2LNd16_UPD
    1523             :     UINT64_C(4104128783),       // VLD2LNd32
    1524             :     UINT64_C(0),        // VLD2LNd32Pseudo
    1525             :     UINT64_C(0),        // VLD2LNd32Pseudo_UPD
    1526             :     UINT64_C(4104128768),       // VLD2LNd32_UPD
    1527             :     UINT64_C(4104126735),       // VLD2LNd8
    1528             :     UINT64_C(0),        // VLD2LNd8Pseudo
    1529             :     UINT64_C(0),        // VLD2LNd8Pseudo_UPD
    1530             :     UINT64_C(4104126720),       // VLD2LNd8_UPD
    1531             :     UINT64_C(4104127791),       // VLD2LNq16
    1532             :     UINT64_C(0),        // VLD2LNq16Pseudo
    1533             :     UINT64_C(0),        // VLD2LNq16Pseudo_UPD
    1534             :     UINT64_C(4104127776),       // VLD2LNq16_UPD
    1535             :     UINT64_C(4104128847),       // VLD2LNq32
    1536             :     UINT64_C(0),        // VLD2LNq32Pseudo
    1537             :     UINT64_C(0),        // VLD2LNq32Pseudo_UPD
    1538             :     UINT64_C(4104128832),       // VLD2LNq32_UPD
    1539             :     UINT64_C(4095740239),       // VLD2b16
    1540             :     UINT64_C(4095740237),       // VLD2b16wb_fixed
    1541             :     UINT64_C(4095740224),       // VLD2b16wb_register
    1542             :     UINT64_C(4095740303),       // VLD2b32
    1543             :     UINT64_C(4095740301),       // VLD2b32wb_fixed
    1544             :     UINT64_C(4095740288),       // VLD2b32wb_register
    1545             :     UINT64_C(4095740175),       // VLD2b8
    1546             :     UINT64_C(4095740173),       // VLD2b8wb_fixed
    1547             :     UINT64_C(4095740160),       // VLD2b8wb_register
    1548             :     UINT64_C(4095739983),       // VLD2d16
    1549             :     UINT64_C(4095739981),       // VLD2d16wb_fixed
    1550             :     UINT64_C(4095739968),       // VLD2d16wb_register
    1551             :     UINT64_C(4095740047),       // VLD2d32
    1552             :     UINT64_C(4095740045),       // VLD2d32wb_fixed
    1553             :     UINT64_C(4095740032),       // VLD2d32wb_register
    1554             :     UINT64_C(4095739919),       // VLD2d8
    1555             :     UINT64_C(4095739917),       // VLD2d8wb_fixed
    1556             :     UINT64_C(4095739904),       // VLD2d8wb_register
    1557             :     UINT64_C(4095738703),       // VLD2q16
    1558             :     UINT64_C(0),        // VLD2q16Pseudo
    1559             :     UINT64_C(0),        // VLD2q16PseudoWB_fixed
    1560             :     UINT64_C(0),        // VLD2q16PseudoWB_register
    1561             :     UINT64_C(4095738701),       // VLD2q16wb_fixed
    1562             :     UINT64_C(4095738688),       // VLD2q16wb_register
    1563             :     UINT64_C(4095738767),       // VLD2q32
    1564             :     UINT64_C(0),        // VLD2q32Pseudo
    1565             :     UINT64_C(0),        // VLD2q32PseudoWB_fixed
    1566             :     UINT64_C(0),        // VLD2q32PseudoWB_register
    1567             :     UINT64_C(4095738765),       // VLD2q32wb_fixed
    1568             :     UINT64_C(4095738752),       // VLD2q32wb_register
    1569             :     UINT64_C(4095738639),       // VLD2q8
    1570             :     UINT64_C(0),        // VLD2q8Pseudo
    1571             :     UINT64_C(0),        // VLD2q8PseudoWB_fixed
    1572             :     UINT64_C(0),        // VLD2q8PseudoWB_register
    1573             :     UINT64_C(4095738637),       // VLD2q8wb_fixed
    1574             :     UINT64_C(4095738624),       // VLD2q8wb_register
    1575             :     UINT64_C(4104130127),       // VLD3DUPd16
    1576             :     UINT64_C(0),        // VLD3DUPd16Pseudo
    1577             :     UINT64_C(0),        // VLD3DUPd16Pseudo_UPD
    1578             :     UINT64_C(4104130112),       // VLD3DUPd16_UPD
    1579             :     UINT64_C(4104130191),       // VLD3DUPd32
    1580             :     UINT64_C(0),        // VLD3DUPd32Pseudo
    1581             :     UINT64_C(0),        // VLD3DUPd32Pseudo_UPD
    1582             :     UINT64_C(4104130176),       // VLD3DUPd32_UPD
    1583             :     UINT64_C(4104130063),       // VLD3DUPd8
    1584             :     UINT64_C(0),        // VLD3DUPd8Pseudo
    1585             :     UINT64_C(0),        // VLD3DUPd8Pseudo_UPD
    1586             :     UINT64_C(4104130048),       // VLD3DUPd8_UPD
    1587             :     UINT64_C(4104130159),       // VLD3DUPq16
    1588             :     UINT64_C(0),        // VLD3DUPq16EvenPseudo
    1589             :     UINT64_C(0),        // VLD3DUPq16OddPseudo
    1590             :     UINT64_C(4104130144),       // VLD3DUPq16_UPD
    1591             :     UINT64_C(4104130223),       // VLD3DUPq32
    1592             :     UINT64_C(0),        // VLD3DUPq32EvenPseudo
    1593             :     UINT64_C(0),        // VLD3DUPq32OddPseudo
    1594             :     UINT64_C(4104130208),       // VLD3DUPq32_UPD
    1595             :     UINT64_C(4104130095),       // VLD3DUPq8
    1596             :     UINT64_C(0),        // VLD3DUPq8EvenPseudo
    1597             :     UINT64_C(0),        // VLD3DUPq8OddPseudo
    1598             :     UINT64_C(4104130080),       // VLD3DUPq8_UPD
    1599             :     UINT64_C(4104128015),       // VLD3LNd16
    1600             :     UINT64_C(0),        // VLD3LNd16Pseudo
    1601             :     UINT64_C(0),        // VLD3LNd16Pseudo_UPD
    1602             :     UINT64_C(4104128000),       // VLD3LNd16_UPD
    1603             :     UINT64_C(4104129039),       // VLD3LNd32
    1604             :     UINT64_C(0),        // VLD3LNd32Pseudo
    1605             :     UINT64_C(0),        // VLD3LNd32Pseudo_UPD
    1606             :     UINT64_C(4104129024),       // VLD3LNd32_UPD
    1607             :     UINT64_C(4104126991),       // VLD3LNd8
    1608             :     UINT64_C(0),        // VLD3LNd8Pseudo
    1609             :     UINT64_C(0),        // VLD3LNd8Pseudo_UPD
    1610             :     UINT64_C(4104126976),       // VLD3LNd8_UPD
    1611             :     UINT64_C(4104128047),       // VLD3LNq16
    1612             :     UINT64_C(0),        // VLD3LNq16Pseudo
    1613             :     UINT64_C(0),        // VLD3LNq16Pseudo_UPD
    1614             :     UINT64_C(4104128032),       // VLD3LNq16_UPD
    1615             :     UINT64_C(4104129103),       // VLD3LNq32
    1616             :     UINT64_C(0),        // VLD3LNq32Pseudo
    1617             :     UINT64_C(0),        // VLD3LNq32Pseudo_UPD
    1618             :     UINT64_C(4104129088),       // VLD3LNq32_UPD
    1619             :     UINT64_C(4095738959),       // VLD3d16
    1620             :     UINT64_C(0),        // VLD3d16Pseudo
    1621             :     UINT64_C(0),        // VLD3d16Pseudo_UPD
    1622             :     UINT64_C(4095738944),       // VLD3d16_UPD
    1623             :     UINT64_C(4095739023),       // VLD3d32
    1624             :     UINT64_C(0),        // VLD3d32Pseudo
    1625             :     UINT64_C(0),        // VLD3d32Pseudo_UPD
    1626             :     UINT64_C(4095739008),       // VLD3d32_UPD
    1627             :     UINT64_C(4095738895),       // VLD3d8
    1628             :     UINT64_C(0),        // VLD3d8Pseudo
    1629             :     UINT64_C(0),        // VLD3d8Pseudo_UPD
    1630             :     UINT64_C(4095738880),       // VLD3d8_UPD
    1631             :     UINT64_C(4095739215),       // VLD3q16
    1632             :     UINT64_C(0),        // VLD3q16Pseudo_UPD
    1633             :     UINT64_C(4095739200),       // VLD3q16_UPD
    1634             :     UINT64_C(0),        // VLD3q16oddPseudo
    1635             :     UINT64_C(0),        // VLD3q16oddPseudo_UPD
    1636             :     UINT64_C(4095739279),       // VLD3q32
    1637             :     UINT64_C(0),        // VLD3q32Pseudo_UPD
    1638             :     UINT64_C(4095739264),       // VLD3q32_UPD
    1639             :     UINT64_C(0),        // VLD3q32oddPseudo
    1640             :     UINT64_C(0),        // VLD3q32oddPseudo_UPD
    1641             :     UINT64_C(4095739151),       // VLD3q8
    1642             :     UINT64_C(0),        // VLD3q8Pseudo_UPD
    1643             :     UINT64_C(4095739136),       // VLD3q8_UPD
    1644             :     UINT64_C(0),        // VLD3q8oddPseudo
    1645             :     UINT64_C(0),        // VLD3q8oddPseudo_UPD
    1646             :     UINT64_C(4104130383),       // VLD4DUPd16
    1647             :     UINT64_C(0),        // VLD4DUPd16Pseudo
    1648             :     UINT64_C(0),        // VLD4DUPd16Pseudo_UPD
    1649             :     UINT64_C(4104130368),       // VLD4DUPd16_UPD
    1650             :     UINT64_C(4104130447),       // VLD4DUPd32
    1651             :     UINT64_C(0),        // VLD4DUPd32Pseudo
    1652             :     UINT64_C(0),        // VLD4DUPd32Pseudo_UPD
    1653             :     UINT64_C(4104130432),       // VLD4DUPd32_UPD
    1654             :     UINT64_C(4104130319),       // VLD4DUPd8
    1655             :     UINT64_C(0),        // VLD4DUPd8Pseudo
    1656             :     UINT64_C(0),        // VLD4DUPd8Pseudo_UPD
    1657             :     UINT64_C(4104130304),       // VLD4DUPd8_UPD
    1658             :     UINT64_C(4104130415),       // VLD4DUPq16
    1659             :     UINT64_C(0),        // VLD4DUPq16EvenPseudo
    1660             :     UINT64_C(0),        // VLD4DUPq16OddPseudo
    1661             :     UINT64_C(4104130400),       // VLD4DUPq16_UPD
    1662             :     UINT64_C(4104130479),       // VLD4DUPq32
    1663             :     UINT64_C(0),        // VLD4DUPq32EvenPseudo
    1664             :     UINT64_C(0),        // VLD4DUPq32OddPseudo
    1665             :     UINT64_C(4104130464),       // VLD4DUPq32_UPD
    1666             :     UINT64_C(4104130351),       // VLD4DUPq8
    1667             :     UINT64_C(0),        // VLD4DUPq8EvenPseudo
    1668             :     UINT64_C(0),        // VLD4DUPq8OddPseudo
    1669             :     UINT64_C(4104130336),       // VLD4DUPq8_UPD
    1670             :     UINT64_C(4104128271),       // VLD4LNd16
    1671             :     UINT64_C(0),        // VLD4LNd16Pseudo
    1672             :     UINT64_C(0),        // VLD4LNd16Pseudo_UPD
    1673             :     UINT64_C(4104128256),       // VLD4LNd16_UPD
    1674             :     UINT64_C(4104129295),       // VLD4LNd32
    1675             :     UINT64_C(0),        // VLD4LNd32Pseudo
    1676             :     UINT64_C(0),        // VLD4LNd32Pseudo_UPD
    1677             :     UINT64_C(4104129280),       // VLD4LNd32_UPD
    1678             :     UINT64_C(4104127247),       // VLD4LNd8
    1679             :     UINT64_C(0),        // VLD4LNd8Pseudo
    1680             :     UINT64_C(0),        // VLD4LNd8Pseudo_UPD
    1681             :     UINT64_C(4104127232),       // VLD4LNd8_UPD
    1682             :     UINT64_C(4104128303),       // VLD4LNq16
    1683             :     UINT64_C(0),        // VLD4LNq16Pseudo
    1684             :     UINT64_C(0),        // VLD4LNq16Pseudo_UPD
    1685             :     UINT64_C(4104128288),       // VLD4LNq16_UPD
    1686             :     UINT64_C(4104129359),       // VLD4LNq32
    1687             :     UINT64_C(0),        // VLD4LNq32Pseudo
    1688             :     UINT64_C(0),        // VLD4LNq32Pseudo_UPD
    1689             :     UINT64_C(4104129344),       // VLD4LNq32_UPD
    1690             :     UINT64_C(4095737935),       // VLD4d16
    1691             :     UINT64_C(0),        // VLD4d16Pseudo
    1692             :     UINT64_C(0),        // VLD4d16Pseudo_UPD
    1693             :     UINT64_C(4095737920),       // VLD4d16_UPD
    1694             :     UINT64_C(4095737999),       // VLD4d32
    1695             :     UINT64_C(0),        // VLD4d32Pseudo
    1696             :     UINT64_C(0),        // VLD4d32Pseudo_UPD
    1697             :     UINT64_C(4095737984),       // VLD4d32_UPD
    1698             :     UINT64_C(4095737871),       // VLD4d8
    1699             :     UINT64_C(0),        // VLD4d8Pseudo
    1700             :     UINT64_C(0),        // VLD4d8Pseudo_UPD
    1701             :     UINT64_C(4095737856),       // VLD4d8_UPD
    1702             :     UINT64_C(4095738191),       // VLD4q16
    1703             :     UINT64_C(0),        // VLD4q16Pseudo_UPD
    1704             :     UINT64_C(4095738176),       // VLD4q16_UPD
    1705             :     UINT64_C(0),        // VLD4q16oddPseudo
    1706             :     UINT64_C(0),        // VLD4q16oddPseudo_UPD
    1707             :     UINT64_C(4095738255),       // VLD4q32
    1708             :     UINT64_C(0),        // VLD4q32Pseudo_UPD
    1709             :     UINT64_C(4095738240),       // VLD4q32_UPD
    1710             :     UINT64_C(0),        // VLD4q32oddPseudo
    1711             :     UINT64_C(0),        // VLD4q32oddPseudo_UPD
    1712             :     UINT64_C(4095738127),       // VLD4q8
    1713             :     UINT64_C(0),        // VLD4q8Pseudo_UPD
    1714             :     UINT64_C(4095738112),       // VLD4q8_UPD
    1715             :     UINT64_C(0),        // VLD4q8oddPseudo
    1716             :     UINT64_C(0),        // VLD4q8oddPseudo_UPD
    1717             :     UINT64_C(221252352),        // VLDMDDB_UPD
    1718             :     UINT64_C(210766592),        // VLDMDIA
    1719             :     UINT64_C(212863744),        // VLDMDIA_UPD
    1720             :     UINT64_C(0),        // VLDMQIA
    1721             :     UINT64_C(221252096),        // VLDMSDB_UPD
    1722             :     UINT64_C(210766336),        // VLDMSIA
    1723             :     UINT64_C(212863488),        // VLDMSIA_UPD
    1724             :     UINT64_C(219155200),        // VLDRD
    1725             :     UINT64_C(219154688),        // VLDRH
    1726             :     UINT64_C(219154944),        // VLDRS
    1727             :     UINT64_C(204474880),        // VLLDM
    1728             :     UINT64_C(203426304),        // VLSTM
    1729             :     UINT64_C(4269804288),       // VMAXNMD
    1730             :     UINT64_C(4269803776),       // VMAXNMH
    1731             :     UINT64_C(4076867344),       // VMAXNMNDf
    1732             :     UINT64_C(4077915920),       // VMAXNMNDh
    1733             :     UINT64_C(4076867408),       // VMAXNMNQf
    1734             :     UINT64_C(4077915984),       // VMAXNMNQh
    1735             :     UINT64_C(4269804032),       // VMAXNMS
    1736             :     UINT64_C(4060090112),       // VMAXfd
    1737             :     UINT64_C(4060090176),       // VMAXfq
    1738             :     UINT64_C(4061138688),       // VMAXhd
    1739             :     UINT64_C(4061138752),       // VMAXhq
    1740             :     UINT64_C(4060087872),       // VMAXsv16i8
    1741             :     UINT64_C(4062184960),       // VMAXsv2i32
    1742             :     UINT64_C(4061136384),       // VMAXsv4i16
    1743             :     UINT64_C(4062185024),       // VMAXsv4i32
    1744             :     UINT64_C(4061136448),       // VMAXsv8i16
    1745             :     UINT64_C(4060087808),       // VMAXsv8i8
    1746             :     UINT64_C(4076865088),       // VMAXuv16i8
    1747             :     UINT64_C(4078962176),       // VMAXuv2i32
    1748             :     UINT64_C(4077913600),       // VMAXuv4i16
    1749             :     UINT64_C(4078962240),       // VMAXuv4i32
    1750             :     UINT64_C(4077913664),       // VMAXuv8i16
    1751             :     UINT64_C(4076865024),       // VMAXuv8i8
    1752             :     UINT64_C(4269804352),       // VMINNMD
    1753             :     UINT64_C(4269803840),       // VMINNMH
    1754             :     UINT64_C(4078964496),       // VMINNMNDf
    1755             :     UINT64_C(4080013072),       // VMINNMNDh
    1756             :     UINT64_C(4078964560),       // VMINNMNQf
    1757             :     UINT64_C(4080013136),       // VMINNMNQh
    1758             :     UINT64_C(4269804096),       // VMINNMS
    1759             :     UINT64_C(4062187264),       // VMINfd
    1760             :     UINT64_C(4062187328),       // VMINfq
    1761             :     UINT64_C(4063235840),       // VMINhd
    1762             :     UINT64_C(4063235904),       // VMINhq
    1763             :     UINT64_C(4060087888),       // VMINsv16i8
    1764             :     UINT64_C(4062184976),       // VMINsv2i32
    1765             :     UINT64_C(4061136400),       // VMINsv4i16
    1766             :     UINT64_C(4062185040),       // VMINsv4i32
    1767             :     UINT64_C(4061136464),       // VMINsv8i16
    1768             :     UINT64_C(4060087824),       // VMINsv8i8
    1769             :     UINT64_C(4076865104),       // VMINuv16i8
    1770             :     UINT64_C(4078962192),       // VMINuv2i32
    1771             :     UINT64_C(4077913616),       // VMINuv4i16
    1772             :     UINT64_C(4078962256),       // VMINuv4i32
    1773             :     UINT64_C(4077913680),       // VMINuv8i16
    1774             :     UINT64_C(4076865040),       // VMINuv8i8
    1775             :     UINT64_C(234883840),        // VMLAD
    1776             :     UINT64_C(234883328),        // VMLAH
    1777             :     UINT64_C(4070572608),       // VMLALslsv2i32
    1778             :     UINT64_C(4069524032),       // VMLALslsv4i16
    1779             :     UINT64_C(4087349824),       // VMLALsluv2i32
    1780             :     UINT64_C(4086301248),       // VMLALsluv4i16
    1781             :     UINT64_C(4070574080),       // VMLALsv2i64
    1782             :     UINT64_C(4069525504),       // VMLALsv4i32
    1783             :     UINT64_C(4068476928),       // VMLALsv8i16
    1784             :     UINT64_C(4087351296),       // VMLALuv2i64
    1785             :     UINT64_C(4086302720),       // VMLALuv4i32
    1786             :     UINT64_C(4085254144),       // VMLALuv8i16
    1787             :     UINT64_C(234883584),        // VMLAS
    1788             :     UINT64_C(4060089616),       // VMLAfd
    1789             :     UINT64_C(4060089680),       // VMLAfq
    1790             :     UINT64_C(4061138192),       // VMLAhd
    1791             :     UINT64_C(4061138256),       // VMLAhq
    1792             :     UINT64_C(4070572352),       // VMLAslfd
    1793             :     UINT64_C(4087349568),       // VMLAslfq
    1794             :     UINT64_C(4069523776),       // VMLAslhd
    1795             :     UINT64_C(4086300992),       // VMLAslhq
    1796             :     UINT64_C(4070572096),       // VMLAslv2i32
    1797             :     UINT64_C(4069523520),       // VMLAslv4i16
    1798             :     UINT64_C(4087349312),       // VMLAslv4i32
    1799             :     UINT64_C(4086300736),       // VMLAslv8i16
    1800             :     UINT64_C(4060088640),       // VMLAv16i8
    1801             :     UINT64_C(4062185728),       // VMLAv2i32
    1802             :     UINT64_C(4061137152),       // VMLAv4i16
    1803             :     UINT64_C(4062185792),       // VMLAv4i32
    1804             :     UINT64_C(4061137216),       // VMLAv8i16
    1805             :     UINT64_C(4060088576),       // VMLAv8i8
    1806             :     UINT64_C(234883904),        // VMLSD
    1807             :     UINT64_C(234883392),        // VMLSH
    1808             :     UINT64_C(4070573632),       // VMLSLslsv2i32
    1809             :     UINT64_C(4069525056),       // VMLSLslsv4i16
    1810             :     UINT64_C(4087350848),       // VMLSLsluv2i32
    1811             :     UINT64_C(4086302272),       // VMLSLsluv4i16
    1812             :     UINT64_C(4070574592),       // VMLSLsv2i64
    1813             :     UINT64_C(4069526016),       // VMLSLsv4i32
    1814             :     UINT64_C(4068477440),       // VMLSLsv8i16
    1815             :     UINT64_C(4087351808),       // VMLSLuv2i64
    1816             :     UINT64_C(4086303232),       // VMLSLuv4i32
    1817             :     UINT64_C(4085254656),       // VMLSLuv8i16
    1818             :     UINT64_C(234883648),        // VMLSS
    1819             :     UINT64_C(4062186768),       // VMLSfd
    1820             :     UINT64_C(4062186832),       // VMLSfq
    1821             :     UINT64_C(4063235344),       // VMLShd
    1822             :     UINT64_C(4063235408),       // VMLShq
    1823             :     UINT64_C(4070573376),       // VMLSslfd
    1824             :     UINT64_C(4087350592),       // VMLSslfq
    1825             :     UINT64_C(4069524800),       // VMLSslhd
    1826             :     UINT64_C(4086302016),       // VMLSslhq
    1827             :     UINT64_C(4070573120),       // VMLSslv2i32
    1828             :     UINT64_C(4069524544),       // VMLSslv4i16
    1829             :     UINT64_C(4087350336),       // VMLSslv4i32
    1830             :     UINT64_C(4086301760),       // VMLSslv8i16
    1831             :     UINT64_C(4076865856),       // VMLSv16i8
    1832             :     UINT64_C(4078962944),       // VMLSv2i32
    1833             :     UINT64_C(4077914368),       // VMLSv4i16
    1834             :     UINT64_C(4078963008),       // VMLSv4i32
    1835             :     UINT64_C(4077914432),       // VMLSv8i16
    1836             :     UINT64_C(4076865792),       // VMLSv8i8
    1837             :     UINT64_C(246418240),        // VMOVD
    1838             :     UINT64_C(205523728),        // VMOVDRR
    1839             :     UINT64_C(4272949824),       // VMOVH
    1840             :     UINT64_C(234883344),        // VMOVHR
    1841             :     UINT64_C(4070574608),       // VMOVLsv2i64
    1842             :     UINT64_C(4069526032),       // VMOVLsv4i32
    1843             :     UINT64_C(4069001744),       // VMOVLsv8i16
    1844             :     UINT64_C(4087351824),       // VMOVLuv2i64
    1845             :     UINT64_C(4086303248),       // VMOVLuv4i32
    1846             :     UINT64_C(4085778960),       // VMOVLuv8i16
    1847             :     UINT64_C(4089053696),       // VMOVNv2i32
    1848             :     UINT64_C(4088791552),       // VMOVNv4i16
    1849             :     UINT64_C(4088529408),       // VMOVNv8i8
    1850             :     UINT64_C(235931920),        // VMOVRH
    1851             :     UINT64_C(206572304),        // VMOVRRD
    1852             :     UINT64_C(206572048),        // VMOVRRS
    1853             :     UINT64_C(235932176),        // VMOVRS
    1854             :     UINT64_C(246417984),        // VMOVS
    1855             :     UINT64_C(234883600),        // VMOVSR
    1856             :     UINT64_C(205523472),        // VMOVSRR
    1857             :     UINT64_C(4068478544),       // VMOVv16i8
    1858             :     UINT64_C(4068478512),       // VMOVv1i64
    1859             :     UINT64_C(4068478736),       // VMOVv2f32
    1860             :     UINT64_C(4068474896),       // VMOVv2i32
    1861             :     UINT64_C(4068478576),       // VMOVv2i64
    1862             :     UINT64_C(4068478800),       // VMOVv4f32
    1863             :     UINT64_C(4068476944),       // VMOVv4i16
    1864             :     UINT64_C(4068474960),       // VMOVv4i32
    1865             :     UINT64_C(4068477008),       // VMOVv8i16
    1866             :     UINT64_C(4068478480),       // VMOVv8i8
    1867             :     UINT64_C(250677776),        // VMRS
    1868             :     UINT64_C(251136528),        // VMRS_FPEXC
    1869             :     UINT64_C(251202064),        // VMRS_FPINST
    1870             :     UINT64_C(251267600),        // VMRS_FPINST2
    1871             :     UINT64_C(250612240),        // VMRS_FPSID
    1872             :     UINT64_C(251070992),        // VMRS_MVFR0
    1873             :     UINT64_C(251005456),        // VMRS_MVFR1
    1874             :     UINT64_C(250939920),        // VMRS_MVFR2
    1875             :     UINT64_C(249629200),        // VMSR
    1876             :     UINT64_C(250087952),        // VMSR_FPEXC
    1877             :     UINT64_C(250153488),        // VMSR_FPINST
    1878             :     UINT64_C(250219024),        // VMSR_FPINST2
    1879             :     UINT64_C(249563664),        // VMSR_FPSID
    1880             :     UINT64_C(236980992),        // VMULD
    1881             :     UINT64_C(236980480),        // VMULH
    1882             :     UINT64_C(4070575616),       // VMULLp64
    1883             :     UINT64_C(4068478464),       // VMULLp8
    1884             :     UINT64_C(4070574656),       // VMULLslsv2i32
    1885             :     UINT64_C(4069526080),       // VMULLslsv4i16
    1886             :     UINT64_C(4087351872),       // VMULLsluv2i32
    1887             :     UINT64_C(4086303296),       // VMULLsluv4i16
    1888             :     UINT64_C(4070575104),       // VMULLsv2i64
    1889             :     UINT64_C(4069526528),       // VMULLsv4i32
    1890             :     UINT64_C(4068477952),       // VMULLsv8i16
    1891             :     UINT64_C(4087352320),       // VMULLuv2i64
    1892             :     UINT64_C(4086303744),       // VMULLuv4i32
    1893             :     UINT64_C(4085255168),       // VMULLuv8i16
    1894             :     UINT64_C(236980736),        // VMULS
    1895             :     UINT64_C(4076866832),       // VMULfd
    1896             :     UINT64_C(4076866896),       // VMULfq
    1897             :     UINT64_C(4077915408),       // VMULhd
    1898             :     UINT64_C(4077915472),       // VMULhq
    1899             :     UINT64_C(4076865808),       // VMULpd
    1900             :     UINT64_C(4076865872),       // VMULpq
    1901             :     UINT64_C(4070574400),       // VMULslfd
    1902             :     UINT64_C(4087351616),       // VMULslfq
    1903             :     UINT64_C(4069525824),       // VMULslhd
    1904             :     UINT64_C(4086303040),       // VMULslhq
    1905             :     UINT64_C(4070574144),       // VMULslv2i32
    1906             :     UINT64_C(4069525568),       // VMULslv4i16
    1907             :     UINT64_C(4087351360),       // VMULslv4i32
    1908             :     UINT64_C(4086302784),       // VMULslv8i16
    1909             :     UINT64_C(4060088656),       // VMULv16i8
    1910             :     UINT64_C(4062185744),       // VMULv2i32
    1911             :     UINT64_C(4061137168),       // VMULv4i16
    1912             :     UINT64_C(4062185808),       // VMULv4i32
    1913             :     UINT64_C(4061137232),       // VMULv8i16
    1914             :     UINT64_C(4060088592),       // VMULv8i8
    1915             :     UINT64_C(4088399232),       // VMVNd
    1916             :     UINT64_C(4088399296),       // VMVNq
    1917             :     UINT64_C(4068474928),       // VMVNv2i32
    1918             :     UINT64_C(4068476976),       // VMVNv4i16
    1919             :     UINT64_C(4068474992),       // VMVNv4i32
    1920             :     UINT64_C(4068477040),       // VMVNv8i16
    1921             :     UINT64_C(246483776),        // VNEGD
    1922             :     UINT64_C(246483264),        // VNEGH
    1923             :     UINT64_C(246483520),        // VNEGS
    1924             :     UINT64_C(4088989632),       // VNEGf32q
    1925             :     UINT64_C(4088989568),       // VNEGfd
    1926             :     UINT64_C(4088727424),       // VNEGhd
    1927             :     UINT64_C(4088727488),       // VNEGhq
    1928             :     UINT64_C(4088726400),       // VNEGs16d
    1929             :     UINT64_C(4088726464),       // VNEGs16q
    1930             :     UINT64_C(4088988544),       // VNEGs32d
    1931             :     UINT64_C(4088988608),       // VNEGs32q
    1932             :     UINT64_C(4088464256),       // VNEGs8d
    1933             :     UINT64_C(4088464320),       // VNEGs8q
    1934             :     UINT64_C(235932480),        // VNMLAD
    1935             :     UINT64_C(235931968),        // VNMLAH
    1936             :     UINT64_C(235932224),        // VNMLAS
    1937             :     UINT64_C(235932416),        // VNMLSD
    1938             :     UINT64_C(235931904),        // VNMLSH
    1939             :     UINT64_C(235932160),        // VNMLSS
    1940             :     UINT64_C(236981056),        // VNMULD
    1941             :     UINT64_C(236980544),        // VNMULH
    1942             :     UINT64_C(236980800),        // VNMULS
    1943             :     UINT64_C(4063232272),       // VORNd
    1944             :     UINT64_C(4063232336),       // VORNq
    1945             :     UINT64_C(4062183696),       // VORRd
    1946             :     UINT64_C(4068475152),       // VORRiv2i32
    1947             :     UINT64_C(4068477200),       // VORRiv4i16
    1948             :     UINT64_C(4068475216),       // VORRiv4i32
    1949             :     UINT64_C(4068477264),       // VORRiv8i16
    1950             :     UINT64_C(4062183760),       // VORRq
    1951             :     UINT64_C(4088399424),       // VPADALsv16i8
    1952             :     UINT64_C(4088923648),       // VPADALsv2i32
    1953             :     UINT64_C(4088661504),       // VPADALsv4i16
    1954             :     UINT64_C(4088923712),       // VPADALsv4i32
    1955             :     UINT64_C(4088661568),       // VPADALsv8i16
    1956             :     UINT64_C(4088399360),       // VPADALsv8i8
    1957             :     UINT64_C(4088399552),       // VPADALuv16i8
    1958             :     UINT64_C(4088923776),       // VPADALuv2i32
    1959             :     UINT64_C(4088661632),       // VPADALuv4i16
    1960             :     UINT64_C(4088923840),       // VPADALuv4i32
    1961             :     UINT64_C(4088661696),       // VPADALuv8i16
    1962             :     UINT64_C(4088399488),       // VPADALuv8i8
    1963             :     UINT64_C(4088398400),       // VPADDLsv16i8
    1964             :     UINT64_C(4088922624),       // VPADDLsv2i32
    1965             :     UINT64_C(4088660480),       // VPADDLsv4i16
    1966             :     UINT64_C(4088922688),       // VPADDLsv4i32
    1967             :     UINT64_C(4088660544),       // VPADDLsv8i16
    1968             :     UINT64_C(4088398336),       // VPADDLsv8i8
    1969             :     UINT64_C(4088398528),       // VPADDLuv16i8
    1970             :     UINT64_C(4088922752),       // VPADDLuv2i32
    1971             :     UINT64_C(4088660608),       // VPADDLuv4i16
    1972             :     UINT64_C(4088922816),       // VPADDLuv4i32
    1973             :     UINT64_C(4088660672),       // VPADDLuv8i16
    1974             :     UINT64_C(4088398464),       // VPADDLuv8i8
    1975             :     UINT64_C(4076866816),       // VPADDf
    1976             :     UINT64_C(4077915392),       // VPADDh
    1977             :     UINT64_C(4061137680),       // VPADDi16
    1978             :     UINT64_C(4062186256),       // VPADDi32
    1979             :     UINT64_C(4060089104),       // VPADDi8
    1980             :     UINT64_C(4076867328),       // VPMAXf
    1981             :     UINT64_C(4077915904),       // VPMAXh
    1982             :     UINT64_C(4061137408),       // VPMAXs16
    1983             :     UINT64_C(4062185984),       // VPMAXs32
    1984             :     UINT64_C(4060088832),       // VPMAXs8
    1985             :     UINT64_C(4077914624),       // VPMAXu16
    1986             :     UINT64_C(4078963200),       // VPMAXu32
    1987             :     UINT64_C(4076866048),       // VPMAXu8
    1988             :     UINT64_C(4078964480),       // VPMINf
    1989             :     UINT64_C(4080013056),       // VPMINh
    1990             :     UINT64_C(4061137424),       // VPMINs16
    1991             :     UINT64_C(4062186000),       // VPMINs32
    1992             :     UINT64_C(4060088848),       // VPMINs8
    1993             :     UINT64_C(4077914640),       // VPMINu16
    1994             :     UINT64_C(4078963216),       // VPMINu32
    1995             :     UINT64_C(4076866064),       // VPMINu8
    1996             :     UINT64_C(4088399680),       // VQABSv16i8
    1997             :     UINT64_C(4088923904),       // VQABSv2i32
    1998             :     UINT64_C(4088661760),       // VQABSv4i16
    1999             :     UINT64_C(4088923968),       // VQABSv4i32
    2000             :     UINT64_C(4088661824),       // VQABSv8i16
    2001             :     UINT64_C(4088399616),       // VQABSv8i8
    2002             :     UINT64_C(4060086352),       // VQADDsv16i8
    2003             :     UINT64_C(4063232016),       // VQADDsv1i64
    2004             :     UINT64_C(4062183440),       // VQADDsv2i32
    2005             :     UINT64_C(4063232080),       // VQADDsv2i64
    2006             :     UINT64_C(4061134864),       // VQADDsv4i16
    2007             :     UINT64_C(4062183504),       // VQADDsv4i32
    2008             :     UINT64_C(4061134928),       // VQADDsv8i16
    2009             :     UINT64_C(4060086288),       // VQADDsv8i8
    2010             :     UINT64_C(4076863568),       // VQADDuv16i8
    2011             :     UINT64_C(4080009232),       // VQADDuv1i64
    2012             :     UINT64_C(4078960656),       // VQADDuv2i32
    2013             :     UINT64_C(4080009296),       // VQADDuv2i64
    2014             :     UINT64_C(4077912080),       // VQADDuv4i16
    2015             :     UINT64_C(4078960720),       // VQADDuv4i32
    2016             :     UINT64_C(4077912144),       // VQADDuv8i16
    2017             :     UINT64_C(4076863504),       // VQADDuv8i8
    2018             :     UINT64_C(4070572864),       // VQDMLALslv2i32
    2019             :     UINT64_C(4069524288),       // VQDMLALslv4i16
    2020             :     UINT64_C(4070574336),       // VQDMLALv2i64
    2021             :     UINT64_C(4069525760),       // VQDMLALv4i32
    2022             :     UINT64_C(4070573888),       // VQDMLSLslv2i32
    2023             :     UINT64_C(4069525312),       // VQDMLSLslv4i16
    2024             :     UINT64_C(4070574848),       // VQDMLSLv2i64
    2025             :     UINT64_C(4069526272),       // VQDMLSLv4i32
    2026             :     UINT64_C(4070575168),       // VQDMULHslv2i32
    2027             :     UINT64_C(4069526592),       // VQDMULHslv4i16
    2028             :     UINT64_C(4087352384),       // VQDMULHslv4i32
    2029             :     UINT64_C(4086303808),       // VQDMULHslv8i16
    2030             :     UINT64_C(4062186240),       // VQDMULHv2i32
    2031             :     UINT64_C(4061137664),       // VQDMULHv4i16
    2032             :     UINT64_C(4062186304),       // VQDMULHv4i32
    2033             :     UINT64_C(4061137728),       // VQDMULHv8i16
    2034             :     UINT64_C(4070574912),       // VQDMULLslv2i32
    2035             :     UINT64_C(4069526336),       // VQDMULLslv4i16
    2036             :     UINT64_C(4070575360),       // VQDMULLv2i64
    2037             :     UINT64_C(4069526784),       // VQDMULLv4i32
    2038             :     UINT64_C(4089053760),       // VQMOVNsuv2i32
    2039             :     UINT64_C(4088791616),       // VQMOVNsuv4i16
    2040             :     UINT64_C(4088529472),       // VQMOVNsuv8i8
    2041             :     UINT64_C(4089053824),       // VQMOVNsv2i32
    2042             :     UINT64_C(4088791680),       // VQMOVNsv4i16
    2043             :     UINT64_C(4088529536),       // VQMOVNsv8i8
    2044             :     UINT64_C(4089053888),       // VQMOVNuv2i32
    2045             :     UINT64_C(4088791744),       // VQMOVNuv4i16
    2046             :     UINT64_C(4088529600),       // VQMOVNuv8i8
    2047             :     UINT64_C(4088399808),       // VQNEGv16i8
    2048             :     UINT64_C(4088924032),       // VQNEGv2i32
    2049             :     UINT64_C(4088661888),       // VQNEGv4i16
    2050             :     UINT64_C(4088924096),       // VQNEGv4i32
    2051             :     UINT64_C(4088661952),       // VQNEGv8i16
    2052             :     UINT64_C(4088399744),       // VQNEGv8i8
    2053             :     UINT64_C(4070575680),       // VQRDMLAHslv2i32
    2054             :     UINT64_C(4069527104),       // VQRDMLAHslv4i16
    2055             :     UINT64_C(4087352896),       // VQRDMLAHslv4i32
    2056             :     UINT64_C(4086304320),       // VQRDMLAHslv8i16
    2057             :     UINT64_C(4078963472),       // VQRDMLAHv2i32
    2058             :     UINT64_C(4077914896),       // VQRDMLAHv4i16
    2059             :     UINT64_C(4078963536),       // VQRDMLAHv4i32
    2060             :     UINT64_C(4077914960),       // VQRDMLAHv8i16
    2061             :     UINT64_C(4070575936),       // VQRDMLSHslv2i32
    2062             :     UINT64_C(4069527360),       // VQRDMLSHslv4i16
    2063             :     UINT64_C(4087353152),       // VQRDMLSHslv4i32
    2064             :     UINT64_C(4086304576),       // VQRDMLSHslv8i16
    2065             :     UINT64_C(4078963728),       // VQRDMLSHv2i32
    2066             :     UINT64_C(4077915152),       // VQRDMLSHv4i16
    2067             :     UINT64_C(4078963792),       // VQRDMLSHv4i32
    2068             :     UINT64_C(4077915216),       // VQRDMLSHv8i16
    2069             :     UINT64_C(4070575424),       // VQRDMULHslv2i32
    2070             :     UINT64_C(4069526848),       // VQRDMULHslv4i16
    2071             :     UINT64_C(4087352640),       // VQRDMULHslv4i32
    2072             :     UINT64_C(4086304064),       // VQRDMULHslv8i16
    2073             :     UINT64_C(4078963456),       // VQRDMULHv2i32
    2074             :     UINT64_C(4077914880),       // VQRDMULHv4i16
    2075             :     UINT64_C(4078963520),       // VQRDMULHv4i32
    2076             :     UINT64_C(4077914944),       // VQRDMULHv8i16
    2077             :     UINT64_C(4060087632),       // VQRSHLsv16i8
    2078             :     UINT64_C(4063233296),       // VQRSHLsv1i64
    2079             :     UINT64_C(4062184720),       // VQRSHLsv2i32
    2080             :     UINT64_C(4063233360),       // VQRSHLsv2i64
    2081             :     UINT64_C(4061136144),       // VQRSHLsv4i16
    2082             :     UINT64_C(4062184784),       // VQRSHLsv4i32
    2083             :     UINT64_C(4061136208),       // VQRSHLsv8i16
    2084             :     UINT64_C(4060087568),       // VQRSHLsv8i8
    2085             :     UINT64_C(4076864848),       // VQRSHLuv16i8
    2086             :     UINT64_C(4080010512),       // VQRSHLuv1i64
    2087             :     UINT64_C(4078961936),       // VQRSHLuv2i32
    2088             :     UINT64_C(4080010576),       // VQRSHLuv2i64
    2089             :     UINT64_C(4077913360),       // VQRSHLuv4i16
    2090             :     UINT64_C(4078962000),       // VQRSHLuv4i32
    2091             :     UINT64_C(4077913424),       // VQRSHLuv8i16
    2092             :     UINT64_C(4076864784),       // VQRSHLuv8i8
    2093             :     UINT64_C(4070574416),       // VQRSHRNsv2i32
    2094             :     UINT64_C(4069525840),       // VQRSHRNsv4i16
    2095             :     UINT64_C(4069001552),       // VQRSHRNsv8i8
    2096             :     UINT64_C(4087351632),       // VQRSHRNuv2i32
    2097             :     UINT64_C(4086303056),       // VQRSHRNuv4i16
    2098             :     UINT64_C(4085778768),       // VQRSHRNuv8i8
    2099             :     UINT64_C(4087351376),       // VQRSHRUNv2i32
    2100             :     UINT64_C(4086302800),       // VQRSHRUNv4i16
    2101             :     UINT64_C(4085778512),       // VQRSHRUNv8i8
    2102             :     UINT64_C(4069001040),       // VQSHLsiv16i8
    2103             :     UINT64_C(4068476816),       // VQSHLsiv1i64
    2104             :     UINT64_C(4070573840),       // VQSHLsiv2i32
    2105             :     UINT64_C(4068476880),       // VQSHLsiv2i64
    2106             :     UINT64_C(4069525264),       // VQSHLsiv4i16
    2107             :     UINT64_C(4070573904),       // VQSHLsiv4i32
    2108             :     UINT64_C(4069525328),       // VQSHLsiv8i16
    2109             :     UINT64_C(4069000976),       // VQSHLsiv8i8
    2110             :     UINT64_C(4085778000),       // VQSHLsuv16i8
    2111             :     UINT64_C(4085253776),       // VQSHLsuv1i64
    2112             :     UINT64_C(4087350800),       // VQSHLsuv2i32
    2113             :     UINT64_C(4085253840),       // VQSHLsuv2i64
    2114             :     UINT64_C(4086302224),       // VQSHLsuv4i16
    2115             :     UINT64_C(4087350864),       // VQSHLsuv4i32
    2116             :     UINT64_C(4086302288),       // VQSHLsuv8i16
    2117             :     UINT64_C(4085777936),       // VQSHLsuv8i8
    2118             :     UINT64_C(4060087376),       // VQSHLsv16i8
    2119             :     UINT64_C(4063233040),       // VQSHLsv1i64
    2120             :     UINT64_C(4062184464),       // VQSHLsv2i32
    2121             :     UINT64_C(4063233104),       // VQSHLsv2i64
    2122             :     UINT64_C(4061135888),       // VQSHLsv4i16
    2123             :     UINT64_C(4062184528),       // VQSHLsv4i32
    2124             :     UINT64_C(4061135952),       // VQSHLsv8i16
    2125             :     UINT64_C(4060087312),       // VQSHLsv8i8
    2126             :     UINT64_C(4085778256),       // VQSHLuiv16i8
    2127             :     UINT64_C(4085254032),       // VQSHLuiv1i64
    2128             :     UINT64_C(4087351056),       // VQSHLuiv2i32
    2129             :     UINT64_C(4085254096),       // VQSHLuiv2i64
    2130             :     UINT64_C(4086302480),       // VQSHLuiv4i16
    2131             :     UINT64_C(4087351120),       // VQSHLuiv4i32
    2132             :     UINT64_C(4086302544),       // VQSHLuiv8i16
    2133             :     UINT64_C(4085778192),       // VQSHLuiv8i8
    2134             :     UINT64_C(4076864592),       // VQSHLuv16i8
    2135             :     UINT64_C(4080010256),       // VQSHLuv1i64
    2136             :     UINT64_C(4078961680),       // VQSHLuv2i32
    2137             :     UINT64_C(4080010320),       // VQSHLuv2i64
    2138             :     UINT64_C(4077913104),       // VQSHLuv4i16
    2139             :     UINT64_C(4078961744),       // VQSHLuv4i32
    2140             :     UINT64_C(4077913168),       // VQSHLuv8i16
    2141             :     UINT64_C(4076864528),       // VQSHLuv8i8
    2142             :     UINT64_C(4070574352),       // VQSHRNsv2i32
    2143             :     UINT64_C(4069525776),       // VQSHRNsv4i16
    2144             :     UINT64_C(4069001488),       // VQSHRNsv8i8
    2145             :     UINT64_C(4087351568),       // VQSHRNuv2i32
    2146             :     UINT64_C(4086302992),       // VQSHRNuv4i16
    2147             :     UINT64_C(4085778704),       // VQSHRNuv8i8
    2148             :     UINT64_C(4087351312),       // VQSHRUNv2i32
    2149             :     UINT64_C(4086302736),       // VQSHRUNv4i16
    2150             :     UINT64_C(4085778448),       // VQSHRUNv8i8
    2151             :     UINT64_C(4060086864),       // VQSUBsv16i8
    2152             :     UINT64_C(4063232528),       // VQSUBsv1i64
    2153             :     UINT64_C(4062183952),       // VQSUBsv2i32
    2154             :     UINT64_C(4063232592),       // VQSUBsv2i64
    2155             :     UINT64_C(4061135376),       // VQSUBsv4i16
    2156             :     UINT64_C(4062184016),       // VQSUBsv4i32
    2157             :     UINT64_C(4061135440),       // VQSUBsv8i16
    2158             :     UINT64_C(4060086800),       // VQSUBsv8i8
    2159             :     UINT64_C(4076864080),       // VQSUBuv16i8
    2160             :     UINT64_C(4080009744),       // VQSUBuv1i64
    2161             :     UINT64_C(4078961168),       // VQSUBuv2i32
    2162             :     UINT64_C(4080009808),       // VQSUBuv2i64
    2163             :     UINT64_C(4077912592),       // VQSUBuv4i16
    2164             :     UINT64_C(4078961232),       // VQSUBuv4i32
    2165             :     UINT64_C(4077912656),       // VQSUBuv8i16
    2166             :     UINT64_C(4076864016),       // VQSUBuv8i8
    2167             :     UINT64_C(4087350272),       // VRADDHNv2i32
    2168             :     UINT64_C(4086301696),       // VRADDHNv4i16
    2169             :     UINT64_C(4085253120),       // VRADDHNv8i8
    2170             :     UINT64_C(4089119744),       // VRECPEd
    2171             :     UINT64_C(4089120000),       // VRECPEfd
    2172             :     UINT64_C(4089120064),       // VRECPEfq
    2173             :     UINT64_C(4088857856),       // VRECPEhd
    2174             :     UINT64_C(4088857920),       // VRECPEhq
    2175             :     UINT64_C(4089119808),       // VRECPEq
    2176             :     UINT64_C(4060090128),       // VRECPSfd
    2177             :     UINT64_C(4060090192),       // VRECPSfq
    2178             :     UINT64_C(4061138704),       // VRECPShd
    2179             :     UINT64_C(4061138768),       // VRECPShq
    2180             :     UINT64_C(4088398080),       // VREV16d8
    2181             :     UINT64_C(4088398144),       // VREV16q8
    2182             :     UINT64_C(4088660096),       // VREV32d16
    2183             :     UINT64_C(4088397952),       // VREV32d8
    2184             :     UINT64_C(4088660160),       // VREV32q16
    2185             :     UINT64_C(4088398016),       // VREV32q8
    2186             :     UINT64_C(4088659968),       // VREV64d16
    2187             :     UINT64_C(4088922112),       // VREV64d32
    2188             :     UINT64_C(4088397824),       // VREV64d8
    2189             :     UINT64_C(4088660032),       // VREV64q16
    2190             :     UINT64_C(4088922176),       // VREV64q32
    2191             :     UINT64_C(4088397888),       // VREV64q8
    2192             :     UINT64_C(4060086592),       // VRHADDsv16i8
    2193             :     UINT64_C(4062183680),       // VRHADDsv2i32
    2194             :     UINT64_C(4061135104),       // VRHADDsv4i16
    2195             :     UINT64_C(4062183744),       // VRHADDsv4i32
    2196             :     UINT64_C(4061135168),       // VRHADDsv8i16
    2197             :     UINT64_C(4060086528),       // VRHADDsv8i8
    2198             :     UINT64_C(4076863808),       // VRHADDuv16i8
    2199             :     UINT64_C(4078960896),       // VRHADDuv2i32
    2200             :     UINT64_C(4077912320),       // VRHADDuv4i16
    2201             :     UINT64_C(4078960960),       // VRHADDuv4i32
    2202             :     UINT64_C(4077912384),       // VRHADDuv8i16
    2203             :     UINT64_C(4076863744),       // VRHADDuv8i8
    2204             :     UINT64_C(4273474368),       // VRINTAD
    2205             :     UINT64_C(4273473856),       // VRINTAH
    2206             :     UINT64_C(4089054464),       // VRINTANDf
    2207             :     UINT64_C(4088792320),       // VRINTANDh
    2208             :     UINT64_C(4089054528),       // VRINTANQf
    2209             :     UINT64_C(4088792384),       // VRINTANQh
    2210             :     UINT64_C(4273474112),       // VRINTAS
    2211             :     UINT64_C(4273670976),       // VRINTMD
    2212             :     UINT64_C(4273670464),       // VRINTMH
    2213             :     UINT64_C(4089054848),       // VRINTMNDf
    2214             :     UINT64_C(4088792704),       // VRINTMNDh
    2215             :     UINT64_C(4089054912),       // VRINTMNQf
    2216             :     UINT64_C(4088792768),       // VRINTMNQh
    2217             :     UINT64_C(4273670720),       // VRINTMS
    2218             :     UINT64_C(4273539904),       // VRINTND
    2219             :     UINT64_C(4273539392),       // VRINTNH
    2220             :     UINT64_C(4089054208),       // VRINTNNDf
    2221             :     UINT64_C(4088792064),       // VRINTNNDh
    2222             :     UINT64_C(4089054272),       // VRINTNNQf
    2223             :     UINT64_C(4088792128),       // VRINTNNQh
    2224             :     UINT64_C(4273539648),       // VRINTNS
    2225             :     UINT64_C(4273605440),       // VRINTPD
    2226             :     UINT64_C(4273604928),       // VRINTPH
    2227             :     UINT64_C(4089055104),       // VRINTPNDf
    2228             :     UINT64_C(4088792960),       // VRINTPNDh
    2229             :     UINT64_C(4089055168),       // VRINTPNQf
    2230             :     UINT64_C(4088793024),       // VRINTPNQh
    2231             :     UINT64_C(4273605184),       // VRINTPS
    2232             :     UINT64_C(246811456),        // VRINTRD
    2233             :     UINT64_C(246810944),        // VRINTRH
    2234             :     UINT64_C(246811200),        // VRINTRS
    2235             :     UINT64_C(246876992),        // VRINTXD
    2236             :     UINT64_C(246876480),        // VRINTXH
    2237             :     UINT64_C(4089054336),       // VRINTXNDf
    2238             :     UINT64_C(4088792192),       // VRINTXNDh
    2239             :     UINT64_C(4089054400),       // VRINTXNQf
    2240             :     UINT64_C(4088792256),       // VRINTXNQh
    2241             :     UINT64_C(246876736),        // VRINTXS
    2242             :     UINT64_C(246811584),        // VRINTZD
    2243             :     UINT64_C(246811072),        // VRINTZH
    2244             :     UINT64_C(4089054592),       // VRINTZNDf
    2245             :     UINT64_C(4088792448),       // VRINTZNDh
    2246             :     UINT64_C(4089054656),       // VRINTZNQf
    2247             :     UINT64_C(4088792512),       // VRINTZNQh
    2248             :     UINT64_C(246811328),        // VRINTZS
    2249             :     UINT64_C(4060087616),       // VRSHLsv16i8
    2250             :     UINT64_C(4063233280),       // VRSHLsv1i64
    2251             :     UINT64_C(4062184704),       // VRSHLsv2i32
    2252             :     UINT64_C(4063233344),       // VRSHLsv2i64
    2253             :     UINT64_C(4061136128),       // VRSHLsv4i16
    2254             :     UINT64_C(4062184768),       // VRSHLsv4i32
    2255             :     UINT64_C(4061136192),       // VRSHLsv8i16
    2256             :     UINT64_C(4060087552),       // VRSHLsv8i8
    2257             :     UINT64_C(4076864832),       // VRSHLuv16i8
    2258             :     UINT64_C(4080010496),       // VRSHLuv1i64
    2259             :     UINT64_C(4078961920),       // VRSHLuv2i32
    2260             :     UINT64_C(4080010560),       // VRSHLuv2i64
    2261             :     UINT64_C(4077913344),       // VRSHLuv4i16
    2262             :     UINT64_C(4078961984),       // VRSHLuv4i32
    2263             :     UINT64_C(4077913408),       // VRSHLuv8i16
    2264             :     UINT64_C(4076864768),       // VRSHLuv8i8
    2265             :     UINT64_C(4070574160),       // VRSHRNv2i32
    2266             :     UINT64_C(4069525584),       // VRSHRNv4i16
    2267             :     UINT64_C(4069001296),       // VRSHRNv8i8
    2268             :     UINT64_C(4068999760),       // VRSHRsv16i8
    2269             :     UINT64_C(4068475536),       // VRSHRsv1i64
    2270             :     UINT64_C(4070572560),       // VRSHRsv2i32
    2271             :     UINT64_C(4068475600),       // VRSHRsv2i64
    2272             :     UINT64_C(4069523984),       // VRSHRsv4i16
    2273             :     UINT64_C(4070572624),       // VRSHRsv4i32
    2274             :     UINT64_C(4069524048),       // VRSHRsv8i16
    2275             :     UINT64_C(4068999696),       // VRSHRsv8i8
    2276             :     UINT64_C(4085776976),       // VRSHRuv16i8
    2277             :     UINT64_C(4085252752),       // VRSHRuv1i64
    2278             :     UINT64_C(4087349776),       // VRSHRuv2i32
    2279             :     UINT64_C(4085252816),       // VRSHRuv2i64
    2280             :     UINT64_C(4086301200),       // VRSHRuv4i16
    2281             :     UINT64_C(4087349840),       // VRSHRuv4i32
    2282             :     UINT64_C(4086301264),       // VRSHRuv8i16
    2283             :     UINT64_C(4085776912),       // VRSHRuv8i8
    2284             :     UINT64_C(4089119872),       // VRSQRTEd
    2285             :     UINT64_C(4089120128),       // VRSQRTEfd
    2286             :     UINT64_C(4089120192),       // VRSQRTEfq
    2287             :     UINT64_C(4088857984),       // VRSQRTEhd
    2288             :     UINT64_C(4088858048),       // VRSQRTEhq
    2289             :     UINT64_C(4089119936),       // VRSQRTEq
    2290             :     UINT64_C(4062187280),       // VRSQRTSfd
    2291             :     UINT64_C(4062187344),       // VRSQRTSfq
    2292             :     UINT64_C(4063235856),       // VRSQRTShd
    2293             :     UINT64_C(4063235920),       // VRSQRTShq
    2294             :     UINT64_C(4069000016),       // VRSRAsv16i8
    2295             :     UINT64_C(4068475792),       // VRSRAsv1i64
    2296             :     UINT64_C(4070572816),       // VRSRAsv2i32
    2297             :     UINT64_C(4068475856),       // VRSRAsv2i64
    2298             :     UINT64_C(4069524240),       // VRSRAsv4i16
    2299             :     UINT64_C(4070572880),       // VRSRAsv4i32
    2300             :     UINT64_C(4069524304),       // VRSRAsv8i16
    2301             :     UINT64_C(4068999952),       // VRSRAsv8i8
    2302             :     UINT64_C(4085777232),       // VRSRAuv16i8
    2303             :     UINT64_C(4085253008),       // VRSRAuv1i64
    2304             :     UINT64_C(4087350032),       // VRSRAuv2i32
    2305             :     UINT64_C(4085253072),       // VRSRAuv2i64
    2306             :     UINT64_C(4086301456),       // VRSRAuv4i16
    2307             :     UINT64_C(4087350096),       // VRSRAuv4i32
    2308             :     UINT64_C(4086301520),       // VRSRAuv8i16
    2309             :     UINT64_C(4085777168),       // VRSRAuv8i8
    2310             :     UINT64_C(4087350784),       // VRSUBHNv2i32
    2311             :     UINT64_C(4086302208),       // VRSUBHNv4i16
    2312             :     UINT64_C(4085253632),       // VRSUBHNv8i8
    2313             :     UINT64_C(4229958912),       // VSDOTD
    2314             :     UINT64_C(4263513344),       // VSDOTDI
    2315             :     UINT64_C(4229958976),       // VSDOTQ
    2316             :     UINT64_C(4263513408),       // VSDOTQI
    2317             :     UINT64_C(4261415680),       // VSELEQD
    2318             :     UINT64_C(4261415168),       // VSELEQH
    2319             :     UINT64_C(4261415424),       // VSELEQS
    2320             :     UINT64_C(4263512832),       // VSELGED
    2321             :     UINT64_C(4263512320),       // VSELGEH
    2322             :     UINT64_C(4263512576),       // VSELGES
    2323             :     UINT64_C(4264561408),       // VSELGTD
    2324             :     UINT64_C(4264560896),       // VSELGTH
    2325             :     UINT64_C(4264561152),       // VSELGTS
    2326             :     UINT64_C(4262464256),       // VSELVSD
    2327             :     UINT64_C(4262463744),       // VSELVSH
    2328             :     UINT64_C(4262464000),       // VSELVSS
    2329             :     UINT64_C(234883888),        // VSETLNi16
    2330             :     UINT64_C(234883856),        // VSETLNi32
    2331             :     UINT64_C(239078160),        // VSETLNi8
    2332             :     UINT64_C(4088791808),       // VSHLLi16
    2333             :     UINT64_C(4089053952),       // VSHLLi32
    2334             :     UINT64_C(4088529664),       // VSHLLi8
    2335             :     UINT64_C(4070574608),       // VSHLLsv2i64
    2336             :     UINT64_C(4069526032),       // VSHLLsv4i32
    2337             :     UINT64_C(4069001744),       // VSHLLsv8i16
    2338             :     UINT64_C(4087351824),       // VSHLLuv2i64
    2339             :     UINT64_C(4086303248),       // VSHLLuv4i32
    2340             :     UINT64_C(4085778960),       // VSHLLuv8i16
    2341             :     UINT64_C(4069000528),       // VSHLiv16i8
    2342             :     UINT64_C(4068476304),       // VSHLiv1i64
    2343             :     UINT64_C(4070573328),       // VSHLiv2i32
    2344             :     UINT64_C(4068476368),       // VSHLiv2i64
    2345             :     UINT64_C(4069524752),       // VSHLiv4i16
    2346             :     UINT64_C(4070573392),       // VSHLiv4i32
    2347             :     UINT64_C(4069524816),       // VSHLiv8i16
    2348             :     UINT64_C(4069000464),       // VSHLiv8i8
    2349             :     UINT64_C(4060087360),       // VSHLsv16i8
    2350             :     UINT64_C(4063233024),       // VSHLsv1i64
    2351             :     UINT64_C(4062184448),       // VSHLsv2i32
    2352             :     UINT64_C(4063233088),       // VSHLsv2i64
    2353             :     UINT64_C(4061135872),       // VSHLsv4i16
    2354             :     UINT64_C(4062184512),       // VSHLsv4i32
    2355             :     UINT64_C(4061135936),       // VSHLsv8i16
    2356             :     UINT64_C(4060087296),       // VSHLsv8i8
    2357             :     UINT64_C(4076864576),       // VSHLuv16i8
    2358             :     UINT64_C(4080010240),       // VSHLuv1i64
    2359             :     UINT64_C(4078961664),       // VSHLuv2i32
    2360             :     UINT64_C(4080010304),       // VSHLuv2i64
    2361             :     UINT64_C(4077913088),       // VSHLuv4i16
    2362             :     UINT64_C(4078961728),       // VSHLuv4i32
    2363             :     UINT64_C(4077913152),       // VSHLuv8i16
    2364             :     UINT64_C(4076864512),       // VSHLuv8i8
    2365             :     UINT64_C(4070574096),       // VSHRNv2i32
    2366             :     UINT64_C(4069525520),       // VSHRNv4i16
    2367             :     UINT64_C(4069001232),       // VSHRNv8i8
    2368             :     UINT64_C(4068999248),       // VSHRsv16i8
    2369             :     UINT64_C(4068475024),       // VSHRsv1i64
    2370             :     UINT64_C(4070572048),       // VSHRsv2i32
    2371             :     UINT64_C(4068475088),       // VSHRsv2i64
    2372             :     UINT64_C(4069523472),       // VSHRsv4i16
    2373             :     UINT64_C(4070572112),       // VSHRsv4i32
    2374             :     UINT64_C(4069523536),       // VSHRsv8i16
    2375             :     UINT64_C(4068999184),       // VSHRsv8i8
    2376             :     UINT64_C(4085776464),       // VSHRuv16i8
    2377             :     UINT64_C(4085252240),       // VSHRuv1i64
    2378             :     UINT64_C(4087349264),       // VSHRuv2i32
    2379             :     UINT64_C(4085252304),       // VSHRuv2i64
    2380             :     UINT64_C(4086300688),       // VSHRuv4i16
    2381             :     UINT64_C(4087349328),       // VSHRuv4i32
    2382             :     UINT64_C(4086300752),       // VSHRuv8i16
    2383             :     UINT64_C(4085776400),       // VSHRuv8i8
    2384             :     UINT64_C(247073600),        // VSHTOD
    2385             :     UINT64_C(247073088),        // VSHTOH
    2386             :     UINT64_C(247073344),        // VSHTOS
    2387             :     UINT64_C(246942656),        // VSITOD
    2388             :     UINT64_C(246942144),        // VSITOH
    2389             :     UINT64_C(246942400),        // VSITOS
    2390             :     UINT64_C(4085777744),       // VSLIv16i8
    2391             :     UINT64_C(4085253520),       // VSLIv1i64
    2392             :     UINT64_C(4087350544),       // VSLIv2i32
    2393             :     UINT64_C(4085253584),       // VSLIv2i64
    2394             :     UINT64_C(4086301968),       // VSLIv4i16
    2395             :     UINT64_C(4087350608),       // VSLIv4i32
    2396             :     UINT64_C(4086302032),       // VSLIv8i16
    2397             :     UINT64_C(4085777680),       // VSLIv8i8
    2398             :     UINT64_C(247073728),        // VSLTOD
    2399             :     UINT64_C(247073216),        // VSLTOH
    2400             :     UINT64_C(247073472),        // VSLTOS
    2401             :     UINT64_C(246483904),        // VSQRTD
    2402             :     UINT64_C(246483392),        // VSQRTH
    2403             :     UINT64_C(246483648),        // VSQRTS
    2404             :     UINT64_C(4068999504),       // VSRAsv16i8
    2405             :     UINT64_C(4068475280),       // VSRAsv1i64
    2406             :     UINT64_C(4070572304),       // VSRAsv2i32
    2407             :     UINT64_C(4068475344),       // VSRAsv2i64
    2408             :     UINT64_C(4069523728),       // VSRAsv4i16
    2409             :     UINT64_C(4070572368),       // VSRAsv4i32
    2410             :     UINT64_C(4069523792),       // VSRAsv8i16
    2411             :     UINT64_C(4068999440),       // VSRAsv8i8
    2412             :     UINT64_C(4085776720),       // VSRAuv16i8
    2413             :     UINT64_C(4085252496),       // VSRAuv1i64
    2414             :     UINT64_C(4087349520),       // VSRAuv2i32
    2415             :     UINT64_C(4085252560),       // VSRAuv2i64
    2416             :     UINT64_C(4086300944),       // VSRAuv4i16
    2417             :     UINT64_C(4087349584),       // VSRAuv4i32
    2418             :     UINT64_C(4086301008),       // VSRAuv8i16
    2419             :     UINT64_C(4085776656),       // VSRAuv8i8
    2420             :     UINT64_C(4085777488),       // VSRIv16i8
    2421             :     UINT64_C(4085253264),       // VSRIv1i64
    2422             :     UINT64_C(4087350288),       // VSRIv2i32
    2423             :     UINT64_C(4085253328),       // VSRIv2i64
    2424             :     UINT64_C(4086301712),       // VSRIv4i16
    2425             :     UINT64_C(4087350352),       // VSRIv4i32
    2426             :     UINT64_C(4086301776),       // VSRIv8i16
    2427             :     UINT64_C(4085777424),       // VSRIv8i8
    2428             :     UINT64_C(4102030351),       // VST1LNd16
    2429             :     UINT64_C(4102030336),       // VST1LNd16_UPD
    2430             :     UINT64_C(4102031375),       // VST1LNd32
    2431             :     UINT64_C(4102031360),       // VST1LNd32_UPD
    2432             :     UINT64_C(4102029327),       // VST1LNd8
    2433             :     UINT64_C(4102029312),       // VST1LNd8_UPD
    2434             :     UINT64_C(0),        // VST1LNq16Pseudo
    2435             :     UINT64_C(0),        // VST1LNq16Pseudo_UPD
    2436             :     UINT64_C(0),        // VST1LNq32Pseudo
    2437             :     UINT64_C(0),        // VST1LNq32Pseudo_UPD
    2438             :     UINT64_C(0),        // VST1LNq8Pseudo
    2439             :     UINT64_C(0),        // VST1LNq8Pseudo_UPD
    2440             :     UINT64_C(4093642575),       // VST1d16
    2441             :     UINT64_C(4093641295),       // VST1d16Q
    2442             :     UINT64_C(0),        // VST1d16QPseudo
    2443             :     UINT64_C(4093641293),       // VST1d16Qwb_fixed
    2444             :     UINT64_C(4093641280),       // VST1d16Qwb_register
    2445             :     UINT64_C(4093642319),       // VST1d16T
    2446             :     UINT64_C(0),        // VST1d16TPseudo
    2447             :     UINT64_C(4093642317),       // VST1d16Twb_fixed
    2448             :     UINT64_C(4093642304),       // VST1d16Twb_register
    2449             :     UINT64_C(4093642573),       // VST1d16wb_fixed
    2450             :     UINT64_C(4093642560),       // VST1d16wb_register
    2451             :     UINT64_C(4093642639),       // VST1d32
    2452             :     UINT64_C(4093641359),       // VST1d32Q
    2453             :     UINT64_C(0),        // VST1d32QPseudo
    2454             :     UINT64_C(4093641357),       // VST1d32Qwb_fixed
    2455             :     UINT64_C(4093641344),       // VST1d32Qwb_register
    2456             :     UINT64_C(4093642383),       // VST1d32T
    2457             :     UINT64_C(0),        // VST1d32TPseudo
    2458             :     UINT64_C(4093642381),       // VST1d32Twb_fixed
    2459             :     UINT64_C(4093642368),       // VST1d32Twb_register
    2460             :     UINT64_C(4093642637),       // VST1d32wb_fixed
    2461             :     UINT64_C(4093642624),       // VST1d32wb_register
    2462             :     UINT64_C(4093642703),       // VST1d64
    2463             :     UINT64_C(4093641423),       // VST1d64Q
    2464             :     UINT64_C(0),        // VST1d64QPseudo
    2465             :     UINT64_C(0),        // VST1d64QPseudoWB_fixed
    2466             :     UINT64_C(0),        // VST1d64QPseudoWB_register
    2467             :     UINT64_C(4093641421),       // VST1d64Qwb_fixed
    2468             :     UINT64_C(4093641408),       // VST1d64Qwb_register
    2469             :     UINT64_C(4093642447),       // VST1d64T
    2470             :     UINT64_C(0),        // VST1d64TPseudo
    2471             :     UINT64_C(0),        // VST1d64TPseudoWB_fixed
    2472             :     UINT64_C(0),        // VST1d64TPseudoWB_register
    2473             :     UINT64_C(4093642445),       // VST1d64Twb_fixed
    2474             :     UINT64_C(4093642432),       // VST1d64Twb_register
    2475             :     UINT64_C(4093642701),       // VST1d64wb_fixed
    2476             :     UINT64_C(4093642688),       // VST1d64wb_register
    2477             :     UINT64_C(4093642511),       // VST1d8
    2478             :     UINT64_C(4093641231),       // VST1d8Q
    2479             :     UINT64_C(0),        // VST1d8QPseudo
    2480             :     UINT64_C(4093641229),       // VST1d8Qwb_fixed
    2481             :     UINT64_C(4093641216),       // VST1d8Qwb_register
    2482             :     UINT64_C(4093642255),       // VST1d8T
    2483             :     UINT64_C(0),        // VST1d8TPseudo
    2484             :     UINT64_C(4093642253),       // VST1d8Twb_fixed
    2485             :     UINT64_C(4093642240),       // VST1d8Twb_register
    2486             :     UINT64_C(4093642509),       // VST1d8wb_fixed
    2487             :     UINT64_C(4093642496),       // VST1d8wb_register
    2488             :     UINT64_C(4093643343),       // VST1q16
    2489             :     UINT64_C(0),        // VST1q16HighQPseudo
    2490             :     UINT64_C(0),        // VST1q16HighTPseudo
    2491             :     UINT64_C(0),        // VST1q16LowQPseudo_UPD
    2492             :     UINT64_C(0),        // VST1q16LowTPseudo_UPD
    2493             :     UINT64_C(4093643341),       // VST1q16wb_fixed
    2494             :     UINT64_C(4093643328),       // VST1q16wb_register
    2495             :     UINT64_C(4093643407),       // VST1q32
    2496             :     UINT64_C(0),        // VST1q32HighQPseudo
    2497             :     UINT64_C(0),        // VST1q32HighTPseudo
    2498             :     UINT64_C(0),        // VST1q32LowQPseudo_UPD
    2499             :     UINT64_C(0),        // VST1q32LowTPseudo_UPD
    2500             :     UINT64_C(4093643405),       // VST1q32wb_fixed
    2501             :     UINT64_C(4093643392),       // VST1q32wb_register
    2502             :     UINT64_C(4093643471),       // VST1q64
    2503             :     UINT64_C(0),        // VST1q64HighQPseudo
    2504             :     UINT64_C(0),        // VST1q64HighTPseudo
    2505             :     UINT64_C(0),        // VST1q64LowQPseudo_UPD
    2506             :     UINT64_C(0),        // VST1q64LowTPseudo_UPD
    2507             :     UINT64_C(4093643469),       // VST1q64wb_fixed
    2508             :     UINT64_C(4093643456),       // VST1q64wb_register
    2509             :     UINT64_C(4093643279),       // VST1q8
    2510             :     UINT64_C(0),        // VST1q8HighQPseudo
    2511             :     UINT64_C(0),        // VST1q8HighTPseudo
    2512             :     UINT64_C(0),        // VST1q8LowQPseudo_UPD
    2513             :     UINT64_C(0),        // VST1q8LowTPseudo_UPD
    2514             :     UINT64_C(4093643277),       // VST1q8wb_fixed
    2515             :     UINT64_C(4093643264),       // VST1q8wb_register
    2516             :     UINT64_C(4102030607),       // VST2LNd16
    2517             :     UINT64_C(0),        // VST2LNd16Pseudo
    2518             :     UINT64_C(0),        // VST2LNd16Pseudo_UPD
    2519             :     UINT64_C(4102030592),       // VST2LNd16_UPD
    2520             :     UINT64_C(4102031631),       // VST2LNd32
    2521             :     UINT64_C(0),        // VST2LNd32Pseudo
    2522             :     UINT64_C(0),        // VST2LNd32Pseudo_UPD
    2523             :     UINT64_C(4102031616),       // VST2LNd32_UPD
    2524             :     UINT64_C(4102029583),       // VST2LNd8
    2525             :     UINT64_C(0),        // VST2LNd8Pseudo
    2526             :     UINT64_C(0),        // VST2LNd8Pseudo_UPD
    2527             :     UINT64_C(4102029568),       // VST2LNd8_UPD
    2528             :     UINT64_C(4102030639),       // VST2LNq16
    2529             :     UINT64_C(0),        // VST2LNq16Pseudo
    2530             :     UINT64_C(0),        // VST2LNq16Pseudo_UPD
    2531             :     UINT64_C(4102030624),       // VST2LNq16_UPD
    2532             :     UINT64_C(4102031695),       // VST2LNq32
    2533             :     UINT64_C(0),        // VST2LNq32Pseudo
    2534             :     UINT64_C(0),        // VST2LNq32Pseudo_UPD
    2535             :     UINT64_C(4102031680),       // VST2LNq32_UPD
    2536             :     UINT64_C(4093643087),       // VST2b16
    2537             :     UINT64_C(4093643085),       // VST2b16wb_fixed
    2538             :     UINT64_C(4093643072),       // VST2b16wb_register
    2539             :     UINT64_C(4093643151),       // VST2b32
    2540             :     UINT64_C(4093643149),       // VST2b32wb_fixed
    2541             :     UINT64_C(4093643136),       // VST2b32wb_register
    2542             :     UINT64_C(4093643023),       // VST2b8
    2543             :     UINT64_C(4093643021),       // VST2b8wb_fixed
    2544             :     UINT64_C(4093643008),       // VST2b8wb_register
    2545             :     UINT64_C(4093642831),       // VST2d16
    2546             :     UINT64_C(4093642829),       // VST2d16wb_fixed
    2547             :     UINT64_C(4093642816),       // VST2d16wb_register
    2548             :     UINT64_C(4093642895),       // VST2d32
    2549             :     UINT64_C(4093642893),       // VST2d32wb_fixed
    2550             :     UINT64_C(4093642880),       // VST2d32wb_register
    2551             :     UINT64_C(4093642767),       // VST2d8
    2552             :     UINT64_C(4093642765),       // VST2d8wb_fixed
    2553             :     UINT64_C(4093642752),       // VST2d8wb_register
    2554             :     UINT64_C(4093641551),       // VST2q16
    2555             :     UINT64_C(0),        // VST2q16Pseudo
    2556             :     UINT64_C(0),        // VST2q16PseudoWB_fixed
    2557             :     UINT64_C(0),        // VST2q16PseudoWB_register
    2558             :     UINT64_C(4093641549),       // VST2q16wb_fixed
    2559             :     UINT64_C(4093641536),       // VST2q16wb_register
    2560             :     UINT64_C(4093641615),       // VST2q32
    2561             :     UINT64_C(0),        // VST2q32Pseudo
    2562             :     UINT64_C(0),        // VST2q32PseudoWB_fixed
    2563             :     UINT64_C(0),        // VST2q32PseudoWB_register
    2564             :     UINT64_C(4093641613),       // VST2q32wb_fixed
    2565             :     UINT64_C(4093641600),       // VST2q32wb_register
    2566             :     UINT64_C(4093641487),       // VST2q8
    2567             :     UINT64_C(0),        // VST2q8Pseudo
    2568             :     UINT64_C(0),        // VST2q8PseudoWB_fixed
    2569             :     UINT64_C(0),        // VST2q8PseudoWB_register
    2570             :     UINT64_C(4093641485),       // VST2q8wb_fixed
    2571             :     UINT64_C(4093641472),       // VST2q8wb_register
    2572             :     UINT64_C(4102030863),       // VST3LNd16
    2573             :     UINT64_C(0),        // VST3LNd16Pseudo
    2574             :     UINT64_C(0),        // VST3LNd16Pseudo_UPD
    2575             :     UINT64_C(4102030848),       // VST3LNd16_UPD
    2576             :     UINT64_C(4102031887),       // VST3LNd32
    2577             :     UINT64_C(0),        // VST3LNd32Pseudo
    2578             :     UINT64_C(0),        // VST3LNd32Pseudo_UPD
    2579             :     UINT64_C(4102031872),       // VST3LNd32_UPD
    2580             :     UINT64_C(4102029839),       // VST3LNd8
    2581             :     UINT64_C(0),        // VST3LNd8Pseudo
    2582             :     UINT64_C(0),        // VST3LNd8Pseudo_UPD
    2583             :     UINT64_C(4102029824),       // VST3LNd8_UPD
    2584             :     UINT64_C(4102030895),       // VST3LNq16
    2585             :     UINT64_C(0),        // VST3LNq16Pseudo
    2586             :     UINT64_C(0),        // VST3LNq16Pseudo_UPD
    2587             :     UINT64_C(4102030880),       // VST3LNq16_UPD
    2588             :     UINT64_C(4102031951),       // VST3LNq32
    2589             :     UINT64_C(0),        // VST3LNq32Pseudo
    2590             :     UINT64_C(0),        // VST3LNq32Pseudo_UPD
    2591             :     UINT64_C(4102031936),       // VST3LNq32_UPD
    2592             :     UINT64_C(4093641807),       // VST3d16
    2593             :     UINT64_C(0),        // VST3d16Pseudo
    2594             :     UINT64_C(0),        // VST3d16Pseudo_UPD
    2595             :     UINT64_C(4093641792),       // VST3d16_UPD
    2596             :     UINT64_C(4093641871),       // VST3d32
    2597             :     UINT64_C(0),        // VST3d32Pseudo
    2598             :     UINT64_C(0),        // VST3d32Pseudo_UPD
    2599             :     UINT64_C(4093641856),       // VST3d32_UPD
    2600             :     UINT64_C(4093641743),       // VST3d8
    2601             :     UINT64_C(0),        // VST3d8Pseudo
    2602             :     UINT64_C(0),        // VST3d8Pseudo_UPD
    2603             :     UINT64_C(4093641728),       // VST3d8_UPD
    2604             :     UINT64_C(4093642063),       // VST3q16
    2605             :     UINT64_C(0),        // VST3q16Pseudo_UPD
    2606             :     UINT64_C(4093642048),       // VST3q16_UPD
    2607             :     UINT64_C(0),        // VST3q16oddPseudo
    2608             :     UINT64_C(0),        // VST3q16oddPseudo_UPD
    2609             :     UINT64_C(4093642127),       // VST3q32
    2610             :     UINT64_C(0),        // VST3q32Pseudo_UPD
    2611             :     UINT64_C(4093642112),       // VST3q32_UPD
    2612             :     UINT64_C(0),        // VST3q32oddPseudo
    2613             :     UINT64_C(0),        // VST3q32oddPseudo_UPD
    2614             :     UINT64_C(4093641999),       // VST3q8
    2615             :     UINT64_C(0),        // VST3q8Pseudo_UPD
    2616             :     UINT64_C(4093641984),       // VST3q8_UPD
    2617             :     UINT64_C(0),        // VST3q8oddPseudo
    2618             :     UINT64_C(0),        // VST3q8oddPseudo_UPD
    2619             :     UINT64_C(4102031119),       // VST4LNd16
    2620             :     UINT64_C(0),        // VST4LNd16Pseudo
    2621             :     UINT64_C(0),        // VST4LNd16Pseudo_UPD
    2622             :     UINT64_C(4102031104),       // VST4LNd16_UPD
    2623             :     UINT64_C(4102032143),       // VST4LNd32
    2624             :     UINT64_C(0),        // VST4LNd32Pseudo
    2625             :     UINT64_C(0),        // VST4LNd32Pseudo_UPD
    2626             :     UINT64_C(4102032128),       // VST4LNd32_UPD
    2627             :     UINT64_C(4102030095),       // VST4LNd8
    2628             :     UINT64_C(0),        // VST4LNd8Pseudo
    2629             :     UINT64_C(0),        // VST4LNd8Pseudo_UPD
    2630             :     UINT64_C(4102030080),       // VST4LNd8_UPD
    2631             :     UINT64_C(4102031151),       // VST4LNq16
    2632             :     UINT64_C(0),        // VST4LNq16Pseudo
    2633             :     UINT64_C(0),        // VST4LNq16Pseudo_UPD
    2634             :     UINT64_C(4102031136),       // VST4LNq16_UPD
    2635             :     UINT64_C(4102032207),       // VST4LNq32
    2636             :     UINT64_C(0),        // VST4LNq32Pseudo
    2637             :     UINT64_C(0),        // VST4LNq32Pseudo_UPD
    2638             :     UINT64_C(4102032192),       // VST4LNq32_UPD
    2639             :     UINT64_C(4093640783),       // VST4d16
    2640             :     UINT64_C(0),        // VST4d16Pseudo
    2641             :     UINT64_C(0),        // VST4d16Pseudo_UPD
    2642             :     UINT64_C(4093640768),       // VST4d16_UPD
    2643             :     UINT64_C(4093640847),       // VST4d32
    2644             :     UINT64_C(0),        // VST4d32Pseudo
    2645             :     UINT64_C(0),        // VST4d32Pseudo_UPD
    2646             :     UINT64_C(4093640832),       // VST4d32_UPD
    2647             :     UINT64_C(4093640719),       // VST4d8
    2648             :     UINT64_C(0),        // VST4d8Pseudo
    2649             :     UINT64_C(0),        // VST4d8Pseudo_UPD
    2650             :     UINT64_C(4093640704),       // VST4d8_UPD
    2651             :     UINT64_C(4093641039),       // VST4q16
    2652             :     UINT64_C(0),        // VST4q16Pseudo_UPD
    2653             :     UINT64_C(4093641024),       // VST4q16_UPD
    2654             :     UINT64_C(0),        // VST4q16oddPseudo
    2655             :     UINT64_C(0),        // VST4q16oddPseudo_UPD
    2656             :     UINT64_C(4093641103),       // VST4q32
    2657             :     UINT64_C(0),        // VST4q32Pseudo_UPD
    2658             :     UINT64_C(4093641088),       // VST4q32_UPD
    2659             :     UINT64_C(0),        // VST4q32oddPseudo
    2660             :     UINT64_C(0),        // VST4q32oddPseudo_UPD
    2661             :     UINT64_C(4093640975),       // VST4q8
    2662             :     UINT64_C(0),        // VST4q8Pseudo_UPD
    2663             :     UINT64_C(4093640960),       // VST4q8_UPD
    2664             :     UINT64_C(0),        // VST4q8oddPseudo
    2665             :     UINT64_C(0),        // VST4q8oddPseudo_UPD
    2666             :     UINT64_C(220203776),        // VSTMDDB_UPD
    2667             :     UINT64_C(209718016),        // VSTMDIA
    2668             :     UINT64_C(211815168),        // VSTMDIA_UPD
    2669             :     UINT64_C(0),        // VSTMQIA
    2670             :     UINT64_C(220203520),        // VSTMSDB_UPD
    2671             :     UINT64_C(209717760),        // VSTMSIA
    2672             :     UINT64_C(211814912),        // VSTMSIA_UPD
    2673             :     UINT64_C(218106624),        // VSTRD
    2674             :     UINT64_C(218106112),        // VSTRH
    2675             :     UINT64_C(218106368),        // VSTRS
    2676             :     UINT64_C(238029632),        // VSUBD
    2677             :     UINT64_C(238029120),        // VSUBH
    2678             :     UINT64_C(4070573568),       // VSUBHNv2i32
    2679             :     UINT64_C(4069524992),       // VSUBHNv4i16
    2680             :     UINT64_C(4068476416),       // VSUBHNv8i8
    2681             :     UINT64_C(4070572544),       // VSUBLsv2i64
    2682             :     UINT64_C(4069523968),       // VSUBLsv4i32
    2683             :     UINT64_C(4068475392),       // VSUBLsv8i16
    2684             :     UINT64_C(4087349760),       // VSUBLuv2i64
    2685             :     UINT64_C(4086301184),       // VSUBLuv4i32
    2686             :     UINT64_C(4085252608),       // VSUBLuv8i16
    2687             :     UINT64_C(238029376),        // VSUBS
    2688             :     UINT64_C(4070572800),       // VSUBWsv2i64
    2689             :     UINT64_C(4069524224),       // VSUBWsv4i32
    2690             :     UINT64_C(4068475648),       // VSUBWsv8i16
    2691             :     UINT64_C(4087350016),       // VSUBWuv2i64
    2692             :     UINT64_C(4086301440),       // VSUBWuv4i32
    2693             :     UINT64_C(4085252864),       // VSUBWuv8i16
    2694             :     UINT64_C(4062186752),       // VSUBfd
    2695             :     UINT64_C(4062186816),       // VSUBfq
    2696             :     UINT64_C(4063235328),       // VSUBhd
    2697             :     UINT64_C(4063235392),       // VSUBhq
    2698             :     UINT64_C(4076865600),       // VSUBv16i8
    2699             :     UINT64_C(4080011264),       // VSUBv1i64
    2700             :     UINT64_C(4078962688),       // VSUBv2i32
    2701             :     UINT64_C(4080011328),       // VSUBv2i64
    2702             :     UINT64_C(4077914112),       // VSUBv4i16
    2703             :     UINT64_C(4078962752),       // VSUBv4i32
    2704             :     UINT64_C(4077914176),       // VSUBv8i16
    2705             :     UINT64_C(4076865536),       // VSUBv8i8
    2706             :     UINT64_C(4088528896),       // VSWPd
    2707             :     UINT64_C(4088528960),       // VSWPq
    2708             :     UINT64_C(4088399872),       // VTBL1
    2709             :     UINT64_C(4088400128),       // VTBL2
    2710             :     UINT64_C(4088400384),       // VTBL3
    2711             :     UINT64_C(0),        // VTBL3Pseudo
    2712             :     UINT64_C(4088400640),       // VTBL4
    2713             :     UINT64_C(0),        // VTBL4Pseudo
    2714             :     UINT64_C(4088399936),       // VTBX1
    2715             :     UINT64_C(4088400192),       // VTBX2
    2716             :     UINT64_C(4088400448),       // VTBX3
    2717             :     UINT64_C(0),        // VTBX3Pseudo
    2718             :     UINT64_C(4088400704),       // VTBX4
    2719             :     UINT64_C(0),        // VTBX4Pseudo
    2720             :     UINT64_C(247335744),        // VTOSHD
    2721             :     UINT64_C(247335232),        // VTOSHH
    2722             :     UINT64_C(247335488),        // VTOSHS
    2723             :     UINT64_C(247270208),        // VTOSIRD
    2724             :     UINT64_C(247269696),        // VTOSIRH
    2725             :     UINT64_C(247269952),        // VTOSIRS
    2726             :     UINT64_C(247270336),        // VTOSIZD
    2727             :     UINT64_C(247269824),        // VTOSIZH
    2728             :     UINT64_C(247270080),        // VTOSIZS
    2729             :     UINT64_C(247335872),        // VTOSLD
    2730             :     UINT64_C(247335360),        // VTOSLH
    2731             :     UINT64_C(247335616),        // VTOSLS
    2732             :     UINT64_C(247401280),        // VTOUHD
    2733             :     UINT64_C(247400768),        // VTOUHH
    2734             :     UINT64_C(247401024),        // VTOUHS
    2735             :     UINT64_C(247204672),        // VTOUIRD
    2736             :     UINT64_C(247204160),        // VTOUIRH
    2737             :     UINT64_C(247204416),        // VTOUIRS
    2738             :     UINT64_C(247204800),        // VTOUIZD
    2739             :     UINT64_C(247204288),        // VTOUIZH
    2740             :     UINT64_C(247204544),        // VTOUIZS
    2741             :     UINT64_C(247401408),        // VTOULD
    2742             :     UINT64_C(247400896),        // VTOULH
    2743             :     UINT64_C(247401152),        // VTOULS
    2744             :     UINT64_C(4088791168),       // VTRNd16
    2745             :     UINT64_C(4089053312),       // VTRNd32
    2746             :     UINT64_C(4088529024),       // VTRNd8
    2747             :     UINT64_C(4088791232),       // VTRNq16
    2748             :     UINT64_C(4089053376),       // VTRNq32
    2749             :     UINT64_C(4088529088),       // VTRNq8
    2750             :     UINT64_C(4060088400),       // VTSTv16i8
    2751             :     UINT64_C(4062185488),       // VTSTv2i32
    2752             :     UINT64_C(4061136912),       // VTSTv4i16
    2753             :     UINT64_C(4062185552),       // VTSTv4i32
    2754             :     UINT64_C(4061136976),       // VTSTv8i16
    2755             :     UINT64_C(4060088336),       // VTSTv8i8
    2756             :     UINT64_C(4229958928),       // VUDOTD
    2757             :     UINT64_C(4263513360),       // VUDOTDI
    2758             :     UINT64_C(4229958992),       // VUDOTQ
    2759             :     UINT64_C(4263513424),       // VUDOTQI
    2760             :     UINT64_C(247139136),        // VUHTOD
    2761             :     UINT64_C(247138624),        // VUHTOH
    2762             :     UINT64_C(247138880),        // VUHTOS
    2763             :     UINT64_C(246942528),        // VUITOD
    2764             :     UINT64_C(246942016),        // VUITOH
    2765             :     UINT64_C(246942272),        // VUITOS
    2766             :     UINT64_C(247139264),        // VULTOD
    2767             :     UINT64_C(247138752),        // VULTOH
    2768             :     UINT64_C(247139008),        // VULTOS
    2769             :     UINT64_C(4088791296),       // VUZPd16
    2770             :     UINT64_C(4088529152),       // VUZPd8
    2771             :     UINT64_C(4088791360),       // VUZPq16
    2772             :     UINT64_C(4089053504),       // VUZPq32
    2773             :     UINT64_C(4088529216),       // VUZPq8
    2774             :     UINT64_C(4088791424),       // VZIPd16
    2775             :     UINT64_C(4088529280),       // VZIPd8
    2776             :     UINT64_C(4088791488),       // VZIPq16
    2777             :     UINT64_C(4089053632),       // VZIPq32
    2778             :     UINT64_C(4088529344),       // VZIPq8
    2779             :     UINT64_C(139460608),        // sysLDMDA
    2780             :     UINT64_C(141557760),        // sysLDMDA_UPD
    2781             :     UINT64_C(156237824),        // sysLDMDB
    2782             :     UINT64_C(158334976),        // sysLDMDB_UPD
    2783             :     UINT64_C(147849216),        // sysLDMIA
    2784             :     UINT64_C(149946368),        // sysLDMIA_UPD
    2785             :     UINT64_C(164626432),        // sysLDMIB
    2786             :     UINT64_C(166723584),        // sysLDMIB_UPD
    2787             :     UINT64_C(138412032),        // sysSTMDA
    2788             :     UINT64_C(140509184),        // sysSTMDA_UPD
    2789             :     UINT64_C(155189248),        // sysSTMDB
    2790             :     UINT64_C(157286400),        // sysSTMDB_UPD
    2791             :     UINT64_C(146800640),        // sysSTMIA
    2792             :     UINT64_C(148897792),        // sysSTMIA_UPD
    2793             :     UINT64_C(163577856),        // sysSTMIB
    2794             :     UINT64_C(165675008),        // sysSTMIB_UPD
    2795             :     UINT64_C(4047503360),       // t2ADCri
    2796             :     UINT64_C(3946840064),       // t2ADCrr
    2797             :     UINT64_C(3946840064),       // t2ADCrs
    2798             :     UINT64_C(4043309056),       // t2ADDri
    2799             :     UINT64_C(4060086272),       // t2ADDri12
    2800             :     UINT64_C(3942645760),       // t2ADDrr
    2801             :     UINT64_C(3942645760),       // t2ADDrs
    2802             :     UINT64_C(4061069312),       // t2ADR
    2803             :     UINT64_C(4026531840),       // t2ANDri
    2804             :     UINT64_C(3925868544),       // t2ANDrr
    2805             :     UINT64_C(3925868544),       // t2ANDrs
    2806             :     UINT64_C(3931045920),       // t2ASRri
    2807             :     UINT64_C(4198559744),       // t2ASRrr
    2808             :     UINT64_C(4026568704),       // t2B
    2809             :     UINT64_C(4084137984),       // t2BFC
    2810             :     UINT64_C(4083154944),       // t2BFI
    2811             :     UINT64_C(4028628992),       // t2BICri
    2812             :     UINT64_C(3927965696),       // t2BICrr
    2813             :     UINT64_C(3927965696),       // t2BICrs
    2814             :     UINT64_C(4089483008),       // t2BXJ
    2815             :     UINT64_C(4026564608),       // t2Bcc
    2816             :     UINT64_C(3992977408),       // t2CDP
    2817             :     UINT64_C(4261412864),       // t2CDP2
    2818             :     UINT64_C(4089417519),       // t2CLREX
    2819             :     UINT64_C(4205899904),       // t2CLZ
    2820             :     UINT64_C(4044361472),       // t2CMNri
    2821             :     UINT64_C(3943698176),       // t2CMNzrr
    2822             :     UINT64_C(3943698176),       // t2CMNzrs
    2823             :     UINT64_C(4054847232),       // t2CMPri
    2824             :     UINT64_C(3954183936),       // t2CMPrr
    2825             :     UINT64_C(3954183936),       // t2CMPrs
    2826             :     UINT64_C(4088365312),       // t2CPS1p
    2827             :     UINT64_C(4088365056),       // t2CPS2p
    2828             :     UINT64_C(4088365312),       // t2CPS3p
    2829             :     UINT64_C(4206948480),       // t2CRC32B
    2830             :     UINT64_C(4207997056),       // t2CRC32CB
    2831             :     UINT64_C(4207997072),       // t2CRC32CH
    2832             :     UINT64_C(4207997088),       // t2CRC32CW
    2833             :     UINT64_C(4206948496),       // t2CRC32H
    2834             :     UINT64_C(4206948512),       // t2CRC32W
    2835             :     UINT64_C(4088365296),       // t2DBG
    2836             :     UINT64_C(4153376769),       // t2DCPS1
    2837             :     UINT64_C(4153376770),       // t2DCPS2
    2838             :     UINT64_C(4153376771),       // t2DCPS3
    2839             :     UINT64_C(4089417552),       // t2DMB
    2840             :     UINT64_C(4089417536),       // t2DSB
    2841             :     UINT64_C(4034920448),       // t2EORri
    2842             :     UINT64_C(3934257152),       // t2EORrr
    2843             :     UINT64_C(3934257152),       // t2EORrs
    2844             :     UINT64_C(4088365056),       // t2HINT
    2845             :     UINT64_C(4158685184),       // t2HVC
    2846             :     UINT64_C(4089417568),       // t2ISB
    2847             :     UINT64_C(48896),    // t2IT
    2848             :     UINT64_C(0),        // t2Int_eh_sjlj_setjmp
    2849             :     UINT64_C(0),        // t2Int_eh_sjlj_setjmp_nofp
    2850             :     UINT64_C(3905949615),       // t2LDA
    2851             :     UINT64_C(3905949583),       // t2LDAB
    2852             :     UINT64_C(3905949679),       // t2LDAEX
    2853             :     UINT64_C(3905949647),       // t2LDAEXB
    2854             :     UINT64_C(3905945855),       // t2LDAEXD
    2855             :     UINT64_C(3905949663),       // t2LDAEXH
    2856             :     UINT64_C(3905949599),       // t2LDAH
    2857             :     UINT64_C(4249878528),       // t2LDC2L_OFFSET
    2858             :     UINT64_C(4241489920),       // t2LDC2L_OPTION
    2859             :     UINT64_C(4235198464),       // t2LDC2L_POST
    2860             :     UINT64_C(4251975680),       // t2LDC2L_PRE
    2861             :     UINT64_C(4245684224),       // t2LDC2_OFFSET
    2862             :     UINT64_C(4237295616),       // t2LDC2_OPTION
    2863             :     UINT64_C(4231004160),       // t2LDC2_POST
    2864             :     UINT64_C(4247781376),       // t2LDC2_PRE
    2865             :     UINT64_C(3981443072),       // t2LDCL_OFFSET
    2866             :     UINT64_C(3973054464),       // t2LDCL_OPTION
    2867             :     UINT64_C(3966763008),       // t2LDCL_POST
    2868             :     UINT64_C(3983540224),       // t2LDCL_PRE
    2869             :     UINT64_C(3977248768),       // t2LDC_OFFSET
    2870             :     UINT64_C(3968860160),       // t2LDC_OPTION
    2871             :     UINT64_C(3962568704),       // t2LDC_POST
    2872             :     UINT64_C(3979345920),       // t2LDC_PRE
    2873             :     UINT64_C(3910139904),       // t2LDMDB
    2874             :     UINT64_C(3912237056),       // t2LDMDB_UPD
    2875             :     UINT64_C(3901751296),       // t2LDMIA
    2876             :     UINT64_C(3903848448),       // t2LDMIA_UPD
    2877             :     UINT64_C(4161801728),       // t2LDRBT
    2878             :     UINT64_C(4161800448),       // t2LDRB_POST
    2879             :     UINT64_C(4161801472),       // t2LDRB_PRE
    2880             :     UINT64_C(4170186752),       // t2LDRBi12
    2881             :     UINT64_C(4161801216),       // t2LDRBi8
    2882             :     UINT64_C(4162781184),       // t2LDRBpci
    2883             :     UINT64_C(4161798144),       // t2LDRBs
    2884             :     UINT64_C(3899654144),       // t2LDRD_POST
    2885             :     UINT64_C(3916431360),       // t2LDRD_PRE
    2886             :     UINT64_C(3914334208),       // t2LDRDi8
    2887             :     UINT64_C(3897560832),       // t2LDREX
    2888             :     UINT64_C(3905949519),       // t2LDREXB
    2889             :     UINT64_C(3905945727),       // t2LDREXD
    2890             :     UINT64_C(3905949535),       // t2LDREXH
    2891             :     UINT64_C(4163898880),       // t2LDRHT
    2892             :     UINT64_C(4163897600),       // t2LDRH_POST
    2893             :     UINT64_C(4163898624),       // t2LDRH_PRE
    2894             :     UINT64_C(4172283904),       // t2LDRHi12
    2895             :     UINT64_C(4163898368),       // t2LDRHi8
    2896             :     UINT64_C(4164878336),       // t2LDRHpci
    2897             :     UINT64_C(4163895296),       // t2LDRHs
    2898             :     UINT64_C(4178578944),       // t2LDRSBT
    2899             :     UINT64_C(4178577664),       // t2LDRSB_POST
    2900             :     UINT64_C(4178578688),       // t2LDRSB_PRE
    2901             :     UINT64_C(4186963968),       // t2LDRSBi12
    2902             :     UINT64_C(4178578432),       // t2LDRSBi8
    2903             :     UINT64_C(4179558400),       // t2LDRSBpci
    2904             :     UINT64_C(4178575360),       // t2LDRSBs
    2905             :     UINT64_C(4180676096),       // t2LDRSHT
    2906             :     UINT64_C(4180674816),       // t2LDRSH_POST
    2907             :     UINT64_C(4180675840),       // t2LDRSH_PRE
    2908             :     UINT64_C(4189061120),       // t2LDRSHi12
    2909             :     UINT64_C(4180675584),       // t2LDRSHi8
    2910             :     UINT64_C(4181655552),       // t2LDRSHpci
    2911             :     UINT64_C(4180672512),       // t2LDRSHs
    2912             :     UINT64_C(4165996032),       // t2LDRT
    2913             :     UINT64_C(4165994752),       // t2LDR_POST
    2914             :     UINT64_C(4165995776),       // t2LDR_PRE
    2915             :     UINT64_C(4174381056),       // t2LDRi12
    2916             :     UINT64_C(4165995520),       // t2LDRi8
    2917             :     UINT64_C(4166975488),       // t2LDRpci
    2918             :     UINT64_C(4165992448),       // t2LDRs
    2919             :     UINT64_C(3931045888),       // t2LSLri
    2920             :     UINT64_C(4194365440),       // t2LSLrr
    2921             :     UINT64_C(3931045904),       // t2LSRri
    2922             :     UINT64_C(4196462592),       // t2LSRrr
    2923             :     UINT64_C(3992977424),       // t2MCR
    2924             :     UINT64_C(4261412880),       // t2MCR2
    2925             :     UINT64_C(3963617280),       // t2MCRR
    2926             :     UINT64_C(4232052736),       // t2MCRR2
    2927             :     UINT64_C(4211081216),       // t2MLA
    2928             :     UINT64_C(4211081232),       // t2MLS
    2929             :     UINT64_C(4072669184),       // t2MOVTi16
    2930             :     UINT64_C(4031709184),       // t2MOVi
    2931             :     UINT64_C(4064280576),       // t2MOVi16
    2932             :     UINT64_C(3931045888),       // t2MOVr
    2933             :     UINT64_C(3932094560),       // t2MOVsra_flag
    2934             :     UINT64_C(3932094544),       // t2MOVsrl_flag
    2935             :     UINT64_C(3994026000),       // t2MRC
    2936             :     UINT64_C(4262461456),       // t2MRC2
    2937             :     UINT64_C(3964665856),       // t2MRRC
    2938             :     UINT64_C(4233101312),       // t2MRRC2
    2939             :     UINT64_C(4092559360),       // t2MRS_AR
    2940             :     UINT64_C(4092559360),       // t2MRS_M
    2941             :     UINT64_C(4091576352),       // t2MRSbanked
    2942             :     UINT64_C(4093607936),       // t2MRSsys_AR
    2943             :     UINT64_C(4085284864),       // t2MSR_AR
    2944             :     UINT64_C(4085284864),       // t2MSR_M
    2945             :     UINT64_C(4085284896),       // t2MSRbanked
    2946             :     UINT64_C(4211142656),       // t2MUL
    2947             :     UINT64_C(4033806336),       // t2MVNi
    2948             :     UINT64_C(3933143040),       // t2MVNr
    2949             :     UINT64_C(3933143040),       // t2MVNs
    2950             :     UINT64_C(4032823296),       // t2ORNri
    2951             :     UINT64_C(3932160000),       // t2ORNrr
    2952             :     UINT64_C(3932160000),       // t2ORNrs
    2953             :     UINT64_C(4030726144),       // t2ORRri
    2954             :     UINT64_C(3930062848),       // t2ORRrr
    2955             :     UINT64_C(3930062848),       // t2ORRrs
    2956             :     UINT64_C(3938451456),       // t2PKHBT
    2957             :     UINT64_C(3938451488),       // t2PKHTB
    2958             :     UINT64_C(4172345344),       // t2PLDWi12
    2959             :     UINT64_C(4163959808),       // t2PLDWi8
    2960             :     UINT64_C(4163956736),       // t2PLDWs
    2961             :     UINT64_C(4170248192),       // t2PLDi12
    2962             :     UINT64_C(4161862656),       // t2PLDi8
    2963             :     UINT64_C(4162842624),       // t2PLDpci
    2964             :     UINT64_C(4161859584),       // t2PLDs
    2965             :     UINT64_C(4187025408),       // t2PLIi12
    2966             :     UINT64_C(4178639872),       // t2PLIi8
    2967             :     UINT64_C(4179619840),       // t2PLIpci
    2968             :     UINT64_C(4178636800),       // t2PLIs
    2969             :     UINT64_C(4202754176),       // t2QADD
    2970             :     UINT64_C(4203802640),       // t2QADD16
    2971             :     UINT64_C(4202754064),       // t2QADD8
    2972             :     UINT64_C(4204851216),       // t2QASX
    2973             :     UINT64_C(4202754192),       // t2QDADD
    2974             :     UINT64_C(4202754224),       // t2QDSUB
    2975             :     UINT64_C(4209045520),       // t2QSAX
    2976             :     UINT64_C(4202754208),       // t2QSUB
    2977             :     UINT64_C(4207996944),       // t2QSUB16
    2978             :     UINT64_C(4206948368),       // t2QSUB8
    2979             :     UINT64_C(4203802784),       // t2RBIT
    2980             :     UINT64_C(4203802752),       // t2REV
    2981             :     UINT64_C(4203802768),       // t2REV16
    2982             :     UINT64_C(4203802800),       // t2REVSH
    2983             :     UINT64_C(3893411840),       // t2RFEDB
    2984             :     UINT64_C(3895508992),       // t2RFEDBW
    2985             :     UINT64_C(3918577664),       // t2RFEIA
    2986             :     UINT64_C(3920674816),       // t2RFEIAW
    2987             :     UINT64_C(3931045936),       // t2RORri
    2988             :     UINT64_C(4200656896),       // t2RORrr
    2989             :     UINT64_C(3931045936),       // t2RRX
    2990             :     UINT64_C(4055891968),       // t2RSBri
    2991             :     UINT64_C(3955228672),       // t2RSBrr
    2992             :     UINT64_C(3955228672),       // t2RSBrs
    2993             :     UINT64_C(4203802624),       // t2SADD16
    2994             :     UINT64_C(4202754048),       // t2SADD8
    2995             :     UINT64_C(4204851200),       // t2SASX
    2996             :     UINT64_C(4089417584),       // t2SB
    2997             :     UINT64_C(4049600512),       // t2SBCri
    2998             :     UINT64_C(3948937216),       // t2SBCrr
    2999             :     UINT64_C(3948937216),       // t2SBCrs
    3000             :     UINT64_C(4081057792),       // t2SBFX
    3001             :     UINT64_C(4220580080),       // t2SDIV
    3002             :     UINT64_C(4204851328),       // t2SEL
    3003             :     UINT64_C(46608),    // t2SETPAN
    3004             :     UINT64_C(3917474175),       // t2SG
    3005             :     UINT64_C(4203802656),       // t2SHADD16
    3006             :     UINT64_C(4202754080),       // t2SHADD8
    3007             :     UINT64_C(4204851232),       // t2SHASX
    3008             :     UINT64_C(4209045536),       // t2SHSAX
    3009             :     UINT64_C(4207996960),       // t2SHSUB16
    3010             :     UINT64_C(4206948384),       // t2SHSUB8
    3011             :     UINT64_C(4159733760),       // t2SMC
    3012             :     UINT64_C(4212129792),       // t2SMLABB
    3013             :     UINT64_C(4212129808),       // t2SMLABT
    3014             :     UINT64_C(4213178368),       // t2SMLAD
    3015             :     UINT64_C(4213178384),       // t2SMLADX
    3016             :     UINT64_C(4223664128),       // t2SMLAL
    3017             :     UINT64_C(4223664256),       // t2SMLALBB
    3018             :     UINT64_C(4223664272),       // t2SMLALBT
    3019             :     UINT64_C(4223664320),       // t2SMLALD
    3020             :     UINT64_C(4223664336),       // t2SMLALDX
    3021             :     UINT64_C(4223664288),       // t2SMLALTB
    3022             :     UINT64_C(4223664304),       // t2SMLALTT
    3023             :     UINT64_C(4212129824),       // t2SMLATB
    3024             :     UINT64_C(4212129840),       // t2SMLATT
    3025             :     UINT64_C(4214226944),       // t2SMLAWB
    3026             :     UINT64_C(4214226960),       // t2SMLAWT
    3027             :     UINT64_C(4215275520),       // t2SMLSD
    3028             :     UINT64_C(4215275536),       // t2SMLSDX
    3029             :     UINT64_C(4224712896),       // t2SMLSLD
    3030             :     UINT64_C(4224712912),       // t2SMLSLDX
    3031             :     UINT64_C(4216324096),       // t2SMMLA
    3032             :     UINT64_C(4216324112),       // t2SMMLAR
    3033             :     UINT64_C(4217372672),       // t2SMMLS
    3034             :     UINT64_C(4217372688),       // t2SMMLSR
    3035             :     UINT64_C(4216385536),       // t2SMMUL
    3036             :     UINT64_C(4216385552),       // t2SMMULR
    3037             :     UINT64_C(4213239808),       // t2SMUAD
    3038             :     UINT64_C(4213239824),       // t2SMUADX
    3039             :     UINT64_C(4212191232),       // t2SMULBB
    3040             :     UINT64_C(4212191248),       // t2SMULBT
    3041             :     UINT64_C(4219469824),       // t2SMULL
    3042             :     UINT64_C(4212191264),       // t2SMULTB
    3043             :     UINT64_C(4212191280),       // t2SMULTT
    3044             :     UINT64_C(4214288384),       // t2SMULWB
    3045             :     UINT64_C(4214288400),       // t2SMULWT
    3046             :     UINT64_C(4215336960),       // t2SMUSD
    3047             :     UINT64_C(4215336976),       // t2SMUSDX
    3048             :     UINT64_C(3893215232),       // t2SRSDB
    3049             :     UINT64_C(3895312384),       // t2SRSDB_UPD
    3050             :     UINT64_C(3918381056),       // t2SRSIA
    3051             :     UINT64_C(3920478208),       // t2SRSIA_UPD
    3052             :     UINT64_C(4076863488),       // t2SSAT
    3053             :     UINT64_C(4078960640),       // t2SSAT16
    3054             :     UINT64_C(4209045504),       // t2SSAX
    3055             :     UINT64_C(4207996928),       // t2SSUB16
    3056             :     UINT64_C(4206948352),       // t2SSUB8
    3057             :     UINT64_C(4248829952),       // t2STC2L_OFFSET
    3058             :     UINT64_C(4240441344),       // t2STC2L_OPTION
    3059             :     UINT64_C(4234149888),       // t2STC2L_POST
    3060             :     UINT64_C(4250927104),       // t2STC2L_PRE
    3061             :     UINT64_C(4244635648),       // t2STC2_OFFSET
    3062             :     UINT64_C(4236247040),       // t2STC2_OPTION
    3063             :     UINT64_C(4229955584),       // t2STC2_POST
    3064             :     UINT64_C(4246732800),       // t2STC2_PRE
    3065             :     UINT64_C(3980394496),       // t2STCL_OFFSET
    3066             :     UINT64_C(3972005888),       // t2STCL_OPTION
    3067             :     UINT64_C(3965714432),       // t2STCL_POST
    3068             :     UINT64_C(3982491648),       // t2STCL_PRE
    3069             :     UINT64_C(3976200192),       // t2STC_OFFSET
    3070             :     UINT64_C(3967811584),       // t2STC_OPTION
    3071             :     UINT64_C(3961520128),       // t2STC_POST
    3072             :     UINT64_C(3978297344),       // t2STC_PRE
    3073             :     UINT64_C(3904901039),       // t2STL
    3074             :     UINT64_C(3904901007),       // t2STLB
    3075             :     UINT64_C(3904901088),       // t2STLEX
    3076             :     UINT64_C(3904901056),       // t2STLEXB
    3077             :     UINT64_C(3904897264),       // t2STLEXD
    3078             :     UINT64_C(3904901072),       // t2STLEXH
    3079             :     UINT64_C(3904901023),       // t2STLH
    3080             :     UINT64_C(3909091328),       // t2STMDB
    3081             :     UINT64_C(3911188480),       // t2STMDB_UPD
    3082             :     UINT64_C(3900702720),       // t2STMIA
    3083             :     UINT64_C(3902799872),       // t2STMIA_UPD
    3084             :     UINT64_C(4160753152),       // t2STRBT
    3085             :     UINT64_C(4160751872),       // t2STRB_POST
    3086             :     UINT64_C(4160752896),       // t2STRB_PRE
    3087             :     UINT64_C(4169138176),       // t2STRBi12
    3088             :     UINT64_C(4160752640),       // t2STRBi8
    3089             :     UINT64_C(4160749568),       // t2STRBs
    3090             :     UINT64_C(3898605568),       // t2STRD_POST
    3091             :     UINT64_C(3915382784),       // t2STRD_PRE
    3092             :     UINT64_C(3913285632),       // t2STRDi8
    3093             :     UINT64_C(3896508416),       // t2STREX
    3094             :     UINT64_C(3904900928),       // t2STREXB
    3095             :     UINT64_C(3904897136),       // t2STREXD
    3096             :     UINT64_C(3904900944),       // t2STREXH
    3097             :     UINT64_C(4162850304),       // t2STRHT
    3098             :     UINT64_C(4162849024),       // t2STRH_POST
    3099             :     UINT64_C(4162850048),       // t2STRH_PRE
    3100             :     UINT64_C(4171235328),       // t2STRHi12
    3101             :     UINT64_C(4162849792),       // t2STRHi8
    3102             :     UINT64_C(4162846720),       // t2STRHs
    3103             :     UINT64_C(4164947456),       // t2STRT
    3104             :     UINT64_C(4164946176),       // t2STR_POST
    3105             :     UINT64_C(4164947200),       // t2STR_PRE
    3106             :     UINT64_C(4173332480),       // t2STRi12
    3107             :     UINT64_C(4164946944),       // t2STRi8
    3108             :     UINT64_C(4164943872),       // t2STRs
    3109             :     UINT64_C(4091449088),       // t2SUBS_PC_LR
    3110             :     UINT64_C(4053794816),       // t2SUBri
    3111             :     UINT64_C(4070572032),       // t2SUBri12
    3112             :     UINT64_C(3953131520),       // t2SUBrr
    3113             :     UINT64_C(3953131520),       // t2SUBrs
    3114             :     UINT64_C(4198559872),       // t2SXTAB
    3115             :     UINT64_C(4196462720),       // t2SXTAB16
    3116             :     UINT64_C(4194365568),       // t2SXTAH
    3117             :     UINT64_C(4199542912),       // t2SXTB
    3118             :     UINT64_C(4197445760),       // t2SXTB16
    3119             :     UINT64_C(4195348608),       // t2SXTH
    3120             :     UINT64_C(3906007040),       // t2TBB
    3121             :     UINT64_C(3906007056),       // t2TBH
    3122             :     UINT64_C(4035972864),       // t2TEQri
    3123             :     UINT64_C(3935309568),       // t2TEQrr
    3124             :     UINT64_C(3935309568),       // t2TEQrs
    3125             :     UINT64_C(4088365074),       // t2TSB
    3126             :     UINT64_C(4027584256),       // t2TSTri
    3127             :     UINT64_C(3926920960),       // t2TSTrr
    3128             :     UINT64_C(3926920960),       // t2TSTrs
    3129             :     UINT64_C(3896569856),       // t2TT
    3130             :     UINT64_C(3896569984),       // t2TTA
    3131             :     UINT64_C(3896570048),       // t2TTAT
    3132             :     UINT64_C(3896569920),       // t2TTT
    3133             :     UINT64_C(4203802688),       // t2UADD16
    3134             :     UINT64_C(4202754112),       // t2UADD8
    3135             :     UINT64_C(4204851264),       // t2UASX
    3136             :     UINT64_C(4089446400),       // t2UBFX
    3137             :     UINT64_C(4159741952),       // t2UDF
    3138             :     UINT64_C(4222677232),       // t2UDIV
    3139             :     UINT64_C(4203802720),       // t2UHADD16
    3140             :     UINT64_C(4202754144),       // t2UHADD8
    3141             :     UINT64_C(4204851296),       // t2UHASX
    3142             :     UINT64_C(4209045600),       // t2UHSAX
    3143             :     UINT64_C(4207997024),       // t2UHSUB16
    3144             :     UINT64_C(4206948448),       // t2UHSUB8
    3145             :     UINT64_C(4225761376),       // t2UMAAL
    3146             :     UINT64_C(4225761280),       // t2UMLAL
    3147             :     UINT64_C(4221566976),       // t2UMULL
    3148             :     UINT64_C(4203802704),       // t2UQADD16
    3149             :     UINT64_C(4202754128),       // t2UQADD8
    3150             :     UINT64_C(4204851280),       // t2UQASX
    3151             :     UINT64_C(4209045584),       // t2UQSAX
    3152             :     UINT64_C(4207997008),       // t2UQSUB16
    3153             :     UINT64_C(4206948432),       // t2UQSUB8
    3154             :     UINT64_C(4218482688),       // t2USAD8
    3155             :     UINT64_C(4218421248),       // t2USADA8
    3156             :     UINT64_C(4085252096),       // t2USAT
    3157             :     UINT64_C(4087349248),       // t2USAT16
    3158             :     UINT64_C(4209045568),       // t2USAX
    3159             :     UINT64_C(4207996992),       // t2USUB16
    3160             :     UINT64_C(4206948416),       // t2USUB8
    3161             :     UINT64_C(4199608448),       // t2UXTAB
    3162             :     UINT64_C(4197511296),       // t2UXTAB16
    3163             :     UINT64_C(4195414144),       // t2UXTAH
    3164             :     UINT64_C(4200591488),       // t2UXTB
    3165             :     UINT64_C(4198494336),       // t2UXTB16
    3166             :     UINT64_C(4196397184),       // t2UXTH
    3167             :     UINT64_C(16704),    // tADC
    3168             :     UINT64_C(17408),    // tADDhirr
    3169             :     UINT64_C(7168),     // tADDi3
    3170             :     UINT64_C(12288),    // tADDi8
    3171             :     UINT64_C(17512),    // tADDrSP
    3172             :     UINT64_C(43008),    // tADDrSPi
    3173             :     UINT64_C(6144),     // tADDrr
    3174             :     UINT64_C(45056),    // tADDspi
    3175             :     UINT64_C(17541),    // tADDspr
    3176             :     UINT64_C(40960),    // tADR
    3177             :     UINT64_C(16384),    // tAND
    3178             :     UINT64_C(4096),     // tASRri
    3179             :     UINT64_C(16640),    // tASRrr
    3180             :     UINT64_C(57344),    // tB
    3181             :     UINT64_C(17280),    // tBIC
    3182             :     UINT64_C(48640),    // tBKPT
    3183             :     UINT64_C(4026585088),       // tBL
    3184             :     UINT64_C(18308),    // tBLXNSr
    3185             :     UINT64_C(4026580992),       // tBLXi
    3186             :     UINT64_C(18304),    // tBLXr
    3187             :     UINT64_C(18176),    // tBX
    3188             :     UINT64_C(18180),    // tBXNS
    3189             :     UINT64_C(53248),    // tBcc
    3190             :     UINT64_C(47360),    // tCBNZ
    3191             :     UINT64_C(45312),    // tCBZ
    3192             :     UINT64_C(17088),    // tCMNz
    3193             :     UINT64_C(17664),    // tCMPhir
    3194             :     UINT64_C(10240),    // tCMPi8
    3195             :     UINT64_C(17024),    // tCMPr
    3196             :     UINT64_C(46688),    // tCPS
    3197             :     UINT64_C(16448),    // tEOR
    3198             :     UINT64_C(48896),    // tHINT
    3199             :     UINT64_C(47744),    // tHLT
    3200             :     UINT64_C(0),        // tInt_WIN_eh_sjlj_longjmp
    3201             :     UINT64_C(0),        // tInt_eh_sjlj_longjmp
    3202             :     UINT64_C(0),        // tInt_eh_sjlj_setjmp
    3203             :     UINT64_C(51200),    // tLDMIA
    3204             :     UINT64_C(30720),    // tLDRBi
    3205             :     UINT64_C(23552),    // tLDRBr
    3206             :     UINT64_C(34816),    // tLDRHi
    3207             :     UINT64_C(23040),    // tLDRHr
    3208             :     UINT64_C(22016),    // tLDRSB
    3209             :     UINT64_C(24064),    // tLDRSH
    3210             :     UINT64_C(26624),    // tLDRi
    3211             :     UINT64_C(18432),    // tLDRpci
    3212             :     UINT64_C(22528),    // tLDRr
    3213             :     UINT64_C(38912),    // tLDRspi
    3214             :     UINT64_C(0),        // tLSLri
    3215             :     UINT64_C(16512),    // tLSLrr
    3216             :     UINT64_C(2048),     // tLSRri
    3217             :     UINT64_C(16576),    // tLSRrr
    3218             :     UINT64_C(0),        // tMOVSr
    3219             :     UINT64_C(8192),     // tMOVi8
    3220             :     UINT64_C(17920),    // tMOVr
    3221             :     UINT64_C(17216),    // tMUL
    3222             :     UINT64_C(17344),    // tMVN
    3223             :     UINT64_C(17152),    // tORR
    3224             :     UINT64_C(17528),    // tPICADD
    3225             :     UINT64_C(48128),    // tPOP
    3226             :     UINT64_C(46080),    // tPUSH
    3227             :     UINT64_C(47616),    // tREV
    3228             :     UINT64_C(47680),    // tREV16
    3229             :     UINT64_C(47808),    // tREVSH
    3230             :     UINT64_C(16832),    // tROR
    3231             :     UINT64_C(16960),    // tRSB
    3232             :     UINT64_C(16768),    // tSBC
    3233             :     UINT64_C(46672),    // tSETEND
    3234             :     UINT64_C(49152),    // tSTMIA_UPD
    3235             :     UINT64_C(28672),    // tSTRBi
    3236             :     UINT64_C(21504),    // tSTRBr
    3237             :     UINT64_C(32768),    // tSTRHi
    3238             :     UINT64_C(20992),    // tSTRHr
    3239             :     UINT64_C(24576),    // tSTRi
    3240             :     UINT64_C(20480),    // tSTRr
    3241             :     UINT64_C(36864),    // tSTRspi
    3242             :     UINT64_C(7680),     // tSUBi3
    3243             :     UINT64_C(14336),    // tSUBi8
    3244             :     UINT64_C(6656),     // tSUBrr
    3245             :     UINT64_C(45184),    // tSUBspi
    3246             :     UINT64_C(57088),    // tSVC
    3247             :     UINT64_C(45632),    // tSXTB
    3248             :     UINT64_C(45568),    // tSXTH
    3249             :     UINT64_C(57086),    // tTRAP
    3250             :     UINT64_C(16896),    // tTST
    3251             :     UINT64_C(56832),    // tUDF
    3252             :     UINT64_C(45760),    // tUXTB
    3253             :     UINT64_C(45696),    // tUXTH
    3254             :     UINT64_C(57081),    // t__brkdiv0
    3255             :     UINT64_C(0)
    3256             :   };
    3257       41931 :   const unsigned opcode = MI.getOpcode();
    3258       41931 :   uint64_t Value = InstBits[opcode];
    3259             :   uint64_t op = 0;
    3260             :   (void)op;  // suppress warning
    3261       41931 :   switch (opcode) {
    3262             :     case ARM::CLREX:
    3263             :     case ARM::SB:
    3264             :     case ARM::TRAP:
    3265             :     case ARM::TRAPNaCl:
    3266             :     case ARM::TSB:
    3267             :     case ARM::VLD1LNq16Pseudo:
    3268             :     case ARM::VLD1LNq16Pseudo_UPD:
    3269             :     case ARM::VLD1LNq32Pseudo:
    3270             :     case ARM::VLD1LNq32Pseudo_UPD:
    3271             :     case ARM::VLD1LNq8Pseudo:
    3272             :     case ARM::VLD1LNq8Pseudo_UPD:
    3273             :     case ARM::VLD1d16QPseudo:
    3274             :     case ARM::VLD1d16TPseudo:
    3275             :     case ARM::VLD1d32QPseudo:
    3276             :     case ARM::VLD1d32TPseudo:
    3277             :     case ARM::VLD1d64QPseudo:
    3278             :     case ARM::VLD1d64QPseudoWB_fixed:
    3279             :     case ARM::VLD1d64QPseudoWB_register:
    3280             :     case ARM::VLD1d64TPseudo:
    3281             :     case ARM::VLD1d64TPseudoWB_fixed:
    3282             :     case ARM::VLD1d64TPseudoWB_register:
    3283             :     case ARM::VLD1d8QPseudo:
    3284             :     case ARM::VLD1d8TPseudo:
    3285             :     case ARM::VLD1q16HighQPseudo:
    3286             :     case ARM::VLD1q16HighTPseudo:
    3287             :     case ARM::VLD1q16LowQPseudo_UPD:
    3288             :     case ARM::VLD1q16LowTPseudo_UPD:
    3289             :     case ARM::VLD1q32HighQPseudo:
    3290             :     case ARM::VLD1q32HighTPseudo:
    3291             :     case ARM::VLD1q32LowQPseudo_UPD:
    3292             :     case ARM::VLD1q32LowTPseudo_UPD:
    3293             :     case ARM::VLD1q64HighQPseudo:
    3294             :     case ARM::VLD1q64HighTPseudo:
    3295             :     case ARM::VLD1q64LowQPseudo_UPD:
    3296             :     case ARM::VLD1q64LowTPseudo_UPD:
    3297             :     case ARM::VLD1q8HighQPseudo:
    3298             :     case ARM::VLD1q8HighTPseudo:
    3299             :     case ARM::VLD1q8LowQPseudo_UPD:
    3300             :     case ARM::VLD1q8LowTPseudo_UPD:
    3301             :     case ARM::VLD2DUPq16EvenPseudo:
    3302             :     case ARM::VLD2DUPq16OddPseudo:
    3303             :     case ARM::VLD2DUPq32EvenPseudo:
    3304             :     case ARM::VLD2DUPq32OddPseudo:
    3305             :     case ARM::VLD2DUPq8EvenPseudo:
    3306             :     case ARM::VLD2DUPq8OddPseudo:
    3307             :     case ARM::VLD2LNd16Pseudo:
    3308             :     case ARM::VLD2LNd16Pseudo_UPD:
    3309             :     case ARM::VLD2LNd32Pseudo:
    3310             :     case ARM::VLD2LNd32Pseudo_UPD:
    3311             :     case ARM::VLD2LNd8Pseudo:
    3312             :     case ARM::VLD2LNd8Pseudo_UPD:
    3313             :     case ARM::VLD2LNq16Pseudo:
    3314             :     case ARM::VLD2LNq16Pseudo_UPD:
    3315             :     case ARM::VLD2LNq32Pseudo:
    3316             :     case ARM::VLD2LNq32Pseudo_UPD:
    3317             :     case ARM::VLD2q16Pseudo:
    3318             :     case ARM::VLD2q16PseudoWB_fixed:
    3319             :     case ARM::VLD2q16PseudoWB_register:
    3320             :     case ARM::VLD2q32Pseudo:
    3321             :     case ARM::VLD2q32PseudoWB_fixed:
    3322             :     case ARM::VLD2q32PseudoWB_register:
    3323             :     case ARM::VLD2q8Pseudo:
    3324             :     case ARM::VLD2q8PseudoWB_fixed:
    3325             :     case ARM::VLD2q8PseudoWB_register:
    3326             :     case ARM::VLD3DUPd16Pseudo:
    3327             :     case ARM::VLD3DUPd16Pseudo_UPD:
    3328             :     case ARM::VLD3DUPd32Pseudo:
    3329             :     case ARM::VLD3DUPd32Pseudo_UPD:
    3330             :     case ARM::VLD3DUPd8Pseudo:
    3331             :     case ARM::VLD3DUPd8Pseudo_UPD:
    3332             :     case ARM::VLD3DUPq16EvenPseudo:
    3333             :     case ARM::VLD3DUPq16OddPseudo:
    3334             :     case ARM::VLD3DUPq32EvenPseudo:
    3335             :     case ARM::VLD3DUPq32OddPseudo:
    3336             :     case ARM::VLD3DUPq8EvenPseudo:
    3337             :     case ARM::VLD3DUPq8OddPseudo:
    3338             :     case ARM::VLD3LNd16Pseudo:
    3339             :     case ARM::VLD3LNd16Pseudo_UPD:
    3340             :     case ARM::VLD3LNd32Pseudo:
    3341             :     case ARM::VLD3LNd32Pseudo_UPD:
    3342             :     case ARM::VLD3LNd8Pseudo:
    3343             :     case ARM::VLD3LNd8Pseudo_UPD:
    3344             :     case ARM::VLD3LNq16Pseudo:
    3345             :     case ARM::VLD3LNq16Pseudo_UPD:
    3346             :     case ARM::VLD3LNq32Pseudo:
    3347             :     case ARM::VLD3LNq32Pseudo_UPD:
    3348             :     case ARM::VLD3d16Pseudo:
    3349             :     case ARM::VLD3d16Pseudo_UPD:
    3350             :     case ARM::VLD3d32Pseudo:
    3351             :     case ARM::VLD3d32Pseudo_UPD:
    3352             :     case ARM::VLD3d8Pseudo:
    3353             :     case ARM::VLD3d8Pseudo_UPD:
    3354             :     case ARM::VLD3q16Pseudo_UPD:
    3355             :     case ARM::VLD3q16oddPseudo:
    3356             :     case ARM::VLD3q16oddPseudo_UPD:
    3357             :     case ARM::VLD3q32Pseudo_UPD:
    3358             :     case ARM::VLD3q32oddPseudo:
    3359             :     case ARM::VLD3q32oddPseudo_UPD:
    3360             :     case ARM::VLD3q8Pseudo_UPD:
    3361             :     case ARM::VLD3q8oddPseudo:
    3362             :     case ARM::VLD3q8oddPseudo_UPD:
    3363             :     case ARM::VLD4DUPd16Pseudo:
    3364             :     case ARM::VLD4DUPd16Pseudo_UPD:
    3365             :     case ARM::VLD4DUPd32Pseudo:
    3366             :     case ARM::VLD4DUPd32Pseudo_UPD:
    3367             :     case ARM::VLD4DUPd8Pseudo:
    3368             :     case ARM::VLD4DUPd8Pseudo_UPD:
    3369             :     case ARM::VLD4DUPq16EvenPseudo:
    3370             :     case ARM::VLD4DUPq16OddPseudo:
    3371             :     case ARM::VLD4DUPq32EvenPseudo:
    3372             :     case ARM::VLD4DUPq32OddPseudo:
    3373             :     case ARM::VLD4DUPq8EvenPseudo:
    3374             :     case ARM::VLD4DUPq8OddPseudo:
    3375             :     case ARM::VLD4LNd16Pseudo:
    3376             :     case ARM::VLD4LNd16Pseudo_UPD:
    3377             :     case ARM::VLD4LNd32Pseudo:
    3378             :     case ARM::VLD4LNd32Pseudo_UPD:
    3379             :     case ARM::VLD4LNd8Pseudo:
    3380             :     case ARM::VLD4LNd8Pseudo_UPD:
    3381             :     case ARM::VLD4LNq16Pseudo:
    3382             :     case ARM::VLD4LNq16Pseudo_UPD:
    3383             :     case ARM::VLD4LNq32Pseudo:
    3384             :     case ARM::VLD4LNq32Pseudo_UPD:
    3385             :     case ARM::VLD4d16Pseudo:
    3386             :     case ARM::VLD4d16Pseudo_UPD:
    3387             :     case ARM::VLD4d32Pseudo:
    3388             :     case ARM::VLD4d32Pseudo_UPD:
    3389             :     case ARM::VLD4d8Pseudo:
    3390             :     case ARM::VLD4d8Pseudo_UPD:
    3391             :     case ARM::VLD4q16Pseudo_UPD:
    3392             :     case ARM::VLD4q16oddPseudo:
    3393             :     case ARM::VLD4q16oddPseudo_UPD:
    3394             :     case ARM::VLD4q32Pseudo_UPD:
    3395             :     case ARM::VLD4q32oddPseudo:
    3396             :     case ARM::VLD4q32oddPseudo_UPD:
    3397             :     case ARM::VLD4q8Pseudo_UPD:
    3398             :     case ARM::VLD4q8oddPseudo:
    3399             :     case ARM::VLD4q8oddPseudo_UPD:
    3400             :     case ARM::VLDMQIA:
    3401             :     case ARM::VST1LNq16Pseudo:
    3402             :     case ARM::VST1LNq16Pseudo_UPD:
    3403             :     case ARM::VST1LNq32Pseudo:
    3404             :     case ARM::VST1LNq32Pseudo_UPD:
    3405             :     case ARM::VST1LNq8Pseudo:
    3406             :     case ARM::VST1LNq8Pseudo_UPD:
    3407             :     case ARM::VST1d16QPseudo:
    3408             :     case ARM::VST1d16TPseudo:
    3409             :     case ARM::VST1d32QPseudo:
    3410             :     case ARM::VST1d32TPseudo:
    3411             :     case ARM::VST1d64QPseudo:
    3412             :     case ARM::VST1d64QPseudoWB_fixed:
    3413             :     case ARM::VST1d64QPseudoWB_register:
    3414             :     case ARM::VST1d64TPseudo:
    3415             :     case ARM::VST1d64TPseudoWB_fixed:
    3416             :     case ARM::VST1d64TPseudoWB_register:
    3417             :     case ARM::VST1d8QPseudo:
    3418             :     case ARM::VST1d8TPseudo:
    3419             :     case ARM::VST1q16HighQPseudo:
    3420             :     case ARM::VST1q16HighTPseudo:
    3421             :     case ARM::VST1q16LowQPseudo_UPD:
    3422             :     case ARM::VST1q16LowTPseudo_UPD:
    3423             :     case ARM::VST1q32HighQPseudo:
    3424             :     case ARM::VST1q32HighTPseudo:
    3425             :     case ARM::VST1q32LowQPseudo_UPD:
    3426             :     case ARM::VST1q32LowTPseudo_UPD:
    3427             :     case ARM::VST1q64HighQPseudo:
    3428             :     case ARM::VST1q64HighTPseudo:
    3429             :     case ARM::VST1q64LowQPseudo_UPD:
    3430             :     case ARM::VST1q64LowTPseudo_UPD:
    3431             :     case ARM::VST1q8HighQPseudo:
    3432             :     case ARM::VST1q8HighTPseudo:
    3433             :     case ARM::VST1q8LowQPseudo_UPD:
    3434             :     case ARM::VST1q8LowTPseudo_UPD:
    3435             :     case ARM::VST2LNd16Pseudo:
    3436             :     case ARM::VST2LNd16Pseudo_UPD:
    3437             :     case ARM::VST2LNd32Pseudo:
    3438             :     case ARM::VST2LNd32Pseudo_UPD:
    3439             :     case ARM::VST2LNd8Pseudo:
    3440             :     case ARM::VST2LNd8Pseudo_UPD:
    3441             :     case ARM::VST2LNq16Pseudo:
    3442             :     case ARM::VST2LNq16Pseudo_UPD:
    3443             :     case ARM::VST2LNq32Pseudo:
    3444             :     case ARM::VST2LNq32Pseudo_UPD:
    3445             :     case ARM::VST2q16Pseudo:
    3446             :     case ARM::VST2q16PseudoWB_fixed:
    3447             :     case ARM::VST2q16PseudoWB_register:
    3448             :     case ARM::VST2q32Pseudo:
    3449             :     case ARM::VST2q32PseudoWB_fixed:
    3450             :     case ARM::VST2q32PseudoWB_register:
    3451             :     case ARM::VST2q8Pseudo:
    3452             :     case ARM::VST2q8PseudoWB_fixed:
    3453             :     case ARM::VST2q8PseudoWB_register:
    3454             :     case ARM::VST3LNd16Pseudo:
    3455             :     case ARM::VST3LNd16Pseudo_UPD:
    3456             :     case ARM::VST3LNd32Pseudo:
    3457             :     case ARM::VST3LNd32Pseudo_UPD:
    3458             :     case ARM::VST3LNd8Pseudo:
    3459             :     case ARM::VST3LNd8Pseudo_UPD:
    3460             :     case ARM::VST3LNq16Pseudo:
    3461             :     case ARM::VST3LNq16Pseudo_UPD:
    3462             :     case ARM::VST3LNq32Pseudo:
    3463             :     case ARM::VST3LNq32Pseudo_UPD:
    3464             :     case ARM::VST3d16Pseudo:
    3465             :     case ARM::VST3d16Pseudo_UPD:
    3466             :     case ARM::VST3d32Pseudo:
    3467             :     case ARM::VST3d32Pseudo_UPD:
    3468             :     case ARM::VST3d8Pseudo:
    3469             :     case ARM::VST3d8Pseudo_UPD:
    3470             :     case ARM::VST3q16Pseudo_UPD:
    3471             :     case ARM::VST3q16oddPseudo:
    3472             :     case ARM::VST3q16oddPseudo_UPD:
    3473             :     case ARM::VST3q32Pseudo_UPD:
    3474             :     case ARM::VST3q32oddPseudo:
    3475             :     case ARM::VST3q32oddPseudo_UPD:
    3476             :     case ARM::VST3q8Pseudo_UPD:
    3477             :     case ARM::VST3q8oddPseudo:
    3478             :     case ARM::VST3q8oddPseudo_UPD:
    3479             :     case ARM::VST4LNd16Pseudo:
    3480             :     case ARM::VST4LNd16Pseudo_UPD:
    3481             :     case ARM::VST4LNd32Pseudo:
    3482             :     case ARM::VST4LNd32Pseudo_UPD:
    3483             :     case ARM::VST4LNd8Pseudo:
    3484             :     case ARM::VST4LNd8Pseudo_UPD:
    3485             :     case ARM::VST4LNq16Pseudo:
    3486             :     case ARM::VST4LNq16Pseudo_UPD:
    3487             :     case ARM::VST4LNq32Pseudo:
    3488             :     case ARM::VST4LNq32Pseudo_UPD:
    3489             :     case ARM::VST4d16Pseudo:
    3490             :     case ARM::VST4d16Pseudo_UPD:
    3491             :     case ARM::VST4d32Pseudo:
    3492             :     case ARM::VST4d32Pseudo_UPD:
    3493             :     case ARM::VST4d8Pseudo:
    3494             :     case ARM::VST4d8Pseudo_UPD:
    3495             :     case ARM::VST4q16Pseudo_UPD:
    3496             :     case ARM::VST4q16oddPseudo:
    3497             :     case ARM::VST4q16oddPseudo_UPD:
    3498             :     case ARM::VST4q32Pseudo_UPD:
    3499             :     case ARM::VST4q32oddPseudo:
    3500             :     case ARM::VST4q32oddPseudo_UPD:
    3501             :     case ARM::VST4q8Pseudo_UPD:
    3502             :     case ARM::VST4q8oddPseudo:
    3503             :     case ARM::VST4q8oddPseudo_UPD:
    3504             :     case ARM::VSTMQIA:
    3505             :     case ARM::VTBL3Pseudo:
    3506             :     case ARM::VTBL4Pseudo:
    3507             :     case ARM::VTBX3Pseudo:
    3508             :     case ARM::VTBX4Pseudo:
    3509             :     case ARM::t2CLREX:
    3510             :     case ARM::t2DCPS1:
    3511             :     case ARM::t2DCPS2:
    3512             :     case ARM::t2DCPS3:
    3513             :     case ARM::t2Int_eh_sjlj_setjmp:
    3514             :     case ARM::t2Int_eh_sjlj_setjmp_nofp:
    3515             :     case ARM::t2SB:
    3516             :     case ARM::t2SG:
    3517             :     case ARM::t2TSB:
    3518             :     case ARM::tInt_WIN_eh_sjlj_longjmp:
    3519             :     case ARM::tInt_eh_sjlj_longjmp:
    3520             :     case ARM::tInt_eh_sjlj_setjmp:
    3521             :     case ARM::tTRAP:
    3522             :     case ARM::t__brkdiv0: {
    3523             :       break;
    3524             :     }
    3525             :     case ARM::VRINTAD:
    3526             :     case ARM::VRINTMD:
    3527             :     case ARM::VRINTND:
    3528             :     case ARM::VRINTPD: {
    3529             :       // op: Dd
    3530          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3531          16 :       Value |= (op & UINT64_C(16)) << 18;
    3532          16 :       Value |= (op & UINT64_C(15)) << 12;
    3533             :       // op: Dm
    3534          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3535          16 :       Value |= (op & UINT64_C(16)) << 1;
    3536          16 :       Value |= op & UINT64_C(15);
    3537          16 :       break;
    3538             :     }
    3539             :     case ARM::VMAXNMD:
    3540             :     case ARM::VMINNMD:
    3541             :     case ARM::VSELEQD:
    3542             :     case ARM::VSELGED:
    3543             :     case ARM::VSELGTD:
    3544             :     case ARM::VSELVSD: {
    3545             :       // op: Dd
    3546          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3547          24 :       Value |= (op & UINT64_C(16)) << 18;
    3548          24 :       Value |= (op & UINT64_C(15)) << 12;
    3549             :       // op: Dn
    3550          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3551          24 :       Value |= (op & UINT64_C(15)) << 16;
    3552          24 :       Value |= (op & UINT64_C(16)) << 3;
    3553             :       // op: Dm
    3554          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3555          24 :       Value |= (op & UINT64_C(16)) << 1;
    3556          24 :       Value |= op & UINT64_C(15);
    3557          24 :       break;
    3558             :     }
    3559             :     case ARM::CRC32B:
    3560             :     case ARM::CRC32CB:
    3561             :     case ARM::CRC32CH:
    3562             :     case ARM::CRC32CW:
    3563             :     case ARM::CRC32H:
    3564             :     case ARM::CRC32W: {
    3565             :       // op: Rd
    3566           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3567           6 :       Value |= (op & UINT64_C(15)) << 12;
    3568             :       // op: Rn
    3569           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3570           6 :       Value |= (op & UINT64_C(15)) << 16;
    3571             :       // op: Rm
    3572           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3573           6 :       Value |= op & UINT64_C(15);
    3574           6 :       break;
    3575             :     }
    3576             :     case ARM::t2MRS_AR:
    3577             :     case ARM::t2MRSsys_AR: {
    3578             :       // op: Rd
    3579           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3580           7 :       Value |= (op & UINT64_C(15)) << 8;
    3581           7 :       break;
    3582             :     }
    3583             :     case ARM::t2CLZ:
    3584             :     case ARM::t2RBIT:
    3585             :     case ARM::t2REV:
    3586             :     case ARM::t2REV16:
    3587             :     case ARM::t2REVSH: {
    3588             :       // op: Rd
    3589          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3590          31 :       Value |= (op & UINT64_C(15)) << 8;
    3591             :       // op: Rm
    3592          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3593          31 :       Value |= (op & UINT64_C(15)) << 16;
    3594          31 :       Value |= op & UINT64_C(15);
    3595          31 :       break;
    3596             :     }
    3597             :     case ARM::t2MOVsra_flag:
    3598             :     case ARM::t2MOVsrl_flag: {
    3599             :       // op: Rd
    3600           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3601           0 :       Value |= (op & UINT64_C(15)) << 8;
    3602             :       // op: Rm
    3603           0 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3604           0 :       Value |= op & UINT64_C(15);
    3605           0 :       break;
    3606             :     }
    3607             :     case ARM::t2SXTB:
    3608             :     case ARM::t2SXTB16:
    3609             :     case ARM::t2SXTH:
    3610             :     case ARM::t2UXTB:
    3611             :     case ARM::t2UXTB16:
    3612             :     case ARM::t2UXTH: {
    3613             :       // op: Rd
    3614          88 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3615          88 :       Value |= (op & UINT64_C(15)) << 8;
    3616             :       // op: Rm
    3617          88 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3618          88 :       Value |= op & UINT64_C(15);
    3619             :       // op: rot
    3620          88 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3621          88 :       Value |= (op & UINT64_C(3)) << 4;
    3622          88 :       break;
    3623             :     }
    3624             :     case ARM::t2CRC32B:
    3625             :     case ARM::t2CRC32CB:
    3626             :     case ARM::t2CRC32CH:
    3627             :     case ARM::t2CRC32CW:
    3628             :     case ARM::t2CRC32H:
    3629             :     case ARM::t2CRC32W:
    3630             :     case ARM::t2MUL:
    3631             :     case ARM::t2QADD16:
    3632             :     case ARM::t2QADD8:
    3633             :     case ARM::t2QASX:
    3634             :     case ARM::t2QSAX:
    3635             :     case ARM::t2QSUB16:
    3636             :     case ARM::t2QSUB8:
    3637             :     case ARM::t2SADD16:
    3638             :     case ARM::t2SADD8:
    3639             :     case ARM::t2SASX:
    3640             :     case ARM::t2SDIV:
    3641             :     case ARM::t2SEL:
    3642             :     case ARM::t2SHADD16:
    3643             :     case ARM::t2SHADD8:
    3644             :     case ARM::t2SHASX:
    3645             :     case ARM::t2SHSAX:
    3646             :     case ARM::t2SHSUB16:
    3647             :     case ARM::t2SHSUB8:
    3648             :     case ARM::t2SMMUL:
    3649             :     case ARM::t2SMMULR:
    3650             :     case ARM::t2SMUAD:
    3651             :     case ARM::t2SMUADX:
    3652             :     case ARM::t2SMULBB:
    3653             :     case ARM::t2SMULBT:
    3654             :     case ARM::t2SMULTB:
    3655             :     case ARM::t2SMULTT:
    3656             :     case ARM::t2SMULWB:
    3657             :     case ARM::t2SMULWT:
    3658             :     case ARM::t2SMUSD:
    3659             :     case ARM::t2SMUSDX:
    3660             :     case ARM::t2SSAX:
    3661             :     case ARM::t2SSUB16:
    3662             :     case ARM::t2SSUB8:
    3663             :     case ARM::t2UADD16:
    3664             :     case ARM::t2UADD8:
    3665             :     case ARM::t2UASX:
    3666             :     case ARM::t2UDIV:
    3667             :     case ARM::t2UHADD16:
    3668             :     case ARM::t2UHADD8:
    3669             :     case ARM::t2UHASX:
    3670             :     case ARM::t2UHSAX:
    3671             :     case ARM::t2UHSUB16:
    3672             :     case ARM::t2UHSUB8:
    3673             :     case ARM::t2UQADD16:
    3674             :     case ARM::t2UQADD8:
    3675             :     case ARM::t2UQASX:
    3676             :     case ARM::t2UQSAX:
    3677             :     case ARM::t2UQSUB16:
    3678             :     case ARM::t2UQSUB8:
    3679             :     case ARM::t2USAD8:
    3680             :     case ARM::t2USAX:
    3681             :     case ARM::t2USUB16:
    3682             :     case ARM::t2USUB8: {
    3683             :       // op: Rd
    3684         276 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3685         276 :       Value |= (op & UINT64_C(15)) << 8;
    3686             :       // op: Rn
    3687         276 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3688         276 :       Value |= (op & UINT64_C(15)) << 16;
    3689             :       // op: Rm
    3690         276 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3691         276 :       Value |= op & UINT64_C(15);
    3692         276 :       break;
    3693             :     }
    3694             :     case ARM::t2MLA:
    3695             :     case ARM::t2MLS:
    3696             :     case ARM::t2SMLABB:
    3697             :     case ARM::t2SMLABT:
    3698             :     case ARM::t2SMLAD:
    3699             :     case ARM::t2SMLADX:
    3700             :     case ARM::t2SMLATB:
    3701             :     case ARM::t2SMLATT:
    3702             :     case ARM::t2SMLAWB:
    3703             :     case ARM::t2SMLAWT:
    3704             :     case ARM::t2SMLSD:
    3705             :     case ARM::t2SMLSDX:
    3706             :     case ARM::t2SMMLA:
    3707             :     case ARM::t2SMMLAR:
    3708             :     case ARM::t2SMMLS:
    3709             :     case ARM::t2SMMLSR:
    3710             :     case ARM::t2USADA8: {
    3711             :       // op: Rd
    3712          78 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3713          78 :       Value |= (op & UINT64_C(15)) << 8;
    3714             :       // op: Rn
    3715          78 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3716          78 :       Value |= (op & UINT64_C(15)) << 16;
    3717             :       // op: Rm
    3718          78 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3719          78 :       Value |= op & UINT64_C(15);
    3720             :       // op: Ra
    3721          78 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3722          78 :       Value |= (op & UINT64_C(15)) << 12;
    3723          78 :       break;
    3724             :     }
    3725             :     case ARM::t2SXTAB:
    3726             :     case ARM::t2SXTAB16:
    3727             :     case ARM::t2SXTAH:
    3728             :     case ARM::t2UXTAB:
    3729             :     case ARM::t2UXTAB16:
    3730             :     case ARM::t2UXTAH: {
    3731             :       // op: Rd
    3732          67 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3733          67 :       Value |= (op & UINT64_C(15)) << 8;
    3734             :       // op: Rn
    3735          67 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3736          67 :       Value |= (op & UINT64_C(15)) << 16;
    3737             :       // op: Rm
    3738          67 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3739          67 :       Value |= op & UINT64_C(15);
    3740             :       // op: rot
    3741          67 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3742          67 :       Value |= (op & UINT64_C(3)) << 4;
    3743          67 :       break;
    3744             :     }
    3745             :     case ARM::t2PKHBT:
    3746             :     case ARM::t2PKHTB: {
    3747             :       // op: Rd
    3748          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3749          18 :       Value |= (op & UINT64_C(15)) << 8;
    3750             :       // op: Rn
    3751          18 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3752          18 :       Value |= (op & UINT64_C(15)) << 16;
    3753             :       // op: Rm
    3754          18 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3755          18 :       Value |= op & UINT64_C(15);
    3756             :       // op: sh
    3757          18 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3758          18 :       Value |= (op & UINT64_C(28)) << 10;
    3759          18 :       Value |= (op & UINT64_C(3)) << 6;
    3760          18 :       break;
    3761             :     }
    3762             :     case ARM::t2ADDri12:
    3763             :     case ARM::t2SUBri12: {
    3764             :       // op: Rd
    3765         383 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3766         383 :       Value |= (op & UINT64_C(15)) << 8;
    3767             :       // op: Rn
    3768         383 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3769         383 :       Value |= (op & UINT64_C(15)) << 16;
    3770             :       // op: imm
    3771         383 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3772         383 :       Value |= (op & UINT64_C(2048)) << 15;
    3773         383 :       Value |= (op & UINT64_C(1792)) << 4;
    3774         383 :       Value |= op & UINT64_C(255);
    3775         383 :       break;
    3776             :     }
    3777             :     case ARM::t2QADD:
    3778             :     case ARM::t2QDADD:
    3779             :     case ARM::t2QDSUB:
    3780             :     case ARM::t2QSUB: {
    3781             :       // op: Rd
    3782          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3783          16 :       Value |= (op & UINT64_C(15)) << 8;
    3784             :       // op: Rn
    3785          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3786          16 :       Value |= (op & UINT64_C(15)) << 16;
    3787             :       // op: Rm
    3788          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3789          16 :       Value |= op & UINT64_C(15);
    3790          16 :       break;
    3791             :     }
    3792             :     case ARM::t2BFI: {
    3793             :       // op: Rd
    3794          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3795          18 :       Value |= (op & UINT64_C(15)) << 8;
    3796             :       // op: Rn
    3797          18 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3798          18 :       Value |= (op & UINT64_C(15)) << 16;
    3799             :       // op: imm
    3800          18 :       op = getBitfieldInvertedMaskOpValue(MI, 3, Fixups, STI);
    3801          18 :       Value |= (op & UINT64_C(28)) << 10;
    3802          18 :       Value |= (op & UINT64_C(3)) << 6;
    3803          18 :       Value |= (op & UINT64_C(992)) >> 5;
    3804          18 :       break;
    3805             :     }
    3806             :     case ARM::t2SSAT16:
    3807             :     case ARM::t2USAT16: {
    3808             :       // op: Rd
    3809           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3810           8 :       Value |= (op & UINT64_C(15)) << 8;
    3811             :       // op: Rn
    3812           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3813           8 :       Value |= (op & UINT64_C(15)) << 16;
    3814             :       // op: sat_imm
    3815           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3816           8 :       Value |= op & UINT64_C(15);
    3817           8 :       break;
    3818             :     }
    3819             :     case ARM::t2SSAT:
    3820             :     case ARM::t2USAT: {
    3821             :       // op: Rd
    3822          72 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3823          72 :       Value |= (op & UINT64_C(15)) << 8;
    3824             :       // op: Rn
    3825          72 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3826          72 :       Value |= (op & UINT64_C(15)) << 16;
    3827             :       // op: sat_imm
    3828          72 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3829          72 :       Value |= op & UINT64_C(31);
    3830             :       // op: sh
    3831          72 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3832          72 :       Value |= (op & UINT64_C(32)) << 16;
    3833          72 :       Value |= (op & UINT64_C(28)) << 10;
    3834          72 :       Value |= (op & UINT64_C(3)) << 6;
    3835          72 :       break;
    3836             :     }
    3837             :     case ARM::t2STREX: {
    3838             :       // op: Rd
    3839          25 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3840          25 :       Value |= (op & UINT64_C(15)) << 8;
    3841             :       // op: Rt
    3842          25 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3843          25 :       Value |= (op & UINT64_C(15)) << 12;
    3844             :       // op: addr
    3845          25 :       op = getT2AddrModeImm0_1020s4OpValue(MI, 2, Fixups, STI);
    3846          25 :       Value |= (op & UINT64_C(3840)) << 8;
    3847          25 :       Value |= op & UINT64_C(255);
    3848          25 :       break;
    3849             :     }
    3850             :     case ARM::t2MRS_M: {
    3851             :       // op: Rd
    3852          63 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3853          63 :       Value |= (op & UINT64_C(15)) << 8;
    3854             :       // op: SYSm
    3855          63 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3856          63 :       Value |= op & UINT64_C(255);
    3857          63 :       break;
    3858             :     }
    3859             :     case ARM::t2ADR: {
    3860             :       // op: Rd
    3861          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3862          12 :       Value |= (op & UINT64_C(15)) << 8;
    3863             :       // op: addr
    3864          12 :       op = getT2AdrLabelOpValue(MI, 1, Fixups, STI);
    3865          12 :       Value |= (op & UINT64_C(2048)) << 15;
    3866          12 :       Value |= (op & UINT64_C(4096)) << 11;
    3867          12 :       Value |= (op & UINT64_C(4096)) << 9;
    3868          12 :       Value |= (op & UINT64_C(1792)) << 4;
    3869          12 :       Value |= op & UINT64_C(255);
    3870          12 :       break;
    3871             :     }
    3872             :     case ARM::t2BFC: {
    3873             :       // op: Rd
    3874          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3875          20 :       Value |= (op & UINT64_C(15)) << 8;
    3876             :       // op: imm
    3877          20 :       op = getBitfieldInvertedMaskOpValue(MI, 2, Fixups, STI);
    3878          20 :       Value |= (op & UINT64_C(28)) << 10;
    3879          20 :       Value |= (op & UINT64_C(3)) << 6;
    3880          20 :       Value |= (op & UINT64_C(992)) >> 5;
    3881          20 :       break;
    3882             :     }
    3883             :     case ARM::t2MOVi16: {
    3884             :       // op: Rd
    3885         330 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3886         330 :       Value |= (op & UINT64_C(15)) << 8;
    3887             :       // op: imm
    3888         330 :       op = getHiLo16ImmOpValue(MI, 1, Fixups, STI);
    3889         330 :       Value |= (op & UINT64_C(2048)) << 15;
    3890         330 :       Value |= (op & UINT64_C(61440)) << 4;
    3891         330 :       Value |= (op & UINT64_C(1792)) << 4;
    3892         330 :       Value |= op & UINT64_C(255);
    3893         330 :       break;
    3894             :     }
    3895             :     case ARM::t2MOVTi16: {
    3896             :       // op: Rd
    3897         259 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3898         259 :       Value |= (op & UINT64_C(15)) << 8;
    3899             :       // op: imm
    3900         259 :       op = getHiLo16ImmOpValue(MI, 2, Fixups, STI);
    3901         259 :       Value |= (op & UINT64_C(2048)) << 15;
    3902         259 :       Value |= (op & UINT64_C(61440)) << 4;
    3903         259 :       Value |= (op & UINT64_C(1792)) << 4;
    3904         259 :       Value |= op & UINT64_C(255);
    3905         259 :       break;
    3906             :     }
    3907             :     case ARM::t2SBFX:
    3908             :     case ARM::t2UBFX: {
    3909             :       // op: Rd
    3910          64 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3911          64 :       Value |= (op & UINT64_C(15)) << 8;
    3912             :       // op: msb
    3913          64 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3914          64 :       Value |= op & UINT64_C(31);
    3915             :       // op: lsb
    3916          64 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3917          64 :       Value |= (op & UINT64_C(28)) << 10;
    3918          64 :       Value |= (op & UINT64_C(3)) << 6;
    3919             :       // op: Rn
    3920          64 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3921          64 :       Value |= (op & UINT64_C(15)) << 16;
    3922          64 :       break;
    3923             :     }
    3924             :     case ARM::tADR: {
    3925             :       // op: Rd
    3926          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3927          26 :       Value |= (op & UINT64_C(7)) << 8;
    3928             :       // op: addr
    3929             :       op = getThumbAdrLabelOpValue(MI, 1, Fixups, STI);
    3930          26 :       Value |= op & UINT64_C(255);
    3931          26 :       break;
    3932             :     }
    3933             :     case ARM::tMOVi8: {
    3934             :       // op: Rd
    3935         315 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3936         315 :       Value |= (op & UINT64_C(7)) << 8;
    3937             :       // op: imm8
    3938         315 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3939         315 :       Value |= op & UINT64_C(255);
    3940         315 :       break;
    3941             :     }
    3942             :     case ARM::tMOVr: {
    3943             :       // op: Rd
    3944         959 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3945         959 :       Value |= (op & UINT64_C(8)) << 4;
    3946         959 :       Value |= op & UINT64_C(7);
    3947             :       // op: Rm
    3948         959 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3949         959 :       Value |= (op & UINT64_C(15)) << 3;
    3950         959 :       break;
    3951             :     }
    3952             :     case ARM::t2STLEX: {
    3953             :       // op: Rd
    3954           5 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3955           5 :       Value |= op & UINT64_C(15);
    3956             :       // op: Rt
    3957           5 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3958           5 :       Value |= (op & UINT64_C(15)) << 12;
    3959             :       // op: addr
    3960           5 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3961           5 :       Value |= (op & UINT64_C(15)) << 16;
    3962           5 :       break;
    3963             :     }
    3964             :     case ARM::t2STLEXB:
    3965             :     case ARM::t2STLEXH:
    3966             :     case ARM::t2STREXB:
    3967             :     case ARM::t2STREXH: {
    3968             :       // op: Rd
    3969          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3970          20 :       Value |= op & UINT64_C(15);
    3971             :       // op: addr
    3972          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3973          20 :       Value |= (op & UINT64_C(15)) << 16;
    3974             :       // op: Rt
    3975          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3976          20 :       Value |= (op & UINT64_C(15)) << 12;
    3977          20 :       break;
    3978             :     }
    3979             :     case ARM::t2STLEXD:
    3980             :     case ARM::t2STREXD: {
    3981             :       // op: Rd
    3982           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3983           8 :       Value |= op & UINT64_C(15);
    3984             :       // op: addr
    3985           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3986           8 :       Value |= (op & UINT64_C(15)) << 16;
    3987             :       // op: Rt
    3988           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3989           8 :       Value |= (op & UINT64_C(15)) << 12;
    3990             :       // op: Rt2
    3991           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3992           8 :       Value |= (op & UINT64_C(15)) << 8;
    3993           8 :       break;
    3994             :     }
    3995             :     case ARM::tMOVSr: {
    3996             :       // op: Rd
    3997          19 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3998          19 :       Value |= op & UINT64_C(7);
    3999             :       // op: Rm
    4000          19 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4001          19 :       Value |= (op & UINT64_C(7)) << 3;
    4002          19 :       break;
    4003             :     }
    4004             :     case ARM::tADDi3:
    4005             :     case ARM::tSUBi3: {
    4006             :       // op: Rd
    4007          69 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4008          69 :       Value |= op & UINT64_C(7);
    4009             :       // op: Rm
    4010          69 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4011          69 :       Value |= (op & UINT64_C(7)) << 3;
    4012             :       // op: imm3
    4013          69 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4014          69 :       Value |= (op & UINT64_C(7)) << 6;
    4015          69 :       break;
    4016             :     }
    4017             :     case ARM::tASRri:
    4018             :     case ARM::tLSLri:
    4019             :     case ARM::tLSRri: {
    4020             :       // op: Rd
    4021         136 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4022         136 :       Value |= op & UINT64_C(7);
    4023             :       // op: Rm
    4024         136 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4025         136 :       Value |= (op & UINT64_C(7)) << 3;
    4026             :       // op: imm5
    4027         136 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4028         136 :       Value |= (op & UINT64_C(31)) << 6;
    4029         136 :       break;
    4030             :     }
    4031             :     case ARM::tMUL:
    4032             :     case ARM::tMVN:
    4033             :     case ARM::tRSB: {
    4034             :       // op: Rd
    4035          44 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4036          44 :       Value |= op & UINT64_C(7);
    4037             :       // op: Rn
    4038          44 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4039          44 :       Value |= (op & UINT64_C(7)) << 3;
    4040          44 :       break;
    4041             :     }
    4042             :     case ARM::t2SMLALD:
    4043             :     case ARM::t2SMLALDX:
    4044             :     case ARM::t2SMLSLD:
    4045             :     case ARM::t2SMLSLDX: {
    4046             :       // op: Rd
    4047          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4048          16 :       Value |= (op & UINT64_C(15)) << 8;
    4049             :       // op: Rn
    4050          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4051          16 :       Value |= (op & UINT64_C(15)) << 16;
    4052             :       // op: Rm
    4053          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4054          16 :       Value |= op & UINT64_C(15);
    4055             :       // op: Ra
    4056          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4057          16 :       Value |= (op & UINT64_C(15)) << 12;
    4058          16 :       break;
    4059             :     }
    4060             :     case ARM::t2SMLAL:
    4061             :     case ARM::t2SMLALBB:
    4062             :     case ARM::t2SMLALBT:
    4063             :     case ARM::t2SMLALTB:
    4064             :     case ARM::t2SMLALTT:
    4065             :     case ARM::t2SMULL:
    4066             :     case ARM::t2UMAAL:
    4067             :     case ARM::t2UMLAL:
    4068             :     case ARM::t2UMULL: {
    4069             :       // op: RdLo
    4070          95 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4071          95 :       Value |= (op & UINT64_C(15)) << 12;
    4072             :       // op: RdHi
    4073          95 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4074          95 :       Value |= (op & UINT64_C(15)) << 8;
    4075             :       // op: Rn
    4076          95 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4077          95 :       Value |= (op & UINT64_C(15)) << 16;
    4078             :       // op: Rm
    4079          95 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4080          95 :       Value |= op & UINT64_C(15);
    4081          95 :       break;
    4082             :     }
    4083             :     case ARM::tADDi8:
    4084             :     case ARM::tSUBi8: {
    4085             :       // op: Rdn
    4086        1986 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4087        1986 :       Value |= (op & UINT64_C(7)) << 8;
    4088             :       // op: imm8
    4089        1986 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4090        1986 :       Value |= op & UINT64_C(255);
    4091        1986 :       break;
    4092             :     }
    4093             :     case ARM::tADDrSP: {
    4094             :       // op: Rdn
    4095          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4096          11 :       Value |= (op & UINT64_C(8)) << 4;
    4097          11 :       Value |= op & UINT64_C(7);
    4098          11 :       break;
    4099             :     }
    4100             :     case ARM::tADDhirr: {
    4101             :       // op: Rdn
    4102         151 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4103         151 :       Value |= (op & UINT64_C(8)) << 4;
    4104         151 :       Value |= op & UINT64_C(7);
    4105             :       // op: Rm
    4106         151 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4107         151 :       Value |= (op & UINT64_C(15)) << 3;
    4108         151 :       break;
    4109             :     }
    4110             :     case ARM::tADC:
    4111             :     case ARM::tAND:
    4112             :     case ARM::tASRrr:
    4113             :     case ARM::tBIC:
    4114             :     case ARM::tEOR:
    4115             :     case ARM::tLSLrr:
    4116             :     case ARM::tLSRrr:
    4117             :     case ARM::tORR:
    4118             :     case ARM::tROR:
    4119             :     case ARM::tSBC: {
    4120             :       // op: Rdn
    4121         168 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4122         168 :       Value |= op & UINT64_C(7);
    4123             :       // op: Rm
    4124         168 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4125         168 :       Value |= (op & UINT64_C(7)) << 3;
    4126         168 :       break;
    4127             :     }
    4128             :     case ARM::tBX:
    4129             :     case ARM::tBXNS: {
    4130             :       // op: Rm
    4131         490 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4132         490 :       Value |= (op & UINT64_C(15)) << 3;
    4133         490 :       break;
    4134             :     }
    4135             :     case ARM::tCMPhir: {
    4136             :       // op: Rm
    4137           7 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4138           7 :       Value |= (op & UINT64_C(15)) << 3;
    4139             :       // op: Rn
    4140           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4141           7 :       Value |= (op & UINT64_C(8)) << 4;
    4142           7 :       Value |= op & UINT64_C(7);
    4143           7 :       break;
    4144             :     }
    4145             :     case ARM::tREV:
    4146             :     case ARM::tREV16:
    4147             :     case ARM::tREVSH:
    4148             :     case ARM::tSXTB:
    4149             :     case ARM::tSXTH:
    4150             :     case ARM::tUXTB:
    4151             :     case ARM::tUXTH: {
    4152             :       // op: Rm
    4153          68 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4154          68 :       Value |= (op & UINT64_C(7)) << 3;
    4155             :       // op: Rd
    4156          68 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4157          68 :       Value |= op & UINT64_C(7);
    4158          68 :       break;
    4159             :     }
    4160             :     case ARM::tCMNz:
    4161             :     case ARM::tCMPr:
    4162             :     case ARM::tTST: {
    4163             :       // op: Rm
    4164          43 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4165          43 :       Value |= (op & UINT64_C(7)) << 3;
    4166             :       // op: Rn
    4167          43 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4168          43 :       Value |= op & UINT64_C(7);
    4169          43 :       break;
    4170             :     }
    4171             :     case ARM::tADDspr: {
    4172             :       // op: Rm
    4173          11 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4174          11 :       Value |= (op & UINT64_C(15)) << 3;
    4175          11 :       break;
    4176             :     }
    4177             :     case ARM::tADDrr:
    4178             :     case ARM::tSUBrr: {
    4179             :       // op: Rm
    4180          66 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4181          66 :       Value |= (op & UINT64_C(7)) << 6;
    4182             :       // op: Rn
    4183          66 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4184          66 :       Value |= (op & UINT64_C(7)) << 3;
    4185             :       // op: Rd
    4186          66 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4187          66 :       Value |= op & UINT64_C(7);
    4188          66 :       break;
    4189             :     }
    4190             :     case ARM::RFEDA:
    4191             :     case ARM::RFEDA_UPD:
    4192             :     case ARM::RFEDB:
    4193             :     case ARM::RFEDB_UPD:
    4194             :     case ARM::RFEIA:
    4195             :     case ARM::RFEIA_UPD:
    4196             :     case ARM::RFEIB:
    4197             :     case ARM::RFEIB_UPD:
    4198             :     case ARM::t2RFEDB:
    4199             :     case ARM::t2RFEDBW:
    4200             :     case ARM::t2RFEIA:
    4201             :     case ARM::t2RFEIAW: {
    4202             :       // op: Rn
    4203          40 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4204          40 :       Value |= (op & UINT64_C(15)) << 16;
    4205          40 :       break;
    4206             :     }
    4207             :     case ARM::t2CMNzrr:
    4208             :     case ARM::t2CMPrr:
    4209             :     case ARM::t2TBB:
    4210             :     case ARM::t2TBH:
    4211             :     case ARM::t2TEQrr:
    4212             :     case ARM::t2TSTrr: {
    4213             :       // op: Rn
    4214          21 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4215          21 :       Value |= (op & UINT64_C(15)) << 16;
    4216             :       // op: Rm
    4217          21 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4218          21 :       Value |= op & UINT64_C(15);
    4219          21 :       break;
    4220             :     }
    4221             :     case ARM::t2CMNzrs:
    4222             :     case ARM::t2CMPrs:
    4223             :     case ARM::t2TEQrs:
    4224             :     case ARM::t2TSTrs: {
    4225             :       // op: Rn
    4226          41 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4227          41 :       Value |= (op & UINT64_C(15)) << 16;
    4228             :       // op: ShiftedRm
    4229          41 :       op = getT2SORegOpValue(MI, 1, Fixups, STI);
    4230          41 :       Value |= (op & UINT64_C(3584)) << 3;
    4231          41 :       Value |= (op & UINT64_C(480)) >> 1;
    4232          41 :       Value |= op & UINT64_C(15);
    4233          41 :       break;
    4234             :     }
    4235             :     case ARM::t2CMNri:
    4236             :     case ARM::t2CMPri:
    4237             :     case ARM::t2TEQri:
    4238             :     case ARM::t2TSTri: {
    4239             :       // op: Rn
    4240          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4241          18 :       Value |= (op & UINT64_C(15)) << 16;
    4242             :       // op: imm
    4243          18 :       op = getT2SOImmOpValue(MI, 1, Fixups, STI);
    4244          18 :       Value |= (op & UINT64_C(2048)) << 15;
    4245          18 :       Value |= (op & UINT64_C(1792)) << 4;
    4246          18 :       Value |= op & UINT64_C(255);
    4247          18 :       break;
    4248             :     }
    4249             :     case ARM::t2STMDB:
    4250             :     case ARM::t2STMIA: {
    4251             :       // op: Rn
    4252          27 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4253          27 :       Value |= (op & UINT64_C(15)) << 16;
    4254             :       // op: regs
    4255          27 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    4256          27 :       Value |= op & UINT64_C(16384);
    4257          27 :       Value |= op & UINT64_C(8191);
    4258          27 :       break;
    4259             :     }
    4260             :     case ARM::t2LDMDB:
    4261             :     case ARM::t2LDMIA: {
    4262             :       // op: Rn
    4263          30 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4264          30 :       Value |= (op & UINT64_C(15)) << 16;
    4265             :       // op: regs
    4266          30 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    4267          30 :       Value |= op & UINT64_C(65535);
    4268          30 :       break;
    4269             :     }
    4270             :     case ARM::tCMPi8: {
    4271             :       // op: Rn
    4272          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4273          46 :       Value |= (op & UINT64_C(7)) << 8;
    4274             :       // op: imm8
    4275          46 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4276          46 :       Value |= op & UINT64_C(255);
    4277          46 :       break;
    4278             :     }
    4279             :     case ARM::tLDMIA: {
    4280             :       // op: Rn
    4281         141 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4282         141 :       Value |= (op & UINT64_C(7)) << 8;
    4283             :       // op: regs
    4284         141 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    4285         141 :       Value |= op & UINT64_C(255);
    4286         141 :       break;
    4287             :     }
    4288             :     case ARM::t2TT:
    4289             :     case ARM::t2TTA:
    4290             :     case ARM::t2TTAT:
    4291             :     case ARM::t2TTT: {
    4292             :       // op: Rn
    4293          15 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4294          15 :       Value |= (op & UINT64_C(15)) << 16;
    4295             :       // op: Rt
    4296          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4297          15 :       Value |= (op & UINT64_C(15)) << 8;
    4298          15 :       break;
    4299             :     }
    4300             :     case ARM::t2STMDB_UPD:
    4301             :     case ARM::t2STMIA_UPD: {
    4302             :       // op: Rn
    4303          29 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4304          29 :       Value |= (op & UINT64_C(15)) << 16;
    4305             :       // op: regs
    4306          29 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    4307          29 :       Value |= op & UINT64_C(16384);
    4308          29 :       Value |= op & UINT64_C(8191);
    4309          29 :       break;
    4310             :     }
    4311             :     case ARM::t2LDMDB_UPD:
    4312             :     case ARM::t2LDMIA_UPD: {
    4313             :       // op: Rn
    4314          38 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4315          38 :       Value |= (op & UINT64_C(15)) << 16;
    4316             :       // op: regs
    4317          38 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    4318          38 :       Value |= op & UINT64_C(65535);
    4319          38 :       break;
    4320             :     }
    4321             :     case ARM::tSTMIA_UPD: {
    4322             :       // op: Rn
    4323          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4324          10 :       Value |= (op & UINT64_C(7)) << 8;
    4325             :       // op: regs
    4326          10 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    4327          10 :       Value |= op & UINT64_C(255);
    4328          10 :       break;
    4329             :     }
    4330             :     case ARM::t2LDRB_POST:
    4331             :     case ARM::t2LDRH_POST:
    4332             :     case ARM::t2LDRSB_POST:
    4333             :     case ARM::t2LDRSH_POST:
    4334             :     case ARM::t2LDR_POST: {
    4335             :       // op: Rt
    4336         488 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4337         488 :       Value |= (op & UINT64_C(15)) << 12;
    4338             :       // op: Rn
    4339         488 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4340         488 :       Value |= (op & UINT64_C(15)) << 16;
    4341             :       // op: offset
    4342         488 :       op = getT2AddrModeImm8OffsetOpValue(MI, 3, Fixups, STI);
    4343         488 :       Value |= (op & UINT64_C(256)) << 1;
    4344         488 :       Value |= op & UINT64_C(255);
    4345         488 :       break;
    4346             :     }
    4347             :     case ARM::MRRC2:
    4348             :     case ARM::t2MRRC:
    4349             :     case ARM::t2MRRC2: {
    4350             :       // op: Rt
    4351          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4352          31 :       Value |= (op & UINT64_C(15)) << 12;
    4353             :       // op: Rt2
    4354          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4355          31 :       Value |= (op & UINT64_C(15)) << 16;
    4356             :       // op: cop
    4357          31 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4358          31 :       Value |= (op & UINT64_C(15)) << 8;
    4359             :       // op: opc1
    4360          31 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4361          31 :       Value |= (op & UINT64_C(15)) << 4;
    4362             :       // op: CRm
    4363          31 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4364          31 :       Value |= op & UINT64_C(15);
    4365          31 :       break;
    4366             :     }
    4367             :     case ARM::t2LDRD_POST: {
    4368             :       // op: Rt
    4369           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4370           8 :       Value |= (op & UINT64_C(15)) << 12;
    4371             :       // op: Rt2
    4372           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4373           8 :       Value |= (op & UINT64_C(15)) << 8;
    4374             :       // op: addr
    4375           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4376           8 :       Value |= (op & UINT64_C(15)) << 16;
    4377             :       // op: imm
    4378           8 :       op = getT2Imm8s4OpValue(MI, 4, Fixups, STI);
    4379           8 :       Value |= (op & UINT64_C(256)) << 15;
    4380           8 :       Value |= op & UINT64_C(255);
    4381           8 :       break;
    4382             :     }
    4383             :     case ARM::t2LDRDi8:
    4384             :     case ARM::t2STRDi8: {
    4385             :       // op: Rt
    4386          87 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4387          87 :       Value |= (op & UINT64_C(15)) << 12;
    4388             :       // op: Rt2
    4389          87 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4390          87 :       Value |= (op & UINT64_C(15)) << 8;
    4391             :       // op: addr
    4392          87 :       op = getT2AddrModeImm8s4OpValue(MI, 2, Fixups, STI);
    4393          87 :       Value |= (op & UINT64_C(256)) << 15;
    4394          87 :       Value |= (op & UINT64_C(7680)) << 7;
    4395          87 :       Value |= op & UINT64_C(255);
    4396          87 :       break;
    4397             :     }
    4398             :     case ARM::t2LDRD_PRE: {
    4399             :       // op: Rt
    4400           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4401           6 :       Value |= (op & UINT64_C(15)) << 12;
    4402             :       // op: Rt2
    4403           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4404           6 :       Value |= (op & UINT64_C(15)) << 8;
    4405             :       // op: addr
    4406           6 :       op = getT2AddrModeImm8s4OpValue(MI, 3, Fixups, STI);
    4407           6 :       Value |= (op & UINT64_C(256)) << 15;
    4408           6 :       Value |= (op & UINT64_C(7680)) << 7;
    4409           6 :       Value |= op & UINT64_C(255);
    4410           6 :       break;
    4411             :     }
    4412             :     case ARM::t2LDRBi12:
    4413             :     case ARM::t2LDRHi12:
    4414             :     case ARM::t2LDRSBi12:
    4415             :     case ARM::t2LDRSHi12:
    4416             :     case ARM::t2LDRi12:
    4417             :     case ARM::t2STRBi12:
    4418             :     case ARM::t2STRHi12:
    4419             :     case ARM::t2STRi12: {
    4420             :       // op: Rt
    4421        1260 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4422        1260 :       Value |= (op & UINT64_C(15)) << 12;
    4423             :       // op: addr
    4424        1260 :       op = getAddrModeImm12OpValue(MI, 1, Fixups, STI);
    4425        1260 :       Value |= (op & UINT64_C(122880)) << 3;
    4426        1260 :       Value |= op & UINT64_C(4095);
    4427        1260 :       break;
    4428             :     }
    4429             :     case ARM::t2LDRBpci:
    4430             :     case ARM::t2LDRHpci:
    4431             :     case ARM::t2LDRSBpci:
    4432             :     case ARM::t2LDRSHpci:
    4433             :     case ARM::t2LDRpci: {
    4434             :       // op: Rt
    4435          72 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4436          72 :       Value |= (op & UINT64_C(15)) << 12;
    4437             :       // op: addr
    4438          72 :       op = getAddrModeImm12OpValue(MI, 1, Fixups, STI);
    4439          72 :       Value |= (op & UINT64_C(4096)) << 11;
    4440          72 :       Value |= op & UINT64_C(4095);
    4441          72 :       break;
    4442             :     }
    4443             :     case ARM::t2LDA:
    4444             :     case ARM::t2LDAB:
    4445             :     case ARM::t2LDAEX:
    4446             :     case ARM::t2LDAH:
    4447             :     case ARM::t2STL:
    4448             :     case ARM::t2STLB:
    4449             :     case ARM::t2STLH: {
    4450             :       // op: Rt
    4451          35 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4452          35 :       Value |= (op & UINT64_C(15)) << 12;
    4453             :       // op: addr
    4454          35 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4455          35 :       Value |= (op & UINT64_C(15)) << 16;
    4456          35 :       break;
    4457             :     }
    4458             :     case ARM::t2LDREX: {
    4459             :       // op: Rt
    4460           9 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4461           9 :       Value |= (op & UINT64_C(15)) << 12;
    4462             :       // op: addr
    4463           9 :       op = getT2AddrModeImm0_1020s4OpValue(MI, 1, Fixups, STI);
    4464           9 :       Value |= (op & UINT64_C(3840)) << 8;
    4465           9 :       Value |= op & UINT64_C(255);
    4466           9 :       break;
    4467             :     }
    4468             :     case ARM::t2LDRBi8:
    4469             :     case ARM::t2LDRHi8:
    4470             :     case ARM::t2LDRSBi8:
    4471             :     case ARM::t2LDRSHi8:
    4472             :     case ARM::t2LDRi8:
    4473             :     case ARM::t2STRBi8:
    4474             :     case ARM::t2STRHi8:
    4475             :     case ARM::t2STRi8: {
    4476             :       // op: Rt
    4477          23 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4478          23 :       Value |= (op & UINT64_C(15)) << 12;
    4479             :       // op: addr
    4480          23 :       op = getT2AddrModeImm8OpValue(MI, 1, Fixups, STI);
    4481          23 :       Value |= (op & UINT64_C(7680)) << 7;
    4482          23 :       Value |= (op & UINT64_C(256)) << 1;
    4483          23 :       Value |= op & UINT64_C(255);
    4484          23 :       break;
    4485             :     }
    4486             :     case ARM::t2LDRBT:
    4487             :     case ARM::t2LDRHT:
    4488             :     case ARM::t2LDRSBT:
    4489             :     case ARM::t2LDRSHT:
    4490             :     case ARM::t2LDRT:
    4491             :     case ARM::t2STRBT:
    4492             :     case ARM::t2STRHT:
    4493             :     case ARM::t2STRT: {
    4494             :       // op: Rt
    4495          64 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4496          64 :       Value |= (op & UINT64_C(15)) << 12;
    4497             :       // op: addr
    4498          64 :       op = getT2AddrModeImm8OpValue(MI, 1, Fixups, STI);
    4499          64 :       Value |= (op & UINT64_C(7680)) << 7;
    4500          64 :       Value |= op & UINT64_C(255);
    4501          64 :       break;
    4502             :     }
    4503             :     case ARM::t2LDRB_PRE:
    4504             :     case ARM::t2LDRH_PRE:
    4505             :     case ARM::t2LDRSB_PRE:
    4506             :     case ARM::t2LDRSH_PRE:
    4507             :     case ARM::t2LDR_PRE: {
    4508             :       // op: Rt
    4509          30 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4510          30 :       Value |= (op & UINT64_C(15)) << 12;
    4511             :       // op: addr
    4512          30 :       op = getT2AddrModeImm8OpValue(MI, 2, Fixups, STI);
    4513          30 :       Value |= (op & UINT64_C(7680)) << 7;
    4514          30 :       Value |= (op & UINT64_C(256)) << 1;
    4515          30 :       Value |= op & UINT64_C(255);
    4516          30 :       break;
    4517             :     }
    4518             :     case ARM::t2LDRBs:
    4519             :     case ARM::t2LDRHs:
    4520             :     case ARM::t2LDRSBs:
    4521             :     case ARM::t2LDRSHs:
    4522             :     case ARM::t2LDRs:
    4523             :     case ARM::t2STRBs:
    4524             :     case ARM::t2STRHs:
    4525             :     case ARM::t2STRs: {
    4526             :       // op: Rt
    4527         228 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4528         228 :       Value |= (op & UINT64_C(15)) << 12;
    4529             :       // op: addr
    4530         228 :       op = getT2AddrModeSORegOpValue(MI, 1, Fixups, STI);
    4531         228 :       Value |= (op & UINT64_C(960)) << 10;
    4532         228 :       Value |= (op & UINT64_C(3)) << 4;
    4533         228 :       Value |= (op & UINT64_C(60)) >> 2;
    4534         228 :       break;
    4535             :     }
    4536             :     case ARM::MRC2:
    4537             :     case ARM::t2MRC:
    4538             :     case ARM::t2MRC2: {
    4539             :       // op: Rt
    4540          25 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4541          25 :       Value |= (op & UINT64_C(15)) << 12;
    4542             :       // op: cop
    4543          25 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4544          25 :       Value |= (op & UINT64_C(15)) << 8;
    4545             :       // op: opc1
    4546          25 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4547          25 :       Value |= (op & UINT64_C(7)) << 21;
    4548             :       // op: opc2
    4549          25 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    4550          25 :       Value |= (op & UINT64_C(7)) << 5;
    4551             :       // op: CRm
    4552          25 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4553          25 :       Value |= op & UINT64_C(15);
    4554             :       // op: CRn
    4555          25 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4556          25 :       Value |= (op & UINT64_C(15)) << 16;
    4557          25 :       break;
    4558             :     }
    4559             :     case ARM::tLDRpci: {
    4560             :       // op: Rt
    4561         121 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4562         121 :       Value |= (op & UINT64_C(7)) << 8;
    4563             :       // op: addr
    4564         121 :       op = getAddrModePCOpValue(MI, 1, Fixups, STI);
    4565         121 :       Value |= op & UINT64_C(255);
    4566         121 :       break;
    4567             :     }
    4568             :     case ARM::tLDRspi:
    4569             :     case ARM::tSTRspi: {
    4570             :       // op: Rt
    4571         924 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4572         924 :       Value |= (op & UINT64_C(7)) << 8;
    4573             :       // op: addr
    4574         924 :       op = getAddrModeThumbSPOpValue(MI, 1, Fixups, STI);
    4575         924 :       Value |= op & UINT64_C(255);
    4576         924 :       break;
    4577             :     }
    4578             :     case ARM::tLDRBi:
    4579             :     case ARM::tLDRHi:
    4580             :     case ARM::tLDRi:
    4581             :     case ARM::tSTRBi:
    4582             :     case ARM::tSTRHi:
    4583             :     case ARM::tSTRi: {
    4584             :       // op: Rt
    4585        2203 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4586        2203 :       Value |= op & UINT64_C(7);
    4587             :       // op: addr
    4588        2203 :       op = getAddrModeISOpValue(MI, 1, Fixups, STI);
    4589        2203 :       Value |= (op & UINT64_C(255)) << 3;
    4590        2203 :       break;
    4591             :     }
    4592             :     case ARM::tLDRBr:
    4593             :     case ARM::tLDRHr:
    4594             :     case ARM::tLDRSB:
    4595             :     case ARM::tLDRSH:
    4596             :     case ARM::tLDRr:
    4597             :     case ARM::tSTRBr:
    4598             :     case ARM::tSTRHr:
    4599             :     case ARM::tSTRr: {
    4600             :       // op: Rt
    4601          44 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4602          44 :       Value |= op & UINT64_C(7);
    4603             :       // op: addr
    4604          44 :       op = getThumbAddrModeRegRegOpValue(MI, 1, Fixups, STI);
    4605          44 :       Value |= (op & UINT64_C(63)) << 3;
    4606          44 :       break;
    4607             :     }
    4608             :     case ARM::t2STRB_POST:
    4609             :     case ARM::t2STRH_POST:
    4610             :     case ARM::t2STR_POST: {
    4611             :       // op: Rt
    4612         466 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4613         466 :       Value |= (op & UINT64_C(15)) << 12;
    4614             :       // op: Rn
    4615         466 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4616         466 :       Value |= (op & UINT64_C(15)) << 16;
    4617             :       // op: offset
    4618         466 :       op = getT2AddrModeImm8OffsetOpValue(MI, 3, Fixups, STI);
    4619         466 :       Value |= (op & UINT64_C(256)) << 1;
    4620         466 :       Value |= op & UINT64_C(255);
    4621         466 :       break;
    4622             :     }
    4623             :     case ARM::t2STRD_POST: {
    4624             :       // op: Rt
    4625          40 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4626          40 :       Value |= (op & UINT64_C(15)) << 12;
    4627             :       // op: Rt2
    4628          40 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4629          40 :       Value |= (op & UINT64_C(15)) << 8;
    4630             :       // op: addr
    4631          40 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4632          40 :       Value |= (op & UINT64_C(15)) << 16;
    4633             :       // op: imm
    4634          40 :       op = getT2Imm8s4OpValue(MI, 4, Fixups, STI);
    4635          40 :       Value |= (op & UINT64_C(256)) << 15;
    4636          40 :       Value |= op & UINT64_C(255);
    4637          40 :       break;
    4638             :     }
    4639             :     case ARM::t2STRD_PRE: {
    4640             :       // op: Rt
    4641          38 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4642          38 :       Value |= (op & UINT64_C(15)) << 12;
    4643             :       // op: Rt2
    4644          38 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4645          38 :       Value |= (op & UINT64_C(15)) << 8;
    4646             :       // op: addr
    4647          38 :       op = getT2AddrModeImm8s4OpValue(MI, 3, Fixups, STI);
    4648          38 :       Value |= (op & UINT64_C(256)) << 15;
    4649          38 :       Value |= (op & UINT64_C(7680)) << 7;
    4650          38 :       Value |= op & UINT64_C(255);
    4651          38 :       break;
    4652             :     }
    4653             :     case ARM::t2STRB_PRE:
    4654             :     case ARM::t2STRH_PRE:
    4655             :     case ARM::t2STR_PRE: {
    4656             :       // op: Rt
    4657          28 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4658          28 :       Value |= (op & UINT64_C(15)) << 12;
    4659             :       // op: addr
    4660          28 :       op = getT2AddrModeImm8OpValue(MI, 2, Fixups, STI);
    4661          28 :       Value |= (op & UINT64_C(7680)) << 7;
    4662          28 :       Value |= (op & UINT64_C(256)) << 1;
    4663          28 :       Value |= op & UINT64_C(255);
    4664          28 :       break;
    4665             :     }
    4666             :     case ARM::MCRR2:
    4667             :     case ARM::t2MCRR:
    4668             :     case ARM::t2MCRR2: {
    4669             :       // op: Rt
    4670          31 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4671          31 :       Value |= (op & UINT64_C(15)) << 12;
    4672             :       // op: Rt2
    4673          31 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4674          31 :       Value |= (op & UINT64_C(15)) << 16;
    4675             :       // op: cop
    4676          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4677          31 :       Value |= (op & UINT64_C(15)) << 8;
    4678             :       // op: opc1
    4679          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4680          31 :       Value |= (op & UINT64_C(15)) << 4;
    4681             :       // op: CRm
    4682          31 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4683          31 :       Value |= op & UINT64_C(15);
    4684          31 :       break;
    4685             :     }
    4686             :     case ARM::MCR2:
    4687             :     case ARM::t2MCR:
    4688             :     case ARM::t2MCR2: {
    4689             :       // op: Rt
    4690          25 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4691          25 :       Value |= (op & UINT64_C(15)) << 12;
    4692             :       // op: cop
    4693          25 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4694          25 :       Value |= (op & UINT64_C(15)) << 8;
    4695             :       // op: opc1
    4696          25 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4697          25 :       Value |= (op & UINT64_C(7)) << 21;
    4698             :       // op: opc2
    4699          25 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    4700          25 :       Value |= (op & UINT64_C(7)) << 5;
    4701             :       // op: CRm
    4702          25 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4703          25 :       Value |= op & UINT64_C(15);
    4704             :       // op: CRn
    4705          25 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4706          25 :       Value |= (op & UINT64_C(15)) << 16;
    4707          25 :       break;
    4708             :     }
    4709             :     case ARM::t2MSR_M: {
    4710             :       // op: SYSm
    4711          90 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4712          90 :       Value |= op & UINT64_C(3072);
    4713          90 :       Value |= op & UINT64_C(255);
    4714             :       // op: Rn
    4715          90 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4716          90 :       Value |= (op & UINT64_C(15)) << 16;
    4717          90 :       break;
    4718             :     }
    4719             :     case ARM::VCVTASD:
    4720             :     case ARM::VCVTAUD:
    4721             :     case ARM::VCVTMSD:
    4722             :     case ARM::VCVTMUD:
    4723             :     case ARM::VCVTNSD:
    4724             :     case ARM::VCVTNUD:
    4725             :     case ARM::VCVTPSD:
    4726             :     case ARM::VCVTPUD: {
    4727             :       // op: Sd
    4728          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4729          32 :       Value |= (op & UINT64_C(1)) << 22;
    4730          32 :       Value |= (op & UINT64_C(30)) << 11;
    4731             :       // op: Dm
    4732          32 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4733          32 :       Value |= (op & UINT64_C(16)) << 1;
    4734          32 :       Value |= op & UINT64_C(15);
    4735          32 :       break;
    4736             :     }
    4737             :     case ARM::VCVTASH:
    4738             :     case ARM::VCVTASS:
    4739             :     case ARM::VCVTAUH:
    4740             :     case ARM::VCVTAUS:
    4741             :     case ARM::VCVTMSH:
    4742             :     case ARM::VCVTMSS:
    4743             :     case ARM::VCVTMUH:
    4744             :     case ARM::VCVTMUS:
    4745             :     case ARM::VCVTNSH:
    4746             :     case ARM::VCVTNSS:
    4747             :     case ARM::VCVTNUH:
    4748             :     case ARM::VCVTNUS:
    4749             :     case ARM::VCVTPSH:
    4750             :     case ARM::VCVTPSS:
    4751             :     case ARM::VCVTPUH:
    4752             :     case ARM::VCVTPUS:
    4753             :     case ARM::VINSH:
    4754             :     case ARM::VMOVH:
    4755             :     case ARM::VRINTAH:
    4756             :     case ARM::VRINTAS:
    4757             :     case ARM::VRINTMH:
    4758             :     case ARM::VRINTMS:
    4759             :     case ARM::VRINTNH:
    4760             :     case ARM::VRINTNS:
    4761             :     case ARM::VRINTPH:
    4762             :     case ARM::VRINTPS: {
    4763             :       // op: Sd
    4764         104 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4765         104 :       Value |= (op & UINT64_C(1)) << 22;
    4766         104 :       Value |= (op & UINT64_C(30)) << 11;
    4767             :       // op: Sm
    4768         104 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4769         104 :       Value |= (op & UINT64_C(1)) << 5;
    4770         104 :       Value |= (op & UINT64_C(30)) >> 1;
    4771         104 :       break;
    4772             :     }
    4773             :     case ARM::VMAXNMH:
    4774             :     case ARM::VMAXNMS:
    4775             :     case ARM::VMINNMH:
    4776             :     case ARM::VMINNMS:
    4777             :     case ARM::VSELEQH:
    4778             :     case ARM::VSELEQS:
    4779             :     case ARM::VSELGEH:
    4780             :     case ARM::VSELGES:
    4781             :     case ARM::VSELGTH:
    4782             :     case ARM::VSELGTS:
    4783             :     case ARM::VSELVSH:
    4784             :     case ARM::VSELVSS: {
    4785             :       // op: Sd
    4786          48 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4787          48 :       Value |= (op & UINT64_C(1)) << 22;
    4788          48 :       Value |= (op & UINT64_C(30)) << 11;
    4789             :       // op: Sn
    4790          48 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4791          48 :       Value |= (op & UINT64_C(30)) << 15;
    4792          48 :       Value |= (op & UINT64_C(1)) << 7;
    4793             :       // op: Sm
    4794          48 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4795          48 :       Value |= (op & UINT64_C(1)) << 5;
    4796          48 :       Value |= (op & UINT64_C(30)) >> 1;
    4797          48 :       break;
    4798             :     }
    4799             :     case ARM::VDUP16d:
    4800             :     case ARM::VDUP16q:
    4801             :     case ARM::VDUP32d:
    4802             :     case ARM::VDUP32q:
    4803             :     case ARM::VDUP8d:
    4804             :     case ARM::VDUP8q: {
    4805             :       // op: V
    4806          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4807          12 :       Value |= (op & UINT64_C(15)) << 16;
    4808          12 :       Value |= (op & UINT64_C(16)) << 3;
    4809             :       // op: R
    4810          12 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4811          12 :       Value |= (op & UINT64_C(15)) << 12;
    4812             :       // op: p
    4813          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4814          12 :       Value |= (op & UINT64_C(15)) << 28;
    4815          12 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4816          12 :       break;
    4817             :     }
    4818             :     case ARM::VSETLNi32: {
    4819             :       // op: V
    4820          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4821          12 :       Value |= (op & UINT64_C(15)) << 16;
    4822          12 :       Value |= (op & UINT64_C(16)) << 3;
    4823             :       // op: R
    4824          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4825          12 :       Value |= (op & UINT64_C(15)) << 12;
    4826             :       // op: p
    4827          12 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4828          12 :       Value |= (op & UINT64_C(15)) << 28;
    4829             :       // op: lane
    4830          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4831          12 :       Value |= (op & UINT64_C(1)) << 21;
    4832          12 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4833          12 :       break;
    4834             :     }
    4835             :     case ARM::VSETLNi16: {
    4836             :       // op: V
    4837           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4838           6 :       Value |= (op & UINT64_C(15)) << 16;
    4839           6 :       Value |= (op & UINT64_C(16)) << 3;
    4840             :       // op: R
    4841           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4842           6 :       Value |= (op & UINT64_C(15)) << 12;
    4843             :       // op: p
    4844           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4845           6 :       Value |= (op & UINT64_C(15)) << 28;
    4846             :       // op: lane
    4847           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4848           6 :       Value |= (op & UINT64_C(2)) << 20;
    4849           6 :       Value |= (op & UINT64_C(1)) << 6;
    4850           6 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4851           6 :       break;
    4852             :     }
    4853             :     case ARM::VSETLNi8: {
    4854             :       // op: V
    4855           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4856           6 :       Value |= (op & UINT64_C(15)) << 16;
    4857           6 :       Value |= (op & UINT64_C(16)) << 3;
    4858             :       // op: R
    4859           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4860           6 :       Value |= (op & UINT64_C(15)) << 12;
    4861             :       // op: p
    4862           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4863           6 :       Value |= (op & UINT64_C(15)) << 28;
    4864             :       // op: lane
    4865           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4866           6 :       Value |= (op & UINT64_C(4)) << 19;
    4867           6 :       Value |= (op & UINT64_C(3)) << 5;
    4868           6 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4869           6 :       break;
    4870             :     }
    4871             :     case ARM::VGETLNi32: {
    4872             :       // op: V
    4873          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4874          10 :       Value |= (op & UINT64_C(15)) << 16;
    4875          10 :       Value |= (op & UINT64_C(16)) << 3;
    4876             :       // op: R
    4877          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4878          10 :       Value |= (op & UINT64_C(15)) << 12;
    4879             :       // op: p
    4880          10 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4881          10 :       Value |= (op & UINT64_C(15)) << 28;
    4882             :       // op: lane
    4883          10 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4884          10 :       Value |= (op & UINT64_C(1)) << 21;
    4885          10 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4886          10 :       break;
    4887             :     }
    4888             :     case ARM::VGETLNs16:
    4889             :     case ARM::VGETLNu16: {
    4890             :       // op: V
    4891           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4892           6 :       Value |= (op & UINT64_C(15)) << 16;
    4893           6 :       Value |= (op & UINT64_C(16)) << 3;
    4894             :       // op: R
    4895           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4896           6 :       Value |= (op & UINT64_C(15)) << 12;
    4897             :       // op: p
    4898           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4899           6 :       Value |= (op & UINT64_C(15)) << 28;
    4900             :       // op: lane
    4901           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4902           6 :       Value |= (op & UINT64_C(2)) << 20;
    4903           6 :       Value |= (op & UINT64_C(1)) << 6;
    4904           6 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4905           6 :       break;
    4906             :     }
    4907             :     case ARM::VGETLNs8:
    4908             :     case ARM::VGETLNu8: {
    4909             :       // op: V
    4910           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4911           6 :       Value |= (op & UINT64_C(15)) << 16;
    4912           6 :       Value |= (op & UINT64_C(16)) << 3;
    4913             :       // op: R
    4914           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4915           6 :       Value |= (op & UINT64_C(15)) << 12;
    4916             :       // op: p
    4917           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4918           6 :       Value |= (op & UINT64_C(15)) << 28;
    4919             :       // op: lane
    4920           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4921           6 :       Value |= (op & UINT64_C(4)) << 19;
    4922           6 :       Value |= (op & UINT64_C(3)) << 5;
    4923           6 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4924           6 :       break;
    4925             :     }
    4926             :     case ARM::VLD1LNd8: {
    4927             :       // op: Vd
    4928           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4929           4 :       Value |= (op & UINT64_C(16)) << 18;
    4930           4 :       Value |= (op & UINT64_C(15)) << 12;
    4931             :       // op: Rn
    4932           4 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    4933           4 :       Value |= (op & UINT64_C(15)) << 16;
    4934             :       // op: lane
    4935           4 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4936           4 :       Value |= (op & UINT64_C(7)) << 5;
    4937           4 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    4938           4 :       break;
    4939             :     }
    4940             :     case ARM::VLD1d16:
    4941             :     case ARM::VLD1d16T:
    4942             :     case ARM::VLD1d32:
    4943             :     case ARM::VLD1d32T:
    4944             :     case ARM::VLD1d64:
    4945             :     case ARM::VLD1d64T:
    4946             :     case ARM::VLD1d8:
    4947             :     case ARM::VLD1d8T: {
    4948             :       // op: Vd
    4949          34 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4950          34 :       Value |= (op & UINT64_C(16)) << 18;
    4951          34 :       Value |= (op & UINT64_C(15)) << 12;
    4952             :       // op: Rn
    4953          34 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    4954          34 :       Value |= (op & UINT64_C(15)) << 16;
    4955          34 :       Value |= op & UINT64_C(16);
    4956          34 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    4957          34 :       break;
    4958             :     }
    4959             :     case ARM::VLD1LNd16: {
    4960             :       // op: Vd
    4961           5 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4962           5 :       Value |= (op & UINT64_C(16)) << 18;
    4963           5 :       Value |= (op & UINT64_C(15)) << 12;
    4964             :       // op: Rn
    4965           5 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    4966           5 :       Value |= (op & UINT64_C(15)) << 16;
    4967           5 :       Value |= op & UINT64_C(48);
    4968             :       // op: lane
    4969           5 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4970           5 :       Value |= (op & UINT64_C(3)) << 6;
    4971           5 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    4972           5 :       break;
    4973             :     }
    4974             :     case ARM::VLD1d16Q:
    4975             :     case ARM::VLD1d32Q:
    4976             :     case ARM::VLD1d64Q:
    4977             :     case ARM::VLD1d8Q:
    4978             :     case ARM::VLD1q16:
    4979             :     case ARM::VLD1q32:
    4980             :     case ARM::VLD1q64:
    4981             :     case ARM::VLD1q8:
    4982             :     case ARM::VLD2b16:
    4983             :     case ARM::VLD2b32:
    4984             :     case ARM::VLD2b8:
    4985             :     case ARM::VLD2d16:
    4986             :     case ARM::VLD2d32:
    4987             :     case ARM::VLD2d8:
    4988             :     case ARM::VLD2q16:
    4989             :     case ARM::VLD2q32:
    4990             :     case ARM::VLD2q8: {
    4991             :       // op: Vd
    4992          95 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4993          95 :       Value |= (op & UINT64_C(16)) << 18;
    4994          95 :       Value |= (op & UINT64_C(15)) << 12;
    4995             :       // op: Rn
    4996          95 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    4997          95 :       Value |= (op & UINT64_C(15)) << 16;
    4998          95 :       Value |= op & UINT64_C(48);
    4999          95 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5000          95 :       break;
    5001             :     }
    5002             :     case ARM::VLD1LNd8_UPD: {
    5003             :       // op: Vd
    5004          13 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5005          13 :       Value |= (op & UINT64_C(16)) << 18;
    5006          13 :       Value |= (op & UINT64_C(15)) << 12;
    5007             :       // op: Rn
    5008          13 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5009          13 :       Value |= (op & UINT64_C(15)) << 16;
    5010             :       // op: Rm
    5011             :       op = getAddrMode6OffsetOpValue(MI, 4, Fixups, STI);
    5012          13 :       Value |= op & UINT64_C(15);
    5013             :       // op: lane
    5014          13 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5015          13 :       Value |= (op & UINT64_C(7)) << 5;
    5016          13 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5017          13 :       break;
    5018             :     }
    5019             :     case ARM::VLD1LNd32_UPD: {
    5020             :       // op: Vd
    5021          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5022          12 :       Value |= (op & UINT64_C(16)) << 18;
    5023          12 :       Value |= (op & UINT64_C(15)) << 12;
    5024             :       // op: Rn
    5025          12 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5026          12 :       Value |= (op & UINT64_C(15)) << 16;
    5027          12 :       Value |= (op & UINT64_C(16)) << 1;
    5028          12 :       Value |= op & UINT64_C(16);
    5029             :       // op: Rm
    5030             :       op = getAddrMode6OffsetOpValue(MI, 4, Fixups, STI);
    5031          12 :       Value |= op & UINT64_C(15);
    5032             :       // op: lane
    5033          12 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5034          12 :       Value |= (op & UINT64_C(1)) << 7;
    5035          12 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5036          12 :       break;
    5037             :     }
    5038             :     case ARM::VLD1LNd16_UPD: {
    5039             :       // op: Vd
    5040          19 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5041          19 :       Value |= (op & UINT64_C(16)) << 18;
    5042          19 :       Value |= (op & UINT64_C(15)) << 12;
    5043             :       // op: Rn
    5044          19 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5045          19 :       Value |= (op & UINT64_C(15)) << 16;
    5046          19 :       Value |= op & UINT64_C(16);
    5047             :       // op: Rm
    5048             :       op = getAddrMode6OffsetOpValue(MI, 4, Fixups, STI);
    5049          19 :       Value |= op & UINT64_C(15);
    5050             :       // op: lane
    5051          19 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5052          19 :       Value |= (op & UINT64_C(3)) << 6;
    5053          19 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5054          19 :       break;
    5055             :     }
    5056             :     case ARM::VLD1d16Twb_register:
    5057             :     case ARM::VLD1d16wb_register:
    5058             :     case ARM::VLD1d32Twb_register:
    5059             :     case ARM::VLD1d32wb_register:
    5060             :     case ARM::VLD1d64Twb_register:
    5061             :     case ARM::VLD1d64wb_register:
    5062             :     case ARM::VLD1d8Twb_register:
    5063             :     case ARM::VLD1d8wb_register: {
    5064             :       // op: Vd
    5065          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5066          24 :       Value |= (op & UINT64_C(16)) << 18;
    5067          24 :       Value |= (op & UINT64_C(15)) << 12;
    5068             :       // op: Rn
    5069          24 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5070          24 :       Value |= (op & UINT64_C(15)) << 16;
    5071          24 :       Value |= op & UINT64_C(16);
    5072             :       // op: Rm
    5073          24 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    5074          24 :       Value |= op & UINT64_C(15);
    5075          24 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5076          24 :       break;
    5077             :     }
    5078             :     case ARM::VLD2LNd32:
    5079             :     case ARM::VLD2LNq32: {
    5080             :       // op: Vd
    5081           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5082           8 :       Value |= (op & UINT64_C(16)) << 18;
    5083           8 :       Value |= (op & UINT64_C(15)) << 12;
    5084             :       // op: Rn
    5085           8 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5086           8 :       Value |= (op & UINT64_C(15)) << 16;
    5087           8 :       Value |= op & UINT64_C(16);
    5088             :       // op: lane
    5089           8 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5090           8 :       Value |= (op & UINT64_C(1)) << 7;
    5091           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5092           8 :       break;
    5093             :     }
    5094             :     case ARM::VLD2LNd16:
    5095             :     case ARM::VLD2LNq16: {
    5096             :       // op: Vd
    5097           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5098           8 :       Value |= (op & UINT64_C(16)) << 18;
    5099           8 :       Value |= (op & UINT64_C(15)) << 12;
    5100             :       // op: Rn
    5101           8 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5102           8 :       Value |= (op & UINT64_C(15)) << 16;
    5103           8 :       Value |= op & UINT64_C(16);
    5104             :       // op: lane
    5105           8 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5106           8 :       Value |= (op & UINT64_C(3)) << 6;
    5107           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5108           8 :       break;
    5109             :     }
    5110             :     case ARM::VLD2LNd8: {
    5111             :       // op: Vd
    5112           5 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5113           5 :       Value |= (op & UINT64_C(16)) << 18;
    5114           5 :       Value |= (op & UINT64_C(15)) << 12;
    5115             :       // op: Rn
    5116           5 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5117           5 :       Value |= (op & UINT64_C(15)) << 16;
    5118           5 :       Value |= op & UINT64_C(16);
    5119             :       // op: lane
    5120           5 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5121           5 :       Value |= (op & UINT64_C(7)) << 5;
    5122           5 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5123           5 :       break;
    5124             :     }
    5125             :     case ARM::VLD1d16Twb_fixed:
    5126             :     case ARM::VLD1d16wb_fixed:
    5127             :     case ARM::VLD1d32Twb_fixed:
    5128             :     case ARM::VLD1d32wb_fixed:
    5129             :     case ARM::VLD1d64Twb_fixed:
    5130             :     case ARM::VLD1d64wb_fixed:
    5131             :     case ARM::VLD1d8Twb_fixed:
    5132             :     case ARM::VLD1d8wb_fixed: {
    5133             :       // op: Vd
    5134          72 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5135          72 :       Value |= (op & UINT64_C(16)) << 18;
    5136          72 :       Value |= (op & UINT64_C(15)) << 12;
    5137             :       // op: Rn
    5138          72 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5139          72 :       Value |= (op & UINT64_C(15)) << 16;
    5140          72 :       Value |= op & UINT64_C(16);
    5141          72 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5142          72 :       break;
    5143             :     }
    5144             :     case ARM::VLD1d16Qwb_register:
    5145             :     case ARM::VLD1d32Qwb_register:
    5146             :     case ARM::VLD1d64Qwb_register:
    5147             :     case ARM::VLD1d8Qwb_register:
    5148             :     case ARM::VLD1q16wb_register:
    5149             :     case ARM::VLD1q32wb_register:
    5150             :     case ARM::VLD1q64wb_register:
    5151             :     case ARM::VLD1q8wb_register:
    5152             :     case ARM::VLD2b16wb_register:
    5153             :     case ARM::VLD2b32wb_register:
    5154             :     case ARM::VLD2b8wb_register:
    5155             :     case ARM::VLD2d16wb_register:
    5156             :     case ARM::VLD2d32wb_register:
    5157             :     case ARM::VLD2d8wb_register:
    5158             :     case ARM::VLD2q16wb_register:
    5159             :     case ARM::VLD2q32wb_register:
    5160             :     case ARM::VLD2q8wb_register: {
    5161             :       // op: Vd
    5162          72 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5163          72 :       Value |= (op & UINT64_C(16)) << 18;
    5164          72 :       Value |= (op & UINT64_C(15)) << 12;
    5165             :       // op: Rn
    5166          72 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5167          72 :       Value |= (op & UINT64_C(15)) << 16;
    5168          72 :       Value |= op & UINT64_C(48);
    5169             :       // op: Rm
    5170          72 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    5171          72 :       Value |= op & UINT64_C(15);
    5172          72 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5173          72 :       break;
    5174             :     }
    5175             :     case ARM::VLD1d16Qwb_fixed:
    5176             :     case ARM::VLD1d32Qwb_fixed:
    5177             :     case ARM::VLD1d64Qwb_fixed:
    5178             :     case ARM::VLD1d8Qwb_fixed:
    5179             :     case ARM::VLD1q16wb_fixed:
    5180             :     case ARM::VLD1q32wb_fixed:
    5181             :     case ARM::VLD1q64wb_fixed:
    5182             :     case ARM::VLD1q8wb_fixed:
    5183             :     case ARM::VLD2b16wb_fixed:
    5184             :     case ARM::VLD2b32wb_fixed:
    5185             :     case ARM::VLD2b8wb_fixed:
    5186             :     case ARM::VLD2d16wb_fixed:
    5187             :     case ARM::VLD2d32wb_fixed:
    5188             :     case ARM::VLD2d8wb_fixed:
    5189             :     case ARM::VLD2q16wb_fixed:
    5190             :     case ARM::VLD2q32wb_fixed:
    5191             :     case ARM::VLD2q8wb_fixed: {
    5192             :       // op: Vd
    5193         102 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5194         102 :       Value |= (op & UINT64_C(16)) << 18;
    5195         102 :       Value |= (op & UINT64_C(15)) << 12;
    5196             :       // op: Rn
    5197         102 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5198         102 :       Value |= (op & UINT64_C(15)) << 16;
    5199         102 :       Value |= op & UINT64_C(48);
    5200         102 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5201         102 :       break;
    5202             :     }
    5203             :     case ARM::VLD3LNd32:
    5204             :     case ARM::VLD3LNq32: {
    5205             :       // op: Vd
    5206           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5207           6 :       Value |= (op & UINT64_C(16)) << 18;
    5208           6 :       Value |= (op & UINT64_C(15)) << 12;
    5209             :       // op: Rn
    5210           6 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5211           6 :       Value |= (op & UINT64_C(15)) << 16;
    5212             :       // op: lane
    5213           6 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5214           6 :       Value |= (op & UINT64_C(1)) << 7;
    5215           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5216           6 :       break;
    5217             :     }
    5218             :     case ARM::VLD3LNd16:
    5219             :     case ARM::VLD3LNq16: {
    5220             :       // op: Vd
    5221           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5222           6 :       Value |= (op & UINT64_C(16)) << 18;
    5223           6 :       Value |= (op & UINT64_C(15)) << 12;
    5224             :       // op: Rn
    5225           6 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5226           6 :       Value |= (op & UINT64_C(15)) << 16;
    5227             :       // op: lane
    5228           6 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5229           6 :       Value |= (op & UINT64_C(3)) << 6;
    5230           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5231           6 :       break;
    5232             :     }
    5233             :     case ARM::VLD3LNd8: {
    5234             :       // op: Vd
    5235           3 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5236           3 :       Value |= (op & UINT64_C(16)) << 18;
    5237           3 :       Value |= (op & UINT64_C(15)) << 12;
    5238             :       // op: Rn
    5239           3 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5240           3 :       Value |= (op & UINT64_C(15)) << 16;
    5241             :       // op: lane
    5242           3 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5243           3 :       Value |= (op & UINT64_C(7)) << 5;
    5244           3 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5245           3 :       break;
    5246             :     }
    5247             :     case ARM::VLD2LNd32_UPD:
    5248             :     case ARM::VLD2LNq32_UPD: {
    5249             :       // op: Vd
    5250           9 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5251           9 :       Value |= (op & UINT64_C(16)) << 18;
    5252           9 :       Value |= (op & UINT64_C(15)) << 12;
    5253             :       // op: Rn
    5254           9 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5255           9 :       Value |= (op & UINT64_C(15)) << 16;
    5256           9 :       Value |= op & UINT64_C(16);
    5257             :       // op: Rm
    5258             :       op = getAddrMode6OffsetOpValue(MI, 5, Fixups, STI);
    5259           9 :       Value |= op & UINT64_C(15);
    5260             :       // op: lane
    5261           9 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5262           9 :       Value |= (op & UINT64_C(1)) << 7;
    5263           9 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5264           9 :       break;
    5265             :     }
    5266             :     case ARM::VLD2LNd16_UPD:
    5267             :     case ARM::VLD2LNq16_UPD: {
    5268             :       // op: Vd
    5269           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5270           8 :       Value |= (op & UINT64_C(16)) << 18;
    5271           8 :       Value |= (op & UINT64_C(15)) << 12;
    5272             :       // op: Rn
    5273           8 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5274           8 :       Value |= (op & UINT64_C(15)) << 16;
    5275           8 :       Value |= op & UINT64_C(16);
    5276             :       // op: Rm
    5277             :       op = getAddrMode6OffsetOpValue(MI, 5, Fixups, STI);
    5278           8 :       Value |= op & UINT64_C(15);
    5279             :       // op: lane
    5280           8 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5281           8 :       Value |= (op & UINT64_C(3)) << 6;
    5282           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5283           8 :       break;
    5284             :     }
    5285             :     case ARM::VLD2LNd8_UPD: {
    5286             :       // op: Vd
    5287           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5288           6 :       Value |= (op & UINT64_C(16)) << 18;
    5289           6 :       Value |= (op & UINT64_C(15)) << 12;
    5290             :       // op: Rn
    5291           6 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5292           6 :       Value |= (op & UINT64_C(15)) << 16;
    5293           6 :       Value |= op & UINT64_C(16);
    5294             :       // op: Rm
    5295             :       op = getAddrMode6OffsetOpValue(MI, 5, Fixups, STI);
    5296           6 :       Value |= op & UINT64_C(15);
    5297             :       // op: lane
    5298           6 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5299           6 :       Value |= (op & UINT64_C(7)) << 5;
    5300           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5301           6 :       break;
    5302             :     }
    5303             :     case ARM::VLD3d16:
    5304             :     case ARM::VLD3d32:
    5305             :     case ARM::VLD3d8:
    5306             :     case ARM::VLD3q16:
    5307             :     case ARM::VLD3q32:
    5308             :     case ARM::VLD3q8: {
    5309             :       // op: Vd
    5310          21 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5311          21 :       Value |= (op & UINT64_C(16)) << 18;
    5312          21 :       Value |= (op & UINT64_C(15)) << 12;
    5313             :       // op: Rn
    5314          21 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5315          21 :       Value |= (op & UINT64_C(15)) << 16;
    5316          21 :       Value |= op & UINT64_C(16);
    5317          21 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5318          21 :       break;
    5319             :     }
    5320             :     case ARM::VLD3LNd32_UPD:
    5321             :     case ARM::VLD3LNq32_UPD: {
    5322             :       // op: Vd
    5323           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5324           8 :       Value |= (op & UINT64_C(16)) << 18;
    5325           8 :       Value |= (op & UINT64_C(15)) << 12;
    5326             :       // op: Rn
    5327           8 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5328           8 :       Value |= (op & UINT64_C(15)) << 16;
    5329             :       // op: Rm
    5330             :       op = getAddrMode6OffsetOpValue(MI, 6, Fixups, STI);
    5331           8 :       Value |= op & UINT64_C(15);
    5332             :       // op: lane
    5333           8 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5334           8 :       Value |= (op & UINT64_C(1)) << 7;
    5335           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5336           8 :       break;
    5337             :     }
    5338             :     case ARM::VLD3LNd16_UPD:
    5339             :     case ARM::VLD3LNq16_UPD: {
    5340             :       // op: Vd
    5341           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5342           8 :       Value |= (op & UINT64_C(16)) << 18;
    5343           8 :       Value |= (op & UINT64_C(15)) << 12;
    5344             :       // op: Rn
    5345           8 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5346           8 :       Value |= (op & UINT64_C(15)) << 16;
    5347             :       // op: Rm
    5348             :       op = getAddrMode6OffsetOpValue(MI, 6, Fixups, STI);
    5349           8 :       Value |= op & UINT64_C(15);
    5350             :       // op: lane
    5351           8 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5352           8 :       Value |= (op & UINT64_C(3)) << 6;
    5353           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5354           8 :       break;
    5355             :     }
    5356             :     case ARM::VLD3LNd8_UPD: {
    5357             :       // op: Vd
    5358           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5359           4 :       Value |= (op & UINT64_C(16)) << 18;
    5360           4 :       Value |= (op & UINT64_C(15)) << 12;
    5361             :       // op: Rn
    5362           4 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5363           4 :       Value |= (op & UINT64_C(15)) << 16;
    5364             :       // op: Rm
    5365             :       op = getAddrMode6OffsetOpValue(MI, 6, Fixups, STI);
    5366           4 :       Value |= op & UINT64_C(15);
    5367             :       // op: lane
    5368           4 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5369           4 :       Value |= (op & UINT64_C(7)) << 5;
    5370           4 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5371           4 :       break;
    5372             :     }
    5373             :     case ARM::VLD3d16_UPD:
    5374             :     case ARM::VLD3d32_UPD:
    5375             :     case ARM::VLD3d8_UPD:
    5376             :     case ARM::VLD3q16_UPD:
    5377             :     case ARM::VLD3q32_UPD:
    5378             :     case ARM::VLD3q8_UPD: {
    5379             :       // op: Vd
    5380          42 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5381          42 :       Value |= (op & UINT64_C(16)) << 18;
    5382          42 :       Value |= (op & UINT64_C(15)) << 12;
    5383             :       // op: Rn
    5384          42 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5385          42 :       Value |= (op & UINT64_C(15)) << 16;
    5386          42 :       Value |= op & UINT64_C(16);
    5387             :       // op: Rm
    5388             :       op = getAddrMode6OffsetOpValue(MI, 6, Fixups, STI);
    5389          42 :       Value |= op & UINT64_C(15);
    5390          42 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5391          42 :       break;
    5392             :     }
    5393             :     case ARM::VLD4LNd16:
    5394             :     case ARM::VLD4LNq16: {
    5395             :       // op: Vd
    5396           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5397           8 :       Value |= (op & UINT64_C(16)) << 18;
    5398           8 :       Value |= (op & UINT64_C(15)) << 12;
    5399             :       // op: Rn
    5400           8 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5401           8 :       Value |= (op & UINT64_C(15)) << 16;
    5402           8 :       Value |= op & UINT64_C(16);
    5403             :       // op: lane
    5404           8 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5405           8 :       Value |= (op & UINT64_C(3)) << 6;
    5406           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5407           8 :       break;
    5408             :     }
    5409             :     case ARM::VLD4LNd8: {
    5410             :       // op: Vd
    5411           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5412           4 :       Value |= (op & UINT64_C(16)) << 18;
    5413           4 :       Value |= (op & UINT64_C(15)) << 12;
    5414             :       // op: Rn
    5415           4 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5416           4 :       Value |= (op & UINT64_C(15)) << 16;
    5417           4 :       Value |= op & UINT64_C(16);
    5418             :       // op: lane
    5419           4 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5420           4 :       Value |= (op & UINT64_C(7)) << 5;
    5421           4 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5422           4 :       break;
    5423             :     }
    5424             :     case ARM::VLD4LNd32:
    5425             :     case ARM::VLD4LNq32: {
    5426             :       // op: Vd
    5427          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5428          10 :       Value |= (op & UINT64_C(16)) << 18;
    5429          10 :       Value |= (op & UINT64_C(15)) << 12;
    5430             :       // op: Rn
    5431          10 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5432          10 :       Value |= (op & UINT64_C(15)) << 16;
    5433          10 :       Value |= op & UINT64_C(48);
    5434             :       // op: lane
    5435          10 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5436          10 :       Value |= (op & UINT64_C(1)) << 7;
    5437          10 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5438          10 :       break;
    5439             :     }
    5440             :     case ARM::VLD4d16:
    5441             :     case ARM::VLD4d32:
    5442             :     case ARM::VLD4d8:
    5443             :     case ARM::VLD4q16:
    5444             :     case ARM::VLD4q32:
    5445             :     case ARM::VLD4q8: {
    5446             :       // op: Vd
    5447          33 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5448          33 :       Value |= (op & UINT64_C(16)) << 18;
    5449          33 :       Value |= (op & UINT64_C(15)) << 12;
    5450             :       // op: Rn
    5451          33 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5452          33 :       Value |= (op & UINT64_C(15)) << 16;
    5453          33 :       Value |= op & UINT64_C(48);
    5454          33 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5455          33 :       break;
    5456             :     }
    5457             :     case ARM::VLD4LNd16_UPD:
    5458             :     case ARM::VLD4LNq16_UPD: {
    5459             :       // op: Vd
    5460          13 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5461          13 :       Value |= (op & UINT64_C(16)) << 18;
    5462          13 :       Value |= (op & UINT64_C(15)) << 12;
    5463             :       // op: Rn
    5464          13 :       op = getAddrMode6AddressOpValue(MI, 5, Fixups, STI);
    5465          13 :       Value |= (op & UINT64_C(15)) << 16;
    5466          13 :       Value |= op & UINT64_C(16);
    5467             :       // op: Rm
    5468             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5469          13 :       Value |= op & UINT64_C(15);
    5470             :       // op: lane
    5471          13 :       op = getMachineOpValue(MI, MI.getOperand(12), Fixups, STI);
    5472          13 :       Value |= (op & UINT64_C(3)) << 6;
    5473          13 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5474          13 :       break;
    5475             :     }
    5476             :     case ARM::VLD4LNd8_UPD: {
    5477             :       // op: Vd
    5478           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5479           7 :       Value |= (op & UINT64_C(16)) << 18;
    5480           7 :       Value |= (op & UINT64_C(15)) << 12;
    5481             :       // op: Rn
    5482           7 :       op = getAddrMode6AddressOpValue(MI, 5, Fixups, STI);
    5483           7 :       Value |= (op & UINT64_C(15)) << 16;
    5484           7 :       Value |= op & UINT64_C(16);
    5485             :       // op: Rm
    5486             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5487           7 :       Value |= op & UINT64_C(15);
    5488             :       // op: lane
    5489           7 :       op = getMachineOpValue(MI, MI.getOperand(12), Fixups, STI);
    5490           7 :       Value |= (op & UINT64_C(7)) << 5;
    5491           7 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5492           7 :       break;
    5493             :     }
    5494             :     case ARM::VLD4LNd32_UPD:
    5495             :     case ARM::VLD4LNq32_UPD: {
    5496             :       // op: Vd
    5497          17 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5498          17 :       Value |= (op & UINT64_C(16)) << 18;
    5499          17 :       Value |= (op & UINT64_C(15)) << 12;
    5500             :       // op: Rn
    5501          17 :       op = getAddrMode6AddressOpValue(MI, 5, Fixups, STI);
    5502          17 :       Value |= (op & UINT64_C(15)) << 16;
    5503          17 :       Value |= op & UINT64_C(48);
    5504             :       // op: Rm
    5505             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5506          17 :       Value |= op & UINT64_C(15);
    5507             :       // op: lane
    5508          17 :       op = getMachineOpValue(MI, MI.getOperand(12), Fixups, STI);
    5509          17 :       Value |= (op & UINT64_C(1)) << 7;
    5510          17 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5511          17 :       break;
    5512             :     }
    5513             :     case ARM::VLD4d16_UPD:
    5514             :     case ARM::VLD4d32_UPD:
    5515             :     case ARM::VLD4d8_UPD:
    5516             :     case ARM::VLD4q16_UPD:
    5517             :     case ARM::VLD4q32_UPD:
    5518             :     case ARM::VLD4q8_UPD: {
    5519             :       // op: Vd
    5520          66 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5521          66 :       Value |= (op & UINT64_C(16)) << 18;
    5522          66 :       Value |= (op & UINT64_C(15)) << 12;
    5523             :       // op: Rn
    5524          66 :       op = getAddrMode6AddressOpValue(MI, 5, Fixups, STI);
    5525          66 :       Value |= (op & UINT64_C(15)) << 16;
    5526          66 :       Value |= op & UINT64_C(48);
    5527             :       // op: Rm
    5528             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5529          66 :       Value |= op & UINT64_C(15);
    5530          66 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5531          66 :       break;
    5532             :     }
    5533             :     case ARM::VLD1DUPd16:
    5534             :     case ARM::VLD1DUPd32:
    5535             :     case ARM::VLD1DUPd8:
    5536             :     case ARM::VLD1DUPq16:
    5537             :     case ARM::VLD1DUPq32:
    5538             :     case ARM::VLD1DUPq8:
    5539             :     case ARM::VLD2DUPd16:
    5540             :     case ARM::VLD2DUPd16x2:
    5541             :     case ARM::VLD2DUPd32:
    5542             :     case ARM::VLD2DUPd32x2:
    5543             :     case ARM::VLD2DUPd8:
    5544             :     case ARM::VLD2DUPd8x2: {
    5545             :       // op: Vd
    5546          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5547          26 :       Value |= (op & UINT64_C(16)) << 18;
    5548          26 :       Value |= (op & UINT64_C(15)) << 12;
    5549             :       // op: Rn
    5550          26 :       op = getAddrMode6DupAddressOpValue(MI, 1, Fixups, STI);
    5551          26 :       Value |= (op & UINT64_C(15)) << 16;
    5552          26 :       Value |= op & UINT64_C(16);
    5553          26 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5554          26 :       break;
    5555             :     }
    5556             :     case ARM::VLD1DUPd16wb_register:
    5557             :     case ARM::VLD1DUPd32wb_register:
    5558             :     case ARM::VLD1DUPd8wb_register:
    5559             :     case ARM::VLD1DUPq16wb_register:
    5560             :     case ARM::VLD1DUPq32wb_register:
    5561             :     case ARM::VLD1DUPq8wb_register:
    5562             :     case ARM::VLD2DUPd16wb_register:
    5563             :     case ARM::VLD2DUPd16x2wb_register:
    5564             :     case ARM::VLD2DUPd32wb_register:
    5565             :     case ARM::VLD2DUPd32x2wb_register:
    5566             :     case ARM::VLD2DUPd8wb_register:
    5567             :     case ARM::VLD2DUPd8x2wb_register: {
    5568             :       // op: Vd
    5569          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5570          26 :       Value |= (op & UINT64_C(16)) << 18;
    5571          26 :       Value |= (op & UINT64_C(15)) << 12;
    5572             :       // op: Rn
    5573          26 :       op = getAddrMode6DupAddressOpValue(MI, 2, Fixups, STI);
    5574          26 :       Value |= (op & UINT64_C(15)) << 16;
    5575          26 :       Value |= op & UINT64_C(16);
    5576             :       // op: Rm
    5577          26 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    5578          26 :       Value |= op & UINT64_C(15);
    5579          26 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5580          26 :       break;
    5581             :     }
    5582             :     case ARM::VLD1DUPd16wb_fixed:
    5583             :     case ARM::VLD1DUPd32wb_fixed:
    5584             :     case ARM::VLD1DUPd8wb_fixed:
    5585             :     case ARM::VLD1DUPq16wb_fixed:
    5586             :     case ARM::VLD1DUPq32wb_fixed:
    5587             :     case ARM::VLD1DUPq8wb_fixed:
    5588             :     case ARM::VLD2DUPd16wb_fixed:
    5589             :     case ARM::VLD2DUPd16x2wb_fixed:
    5590             :     case ARM::VLD2DUPd32wb_fixed:
    5591             :     case ARM::VLD2DUPd32x2wb_fixed:
    5592             :     case ARM::VLD2DUPd8wb_fixed:
    5593             :     case ARM::VLD2DUPd8x2wb_fixed: {
    5594             :       // op: Vd
    5595          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5596          26 :       Value |= (op & UINT64_C(16)) << 18;
    5597          26 :       Value |= (op & UINT64_C(15)) << 12;
    5598             :       // op: Rn
    5599          26 :       op = getAddrMode6DupAddressOpValue(MI, 2, Fixups, STI);
    5600          26 :       Value |= (op & UINT64_C(15)) << 16;
    5601          26 :       Value |= op & UINT64_C(16);
    5602          26 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5603          26 :       break;
    5604             :     }
    5605             :     case ARM::VLD3DUPd16:
    5606             :     case ARM::VLD3DUPd32:
    5607             :     case ARM::VLD3DUPd8:
    5608             :     case ARM::VLD3DUPq16:
    5609             :     case ARM::VLD3DUPq32:
    5610             :     case ARM::VLD3DUPq8: {
    5611             :       // op: Vd
    5612          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5613          12 :       Value |= (op & UINT64_C(16)) << 18;
    5614          12 :       Value |= (op & UINT64_C(15)) << 12;
    5615             :       // op: Rn
    5616          12 :       op = getAddrMode6DupAddressOpValue(MI, 3, Fixups, STI);
    5617          12 :       Value |= (op & UINT64_C(15)) << 16;
    5618          12 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5619          12 :       break;
    5620             :     }
    5621             :     case ARM::VLD3DUPd16_UPD:
    5622             :     case ARM::VLD3DUPd32_UPD:
    5623             :     case ARM::VLD3DUPd8_UPD:
    5624             :     case ARM::VLD3DUPq16_UPD:
    5625             :     case ARM::VLD3DUPq32_UPD:
    5626             :     case ARM::VLD3DUPq8_UPD: {
    5627             :       // op: Vd
    5628          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5629          24 :       Value |= (op & UINT64_C(16)) << 18;
    5630          24 :       Value |= (op & UINT64_C(15)) << 12;
    5631             :       // op: Rn
    5632          24 :       op = getAddrMode6DupAddressOpValue(MI, 4, Fixups, STI);
    5633          24 :       Value |= (op & UINT64_C(15)) << 16;
    5634             :       // op: Rm
    5635             :       op = getAddrMode6OffsetOpValue(MI, 6, Fixups, STI);
    5636          24 :       Value |= op & UINT64_C(15);
    5637          24 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5638          24 :       break;
    5639             :     }
    5640             :     case ARM::VLD4DUPd32:
    5641             :     case ARM::VLD4DUPq32: {
    5642             :       // op: Vd
    5643           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5644           8 :       Value |= (op & UINT64_C(16)) << 18;
    5645           8 :       Value |= (op & UINT64_C(15)) << 12;
    5646             :       // op: Rn
    5647           8 :       op = getAddrMode6DupAddressOpValue(MI, 4, Fixups, STI);
    5648           8 :       Value |= (op & UINT64_C(15)) << 16;
    5649           8 :       Value |= (op & UINT64_C(32)) << 1;
    5650           8 :       Value |= op & UINT64_C(16);
    5651           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5652           8 :       break;
    5653             :     }
    5654             :     case ARM::VLD4DUPd16:
    5655             :     case ARM::VLD4DUPd8:
    5656             :     case ARM::VLD4DUPq16:
    5657             :     case ARM::VLD4DUPq8: {
    5658             :       // op: Vd
    5659          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5660          12 :       Value |= (op & UINT64_C(16)) << 18;
    5661          12 :       Value |= (op & UINT64_C(15)) << 12;
    5662             :       // op: Rn
    5663          12 :       op = getAddrMode6DupAddressOpValue(MI, 4, Fixups, STI);
    5664          12 :       Value |= (op & UINT64_C(15)) << 16;
    5665          12 :       Value |= op & UINT64_C(16);
    5666          12 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5667          12 :       break;
    5668             :     }
    5669             :     case ARM::VLD4DUPd32_UPD:
    5670             :     case ARM::VLD4DUPq32_UPD: {
    5671             :       // op: Vd
    5672          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5673          16 :       Value |= (op & UINT64_C(16)) << 18;
    5674          16 :       Value |= (op & UINT64_C(15)) << 12;
    5675             :       // op: Rn
    5676          16 :       op = getAddrMode6DupAddressOpValue(MI, 5, Fixups, STI);
    5677          16 :       Value |= (op & UINT64_C(15)) << 16;
    5678          16 :       Value |= (op & UINT64_C(32)) << 1;
    5679          16 :       Value |= op & UINT64_C(16);
    5680             :       // op: Rm
    5681             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5682          16 :       Value |= op & UINT64_C(15);
    5683          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5684          16 :       break;
    5685             :     }
    5686             :     case ARM::VLD4DUPd16_UPD:
    5687             :     case ARM::VLD4DUPd8_UPD:
    5688             :     case ARM::VLD4DUPq16_UPD:
    5689             :     case ARM::VLD4DUPq8_UPD: {
    5690             :       // op: Vd
    5691          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5692          24 :       Value |= (op & UINT64_C(16)) << 18;
    5693          24 :       Value |= (op & UINT64_C(15)) << 12;
    5694             :       // op: Rn
    5695          24 :       op = getAddrMode6DupAddressOpValue(MI, 5, Fixups, STI);
    5696          24 :       Value |= (op & UINT64_C(15)) << 16;
    5697          24 :       Value |= op & UINT64_C(16);
    5698             :       // op: Rm
    5699             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5700          24 :       Value |= op & UINT64_C(15);
    5701          24 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5702          24 :       break;
    5703             :     }
    5704             :     case ARM::VLD1LNd32: {
    5705             :       // op: Vd
    5706           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5707           6 :       Value |= (op & UINT64_C(16)) << 18;
    5708           6 :       Value |= (op & UINT64_C(15)) << 12;
    5709             :       // op: Rn
    5710           6 :       op = getAddrMode6OneLane32AddressOpValue(MI, 1, Fixups, STI);
    5711           6 :       Value |= (op & UINT64_C(15)) << 16;
    5712           6 :       Value |= op & UINT64_C(48);
    5713             :       // op: lane
    5714           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    5715           6 :       Value |= (op & UINT64_C(1)) << 7;
    5716           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5717           6 :       break;
    5718             :     }
    5719             :     case ARM::VMOVv16i8:
    5720             :     case ARM::VMOVv1i64:
    5721             :     case ARM::VMOVv2f32:
    5722             :     case ARM::VMOVv2i64:
    5723             :     case ARM::VMOVv4f32:
    5724             :     case ARM::VMOVv8i8: {
    5725             :       // op: Vd
    5726          56 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5727          56 :       Value |= (op & UINT64_C(16)) << 18;
    5728          56 :       Value |= (op & UINT64_C(15)) << 12;
    5729             :       // op: SIMM
    5730          56 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5731          56 :       Value |= (op & UINT64_C(128)) << 17;
    5732          56 :       Value |= (op & UINT64_C(112)) << 12;
    5733          56 :       Value |= op & UINT64_C(15);
    5734          56 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5735          56 :       break;
    5736             :     }
    5737             :     case ARM::VBICiv2i32:
    5738             :     case ARM::VBICiv4i32:
    5739             :     case ARM::VORRiv2i32:
    5740             :     case ARM::VORRiv4i32: {
    5741             :       // op: Vd
    5742          19 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5743          19 :       Value |= (op & UINT64_C(16)) << 18;
    5744          19 :       Value |= (op & UINT64_C(15)) << 12;
    5745             :       // op: SIMM
    5746          19 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5747          19 :       Value |= (op & UINT64_C(128)) << 17;
    5748          19 :       Value |= (op & UINT64_C(112)) << 12;
    5749          19 :       Value |= op & UINT64_C(1536);
    5750          19 :       Value |= op & UINT64_C(15);
    5751          19 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5752          19 :       break;
    5753             :     }
    5754             :     case ARM::VMOVv2i32:
    5755             :     case ARM::VMOVv4i32:
    5756             :     case ARM::VMVNv2i32:
    5757             :     case ARM::VMVNv4i32: {
    5758             :       // op: Vd
    5759          58 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5760          58 :       Value |= (op & UINT64_C(16)) << 18;
    5761          58 :       Value |= (op & UINT64_C(15)) << 12;
    5762             :       // op: SIMM
    5763          58 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5764          58 :       Value |= (op & UINT64_C(128)) << 17;
    5765          58 :       Value |= (op & UINT64_C(112)) << 12;
    5766          58 :       Value |= op & UINT64_C(3840);
    5767          58 :       Value |= op & UINT64_C(15);
    5768          58 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5769          58 :       break;
    5770             :     }
    5771             :     case ARM::VBICiv4i16:
    5772             :     case ARM::VBICiv8i16:
    5773             :     case ARM::VMOVv4i16:
    5774             :     case ARM::VMOVv8i16:
    5775             :     case ARM::VMVNv4i16:
    5776             :     case ARM::VMVNv8i16:
    5777             :     case ARM::VORRiv4i16:
    5778             :     case ARM::VORRiv8i16: {
    5779             :       // op: Vd
    5780          36 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5781          36 :       Value |= (op & UINT64_C(16)) << 18;
    5782          36 :       Value |= (op & UINT64_C(15)) << 12;
    5783             :       // op: SIMM
    5784          36 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5785          36 :       Value |= (op & UINT64_C(128)) << 17;
    5786          36 :       Value |= (op & UINT64_C(112)) << 12;
    5787          36 :       Value |= op & UINT64_C(512);
    5788          36 :       Value |= op & UINT64_C(15);
    5789          36 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5790          36 :       break;
    5791             :     }
    5792             :     case ARM::VQSHLsiv4i16:
    5793             :     case ARM::VQSHLsiv8i16:
    5794             :     case ARM::VQSHLsuv4i16:
    5795             :     case ARM::VQSHLsuv8i16:
    5796             :     case ARM::VQSHLuiv4i16:
    5797             :     case ARM::VQSHLuiv8i16:
    5798             :     case ARM::VSHLLsv4i32:
    5799             :     case ARM::VSHLLuv4i32:
    5800             :     case ARM::VSHLiv4i16:
    5801             :     case ARM::VSHLiv8i16: {
    5802             :       // op: Vd
    5803          22 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5804          22 :       Value |= (op & UINT64_C(16)) << 18;
    5805          22 :       Value |= (op & UINT64_C(15)) << 12;
    5806             :       // op: Vm
    5807          22 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5808          22 :       Value |= (op & UINT64_C(16)) << 1;
    5809          22 :       Value |= op & UINT64_C(15);
    5810             :       // op: SIMM
    5811          22 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    5812          22 :       Value |= (op & UINT64_C(15)) << 16;
    5813          22 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5814          22 :       break;
    5815             :     }
    5816             :     case ARM::VQSHLsiv2i32:
    5817             :     case ARM::VQSHLsiv4i32:
    5818             :     case ARM::VQSHLsuv2i32:
    5819             :     case ARM::VQSHLsuv4i32:
    5820             :     case ARM::VQSHLuiv2i32:
    5821             :     case ARM::VQSHLuiv4i32:
    5822             :     case ARM::VSHLLsv2i64:
    5823             :     case ARM::VSHLLuv2i64:
    5824             :     case ARM::VSHLiv2i32:
    5825             :     case ARM::VSHLiv4i32: {
    5826             :       // op: Vd
    5827          22 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5828          22 :       Value |= (op & UINT64_C(16)) << 18;
    5829          22 :       Value |= (op & UINT64_C(15)) << 12;
    5830             :       // op: Vm
    5831          22 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5832          22 :       Value |= (op & UINT64_C(16)) << 1;
    5833          22 :       Value |= op & UINT64_C(15);
    5834             :       // op: SIMM
    5835          22 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    5836          22 :       Value |= (op & UINT64_C(31)) << 16;
    5837          22 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5838          22 :       break;
    5839             :     }
    5840             :     case ARM::VQSHLsiv1i64:
    5841             :     case ARM::VQSHLsiv2i64:
    5842             :     case ARM::VQSHLsuv1i64:
    5843             :     case ARM::VQSHLsuv2i64:
    5844             :     case ARM::VQSHLuiv1i64:
    5845             :     case ARM::VQSHLuiv2i64:
    5846             :     case ARM::VSHLiv1i64:
    5847             :     case ARM::VSHLiv2i64: {
    5848             :       // op: Vd
    5849          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5850          18 :       Value |= (op & UINT64_C(16)) << 18;
    5851          18 :       Value |= (op & UINT64_C(15)) << 12;
    5852             :       // op: Vm
    5853          18 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5854          18 :       Value |= (op & UINT64_C(16)) << 1;
    5855          18 :       Value |= op & UINT64_C(15);
    5856             :       // op: SIMM
    5857          18 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    5858          18 :       Value |= (op & UINT64_C(63)) << 16;
    5859          18 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5860          18 :       break;
    5861             :     }
    5862             :     case ARM::VQSHLsiv16i8:
    5863             :     case ARM::VQSHLsiv8i8:
    5864             :     case ARM::VQSHLsuv16i8:
    5865             :     case ARM::VQSHLsuv8i8:
    5866             :     case ARM::VQSHLuiv16i8:
    5867             :     case ARM::VQSHLuiv8i8:
    5868             :     case ARM::VSHLLsv8i16:
    5869             :     case ARM::VSHLLuv8i16:
    5870             :     case ARM::VSHLiv16i8:
    5871             :     case ARM::VSHLiv8i8: {
    5872             :       // op: Vd
    5873          22 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5874          22 :       Value |= (op & UINT64_C(16)) << 18;
    5875          22 :       Value |= (op & UINT64_C(15)) << 12;
    5876             :       // op: Vm
    5877          22 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5878          22 :       Value |= (op & UINT64_C(16)) << 1;
    5879          22 :       Value |= op & UINT64_C(15);
    5880             :       // op: SIMM
    5881          22 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    5882          22 :       Value |= (op & UINT64_C(7)) << 16;
    5883          22 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5884          22 :       break;
    5885             :     }
    5886             :     case ARM::VCVTf2xsd:
    5887             :     case ARM::VCVTf2xsq:
    5888             :     case ARM::VCVTf2xud:
    5889             :     case ARM::VCVTf2xuq:
    5890             :     case ARM::VCVTh2xsd:
    5891             :     case ARM::VCVTh2xsq:
    5892             :     case ARM::VCVTh2xud:
    5893             :     case ARM::VCVTh2xuq:
    5894             :     case ARM::VCVTxs2fd:
    5895             :     case ARM::VCVTxs2fq:
    5896             :     case ARM::VCVTxs2hd:
    5897             :     case ARM::VCVTxs2hq:
    5898             :     case ARM::VCVTxu2fd:
    5899             :     case ARM::VCVTxu2fq:
    5900             :     case ARM::VCVTxu2hd:
    5901             :     case ARM::VCVTxu2hq: {
    5902             :       // op: Vd
    5903          56 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5904          56 :       Value |= (op & UINT64_C(16)) << 18;
    5905          56 :       Value |= (op & UINT64_C(15)) << 12;
    5906             :       // op: Vm
    5907          56 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5908          56 :       Value |= (op & UINT64_C(16)) << 1;
    5909          56 :       Value |= op & UINT64_C(15);
    5910             :       // op: SIMM
    5911          56 :       op = getNEONVcvtImm32OpValue(MI, 2, Fixups, STI);
    5912          56 :       Value |= (op & UINT64_C(63)) << 16;
    5913          56 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5914          56 :       break;
    5915             :     }
    5916             :     case ARM::VQRSHRNsv4i16:
    5917             :     case ARM::VQRSHRNuv4i16:
    5918             :     case ARM::VQRSHRUNv4i16:
    5919             :     case ARM::VQSHRNsv4i16:
    5920             :     case ARM::VQSHRNuv4i16:
    5921             :     case ARM::VQSHRUNv4i16:
    5922             :     case ARM::VRSHRNv4i16:
    5923             :     case ARM::VRSHRsv4i16:
    5924             :     case ARM::VRSHRsv8i16:
    5925             :     case ARM::VRSHRuv4i16:
    5926             :     case ARM::VRSHRuv8i16:
    5927             :     case ARM::VSHRNv4i16:
    5928             :     case ARM::VSHRsv4i16:
    5929             :     case ARM::VSHRsv8i16:
    5930             :     case ARM::VSHRuv4i16:
    5931             :     case ARM::VSHRuv8i16: {
    5932             :       // op: Vd
    5933          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5934          46 :       Value |= (op & UINT64_C(16)) << 18;
    5935          46 :       Value |= (op & UINT64_C(15)) << 12;
    5936             :       // op: Vm
    5937          46 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5938          46 :       Value |= (op & UINT64_C(16)) << 1;
    5939          46 :       Value |= op & UINT64_C(15);
    5940             :       // op: SIMM
    5941          46 :       op = getShiftRight16Imm(MI, 2, Fixups, STI);
    5942          46 :       Value |= (op & UINT64_C(15)) << 16;
    5943          46 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5944          46 :       break;
    5945             :     }
    5946             :     case ARM::VQRSHRNsv2i32:
    5947             :     case ARM::VQRSHRNuv2i32:
    5948             :     case ARM::VQRSHRUNv2i32:
    5949             :     case ARM::VQSHRNsv2i32:
    5950             :     case ARM::VQSHRNuv2i32:
    5951             :     case ARM::VQSHRUNv2i32:
    5952             :     case ARM::VRSHRNv2i32:
    5953             :     case ARM::VRSHRsv2i32:
    5954             :     case ARM::VRSHRsv4i32:
    5955             :     case ARM::VRSHRuv2i32:
    5956             :     case ARM::VRSHRuv4i32:
    5957             :     case ARM::VSHRNv2i32:
    5958             :     case ARM::VSHRsv2i32:
    5959             :     case ARM::VSHRsv4i32:
    5960             :     case ARM::VSHRuv2i32:
    5961             :     case ARM::VSHRuv4i32: {
    5962             :       // op: Vd
    5963          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5964          46 :       Value |= (op & UINT64_C(16)) << 18;
    5965          46 :       Value |= (op & UINT64_C(15)) << 12;
    5966             :       // op: Vm
    5967          46 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5968          46 :       Value |= (op & UINT64_C(16)) << 1;
    5969          46 :       Value |= op & UINT64_C(15);
    5970             :       // op: SIMM
    5971          46 :       op = getShiftRight32Imm(MI, 2, Fixups, STI);
    5972          46 :       Value |= (op & UINT64_C(31)) << 16;
    5973          46 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5974          46 :       break;
    5975             :     }
    5976             :     case ARM::VRSHRsv1i64:
    5977             :     case ARM::VRSHRsv2i64:
    5978             :     case ARM::VRSHRuv1i64:
    5979             :     case ARM::VRSHRuv2i64:
    5980             :     case ARM::VSHRsv1i64:
    5981             :     case ARM::VSHRsv2i64:
    5982             :     case ARM::VSHRuv1i64:
    5983             :     case ARM::VSHRuv2i64: {
    5984             :       // op: Vd
    5985          28 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5986          28 :       Value |= (op & UINT64_C(16)) << 18;
    5987          28 :       Value |= (op & UINT64_C(15)) << 12;
    5988             :       // op: Vm
    5989          28 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5990          28 :       Value |= (op & UINT64_C(16)) << 1;
    5991          28 :       Value |= op & UINT64_C(15);
    5992             :       // op: SIMM
    5993          28 :       op = getShiftRight64Imm(MI, 2, Fixups, STI);
    5994          28 :       Value |= (op & UINT64_C(63)) << 16;
    5995          28 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5996          28 :       break;
    5997             :     }
    5998             :     case ARM::VQRSHRNsv8i8:
    5999             :     case ARM::VQRSHRNuv8i8:
    6000             :     case ARM::VQRSHRUNv8i8:
    6001             :     case ARM::VQSHRNsv8i8:
    6002             :     case ARM::VQSHRNuv8i8:
    6003             :     case ARM::VQSHRUNv8i8:
    6004             :     case ARM::VRSHRNv8i8:
    6005             :     case ARM::VRSHRsv16i8:
    6006             :     case ARM::VRSHRsv8i8:
    6007             :     case ARM::VRSHRuv16i8:
    6008             :     case ARM::VRSHRuv8i8:
    6009             :     case ARM::VSHRNv8i8:
    6010             :     case ARM::VSHRsv16i8:
    6011             :     case ARM::VSHRsv8i8:
    6012             :     case ARM::VSHRuv16i8:
    6013             :     case ARM::VSHRuv8i8: {
    6014             :       // op: Vd
    6015          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6016          46 :       Value |= (op & UINT64_C(16)) << 18;
    6017          46 :       Value |= (op & UINT64_C(15)) << 12;
    6018             :       // op: Vm
    6019          46 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6020          46 :       Value |= (op & UINT64_C(16)) << 1;
    6021          46 :       Value |= op & UINT64_C(15);
    6022             :       // op: SIMM
    6023          46 :       op = getShiftRight8Imm(MI, 2, Fixups, STI);
    6024          46 :       Value |= (op & UINT64_C(7)) << 16;
    6025          46 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6026          46 :       break;
    6027             :     }
    6028             :     case ARM::VDUPLN32d:
    6029             :     case ARM::VDUPLN32q: {
    6030             :       // op: Vd
    6031           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6032           6 :       Value |= (op & UINT64_C(16)) << 18;
    6033           6 :       Value |= (op & UINT64_C(15)) << 12;
    6034             :       // op: Vm
    6035           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6036           6 :       Value |= (op & UINT64_C(16)) << 1;
    6037           6 :       Value |= op & UINT64_C(15);
    6038             :       // op: lane
    6039           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6040           6 :       Value |= (op & UINT64_C(1)) << 19;
    6041           6 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6042           6 :       break;
    6043             :     }
    6044             :     case ARM::VDUPLN16d:
    6045             :     case ARM::VDUPLN16q: {
    6046             :       // op: Vd
    6047           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6048           6 :       Value |= (op & UINT64_C(16)) << 18;
    6049           6 :       Value |= (op & UINT64_C(15)) << 12;
    6050             :       // op: Vm
    6051           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6052           6 :       Value |= (op & UINT64_C(16)) << 1;
    6053           6 :       Value |= op & UINT64_C(15);
    6054             :       // op: lane
    6055           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6056           6 :       Value |= (op & UINT64_C(3)) << 18;
    6057           6 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6058           6 :       break;
    6059             :     }
    6060             :     case ARM::VDUPLN8d:
    6061             :     case ARM::VDUPLN8q: {
    6062             :       // op: Vd
    6063           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6064           6 :       Value |= (op & UINT64_C(16)) << 18;
    6065           6 :       Value |= (op & UINT64_C(15)) << 12;
    6066             :       // op: Vm
    6067           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6068           6 :       Value |= (op & UINT64_C(16)) << 1;
    6069           6 :       Value |= op & UINT64_C(15);
    6070             :       // op: lane
    6071           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6072           6 :       Value |= (op & UINT64_C(7)) << 17;
    6073           6 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6074           6 :       break;
    6075             :     }
    6076             :     case ARM::AESIMC:
    6077             :     case ARM::AESMC:
    6078             :     case ARM::SHA1H:
    6079             :     case ARM::VABSfd:
    6080             :     case ARM::VABSfq:
    6081             :     case ARM::VABShd:
    6082             :     case ARM::VABShq:
    6083             :     case ARM::VABSv16i8:
    6084             :     case ARM::VABSv2i32:
    6085             :     case ARM::VABSv4i16:
    6086             :     case ARM::VABSv4i32:
    6087             :     case ARM::VABSv8i16:
    6088             :     case ARM::VABSv8i8:
    6089             :     case ARM::VCEQzv16i8:
    6090             :     case ARM::VCEQzv2f32:
    6091             :     case ARM::VCEQzv2i32:
    6092             :     case ARM::VCEQzv4f16:
    6093             :     case ARM::VCEQzv4f32:
    6094             :     case ARM::VCEQzv4i16:
    6095             :     case ARM::VCEQzv4i32:
    6096             :     case ARM::VCEQzv8f16:
    6097             :     case ARM::VCEQzv8i16:
    6098             :     case ARM::VCEQzv8i8:
    6099             :     case ARM::VCGEzv16i8:
    6100             :     case ARM::VCGEzv2f32:
    6101             :     case ARM::VCGEzv2i32:
    6102             :     case ARM::VCGEzv4f16:
    6103             :     case ARM::VCGEzv4f32:
    6104             :     case ARM::VCGEzv4i16:
    6105             :     case ARM::VCGEzv4i32:
    6106             :     case ARM::VCGEzv8f16:
    6107             :     case ARM::VCGEzv8i16:
    6108             :     case ARM::VCGEzv8i8:
    6109             :     case ARM::VCGTzv16i8:
    6110             :     case ARM::VCGTzv2f32:
    6111             :     case ARM::VCGTzv2i32:
    6112             :     case ARM::VCGTzv4f16:
    6113             :     case ARM::VCGTzv4f32:
    6114             :     case ARM::VCGTzv4i16:
    6115             :     case ARM::VCGTzv4i32:
    6116             :     case ARM::VCGTzv8f16:
    6117             :     case ARM::VCGTzv8i16:
    6118             :     case ARM::VCGTzv8i8:
    6119             :     case ARM::VCLEzv16i8:
    6120             :     case ARM::VCLEzv2f32:
    6121             :     case ARM::VCLEzv2i32:
    6122             :     case ARM::VCLEzv4f16:
    6123             :     case ARM::VCLEzv4f32:
    6124             :     case ARM::VCLEzv4i16:
    6125             :     case ARM::VCLEzv4i32:
    6126             :     case ARM::VCLEzv8f16:
    6127             :     case ARM::VCLEzv8i16:
    6128             :     case ARM::VCLEzv8i8:
    6129             :     case ARM::VCLSv16i8:
    6130             :     case ARM::VCLSv2i32:
    6131             :     case ARM::VCLSv4i16:
    6132             :     case ARM::VCLSv4i32:
    6133             :     case ARM::VCLSv8i16:
    6134             :     case ARM::VCLSv8i8:
    6135             :     case ARM::VCLTzv16i8:
    6136             :     case ARM::VCLTzv2f32:
    6137             :     case ARM::VCLTzv2i32:
    6138             :     case ARM::VCLTzv4f16:
    6139             :     case ARM::VCLTzv4f32:
    6140             :     case ARM::VCLTzv4i16:
    6141             :     case ARM::VCLTzv4i32:
    6142             :     case ARM::VCLTzv8f16:
    6143             :     case ARM::VCLTzv8i16:
    6144             :     case ARM::VCLTzv8i8:
    6145             :     case ARM::VCLZv16i8:
    6146             :     case ARM::VCLZv2i32:
    6147             :     case ARM::VCLZv4i16:
    6148             :     case ARM::VCLZv4i32:
    6149             :     case ARM::VCLZv8i16:
    6150             :     case ARM::VCLZv8i8:
    6151             :     case ARM::VCNTd:
    6152             :     case ARM::VCNTq:
    6153             :     case ARM::VCVTf2h:
    6154             :     case ARM::VCVTf2sd:
    6155             :     case ARM::VCVTf2sq:
    6156             :     case ARM::VCVTf2ud:
    6157             :     case ARM::VCVTf2uq:
    6158             :     case ARM::VCVTh2f:
    6159             :     case ARM::VCVTh2sd:
    6160             :     case ARM::VCVTh2sq:
    6161             :     case ARM::VCVTh2ud:
    6162             :     case ARM::VCVTh2uq:
    6163             :     case ARM::VCVTs2fd:
    6164             :     case ARM::VCVTs2fq:
    6165             :     case ARM::VCVTs2hd:
    6166             :     case ARM::VCVTs2hq:
    6167             :     case ARM::VCVTu2fd:
    6168             :     case ARM::VCVTu2fq:
    6169             :     case ARM::VCVTu2hd:
    6170             :     case ARM::VCVTu2hq:
    6171             :     case ARM::VMOVLsv2i64:
    6172             :     case ARM::VMOVLsv4i32:
    6173             :     case ARM::VMOVLsv8i16:
    6174             :     case ARM::VMOVLuv2i64:
    6175             :     case ARM::VMOVLuv4i32:
    6176             :     case ARM::VMOVLuv8i16:
    6177             :     case ARM::VMOVNv2i32:
    6178             :     case ARM::VMOVNv4i16:
    6179             :     case ARM::VMOVNv8i8:
    6180             :     case ARM::VMVNd:
    6181             :     case ARM::VMVNq:
    6182             :     case ARM::VNEGf32q:
    6183             :     case ARM::VNEGfd:
    6184             :     case ARM::VNEGhd:
    6185             :     case ARM::VNEGhq:
    6186             :     case ARM::VNEGs16d:
    6187             :     case ARM::VNEGs16q:
    6188             :     case ARM::VNEGs32d:
    6189             :     case ARM::VNEGs32q:
    6190             :     case ARM::VNEGs8d:
    6191             :     case ARM::VNEGs8q:
    6192             :     case ARM::VPADDLsv16i8:
    6193             :     case ARM::VPADDLsv2i32:
    6194             :     case ARM::VPADDLsv4i16:
    6195             :     case ARM::VPADDLsv4i32:
    6196             :     case ARM::VPADDLsv8i16:
    6197             :     case ARM::VPADDLsv8i8:
    6198             :     case ARM::VPADDLuv16i8:
    6199             :     case ARM::VPADDLuv2i32:
    6200             :     case ARM::VPADDLuv4i16:
    6201             :     case ARM::VPADDLuv4i32:
    6202             :     case ARM::VPADDLuv8i16:
    6203             :     case ARM::VPADDLuv8i8:
    6204             :     case ARM::VQABSv16i8:
    6205             :     case ARM::VQABSv2i32:
    6206             :     case ARM::VQABSv4i16:
    6207             :     case ARM::VQABSv4i32:
    6208             :     case ARM::VQABSv8i16:
    6209             :     case ARM::VQABSv8i8:
    6210             :     case ARM::VQMOVNsuv2i32:
    6211             :     case ARM::VQMOVNsuv4i16:
    6212             :     case ARM::VQMOVNsuv8i8:
    6213             :     case ARM::VQMOVNsv2i32:
    6214             :     case ARM::VQMOVNsv4i16:
    6215             :     case ARM::VQMOVNsv8i8:
    6216             :     case ARM::VQMOVNuv2i32:
    6217             :     case ARM::VQMOVNuv4i16:
    6218             :     case ARM::VQMOVNuv8i8:
    6219             :     case ARM::VQNEGv16i8:
    6220             :     case ARM::VQNEGv2i32:
    6221             :     case ARM::VQNEGv4i16:
    6222             :     case ARM::VQNEGv4i32:
    6223             :     case ARM::VQNEGv8i16:
    6224             :     case ARM::VQNEGv8i8:
    6225             :     case ARM::VRECPEd:
    6226             :     case ARM::VRECPEfd:
    6227             :     case ARM::VRECPEfq:
    6228             :     case ARM::VRECPEhd:
    6229             :     case ARM::VRECPEhq:
    6230             :     case ARM::VRECPEq:
    6231             :     case ARM::VREV16d8:
    6232             :     case ARM::VREV16q8:
    6233             :     case ARM::VREV32d16:
    6234             :     case ARM::VREV32d8:
    6235             :     case ARM::VREV32q16:
    6236             :     case ARM::VREV32q8:
    6237             :     case ARM::VREV64d16:
    6238             :     case ARM::VREV64d32:
    6239             :     case ARM::VREV64d8:
    6240             :     case ARM::VREV64q16:
    6241             :     case ARM::VREV64q32:
    6242             :     case ARM::VREV64q8:
    6243             :     case ARM::VRSQRTEd:
    6244             :     case ARM::VRSQRTEfd:
    6245             :     case ARM::VRSQRTEfq:
    6246             :     case ARM::VRSQRTEhd:
    6247             :     case ARM::VRSQRTEhq:
    6248             :     case ARM::VRSQRTEq:
    6249             :     case ARM::VSHLLi16:
    6250             :     case ARM::VSHLLi32:
    6251             :     case ARM::VSHLLi8:
    6252             :     case ARM::VSWPd:
    6253             :     case ARM::VSWPq:
    6254             :     case ARM::VTRNd16:
    6255             :     case ARM::VTRNd32:
    6256             :     case ARM::VTRNd8:
    6257             :     case ARM::VTRNq16:
    6258             :     case ARM::VTRNq32:
    6259             :     case ARM::VTRNq8:
    6260             :     case ARM::VUZPd16:
    6261             :     case ARM::VUZPd8:
    6262             :     case ARM::VUZPq16:
    6263             :     case ARM::VUZPq32:
    6264             :     case ARM::VUZPq8:
    6265             :     case ARM::VZIPd16:
    6266             :     case ARM::VZIPd8:
    6267             :     case ARM::VZIPq16:
    6268             :     case ARM::VZIPq32:
    6269             :     case ARM::VZIPq8: {
    6270             :       // op: Vd
    6271         454 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6272         454 :       Value |= (op & UINT64_C(16)) << 18;
    6273         454 :       Value |= (op & UINT64_C(15)) << 12;
    6274             :       // op: Vm
    6275         454 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6276         454 :       Value |= (op & UINT64_C(16)) << 1;
    6277         454 :       Value |= op & UINT64_C(15);
    6278         454 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6279         454 :       break;
    6280             :     }
    6281             :     case ARM::VCVTANSDf:
    6282             :     case ARM::VCVTANSDh:
    6283             :     case ARM::VCVTANSQf:
    6284             :     case ARM::VCVTANSQh:
    6285             :     case ARM::VCVTANUDf:
    6286             :     case ARM::VCVTANUDh:
    6287             :     case ARM::VCVTANUQf:
    6288             :     case ARM::VCVTANUQh:
    6289             :     case ARM::VCVTMNSDf:
    6290             :     case ARM::VCVTMNSDh:
    6291             :     case ARM::VCVTMNSQf:
    6292             :     case ARM::VCVTMNSQh:
    6293             :     case ARM::VCVTMNUDf:
    6294             :     case ARM::VCVTMNUDh:
    6295             :     case ARM::VCVTMNUQf:
    6296             :     case ARM::VCVTMNUQh:
    6297             :     case ARM::VCVTNNSDf:
    6298             :     case ARM::VCVTNNSDh:
    6299             :     case ARM::VCVTNNSQf:
    6300             :     case ARM::VCVTNNSQh:
    6301             :     case ARM::VCVTNNUDf:
    6302             :     case ARM::VCVTNNUDh:
    6303             :     case ARM::VCVTNNUQf:
    6304             :     case ARM::VCVTNNUQh:
    6305             :     case ARM::VCVTPNSDf:
    6306             :     case ARM::VCVTPNSDh:
    6307             :     case ARM::VCVTPNSQf:
    6308             :     case ARM::VCVTPNSQh:
    6309             :     case ARM::VCVTPNUDf:
    6310             :     case ARM::VCVTPNUDh:
    6311             :     case ARM::VCVTPNUQf:
    6312             :     case ARM::VCVTPNUQh:
    6313             :     case ARM::VRINTANDf:
    6314             :     case ARM::VRINTANDh:
    6315             :     case ARM::VRINTANQf:
    6316             :     case ARM::VRINTANQh:
    6317             :     case ARM::VRINTMNDf:
    6318             :     case ARM::VRINTMNDh:
    6319             :     case ARM::VRINTMNQf:
    6320             :     case ARM::VRINTMNQh:
    6321             :     case ARM::VRINTNNDf:
    6322             :     case ARM::VRINTNNDh:
    6323             :     case ARM::VRINTNNQf:
    6324             :     case ARM::VRINTNNQh:
    6325             :     case ARM::VRINTPNDf:
    6326             :     case ARM::VRINTPNDh:
    6327             :     case ARM::VRINTPNQf:
    6328             :     case ARM::VRINTPNQh:
    6329             :     case ARM::VRINTXNDf:
    6330             :     case ARM::VRINTXNDh:
    6331             :     case ARM::VRINTXNQf:
    6332             :     case ARM::VRINTXNQh:
    6333             :     case ARM::VRINTZNDf:
    6334             :     case ARM::VRINTZNDh:
    6335             :     case ARM::VRINTZNQf:
    6336             :     case ARM::VRINTZNQh: {
    6337             :       // op: Vd
    6338         178 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6339         178 :       Value |= (op & UINT64_C(16)) << 18;
    6340         178 :       Value |= (op & UINT64_C(15)) << 12;
    6341             :       // op: Vm
    6342         178 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6343         178 :       Value |= (op & UINT64_C(16)) << 1;
    6344         178 :       Value |= op & UINT64_C(15);
    6345         178 :       Value = NEONThumb2V8PostEncoder(MI, Value, STI);
    6346         178 :       break;
    6347             :     }
    6348             :     case ARM::VSLIv4i16:
    6349             :     case ARM::VSLIv8i16: {
    6350             :       // op: Vd
    6351          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6352          12 :       Value |= (op & UINT64_C(16)) << 18;
    6353          12 :       Value |= (op & UINT64_C(15)) << 12;
    6354             :       // op: Vm
    6355          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6356          12 :       Value |= (op & UINT64_C(16)) << 1;
    6357          12 :       Value |= op & UINT64_C(15);
    6358             :       // op: SIMM
    6359          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6360          12 :       Value |= (op & UINT64_C(15)) << 16;
    6361          12 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6362          12 :       break;
    6363             :     }
    6364             :     case ARM::VSLIv2i32:
    6365             :     case ARM::VSLIv4i32: {
    6366             :       // op: Vd
    6367          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6368          12 :       Value |= (op & UINT64_C(16)) << 18;
    6369          12 :       Value |= (op & UINT64_C(15)) << 12;
    6370             :       // op: Vm
    6371          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6372          12 :       Value |= (op & UINT64_C(16)) << 1;
    6373          12 :       Value |= op & UINT64_C(15);
    6374             :       // op: SIMM
    6375          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6376          12 :       Value |= (op & UINT64_C(31)) << 16;
    6377          12 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6378          12 :       break;
    6379             :     }
    6380             :     case ARM::VSLIv1i64:
    6381             :     case ARM::VSLIv2i64: {
    6382             :       // op: Vd
    6383          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6384          12 :       Value |= (op & UINT64_C(16)) << 18;
    6385          12 :       Value |= (op & UINT64_C(15)) << 12;
    6386             :       // op: Vm
    6387          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6388          12 :       Value |= (op & UINT64_C(16)) << 1;
    6389          12 :       Value |= op & UINT64_C(15);
    6390             :       // op: SIMM
    6391          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6392          12 :       Value |= (op & UINT64_C(63)) << 16;
    6393          12 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6394          12 :       break;
    6395             :     }
    6396             :     case ARM::VSLIv16i8:
    6397             :     case ARM::VSLIv8i8: {
    6398             :       // op: Vd
    6399          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6400          12 :       Value |= (op & UINT64_C(16)) << 18;
    6401          12 :       Value |= (op & UINT64_C(15)) << 12;
    6402             :       // op: Vm
    6403          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6404          12 :       Value |= (op & UINT64_C(16)) << 1;
    6405          12 :       Value |= op & UINT64_C(15);
    6406             :       // op: SIMM
    6407          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6408          12 :       Value |= (op & UINT64_C(7)) << 16;
    6409          12 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6410          12 :       break;
    6411             :     }
    6412             :     case ARM::VRSRAsv4i16:
    6413             :     case ARM::VRSRAsv8i16:
    6414             :     case ARM::VRSRAuv4i16:
    6415             :     case ARM::VRSRAuv8i16:
    6416             :     case ARM::VSRAsv4i16:
    6417             :     case ARM::VSRAsv8i16:
    6418             :     case ARM::VSRAuv4i16:
    6419             :     case ARM::VSRAuv8i16:
    6420             :     case ARM::VSRIv4i16:
    6421             :     case ARM::VSRIv8i16: {
    6422             :       // op: Vd
    6423          52 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6424          52 :       Value |= (op & UINT64_C(16)) << 18;
    6425          52 :       Value |= (op & UINT64_C(15)) << 12;
    6426             :       // op: Vm
    6427          52 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6428          52 :       Value |= (op & UINT64_C(16)) << 1;
    6429          52 :       Value |= op & UINT64_C(15);
    6430             :       // op: SIMM
    6431          52 :       op = getShiftRight16Imm(MI, 3, Fixups, STI);
    6432          52 :       Value |= (op & UINT64_C(15)) << 16;
    6433          52 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6434          52 :       break;
    6435             :     }
    6436             :     case ARM::VRSRAsv2i32:
    6437             :     case ARM::VRSRAsv4i32:
    6438             :     case ARM::VRSRAuv2i32:
    6439             :     case ARM::VRSRAuv4i32:
    6440             :     case ARM::VSRAsv2i32:
    6441             :     case ARM::VSRAsv4i32:
    6442             :     case ARM::VSRAuv2i32:
    6443             :     case ARM::VSRAuv4i32:
    6444             :     case ARM::VSRIv2i32:
    6445             :     case ARM::VSRIv4i32: {
    6446             :       // op: Vd
    6447          52 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6448          52 :       Value |= (op & UINT64_C(16)) << 18;
    6449          52 :       Value |= (op & UINT64_C(15)) << 12;
    6450             :       // op: Vm
    6451          52 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6452          52 :       Value |= (op & UINT64_C(16)) << 1;
    6453          52 :       Value |= op & UINT64_C(15);
    6454             :       // op: SIMM
    6455          52 :       op = getShiftRight32Imm(MI, 3, Fixups, STI);
    6456          52 :       Value |= (op & UINT64_C(31)) << 16;
    6457          52 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6458          52 :       break;
    6459             :     }
    6460             :     case ARM::VRSRAsv1i64:
    6461             :     case ARM::VRSRAsv2i64:
    6462             :     case ARM::VRSRAuv1i64:
    6463             :     case ARM::VRSRAuv2i64:
    6464             :     case ARM::VSRAsv1i64:
    6465             :     case ARM::VSRAsv2i64:
    6466             :     case ARM::VSRAuv1i64:
    6467             :     case ARM::VSRAuv2i64:
    6468             :     case ARM::VSRIv1i64:
    6469             :     case ARM::VSRIv2i64: {
    6470             :       // op: Vd
    6471          52 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6472          52 :       Value |= (op & UINT64_C(16)) << 18;
    6473          52 :       Value |= (op & UINT64_C(15)) << 12;
    6474             :       // op: Vm
    6475          52 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6476          52 :       Value |= (op & UINT64_C(16)) << 1;
    6477          52 :       Value |= op & UINT64_C(15);
    6478             :       // op: SIMM
    6479          52 :       op = getShiftRight64Imm(MI, 3, Fixups, STI);
    6480          52 :       Value |= (op & UINT64_C(63)) << 16;
    6481          52 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6482          52 :       break;
    6483             :     }
    6484             :     case ARM::VRSRAsv16i8:
    6485             :     case ARM::VRSRAsv8i8:
    6486             :     case ARM::VRSRAuv16i8:
    6487             :     case ARM::VRSRAuv8i8:
    6488             :     case ARM::VSRAsv16i8:
    6489             :     case ARM::VSRAsv8i8:
    6490             :     case ARM::VSRAuv16i8:
    6491             :     case ARM::VSRAuv8i8:
    6492             :     case ARM::VSRIv16i8:
    6493             :     case ARM::VSRIv8i8: {
    6494             :       // op: Vd
    6495          52 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6496          52 :       Value |= (op & UINT64_C(16)) << 18;
    6497          52 :       Value |= (op & UINT64_C(15)) << 12;
    6498             :       // op: Vm
    6499          52 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6500          52 :       Value |= (op & UINT64_C(16)) << 1;
    6501          52 :       Value |= op & UINT64_C(15);
    6502             :       // op: SIMM
    6503          52 :       op = getShiftRight8Imm(MI, 3, Fixups, STI);
    6504          52 :       Value |= (op & UINT64_C(7)) << 16;
    6505          52 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6506          52 :       break;
    6507             :     }
    6508             :     case ARM::AESD:
    6509             :     case ARM::AESE:
    6510             :     case ARM::SHA1SU1:
    6511             :     case ARM::SHA256SU0:
    6512             :     case ARM::VPADALsv16i8:
    6513             :     case ARM::VPADALsv2i32:
    6514             :     case ARM::VPADALsv4i16:
    6515             :     case ARM::VPADALsv4i32:
    6516             :     case ARM::VPADALsv8i16:
    6517             :     case ARM::VPADALsv8i8:
    6518             :     case ARM::VPADALuv16i8:
    6519             :     case ARM::VPADALuv2i32:
    6520             :     case ARM::VPADALuv4i16:
    6521             :     case ARM::VPADALuv4i32:
    6522             :     case ARM::VPADALuv8i16:
    6523             :     case ARM::VPADALuv8i8: {
    6524             :       // op: Vd
    6525          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6526          32 :       Value |= (op & UINT64_C(16)) << 18;
    6527          32 :       Value |= (op & UINT64_C(15)) << 12;
    6528             :       // op: Vm
    6529          32 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6530          32 :       Value |= (op & UINT64_C(16)) << 1;
    6531          32 :       Value |= op & UINT64_C(15);
    6532          32 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6533          32 :       break;
    6534             :     }
    6535             :     case ARM::VFMALQ:
    6536             :     case ARM::VFMSLQ: {
    6537             :       // op: Vd
    6538           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6539           8 :       Value |= (op & UINT64_C(16)) << 18;
    6540           8 :       Value |= (op & UINT64_C(15)) << 12;
    6541             :       // op: Vn
    6542           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6543           8 :       Value |= (op & UINT64_C(15)) << 16;
    6544           8 :       Value |= (op & UINT64_C(16)) << 3;
    6545             :       // op: Vm
    6546           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6547           8 :       Value |= (op & UINT64_C(16)) << 1;
    6548           8 :       Value |= op & UINT64_C(15);
    6549           8 :       break;
    6550             :     }
    6551             :     case ARM::VEXTd32: {
    6552             :       // op: Vd
    6553           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6554           0 :       Value |= (op & UINT64_C(16)) << 18;
    6555           0 :       Value |= (op & UINT64_C(15)) << 12;
    6556             :       // op: Vn
    6557           0 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6558           0 :       Value |= (op & UINT64_C(15)) << 16;
    6559           0 :       Value |= (op & UINT64_C(16)) << 3;
    6560             :       // op: Vm
    6561           0 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6562           0 :       Value |= (op & UINT64_C(16)) << 1;
    6563           0 :       Value |= op & UINT64_C(15);
    6564             :       // op: index
    6565           0 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6566           0 :       Value |= (op & UINT64_C(1)) << 10;
    6567           0 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6568           0 :       break;
    6569             :     }
    6570             :     case ARM::VEXTq64: {
    6571             :       // op: Vd
    6572           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6573           2 :       Value |= (op & UINT64_C(16)) << 18;
    6574           2 :       Value |= (op & UINT64_C(15)) << 12;
    6575             :       // op: Vn
    6576           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6577           2 :       Value |= (op & UINT64_C(15)) << 16;
    6578           2 :       Value |= (op & UINT64_C(16)) << 3;
    6579             :       // op: Vm
    6580           2 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6581           2 :       Value |= (op & UINT64_C(16)) << 1;
    6582           2 :       Value |= op & UINT64_C(15);
    6583             :       // op: index
    6584           2 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6585           2 :       Value |= (op & UINT64_C(1)) << 11;
    6586           2 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6587           2 :       break;
    6588             :     }
    6589             :     case ARM::VEXTq8: {
    6590             :       // op: Vd
    6591           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6592           8 :       Value |= (op & UINT64_C(16)) << 18;
    6593           8 :       Value |= (op & UINT64_C(15)) << 12;
    6594             :       // op: Vn
    6595           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6596           8 :       Value |= (op & UINT64_C(15)) << 16;
    6597           8 :       Value |= (op & UINT64_C(16)) << 3;
    6598             :       // op: Vm
    6599           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6600           8 :       Value |= (op & UINT64_C(16)) << 1;
    6601           8 :       Value |= op & UINT64_C(15);
    6602             :       // op: index
    6603           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6604           8 :       Value |= (op & UINT64_C(15)) << 8;
    6605           8 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6606           8 :       break;
    6607             :     }
    6608             :     case ARM::VEXTq32: {
    6609             :       // op: Vd
    6610           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6611           4 :       Value |= (op & UINT64_C(16)) << 18;
    6612           4 :       Value |= (op & UINT64_C(15)) << 12;
    6613             :       // op: Vn
    6614           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6615           4 :       Value |= (op & UINT64_C(15)) << 16;
    6616           4 :       Value |= (op & UINT64_C(16)) << 3;
    6617             :       // op: Vm
    6618           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6619           4 :       Value |= (op & UINT64_C(16)) << 1;
    6620           4 :       Value |= op & UINT64_C(15);
    6621             :       // op: index
    6622           4 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6623           4 :       Value |= (op & UINT64_C(3)) << 10;
    6624           4 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6625           4 :       break;
    6626             :     }
    6627             :     case ARM::VEXTd16: {
    6628             :       // op: Vd
    6629           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6630           4 :       Value |= (op & UINT64_C(16)) << 18;
    6631           4 :       Value |= (op & UINT64_C(15)) << 12;
    6632             :       // op: Vn
    6633           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6634           4 :       Value |= (op & UINT64_C(15)) << 16;
    6635           4 :       Value |= (op & UINT64_C(16)) << 3;
    6636             :       // op: Vm
    6637           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6638           4 :       Value |= (op & UINT64_C(16)) << 1;
    6639           4 :       Value |= op & UINT64_C(15);
    6640             :       // op: index
    6641           4 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6642           4 :       Value |= (op & UINT64_C(3)) << 9;
    6643           4 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6644           4 :       break;
    6645             :     }
    6646             :     case ARM::VEXTd8: {
    6647             :       // op: Vd
    6648           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6649           8 :       Value |= (op & UINT64_C(16)) << 18;
    6650           8 :       Value |= (op & UINT64_C(15)) << 12;
    6651             :       // op: Vn
    6652           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6653           8 :       Value |= (op & UINT64_C(15)) << 16;
    6654           8 :       Value |= (op & UINT64_C(16)) << 3;
    6655             :       // op: Vm
    6656           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6657           8 :       Value |= (op & UINT64_C(16)) << 1;
    6658           8 :       Value |= op & UINT64_C(15);
    6659             :       // op: index
    6660           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6661           8 :       Value |= (op & UINT64_C(7)) << 8;
    6662           8 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6663           8 :       break;
    6664             :     }
    6665             :     case ARM::VEXTq16: {
    6666             :       // op: Vd
    6667           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6668           0 :       Value |= (op & UINT64_C(16)) << 18;
    6669           0 :       Value |= (op & UINT64_C(15)) << 12;
    6670             :       // op: Vn
    6671           0 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6672           0 :       Value |= (op & UINT64_C(15)) << 16;
    6673           0 :       Value |= (op & UINT64_C(16)) << 3;
    6674             :       // op: Vm
    6675           0 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6676           0 :       Value |= (op & UINT64_C(16)) << 1;
    6677           0 :       Value |= op & UINT64_C(15);
    6678             :       // op: index
    6679           0 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6680           0 :       Value |= (op & UINT64_C(7)) << 9;
    6681           0 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6682           0 :       break;
    6683             :     }
    6684             :     case ARM::VCADDv2f32:
    6685             :     case ARM::VCADDv4f16:
    6686             :     case ARM::VCADDv4f32:
    6687             :     case ARM::VCADDv8f16: {
    6688             :       // op: Vd
    6689          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6690          16 :       Value |= (op & UINT64_C(16)) << 18;
    6691          16 :       Value |= (op & UINT64_C(15)) << 12;
    6692             :       // op: Vn
    6693          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6694          16 :       Value |= (op & UINT64_C(15)) << 16;
    6695          16 :       Value |= (op & UINT64_C(16)) << 3;
    6696             :       // op: Vm
    6697          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6698          16 :       Value |= (op & UINT64_C(16)) << 1;
    6699          16 :       Value |= op & UINT64_C(15);
    6700             :       // op: rot
    6701          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6702          16 :       Value |= (op & UINT64_C(1)) << 24;
    6703          16 :       break;
    6704             :     }
    6705             :     case ARM::VABDLsv2i64:
    6706             :     case ARM::VABDLsv4i32:
    6707             :     case ARM::VABDLsv8i16:
    6708             :     case ARM::VABDLuv2i64:
    6709             :     case ARM::VABDLuv4i32:
    6710             :     case ARM::VABDLuv8i16:
    6711             :     case ARM::VABDfd:
    6712             :     case ARM::VABDfq:
    6713             :     case ARM::VABDhd:
    6714             :     case ARM::VABDhq:
    6715             :     case ARM::VABDsv16i8:
    6716             :     case ARM::VABDsv2i32:
    6717             :     case ARM::VABDsv4i16:
    6718             :     case ARM::VABDsv4i32:
    6719             :     case ARM::VABDsv8i16:
    6720             :     case ARM::VABDsv8i8:
    6721             :     case ARM::VABDuv16i8:
    6722             :     case ARM::VABDuv2i32:
    6723             :     case ARM::VABDuv4i16:
    6724             :     case ARM::VABDuv4i32:
    6725             :     case ARM::VABDuv8i16:
    6726             :     case ARM::VABDuv8i8:
    6727             :     case ARM::VACGEfd:
    6728             :     case ARM::VACGEfq:
    6729             :     case ARM::VACGEhd:
    6730             :     case ARM::VACGEhq:
    6731             :     case ARM::VACGTfd:
    6732             :     case ARM::VACGTfq:
    6733             :     case ARM::VACGThd:
    6734             :     case ARM::VACGThq:
    6735             :     case ARM::VADDHNv2i32:
    6736             :     case ARM::VADDHNv4i16:
    6737             :     case ARM::VADDHNv8i8:
    6738             :     case ARM::VADDLsv2i64:
    6739             :     case ARM::VADDLsv4i32:
    6740             :     case ARM::VADDLsv8i16:
    6741             :     case ARM::VADDLuv2i64:
    6742             :     case ARM::VADDLuv4i32:
    6743             :     case ARM::VADDLuv8i16:
    6744             :     case ARM::VADDWsv2i64:
    6745             :     case ARM::VADDWsv4i32:
    6746             :     case ARM::VADDWsv8i16:
    6747             :     case ARM::VADDWuv2i64:
    6748             :     case ARM::VADDWuv4i32:
    6749             :     case ARM::VADDWuv8i16:
    6750             :     case ARM::VADDfd:
    6751             :     case ARM::VADDfq:
    6752             :     case ARM::VADDhd:
    6753             :     case ARM::VADDhq:
    6754             :     case ARM::VADDv16i8:
    6755             :     case ARM::VADDv1i64:
    6756             :     case ARM::VADDv2i32:
    6757             :     case ARM::VADDv2i64:
    6758             :     case ARM::VADDv4i16:
    6759             :     case ARM::VADDv4i32:
    6760             :     case ARM::VADDv8i16:
    6761             :     case ARM::VADDv8i8:
    6762             :     case ARM::VANDd:
    6763             :     case ARM::VANDq:
    6764             :     case ARM::VBICd:
    6765             :     case ARM::VBICq:
    6766             :     case ARM::VCEQfd:
    6767             :     case ARM::VCEQfq:
    6768             :     case ARM::VCEQhd:
    6769             :     case ARM::VCEQhq:
    6770             :     case ARM::VCEQv16i8:
    6771             :     case ARM::VCEQv2i32:
    6772             :     case ARM::VCEQv4i16:
    6773             :     case ARM::VCEQv4i32:
    6774             :     case ARM::VCEQv8i16:
    6775             :     case ARM::VCEQv8i8:
    6776             :     case ARM::VCGEfd:
    6777             :     case ARM::VCGEfq:
    6778             :     case ARM::VCGEhd:
    6779             :     case ARM::VCGEhq:
    6780             :     case ARM::VCGEsv16i8:
    6781             :     case ARM::VCGEsv2i32:
    6782             :     case ARM::VCGEsv4i16:
    6783             :     case ARM::VCGEsv4i32:
    6784             :     case ARM::VCGEsv8i16:
    6785             :     case ARM::VCGEsv8i8:
    6786             :     case ARM::VCGEuv16i8:
    6787             :     case ARM::VCGEuv2i32:
    6788             :     case ARM::VCGEuv4i16:
    6789             :     case ARM::VCGEuv4i32:
    6790             :     case ARM::VCGEuv8i16:
    6791             :     case ARM::VCGEuv8i8:
    6792             :     case ARM::VCGTfd:
    6793             :     case ARM::VCGTfq:
    6794             :     case ARM::VCGThd:
    6795             :     case ARM::VCGThq:
    6796             :     case ARM::VCGTsv16i8:
    6797             :     case ARM::VCGTsv2i32:
    6798             :     case ARM::VCGTsv4i16:
    6799             :     case ARM::VCGTsv4i32:
    6800             :     case ARM::VCGTsv8i16:
    6801             :     case ARM::VCGTsv8i8:
    6802             :     case ARM::VCGTuv16i8:
    6803             :     case ARM::VCGTuv2i32:
    6804             :     case ARM::VCGTuv4i16:
    6805             :     case ARM::VCGTuv4i32:
    6806             :     case ARM::VCGTuv8i16:
    6807             :     case ARM::VCGTuv8i8:
    6808             :     case ARM::VEORd:
    6809             :     case ARM::VEORq:
    6810             :     case ARM::VHADDsv16i8:
    6811             :     case ARM::VHADDsv2i32:
    6812             :     case ARM::VHADDsv4i16:
    6813             :     case ARM::VHADDsv4i32:
    6814             :     case ARM::VHADDsv8i16:
    6815             :     case ARM::VHADDsv8i8:
    6816             :     case ARM::VHADDuv16i8:
    6817             :     case ARM::VHADDuv2i32:
    6818             :     case ARM::VHADDuv4i16:
    6819             :     case ARM::VHADDuv4i32:
    6820             :     case ARM::VHADDuv8i16:
    6821             :     case ARM::VHADDuv8i8:
    6822             :     case ARM::VHSUBsv16i8:
    6823             :     case ARM::VHSUBsv2i32:
    6824             :     case ARM::VHSUBsv4i16:
    6825             :     case ARM::VHSUBsv4i32:
    6826             :     case ARM::VHSUBsv8i16:
    6827             :     case ARM::VHSUBsv8i8:
    6828             :     case ARM::VHSUBuv16i8:
    6829             :     case ARM::VHSUBuv2i32:
    6830             :     case ARM::VHSUBuv4i16:
    6831             :     case ARM::VHSUBuv4i32:
    6832             :     case ARM::VHSUBuv8i16:
    6833             :     case ARM::VHSUBuv8i8:
    6834             :     case ARM::VMAXfd:
    6835             :     case ARM::VMAXfq:
    6836             :     case ARM::VMAXhd:
    6837             :     case ARM::VMAXhq:
    6838             :     case ARM::VMAXsv16i8:
    6839             :     case ARM::VMAXsv2i32:
    6840             :     case ARM::VMAXsv4i16:
    6841             :     case ARM::VMAXsv4i32:
    6842             :     case ARM::VMAXsv8i16:
    6843             :     case ARM::VMAXsv8i8:
    6844             :     case ARM::VMAXuv16i8:
    6845             :     case ARM::VMAXuv2i32:
    6846             :     case ARM::VMAXuv4i16:
    6847             :     case ARM::VMAXuv4i32:
    6848             :     case ARM::VMAXuv8i16:
    6849             :     case ARM::VMAXuv8i8:
    6850             :     case ARM::VMINfd:
    6851             :     case ARM::VMINfq:
    6852             :     case ARM::VMINhd:
    6853             :     case ARM::VMINhq:
    6854             :     case ARM::VMINsv16i8:
    6855             :     case ARM::VMINsv2i32:
    6856             :     case ARM::VMINsv4i16:
    6857             :     case ARM::VMINsv4i32:
    6858             :     case ARM::VMINsv8i16:
    6859             :     case ARM::VMINsv8i8:
    6860             :     case ARM::VMINuv16i8:
    6861             :     case ARM::VMINuv2i32:
    6862             :     case ARM::VMINuv4i16:
    6863             :     case ARM::VMINuv4i32:
    6864             :     case ARM::VMINuv8i16:
    6865             :     case ARM::VMINuv8i8:
    6866             :     case ARM::VMULLp64:
    6867             :     case ARM::VMULLp8:
    6868             :     case ARM::VMULLsv2i64:
    6869             :     case ARM::VMULLsv4i32:
    6870             :     case ARM::VMULLsv8i16:
    6871             :     case ARM::VMULLuv2i64:
    6872             :     case ARM::VMULLuv4i32:
    6873             :     case ARM::VMULLuv8i16:
    6874             :     case ARM::VMULfd:
    6875             :     case ARM::VMULfq:
    6876             :     case ARM::VMULhd:
    6877             :     case ARM::VMULhq:
    6878             :     case ARM::VMULpd:
    6879             :     case ARM::VMULpq:
    6880             :     case ARM::VMULv16i8:
    6881             :     case ARM::VMULv2i32:
    6882             :     case ARM::VMULv4i16:
    6883             :     case ARM::VMULv4i32:
    6884             :     case ARM::VMULv8i16:
    6885             :     case ARM::VMULv8i8:
    6886             :     case ARM::VORNd:
    6887             :     case ARM::VORNq:
    6888             :     case ARM::VORRd:
    6889             :     case ARM::VORRq:
    6890             :     case ARM::VPADDf:
    6891             :     case ARM::VPADDh:
    6892             :     case ARM::VPADDi16:
    6893             :     case ARM::VPADDi32:
    6894             :     case ARM::VPADDi8:
    6895             :     case ARM::VPMAXf:
    6896             :     case ARM::VPMAXh:
    6897             :     case ARM::VPMAXs16:
    6898             :     case ARM::VPMAXs32:
    6899             :     case ARM::VPMAXs8:
    6900             :     case ARM::VPMAXu16:
    6901             :     case ARM::VPMAXu32:
    6902             :     case ARM::VPMAXu8:
    6903             :     case ARM::VPMINf:
    6904             :     case ARM::VPMINh:
    6905             :     case ARM::VPMINs16:
    6906             :     case ARM::VPMINs32:
    6907             :     case ARM::VPMINs8:
    6908             :     case ARM::VPMINu16:
    6909             :     case ARM::VPMINu32:
    6910             :     case ARM::VPMINu8:
    6911             :     case ARM::VQADDsv16i8:
    6912             :     case ARM::VQADDsv1i64:
    6913             :     case ARM::VQADDsv2i32:
    6914             :     case ARM::VQADDsv2i64:
    6915             :     case ARM::VQADDsv4i16:
    6916             :     case ARM::VQADDsv4i32:
    6917             :     case ARM::VQADDsv8i16:
    6918             :     case ARM::VQADDsv8i8:
    6919             :     case ARM::VQADDuv16i8:
    6920             :     case ARM::VQADDuv1i64:
    6921             :     case ARM::VQADDuv2i32:
    6922             :     case ARM::VQADDuv2i64:
    6923             :     case ARM::VQADDuv4i16:
    6924             :     case ARM::VQADDuv4i32:
    6925             :     case ARM::VQADDuv8i16:
    6926             :     case ARM::VQADDuv8i8:
    6927             :     case ARM::VQDMULHv2i32:
    6928             :     case ARM::VQDMULHv4i16:
    6929             :     case ARM::VQDMULHv4i32:
    6930             :     case ARM::VQDMULHv8i16:
    6931             :     case ARM::VQDMULLv2i64:
    6932             :     case ARM::VQDMULLv4i32:
    6933             :     case ARM::VQRDMULHv2i32:
    6934             :     case ARM::VQRDMULHv4i16:
    6935             :     case ARM::VQRDMULHv4i32:
    6936             :     case ARM::VQRDMULHv8i16:
    6937             :     case ARM::VQSUBsv16i8:
    6938             :     case ARM::VQSUBsv1i64:
    6939             :     case ARM::VQSUBsv2i32:
    6940             :     case ARM::VQSUBsv2i64:
    6941             :     case ARM::VQSUBsv4i16:
    6942             :     case ARM::VQSUBsv4i32:
    6943             :     case ARM::VQSUBsv8i16:
    6944             :     case ARM::VQSUBsv8i8:
    6945             :     case ARM::VQSUBuv16i8:
    6946             :     case ARM::VQSUBuv1i64:
    6947             :     case ARM::VQSUBuv2i32:
    6948             :     case ARM::VQSUBuv2i64:
    6949             :     case ARM::VQSUBuv4i16:
    6950             :     case ARM::VQSUBuv4i32:
    6951             :     case ARM::VQSUBuv8i16:
    6952             :     case ARM::VQSUBuv8i8:
    6953             :     case ARM::VRADDHNv2i32:
    6954             :     case ARM::VRADDHNv4i16:
    6955             :     case ARM::VRADDHNv8i8:
    6956             :     case ARM::VRECPSfd:
    6957             :     case ARM::VRECPSfq:
    6958             :     case ARM::VRECPShd:
    6959             :     case ARM::VRECPShq:
    6960             :     case ARM::VRHADDsv16i8:
    6961             :     case ARM::VRHADDsv2i32:
    6962             :     case ARM::VRHADDsv4i16:
    6963             :     case ARM::VRHADDsv4i32:
    6964             :     case ARM::VRHADDsv8i16:
    6965             :     case ARM::VRHADDsv8i8:
    6966             :     case ARM::VRHADDuv16i8:
    6967             :     case ARM::VRHADDuv2i32:
    6968             :     case ARM::VRHADDuv4i16:
    6969             :     case ARM::VRHADDuv4i32:
    6970             :     case ARM::VRHADDuv8i16:
    6971             :     case ARM::VRHADDuv8i8:
    6972             :     case ARM::VRSQRTSfd:
    6973             :     case ARM::VRSQRTSfq:
    6974             :     case ARM::VRSQRTShd:
    6975             :     case ARM::VRSQRTShq:
    6976             :     case ARM::VRSUBHNv2i32:
    6977             :     case ARM::VRSUBHNv4i16:
    6978             :     case ARM::VRSUBHNv8i8:
    6979             :     case ARM::VSUBHNv2i32:
    6980             :     case ARM::VSUBHNv4i16:
    6981             :     case ARM::VSUBHNv8i8:
    6982             :     case ARM::VSUBLsv2i64:
    6983             :     case ARM::VSUBLsv4i32:
    6984             :     case ARM::VSUBLsv8i16:
    6985             :     case ARM::VSUBLuv2i64:
    6986             :     case ARM::VSUBLuv4i32:
    6987             :     case ARM::VSUBLuv8i16:
    6988             :     case ARM::VSUBWsv2i64:
    6989             :     case ARM::VSUBWsv4i32:
    6990             :     case ARM::VSUBWsv8i16:
    6991             :     case ARM::VSUBWuv2i64:
    6992             :     case ARM::VSUBWuv4i32:
    6993             :     case ARM::VSUBWuv8i16:
    6994             :     case ARM::VSUBfd:
    6995             :     case ARM::VSUBfq:
    6996             :     case ARM::VSUBhd:
    6997             :     case ARM::VSUBhq:
    6998             :     case ARM::VSUBv16i8:
    6999             :     case ARM::VSUBv1i64:
    7000             :     case ARM::VSUBv2i32:
    7001             :     case ARM::VSUBv2i64:
    7002             :     case ARM::VSUBv4i16:
    7003             :     case ARM::VSUBv4i32:
    7004             :     case ARM::VSUBv8i16:
    7005             :     case ARM::VSUBv8i8:
    7006             :     case ARM::VTBL1:
    7007             :     case ARM::VTBL2:
    7008             :     case ARM::VTBL3:
    7009             :     case ARM::VTBL4:
    7010             :     case ARM::VTSTv16i8:
    7011             :     case ARM::VTSTv2i32:
    7012             :     case ARM::VTSTv4i16:
    7013             :     case ARM::VTSTv4i32:
    7014             :     case ARM::VTSTv8i16:
    7015             :     case ARM::VTSTv8i8: {
    7016             :       // op: Vd
    7017         969 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7018         969 :       Value |= (op & UINT64_C(16)) << 18;
    7019         969 :       Value |= (op & UINT64_C(15)) << 12;
    7020             :       // op: Vn
    7021         969 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7022         969 :       Value |= (op & UINT64_C(15)) << 16;
    7023         969 :       Value |= (op & UINT64_C(16)) << 3;
    7024             :       // op: Vm
    7025         969 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7026         969 :       Value |= (op & UINT64_C(16)) << 1;
    7027         969 :       Value |= op & UINT64_C(15);
    7028         969 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7029         969 :       break;
    7030             :     }
    7031             :     case ARM::VMAXNMNDf:
    7032             :     case ARM::VMAXNMNDh:
    7033             :     case ARM::VMAXNMNQf:
    7034             :     case ARM::VMAXNMNQh:
    7035             :     case ARM::VMINNMNDf:
    7036             :     case ARM::VMINNMNDh:
    7037             :     case ARM::VMINNMNQf:
    7038             :     case ARM::VMINNMNQh: {
    7039             :       // op: Vd
    7040          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7041          24 :       Value |= (op & UINT64_C(16)) << 18;
    7042          24 :       Value |= (op & UINT64_C(15)) << 12;
    7043             :       // op: Vn
    7044          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7045          24 :       Value |= (op & UINT64_C(15)) << 16;
    7046          24 :       Value |= (op & UINT64_C(16)) << 3;
    7047             :       // op: Vm
    7048          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7049          24 :       Value |= (op & UINT64_C(16)) << 1;
    7050          24 :       Value |= op & UINT64_C(15);
    7051          24 :       Value = NEONThumb2V8PostEncoder(MI, Value, STI);
    7052          24 :       break;
    7053             :     }
    7054             :     case ARM::VMULLslsv2i32:
    7055             :     case ARM::VMULLsluv2i32:
    7056             :     case ARM::VMULslfd:
    7057             :     case ARM::VMULslfq:
    7058             :     case ARM::VMULslv2i32:
    7059             :     case ARM::VMULslv4i32:
    7060             :     case ARM::VQDMULHslv2i32:
    7061             :     case ARM::VQDMULHslv4i32:
    7062             :     case ARM::VQDMULLslv2i32:
    7063             :     case ARM::VQRDMULHslv2i32:
    7064             :     case ARM::VQRDMULHslv4i32: {
    7065             :       // op: Vd
    7066          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7067          16 :       Value |= (op & UINT64_C(16)) << 18;
    7068          16 :       Value |= (op & UINT64_C(15)) << 12;
    7069             :       // op: Vn
    7070          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7071          16 :       Value |= (op & UINT64_C(15)) << 16;
    7072          16 :       Value |= (op & UINT64_C(16)) << 3;
    7073             :       // op: Vm
    7074          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7075          16 :       Value |= op & UINT64_C(15);
    7076             :       // op: lane
    7077          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7078          16 :       Value |= (op & UINT64_C(1)) << 5;
    7079          16 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7080          16 :       break;
    7081             :     }
    7082             :     case ARM::VFMALQI:
    7083             :     case ARM::VFMSLQI: {
    7084             :       // op: Vd
    7085           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7086           8 :       Value |= (op & UINT64_C(16)) << 18;
    7087           8 :       Value |= (op & UINT64_C(15)) << 12;
    7088             :       // op: Vn
    7089           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7090           8 :       Value |= (op & UINT64_C(15)) << 16;
    7091           8 :       Value |= (op & UINT64_C(16)) << 3;
    7092             :       // op: Vm
    7093           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7094           8 :       Value |= op & UINT64_C(7);
    7095             :       // op: idx
    7096           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7097           8 :       Value |= (op & UINT64_C(2)) << 4;
    7098           8 :       Value |= (op & UINT64_C(1)) << 3;
    7099           8 :       break;
    7100             :     }
    7101             :     case ARM::VMULLslsv4i16:
    7102             :     case ARM::VMULLsluv4i16:
    7103             :     case ARM::VMULslhd:
    7104             :     case ARM::VMULslhq:
    7105             :     case ARM::VMULslv4i16:
    7106             :     case ARM::VMULslv8i16:
    7107             :     case ARM::VQDMULHslv4i16:
    7108             :     case ARM::VQDMULHslv8i16:
    7109             :     case ARM::VQDMULLslv4i16:
    7110             :     case ARM::VQRDMULHslv4i16:
    7111             :     case ARM::VQRDMULHslv8i16: {
    7112             :       // op: Vd
    7113          25 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7114          25 :       Value |= (op & UINT64_C(16)) << 18;
    7115          25 :       Value |= (op & UINT64_C(15)) << 12;
    7116             :       // op: Vn
    7117          25 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7118          25 :       Value |= (op & UINT64_C(15)) << 16;
    7119          25 :       Value |= (op & UINT64_C(16)) << 3;
    7120             :       // op: Vm
    7121          25 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7122          25 :       Value |= op & UINT64_C(7);
    7123             :       // op: lane
    7124          25 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7125          25 :       Value |= (op & UINT64_C(2)) << 4;
    7126          25 :       Value |= (op & UINT64_C(1)) << 3;
    7127          25 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7128          25 :       break;
    7129             :     }
    7130             :     case ARM::VFMALDI:
    7131             :     case ARM::VFMSLDI: {
    7132             :       // op: Vd
    7133           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7134           8 :       Value |= (op & UINT64_C(16)) << 18;
    7135           8 :       Value |= (op & UINT64_C(15)) << 12;
    7136             :       // op: Vn
    7137           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7138           8 :       Value |= (op & UINT64_C(30)) << 15;
    7139           8 :       Value |= (op & UINT64_C(1)) << 7;
    7140             :       // op: Vm
    7141           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7142           8 :       Value |= (op & UINT64_C(1)) << 5;
    7143           8 :       Value |= (op & UINT64_C(14)) >> 1;
    7144             :       // op: idx
    7145           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7146           8 :       Value |= (op & UINT64_C(1)) << 3;
    7147           8 :       break;
    7148             :     }
    7149             :     case ARM::VFMALD:
    7150             :     case ARM::VFMSLD: {
    7151             :       // op: Vd
    7152           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7153           8 :       Value |= (op & UINT64_C(16)) << 18;
    7154           8 :       Value |= (op & UINT64_C(15)) << 12;
    7155             :       // op: Vn
    7156           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7157           8 :       Value |= (op & UINT64_C(30)) << 15;
    7158           8 :       Value |= (op & UINT64_C(1)) << 7;
    7159             :       // op: Vm
    7160           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7161           8 :       Value |= (op & UINT64_C(1)) << 5;
    7162           8 :       Value |= (op & UINT64_C(30)) >> 1;
    7163           8 :       break;
    7164             :     }
    7165             :     case ARM::VQRSHLsv16i8:
    7166             :     case ARM::VQRSHLsv1i64:
    7167             :     case ARM::VQRSHLsv2i32:
    7168             :     case ARM::VQRSHLsv2i64:
    7169             :     case ARM::VQRSHLsv4i16:
    7170             :     case ARM::VQRSHLsv4i32:
    7171             :     case ARM::VQRSHLsv8i16:
    7172             :     case ARM::VQRSHLsv8i8:
    7173             :     case ARM::VQRSHLuv16i8:
    7174             :     case ARM::VQRSHLuv1i64:
    7175             :     case ARM::VQRSHLuv2i32:
    7176             :     case ARM::VQRSHLuv2i64:
    7177             :     case ARM::VQRSHLuv4i16:
    7178             :     case ARM::VQRSHLuv4i32:
    7179             :     case ARM::VQRSHLuv8i16:
    7180             :     case ARM::VQRSHLuv8i8:
    7181             :     case ARM::VQSHLsv16i8:
    7182             :     case ARM::VQSHLsv1i64:
    7183             :     case ARM::VQSHLsv2i32:
    7184             :     case ARM::VQSHLsv2i64:
    7185             :     case ARM::VQSHLsv4i16:
    7186             :     case ARM::VQSHLsv4i32:
    7187             :     case ARM::VQSHLsv8i16:
    7188             :     case ARM::VQSHLsv8i8:
    7189             :     case ARM::VQSHLuv16i8:
    7190             :     case ARM::VQSHLuv1i64:
    7191             :     case ARM::VQSHLuv2i32:
    7192             :     case ARM::VQSHLuv2i64:
    7193             :     case ARM::VQSHLuv4i16:
    7194             :     case ARM::VQSHLuv4i32:
    7195             :     case ARM::VQSHLuv8i16:
    7196             :     case ARM::VQSHLuv8i8:
    7197             :     case ARM::VRSHLsv16i8:
    7198             :     case ARM::VRSHLsv1i64:
    7199             :     case ARM::VRSHLsv2i32:
    7200             :     case ARM::VRSHLsv2i64:
    7201             :     case ARM::VRSHLsv4i16:
    7202             :     case ARM::VRSHLsv4i32:
    7203             :     case ARM::VRSHLsv8i16:
    7204             :     case ARM::VRSHLsv8i8:
    7205             :     case ARM::VRSHLuv16i8:
    7206             :     case ARM::VRSHLuv1i64:
    7207             :     case ARM::VRSHLuv2i32:
    7208             :     case ARM::VRSHLuv2i64:
    7209             :     case ARM::VRSHLuv4i16:
    7210             :     case ARM::VRSHLuv4i32:
    7211             :     case ARM::VRSHLuv8i16:
    7212             :     case ARM::VRSHLuv8i8:
    7213             :     case ARM::VSHLsv16i8:
    7214             :     case ARM::VSHLsv1i64:
    7215             :     case ARM::VSHLsv2i32:
    7216             :     case ARM::VSHLsv2i64:
    7217             :     case ARM::VSHLsv4i16:
    7218             :     case ARM::VSHLsv4i32:
    7219             :     case ARM::VSHLsv8i16:
    7220             :     case ARM::VSHLsv8i8:
    7221             :     case ARM::VSHLuv16i8:
    7222             :     case ARM::VSHLuv1i64:
    7223             :     case ARM::VSHLuv2i32:
    7224             :     case ARM::VSHLuv2i64:
    7225             :     case ARM::VSHLuv4i16:
    7226             :     case ARM::VSHLuv4i32:
    7227             :     case ARM::VSHLuv8i16:
    7228             :     case ARM::VSHLuv8i8: {
    7229             :       // op: Vd
    7230         144 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7231         144 :       Value |= (op & UINT64_C(16)) << 18;
    7232         144 :       Value |= (op & UINT64_C(15)) << 12;
    7233             :       // op: Vn
    7234         144 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7235         144 :       Value |= (op & UINT64_C(15)) << 16;
    7236         144 :       Value |= (op & UINT64_C(16)) << 3;
    7237             :       // op: Vm
    7238         144 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7239         144 :       Value |= (op & UINT64_C(16)) << 1;
    7240         144 :       Value |= op & UINT64_C(15);
    7241         144 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7242         144 :       break;
    7243             :     }
    7244             :     case ARM::VCMLAv2f32:
    7245             :     case ARM::VCMLAv4f16:
    7246             :     case ARM::VCMLAv4f32:
    7247             :     case ARM::VCMLAv8f16: {
    7248             :       // op: Vd
    7249          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7250          24 :       Value |= (op & UINT64_C(16)) << 18;
    7251          24 :       Value |= (op & UINT64_C(15)) << 12;
    7252             :       // op: Vn
    7253          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7254          24 :       Value |= (op & UINT64_C(15)) << 16;
    7255          24 :       Value |= (op & UINT64_C(16)) << 3;
    7256             :       // op: Vm
    7257          24 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7258          24 :       Value |= (op & UINT64_C(16)) << 1;
    7259          24 :       Value |= op & UINT64_C(15);
    7260             :       // op: rot
    7261          24 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7262          24 :       Value |= (op & UINT64_C(3)) << 23;
    7263          24 :       break;
    7264             :     }
    7265             :     case ARM::VCMLAv2f32_indexed:
    7266             :     case ARM::VCMLAv4f32_indexed: {
    7267             :       // op: Vd
    7268          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7269          20 :       Value |= (op & UINT64_C(16)) << 18;
    7270          20 :       Value |= (op & UINT64_C(15)) << 12;
    7271             :       // op: Vn
    7272          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7273          20 :       Value |= (op & UINT64_C(15)) << 16;
    7274          20 :       Value |= (op & UINT64_C(16)) << 3;
    7275             :       // op: Vm
    7276          20 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7277          20 :       Value |= (op & UINT64_C(16)) << 1;
    7278          20 :       Value |= op & UINT64_C(15);
    7279             :       // op: rot
    7280          20 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7281          20 :       Value |= (op & UINT64_C(3)) << 20;
    7282          20 :       break;
    7283             :     }
    7284             :     case ARM::SHA1C:
    7285             :     case ARM::SHA1M:
    7286             :     case ARM::SHA1P:
    7287             :     case ARM::SHA1SU0:
    7288             :     case ARM::SHA256H:
    7289             :     case ARM::SHA256H2:
    7290             :     case ARM::SHA256SU1:
    7291             :     case ARM::VABALsv2i64:
    7292             :     case ARM::VABALsv4i32:
    7293             :     case ARM::VABALsv8i16:
    7294             :     case ARM::VABALuv2i64:
    7295             :     case ARM::VABALuv4i32:
    7296             :     case ARM::VABALuv8i16:
    7297             :     case ARM::VABAsv16i8:
    7298             :     case ARM::VABAsv2i32:
    7299             :     case ARM::VABAsv4i16:
    7300             :     case ARM::VABAsv4i32:
    7301             :     case ARM::VABAsv8i16:
    7302             :     case ARM::VABAsv8i8:
    7303             :     case ARM::VABAuv16i8:
    7304             :     case ARM::VABAuv2i32:
    7305             :     case ARM::VABAuv4i16:
    7306             :     case ARM::VABAuv4i32:
    7307             :     case ARM::VABAuv8i16:
    7308             :     case ARM::VABAuv8i8:
    7309             :     case ARM::VBIFd:
    7310             :     case ARM::VBIFq:
    7311             :     case ARM::VBITd:
    7312             :     case ARM::VBITq:
    7313             :     case ARM::VBSLd:
    7314             :     case ARM::VBSLq:
    7315             :     case ARM::VFMAfd:
    7316             :     case ARM::VFMAfq:
    7317             :     case ARM::VFMAhd:
    7318             :     case ARM::VFMAhq:
    7319             :     case ARM::VFMSfd:
    7320             :     case ARM::VFMSfq:
    7321             :     case ARM::VFMShd:
    7322             :     case ARM::VFMShq:
    7323             :     case ARM::VMLALsv2i64:
    7324             :     case ARM::VMLALsv4i32:
    7325             :     case ARM::VMLALsv8i16:
    7326             :     case ARM::VMLALuv2i64:
    7327             :     case ARM::VMLALuv4i32:
    7328             :     case ARM::VMLALuv8i16:
    7329             :     case ARM::VMLAfd:
    7330             :     case ARM::VMLAfq:
    7331             :     case ARM::VMLAhd:
    7332             :     case ARM::VMLAhq:
    7333             :     case ARM::VMLAv16i8:
    7334             :     case ARM::VMLAv2i32:
    7335             :     case ARM::VMLAv4i16:
    7336             :     case ARM::VMLAv4i32:
    7337             :     case ARM::VMLAv8i16:
    7338             :     case ARM::VMLAv8i8:
    7339             :     case ARM::VMLSLsv2i64:
    7340             :     case ARM::VMLSLsv4i32:
    7341             :     case ARM::VMLSLsv8i16:
    7342             :     case ARM::VMLSLuv2i64:
    7343             :     case ARM::VMLSLuv4i32:
    7344             :     case ARM::VMLSLuv8i16:
    7345             :     case ARM::VMLSfd:
    7346             :     case ARM::VMLSfq:
    7347             :     case ARM::VMLShd:
    7348             :     case ARM::VMLShq:
    7349             :     case ARM::VMLSv16i8:
    7350             :     case ARM::VMLSv2i32:
    7351             :     case ARM::VMLSv4i16:
    7352             :     case ARM::VMLSv4i32:
    7353             :     case ARM::VMLSv8i16:
    7354             :     case ARM::VMLSv8i8:
    7355             :     case ARM::VQDMLALv2i64:
    7356             :     case ARM::VQDMLALv4i32:
    7357             :     case ARM::VQDMLSLv2i64:
    7358             :     case ARM::VQDMLSLv4i32:
    7359             :     case ARM::VQRDMLAHv2i32:
    7360             :     case ARM::VQRDMLAHv4i16:
    7361             :     case ARM::VQRDMLAHv4i32:
    7362             :     case ARM::VQRDMLAHv8i16:
    7363             :     case ARM::VQRDMLSHv2i32:
    7364             :     case ARM::VQRDMLSHv4i16:
    7365             :     case ARM::VQRDMLSHv4i32:
    7366             :     case ARM::VQRDMLSHv8i16:
    7367             :     case ARM::VTBX1:
    7368             :     case ARM::VTBX2:
    7369             :     case ARM::VTBX3:
    7370             :     case ARM::VTBX4: {
    7371             :       // op: Vd
    7372         185 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7373         185 :       Value |= (op & UINT64_C(16)) << 18;
    7374         185 :       Value |= (op & UINT64_C(15)) << 12;
    7375             :       // op: Vn
    7376         185 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7377         185 :       Value |= (op & UINT64_C(15)) << 16;
    7378         185 :       Value |= (op & UINT64_C(16)) << 3;
    7379             :       // op: Vm
    7380         185 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7381         185 :       Value |= (op & UINT64_C(16)) << 1;
    7382         185 :       Value |= op & UINT64_C(15);
    7383         185 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7384         185 :       break;
    7385             :     }
    7386             :     case ARM::VMLALslsv2i32:
    7387             :     case ARM::VMLALsluv2i32:
    7388             :     case ARM::VMLAslfd:
    7389             :     case ARM::VMLAslfq:
    7390             :     case ARM::VMLAslv2i32:
    7391             :     case ARM::VMLAslv4i32:
    7392             :     case ARM::VMLSLslsv2i32:
    7393             :     case ARM::VMLSLsluv2i32:
    7394             :     case ARM::VMLSslfd:
    7395             :     case ARM::VMLSslfq:
    7396             :     case ARM::VMLSslv2i32:
    7397             :     case ARM::VMLSslv4i32:
    7398             :     case ARM::VQDMLALslv2i32:
    7399             :     case ARM::VQDMLSLslv2i32:
    7400             :     case ARM::VQRDMLAHslv2i32:
    7401             :     case ARM::VQRDMLAHslv4i32:
    7402             :     case ARM::VQRDMLSHslv2i32:
    7403             :     case ARM::VQRDMLSHslv4i32: {
    7404             :       // op: Vd
    7405          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7406          11 :       Value |= (op & UINT64_C(16)) << 18;
    7407          11 :       Value |= (op & UINT64_C(15)) << 12;
    7408             :       // op: Vn
    7409          11 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7410          11 :       Value |= (op & UINT64_C(15)) << 16;
    7411          11 :       Value |= (op & UINT64_C(16)) << 3;
    7412             :       // op: Vm
    7413          11 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7414          11 :       Value |= op & UINT64_C(15);
    7415             :       // op: lane
    7416          11 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7417          11 :       Value |= (op & UINT64_C(1)) << 5;
    7418          11 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7419          11 :       break;
    7420             :     }
    7421             :     case ARM::VCMLAv4f16_indexed:
    7422             :     case ARM::VCMLAv8f16_indexed: {
    7423             :       // op: Vd
    7424           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7425           6 :       Value |= (op & UINT64_C(16)) << 18;
    7426           6 :       Value |= (op & UINT64_C(15)) << 12;
    7427             :       // op: Vn
    7428           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7429           6 :       Value |= (op & UINT64_C(15)) << 16;
    7430           6 :       Value |= (op & UINT64_C(16)) << 3;
    7431             :       // op: Vm
    7432           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7433           6 :       Value |= op & UINT64_C(15);
    7434             :       // op: rot
    7435           6 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7436           6 :       Value |= (op & UINT64_C(3)) << 20;
    7437             :       // op: lane
    7438           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7439           6 :       Value |= (op & UINT64_C(1)) << 5;
    7440           6 :       break;
    7441             :     }
    7442             :     case ARM::VMLALslsv4i16:
    7443             :     case ARM::VMLALsluv4i16:
    7444             :     case ARM::VMLAslhd:
    7445             :     case ARM::VMLAslhq:
    7446             :     case ARM::VMLAslv4i16:
    7447             :     case ARM::VMLAslv8i16:
    7448             :     case ARM::VMLSLslsv4i16:
    7449             :     case ARM::VMLSLsluv4i16:
    7450             :     case ARM::VMLSslhd:
    7451             :     case ARM::VMLSslhq:
    7452             :     case ARM::VMLSslv4i16:
    7453             :     case ARM::VMLSslv8i16:
    7454             :     case ARM::VQDMLALslv4i16:
    7455             :     case ARM::VQDMLSLslv4i16:
    7456             :     case ARM::VQRDMLAHslv4i16:
    7457             :     case ARM::VQRDMLAHslv8i16:
    7458             :     case ARM::VQRDMLSHslv4i16:
    7459             :     case ARM::VQRDMLSHslv8i16: {
    7460             :       // op: Vd
    7461          35 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7462          35 :       Value |= (op & UINT64_C(16)) << 18;
    7463          35 :       Value |= (op & UINT64_C(15)) << 12;
    7464             :       // op: Vn
    7465          35 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7466          35 :       Value |= (op & UINT64_C(15)) << 16;
    7467          35 :       Value |= (op & UINT64_C(16)) << 3;
    7468             :       // op: Vm
    7469          35 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7470          35 :       Value |= op & UINT64_C(7);
    7471             :       // op: lane
    7472          35 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7473          35 :       Value |= (op & UINT64_C(2)) << 4;
    7474          35 :       Value |= (op & UINT64_C(1)) << 3;
    7475          35 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7476          35 :       break;
    7477             :     }
    7478             :     case ARM::VSDOTD:
    7479             :     case ARM::VSDOTQ:
    7480             :     case ARM::VUDOTD:
    7481             :     case ARM::VUDOTQ: {
    7482             :       // op: Vd
    7483          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7484          24 :       Value |= (op & UINT64_C(16)) << 18;
    7485          24 :       Value |= (op & UINT64_C(15)) << 12;
    7486             :       // op: Vn
    7487          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7488          24 :       Value |= (op & UINT64_C(15)) << 16;
    7489          24 :       Value |= (op & UINT64_C(16)) << 3;
    7490             :       // op: Vm
    7491          24 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7492          24 :       Value |= (op & UINT64_C(16)) << 1;
    7493          24 :       Value |= op & UINT64_C(15);
    7494          24 :       break;
    7495             :     }
    7496             :     case ARM::VSDOTDI:
    7497             :     case ARM::VSDOTQI:
    7498             :     case ARM::VUDOTDI:
    7499             :     case ARM::VUDOTQI: {
    7500             :       // op: Vd
    7501          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7502          24 :       Value |= (op & UINT64_C(16)) << 18;
    7503          24 :       Value |= (op & UINT64_C(15)) << 12;
    7504             :       // op: Vn
    7505          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7506          24 :       Value |= (op & UINT64_C(15)) << 16;
    7507          24 :       Value |= (op & UINT64_C(16)) << 3;
    7508             :       // op: Vm
    7509          24 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7510          24 :       Value |= op & UINT64_C(15);
    7511             :       // op: lane
    7512          24 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7513          24 :       Value |= (op & UINT64_C(1)) << 5;
    7514          24 :       break;
    7515             :     }
    7516             :     case ARM::VST1LNd8: {
    7517             :       // op: Vd
    7518           2 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7519           2 :       Value |= (op & UINT64_C(16)) << 18;
    7520           2 :       Value |= (op & UINT64_C(15)) << 12;
    7521             :       // op: Rn
    7522           2 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7523           2 :       Value |= (op & UINT64_C(15)) << 16;
    7524             :       // op: lane
    7525           2 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7526           2 :       Value |= (op & UINT64_C(7)) << 5;
    7527           2 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7528           2 :       break;
    7529             :     }
    7530             :     case ARM::VST3LNd32:
    7531             :     case ARM::VST3LNq32: {
    7532             :       // op: Vd
    7533           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7534           6 :       Value |= (op & UINT64_C(16)) << 18;
    7535           6 :       Value |= (op & UINT64_C(15)) << 12;
    7536             :       // op: Rn
    7537           6 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7538           6 :       Value |= (op & UINT64_C(15)) << 16;
    7539             :       // op: lane
    7540           6 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7541           6 :       Value |= (op & UINT64_C(1)) << 7;
    7542           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7543           6 :       break;
    7544             :     }
    7545             :     case ARM::VST3LNd16:
    7546             :     case ARM::VST3LNq16: {
    7547             :       // op: Vd
    7548           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7549           6 :       Value |= (op & UINT64_C(16)) << 18;
    7550           6 :       Value |= (op & UINT64_C(15)) << 12;
    7551             :       // op: Rn
    7552           6 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7553           6 :       Value |= (op & UINT64_C(15)) << 16;
    7554             :       // op: lane
    7555           6 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7556           6 :       Value |= (op & UINT64_C(3)) << 6;
    7557           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7558           6 :       break;
    7559             :     }
    7560             :     case ARM::VST3LNd8: {
    7561             :       // op: Vd
    7562           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7563           3 :       Value |= (op & UINT64_C(16)) << 18;
    7564           3 :       Value |= (op & UINT64_C(15)) << 12;
    7565             :       // op: Rn
    7566           3 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7567           3 :       Value |= (op & UINT64_C(15)) << 16;
    7568             :       // op: lane
    7569           3 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7570           3 :       Value |= (op & UINT64_C(7)) << 5;
    7571           3 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7572           3 :       break;
    7573             :     }
    7574             :     case ARM::VST1LNd16: {
    7575             :       // op: Vd
    7576           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7577           3 :       Value |= (op & UINT64_C(16)) << 18;
    7578           3 :       Value |= (op & UINT64_C(15)) << 12;
    7579             :       // op: Rn
    7580           3 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7581           3 :       Value |= (op & UINT64_C(15)) << 16;
    7582           3 :       Value |= op & UINT64_C(16);
    7583             :       // op: lane
    7584           3 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7585           3 :       Value |= (op & UINT64_C(3)) << 6;
    7586           3 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7587           3 :       break;
    7588             :     }
    7589             :     case ARM::VST2LNd32:
    7590             :     case ARM::VST2LNq32: {
    7591             :       // op: Vd
    7592           9 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7593           9 :       Value |= (op & UINT64_C(16)) << 18;
    7594           9 :       Value |= (op & UINT64_C(15)) << 12;
    7595             :       // op: Rn
    7596           9 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7597           9 :       Value |= (op & UINT64_C(15)) << 16;
    7598           9 :       Value |= op & UINT64_C(16);
    7599             :       // op: lane
    7600           9 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7601           9 :       Value |= (op & UINT64_C(1)) << 7;
    7602           9 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7603           9 :       break;
    7604             :     }
    7605             :     case ARM::VST2LNd16:
    7606             :     case ARM::VST2LNq16: {
    7607             :       // op: Vd
    7608           5 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7609           5 :       Value |= (op & UINT64_C(16)) << 18;
    7610           5 :       Value |= (op & UINT64_C(15)) << 12;
    7611             :       // op: Rn
    7612           5 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7613           5 :       Value |= (op & UINT64_C(15)) << 16;
    7614           5 :       Value |= op & UINT64_C(16);
    7615             :       // op: lane
    7616           5 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7617           5 :       Value |= (op & UINT64_C(3)) << 6;
    7618           5 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7619           5 :       break;
    7620             :     }
    7621             :     case ARM::VST2LNd8: {
    7622             :       // op: Vd
    7623           5 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7624           5 :       Value |= (op & UINT64_C(16)) << 18;
    7625           5 :       Value |= (op & UINT64_C(15)) << 12;
    7626             :       // op: Rn
    7627           5 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7628           5 :       Value |= (op & UINT64_C(15)) << 16;
    7629           5 :       Value |= op & UINT64_C(16);
    7630             :       // op: lane
    7631           5 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7632           5 :       Value |= (op & UINT64_C(7)) << 5;
    7633           5 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7634           5 :       break;
    7635             :     }
    7636             :     case ARM::VST4LNd16:
    7637             :     case ARM::VST4LNq16: {
    7638             :       // op: Vd
    7639           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7640           8 :       Value |= (op & UINT64_C(16)) << 18;
    7641           8 :       Value |= (op & UINT64_C(15)) << 12;
    7642             :       // op: Rn
    7643           8 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7644           8 :       Value |= (op & UINT64_C(15)) << 16;
    7645           8 :       Value |= op & UINT64_C(16);
    7646             :       // op: lane
    7647           8 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7648           8 :       Value |= (op & UINT64_C(3)) << 6;
    7649           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7650           8 :       break;
    7651             :     }
    7652             :     case ARM::VST4LNd8: {
    7653             :       // op: Vd
    7654           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7655           4 :       Value |= (op & UINT64_C(16)) << 18;
    7656           4 :       Value |= (op & UINT64_C(15)) << 12;
    7657             :       // op: Rn
    7658           4 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7659           4 :       Value |= (op & UINT64_C(15)) << 16;
    7660           4 :       Value |= op & UINT64_C(16);
    7661             :       // op: lane
    7662           4 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7663           4 :       Value |= (op & UINT64_C(7)) << 5;
    7664           4 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7665           4 :       break;
    7666             :     }
    7667             :     case ARM::VST1d16:
    7668             :     case ARM::VST1d16T:
    7669             :     case ARM::VST1d32:
    7670             :     case ARM::VST1d32T:
    7671             :     case ARM::VST1d64:
    7672             :     case ARM::VST1d64T:
    7673             :     case ARM::VST1d8:
    7674             :     case ARM::VST1d8T:
    7675             :     case ARM::VST3d16:
    7676             :     case ARM::VST3d32:
    7677             :     case ARM::VST3d8:
    7678             :     case ARM::VST3q16:
    7679             :     case ARM::VST3q32:
    7680             :     case ARM::VST3q8: {
    7681             :       // op: Vd
    7682          49 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7683          49 :       Value |= (op & UINT64_C(16)) << 18;
    7684          49 :       Value |= (op & UINT64_C(15)) << 12;
    7685             :       // op: Rn
    7686          49 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7687          49 :       Value |= (op & UINT64_C(15)) << 16;
    7688          49 :       Value |= op & UINT64_C(16);
    7689          49 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7690          49 :       break;
    7691             :     }
    7692             :     case ARM::VST4LNd32:
    7693             :     case ARM::VST4LNq32: {
    7694             :       // op: Vd
    7695          13 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7696          13 :       Value |= (op & UINT64_C(16)) << 18;
    7697          13 :       Value |= (op & UINT64_C(15)) << 12;
    7698             :       // op: Rn
    7699          13 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7700          13 :       Value |= (op & UINT64_C(15)) << 16;
    7701          13 :       Value |= op & UINT64_C(48);
    7702             :       // op: lane
    7703          13 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7704          13 :       Value |= (op & UINT64_C(1)) << 7;
    7705          13 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7706          13 :       break;
    7707             :     }
    7708             :     case ARM::VST1d16Q:
    7709             :     case ARM::VST1d32Q:
    7710             :     case ARM::VST1d64Q:
    7711             :     case ARM::VST1d8Q:
    7712             :     case ARM::VST1q16:
    7713             :     case ARM::VST1q32:
    7714             :     case ARM::VST1q64:
    7715             :     case ARM::VST1q8:
    7716             :     case ARM::VST2b16:
    7717             :     case ARM::VST2b32:
    7718             :     case ARM::VST2b8:
    7719             :     case ARM::VST2d16:
    7720             :     case ARM::VST2d32:
    7721             :     case ARM::VST2d8:
    7722             :     case ARM::VST2q16:
    7723             :     case ARM::VST2q32:
    7724             :     case ARM::VST2q8:
    7725             :     case ARM::VST4d16:
    7726             :     case ARM::VST4d32:
    7727             :     case ARM::VST4d8:
    7728             :     case ARM::VST4q16:
    7729             :     case ARM::VST4q32:
    7730             :     case ARM::VST4q8: {
    7731             :       // op: Vd
    7732         113 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7733         113 :       Value |= (op & UINT64_C(16)) << 18;
    7734         113 :       Value |= (op & UINT64_C(15)) << 12;
    7735             :       // op: Rn
    7736         113 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7737         113 :       Value |= (op & UINT64_C(15)) << 16;
    7738         113 :       Value |= op & UINT64_C(48);
    7739         113 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7740         113 :       break;
    7741             :     }
    7742             :     case ARM::VST1LNd32: {
    7743             :       // op: Vd
    7744           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7745           3 :       Value |= (op & UINT64_C(16)) << 18;
    7746           3 :       Value |= (op & UINT64_C(15)) << 12;
    7747             :       // op: Rn
    7748           3 :       op = getAddrMode6OneLane32AddressOpValue(MI, 0, Fixups, STI);
    7749           3 :       Value |= (op & UINT64_C(15)) << 16;
    7750           3 :       Value |= op & UINT64_C(48);
    7751             :       // op: lane
    7752           3 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7753           3 :       Value |= (op & UINT64_C(1)) << 7;
    7754           3 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7755           3 :       break;
    7756             :     }
    7757             :     case ARM::VST1d16wb_fixed:
    7758             :     case ARM::VST1d32wb_fixed:
    7759             :     case ARM::VST1d64wb_fixed:
    7760             :     case ARM::VST1d8wb_fixed: {
    7761             :       // op: Vd
    7762          56 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7763          56 :       Value |= (op & UINT64_C(16)) << 18;
    7764          56 :       Value |= (op & UINT64_C(15)) << 12;
    7765             :       // op: Rn
    7766          56 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7767          56 :       Value |= (op & UINT64_C(15)) << 16;
    7768          56 :       Value |= op & UINT64_C(16);
    7769          56 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7770          56 :       break;
    7771             :     }
    7772             :     case ARM::VST1d16Qwb_fixed:
    7773             :     case ARM::VST1d16Twb_fixed:
    7774             :     case ARM::VST1d32Qwb_fixed:
    7775             :     case ARM::VST1d32Twb_fixed:
    7776             :     case ARM::VST1d64Qwb_fixed:
    7777             :     case ARM::VST1d64Twb_fixed:
    7778             :     case ARM::VST1d8Qwb_fixed:
    7779             :     case ARM::VST1d8Twb_fixed:
    7780             :     case ARM::VST1q16wb_fixed:
    7781             :     case ARM::VST1q32wb_fixed:
    7782             :     case ARM::VST1q64wb_fixed:
    7783             :     case ARM::VST1q8wb_fixed:
    7784             :     case ARM::VST2b16wb_fixed:
    7785             :     case ARM::VST2b32wb_fixed:
    7786             :     case ARM::VST2b8wb_fixed:
    7787             :     case ARM::VST2d16wb_fixed:
    7788             :     case ARM::VST2d32wb_fixed:
    7789             :     case ARM::VST2d8wb_fixed:
    7790             :     case ARM::VST2q16wb_fixed:
    7791             :     case ARM::VST2q32wb_fixed:
    7792             :     case ARM::VST2q8wb_fixed: {
    7793             :       // op: Vd
    7794          92 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7795          92 :       Value |= (op & UINT64_C(16)) << 18;
    7796          92 :       Value |= (op & UINT64_C(15)) << 12;
    7797             :       // op: Rn
    7798          92 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7799          92 :       Value |= (op & UINT64_C(15)) << 16;
    7800          92 :       Value |= op & UINT64_C(48);
    7801          92 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7802          92 :       break;
    7803             :     }
    7804             :     case ARM::VST1LNd8_UPD: {
    7805             :       // op: Vd
    7806          11 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7807          11 :       Value |= (op & UINT64_C(16)) << 18;
    7808          11 :       Value |= (op & UINT64_C(15)) << 12;
    7809             :       // op: Rn
    7810          11 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7811          11 :       Value |= (op & UINT64_C(15)) << 16;
    7812             :       // op: Rm
    7813             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7814          11 :       Value |= op & UINT64_C(15);
    7815             :       // op: lane
    7816          11 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7817          11 :       Value |= (op & UINT64_C(7)) << 5;
    7818          11 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7819          11 :       break;
    7820             :     }
    7821             :     case ARM::VST3LNd32_UPD:
    7822             :     case ARM::VST3LNq32_UPD: {
    7823             :       // op: Vd
    7824           8 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7825           8 :       Value |= (op & UINT64_C(16)) << 18;
    7826           8 :       Value |= (op & UINT64_C(15)) << 12;
    7827             :       // op: Rn
    7828           8 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7829           8 :       Value |= (op & UINT64_C(15)) << 16;
    7830             :       // op: Rm
    7831             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7832           8 :       Value |= op & UINT64_C(15);
    7833             :       // op: lane
    7834           8 :       op = getMachineOpValue(MI, MI.getOperand(7), Fixups, STI);
    7835           8 :       Value |= (op & UINT64_C(1)) << 7;
    7836           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7837           8 :       break;
    7838             :     }
    7839             :     case ARM::VST3LNd16_UPD:
    7840             :     case ARM::VST3LNq16_UPD: {
    7841             :       // op: Vd
    7842           8 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7843           8 :       Value |= (op & UINT64_C(16)) << 18;
    7844           8 :       Value |= (op & UINT64_C(15)) << 12;
    7845             :       // op: Rn
    7846           8 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7847           8 :       Value |= (op & UINT64_C(15)) << 16;
    7848             :       // op: Rm
    7849             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7850           8 :       Value |= op & UINT64_C(15);
    7851             :       // op: lane
    7852           8 :       op = getMachineOpValue(MI, MI.getOperand(7), Fixups, STI);
    7853           8 :       Value |= (op & UINT64_C(3)) << 6;
    7854           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7855           8 :       break;
    7856             :     }
    7857             :     case ARM::VST3LNd8_UPD: {
    7858             :       // op: Vd
    7859           4 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7860           4 :       Value |= (op & UINT64_C(16)) << 18;
    7861           4 :       Value |= (op & UINT64_C(15)) << 12;
    7862             :       // op: Rn
    7863           4 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7864           4 :       Value |= (op & UINT64_C(15)) << 16;
    7865             :       // op: Rm
    7866             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7867           4 :       Value |= op & UINT64_C(15);
    7868             :       // op: lane
    7869           4 :       op = getMachineOpValue(MI, MI.getOperand(7), Fixups, STI);
    7870           4 :       Value |= (op & UINT64_C(7)) << 5;
    7871           4 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7872           4 :       break;
    7873             :     }
    7874             :     case ARM::VST1LNd16_UPD: {
    7875             :       // op: Vd
    7876          17 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7877          17 :       Value |= (op & UINT64_C(16)) << 18;
    7878          17 :       Value |= (op & UINT64_C(15)) << 12;
    7879             :       // op: Rn
    7880          17 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7881          17 :       Value |= (op & UINT64_C(15)) << 16;
    7882          17 :       Value |= op & UINT64_C(16);
    7883             :       // op: Rm
    7884             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7885          17 :       Value |= op & UINT64_C(15);
    7886             :       // op: lane
    7887          17 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7888          17 :       Value |= (op & UINT64_C(3)) << 6;
    7889          17 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7890          17 :       break;
    7891             :     }
    7892             :     case ARM::VST2LNd32_UPD:
    7893             :     case ARM::VST2LNq32_UPD: {
    7894             :       // op: Vd
    7895          10 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7896          10 :       Value |= (op & UINT64_C(16)) << 18;
    7897          10 :       Value |= (op & UINT64_C(15)) << 12;
    7898             :       // op: Rn
    7899          10 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7900          10 :       Value |= (op & UINT64_C(15)) << 16;
    7901          10 :       Value |= op & UINT64_C(16);
    7902             :       // op: Rm
    7903             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7904          10 :       Value |= op & UINT64_C(15);
    7905             :       // op: lane
    7906          10 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7907          10 :       Value |= (op & UINT64_C(1)) << 7;
    7908          10 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7909          10 :       break;
    7910             :     }
    7911             :     case ARM::VST2LNd16_UPD:
    7912             :     case ARM::VST2LNq16_UPD: {
    7913             :       // op: Vd
    7914           2 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7915           2 :       Value |= (op & UINT64_C(16)) << 18;
    7916           2 :       Value |= (op & UINT64_C(15)) << 12;
    7917             :       // op: Rn
    7918           2 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7919           2 :       Value |= (op & UINT64_C(15)) << 16;
    7920           2 :       Value |= op & UINT64_C(16);
    7921             :       // op: Rm
    7922             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7923           2 :       Value |= op & UINT64_C(15);
    7924             :       // op: lane
    7925           2 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7926           2 :       Value |= (op & UINT64_C(3)) << 6;
    7927           2 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7928           2 :       break;
    7929             :     }
    7930             :     case ARM::VST2LNd8_UPD: {
    7931             :       // op: Vd
    7932           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7933           6 :       Value |= (op & UINT64_C(16)) << 18;
    7934           6 :       Value |= (op & UINT64_C(15)) << 12;
    7935             :       // op: Rn
    7936           6 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7937           6 :       Value |= (op & UINT64_C(15)) << 16;
    7938           6 :       Value |= op & UINT64_C(16);
    7939             :       // op: Rm
    7940             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7941           6 :       Value |= op & UINT64_C(15);
    7942             :       // op: lane
    7943           6 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7944           6 :       Value |= (op & UINT64_C(7)) << 5;
    7945           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7946           6 :       break;
    7947             :     }
    7948             :     case ARM::VST4LNd16_UPD:
    7949             :     case ARM::VST4LNq16_UPD: {
    7950             :       // op: Vd
    7951          13 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7952          13 :       Value |= (op & UINT64_C(16)) << 18;
    7953          13 :       Value |= (op & UINT64_C(15)) << 12;
    7954             :       // op: Rn
    7955          13 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7956          13 :       Value |= (op & UINT64_C(15)) << 16;
    7957          13 :       Value |= op & UINT64_C(16);
    7958             :       // op: Rm
    7959             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7960          13 :       Value |= op & UINT64_C(15);
    7961             :       // op: lane
    7962          13 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    7963          13 :       Value |= (op & UINT64_C(3)) << 6;
    7964          13 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7965          13 :       break;
    7966             :     }
    7967             :     case ARM::VST4LNd8_UPD: {
    7968             :       // op: Vd
    7969           7 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7970           7 :       Value |= (op & UINT64_C(16)) << 18;
    7971           7 :       Value |= (op & UINT64_C(15)) << 12;
    7972             :       // op: Rn
    7973           7 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7974           7 :       Value |= (op & UINT64_C(15)) << 16;
    7975           7 :       Value |= op & UINT64_C(16);
    7976             :       // op: Rm
    7977             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7978           7 :       Value |= op & UINT64_C(15);
    7979             :       // op: lane
    7980           7 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    7981           7 :       Value |= (op & UINT64_C(7)) << 5;
    7982           7 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7983           7 :       break;
    7984             :     }
    7985             :     case ARM::VST3d16_UPD:
    7986             :     case ARM::VST3d32_UPD:
    7987             :     case ARM::VST3d8_UPD:
    7988             :     case ARM::VST3q16_UPD:
    7989             :     case ARM::VST3q32_UPD:
    7990             :     case ARM::VST3q8_UPD: {
    7991             :       // op: Vd
    7992          42 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7993          42 :       Value |= (op & UINT64_C(16)) << 18;
    7994          42 :       Value |= (op & UINT64_C(15)) << 12;
    7995             :       // op: Rn
    7996          42 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7997          42 :       Value |= (op & UINT64_C(15)) << 16;
    7998          42 :       Value |= op & UINT64_C(16);
    7999             :       // op: Rm
    8000             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    8001          42 :       Value |= op & UINT64_C(15);
    8002          42 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    8003          42 :       break;
    8004             :     }
    8005             :     case ARM::VST1d16wb_register:
    8006             :     case ARM::VST1d32wb_register:
    8007             :     case ARM::VST1d64wb_register:
    8008             :     case ARM::VST1d8wb_register: {
    8009             :       // op: Vd
    8010           8 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    8011           8 :       Value |= (op & UINT64_C(16)) << 18;
    8012           8 :       Value |= (op & UINT64_C(15)) << 12;
    8013             :       // op: Rn
    8014           8 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    8015           8 :       Value |= (op & UINT64_C(15)) << 16;
    8016           8 :       Value |= op & UINT64_C(16);
    8017             :       // op: Rm
    8018           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    8019           8 :       Value |= op & UINT64_C(15);
    8020           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    8021           8 :       break;
    8022             :     }
    8023             :     case ARM::VST4LNd32_UPD:
    8024             :     case ARM::VST4LNq32_UPD: {
    8025             :       // op: Vd
    8026          29 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    8027          29 :       Value |= (op & UINT64_C(16)) << 18;
    8028          29 :       Value |= (op & UINT64_C(15)) << 12;
    8029             :       // op: Rn
    8030          29 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    8031          29 :       Value |= (op & UINT64_C(15)) << 16;
    8032          29 :       Value |= op & UINT64_C(48);
    8033             :       // op: Rm
    8034             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    8035          29 :       Value |= op & UINT64_C(15);
    8036             :       // op: lane
    8037          29 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    8038          29 :       Value |= (op & UINT64_C(1)) << 7;
    8039          29 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    8040          29 :       break;
    8041             :     }
    8042             :     case ARM::VST4d16_UPD:
    8043             :     case ARM::VST4d32_UPD:
    8044             :     case ARM::VST4d8_UPD:
    8045             :     case ARM::VST4q16_UPD:
    8046             :     case ARM::VST4q32_UPD:
    8047             :     case ARM::VST4q8_UPD: {
    8048             :       // op: Vd
    8049          66 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    8050          66 :       Value |= (op & UINT64_C(16)) << 18;
    8051          66 :       Value |= (op & UINT64_C(15)) << 12;
    8052             :       // op: Rn
    8053          66 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    8054          66 :       Value |= (op & UINT64_C(15)) << 16;
    8055          66 :       Value |= op & UINT64_C(48);
    8056             :       // op: Rm
    8057             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    8058          66 :       Value |= op & UINT64_C(15);
    8059          66 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    8060          66 :       break;
    8061             :     }
    8062             :     case ARM::VST1d16Qwb_register:
    8063             :     case ARM::VST1d16Twb_register:
    8064             :     case ARM::VST1d32Qwb_register:
    8065             :     case ARM::VST1d32Twb_register:
    8066             :     case ARM::VST1d64Qwb_register:
    8067             :     case ARM::VST1d64Twb_register:
    8068             :     case ARM::VST1d8Qwb_register:
    8069             :     case ARM::VST1d8Twb_register:
    8070             :     case ARM::VST1q16wb_register:
    8071             :     case ARM::VST1q32wb_register:
    8072             :     case ARM::VST1q64wb_register:
    8073             :     case ARM::VST1q8wb_register:
    8074             :     case ARM::VST2b16wb_register:
    8075             :     case ARM::VST2b32wb_register:
    8076             :     case ARM::VST2b8wb_register:
    8077             :     case ARM::VST2d16wb_register:
    8078             :     case ARM::VST2d32wb_register:
    8079             :     case ARM::VST2d8wb_register:
    8080             :     case ARM::VST2q16wb_register:
    8081             :     case ARM::VST2q32wb_register:
    8082             :     case ARM::VST2q8wb_register: {
    8083             :       // op: Vd
    8084          58 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    8085          58 :       Value |= (op & UINT64_C(16)) << 18;
    8086          58 :       Value |= (op & UINT64_C(15)) << 12;
    8087             :       // op: Rn
    8088          58 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    8089          58 :       Value |= (op & UINT64_C(15)) << 16;
    8090          58 :       Value |= op & UINT64_C(48);
    8091             :       // op: Rm
    8092          58 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    8093          58 :       Value |= op & UINT64_C(15);
    8094          58 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    8095          58 :       break;
    8096             :     }
    8097             :     case ARM::VST1LNd32_UPD: {
    8098             :       // op: Vd
    8099          10 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    8100          10 :       Value |= (op & UINT64_C(16)) << 18;
    8101          10 :       Value |= (op & UINT64_C(15)) << 12;
    8102             :       // op: Rn
    8103          10 :       op = getAddrMode6OneLane32AddressOpValue(MI, 1, Fixups, STI);
    8104          10 :       Value |= (op & UINT64_C(15)) << 16;
    8105          10 :       Value |= op & UINT64_C(48);
    8106             :       // op: Rm
    8107             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    8108          10 :       Value |= op & UINT64_C(15);
    8109             :       // op: lane
    8110          10 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    8111          10 :       Value |= (op & UINT64_C(1)) << 7;
    8112          10 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    8113          10 :       break;
    8114             :     }
    8115         360 :     case ARM::LDC2L_OFFSET:
    8116             :     case ARM::LDC2L_PRE:
    8117             :     case ARM::LDC2_OFFSET:
    8118             :     case ARM::LDC2_PRE:
    8119             :     case ARM::STC2L_OFFSET:
    8120             :     case ARM::STC2L_PRE:
    8121             :     case ARM::STC2_OFFSET:
    8122             :     case ARM::STC2_PRE:
    8123             :     case ARM::t2LDC2L_OFFSET:
    8124             :     case ARM::t2LDC2L_PRE:
    8125             :     case ARM::t2LDC2_OFFSET:
    8126             :     case ARM::t2LDC2_PRE:
    8127             :     case ARM::t2LDCL_OFFSET:
    8128             :     case ARM::t2LDCL_PRE:
    8129             :     case ARM::t2LDC_OFFSET:
    8130             :     case ARM::t2LDC_PRE:
    8131             :     case ARM::t2STC2L_OFFSET:
    8132             :     case ARM::t2STC2L_PRE:
    8133             :     case ARM::t2STC2_OFFSET:
    8134             :     case ARM::t2STC2_PRE:
    8135             :     case ARM::t2STCL_OFFSET:
    8136             :     case ARM::t2STCL_PRE:
    8137             :     case ARM::t2STC_OFFSET:
    8138             :     case ARM::t2STC_PRE: {
    8139             :       // op: addr
    8140         360 :       op = getAddrMode5OpValue(MI, 2, Fixups, STI);
    8141         360 :       Value |= (op & UINT64_C(256)) << 15;
    8142         360 :       Value |= (op & UINT64_C(7680)) << 7;
    8143         360 :       Value |= op & UINT64_C(255);
    8144             :       // op: cop
    8145         360 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8146         360 :       Value |= (op & UINT64_C(15)) << 8;
    8147             :       // op: CRd
    8148         360 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8149         360 :       Value |= (op & UINT64_C(15)) << 12;
    8150         360 :       break;
    8151             :     }
    8152          21 :     case ARM::t2PLDWi12:
    8153             :     case ARM::t2PLDi12:
    8154             :     case ARM::t2PLIi12: {
    8155             :       // op: addr
    8156          21 :       op = getAddrModeImm12OpValue(MI, 0, Fixups, STI);
    8157          21 :       Value |= (op & UINT64_C(122880)) << 3;
    8158          21 :       Value |= op & UINT64_C(4095);
    8159          21 :       break;
    8160             :     }
    8161           0 :     case ARM::PLDWi12:
    8162             :     case ARM::PLDi12:
    8163             :     case ARM::PLIi12: {
    8164             :       // op: addr
    8165           0 :       op = getAddrModeImm12OpValue(MI, 0, Fixups, STI);
    8166           0 :       Value |= (op & UINT64_C(4096)) << 11;
    8167           0 :       Value |= (op & UINT64_C(122880)) << 3;
    8168           0 :       Value |= op & UINT64_C(4095);
    8169           0 :       break;
    8170             :     }
    8171           4 :     case ARM::t2PLDpci:
    8172             :     case ARM::t2PLIpci: {
    8173             :       // op: addr
    8174           4 :       op = getAddrModeImm12OpValue(MI, 0, Fixups, STI);
    8175           4 :       Value |= (op & UINT64_C(4096)) << 11;
    8176           4 :       Value |= op & UINT64_C(4095);
    8177           4 :       break;
    8178             :     }
    8179             :     case ARM::t2LDAEXB:
    8180             :     case ARM::t2LDAEXH:
    8181             :     case ARM::t2LDREXB:
    8182             :     case ARM::t2LDREXH: {
    8183             :       // op: addr
    8184          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8185          20 :       Value |= (op & UINT64_C(15)) << 16;
    8186             :       // op: Rt
    8187          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8188          20 :       Value |= (op & UINT64_C(15)) << 12;
    8189          20 :       break;
    8190             :     }
    8191             :     case ARM::t2LDAEXD:
    8192             :     case ARM::t2LDREXD: {
    8193             :       // op: addr
    8194           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8195           8 :       Value |= (op & UINT64_C(15)) << 16;
    8196             :       // op: Rt
    8197           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8198           8 :       Value |= (op & UINT64_C(15)) << 12;
    8199             :       // op: Rt2
    8200           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8201           8 :       Value |= (op & UINT64_C(15)) << 8;
    8202           8 :       break;
    8203             :     }
    8204           6 :     case ARM::t2PLDWi8:
    8205             :     case ARM::t2PLDi8:
    8206             :     case ARM::t2PLIi8: {
    8207             :       // op: addr
    8208           6 :       op = getT2AddrModeImm8OpValue(MI, 0, Fixups, STI);
    8209           6 :       Value |= (op & UINT64_C(7680)) << 7;
    8210           6 :       Value |= op & UINT64_C(255);
    8211           6 :       break;
    8212             :     }
    8213          24 :     case ARM::t2PLDWs:
    8214             :     case ARM::t2PLDs:
    8215             :     case ARM::t2PLIs: {
    8216             :       // op: addr
    8217          24 :       op = getT2AddrModeSORegOpValue(MI, 0, Fixups, STI);
    8218          24 :       Value |= (op & UINT64_C(960)) << 10;
    8219          24 :       Value |= (op & UINT64_C(3)) << 4;
    8220          24 :       Value |= (op & UINT64_C(60)) >> 2;
    8221          24 :       break;
    8222             :     }
    8223             :     case ARM::t2MSRbanked: {
    8224             :       // op: banked
    8225          33 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8226          33 :       Value |= (op & UINT64_C(32)) << 15;
    8227          33 :       Value |= (op & UINT64_C(15)) << 8;
    8228          33 :       Value |= op & UINT64_C(16);
    8229             :       // op: Rn
    8230          33 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8231          33 :       Value |= (op & UINT64_C(15)) << 16;
    8232          33 :       break;
    8233             :     }
    8234             :     case ARM::t2MRSbanked: {
    8235             :       // op: banked
    8236          33 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8237          33 :       Value |= (op & UINT64_C(32)) << 15;
    8238          33 :       Value |= (op & UINT64_C(15)) << 16;
    8239          33 :       Value |= op & UINT64_C(16);
    8240             :       // op: Rd
    8241          33 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8242          33 :       Value |= (op & UINT64_C(15)) << 8;
    8243          33 :       break;
    8244             :     }
    8245             :     case ARM::t2IT: {
    8246             :       // op: cc
    8247        2769 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8248        2769 :       Value |= (op & UINT64_C(15)) << 4;
    8249             :       // op: mask
    8250        2769 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8251        2769 :       Value |= op & UINT64_C(15);
    8252        2769 :       break;
    8253             :     }
    8254             :     case ARM::tADDrSPi: {
    8255             :       // op: dst
    8256         495 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8257         495 :       Value |= (op & UINT64_C(7)) << 8;
    8258             :       // op: imm
    8259         495 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8260         495 :       Value |= op & UINT64_C(255);
    8261         495 :       break;
    8262             :     }
    8263             :     case ARM::BX: {
    8264             :       // op: dst
    8265           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8266           0 :       Value |= op & UINT64_C(15);
    8267           0 :       break;
    8268             :     }
    8269             :     case ARM::tPICADD: {
    8270             :       // op: dst
    8271           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8272           0 :       Value |= op & UINT64_C(7);
    8273           0 :       break;
    8274             :     }
    8275             :     case ARM::tSETEND: {
    8276             :       // op: end
    8277          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8278          11 :       Value |= (op & UINT64_C(1)) << 3;
    8279          11 :       break;
    8280             :     }
    8281             :     case ARM::SETEND: {
    8282             :       // op: end
    8283          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8284          11 :       Value |= (op & UINT64_C(1)) << 9;
    8285          11 :       break;
    8286             :     }
    8287         709 :     case ARM::BL: {
    8288             :       // op: func
    8289         709 :       op = getARMBLTargetOpValue(MI, 0, Fixups, STI);
    8290         709 :       Value |= op & UINT64_C(16777215);
    8291         709 :       break;
    8292             :     }
    8293             :     case ARM::t2BXJ: {
    8294             :       // op: func
    8295          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8296          10 :       Value |= (op & UINT64_C(15)) << 16;
    8297          10 :       break;
    8298             :     }
    8299             :     case ARM::BLX: {
    8300             :       // op: func
    8301          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8302          20 :       Value |= op & UINT64_C(15);
    8303          20 :       break;
    8304             :     }
    8305             :     case ARM::tBLXNSr:
    8306             :     case ARM::tBLXr: {
    8307             :       // op: func
    8308          42 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8309          42 :       Value |= (op & UINT64_C(15)) << 3;
    8310          42 :       break;
    8311             :     }
    8312         981 :     case ARM::tBL: {
    8313             :       // op: func
    8314         981 :       op = getThumbBLTargetOpValue(MI, 2, Fixups, STI);
    8315         981 :       Value |= (op & UINT64_C(8388608)) << 3;
    8316         981 :       Value |= (op & UINT64_C(2095104)) << 5;
    8317         981 :       Value |= (op & UINT64_C(4194304)) >> 9;
    8318         981 :       Value |= (op & UINT64_C(2097152)) >> 10;
    8319         981 :       Value |= op & UINT64_C(2047);
    8320         981 :       break;
    8321             :     }
    8322          33 :     case ARM::tBLXi: {
    8323             :       // op: func
    8324          33 :       op = getThumbBLXTargetOpValue(MI, 2, Fixups, STI);
    8325          33 :       Value |= (op & UINT64_C(8388608)) << 3;
    8326          33 :       Value |= (op & UINT64_C(2095104)) << 5;
    8327          33 :       Value |= (op & UINT64_C(4194304)) >> 9;
    8328          33 :       Value |= (op & UINT64_C(2097152)) >> 10;
    8329          33 :       Value |= op & UINT64_C(2046);
    8330          33 :       break;
    8331             :     }
    8332             :     case ARM::t2SETPAN: {
    8333             :       // op: imm
    8334           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8335           2 :       Value |= (op & UINT64_C(1)) << 3;
    8336           2 :       break;
    8337             :     }
    8338             :     case ARM::SETPAN: {
    8339             :       // op: imm
    8340           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8341           2 :       Value |= (op & UINT64_C(1)) << 9;
    8342           2 :       break;
    8343             :     }
    8344             :     case ARM::tHINT: {
    8345             :       // op: imm
    8346         162 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8347         162 :       Value |= (op & UINT64_C(15)) << 4;
    8348         162 :       break;
    8349             :     }
    8350             :     case ARM::HVC: {
    8351             :       // op: imm
    8352           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8353           4 :       Value |= (op & UINT64_C(65520)) << 4;
    8354           4 :       Value |= op & UINT64_C(15);
    8355           4 :       break;
    8356             :     }
    8357             :     case ARM::t2HINT:
    8358             :     case ARM::t2SUBS_PC_LR:
    8359             :     case ARM::tSVC: {
    8360             :       // op: imm
    8361          64 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8362          64 :       Value |= op & UINT64_C(255);
    8363          64 :       break;
    8364             :     }
    8365             :     case ARM::tADDspi:
    8366             :     case ARM::tSUBspi: {
    8367             :       // op: imm
    8368         510 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8369         510 :       Value |= op & UINT64_C(127);
    8370         510 :       break;
    8371             :     }
    8372             :     case ARM::t2HVC:
    8373             :     case ARM::t2UDF: {
    8374             :       // op: imm16
    8375          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8376          10 :       Value |= (op & UINT64_C(61440)) << 4;
    8377          10 :       Value |= op & UINT64_C(4095);
    8378          10 :       break;
    8379             :     }
    8380             :     case ARM::UDF: {
    8381             :       // op: imm16
    8382           1 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8383           1 :       Value |= (op & UINT64_C(65520)) << 4;
    8384           1 :       Value |= op & UINT64_C(15);
    8385           1 :       break;
    8386             :     }
    8387             :     case ARM::tUDF: {
    8388             :       // op: imm8
    8389           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8390           2 :       Value |= op & UINT64_C(255);
    8391           2 :       break;
    8392             :     }
    8393             :     case ARM::tCPS: {
    8394             :       // op: imod
    8395          17 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8396          17 :       Value |= (op & UINT64_C(1)) << 4;
    8397             :       // op: iflags
    8398          17 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8399          17 :       Value |= op & UINT64_C(7);
    8400          17 :       break;
    8401             :     }
    8402             :     case ARM::CPS2p: {
    8403             :       // op: imod
    8404           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8405           4 :       Value |= (op & UINT64_C(3)) << 18;
    8406             :       // op: iflags
    8407           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8408           4 :       Value |= (op & UINT64_C(7)) << 6;
    8409           4 :       break;
    8410             :     }
    8411             :     case ARM::CPS3p: {
    8412             :       // op: imod
    8413           5 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8414           5 :       Value |= (op & UINT64_C(3)) << 18;
    8415             :       // op: iflags
    8416           5 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8417           5 :       Value |= (op & UINT64_C(7)) << 6;
    8418             :       // op: mode
    8419           5 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8420           5 :       Value |= op & UINT64_C(31);
    8421           5 :       break;
    8422             :     }
    8423             :     case ARM::t2CPS2p: {
    8424             :       // op: imod
    8425           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8426           4 :       Value |= (op & UINT64_C(3)) << 9;
    8427             :       // op: iflags
    8428           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8429           4 :       Value |= (op & UINT64_C(7)) << 5;
    8430           4 :       break;
    8431             :     }
    8432             :     case ARM::t2CPS3p: {
    8433             :       // op: imod
    8434          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8435          12 :       Value |= (op & UINT64_C(3)) << 9;
    8436             :       // op: iflags
    8437          12 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8438          12 :       Value |= (op & UINT64_C(7)) << 5;
    8439             :       // op: mode
    8440          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8441          12 :       Value |= op & UINT64_C(31);
    8442          12 :       break;
    8443             :     }
    8444             :     case ARM::t2MSR_AR: {
    8445             :       // op: mask
    8446          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8447          31 :       Value |= (op & UINT64_C(16)) << 16;
    8448          31 :       Value |= (op & UINT64_C(15)) << 8;
    8449             :       // op: Rn
    8450          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8451          31 :       Value |= (op & UINT64_C(15)) << 16;
    8452          31 :       break;
    8453             :     }
    8454             :     case ARM::CPS1p:
    8455             :     case ARM::SRSDA:
    8456             :     case ARM::SRSDA_UPD:
    8457             :     case ARM::SRSDB:
    8458             :     case ARM::SRSDB_UPD:
    8459             :     case ARM::SRSIA:
    8460             :     case ARM::SRSIA_UPD:
    8461             :     case ARM::SRSIB:
    8462             :     case ARM::SRSIB_UPD:
    8463             :     case ARM::t2CPS1p:
    8464             :     case ARM::t2SRSDB:
    8465             :     case ARM::t2SRSDB_UPD:
    8466             :     case ARM::t2SRSIA:
    8467             :     case ARM::t2SRSIA_UPD: {
    8468             :       // op: mode
    8469         122 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8470         122 :       Value |= op & UINT64_C(31);
    8471         122 :       break;
    8472             :     }
    8473             :     case ARM::LDC2L_POST:
    8474             :     case ARM::LDC2_POST:
    8475             :     case ARM::STC2L_POST:
    8476             :     case ARM::STC2_POST:
    8477             :     case ARM::t2LDC2L_POST:
    8478             :     case ARM::t2LDC2_POST:
    8479             :     case ARM::t2LDCL_POST:
    8480             :     case ARM::t2LDC_POST:
    8481             :     case ARM::t2STC2L_POST:
    8482             :     case ARM::t2STC2_POST:
    8483             :     case ARM::t2STCL_POST:
    8484             :     case ARM::t2STC_POST: {
    8485             :       // op: offset
    8486         176 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    8487         176 :       Value |= (op & UINT64_C(256)) << 15;
    8488         176 :       Value |= op & UINT64_C(255);
    8489             :       // op: addr
    8490         176 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8491         176 :       Value |= (op & UINT64_C(15)) << 16;
    8492             :       // op: cop
    8493         176 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8494         176 :       Value |= (op & UINT64_C(15)) << 8;
    8495             :       // op: CRd
    8496         176 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8497         176 :       Value |= (op & UINT64_C(15)) << 12;
    8498         176 :       break;
    8499             :     }
    8500             :     case ARM::CDP2:
    8501             :     case ARM::t2CDP:
    8502             :     case ARM::t2CDP2: {
    8503             :       // op: opc1
    8504          23 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8505          23 :       Value |= (op & UINT64_C(15)) << 20;
    8506             :       // op: CRn
    8507          23 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    8508          23 :       Value |= (op & UINT64_C(15)) << 16;
    8509             :       // op: CRd
    8510          23 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8511          23 :       Value |= (op & UINT64_C(15)) << 12;
    8512             :       // op: cop
    8513          23 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8514          23 :       Value |= (op & UINT64_C(15)) << 8;
    8515             :       // op: opc2
    8516          23 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    8517          23 :       Value |= (op & UINT64_C(7)) << 5;
    8518             :       // op: CRm
    8519          23 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    8520          23 :       Value |= op & UINT64_C(15);
    8521          23 :       break;
    8522             :     }
    8523             :     case ARM::t2SMC: {
    8524             :       // op: opt
    8525           3 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8526           3 :       Value |= (op & UINT64_C(15)) << 16;
    8527           3 :       break;
    8528             :     }
    8529             :     case ARM::DMB:
    8530             :     case ARM::DSB:
    8531             :     case ARM::ISB:
    8532             :     case ARM::t2DBG:
    8533             :     case ARM::t2DMB:
    8534             :     case ARM::t2DSB:
    8535             :     case ARM::t2ISB: {
    8536             :       // op: opt
    8537         312 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8538         312 :       Value |= op & UINT64_C(15);
    8539         312 :       break;
    8540             :     }
    8541             :     case ARM::LDC2L_OPTION:
    8542             :     case ARM::LDC2_OPTION:
    8543             :     case ARM::STC2L_OPTION:
    8544             :     case ARM::STC2_OPTION:
    8545             :     case ARM::t2LDC2L_OPTION:
    8546             :     case ARM::t2LDC2_OPTION:
    8547             :     case ARM::t2LDCL_OPTION:
    8548             :     case ARM::t2LDC_OPTION:
    8549             :     case ARM::t2STC2L_OPTION:
    8550             :     case ARM::t2STC2_OPTION:
    8551             :     case ARM::t2STCL_OPTION:
    8552             :     case ARM::t2STC_OPTION: {
    8553             :       // op: option
    8554          88 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    8555          88 :       Value |= op & UINT64_C(255);
    8556             :       // op: addr
    8557          88 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8558          88 :       Value |= (op & UINT64_C(15)) << 16;
    8559             :       // op: cop
    8560          88 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8561          88 :       Value |= (op & UINT64_C(15)) << 8;
    8562             :       // op: CRd
    8563          88 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8564          88 :       Value |= (op & UINT64_C(15)) << 12;
    8565          88 :       break;
    8566             :     }
    8567             :     case ARM::BX_RET:
    8568             :     case ARM::ERET:
    8569             :     case ARM::MOVPCLR: {
    8570             :       // op: p
    8571         358 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8572         358 :       Value |= (op & UINT64_C(15)) << 28;
    8573         358 :       break;
    8574             :     }
    8575             :     case ARM::FMSTAT: {
    8576             :       // op: p
    8577          49 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8578          49 :       Value |= (op & UINT64_C(15)) << 28;
    8579          49 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8580          49 :       break;
    8581             :     }
    8582             :     case ARM::t2Bcc: {
    8583             :       // op: p
    8584         113 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8585         113 :       Value |= (op & UINT64_C(15)) << 22;
    8586             :       // op: target
    8587         113 :       op = getBranchTargetOpValue(MI, 0, Fixups, STI);
    8588         113 :       Value |= (op & UINT64_C(1048576)) << 6;
    8589         113 :       Value |= (op & UINT64_C(258048)) << 4;
    8590         113 :       Value |= (op & UINT64_C(262144)) >> 5;
    8591         113 :       Value |= (op & UINT64_C(524288)) >> 8;
    8592         113 :       Value |= (op & UINT64_C(4094)) >> 1;
    8593         113 :       break;
    8594             :     }
    8595             :     case ARM::VCMPEZD:
    8596             :     case ARM::VCMPZD: {
    8597             :       // op: p
    8598           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8599           2 :       Value |= (op & UINT64_C(15)) << 28;
    8600             :       // op: Dd
    8601           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8602           2 :       Value |= (op & UINT64_C(16)) << 18;
    8603           2 :       Value |= (op & UINT64_C(15)) << 12;
    8604           2 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8605           2 :       break;
    8606             :     }
    8607             :     case ARM::MRS:
    8608             :     case ARM::MRSsys: {
    8609             :       // op: p
    8610           7 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8611           7 :       Value |= (op & UINT64_C(15)) << 28;
    8612             :       // op: Rd
    8613           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8614           7 :       Value |= (op & UINT64_C(15)) << 12;
    8615           7 :       break;
    8616             :     }
    8617             :     case ARM::VLDMSIA:
    8618             :     case ARM::VSTMSIA: {
    8619             :       // op: p
    8620           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8621           4 :       Value |= (op & UINT64_C(15)) << 28;
    8622             :       // op: Rn
    8623           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8624           4 :       Value |= (op & UINT64_C(15)) << 16;
    8625             :       // op: regs
    8626           4 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    8627           4 :       Value |= (op & UINT64_C(256)) << 14;
    8628           4 :       Value |= (op & UINT64_C(7680)) << 3;
    8629           4 :       Value |= op & UINT64_C(255);
    8630           4 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8631           4 :       break;
    8632             :     }
    8633             :     case ARM::FLDMXIA:
    8634             :     case ARM::FSTMXIA: {
    8635             :       // op: p
    8636           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8637           2 :       Value |= (op & UINT64_C(15)) << 28;
    8638             :       // op: Rn
    8639           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8640           2 :       Value |= (op & UINT64_C(15)) << 16;
    8641             :       // op: regs
    8642           2 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    8643           2 :       Value |= (op & UINT64_C(3840)) << 4;
    8644           2 :       Value |= op & UINT64_C(254);
    8645           2 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8646           2 :       break;
    8647             :     }
    8648             :     case ARM::VLDMDIA:
    8649             :     case ARM::VSTMDIA: {
    8650             :       // op: p
    8651           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8652           6 :       Value |= (op & UINT64_C(15)) << 28;
    8653             :       // op: Rn
    8654           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8655           6 :       Value |= (op & UINT64_C(15)) << 16;
    8656             :       // op: regs
    8657           6 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    8658           6 :       Value |= (op & UINT64_C(4096)) << 10;
    8659           6 :       Value |= (op & UINT64_C(3840)) << 4;
    8660           6 :       Value |= op & UINT64_C(254);
    8661           6 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8662           6 :       break;
    8663             :     }
    8664             :     case ARM::VLLDM:
    8665             :     case ARM::VLSTM: {
    8666             :       // op: p
    8667           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8668           4 :       Value |= (op & UINT64_C(15)) << 28;
    8669             :       // op: Rn
    8670           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8671           4 :       Value |= (op & UINT64_C(15)) << 16;
    8672           4 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8673           4 :       break;
    8674             :     }
    8675             :     case ARM::VMRS:
    8676             :     case ARM::VMRS_FPEXC:
    8677             :     case ARM::VMRS_FPINST:
    8678             :     case ARM::VMRS_FPINST2:
    8679             :     case ARM::VMRS_FPSID:
    8680             :     case ARM::VMRS_MVFR0:
    8681             :     case ARM::VMRS_MVFR1:
    8682             :     case ARM::VMRS_MVFR2: {
    8683             :       // op: p
    8684         107 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8685         107 :       Value |= (op & UINT64_C(15)) << 28;
    8686             :       // op: Rt
    8687         107 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8688         107 :       Value |= (op & UINT64_C(15)) << 12;
    8689         107 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8690         107 :       break;
    8691             :     }
    8692             :     case ARM::VCMPEZH:
    8693             :     case ARM::VCMPEZS:
    8694             :     case ARM::VCMPZH:
    8695             :     case ARM::VCMPZS: {
    8696             :       // op: p
    8697          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8698          10 :       Value |= (op & UINT64_C(15)) << 28;
    8699             :       // op: Sd
    8700          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8701          10 :       Value |= (op & UINT64_C(1)) << 22;
    8702          10 :       Value |= (op & UINT64_C(30)) << 11;
    8703          10 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8704          10 :       break;
    8705             :     }
    8706             :     case ARM::BX_pred: {
    8707             :       // op: p
    8708          18 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8709          18 :       Value |= (op & UINT64_C(15)) << 28;
    8710             :       // op: dst
    8711          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8712          18 :       Value |= op & UINT64_C(15);
    8713          18 :       break;
    8714             :     }
    8715             :     case ARM::BL_pred: {
    8716             :       // op: p
    8717          83 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8718          83 :       Value |= (op & UINT64_C(15)) << 28;
    8719             :       // op: func
    8720          83 :       op = getARMBLTargetOpValue(MI, 0, Fixups, STI);
    8721          83 :       Value |= op & UINT64_C(16777215);
    8722          83 :       break;
    8723             :     }
    8724             :     case ARM::BLX_pred:
    8725             :     case ARM::BXJ: {
    8726             :       // op: p
    8727          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8728          10 :       Value |= (op & UINT64_C(15)) << 28;
    8729             :       // op: func
    8730          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8731          10 :       Value |= op & UINT64_C(15);
    8732          10 :       break;
    8733             :     }
    8734             :     case ARM::HINT: {
    8735             :       // op: p
    8736          82 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8737          82 :       Value |= (op & UINT64_C(15)) << 28;
    8738             :       // op: imm
    8739          82 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8740          82 :       Value |= op & UINT64_C(255);
    8741          82 :       break;
    8742             :     }
    8743             :     case ARM::DBG:
    8744             :     case ARM::SMC: {
    8745             :       // op: p
    8746          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8747          10 :       Value |= (op & UINT64_C(15)) << 28;
    8748             :       // op: opt
    8749          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8750          10 :       Value |= op & UINT64_C(15);
    8751          10 :       break;
    8752             :     }
    8753             :     case ARM::LDMDA:
    8754             :     case ARM::LDMDB:
    8755             :     case ARM::LDMIA:
    8756             :     case ARM::LDMIB:
    8757             :     case ARM::STMDA:
    8758             :     case ARM::STMDB:
    8759             :     case ARM::STMIA:
    8760             :     case ARM::STMIB:
    8761             :     case ARM::sysLDMDA:
    8762             :     case ARM::sysLDMDB:
    8763             :     case ARM::sysLDMIA:
    8764             :     case ARM::sysLDMIB:
    8765             :     case ARM::sysSTMDA:
    8766             :     case ARM::sysSTMDB:
    8767             :     case ARM::sysSTMIA:
    8768             :     case ARM::sysSTMIB: {
    8769             :       // op: p
    8770         164 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8771         164 :       Value |= (op & UINT64_C(15)) << 28;
    8772             :       // op: regs
    8773         164 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    8774         164 :       Value |= op & UINT64_C(65535);
    8775             :       // op: Rn
    8776         164 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8777         164 :       Value |= (op & UINT64_C(15)) << 16;
    8778         164 :       break;
    8779             :     }
    8780             :     case ARM::VMSR:
    8781             :     case ARM::VMSR_FPEXC:
    8782             :     case ARM::VMSR_FPINST:
    8783             :     case ARM::VMSR_FPINST2:
    8784             :     case ARM::VMSR_FPSID: {
    8785             :       // op: p
    8786          86 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8787          86 :       Value |= (op & UINT64_C(15)) << 28;
    8788             :       // op: src
    8789          86 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8790          86 :       Value |= (op & UINT64_C(15)) << 12;
    8791          86 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8792          86 :       break;
    8793             :     }
    8794             :     case ARM::SVC: {
    8795             :       // op: p
    8796           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8797           8 :       Value |= (op & UINT64_C(15)) << 28;
    8798             :       // op: svc
    8799           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8800           8 :       Value |= op & UINT64_C(16777215);
    8801           8 :       break;
    8802             :     }
    8803             :     case ARM::Bcc: {
    8804             :       // op: p
    8805         234 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8806         234 :       Value |= (op & UINT64_C(15)) << 28;
    8807             :       // op: target
    8808         234 :       op = getARMBranchTargetOpValue(MI, 0, Fixups, STI);
    8809         234 :       Value |= op & UINT64_C(16777215);
    8810         234 :       break;
    8811             :     }
    8812             :     case ARM::tBcc: {
    8813             :       // op: p
    8814         220 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8815         220 :       Value |= (op & UINT64_C(15)) << 8;
    8816             :       // op: target
    8817         220 :       op = getThumbBCCTargetOpValue(MI, 0, Fixups, STI);
    8818         220 :       Value |= op & UINT64_C(255);
    8819         220 :       break;
    8820             :     }
    8821             :     case ARM::VABSD:
    8822             :     case ARM::VCMPD:
    8823             :     case ARM::VCMPED:
    8824             :     case ARM::VMOVD:
    8825             :     case ARM::VNEGD:
    8826             :     case ARM::VRINTRD:
    8827             :     case ARM::VRINTXD:
    8828             :     case ARM::VRINTZD:
    8829             :     case ARM::VSQRTD: {
    8830             :       // op: p
    8831         126 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8832         126 :       Value |= (op & UINT64_C(15)) << 28;
    8833             :       // op: Dd
    8834         126 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8835         126 :       Value |= (op & UINT64_C(16)) << 18;
    8836         126 :       Value |= (op & UINT64_C(15)) << 12;
    8837             :       // op: Dm
    8838         126 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8839         126 :       Value |= (op & UINT64_C(16)) << 1;
    8840         126 :       Value |= op & UINT64_C(15);
    8841         126 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8842         126 :       break;
    8843             :     }
    8844             :     case ARM::VCVTBHD:
    8845             :     case ARM::VCVTTHD:
    8846             :     case ARM::VSITOD:
    8847             :     case ARM::VUITOD: {
    8848             :       // op: p
    8849          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8850          20 :       Value |= (op & UINT64_C(15)) << 28;
    8851             :       // op: Dd
    8852          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8853          20 :       Value |= (op & UINT64_C(16)) << 18;
    8854          20 :       Value |= (op & UINT64_C(15)) << 12;
    8855             :       // op: Sm
    8856          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8857          20 :       Value |= (op & UINT64_C(1)) << 5;
    8858          20 :       Value |= (op & UINT64_C(30)) >> 1;
    8859          20 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8860          20 :       break;
    8861             :     }
    8862             :     case ARM::FCONSTD: {
    8863             :       // op: p
    8864          10 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8865          10 :       Value |= (op & UINT64_C(15)) << 28;
    8866             :       // op: Dd
    8867          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8868          10 :       Value |= (op & UINT64_C(16)) << 18;
    8869          10 :       Value |= (op & UINT64_C(15)) << 12;
    8870             :       // op: imm
    8871          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8872          10 :       Value |= (op & UINT64_C(240)) << 12;
    8873          10 :       Value |= op & UINT64_C(15);
    8874          10 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8875          10 :       break;
    8876             :     }
    8877             :     case ARM::VCVTBDH:
    8878             :     case ARM::VCVTTDH: {
    8879             :       // op: p
    8880          17 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8881          17 :       Value |= (op & UINT64_C(15)) << 28;
    8882             :       // op: Dm
    8883          17 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8884          17 :       Value |= (op & UINT64_C(16)) << 1;
    8885          17 :       Value |= op & UINT64_C(15);
    8886             :       // op: Sd
    8887          17 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8888          17 :       Value |= (op & UINT64_C(1)) << 22;
    8889          17 :       Value |= (op & UINT64_C(30)) << 11;
    8890          17 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8891          17 :       break;
    8892             :     }
    8893             :     case ARM::CLZ:
    8894             :     case ARM::RBIT:
    8895             :     case ARM::REV:
    8896             :     case ARM::REV16:
    8897             :     case ARM::REVSH: {
    8898             :       // op: p
    8899          27 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8900          27 :       Value |= (op & UINT64_C(15)) << 28;
    8901             :       // op: Rd
    8902          27 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8903          27 :       Value |= (op & UINT64_C(15)) << 12;
    8904             :       // op: Rm
    8905          27 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8906          27 :       Value |= op & UINT64_C(15);
    8907          27 :       break;
    8908             :     }
    8909             :     case ARM::MOVi16: {
    8910             :       // op: p
    8911         269 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8912         269 :       Value |= (op & UINT64_C(15)) << 28;
    8913             :       // op: Rd
    8914         269 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8915         269 :       Value |= (op & UINT64_C(15)) << 12;
    8916             :       // op: imm
    8917         269 :       op = getHiLo16ImmOpValue(MI, 1, Fixups, STI);
    8918         269 :       Value |= (op & UINT64_C(61440)) << 4;
    8919         269 :       Value |= op & UINT64_C(4095);
    8920         269 :       break;
    8921             :     }
    8922             :     case ARM::ADR: {
    8923             :       // op: p
    8924          30 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8925          30 :       Value |= (op & UINT64_C(15)) << 28;
    8926             :       // op: Rd
    8927          30 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8928          30 :       Value |= (op & UINT64_C(15)) << 12;
    8929             :       // op: label
    8930          30 :       op = getAdrLabelOpValue(MI, 1, Fixups, STI);
    8931          30 :       Value |= (op & UINT64_C(12288)) << 10;
    8932          30 :       Value |= op & UINT64_C(4095);
    8933          30 :       break;
    8934             :     }
    8935             :     case ARM::CMNzrr:
    8936             :     case ARM::CMPrr:
    8937             :     case ARM::TEQrr:
    8938             :     case ARM::TSTrr: {
    8939             :       // op: p
    8940          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8941          24 :       Value |= (op & UINT64_C(15)) << 28;
    8942             :       // op: Rn
    8943          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8944          24 :       Value |= (op & UINT64_C(15)) << 16;
    8945             :       // op: Rm
    8946          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8947          24 :       Value |= op & UINT64_C(15);
    8948          24 :       break;
    8949             :     }
    8950             :     case ARM::CMNri:
    8951             :     case ARM::CMPri:
    8952             :     case ARM::TEQri:
    8953             :     case ARM::TSTri: {
    8954             :       // op: p
    8955         106 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8956         106 :       Value |= (op & UINT64_C(15)) << 28;
    8957             :       // op: Rn
    8958         106 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8959         106 :       Value |= (op & UINT64_C(15)) << 16;
    8960             :       // op: imm
    8961         106 :       op = getModImmOpValue(MI, 1, Fixups, STI);
    8962         106 :       Value |= op & UINT64_C(4095);
    8963         106 :       break;
    8964             :     }
    8965             :     case ARM::VLDMSDB_UPD:
    8966             :     case ARM::VLDMSIA_UPD:
    8967             :     case ARM::VSTMSDB_UPD:
    8968             :     case ARM::VSTMSIA_UPD: {
    8969             :       // op: p
    8970           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8971           8 :       Value |= (op & UINT64_C(15)) << 28;
    8972             :       // op: Rn
    8973           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8974           8 :       Value |= (op & UINT64_C(15)) << 16;
    8975             :       // op: regs
    8976           8 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    8977           8 :       Value |= (op & UINT64_C(256)) << 14;
    8978           8 :       Value |= (op & UINT64_C(7680)) << 3;
    8979           8 :       Value |= op & UINT64_C(255);
    8980           8 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8981           8 :       break;
    8982             :     }
    8983             :     case ARM::FLDMXDB_UPD:
    8984             :     case ARM::FLDMXIA_UPD:
    8985             :     case ARM::FSTMXDB_UPD:
    8986             :     case ARM::FSTMXIA_UPD: {
    8987             :       // op: p
    8988           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8989           4 :       Value |= (op & UINT64_C(15)) << 28;
    8990             :       // op: Rn
    8991           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8992           4 :       Value |= (op & UINT64_C(15)) << 16;
    8993             :       // op: regs
    8994           4 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    8995           4 :       Value |= (op & UINT64_C(3840)) << 4;
    8996           4 :       Value |= op & UINT64_C(254);
    8997           4 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8998           4 :       break;
    8999             :     }
    9000             :     case ARM::VLDMDDB_UPD:
    9001             :     case ARM::VLDMDIA_UPD:
    9002             :     case ARM::VSTMDDB_UPD:
    9003             :     case ARM::VSTMDIA_UPD: {
    9004             :       // op: p
    9005          42 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9006          42 :       Value |= (op & UINT64_C(15)) << 28;
    9007             :       // op: Rn
    9008          42 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9009          42 :       Value |= (op & UINT64_C(15)) << 16;
    9010             :       // op: regs
    9011          42 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    9012          42 :       Value |= (op & UINT64_C(4096)) << 10;
    9013          42 :       Value |= (op & UINT64_C(3840)) << 4;
    9014          42 :       Value |= op & UINT64_C(254);
    9015          42 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9016          42 :       break;
    9017             :     }
    9018             :     case ARM::VMOVRH:
    9019             :     case ARM::VMOVRS: {
    9020             :       // op: p
    9021         172 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9022         172 :       Value |= (op & UINT64_C(15)) << 28;
    9023             :       // op: Rt
    9024         172 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9025         172 :       Value |= (op & UINT64_C(15)) << 12;
    9026             :       // op: Sn
    9027         172 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9028         172 :       Value |= (op & UINT64_C(30)) << 15;
    9029         172 :       Value |= (op & UINT64_C(1)) << 7;
    9030         172 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9031         172 :       break;
    9032             :     }
    9033             :     case ARM::LDA:
    9034             :     case ARM::LDAB:
    9035             :     case ARM::LDAEX:
    9036             :     case ARM::LDAEXB:
    9037             :     case ARM::LDAEXD:
    9038             :     case ARM::LDAEXH:
    9039             :     case ARM::LDAH:
    9040             :     case ARM::LDREX:
    9041             :     case ARM::LDREXB:
    9042             :     case ARM::LDREXD:
    9043             :     case ARM::LDREXH: {
    9044             :       // op: p
    9045          27 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9046          27 :       Value |= (op & UINT64_C(15)) << 28;
    9047             :       // op: Rt
    9048          27 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9049          27 :       Value |= (op & UINT64_C(15)) << 12;
    9050             :       // op: addr
    9051          27 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9052          27 :       Value |= (op & UINT64_C(15)) << 16;
    9053          27 :       break;
    9054             :     }
    9055             :     case ARM::STL:
    9056             :     case ARM::STLB:
    9057             :     case ARM::STLH: {
    9058             :       // op: p
    9059           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9060           6 :       Value |= (op & UINT64_C(15)) << 28;
    9061             :       // op: Rt
    9062           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9063           6 :       Value |= op & UINT64_C(15);
    9064             :       // op: addr
    9065           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9066           6 :       Value |= (op & UINT64_C(15)) << 16;
    9067           6 :       break;
    9068             :     }
    9069             :     case ARM::VCVTSD:
    9070             :     case ARM::VJCVT:
    9071             :     case ARM::VTOSIRD:
    9072             :     case ARM::VTOSIZD:
    9073             :     case ARM::VTOUIRD:
    9074             :     case ARM::VTOUIZD: {
    9075             :       // op: p
    9076          10 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9077          10 :       Value |= (op & UINT64_C(15)) << 28;
    9078             :       // op: Sd
    9079          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9080          10 :       Value |= (op & UINT64_C(1)) << 22;
    9081          10 :       Value |= (op & UINT64_C(30)) << 11;
    9082             :       // op: Dm
    9083          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9084          10 :       Value |= (op & UINT64_C(16)) << 1;
    9085          10 :       Value |= op & UINT64_C(15);
    9086          10 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9087          10 :       break;
    9088             :     }
    9089             :     case ARM::VABSH:
    9090             :     case ARM::VABSS:
    9091             :     case ARM::VCMPEH:
    9092             :     case ARM::VCMPES:
    9093             :     case ARM::VCMPH:
    9094             :     case ARM::VCMPS:
    9095             :     case ARM::VCVTBHS:
    9096             :     case ARM::VCVTBSH:
    9097             :     case ARM::VCVTTHS:
    9098             :     case ARM::VCVTTSH:
    9099             :     case ARM::VMOVS:
    9100             :     case ARM::VNEGH:
    9101             :     case ARM::VNEGS:
    9102             :     case ARM::VRINTRH:
    9103             :     case ARM::VRINTRS:
    9104             :     case ARM::VRINTXH:
    9105             :     case ARM::VRINTXS:
    9106             :     case ARM::VRINTZH:
    9107             :     case ARM::VRINTZS:
    9108             :     case ARM::VSITOH:
    9109             :     case ARM::VSITOS:
    9110             :     case ARM::VSQRTH:
    9111             :     case ARM::VSQRTS:
    9112             :     case ARM::VTOSIRH:
    9113             :     case ARM::VTOSIRS:
    9114             :     case ARM::VTOSIZH:
    9115             :     case ARM::VTOSIZS:
    9116             :     case ARM::VTOUIRH:
    9117             :     case ARM::VTOUIRS:
    9118             :     case ARM::VTOUIZH:
    9119             :     case ARM::VTOUIZS:
    9120             :     case ARM::VUITOH:
    9121             :     case ARM::VUITOS: {
    9122             :       // op: p
    9123         207 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9124         207 :       Value |= (op & UINT64_C(15)) << 28;
    9125             :       // op: Sd
    9126         207 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9127         207 :       Value |= (op & UINT64_C(1)) << 22;
    9128         207 :       Value |= (op & UINT64_C(30)) << 11;
    9129             :       // op: Sm
    9130         207 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9131         207 :       Value |= (op & UINT64_C(1)) << 5;
    9132         207 :       Value |= (op & UINT64_C(30)) >> 1;
    9133         207 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9134         207 :       break;
    9135             :     }
    9136             :     case ARM::FCONSTH:
    9137             :     case ARM::FCONSTS: {
    9138             :       // op: p
    9139          49 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9140          49 :       Value |= (op & UINT64_C(15)) << 28;
    9141             :       // op: Sd
    9142          49 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9143          49 :       Value |= (op & UINT64_C(1)) << 22;
    9144          49 :       Value |= (op & UINT64_C(30)) << 11;
    9145             :       // op: imm
    9146          49 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9147          49 :       Value |= (op & UINT64_C(240)) << 12;
    9148          49 :       Value |= op & UINT64_C(15);
    9149          49 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9150          49 :       break;
    9151             :     }
    9152             :     case ARM::VCVTDS: {
    9153             :       // op: p
    9154           2 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9155           2 :       Value |= (op & UINT64_C(15)) << 28;
    9156             :       // op: Sm
    9157           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9158           2 :       Value |= (op & UINT64_C(1)) << 5;
    9159           2 :       Value |= (op & UINT64_C(30)) >> 1;
    9160             :       // op: Dd
    9161           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9162           2 :       Value |= (op & UINT64_C(16)) << 18;
    9163           2 :       Value |= (op & UINT64_C(15)) << 12;
    9164           2 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9165           2 :       break;
    9166             :     }
    9167             :     case ARM::VMOVHR:
    9168             :     case ARM::VMOVSR: {
    9169             :       // op: p
    9170          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9171          24 :       Value |= (op & UINT64_C(15)) << 28;
    9172             :       // op: Sn
    9173          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9174          24 :       Value |= (op & UINT64_C(30)) << 15;
    9175          24 :       Value |= (op & UINT64_C(1)) << 7;
    9176             :       // op: Rt
    9177          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9178          24 :       Value |= (op & UINT64_C(15)) << 12;
    9179          24 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9180          24 :       break;
    9181             :     }
    9182             :     case ARM::MSRbanked: {
    9183             :       // op: p
    9184          33 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9185          33 :       Value |= (op & UINT64_C(15)) << 28;
    9186             :       // op: banked
    9187          33 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9188          33 :       Value |= (op & UINT64_C(32)) << 17;
    9189          33 :       Value |= (op & UINT64_C(15)) << 16;
    9190          33 :       Value |= (op & UINT64_C(16)) << 4;
    9191             :       // op: Rn
    9192          33 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9193          33 :       Value |= op & UINT64_C(15);
    9194          33 :       break;
    9195             :     }
    9196             :     case ARM::MRSbanked: {
    9197             :       // op: p
    9198          33 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9199          33 :       Value |= (op & UINT64_C(15)) << 28;
    9200             :       // op: banked
    9201          33 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9202          33 :       Value |= (op & UINT64_C(32)) << 17;
    9203          33 :       Value |= (op & UINT64_C(15)) << 16;
    9204          33 :       Value |= (op & UINT64_C(16)) << 4;
    9205             :       // op: Rd
    9206          33 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9207          33 :       Value |= (op & UINT64_C(15)) << 12;
    9208          33 :       break;
    9209             :     }
    9210             :     case ARM::MSR: {
    9211             :       // op: p
    9212          29 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9213          29 :       Value |= (op & UINT64_C(15)) << 28;
    9214             :       // op: mask
    9215          29 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9216          29 :       Value |= (op & UINT64_C(16)) << 18;
    9217          29 :       Value |= (op & UINT64_C(15)) << 16;
    9218             :       // op: Rn
    9219          29 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9220          29 :       Value |= op & UINT64_C(15);
    9221          29 :       break;
    9222             :     }
    9223             :     case ARM::MSRi: {
    9224             :       // op: p
    9225          46 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9226          46 :       Value |= (op & UINT64_C(15)) << 28;
    9227             :       // op: mask
    9228          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9229          46 :       Value |= (op & UINT64_C(16)) << 18;
    9230          46 :       Value |= (op & UINT64_C(15)) << 16;
    9231             :       // op: imm
    9232          46 :       op = getModImmOpValue(MI, 1, Fixups, STI);
    9233          46 :       Value |= op & UINT64_C(4095);
    9234          46 :       break;
    9235             :     }
    9236             :     case ARM::LDMDA_UPD:
    9237             :     case ARM::LDMDB_UPD:
    9238             :     case ARM::LDMIA_UPD:
    9239             :     case ARM::LDMIB_UPD:
    9240             :     case ARM::STMDA_UPD:
    9241             :     case ARM::STMDB_UPD:
    9242             :     case ARM::STMIA_UPD:
    9243             :     case ARM::STMIB_UPD:
    9244             :     case ARM::sysLDMDA_UPD:
    9245             :     case ARM::sysLDMDB_UPD:
    9246             :     case ARM::sysLDMIA_UPD:
    9247             :     case ARM::sysLDMIB_UPD:
    9248             :     case ARM::sysSTMDA_UPD:
    9249             :     case ARM::sysSTMDB_UPD:
    9250             :     case ARM::sysSTMIA_UPD:
    9251             :     case ARM::sysSTMIB_UPD: {
    9252             :       // op: p
    9253         457 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9254         457 :       Value |= (op & UINT64_C(15)) << 28;
    9255             :       // op: regs
    9256         457 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    9257         457 :       Value |= op & UINT64_C(65535);
    9258             :       // op: Rn
    9259         457 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9260         457 :       Value |= (op & UINT64_C(15)) << 16;
    9261         457 :       break;
    9262             :     }
    9263             :     case ARM::MOVr:
    9264             :     case ARM::MOVr_TC:
    9265             :     case ARM::MVNr: {
    9266             :       // op: p
    9267         808 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9268         808 :       Value |= (op & UINT64_C(15)) << 28;
    9269             :       // op: s
    9270         808 :       op = getCCOutOpValue(MI, 4, Fixups, STI);
    9271         808 :       Value |= (op & UINT64_C(1)) << 20;
    9272             :       // op: Rd
    9273         808 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9274         808 :       Value |= (op & UINT64_C(15)) << 12;
    9275             :       // op: Rm
    9276         808 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9277         808 :       Value |= op & UINT64_C(15);
    9278         808 :       break;
    9279             :     }
    9280             :     case ARM::MOVi:
    9281             :     case ARM::MVNi: {
    9282             :       // op: p
    9283         521 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9284         521 :       Value |= (op & UINT64_C(15)) << 28;
    9285             :       // op: s
    9286         521 :       op = getCCOutOpValue(MI, 4, Fixups, STI);
    9287         521 :       Value |= (op & UINT64_C(1)) << 20;
    9288             :       // op: Rd
    9289         521 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9290         521 :       Value |= (op & UINT64_C(15)) << 12;
    9291             :       // op: imm
    9292         521 :       op = getModImmOpValue(MI, 1, Fixups, STI);
    9293         521 :       Value |= op & UINT64_C(4095);
    9294         521 :       break;
    9295             :     }
    9296             :     case ARM::VADDD:
    9297             :     case ARM::VDIVD:
    9298             :     case ARM::VMULD:
    9299             :     case ARM::VNMULD:
    9300             :     case ARM::VSUBD: {
    9301             :       // op: p
    9302          10 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9303          10 :       Value |= (op & UINT64_C(15)) << 28;
    9304             :       // op: Dd
    9305          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9306          10 :       Value |= (op & UINT64_C(16)) << 18;
    9307          10 :       Value |= (op & UINT64_C(15)) << 12;
    9308             :       // op: Dn
    9309          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9310          10 :       Value |= (op & UINT64_C(15)) << 16;
    9311          10 :       Value |= (op & UINT64_C(16)) << 3;
    9312             :       // op: Dm
    9313          10 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9314          10 :       Value |= (op & UINT64_C(16)) << 1;
    9315          10 :       Value |= op & UINT64_C(15);
    9316          10 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9317          10 :       break;
    9318             :     }
    9319             :     case ARM::VLDRD:
    9320             :     case ARM::VSTRD: {
    9321             :       // op: p
    9322          15 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9323          15 :       Value |= (op & UINT64_C(15)) << 28;
    9324             :       // op: Dd
    9325          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9326          15 :       Value |= (op & UINT64_C(16)) << 18;
    9327          15 :       Value |= (op & UINT64_C(15)) << 12;
    9328             :       // op: addr
    9329          15 :       op = getAddrMode5OpValue(MI, 1, Fixups, STI);
    9330          15 :       Value |= (op & UINT64_C(256)) << 15;
    9331          15 :       Value |= (op & UINT64_C(7680)) << 7;
    9332          15 :       Value |= op & UINT64_C(255);
    9333          15 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9334          15 :       break;
    9335             :     }
    9336             :     case ARM::VMOVDRR: {
    9337             :       // op: p
    9338          15 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9339          15 :       Value |= (op & UINT64_C(15)) << 28;
    9340             :       // op: Dm
    9341          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9342          15 :       Value |= (op & UINT64_C(16)) << 1;
    9343          15 :       Value |= op & UINT64_C(15);
    9344             :       // op: Rt
    9345          15 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9346          15 :       Value |= (op & UINT64_C(15)) << 12;
    9347             :       // op: Rt2
    9348          15 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9349          15 :       Value |= (op & UINT64_C(15)) << 16;
    9350          15 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9351          15 :       break;
    9352             :     }
    9353             :     case ARM::VMOVRRD: {
    9354             :       // op: p
    9355           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9356           8 :       Value |= (op & UINT64_C(15)) << 28;
    9357             :       // op: Dm
    9358           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9359           8 :       Value |= (op & UINT64_C(16)) << 1;
    9360           8 :       Value |= op & UINT64_C(15);
    9361             :       // op: Rt
    9362           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9363           8 :       Value |= (op & UINT64_C(15)) << 12;
    9364             :       // op: Rt2
    9365           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9366           8 :       Value |= (op & UINT64_C(15)) << 16;
    9367           8 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9368           8 :       break;
    9369             :     }
    9370             :     case ARM::SXTB:
    9371             :     case ARM::SXTB16:
    9372             :     case ARM::SXTH:
    9373             :     case ARM::UXTB:
    9374             :     case ARM::UXTB16:
    9375             :     case ARM::UXTH: {
    9376             :       // op: p
    9377          60 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9378          60 :       Value |= (op & UINT64_C(15)) << 28;
    9379             :       // op: Rd
    9380          60 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9381          60 :       Value |= (op & UINT64_C(15)) << 12;
    9382             :       // op: Rm
    9383          60 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9384          60 :       Value |= op & UINT64_C(15);
    9385             :       // op: rot
    9386          60 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9387          60 :       Value |= (op & UINT64_C(3)) << 10;
    9388          60 :       break;
    9389             :     }
    9390             :     case ARM::SEL: {
    9391             :       // op: p
    9392           4 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9393           4 :       Value |= (op & UINT64_C(15)) << 28;
    9394             :       // op: Rd
    9395           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9396           4 :       Value |= (op & UINT64_C(15)) << 12;
    9397             :       // op: Rn
    9398           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9399           4 :       Value |= (op & UINT64_C(15)) << 16;
    9400             :       // op: Rm
    9401           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9402           4 :       Value |= op & UINT64_C(15);
    9403           4 :       break;
    9404             :     }
    9405             :     case ARM::BFC: {
    9406             :       // op: p
    9407          30 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9408          30 :       Value |= (op & UINT64_C(15)) << 28;
    9409             :       // op: Rd
    9410          30 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9411          30 :       Value |= (op & UINT64_C(15)) << 12;
    9412             :       // op: imm
    9413          30 :       op = getBitfieldInvertedMaskOpValue(MI, 2, Fixups, STI);
    9414          30 :       Value |= (op & UINT64_C(992)) << 11;
    9415          30 :       Value |= (op & UINT64_C(31)) << 7;
    9416          30 :       break;
    9417             :     }
    9418             :     case ARM::MOVTi16: {
    9419             :       // op: p
    9420         201 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9421         201 :       Value |= (op & UINT64_C(15)) << 28;
    9422             :       // op: Rd
    9423         201 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9424         201 :       Value |= (op & UINT64_C(15)) << 12;
    9425             :       // op: imm
    9426         201 :       op = getHiLo16ImmOpValue(MI, 2, Fixups, STI);
    9427         201 :       Value |= (op & UINT64_C(61440)) << 4;
    9428         201 :       Value |= op & UINT64_C(4095);
    9429         201 :       break;
    9430             :     }
    9431             :     case ARM::SSAT16:
    9432             :     case ARM::USAT16: {
    9433             :       // op: p
    9434          11 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9435          11 :       Value |= (op & UINT64_C(15)) << 28;
    9436             :       // op: Rd
    9437          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9438          11 :       Value |= (op & UINT64_C(15)) << 12;
    9439             :       // op: sat_imm
    9440          11 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9441          11 :       Value |= (op & UINT64_C(15)) << 16;
    9442             :       // op: Rn
    9443          11 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9444          11 :       Value |= op & UINT64_C(15);
    9445          11 :       break;
    9446             :     }
    9447             :     case ARM::SDIV:
    9448             :     case ARM::SMMUL:
    9449             :     case ARM::SMMULR:
    9450             :     case ARM::UDIV:
    9451             :     case ARM::USAD8: {
    9452             :       // op: p
    9453          26 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9454          26 :       Value |= (op & UINT64_C(15)) << 28;
    9455             :       // op: Rd
    9456          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9457          26 :       Value |= (op & UINT64_C(15)) << 16;
    9458             :       // op: Rn
    9459          26 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9460          26 :       Value |= op & UINT64_C(15);
    9461             :       // op: Rm
    9462          26 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9463          26 :       Value |= (op & UINT64_C(15)) << 8;
    9464          26 :       break;
    9465             :     }
    9466             :     case ARM::CMNzrsi:
    9467             :     case ARM::CMPrsi:
    9468             :     case ARM::TEQrsi:
    9469             :     case ARM::TSTrsi: {
    9470             :       // op: p
    9471          52 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9472          52 :       Value |= (op & UINT64_C(15)) << 28;
    9473             :       // op: Rn
    9474          52 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9475          52 :       Value |= (op & UINT64_C(15)) << 16;
    9476             :       // op: shift
    9477          52 :       op = getSORegImmOpValue(MI, 1, Fixups, STI);
    9478          52 :       Value |= op & UINT64_C(4064);
    9479          52 :       Value |= op & UINT64_C(15);
    9480          52 :       break;
    9481             :     }
    9482             :     case ARM::QADD16:
    9483             :     case ARM::QADD8:
    9484             :     case ARM::QASX:
    9485             :     case ARM::QSAX:
    9486             :     case ARM::QSUB16:
    9487             :     case ARM::QSUB8:
    9488             :     case ARM::SADD16:
    9489             :     case ARM::SADD8:
    9490             :     case ARM::SASX:
    9491             :     case ARM::SHADD16:
    9492             :     case ARM::SHADD8:
    9493             :     case ARM::SHASX:
    9494             :     case ARM::SHSAX:
    9495             :     case ARM::SHSUB16:
    9496             :     case ARM::SHSUB8:
    9497             :     case ARM::SSAX:
    9498             :     case ARM::SSUB16:
    9499             :     case ARM::SSUB8:
    9500             :     case ARM::UADD16:
    9501             :     case ARM::UADD8:
    9502             :     case ARM::UASX:
    9503             :     case ARM::UHADD16:
    9504             :     case ARM::UHADD8:
    9505             :     case ARM::UHASX:
    9506             :     case ARM::UHSAX:
    9507             :     case ARM::UHSUB16:
    9508             :     case ARM::UHSUB8:
    9509             :     case ARM::UQADD16:
    9510             :     case ARM::UQADD8:
    9511             :     case ARM::UQASX:
    9512             :     case ARM::UQSAX:
    9513             :     case ARM::UQSUB16:
    9514             :     case ARM::UQSUB8:
    9515             :     case ARM::USAX:
    9516             :     case ARM::USUB16:
    9517             :     case ARM::USUB8: {
    9518             :       // op: p
    9519         132 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9520         132 :       Value |= (op & UINT64_C(15)) << 28;
    9521             :       // op: Rn
    9522         132 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9523         132 :       Value |= (op & UINT64_C(15)) << 16;
    9524             :       // op: Rd
    9525         132 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9526         132 :       Value |= (op & UINT64_C(15)) << 12;
    9527             :       // op: Rm
    9528         132 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9529         132 :       Value |= op & UINT64_C(15);
    9530         132 :       break;
    9531             :     }
    9532             :     case ARM::SMUAD:
    9533             :     case ARM::SMUADX:
    9534             :     case ARM::SMULBB:
    9535             :     case ARM::SMULBT:
    9536             :     case ARM::SMULTB:
    9537             :     case ARM::SMULTT:
    9538             :     case ARM::SMULWB:
    9539             :     case ARM::SMULWT:
    9540             :     case ARM::SMUSD:
    9541             :     case ARM::SMUSDX: {
    9542             :       // op: p
    9543          36 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9544          36 :       Value |= (op & UINT64_C(15)) << 28;
    9545             :       // op: Rn
    9546          36 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9547          36 :       Value |= op & UINT64_C(15);
    9548             :       // op: Rm
    9549          36 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9550          36 :       Value |= (op & UINT64_C(15)) << 8;
    9551             :       // op: Rd
    9552          36 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9553          36 :       Value |= (op & UINT64_C(15)) << 16;
    9554          36 :       break;
    9555             :     }
    9556             :     case ARM::QADD:
    9557             :     case ARM::QDADD:
    9558             :     case ARM::QDSUB:
    9559             :     case ARM::QSUB: {
    9560             :       // op: p
    9561          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9562          16 :       Value |= (op & UINT64_C(15)) << 28;
    9563             :       // op: Rn
    9564          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9565          16 :       Value |= (op & UINT64_C(15)) << 16;
    9566             :       // op: Rd
    9567          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9568          16 :       Value |= (op & UINT64_C(15)) << 12;
    9569             :       // op: Rm
    9570          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9571          16 :       Value |= op & UINT64_C(15);
    9572          16 :       break;
    9573             :     }
    9574             :     case ARM::SWP:
    9575             :     case ARM::SWPB: {
    9576             :       // op: p
    9577           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9578           6 :       Value |= (op & UINT64_C(15)) << 28;
    9579             :       // op: Rt
    9580           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9581           6 :       Value |= (op & UINT64_C(15)) << 12;
    9582             :       // op: Rt2
    9583           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9584           6 :       Value |= op & UINT64_C(15);
    9585             :       // op: addr
    9586           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9587           6 :       Value |= (op & UINT64_C(15)) << 16;
    9588           6 :       break;
    9589             :     }
    9590             :     case ARM::LDRBi12:
    9591             :     case ARM::LDRi12:
    9592             :     case ARM::STRBi12:
    9593             :     case ARM::STRi12: {
    9594             :       // op: p
    9595        1925 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9596        1925 :       Value |= (op & UINT64_C(15)) << 28;
    9597             :       // op: Rt
    9598        1925 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9599        1925 :       Value |= (op & UINT64_C(15)) << 12;
    9600             :       // op: addr
    9601        1925 :       op = getAddrModeImm12OpValue(MI, 1, Fixups, STI);
    9602        1925 :       Value |= (op & UINT64_C(4096)) << 11;
    9603        1925 :       Value |= (op & UINT64_C(122880)) << 3;
    9604        1925 :       Value |= op & UINT64_C(4095);
    9605        1925 :       break;
    9606             :     }
    9607             :     case ARM::LDRcp: {
    9608             :       // op: p
    9609           0 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9610           0 :       Value |= (op & UINT64_C(15)) << 28;
    9611             :       // op: Rt
    9612           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9613           0 :       Value |= (op & UINT64_C(15)) << 12;
    9614             :       // op: addr
    9615           0 :       op = getAddrModeImm12OpValue(MI, 1, Fixups, STI);
    9616           0 :       Value |= (op & UINT64_C(4096)) << 11;
    9617           0 :       Value |= op & UINT64_C(4095);
    9618           0 :       break;
    9619             :     }
    9620             :     case ARM::STLEX:
    9621             :     case ARM::STLEXB:
    9622             :     case ARM::STLEXD:
    9623             :     case ARM::STLEXH:
    9624             :     case ARM::STREX:
    9625             :     case ARM::STREXB:
    9626             :     case ARM::STREXD:
    9627             :     case ARM::STREXH: {
    9628             :       // op: p
    9629          21 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9630          21 :       Value |= (op & UINT64_C(15)) << 28;
    9631             :       // op: Rt
    9632          21 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9633          21 :       Value |= op & UINT64_C(15);
    9634             :       // op: addr
    9635          21 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9636          21 :       Value |= (op & UINT64_C(15)) << 16;
    9637             :       // op: Rd
    9638          21 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9639          21 :       Value |= (op & UINT64_C(15)) << 12;
    9640          21 :       break;
    9641             :     }
    9642             :     case ARM::VADDH:
    9643             :     case ARM::VADDS:
    9644             :     case ARM::VDIVH:
    9645             :     case ARM::VDIVS:
    9646             :     case ARM::VMULH:
    9647             :     case ARM::VMULS:
    9648             :     case ARM::VNMULH:
    9649             :     case ARM::VNMULS:
    9650             :     case ARM::VSUBH:
    9651             :     case ARM::VSUBS: {
    9652             :       // op: p
    9653          31 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9654          31 :       Value |= (op & UINT64_C(15)) << 28;
    9655             :       // op: Sd
    9656          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9657          31 :       Value |= (op & UINT64_C(1)) << 22;
    9658          31 :       Value |= (op & UINT64_C(30)) << 11;
    9659             :       // op: Sn
    9660          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9661          31 :       Value |= (op & UINT64_C(30)) << 15;
    9662          31 :       Value |= (op & UINT64_C(1)) << 7;
    9663             :       // op: Sm
    9664          31 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9665          31 :       Value |= (op & UINT64_C(1)) << 5;
    9666          31 :       Value |= (op & UINT64_C(30)) >> 1;
    9667          31 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9668          31 :       break;
    9669             :     }
    9670             :     case ARM::VLDRH:
    9671             :     case ARM::VSTRH: {
    9672             :       // op: p
    9673          32 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9674          32 :       Value |= (op & UINT64_C(15)) << 28;
    9675             :       // op: Sd
    9676          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9677          32 :       Value |= (op & UINT64_C(1)) << 22;
    9678          32 :       Value |= (op & UINT64_C(30)) << 11;
    9679             :       // op: addr
    9680          32 :       op = getAddrMode5FP16OpValue(MI, 1, Fixups, STI);
    9681          32 :       Value |= (op & UINT64_C(256)) << 15;
    9682          32 :       Value |= (op & UINT64_C(7680)) << 7;
    9683          32 :       Value |= op & UINT64_C(255);
    9684          32 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9685          32 :       break;
    9686             :     }
    9687             :     case ARM::VLDRS:
    9688             :     case ARM::VSTRS: {
    9689             :       // op: p
    9690         281 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9691         281 :       Value |= (op & UINT64_C(15)) << 28;
    9692             :       // op: Sd
    9693         281 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9694         281 :       Value |= (op & UINT64_C(1)) << 22;
    9695         281 :       Value |= (op & UINT64_C(30)) << 11;
    9696             :       // op: addr
    9697         281 :       op = getAddrMode5OpValue(MI, 1, Fixups, STI);
    9698         281 :       Value |= (op & UINT64_C(256)) << 15;
    9699         281 :       Value |= (op & UINT64_C(7680)) << 7;
    9700         281 :       Value |= op & UINT64_C(255);
    9701         281 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9702         281 :       break;
    9703             :     }
    9704             :     case ARM::VSHTOH:
    9705             :     case ARM::VSHTOS:
    9706             :     case ARM::VSLTOH:
    9707             :     case ARM::VSLTOS:
    9708             :     case ARM::VTOSHH:
    9709             :     case ARM::VTOSHS:
    9710             :     case ARM::VTOSLH:
    9711             :     case ARM::VTOSLS:
    9712             :     case ARM::VTOUHH:
    9713             :     case ARM::VTOUHS:
    9714             :     case ARM::VTOULH:
    9715             :     case ARM::VTOULS:
    9716             :     case ARM::VUHTOH:
    9717             :     case ARM::VUHTOS:
    9718             :     case ARM::VULTOH:
    9719             :     case ARM::VULTOS: {
    9720             :       // op: p
    9721          40 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9722          40 :       Value |= (op & UINT64_C(15)) << 28;
    9723             :       // op: fbits
    9724          40 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9725          40 :       Value |= (op & UINT64_C(1)) << 5;
    9726          40 :       Value |= (op & UINT64_C(30)) >> 1;
    9727             :       // op: dst
    9728          40 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9729          40 :       Value |= (op & UINT64_C(1)) << 22;
    9730          40 :       Value |= (op & UINT64_C(30)) << 11;
    9731          40 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9732          40 :       break;
    9733             :     }
    9734             :     case ARM::VSHTOD:
    9735             :     case ARM::VSLTOD:
    9736             :     case ARM::VTOSHD:
    9737             :     case ARM::VTOSLD:
    9738             :     case ARM::VTOUHD:
    9739             :     case ARM::VTOULD:
    9740             :     case ARM::VUHTOD:
    9741             :     case ARM::VULTOD: {
    9742             :       // op: p
    9743           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9744           8 :       Value |= (op & UINT64_C(15)) << 28;
    9745             :       // op: fbits
    9746           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9747           8 :       Value |= (op & UINT64_C(1)) << 5;
    9748           8 :       Value |= (op & UINT64_C(30)) >> 1;
    9749             :       // op: dst
    9750           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9751           8 :       Value |= (op & UINT64_C(16)) << 18;
    9752           8 :       Value |= (op & UINT64_C(15)) << 12;
    9753           8 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9754           8 :       break;
    9755             :     }
    9756             :     case ARM::ADCrr:
    9757             :     case ARM::ADDrr:
    9758             :     case ARM::ANDrr:
    9759             :     case ARM::BICrr:
    9760             :     case ARM::EORrr:
    9761             :     case ARM::ORRrr:
    9762             :     case ARM::RSBrr:
    9763             :     case ARM::RSCrr:
    9764             :     case ARM::SBCrr:
    9765             :     case ARM::SUBrr: {
    9766             :       // op: p
    9767         168 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9768         168 :       Value |= (op & UINT64_C(15)) << 28;
    9769             :       // op: s
    9770         168 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
    9771         168 :       Value |= (op & UINT64_C(1)) << 20;
    9772             :       // op: Rd
    9773         168 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9774         168 :       Value |= (op & UINT64_C(15)) << 12;
    9775             :       // op: Rn
    9776         168 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9777         168 :       Value |= (op & UINT64_C(15)) << 16;
    9778             :       // op: Rm
    9779         168 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9780         168 :       Value |= op & UINT64_C(15);
    9781         168 :       break;
    9782             :     }
    9783             :     case ARM::ADCri:
    9784             :     case ARM::ADDri:
    9785             :     case ARM::ANDri:
    9786             :     case ARM::BICri:
    9787             :     case ARM::EORri:
    9788             :     case ARM::ORRri:
    9789             :     case ARM::RSBri:
    9790             :     case ARM::RSCri:
    9791             :     case ARM::SBCri:
    9792             :     case ARM::SUBri: {
    9793             :       // op: p
    9794        2289 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9795        2289 :       Value |= (op & UINT64_C(15)) << 28;
    9796             :       // op: s
    9797        2289 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
    9798        2289 :       Value |= (op & UINT64_C(1)) << 20;
    9799             :       // op: Rd
    9800        2289 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9801        2289 :       Value |= (op & UINT64_C(15)) << 12;
    9802             :       // op: Rn
    9803        2289 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9804        2289 :       Value |= (op & UINT64_C(15)) << 16;
    9805             :       // op: imm
    9806        2289 :       op = getModImmOpValue(MI, 2, Fixups, STI);
    9807        2289 :       Value |= op & UINT64_C(4095);
    9808        2289 :       break;
    9809             :     }
    9810             :     case ARM::MVNsi: {
    9811             :       // op: p
    9812          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9813          12 :       Value |= (op & UINT64_C(15)) << 28;
    9814             :       // op: s
    9815          12 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
    9816          12 :       Value |= (op & UINT64_C(1)) << 20;
    9817             :       // op: Rd
    9818          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9819          12 :       Value |= (op & UINT64_C(15)) << 12;
    9820             :       // op: shift
    9821          12 :       op = getSORegImmOpValue(MI, 1, Fixups, STI);
    9822          12 :       Value |= op & UINT64_C(4064);
    9823          12 :       Value |= op & UINT64_C(15);
    9824          12 :       break;
    9825             :     }
    9826             :     case ARM::MOVsi: {
    9827             :       // op: p
    9828          43 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9829          43 :       Value |= (op & UINT64_C(15)) << 28;
    9830             :       // op: s
    9831          43 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
    9832          43 :       Value |= (op & UINT64_C(1)) << 20;
    9833             :       // op: Rd
    9834          43 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9835          43 :       Value |= (op & UINT64_C(15)) << 12;
    9836             :       // op: src
    9837          43 :       op = getSORegImmOpValue(MI, 1, Fixups, STI);
    9838          43 :       Value |= op & UINT64_C(4064);
    9839          43 :       Value |= op & UINT64_C(15);
    9840          43 :       break;
    9841             :     }
    9842             :     case ARM::MUL: {
    9843             :       // op: p
    9844          15 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9845          15 :       Value |= (op & UINT64_C(15)) << 28;
    9846             :       // op: s
    9847          15 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
    9848          15 :       Value |= (op & UINT64_C(1)) << 20;
    9849             :       // op: Rd
    9850          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9851          15 :       Value |= (op & UINT64_C(15)) << 16;
    9852             :       // op: Rm
    9853          15 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9854          15 :       Value |= (op & UINT64_C(15)) << 8;
    9855             :       // op: Rn
    9856          15 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9857          15 :       Value |= op & UINT64_C(15);
    9858          15 :       break;
    9859             :     }
    9860             :     case ARM::VFMAD:
    9861             :     case ARM::VFMSD:
    9862             :     case ARM::VFNMAD:
    9863             :     case ARM::VFNMSD:
    9864             :     case ARM::VMLAD:
    9865             :     case ARM::VMLSD:
    9866             :     case ARM::VNMLAD:
    9867             :     case ARM::VNMLSD: {
    9868             :       // op: p
    9869          12 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9870          12 :       Value |= (op & UINT64_C(15)) << 28;
    9871             :       // op: Dd
    9872          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9873          12 :       Value |= (op & UINT64_C(16)) << 18;
    9874          12 :       Value |= (op & UINT64_C(15)) << 12;
    9875             :       // op: Dn
    9876          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9877          12 :       Value |= (op & UINT64_C(15)) << 16;
    9878          12 :       Value |= (op & UINT64_C(16)) << 3;
    9879             :       // op: Dm
    9880          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9881          12 :       Value |= (op & UINT64_C(16)) << 1;
    9882          12 :       Value |= op & UINT64_C(15);
    9883          12 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9884          12 :       break;
    9885             :     }
    9886             :     case ARM::SXTAB:
    9887             :     case ARM::SXTAB16:
    9888             :     case ARM::SXTAH:
    9889             :     case ARM::UXTAB:
    9890             :     case ARM::UXTAB16:
    9891             :     case ARM::UXTAH: {
    9892             :       // op: p
    9893          60 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9894          60 :       Value |= (op & UINT64_C(15)) << 28;
    9895             :       // op: Rd
    9896          60 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9897          60 :       Value |= (op & UINT64_C(15)) << 12;
    9898             :       // op: Rm
    9899          60 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9900          60 :       Value |= op & UINT64_C(15);
    9901             :       // op: Rn
    9902          60 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9903          60 :       Value |= (op & UINT64_C(15)) << 16;
    9904             :       // op: rot
    9905          60 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9906          60 :       Value |= (op & UINT64_C(3)) << 10;
    9907          60 :       break;
    9908             :     }
    9909             :     case ARM::PKHBT:
    9910             :     case ARM::PKHTB: {
    9911             :       // op: p
    9912          14 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9913          14 :       Value |= (op & UINT64_C(15)) << 28;
    9914             :       // op: Rd
    9915          14 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9916          14 :       Value |= (op & UINT64_C(15)) << 12;
    9917             :       // op: Rn
    9918          14 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9919          14 :       Value |= (op & UINT64_C(15)) << 16;
    9920             :       // op: Rm
    9921          14 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9922          14 :       Value |= op & UINT64_C(15);
    9923             :       // op: sh
    9924          14 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9925          14 :       Value |= (op & UINT64_C(31)) << 7;
    9926          14 :       break;
    9927             :     }
    9928             :     case ARM::SBFX:
    9929             :     case ARM::UBFX: {
    9930             :       // op: p
    9931           8 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9932           8 :       Value |= (op & UINT64_C(15)) << 28;
    9933             :       // op: Rd
    9934           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9935           8 :       Value |= (op & UINT64_C(15)) << 12;
    9936             :       // op: Rn
    9937           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9938           8 :       Value |= op & UINT64_C(15);
    9939             :       // op: lsb
    9940           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9941           8 :       Value |= (op & UINT64_C(31)) << 7;
    9942             :       // op: width
    9943           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9944           8 :       Value |= (op & UINT64_C(31)) << 16;
    9945           8 :       break;
    9946             :     }
    9947             :     case ARM::BFI: {
    9948             :       // op: p
    9949           7 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9950           7 :       Value |= (op & UINT64_C(15)) << 28;
    9951             :       // op: Rd
    9952           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9953           7 :       Value |= (op & UINT64_C(15)) << 12;
    9954             :       // op: Rn
    9955           7 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9956           7 :       Value |= op & UINT64_C(15);
    9957             :       // op: imm
    9958           7 :       op = getBitfieldInvertedMaskOpValue(MI, 3, Fixups, STI);
    9959           7 :       Value |= (op & UINT64_C(992)) << 11;
    9960           7 :       Value |= (op & UINT64_C(31)) << 7;
    9961           7 :       break;
    9962             :     }
    9963             :     case ARM::SSAT:
    9964             :     case ARM::USAT: {
    9965             :       // op: p
    9966          20 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9967          20 :       Value |= (op & UINT64_C(15)) << 28;
    9968             :       // op: Rd
    9969          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9970          20 :       Value |= (op & UINT64_C(15)) << 12;
    9971             :       // op: sat_imm
    9972          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9973          20 :       Value |= (op & UINT64_C(31)) << 16;
    9974             :       // op: Rn
    9975          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9976          20 :       Value |= op & UINT64_C(15);
    9977             :       // op: sh
    9978          20 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9979          20 :       Value |= (op & UINT64_C(31)) << 7;
    9980          20 :       Value |= (op & UINT64_C(32)) << 1;
    9981          20 :       break;
    9982             :     }
    9983             :     case ARM::MLS: {
    9984             :       // op: p
    9985           4 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9986           4 :       Value |= (op & UINT64_C(15)) << 28;
    9987             :       // op: Rd
    9988           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9989           4 :       Value |= (op & UINT64_C(15)) << 16;
    9990             :       // op: Rm
    9991           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9992           4 :       Value |= (op & UINT64_C(15)) << 8;
    9993             :       // op: Rn
    9994           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9995           4 :       Value |= op & UINT64_C(15);
    9996             :       // op: Ra
    9997           4 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9998           4 :       Value |= (op & UINT64_C(15)) << 12;
    9999           4 :       break;
   10000             :     }
   10001             :     case ARM::SMMLA:
   10002             :     case ARM::SMMLAR:
   10003             :     case ARM::SMMLS:
   10004             :     case ARM::SMMLSR:
   10005             :     case ARM::USADA8: {
   10006             :       // op: p
   10007          20 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10008          20 :       Value |= (op & UINT64_C(15)) << 28;
   10009             :       // op: Rd
   10010          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10011          20 :       Value |= (op & UINT64_C(15)) << 16;
   10012             :       // op: Rn
   10013          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10014          20 :       Value |= op & UINT64_C(15);
   10015             :       // op: Rm
   10016          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10017          20 :       Value |= (op & UINT64_C(15)) << 8;
   10018             :       // op: Ra
   10019          20 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10020          20 :       Value |= (op & UINT64_C(15)) << 12;
   10021          20 :       break;
   10022             :     }
   10023             :     case ARM::CMNzrsr:
   10024             :     case ARM::CMPrsr:
   10025             :     case ARM::TEQrsr:
   10026             :     case ARM::TSTrsr: {
   10027             :       // op: p
   10028          32 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10029          32 :       Value |= (op & UINT64_C(15)) << 28;
   10030             :       // op: Rn
   10031          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10032          32 :       Value |= (op & UINT64_C(15)) << 16;
   10033             :       // op: shift
   10034          32 :       op = getSORegRegOpValue(MI, 1, Fixups, STI);
   10035          32 :       Value |= op & UINT64_C(3840);
   10036          32 :       Value |= op & UINT64_C(96);
   10037          32 :       Value |= op & UINT64_C(15);
   10038          32 :       break;
   10039             :     }
   10040             :     case ARM::SMLAD:
   10041             :     case ARM::SMLADX:
   10042             :     case ARM::SMLSD:
   10043             :     case ARM::SMLSDX: {
   10044             :       // op: p
   10045          16 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10046          16 :       Value |= (op & UINT64_C(15)) << 28;
   10047             :       // op: Rn
   10048          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10049          16 :       Value |= op & UINT64_C(15);
   10050             :       // op: Rm
   10051          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10052          16 :       Value |= (op & UINT64_C(15)) << 8;
   10053             :       // op: Ra
   10054          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10055          16 :       Value |= (op & UINT64_C(15)) << 12;
   10056             :       // op: Rd
   10057          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10058          16 :       Value |= (op & UINT64_C(15)) << 16;
   10059          16 :       break;
   10060             :     }
   10061             :     case ARM::SMLABB:
   10062             :     case ARM::SMLABT:
   10063             :     case ARM::SMLATB:
   10064             :     case ARM::SMLATT:
   10065             :     case ARM::SMLAWB:
   10066             :     case ARM::SMLAWT: {
   10067             :       // op: p
   10068          24 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10069          24 :       Value |= (op & UINT64_C(15)) << 28;
   10070             :       // op: Rn
   10071          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10072          24 :       Value |= op & UINT64_C(15);
   10073             :       // op: Rm
   10074          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10075          24 :       Value |= (op & UINT64_C(15)) << 8;
   10076             :       // op: Rd
   10077          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10078          24 :       Value |= (op & UINT64_C(15)) << 16;
   10079             :       // op: Ra
   10080          24 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10081          24 :       Value |= (op & UINT64_C(15)) << 12;
   10082          24 :       break;
   10083             :     }
   10084             :     case ARM::LDRB_PRE_IMM:
   10085             :     case ARM::LDR_PRE_IMM: {
   10086             :       // op: p
   10087           2 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10088           2 :       Value |= (op & UINT64_C(15)) << 28;
   10089             :       // op: Rt
   10090           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10091           2 :       Value |= (op & UINT64_C(15)) << 12;
   10092             :       // op: addr
   10093           2 :       op = getAddrModeImm12OpValue(MI, 2, Fixups, STI);
   10094           2 :       Value |= (op & UINT64_C(4096)) << 11;
   10095           2 :       Value |= (op & UINT64_C(122880)) << 3;
   10096           2 :       Value |= op & UINT64_C(4095);
   10097           2 :       break;
   10098             :     }
   10099             :     case ARM::LDRBrs:
   10100             :     case ARM::LDRrs:
   10101             :     case ARM::STRBrs:
   10102             :     case ARM::STRrs: {
   10103             :       // op: p
   10104          46 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10105          46 :       Value |= (op & UINT64_C(15)) << 28;
   10106             :       // op: Rt
   10107          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10108          46 :       Value |= (op & UINT64_C(15)) << 12;
   10109             :       // op: shift
   10110          46 :       op = getLdStSORegOpValue(MI, 1, Fixups, STI);
   10111          46 :       Value |= (op & UINT64_C(4096)) << 11;
   10112          46 :       Value |= (op & UINT64_C(122880)) << 3;
   10113          46 :       Value |= op & UINT64_C(4064);
   10114          46 :       Value |= op & UINT64_C(15);
   10115          46 :       break;
   10116             :     }
   10117             :     case ARM::STRB_PRE_IMM:
   10118             :     case ARM::STR_PRE_IMM: {
   10119             :       // op: p
   10120          14 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10121          14 :       Value |= (op & UINT64_C(15)) << 28;
   10122             :       // op: Rt
   10123          14 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10124          14 :       Value |= (op & UINT64_C(15)) << 12;
   10125             :       // op: addr
   10126          14 :       op = getAddrModeImm12OpValue(MI, 2, Fixups, STI);
   10127          14 :       Value |= (op & UINT64_C(4096)) << 11;
   10128          14 :       Value |= (op & UINT64_C(122880)) << 3;
   10129          14 :       Value |= op & UINT64_C(4095);
   10130          14 :       break;
   10131             :     }
   10132             :     case ARM::VFMAH:
   10133             :     case ARM::VFMAS:
   10134             :     case ARM::VFMSH:
   10135             :     case ARM::VFMSS:
   10136             :     case ARM::VFNMAH:
   10137             :     case ARM::VFNMAS:
   10138             :     case ARM::VFNMSH:
   10139             :     case ARM::VFNMSS:
   10140             :     case ARM::VMLAH:
   10141             :     case ARM::VMLAS:
   10142             :     case ARM::VMLSH:
   10143             :     case ARM::VMLSS:
   10144             :     case ARM::VNMLAH:
   10145             :     case ARM::VNMLAS:
   10146             :     case ARM::VNMLSH:
   10147             :     case ARM::VNMLSS: {
   10148             :       // op: p
   10149          53 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10150          53 :       Value |= (op & UINT64_C(15)) << 28;
   10151             :       // op: Sd
   10152          53 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10153          53 :       Value |= (op & UINT64_C(1)) << 22;
   10154          53 :       Value |= (op & UINT64_C(30)) << 11;
   10155             :       // op: Sn
   10156          53 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10157          53 :       Value |= (op & UINT64_C(30)) << 15;
   10158          53 :       Value |= (op & UINT64_C(1)) << 7;
   10159             :       // op: Sm
   10160          53 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10161          53 :       Value |= (op & UINT64_C(1)) << 5;
   10162          53 :       Value |= (op & UINT64_C(30)) >> 1;
   10163          53 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
   10164          53 :       break;
   10165             :     }
   10166             :     case ARM::LDRH:
   10167             :     case ARM::LDRSB:
   10168             :     case ARM::LDRSH:
   10169             :     case ARM::STRH: {
   10170             :       // op: p
   10171          15 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10172          15 :       Value |= (op & UINT64_C(15)) << 28;
   10173             :       // op: addr
   10174          15 :       op = getAddrMode3OpValue(MI, 1, Fixups, STI);
   10175          15 :       Value |= (op & UINT64_C(256)) << 15;
   10176          15 :       Value |= (op & UINT64_C(8192)) << 9;
   10177          15 :       Value |= (op & UINT64_C(7680)) << 7;
   10178          15 :       Value |= (op & UINT64_C(240)) << 4;
   10179          15 :       Value |= op & UINT64_C(15);
   10180             :       // op: Rt
   10181          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10182          15 :       Value |= (op & UINT64_C(15)) << 12;
   10183          15 :       break;
   10184             :     }
   10185             :     case ARM::LDCL_OFFSET:
   10186             :     case ARM::LDCL_PRE:
   10187             :     case ARM::LDC_OFFSET:
   10188             :     case ARM::LDC_PRE:
   10189             :     case ARM::STCL_OFFSET:
   10190             :     case ARM::STCL_PRE:
   10191             :     case ARM::STC_OFFSET:
   10192             :     case ARM::STC_PRE: {
   10193             :       // op: p
   10194          72 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10195          72 :       Value |= (op & UINT64_C(15)) << 28;
   10196             :       // op: addr
   10197          72 :       op = getAddrMode5OpValue(MI, 2, Fixups, STI);
   10198          72 :       Value |= (op & UINT64_C(256)) << 15;
   10199          72 :       Value |= (op & UINT64_C(7680)) << 7;
   10200          72 :       Value |= op & UINT64_C(255);
   10201             :       // op: cop
   10202          72 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10203          72 :       Value |= (op & UINT64_C(15)) << 8;
   10204             :       // op: CRd
   10205          72 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10206          72 :       Value |= (op & UINT64_C(15)) << 12;
   10207          72 :       break;
   10208             :     }
   10209             :     case ARM::LDRHTi:
   10210             :     case ARM::LDRSBTi:
   10211             :     case ARM::LDRSHTi: {
   10212             :       // op: p
   10213          13 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10214          13 :       Value |= (op & UINT64_C(15)) << 28;
   10215             :       // op: addr
   10216          13 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10217          13 :       Value |= (op & UINT64_C(15)) << 16;
   10218             :       // op: Rt
   10219          13 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10220          13 :       Value |= (op & UINT64_C(15)) << 12;
   10221             :       // op: offset
   10222          13 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10223          13 :       Value |= (op & UINT64_C(256)) << 15;
   10224          13 :       Value |= (op & UINT64_C(240)) << 4;
   10225          13 :       Value |= op & UINT64_C(15);
   10226          13 :       break;
   10227             :     }
   10228             :     case ARM::STRHTi: {
   10229             :       // op: p
   10230           3 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10231           3 :       Value |= (op & UINT64_C(15)) << 28;
   10232             :       // op: addr
   10233           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10234           3 :       Value |= (op & UINT64_C(15)) << 16;
   10235             :       // op: Rt
   10236           3 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10237           3 :       Value |= (op & UINT64_C(15)) << 12;
   10238             :       // op: offset
   10239           3 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10240           3 :       Value |= (op & UINT64_C(256)) << 15;
   10241           3 :       Value |= (op & UINT64_C(240)) << 4;
   10242           3 :       Value |= op & UINT64_C(15);
   10243           3 :       break;
   10244             :     }
   10245             :     case ARM::VMOVSRR: {
   10246             :       // op: p
   10247           3 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10248           3 :       Value |= (op & UINT64_C(15)) << 28;
   10249             :       // op: dst1
   10250           3 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10251           3 :       Value |= (op & UINT64_C(1)) << 5;
   10252           3 :       Value |= (op & UINT64_C(30)) >> 1;
   10253             :       // op: src1
   10254           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10255           3 :       Value |= (op & UINT64_C(15)) << 12;
   10256             :       // op: src2
   10257           3 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10258           3 :       Value |= (op & UINT64_C(15)) << 16;
   10259           3 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
   10260           3 :       break;
   10261             :     }
   10262             :     case ARM::LDCL_POST:
   10263             :     case ARM::LDC_POST:
   10264             :     case ARM::STCL_POST:
   10265             :     case ARM::STC_POST: {
   10266             :       // op: p
   10267          32 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10268          32 :       Value |= (op & UINT64_C(15)) << 28;
   10269             :       // op: offset
   10270          32 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10271          32 :       Value |= (op & UINT64_C(256)) << 15;
   10272          32 :       Value |= op & UINT64_C(255);
   10273             :       // op: addr
   10274          32 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10275          32 :       Value |= (op & UINT64_C(15)) << 16;
   10276             :       // op: cop
   10277          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10278          32 :       Value |= (op & UINT64_C(15)) << 8;
   10279             :       // op: CRd
   10280          32 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10281          32 :       Value |= (op & UINT64_C(15)) << 12;
   10282          32 :       break;
   10283             :     }
   10284             :     case ARM::LDCL_OPTION:
   10285             :     case ARM::LDC_OPTION:
   10286             :     case ARM::STCL_OPTION:
   10287             :     case ARM::STC_OPTION: {
   10288             :       // op: p
   10289           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10290           6 :       Value |= (op & UINT64_C(15)) << 28;
   10291             :       // op: option
   10292           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10293           6 :       Value |= op & UINT64_C(255);
   10294             :       // op: addr
   10295           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10296           6 :       Value |= (op & UINT64_C(15)) << 16;
   10297             :       // op: cop
   10298           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10299           6 :       Value |= (op & UINT64_C(15)) << 8;
   10300             :       // op: CRd
   10301           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10302           6 :       Value |= (op & UINT64_C(15)) << 12;
   10303           6 :       break;
   10304             :     }
   10305             :     case ARM::ADCrsi:
   10306             :     case ARM::ADDrsi:
   10307             :     case ARM::ANDrsi:
   10308             :     case ARM::BICrsi:
   10309             :     case ARM::EORrsi:
   10310             :     case ARM::ORRrsi:
   10311             :     case ARM::RSBrsi:
   10312             :     case ARM::RSCrsi:
   10313             :     case ARM::SBCrsi:
   10314             :     case ARM::SUBrsi: {
   10315             :       // op: p
   10316         291 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10317         291 :       Value |= (op & UINT64_C(15)) << 28;
   10318             :       // op: s
   10319         291 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   10320         291 :       Value |= (op & UINT64_C(1)) << 20;
   10321             :       // op: Rd
   10322         291 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10323         291 :       Value |= (op & UINT64_C(15)) << 12;
   10324             :       // op: Rn
   10325         291 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10326         291 :       Value |= (op & UINT64_C(15)) << 16;
   10327             :       // op: shift
   10328         291 :       op = getSORegImmOpValue(MI, 2, Fixups, STI);
   10329         291 :       Value |= op & UINT64_C(4064);
   10330         291 :       Value |= op & UINT64_C(15);
   10331         291 :       break;
   10332             :     }
   10333             :     case ARM::MVNsr: {
   10334             :       // op: p
   10335           8 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10336           8 :       Value |= (op & UINT64_C(15)) << 28;
   10337             :       // op: s
   10338           8 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   10339           8 :       Value |= (op & UINT64_C(1)) << 20;
   10340             :       // op: Rd
   10341           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10342           8 :       Value |= (op & UINT64_C(15)) << 12;
   10343             :       // op: shift
   10344           8 :       op = getSORegRegOpValue(MI, 1, Fixups, STI);
   10345           8 :       Value |= op & UINT64_C(3840);
   10346           8 :       Value |= op & UINT64_C(96);
   10347           8 :       Value |= op & UINT64_C(15);
   10348           8 :       break;
   10349             :     }
   10350             :     case ARM::MOVsr: {
   10351             :       // op: p
   10352           0 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10353           0 :       Value |= (op & UINT64_C(15)) << 28;
   10354             :       // op: s
   10355           0 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   10356           0 :       Value |= (op & UINT64_C(1)) << 20;
   10357             :       // op: Rd
   10358           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10359           0 :       Value |= (op & UINT64_C(15)) << 12;
   10360             :       // op: src
   10361           0 :       op = getSORegRegOpValue(MI, 1, Fixups, STI);
   10362           0 :       Value |= op & UINT64_C(3840);
   10363           0 :       Value |= op & UINT64_C(96);
   10364           0 :       Value |= op & UINT64_C(15);
   10365           0 :       break;
   10366             :     }
   10367             :     case ARM::MLA: {
   10368             :       // op: p
   10369          13 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10370          13 :       Value |= (op & UINT64_C(15)) << 28;
   10371             :       // op: s
   10372          13 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   10373          13 :       Value |= (op & UINT64_C(1)) << 20;
   10374             :       // op: Rd
   10375          13 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10376          13 :       Value |= (op & UINT64_C(15)) << 16;
   10377             :       // op: Rm
   10378          13 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10379          13 :       Value |= (op & UINT64_C(15)) << 8;
   10380             :       // op: Rn
   10381          13 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10382          13 :       Value |= op & UINT64_C(15);
   10383             :       // op: Ra
   10384          13 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10385          13 :       Value |= (op & UINT64_C(15)) << 12;
   10386          13 :       break;
   10387             :     }
   10388             :     case ARM::SMULL:
   10389             :     case ARM::UMULL: {
   10390             :       // op: p
   10391          18 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10392          18 :       Value |= (op & UINT64_C(15)) << 28;
   10393             :       // op: s
   10394          18 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   10395          18 :       Value |= (op & UINT64_C(1)) << 20;
   10396             :       // op: RdLo
   10397          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10398          18 :       Value |= (op & UINT64_C(15)) << 12;
   10399             :       // op: RdHi
   10400          18 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10401          18 :       Value |= (op & UINT64_C(15)) << 16;
   10402             :       // op: Rm
   10403          18 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10404          18 :       Value |= (op & UINT64_C(15)) << 8;
   10405             :       // op: Rn
   10406          18 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10407          18 :       Value |= op & UINT64_C(15);
   10408          18 :       break;
   10409             :     }
   10410             :     case ARM::VMOVRRS: {
   10411             :       // op: p
   10412           2 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10413           2 :       Value |= (op & UINT64_C(15)) << 28;
   10414             :       // op: src1
   10415           2 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10416           2 :       Value |= (op & UINT64_C(1)) << 5;
   10417           2 :       Value |= (op & UINT64_C(30)) >> 1;
   10418             :       // op: Rt
   10419           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10420           2 :       Value |= (op & UINT64_C(15)) << 12;
   10421             :       // op: Rt2
   10422           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10423           2 :       Value |= (op & UINT64_C(15)) << 16;
   10424           2 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
   10425           2 :       break;
   10426             :     }
   10427             :     case ARM::MRRC: {
   10428             :       // op: p
   10429           7 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10430           7 :       Value |= (op & UINT64_C(15)) << 28;
   10431             :       // op: Rt
   10432           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10433           7 :       Value |= (op & UINT64_C(15)) << 12;
   10434             :       // op: Rt2
   10435           7 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10436           7 :       Value |= (op & UINT64_C(15)) << 16;
   10437             :       // op: cop
   10438           7 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10439           7 :       Value |= (op & UINT64_C(15)) << 8;
   10440             :       // op: opc1
   10441           7 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10442           7 :       Value |= (op & UINT64_C(15)) << 4;
   10443             :       // op: CRm
   10444           7 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10445           7 :       Value |= op & UINT64_C(15);
   10446           7 :       break;
   10447             :     }
   10448             :     case ARM::LDRH_PRE:
   10449             :     case ARM::LDRSB_PRE:
   10450             :     case ARM::LDRSH_PRE: {
   10451             :       // op: p
   10452           9 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10453           9 :       Value |= (op & UINT64_C(15)) << 28;
   10454             :       // op: Rt
   10455           9 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10456           9 :       Value |= (op & UINT64_C(15)) << 12;
   10457             :       // op: addr
   10458           9 :       op = getAddrMode3OpValue(MI, 2, Fixups, STI);
   10459           9 :       Value |= (op & UINT64_C(256)) << 15;
   10460           9 :       Value |= (op & UINT64_C(8192)) << 9;
   10461           9 :       Value |= (op & UINT64_C(7680)) << 7;
   10462           9 :       Value |= (op & UINT64_C(240)) << 4;
   10463           9 :       Value |= op & UINT64_C(15);
   10464           9 :       break;
   10465             :     }
   10466             :     case ARM::LDRB_PRE_REG:
   10467             :     case ARM::LDR_PRE_REG: {
   10468             :       // op: p
   10469           7 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10470           7 :       Value |= (op & UINT64_C(15)) << 28;
   10471             :       // op: Rt
   10472           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10473           7 :       Value |= (op & UINT64_C(15)) << 12;
   10474             :       // op: addr
   10475           7 :       op = getLdStSORegOpValue(MI, 2, Fixups, STI);
   10476           7 :       Value |= (op & UINT64_C(4096)) << 11;
   10477           7 :       Value |= (op & UINT64_C(122880)) << 3;
   10478           7 :       Value |= op & UINT64_C(4064);
   10479           7 :       Value |= op & UINT64_C(15);
   10480           7 :       break;
   10481             :     }
   10482             :     case ARM::LDRBT_POST_REG:
   10483             :     case ARM::LDRB_POST_REG:
   10484             :     case ARM::LDRT_POST_REG:
   10485             :     case ARM::LDR_POST_REG: {
   10486             :       // op: p
   10487          14 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10488          14 :       Value |= (op & UINT64_C(15)) << 28;
   10489             :       // op: Rt
   10490          14 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10491          14 :       Value |= (op & UINT64_C(15)) << 12;
   10492             :       // op: offset
   10493          14 :       op = getAddrMode2OffsetOpValue(MI, 3, Fixups, STI);
   10494          14 :       Value |= (op & UINT64_C(4096)) << 11;
   10495          14 :       Value |= op & UINT64_C(4064);
   10496          14 :       Value |= op & UINT64_C(15);
   10497             :       // op: addr
   10498          14 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10499          14 :       Value |= (op & UINT64_C(15)) << 16;
   10500          14 :       break;
   10501             :     }
   10502             :     case ARM::LDRBT_POST_IMM:
   10503             :     case ARM::LDRB_POST_IMM:
   10504             :     case ARM::LDRT_POST_IMM:
   10505             :     case ARM::LDR_POST_IMM: {
   10506             :       // op: p
   10507         755 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10508         755 :       Value |= (op & UINT64_C(15)) << 28;
   10509             :       // op: Rt
   10510         755 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10511         755 :       Value |= (op & UINT64_C(15)) << 12;
   10512             :       // op: offset
   10513         755 :       op = getAddrMode2OffsetOpValue(MI, 3, Fixups, STI);
   10514         755 :       Value |= (op & UINT64_C(4096)) << 11;
   10515         755 :       Value |= op & UINT64_C(4095);
   10516             :       // op: addr
   10517         755 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10518         755 :       Value |= (op & UINT64_C(15)) << 16;
   10519         755 :       break;
   10520             :     }
   10521             :     case ARM::LDRH_POST:
   10522             :     case ARM::LDRSB_POST:
   10523             :     case ARM::LDRSH_POST: {
   10524             :       // op: p
   10525         175 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10526         175 :       Value |= (op & UINT64_C(15)) << 28;
   10527             :       // op: Rt
   10528         175 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10529         175 :       Value |= (op & UINT64_C(15)) << 12;
   10530             :       // op: offset
   10531         175 :       op = getAddrMode3OffsetOpValue(MI, 3, Fixups, STI);
   10532         175 :       Value |= (op & UINT64_C(256)) << 15;
   10533         175 :       Value |= (op & UINT64_C(512)) << 13;
   10534         175 :       Value |= (op & UINT64_C(240)) << 4;
   10535         175 :       Value |= op & UINT64_C(15);
   10536             :       // op: addr
   10537         175 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10538         175 :       Value |= (op & UINT64_C(15)) << 16;
   10539         175 :       break;
   10540             :     }
   10541             :     case ARM::STRH_PRE: {
   10542             :       // op: p
   10543           3 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10544           3 :       Value |= (op & UINT64_C(15)) << 28;
   10545             :       // op: Rt
   10546           3 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10547           3 :       Value |= (op & UINT64_C(15)) << 12;
   10548             :       // op: addr
   10549           3 :       op = getAddrMode3OpValue(MI, 2, Fixups, STI);
   10550           3 :       Value |= (op & UINT64_C(256)) << 15;
   10551           3 :       Value |= (op & UINT64_C(8192)) << 9;
   10552           3 :       Value |= (op & UINT64_C(7680)) << 7;
   10553           3 :       Value |= (op & UINT64_C(240)) << 4;
   10554           3 :       Value |= op & UINT64_C(15);
   10555           3 :       break;
   10556             :     }
   10557             :     case ARM::STRB_PRE_REG:
   10558             :     case ARM::STR_PRE_REG: {
   10559             :       // op: p
   10560           4 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10561           4 :       Value |= (op & UINT64_C(15)) << 28;
   10562             :       // op: Rt
   10563           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10564           4 :       Value |= (op & UINT64_C(15)) << 12;
   10565             :       // op: addr
   10566           4 :       op = getLdStSORegOpValue(MI, 2, Fixups, STI);
   10567           4 :       Value |= (op & UINT64_C(4096)) << 11;
   10568           4 :       Value |= (op & UINT64_C(122880)) << 3;
   10569           4 :       Value |= op & UINT64_C(4064);
   10570           4 :       Value |= op & UINT64_C(15);
   10571           4 :       break;
   10572             :     }
   10573             :     case ARM::STRBT_POST_REG:
   10574             :     case ARM::STRB_POST_REG:
   10575             :     case ARM::STRT_POST_REG:
   10576             :     case ARM::STR_POST_REG: {
   10577             :       // op: p
   10578          14 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10579          14 :       Value |= (op & UINT64_C(15)) << 28;
   10580             :       // op: Rt
   10581          14 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10582          14 :       Value |= (op & UINT64_C(15)) << 12;
   10583             :       // op: offset
   10584          14 :       op = getAddrMode2OffsetOpValue(MI, 3, Fixups, STI);
   10585          14 :       Value |= (op & UINT64_C(4096)) << 11;
   10586          14 :       Value |= op & UINT64_C(4064);
   10587          14 :       Value |= op & UINT64_C(15);
   10588             :       // op: addr
   10589          14 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10590          14 :       Value |= (op & UINT64_C(15)) << 16;
   10591          14 :       break;
   10592             :     }
   10593             :     case ARM::STRBT_POST_IMM:
   10594             :     case ARM::STRB_POST_IMM:
   10595             :     case ARM::STRT_POST_IMM:
   10596             :     case ARM::STR_POST_IMM: {
   10597             :       // op: p
   10598         747 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10599         747 :       Value |= (op & UINT64_C(15)) << 28;
   10600             :       // op: Rt
   10601         747 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10602         747 :       Value |= (op & UINT64_C(15)) << 12;
   10603             :       // op: offset
   10604         747 :       op = getAddrMode2OffsetOpValue(MI, 3, Fixups, STI);
   10605         747 :       Value |= (op & UINT64_C(4096)) << 11;
   10606         747 :       Value |= op & UINT64_C(4095);
   10607             :       // op: addr
   10608         747 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10609         747 :       Value |= (op & UINT64_C(15)) << 16;
   10610         747 :       break;
   10611             :     }
   10612             :     case ARM::STRH_POST: {
   10613             :       // op: p
   10614         169 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10615         169 :       Value |= (op & UINT64_C(15)) << 28;
   10616             :       // op: Rt
   10617         169 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10618         169 :       Value |= (op & UINT64_C(15)) << 12;
   10619             :       // op: offset
   10620         169 :       op = getAddrMode3OffsetOpValue(MI, 3, Fixups, STI);
   10621         169 :       Value |= (op & UINT64_C(256)) << 15;
   10622         169 :       Value |= (op & UINT64_C(512)) << 13;
   10623         169 :       Value |= (op & UINT64_C(240)) << 4;
   10624         169 :       Value |= op & UINT64_C(15);
   10625             :       // op: addr
   10626         169 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10627         169 :       Value |= (op & UINT64_C(15)) << 16;
   10628         169 :       break;
   10629             :     }
   10630             :     case ARM::MCRR: {
   10631             :       // op: p
   10632           7 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10633           7 :       Value |= (op & UINT64_C(15)) << 28;
   10634             :       // op: Rt
   10635           7 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10636           7 :       Value |= (op & UINT64_C(15)) << 12;
   10637             :       // op: Rt2
   10638           7 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10639           7 :       Value |= (op & UINT64_C(15)) << 16;
   10640             :       // op: cop
   10641           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10642           7 :       Value |= (op & UINT64_C(15)) << 8;
   10643             :       // op: opc1
   10644           7 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10645           7 :       Value |= (op & UINT64_C(15)) << 4;
   10646             :       // op: CRm
   10647           7 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10648           7 :       Value |= op & UINT64_C(15);
   10649           7 :       break;
   10650             :     }
   10651             :     case ARM::LDRD:
   10652             :     case ARM::STRD: {
   10653             :       // op: p
   10654          22 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10655          22 :       Value |= (op & UINT64_C(15)) << 28;
   10656             :       // op: addr
   10657          22 :       op = getAddrMode3OpValue(MI, 2, Fixups, STI);
   10658          22 :       Value |= (op & UINT64_C(256)) << 15;
   10659          22 :       Value |= (op & UINT64_C(8192)) << 9;
   10660          22 :       Value |= (op & UINT64_C(7680)) << 7;
   10661          22 :       Value |= (op & UINT64_C(240)) << 4;
   10662          22 :       Value |= op & UINT64_C(15);
   10663             :       // op: Rt
   10664          22 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10665          22 :       Value |= (op & UINT64_C(15)) << 12;
   10666          22 :       break;
   10667             :     }
   10668             :     case ARM::LDRHTr:
   10669             :     case ARM::LDRSBTr:
   10670             :     case ARM::LDRSHTr: {
   10671             :       // op: p
   10672           9 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10673           9 :       Value |= (op & UINT64_C(15)) << 28;
   10674             :       // op: addr
   10675           9 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10676           9 :       Value |= (op & UINT64_C(15)) << 16;
   10677             :       // op: Rt
   10678           9 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10679           9 :       Value |= (op & UINT64_C(15)) << 12;
   10680             :       // op: Rm
   10681           9 :       op = getPostIdxRegOpValue(MI, 3, Fixups, STI);
   10682           9 :       Value |= (op & UINT64_C(16)) << 19;
   10683           9 :       Value |= op & UINT64_C(15);
   10684           9 :       break;
   10685             :     }
   10686             :     case ARM::STRHTr: {
   10687             :       // op: p
   10688           3 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10689           3 :       Value |= (op & UINT64_C(15)) << 28;
   10690             :       // op: addr
   10691           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10692           3 :       Value |= (op & UINT64_C(15)) << 16;
   10693             :       // op: Rt
   10694           3 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10695           3 :       Value |= (op & UINT64_C(15)) << 12;
   10696             :       // op: Rm
   10697           3 :       op = getPostIdxRegOpValue(MI, 3, Fixups, STI);
   10698           3 :       Value |= (op & UINT64_C(16)) << 19;
   10699           3 :       Value |= op & UINT64_C(15);
   10700           3 :       break;
   10701             :     }
   10702             :     case ARM::ADCrsr:
   10703             :     case ARM::ADDrsr:
   10704             :     case ARM::ANDrsr:
   10705             :     case ARM::BICrsr:
   10706             :     case ARM::EORrsr:
   10707             :     case ARM::ORRrsr:
   10708             :     case ARM::RSBrsr:
   10709             :     case ARM::RSCrsr:
   10710             :     case ARM::SBCrsr:
   10711             :     case ARM::SUBrsr: {
   10712             :       // op: p
   10713         171 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10714         171 :       Value |= (op & UINT64_C(15)) << 28;
   10715             :       // op: s
   10716         171 :       op = getCCOutOpValue(MI, 7, Fixups, STI);
   10717         171 :       Value |= (op & UINT64_C(1)) << 20;
   10718             :       // op: Rd
   10719         171 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10720         171 :       Value |= (op & UINT64_C(15)) << 12;
   10721             :       // op: Rn
   10722         171 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10723         171 :       Value |= (op & UINT64_C(15)) << 16;
   10724             :       // op: shift
   10725         171 :       op = getSORegRegOpValue(MI, 2, Fixups, STI);
   10726         171 :       Value |= op & UINT64_C(3840);
   10727         171 :       Value |= op & UINT64_C(96);
   10728         171 :       Value |= op & UINT64_C(15);
   10729         171 :       break;
   10730             :     }
   10731             :     case ARM::UMAAL: {
   10732             :       // op: p
   10733           5 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10734           5 :       Value |= (op & UINT64_C(15)) << 28;
   10735             :       // op: RdLo
   10736           5 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10737           5 :       Value |= (op & UINT64_C(15)) << 12;
   10738             :       // op: RdHi
   10739           5 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10740           5 :       Value |= (op & UINT64_C(15)) << 16;
   10741             :       // op: Rm
   10742           5 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10743           5 :       Value |= (op & UINT64_C(15)) << 8;
   10744             :       // op: Rn
   10745           5 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10746           5 :       Value |= op & UINT64_C(15);
   10747           5 :       break;
   10748             :     }
   10749             :     case ARM::SMLALBB:
   10750             :     case ARM::SMLALBT:
   10751             :     case ARM::SMLALD:
   10752             :     case ARM::SMLALDX:
   10753             :     case ARM::SMLALTB:
   10754             :     case ARM::SMLALTT:
   10755             :     case ARM::SMLSLD:
   10756             :     case ARM::SMLSLDX: {
   10757             :       // op: p
   10758          32 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10759          32 :       Value |= (op & UINT64_C(15)) << 28;
   10760             :       // op: Rn
   10761          32 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10762          32 :       Value |= op & UINT64_C(15);
   10763             :       // op: Rm
   10764          32 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10765          32 :       Value |= (op & UINT64_C(15)) << 8;
   10766             :       // op: RdLo
   10767          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10768          32 :       Value |= (op & UINT64_C(15)) << 12;
   10769             :       // op: RdHi
   10770          32 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10771          32 :       Value |= (op & UINT64_C(15)) << 16;
   10772          32 :       break;
   10773             :     }
   10774             :     case ARM::LDRD_PRE: {
   10775             :       // op: p
   10776           3 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10777           3 :       Value |= (op & UINT64_C(15)) << 28;
   10778             :       // op: Rt
   10779           3 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10780           3 :       Value |= (op & UINT64_C(15)) << 12;
   10781             :       // op: addr
   10782           3 :       op = getAddrMode3OpValue(MI, 3, Fixups, STI);
   10783           3 :       Value |= (op & UINT64_C(256)) << 15;
   10784           3 :       Value |= (op & UINT64_C(8192)) << 9;
   10785           3 :       Value |= (op & UINT64_C(7680)) << 7;
   10786           3 :       Value |= (op & UINT64_C(240)) << 4;
   10787           3 :       Value |= op & UINT64_C(15);
   10788           3 :       break;
   10789             :     }
   10790             :     case ARM::MRC: {
   10791             :       // op: p
   10792          25 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10793          25 :       Value |= (op & UINT64_C(15)) << 28;
   10794             :       // op: Rt
   10795          25 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10796          25 :       Value |= (op & UINT64_C(15)) << 12;
   10797             :       // op: cop
   10798          25 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10799          25 :       Value |= (op & UINT64_C(15)) << 8;
   10800             :       // op: opc1
   10801          25 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10802          25 :       Value |= (op & UINT64_C(7)) << 21;
   10803             :       // op: opc2
   10804          25 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10805          25 :       Value |= (op & UINT64_C(7)) << 5;
   10806             :       // op: CRm
   10807          25 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10808          25 :       Value |= op & UINT64_C(15);
   10809             :       // op: CRn
   10810          25 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10811          25 :       Value |= (op & UINT64_C(15)) << 16;
   10812          25 :       break;
   10813             :     }
   10814             :     case ARM::LDRD_POST: {
   10815             :       // op: p
   10816           7 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10817           7 :       Value |= (op & UINT64_C(15)) << 28;
   10818             :       // op: Rt
   10819           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10820           7 :       Value |= (op & UINT64_C(15)) << 12;
   10821             :       // op: offset
   10822           7 :       op = getAddrMode3OffsetOpValue(MI, 4, Fixups, STI);
   10823           7 :       Value |= (op & UINT64_C(256)) << 15;
   10824           7 :       Value |= (op & UINT64_C(512)) << 13;
   10825           7 :       Value |= (op & UINT64_C(240)) << 4;
   10826           7 :       Value |= op & UINT64_C(15);
   10827             :       // op: addr
   10828           7 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10829           7 :       Value |= (op & UINT64_C(15)) << 16;
   10830           7 :       break;
   10831             :     }
   10832             :     case ARM::STRD_PRE: {
   10833             :       // op: p
   10834           3 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10835           3 :       Value |= (op & UINT64_C(15)) << 28;
   10836             :       // op: Rt
   10837           3 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10838           3 :       Value |= (op & UINT64_C(15)) << 12;
   10839             :       // op: addr
   10840           3 :       op = getAddrMode3OpValue(MI, 3, Fixups, STI);
   10841           3 :       Value |= (op & UINT64_C(256)) << 15;
   10842           3 :       Value |= (op & UINT64_C(8192)) << 9;
   10843           3 :       Value |= (op & UINT64_C(7680)) << 7;
   10844           3 :       Value |= (op & UINT64_C(240)) << 4;
   10845           3 :       Value |= op & UINT64_C(15);
   10846           3 :       break;
   10847             :     }
   10848             :     case ARM::STRD_POST: {
   10849             :       // op: p
   10850           7 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10851           7 :       Value |= (op & UINT64_C(15)) << 28;
   10852             :       // op: Rt
   10853           7 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10854           7 :       Value |= (op & UINT64_C(15)) << 12;
   10855             :       // op: offset
   10856           7 :       op = getAddrMode3OffsetOpValue(MI, 4, Fixups, STI);
   10857           7 :       Value |= (op & UINT64_C(256)) << 15;
   10858           7 :       Value |= (op & UINT64_C(512)) << 13;
   10859           7 :       Value |= (op & UINT64_C(240)) << 4;
   10860           7 :       Value |= op & UINT64_C(15);
   10861             :       // op: addr
   10862           7 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10863           7 :       Value |= (op & UINT64_C(15)) << 16;
   10864           7 :       break;
   10865             :     }
   10866             :     case ARM::MCR: {
   10867             :       // op: p
   10868          16 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10869          16 :       Value |= (op & UINT64_C(15)) << 28;
   10870             :       // op: Rt
   10871          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10872          16 :       Value |= (op & UINT64_C(15)) << 12;
   10873             :       // op: cop
   10874          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10875          16 :       Value |= (op & UINT64_C(15)) << 8;
   10876             :       // op: opc1
   10877          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10878          16 :       Value |= (op & UINT64_C(7)) << 21;
   10879             :       // op: opc2
   10880          16 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10881          16 :       Value |= (op & UINT64_C(7)) << 5;
   10882             :       // op: CRm
   10883          16 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10884          16 :       Value |= op & UINT64_C(15);
   10885             :       // op: CRn
   10886          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10887          16 :       Value |= (op & UINT64_C(15)) << 16;
   10888          16 :       break;
   10889             :     }
   10890             :     case ARM::CDP: {
   10891             :       // op: p
   10892          10 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10893          10 :       Value |= (op & UINT64_C(15)) << 28;
   10894             :       // op: opc1
   10895          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10896          10 :       Value |= (op & UINT64_C(15)) << 20;
   10897             :       // op: CRn
   10898          10 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10899          10 :       Value |= (op & UINT64_C(15)) << 16;
   10900             :       // op: CRd
   10901          10 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10902          10 :       Value |= (op & UINT64_C(15)) << 12;
   10903             :       // op: cop
   10904          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10905          10 :       Value |= (op & UINT64_C(15)) << 8;
   10906             :       // op: opc2
   10907          10 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10908          10 :       Value |= (op & UINT64_C(7)) << 5;
   10909             :       // op: CRm
   10910          10 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10911          10 :       Value |= op & UINT64_C(15);
   10912          10 :       break;
   10913             :     }
   10914             :     case ARM::SMLAL:
   10915             :     case ARM::UMLAL: {
   10916             :       // op: p
   10917          26 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10918          26 :       Value |= (op & UINT64_C(15)) << 28;
   10919             :       // op: s
   10920          26 :       op = getCCOutOpValue(MI, 8, Fixups, STI);
   10921          26 :       Value |= (op & UINT64_C(1)) << 20;
   10922             :       // op: RdLo
   10923          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10924          26 :       Value |= (op & UINT64_C(15)) << 12;
   10925             :       // op: RdHi
   10926          26 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10927          26 :       Value |= (op & UINT64_C(15)) << 16;
   10928             :       // op: Rm
   10929          26 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10930          26 :       Value |= (op & UINT64_C(15)) << 8;
   10931             :       // op: Rn
   10932          26 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10933          26 :       Value |= op & UINT64_C(15);
   10934          26 :       break;
   10935             :     }
   10936         283 :     case ARM::tPUSH: {
   10937             :       // op: regs
   10938         283 :       op = getRegisterListOpValue(MI, 2, Fixups, STI);
   10939         283 :       Value |= (op & UINT64_C(16384)) >> 6;
   10940         283 :       Value |= op & UINT64_C(255);
   10941         283 :       break;
   10942             :     }
   10943         303 :     case ARM::tPOP: {
   10944             :       // op: regs
   10945         303 :       op = getRegisterListOpValue(MI, 2, Fixups, STI);
   10946         303 :       Value |= (op & UINT64_C(32768)) >> 7;
   10947         303 :       Value |= op & UINT64_C(255);
   10948         303 :       break;
   10949             :     }
   10950             :     case ARM::t2MOVr:
   10951             :     case ARM::t2MVNr:
   10952             :     case ARM::t2RRX: {
   10953             :       // op: s
   10954          58 :       op = getCCOutOpValue(MI, 4, Fixups, STI);
   10955          58 :       Value |= (op & UINT64_C(1)) << 20;
   10956             :       // op: Rd
   10957          58 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10958          58 :       Value |= (op & UINT64_C(15)) << 8;
   10959             :       // op: Rm
   10960          58 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10961          58 :       Value |= op & UINT64_C(15);
   10962          58 :       break;
   10963             :     }
   10964             :     case ARM::t2MOVi:
   10965             :     case ARM::t2MVNi: {
   10966             :       // op: s
   10967         252 :       op = getCCOutOpValue(MI, 4, Fixups, STI);
   10968         252 :       Value |= (op & UINT64_C(1)) << 20;
   10969             :       // op: Rd
   10970         252 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10971         252 :       Value |= (op & UINT64_C(15)) << 8;
   10972             :       // op: imm
   10973         252 :       op = getT2SOImmOpValue(MI, 1, Fixups, STI);
   10974         252 :       Value |= (op & UINT64_C(2048)) << 15;
   10975         252 :       Value |= (op & UINT64_C(1792)) << 4;
   10976         252 :       Value |= op & UINT64_C(255);
   10977         252 :       break;
   10978             :     }
   10979             :     case ARM::t2ASRri:
   10980             :     case ARM::t2LSLri:
   10981             :     case ARM::t2LSRri:
   10982             :     case ARM::t2RORri: {
   10983             :       // op: s
   10984         100 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
   10985         100 :       Value |= (op & UINT64_C(1)) << 20;
   10986             :       // op: Rd
   10987         100 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10988         100 :       Value |= (op & UINT64_C(15)) << 8;
   10989             :       // op: Rm
   10990         100 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10991         100 :       Value |= op & UINT64_C(15);
   10992             :       // op: imm
   10993         100 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10994         100 :       Value |= (op & UINT64_C(28)) << 10;
   10995         100 :       Value |= (op & UINT64_C(3)) << 6;
   10996         100 :       break;
   10997             :     }
   10998             :     case ARM::t2ADCrr:
   10999             :     case ARM::t2ADDrr:
   11000             :     case ARM::t2ANDrr:
   11001             :     case ARM::t2ASRrr:
   11002             :     case ARM::t2BICrr:
   11003             :     case ARM::t2EORrr:
   11004             :     case ARM::t2LSLrr:
   11005             :     case ARM::t2LSRrr:
   11006             :     case ARM::t2ORNrr:
   11007             :     case ARM::t2ORRrr:
   11008             :     case ARM::t2RORrr:
   11009             :     case ARM::t2RSBrr:
   11010             :     case ARM::t2SBCrr:
   11011             :     case ARM::t2SUBrr: {
   11012             :       // op: s
   11013         600 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
   11014         600 :       Value |= (op & UINT64_C(1)) << 20;
   11015             :       // op: Rd
   11016         600 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   11017         600 :       Value |= (op & UINT64_C(15)) << 8;
   11018             :       // op: Rn
   11019         600 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   11020         600 :       Value |= (op & UINT64_C(15)) << 16;
   11021             :       // op: Rm
   11022         600 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   11023         600 :       Value |= op & UINT64_C(15);
   11024         600 :       break;
   11025             :     }
   11026             :     case ARM::t2ADCri:
   11027             :     case ARM::t2ADDri:
   11028             :     case ARM::t2ANDri:
   11029             :     case ARM::t2BICri:
   11030             :     case ARM::t2EORri:
   11031             :     case ARM::t2ORNri:
   11032             :     case ARM::t2ORRri:
   11033             :     case ARM::t2RSBri:
   11034             :     case ARM::t2SBCri:
   11035             :     case ARM::t2SUBri: {
   11036             :       // op: s
   11037        1097 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
   11038        1097 :       Value |= (op & UINT64_C(1)) << 20;
   11039             :       // op: Rd
   11040        1097 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   11041        1097 :       Value |= (op & UINT64_C(15)) << 8;
   11042             :       // op: Rn
   11043        1097 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   11044        1097 :       Value |= (op & UINT64_C(15)) << 16;
   11045             :       // op: imm
   11046        1097 :       op = getT2SOImmOpValue(MI, 2, Fixups, STI);
   11047        1097 :       Value |= (op & UINT64_C(2048)) << 15;
   11048        1097 :       Value |= (op & UINT64_C(1792)) << 4;
   11049        1097 :       Value |= op & UINT64_C(255);
   11050        1097 :       break;
   11051             :     }
   11052             :     case ARM::t2MVNs: {
   11053             :       // op: s
   11054          10 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
   11055          10 :       Value |= (op & UINT64_C(1)) << 20;
   11056             :       // op: Rd
   11057          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   11058          10 :       Value |= (op & UINT64_C(15)) << 8;
   11059             :       // op: ShiftedRm
   11060          10 :       op = getT2SORegOpValue(MI, 1, Fixups, STI);
   11061          10 :       Value |= (op & UINT64_C(3584)) << 3;
   11062          10 :       Value |= (op & UINT64_C(480)) >> 1;
   11063          10 :       Value |= op & UINT64_C(15);
   11064          10 :       break;
   11065             :     }
   11066             :     case ARM::t2ADCrs:
   11067             :     case ARM::t2ADDrs:
   11068             :     case ARM::t2ANDrs:
   11069             :     case ARM::t2BICrs:
   11070             :     case ARM::t2EORrs:
   11071             :     case ARM::t2ORNrs:
   11072             :     case ARM::t2ORRrs:
   11073             :     case ARM::t2RSBrs:
   11074             :     case ARM::t2SBCrs:
   11075             :     case ARM::t2SUBrs: {
   11076             :       // op: s
   11077         141 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   11078         141 :       Value |= (op & UINT64_C(1)) << 20;
   11079             :       // op: Rd
   11080         141 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   11081         141 :       Value |= (op & UINT64_C(15)) << 8;
   11082             :       // op: Rn
   11083         141 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   11084         141 :       Value |= (op & UINT64_C(15)) << 16;
   11085             :       // op: ShiftedRm
   11086         141 :       op = getT2SORegOpValue(MI, 2, Fixups, STI);
   11087         141 :       Value |= (op & UINT64_C(3584)) << 3;
   11088         141 :       Value |= (op & UINT64_C(480)) >> 1;
   11089         141 :       Value |= op & UINT64_C(15);
   11090         141 :       break;
   11091             :     }
   11092           9 :     case ARM::PLDWrs:
   11093             :     case ARM::PLDrs:
   11094             :     case ARM::PLIrs: {
   11095             :       // op: shift
   11096           9 :       op = getLdStSORegOpValue(MI, 0, Fixups, STI);
   11097           9 :       Value |= (op & UINT64_C(4096)) << 11;
   11098           9 :       Value |= (op & UINT64_C(122880)) << 3;
   11099           9 :       Value |= op & UINT64_C(4064);
   11100           9 :       Value |= op & UINT64_C(15);
   11101           9 :       break;
   11102             :     }
   11103          20 :     case ARM::BLXi: {
   11104             :       // op: target
   11105          20 :       op = getARMBLXTargetOpValue(MI, 0, Fixups, STI);
   11106          20 :       Value |= (op & UINT64_C(1)) << 24;
   11107          20 :       Value |= (op & UINT64_C(33554430)) >> 1;
   11108          20 :       break;
   11109             :     }
   11110         148 :     case ARM::tB: {
   11111             :       // op: target
   11112         148 :       op = getThumbBRTargetOpValue(MI, 0, Fixups, STI);
   11113         148 :       Value |= op & UINT64_C(2047);
   11114         148 :       break;
   11115             :     }
   11116         143 :     case ARM::t2B: {
   11117             :       // op: target
   11118         143 :       op = getThumbBranchTargetOpValue(MI, 0, Fixups, STI);
   11119         143 :       Value |= (op & UINT64_C(8388608)) << 3;
   11120         143 :       Value |= (op & UINT64_C(2095104)) << 5;
   11121         143 :       Value |= (op & UINT64_C(4194304)) >> 9;
   11122         143 :       Value |= (op & UINT64_C(2097152)) >> 10;
   11123         143 :       Value |= op & UINT64_C(2047);
   11124         143 :       break;
   11125             :     }
   11126          38 :     case ARM::tCBNZ:
   11127             :     case ARM::tCBZ: {
   11128             :       // op: target
   11129          38 :       op = getThumbCBTargetOpValue(MI, 1, Fixups, STI);
   11130          38 :       Value |= (op & UINT64_C(32)) << 4;
   11131          38 :       Value |= (op & UINT64_C(31)) << 3;
   11132             :       // op: Rn
   11133          38 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   11134          38 :       Value |= op & UINT64_C(7);
   11135          38 :       break;
   11136             :     }
   11137             :     case ARM::BKPT:
   11138             :     case ARM::HLT: {
   11139             :       // op: val
   11140          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   11141          15 :       Value |= (op & UINT64_C(65520)) << 4;
   11142          15 :       Value |= op & UINT64_C(15);
   11143          15 :       break;
   11144             :     }
   11145             :     case ARM::tBKPT: {
   11146             :       // op: val
   11147          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   11148          12 :       Value |= op & UINT64_C(255);
   11149          12 :       break;
   11150             :     }
   11151             :     case ARM::tHLT: {
   11152             :       // op: val
   11153           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   11154           6 :       Value |= op & UINT64_C(63);
   11155           6 :       break;
   11156             :     }
   11157             :   default:
   11158             :     std::string msg;
   11159             :     raw_string_ostream Msg(msg);
   11160           0 :     Msg << "Not supported instr: " << MI;
   11161           0 :     report_fatal_error(Msg.str());
   11162             :   }
   11163       41931 :   return Value;
   11164             : }
   11165             : 
   11166             : #ifdef ENABLE_INSTR_PREDICATE_VERIFIER
   11167             : #undef ENABLE_INSTR_PREDICATE_VERIFIER
   11168             : #include <sstream>
   11169             : 
   11170             : // Flags for subtarget features that participate in instruction matching.
   11171             : enum SubtargetFeatureFlag : uint64_t {
   11172             :   Feature_HasV4T = (1ULL << 22),
   11173             :   Feature_HasV5T = (1ULL << 23),
   11174             :   Feature_HasV5TE = (1ULL << 24),
   11175             :   Feature_HasV6 = (1ULL << 25),
   11176             :   Feature_HasV6M = (1ULL << 27),
   11177             :   Feature_HasV8MBaseline = (1ULL << 32),
   11178             :   Feature_HasV8MMainline = (1ULL << 33),
   11179             :   Feature_HasV6T2 = (1ULL << 28),
   11180             :   Feature_HasV6K = (1ULL << 26),
   11181             :   Feature_HasV7 = (1ULL << 29),
   11182             :   Feature_HasV8 = (1ULL << 31),
   11183             :   Feature_PreV8 = (1ULL << 48),
   11184             :   Feature_HasV8_1a = (1ULL << 34),
   11185             :   Feature_HasV8_2a = (1ULL << 35),
   11186             :   Feature_HasV8_3a = (1ULL << 36),
   11187             :   Feature_HasV8_4a = (1ULL << 37),
   11188             :   Feature_HasV8_5a = (1ULL << 38),
   11189             :   Feature_HasVFP2 = (1ULL << 39),
   11190             :   Feature_HasVFP3 = (1ULL << 40),
   11191             :   Feature_HasVFP4 = (1ULL << 41),
   11192             :   Feature_HasDPVFP = (1ULL << 7),
   11193             :   Feature_HasFPARMv8 = (1ULL << 14),
   11194             :   Feature_HasNEON = (1ULL << 17),
   11195             :   Feature_HasSHA2 = (1ULL << 19),
   11196             :   Feature_HasAES = (1ULL << 1),
   11197             :   Feature_HasCrypto = (1ULL << 4),
   11198             :   Feature_HasDotProd = (1ULL << 11),
   11199             :   Feature_HasCRC = (1ULL << 3),
   11200             :   Feature_HasRAS = (1ULL << 18),
   11201             :   Feature_HasFP16 = (1ULL << 12),
   11202             :   Feature_HasFullFP16 = (1ULL << 15),
   11203             :   Feature_HasFP16FML = (1ULL << 13),
   11204             :   Feature_HasDivideInThumb = (1ULL << 10),
   11205             :   Feature_HasDivideInARM = (1ULL << 9),
   11206             :   Feature_HasDSP = (1ULL << 8),
   11207             :   Feature_HasDB = (1ULL << 5),
   11208             :   Feature_HasDFB = (1ULL << 6),
   11209             :   Feature_HasV7Clrex = (1ULL << 30),
   11210             :   Feature_HasAcquireRelease = (1ULL << 2),
   11211             :   Feature_HasMP = (1ULL << 16),
   11212             :   Feature_HasVirtualization = (1ULL << 42),
   11213             :   Feature_HasTrustZone = (1ULL << 21),
   11214             :   Feature_Has8MSecExt = (1ULL << 0),
   11215             :   Feature_IsThumb = (1ULL << 46),
   11216             :   Feature_IsThumb2 = (1ULL << 47),
   11217             :   Feature_IsMClass = (1ULL << 44),
   11218             :   Feature_IsNotMClass = (1ULL << 45),
   11219             :   Feature_IsARM = (1ULL << 43),
   11220             :   Feature_UseNaClTrap = (1ULL << 49),
   11221             :   Feature_UseNegativeImmediates = (1ULL << 50),
   11222             :   Feature_HasSpecCtrl = (1ULL << 20),
   11223             :   Feature_None = 0
   11224             : };
   11225             : 
   11226             : #ifndef NDEBUG
   11227             : static const char *SubtargetFeatureNames[] = {
   11228             :   "Feature_Has8MSecExt",
   11229             :   "Feature_HasAES",
   11230             :   "Feature_HasAcquireRelease",
   11231             :   "Feature_HasCRC",
   11232             :   "Feature_HasCrypto",
   11233             :   "Feature_HasDB",
   11234             :   "Feature_HasDFB",
   11235             :   "Feature_HasDPVFP",
   11236             :   "Feature_HasDSP",
   11237             :   "Feature_HasDivideInARM",
   11238             :   "Feature_HasDivideInThumb",
   11239             :   "Feature_HasDotProd",
   11240             :   "Feature_HasFP16",
   11241             :   "Feature_HasFP16FML",
   11242             :   "Feature_HasFPARMv8",
   11243             :   "Feature_HasFullFP16",
   11244             :   "Feature_HasMP",
   11245             :   "Feature_HasNEON",
   11246             :   "Feature_HasRAS",
   11247             :   "Feature_HasSHA2",
   11248             :   "Feature_HasSpecCtrl",
   11249             :   "Feature_HasTrustZone",
   11250             :   "Feature_HasV4T",
   11251             :   "Feature_HasV5T",
   11252             :   "Feature_HasV5TE",
   11253             :   "Feature_HasV6",
   11254             :   "Feature_HasV6K",
   11255             :   "Feature_HasV6M",
   11256             :   "Feature_HasV6T2",
   11257             :   "Feature_HasV7",
   11258             :   "Feature_HasV7Clrex",
   11259             :   "Feature_HasV8",
   11260             :   "Feature_HasV8MBaseline",
   11261             :   "Feature_HasV8MMainline",
   11262             :   "Feature_HasV8_1a",
   11263             :   "Feature_HasV8_2a",
   11264             :   "Feature_HasV8_3a",
   11265             :   "Feature_HasV8_4a",
   11266             :   "Feature_HasV8_5a",
   11267             :   "Feature_HasVFP2",
   11268             :   "Feature_HasVFP3",
   11269             :   "Feature_HasVFP4",
   11270             :   "Feature_HasVirtualization",
   11271             :   "Feature_IsARM",
   11272             :   "Feature_IsMClass",
   11273             :   "Feature_IsNotMClass",
   11274             :   "Feature_IsThumb",
   11275             :   "Feature_IsThumb2",
   11276             :   "Feature_PreV8",
   11277             :   "Feature_UseNaClTrap",
   11278             :   "Feature_UseNegativeImmediates",
   11279             :   nullptr
   11280             : };
   11281             : 
   11282             : #endif // NDEBUG
   11283             : uint64_t ARMMCCodeEmitter::
   11284             : computeAvailableFeatures(const FeatureBitset& FB) const {
   11285             :   uint64_t Features = 0;
   11286             :   if ((FB[ARM::HasV4TOps]))
   11287             :     Features |= Feature_HasV4T;
   11288             :   if ((FB[ARM::HasV5TOps]))
   11289             :     Features |= Feature_HasV5T;
   11290             :   if ((FB[ARM::HasV5TEOps]))
   11291             :     Features |= Feature_HasV5TE;
   11292             :   if ((FB[ARM::HasV6Ops]))
   11293             :     Features |= Feature_HasV6;
   11294             :   if ((FB[ARM::HasV6MOps]))
   11295             :     Features |= Feature_HasV6M;
   11296             :   if ((FB[ARM::HasV8MBaselineOps]))
   11297             :     Features |= Feature_HasV8MBaseline;
   11298             :   if ((FB[ARM::HasV8MMainlineOps]))
   11299             :     Features |= Feature_HasV8MMainline;
   11300             :   if ((FB[ARM::HasV6T2Ops]))
   11301             :     Features |= Feature_HasV6T2;
   11302             :   if ((FB[ARM::HasV6KOps]))
   11303             :     Features |= Feature_HasV6K;
   11304             :   if ((FB[ARM::HasV7Ops]))
   11305             :     Features |= Feature_HasV7;
   11306             :   if ((FB[ARM::HasV8Ops]))
   11307             :     Features |= Feature_HasV8;
   11308             :   if ((!FB[ARM::HasV8Ops]))
   11309             :     Features |= Feature_PreV8;
   11310             :   if ((FB[ARM::HasV8_1aOps]))
   11311             :     Features |= Feature_HasV8_1a;
   11312             :   if ((FB[ARM::HasV8_2aOps]))
   11313             :     Features |= Feature_HasV8_2a;
   11314             :   if ((FB[ARM::HasV8_3aOps]))
   11315             :     Features |= Feature_HasV8_3a;
   11316             :   if ((FB[ARM::HasV8_4aOps]))
   11317             :     Features |= Feature_HasV8_4a;
   11318             :   if ((FB[ARM::HasV8_5aOps]))
   11319             :     Features |= Feature_HasV8_5a;
   11320             :   if ((FB[ARM::FeatureVFP2]))
   11321             :     Features |= Feature_HasVFP2;
   11322             :   if ((FB[ARM::FeatureVFP3]))
   11323             :     Features |= Feature_HasVFP3;
   11324             :   if ((FB[ARM::FeatureVFP4]))
   11325             :     Features |= Feature_HasVFP4;
   11326             :   if ((!FB[ARM::FeatureVFPOnlySP]))
   11327             :     Features |= Feature_HasDPVFP;
   11328             :   if ((FB[ARM::FeatureFPARMv8]))
   11329             :     Features |= Feature_HasFPARMv8;
   11330             :   if ((FB[ARM::FeatureNEON]))
   11331             :     Features |= Feature_HasNEON;
   11332             :   if ((FB[ARM::FeatureSHA2]))
   11333             :     Features |= Feature_HasSHA2;
   11334             :   if ((FB[ARM::FeatureAES]))
   11335             :     Features |= Feature_HasAES;
   11336             :   if ((FB[ARM::FeatureCrypto]))
   11337             :     Features |= Feature_HasCrypto;
   11338             :   if ((FB[ARM::FeatureDotProd]))
   11339             :     Features |= Feature_HasDotProd;
   11340             :   if ((FB[ARM::FeatureCRC]))
   11341             :     Features |= Feature_HasCRC;
   11342             :   if ((FB[ARM::FeatureRAS]))
   11343             :     Features |= Feature_HasRAS;
   11344             :   if ((FB[ARM::FeatureFP16]))
   11345             :     Features |= Feature_HasFP16;
   11346             :   if ((FB[ARM::FeatureFullFP16]))
   11347             :     Features |= Feature_HasFullFP16;
   11348             :   if ((FB[ARM::FeatureFP16FML]))
   11349             :     Features |= Feature_HasFP16FML;
   11350             :   if ((FB[ARM::FeatureHWDivThumb]))
   11351             :     Features |= Feature_HasDivideInThumb;
   11352             :   if ((FB[ARM::FeatureHWDivARM]))
   11353             :     Features |= Feature_HasDivideInARM;
   11354             :   if ((FB[ARM::FeatureDSP]))
   11355             :     Features |= Feature_HasDSP;
   11356             :   if ((FB[ARM::FeatureDB]))
   11357             :     Features |= Feature_HasDB;
   11358             :   if ((FB[ARM::FeatureDFB]))
   11359             :     Features |= Feature_HasDFB;
   11360             :   if ((FB[ARM::FeatureV7Clrex]))
   11361             :     Features |= Feature_HasV7Clrex;
   11362             :   if ((FB[ARM::FeatureAcquireRelease]))
   11363             :     Features |= Feature_HasAcquireRelease;
   11364             :   if ((FB[ARM::FeatureMP]))
   11365             :     Features |= Feature_HasMP;
   11366             :   if ((FB[ARM::FeatureVirtualization]))
   11367             :     Features |= Feature_HasVirtualization;
   11368             :   if ((FB[ARM::FeatureTrustZone]))
   11369             :     Features |= Feature_HasTrustZone;
   11370             :   if ((FB[ARM::Feature8MSecExt]))
   11371             :     Features |= Feature_Has8MSecExt;
   11372             :   if ((FB[ARM::ModeThumb]))
   11373             :     Features |= Feature_IsThumb;
   11374             :   if ((FB[ARM::ModeThumb]) && (FB[ARM::FeatureThumb2]))
   11375             :     Features |= Feature_IsThumb2;
   11376             :   if ((FB[ARM::FeatureMClass]))
   11377             :     Features |= Feature_IsMClass;
   11378             :   if ((!FB[ARM::FeatureMClass]))
   11379             :     Features |= Feature_IsNotMClass;
   11380             :   if ((!FB[ARM::ModeThumb]))
   11381             :     Features |= Feature_IsARM;
   11382             :   if ((FB[ARM::FeatureNaClTrap]))
   11383             :     Features |= Feature_UseNaClTrap;
   11384             :   if ((!FB[ARM::FeatureNoNegativeImmediates]))
   11385             :     Features |= Feature_UseNegativeImmediates;
   11386             :   if ((FB[ARM::FeatureSpecCtrl]))
   11387             :     Features |= Feature_HasSpecCtrl;
   11388             :   return Features;
   11389             : }
   11390             : 
   11391             : void ARMMCCodeEmitter::verifyInstructionPredicates(
   11392             :     const MCInst &Inst, uint64_t AvailableFeatures) const {
   11393             : #ifndef NDEBUG
   11394             :   static uint64_t RequiredFeatures[] = {
   11395             :     0, // PHI = 0
   11396             :     0, // INLINEASM = 1
   11397             :     0, // CFI_INSTRUCTION = 2
   11398             :     0, // EH_LABEL = 3
   11399             :     0, // GC_LABEL = 4
   11400             :     0, // ANNOTATION_LABEL = 5
   11401             :     0, // KILL = 6
   11402             :     0, // EXTRACT_SUBREG = 7
   11403             :     0, // INSERT_SUBREG = 8
   11404             :     0, // IMPLICIT_DEF = 9
   11405             :     0, // SUBREG_TO_REG = 10
   11406             :     0, // COPY_TO_REGCLASS = 11
   11407             :     0, // DBG_VALUE = 12
   11408             :     0, // DBG_LABEL = 13
   11409             :     0, // REG_SEQUENCE = 14
   11410             :     0, // COPY = 15
   11411             :     0, // BUNDLE = 16
   11412             :     0, // LIFETIME_START = 17
   11413             :     0, // LIFETIME_END = 18
   11414             :     0, // STACKMAP = 19
   11415             :     0, // FENTRY_CALL = 20
   11416             :     0, // PATCHPOINT = 21
   11417             :     0, // LOAD_STACK_GUARD = 22
   11418             :     0, // STATEPOINT = 23
   11419             :     0, // LOCAL_ESCAPE = 24
   11420             :     0, // FAULTING_OP = 25
   11421             :     0, // PATCHABLE_OP = 26
   11422             :     0, // PATCHABLE_FUNCTION_ENTER = 27
   11423             :     0, // PATCHABLE_RET = 28
   11424             :     0, // PATCHABLE_FUNCTION_EXIT = 29
   11425             :     0, // PATCHABLE_TAIL_CALL = 30
   11426             :     0, // PATCHABLE_EVENT_CALL = 31
   11427             :     0, // PATCHABLE_TYPED_EVENT_CALL = 32
   11428             :     0, // ICALL_BRANCH_FUNNEL = 33
   11429             :     0, // G_ADD = 34
   11430             :     0, // G_SUB = 35
   11431             :     0, // G_MUL = 36
   11432             :     0, // G_SDIV = 37
   11433             :     0, // G_UDIV = 38
   11434             :     0, // G_SREM = 39
   11435             :     0, // G_UREM = 40
   11436             :     0, // G_AND = 41
   11437             :     0, // G_OR = 42
   11438             :     0, // G_XOR = 43
   11439             :     0, // G_IMPLICIT_DEF = 44
   11440             :     0, // G_PHI = 45
   11441             :     0, // G_FRAME_INDEX = 46
   11442             :     0, // G_GLOBAL_VALUE = 47
   11443             :     0, // G_EXTRACT = 48
   11444             :     0, // G_UNMERGE_VALUES = 49
   11445             :     0, // G_INSERT = 50
   11446             :     0, // G_MERGE_VALUES = 51
   11447             :     0, // G_PTRTOINT = 52
   11448             :     0, // G_INTTOPTR = 53
   11449             :     0, // G_BITCAST = 54
   11450             :     0, // G_INTRINSIC_TRUNC = 55
   11451             :     0, // G_INTRINSIC_ROUND = 56
   11452             :     0, // G_LOAD = 57
   11453             :     0, // G_SEXTLOAD = 58
   11454             :     0, // G_ZEXTLOAD = 59
   11455             :     0, // G_STORE = 60
   11456             :     0, // G_ATOMIC_CMPXCHG_WITH_SUCCESS = 61
   11457             :     0, // G_ATOMIC_CMPXCHG = 62
   11458             :     0, // G_ATOMICRMW_XCHG = 63
   11459             :     0, // G_ATOMICRMW_ADD = 64
   11460             :     0, // G_ATOMICRMW_SUB = 65
   11461             :     0, // G_ATOMICRMW_AND = 66
   11462             :     0, // G_ATOMICRMW_NAND = 67
   11463             :     0, // G_ATOMICRMW_OR = 68
   11464             :     0, // G_ATOMICRMW_XOR = 69
   11465             :     0, // G_ATOMICRMW_MAX = 70
   11466             :     0, // G_ATOMICRMW_MIN = 71
   11467             :     0, // G_ATOMICRMW_UMAX = 72
   11468             :     0, // G_ATOMICRMW_UMIN = 73
   11469             :     0, // G_BRCOND = 74
   11470             :     0, // G_BRINDIRECT = 75
   11471             :     0, // G_INTRINSIC = 76
   11472             :     0, // G_INTRINSIC_W_SIDE_EFFECTS = 77
   11473             :     0, // G_ANYEXT = 78
   11474             :     0, // G_TRUNC = 79
   11475             :     0, // G_CONSTANT = 80
   11476             :     0, // G_FCONSTANT = 81
   11477             :     0, // G_VASTART = 82
   11478             :     0, // G_VAARG = 83
   11479             :     0, // G_SEXT = 84
   11480             :     0, // G_ZEXT = 85
   11481             :     0, // G_SHL = 86
   11482             :     0, // G_LSHR = 87
   11483             :     0, // G_ASHR = 88
   11484             :     0, // G_ICMP = 89
   11485             :     0, // G_FCMP = 90
   11486             :     0, // G_SELECT = 91
   11487             :     0, // G_UADDO = 92
   11488             :     0, // G_UADDE = 93
   11489             :     0, // G_USUBO = 94
   11490             :     0, // G_USUBE = 95
   11491             :     0, // G_SADDO = 96
   11492             :     0, // G_SADDE = 97
   11493             :     0, // G_SSUBO = 98
   11494             :     0, // G_SSUBE = 99
   11495             :     0, // G_UMULO = 100
   11496             :     0, // G_SMULO = 101
   11497             :     0, // G_UMULH = 102
   11498             :     0, // G_SMULH = 103
   11499             :     0, // G_FADD = 104
   11500             :     0, // G_FSUB = 105
   11501             :     0, // G_FMUL = 106
   11502             :     0, // G_FMA = 107
   11503             :     0, // G_FDIV = 108
   11504             :     0, // G_FREM = 109
   11505             :     0, // G_FPOW = 110
   11506             :     0, // G_FEXP = 111
   11507             :     0, // G_FEXP2 = 112
   11508             :     0, // G_FLOG = 113
   11509             :     0, // G_FLOG2 = 114
   11510             :     0, // G_FNEG = 115
   11511             :     0, // G_FPEXT = 116
   11512             :     0, // G_FPTRUNC = 117
   11513             :     0, // G_FPTOSI = 118
   11514             :     0, // G_FPTOUI = 119
   11515             :     0, // G_SITOFP = 120
   11516             :     0, // G_UITOFP = 121
   11517             :     0, // G_FABS = 122
   11518             :     0, // G_GEP = 123
   11519             :     0, // G_PTR_MASK = 124
   11520             :     0, // G_BR = 125
   11521             :     0, // G_INSERT_VECTOR_ELT = 126
   11522             :     0, // G_EXTRACT_VECTOR_ELT = 127
   11523             :     0, // G_SHUFFLE_VECTOR = 128
   11524             :     0, // G_CTTZ = 129
   11525             :     0, // G_CTTZ_ZERO_UNDEF = 130
   11526             :     0, // G_CTLZ = 131
   11527             :     0, // G_CTLZ_ZERO_UNDEF = 132
   11528             :     0, // G_CTPOP = 133
   11529             :     0, // G_BSWAP = 134
   11530             :     0, // G_ADDRSPACE_CAST = 135
   11531             :     0, // G_BLOCK_ADDR = 136
   11532             :     Feature_IsARM | 0, // ABS = 137
   11533             :     Feature_IsARM | 0, // ADDSri = 138
   11534             :     Feature_IsARM | 0, // ADDSrr = 139
   11535             :     Feature_IsARM | 0, // ADDSrsi = 140
   11536             :     Feature_IsARM | 0, // ADDSrsr = 141
   11537             :     0, // ADJCALLSTACKDOWN = 142
   11538             :     0, // ADJCALLSTACKUP = 143
   11539             :     Feature_IsARM | 0, // ASRi = 144
   11540             :     Feature_IsARM | 0, // ASRr = 145
   11541             :     Feature_IsARM | 0, // B = 146
   11542             :     0, // BCCZi64 = 147
   11543             :     0, // BCCi64 = 148
   11544             :     Feature_IsARM | 0, // BMOVPCB_CALL = 149
   11545             :     Feature_IsARM | 0, // BMOVPCRX_CALL = 150
   11546             :     Feature_IsARM | 0, // BR_JTadd = 151
   11547             :     Feature_IsARM | 0, // BR_JTm_i12 = 152
   11548             :     Feature_IsARM | 0, // BR_JTm_rs = 153
   11549             :     Feature_IsARM | 0, // BR_JTr = 154
   11550             :     Feature_IsARM | Feature_HasV4T | 0, // BX_CALL = 155
   11551             :     0, // CMP_SWAP_16 = 156
   11552             :     0, // CMP_SWAP_32 = 157
   11553             :     0, // CMP_SWAP_64 = 158
   11554             :     0, // CMP_SWAP_8 = 159
   11555             :     0, // CONSTPOOL_ENTRY = 160
   11556             :     0, // COPY_STRUCT_BYVAL_I32 = 161
   11557             :     0, // CompilerBarrier = 162
   11558             :     Feature_IsARM | 0, // ITasm = 163
   11559             :     0, // Int_eh_sjlj_dispatchsetup = 164
   11560             :     Feature_IsARM | 0, // Int_eh_sjlj_longjmp = 165
   11561             :     Feature_IsARM | Feature_HasVFP2 | 0, // Int_eh_sjlj_setjmp = 166
   11562             :     Feature_IsARM | 0, // Int_eh_sjlj_setjmp_nofp = 167
   11563             :     0, // Int_eh_sjlj_setup_dispatch = 168
   11564             :     0, // JUMPTABLE_ADDRS = 169
   11565             :     0, // JUMPTABLE_INSTS = 170
   11566             :     0, // JUMPTABLE_TBB = 171
   11567             :     0, // JUMPTABLE_TBH = 172
   11568             :     Feature_IsARM | 0, // LDMIA_RET = 173
   11569             :     Feature_IsARM | 0, // LDRBT_POST = 174
   11570             :     Feature_IsARM | 0, // LDRConstPool = 175
   11571             :     Feature_IsARM | 0, // LDRLIT_ga_abs = 176
   11572             :     Feature_IsARM | 0, // LDRLIT_ga_pcrel = 177
   11573             :     Feature_IsARM | 0, // LDRLIT_ga_pcrel_ldr = 178
   11574             :     Feature_IsARM | 0, // LDRT_POST = 179
   11575             :     Feature_IsARM | 0, // LEApcrel = 180
   11576             :     Feature_IsARM | 0, // LEApcrelJT = 181
   11577             :     Feature_IsARM | 0, // LSLi = 182
   11578             :     Feature_IsARM | 0, // LSLr = 183
   11579             :     Feature_IsARM | 0, // LSRi = 184
   11580             :     Feature_IsARM | 0, // LSRr = 185
   11581             :     0, // MEMCPY = 186
   11582             :     Feature_IsARM | 0, // MLAv5 = 187
   11583             :     Feature_IsARM | 0, // MOVCCi = 188
   11584             :     Feature_IsARM | Feature_HasV6T2 | 0, // MOVCCi16 = 189
   11585             :     Feature_IsARM | Feature_HasV6T2 | 0, // MOVCCi32imm = 190
   11586             :     Feature_IsARM | 0, // MOVCCr = 191
   11587             :     Feature_IsARM | 0, // MOVCCsi = 192
   11588             :     Feature_IsARM | 0, // MOVCCsr = 193
   11589             :     Feature_IsARM | 0, // MOVPCRX = 194
   11590             :     0, // MOVTi16_ga_pcrel = 195
   11591             :     Feature_IsARM | 0, // MOV_ga_pcrel = 196
   11592             :     Feature_IsARM | 0, // MOV_ga_pcrel_ldr = 197
   11593             :     0, // MOVi16_ga_pcrel = 198
   11594             :     Feature_IsARM | 0, // MOVi32imm = 199
   11595             :     Feature_IsARM | 0, // MOVsra_flag = 200
   11596             :     Feature_IsARM | 0, // MOVsrl_flag = 201
   11597             :     Feature_IsARM | 0, // MULv5 = 202
   11598             :     Feature_IsARM | 0, // MVNCCi = 203
   11599             :     Feature_IsARM | 0, // PICADD = 204
   11600             :     Feature_IsARM | 0, // PICLDR = 205
   11601             :     Feature_IsARM | 0, // PICLDRB = 206
   11602             :     Feature_IsARM | 0, // PICLDRH = 207
   11603             :     Feature_IsARM | 0, // PICLDRSB = 208
   11604             :     Feature_IsARM | 0, // PICLDRSH = 209
   11605             :     Feature_IsARM | 0, // PICSTR = 210
   11606             :     Feature_IsARM | 0, // PICSTRB = 211
   11607             :     Feature_IsARM | 0, // PICSTRH = 212
   11608             :     Feature_IsARM | 0, // RORi = 213
   11609             :     Feature_IsARM | 0, // RORr = 214
   11610             :     Feature_IsARM | 0, // RRX = 215
   11611             :     Feature_IsARM | 0, // RRXi = 216
   11612             :     Feature_IsARM | 0, // RSBSri = 217
   11613             :     Feature_IsARM | 0, // RSBSrsi = 218
   11614             :     Feature_IsARM | 0, // RSBSrsr = 219
   11615             :     Feature_IsARM | 0, // SMLALv5 = 220
   11616             :     Feature_IsARM | 0, // SMULLv5 = 221
   11617             :     0, // SPACE = 222
   11618             :     Feature_IsARM | 0, // STRBT_POST = 223
   11619             :     Feature_IsARM | 0, // STRBi_preidx = 224
   11620             :     Feature_IsARM | 0, // STRBr_preidx = 225
   11621             :     Feature_IsARM | 0, // STRH_preidx = 226
   11622             :     Feature_IsARM | 0, // STRT_POST = 227
   11623             :     Feature_IsARM | 0, // STRi_preidx = 228
   11624             :     Feature_IsARM | 0, // STRr_preidx = 229
   11625             :     Feature_IsARM | 0, // SUBS_PC_LR = 230
   11626             :     Feature_IsARM | 0, // SUBSri = 231
   11627             :     Feature_IsARM | 0, // SUBSrr = 232
   11628             :     Feature_IsARM | 0, // SUBSrsi = 233
   11629             :     Feature_IsARM | 0, // SUBSrsr = 234
   11630             :     Feature_IsARM | 0, // TAILJMPd = 235
   11631             :     Feature_IsARM | Feature_HasV4T | 0, // TAILJMPr = 236
   11632             :     Feature_IsARM | 0, // TAILJMPr4 = 237
   11633             :     0, // TCRETURNdi = 238
   11634             :     0, // TCRETURNri = 239
   11635             :     Feature_IsARM | 0, // TPsoft = 240
   11636             :     Feature_IsARM | 0, // UMLALv5 = 241
   11637             :     Feature_IsARM | 0, // UMULLv5 = 242
   11638             :     Feature_HasNEON | 0, // VLD1LNdAsm_16 = 243
   11639             :     Feature_HasNEON | 0, // VLD1LNdAsm_32 = 244
   11640             :     Feature_HasNEON | 0, // VLD1LNdAsm_8 = 245
   11641             :     Feature_HasNEON | 0, // VLD1LNdWB_fixed_Asm_16 = 246
   11642             :     Feature_HasNEON | 0, // VLD1LNdWB_fixed_Asm_32 = 247
   11643             :     Feature_HasNEON | 0, // VLD1LNdWB_fixed_Asm_8 = 248
   11644             :     Feature_HasNEON | 0, // VLD1LNdWB_register_Asm_16 = 249
   11645             :     Feature_HasNEON | 0, // VLD1LNdWB_register_Asm_32 = 250
   11646             :     Feature_HasNEON | 0, // VLD1LNdWB_register_Asm_8 = 251
   11647             :     Feature_HasNEON | 0, // VLD2LNdAsm_16 = 252
   11648             :     Feature_HasNEON | 0, // VLD2LNdAsm_32 = 253
   11649             :     Feature_HasNEON | 0, // VLD2LNdAsm_8 = 254
   11650             :     Feature_HasNEON | 0, // VLD2LNdWB_fixed_Asm_16 = 255
   11651             :     Feature_HasNEON | 0, // VLD2LNdWB_fixed_Asm_32 = 256
   11652             :     Feature_HasNEON | 0, // VLD2LNdWB_fixed_Asm_8 = 257
   11653             :     Feature_HasNEON | 0, // VLD2LNdWB_register_Asm_16 = 258
   11654             :     Feature_HasNEON | 0, // VLD2LNdWB_register_Asm_32 = 259
   11655             :     Feature_HasNEON | 0, // VLD2LNdWB_register_Asm_8 = 260
   11656             :     Feature_HasNEON | 0, // VLD2LNqAsm_16 = 261
   11657             :     Feature_HasNEON | 0, // VLD2LNqAsm_32 = 262
   11658             :     Feature_HasNEON | 0, // VLD2LNqWB_fixed_Asm_16 = 263
   11659             :     Feature_HasNEON | 0, // VLD2LNqWB_fixed_Asm_32 = 264
   11660             :     Feature_HasNEON | 0, // VLD2LNqWB_register_Asm_16 = 265
   11661             :     Feature_HasNEON | 0, // VLD2LNqWB_register_Asm_32 = 266
   11662             :     Feature_HasNEON | 0, // VLD3DUPdAsm_16 = 267
   11663             :     Feature_HasNEON | 0, // VLD3DUPdAsm_32 = 268
   11664             :     Feature_HasNEON | 0, // VLD3DUPdAsm_8 = 269
   11665             :     Feature_HasNEON | 0, // VLD3DUPdWB_fixed_Asm_16 = 270
   11666             :     Feature_HasNEON | 0, // VLD3DUPdWB_fixed_Asm_32 = 271
   11667             :     Feature_HasNEON | 0, // VLD3DUPdWB_fixed_Asm_8 = 272
   11668             :     Feature_HasNEON | 0, // VLD3DUPdWB_register_Asm_16 = 273
   11669             :     Feature_HasNEON | 0, // VLD3DUPdWB_register_Asm_32 = 274
   11670             :     Feature_HasNEON | 0, // VLD3DUPdWB_register_Asm_8 = 275
   11671             :     Feature_HasNEON | 0, // VLD3DUPqAsm_16 = 276
   11672             :     Feature_HasNEON | 0, // VLD3DUPqAsm_32 = 277
   11673             :     Feature_HasNEON | 0, // VLD3DUPqAsm_8 = 278
   11674             :     Feature_HasNEON | 0, // VLD3DUPqWB_fixed_Asm_16 = 279
   11675             :     Feature_HasNEON | 0, // VLD3DUPqWB_fixed_Asm_32 = 280
   11676             :     Feature_HasNEON | 0, // VLD3DUPqWB_fixed_Asm_8 = 281
   11677             :     Feature_HasNEON | 0, // VLD3DUPqWB_register_Asm_16 = 282
   11678             :     Feature_HasNEON | 0, // VLD3DUPqWB_register_Asm_32 = 283
   11679             :     Feature_HasNEON | 0, // VLD3DUPqWB_register_Asm_8 = 284
   11680             :     Feature_HasNEON | 0, // VLD3LNdAsm_16 = 285
   11681             :     Feature_HasNEON | 0, // VLD3LNdAsm_32 = 286
   11682             :     Feature_HasNEON | 0, // VLD3LNdAsm_8 = 287
   11683             :     Feature_HasNEON | 0, // VLD3LNdWB_fixed_Asm_16 = 288
   11684             :     Feature_HasNEON | 0, // VLD3LNdWB_fixed_Asm_32 = 289
   11685             :     Feature_HasNEON | 0, // VLD3LNdWB_fixed_Asm_8 = 290
   11686             :     Feature_HasNEON | 0, // VLD3LNdWB_register_Asm_16 = 291
   11687             :     Feature_HasNEON | 0, // VLD3LNdWB_register_Asm_32 = 292
   11688             :     Feature_HasNEON | 0, // VLD3LNdWB_register_Asm_8 = 293
   11689             :     Feature_HasNEON | 0, // VLD3LNqAsm_16 = 294
   11690             :     Feature_HasNEON | 0, // VLD3LNqAsm_32 = 295
   11691             :     Feature_HasNEON | 0, // VLD3LNqWB_fixed_Asm_16 = 296
   11692             :     Feature_HasNEON | 0, // VLD3LNqWB_fixed_Asm_32 = 297
   11693             :     Feature_HasNEON | 0, // VLD3LNqWB_register_Asm_16 = 298
   11694             :     Feature_HasNEON | 0, // VLD3LNqWB_register_Asm_32 = 299
   11695             :     Feature_HasNEON | 0, // VLD3dAsm_16 = 300
   11696             :     Feature_HasNEON | 0, // VLD3dAsm_32 = 301
   11697             :     Feature_HasNEON | 0, // VLD3dAsm_8 = 302
   11698             :     Feature_HasNEON | 0, // VLD3dWB_fixed_Asm_16 = 303
   11699             :     Feature_HasNEON | 0, // VLD3dWB_fixed_Asm_32 = 304
   11700             :     Feature_HasNEON | 0, // VLD3dWB_fixed_Asm_8 = 305
   11701             :     Feature_HasNEON | 0, // VLD3dWB_register_Asm_16 = 306
   11702             :     Feature_HasNEON | 0, // VLD3dWB_register_Asm_32 = 307
   11703             :     Feature_HasNEON | 0, // VLD3dWB_register_Asm_8 = 308
   11704             :     Feature_HasNEON | 0, // VLD3qAsm_16 = 309
   11705             :     Feature_HasNEON | 0, // VLD3qAsm_32 = 310
   11706             :     Feature_HasNEON | 0, // VLD3qAsm_8 = 311
   11707             :     Feature_HasNEON | 0, // VLD3qWB_fixed_Asm_16 = 312
   11708             :     Feature_HasNEON | 0, // VLD3qWB_fixed_Asm_32 = 313
   11709             :     Feature_HasNEON | 0, // VLD3qWB_fixed_Asm_8 = 314
   11710             :     Feature_HasNEON | 0, // VLD3qWB_register_Asm_16 = 315
   11711             :     Feature_HasNEON | 0, // VLD3qWB_register_Asm_32 = 316
   11712             :     Feature_HasNEON | 0, // VLD3qWB_register_Asm_8 = 317
   11713             :     Feature_HasNEON | 0, // VLD4DUPdAsm_16 = 318
   11714             :     Feature_HasNEON | 0, // VLD4DUPdAsm_32 = 319
   11715             :     Feature_HasNEON | 0, // VLD4DUPdAsm_8 = 320
   11716             :     Feature_HasNEON | 0, // VLD4DUPdWB_fixed_Asm_16 = 321
   11717             :     Feature_HasNEON | 0, // VLD4DUPdWB_fixed_Asm_32 = 322
   11718             :     Feature_HasNEON | 0, // VLD4DUPdWB_fixed_Asm_8 = 323
   11719             :     Feature_HasNEON | 0, // VLD4DUPdWB_register_Asm_16 = 324
   11720             :     Feature_HasNEON | 0, // VLD4DUPdWB_register_Asm_32 = 325
   11721             :     Feature_HasNEON | 0, // VLD4DUPdWB_register_Asm_8 = 326
   11722             :     Feature_HasNEON | 0, // VLD4DUPqAsm_16 = 327
   11723             :     Feature_HasNEON | 0, // VLD4DUPqAsm_32 = 328
   11724             :     Feature_HasNEON | 0, // VLD4DUPqAsm_8 = 329
   11725             :     Feature_HasNEON | 0, // VLD4DUPqWB_fixed_Asm_16 = 330
   11726             :     Feature_HasNEON | 0, // VLD4DUPqWB_fixed_Asm_32 = 331
   11727             :     Feature_HasNEON | 0, // VLD4DUPqWB_fixed_Asm_8 = 332
   11728             :     Feature_HasNEON | 0, // VLD4DUPqWB_register_Asm_16 = 333
   11729             :     Feature_HasNEON | 0, // VLD4DUPqWB_register_Asm_32 = 334
   11730             :     Feature_HasNEON | 0, // VLD4DUPqWB_register_Asm_8 = 335
   11731             :     Feature_HasNEON | 0, // VLD4LNdAsm_16 = 336
   11732             :     Feature_HasNEON | 0, // VLD4LNdAsm_32 = 337
   11733             :     Feature_HasNEON | 0, // VLD4LNdAsm_8 = 338
   11734             :     Feature_HasNEON | 0, // VLD4LNdWB_fixed_Asm_16 = 339
   11735             :     Feature_HasNEON | 0, // VLD4LNdWB_fixed_Asm_32 = 340
   11736             :     Feature_HasNEON | 0, // VLD4LNdWB_fixed_Asm_8 = 341
   11737             :     Feature_HasNEON | 0, // VLD4LNdWB_register_Asm_16 = 342
   11738             :     Feature_HasNEON | 0, // VLD4LNdWB_register_Asm_32 = 343
   11739             :     Feature_HasNEON | 0, // VLD4LNdWB_register_Asm_8 = 344
   11740             :     Feature_HasNEON | 0, // VLD4LNqAsm_16 = 345
   11741             :     Feature_HasNEON | 0, // VLD4LNqAsm_32 = 346
   11742             :     Feature_HasNEON | 0, // VLD4LNqWB_fixed_Asm_16 = 347
   11743             :     Feature_HasNEON | 0, // VLD4LNqWB_fixed_Asm_32 = 348
   11744             :     Feature_HasNEON | 0, // VLD4LNqWB_register_Asm_16 = 349
   11745             :     Feature_HasNEON | 0, // VLD4LNqWB_register_Asm_32 = 350
   11746             :     Feature_HasNEON | 0, // VLD4dAsm_16 = 351
   11747             :     Feature_HasNEON | 0, // VLD4dAsm_32 = 352
   11748             :     Feature_HasNEON | 0, // VLD4dAsm_8 = 353
   11749             :     Feature_HasNEON | 0, // VLD4dWB_fixed_Asm_16 = 354
   11750             :     Feature_HasNEON | 0, // VLD4dWB_fixed_Asm_32 = 355
   11751             :     Feature_HasNEON | 0, // VLD4dWB_fixed_Asm_8 = 356
   11752             :     Feature_HasNEON | 0, // VLD4dWB_register_Asm_16 = 357
   11753             :     Feature_HasNEON | 0, // VLD4dWB_register_Asm_32 = 358
   11754             :     Feature_HasNEON | 0, // VLD4dWB_register_Asm_8 = 359
   11755             :     Feature_HasNEON | 0, // VLD4qAsm_16 = 360
   11756             :     Feature_HasNEON | 0, // VLD4qAsm_32 = 361
   11757             :     Feature_HasNEON | 0, // VLD4qAsm_8 = 362
   11758             :     Feature_HasNEON | 0, // VLD4qWB_fixed_Asm_16 = 363
   11759             :     Feature_HasNEON | 0, // VLD4qWB_fixed_Asm_32 = 364
   11760             :     Feature_HasNEON | 0, // VLD4qWB_fixed_Asm_8 = 365
   11761             :     Feature_HasNEON | 0, // VLD4qWB_register_Asm_16 = 366
   11762             :     Feature_HasNEON | 0, // VLD4qWB_register_Asm_32 = 367
   11763             :     Feature_HasNEON | 0, // VLD4qWB_register_Asm_8 = 368
   11764             :     0, // VMOVD0 = 369
   11765             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VMOVDcc = 370
   11766             :     0, // VMOVQ0 = 371
   11767             :     Feature_HasVFP2 | 0, // VMOVScc = 372
   11768             :     Feature_HasNEON | 0, // VST1LNdAsm_16 = 373
   11769             :     Feature_HasNEON | 0, // VST1LNdAsm_32 = 374
   11770             :     Feature_HasNEON | 0, // VST1LNdAsm_8 = 375
   11771             :     Feature_HasNEON | 0, // VST1LNdWB_fixed_Asm_16 = 376
   11772             :     Feature_HasNEON | 0, // VST1LNdWB_fixed_Asm_32 = 377
   11773             :     Feature_HasNEON | 0, // VST1LNdWB_fixed_Asm_8 = 378
   11774             :     Feature_HasNEON | 0, // VST1LNdWB_register_Asm_16 = 379
   11775             :     Feature_HasNEON | 0, // VST1LNdWB_register_Asm_32 = 380
   11776             :     Feature_HasNEON | 0, // VST1LNdWB_register_Asm_8 = 381
   11777             :     Feature_HasNEON | 0, // VST2LNdAsm_16 = 382
   11778             :     Feature_HasNEON | 0, // VST2LNdAsm_32 = 383
   11779             :     Feature_HasNEON | 0, // VST2LNdAsm_8 = 384
   11780             :     Feature_HasNEON | 0, // VST2LNdWB_fixed_Asm_16 = 385
   11781             :     Feature_HasNEON | 0, // VST2LNdWB_fixed_Asm_32 = 386
   11782             :     Feature_HasNEON | 0, // VST2LNdWB_fixed_Asm_8 = 387
   11783             :     Feature_HasNEON | 0, // VST2LNdWB_register_Asm_16 = 388
   11784             :     Feature_HasNEON | 0, // VST2LNdWB_register_Asm_32 = 389
   11785             :     Feature_HasNEON | 0, // VST2LNdWB_register_Asm_8 = 390
   11786             :     Feature_HasNEON | 0, // VST2LNqAsm_16 = 391
   11787             :     Feature_HasNEON | 0, // VST2LNqAsm_32 = 392
   11788             :     Feature_HasNEON | 0, // VST2LNqWB_fixed_Asm_16 = 393
   11789             :     Feature_HasNEON | 0, // VST2LNqWB_fixed_Asm_32 = 394
   11790             :     Feature_HasNEON | 0, // VST2LNqWB_register_Asm_16 = 395
   11791             :     Feature_HasNEON | 0, // VST2LNqWB_register_Asm_32 = 396
   11792             :     Feature_HasNEON | 0, // VST3LNdAsm_16 = 397
   11793             :     Feature_HasNEON | 0, // VST3LNdAsm_32 = 398
   11794             :     Feature_HasNEON | 0, // VST3LNdAsm_8 = 399
   11795             :     Feature_HasNEON | 0, // VST3LNdWB_fixed_Asm_16 = 400
   11796             :     Feature_HasNEON | 0, // VST3LNdWB_fixed_Asm_32 = 401
   11797             :     Feature_HasNEON | 0, // VST3LNdWB_fixed_Asm_8 = 402
   11798             :     Feature_HasNEON | 0, // VST3LNdWB_register_Asm_16 = 403
   11799             :     Feature_HasNEON | 0, // VST3LNdWB_register_Asm_32 = 404
   11800             :     Feature_HasNEON | 0, // VST3LNdWB_register_Asm_8 = 405
   11801             :     Feature_HasNEON | 0, // VST3LNqAsm_16 = 406
   11802             :     Feature_HasNEON | 0, // VST3LNqAsm_32 = 407
   11803             :     Feature_HasNEON | 0, // VST3LNqWB_fixed_Asm_16 = 408
   11804             :     Feature_HasNEON | 0, // VST3LNqWB_fixed_Asm_32 = 409
   11805             :     Feature_HasNEON | 0, // VST3LNqWB_register_Asm_16 = 410
   11806             :     Feature_HasNEON | 0, // VST3LNqWB_register_Asm_32 = 411
   11807             :     Feature_HasNEON | 0, // VST3dAsm_16 = 412
   11808             :     Feature_HasNEON | 0, // VST3dAsm_32 = 413
   11809             :     Feature_HasNEON | 0, // VST3dAsm_8 = 414
   11810             :     Feature_HasNEON | 0, // VST3dWB_fixed_Asm_16 = 415
   11811             :     Feature_HasNEON | 0, // VST3dWB_fixed_Asm_32 = 416
   11812             :     Feature_HasNEON | 0, // VST3dWB_fixed_Asm_8 = 417
   11813             :     Feature_HasNEON | 0, // VST3dWB_register_Asm_16 = 418
   11814             :     Feature_HasNEON | 0, // VST3dWB_register_Asm_32 = 419
   11815             :     Feature_HasNEON | 0, // VST3dWB_register_Asm_8 = 420
   11816             :     Feature_HasNEON | 0, // VST3qAsm_16 = 421
   11817             :     Feature_HasNEON | 0, // VST3qAsm_32 = 422
   11818             :     Feature_HasNEON | 0, // VST3qAsm_8 = 423
   11819             :     Feature_HasNEON | 0, // VST3qWB_fixed_Asm_16 = 424
   11820             :     Feature_HasNEON | 0, // VST3qWB_fixed_Asm_32 = 425
   11821             :     Feature_HasNEON | 0, // VST3qWB_fixed_Asm_8 = 426
   11822             :     Feature_HasNEON | 0, // VST3qWB_register_Asm_16 = 427
   11823             :     Feature_HasNEON | 0, // VST3qWB_register_Asm_32 = 428
   11824             :     Feature_HasNEON | 0, // VST3qWB_register_Asm_8 = 429
   11825             :     Feature_HasNEON | 0, // VST4LNdAsm_16 = 430
   11826             :     Feature_HasNEON | 0, // VST4LNdAsm_32 = 431
   11827             :     Feature_HasNEON | 0, // VST4LNdAsm_8 = 432
   11828             :     Feature_HasNEON | 0, // VST4LNdWB_fixed_Asm_16 = 433
   11829             :     Feature_HasNEON | 0, // VST4LNdWB_fixed_Asm_32 = 434
   11830             :     Feature_HasNEON | 0, // VST4LNdWB_fixed_Asm_8 = 435
   11831             :     Feature_HasNEON | 0, // VST4LNdWB_register_Asm_16 = 436
   11832             :     Feature_HasNEON | 0, // VST4LNdWB_register_Asm_32 = 437
   11833             :     Feature_HasNEON | 0, // VST4LNdWB_register_Asm_8 = 438
   11834             :     Feature_HasNEON | 0, // VST4LNqAsm_16 = 439
   11835             :     Feature_HasNEON | 0, // VST4LNqAsm_32 = 440
   11836             :     Feature_HasNEON | 0, // VST4LNqWB_fixed_Asm_16 = 441
   11837             :     Feature_HasNEON | 0, // VST4LNqWB_fixed_Asm_32 = 442
   11838             :     Feature_HasNEON | 0, // VST4LNqWB_register_Asm_16 = 443
   11839             :     Feature_HasNEON | 0, // VST4LNqWB_register_Asm_32 = 444
   11840             :     Feature_HasNEON | 0, // VST4dAsm_16 = 445
   11841             :     Feature_HasNEON | 0, // VST4dAsm_32 = 446
   11842             :     Feature_HasNEON | 0, // VST4dAsm_8 = 447
   11843             :     Feature_HasNEON | 0, // VST4dWB_fixed_Asm_16 = 448
   11844             :     Feature_HasNEON | 0, // VST4dWB_fixed_Asm_32 = 449
   11845             :     Feature_HasNEON | 0, // VST4dWB_fixed_Asm_8 = 450
   11846             :     Feature_HasNEON | 0, // VST4dWB_register_Asm_16 = 451
   11847             :     Feature_HasNEON | 0, // VST4dWB_register_Asm_32 = 452
   11848             :     Feature_HasNEON | 0, // VST4dWB_register_Asm_8 = 453
   11849             :     Feature_HasNEON | 0, // VST4qAsm_16 = 454
   11850             :     Feature_HasNEON | 0, // VST4qAsm_32 = 455
   11851             :     Feature_HasNEON | 0, // VST4qAsm_8 = 456
   11852             :     Feature_HasNEON | 0, // VST4qWB_fixed_Asm_16 = 457
   11853             :     Feature_HasNEON | 0, // VST4qWB_fixed_Asm_32 = 458
   11854             :     Feature_HasNEON | 0, // VST4qWB_fixed_Asm_8 = 459
   11855             :     Feature_HasNEON | 0, // VST4qWB_register_Asm_16 = 460
   11856             :     Feature_HasNEON | 0, // VST4qWB_register_Asm_32 = 461
   11857             :     Feature_HasNEON | 0, // VST4qWB_register_Asm_8 = 462
   11858             :     0, // WIN__CHKSTK = 463
   11859             :     0, // WIN__DBZCHK = 464
   11860             :     Feature_IsThumb2 | 0, // t2ABS = 465
   11861             :     Feature_IsThumb2 | 0, // t2ADDSri = 466
   11862             :     Feature_IsThumb2 | 0, // t2ADDSrr = 467
   11863             :     Feature_IsThumb2 | 0, // t2ADDSrs = 468
   11864             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2BR_JT = 469
   11865             :     Feature_IsThumb2 | 0, // t2LDMIA_RET = 470
   11866             :     Feature_IsThumb2 | 0, // t2LDRBpcrel = 471
   11867             :     Feature_IsThumb2 | 0, // t2LDRConstPool = 472
   11868             :     Feature_IsThumb2 | 0, // t2LDRHpcrel = 473
   11869             :     Feature_IsThumb2 | 0, // t2LDRSBpcrel = 474
   11870             :     Feature_IsThumb2 | 0, // t2LDRSHpcrel = 475
   11871             :     Feature_IsThumb2 | 0, // t2LDRpci_pic = 476
   11872             :     Feature_IsThumb2 | 0, // t2LDRpcrel = 477
   11873             :     Feature_IsThumb2 | 0, // t2LEApcrel = 478
   11874             :     Feature_IsThumb2 | 0, // t2LEApcrelJT = 479
   11875             :     Feature_IsThumb2 | 0, // t2MOVCCasr = 480
   11876             :     Feature_IsThumb2 | 0, // t2MOVCCi = 481
   11877             :     Feature_IsThumb2 | 0, // t2MOVCCi16 = 482
   11878             :     Feature_IsThumb2 | 0, // t2MOVCCi32imm = 483
   11879             :     Feature_IsThumb2 | 0, // t2MOVCClsl = 484
   11880             :     Feature_IsThumb2 | 0, // t2MOVCClsr = 485
   11881             :     Feature_IsThumb2 | 0, // t2MOVCCr = 486
   11882             :     Feature_IsThumb2 | 0, // t2MOVCCror = 487
   11883             :     Feature_IsThumb2 | 0, // t2MOVSsi = 488
   11884             :     Feature_IsThumb2 | 0, // t2MOVSsr = 489
   11885             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2MOVTi16_ga_pcrel = 490
   11886             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2MOV_ga_pcrel = 491
   11887             :     0, // t2MOVi16_ga_pcrel = 492
   11888             :     Feature_IsThumb | 0, // t2MOVi32imm = 493
   11889             :     Feature_IsThumb2 | 0, // t2MOVsi = 494
   11890             :     Feature_IsThumb2 | 0, // t2MOVsr = 495
   11891             :     Feature_IsThumb2 | 0, // t2MVNCCi = 496
   11892             :     Feature_IsThumb2 | 0, // t2RSBSri = 497
   11893             :     Feature_IsThumb2 | 0, // t2RSBSrs = 498
   11894             :     Feature_IsThumb2 | 0, // t2STRB_preidx = 499
   11895             :     Feature_IsThumb2 | 0, // t2STRH_preidx = 500
   11896             :     Feature_IsThumb2 | 0, // t2STR_preidx = 501
   11897             :     Feature_IsThumb2 | 0, // t2SUBSri = 502
   11898             :     Feature_IsThumb2 | 0, // t2SUBSrr = 503
   11899             :     Feature_IsThumb2 | 0, // t2SUBSrs = 504
   11900             :     Feature_IsThumb2 | 0, // t2TBB_JT = 505
   11901             :     Feature_IsThumb2 | 0, // t2TBH_JT = 506
   11902             :     0, // tADCS = 507
   11903             :     0, // tADDSi3 = 508
   11904             :     0, // tADDSi8 = 509
   11905             :     0, // tADDSrr = 510
   11906             :     Feature_IsThumb | 0, // tADDframe = 511
   11907             :     Feature_IsThumb | 0, // tADJCALLSTACKDOWN = 512
   11908             :     Feature_IsThumb | 0, // tADJCALLSTACKUP = 513
   11909             :     Feature_IsThumb | 0, // tBRIND = 514
   11910             :     Feature_IsThumb | 0, // tBR_JTr = 515
   11911             :     Feature_IsThumb | 0, // tBX_CALL = 516
   11912             :     Feature_IsThumb | 0, // tBX_RET = 517
   11913             :     Feature_IsThumb | 0, // tBX_RET_vararg = 518
   11914             :     Feature_IsThumb | 0, // tBfar = 519
   11915             :     Feature_IsThumb | 0, // tLDMIA_UPD = 520
   11916             :     Feature_IsThumb | 0, // tLDRConstPool = 521
   11917             :     Feature_IsThumb | 0, // tLDRLIT_ga_abs = 522
   11918             :     Feature_IsThumb | 0, // tLDRLIT_ga_pcrel = 523
   11919             :     Feature_IsThumb | 0, // tLDR_postidx = 524
   11920             :     Feature_IsThumb | 0, // tLDRpci_pic = 525
   11921             :     Feature_IsThumb | 0, // tLEApcrel = 526
   11922             :     Feature_IsThumb | 0, // tLEApcrelJT = 527
   11923             :     0, // tMOVCCr_pseudo = 528
   11924             :     Feature_IsThumb | 0, // tPOP_RET = 529
   11925             :     0, // tSBCS = 530
   11926             :     0, // tSUBSi3 = 531
   11927             :     0, // tSUBSi8 = 532
   11928             :     0, // tSUBSrr = 533
   11929             :     Feature_IsThumb2 | 0, // tTAILJMPd = 534
   11930             :     Feature_IsThumb | 0, // tTAILJMPdND = 535
   11931             :     Feature_IsThumb | 0, // tTAILJMPr = 536
   11932             :     Feature_IsThumb | 0, // tTBB_JT = 537
   11933             :     Feature_IsThumb | 0, // tTBH_JT = 538
   11934             :     Feature_IsThumb | 0, // tTPsoft = 539
   11935             :     Feature_IsARM | 0, // ADCri = 540
   11936             :     Feature_IsARM | 0, // ADCrr = 541
   11937             :     Feature_IsARM | 0, // ADCrsi = 542
   11938             :     Feature_IsARM | 0, // ADCrsr = 543
   11939             :     Feature_IsARM | 0, // ADDri = 544
   11940             :     Feature_IsARM | 0, // ADDrr = 545
   11941             :     Feature_IsARM | 0, // ADDrsi = 546
   11942             :     Feature_IsARM | 0, // ADDrsr = 547
   11943             :     Feature_IsARM | 0, // ADR = 548
   11944             :     Feature_HasV8 | Feature_HasCrypto | 0, // AESD = 549
   11945             :     Feature_HasV8 | Feature_HasCrypto | 0, // AESE = 550
   11946             :     Feature_HasV8 | Feature_HasCrypto | 0, // AESIMC = 551
   11947             :     Feature_HasV8 | Feature_HasCrypto | 0, // AESMC = 552
   11948             :     Feature_IsARM | 0, // ANDri = 553
   11949             :     Feature_IsARM | 0, // ANDrr = 554
   11950             :     Feature_IsARM | 0, // ANDrsi = 555
   11951             :     Feature_IsARM | 0, // ANDrsr = 556
   11952             :     Feature_IsARM | Feature_HasV6T2 | 0, // BFC = 557
   11953             :     Feature_IsARM | Feature_HasV6T2 | 0, // BFI = 558
   11954             :     Feature_IsARM | 0, // BICri = 559
   11955             :     Feature_IsARM | 0, // BICrr = 560
   11956             :     Feature_IsARM | 0, // BICrsi = 561
   11957             :     Feature_IsARM | 0, // BICrsr = 562
   11958             :     Feature_IsARM | 0, // BKPT = 563
   11959             :     Feature_IsARM | 0, // BL = 564
   11960             :     Feature_IsARM | Feature_HasV5T | 0, // BLX = 565
   11961             :     Feature_IsARM | Feature_HasV5T | 0, // BLX_pred = 566
   11962             :     Feature_IsARM | Feature_HasV5T | 0, // BLXi = 567
   11963             :     Feature_IsARM | 0, // BL_pred = 568
   11964             :     Feature_IsARM | Feature_HasV4T | 0, // BX = 569
   11965             :     Feature_IsARM | 0, // BXJ = 570
   11966             :     Feature_IsARM | Feature_HasV4T | 0, // BX_RET = 571
   11967             :     Feature_IsARM | Feature_HasV4T | 0, // BX_pred = 572
   11968             :     Feature_IsARM | 0, // Bcc = 573
   11969             :     Feature_IsARM | Feature_PreV8 | 0, // CDP = 574
   11970             :     Feature_IsARM | Feature_PreV8 | 0, // CDP2 = 575
   11971             :     Feature_IsARM | Feature_HasV6K | 0, // CLREX = 576
   11972             :     Feature_IsARM | Feature_HasV5T | 0, // CLZ = 577
   11973             :     Feature_IsARM | 0, // CMNri = 578
   11974             :     Feature_IsARM | 0, // CMNzrr = 579
   11975             :     Feature_IsARM | 0, // CMNzrsi = 580
   11976             :     Feature_IsARM | 0, // CMNzrsr = 581
   11977             :     Feature_IsARM | 0, // CMPri = 582
   11978             :     Feature_IsARM | 0, // CMPrr = 583
   11979             :     Feature_IsARM | 0, // CMPrsi = 584
   11980             :     Feature_IsARM | 0, // CMPrsr = 585
   11981             :     Feature_IsARM | 0, // CPS1p = 586
   11982             :     Feature_IsARM | 0, // CPS2p = 587
   11983             :     Feature_IsARM | 0, // CPS3p = 588
   11984             :     Feature_IsARM | Feature_HasV8 | Feature_HasCRC | 0, // CRC32B = 589
   11985             :     Feature_IsARM | Feature_HasV8 | Feature_HasCRC | 0, // CRC32CB = 590
   11986             :     Feature_IsARM | Feature_HasV8 | Feature_HasCRC | 0, // CRC32CH = 591
   11987             :     Feature_IsARM | Feature_HasV8 | Feature_HasCRC | 0, // CRC32CW = 592
   11988             :     Feature_IsARM | Feature_HasV8 | Feature_HasCRC | 0, // CRC32H = 593
   11989             :     Feature_IsARM | Feature_HasV8 | Feature_HasCRC | 0, // CRC32W = 594
   11990             :     Feature_IsARM | Feature_HasV7 | 0, // DBG = 595
   11991             :     Feature_IsARM | Feature_HasDB | 0, // DMB = 596
   11992             :     Feature_IsARM | Feature_HasDB | 0, // DSB = 597
   11993             :     Feature_IsARM | 0, // EORri = 598
   11994             :     Feature_IsARM | 0, // EORrr = 599
   11995             :     Feature_IsARM | 0, // EORrsi = 600
   11996             :     Feature_IsARM | 0, // EORrsr = 601
   11997             :     Feature_IsARM | Feature_HasVirtualization | 0, // ERET = 602
   11998             :     Feature_HasVFP3 | Feature_HasDPVFP | 0, // FCONSTD = 603
   11999             :     Feature_HasFullFP16 | 0, // FCONSTH = 604
   12000             :     Feature_HasVFP3 | 0, // FCONSTS = 605
   12001             :     Feature_HasVFP2 | 0, // FLDMXDB_UPD = 606
   12002             :     Feature_HasVFP2 | 0, // FLDMXIA = 607
   12003             :     Feature_HasVFP2 | 0, // FLDMXIA_UPD = 608
   12004             :     Feature_HasVFP2 | 0, // FMSTAT = 609
   12005             :     Feature_HasVFP2 | 0, // FSTMXDB_UPD = 610
   12006             :     Feature_HasVFP2 | 0, // FSTMXIA = 611
   12007             :     Feature_HasVFP2 | 0, // FSTMXIA_UPD = 612
   12008             :     Feature_IsARM | Feature_HasV6 | 0, // HINT = 613
   12009             :     Feature_IsARM | Feature_HasV8 | 0, // HLT = 614
   12010             :     Feature_IsARM | Feature_HasVirtualization | 0, // HVC = 615
   12011             :     Feature_IsARM | Feature_HasDB | 0, // ISB = 616
   12012             :     Feature_IsARM | Feature_HasAcquireRelease | 0, // LDA = 617
   12013             :     Feature_IsARM | Feature_HasAcquireRelease | 0, // LDAB = 618
   12014             :     Feature_IsARM | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // LDAEX = 619
   12015             :     Feature_IsARM | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // LDAEXB = 620
   12016             :     Feature_IsARM | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // LDAEXD = 621
   12017             :     Feature_IsARM | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // LDAEXH = 622
   12018             :     Feature_IsARM | Feature_HasAcquireRelease | 0, // LDAH = 623
   12019             :     Feature_IsARM | Feature_PreV8 | 0, // LDC2L_OFFSET = 624
   12020             :     Feature_IsARM | Feature_PreV8 | 0, // LDC2L_OPTION = 625
   12021             :     Feature_IsARM | Feature_PreV8 | 0, // LDC2L_POST = 626
   12022             :     Feature_IsARM | Feature_PreV8 | 0, // LDC2L_PRE = 627
   12023             :     Feature_IsARM | Feature_PreV8 | 0, // LDC2_OFFSET = 628
   12024             :     Feature_IsARM | Feature_PreV8 | 0, // LDC2_OPTION = 629
   12025             :     Feature_IsARM | Feature_PreV8 | 0, // LDC2_POST = 630
   12026             :     Feature_IsARM | Feature_PreV8 | 0, // LDC2_PRE = 631
   12027             :     Feature_IsARM | 0, // LDCL_OFFSET = 632
   12028             :     Feature_IsARM | 0, // LDCL_OPTION = 633
   12029             :     Feature_IsARM | 0, // LDCL_POST = 634
   12030             :     Feature_IsARM | 0, // LDCL_PRE = 635
   12031             :     Feature_IsARM | 0, // LDC_OFFSET = 636
   12032             :     Feature_IsARM | 0, // LDC_OPTION = 637
   12033             :     Feature_IsARM | 0, // LDC_POST = 638
   12034             :     Feature_IsARM | 0, // LDC_PRE = 639
   12035             :     Feature_IsARM | 0, // LDMDA = 640
   12036             :     Feature_IsARM | 0, // LDMDA_UPD = 641
   12037             :     Feature_IsARM | 0, // LDMDB = 642
   12038             :     Feature_IsARM | 0, // LDMDB_UPD = 643
   12039             :     Feature_IsARM | 0, // LDMIA = 644
   12040             :     Feature_IsARM | 0, // LDMIA_UPD = 645
   12041             :     Feature_IsARM | 0, // LDMIB = 646
   12042             :     Feature_IsARM | 0, // LDMIB_UPD = 647
   12043             :     Feature_IsARM | 0, // LDRBT_POST_IMM = 648
   12044             :     Feature_IsARM | 0, // LDRBT_POST_REG = 649
   12045             :     Feature_IsARM | 0, // LDRB_POST_IMM = 650
   12046             :     Feature_IsARM | 0, // LDRB_POST_REG = 651
   12047             :     Feature_IsARM | 0, // LDRB_PRE_IMM = 652
   12048             :     Feature_IsARM | 0, // LDRB_PRE_REG = 653
   12049             :     Feature_IsARM | 0, // LDRBi12 = 654
   12050             :     Feature_IsARM | 0, // LDRBrs = 655
   12051             :     Feature_IsARM | Feature_HasV5TE | 0, // LDRD = 656
   12052             :     Feature_IsARM | 0, // LDRD_POST = 657
   12053             :     Feature_IsARM | 0, // LDRD_PRE = 658
   12054             :     Feature_IsARM | 0, // LDREX = 659
   12055             :     Feature_IsARM | 0, // LDREXB = 660
   12056             :     Feature_IsARM | 0, // LDREXD = 661
   12057             :     Feature_IsARM | 0, // LDREXH = 662
   12058             :     Feature_IsARM | 0, // LDRH = 663
   12059             :     Feature_IsARM | 0, // LDRHTi = 664
   12060             :     Feature_IsARM | 0, // LDRHTr = 665
   12061             :     Feature_IsARM | 0, // LDRH_POST = 666
   12062             :     Feature_IsARM | 0, // LDRH_PRE = 667
   12063             :     Feature_IsARM | 0, // LDRSB = 668
   12064             :     Feature_IsARM | 0, // LDRSBTi = 669
   12065             :     Feature_IsARM | 0, // LDRSBTr = 670
   12066             :     Feature_IsARM | 0, // LDRSB_POST = 671
   12067             :     Feature_IsARM | 0, // LDRSB_PRE = 672
   12068             :     Feature_IsARM | 0, // LDRSH = 673
   12069             :     Feature_IsARM | 0, // LDRSHTi = 674
   12070             :     Feature_IsARM | 0, // LDRSHTr = 675
   12071             :     Feature_IsARM | 0, // LDRSH_POST = 676
   12072             :     Feature_IsARM | 0, // LDRSH_PRE = 677
   12073             :     Feature_IsARM | 0, // LDRT_POST_IMM = 678
   12074             :     Feature_IsARM | 0, // LDRT_POST_REG = 679
   12075             :     Feature_IsARM | 0, // LDR_POST_IMM = 680
   12076             :     Feature_IsARM | 0, // LDR_POST_REG = 681
   12077             :     Feature_IsARM | 0, // LDR_PRE_IMM = 682
   12078             :     Feature_IsARM | 0, // LDR_PRE_REG = 683
   12079             :     Feature_IsARM | 0, // LDRcp = 684
   12080             :     Feature_IsARM | 0, // LDRi12 = 685
   12081             :     Feature_IsARM | 0, // LDRrs = 686
   12082             :     Feature_IsARM | 0, // MCR = 687
   12083             :     Feature_IsARM | Feature_PreV8 | 0, // MCR2 = 688
   12084             :     Feature_IsARM | 0, // MCRR = 689
   12085             :     Feature_IsARM | Feature_PreV8 | 0, // MCRR2 = 690
   12086             :     Feature_IsARM | Feature_HasV6 | 0, // MLA = 691
   12087             :     Feature_IsARM | Feature_HasV6T2 | 0, // MLS = 692
   12088             :     Feature_IsARM | 0, // MOVPCLR = 693
   12089             :     Feature_IsARM | Feature_HasV6T2 | 0, // MOVTi16 = 694
   12090             :     Feature_IsARM | 0, // MOVi = 695
   12091             :     Feature_IsARM | Feature_HasV6T2 | 0, // MOVi16 = 696
   12092             :     Feature_IsARM | 0, // MOVr = 697
   12093             :     Feature_IsARM | 0, // MOVr_TC = 698
   12094             :     Feature_IsARM | 0, // MOVsi = 699
   12095             :     Feature_IsARM | 0, // MOVsr = 700
   12096             :     Feature_IsARM | 0, // MRC = 701
   12097             :     Feature_IsARM | Feature_PreV8 | 0, // MRC2 = 702
   12098             :     Feature_IsARM | 0, // MRRC = 703
   12099             :     Feature_IsARM | Feature_PreV8 | 0, // MRRC2 = 704
   12100             :     Feature_IsARM | 0, // MRS = 705
   12101             :     Feature_IsARM | Feature_HasVirtualization | 0, // MRSbanked = 706
   12102             :     Feature_IsARM | 0, // MRSsys = 707
   12103             :     Feature_IsARM | 0, // MSR = 708
   12104             :     Feature_IsARM | Feature_HasVirtualization | 0, // MSRbanked = 709
   12105             :     Feature_IsARM | 0, // MSRi = 710
   12106             :     Feature_IsARM | Feature_HasV6 | 0, // MUL = 711
   12107             :     Feature_IsARM | 0, // MVNi = 712
   12108             :     Feature_IsARM | 0, // MVNr = 713
   12109             :     Feature_IsARM | 0, // MVNsi = 714
   12110             :     Feature_IsARM | 0, // MVNsr = 715
   12111             :     Feature_IsARM | 0, // ORRri = 716
   12112             :     Feature_IsARM | 0, // ORRrr = 717
   12113             :     Feature_IsARM | 0, // ORRrsi = 718
   12114             :     Feature_IsARM | 0, // ORRrsr = 719
   12115             :     Feature_IsARM | Feature_HasV6 | 0, // PKHBT = 720
   12116             :     Feature_IsARM | Feature_HasV6 | 0, // PKHTB = 721
   12117             :     Feature_IsARM | Feature_HasV7 | Feature_HasMP | 0, // PLDWi12 = 722
   12118             :     Feature_IsARM | Feature_HasV7 | Feature_HasMP | 0, // PLDWrs = 723
   12119             :     Feature_IsARM | 0, // PLDi12 = 724
   12120             :     Feature_IsARM | 0, // PLDrs = 725
   12121             :     Feature_IsARM | Feature_HasV7 | 0, // PLIi12 = 726
   12122             :     Feature_IsARM | Feature_HasV7 | 0, // PLIrs = 727
   12123             :     Feature_IsARM | 0, // QADD = 728
   12124             :     Feature_IsARM | 0, // QADD16 = 729
   12125             :     Feature_IsARM | 0, // QADD8 = 730
   12126             :     Feature_IsARM | 0, // QASX = 731
   12127             :     Feature_IsARM | 0, // QDADD = 732
   12128             :     Feature_IsARM | 0, // QDSUB = 733
   12129             :     Feature_IsARM | 0, // QSAX = 734
   12130             :     Feature_IsARM | 0, // QSUB = 735
   12131             :     Feature_IsARM | 0, // QSUB16 = 736
   12132             :     Feature_IsARM | 0, // QSUB8 = 737
   12133             :     Feature_IsARM | Feature_HasV6T2 | 0, // RBIT = 738
   12134             :     Feature_IsARM | Feature_HasV6 | 0, // REV = 739
   12135             :     Feature_IsARM | Feature_HasV6 | 0, // REV16 = 740
   12136             :     Feature_IsARM | Feature_HasV6 | 0, // REVSH = 741
   12137             :     Feature_IsARM | 0, // RFEDA = 742
   12138             :     Feature_IsARM | 0, // RFEDA_UPD = 743
   12139             :     Feature_IsARM | 0, // RFEDB = 744
   12140             :     Feature_IsARM | 0, // RFEDB_UPD = 745
   12141             :     Feature_IsARM | 0, // RFEIA = 746
   12142             :     Feature_IsARM | 0, // RFEIA_UPD = 747
   12143             :     Feature_IsARM | 0, // RFEIB = 748
   12144             :     Feature_IsARM | 0, // RFEIB_UPD = 749
   12145             :     Feature_IsARM | 0, // RSBri = 750
   12146             :     Feature_IsARM | 0, // RSBrr = 751
   12147             :     Feature_IsARM | 0, // RSBrsi = 752
   12148             :     Feature_IsARM | 0, // RSBrsr = 753
   12149             :     Feature_IsARM | 0, // RSCri = 754
   12150             :     Feature_IsARM | 0, // RSCrr = 755
   12151             :     Feature_IsARM | 0, // RSCrsi = 756
   12152             :     Feature_IsARM | 0, // RSCrsr = 757
   12153             :     Feature_IsARM | 0, // SADD16 = 758
   12154             :     Feature_IsARM | 0, // SADD8 = 759
   12155             :     Feature_IsARM | 0, // SASX = 760
   12156             :     Feature_IsARM | Feature_HasSpecCtrl | 0, // SB = 761
   12157             :     Feature_IsARM | 0, // SBCri = 762
   12158             :     Feature_IsARM | 0, // SBCrr = 763
   12159             :     Feature_IsARM | 0, // SBCrsi = 764
   12160             :     Feature_IsARM | 0, // SBCrsr = 765
   12161             :     Feature_IsARM | Feature_HasV6T2 | 0, // SBFX = 766
   12162             :     Feature_IsARM | Feature_HasDivideInARM | 0, // SDIV = 767
   12163             :     Feature_IsARM | Feature_HasV6 | 0, // SEL = 768
   12164             :     Feature_IsARM | 0, // SETEND = 769
   12165             :     Feature_IsARM | Feature_HasV8 | Feature_HasV8_1a | 0, // SETPAN = 770
   12166             :     Feature_HasV8 | Feature_HasCrypto | 0, // SHA1C = 771
   12167             :     Feature_HasV8 | Feature_HasCrypto | 0, // SHA1H = 772
   12168             :     Feature_HasV8 | Feature_HasCrypto | 0, // SHA1M = 773
   12169             :     Feature_HasV8 | Feature_HasCrypto | 0, // SHA1P = 774
   12170             :     Feature_HasV8 | Feature_HasCrypto | 0, // SHA1SU0 = 775
   12171             :     Feature_HasV8 | Feature_HasCrypto | 0, // SHA1SU1 = 776
   12172             :     Feature_HasV8 | Feature_HasCrypto | 0, // SHA256H = 777
   12173             :     Feature_HasV8 | Feature_HasCrypto | 0, // SHA256H2 = 778
   12174             :     Feature_HasV8 | Feature_HasCrypto | 0, // SHA256SU0 = 779
   12175             :     Feature_HasV8 | Feature_HasCrypto | 0, // SHA256SU1 = 780
   12176             :     Feature_IsARM | 0, // SHADD16 = 781
   12177             :     Feature_IsARM | 0, // SHADD8 = 782
   12178             :     Feature_IsARM | 0, // SHASX = 783
   12179             :     Feature_IsARM | 0, // SHSAX = 784
   12180             :     Feature_IsARM | 0, // SHSUB16 = 785
   12181             :     Feature_IsARM | 0, // SHSUB8 = 786
   12182             :     Feature_IsARM | Feature_HasTrustZone | 0, // SMC = 787
   12183             :     Feature_IsARM | Feature_HasV5TE | 0, // SMLABB = 788
   12184             :     Feature_IsARM | Feature_HasV5TE | 0, // SMLABT = 789
   12185             :     Feature_IsARM | Feature_HasV6 | 0, // SMLAD = 790
   12186             :     Feature_IsARM | Feature_HasV6 | 0, // SMLADX = 791
   12187             :     Feature_IsARM | Feature_HasV6 | 0, // SMLAL = 792
   12188             :     Feature_IsARM | Feature_HasV5TE | 0, // SMLALBB = 793
   12189             :     Feature_IsARM | Feature_HasV5TE | 0, // SMLALBT = 794
   12190             :     Feature_IsARM | Feature_HasV6 | 0, // SMLALD = 795
   12191             :     Feature_IsARM | Feature_HasV6 | 0, // SMLALDX = 796
   12192             :     Feature_IsARM | Feature_HasV5TE | 0, // SMLALTB = 797
   12193             :     Feature_IsARM | Feature_HasV5TE | 0, // SMLALTT = 798
   12194             :     Feature_IsARM | Feature_HasV5TE | 0, // SMLATB = 799
   12195             :     Feature_IsARM | Feature_HasV5TE | 0, // SMLATT = 800
   12196             :     Feature_IsARM | Feature_HasV5TE | 0, // SMLAWB = 801
   12197             :     Feature_IsARM | Feature_HasV5TE | 0, // SMLAWT = 802
   12198             :     Feature_IsARM | Feature_HasV6 | 0, // SMLSD = 803
   12199             :     Feature_IsARM | Feature_HasV6 | 0, // SMLSDX = 804
   12200             :     Feature_IsARM | Feature_HasV6 | 0, // SMLSLD = 805
   12201             :     Feature_IsARM | Feature_HasV6 | 0, // SMLSLDX = 806
   12202             :     Feature_IsARM | Feature_HasV6 | 0, // SMMLA = 807
   12203             :     Feature_IsARM | Feature_HasV6 | 0, // SMMLAR = 808
   12204             :     Feature_IsARM | Feature_HasV6 | 0, // SMMLS = 809
   12205             :     Feature_IsARM | Feature_HasV6 | 0, // SMMLSR = 810
   12206             :     Feature_IsARM | Feature_HasV6 | 0, // SMMUL = 811
   12207             :     Feature_IsARM | Feature_HasV6 | 0, // SMMULR = 812
   12208             :     Feature_IsARM | Feature_HasV6 | 0, // SMUAD = 813
   12209             :     Feature_IsARM | Feature_HasV6 | 0, // SMUADX = 814
   12210             :     Feature_IsARM | Feature_HasV5TE | 0, // SMULBB = 815
   12211             :     Feature_IsARM | Feature_HasV5TE | 0, // SMULBT = 816
   12212             :     Feature_IsARM | Feature_HasV6 | 0, // SMULL = 817
   12213             :     Feature_IsARM | Feature_HasV5TE | 0, // SMULTB = 818
   12214             :     Feature_IsARM | Feature_HasV5TE | 0, // SMULTT = 819
   12215             :     Feature_IsARM | Feature_HasV5TE | 0, // SMULWB = 820
   12216             :     Feature_IsARM | Feature_HasV5TE | 0, // SMULWT = 821
   12217             :     Feature_IsARM | Feature_HasV6 | 0, // SMUSD = 822
   12218             :     Feature_IsARM | Feature_HasV6 | 0, // SMUSDX = 823
   12219             :     Feature_IsARM | 0, // SRSDA = 824
   12220             :     Feature_IsARM | 0, // SRSDA_UPD = 825
   12221             :     Feature_IsARM | 0, // SRSDB = 826
   12222             :     Feature_IsARM | 0, // SRSDB_UPD = 827
   12223             :     Feature_IsARM | 0, // SRSIA = 828
   12224             :     Feature_IsARM | 0, // SRSIA_UPD = 829
   12225             :     Feature_IsARM | 0, // SRSIB = 830
   12226             :     Feature_IsARM | 0, // SRSIB_UPD = 831
   12227             :     Feature_IsARM | Feature_HasV6 | 0, // SSAT = 832
   12228             :     Feature_IsARM | Feature_HasV6 | 0, // SSAT16 = 833
   12229             :     Feature_IsARM | 0, // SSAX = 834
   12230             :     Feature_IsARM | 0, // SSUB16 = 835
   12231             :     Feature_IsARM | 0, // SSUB8 = 836
   12232             :     Feature_IsARM | Feature_PreV8 | 0, // STC2L_OFFSET = 837
   12233             :     Feature_IsARM | Feature_PreV8 | 0, // STC2L_OPTION = 838
   12234             :     Feature_IsARM | Feature_PreV8 | 0, // STC2L_POST = 839
   12235             :     Feature_IsARM | Feature_PreV8 | 0, // STC2L_PRE = 840
   12236             :     Feature_IsARM | Feature_PreV8 | 0, // STC2_OFFSET = 841
   12237             :     Feature_IsARM | Feature_PreV8 | 0, // STC2_OPTION = 842
   12238             :     Feature_IsARM | Feature_PreV8 | 0, // STC2_POST = 843
   12239             :     Feature_IsARM | Feature_PreV8 | 0, // STC2_PRE = 844
   12240             :     Feature_IsARM | 0, // STCL_OFFSET = 845
   12241             :     Feature_IsARM | 0, // STCL_OPTION = 846
   12242             :     Feature_IsARM | 0, // STCL_POST = 847
   12243             :     Feature_IsARM | 0, // STCL_PRE = 848
   12244             :     Feature_IsARM | 0, // STC_OFFSET = 849
   12245             :     Feature_IsARM | 0, // STC_OPTION = 850
   12246             :     Feature_IsARM | 0, // STC_POST = 851
   12247             :     Feature_IsARM | 0, // STC_PRE = 852
   12248             :     Feature_IsARM | Feature_HasAcquireRelease | 0, // STL = 853
   12249             :     Feature_IsARM | Feature_HasAcquireRelease | 0, // STLB = 854
   12250             :     Feature_IsARM | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // STLEX = 855
   12251             :     Feature_IsARM | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // STLEXB = 856
   12252             :     Feature_IsARM | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // STLEXD = 857
   12253             :     Feature_IsARM | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // STLEXH = 858
   12254             :     Feature_IsARM | Feature_HasAcquireRelease | 0, // STLH = 859
   12255             :     Feature_IsARM | 0, // STMDA = 860
   12256             :     Feature_IsARM | 0, // STMDA_UPD = 861
   12257             :     Feature_IsARM | 0, // STMDB = 862
   12258             :     Feature_IsARM | 0, // STMDB_UPD = 863
   12259             :     Feature_IsARM | 0, // STMIA = 864
   12260             :     Feature_IsARM | 0, // STMIA_UPD = 865
   12261             :     Feature_IsARM | 0, // STMIB = 866
   12262             :     Feature_IsARM | 0, // STMIB_UPD = 867
   12263             :     Feature_IsARM | 0, // STRBT_POST_IMM = 868
   12264             :     Feature_IsARM | 0, // STRBT_POST_REG = 869
   12265             :     Feature_IsARM | 0, // STRB_POST_IMM = 870
   12266             :     Feature_IsARM | 0, // STRB_POST_REG = 871
   12267             :     Feature_IsARM | 0, // STRB_PRE_IMM = 872
   12268             :     Feature_IsARM | 0, // STRB_PRE_REG = 873
   12269             :     Feature_IsARM | 0, // STRBi12 = 874
   12270             :     Feature_IsARM | 0, // STRBrs = 875
   12271             :     Feature_IsARM | Feature_HasV5TE | 0, // STRD = 876
   12272             :     Feature_IsARM | 0, // STRD_POST = 877
   12273             :     Feature_IsARM | 0, // STRD_PRE = 878
   12274             :     Feature_IsARM | 0, // STREX = 879
   12275             :     Feature_IsARM | 0, // STREXB = 880
   12276             :     Feature_IsARM | 0, // STREXD = 881
   12277             :     Feature_IsARM | 0, // STREXH = 882
   12278             :     Feature_IsARM | 0, // STRH = 883
   12279             :     Feature_IsARM | 0, // STRHTi = 884
   12280             :     Feature_IsARM | 0, // STRHTr = 885
   12281             :     Feature_IsARM | 0, // STRH_POST = 886
   12282             :     Feature_IsARM | 0, // STRH_PRE = 887
   12283             :     Feature_IsARM | 0, // STRT_POST_IMM = 888
   12284             :     Feature_IsARM | 0, // STRT_POST_REG = 889
   12285             :     Feature_IsARM | 0, // STR_POST_IMM = 890
   12286             :     Feature_IsARM | 0, // STR_POST_REG = 891
   12287             :     Feature_IsARM | 0, // STR_PRE_IMM = 892
   12288             :     Feature_IsARM | 0, // STR_PRE_REG = 893
   12289             :     Feature_IsARM | 0, // STRi12 = 894
   12290             :     Feature_IsARM | 0, // STRrs = 895
   12291             :     Feature_IsARM | 0, // SUBri = 896
   12292             :     Feature_IsARM | 0, // SUBrr = 897
   12293             :     Feature_IsARM | 0, // SUBrsi = 898
   12294             :     Feature_IsARM | 0, // SUBrsr = 899
   12295             :     Feature_IsARM | 0, // SVC = 900
   12296             :     Feature_IsARM | Feature_PreV8 | 0, // SWP = 901
   12297             :     Feature_IsARM | Feature_PreV8 | 0, // SWPB = 902
   12298             :     Feature_IsARM | Feature_HasV6 | 0, // SXTAB = 903
   12299             :     Feature_IsARM | Feature_HasV6 | 0, // SXTAB16 = 904
   12300             :     Feature_IsARM | Feature_HasV6 | 0, // SXTAH = 905
   12301             :     Feature_IsARM | Feature_HasV6 | 0, // SXTB = 906
   12302             :     Feature_IsARM | Feature_HasV6 | 0, // SXTB16 = 907
   12303             :     Feature_IsARM | Feature_HasV6 | 0, // SXTH = 908
   12304             :     Feature_IsARM | 0, // TEQri = 909
   12305             :     Feature_IsARM | 0, // TEQrr = 910
   12306             :     Feature_IsARM | 0, // TEQrsi = 911
   12307             :     Feature_IsARM | 0, // TEQrsr = 912
   12308             :     Feature_IsARM | 0, // TRAP = 913
   12309             :     Feature_IsARM | Feature_UseNaClTrap | 0, // TRAPNaCl = 914
   12310             :     Feature_IsARM | Feature_HasV8_4a | 0, // TSB = 915
   12311             :     Feature_IsARM | 0, // TSTri = 916
   12312             :     Feature_IsARM | 0, // TSTrr = 917
   12313             :     Feature_IsARM | 0, // TSTrsi = 918
   12314             :     Feature_IsARM | 0, // TSTrsr = 919
   12315             :     Feature_IsARM | 0, // UADD16 = 920
   12316             :     Feature_IsARM | 0, // UADD8 = 921
   12317             :     Feature_IsARM | 0, // UASX = 922
   12318             :     Feature_IsARM | Feature_HasV6T2 | 0, // UBFX = 923
   12319             :     Feature_IsARM | 0, // UDF = 924
   12320             :     Feature_IsARM | Feature_HasDivideInARM | 0, // UDIV = 925
   12321             :     Feature_IsARM | 0, // UHADD16 = 926
   12322             :     Feature_IsARM | 0, // UHADD8 = 927
   12323             :     Feature_IsARM | 0, // UHASX = 928
   12324             :     Feature_IsARM | 0, // UHSAX = 929
   12325             :     Feature_IsARM | 0, // UHSUB16 = 930
   12326             :     Feature_IsARM | 0, // UHSUB8 = 931
   12327             :     Feature_IsARM | Feature_HasV6 | 0, // UMAAL = 932
   12328             :     Feature_IsARM | Feature_HasV6 | 0, // UMLAL = 933
   12329             :     Feature_IsARM | Feature_HasV6 | 0, // UMULL = 934
   12330             :     Feature_IsARM | 0, // UQADD16 = 935
   12331             :     Feature_IsARM | 0, // UQADD8 = 936
   12332             :     Feature_IsARM | 0, // UQASX = 937
   12333             :     Feature_IsARM | 0, // UQSAX = 938
   12334             :     Feature_IsARM | 0, // UQSUB16 = 939
   12335             :     Feature_IsARM | 0, // UQSUB8 = 940
   12336             :     Feature_IsARM | Feature_HasV6 | 0, // USAD8 = 941
   12337             :     Feature_IsARM | Feature_HasV6 | 0, // USADA8 = 942
   12338             :     Feature_IsARM | Feature_HasV6 | 0, // USAT = 943
   12339             :     Feature_IsARM | Feature_HasV6 | 0, // USAT16 = 944
   12340             :     Feature_IsARM | 0, // USAX = 945
   12341             :     Feature_IsARM | 0, // USUB16 = 946
   12342             :     Feature_IsARM | 0, // USUB8 = 947
   12343             :     Feature_IsARM | Feature_HasV6 | 0, // UXTAB = 948
   12344             :     Feature_IsARM | Feature_HasV6 | 0, // UXTAB16 = 949
   12345             :     Feature_IsARM | Feature_HasV6 | 0, // UXTAH = 950
   12346             :     Feature_IsARM | Feature_HasV6 | 0, // UXTB = 951
   12347             :     Feature_IsARM | Feature_HasV6 | 0, // UXTB16 = 952
   12348             :     Feature_IsARM | Feature_HasV6 | 0, // UXTH = 953
   12349             :     Feature_HasNEON | 0, // VABALsv2i64 = 954
   12350             :     Feature_HasNEON | 0, // VABALsv4i32 = 955
   12351             :     Feature_HasNEON | 0, // VABALsv8i16 = 956
   12352             :     Feature_HasNEON | 0, // VABALuv2i64 = 957
   12353             :     Feature_HasNEON | 0, // VABALuv4i32 = 958
   12354             :     Feature_HasNEON | 0, // VABALuv8i16 = 959
   12355             :     Feature_HasNEON | 0, // VABAsv16i8 = 960
   12356             :     Feature_HasNEON | 0, // VABAsv2i32 = 961
   12357             :     Feature_HasNEON | 0, // VABAsv4i16 = 962
   12358             :     Feature_HasNEON | 0, // VABAsv4i32 = 963
   12359             :     Feature_HasNEON | 0, // VABAsv8i16 = 964
   12360             :     Feature_HasNEON | 0, // VABAsv8i8 = 965
   12361             :     Feature_HasNEON | 0, // VABAuv16i8 = 966
   12362             :     Feature_HasNEON | 0, // VABAuv2i32 = 967
   12363             :     Feature_HasNEON | 0, // VABAuv4i16 = 968
   12364             :     Feature_HasNEON | 0, // VABAuv4i32 = 969
   12365             :     Feature_HasNEON | 0, // VABAuv8i16 = 970
   12366             :     Feature_HasNEON | 0, // VABAuv8i8 = 971
   12367             :     Feature_HasNEON | 0, // VABDLsv2i64 = 972
   12368             :     Feature_HasNEON | 0, // VABDLsv4i32 = 973
   12369             :     Feature_HasNEON | 0, // VABDLsv8i16 = 974
   12370             :     Feature_HasNEON | 0, // VABDLuv2i64 = 975
   12371             :     Feature_HasNEON | 0, // VABDLuv4i32 = 976
   12372             :     Feature_HasNEON | 0, // VABDLuv8i16 = 977
   12373             :     Feature_HasNEON | 0, // VABDfd = 978
   12374             :     Feature_HasNEON | 0, // VABDfq = 979
   12375             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VABDhd = 980
   12376             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VABDhq = 981
   12377             :     Feature_HasNEON | 0, // VABDsv16i8 = 982
   12378             :     Feature_HasNEON | 0, // VABDsv2i32 = 983
   12379             :     Feature_HasNEON | 0, // VABDsv4i16 = 984
   12380             :     Feature_HasNEON | 0, // VABDsv4i32 = 985
   12381             :     Feature_HasNEON | 0, // VABDsv8i16 = 986
   12382             :     Feature_HasNEON | 0, // VABDsv8i8 = 987
   12383             :     Feature_HasNEON | 0, // VABDuv16i8 = 988
   12384             :     Feature_HasNEON | 0, // VABDuv2i32 = 989
   12385             :     Feature_HasNEON | 0, // VABDuv4i16 = 990
   12386             :     Feature_HasNEON | 0, // VABDuv4i32 = 991
   12387             :     Feature_HasNEON | 0, // VABDuv8i16 = 992
   12388             :     Feature_HasNEON | 0, // VABDuv8i8 = 993
   12389             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VABSD = 994
   12390             :     Feature_HasFullFP16 | 0, // VABSH = 995
   12391             :     Feature_HasVFP2 | 0, // VABSS = 996
   12392             :     Feature_HasNEON | 0, // VABSfd = 997
   12393             :     Feature_HasNEON | 0, // VABSfq = 998
   12394             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VABShd = 999
   12395             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VABShq = 1000
   12396             :     Feature_HasNEON | 0, // VABSv16i8 = 1001
   12397             :     Feature_HasNEON | 0, // VABSv2i32 = 1002
   12398             :     Feature_HasNEON | 0, // VABSv4i16 = 1003
   12399             :     Feature_HasNEON | 0, // VABSv4i32 = 1004
   12400             :     Feature_HasNEON | 0, // VABSv8i16 = 1005
   12401             :     Feature_HasNEON | 0, // VABSv8i8 = 1006
   12402             :     Feature_HasNEON | 0, // VACGEfd = 1007
   12403             :     Feature_HasNEON | 0, // VACGEfq = 1008
   12404             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VACGEhd = 1009
   12405             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VACGEhq = 1010
   12406             :     Feature_HasNEON | 0, // VACGTfd = 1011
   12407             :     Feature_HasNEON | 0, // VACGTfq = 1012
   12408             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VACGThd = 1013
   12409             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VACGThq = 1014
   12410             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VADDD = 1015
   12411             :     Feature_HasFullFP16 | 0, // VADDH = 1016
   12412             :     Feature_HasNEON | 0, // VADDHNv2i32 = 1017
   12413             :     Feature_HasNEON | 0, // VADDHNv4i16 = 1018
   12414             :     Feature_HasNEON | 0, // VADDHNv8i8 = 1019
   12415             :     Feature_HasNEON | 0, // VADDLsv2i64 = 1020
   12416             :     Feature_HasNEON | 0, // VADDLsv4i32 = 1021
   12417             :     Feature_HasNEON | 0, // VADDLsv8i16 = 1022
   12418             :     Feature_HasNEON | 0, // VADDLuv2i64 = 1023
   12419             :     Feature_HasNEON | 0, // VADDLuv4i32 = 1024
   12420             :     Feature_HasNEON | 0, // VADDLuv8i16 = 1025
   12421             :     Feature_HasVFP2 | 0, // VADDS = 1026
   12422             :     Feature_HasNEON | 0, // VADDWsv2i64 = 1027
   12423             :     Feature_HasNEON | 0, // VADDWsv4i32 = 1028
   12424             :     Feature_HasNEON | 0, // VADDWsv8i16 = 1029
   12425             :     Feature_HasNEON | 0, // VADDWuv2i64 = 1030
   12426             :     Feature_HasNEON | 0, // VADDWuv4i32 = 1031
   12427             :     Feature_HasNEON | 0, // VADDWuv8i16 = 1032
   12428             :     Feature_HasNEON | 0, // VADDfd = 1033
   12429             :     Feature_HasNEON | 0, // VADDfq = 1034
   12430             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VADDhd = 1035
   12431             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VADDhq = 1036
   12432             :     Feature_HasNEON | 0, // VADDv16i8 = 1037
   12433             :     Feature_HasNEON | 0, // VADDv1i64 = 1038
   12434             :     Feature_HasNEON | 0, // VADDv2i32 = 1039
   12435             :     Feature_HasNEON | 0, // VADDv2i64 = 1040
   12436             :     Feature_HasNEON | 0, // VADDv4i16 = 1041
   12437             :     Feature_HasNEON | 0, // VADDv4i32 = 1042
   12438             :     Feature_HasNEON | 0, // VADDv8i16 = 1043
   12439             :     Feature_HasNEON | 0, // VADDv8i8 = 1044
   12440             :     Feature_HasNEON | 0, // VANDd = 1045
   12441             :     Feature_HasNEON | 0, // VANDq = 1046
   12442             :     Feature_HasNEON | 0, // VBICd = 1047
   12443             :     Feature_HasNEON | 0, // VBICiv2i32 = 1048
   12444             :     Feature_HasNEON | 0, // VBICiv4i16 = 1049
   12445             :     Feature_HasNEON | 0, // VBICiv4i32 = 1050
   12446             :     Feature_HasNEON | 0, // VBICiv8i16 = 1051
   12447             :     Feature_HasNEON | 0, // VBICq = 1052
   12448             :     Feature_HasNEON | 0, // VBIFd = 1053
   12449             :     Feature_HasNEON | 0, // VBIFq = 1054
   12450             :     Feature_HasNEON | 0, // VBITd = 1055
   12451             :     Feature_HasNEON | 0, // VBITq = 1056
   12452             :     Feature_HasNEON | 0, // VBSLd = 1057
   12453             :     Feature_HasNEON | 0, // VBSLq = 1058
   12454             :     Feature_HasNEON | Feature_HasV8_3a | 0, // VCADDv2f32 = 1059
   12455             :     Feature_HasNEON | Feature_HasV8_3a | Feature_HasFullFP16 | 0, // VCADDv4f16 = 1060
   12456             :     Feature_HasNEON | Feature_HasV8_3a | 0, // VCADDv4f32 = 1061
   12457             :     Feature_HasNEON | Feature_HasV8_3a | Feature_HasFullFP16 | 0, // VCADDv8f16 = 1062
   12458             :     Feature_HasNEON | 0, // VCEQfd = 1063
   12459             :     Feature_HasNEON | 0, // VCEQfq = 1064
   12460             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCEQhd = 1065
   12461             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCEQhq = 1066
   12462             :     Feature_HasNEON | 0, // VCEQv16i8 = 1067
   12463             :     Feature_HasNEON | 0, // VCEQv2i32 = 1068
   12464             :     Feature_HasNEON | 0, // VCEQv4i16 = 1069
   12465             :     Feature_HasNEON | 0, // VCEQv4i32 = 1070
   12466             :     Feature_HasNEON | 0, // VCEQv8i16 = 1071
   12467             :     Feature_HasNEON | 0, // VCEQv8i8 = 1072
   12468             :     Feature_HasNEON | 0, // VCEQzv16i8 = 1073
   12469             :     Feature_HasNEON | 0, // VCEQzv2f32 = 1074
   12470             :     Feature_HasNEON | 0, // VCEQzv2i32 = 1075
   12471             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCEQzv4f16 = 1076
   12472             :     Feature_HasNEON | 0, // VCEQzv4f32 = 1077
   12473             :     Feature_HasNEON | 0, // VCEQzv4i16 = 1078
   12474             :     Feature_HasNEON | 0, // VCEQzv4i32 = 1079
   12475             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCEQzv8f16 = 1080
   12476             :     Feature_HasNEON | 0, // VCEQzv8i16 = 1081
   12477             :     Feature_HasNEON | 0, // VCEQzv8i8 = 1082
   12478             :     Feature_HasNEON | 0, // VCGEfd = 1083
   12479             :     Feature_HasNEON | 0, // VCGEfq = 1084
   12480             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCGEhd = 1085
   12481             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCGEhq = 1086
   12482             :     Feature_HasNEON | 0, // VCGEsv16i8 = 1087
   12483             :     Feature_HasNEON | 0, // VCGEsv2i32 = 1088
   12484             :     Feature_HasNEON | 0, // VCGEsv4i16 = 1089
   12485             :     Feature_HasNEON | 0, // VCGEsv4i32 = 1090
   12486             :     Feature_HasNEON | 0, // VCGEsv8i16 = 1091
   12487             :     Feature_HasNEON | 0, // VCGEsv8i8 = 1092
   12488             :     Feature_HasNEON | 0, // VCGEuv16i8 = 1093
   12489             :     Feature_HasNEON | 0, // VCGEuv2i32 = 1094
   12490             :     Feature_HasNEON | 0, // VCGEuv4i16 = 1095
   12491             :     Feature_HasNEON | 0, // VCGEuv4i32 = 1096
   12492             :     Feature_HasNEON | 0, // VCGEuv8i16 = 1097
   12493             :     Feature_HasNEON | 0, // VCGEuv8i8 = 1098
   12494             :     Feature_HasNEON | 0, // VCGEzv16i8 = 1099
   12495             :     Feature_HasNEON | 0, // VCGEzv2f32 = 1100
   12496             :     Feature_HasNEON | 0, // VCGEzv2i32 = 1101
   12497             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCGEzv4f16 = 1102
   12498             :     Feature_HasNEON | 0, // VCGEzv4f32 = 1103
   12499             :     Feature_HasNEON | 0, // VCGEzv4i16 = 1104
   12500             :     Feature_HasNEON | 0, // VCGEzv4i32 = 1105
   12501             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCGEzv8f16 = 1106
   12502             :     Feature_HasNEON | 0, // VCGEzv8i16 = 1107
   12503             :     Feature_HasNEON | 0, // VCGEzv8i8 = 1108
   12504             :     Feature_HasNEON | 0, // VCGTfd = 1109
   12505             :     Feature_HasNEON | 0, // VCGTfq = 1110
   12506             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCGThd = 1111
   12507             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCGThq = 1112
   12508             :     Feature_HasNEON | 0, // VCGTsv16i8 = 1113
   12509             :     Feature_HasNEON | 0, // VCGTsv2i32 = 1114
   12510             :     Feature_HasNEON | 0, // VCGTsv4i16 = 1115
   12511             :     Feature_HasNEON | 0, // VCGTsv4i32 = 1116
   12512             :     Feature_HasNEON | 0, // VCGTsv8i16 = 1117
   12513             :     Feature_HasNEON | 0, // VCGTsv8i8 = 1118
   12514             :     Feature_HasNEON | 0, // VCGTuv16i8 = 1119
   12515             :     Feature_HasNEON | 0, // VCGTuv2i32 = 1120
   12516             :     Feature_HasNEON | 0, // VCGTuv4i16 = 1121
   12517             :     Feature_HasNEON | 0, // VCGTuv4i32 = 1122
   12518             :     Feature_HasNEON | 0, // VCGTuv8i16 = 1123
   12519             :     Feature_HasNEON | 0, // VCGTuv8i8 = 1124
   12520             :     Feature_HasNEON | 0, // VCGTzv16i8 = 1125
   12521             :     Feature_HasNEON | 0, // VCGTzv2f32 = 1126
   12522             :     Feature_HasNEON | 0, // VCGTzv2i32 = 1127
   12523             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCGTzv4f16 = 1128
   12524             :     Feature_HasNEON | 0, // VCGTzv4f32 = 1129
   12525             :     Feature_HasNEON | 0, // VCGTzv4i16 = 1130
   12526             :     Feature_HasNEON | 0, // VCGTzv4i32 = 1131
   12527             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCGTzv8f16 = 1132
   12528             :     Feature_HasNEON | 0, // VCGTzv8i16 = 1133
   12529             :     Feature_HasNEON | 0, // VCGTzv8i8 = 1134
   12530             :     Feature_HasNEON | 0, // VCLEzv16i8 = 1135
   12531             :     Feature_HasNEON | 0, // VCLEzv2f32 = 1136
   12532             :     Feature_HasNEON | 0, // VCLEzv2i32 = 1137
   12533             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCLEzv4f16 = 1138
   12534             :     Feature_HasNEON | 0, // VCLEzv4f32 = 1139
   12535             :     Feature_HasNEON | 0, // VCLEzv4i16 = 1140
   12536             :     Feature_HasNEON | 0, // VCLEzv4i32 = 1141
   12537             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCLEzv8f16 = 1142
   12538             :     Feature_HasNEON | 0, // VCLEzv8i16 = 1143
   12539             :     Feature_HasNEON | 0, // VCLEzv8i8 = 1144
   12540             :     Feature_HasNEON | 0, // VCLSv16i8 = 1145
   12541             :     Feature_HasNEON | 0, // VCLSv2i32 = 1146
   12542             :     Feature_HasNEON | 0, // VCLSv4i16 = 1147
   12543             :     Feature_HasNEON | 0, // VCLSv4i32 = 1148
   12544             :     Feature_HasNEON | 0, // VCLSv8i16 = 1149
   12545             :     Feature_HasNEON | 0, // VCLSv8i8 = 1150
   12546             :     Feature_HasNEON | 0, // VCLTzv16i8 = 1151
   12547             :     Feature_HasNEON | 0, // VCLTzv2f32 = 1152
   12548             :     Feature_HasNEON | 0, // VCLTzv2i32 = 1153
   12549             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCLTzv4f16 = 1154
   12550             :     Feature_HasNEON | 0, // VCLTzv4f32 = 1155
   12551             :     Feature_HasNEON | 0, // VCLTzv4i16 = 1156
   12552             :     Feature_HasNEON | 0, // VCLTzv4i32 = 1157
   12553             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCLTzv8f16 = 1158
   12554             :     Feature_HasNEON | 0, // VCLTzv8i16 = 1159
   12555             :     Feature_HasNEON | 0, // VCLTzv8i8 = 1160
   12556             :     Feature_HasNEON | 0, // VCLZv16i8 = 1161
   12557             :     Feature_HasNEON | 0, // VCLZv2i32 = 1162
   12558             :     Feature_HasNEON | 0, // VCLZv4i16 = 1163
   12559             :     Feature_HasNEON | 0, // VCLZv4i32 = 1164
   12560             :     Feature_HasNEON | 0, // VCLZv8i16 = 1165
   12561             :     Feature_HasNEON | 0, // VCLZv8i8 = 1166
   12562             :     Feature_HasNEON | Feature_HasV8_3a | 0, // VCMLAv2f32 = 1167
   12563             :     Feature_HasNEON | Feature_HasV8_3a | 0, // VCMLAv2f32_indexed = 1168
   12564             :     Feature_HasNEON | Feature_HasV8_3a | Feature_HasFullFP16 | 0, // VCMLAv4f16 = 1169
   12565             :     Feature_HasNEON | Feature_HasV8_3a | Feature_HasFullFP16 | 0, // VCMLAv4f16_indexed = 1170
   12566             :     Feature_HasNEON | Feature_HasV8_3a | 0, // VCMLAv4f32 = 1171
   12567             :     Feature_HasNEON | Feature_HasV8_3a | 0, // VCMLAv4f32_indexed = 1172
   12568             :     Feature_HasNEON | Feature_HasV8_3a | Feature_HasFullFP16 | 0, // VCMLAv8f16 = 1173
   12569             :     Feature_HasNEON | Feature_HasV8_3a | Feature_HasFullFP16 | 0, // VCMLAv8f16_indexed = 1174
   12570             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VCMPD = 1175
   12571             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VCMPED = 1176
   12572             :     Feature_HasFullFP16 | 0, // VCMPEH = 1177
   12573             :     Feature_HasVFP2 | 0, // VCMPES = 1178
   12574             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VCMPEZD = 1179
   12575             :     Feature_HasFullFP16 | 0, // VCMPEZH = 1180
   12576             :     Feature_HasVFP2 | 0, // VCMPEZS = 1181
   12577             :     Feature_HasFullFP16 | 0, // VCMPH = 1182
   12578             :     Feature_HasVFP2 | 0, // VCMPS = 1183
   12579             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VCMPZD = 1184
   12580             :     Feature_HasFullFP16 | 0, // VCMPZH = 1185
   12581             :     Feature_HasVFP2 | 0, // VCMPZS = 1186
   12582             :     Feature_HasNEON | 0, // VCNTd = 1187
   12583             :     Feature_HasNEON | 0, // VCNTq = 1188
   12584             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTANSDf = 1189
   12585             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTANSDh = 1190
   12586             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTANSQf = 1191
   12587             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTANSQh = 1192
   12588             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTANUDf = 1193
   12589             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTANUDh = 1194
   12590             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTANUQf = 1195
   12591             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTANUQh = 1196
   12592             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTASD = 1197
   12593             :     Feature_HasFullFP16 | 0, // VCVTASH = 1198
   12594             :     Feature_HasFPARMv8 | 0, // VCVTASS = 1199
   12595             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTAUD = 1200
   12596             :     Feature_HasFullFP16 | 0, // VCVTAUH = 1201
   12597             :     Feature_HasFPARMv8 | 0, // VCVTAUS = 1202
   12598             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTBDH = 1203
   12599             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTBHD = 1204
   12600             :     Feature_HasFP16 | 0, // VCVTBHS = 1205
   12601             :     Feature_HasFP16 | 0, // VCVTBSH = 1206
   12602             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VCVTDS = 1207
   12603             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTMNSDf = 1208
   12604             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTMNSDh = 1209
   12605             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTMNSQf = 1210
   12606             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTMNSQh = 1211
   12607             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTMNUDf = 1212
   12608             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTMNUDh = 1213
   12609             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTMNUQf = 1214
   12610             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTMNUQh = 1215
   12611             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTMSD = 1216
   12612             :     Feature_HasFullFP16 | 0, // VCVTMSH = 1217
   12613             :     Feature_HasFPARMv8 | 0, // VCVTMSS = 1218
   12614             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTMUD = 1219
   12615             :     Feature_HasFullFP16 | 0, // VCVTMUH = 1220
   12616             :     Feature_HasFPARMv8 | 0, // VCVTMUS = 1221
   12617             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTNNSDf = 1222
   12618             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTNNSDh = 1223
   12619             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTNNSQf = 1224
   12620             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTNNSQh = 1225
   12621             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTNNUDf = 1226
   12622             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTNNUDh = 1227
   12623             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTNNUQf = 1228
   12624             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTNNUQh = 1229
   12625             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTNSD = 1230
   12626             :     Feature_HasFullFP16 | 0, // VCVTNSH = 1231
   12627             :     Feature_HasFPARMv8 | 0, // VCVTNSS = 1232
   12628             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTNUD = 1233
   12629             :     Feature_HasFullFP16 | 0, // VCVTNUH = 1234
   12630             :     Feature_HasFPARMv8 | 0, // VCVTNUS = 1235
   12631             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTPNSDf = 1236
   12632             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTPNSDh = 1237
   12633             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTPNSQf = 1238
   12634             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTPNSQh = 1239
   12635             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTPNUDf = 1240
   12636             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTPNUDh = 1241
   12637             :     Feature_HasV8 | Feature_HasNEON | 0, // VCVTPNUQf = 1242
   12638             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTPNUQh = 1243
   12639             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTPSD = 1244
   12640             :     Feature_HasFullFP16 | 0, // VCVTPSH = 1245
   12641             :     Feature_HasFPARMv8 | 0, // VCVTPSS = 1246
   12642             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTPUD = 1247
   12643             :     Feature_HasFullFP16 | 0, // VCVTPUH = 1248
   12644             :     Feature_HasFPARMv8 | 0, // VCVTPUS = 1249
   12645             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VCVTSD = 1250
   12646             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTTDH = 1251
   12647             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VCVTTHD = 1252
   12648             :     Feature_HasFP16 | 0, // VCVTTHS = 1253
   12649             :     Feature_HasFP16 | 0, // VCVTTSH = 1254
   12650             :     Feature_HasNEON | Feature_HasFP16 | 0, // VCVTf2h = 1255
   12651             :     Feature_HasNEON | 0, // VCVTf2sd = 1256
   12652             :     Feature_HasNEON | 0, // VCVTf2sq = 1257
   12653             :     Feature_HasNEON | 0, // VCVTf2ud = 1258
   12654             :     Feature_HasNEON | 0, // VCVTf2uq = 1259
   12655             :     Feature_HasNEON | 0, // VCVTf2xsd = 1260
   12656             :     Feature_HasNEON | 0, // VCVTf2xsq = 1261
   12657             :     Feature_HasNEON | 0, // VCVTf2xud = 1262
   12658             :     Feature_HasNEON | 0, // VCVTf2xuq = 1263
   12659             :     Feature_HasNEON | Feature_HasFP16 | 0, // VCVTh2f = 1264
   12660             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTh2sd = 1265
   12661             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTh2sq = 1266
   12662             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTh2ud = 1267
   12663             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTh2uq = 1268
   12664             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTh2xsd = 1269
   12665             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTh2xsq = 1270
   12666             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTh2xud = 1271
   12667             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTh2xuq = 1272
   12668             :     Feature_HasNEON | 0, // VCVTs2fd = 1273
   12669             :     Feature_HasNEON | 0, // VCVTs2fq = 1274
   12670             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTs2hd = 1275
   12671             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTs2hq = 1276
   12672             :     Feature_HasNEON | 0, // VCVTu2fd = 1277
   12673             :     Feature_HasNEON | 0, // VCVTu2fq = 1278
   12674             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTu2hd = 1279
   12675             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTu2hq = 1280
   12676             :     Feature_HasNEON | 0, // VCVTxs2fd = 1281
   12677             :     Feature_HasNEON | 0, // VCVTxs2fq = 1282
   12678             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTxs2hd = 1283
   12679             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTxs2hq = 1284
   12680             :     Feature_HasNEON | 0, // VCVTxu2fd = 1285
   12681             :     Feature_HasNEON | 0, // VCVTxu2fq = 1286
   12682             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTxu2hd = 1287
   12683             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VCVTxu2hq = 1288
   12684             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VDIVD = 1289
   12685             :     Feature_HasFullFP16 | 0, // VDIVH = 1290
   12686             :     Feature_HasVFP2 | 0, // VDIVS = 1291
   12687             :     Feature_HasNEON | 0, // VDUP16d = 1292
   12688             :     Feature_HasNEON | 0, // VDUP16q = 1293
   12689             :     Feature_HasNEON | 0, // VDUP32d = 1294
   12690             :     Feature_HasNEON | 0, // VDUP32q = 1295
   12691             :     Feature_HasNEON | 0, // VDUP8d = 1296
   12692             :     Feature_HasNEON | 0, // VDUP8q = 1297
   12693             :     Feature_HasNEON | 0, // VDUPLN16d = 1298
   12694             :     Feature_HasNEON | 0, // VDUPLN16q = 1299
   12695             :     Feature_HasNEON | 0, // VDUPLN32d = 1300
   12696             :     Feature_HasNEON | 0, // VDUPLN32q = 1301
   12697             :     Feature_HasNEON | 0, // VDUPLN8d = 1302
   12698             :     Feature_HasNEON | 0, // VDUPLN8q = 1303
   12699             :     Feature_HasNEON | 0, // VEORd = 1304
   12700             :     Feature_HasNEON | 0, // VEORq = 1305
   12701             :     Feature_HasNEON | 0, // VEXTd16 = 1306
   12702             :     Feature_HasNEON | 0, // VEXTd32 = 1307
   12703             :     Feature_HasNEON | 0, // VEXTd8 = 1308
   12704             :     Feature_HasNEON | 0, // VEXTq16 = 1309
   12705             :     Feature_HasNEON | 0, // VEXTq32 = 1310
   12706             :     Feature_HasNEON | 0, // VEXTq64 = 1311
   12707             :     Feature_HasNEON | 0, // VEXTq8 = 1312
   12708             :     Feature_HasVFP4 | Feature_HasDPVFP | 0, // VFMAD = 1313
   12709             :     Feature_HasFullFP16 | 0, // VFMAH = 1314
   12710             :     Feature_HasNEON | Feature_HasFP16FML | 0, // VFMALD = 1315
   12711             :     Feature_HasNEON | Feature_HasFP16FML | 0, // VFMALDI = 1316
   12712             :     Feature_HasNEON | Feature_HasFP16FML | 0, // VFMALQ = 1317
   12713             :     Feature_HasNEON | Feature_HasFP16FML | 0, // VFMALQI = 1318
   12714             :     Feature_HasVFP4 | 0, // VFMAS = 1319
   12715             :     Feature_HasNEON | Feature_HasVFP4 | 0, // VFMAfd = 1320
   12716             :     Feature_HasNEON | Feature_HasVFP4 | 0, // VFMAfq = 1321
   12717             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VFMAhd = 1322
   12718             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VFMAhq = 1323
   12719             :     Feature_HasVFP4 | Feature_HasDPVFP | 0, // VFMSD = 1324
   12720             :     Feature_HasFullFP16 | 0, // VFMSH = 1325
   12721             :     Feature_HasNEON | Feature_HasFP16FML | 0, // VFMSLD = 1326
   12722             :     Feature_HasNEON | Feature_HasFP16FML | 0, // VFMSLDI = 1327
   12723             :     Feature_HasNEON | Feature_HasFP16FML | 0, // VFMSLQ = 1328
   12724             :     Feature_HasNEON | Feature_HasFP16FML | 0, // VFMSLQI = 1329
   12725             :     Feature_HasVFP4 | 0, // VFMSS = 1330
   12726             :     Feature_HasNEON | Feature_HasVFP4 | 0, // VFMSfd = 1331
   12727             :     Feature_HasNEON | Feature_HasVFP4 | 0, // VFMSfq = 1332
   12728             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VFMShd = 1333
   12729             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VFMShq = 1334
   12730             :     Feature_HasVFP4 | Feature_HasDPVFP | 0, // VFNMAD = 1335
   12731             :     Feature_HasFullFP16 | 0, // VFNMAH = 1336
   12732             :     Feature_HasVFP4 | 0, // VFNMAS = 1337
   12733             :     Feature_HasVFP4 | Feature_HasDPVFP | 0, // VFNMSD = 1338
   12734             :     Feature_HasFullFP16 | 0, // VFNMSH = 1339
   12735             :     Feature_HasVFP4 | 0, // VFNMSS = 1340
   12736             :     Feature_HasVFP2 | 0, // VGETLNi32 = 1341
   12737             :     Feature_HasNEON | 0, // VGETLNs16 = 1342
   12738             :     Feature_HasNEON | 0, // VGETLNs8 = 1343
   12739             :     Feature_HasNEON | 0, // VGETLNu16 = 1344
   12740             :     Feature_HasNEON | 0, // VGETLNu8 = 1345
   12741             :     Feature_HasNEON | 0, // VHADDsv16i8 = 1346
   12742             :     Feature_HasNEON | 0, // VHADDsv2i32 = 1347
   12743             :     Feature_HasNEON | 0, // VHADDsv4i16 = 1348
   12744             :     Feature_HasNEON | 0, // VHADDsv4i32 = 1349
   12745             :     Feature_HasNEON | 0, // VHADDsv8i16 = 1350
   12746             :     Feature_HasNEON | 0, // VHADDsv8i8 = 1351
   12747             :     Feature_HasNEON | 0, // VHADDuv16i8 = 1352
   12748             :     Feature_HasNEON | 0, // VHADDuv2i32 = 1353
   12749             :     Feature_HasNEON | 0, // VHADDuv4i16 = 1354
   12750             :     Feature_HasNEON | 0, // VHADDuv4i32 = 1355
   12751             :     Feature_HasNEON | 0, // VHADDuv8i16 = 1356
   12752             :     Feature_HasNEON | 0, // VHADDuv8i8 = 1357
   12753             :     Feature_HasNEON | 0, // VHSUBsv16i8 = 1358
   12754             :     Feature_HasNEON | 0, // VHSUBsv2i32 = 1359
   12755             :     Feature_HasNEON | 0, // VHSUBsv4i16 = 1360
   12756             :     Feature_HasNEON | 0, // VHSUBsv4i32 = 1361
   12757             :     Feature_HasNEON | 0, // VHSUBsv8i16 = 1362
   12758             :     Feature_HasNEON | 0, // VHSUBsv8i8 = 1363
   12759             :     Feature_HasNEON | 0, // VHSUBuv16i8 = 1364
   12760             :     Feature_HasNEON | 0, // VHSUBuv2i32 = 1365
   12761             :     Feature_HasNEON | 0, // VHSUBuv4i16 = 1366
   12762             :     Feature_HasNEON | 0, // VHSUBuv4i32 = 1367
   12763             :     Feature_HasNEON | 0, // VHSUBuv8i16 = 1368
   12764             :     Feature_HasNEON | 0, // VHSUBuv8i8 = 1369
   12765             :     Feature_HasFullFP16 | 0, // VINSH = 1370
   12766             :     Feature_HasFPARMv8 | Feature_HasV8_3a | 0, // VJCVT = 1371
   12767             :     Feature_HasNEON | 0, // VLD1DUPd16 = 1372
   12768             :     Feature_HasNEON | 0, // VLD1DUPd16wb_fixed = 1373
   12769             :     Feature_HasNEON | 0, // VLD1DUPd16wb_register = 1374
   12770             :     Feature_HasNEON | 0, // VLD1DUPd32 = 1375
   12771             :     Feature_HasNEON | 0, // VLD1DUPd32wb_fixed = 1376
   12772             :     Feature_HasNEON | 0, // VLD1DUPd32wb_register = 1377
   12773             :     Feature_HasNEON | 0, // VLD1DUPd8 = 1378
   12774             :     Feature_HasNEON | 0, // VLD1DUPd8wb_fixed = 1379
   12775             :     Feature_HasNEON | 0, // VLD1DUPd8wb_register = 1380
   12776             :     Feature_HasNEON | 0, // VLD1DUPq16 = 1381
   12777             :     Feature_HasNEON | 0, // VLD1DUPq16wb_fixed = 1382
   12778             :     Feature_HasNEON | 0, // VLD1DUPq16wb_register = 1383
   12779             :     Feature_HasNEON | 0, // VLD1DUPq32 = 1384
   12780             :     Feature_HasNEON | 0, // VLD1DUPq32wb_fixed = 1385
   12781             :     Feature_HasNEON | 0, // VLD1DUPq32wb_register = 1386
   12782             :     Feature_HasNEON | 0, // VLD1DUPq8 = 1387
   12783             :     Feature_HasNEON | 0, // VLD1DUPq8wb_fixed = 1388
   12784             :     Feature_HasNEON | 0, // VLD1DUPq8wb_register = 1389
   12785             :     Feature_HasNEON | 0, // VLD1LNd16 = 1390
   12786             :     Feature_HasNEON | 0, // VLD1LNd16_UPD = 1391
   12787             :     Feature_HasNEON | 0, // VLD1LNd32 = 1392
   12788             :     Feature_HasNEON | 0, // VLD1LNd32_UPD = 1393
   12789             :     Feature_HasNEON | 0, // VLD1LNd8 = 1394
   12790             :     Feature_HasNEON | 0, // VLD1LNd8_UPD = 1395
   12791             :     Feature_HasNEON | 0, // VLD1LNq16Pseudo = 1396
   12792             :     Feature_HasNEON | 0, // VLD1LNq16Pseudo_UPD = 1397
   12793             :     Feature_HasNEON | 0, // VLD1LNq32Pseudo = 1398
   12794             :     Feature_HasNEON | 0, // VLD1LNq32Pseudo_UPD = 1399
   12795             :     Feature_HasNEON | 0, // VLD1LNq8Pseudo = 1400
   12796             :     Feature_HasNEON | 0, // VLD1LNq8Pseudo_UPD = 1401
   12797             :     Feature_HasNEON | 0, // VLD1d16 = 1402
   12798             :     Feature_HasNEON | 0, // VLD1d16Q = 1403
   12799             :     Feature_HasNEON | 0, // VLD1d16QPseudo = 1404
   12800             :     Feature_HasNEON | 0, // VLD1d16Qwb_fixed = 1405
   12801             :     Feature_HasNEON | 0, // VLD1d16Qwb_register = 1406
   12802             :     Feature_HasNEON | 0, // VLD1d16T = 1407
   12803             :     Feature_HasNEON | 0, // VLD1d16TPseudo = 1408
   12804             :     Feature_HasNEON | 0, // VLD1d16Twb_fixed = 1409
   12805             :     Feature_HasNEON | 0, // VLD1d16Twb_register = 1410
   12806             :     Feature_HasNEON | 0, // VLD1d16wb_fixed = 1411
   12807             :     Feature_HasNEON | 0, // VLD1d16wb_register = 1412
   12808             :     Feature_HasNEON | 0, // VLD1d32 = 1413
   12809             :     Feature_HasNEON | 0, // VLD1d32Q = 1414
   12810             :     Feature_HasNEON | 0, // VLD1d32QPseudo = 1415
   12811             :     Feature_HasNEON | 0, // VLD1d32Qwb_fixed = 1416
   12812             :     Feature_HasNEON | 0, // VLD1d32Qwb_register = 1417
   12813             :     Feature_HasNEON | 0, // VLD1d32T = 1418
   12814             :     Feature_HasNEON | 0, // VLD1d32TPseudo = 1419
   12815             :     Feature_HasNEON | 0, // VLD1d32Twb_fixed = 1420
   12816             :     Feature_HasNEON | 0, // VLD1d32Twb_register = 1421
   12817             :     Feature_HasNEON | 0, // VLD1d32wb_fixed = 1422
   12818             :     Feature_HasNEON | 0, // VLD1d32wb_register = 1423
   12819             :     Feature_HasNEON | 0, // VLD1d64 = 1424
   12820             :     Feature_HasNEON | 0, // VLD1d64Q = 1425
   12821             :     Feature_HasNEON | 0, // VLD1d64QPseudo = 1426
   12822             :     Feature_HasNEON | 0, // VLD1d64QPseudoWB_fixed = 1427
   12823             :     Feature_HasNEON | 0, // VLD1d64QPseudoWB_register = 1428
   12824             :     Feature_HasNEON | 0, // VLD1d64Qwb_fixed = 1429
   12825             :     Feature_HasNEON | 0, // VLD1d64Qwb_register = 1430
   12826             :     Feature_HasNEON | 0, // VLD1d64T = 1431
   12827             :     Feature_HasNEON | 0, // VLD1d64TPseudo = 1432
   12828             :     Feature_HasNEON | 0, // VLD1d64TPseudoWB_fixed = 1433
   12829             :     Feature_HasNEON | 0, // VLD1d64TPseudoWB_register = 1434
   12830             :     Feature_HasNEON | 0, // VLD1d64Twb_fixed = 1435
   12831             :     Feature_HasNEON | 0, // VLD1d64Twb_register = 1436
   12832             :     Feature_HasNEON | 0, // VLD1d64wb_fixed = 1437
   12833             :     Feature_HasNEON | 0, // VLD1d64wb_register = 1438
   12834             :     Feature_HasNEON | 0, // VLD1d8 = 1439
   12835             :     Feature_HasNEON | 0, // VLD1d8Q = 1440
   12836             :     Feature_HasNEON | 0, // VLD1d8QPseudo = 1441
   12837             :     Feature_HasNEON | 0, // VLD1d8Qwb_fixed = 1442
   12838             :     Feature_HasNEON | 0, // VLD1d8Qwb_register = 1443
   12839             :     Feature_HasNEON | 0, // VLD1d8T = 1444
   12840             :     Feature_HasNEON | 0, // VLD1d8TPseudo = 1445
   12841             :     Feature_HasNEON | 0, // VLD1d8Twb_fixed = 1446
   12842             :     Feature_HasNEON | 0, // VLD1d8Twb_register = 1447
   12843             :     Feature_HasNEON | 0, // VLD1d8wb_fixed = 1448
   12844             :     Feature_HasNEON | 0, // VLD1d8wb_register = 1449
   12845             :     Feature_HasNEON | 0, // VLD1q16 = 1450
   12846             :     Feature_HasNEON | 0, // VLD1q16HighQPseudo = 1451
   12847             :     Feature_HasNEON | 0, // VLD1q16HighTPseudo = 1452
   12848             :     Feature_HasNEON | 0, // VLD1q16LowQPseudo_UPD = 1453
   12849             :     Feature_HasNEON | 0, // VLD1q16LowTPseudo_UPD = 1454
   12850             :     Feature_HasNEON | 0, // VLD1q16wb_fixed = 1455
   12851             :     Feature_HasNEON | 0, // VLD1q16wb_register = 1456
   12852             :     Feature_HasNEON | 0, // VLD1q32 = 1457
   12853             :     Feature_HasNEON | 0, // VLD1q32HighQPseudo = 1458
   12854             :     Feature_HasNEON | 0, // VLD1q32HighTPseudo = 1459
   12855             :     Feature_HasNEON | 0, // VLD1q32LowQPseudo_UPD = 1460
   12856             :     Feature_HasNEON | 0, // VLD1q32LowTPseudo_UPD = 1461
   12857             :     Feature_HasNEON | 0, // VLD1q32wb_fixed = 1462
   12858             :     Feature_HasNEON | 0, // VLD1q32wb_register = 1463
   12859             :     Feature_HasNEON | 0, // VLD1q64 = 1464
   12860             :     Feature_HasNEON | 0, // VLD1q64HighQPseudo = 1465
   12861             :     Feature_HasNEON | 0, // VLD1q64HighTPseudo = 1466
   12862             :     Feature_HasNEON | 0, // VLD1q64LowQPseudo_UPD = 1467
   12863             :     Feature_HasNEON | 0, // VLD1q64LowTPseudo_UPD = 1468
   12864             :     Feature_HasNEON | 0, // VLD1q64wb_fixed = 1469
   12865             :     Feature_HasNEON | 0, // VLD1q64wb_register = 1470
   12866             :     Feature_HasNEON | 0, // VLD1q8 = 1471
   12867             :     Feature_HasNEON | 0, // VLD1q8HighQPseudo = 1472
   12868             :     Feature_HasNEON | 0, // VLD1q8HighTPseudo = 1473
   12869             :     Feature_HasNEON | 0, // VLD1q8LowQPseudo_UPD = 1474
   12870             :     Feature_HasNEON | 0, // VLD1q8LowTPseudo_UPD = 1475
   12871             :     Feature_HasNEON | 0, // VLD1q8wb_fixed = 1476
   12872             :     Feature_HasNEON | 0, // VLD1q8wb_register = 1477
   12873             :     Feature_HasNEON | 0, // VLD2DUPd16 = 1478
   12874             :     Feature_HasNEON | 0, // VLD2DUPd16wb_fixed = 1479
   12875             :     Feature_HasNEON | 0, // VLD2DUPd16wb_register = 1480
   12876             :     Feature_HasNEON | 0, // VLD2DUPd16x2 = 1481
   12877             :     Feature_HasNEON | 0, // VLD2DUPd16x2wb_fixed = 1482
   12878             :     Feature_HasNEON | 0, // VLD2DUPd16x2wb_register = 1483
   12879             :     Feature_HasNEON | 0, // VLD2DUPd32 = 1484
   12880             :     Feature_HasNEON | 0, // VLD2DUPd32wb_fixed = 1485
   12881             :     Feature_HasNEON | 0, // VLD2DUPd32wb_register = 1486
   12882             :     Feature_HasNEON | 0, // VLD2DUPd32x2 = 1487
   12883             :     Feature_HasNEON | 0, // VLD2DUPd32x2wb_fixed = 1488
   12884             :     Feature_HasNEON | 0, // VLD2DUPd32x2wb_register = 1489
   12885             :     Feature_HasNEON | 0, // VLD2DUPd8 = 1490
   12886             :     Feature_HasNEON | 0, // VLD2DUPd8wb_fixed = 1491
   12887             :     Feature_HasNEON | 0, // VLD2DUPd8wb_register = 1492
   12888             :     Feature_HasNEON | 0, // VLD2DUPd8x2 = 1493
   12889             :     Feature_HasNEON | 0, // VLD2DUPd8x2wb_fixed = 1494
   12890             :     Feature_HasNEON | 0, // VLD2DUPd8x2wb_register = 1495
   12891             :     Feature_HasNEON | 0, // VLD2DUPq16EvenPseudo = 1496
   12892             :     Feature_HasNEON | 0, // VLD2DUPq16OddPseudo = 1497
   12893             :     Feature_HasNEON | 0, // VLD2DUPq32EvenPseudo = 1498
   12894             :     Feature_HasNEON | 0, // VLD2DUPq32OddPseudo = 1499
   12895             :     Feature_HasNEON | 0, // VLD2DUPq8EvenPseudo = 1500
   12896             :     Feature_HasNEON | 0, // VLD2DUPq8OddPseudo = 1501
   12897             :     Feature_HasNEON | 0, // VLD2LNd16 = 1502
   12898             :     Feature_HasNEON | 0, // VLD2LNd16Pseudo = 1503
   12899             :     Feature_HasNEON | 0, // VLD2LNd16Pseudo_UPD = 1504
   12900             :     Feature_HasNEON | 0, // VLD2LNd16_UPD = 1505
   12901             :     Feature_HasNEON | 0, // VLD2LNd32 = 1506
   12902             :     Feature_HasNEON | 0, // VLD2LNd32Pseudo = 1507
   12903             :     Feature_HasNEON | 0, // VLD2LNd32Pseudo_UPD = 1508
   12904             :     Feature_HasNEON | 0, // VLD2LNd32_UPD = 1509
   12905             :     Feature_HasNEON | 0, // VLD2LNd8 = 1510
   12906             :     Feature_HasNEON | 0, // VLD2LNd8Pseudo = 1511
   12907             :     Feature_HasNEON | 0, // VLD2LNd8Pseudo_UPD = 1512
   12908             :     Feature_HasNEON | 0, // VLD2LNd8_UPD = 1513
   12909             :     Feature_HasNEON | 0, // VLD2LNq16 = 1514
   12910             :     Feature_HasNEON | 0, // VLD2LNq16Pseudo = 1515
   12911             :     Feature_HasNEON | 0, // VLD2LNq16Pseudo_UPD = 1516
   12912             :     Feature_HasNEON | 0, // VLD2LNq16_UPD = 1517
   12913             :     Feature_HasNEON | 0, // VLD2LNq32 = 1518
   12914             :     Feature_HasNEON | 0, // VLD2LNq32Pseudo = 1519
   12915             :     Feature_HasNEON | 0, // VLD2LNq32Pseudo_UPD = 1520
   12916             :     Feature_HasNEON | 0, // VLD2LNq32_UPD = 1521
   12917             :     Feature_HasNEON | 0, // VLD2b16 = 1522
   12918             :     Feature_HasNEON | 0, // VLD2b16wb_fixed = 1523
   12919             :     Feature_HasNEON | 0, // VLD2b16wb_register = 1524
   12920             :     Feature_HasNEON | 0, // VLD2b32 = 1525
   12921             :     Feature_HasNEON | 0, // VLD2b32wb_fixed = 1526
   12922             :     Feature_HasNEON | 0, // VLD2b32wb_register = 1527
   12923             :     Feature_HasNEON | 0, // VLD2b8 = 1528
   12924             :     Feature_HasNEON | 0, // VLD2b8wb_fixed = 1529
   12925             :     Feature_HasNEON | 0, // VLD2b8wb_register = 1530
   12926             :     Feature_HasNEON | 0, // VLD2d16 = 1531
   12927             :     Feature_HasNEON | 0, // VLD2d16wb_fixed = 1532
   12928             :     Feature_HasNEON | 0, // VLD2d16wb_register = 1533
   12929             :     Feature_HasNEON | 0, // VLD2d32 = 1534
   12930             :     Feature_HasNEON | 0, // VLD2d32wb_fixed = 1535
   12931             :     Feature_HasNEON | 0, // VLD2d32wb_register = 1536
   12932             :     Feature_HasNEON | 0, // VLD2d8 = 1537
   12933             :     Feature_HasNEON | 0, // VLD2d8wb_fixed = 1538
   12934             :     Feature_HasNEON | 0, // VLD2d8wb_register = 1539
   12935             :     Feature_HasNEON | 0, // VLD2q16 = 1540
   12936             :     Feature_HasNEON | 0, // VLD2q16Pseudo = 1541
   12937             :     Feature_HasNEON | 0, // VLD2q16PseudoWB_fixed = 1542
   12938             :     Feature_HasNEON | 0, // VLD2q16PseudoWB_register = 1543
   12939             :     Feature_HasNEON | 0, // VLD2q16wb_fixed = 1544
   12940             :     Feature_HasNEON | 0, // VLD2q16wb_register = 1545
   12941             :     Feature_HasNEON | 0, // VLD2q32 = 1546
   12942             :     Feature_HasNEON | 0, // VLD2q32Pseudo = 1547
   12943             :     Feature_HasNEON | 0, // VLD2q32PseudoWB_fixed = 1548
   12944             :     Feature_HasNEON | 0, // VLD2q32PseudoWB_register = 1549
   12945             :     Feature_HasNEON | 0, // VLD2q32wb_fixed = 1550
   12946             :     Feature_HasNEON | 0, // VLD2q32wb_register = 1551
   12947             :     Feature_HasNEON | 0, // VLD2q8 = 1552
   12948             :     Feature_HasNEON | 0, // VLD2q8Pseudo = 1553
   12949             :     Feature_HasNEON | 0, // VLD2q8PseudoWB_fixed = 1554
   12950             :     Feature_HasNEON | 0, // VLD2q8PseudoWB_register = 1555
   12951             :     Feature_HasNEON | 0, // VLD2q8wb_fixed = 1556
   12952             :     Feature_HasNEON | 0, // VLD2q8wb_register = 1557
   12953             :     Feature_HasNEON | 0, // VLD3DUPd16 = 1558
   12954             :     Feature_HasNEON | 0, // VLD3DUPd16Pseudo = 1559
   12955             :     Feature_HasNEON | 0, // VLD3DUPd16Pseudo_UPD = 1560
   12956             :     Feature_HasNEON | 0, // VLD3DUPd16_UPD = 1561
   12957             :     Feature_HasNEON | 0, // VLD3DUPd32 = 1562
   12958             :     Feature_HasNEON | 0, // VLD3DUPd32Pseudo = 1563
   12959             :     Feature_HasNEON | 0, // VLD3DUPd32Pseudo_UPD = 1564
   12960             :     Feature_HasNEON | 0, // VLD3DUPd32_UPD = 1565
   12961             :     Feature_HasNEON | 0, // VLD3DUPd8 = 1566
   12962             :     Feature_HasNEON | 0, // VLD3DUPd8Pseudo = 1567
   12963             :     Feature_HasNEON | 0, // VLD3DUPd8Pseudo_UPD = 1568
   12964             :     Feature_HasNEON | 0, // VLD3DUPd8_UPD = 1569
   12965             :     Feature_HasNEON | 0, // VLD3DUPq16 = 1570
   12966             :     Feature_HasNEON | 0, // VLD3DUPq16EvenPseudo = 1571
   12967             :     Feature_HasNEON | 0, // VLD3DUPq16OddPseudo = 1572
   12968             :     Feature_HasNEON | 0, // VLD3DUPq16_UPD = 1573
   12969             :     Feature_HasNEON | 0, // VLD3DUPq32 = 1574
   12970             :     Feature_HasNEON | 0, // VLD3DUPq32EvenPseudo = 1575
   12971             :     Feature_HasNEON | 0, // VLD3DUPq32OddPseudo = 1576
   12972             :     Feature_HasNEON | 0, // VLD3DUPq32_UPD = 1577
   12973             :     Feature_HasNEON | 0, // VLD3DUPq8 = 1578
   12974             :     Feature_HasNEON | 0, // VLD3DUPq8EvenPseudo = 1579
   12975             :     Feature_HasNEON | 0, // VLD3DUPq8OddPseudo = 1580
   12976             :     Feature_HasNEON | 0, // VLD3DUPq8_UPD = 1581
   12977             :     Feature_HasNEON | 0, // VLD3LNd16 = 1582
   12978             :     Feature_HasNEON | 0, // VLD3LNd16Pseudo = 1583
   12979             :     Feature_HasNEON | 0, // VLD3LNd16Pseudo_UPD = 1584
   12980             :     Feature_HasNEON | 0, // VLD3LNd16_UPD = 1585
   12981             :     Feature_HasNEON | 0, // VLD3LNd32 = 1586
   12982             :     Feature_HasNEON | 0, // VLD3LNd32Pseudo = 1587
   12983             :     Feature_HasNEON | 0, // VLD3LNd32Pseudo_UPD = 1588
   12984             :     Feature_HasNEON | 0, // VLD3LNd32_UPD = 1589
   12985             :     Feature_HasNEON | 0, // VLD3LNd8 = 1590
   12986             :     Feature_HasNEON | 0, // VLD3LNd8Pseudo = 1591
   12987             :     Feature_HasNEON | 0, // VLD3LNd8Pseudo_UPD = 1592
   12988             :     Feature_HasNEON | 0, // VLD3LNd8_UPD = 1593
   12989             :     Feature_HasNEON | 0, // VLD3LNq16 = 1594
   12990             :     Feature_HasNEON | 0, // VLD3LNq16Pseudo = 1595
   12991             :     Feature_HasNEON | 0, // VLD3LNq16Pseudo_UPD = 1596
   12992             :     Feature_HasNEON | 0, // VLD3LNq16_UPD = 1597
   12993             :     Feature_HasNEON | 0, // VLD3LNq32 = 1598
   12994             :     Feature_HasNEON | 0, // VLD3LNq32Pseudo = 1599
   12995             :     Feature_HasNEON | 0, // VLD3LNq32Pseudo_UPD = 1600
   12996             :     Feature_HasNEON | 0, // VLD3LNq32_UPD = 1601
   12997             :     Feature_HasNEON | 0, // VLD3d16 = 1602
   12998             :     Feature_HasNEON | 0, // VLD3d16Pseudo = 1603
   12999             :     Feature_HasNEON | 0, // VLD3d16Pseudo_UPD = 1604
   13000             :     Feature_HasNEON | 0, // VLD3d16_UPD = 1605
   13001             :     Feature_HasNEON | 0, // VLD3d32 = 1606
   13002             :     Feature_HasNEON | 0, // VLD3d32Pseudo = 1607
   13003             :     Feature_HasNEON | 0, // VLD3d32Pseudo_UPD = 1608
   13004             :     Feature_HasNEON | 0, // VLD3d32_UPD = 1609
   13005             :     Feature_HasNEON | 0, // VLD3d8 = 1610
   13006             :     Feature_HasNEON | 0, // VLD3d8Pseudo = 1611
   13007             :     Feature_HasNEON | 0, // VLD3d8Pseudo_UPD = 1612
   13008             :     Feature_HasNEON | 0, // VLD3d8_UPD = 1613
   13009             :     Feature_HasNEON | 0, // VLD3q16 = 1614
   13010             :     Feature_HasNEON | 0, // VLD3q16Pseudo_UPD = 1615
   13011             :     Feature_HasNEON | 0, // VLD3q16_UPD = 1616
   13012             :     Feature_HasNEON | 0, // VLD3q16oddPseudo = 1617
   13013             :     Feature_HasNEON | 0, // VLD3q16oddPseudo_UPD = 1618
   13014             :     Feature_HasNEON | 0, // VLD3q32 = 1619
   13015             :     Feature_HasNEON | 0, // VLD3q32Pseudo_UPD = 1620
   13016             :     Feature_HasNEON | 0, // VLD3q32_UPD = 1621
   13017             :     Feature_HasNEON | 0, // VLD3q32oddPseudo = 1622
   13018             :     Feature_HasNEON | 0, // VLD3q32oddPseudo_UPD = 1623
   13019             :     Feature_HasNEON | 0, // VLD3q8 = 1624
   13020             :     Feature_HasNEON | 0, // VLD3q8Pseudo_UPD = 1625
   13021             :     Feature_HasNEON | 0, // VLD3q8_UPD = 1626
   13022             :     Feature_HasNEON | 0, // VLD3q8oddPseudo = 1627
   13023             :     Feature_HasNEON | 0, // VLD3q8oddPseudo_UPD = 1628
   13024             :     Feature_HasNEON | 0, // VLD4DUPd16 = 1629
   13025             :     Feature_HasNEON | 0, // VLD4DUPd16Pseudo = 1630
   13026             :     Feature_HasNEON | 0, // VLD4DUPd16Pseudo_UPD = 1631
   13027             :     Feature_HasNEON | 0, // VLD4DUPd16_UPD = 1632
   13028             :     Feature_HasNEON | 0, // VLD4DUPd32 = 1633
   13029             :     Feature_HasNEON | 0, // VLD4DUPd32Pseudo = 1634
   13030             :     Feature_HasNEON | 0, // VLD4DUPd32Pseudo_UPD = 1635
   13031             :     Feature_HasNEON | 0, // VLD4DUPd32_UPD = 1636
   13032             :     Feature_HasNEON | 0, // VLD4DUPd8 = 1637
   13033             :     Feature_HasNEON | 0, // VLD4DUPd8Pseudo = 1638
   13034             :     Feature_HasNEON | 0, // VLD4DUPd8Pseudo_UPD = 1639
   13035             :     Feature_HasNEON | 0, // VLD4DUPd8_UPD = 1640
   13036             :     Feature_HasNEON | 0, // VLD4DUPq16 = 1641
   13037             :     Feature_HasNEON | 0, // VLD4DUPq16EvenPseudo = 1642
   13038             :     Feature_HasNEON | 0, // VLD4DUPq16OddPseudo = 1643
   13039             :     Feature_HasNEON | 0, // VLD4DUPq16_UPD = 1644
   13040             :     Feature_HasNEON | 0, // VLD4DUPq32 = 1645
   13041             :     Feature_HasNEON | 0, // VLD4DUPq32EvenPseudo = 1646
   13042             :     Feature_HasNEON | 0, // VLD4DUPq32OddPseudo = 1647
   13043             :     Feature_HasNEON | 0, // VLD4DUPq32_UPD = 1648
   13044             :     Feature_HasNEON | 0, // VLD4DUPq8 = 1649
   13045             :     Feature_HasNEON | 0, // VLD4DUPq8EvenPseudo = 1650
   13046             :     Feature_HasNEON | 0, // VLD4DUPq8OddPseudo = 1651
   13047             :     Feature_HasNEON | 0, // VLD4DUPq8_UPD = 1652
   13048             :     Feature_HasNEON | 0, // VLD4LNd16 = 1653
   13049             :     Feature_HasNEON | 0, // VLD4LNd16Pseudo = 1654
   13050             :     Feature_HasNEON | 0, // VLD4LNd16Pseudo_UPD = 1655
   13051             :     Feature_HasNEON | 0, // VLD4LNd16_UPD = 1656
   13052             :     Feature_HasNEON | 0, // VLD4LNd32 = 1657
   13053             :     Feature_HasNEON | 0, // VLD4LNd32Pseudo = 1658
   13054             :     Feature_HasNEON | 0, // VLD4LNd32Pseudo_UPD = 1659
   13055             :     Feature_HasNEON | 0, // VLD4LNd32_UPD = 1660
   13056             :     Feature_HasNEON | 0, // VLD4LNd8 = 1661
   13057             :     Feature_HasNEON | 0, // VLD4LNd8Pseudo = 1662
   13058             :     Feature_HasNEON | 0, // VLD4LNd8Pseudo_UPD = 1663
   13059             :     Feature_HasNEON | 0, // VLD4LNd8_UPD = 1664
   13060             :     Feature_HasNEON | 0, // VLD4LNq16 = 1665
   13061             :     Feature_HasNEON | 0, // VLD4LNq16Pseudo = 1666
   13062             :     Feature_HasNEON | 0, // VLD4LNq16Pseudo_UPD = 1667
   13063             :     Feature_HasNEON | 0, // VLD4LNq16_UPD = 1668
   13064             :     Feature_HasNEON | 0, // VLD4LNq32 = 1669
   13065             :     Feature_HasNEON | 0, // VLD4LNq32Pseudo = 1670
   13066             :     Feature_HasNEON | 0, // VLD4LNq32Pseudo_UPD = 1671
   13067             :     Feature_HasNEON | 0, // VLD4LNq32_UPD = 1672
   13068             :     Feature_HasNEON | 0, // VLD4d16 = 1673
   13069             :     Feature_HasNEON | 0, // VLD4d16Pseudo = 1674
   13070             :     Feature_HasNEON | 0, // VLD4d16Pseudo_UPD = 1675
   13071             :     Feature_HasNEON | 0, // VLD4d16_UPD = 1676
   13072             :     Feature_HasNEON | 0, // VLD4d32 = 1677
   13073             :     Feature_HasNEON | 0, // VLD4d32Pseudo = 1678
   13074             :     Feature_HasNEON | 0, // VLD4d32Pseudo_UPD = 1679
   13075             :     Feature_HasNEON | 0, // VLD4d32_UPD = 1680
   13076             :     Feature_HasNEON | 0, // VLD4d8 = 1681
   13077             :     Feature_HasNEON | 0, // VLD4d8Pseudo = 1682
   13078             :     Feature_HasNEON | 0, // VLD4d8Pseudo_UPD = 1683
   13079             :     Feature_HasNEON | 0, // VLD4d8_UPD = 1684
   13080             :     Feature_HasNEON | 0, // VLD4q16 = 1685
   13081             :     Feature_HasNEON | 0, // VLD4q16Pseudo_UPD = 1686
   13082             :     Feature_HasNEON | 0, // VLD4q16_UPD = 1687
   13083             :     Feature_HasNEON | 0, // VLD4q16oddPseudo = 1688
   13084             :     Feature_HasNEON | 0, // VLD4q16oddPseudo_UPD = 1689
   13085             :     Feature_HasNEON | 0, // VLD4q32 = 1690
   13086             :     Feature_HasNEON | 0, // VLD4q32Pseudo_UPD = 1691
   13087             :     Feature_HasNEON | 0, // VLD4q32_UPD = 1692
   13088             :     Feature_HasNEON | 0, // VLD4q32oddPseudo = 1693
   13089             :     Feature_HasNEON | 0, // VLD4q32oddPseudo_UPD = 1694
   13090             :     Feature_HasNEON | 0, // VLD4q8 = 1695
   13091             :     Feature_HasNEON | 0, // VLD4q8Pseudo_UPD = 1696
   13092             :     Feature_HasNEON | 0, // VLD4q8_UPD = 1697
   13093             :     Feature_HasNEON | 0, // VLD4q8oddPseudo = 1698
   13094             :     Feature_HasNEON | 0, // VLD4q8oddPseudo_UPD = 1699
   13095             :     Feature_HasVFP2 | 0, // VLDMDDB_UPD = 1700
   13096             :     Feature_HasVFP2 | 0, // VLDMDIA = 1701
   13097             :     Feature_HasVFP2 | 0, // VLDMDIA_UPD = 1702
   13098             :     Feature_HasVFP2 | 0, // VLDMQIA = 1703
   13099             :     Feature_HasVFP2 | 0, // VLDMSDB_UPD = 1704
   13100             :     Feature_HasVFP2 | 0, // VLDMSIA = 1705
   13101             :     Feature_HasVFP2 | 0, // VLDMSIA_UPD = 1706
   13102             :     Feature_HasVFP2 | 0, // VLDRD = 1707
   13103             :     Feature_HasFullFP16 | 0, // VLDRH = 1708
   13104             :     Feature_HasVFP2 | 0, // VLDRS = 1709
   13105             :     Feature_HasV8MMainline | Feature_Has8MSecExt | 0, // VLLDM = 1710
   13106             :     Feature_HasV8MMainline | Feature_Has8MSecExt | 0, // VLSTM = 1711
   13107             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VMAXNMD = 1712
   13108             :     Feature_HasFullFP16 | 0, // VMAXNMH = 1713
   13109             :     Feature_HasV8 | Feature_HasNEON | 0, // VMAXNMNDf = 1714
   13110             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VMAXNMNDh = 1715
   13111             :     Feature_HasV8 | Feature_HasNEON | 0, // VMAXNMNQf = 1716
   13112             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VMAXNMNQh = 1717
   13113             :     Feature_HasFPARMv8 | 0, // VMAXNMS = 1718
   13114             :     Feature_HasNEON | 0, // VMAXfd = 1719
   13115             :     Feature_HasNEON | 0, // VMAXfq = 1720
   13116             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMAXhd = 1721
   13117             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMAXhq = 1722
   13118             :     Feature_HasNEON | 0, // VMAXsv16i8 = 1723
   13119             :     Feature_HasNEON | 0, // VMAXsv2i32 = 1724
   13120             :     Feature_HasNEON | 0, // VMAXsv4i16 = 1725
   13121             :     Feature_HasNEON | 0, // VMAXsv4i32 = 1726
   13122             :     Feature_HasNEON | 0, // VMAXsv8i16 = 1727
   13123             :     Feature_HasNEON | 0, // VMAXsv8i8 = 1728
   13124             :     Feature_HasNEON | 0, // VMAXuv16i8 = 1729
   13125             :     Feature_HasNEON | 0, // VMAXuv2i32 = 1730
   13126             :     Feature_HasNEON | 0, // VMAXuv4i16 = 1731
   13127             :     Feature_HasNEON | 0, // VMAXuv4i32 = 1732
   13128             :     Feature_HasNEON | 0, // VMAXuv8i16 = 1733
   13129             :     Feature_HasNEON | 0, // VMAXuv8i8 = 1734
   13130             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VMINNMD = 1735
   13131             :     Feature_HasFullFP16 | 0, // VMINNMH = 1736
   13132             :     Feature_HasV8 | Feature_HasNEON | 0, // VMINNMNDf = 1737
   13133             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VMINNMNDh = 1738
   13134             :     Feature_HasV8 | Feature_HasNEON | 0, // VMINNMNQf = 1739
   13135             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VMINNMNQh = 1740
   13136             :     Feature_HasFPARMv8 | 0, // VMINNMS = 1741
   13137             :     Feature_HasNEON | 0, // VMINfd = 1742
   13138             :     Feature_HasNEON | 0, // VMINfq = 1743
   13139             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMINhd = 1744
   13140             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMINhq = 1745
   13141             :     Feature_HasNEON | 0, // VMINsv16i8 = 1746
   13142             :     Feature_HasNEON | 0, // VMINsv2i32 = 1747
   13143             :     Feature_HasNEON | 0, // VMINsv4i16 = 1748
   13144             :     Feature_HasNEON | 0, // VMINsv4i32 = 1749
   13145             :     Feature_HasNEON | 0, // VMINsv8i16 = 1750
   13146             :     Feature_HasNEON | 0, // VMINsv8i8 = 1751
   13147             :     Feature_HasNEON | 0, // VMINuv16i8 = 1752
   13148             :     Feature_HasNEON | 0, // VMINuv2i32 = 1753
   13149             :     Feature_HasNEON | 0, // VMINuv4i16 = 1754
   13150             :     Feature_HasNEON | 0, // VMINuv4i32 = 1755
   13151             :     Feature_HasNEON | 0, // VMINuv8i16 = 1756
   13152             :     Feature_HasNEON | 0, // VMINuv8i8 = 1757
   13153             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VMLAD = 1758
   13154             :     Feature_HasFullFP16 | 0, // VMLAH = 1759
   13155             :     Feature_HasNEON | 0, // VMLALslsv2i32 = 1760
   13156             :     Feature_HasNEON | 0, // VMLALslsv4i16 = 1761
   13157             :     Feature_HasNEON | 0, // VMLALsluv2i32 = 1762
   13158             :     Feature_HasNEON | 0, // VMLALsluv4i16 = 1763
   13159             :     Feature_HasNEON | 0, // VMLALsv2i64 = 1764
   13160             :     Feature_HasNEON | 0, // VMLALsv4i32 = 1765
   13161             :     Feature_HasNEON | 0, // VMLALsv8i16 = 1766
   13162             :     Feature_HasNEON | 0, // VMLALuv2i64 = 1767
   13163             :     Feature_HasNEON | 0, // VMLALuv4i32 = 1768
   13164             :     Feature_HasNEON | 0, // VMLALuv8i16 = 1769
   13165             :     Feature_HasVFP2 | 0, // VMLAS = 1770
   13166             :     Feature_HasNEON | 0, // VMLAfd = 1771
   13167             :     Feature_HasNEON | 0, // VMLAfq = 1772
   13168             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMLAhd = 1773
   13169             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMLAhq = 1774
   13170             :     Feature_HasNEON | 0, // VMLAslfd = 1775
   13171             :     Feature_HasNEON | 0, // VMLAslfq = 1776
   13172             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMLAslhd = 1777
   13173             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMLAslhq = 1778
   13174             :     Feature_HasNEON | 0, // VMLAslv2i32 = 1779
   13175             :     Feature_HasNEON | 0, // VMLAslv4i16 = 1780
   13176             :     Feature_HasNEON | 0, // VMLAslv4i32 = 1781
   13177             :     Feature_HasNEON | 0, // VMLAslv8i16 = 1782
   13178             :     Feature_HasNEON | 0, // VMLAv16i8 = 1783
   13179             :     Feature_HasNEON | 0, // VMLAv2i32 = 1784
   13180             :     Feature_HasNEON | 0, // VMLAv4i16 = 1785
   13181             :     Feature_HasNEON | 0, // VMLAv4i32 = 1786
   13182             :     Feature_HasNEON | 0, // VMLAv8i16 = 1787
   13183             :     Feature_HasNEON | 0, // VMLAv8i8 = 1788
   13184             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VMLSD = 1789
   13185             :     Feature_HasFullFP16 | 0, // VMLSH = 1790
   13186             :     Feature_HasNEON | 0, // VMLSLslsv2i32 = 1791
   13187             :     Feature_HasNEON | 0, // VMLSLslsv4i16 = 1792
   13188             :     Feature_HasNEON | 0, // VMLSLsluv2i32 = 1793
   13189             :     Feature_HasNEON | 0, // VMLSLsluv4i16 = 1794
   13190             :     Feature_HasNEON | 0, // VMLSLsv2i64 = 1795
   13191             :     Feature_HasNEON | 0, // VMLSLsv4i32 = 1796
   13192             :     Feature_HasNEON | 0, // VMLSLsv8i16 = 1797
   13193             :     Feature_HasNEON | 0, // VMLSLuv2i64 = 1798
   13194             :     Feature_HasNEON | 0, // VMLSLuv4i32 = 1799
   13195             :     Feature_HasNEON | 0, // VMLSLuv8i16 = 1800
   13196             :     Feature_HasVFP2 | 0, // VMLSS = 1801
   13197             :     Feature_HasNEON | 0, // VMLSfd = 1802
   13198             :     Feature_HasNEON | 0, // VMLSfq = 1803
   13199             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMLShd = 1804
   13200             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMLShq = 1805
   13201             :     Feature_HasNEON | 0, // VMLSslfd = 1806
   13202             :     Feature_HasNEON | 0, // VMLSslfq = 1807
   13203             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMLSslhd = 1808
   13204             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMLSslhq = 1809
   13205             :     Feature_HasNEON | 0, // VMLSslv2i32 = 1810
   13206             :     Feature_HasNEON | 0, // VMLSslv4i16 = 1811
   13207             :     Feature_HasNEON | 0, // VMLSslv4i32 = 1812
   13208             :     Feature_HasNEON | 0, // VMLSslv8i16 = 1813
   13209             :     Feature_HasNEON | 0, // VMLSv16i8 = 1814
   13210             :     Feature_HasNEON | 0, // VMLSv2i32 = 1815
   13211             :     Feature_HasNEON | 0, // VMLSv4i16 = 1816
   13212             :     Feature_HasNEON | 0, // VMLSv4i32 = 1817
   13213             :     Feature_HasNEON | 0, // VMLSv8i16 = 1818
   13214             :     Feature_HasNEON | 0, // VMLSv8i8 = 1819
   13215             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VMOVD = 1820
   13216             :     Feature_HasVFP2 | 0, // VMOVDRR = 1821
   13217             :     Feature_HasFullFP16 | 0, // VMOVH = 1822
   13218             :     Feature_HasFullFP16 | 0, // VMOVHR = 1823
   13219             :     Feature_HasNEON | 0, // VMOVLsv2i64 = 1824
   13220             :     Feature_HasNEON | 0, // VMOVLsv4i32 = 1825
   13221             :     Feature_HasNEON | 0, // VMOVLsv8i16 = 1826
   13222             :     Feature_HasNEON | 0, // VMOVLuv2i64 = 1827
   13223             :     Feature_HasNEON | 0, // VMOVLuv4i32 = 1828
   13224             :     Feature_HasNEON | 0, // VMOVLuv8i16 = 1829
   13225             :     Feature_HasNEON | 0, // VMOVNv2i32 = 1830
   13226             :     Feature_HasNEON | 0, // VMOVNv4i16 = 1831
   13227             :     Feature_HasNEON | 0, // VMOVNv8i8 = 1832
   13228             :     Feature_HasFullFP16 | 0, // VMOVRH = 1833
   13229             :     Feature_HasVFP2 | 0, // VMOVRRD = 1834
   13230             :     Feature_HasVFP2 | 0, // VMOVRRS = 1835
   13231             :     Feature_HasVFP2 | 0, // VMOVRS = 1836
   13232             :     Feature_HasVFP2 | 0, // VMOVS = 1837
   13233             :     Feature_HasVFP2 | 0, // VMOVSR = 1838
   13234             :     Feature_HasVFP2 | 0, // VMOVSRR = 1839
   13235             :     Feature_HasNEON | 0, // VMOVv16i8 = 1840
   13236             :     Feature_HasNEON | 0, // VMOVv1i64 = 1841
   13237             :     Feature_HasNEON | 0, // VMOVv2f32 = 1842
   13238             :     Feature_HasNEON | 0, // VMOVv2i32 = 1843
   13239             :     Feature_HasNEON | 0, // VMOVv2i64 = 1844
   13240             :     Feature_HasNEON | 0, // VMOVv4f32 = 1845
   13241             :     Feature_HasNEON | 0, // VMOVv4i16 = 1846
   13242             :     Feature_HasNEON | 0, // VMOVv4i32 = 1847
   13243             :     Feature_HasNEON | 0, // VMOVv8i16 = 1848
   13244             :     Feature_HasNEON | 0, // VMOVv8i8 = 1849
   13245             :     Feature_HasVFP2 | 0, // VMRS = 1850
   13246             :     Feature_HasVFP2 | 0, // VMRS_FPEXC = 1851
   13247             :     Feature_HasVFP2 | 0, // VMRS_FPINST = 1852
   13248             :     Feature_HasVFP2 | 0, // VMRS_FPINST2 = 1853
   13249             :     Feature_HasVFP2 | 0, // VMRS_FPSID = 1854
   13250             :     Feature_HasVFP2 | 0, // VMRS_MVFR0 = 1855
   13251             :     Feature_HasVFP2 | 0, // VMRS_MVFR1 = 1856
   13252             :     Feature_HasFPARMv8 | 0, // VMRS_MVFR2 = 1857
   13253             :     Feature_HasVFP2 | 0, // VMSR = 1858
   13254             :     Feature_HasVFP2 | 0, // VMSR_FPEXC = 1859
   13255             :     Feature_HasVFP2 | 0, // VMSR_FPINST = 1860
   13256             :     Feature_HasVFP2 | 0, // VMSR_FPINST2 = 1861
   13257             :     Feature_HasVFP2 | 0, // VMSR_FPSID = 1862
   13258             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VMULD = 1863
   13259             :     Feature_HasFullFP16 | 0, // VMULH = 1864
   13260             :     Feature_HasV8 | Feature_HasCrypto | 0, // VMULLp64 = 1865
   13261             :     Feature_HasNEON | 0, // VMULLp8 = 1866
   13262             :     Feature_HasNEON | 0, // VMULLslsv2i32 = 1867
   13263             :     Feature_HasNEON | 0, // VMULLslsv4i16 = 1868
   13264             :     Feature_HasNEON | 0, // VMULLsluv2i32 = 1869
   13265             :     Feature_HasNEON | 0, // VMULLsluv4i16 = 1870
   13266             :     Feature_HasNEON | 0, // VMULLsv2i64 = 1871
   13267             :     Feature_HasNEON | 0, // VMULLsv4i32 = 1872
   13268             :     Feature_HasNEON | 0, // VMULLsv8i16 = 1873
   13269             :     Feature_HasNEON | 0, // VMULLuv2i64 = 1874
   13270             :     Feature_HasNEON | 0, // VMULLuv4i32 = 1875
   13271             :     Feature_HasNEON | 0, // VMULLuv8i16 = 1876
   13272             :     Feature_HasVFP2 | 0, // VMULS = 1877
   13273             :     Feature_HasNEON | 0, // VMULfd = 1878
   13274             :     Feature_HasNEON | 0, // VMULfq = 1879
   13275             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMULhd = 1880
   13276             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMULhq = 1881
   13277             :     Feature_HasNEON | 0, // VMULpd = 1882
   13278             :     Feature_HasNEON | 0, // VMULpq = 1883
   13279             :     Feature_HasNEON | 0, // VMULslfd = 1884
   13280             :     Feature_HasNEON | 0, // VMULslfq = 1885
   13281             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMULslhd = 1886
   13282             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VMULslhq = 1887
   13283             :     Feature_HasNEON | 0, // VMULslv2i32 = 1888
   13284             :     Feature_HasNEON | 0, // VMULslv4i16 = 1889
   13285             :     Feature_HasNEON | 0, // VMULslv4i32 = 1890
   13286             :     Feature_HasNEON | 0, // VMULslv8i16 = 1891
   13287             :     Feature_HasNEON | 0, // VMULv16i8 = 1892
   13288             :     Feature_HasNEON | 0, // VMULv2i32 = 1893
   13289             :     Feature_HasNEON | 0, // VMULv4i16 = 1894
   13290             :     Feature_HasNEON | 0, // VMULv4i32 = 1895
   13291             :     Feature_HasNEON | 0, // VMULv8i16 = 1896
   13292             :     Feature_HasNEON | 0, // VMULv8i8 = 1897
   13293             :     Feature_HasNEON | 0, // VMVNd = 1898
   13294             :     Feature_HasNEON | 0, // VMVNq = 1899
   13295             :     Feature_HasNEON | 0, // VMVNv2i32 = 1900
   13296             :     Feature_HasNEON | 0, // VMVNv4i16 = 1901
   13297             :     Feature_HasNEON | 0, // VMVNv4i32 = 1902
   13298             :     Feature_HasNEON | 0, // VMVNv8i16 = 1903
   13299             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VNEGD = 1904
   13300             :     Feature_HasFullFP16 | 0, // VNEGH = 1905
   13301             :     Feature_HasVFP2 | 0, // VNEGS = 1906
   13302             :     Feature_HasNEON | 0, // VNEGf32q = 1907
   13303             :     Feature_HasNEON | 0, // VNEGfd = 1908
   13304             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VNEGhd = 1909
   13305             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VNEGhq = 1910
   13306             :     Feature_HasNEON | 0, // VNEGs16d = 1911
   13307             :     Feature_HasNEON | 0, // VNEGs16q = 1912
   13308             :     Feature_HasNEON | 0, // VNEGs32d = 1913
   13309             :     Feature_HasNEON | 0, // VNEGs32q = 1914
   13310             :     Feature_HasNEON | 0, // VNEGs8d = 1915
   13311             :     Feature_HasNEON | 0, // VNEGs8q = 1916
   13312             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VNMLAD = 1917
   13313             :     Feature_HasFullFP16 | 0, // VNMLAH = 1918
   13314             :     Feature_HasVFP2 | 0, // VNMLAS = 1919
   13315             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VNMLSD = 1920
   13316             :     Feature_HasFullFP16 | 0, // VNMLSH = 1921
   13317             :     Feature_HasVFP2 | 0, // VNMLSS = 1922
   13318             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VNMULD = 1923
   13319             :     Feature_HasFullFP16 | 0, // VNMULH = 1924
   13320             :     Feature_HasVFP2 | 0, // VNMULS = 1925
   13321             :     Feature_HasNEON | 0, // VORNd = 1926
   13322             :     Feature_HasNEON | 0, // VORNq = 1927
   13323             :     Feature_HasNEON | 0, // VORRd = 1928
   13324             :     Feature_HasNEON | 0, // VORRiv2i32 = 1929
   13325             :     Feature_HasNEON | 0, // VORRiv4i16 = 1930
   13326             :     Feature_HasNEON | 0, // VORRiv4i32 = 1931
   13327             :     Feature_HasNEON | 0, // VORRiv8i16 = 1932
   13328             :     Feature_HasNEON | 0, // VORRq = 1933
   13329             :     Feature_HasNEON | 0, // VPADALsv16i8 = 1934
   13330             :     Feature_HasNEON | 0, // VPADALsv2i32 = 1935
   13331             :     Feature_HasNEON | 0, // VPADALsv4i16 = 1936
   13332             :     Feature_HasNEON | 0, // VPADALsv4i32 = 1937
   13333             :     Feature_HasNEON | 0, // VPADALsv8i16 = 1938
   13334             :     Feature_HasNEON | 0, // VPADALsv8i8 = 1939
   13335             :     Feature_HasNEON | 0, // VPADALuv16i8 = 1940
   13336             :     Feature_HasNEON | 0, // VPADALuv2i32 = 1941
   13337             :     Feature_HasNEON | 0, // VPADALuv4i16 = 1942
   13338             :     Feature_HasNEON | 0, // VPADALuv4i32 = 1943
   13339             :     Feature_HasNEON | 0, // VPADALuv8i16 = 1944
   13340             :     Feature_HasNEON | 0, // VPADALuv8i8 = 1945
   13341             :     Feature_HasNEON | 0, // VPADDLsv16i8 = 1946
   13342             :     Feature_HasNEON | 0, // VPADDLsv2i32 = 1947
   13343             :     Feature_HasNEON | 0, // VPADDLsv4i16 = 1948
   13344             :     Feature_HasNEON | 0, // VPADDLsv4i32 = 1949
   13345             :     Feature_HasNEON | 0, // VPADDLsv8i16 = 1950
   13346             :     Feature_HasNEON | 0, // VPADDLsv8i8 = 1951
   13347             :     Feature_HasNEON | 0, // VPADDLuv16i8 = 1952
   13348             :     Feature_HasNEON | 0, // VPADDLuv2i32 = 1953
   13349             :     Feature_HasNEON | 0, // VPADDLuv4i16 = 1954
   13350             :     Feature_HasNEON | 0, // VPADDLuv4i32 = 1955
   13351             :     Feature_HasNEON | 0, // VPADDLuv8i16 = 1956
   13352             :     Feature_HasNEON | 0, // VPADDLuv8i8 = 1957
   13353             :     Feature_HasNEON | 0, // VPADDf = 1958
   13354             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VPADDh = 1959
   13355             :     Feature_HasNEON | 0, // VPADDi16 = 1960
   13356             :     Feature_HasNEON | 0, // VPADDi32 = 1961
   13357             :     Feature_HasNEON | 0, // VPADDi8 = 1962
   13358             :     Feature_HasNEON | 0, // VPMAXf = 1963
   13359             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VPMAXh = 1964
   13360             :     Feature_HasNEON | 0, // VPMAXs16 = 1965
   13361             :     Feature_HasNEON | 0, // VPMAXs32 = 1966
   13362             :     Feature_HasNEON | 0, // VPMAXs8 = 1967
   13363             :     Feature_HasNEON | 0, // VPMAXu16 = 1968
   13364             :     Feature_HasNEON | 0, // VPMAXu32 = 1969
   13365             :     Feature_HasNEON | 0, // VPMAXu8 = 1970
   13366             :     Feature_HasNEON | 0, // VPMINf = 1971
   13367             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VPMINh = 1972
   13368             :     Feature_HasNEON | 0, // VPMINs16 = 1973
   13369             :     Feature_HasNEON | 0, // VPMINs32 = 1974
   13370             :     Feature_HasNEON | 0, // VPMINs8 = 1975
   13371             :     Feature_HasNEON | 0, // VPMINu16 = 1976
   13372             :     Feature_HasNEON | 0, // VPMINu32 = 1977
   13373             :     Feature_HasNEON | 0, // VPMINu8 = 1978
   13374             :     Feature_HasNEON | 0, // VQABSv16i8 = 1979
   13375             :     Feature_HasNEON | 0, // VQABSv2i32 = 1980
   13376             :     Feature_HasNEON | 0, // VQABSv4i16 = 1981
   13377             :     Feature_HasNEON | 0, // VQABSv4i32 = 1982
   13378             :     Feature_HasNEON | 0, // VQABSv8i16 = 1983
   13379             :     Feature_HasNEON | 0, // VQABSv8i8 = 1984
   13380             :     Feature_HasNEON | 0, // VQADDsv16i8 = 1985
   13381             :     Feature_HasNEON | 0, // VQADDsv1i64 = 1986
   13382             :     Feature_HasNEON | 0, // VQADDsv2i32 = 1987
   13383             :     Feature_HasNEON | 0, // VQADDsv2i64 = 1988
   13384             :     Feature_HasNEON | 0, // VQADDsv4i16 = 1989
   13385             :     Feature_HasNEON | 0, // VQADDsv4i32 = 1990
   13386             :     Feature_HasNEON | 0, // VQADDsv8i16 = 1991
   13387             :     Feature_HasNEON | 0, // VQADDsv8i8 = 1992
   13388             :     Feature_HasNEON | 0, // VQADDuv16i8 = 1993
   13389             :     Feature_HasNEON | 0, // VQADDuv1i64 = 1994
   13390             :     Feature_HasNEON | 0, // VQADDuv2i32 = 1995
   13391             :     Feature_HasNEON | 0, // VQADDuv2i64 = 1996
   13392             :     Feature_HasNEON | 0, // VQADDuv4i16 = 1997
   13393             :     Feature_HasNEON | 0, // VQADDuv4i32 = 1998
   13394             :     Feature_HasNEON | 0, // VQADDuv8i16 = 1999
   13395             :     Feature_HasNEON | 0, // VQADDuv8i8 = 2000
   13396             :     Feature_HasNEON | 0, // VQDMLALslv2i32 = 2001
   13397             :     Feature_HasNEON | 0, // VQDMLALslv4i16 = 2002
   13398             :     Feature_HasNEON | 0, // VQDMLALv2i64 = 2003
   13399             :     Feature_HasNEON | 0, // VQDMLALv4i32 = 2004
   13400             :     Feature_HasNEON | 0, // VQDMLSLslv2i32 = 2005
   13401             :     Feature_HasNEON | 0, // VQDMLSLslv4i16 = 2006
   13402             :     Feature_HasNEON | 0, // VQDMLSLv2i64 = 2007
   13403             :     Feature_HasNEON | 0, // VQDMLSLv4i32 = 2008
   13404             :     Feature_HasNEON | 0, // VQDMULHslv2i32 = 2009
   13405             :     Feature_HasNEON | 0, // VQDMULHslv4i16 = 2010
   13406             :     Feature_HasNEON | 0, // VQDMULHslv4i32 = 2011
   13407             :     Feature_HasNEON | 0, // VQDMULHslv8i16 = 2012
   13408             :     Feature_HasNEON | 0, // VQDMULHv2i32 = 2013
   13409             :     Feature_HasNEON | 0, // VQDMULHv4i16 = 2014
   13410             :     Feature_HasNEON | 0, // VQDMULHv4i32 = 2015
   13411             :     Feature_HasNEON | 0, // VQDMULHv8i16 = 2016
   13412             :     Feature_HasNEON | 0, // VQDMULLslv2i32 = 2017
   13413             :     Feature_HasNEON | 0, // VQDMULLslv4i16 = 2018
   13414             :     Feature_HasNEON | 0, // VQDMULLv2i64 = 2019
   13415             :     Feature_HasNEON | 0, // VQDMULLv4i32 = 2020
   13416             :     Feature_HasNEON | 0, // VQMOVNsuv2i32 = 2021
   13417             :     Feature_HasNEON | 0, // VQMOVNsuv4i16 = 2022
   13418             :     Feature_HasNEON | 0, // VQMOVNsuv8i8 = 2023
   13419             :     Feature_HasNEON | 0, // VQMOVNsv2i32 = 2024
   13420             :     Feature_HasNEON | 0, // VQMOVNsv4i16 = 2025
   13421             :     Feature_HasNEON | 0, // VQMOVNsv8i8 = 2026
   13422             :     Feature_HasNEON | 0, // VQMOVNuv2i32 = 2027
   13423             :     Feature_HasNEON | 0, // VQMOVNuv4i16 = 2028
   13424             :     Feature_HasNEON | 0, // VQMOVNuv8i8 = 2029
   13425             :     Feature_HasNEON | 0, // VQNEGv16i8 = 2030
   13426             :     Feature_HasNEON | 0, // VQNEGv2i32 = 2031
   13427             :     Feature_HasNEON | 0, // VQNEGv4i16 = 2032
   13428             :     Feature_HasNEON | 0, // VQNEGv4i32 = 2033
   13429             :     Feature_HasNEON | 0, // VQNEGv8i16 = 2034
   13430             :     Feature_HasNEON | 0, // VQNEGv8i8 = 2035
   13431             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLAHslv2i32 = 2036
   13432             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLAHslv4i16 = 2037
   13433             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLAHslv4i32 = 2038
   13434             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLAHslv8i16 = 2039
   13435             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLAHv2i32 = 2040
   13436             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLAHv4i16 = 2041
   13437             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLAHv4i32 = 2042
   13438             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLAHv8i16 = 2043
   13439             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLSHslv2i32 = 2044
   13440             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLSHslv4i16 = 2045
   13441             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLSHslv4i32 = 2046
   13442             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLSHslv8i16 = 2047
   13443             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLSHv2i32 = 2048
   13444             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLSHv4i16 = 2049
   13445             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLSHv4i32 = 2050
   13446             :     Feature_HasNEON | Feature_HasV8_1a | 0, // VQRDMLSHv8i16 = 2051
   13447             :     Feature_HasNEON | 0, // VQRDMULHslv2i32 = 2052
   13448             :     Feature_HasNEON | 0, // VQRDMULHslv4i16 = 2053
   13449             :     Feature_HasNEON | 0, // VQRDMULHslv4i32 = 2054
   13450             :     Feature_HasNEON | 0, // VQRDMULHslv8i16 = 2055
   13451             :     Feature_HasNEON | 0, // VQRDMULHv2i32 = 2056
   13452             :     Feature_HasNEON | 0, // VQRDMULHv4i16 = 2057
   13453             :     Feature_HasNEON | 0, // VQRDMULHv4i32 = 2058
   13454             :     Feature_HasNEON | 0, // VQRDMULHv8i16 = 2059
   13455             :     Feature_HasNEON | 0, // VQRSHLsv16i8 = 2060
   13456             :     Feature_HasNEON | 0, // VQRSHLsv1i64 = 2061
   13457             :     Feature_HasNEON | 0, // VQRSHLsv2i32 = 2062
   13458             :     Feature_HasNEON | 0, // VQRSHLsv2i64 = 2063
   13459             :     Feature_HasNEON | 0, // VQRSHLsv4i16 = 2064
   13460             :     Feature_HasNEON | 0, // VQRSHLsv4i32 = 2065
   13461             :     Feature_HasNEON | 0, // VQRSHLsv8i16 = 2066
   13462             :     Feature_HasNEON | 0, // VQRSHLsv8i8 = 2067
   13463             :     Feature_HasNEON | 0, // VQRSHLuv16i8 = 2068
   13464             :     Feature_HasNEON | 0, // VQRSHLuv1i64 = 2069
   13465             :     Feature_HasNEON | 0, // VQRSHLuv2i32 = 2070
   13466             :     Feature_HasNEON | 0, // VQRSHLuv2i64 = 2071
   13467             :     Feature_HasNEON | 0, // VQRSHLuv4i16 = 2072
   13468             :     Feature_HasNEON | 0, // VQRSHLuv4i32 = 2073
   13469             :     Feature_HasNEON | 0, // VQRSHLuv8i16 = 2074
   13470             :     Feature_HasNEON | 0, // VQRSHLuv8i8 = 2075
   13471             :     Feature_HasNEON | 0, // VQRSHRNsv2i32 = 2076
   13472             :     Feature_HasNEON | 0, // VQRSHRNsv4i16 = 2077
   13473             :     Feature_HasNEON | 0, // VQRSHRNsv8i8 = 2078
   13474             :     Feature_HasNEON | 0, // VQRSHRNuv2i32 = 2079
   13475             :     Feature_HasNEON | 0, // VQRSHRNuv4i16 = 2080
   13476             :     Feature_HasNEON | 0, // VQRSHRNuv8i8 = 2081
   13477             :     Feature_HasNEON | 0, // VQRSHRUNv2i32 = 2082
   13478             :     Feature_HasNEON | 0, // VQRSHRUNv4i16 = 2083
   13479             :     Feature_HasNEON | 0, // VQRSHRUNv8i8 = 2084
   13480             :     Feature_HasNEON | 0, // VQSHLsiv16i8 = 2085
   13481             :     Feature_HasNEON | 0, // VQSHLsiv1i64 = 2086
   13482             :     Feature_HasNEON | 0, // VQSHLsiv2i32 = 2087
   13483             :     Feature_HasNEON | 0, // VQSHLsiv2i64 = 2088
   13484             :     Feature_HasNEON | 0, // VQSHLsiv4i16 = 2089
   13485             :     Feature_HasNEON | 0, // VQSHLsiv4i32 = 2090
   13486             :     Feature_HasNEON | 0, // VQSHLsiv8i16 = 2091
   13487             :     Feature_HasNEON | 0, // VQSHLsiv8i8 = 2092
   13488             :     Feature_HasNEON | 0, // VQSHLsuv16i8 = 2093
   13489             :     Feature_HasNEON | 0, // VQSHLsuv1i64 = 2094
   13490             :     Feature_HasNEON | 0, // VQSHLsuv2i32 = 2095
   13491             :     Feature_HasNEON | 0, // VQSHLsuv2i64 = 2096
   13492             :     Feature_HasNEON | 0, // VQSHLsuv4i16 = 2097
   13493             :     Feature_HasNEON | 0, // VQSHLsuv4i32 = 2098
   13494             :     Feature_HasNEON | 0, // VQSHLsuv8i16 = 2099
   13495             :     Feature_HasNEON | 0, // VQSHLsuv8i8 = 2100
   13496             :     Feature_HasNEON | 0, // VQSHLsv16i8 = 2101
   13497             :     Feature_HasNEON | 0, // VQSHLsv1i64 = 2102
   13498             :     Feature_HasNEON | 0, // VQSHLsv2i32 = 2103
   13499             :     Feature_HasNEON | 0, // VQSHLsv2i64 = 2104
   13500             :     Feature_HasNEON | 0, // VQSHLsv4i16 = 2105
   13501             :     Feature_HasNEON | 0, // VQSHLsv4i32 = 2106
   13502             :     Feature_HasNEON | 0, // VQSHLsv8i16 = 2107
   13503             :     Feature_HasNEON | 0, // VQSHLsv8i8 = 2108
   13504             :     Feature_HasNEON | 0, // VQSHLuiv16i8 = 2109
   13505             :     Feature_HasNEON | 0, // VQSHLuiv1i64 = 2110
   13506             :     Feature_HasNEON | 0, // VQSHLuiv2i32 = 2111
   13507             :     Feature_HasNEON | 0, // VQSHLuiv2i64 = 2112
   13508             :     Feature_HasNEON | 0, // VQSHLuiv4i16 = 2113
   13509             :     Feature_HasNEON | 0, // VQSHLuiv4i32 = 2114
   13510             :     Feature_HasNEON | 0, // VQSHLuiv8i16 = 2115
   13511             :     Feature_HasNEON | 0, // VQSHLuiv8i8 = 2116
   13512             :     Feature_HasNEON | 0, // VQSHLuv16i8 = 2117
   13513             :     Feature_HasNEON | 0, // VQSHLuv1i64 = 2118
   13514             :     Feature_HasNEON | 0, // VQSHLuv2i32 = 2119
   13515             :     Feature_HasNEON | 0, // VQSHLuv2i64 = 2120
   13516             :     Feature_HasNEON | 0, // VQSHLuv4i16 = 2121
   13517             :     Feature_HasNEON | 0, // VQSHLuv4i32 = 2122
   13518             :     Feature_HasNEON | 0, // VQSHLuv8i16 = 2123
   13519             :     Feature_HasNEON | 0, // VQSHLuv8i8 = 2124
   13520             :     Feature_HasNEON | 0, // VQSHRNsv2i32 = 2125
   13521             :     Feature_HasNEON | 0, // VQSHRNsv4i16 = 2126
   13522             :     Feature_HasNEON | 0, // VQSHRNsv8i8 = 2127
   13523             :     Feature_HasNEON | 0, // VQSHRNuv2i32 = 2128
   13524             :     Feature_HasNEON | 0, // VQSHRNuv4i16 = 2129
   13525             :     Feature_HasNEON | 0, // VQSHRNuv8i8 = 2130
   13526             :     Feature_HasNEON | 0, // VQSHRUNv2i32 = 2131
   13527             :     Feature_HasNEON | 0, // VQSHRUNv4i16 = 2132
   13528             :     Feature_HasNEON | 0, // VQSHRUNv8i8 = 2133
   13529             :     Feature_HasNEON | 0, // VQSUBsv16i8 = 2134
   13530             :     Feature_HasNEON | 0, // VQSUBsv1i64 = 2135
   13531             :     Feature_HasNEON | 0, // VQSUBsv2i32 = 2136
   13532             :     Feature_HasNEON | 0, // VQSUBsv2i64 = 2137
   13533             :     Feature_HasNEON | 0, // VQSUBsv4i16 = 2138
   13534             :     Feature_HasNEON | 0, // VQSUBsv4i32 = 2139
   13535             :     Feature_HasNEON | 0, // VQSUBsv8i16 = 2140
   13536             :     Feature_HasNEON | 0, // VQSUBsv8i8 = 2141
   13537             :     Feature_HasNEON | 0, // VQSUBuv16i8 = 2142
   13538             :     Feature_HasNEON | 0, // VQSUBuv1i64 = 2143
   13539             :     Feature_HasNEON | 0, // VQSUBuv2i32 = 2144
   13540             :     Feature_HasNEON | 0, // VQSUBuv2i64 = 2145
   13541             :     Feature_HasNEON | 0, // VQSUBuv4i16 = 2146
   13542             :     Feature_HasNEON | 0, // VQSUBuv4i32 = 2147
   13543             :     Feature_HasNEON | 0, // VQSUBuv8i16 = 2148
   13544             :     Feature_HasNEON | 0, // VQSUBuv8i8 = 2149
   13545             :     Feature_HasNEON | 0, // VRADDHNv2i32 = 2150
   13546             :     Feature_HasNEON | 0, // VRADDHNv4i16 = 2151
   13547             :     Feature_HasNEON | 0, // VRADDHNv8i8 = 2152
   13548             :     Feature_HasNEON | 0, // VRECPEd = 2153
   13549             :     Feature_HasNEON | 0, // VRECPEfd = 2154
   13550             :     Feature_HasNEON | 0, // VRECPEfq = 2155
   13551             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VRECPEhd = 2156
   13552             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VRECPEhq = 2157
   13553             :     Feature_HasNEON | 0, // VRECPEq = 2158
   13554             :     Feature_HasNEON | 0, // VRECPSfd = 2159
   13555             :     Feature_HasNEON | 0, // VRECPSfq = 2160
   13556             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VRECPShd = 2161
   13557             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VRECPShq = 2162
   13558             :     Feature_HasNEON | 0, // VREV16d8 = 2163
   13559             :     Feature_HasNEON | 0, // VREV16q8 = 2164
   13560             :     Feature_HasNEON | 0, // VREV32d16 = 2165
   13561             :     Feature_HasNEON | 0, // VREV32d8 = 2166
   13562             :     Feature_HasNEON | 0, // VREV32q16 = 2167
   13563             :     Feature_HasNEON | 0, // VREV32q8 = 2168
   13564             :     Feature_HasNEON | 0, // VREV64d16 = 2169
   13565             :     Feature_HasNEON | 0, // VREV64d32 = 2170
   13566             :     Feature_HasNEON | 0, // VREV64d8 = 2171
   13567             :     Feature_HasNEON | 0, // VREV64q16 = 2172
   13568             :     Feature_HasNEON | 0, // VREV64q32 = 2173
   13569             :     Feature_HasNEON | 0, // VREV64q8 = 2174
   13570             :     Feature_HasNEON | 0, // VRHADDsv16i8 = 2175
   13571             :     Feature_HasNEON | 0, // VRHADDsv2i32 = 2176
   13572             :     Feature_HasNEON | 0, // VRHADDsv4i16 = 2177
   13573             :     Feature_HasNEON | 0, // VRHADDsv4i32 = 2178
   13574             :     Feature_HasNEON | 0, // VRHADDsv8i16 = 2179
   13575             :     Feature_HasNEON | 0, // VRHADDsv8i8 = 2180
   13576             :     Feature_HasNEON | 0, // VRHADDuv16i8 = 2181
   13577             :     Feature_HasNEON | 0, // VRHADDuv2i32 = 2182
   13578             :     Feature_HasNEON | 0, // VRHADDuv4i16 = 2183
   13579             :     Feature_HasNEON | 0, // VRHADDuv4i32 = 2184
   13580             :     Feature_HasNEON | 0, // VRHADDuv8i16 = 2185
   13581             :     Feature_HasNEON | 0, // VRHADDuv8i8 = 2186
   13582             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VRINTAD = 2187
   13583             :     Feature_HasFullFP16 | 0, // VRINTAH = 2188
   13584             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTANDf = 2189
   13585             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTANDh = 2190
   13586             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTANQf = 2191
   13587             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTANQh = 2192
   13588             :     Feature_HasFPARMv8 | 0, // VRINTAS = 2193
   13589             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VRINTMD = 2194
   13590             :     Feature_HasFullFP16 | 0, // VRINTMH = 2195
   13591             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTMNDf = 2196
   13592             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTMNDh = 2197
   13593             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTMNQf = 2198
   13594             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTMNQh = 2199
   13595             :     Feature_HasFPARMv8 | 0, // VRINTMS = 2200
   13596             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VRINTND = 2201
   13597             :     Feature_HasFullFP16 | 0, // VRINTNH = 2202
   13598             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTNNDf = 2203
   13599             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTNNDh = 2204
   13600             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTNNQf = 2205
   13601             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTNNQh = 2206
   13602             :     Feature_HasFPARMv8 | 0, // VRINTNS = 2207
   13603             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VRINTPD = 2208
   13604             :     Feature_HasFullFP16 | 0, // VRINTPH = 2209
   13605             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTPNDf = 2210
   13606             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTPNDh = 2211
   13607             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTPNQf = 2212
   13608             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTPNQh = 2213
   13609             :     Feature_HasFPARMv8 | 0, // VRINTPS = 2214
   13610             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VRINTRD = 2215
   13611             :     Feature_HasFullFP16 | 0, // VRINTRH = 2216
   13612             :     Feature_HasFPARMv8 | 0, // VRINTRS = 2217
   13613             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VRINTXD = 2218
   13614             :     Feature_HasFullFP16 | 0, // VRINTXH = 2219
   13615             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTXNDf = 2220
   13616             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTXNDh = 2221
   13617             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTXNQf = 2222
   13618             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTXNQh = 2223
   13619             :     Feature_HasFPARMv8 | 0, // VRINTXS = 2224
   13620             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VRINTZD = 2225
   13621             :     Feature_HasFullFP16 | 0, // VRINTZH = 2226
   13622             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTZNDf = 2227
   13623             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTZNDh = 2228
   13624             :     Feature_HasV8 | Feature_HasNEON | 0, // VRINTZNQf = 2229
   13625             :     Feature_HasV8 | Feature_HasNEON | Feature_HasFullFP16 | 0, // VRINTZNQh = 2230
   13626             :     Feature_HasFPARMv8 | 0, // VRINTZS = 2231
   13627             :     Feature_HasNEON | 0, // VRSHLsv16i8 = 2232
   13628             :     Feature_HasNEON | 0, // VRSHLsv1i64 = 2233
   13629             :     Feature_HasNEON | 0, // VRSHLsv2i32 = 2234
   13630             :     Feature_HasNEON | 0, // VRSHLsv2i64 = 2235
   13631             :     Feature_HasNEON | 0, // VRSHLsv4i16 = 2236
   13632             :     Feature_HasNEON | 0, // VRSHLsv4i32 = 2237
   13633             :     Feature_HasNEON | 0, // VRSHLsv8i16 = 2238
   13634             :     Feature_HasNEON | 0, // VRSHLsv8i8 = 2239
   13635             :     Feature_HasNEON | 0, // VRSHLuv16i8 = 2240
   13636             :     Feature_HasNEON | 0, // VRSHLuv1i64 = 2241
   13637             :     Feature_HasNEON | 0, // VRSHLuv2i32 = 2242
   13638             :     Feature_HasNEON | 0, // VRSHLuv2i64 = 2243
   13639             :     Feature_HasNEON | 0, // VRSHLuv4i16 = 2244
   13640             :     Feature_HasNEON | 0, // VRSHLuv4i32 = 2245
   13641             :     Feature_HasNEON | 0, // VRSHLuv8i16 = 2246
   13642             :     Feature_HasNEON | 0, // VRSHLuv8i8 = 2247
   13643             :     Feature_HasNEON | 0, // VRSHRNv2i32 = 2248
   13644             :     Feature_HasNEON | 0, // VRSHRNv4i16 = 2249
   13645             :     Feature_HasNEON | 0, // VRSHRNv8i8 = 2250
   13646             :     Feature_HasNEON | 0, // VRSHRsv16i8 = 2251
   13647             :     Feature_HasNEON | 0, // VRSHRsv1i64 = 2252
   13648             :     Feature_HasNEON | 0, // VRSHRsv2i32 = 2253
   13649             :     Feature_HasNEON | 0, // VRSHRsv2i64 = 2254
   13650             :     Feature_HasNEON | 0, // VRSHRsv4i16 = 2255
   13651             :     Feature_HasNEON | 0, // VRSHRsv4i32 = 2256
   13652             :     Feature_HasNEON | 0, // VRSHRsv8i16 = 2257
   13653             :     Feature_HasNEON | 0, // VRSHRsv8i8 = 2258
   13654             :     Feature_HasNEON | 0, // VRSHRuv16i8 = 2259
   13655             :     Feature_HasNEON | 0, // VRSHRuv1i64 = 2260
   13656             :     Feature_HasNEON | 0, // VRSHRuv2i32 = 2261
   13657             :     Feature_HasNEON | 0, // VRSHRuv2i64 = 2262
   13658             :     Feature_HasNEON | 0, // VRSHRuv4i16 = 2263
   13659             :     Feature_HasNEON | 0, // VRSHRuv4i32 = 2264
   13660             :     Feature_HasNEON | 0, // VRSHRuv8i16 = 2265
   13661             :     Feature_HasNEON | 0, // VRSHRuv8i8 = 2266
   13662             :     Feature_HasNEON | 0, // VRSQRTEd = 2267
   13663             :     Feature_HasNEON | 0, // VRSQRTEfd = 2268
   13664             :     Feature_HasNEON | 0, // VRSQRTEfq = 2269
   13665             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VRSQRTEhd = 2270
   13666             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VRSQRTEhq = 2271
   13667             :     Feature_HasNEON | 0, // VRSQRTEq = 2272
   13668             :     Feature_HasNEON | 0, // VRSQRTSfd = 2273
   13669             :     Feature_HasNEON | 0, // VRSQRTSfq = 2274
   13670             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VRSQRTShd = 2275
   13671             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VRSQRTShq = 2276
   13672             :     Feature_HasNEON | 0, // VRSRAsv16i8 = 2277
   13673             :     Feature_HasNEON | 0, // VRSRAsv1i64 = 2278
   13674             :     Feature_HasNEON | 0, // VRSRAsv2i32 = 2279
   13675             :     Feature_HasNEON | 0, // VRSRAsv2i64 = 2280
   13676             :     Feature_HasNEON | 0, // VRSRAsv4i16 = 2281
   13677             :     Feature_HasNEON | 0, // VRSRAsv4i32 = 2282
   13678             :     Feature_HasNEON | 0, // VRSRAsv8i16 = 2283
   13679             :     Feature_HasNEON | 0, // VRSRAsv8i8 = 2284
   13680             :     Feature_HasNEON | 0, // VRSRAuv16i8 = 2285
   13681             :     Feature_HasNEON | 0, // VRSRAuv1i64 = 2286
   13682             :     Feature_HasNEON | 0, // VRSRAuv2i32 = 2287
   13683             :     Feature_HasNEON | 0, // VRSRAuv2i64 = 2288
   13684             :     Feature_HasNEON | 0, // VRSRAuv4i16 = 2289
   13685             :     Feature_HasNEON | 0, // VRSRAuv4i32 = 2290
   13686             :     Feature_HasNEON | 0, // VRSRAuv8i16 = 2291
   13687             :     Feature_HasNEON | 0, // VRSRAuv8i8 = 2292
   13688             :     Feature_HasNEON | 0, // VRSUBHNv2i32 = 2293
   13689             :     Feature_HasNEON | 0, // VRSUBHNv4i16 = 2294
   13690             :     Feature_HasNEON | 0, // VRSUBHNv8i8 = 2295
   13691             :     Feature_HasDotProd | 0, // VSDOTD = 2296
   13692             :     Feature_HasDotProd | 0, // VSDOTDI = 2297
   13693             :     Feature_HasDotProd | 0, // VSDOTQ = 2298
   13694             :     Feature_HasDotProd | 0, // VSDOTQI = 2299
   13695             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VSELEQD = 2300
   13696             :     Feature_HasFullFP16 | 0, // VSELEQH = 2301
   13697             :     Feature_HasFPARMv8 | 0, // VSELEQS = 2302
   13698             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VSELGED = 2303
   13699             :     Feature_HasFullFP16 | 0, // VSELGEH = 2304
   13700             :     Feature_HasFPARMv8 | 0, // VSELGES = 2305
   13701             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VSELGTD = 2306
   13702             :     Feature_HasFullFP16 | 0, // VSELGTH = 2307
   13703             :     Feature_HasFPARMv8 | 0, // VSELGTS = 2308
   13704             :     Feature_HasFPARMv8 | Feature_HasDPVFP | 0, // VSELVSD = 2309
   13705             :     Feature_HasFullFP16 | 0, // VSELVSH = 2310
   13706             :     Feature_HasFPARMv8 | 0, // VSELVSS = 2311
   13707             :     Feature_HasNEON | 0, // VSETLNi16 = 2312
   13708             :     Feature_HasVFP2 | 0, // VSETLNi32 = 2313
   13709             :     Feature_HasNEON | 0, // VSETLNi8 = 2314
   13710             :     Feature_HasNEON | 0, // VSHLLi16 = 2315
   13711             :     Feature_HasNEON | 0, // VSHLLi32 = 2316
   13712             :     Feature_HasNEON | 0, // VSHLLi8 = 2317
   13713             :     Feature_HasNEON | 0, // VSHLLsv2i64 = 2318
   13714             :     Feature_HasNEON | 0, // VSHLLsv4i32 = 2319
   13715             :     Feature_HasNEON | 0, // VSHLLsv8i16 = 2320
   13716             :     Feature_HasNEON | 0, // VSHLLuv2i64 = 2321
   13717             :     Feature_HasNEON | 0, // VSHLLuv4i32 = 2322
   13718             :     Feature_HasNEON | 0, // VSHLLuv8i16 = 2323
   13719             :     Feature_HasNEON | 0, // VSHLiv16i8 = 2324
   13720             :     Feature_HasNEON | 0, // VSHLiv1i64 = 2325
   13721             :     Feature_HasNEON | 0, // VSHLiv2i32 = 2326
   13722             :     Feature_HasNEON | 0, // VSHLiv2i64 = 2327
   13723             :     Feature_HasNEON | 0, // VSHLiv4i16 = 2328
   13724             :     Feature_HasNEON | 0, // VSHLiv4i32 = 2329
   13725             :     Feature_HasNEON | 0, // VSHLiv8i16 = 2330
   13726             :     Feature_HasNEON | 0, // VSHLiv8i8 = 2331
   13727             :     Feature_HasNEON | 0, // VSHLsv16i8 = 2332
   13728             :     Feature_HasNEON | 0, // VSHLsv1i64 = 2333
   13729             :     Feature_HasNEON | 0, // VSHLsv2i32 = 2334
   13730             :     Feature_HasNEON | 0, // VSHLsv2i64 = 2335
   13731             :     Feature_HasNEON | 0, // VSHLsv4i16 = 2336
   13732             :     Feature_HasNEON | 0, // VSHLsv4i32 = 2337
   13733             :     Feature_HasNEON | 0, // VSHLsv8i16 = 2338
   13734             :     Feature_HasNEON | 0, // VSHLsv8i8 = 2339
   13735             :     Feature_HasNEON | 0, // VSHLuv16i8 = 2340
   13736             :     Feature_HasNEON | 0, // VSHLuv1i64 = 2341
   13737             :     Feature_HasNEON | 0, // VSHLuv2i32 = 2342
   13738             :     Feature_HasNEON | 0, // VSHLuv2i64 = 2343
   13739             :     Feature_HasNEON | 0, // VSHLuv4i16 = 2344
   13740             :     Feature_HasNEON | 0, // VSHLuv4i32 = 2345
   13741             :     Feature_HasNEON | 0, // VSHLuv8i16 = 2346
   13742             :     Feature_HasNEON | 0, // VSHLuv8i8 = 2347
   13743             :     Feature_HasNEON | 0, // VSHRNv2i32 = 2348
   13744             :     Feature_HasNEON | 0, // VSHRNv4i16 = 2349
   13745             :     Feature_HasNEON | 0, // VSHRNv8i8 = 2350
   13746             :     Feature_HasNEON | 0, // VSHRsv16i8 = 2351
   13747             :     Feature_HasNEON | 0, // VSHRsv1i64 = 2352
   13748             :     Feature_HasNEON | 0, // VSHRsv2i32 = 2353
   13749             :     Feature_HasNEON | 0, // VSHRsv2i64 = 2354
   13750             :     Feature_HasNEON | 0, // VSHRsv4i16 = 2355
   13751             :     Feature_HasNEON | 0, // VSHRsv4i32 = 2356
   13752             :     Feature_HasNEON | 0, // VSHRsv8i16 = 2357
   13753             :     Feature_HasNEON | 0, // VSHRsv8i8 = 2358
   13754             :     Feature_HasNEON | 0, // VSHRuv16i8 = 2359
   13755             :     Feature_HasNEON | 0, // VSHRuv1i64 = 2360
   13756             :     Feature_HasNEON | 0, // VSHRuv2i32 = 2361
   13757             :     Feature_HasNEON | 0, // VSHRuv2i64 = 2362
   13758             :     Feature_HasNEON | 0, // VSHRuv4i16 = 2363
   13759             :     Feature_HasNEON | 0, // VSHRuv4i32 = 2364
   13760             :     Feature_HasNEON | 0, // VSHRuv8i16 = 2365
   13761             :     Feature_HasNEON | 0, // VSHRuv8i8 = 2366
   13762             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VSHTOD = 2367
   13763             :     Feature_HasFullFP16 | 0, // VSHTOH = 2368
   13764             :     Feature_HasVFP2 | 0, // VSHTOS = 2369
   13765             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VSITOD = 2370
   13766             :     Feature_HasFullFP16 | 0, // VSITOH = 2371
   13767             :     Feature_HasVFP2 | 0, // VSITOS = 2372
   13768             :     Feature_HasNEON | 0, // VSLIv16i8 = 2373
   13769             :     Feature_HasNEON | 0, // VSLIv1i64 = 2374
   13770             :     Feature_HasNEON | 0, // VSLIv2i32 = 2375
   13771             :     Feature_HasNEON | 0, // VSLIv2i64 = 2376
   13772             :     Feature_HasNEON | 0, // VSLIv4i16 = 2377
   13773             :     Feature_HasNEON | 0, // VSLIv4i32 = 2378
   13774             :     Feature_HasNEON | 0, // VSLIv8i16 = 2379
   13775             :     Feature_HasNEON | 0, // VSLIv8i8 = 2380
   13776             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VSLTOD = 2381
   13777             :     Feature_HasFullFP16 | 0, // VSLTOH = 2382
   13778             :     Feature_HasVFP2 | 0, // VSLTOS = 2383
   13779             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VSQRTD = 2384
   13780             :     Feature_HasFullFP16 | 0, // VSQRTH = 2385
   13781             :     Feature_HasVFP2 | 0, // VSQRTS = 2386
   13782             :     Feature_HasNEON | 0, // VSRAsv16i8 = 2387
   13783             :     Feature_HasNEON | 0, // VSRAsv1i64 = 2388
   13784             :     Feature_HasNEON | 0, // VSRAsv2i32 = 2389
   13785             :     Feature_HasNEON | 0, // VSRAsv2i64 = 2390
   13786             :     Feature_HasNEON | 0, // VSRAsv4i16 = 2391
   13787             :     Feature_HasNEON | 0, // VSRAsv4i32 = 2392
   13788             :     Feature_HasNEON | 0, // VSRAsv8i16 = 2393
   13789             :     Feature_HasNEON | 0, // VSRAsv8i8 = 2394
   13790             :     Feature_HasNEON | 0, // VSRAuv16i8 = 2395
   13791             :     Feature_HasNEON | 0, // VSRAuv1i64 = 2396
   13792             :     Feature_HasNEON | 0, // VSRAuv2i32 = 2397
   13793             :     Feature_HasNEON | 0, // VSRAuv2i64 = 2398
   13794             :     Feature_HasNEON | 0, // VSRAuv4i16 = 2399
   13795             :     Feature_HasNEON | 0, // VSRAuv4i32 = 2400
   13796             :     Feature_HasNEON | 0, // VSRAuv8i16 = 2401
   13797             :     Feature_HasNEON | 0, // VSRAuv8i8 = 2402
   13798             :     Feature_HasNEON | 0, // VSRIv16i8 = 2403
   13799             :     Feature_HasNEON | 0, // VSRIv1i64 = 2404
   13800             :     Feature_HasNEON | 0, // VSRIv2i32 = 2405
   13801             :     Feature_HasNEON | 0, // VSRIv2i64 = 2406
   13802             :     Feature_HasNEON | 0, // VSRIv4i16 = 2407
   13803             :     Feature_HasNEON | 0, // VSRIv4i32 = 2408
   13804             :     Feature_HasNEON | 0, // VSRIv8i16 = 2409
   13805             :     Feature_HasNEON | 0, // VSRIv8i8 = 2410
   13806             :     Feature_HasNEON | 0, // VST1LNd16 = 2411
   13807             :     Feature_HasNEON | 0, // VST1LNd16_UPD = 2412
   13808             :     Feature_HasNEON | 0, // VST1LNd32 = 2413
   13809             :     Feature_HasNEON | 0, // VST1LNd32_UPD = 2414
   13810             :     Feature_HasNEON | 0, // VST1LNd8 = 2415
   13811             :     Feature_HasNEON | 0, // VST1LNd8_UPD = 2416
   13812             :     Feature_HasNEON | 0, // VST1LNq16Pseudo = 2417
   13813             :     Feature_HasNEON | 0, // VST1LNq16Pseudo_UPD = 2418
   13814             :     Feature_HasNEON | 0, // VST1LNq32Pseudo = 2419
   13815             :     Feature_HasNEON | 0, // VST1LNq32Pseudo_UPD = 2420
   13816             :     Feature_HasNEON | 0, // VST1LNq8Pseudo = 2421
   13817             :     Feature_HasNEON | 0, // VST1LNq8Pseudo_UPD = 2422
   13818             :     Feature_HasNEON | 0, // VST1d16 = 2423
   13819             :     Feature_HasNEON | 0, // VST1d16Q = 2424
   13820             :     Feature_HasNEON | 0, // VST1d16QPseudo = 2425
   13821             :     Feature_HasNEON | 0, // VST1d16Qwb_fixed = 2426
   13822             :     Feature_HasNEON | 0, // VST1d16Qwb_register = 2427
   13823             :     Feature_HasNEON | 0, // VST1d16T = 2428
   13824             :     Feature_HasNEON | 0, // VST1d16TPseudo = 2429
   13825             :     Feature_HasNEON | 0, // VST1d16Twb_fixed = 2430
   13826             :     Feature_HasNEON | 0, // VST1d16Twb_register = 2431
   13827             :     Feature_HasNEON | 0, // VST1d16wb_fixed = 2432
   13828             :     Feature_HasNEON | 0, // VST1d16wb_register = 2433
   13829             :     Feature_HasNEON | 0, // VST1d32 = 2434
   13830             :     Feature_HasNEON | 0, // VST1d32Q = 2435
   13831             :     Feature_HasNEON | 0, // VST1d32QPseudo = 2436
   13832             :     Feature_HasNEON | 0, // VST1d32Qwb_fixed = 2437
   13833             :     Feature_HasNEON | 0, // VST1d32Qwb_register = 2438
   13834             :     Feature_HasNEON | 0, // VST1d32T = 2439
   13835             :     Feature_HasNEON | 0, // VST1d32TPseudo = 2440
   13836             :     Feature_HasNEON | 0, // VST1d32Twb_fixed = 2441
   13837             :     Feature_HasNEON | 0, // VST1d32Twb_register = 2442
   13838             :     Feature_HasNEON | 0, // VST1d32wb_fixed = 2443
   13839             :     Feature_HasNEON | 0, // VST1d32wb_register = 2444
   13840             :     Feature_HasNEON | 0, // VST1d64 = 2445
   13841             :     Feature_HasNEON | 0, // VST1d64Q = 2446
   13842             :     Feature_HasNEON | 0, // VST1d64QPseudo = 2447
   13843             :     Feature_HasNEON | 0, // VST1d64QPseudoWB_fixed = 2448
   13844             :     Feature_HasNEON | 0, // VST1d64QPseudoWB_register = 2449
   13845             :     Feature_HasNEON | 0, // VST1d64Qwb_fixed = 2450
   13846             :     Feature_HasNEON | 0, // VST1d64Qwb_register = 2451
   13847             :     Feature_HasNEON | 0, // VST1d64T = 2452
   13848             :     Feature_HasNEON | 0, // VST1d64TPseudo = 2453
   13849             :     Feature_HasNEON | 0, // VST1d64TPseudoWB_fixed = 2454
   13850             :     Feature_HasNEON | 0, // VST1d64TPseudoWB_register = 2455
   13851             :     Feature_HasNEON | 0, // VST1d64Twb_fixed = 2456
   13852             :     Feature_HasNEON | 0, // VST1d64Twb_register = 2457
   13853             :     Feature_HasNEON | 0, // VST1d64wb_fixed = 2458
   13854             :     Feature_HasNEON | 0, // VST1d64wb_register = 2459
   13855             :     Feature_HasNEON | 0, // VST1d8 = 2460
   13856             :     Feature_HasNEON | 0, // VST1d8Q = 2461
   13857             :     Feature_HasNEON | 0, // VST1d8QPseudo = 2462
   13858             :     Feature_HasNEON | 0, // VST1d8Qwb_fixed = 2463
   13859             :     Feature_HasNEON | 0, // VST1d8Qwb_register = 2464
   13860             :     Feature_HasNEON | 0, // VST1d8T = 2465
   13861             :     Feature_HasNEON | 0, // VST1d8TPseudo = 2466
   13862             :     Feature_HasNEON | 0, // VST1d8Twb_fixed = 2467
   13863             :     Feature_HasNEON | 0, // VST1d8Twb_register = 2468
   13864             :     Feature_HasNEON | 0, // VST1d8wb_fixed = 2469
   13865             :     Feature_HasNEON | 0, // VST1d8wb_register = 2470
   13866             :     Feature_HasNEON | 0, // VST1q16 = 2471
   13867             :     Feature_HasNEON | 0, // VST1q16HighQPseudo = 2472
   13868             :     Feature_HasNEON | 0, // VST1q16HighTPseudo = 2473
   13869             :     Feature_HasNEON | 0, // VST1q16LowQPseudo_UPD = 2474
   13870             :     Feature_HasNEON | 0, // VST1q16LowTPseudo_UPD = 2475
   13871             :     Feature_HasNEON | 0, // VST1q16wb_fixed = 2476
   13872             :     Feature_HasNEON | 0, // VST1q16wb_register = 2477
   13873             :     Feature_HasNEON | 0, // VST1q32 = 2478
   13874             :     Feature_HasNEON | 0, // VST1q32HighQPseudo = 2479
   13875             :     Feature_HasNEON | 0, // VST1q32HighTPseudo = 2480
   13876             :     Feature_HasNEON | 0, // VST1q32LowQPseudo_UPD = 2481
   13877             :     Feature_HasNEON | 0, // VST1q32LowTPseudo_UPD = 2482
   13878             :     Feature_HasNEON | 0, // VST1q32wb_fixed = 2483
   13879             :     Feature_HasNEON | 0, // VST1q32wb_register = 2484
   13880             :     Feature_HasNEON | 0, // VST1q64 = 2485
   13881             :     Feature_HasNEON | 0, // VST1q64HighQPseudo = 2486
   13882             :     Feature_HasNEON | 0, // VST1q64HighTPseudo = 2487
   13883             :     Feature_HasNEON | 0, // VST1q64LowQPseudo_UPD = 2488
   13884             :     Feature_HasNEON | 0, // VST1q64LowTPseudo_UPD = 2489
   13885             :     Feature_HasNEON | 0, // VST1q64wb_fixed = 2490
   13886             :     Feature_HasNEON | 0, // VST1q64wb_register = 2491
   13887             :     Feature_HasNEON | 0, // VST1q8 = 2492
   13888             :     Feature_HasNEON | 0, // VST1q8HighQPseudo = 2493
   13889             :     Feature_HasNEON | 0, // VST1q8HighTPseudo = 2494
   13890             :     Feature_HasNEON | 0, // VST1q8LowQPseudo_UPD = 2495
   13891             :     Feature_HasNEON | 0, // VST1q8LowTPseudo_UPD = 2496
   13892             :     Feature_HasNEON | 0, // VST1q8wb_fixed = 2497
   13893             :     Feature_HasNEON | 0, // VST1q8wb_register = 2498
   13894             :     Feature_HasNEON | 0, // VST2LNd16 = 2499
   13895             :     Feature_HasNEON | 0, // VST2LNd16Pseudo = 2500
   13896             :     Feature_HasNEON | 0, // VST2LNd16Pseudo_UPD = 2501
   13897             :     Feature_HasNEON | 0, // VST2LNd16_UPD = 2502
   13898             :     Feature_HasNEON | 0, // VST2LNd32 = 2503
   13899             :     Feature_HasNEON | 0, // VST2LNd32Pseudo = 2504
   13900             :     Feature_HasNEON | 0, // VST2LNd32Pseudo_UPD = 2505
   13901             :     Feature_HasNEON | 0, // VST2LNd32_UPD = 2506
   13902             :     Feature_HasNEON | 0, // VST2LNd8 = 2507
   13903             :     Feature_HasNEON | 0, // VST2LNd8Pseudo = 2508
   13904             :     Feature_HasNEON | 0, // VST2LNd8Pseudo_UPD = 2509
   13905             :     Feature_HasNEON | 0, // VST2LNd8_UPD = 2510
   13906             :     Feature_HasNEON | 0, // VST2LNq16 = 2511
   13907             :     Feature_HasNEON | 0, // VST2LNq16Pseudo = 2512
   13908             :     Feature_HasNEON | 0, // VST2LNq16Pseudo_UPD = 2513
   13909             :     Feature_HasNEON | 0, // VST2LNq16_UPD = 2514
   13910             :     Feature_HasNEON | 0, // VST2LNq32 = 2515
   13911             :     Feature_HasNEON | 0, // VST2LNq32Pseudo = 2516
   13912             :     Feature_HasNEON | 0, // VST2LNq32Pseudo_UPD = 2517
   13913             :     Feature_HasNEON | 0, // VST2LNq32_UPD = 2518
   13914             :     Feature_HasNEON | 0, // VST2b16 = 2519
   13915             :     Feature_HasNEON | 0, // VST2b16wb_fixed = 2520
   13916             :     Feature_HasNEON | 0, // VST2b16wb_register = 2521
   13917             :     Feature_HasNEON | 0, // VST2b32 = 2522
   13918             :     Feature_HasNEON | 0, // VST2b32wb_fixed = 2523
   13919             :     Feature_HasNEON | 0, // VST2b32wb_register = 2524
   13920             :     Feature_HasNEON | 0, // VST2b8 = 2525
   13921             :     Feature_HasNEON | 0, // VST2b8wb_fixed = 2526
   13922             :     Feature_HasNEON | 0, // VST2b8wb_register = 2527
   13923             :     Feature_HasNEON | 0, // VST2d16 = 2528
   13924             :     Feature_HasNEON | 0, // VST2d16wb_fixed = 2529
   13925             :     Feature_HasNEON | 0, // VST2d16wb_register = 2530
   13926             :     Feature_HasNEON | 0, // VST2d32 = 2531
   13927             :     Feature_HasNEON | 0, // VST2d32wb_fixed = 2532
   13928             :     Feature_HasNEON | 0, // VST2d32wb_register = 2533
   13929             :     Feature_HasNEON | 0, // VST2d8 = 2534
   13930             :     Feature_HasNEON | 0, // VST2d8wb_fixed = 2535
   13931             :     Feature_HasNEON | 0, // VST2d8wb_register = 2536
   13932             :     Feature_HasNEON | 0, // VST2q16 = 2537
   13933             :     Feature_HasNEON | 0, // VST2q16Pseudo = 2538
   13934             :     Feature_HasNEON | 0, // VST2q16PseudoWB_fixed = 2539
   13935             :     Feature_HasNEON | 0, // VST2q16PseudoWB_register = 2540
   13936             :     Feature_HasNEON | 0, // VST2q16wb_fixed = 2541
   13937             :     Feature_HasNEON | 0, // VST2q16wb_register = 2542
   13938             :     Feature_HasNEON | 0, // VST2q32 = 2543
   13939             :     Feature_HasNEON | 0, // VST2q32Pseudo = 2544
   13940             :     Feature_HasNEON | 0, // VST2q32PseudoWB_fixed = 2545
   13941             :     Feature_HasNEON | 0, // VST2q32PseudoWB_register = 2546
   13942             :     Feature_HasNEON | 0, // VST2q32wb_fixed = 2547
   13943             :     Feature_HasNEON | 0, // VST2q32wb_register = 2548
   13944             :     Feature_HasNEON | 0, // VST2q8 = 2549
   13945             :     Feature_HasNEON | 0, // VST2q8Pseudo = 2550
   13946             :     Feature_HasNEON | 0, // VST2q8PseudoWB_fixed = 2551
   13947             :     Feature_HasNEON | 0, // VST2q8PseudoWB_register = 2552
   13948             :     Feature_HasNEON | 0, // VST2q8wb_fixed = 2553
   13949             :     Feature_HasNEON | 0, // VST2q8wb_register = 2554
   13950             :     Feature_HasNEON | 0, // VST3LNd16 = 2555
   13951             :     Feature_HasNEON | 0, // VST3LNd16Pseudo = 2556
   13952             :     Feature_HasNEON | 0, // VST3LNd16Pseudo_UPD = 2557
   13953             :     Feature_HasNEON | 0, // VST3LNd16_UPD = 2558
   13954             :     Feature_HasNEON | 0, // VST3LNd32 = 2559
   13955             :     Feature_HasNEON | 0, // VST3LNd32Pseudo = 2560
   13956             :     Feature_HasNEON | 0, // VST3LNd32Pseudo_UPD = 2561
   13957             :     Feature_HasNEON | 0, // VST3LNd32_UPD = 2562
   13958             :     Feature_HasNEON | 0, // VST3LNd8 = 2563
   13959             :     Feature_HasNEON | 0, // VST3LNd8Pseudo = 2564
   13960             :     Feature_HasNEON | 0, // VST3LNd8Pseudo_UPD = 2565
   13961             :     Feature_HasNEON | 0, // VST3LNd8_UPD = 2566
   13962             :     Feature_HasNEON | 0, // VST3LNq16 = 2567
   13963             :     Feature_HasNEON | 0, // VST3LNq16Pseudo = 2568
   13964             :     Feature_HasNEON | 0, // VST3LNq16Pseudo_UPD = 2569
   13965             :     Feature_HasNEON | 0, // VST3LNq16_UPD = 2570
   13966             :     Feature_HasNEON | 0, // VST3LNq32 = 2571
   13967             :     Feature_HasNEON | 0, // VST3LNq32Pseudo = 2572
   13968             :     Feature_HasNEON | 0, // VST3LNq32Pseudo_UPD = 2573
   13969             :     Feature_HasNEON | 0, // VST3LNq32_UPD = 2574
   13970             :     Feature_HasNEON | 0, // VST3d16 = 2575
   13971             :     Feature_HasNEON | 0, // VST3d16Pseudo = 2576
   13972             :     Feature_HasNEON | 0, // VST3d16Pseudo_UPD = 2577
   13973             :     Feature_HasNEON | 0, // VST3d16_UPD = 2578
   13974             :     Feature_HasNEON | 0, // VST3d32 = 2579
   13975             :     Feature_HasNEON | 0, // VST3d32Pseudo = 2580
   13976             :     Feature_HasNEON | 0, // VST3d32Pseudo_UPD = 2581
   13977             :     Feature_HasNEON | 0, // VST3d32_UPD = 2582
   13978             :     Feature_HasNEON | 0, // VST3d8 = 2583
   13979             :     Feature_HasNEON | 0, // VST3d8Pseudo = 2584
   13980             :     Feature_HasNEON | 0, // VST3d8Pseudo_UPD = 2585
   13981             :     Feature_HasNEON | 0, // VST3d8_UPD = 2586
   13982             :     Feature_HasNEON | 0, // VST3q16 = 2587
   13983             :     Feature_HasNEON | 0, // VST3q16Pseudo_UPD = 2588
   13984             :     Feature_HasNEON | 0, // VST3q16_UPD = 2589
   13985             :     Feature_HasNEON | 0, // VST3q16oddPseudo = 2590
   13986             :     Feature_HasNEON | 0, // VST3q16oddPseudo_UPD = 2591
   13987             :     Feature_HasNEON | 0, // VST3q32 = 2592
   13988             :     Feature_HasNEON | 0, // VST3q32Pseudo_UPD = 2593
   13989             :     Feature_HasNEON | 0, // VST3q32_UPD = 2594
   13990             :     Feature_HasNEON | 0, // VST3q32oddPseudo = 2595
   13991             :     Feature_HasNEON | 0, // VST3q32oddPseudo_UPD = 2596
   13992             :     Feature_HasNEON | 0, // VST3q8 = 2597
   13993             :     Feature_HasNEON | 0, // VST3q8Pseudo_UPD = 2598
   13994             :     Feature_HasNEON | 0, // VST3q8_UPD = 2599
   13995             :     Feature_HasNEON | 0, // VST3q8oddPseudo = 2600
   13996             :     Feature_HasNEON | 0, // VST3q8oddPseudo_UPD = 2601
   13997             :     Feature_HasNEON | 0, // VST4LNd16 = 2602
   13998             :     Feature_HasNEON | 0, // VST4LNd16Pseudo = 2603
   13999             :     Feature_HasNEON | 0, // VST4LNd16Pseudo_UPD = 2604
   14000             :     Feature_HasNEON | 0, // VST4LNd16_UPD = 2605
   14001             :     Feature_HasNEON | 0, // VST4LNd32 = 2606
   14002             :     Feature_HasNEON | 0, // VST4LNd32Pseudo = 2607
   14003             :     Feature_HasNEON | 0, // VST4LNd32Pseudo_UPD = 2608
   14004             :     Feature_HasNEON | 0, // VST4LNd32_UPD = 2609
   14005             :     Feature_HasNEON | 0, // VST4LNd8 = 2610
   14006             :     Feature_HasNEON | 0, // VST4LNd8Pseudo = 2611
   14007             :     Feature_HasNEON | 0, // VST4LNd8Pseudo_UPD = 2612
   14008             :     Feature_HasNEON | 0, // VST4LNd8_UPD = 2613
   14009             :     Feature_HasNEON | 0, // VST4LNq16 = 2614
   14010             :     Feature_HasNEON | 0, // VST4LNq16Pseudo = 2615
   14011             :     Feature_HasNEON | 0, // VST4LNq16Pseudo_UPD = 2616
   14012             :     Feature_HasNEON | 0, // VST4LNq16_UPD = 2617
   14013             :     Feature_HasNEON | 0, // VST4LNq32 = 2618
   14014             :     Feature_HasNEON | 0, // VST4LNq32Pseudo = 2619
   14015             :     Feature_HasNEON | 0, // VST4LNq32Pseudo_UPD = 2620
   14016             :     Feature_HasNEON | 0, // VST4LNq32_UPD = 2621
   14017             :     Feature_HasNEON | 0, // VST4d16 = 2622
   14018             :     Feature_HasNEON | 0, // VST4d16Pseudo = 2623
   14019             :     Feature_HasNEON | 0, // VST4d16Pseudo_UPD = 2624
   14020             :     Feature_HasNEON | 0, // VST4d16_UPD = 2625
   14021             :     Feature_HasNEON | 0, // VST4d32 = 2626
   14022             :     Feature_HasNEON | 0, // VST4d32Pseudo = 2627
   14023             :     Feature_HasNEON | 0, // VST4d32Pseudo_UPD = 2628
   14024             :     Feature_HasNEON | 0, // VST4d32_UPD = 2629
   14025             :     Feature_HasNEON | 0, // VST4d8 = 2630
   14026             :     Feature_HasNEON | 0, // VST4d8Pseudo = 2631
   14027             :     Feature_HasNEON | 0, // VST4d8Pseudo_UPD = 2632
   14028             :     Feature_HasNEON | 0, // VST4d8_UPD = 2633
   14029             :     Feature_HasNEON | 0, // VST4q16 = 2634
   14030             :     Feature_HasNEON | 0, // VST4q16Pseudo_UPD = 2635
   14031             :     Feature_HasNEON | 0, // VST4q16_UPD = 2636
   14032             :     Feature_HasNEON | 0, // VST4q16oddPseudo = 2637
   14033             :     Feature_HasNEON | 0, // VST4q16oddPseudo_UPD = 2638
   14034             :     Feature_HasNEON | 0, // VST4q32 = 2639
   14035             :     Feature_HasNEON | 0, // VST4q32Pseudo_UPD = 2640
   14036             :     Feature_HasNEON | 0, // VST4q32_UPD = 2641
   14037             :     Feature_HasNEON | 0, // VST4q32oddPseudo = 2642
   14038             :     Feature_HasNEON | 0, // VST4q32oddPseudo_UPD = 2643
   14039             :     Feature_HasNEON | 0, // VST4q8 = 2644
   14040             :     Feature_HasNEON | 0, // VST4q8Pseudo_UPD = 2645
   14041             :     Feature_HasNEON | 0, // VST4q8_UPD = 2646
   14042             :     Feature_HasNEON | 0, // VST4q8oddPseudo = 2647
   14043             :     Feature_HasNEON | 0, // VST4q8oddPseudo_UPD = 2648
   14044             :     Feature_HasVFP2 | 0, // VSTMDDB_UPD = 2649
   14045             :     Feature_HasVFP2 | 0, // VSTMDIA = 2650
   14046             :     Feature_HasVFP2 | 0, // VSTMDIA_UPD = 2651
   14047             :     Feature_HasVFP2 | 0, // VSTMQIA = 2652
   14048             :     Feature_HasVFP2 | 0, // VSTMSDB_UPD = 2653
   14049             :     Feature_HasVFP2 | 0, // VSTMSIA = 2654
   14050             :     Feature_HasVFP2 | 0, // VSTMSIA_UPD = 2655
   14051             :     Feature_HasVFP2 | 0, // VSTRD = 2656
   14052             :     Feature_HasFullFP16 | 0, // VSTRH = 2657
   14053             :     Feature_HasVFP2 | 0, // VSTRS = 2658
   14054             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VSUBD = 2659
   14055             :     Feature_HasFullFP16 | 0, // VSUBH = 2660
   14056             :     Feature_HasNEON | 0, // VSUBHNv2i32 = 2661
   14057             :     Feature_HasNEON | 0, // VSUBHNv4i16 = 2662
   14058             :     Feature_HasNEON | 0, // VSUBHNv8i8 = 2663
   14059             :     Feature_HasNEON | 0, // VSUBLsv2i64 = 2664
   14060             :     Feature_HasNEON | 0, // VSUBLsv4i32 = 2665
   14061             :     Feature_HasNEON | 0, // VSUBLsv8i16 = 2666
   14062             :     Feature_HasNEON | 0, // VSUBLuv2i64 = 2667
   14063             :     Feature_HasNEON | 0, // VSUBLuv4i32 = 2668
   14064             :     Feature_HasNEON | 0, // VSUBLuv8i16 = 2669
   14065             :     Feature_HasVFP2 | 0, // VSUBS = 2670
   14066             :     Feature_HasNEON | 0, // VSUBWsv2i64 = 2671
   14067             :     Feature_HasNEON | 0, // VSUBWsv4i32 = 2672
   14068             :     Feature_HasNEON | 0, // VSUBWsv8i16 = 2673
   14069             :     Feature_HasNEON | 0, // VSUBWuv2i64 = 2674
   14070             :     Feature_HasNEON | 0, // VSUBWuv4i32 = 2675
   14071             :     Feature_HasNEON | 0, // VSUBWuv8i16 = 2676
   14072             :     Feature_HasNEON | 0, // VSUBfd = 2677
   14073             :     Feature_HasNEON | 0, // VSUBfq = 2678
   14074             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VSUBhd = 2679
   14075             :     Feature_HasNEON | Feature_HasFullFP16 | 0, // VSUBhq = 2680
   14076             :     Feature_HasNEON | 0, // VSUBv16i8 = 2681
   14077             :     Feature_HasNEON | 0, // VSUBv1i64 = 2682
   14078             :     Feature_HasNEON | 0, // VSUBv2i32 = 2683
   14079             :     Feature_HasNEON | 0, // VSUBv2i64 = 2684
   14080             :     Feature_HasNEON | 0, // VSUBv4i16 = 2685
   14081             :     Feature_HasNEON | 0, // VSUBv4i32 = 2686
   14082             :     Feature_HasNEON | 0, // VSUBv8i16 = 2687
   14083             :     Feature_HasNEON | 0, // VSUBv8i8 = 2688
   14084             :     Feature_HasNEON | 0, // VSWPd = 2689
   14085             :     Feature_HasNEON | 0, // VSWPq = 2690
   14086             :     Feature_HasNEON | 0, // VTBL1 = 2691
   14087             :     Feature_HasNEON | 0, // VTBL2 = 2692
   14088             :     Feature_HasNEON | 0, // VTBL3 = 2693
   14089             :     Feature_HasNEON | 0, // VTBL3Pseudo = 2694
   14090             :     Feature_HasNEON | 0, // VTBL4 = 2695
   14091             :     Feature_HasNEON | 0, // VTBL4Pseudo = 2696
   14092             :     Feature_HasNEON | 0, // VTBX1 = 2697
   14093             :     Feature_HasNEON | 0, // VTBX2 = 2698
   14094             :     Feature_HasNEON | 0, // VTBX3 = 2699
   14095             :     Feature_HasNEON | 0, // VTBX3Pseudo = 2700
   14096             :     Feature_HasNEON | 0, // VTBX4 = 2701
   14097             :     Feature_HasNEON | 0, // VTBX4Pseudo = 2702
   14098             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VTOSHD = 2703
   14099             :     Feature_HasFullFP16 | 0, // VTOSHH = 2704
   14100             :     Feature_HasVFP2 | 0, // VTOSHS = 2705
   14101             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VTOSIRD = 2706
   14102             :     Feature_HasFullFP16 | 0, // VTOSIRH = 2707
   14103             :     Feature_HasVFP2 | 0, // VTOSIRS = 2708
   14104             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VTOSIZD = 2709
   14105             :     Feature_HasFullFP16 | 0, // VTOSIZH = 2710
   14106             :     Feature_HasVFP2 | 0, // VTOSIZS = 2711
   14107             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VTOSLD = 2712
   14108             :     Feature_HasFullFP16 | 0, // VTOSLH = 2713
   14109             :     Feature_HasVFP2 | 0, // VTOSLS = 2714
   14110             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VTOUHD = 2715
   14111             :     Feature_HasFullFP16 | 0, // VTOUHH = 2716
   14112             :     Feature_HasVFP2 | 0, // VTOUHS = 2717
   14113             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VTOUIRD = 2718
   14114             :     Feature_HasFullFP16 | 0, // VTOUIRH = 2719
   14115             :     Feature_HasVFP2 | 0, // VTOUIRS = 2720
   14116             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VTOUIZD = 2721
   14117             :     Feature_HasFullFP16 | 0, // VTOUIZH = 2722
   14118             :     Feature_HasVFP2 | 0, // VTOUIZS = 2723
   14119             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VTOULD = 2724
   14120             :     Feature_HasFullFP16 | 0, // VTOULH = 2725
   14121             :     Feature_HasVFP2 | 0, // VTOULS = 2726
   14122             :     Feature_HasNEON | 0, // VTRNd16 = 2727
   14123             :     Feature_HasNEON | 0, // VTRNd32 = 2728
   14124             :     Feature_HasNEON | 0, // VTRNd8 = 2729
   14125             :     Feature_HasNEON | 0, // VTRNq16 = 2730
   14126             :     Feature_HasNEON | 0, // VTRNq32 = 2731
   14127             :     Feature_HasNEON | 0, // VTRNq8 = 2732
   14128             :     Feature_HasNEON | 0, // VTSTv16i8 = 2733
   14129             :     Feature_HasNEON | 0, // VTSTv2i32 = 2734
   14130             :     Feature_HasNEON | 0, // VTSTv4i16 = 2735
   14131             :     Feature_HasNEON | 0, // VTSTv4i32 = 2736
   14132             :     Feature_HasNEON | 0, // VTSTv8i16 = 2737
   14133             :     Feature_HasNEON | 0, // VTSTv8i8 = 2738
   14134             :     Feature_HasDotProd | 0, // VUDOTD = 2739
   14135             :     Feature_HasDotProd | 0, // VUDOTDI = 2740
   14136             :     Feature_HasDotProd | 0, // VUDOTQ = 2741
   14137             :     Feature_HasDotProd | 0, // VUDOTQI = 2742
   14138             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VUHTOD = 2743
   14139             :     Feature_HasFullFP16 | 0, // VUHTOH = 2744
   14140             :     Feature_HasVFP2 | 0, // VUHTOS = 2745
   14141             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VUITOD = 2746
   14142             :     Feature_HasFullFP16 | 0, // VUITOH = 2747
   14143             :     Feature_HasVFP2 | 0, // VUITOS = 2748
   14144             :     Feature_HasVFP2 | Feature_HasDPVFP | 0, // VULTOD = 2749
   14145             :     Feature_HasFullFP16 | 0, // VULTOH = 2750
   14146             :     Feature_HasVFP2 | 0, // VULTOS = 2751
   14147             :     Feature_HasNEON | 0, // VUZPd16 = 2752
   14148             :     Feature_HasNEON | 0, // VUZPd8 = 2753
   14149             :     Feature_HasNEON | 0, // VUZPq16 = 2754
   14150             :     Feature_HasNEON | 0, // VUZPq32 = 2755
   14151             :     Feature_HasNEON | 0, // VUZPq8 = 2756
   14152             :     Feature_HasNEON | 0, // VZIPd16 = 2757
   14153             :     Feature_HasNEON | 0, // VZIPd8 = 2758
   14154             :     Feature_HasNEON | 0, // VZIPq16 = 2759
   14155             :     Feature_HasNEON | 0, // VZIPq32 = 2760
   14156             :     Feature_HasNEON | 0, // VZIPq8 = 2761
   14157             :     Feature_IsARM | 0, // sysLDMDA = 2762
   14158             :     Feature_IsARM | 0, // sysLDMDA_UPD = 2763
   14159             :     Feature_IsARM | 0, // sysLDMDB = 2764
   14160             :     Feature_IsARM | 0, // sysLDMDB_UPD = 2765
   14161             :     Feature_IsARM | 0, // sysLDMIA = 2766
   14162             :     Feature_IsARM | 0, // sysLDMIA_UPD = 2767
   14163             :     Feature_IsARM | 0, // sysLDMIB = 2768
   14164             :     Feature_IsARM | 0, // sysLDMIB_UPD = 2769
   14165             :     Feature_IsARM | 0, // sysSTMDA = 2770
   14166             :     Feature_IsARM | 0, // sysSTMDA_UPD = 2771
   14167             :     Feature_IsARM | 0, // sysSTMDB = 2772
   14168             :     Feature_IsARM | 0, // sysSTMDB_UPD = 2773
   14169             :     Feature_IsARM | 0, // sysSTMIA = 2774
   14170             :     Feature_IsARM | 0, // sysSTMIA_UPD = 2775
   14171             :     Feature_IsARM | 0, // sysSTMIB = 2776
   14172             :     Feature_IsARM | 0, // sysSTMIB_UPD = 2777
   14173             :     Feature_IsThumb2 | 0, // t2ADCri = 2778
   14174             :     Feature_IsThumb2 | 0, // t2ADCrr = 2779
   14175             :     Feature_IsThumb2 | 0, // t2ADCrs = 2780
   14176             :     Feature_IsThumb2 | 0, // t2ADDri = 2781
   14177             :     Feature_IsThumb2 | 0, // t2ADDri12 = 2782
   14178             :     Feature_IsThumb2 | 0, // t2ADDrr = 2783
   14179             :     Feature_IsThumb2 | 0, // t2ADDrs = 2784
   14180             :     Feature_IsThumb2 | 0, // t2ADR = 2785
   14181             :     Feature_IsThumb2 | 0, // t2ANDri = 2786
   14182             :     Feature_IsThumb2 | 0, // t2ANDrr = 2787
   14183             :     Feature_IsThumb2 | 0, // t2ANDrs = 2788
   14184             :     Feature_IsThumb2 | 0, // t2ASRri = 2789
   14185             :     Feature_IsThumb2 | 0, // t2ASRrr = 2790
   14186             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2B = 2791
   14187             :     Feature_IsThumb2 | 0, // t2BFC = 2792
   14188             :     Feature_IsThumb2 | 0, // t2BFI = 2793
   14189             :     Feature_IsThumb2 | 0, // t2BICri = 2794
   14190             :     Feature_IsThumb2 | 0, // t2BICrr = 2795
   14191             :     Feature_IsThumb2 | 0, // t2BICrs = 2796
   14192             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2BXJ = 2797
   14193             :     Feature_IsThumb2 | 0, // t2Bcc = 2798
   14194             :     Feature_IsThumb2 | Feature_PreV8 | 0, // t2CDP = 2799
   14195             :     Feature_IsThumb2 | Feature_PreV8 | 0, // t2CDP2 = 2800
   14196             :     Feature_IsThumb | Feature_HasV7Clrex | 0, // t2CLREX = 2801
   14197             :     Feature_IsThumb2 | 0, // t2CLZ = 2802
   14198             :     Feature_IsThumb2 | 0, // t2CMNri = 2803
   14199             :     Feature_IsThumb2 | 0, // t2CMNzrr = 2804
   14200             :     Feature_IsThumb2 | 0, // t2CMNzrs = 2805
   14201             :     Feature_IsThumb2 | 0, // t2CMPri = 2806
   14202             :     Feature_IsThumb2 | 0, // t2CMPrr = 2807
   14203             :     Feature_IsThumb2 | 0, // t2CMPrs = 2808
   14204             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2CPS1p = 2809
   14205             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2CPS2p = 2810
   14206             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2CPS3p = 2811
   14207             :     Feature_IsThumb2 | Feature_HasV8 | Feature_HasCRC | 0, // t2CRC32B = 2812
   14208             :     Feature_IsThumb2 | Feature_HasV8 | Feature_HasCRC | 0, // t2CRC32CB = 2813
   14209             :     Feature_IsThumb2 | Feature_HasV8 | Feature_HasCRC | 0, // t2CRC32CH = 2814
   14210             :     Feature_IsThumb2 | Feature_HasV8 | Feature_HasCRC | 0, // t2CRC32CW = 2815
   14211             :     Feature_IsThumb2 | Feature_HasV8 | Feature_HasCRC | 0, // t2CRC32H = 2816
   14212             :     Feature_IsThumb2 | Feature_HasV8 | Feature_HasCRC | 0, // t2CRC32W = 2817
   14213             :     Feature_IsThumb2 | 0, // t2DBG = 2818
   14214             :     Feature_IsThumb2 | Feature_HasV8 | 0, // t2DCPS1 = 2819
   14215             :     Feature_IsThumb2 | Feature_HasV8 | 0, // t2DCPS2 = 2820
   14216             :     Feature_IsThumb2 | Feature_HasV8 | 0, // t2DCPS3 = 2821
   14217             :     Feature_IsThumb | Feature_HasDB | 0, // t2DMB = 2822
   14218             :     Feature_IsThumb | Feature_HasDB | 0, // t2DSB = 2823
   14219             :     Feature_IsThumb2 | 0, // t2EORri = 2824
   14220             :     Feature_IsThumb2 | 0, // t2EORrr = 2825
   14221             :     Feature_IsThumb2 | 0, // t2EORrs = 2826
   14222             :     Feature_IsThumb2 | 0, // t2HINT = 2827
   14223             :     Feature_IsThumb2 | Feature_HasVirtualization | 0, // t2HVC = 2828
   14224             :     Feature_IsThumb | Feature_HasDB | 0, // t2ISB = 2829
   14225             :     Feature_IsThumb2 | 0, // t2IT = 2830
   14226             :     Feature_IsThumb2 | Feature_HasVFP2 | 0, // t2Int_eh_sjlj_setjmp = 2831
   14227             :     Feature_IsThumb2 | 0, // t2Int_eh_sjlj_setjmp_nofp = 2832
   14228             :     Feature_IsThumb | Feature_HasAcquireRelease | 0, // t2LDA = 2833
   14229             :     Feature_IsThumb | Feature_HasAcquireRelease | 0, // t2LDAB = 2834
   14230             :     Feature_IsThumb | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // t2LDAEX = 2835
   14231             :     Feature_IsThumb | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // t2LDAEXB = 2836
   14232             :     Feature_IsThumb | Feature_HasAcquireRelease | Feature_HasV7Clrex | Feature_IsNotMClass | 0, // t2LDAEXD = 2837
   14233             :     Feature_IsThumb | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // t2LDAEXH = 2838
   14234             :     Feature_IsThumb | Feature_HasAcquireRelease | 0, // t2LDAH = 2839
   14235             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2LDC2L_OFFSET = 2840
   14236             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2LDC2L_OPTION = 2841
   14237             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2LDC2L_POST = 2842
   14238             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2LDC2L_PRE = 2843
   14239             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2LDC2_OFFSET = 2844
   14240             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2LDC2_OPTION = 2845
   14241             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2LDC2_POST = 2846
   14242             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2LDC2_PRE = 2847
   14243             :     Feature_IsThumb2 | 0, // t2LDCL_OFFSET = 2848
   14244             :     Feature_IsThumb2 | 0, // t2LDCL_OPTION = 2849
   14245             :     Feature_IsThumb2 | 0, // t2LDCL_POST = 2850
   14246             :     Feature_IsThumb2 | 0, // t2LDCL_PRE = 2851
   14247             :     Feature_IsThumb2 | 0, // t2LDC_OFFSET = 2852
   14248             :     Feature_IsThumb2 | 0, // t2LDC_OPTION = 2853
   14249             :     Feature_IsThumb2 | 0, // t2LDC_POST = 2854
   14250             :     Feature_IsThumb2 | 0, // t2LDC_PRE = 2855
   14251             :     Feature_IsThumb2 | 0, // t2LDMDB = 2856
   14252             :     Feature_IsThumb2 | 0, // t2LDMDB_UPD = 2857
   14253             :     Feature_IsThumb2 | 0, // t2LDMIA = 2858
   14254             :     Feature_IsThumb2 | 0, // t2LDMIA_UPD = 2859
   14255             :     Feature_IsThumb2 | 0, // t2LDRBT = 2860
   14256             :     Feature_IsThumb2 | 0, // t2LDRB_POST = 2861
   14257             :     Feature_IsThumb2 | 0, // t2LDRB_PRE = 2862
   14258             :     Feature_IsThumb2 | 0, // t2LDRBi12 = 2863
   14259             :     Feature_IsThumb2 | 0, // t2LDRBi8 = 2864
   14260             :     Feature_IsThumb2 | 0, // t2LDRBpci = 2865
   14261             :     Feature_IsThumb2 | 0, // t2LDRBs = 2866
   14262             :     Feature_IsThumb2 | 0, // t2LDRD_POST = 2867
   14263             :     Feature_IsThumb2 | 0, // t2LDRD_PRE = 2868
   14264             :     Feature_IsThumb2 | 0, // t2LDRDi8 = 2869
   14265             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2LDREX = 2870
   14266             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2LDREXB = 2871
   14267             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2LDREXD = 2872
   14268             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2LDREXH = 2873
   14269             :     Feature_IsThumb2 | 0, // t2LDRHT = 2874
   14270             :     Feature_IsThumb2 | 0, // t2LDRH_POST = 2875
   14271             :     Feature_IsThumb2 | 0, // t2LDRH_PRE = 2876
   14272             :     Feature_IsThumb2 | 0, // t2LDRHi12 = 2877
   14273             :     Feature_IsThumb2 | 0, // t2LDRHi8 = 2878
   14274             :     Feature_IsThumb2 | 0, // t2LDRHpci = 2879
   14275             :     Feature_IsThumb2 | 0, // t2LDRHs = 2880
   14276             :     Feature_IsThumb2 | 0, // t2LDRSBT = 2881
   14277             :     Feature_IsThumb2 | 0, // t2LDRSB_POST = 2882
   14278             :     Feature_IsThumb2 | 0, // t2LDRSB_PRE = 2883
   14279             :     Feature_IsThumb2 | 0, // t2LDRSBi12 = 2884
   14280             :     Feature_IsThumb2 | 0, // t2LDRSBi8 = 2885
   14281             :     Feature_IsThumb2 | 0, // t2LDRSBpci = 2886
   14282             :     Feature_IsThumb2 | 0, // t2LDRSBs = 2887
   14283             :     Feature_IsThumb2 | 0, // t2LDRSHT = 2888
   14284             :     Feature_IsThumb2 | 0, // t2LDRSH_POST = 2889
   14285             :     Feature_IsThumb2 | 0, // t2LDRSH_PRE = 2890
   14286             :     Feature_IsThumb2 | 0, // t2LDRSHi12 = 2891
   14287             :     Feature_IsThumb2 | 0, // t2LDRSHi8 = 2892
   14288             :     Feature_IsThumb2 | 0, // t2LDRSHpci = 2893
   14289             :     Feature_IsThumb2 | 0, // t2LDRSHs = 2894
   14290             :     Feature_IsThumb2 | 0, // t2LDRT = 2895
   14291             :     Feature_IsThumb2 | 0, // t2LDR_POST = 2896
   14292             :     Feature_IsThumb2 | 0, // t2LDR_PRE = 2897
   14293             :     Feature_IsThumb2 | 0, // t2LDRi12 = 2898
   14294             :     Feature_IsThumb2 | 0, // t2LDRi8 = 2899
   14295             :     Feature_IsThumb2 | 0, // t2LDRpci = 2900
   14296             :     Feature_IsThumb2 | 0, // t2LDRs = 2901
   14297             :     Feature_IsThumb2 | 0, // t2LSLri = 2902
   14298             :     Feature_IsThumb2 | 0, // t2LSLrr = 2903
   14299             :     Feature_IsThumb2 | 0, // t2LSRri = 2904
   14300             :     Feature_IsThumb2 | 0, // t2LSRrr = 2905
   14301             :     Feature_IsThumb2 | 0, // t2MCR = 2906
   14302             :     Feature_IsThumb2 | Feature_PreV8 | 0, // t2MCR2 = 2907
   14303             :     Feature_IsThumb2 | 0, // t2MCRR = 2908
   14304             :     Feature_IsThumb2 | Feature_PreV8 | 0, // t2MCRR2 = 2909
   14305             :     Feature_IsThumb2 | 0, // t2MLA = 2910
   14306             :     Feature_IsThumb2 | 0, // t2MLS = 2911
   14307             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2MOVTi16 = 2912
   14308             :     Feature_IsThumb2 | 0, // t2MOVi = 2913
   14309             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2MOVi16 = 2914
   14310             :     Feature_IsThumb2 | 0, // t2MOVr = 2915
   14311             :     Feature_IsThumb2 | 0, // t2MOVsra_flag = 2916
   14312             :     Feature_IsThumb2 | 0, // t2MOVsrl_flag = 2917
   14313             :     Feature_IsThumb2 | 0, // t2MRC = 2918
   14314             :     Feature_IsThumb2 | Feature_PreV8 | 0, // t2MRC2 = 2919
   14315             :     Feature_IsThumb2 | 0, // t2MRRC = 2920
   14316             :     Feature_IsThumb2 | Feature_PreV8 | 0, // t2MRRC2 = 2921
   14317             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2MRS_AR = 2922
   14318             :     Feature_IsThumb | Feature_IsMClass | 0, // t2MRS_M = 2923
   14319             :     Feature_IsThumb | Feature_HasVirtualization | 0, // t2MRSbanked = 2924
   14320             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2MRSsys_AR = 2925
   14321             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2MSR_AR = 2926
   14322             :     Feature_IsThumb | Feature_IsMClass | 0, // t2MSR_M = 2927
   14323             :     Feature_IsThumb | Feature_HasVirtualization | 0, // t2MSRbanked = 2928
   14324             :     Feature_IsThumb2 | 0, // t2MUL = 2929
   14325             :     Feature_IsThumb2 | 0, // t2MVNi = 2930
   14326             :     Feature_IsThumb2 | 0, // t2MVNr = 2931
   14327             :     Feature_IsThumb2 | 0, // t2MVNs = 2932
   14328             :     Feature_IsThumb2 | 0, // t2ORNri = 2933
   14329             :     Feature_IsThumb2 | 0, // t2ORNrr = 2934
   14330             :     Feature_IsThumb2 | 0, // t2ORNrs = 2935
   14331             :     Feature_IsThumb2 | 0, // t2ORRri = 2936
   14332             :     Feature_IsThumb2 | 0, // t2ORRrr = 2937
   14333             :     Feature_IsThumb2 | 0, // t2ORRrs = 2938
   14334             :     Feature_HasDSP | Feature_IsThumb2 | 0, // t2PKHBT = 2939
   14335             :     Feature_HasDSP | Feature_IsThumb2 | 0, // t2PKHTB = 2940
   14336             :     Feature_IsThumb2 | Feature_HasV7 | Feature_HasMP | 0, // t2PLDWi12 = 2941
   14337             :     Feature_IsThumb2 | Feature_HasV7 | Feature_HasMP | 0, // t2PLDWi8 = 2942
   14338             :     Feature_IsThumb2 | Feature_HasV7 | Feature_HasMP | 0, // t2PLDWs = 2943
   14339             :     Feature_IsThumb2 | 0, // t2PLDi12 = 2944
   14340             :     Feature_IsThumb2 | 0, // t2PLDi8 = 2945
   14341             :     Feature_IsThumb2 | 0, // t2PLDpci = 2946
   14342             :     Feature_IsThumb2 | 0, // t2PLDs = 2947
   14343             :     Feature_IsThumb2 | Feature_HasV7 | 0, // t2PLIi12 = 2948
   14344             :     Feature_IsThumb2 | Feature_HasV7 | 0, // t2PLIi8 = 2949
   14345             :     Feature_IsThumb2 | Feature_HasV7 | 0, // t2PLIpci = 2950
   14346             :     Feature_IsThumb2 | Feature_HasV7 | 0, // t2PLIs = 2951
   14347             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2QADD = 2952
   14348             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2QADD16 = 2953
   14349             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2QADD8 = 2954
   14350             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2QASX = 2955
   14351             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2QDADD = 2956
   14352             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2QDSUB = 2957
   14353             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2QSAX = 2958
   14354             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2QSUB = 2959
   14355             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2QSUB16 = 2960
   14356             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2QSUB8 = 2961
   14357             :     Feature_IsThumb2 | 0, // t2RBIT = 2962
   14358             :     Feature_IsThumb2 | 0, // t2REV = 2963
   14359             :     Feature_IsThumb2 | 0, // t2REV16 = 2964
   14360             :     Feature_IsThumb2 | 0, // t2REVSH = 2965
   14361             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2RFEDB = 2966
   14362             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2RFEDBW = 2967
   14363             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2RFEIA = 2968
   14364             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2RFEIAW = 2969
   14365             :     Feature_IsThumb2 | 0, // t2RORri = 2970
   14366             :     Feature_IsThumb2 | 0, // t2RORrr = 2971
   14367             :     Feature_IsThumb2 | 0, // t2RRX = 2972
   14368             :     Feature_IsThumb2 | 0, // t2RSBri = 2973
   14369             :     Feature_IsThumb2 | 0, // t2RSBrr = 2974
   14370             :     Feature_IsThumb2 | 0, // t2RSBrs = 2975
   14371             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SADD16 = 2976
   14372             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SADD8 = 2977
   14373             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SASX = 2978
   14374             :     Feature_IsThumb2 | Feature_HasSpecCtrl | 0, // t2SB = 2979
   14375             :     Feature_IsThumb2 | 0, // t2SBCri = 2980
   14376             :     Feature_IsThumb2 | 0, // t2SBCrr = 2981
   14377             :     Feature_IsThumb2 | 0, // t2SBCrs = 2982
   14378             :     Feature_IsThumb2 | 0, // t2SBFX = 2983
   14379             :     Feature_HasDivideInThumb | Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2SDIV = 2984
   14380             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SEL = 2985
   14381             :     Feature_IsThumb2 | Feature_HasV8 | Feature_HasV8_1a | 0, // t2SETPAN = 2986
   14382             :     Feature_Has8MSecExt | 0, // t2SG = 2987
   14383             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SHADD16 = 2988
   14384             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SHADD8 = 2989
   14385             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SHASX = 2990
   14386             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SHSAX = 2991
   14387             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SHSUB16 = 2992
   14388             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SHSUB8 = 2993
   14389             :     Feature_IsThumb2 | Feature_HasTrustZone | 0, // t2SMC = 2994
   14390             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLABB = 2995
   14391             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLABT = 2996
   14392             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLAD = 2997
   14393             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLADX = 2998
   14394             :     Feature_IsThumb2 | 0, // t2SMLAL = 2999
   14395             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLALBB = 3000
   14396             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLALBT = 3001
   14397             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLALD = 3002
   14398             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLALDX = 3003
   14399             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLALTB = 3004
   14400             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLALTT = 3005
   14401             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLATB = 3006
   14402             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLATT = 3007
   14403             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLAWB = 3008
   14404             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLAWT = 3009
   14405             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLSD = 3010
   14406             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLSDX = 3011
   14407             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLSLD = 3012
   14408             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMLSLDX = 3013
   14409             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMMLA = 3014
   14410             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMMLAR = 3015
   14411             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMMLS = 3016
   14412             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMMLSR = 3017
   14413             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMMUL = 3018
   14414             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMMULR = 3019
   14415             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMUAD = 3020
   14416             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMUADX = 3021
   14417             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMULBB = 3022
   14418             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMULBT = 3023
   14419             :     Feature_IsThumb2 | 0, // t2SMULL = 3024
   14420             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMULTB = 3025
   14421             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMULTT = 3026
   14422             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMULWB = 3027
   14423             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMULWT = 3028
   14424             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMUSD = 3029
   14425             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SMUSDX = 3030
   14426             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2SRSDB = 3031
   14427             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2SRSDB_UPD = 3032
   14428             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2SRSIA = 3033
   14429             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2SRSIA_UPD = 3034
   14430             :     Feature_IsThumb2 | 0, // t2SSAT = 3035
   14431             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SSAT16 = 3036
   14432             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SSAX = 3037
   14433             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SSUB16 = 3038
   14434             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2SSUB8 = 3039
   14435             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2STC2L_OFFSET = 3040
   14436             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2STC2L_OPTION = 3041
   14437             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2STC2L_POST = 3042
   14438             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2STC2L_PRE = 3043
   14439             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2STC2_OFFSET = 3044
   14440             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2STC2_OPTION = 3045
   14441             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2STC2_POST = 3046
   14442             :     Feature_PreV8 | Feature_IsThumb2 | 0, // t2STC2_PRE = 3047
   14443             :     Feature_IsThumb2 | 0, // t2STCL_OFFSET = 3048
   14444             :     Feature_IsThumb2 | 0, // t2STCL_OPTION = 3049
   14445             :     Feature_IsThumb2 | 0, // t2STCL_POST = 3050
   14446             :     Feature_IsThumb2 | 0, // t2STCL_PRE = 3051
   14447             :     Feature_IsThumb2 | 0, // t2STC_OFFSET = 3052
   14448             :     Feature_IsThumb2 | 0, // t2STC_OPTION = 3053
   14449             :     Feature_IsThumb2 | 0, // t2STC_POST = 3054
   14450             :     Feature_IsThumb2 | 0, // t2STC_PRE = 3055
   14451             :     Feature_IsThumb | Feature_HasAcquireRelease | 0, // t2STL = 3056
   14452             :     Feature_IsThumb | Feature_HasAcquireRelease | 0, // t2STLB = 3057
   14453             :     Feature_IsThumb | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // t2STLEX = 3058
   14454             :     Feature_IsThumb | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // t2STLEXB = 3059
   14455             :     Feature_IsThumb | Feature_HasAcquireRelease | Feature_HasV7Clrex | Feature_IsNotMClass | 0, // t2STLEXD = 3060
   14456             :     Feature_IsThumb | Feature_HasAcquireRelease | Feature_HasV7Clrex | 0, // t2STLEXH = 3061
   14457             :     Feature_IsThumb | Feature_HasAcquireRelease | 0, // t2STLH = 3062
   14458             :     Feature_IsThumb2 | 0, // t2STMDB = 3063
   14459             :     Feature_IsThumb2 | 0, // t2STMDB_UPD = 3064
   14460             :     Feature_IsThumb2 | 0, // t2STMIA = 3065
   14461             :     Feature_IsThumb2 | 0, // t2STMIA_UPD = 3066
   14462             :     Feature_IsThumb2 | 0, // t2STRBT = 3067
   14463             :     Feature_IsThumb2 | 0, // t2STRB_POST = 3068
   14464             :     Feature_IsThumb2 | 0, // t2STRB_PRE = 3069
   14465             :     Feature_IsThumb2 | 0, // t2STRBi12 = 3070
   14466             :     Feature_IsThumb2 | 0, // t2STRBi8 = 3071
   14467             :     Feature_IsThumb2 | 0, // t2STRBs = 3072
   14468             :     Feature_IsThumb2 | 0, // t2STRD_POST = 3073
   14469             :     Feature_IsThumb2 | 0, // t2STRD_PRE = 3074
   14470             :     Feature_IsThumb2 | 0, // t2STRDi8 = 3075
   14471             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2STREX = 3076
   14472             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2STREXB = 3077
   14473             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2STREXD = 3078
   14474             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2STREXH = 3079
   14475             :     Feature_IsThumb2 | 0, // t2STRHT = 3080
   14476             :     Feature_IsThumb2 | 0, // t2STRH_POST = 3081
   14477             :     Feature_IsThumb2 | 0, // t2STRH_PRE = 3082
   14478             :     Feature_IsThumb2 | 0, // t2STRHi12 = 3083
   14479             :     Feature_IsThumb2 | 0, // t2STRHi8 = 3084
   14480             :     Feature_IsThumb2 | 0, // t2STRHs = 3085
   14481             :     Feature_IsThumb2 | 0, // t2STRT = 3086
   14482             :     Feature_IsThumb2 | 0, // t2STR_POST = 3087
   14483             :     Feature_IsThumb2 | 0, // t2STR_PRE = 3088
   14484             :     Feature_IsThumb2 | 0, // t2STRi12 = 3089
   14485             :     Feature_IsThumb2 | 0, // t2STRi8 = 3090
   14486             :     Feature_IsThumb2 | 0, // t2STRs = 3091
   14487             :     Feature_IsThumb2 | Feature_IsNotMClass | 0, // t2SUBS_PC_LR = 3092
   14488             :     Feature_IsThumb2 | 0, // t2SUBri = 3093
   14489             :     Feature_IsThumb2 | 0, // t2SUBri12 = 3094
   14490             :     Feature_IsThumb2 | 0, // t2SUBrr = 3095
   14491             :     Feature_IsThumb2 | 0, // t2SUBrs = 3096
   14492             :     Feature_HasDSP | Feature_IsThumb2 | 0, // t2SXTAB = 3097
   14493             :     Feature_HasDSP | Feature_IsThumb2 | 0, // t2SXTAB16 = 3098
   14494             :     Feature_HasDSP | Feature_IsThumb2 | 0, // t2SXTAH = 3099
   14495             :     Feature_IsThumb2 | 0, // t2SXTB = 3100
   14496             :     Feature_HasDSP | Feature_IsThumb2 | 0, // t2SXTB16 = 3101
   14497             :     Feature_IsThumb2 | 0, // t2SXTH = 3102
   14498             :     Feature_IsThumb2 | 0, // t2TBB = 3103
   14499             :     Feature_IsThumb2 | 0, // t2TBH = 3104
   14500             :     Feature_IsThumb2 | 0, // t2TEQri = 3105
   14501             :     Feature_IsThumb2 | 0, // t2TEQrr = 3106
   14502             :     Feature_IsThumb2 | 0, // t2TEQrs = 3107
   14503             :     Feature_IsThumb | Feature_HasV8_4a | 0, // t2TSB = 3108
   14504             :     Feature_IsThumb2 | 0, // t2TSTri = 3109
   14505             :     Feature_IsThumb2 | 0, // t2TSTrr = 3110
   14506             :     Feature_IsThumb2 | 0, // t2TSTrs = 3111
   14507             :     Feature_IsThumb | Feature_Has8MSecExt | 0, // t2TT = 3112
   14508             :     Feature_IsThumb | Feature_Has8MSecExt | 0, // t2TTA = 3113
   14509             :     Feature_IsThumb | Feature_Has8MSecExt | 0, // t2TTAT = 3114
   14510             :     Feature_IsThumb | Feature_Has8MSecExt | 0, // t2TTT = 3115
   14511             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UADD16 = 3116
   14512             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UADD8 = 3117
   14513             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UASX = 3118
   14514             :     Feature_IsThumb2 | 0, // t2UBFX = 3119
   14515             :     Feature_IsThumb2 | 0, // t2UDF = 3120
   14516             :     Feature_HasDivideInThumb | Feature_IsThumb | Feature_HasV8MBaseline | 0, // t2UDIV = 3121
   14517             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UHADD16 = 3122
   14518             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UHADD8 = 3123
   14519             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UHASX = 3124
   14520             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UHSAX = 3125
   14521             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UHSUB16 = 3126
   14522             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UHSUB8 = 3127
   14523             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UMAAL = 3128
   14524             :     Feature_IsThumb2 | 0, // t2UMLAL = 3129
   14525             :     Feature_IsThumb2 | 0, // t2UMULL = 3130
   14526             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UQADD16 = 3131
   14527             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UQADD8 = 3132
   14528             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UQASX = 3133
   14529             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UQSAX = 3134
   14530             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UQSUB16 = 3135
   14531             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2UQSUB8 = 3136
   14532             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2USAD8 = 3137
   14533             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2USADA8 = 3138
   14534             :     Feature_IsThumb2 | 0, // t2USAT = 3139
   14535             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2USAT16 = 3140
   14536             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2USAX = 3141
   14537             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2USUB16 = 3142
   14538             :     Feature_IsThumb2 | Feature_HasDSP | 0, // t2USUB8 = 3143
   14539             :     Feature_HasDSP | Feature_IsThumb2 | 0, // t2UXTAB = 3144
   14540             :     Feature_HasDSP | Feature_IsThumb2 | 0, // t2UXTAB16 = 3145
   14541             :     Feature_HasDSP | Feature_IsThumb2 | 0, // t2UXTAH = 3146
   14542             :     Feature_IsThumb2 | 0, // t2UXTB = 3147
   14543             :     Feature_HasDSP | Feature_IsThumb2 | 0, // t2UXTB16 = 3148
   14544             :     Feature_IsThumb2 | 0, // t2UXTH = 3149
   14545             :     Feature_IsThumb | 0, // tADC = 3150
   14546             :     Feature_IsThumb | 0, // tADDhirr = 3151
   14547             :     Feature_IsThumb | 0, // tADDi3 = 3152
   14548             :     Feature_IsThumb | 0, // tADDi8 = 3153
   14549             :     Feature_IsThumb | 0, // tADDrSP = 3154
   14550             :     Feature_IsThumb | 0, // tADDrSPi = 3155
   14551             :     Feature_IsThumb | 0, // tADDrr = 3156
   14552             :     Feature_IsThumb | 0, // tADDspi = 3157
   14553             :     Feature_IsThumb | 0, // tADDspr = 3158
   14554             :     Feature_IsThumb | 0, // tADR = 3159
   14555             :     Feature_IsThumb | 0, // tAND = 3160
   14556             :     Feature_IsThumb | 0, // tASRri = 3161
   14557             :     Feature_IsThumb | 0, // tASRrr = 3162
   14558             :     Feature_IsThumb | 0, // tB = 3163
   14559             :     Feature_IsThumb | 0, // tBIC = 3164
   14560             :     Feature_IsThumb | 0, // tBKPT = 3165
   14561             :     Feature_IsThumb | 0, // tBL = 3166
   14562             :     Feature_IsThumb | Feature_Has8MSecExt | 0, // tBLXNSr = 3167
   14563             :     Feature_IsThumb | Feature_HasV5T | Feature_IsNotMClass | 0, // tBLXi = 3168
   14564             :     Feature_IsThumb | Feature_HasV5T | 0, // tBLXr = 3169
   14565             :     Feature_IsThumb | 0, // tBX = 3170
   14566             :     Feature_IsThumb | Feature_Has8MSecExt | 0, // tBXNS = 3171
   14567             :     Feature_IsThumb | 0, // tBcc = 3172
   14568             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // tCBNZ = 3173
   14569             :     Feature_IsThumb | Feature_HasV8MBaseline | 0, // tCBZ = 3174
   14570             :     Feature_IsThumb | 0, // tCMNz = 3175
   14571             :     Feature_IsThumb | 0, // tCMPhir = 3176
   14572             :     Feature_IsThumb | 0, // tCMPi8 = 3177
   14573             :     Feature_IsThumb | 0, // tCMPr = 3178
   14574             :     Feature_IsThumb | 0, // tCPS = 3179
   14575             :     Feature_IsThumb | 0, // tEOR = 3180
   14576             :     Feature_IsThumb | Feature_HasV6M | 0, // tHINT = 3181
   14577             :     Feature_IsThumb | Feature_HasV8 | 0, // tHLT = 3182
   14578             :     Feature_IsThumb | 0, // tInt_WIN_eh_sjlj_longjmp = 3183
   14579             :     Feature_IsThumb | 0, // tInt_eh_sjlj_longjmp = 3184
   14580             :     Feature_IsThumb | 0, // tInt_eh_sjlj_setjmp = 3185
   14581             :     Feature_IsThumb | 0, // tLDMIA = 3186
   14582             :     Feature_IsThumb | 0, // tLDRBi = 3187
   14583             :     Feature_IsThumb | 0, // tLDRBr = 3188
   14584             :     Feature_IsThumb | 0, // tLDRHi = 3189
   14585             :     Feature_IsThumb | 0, // tLDRHr = 3190
   14586             :     Feature_IsThumb | 0, // tLDRSB = 3191
   14587             :     Feature_IsThumb | 0, // tLDRSH = 3192
   14588             :     Feature_IsThumb | 0, // tLDRi = 3193
   14589             :     Feature_IsThumb | 0, // tLDRpci = 3194
   14590             :     Feature_IsThumb | 0, // tLDRr = 3195
   14591             :     Feature_IsThumb | 0, // tLDRspi = 3196
   14592             :     Feature_IsThumb | 0, // tLSLri = 3197
   14593             :     Feature_IsThumb | 0, // tLSLrr = 3198
   14594             :     Feature_IsThumb | 0, // tLSRri = 3199
   14595             :     Feature_IsThumb | 0, // tLSRrr = 3200
   14596             :     Feature_IsThumb | 0, // tMOVSr = 3201
   14597             :     Feature_IsThumb | 0, // tMOVi8 = 3202
   14598             :     Feature_IsThumb | 0, // tMOVr = 3203
   14599             :     Feature_IsThumb | 0, // tMUL = 3204
   14600             :     Feature_IsThumb | 0, // tMVN = 3205
   14601             :     Feature_IsThumb | 0, // tORR = 3206
   14602             :     Feature_IsThumb | 0, // tPICADD = 3207
   14603             :     Feature_IsThumb | 0, // tPOP = 3208
   14604             :     Feature_IsThumb | 0, // tPUSH = 3209
   14605             :     Feature_IsThumb | Feature_HasV6 | 0, // tREV = 3210
   14606             :     Feature_IsThumb | Feature_HasV6 | 0, // tREV16 = 3211
   14607             :     Feature_IsThumb | Feature_HasV6 | 0, // tREVSH = 3212
   14608             :     Feature_IsThumb | 0, // tROR = 3213
   14609             :     Feature_IsThumb | 0, // tRSB = 3214
   14610             :     Feature_IsThumb | 0, // tSBC = 3215
   14611             :     Feature_IsThumb | Feature_IsNotMClass | 0, // tSETEND = 3216
   14612             :     Feature_IsThumb | 0, // tSTMIA_UPD = 3217
   14613             :     Feature_IsThumb | 0, // tSTRBi = 3218
   14614             :     Feature_IsThumb | 0, // tSTRBr = 3219
   14615             :     Feature_IsThumb | 0, // tSTRHi = 3220
   14616             :     Feature_IsThumb | 0, // tSTRHr = 3221
   14617             :     Feature_IsThumb | 0, // tSTRi = 3222
   14618             :     Feature_IsThumb | 0, // tSTRr = 3223
   14619             :     Feature_IsThumb | 0, // tSTRspi = 3224
   14620             :     Feature_IsThumb | 0, // tSUBi3 = 3225
   14621             :     Feature_IsThumb | 0, // tSUBi8 = 3226
   14622             :     Feature_IsThumb | 0, // tSUBrr = 3227
   14623             :     Feature_IsThumb | 0, // tSUBspi = 3228
   14624             :     Feature_IsThumb | 0, // tSVC = 3229
   14625             :     Feature_IsThumb | Feature_HasV6 | 0, // tSXTB = 3230
   14626             :     Feature_IsThumb | Feature_HasV6 | 0, // tSXTH = 3231
   14627             :     Feature_IsThumb | 0, // tTRAP = 3232
   14628             :     Feature_IsThumb | 0, // tTST = 3233
   14629             :     Feature_IsThumb | 0, // tUDF = 3234
   14630             :     Feature_IsThumb | Feature_HasV6 | 0, // tUXTB = 3235
   14631             :     Feature_IsThumb | Feature_HasV6 | 0, // tUXTH = 3236
   14632             :     Feature_IsThumb | 0, // t__brkdiv0 = 3237
   14633             :   };
   14634             : 
   14635             :   assert(Inst.getOpcode() < 3238);
   14636             :   uint64_t MissingFeatures =
   14637             :       (AvailableFeatures & RequiredFeatures[Inst.getOpcode()]) ^
   14638             :       RequiredFeatures[Inst.getOpcode()];
   14639             :   if (MissingFeatures) {
   14640             :     std::ostringstream Msg;
   14641             :     Msg << "Attempting to emit " << MCII.getName(Inst.getOpcode()).str()
   14642             :         << " instruction but the ";
   14643             :     for (unsigned i = 0; i < 8 * sizeof(MissingFeatures); ++i)
   14644             :       if (MissingFeatures & (1ULL << i))
   14645             :         Msg << SubtargetFeatureNames[i] << " ";
   14646             :     Msg << "predicate(s) are not met";
   14647             :     report_fatal_error(Msg.str());
   14648             :   }
   14649             : #else
   14650             : // Silence unused variable warning on targets that don't use MCII for other purposes (e.g. BPF).
   14651             : (void)MCII;
   14652             : #endif // NDEBUG
   14653             : }
   14654             : #endif

Generated by: LCOV version 1.13