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: 3445 3509 98.2 %
Date: 2018-07-13 00:08:38 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       41655 : 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(44040192), // ADCri
     546             :     UINT64_C(10485760), // ADCrr
     547             :     UINT64_C(10485760), // ADCrsi
     548             :     UINT64_C(10485776), // ADCrsr
     549             :     UINT64_C(41943040), // ADDri
     550             :     UINT64_C(8388608),  // ADDrr
     551             :     UINT64_C(8388608),  // ADDrsi
     552             :     UINT64_C(8388624),  // ADDrsr
     553             :     UINT64_C(34537472), // ADR
     554             :     UINT64_C(4088398656),       // AESD
     555             :     UINT64_C(4088398592),       // AESE
     556             :     UINT64_C(4088398784),       // AESIMC
     557             :     UINT64_C(4088398720),       // AESMC
     558             :     UINT64_C(33554432), // ANDri
     559             :     UINT64_C(0),        // ANDrr
     560             :     UINT64_C(0),        // ANDrsi
     561             :     UINT64_C(16),       // ANDrsr
     562             :     UINT64_C(130023455),        // BFC
     563             :     UINT64_C(130023440),        // BFI
     564             :     UINT64_C(62914560), // BICri
     565             :     UINT64_C(29360128), // BICrr
     566             :     UINT64_C(29360128), // BICrsi
     567             :     UINT64_C(29360144), // BICrsr
     568             :     UINT64_C(3776970864),       // BKPT
     569             :     UINT64_C(3942645760),       // BL
     570             :     UINT64_C(3778019120),       // BLX
     571             :     UINT64_C(19922736), // BLX_pred
     572             :     UINT64_C(4194304000),       // BLXi
     573             :     UINT64_C(184549376),        // BL_pred
     574             :     UINT64_C(3778019088),       // BX
     575             :     UINT64_C(19922720), // BXJ
     576             :     UINT64_C(19922718), // BX_RET
     577             :     UINT64_C(19922704), // BX_pred
     578             :     UINT64_C(167772160),        // Bcc
     579             :     UINT64_C(234881024),        // CDP
     580             :     UINT64_C(4261412864),       // CDP2
     581             :     UINT64_C(4118802463),       // CLREX
     582             :     UINT64_C(24055568), // CLZ
     583             :     UINT64_C(57671680), // CMNri
     584             :     UINT64_C(24117248), // CMNzrr
     585             :     UINT64_C(24117248), // CMNzrsi
     586             :     UINT64_C(24117264), // CMNzrsr
     587             :     UINT64_C(55574528), // CMPri
     588             :     UINT64_C(22020096), // CMPrr
     589             :     UINT64_C(22020096), // CMPrsi
     590             :     UINT64_C(22020112), // CMPrsr
     591             :     UINT64_C(4043440128),       // CPS1p
     592             :     UINT64_C(4043309056),       // CPS2p
     593             :     UINT64_C(4043440128),       // CPS3p
     594             :     UINT64_C(3774873664),       // CRC32B
     595             :     UINT64_C(3774874176),       // CRC32CB
     596             :     UINT64_C(3776971328),       // CRC32CH
     597             :     UINT64_C(3779068480),       // CRC32CW
     598             :     UINT64_C(3776970816),       // CRC32H
     599             :     UINT64_C(3779067968),       // CRC32W
     600             :     UINT64_C(52490480), // DBG
     601             :     UINT64_C(4118802512),       // DMB
     602             :     UINT64_C(4118802496),       // DSB
     603             :     UINT64_C(35651584), // EORri
     604             :     UINT64_C(2097152),  // EORrr
     605             :     UINT64_C(2097152),  // EORrsi
     606             :     UINT64_C(2097168),  // EORrsr
     607             :     UINT64_C(23068782), // ERET
     608             :     UINT64_C(246418176),        // FCONSTD
     609             :     UINT64_C(246417664),        // FCONSTH
     610             :     UINT64_C(246417920),        // FCONSTS
     611             :     UINT64_C(221252353),        // FLDMXDB_UPD
     612             :     UINT64_C(210766593),        // FLDMXIA
     613             :     UINT64_C(212863745),        // FLDMXIA_UPD
     614             :     UINT64_C(250739216),        // FMSTAT
     615             :     UINT64_C(220203777),        // FSTMXDB_UPD
     616             :     UINT64_C(209718017),        // FSTMXIA
     617             :     UINT64_C(211815169),        // FSTMXIA_UPD
     618             :     UINT64_C(52490240), // HINT
     619             :     UINT64_C(3774873712),       // HLT
     620             :     UINT64_C(3779068016),       // HVC
     621             :     UINT64_C(4118802528),       // ISB
     622             :     UINT64_C(26217631), // LDA
     623             :     UINT64_C(30411935), // LDAB
     624             :     UINT64_C(26218143), // LDAEX
     625             :     UINT64_C(30412447), // LDAEXB
     626             :     UINT64_C(28315295), // LDAEXD
     627             :     UINT64_C(32509599), // LDAEXH
     628             :     UINT64_C(32509087), // LDAH
     629             :     UINT64_C(4249878528),       // LDC2L_OFFSET
     630             :     UINT64_C(4241489920),       // LDC2L_OPTION
     631             :     UINT64_C(4235198464),       // LDC2L_POST
     632             :     UINT64_C(4251975680),       // LDC2L_PRE
     633             :     UINT64_C(4245684224),       // LDC2_OFFSET
     634             :     UINT64_C(4237295616),       // LDC2_OPTION
     635             :     UINT64_C(4231004160),       // LDC2_POST
     636             :     UINT64_C(4247781376),       // LDC2_PRE
     637             :     UINT64_C(223346688),        // LDCL_OFFSET
     638             :     UINT64_C(214958080),        // LDCL_OPTION
     639             :     UINT64_C(208666624),        // LDCL_POST
     640             :     UINT64_C(225443840),        // LDCL_PRE
     641             :     UINT64_C(219152384),        // LDC_OFFSET
     642             :     UINT64_C(210763776),        // LDC_OPTION
     643             :     UINT64_C(204472320),        // LDC_POST
     644             :     UINT64_C(221249536),        // LDC_PRE
     645             :     UINT64_C(135266304),        // LDMDA
     646             :     UINT64_C(137363456),        // LDMDA_UPD
     647             :     UINT64_C(152043520),        // LDMDB
     648             :     UINT64_C(154140672),        // LDMDB_UPD
     649             :     UINT64_C(143654912),        // LDMIA
     650             :     UINT64_C(145752064),        // LDMIA_UPD
     651             :     UINT64_C(160432128),        // LDMIB
     652             :     UINT64_C(162529280),        // LDMIB_UPD
     653             :     UINT64_C(74448896), // LDRBT_POST_IMM
     654             :     UINT64_C(108003328),        // LDRBT_POST_REG
     655             :     UINT64_C(72351744), // LDRB_POST_IMM
     656             :     UINT64_C(105906176),        // LDRB_POST_REG
     657             :     UINT64_C(91226112), // LDRB_PRE_IMM
     658             :     UINT64_C(124780544),        // LDRB_PRE_REG
     659             :     UINT64_C(89128960), // LDRBi12
     660             :     UINT64_C(122683392),        // LDRBrs
     661             :     UINT64_C(16777424), // LDRD
     662             :     UINT64_C(208),      // LDRD_POST
     663             :     UINT64_C(18874576), // LDRD_PRE
     664             :     UINT64_C(26218399), // LDREX
     665             :     UINT64_C(30412703), // LDREXB
     666             :     UINT64_C(28315551), // LDREXD
     667             :     UINT64_C(32509855), // LDREXH
     668             :     UINT64_C(17825968), // LDRH
     669             :     UINT64_C(7340208),  // LDRHTi
     670             :     UINT64_C(3145904),  // LDRHTr
     671             :     UINT64_C(1048752),  // LDRH_POST
     672             :     UINT64_C(19923120), // LDRH_PRE
     673             :     UINT64_C(17826000), // LDRSB
     674             :     UINT64_C(7340240),  // LDRSBTi
     675             :     UINT64_C(3145936),  // LDRSBTr
     676             :     UINT64_C(1048784),  // LDRSB_POST
     677             :     UINT64_C(19923152), // LDRSB_PRE
     678             :     UINT64_C(17826032), // LDRSH
     679             :     UINT64_C(7340272),  // LDRSHTi
     680             :     UINT64_C(3145968),  // LDRSHTr
     681             :     UINT64_C(1048816),  // LDRSH_POST
     682             :     UINT64_C(19923184), // LDRSH_PRE
     683             :     UINT64_C(70254592), // LDRT_POST_IMM
     684             :     UINT64_C(103809024),        // LDRT_POST_REG
     685             :     UINT64_C(68157440), // LDR_POST_IMM
     686             :     UINT64_C(101711872),        // LDR_POST_REG
     687             :     UINT64_C(87031808), // LDR_PRE_IMM
     688             :     UINT64_C(120586240),        // LDR_PRE_REG
     689             :     UINT64_C(85917696), // LDRcp
     690             :     UINT64_C(84934656), // LDRi12
     691             :     UINT64_C(118489088),        // LDRrs
     692             :     UINT64_C(234881040),        // MCR
     693             :     UINT64_C(4261412880),       // MCR2
     694             :     UINT64_C(205520896),        // MCRR
     695             :     UINT64_C(4232052736),       // MCRR2
     696             :     UINT64_C(2097296),  // MLA
     697             :     UINT64_C(6291600),  // MLS
     698             :     UINT64_C(27324430), // MOVPCLR
     699             :     UINT64_C(54525952), // MOVTi16
     700             :     UINT64_C(60817408), // MOVi
     701             :     UINT64_C(50331648), // MOVi16
     702             :     UINT64_C(27262976), // MOVr
     703             :     UINT64_C(27262976), // MOVr_TC
     704             :     UINT64_C(27262976), // MOVsi
     705             :     UINT64_C(27262992), // MOVsr
     706             :     UINT64_C(235929616),        // MRC
     707             :     UINT64_C(4262461456),       // MRC2
     708             :     UINT64_C(206569472),        // MRRC
     709             :     UINT64_C(4233101312),       // MRRC2
     710             :     UINT64_C(17760256), // MRS
     711             :     UINT64_C(16777728), // MRSbanked
     712             :     UINT64_C(21954560), // MRSsys
     713             :     UINT64_C(18935808), // MSR
     714             :     UINT64_C(18936320), // MSRbanked
     715             :     UINT64_C(52490240), // MSRi
     716             :     UINT64_C(144),      // MUL
     717             :     UINT64_C(65011712), // MVNi
     718             :     UINT64_C(31457280), // MVNr
     719             :     UINT64_C(31457280), // MVNsi
     720             :     UINT64_C(31457296), // MVNsr
     721             :     UINT64_C(58720256), // ORRri
     722             :     UINT64_C(25165824), // ORRrr
     723             :     UINT64_C(25165824), // ORRrsi
     724             :     UINT64_C(25165840), // ORRrsr
     725             :     UINT64_C(109051920),        // PKHBT
     726             :     UINT64_C(109051984),        // PKHTB
     727             :     UINT64_C(4111527936),       // PLDWi12
     728             :     UINT64_C(4145082368),       // PLDWrs
     729             :     UINT64_C(4115722240),       // PLDi12
     730             :     UINT64_C(4149276672),       // PLDrs
     731             :     UINT64_C(4098945024),       // PLIi12
     732             :     UINT64_C(4132499456),       // PLIrs
     733             :     UINT64_C(16777296), // QADD
     734             :     UINT64_C(102764304),        // QADD16
     735             :     UINT64_C(102764432),        // QADD8
     736             :     UINT64_C(102764336),        // QASX
     737             :     UINT64_C(20971600), // QDADD
     738             :     UINT64_C(23068752), // QDSUB
     739             :     UINT64_C(102764368),        // QSAX
     740             :     UINT64_C(18874448), // QSUB
     741             :     UINT64_C(102764400),        // QSUB16
     742             :     UINT64_C(102764528),        // QSUB8
     743             :     UINT64_C(117378864),        // RBIT
     744             :     UINT64_C(113184560),        // REV
     745             :     UINT64_C(113184688),        // REV16
     746             :     UINT64_C(117378992),        // REVSH
     747             :     UINT64_C(4161800704),       // RFEDA
     748             :     UINT64_C(4163897856),       // RFEDA_UPD
     749             :     UINT64_C(4178577920),       // RFEDB
     750             :     UINT64_C(4180675072),       // RFEDB_UPD
     751             :     UINT64_C(4170189312),       // RFEIA
     752             :     UINT64_C(4172286464),       // RFEIA_UPD
     753             :     UINT64_C(4186966528),       // RFEIB
     754             :     UINT64_C(4189063680),       // RFEIB_UPD
     755             :     UINT64_C(39845888), // RSBri
     756             :     UINT64_C(6291456),  // RSBrr
     757             :     UINT64_C(6291456),  // RSBrsi
     758             :     UINT64_C(6291472),  // RSBrsr
     759             :     UINT64_C(48234496), // RSCri
     760             :     UINT64_C(14680064), // RSCrr
     761             :     UINT64_C(14680064), // RSCrsi
     762             :     UINT64_C(14680080), // RSCrsr
     763             :     UINT64_C(101715728),        // SADD16
     764             :     UINT64_C(101715856),        // SADD8
     765             :     UINT64_C(101715760),        // SASX
     766             :     UINT64_C(46137344), // SBCri
     767             :     UINT64_C(12582912), // SBCrr
     768             :     UINT64_C(12582912), // SBCrsi
     769             :     UINT64_C(12582928), // SBCrsr
     770             :     UINT64_C(127926352),        // SBFX
     771             :     UINT64_C(118550544),        // SDIV
     772             :     UINT64_C(109055920),        // SEL
     773             :     UINT64_C(4043374592),       // SETEND
     774             :     UINT64_C(4044357632),       // SETPAN
     775             :     UINT64_C(4060089408),       // SHA1C
     776             :     UINT64_C(4088988352),       // SHA1H
     777             :     UINT64_C(4062186560),       // SHA1M
     778             :     UINT64_C(4061137984),       // SHA1P
     779             :     UINT64_C(4063235136),       // SHA1SU0
     780             :     UINT64_C(4089054080),       // SHA1SU1
     781             :     UINT64_C(4076866624),       // SHA256H
     782             :     UINT64_C(4077915200),       // SHA256H2
     783             :     UINT64_C(4089054144),       // SHA256SU0
     784             :     UINT64_C(4078963776),       // SHA256SU1
     785             :     UINT64_C(103812880),        // SHADD16
     786             :     UINT64_C(103813008),        // SHADD8
     787             :     UINT64_C(103812912),        // SHASX
     788             :     UINT64_C(103812944),        // SHSAX
     789             :     UINT64_C(103812976),        // SHSUB16
     790             :     UINT64_C(103813104),        // SHSUB8
     791             :     UINT64_C(23068784), // SMC
     792             :     UINT64_C(16777344), // SMLABB
     793             :     UINT64_C(16777408), // SMLABT
     794             :     UINT64_C(117440528),        // SMLAD
     795             :     UINT64_C(117440560),        // SMLADX
     796             :     UINT64_C(14680208), // SMLAL
     797             :     UINT64_C(20971648), // SMLALBB
     798             :     UINT64_C(20971712), // SMLALBT
     799             :     UINT64_C(121634832),        // SMLALD
     800             :     UINT64_C(121634864),        // SMLALDX
     801             :     UINT64_C(20971680), // SMLALTB
     802             :     UINT64_C(20971744), // SMLALTT
     803             :     UINT64_C(16777376), // SMLATB
     804             :     UINT64_C(16777440), // SMLATT
     805             :     UINT64_C(18874496), // SMLAWB
     806             :     UINT64_C(18874560), // SMLAWT
     807             :     UINT64_C(117440592),        // SMLSD
     808             :     UINT64_C(117440624),        // SMLSDX
     809             :     UINT64_C(121634896),        // SMLSLD
     810             :     UINT64_C(121634928),        // SMLSLDX
     811             :     UINT64_C(122683408),        // SMMLA
     812             :     UINT64_C(122683440),        // SMMLAR
     813             :     UINT64_C(122683600),        // SMMLS
     814             :     UINT64_C(122683632),        // SMMLSR
     815             :     UINT64_C(122744848),        // SMMUL
     816             :     UINT64_C(122744880),        // SMMULR
     817             :     UINT64_C(117501968),        // SMUAD
     818             :     UINT64_C(117502000),        // SMUADX
     819             :     UINT64_C(23068800), // SMULBB
     820             :     UINT64_C(23068864), // SMULBT
     821             :     UINT64_C(12583056), // SMULL
     822             :     UINT64_C(23068832), // SMULTB
     823             :     UINT64_C(23068896), // SMULTT
     824             :     UINT64_C(18874528), // SMULWB
     825             :     UINT64_C(18874592), // SMULWT
     826             :     UINT64_C(117502032),        // SMUSD
     827             :     UINT64_C(117502064),        // SMUSDX
     828             :     UINT64_C(4165797120),       // SRSDA
     829             :     UINT64_C(4167894272),       // SRSDA_UPD
     830             :     UINT64_C(4182574336),       // SRSDB
     831             :     UINT64_C(4184671488),       // SRSDB_UPD
     832             :     UINT64_C(4174185728),       // SRSIA
     833             :     UINT64_C(4176282880),       // SRSIA_UPD
     834             :     UINT64_C(4190962944),       // SRSIB
     835             :     UINT64_C(4193060096),       // SRSIB_UPD
     836             :     UINT64_C(111149072),        // SSAT
     837             :     UINT64_C(111152944),        // SSAT16
     838             :     UINT64_C(101715792),        // SSAX
     839             :     UINT64_C(101715824),        // SSUB16
     840             :     UINT64_C(101715952),        // SSUB8
     841             :     UINT64_C(4248829952),       // STC2L_OFFSET
     842             :     UINT64_C(4240441344),       // STC2L_OPTION
     843             :     UINT64_C(4234149888),       // STC2L_POST
     844             :     UINT64_C(4250927104),       // STC2L_PRE
     845             :     UINT64_C(4244635648),       // STC2_OFFSET
     846             :     UINT64_C(4236247040),       // STC2_OPTION
     847             :     UINT64_C(4229955584),       // STC2_POST
     848             :     UINT64_C(4246732800),       // STC2_PRE
     849             :     UINT64_C(222298112),        // STCL_OFFSET
     850             :     UINT64_C(213909504),        // STCL_OPTION
     851             :     UINT64_C(207618048),        // STCL_POST
     852             :     UINT64_C(224395264),        // STCL_PRE
     853             :     UINT64_C(218103808),        // STC_OFFSET
     854             :     UINT64_C(209715200),        // STC_OPTION
     855             :     UINT64_C(203423744),        // STC_POST
     856             :     UINT64_C(220200960),        // STC_PRE
     857             :     UINT64_C(25230480), // STL
     858             :     UINT64_C(29424784), // STLB
     859             :     UINT64_C(25169552), // STLEX
     860             :     UINT64_C(29363856), // STLEXB
     861             :     UINT64_C(27266704), // STLEXD
     862             :     UINT64_C(31461008), // STLEXH
     863             :     UINT64_C(31521936), // STLH
     864             :     UINT64_C(134217728),        // STMDA
     865             :     UINT64_C(136314880),        // STMDA_UPD
     866             :     UINT64_C(150994944),        // STMDB
     867             :     UINT64_C(153092096),        // STMDB_UPD
     868             :     UINT64_C(142606336),        // STMIA
     869             :     UINT64_C(144703488),        // STMIA_UPD
     870             :     UINT64_C(159383552),        // STMIB
     871             :     UINT64_C(161480704),        // STMIB_UPD
     872             :     UINT64_C(73400320), // STRBT_POST_IMM
     873             :     UINT64_C(106954752),        // STRBT_POST_REG
     874             :     UINT64_C(71303168), // STRB_POST_IMM
     875             :     UINT64_C(104857600),        // STRB_POST_REG
     876             :     UINT64_C(90177536), // STRB_PRE_IMM
     877             :     UINT64_C(123731968),        // STRB_PRE_REG
     878             :     UINT64_C(88080384), // STRBi12
     879             :     UINT64_C(121634816),        // STRBrs
     880             :     UINT64_C(16777456), // STRD
     881             :     UINT64_C(240),      // STRD_POST
     882             :     UINT64_C(18874608), // STRD_PRE
     883             :     UINT64_C(25169808), // STREX
     884             :     UINT64_C(29364112), // STREXB
     885             :     UINT64_C(27266960), // STREXD
     886             :     UINT64_C(31461264), // STREXH
     887             :     UINT64_C(16777392), // STRH
     888             :     UINT64_C(6291632),  // STRHTi
     889             :     UINT64_C(2097328),  // STRHTr
     890             :     UINT64_C(176),      // STRH_POST
     891             :     UINT64_C(18874544), // STRH_PRE
     892             :     UINT64_C(69206016), // STRT_POST_IMM
     893             :     UINT64_C(102760448),        // STRT_POST_REG
     894             :     UINT64_C(67108864), // STR_POST_IMM
     895             :     UINT64_C(100663296),        // STR_POST_REG
     896             :     UINT64_C(85983232), // STR_PRE_IMM
     897             :     UINT64_C(119537664),        // STR_PRE_REG
     898             :     UINT64_C(83886080), // STRi12
     899             :     UINT64_C(117440512),        // STRrs
     900             :     UINT64_C(37748736), // SUBri
     901             :     UINT64_C(4194304),  // SUBrr
     902             :     UINT64_C(4194304),  // SUBrsi
     903             :     UINT64_C(4194320),  // SUBrsr
     904             :     UINT64_C(251658240),        // SVC
     905             :     UINT64_C(16777360), // SWP
     906             :     UINT64_C(20971664), // SWPB
     907             :     UINT64_C(111149168),        // SXTAB
     908             :     UINT64_C(109052016),        // SXTAB16
     909             :     UINT64_C(112197744),        // SXTAH
     910             :     UINT64_C(112132208),        // SXTB
     911             :     UINT64_C(110035056),        // SXTB16
     912             :     UINT64_C(113180784),        // SXTH
     913             :     UINT64_C(53477376), // TEQri
     914             :     UINT64_C(19922944), // TEQrr
     915             :     UINT64_C(19922944), // TEQrsi
     916             :     UINT64_C(19922960), // TEQrsr
     917             :     UINT64_C(3892305662),       // TRAP
     918             :     UINT64_C(3892240112),       // TRAPNaCl
     919             :     UINT64_C(3810586642),       // TSB
     920             :     UINT64_C(51380224), // TSTri
     921             :     UINT64_C(17825792), // TSTrr
     922             :     UINT64_C(17825792), // TSTrsi
     923             :     UINT64_C(17825808), // TSTrsr
     924             :     UINT64_C(105910032),        // UADD16
     925             :     UINT64_C(105910160),        // UADD8
     926             :     UINT64_C(105910064),        // UASX
     927             :     UINT64_C(132120656),        // UBFX
     928             :     UINT64_C(3891265776),       // UDF
     929             :     UINT64_C(120647696),        // UDIV
     930             :     UINT64_C(108007184),        // UHADD16
     931             :     UINT64_C(108007312),        // UHADD8
     932             :     UINT64_C(108007216),        // UHASX
     933             :     UINT64_C(108007248),        // UHSAX
     934             :     UINT64_C(108007280),        // UHSUB16
     935             :     UINT64_C(108007408),        // UHSUB8
     936             :     UINT64_C(4194448),  // UMAAL
     937             :     UINT64_C(10485904), // UMLAL
     938             :     UINT64_C(8388752),  // UMULL
     939             :     UINT64_C(106958608),        // UQADD16
     940             :     UINT64_C(106958736),        // UQADD8
     941             :     UINT64_C(106958640),        // UQASX
     942             :     UINT64_C(106958672),        // UQSAX
     943             :     UINT64_C(106958704),        // UQSUB16
     944             :     UINT64_C(106958832),        // UQSUB8
     945             :     UINT64_C(125890576),        // USAD8
     946             :     UINT64_C(125829136),        // USADA8
     947             :     UINT64_C(115343376),        // USAT
     948             :     UINT64_C(115347248),        // USAT16
     949             :     UINT64_C(105910096),        // USAX
     950             :     UINT64_C(105910128),        // USUB16
     951             :     UINT64_C(105910256),        // USUB8
     952             :     UINT64_C(115343472),        // UXTAB
     953             :     UINT64_C(113246320),        // UXTAB16
     954             :     UINT64_C(116392048),        // UXTAH
     955             :     UINT64_C(116326512),        // UXTB
     956             :     UINT64_C(114229360),        // UXTB16
     957             :     UINT64_C(117375088),        // UXTH
     958             :     UINT64_C(4070573312),       // VABALsv2i64
     959             :     UINT64_C(4069524736),       // VABALsv4i32
     960             :     UINT64_C(4068476160),       // VABALsv8i16
     961             :     UINT64_C(4087350528),       // VABALuv2i64
     962             :     UINT64_C(4086301952),       // VABALuv4i32
     963             :     UINT64_C(4085253376),       // VABALuv8i16
     964             :     UINT64_C(4060088144),       // VABAsv16i8
     965             :     UINT64_C(4062185232),       // VABAsv2i32
     966             :     UINT64_C(4061136656),       // VABAsv4i16
     967             :     UINT64_C(4062185296),       // VABAsv4i32
     968             :     UINT64_C(4061136720),       // VABAsv8i16
     969             :     UINT64_C(4060088080),       // VABAsv8i8
     970             :     UINT64_C(4076865360),       // VABAuv16i8
     971             :     UINT64_C(4078962448),       // VABAuv2i32
     972             :     UINT64_C(4077913872),       // VABAuv4i16
     973             :     UINT64_C(4078962512),       // VABAuv4i32
     974             :     UINT64_C(4077913936),       // VABAuv8i16
     975             :     UINT64_C(4076865296),       // VABAuv8i8
     976             :     UINT64_C(4070573824),       // VABDLsv2i64
     977             :     UINT64_C(4069525248),       // VABDLsv4i32
     978             :     UINT64_C(4068476672),       // VABDLsv8i16
     979             :     UINT64_C(4087351040),       // VABDLuv2i64
     980             :     UINT64_C(4086302464),       // VABDLuv4i32
     981             :     UINT64_C(4085253888),       // VABDLuv8i16
     982             :     UINT64_C(4078963968),       // VABDfd
     983             :     UINT64_C(4078964032),       // VABDfq
     984             :     UINT64_C(4080012544),       // VABDhd
     985             :     UINT64_C(4080012608),       // VABDhq
     986             :     UINT64_C(4060088128),       // VABDsv16i8
     987             :     UINT64_C(4062185216),       // VABDsv2i32
     988             :     UINT64_C(4061136640),       // VABDsv4i16
     989             :     UINT64_C(4062185280),       // VABDsv4i32
     990             :     UINT64_C(4061136704),       // VABDsv8i16
     991             :     UINT64_C(4060088064),       // VABDsv8i8
     992             :     UINT64_C(4076865344),       // VABDuv16i8
     993             :     UINT64_C(4078962432),       // VABDuv2i32
     994             :     UINT64_C(4077913856),       // VABDuv4i16
     995             :     UINT64_C(4078962496),       // VABDuv4i32
     996             :     UINT64_C(4077913920),       // VABDuv8i16
     997             :     UINT64_C(4076865280),       // VABDuv8i8
     998             :     UINT64_C(246418368),        // VABSD
     999             :     UINT64_C(246417856),        // VABSH
    1000             :     UINT64_C(246418112),        // VABSS
    1001             :     UINT64_C(4088989440),       // VABSfd
    1002             :     UINT64_C(4088989504),       // VABSfq
    1003             :     UINT64_C(4088727296),       // VABShd
    1004             :     UINT64_C(4088727360),       // VABShq
    1005             :     UINT64_C(4088464192),       // VABSv16i8
    1006             :     UINT64_C(4088988416),       // VABSv2i32
    1007             :     UINT64_C(4088726272),       // VABSv4i16
    1008             :     UINT64_C(4088988480),       // VABSv4i32
    1009             :     UINT64_C(4088726336),       // VABSv8i16
    1010             :     UINT64_C(4088464128),       // VABSv8i8
    1011             :     UINT64_C(4076867088),       // VACGEfd
    1012             :     UINT64_C(4076867152),       // VACGEfq
    1013             :     UINT64_C(4077915664),       // VACGEhd
    1014             :     UINT64_C(4077915728),       // VACGEhq
    1015             :     UINT64_C(4078964240),       // VACGTfd
    1016             :     UINT64_C(4078964304),       // VACGTfq
    1017             :     UINT64_C(4080012816),       // VACGThd
    1018             :     UINT64_C(4080012880),       // VACGThq
    1019             :     UINT64_C(238029568),        // VADDD
    1020             :     UINT64_C(238029056),        // VADDH
    1021             :     UINT64_C(4070573056),       // VADDHNv2i32
    1022             :     UINT64_C(4069524480),       // VADDHNv4i16
    1023             :     UINT64_C(4068475904),       // VADDHNv8i8
    1024             :     UINT64_C(4070572032),       // VADDLsv2i64
    1025             :     UINT64_C(4069523456),       // VADDLsv4i32
    1026             :     UINT64_C(4068474880),       // VADDLsv8i16
    1027             :     UINT64_C(4087349248),       // VADDLuv2i64
    1028             :     UINT64_C(4086300672),       // VADDLuv4i32
    1029             :     UINT64_C(4085252096),       // VADDLuv8i16
    1030             :     UINT64_C(238029312),        // VADDS
    1031             :     UINT64_C(4070572288),       // VADDWsv2i64
    1032             :     UINT64_C(4069523712),       // VADDWsv4i32
    1033             :     UINT64_C(4068475136),       // VADDWsv8i16
    1034             :     UINT64_C(4087349504),       // VADDWuv2i64
    1035             :     UINT64_C(4086300928),       // VADDWuv4i32
    1036             :     UINT64_C(4085252352),       // VADDWuv8i16
    1037             :     UINT64_C(4060089600),       // VADDfd
    1038             :     UINT64_C(4060089664),       // VADDfq
    1039             :     UINT64_C(4061138176),       // VADDhd
    1040             :     UINT64_C(4061138240),       // VADDhq
    1041             :     UINT64_C(4060088384),       // VADDv16i8
    1042             :     UINT64_C(4063234048),       // VADDv1i64
    1043             :     UINT64_C(4062185472),       // VADDv2i32
    1044             :     UINT64_C(4063234112),       // VADDv2i64
    1045             :     UINT64_C(4061136896),       // VADDv4i16
    1046             :     UINT64_C(4062185536),       // VADDv4i32
    1047             :     UINT64_C(4061136960),       // VADDv8i16
    1048             :     UINT64_C(4060088320),       // VADDv8i8
    1049             :     UINT64_C(4060086544),       // VANDd
    1050             :     UINT64_C(4060086608),       // VANDq
    1051             :     UINT64_C(4061135120),       // VBICd
    1052             :     UINT64_C(4068475184),       // VBICiv2i32
    1053             :     UINT64_C(4068477232),       // VBICiv4i16
    1054             :     UINT64_C(4068475248),       // VBICiv4i32
    1055             :     UINT64_C(4068477296),       // VBICiv8i16
    1056             :     UINT64_C(4061135184),       // VBICq
    1057             :     UINT64_C(4080009488),       // VBIFd
    1058             :     UINT64_C(4080009552),       // VBIFq
    1059             :     UINT64_C(4078960912),       // VBITd
    1060             :     UINT64_C(4078960976),       // VBITq
    1061             :     UINT64_C(4077912336),       // VBSLd
    1062             :     UINT64_C(4077912400),       // VBSLq
    1063             :     UINT64_C(4237297664),       // VCADDv2f32
    1064             :     UINT64_C(4236249088),       // VCADDv4f16
    1065             :     UINT64_C(4237297728),       // VCADDv4f32
    1066             :     UINT64_C(4236249152),       // VCADDv8f16
    1067             :     UINT64_C(4060089856),       // VCEQfd
    1068             :     UINT64_C(4060089920),       // VCEQfq
    1069             :     UINT64_C(4061138432),       // VCEQhd
    1070             :     UINT64_C(4061138496),       // VCEQhq
    1071             :     UINT64_C(4076865616),       // VCEQv16i8
    1072             :     UINT64_C(4078962704),       // VCEQv2i32
    1073             :     UINT64_C(4077914128),       // VCEQv4i16
    1074             :     UINT64_C(4078962768),       // VCEQv4i32
    1075             :     UINT64_C(4077914192),       // VCEQv8i16
    1076             :     UINT64_C(4076865552),       // VCEQv8i8
    1077             :     UINT64_C(4088463680),       // VCEQzv16i8
    1078             :     UINT64_C(4088988928),       // VCEQzv2f32
    1079             :     UINT64_C(4088987904),       // VCEQzv2i32
    1080             :     UINT64_C(4088726784),       // VCEQzv4f16
    1081             :     UINT64_C(4088988992),       // VCEQzv4f32
    1082             :     UINT64_C(4088725760),       // VCEQzv4i16
    1083             :     UINT64_C(4088987968),       // VCEQzv4i32
    1084             :     UINT64_C(4088726848),       // VCEQzv8f16
    1085             :     UINT64_C(4088725824),       // VCEQzv8i16
    1086             :     UINT64_C(4088463616),       // VCEQzv8i8
    1087             :     UINT64_C(4076867072),       // VCGEfd
    1088             :     UINT64_C(4076867136),       // VCGEfq
    1089             :     UINT64_C(4077915648),       // VCGEhd
    1090             :     UINT64_C(4077915712),       // VCGEhq
    1091             :     UINT64_C(4060087120),       // VCGEsv16i8
    1092             :     UINT64_C(4062184208),       // VCGEsv2i32
    1093             :     UINT64_C(4061135632),       // VCGEsv4i16
    1094             :     UINT64_C(4062184272),       // VCGEsv4i32
    1095             :     UINT64_C(4061135696),       // VCGEsv8i16
    1096             :     UINT64_C(4060087056),       // VCGEsv8i8
    1097             :     UINT64_C(4076864336),       // VCGEuv16i8
    1098             :     UINT64_C(4078961424),       // VCGEuv2i32
    1099             :     UINT64_C(4077912848),       // VCGEuv4i16
    1100             :     UINT64_C(4078961488),       // VCGEuv4i32
    1101             :     UINT64_C(4077912912),       // VCGEuv8i16
    1102             :     UINT64_C(4076864272),       // VCGEuv8i8
    1103             :     UINT64_C(4088463552),       // VCGEzv16i8
    1104             :     UINT64_C(4088988800),       // VCGEzv2f32
    1105             :     UINT64_C(4088987776),       // VCGEzv2i32
    1106             :     UINT64_C(4088726656),       // VCGEzv4f16
    1107             :     UINT64_C(4088988864),       // VCGEzv4f32
    1108             :     UINT64_C(4088725632),       // VCGEzv4i16
    1109             :     UINT64_C(4088987840),       // VCGEzv4i32
    1110             :     UINT64_C(4088726720),       // VCGEzv8f16
    1111             :     UINT64_C(4088725696),       // VCGEzv8i16
    1112             :     UINT64_C(4088463488),       // VCGEzv8i8
    1113             :     UINT64_C(4078964224),       // VCGTfd
    1114             :     UINT64_C(4078964288),       // VCGTfq
    1115             :     UINT64_C(4080012800),       // VCGThd
    1116             :     UINT64_C(4080012864),       // VCGThq
    1117             :     UINT64_C(4060087104),       // VCGTsv16i8
    1118             :     UINT64_C(4062184192),       // VCGTsv2i32
    1119             :     UINT64_C(4061135616),       // VCGTsv4i16
    1120             :     UINT64_C(4062184256),       // VCGTsv4i32
    1121             :     UINT64_C(4061135680),       // VCGTsv8i16
    1122             :     UINT64_C(4060087040),       // VCGTsv8i8
    1123             :     UINT64_C(4076864320),       // VCGTuv16i8
    1124             :     UINT64_C(4078961408),       // VCGTuv2i32
    1125             :     UINT64_C(4077912832),       // VCGTuv4i16
    1126             :     UINT64_C(4078961472),       // VCGTuv4i32
    1127             :     UINT64_C(4077912896),       // VCGTuv8i16
    1128             :     UINT64_C(4076864256),       // VCGTuv8i8
    1129             :     UINT64_C(4088463424),       // VCGTzv16i8
    1130             :     UINT64_C(4088988672),       // VCGTzv2f32
    1131             :     UINT64_C(4088987648),       // VCGTzv2i32
    1132             :     UINT64_C(4088726528),       // VCGTzv4f16
    1133             :     UINT64_C(4088988736),       // VCGTzv4f32
    1134             :     UINT64_C(4088725504),       // VCGTzv4i16
    1135             :     UINT64_C(4088987712),       // VCGTzv4i32
    1136             :     UINT64_C(4088726592),       // VCGTzv8f16
    1137             :     UINT64_C(4088725568),       // VCGTzv8i16
    1138             :     UINT64_C(4088463360),       // VCGTzv8i8
    1139             :     UINT64_C(4088463808),       // VCLEzv16i8
    1140             :     UINT64_C(4088989056),       // VCLEzv2f32
    1141             :     UINT64_C(4088988032),       // VCLEzv2i32
    1142             :     UINT64_C(4088726912),       // VCLEzv4f16
    1143             :     UINT64_C(4088989120),       // VCLEzv4f32
    1144             :     UINT64_C(4088725888),       // VCLEzv4i16
    1145             :     UINT64_C(4088988096),       // VCLEzv4i32
    1146             :     UINT64_C(4088726976),       // VCLEzv8f16
    1147             :     UINT64_C(4088725952),       // VCLEzv8i16
    1148             :     UINT64_C(4088463744),       // VCLEzv8i8
    1149             :     UINT64_C(4088398912),       // VCLSv16i8
    1150             :     UINT64_C(4088923136),       // VCLSv2i32
    1151             :     UINT64_C(4088660992),       // VCLSv4i16
    1152             :     UINT64_C(4088923200),       // VCLSv4i32
    1153             :     UINT64_C(4088661056),       // VCLSv8i16
    1154             :     UINT64_C(4088398848),       // VCLSv8i8
    1155             :     UINT64_C(4088463936),       // VCLTzv16i8
    1156             :     UINT64_C(4088989184),       // VCLTzv2f32
    1157             :     UINT64_C(4088988160),       // VCLTzv2i32
    1158             :     UINT64_C(4088727040),       // VCLTzv4f16
    1159             :     UINT64_C(4088989248),       // VCLTzv4f32
    1160             :     UINT64_C(4088726016),       // VCLTzv4i16
    1161             :     UINT64_C(4088988224),       // VCLTzv4i32
    1162             :     UINT64_C(4088727104),       // VCLTzv8f16
    1163             :     UINT64_C(4088726080),       // VCLTzv8i16
    1164             :     UINT64_C(4088463872),       // VCLTzv8i8
    1165             :     UINT64_C(4088399040),       // VCLZv16i8
    1166             :     UINT64_C(4088923264),       // VCLZv2i32
    1167             :     UINT64_C(4088661120),       // VCLZv4i16
    1168             :     UINT64_C(4088923328),       // VCLZv4i32
    1169             :     UINT64_C(4088661184),       // VCLZv8i16
    1170             :     UINT64_C(4088398976),       // VCLZv8i8
    1171             :     UINT64_C(4231006208),       // VCMLAv2f32
    1172             :     UINT64_C(4269803520),       // VCMLAv2f32_indexed
    1173             :     UINT64_C(4229957632),       // VCMLAv4f16
    1174             :     UINT64_C(4261414912),       // VCMLAv4f16_indexed
    1175             :     UINT64_C(4231006272),       // VCMLAv4f32
    1176             :     UINT64_C(4269803584),       // VCMLAv4f32_indexed
    1177             :     UINT64_C(4229957696),       // VCMLAv8f16
    1178             :     UINT64_C(4261414976),       // VCMLAv8f16_indexed
    1179             :     UINT64_C(246680384),        // VCMPD
    1180             :     UINT64_C(246680512),        // VCMPED
    1181             :     UINT64_C(246680000),        // VCMPEH
    1182             :     UINT64_C(246680256),        // VCMPES
    1183             :     UINT64_C(246746048),        // VCMPEZD
    1184             :     UINT64_C(246745536),        // VCMPEZH
    1185             :     UINT64_C(246745792),        // VCMPEZS
    1186             :     UINT64_C(246679872),        // VCMPH
    1187             :     UINT64_C(246680128),        // VCMPS
    1188             :     UINT64_C(246745920),        // VCMPZD
    1189             :     UINT64_C(246745408),        // VCMPZH
    1190             :     UINT64_C(246745664),        // VCMPZS
    1191             :     UINT64_C(4088399104),       // VCNTd
    1192             :     UINT64_C(4088399168),       // VCNTq
    1193             :     UINT64_C(4089118720),       // VCVTANSDf
    1194             :     UINT64_C(4088856576),       // VCVTANSDh
    1195             :     UINT64_C(4089118784),       // VCVTANSQf
    1196             :     UINT64_C(4088856640),       // VCVTANSQh
    1197             :     UINT64_C(4089118848),       // VCVTANUDf
    1198             :     UINT64_C(4088856704),       // VCVTANUDh
    1199             :     UINT64_C(4089118912),       // VCVTANUQf
    1200             :     UINT64_C(4088856768),       // VCVTANUQh
    1201             :     UINT64_C(4273736640),       // VCVTASD
    1202             :     UINT64_C(4273736128),       // VCVTASH
    1203             :     UINT64_C(4273736384),       // VCVTASS
    1204             :     UINT64_C(4273736512),       // VCVTAUD
    1205             :     UINT64_C(4273736000),       // VCVTAUH
    1206             :     UINT64_C(4273736256),       // VCVTAUS
    1207             :     UINT64_C(246614848),        // VCVTBDH
    1208             :     UINT64_C(246549312),        // VCVTBHD
    1209             :     UINT64_C(246549056),        // VCVTBHS
    1210             :     UINT64_C(246614592),        // VCVTBSH
    1211             :     UINT64_C(246876864),        // VCVTDS
    1212             :     UINT64_C(4089119488),       // VCVTMNSDf
    1213             :     UINT64_C(4088857344),       // VCVTMNSDh
    1214             :     UINT64_C(4089119552),       // VCVTMNSQf
    1215             :     UINT64_C(4088857408),       // VCVTMNSQh
    1216             :     UINT64_C(4089119616),       // VCVTMNUDf
    1217             :     UINT64_C(4088857472),       // VCVTMNUDh
    1218             :     UINT64_C(4089119680),       // VCVTMNUQf
    1219             :     UINT64_C(4088857536),       // VCVTMNUQh
    1220             :     UINT64_C(4273933248),       // VCVTMSD
    1221             :     UINT64_C(4273932736),       // VCVTMSH
    1222             :     UINT64_C(4273932992),       // VCVTMSS
    1223             :     UINT64_C(4273933120),       // VCVTMUD
    1224             :     UINT64_C(4273932608),       // VCVTMUH
    1225             :     UINT64_C(4273932864),       // VCVTMUS
    1226             :     UINT64_C(4089118976),       // VCVTNNSDf
    1227             :     UINT64_C(4088856832),       // VCVTNNSDh
    1228             :     UINT64_C(4089119040),       // VCVTNNSQf
    1229             :     UINT64_C(4088856896),       // VCVTNNSQh
    1230             :     UINT64_C(4089119104),       // VCVTNNUDf
    1231             :     UINT64_C(4088856960),       // VCVTNNUDh
    1232             :     UINT64_C(4089119168),       // VCVTNNUQf
    1233             :     UINT64_C(4088857024),       // VCVTNNUQh
    1234             :     UINT64_C(4273802176),       // VCVTNSD
    1235             :     UINT64_C(4273801664),       // VCVTNSH
    1236             :     UINT64_C(4273801920),       // VCVTNSS
    1237             :     UINT64_C(4273802048),       // VCVTNUD
    1238             :     UINT64_C(4273801536),       // VCVTNUH
    1239             :     UINT64_C(4273801792),       // VCVTNUS
    1240             :     UINT64_C(4089119232),       // VCVTPNSDf
    1241             :     UINT64_C(4088857088),       // VCVTPNSDh
    1242             :     UINT64_C(4089119296),       // VCVTPNSQf
    1243             :     UINT64_C(4088857152),       // VCVTPNSQh
    1244             :     UINT64_C(4089119360),       // VCVTPNUDf
    1245             :     UINT64_C(4088857216),       // VCVTPNUDh
    1246             :     UINT64_C(4089119424),       // VCVTPNUQf
    1247             :     UINT64_C(4088857280),       // VCVTPNUQh
    1248             :     UINT64_C(4273867712),       // VCVTPSD
    1249             :     UINT64_C(4273867200),       // VCVTPSH
    1250             :     UINT64_C(4273867456),       // VCVTPSS
    1251             :     UINT64_C(4273867584),       // VCVTPUD
    1252             :     UINT64_C(4273867072),       // VCVTPUH
    1253             :     UINT64_C(4273867328),       // VCVTPUS
    1254             :     UINT64_C(246877120),        // VCVTSD
    1255             :     UINT64_C(246614976),        // VCVTTDH
    1256             :     UINT64_C(246549440),        // VCVTTHD
    1257             :     UINT64_C(246549184),        // VCVTTHS
    1258             :     UINT64_C(246614720),        // VCVTTSH
    1259             :     UINT64_C(4088792576),       // VCVTf2h
    1260             :     UINT64_C(4089120512),       // VCVTf2sd
    1261             :     UINT64_C(4089120576),       // VCVTf2sq
    1262             :     UINT64_C(4089120640),       // VCVTf2ud
    1263             :     UINT64_C(4089120704),       // VCVTf2uq
    1264             :     UINT64_C(4068478736),       // VCVTf2xsd
    1265             :     UINT64_C(4068478800),       // VCVTf2xsq
    1266             :     UINT64_C(4085255952),       // VCVTf2xud
    1267             :     UINT64_C(4085256016),       // VCVTf2xuq
    1268             :     UINT64_C(4088792832),       // VCVTh2f
    1269             :     UINT64_C(4088858368),       // VCVTh2sd
    1270             :     UINT64_C(4088858432),       // VCVTh2sq
    1271             :     UINT64_C(4088858496),       // VCVTh2ud
    1272             :     UINT64_C(4088858560),       // VCVTh2uq
    1273             :     UINT64_C(4068478224),       // VCVTh2xsd
    1274             :     UINT64_C(4068478288),       // VCVTh2xsq
    1275             :     UINT64_C(4085255440),       // VCVTh2xud
    1276             :     UINT64_C(4085255504),       // VCVTh2xuq
    1277             :     UINT64_C(4089120256),       // VCVTs2fd
    1278             :     UINT64_C(4089120320),       // VCVTs2fq
    1279             :     UINT64_C(4088858112),       // VCVTs2hd
    1280             :     UINT64_C(4088858176),       // VCVTs2hq
    1281             :     UINT64_C(4089120384),       // VCVTu2fd
    1282             :     UINT64_C(4089120448),       // VCVTu2fq
    1283             :     UINT64_C(4088858240),       // VCVTu2hd
    1284             :     UINT64_C(4088858304),       // VCVTu2hq
    1285             :     UINT64_C(4068478480),       // VCVTxs2fd
    1286             :     UINT64_C(4068478544),       // VCVTxs2fq
    1287             :     UINT64_C(4068477968),       // VCVTxs2hd
    1288             :     UINT64_C(4068478032),       // VCVTxs2hq
    1289             :     UINT64_C(4085255696),       // VCVTxu2fd
    1290             :     UINT64_C(4085255760),       // VCVTxu2fq
    1291             :     UINT64_C(4085255184),       // VCVTxu2hd
    1292             :     UINT64_C(4085255248),       // VCVTxu2hq
    1293             :     UINT64_C(243272448),        // VDIVD
    1294             :     UINT64_C(243271936),        // VDIVH
    1295             :     UINT64_C(243272192),        // VDIVS
    1296             :     UINT64_C(243272496),        // VDUP16d
    1297             :     UINT64_C(245369648),        // VDUP16q
    1298             :     UINT64_C(243272464),        // VDUP32d
    1299             :     UINT64_C(245369616),        // VDUP32q
    1300             :     UINT64_C(247466768),        // VDUP8d
    1301             :     UINT64_C(249563920),        // VDUP8q
    1302             :     UINT64_C(4088531968),       // VDUPLN16d
    1303             :     UINT64_C(4088532032),       // VDUPLN16q
    1304             :     UINT64_C(4088663040),       // VDUPLN32d
    1305             :     UINT64_C(4088663104),       // VDUPLN32q
    1306             :     UINT64_C(4088466432),       // VDUPLN8d
    1307             :     UINT64_C(4088466496),       // VDUPLN8q
    1308             :     UINT64_C(4076863760),       // VEORd
    1309             :     UINT64_C(4076863824),       // VEORq
    1310             :     UINT64_C(4071620608),       // VEXTd16
    1311             :     UINT64_C(4071620608),       // VEXTd32
    1312             :     UINT64_C(4071620608),       // VEXTd8
    1313             :     UINT64_C(4071620672),       // VEXTq16
    1314             :     UINT64_C(4071620672),       // VEXTq32
    1315             :     UINT64_C(4071620672),       // VEXTq64
    1316             :     UINT64_C(4071620672),       // VEXTq8
    1317             :     UINT64_C(245369600),        // VFMAD
    1318             :     UINT64_C(245369088),        // VFMAH
    1319             :     UINT64_C(245369344),        // VFMAS
    1320             :     UINT64_C(4060089360),       // VFMAfd
    1321             :     UINT64_C(4060089424),       // VFMAfq
    1322             :     UINT64_C(4061137936),       // VFMAhd
    1323             :     UINT64_C(4061138000),       // VFMAhq
    1324             :     UINT64_C(245369664),        // VFMSD
    1325             :     UINT64_C(245369152),        // VFMSH
    1326             :     UINT64_C(245369408),        // VFMSS
    1327             :     UINT64_C(4062186512),       // VFMSfd
    1328             :     UINT64_C(4062186576),       // VFMSfq
    1329             :     UINT64_C(4063235088),       // VFMShd
    1330             :     UINT64_C(4063235152),       // VFMShq
    1331             :     UINT64_C(244321088),        // VFNMAD
    1332             :     UINT64_C(244320576),        // VFNMAH
    1333             :     UINT64_C(244320832),        // VFNMAS
    1334             :     UINT64_C(244321024),        // VFNMSD
    1335             :     UINT64_C(244320512),        // VFNMSH
    1336             :     UINT64_C(244320768),        // VFNMSS
    1337             :     UINT64_C(235932432),        // VGETLNi32
    1338             :     UINT64_C(235932464),        // VGETLNs16
    1339             :     UINT64_C(240126736),        // VGETLNs8
    1340             :     UINT64_C(244321072),        // VGETLNu16
    1341             :     UINT64_C(248515344),        // VGETLNu8
    1342             :     UINT64_C(4060086336),       // VHADDsv16i8
    1343             :     UINT64_C(4062183424),       // VHADDsv2i32
    1344             :     UINT64_C(4061134848),       // VHADDsv4i16
    1345             :     UINT64_C(4062183488),       // VHADDsv4i32
    1346             :     UINT64_C(4061134912),       // VHADDsv8i16
    1347             :     UINT64_C(4060086272),       // VHADDsv8i8
    1348             :     UINT64_C(4076863552),       // VHADDuv16i8
    1349             :     UINT64_C(4078960640),       // VHADDuv2i32
    1350             :     UINT64_C(4077912064),       // VHADDuv4i16
    1351             :     UINT64_C(4078960704),       // VHADDuv4i32
    1352             :     UINT64_C(4077912128),       // VHADDuv8i16
    1353             :     UINT64_C(4076863488),       // VHADDuv8i8
    1354             :     UINT64_C(4060086848),       // VHSUBsv16i8
    1355             :     UINT64_C(4062183936),       // VHSUBsv2i32
    1356             :     UINT64_C(4061135360),       // VHSUBsv4i16
    1357             :     UINT64_C(4062184000),       // VHSUBsv4i32
    1358             :     UINT64_C(4061135424),       // VHSUBsv8i16
    1359             :     UINT64_C(4060086784),       // VHSUBsv8i8
    1360             :     UINT64_C(4076864064),       // VHSUBuv16i8
    1361             :     UINT64_C(4078961152),       // VHSUBuv2i32
    1362             :     UINT64_C(4077912576),       // VHSUBuv4i16
    1363             :     UINT64_C(4078961216),       // VHSUBuv4i32
    1364             :     UINT64_C(4077912640),       // VHSUBuv8i16
    1365             :     UINT64_C(4076864000),       // VHSUBuv8i8
    1366             :     UINT64_C(4272949952),       // VINSH
    1367             :     UINT64_C(247008192),        // VJCVT
    1368             :     UINT64_C(4104129615),       // VLD1DUPd16
    1369             :     UINT64_C(4104129613),       // VLD1DUPd16wb_fixed
    1370             :     UINT64_C(4104129600),       // VLD1DUPd16wb_register
    1371             :     UINT64_C(4104129679),       // VLD1DUPd32
    1372             :     UINT64_C(4104129677),       // VLD1DUPd32wb_fixed
    1373             :     UINT64_C(4104129664),       // VLD1DUPd32wb_register
    1374             :     UINT64_C(4104129551),       // VLD1DUPd8
    1375             :     UINT64_C(4104129549),       // VLD1DUPd8wb_fixed
    1376             :     UINT64_C(4104129536),       // VLD1DUPd8wb_register
    1377             :     UINT64_C(4104129647),       // VLD1DUPq16
    1378             :     UINT64_C(4104129645),       // VLD1DUPq16wb_fixed
    1379             :     UINT64_C(4104129632),       // VLD1DUPq16wb_register
    1380             :     UINT64_C(4104129711),       // VLD1DUPq32
    1381             :     UINT64_C(4104129709),       // VLD1DUPq32wb_fixed
    1382             :     UINT64_C(4104129696),       // VLD1DUPq32wb_register
    1383             :     UINT64_C(4104129583),       // VLD1DUPq8
    1384             :     UINT64_C(4104129581),       // VLD1DUPq8wb_fixed
    1385             :     UINT64_C(4104129568),       // VLD1DUPq8wb_register
    1386             :     UINT64_C(4104127503),       // VLD1LNd16
    1387             :     UINT64_C(4104127488),       // VLD1LNd16_UPD
    1388             :     UINT64_C(4104128527),       // VLD1LNd32
    1389             :     UINT64_C(4104128512),       // VLD1LNd32_UPD
    1390             :     UINT64_C(4104126479),       // VLD1LNd8
    1391             :     UINT64_C(4104126464),       // VLD1LNd8_UPD
    1392             :     UINT64_C(0),        // VLD1LNq16Pseudo
    1393             :     UINT64_C(0),        // VLD1LNq16Pseudo_UPD
    1394             :     UINT64_C(0),        // VLD1LNq32Pseudo
    1395             :     UINT64_C(0),        // VLD1LNq32Pseudo_UPD
    1396             :     UINT64_C(0),        // VLD1LNq8Pseudo
    1397             :     UINT64_C(0),        // VLD1LNq8Pseudo_UPD
    1398             :     UINT64_C(4095739727),       // VLD1d16
    1399             :     UINT64_C(4095738447),       // VLD1d16Q
    1400             :     UINT64_C(0),        // VLD1d16QPseudo
    1401             :     UINT64_C(4095738445),       // VLD1d16Qwb_fixed
    1402             :     UINT64_C(4095738432),       // VLD1d16Qwb_register
    1403             :     UINT64_C(4095739471),       // VLD1d16T
    1404             :     UINT64_C(0),        // VLD1d16TPseudo
    1405             :     UINT64_C(4095739469),       // VLD1d16Twb_fixed
    1406             :     UINT64_C(4095739456),       // VLD1d16Twb_register
    1407             :     UINT64_C(4095739725),       // VLD1d16wb_fixed
    1408             :     UINT64_C(4095739712),       // VLD1d16wb_register
    1409             :     UINT64_C(4095739791),       // VLD1d32
    1410             :     UINT64_C(4095738511),       // VLD1d32Q
    1411             :     UINT64_C(0),        // VLD1d32QPseudo
    1412             :     UINT64_C(4095738509),       // VLD1d32Qwb_fixed
    1413             :     UINT64_C(4095738496),       // VLD1d32Qwb_register
    1414             :     UINT64_C(4095739535),       // VLD1d32T
    1415             :     UINT64_C(0),        // VLD1d32TPseudo
    1416             :     UINT64_C(4095739533),       // VLD1d32Twb_fixed
    1417             :     UINT64_C(4095739520),       // VLD1d32Twb_register
    1418             :     UINT64_C(4095739789),       // VLD1d32wb_fixed
    1419             :     UINT64_C(4095739776),       // VLD1d32wb_register
    1420             :     UINT64_C(4095739855),       // VLD1d64
    1421             :     UINT64_C(4095738575),       // VLD1d64Q
    1422             :     UINT64_C(0),        // VLD1d64QPseudo
    1423             :     UINT64_C(0),        // VLD1d64QPseudoWB_fixed
    1424             :     UINT64_C(0),        // VLD1d64QPseudoWB_register
    1425             :     UINT64_C(4095738573),       // VLD1d64Qwb_fixed
    1426             :     UINT64_C(4095738560),       // VLD1d64Qwb_register
    1427             :     UINT64_C(4095739599),       // VLD1d64T
    1428             :     UINT64_C(0),        // VLD1d64TPseudo
    1429             :     UINT64_C(0),        // VLD1d64TPseudoWB_fixed
    1430             :     UINT64_C(0),        // VLD1d64TPseudoWB_register
    1431             :     UINT64_C(4095739597),       // VLD1d64Twb_fixed
    1432             :     UINT64_C(4095739584),       // VLD1d64Twb_register
    1433             :     UINT64_C(4095739853),       // VLD1d64wb_fixed
    1434             :     UINT64_C(4095739840),       // VLD1d64wb_register
    1435             :     UINT64_C(4095739663),       // VLD1d8
    1436             :     UINT64_C(4095738383),       // VLD1d8Q
    1437             :     UINT64_C(0),        // VLD1d8QPseudo
    1438             :     UINT64_C(4095738381),       // VLD1d8Qwb_fixed
    1439             :     UINT64_C(4095738368),       // VLD1d8Qwb_register
    1440             :     UINT64_C(4095739407),       // VLD1d8T
    1441             :     UINT64_C(0),        // VLD1d8TPseudo
    1442             :     UINT64_C(4095739405),       // VLD1d8Twb_fixed
    1443             :     UINT64_C(4095739392),       // VLD1d8Twb_register
    1444             :     UINT64_C(4095739661),       // VLD1d8wb_fixed
    1445             :     UINT64_C(4095739648),       // VLD1d8wb_register
    1446             :     UINT64_C(4095740495),       // VLD1q16
    1447             :     UINT64_C(0),        // VLD1q16HighQPseudo
    1448             :     UINT64_C(0),        // VLD1q16HighTPseudo
    1449             :     UINT64_C(0),        // VLD1q16LowQPseudo_UPD
    1450             :     UINT64_C(0),        // VLD1q16LowTPseudo_UPD
    1451             :     UINT64_C(4095740493),       // VLD1q16wb_fixed
    1452             :     UINT64_C(4095740480),       // VLD1q16wb_register
    1453             :     UINT64_C(4095740559),       // VLD1q32
    1454             :     UINT64_C(0),        // VLD1q32HighQPseudo
    1455             :     UINT64_C(0),        // VLD1q32HighTPseudo
    1456             :     UINT64_C(0),        // VLD1q32LowQPseudo_UPD
    1457             :     UINT64_C(0),        // VLD1q32LowTPseudo_UPD
    1458             :     UINT64_C(4095740557),       // VLD1q32wb_fixed
    1459             :     UINT64_C(4095740544),       // VLD1q32wb_register
    1460             :     UINT64_C(4095740623),       // VLD1q64
    1461             :     UINT64_C(0),        // VLD1q64HighQPseudo
    1462             :     UINT64_C(0),        // VLD1q64HighTPseudo
    1463             :     UINT64_C(0),        // VLD1q64LowQPseudo_UPD
    1464             :     UINT64_C(0),        // VLD1q64LowTPseudo_UPD
    1465             :     UINT64_C(4095740621),       // VLD1q64wb_fixed
    1466             :     UINT64_C(4095740608),       // VLD1q64wb_register
    1467             :     UINT64_C(4095740431),       // VLD1q8
    1468             :     UINT64_C(0),        // VLD1q8HighQPseudo
    1469             :     UINT64_C(0),        // VLD1q8HighTPseudo
    1470             :     UINT64_C(0),        // VLD1q8LowQPseudo_UPD
    1471             :     UINT64_C(0),        // VLD1q8LowTPseudo_UPD
    1472             :     UINT64_C(4095740429),       // VLD1q8wb_fixed
    1473             :     UINT64_C(4095740416),       // VLD1q8wb_register
    1474             :     UINT64_C(4104129871),       // VLD2DUPd16
    1475             :     UINT64_C(4104129869),       // VLD2DUPd16wb_fixed
    1476             :     UINT64_C(4104129856),       // VLD2DUPd16wb_register
    1477             :     UINT64_C(4104129903),       // VLD2DUPd16x2
    1478             :     UINT64_C(4104129901),       // VLD2DUPd16x2wb_fixed
    1479             :     UINT64_C(4104129888),       // VLD2DUPd16x2wb_register
    1480             :     UINT64_C(4104129935),       // VLD2DUPd32
    1481             :     UINT64_C(4104129933),       // VLD2DUPd32wb_fixed
    1482             :     UINT64_C(4104129920),       // VLD2DUPd32wb_register
    1483             :     UINT64_C(4104129967),       // VLD2DUPd32x2
    1484             :     UINT64_C(4104129965),       // VLD2DUPd32x2wb_fixed
    1485             :     UINT64_C(4104129952),       // VLD2DUPd32x2wb_register
    1486             :     UINT64_C(4104129807),       // VLD2DUPd8
    1487             :     UINT64_C(4104129805),       // VLD2DUPd8wb_fixed
    1488             :     UINT64_C(4104129792),       // VLD2DUPd8wb_register
    1489             :     UINT64_C(4104129839),       // VLD2DUPd8x2
    1490             :     UINT64_C(4104129837),       // VLD2DUPd8x2wb_fixed
    1491             :     UINT64_C(4104129824),       // VLD2DUPd8x2wb_register
    1492             :     UINT64_C(0),        // VLD2DUPq16EvenPseudo
    1493             :     UINT64_C(0),        // VLD2DUPq16OddPseudo
    1494             :     UINT64_C(0),        // VLD2DUPq32EvenPseudo
    1495             :     UINT64_C(0),        // VLD2DUPq32OddPseudo
    1496             :     UINT64_C(0),        // VLD2DUPq8EvenPseudo
    1497             :     UINT64_C(0),        // VLD2DUPq8OddPseudo
    1498             :     UINT64_C(4104127759),       // VLD2LNd16
    1499             :     UINT64_C(0),        // VLD2LNd16Pseudo
    1500             :     UINT64_C(0),        // VLD2LNd16Pseudo_UPD
    1501             :     UINT64_C(4104127744),       // VLD2LNd16_UPD
    1502             :     UINT64_C(4104128783),       // VLD2LNd32
    1503             :     UINT64_C(0),        // VLD2LNd32Pseudo
    1504             :     UINT64_C(0),        // VLD2LNd32Pseudo_UPD
    1505             :     UINT64_C(4104128768),       // VLD2LNd32_UPD
    1506             :     UINT64_C(4104126735),       // VLD2LNd8
    1507             :     UINT64_C(0),        // VLD2LNd8Pseudo
    1508             :     UINT64_C(0),        // VLD2LNd8Pseudo_UPD
    1509             :     UINT64_C(4104126720),       // VLD2LNd8_UPD
    1510             :     UINT64_C(4104127791),       // VLD2LNq16
    1511             :     UINT64_C(0),        // VLD2LNq16Pseudo
    1512             :     UINT64_C(0),        // VLD2LNq16Pseudo_UPD
    1513             :     UINT64_C(4104127776),       // VLD2LNq16_UPD
    1514             :     UINT64_C(4104128847),       // VLD2LNq32
    1515             :     UINT64_C(0),        // VLD2LNq32Pseudo
    1516             :     UINT64_C(0),        // VLD2LNq32Pseudo_UPD
    1517             :     UINT64_C(4104128832),       // VLD2LNq32_UPD
    1518             :     UINT64_C(4095740239),       // VLD2b16
    1519             :     UINT64_C(4095740237),       // VLD2b16wb_fixed
    1520             :     UINT64_C(4095740224),       // VLD2b16wb_register
    1521             :     UINT64_C(4095740303),       // VLD2b32
    1522             :     UINT64_C(4095740301),       // VLD2b32wb_fixed
    1523             :     UINT64_C(4095740288),       // VLD2b32wb_register
    1524             :     UINT64_C(4095740175),       // VLD2b8
    1525             :     UINT64_C(4095740173),       // VLD2b8wb_fixed
    1526             :     UINT64_C(4095740160),       // VLD2b8wb_register
    1527             :     UINT64_C(4095739983),       // VLD2d16
    1528             :     UINT64_C(4095739981),       // VLD2d16wb_fixed
    1529             :     UINT64_C(4095739968),       // VLD2d16wb_register
    1530             :     UINT64_C(4095740047),       // VLD2d32
    1531             :     UINT64_C(4095740045),       // VLD2d32wb_fixed
    1532             :     UINT64_C(4095740032),       // VLD2d32wb_register
    1533             :     UINT64_C(4095739919),       // VLD2d8
    1534             :     UINT64_C(4095739917),       // VLD2d8wb_fixed
    1535             :     UINT64_C(4095739904),       // VLD2d8wb_register
    1536             :     UINT64_C(4095738703),       // VLD2q16
    1537             :     UINT64_C(0),        // VLD2q16Pseudo
    1538             :     UINT64_C(0),        // VLD2q16PseudoWB_fixed
    1539             :     UINT64_C(0),        // VLD2q16PseudoWB_register
    1540             :     UINT64_C(4095738701),       // VLD2q16wb_fixed
    1541             :     UINT64_C(4095738688),       // VLD2q16wb_register
    1542             :     UINT64_C(4095738767),       // VLD2q32
    1543             :     UINT64_C(0),        // VLD2q32Pseudo
    1544             :     UINT64_C(0),        // VLD2q32PseudoWB_fixed
    1545             :     UINT64_C(0),        // VLD2q32PseudoWB_register
    1546             :     UINT64_C(4095738765),       // VLD2q32wb_fixed
    1547             :     UINT64_C(4095738752),       // VLD2q32wb_register
    1548             :     UINT64_C(4095738639),       // VLD2q8
    1549             :     UINT64_C(0),        // VLD2q8Pseudo
    1550             :     UINT64_C(0),        // VLD2q8PseudoWB_fixed
    1551             :     UINT64_C(0),        // VLD2q8PseudoWB_register
    1552             :     UINT64_C(4095738637),       // VLD2q8wb_fixed
    1553             :     UINT64_C(4095738624),       // VLD2q8wb_register
    1554             :     UINT64_C(4104130127),       // VLD3DUPd16
    1555             :     UINT64_C(0),        // VLD3DUPd16Pseudo
    1556             :     UINT64_C(0),        // VLD3DUPd16Pseudo_UPD
    1557             :     UINT64_C(4104130112),       // VLD3DUPd16_UPD
    1558             :     UINT64_C(4104130191),       // VLD3DUPd32
    1559             :     UINT64_C(0),        // VLD3DUPd32Pseudo
    1560             :     UINT64_C(0),        // VLD3DUPd32Pseudo_UPD
    1561             :     UINT64_C(4104130176),       // VLD3DUPd32_UPD
    1562             :     UINT64_C(4104130063),       // VLD3DUPd8
    1563             :     UINT64_C(0),        // VLD3DUPd8Pseudo
    1564             :     UINT64_C(0),        // VLD3DUPd8Pseudo_UPD
    1565             :     UINT64_C(4104130048),       // VLD3DUPd8_UPD
    1566             :     UINT64_C(4104130159),       // VLD3DUPq16
    1567             :     UINT64_C(0),        // VLD3DUPq16EvenPseudo
    1568             :     UINT64_C(0),        // VLD3DUPq16OddPseudo
    1569             :     UINT64_C(4104130144),       // VLD3DUPq16_UPD
    1570             :     UINT64_C(4104130223),       // VLD3DUPq32
    1571             :     UINT64_C(0),        // VLD3DUPq32EvenPseudo
    1572             :     UINT64_C(0),        // VLD3DUPq32OddPseudo
    1573             :     UINT64_C(4104130208),       // VLD3DUPq32_UPD
    1574             :     UINT64_C(4104130095),       // VLD3DUPq8
    1575             :     UINT64_C(0),        // VLD3DUPq8EvenPseudo
    1576             :     UINT64_C(0),        // VLD3DUPq8OddPseudo
    1577             :     UINT64_C(4104130080),       // VLD3DUPq8_UPD
    1578             :     UINT64_C(4104128015),       // VLD3LNd16
    1579             :     UINT64_C(0),        // VLD3LNd16Pseudo
    1580             :     UINT64_C(0),        // VLD3LNd16Pseudo_UPD
    1581             :     UINT64_C(4104128000),       // VLD3LNd16_UPD
    1582             :     UINT64_C(4104129039),       // VLD3LNd32
    1583             :     UINT64_C(0),        // VLD3LNd32Pseudo
    1584             :     UINT64_C(0),        // VLD3LNd32Pseudo_UPD
    1585             :     UINT64_C(4104129024),       // VLD3LNd32_UPD
    1586             :     UINT64_C(4104126991),       // VLD3LNd8
    1587             :     UINT64_C(0),        // VLD3LNd8Pseudo
    1588             :     UINT64_C(0),        // VLD3LNd8Pseudo_UPD
    1589             :     UINT64_C(4104126976),       // VLD3LNd8_UPD
    1590             :     UINT64_C(4104128047),       // VLD3LNq16
    1591             :     UINT64_C(0),        // VLD3LNq16Pseudo
    1592             :     UINT64_C(0),        // VLD3LNq16Pseudo_UPD
    1593             :     UINT64_C(4104128032),       // VLD3LNq16_UPD
    1594             :     UINT64_C(4104129103),       // VLD3LNq32
    1595             :     UINT64_C(0),        // VLD3LNq32Pseudo
    1596             :     UINT64_C(0),        // VLD3LNq32Pseudo_UPD
    1597             :     UINT64_C(4104129088),       // VLD3LNq32_UPD
    1598             :     UINT64_C(4095738959),       // VLD3d16
    1599             :     UINT64_C(0),        // VLD3d16Pseudo
    1600             :     UINT64_C(0),        // VLD3d16Pseudo_UPD
    1601             :     UINT64_C(4095738944),       // VLD3d16_UPD
    1602             :     UINT64_C(4095739023),       // VLD3d32
    1603             :     UINT64_C(0),        // VLD3d32Pseudo
    1604             :     UINT64_C(0),        // VLD3d32Pseudo_UPD
    1605             :     UINT64_C(4095739008),       // VLD3d32_UPD
    1606             :     UINT64_C(4095738895),       // VLD3d8
    1607             :     UINT64_C(0),        // VLD3d8Pseudo
    1608             :     UINT64_C(0),        // VLD3d8Pseudo_UPD
    1609             :     UINT64_C(4095738880),       // VLD3d8_UPD
    1610             :     UINT64_C(4095739215),       // VLD3q16
    1611             :     UINT64_C(0),        // VLD3q16Pseudo_UPD
    1612             :     UINT64_C(4095739200),       // VLD3q16_UPD
    1613             :     UINT64_C(0),        // VLD3q16oddPseudo
    1614             :     UINT64_C(0),        // VLD3q16oddPseudo_UPD
    1615             :     UINT64_C(4095739279),       // VLD3q32
    1616             :     UINT64_C(0),        // VLD3q32Pseudo_UPD
    1617             :     UINT64_C(4095739264),       // VLD3q32_UPD
    1618             :     UINT64_C(0),        // VLD3q32oddPseudo
    1619             :     UINT64_C(0),        // VLD3q32oddPseudo_UPD
    1620             :     UINT64_C(4095739151),       // VLD3q8
    1621             :     UINT64_C(0),        // VLD3q8Pseudo_UPD
    1622             :     UINT64_C(4095739136),       // VLD3q8_UPD
    1623             :     UINT64_C(0),        // VLD3q8oddPseudo
    1624             :     UINT64_C(0),        // VLD3q8oddPseudo_UPD
    1625             :     UINT64_C(4104130383),       // VLD4DUPd16
    1626             :     UINT64_C(0),        // VLD4DUPd16Pseudo
    1627             :     UINT64_C(0),        // VLD4DUPd16Pseudo_UPD
    1628             :     UINT64_C(4104130368),       // VLD4DUPd16_UPD
    1629             :     UINT64_C(4104130447),       // VLD4DUPd32
    1630             :     UINT64_C(0),        // VLD4DUPd32Pseudo
    1631             :     UINT64_C(0),        // VLD4DUPd32Pseudo_UPD
    1632             :     UINT64_C(4104130432),       // VLD4DUPd32_UPD
    1633             :     UINT64_C(4104130319),       // VLD4DUPd8
    1634             :     UINT64_C(0),        // VLD4DUPd8Pseudo
    1635             :     UINT64_C(0),        // VLD4DUPd8Pseudo_UPD
    1636             :     UINT64_C(4104130304),       // VLD4DUPd8_UPD
    1637             :     UINT64_C(4104130415),       // VLD4DUPq16
    1638             :     UINT64_C(0),        // VLD4DUPq16EvenPseudo
    1639             :     UINT64_C(0),        // VLD4DUPq16OddPseudo
    1640             :     UINT64_C(4104130400),       // VLD4DUPq16_UPD
    1641             :     UINT64_C(4104130479),       // VLD4DUPq32
    1642             :     UINT64_C(0),        // VLD4DUPq32EvenPseudo
    1643             :     UINT64_C(0),        // VLD4DUPq32OddPseudo
    1644             :     UINT64_C(4104130464),       // VLD4DUPq32_UPD
    1645             :     UINT64_C(4104130351),       // VLD4DUPq8
    1646             :     UINT64_C(0),        // VLD4DUPq8EvenPseudo
    1647             :     UINT64_C(0),        // VLD4DUPq8OddPseudo
    1648             :     UINT64_C(4104130336),       // VLD4DUPq8_UPD
    1649             :     UINT64_C(4104128271),       // VLD4LNd16
    1650             :     UINT64_C(0),        // VLD4LNd16Pseudo
    1651             :     UINT64_C(0),        // VLD4LNd16Pseudo_UPD
    1652             :     UINT64_C(4104128256),       // VLD4LNd16_UPD
    1653             :     UINT64_C(4104129295),       // VLD4LNd32
    1654             :     UINT64_C(0),        // VLD4LNd32Pseudo
    1655             :     UINT64_C(0),        // VLD4LNd32Pseudo_UPD
    1656             :     UINT64_C(4104129280),       // VLD4LNd32_UPD
    1657             :     UINT64_C(4104127247),       // VLD4LNd8
    1658             :     UINT64_C(0),        // VLD4LNd8Pseudo
    1659             :     UINT64_C(0),        // VLD4LNd8Pseudo_UPD
    1660             :     UINT64_C(4104127232),       // VLD4LNd8_UPD
    1661             :     UINT64_C(4104128303),       // VLD4LNq16
    1662             :     UINT64_C(0),        // VLD4LNq16Pseudo
    1663             :     UINT64_C(0),        // VLD4LNq16Pseudo_UPD
    1664             :     UINT64_C(4104128288),       // VLD4LNq16_UPD
    1665             :     UINT64_C(4104129359),       // VLD4LNq32
    1666             :     UINT64_C(0),        // VLD4LNq32Pseudo
    1667             :     UINT64_C(0),        // VLD4LNq32Pseudo_UPD
    1668             :     UINT64_C(4104129344),       // VLD4LNq32_UPD
    1669             :     UINT64_C(4095737935),       // VLD4d16
    1670             :     UINT64_C(0),        // VLD4d16Pseudo
    1671             :     UINT64_C(0),        // VLD4d16Pseudo_UPD
    1672             :     UINT64_C(4095737920),       // VLD4d16_UPD
    1673             :     UINT64_C(4095737999),       // VLD4d32
    1674             :     UINT64_C(0),        // VLD4d32Pseudo
    1675             :     UINT64_C(0),        // VLD4d32Pseudo_UPD
    1676             :     UINT64_C(4095737984),       // VLD4d32_UPD
    1677             :     UINT64_C(4095737871),       // VLD4d8
    1678             :     UINT64_C(0),        // VLD4d8Pseudo
    1679             :     UINT64_C(0),        // VLD4d8Pseudo_UPD
    1680             :     UINT64_C(4095737856),       // VLD4d8_UPD
    1681             :     UINT64_C(4095738191),       // VLD4q16
    1682             :     UINT64_C(0),        // VLD4q16Pseudo_UPD
    1683             :     UINT64_C(4095738176),       // VLD4q16_UPD
    1684             :     UINT64_C(0),        // VLD4q16oddPseudo
    1685             :     UINT64_C(0),        // VLD4q16oddPseudo_UPD
    1686             :     UINT64_C(4095738255),       // VLD4q32
    1687             :     UINT64_C(0),        // VLD4q32Pseudo_UPD
    1688             :     UINT64_C(4095738240),       // VLD4q32_UPD
    1689             :     UINT64_C(0),        // VLD4q32oddPseudo
    1690             :     UINT64_C(0),        // VLD4q32oddPseudo_UPD
    1691             :     UINT64_C(4095738127),       // VLD4q8
    1692             :     UINT64_C(0),        // VLD4q8Pseudo_UPD
    1693             :     UINT64_C(4095738112),       // VLD4q8_UPD
    1694             :     UINT64_C(0),        // VLD4q8oddPseudo
    1695             :     UINT64_C(0),        // VLD4q8oddPseudo_UPD
    1696             :     UINT64_C(221252352),        // VLDMDDB_UPD
    1697             :     UINT64_C(210766592),        // VLDMDIA
    1698             :     UINT64_C(212863744),        // VLDMDIA_UPD
    1699             :     UINT64_C(0),        // VLDMQIA
    1700             :     UINT64_C(221252096),        // VLDMSDB_UPD
    1701             :     UINT64_C(210766336),        // VLDMSIA
    1702             :     UINT64_C(212863488),        // VLDMSIA_UPD
    1703             :     UINT64_C(219155200),        // VLDRD
    1704             :     UINT64_C(219154688),        // VLDRH
    1705             :     UINT64_C(219154944),        // VLDRS
    1706             :     UINT64_C(204474880),        // VLLDM
    1707             :     UINT64_C(203426304),        // VLSTM
    1708             :     UINT64_C(4269804288),       // VMAXNMD
    1709             :     UINT64_C(4269803776),       // VMAXNMH
    1710             :     UINT64_C(4076867344),       // VMAXNMNDf
    1711             :     UINT64_C(4077915920),       // VMAXNMNDh
    1712             :     UINT64_C(4076867408),       // VMAXNMNQf
    1713             :     UINT64_C(4077915984),       // VMAXNMNQh
    1714             :     UINT64_C(4269804032),       // VMAXNMS
    1715             :     UINT64_C(4060090112),       // VMAXfd
    1716             :     UINT64_C(4060090176),       // VMAXfq
    1717             :     UINT64_C(4061138688),       // VMAXhd
    1718             :     UINT64_C(4061138752),       // VMAXhq
    1719             :     UINT64_C(4060087872),       // VMAXsv16i8
    1720             :     UINT64_C(4062184960),       // VMAXsv2i32
    1721             :     UINT64_C(4061136384),       // VMAXsv4i16
    1722             :     UINT64_C(4062185024),       // VMAXsv4i32
    1723             :     UINT64_C(4061136448),       // VMAXsv8i16
    1724             :     UINT64_C(4060087808),       // VMAXsv8i8
    1725             :     UINT64_C(4076865088),       // VMAXuv16i8
    1726             :     UINT64_C(4078962176),       // VMAXuv2i32
    1727             :     UINT64_C(4077913600),       // VMAXuv4i16
    1728             :     UINT64_C(4078962240),       // VMAXuv4i32
    1729             :     UINT64_C(4077913664),       // VMAXuv8i16
    1730             :     UINT64_C(4076865024),       // VMAXuv8i8
    1731             :     UINT64_C(4269804352),       // VMINNMD
    1732             :     UINT64_C(4269803840),       // VMINNMH
    1733             :     UINT64_C(4078964496),       // VMINNMNDf
    1734             :     UINT64_C(4080013072),       // VMINNMNDh
    1735             :     UINT64_C(4078964560),       // VMINNMNQf
    1736             :     UINT64_C(4080013136),       // VMINNMNQh
    1737             :     UINT64_C(4269804096),       // VMINNMS
    1738             :     UINT64_C(4062187264),       // VMINfd
    1739             :     UINT64_C(4062187328),       // VMINfq
    1740             :     UINT64_C(4063235840),       // VMINhd
    1741             :     UINT64_C(4063235904),       // VMINhq
    1742             :     UINT64_C(4060087888),       // VMINsv16i8
    1743             :     UINT64_C(4062184976),       // VMINsv2i32
    1744             :     UINT64_C(4061136400),       // VMINsv4i16
    1745             :     UINT64_C(4062185040),       // VMINsv4i32
    1746             :     UINT64_C(4061136464),       // VMINsv8i16
    1747             :     UINT64_C(4060087824),       // VMINsv8i8
    1748             :     UINT64_C(4076865104),       // VMINuv16i8
    1749             :     UINT64_C(4078962192),       // VMINuv2i32
    1750             :     UINT64_C(4077913616),       // VMINuv4i16
    1751             :     UINT64_C(4078962256),       // VMINuv4i32
    1752             :     UINT64_C(4077913680),       // VMINuv8i16
    1753             :     UINT64_C(4076865040),       // VMINuv8i8
    1754             :     UINT64_C(234883840),        // VMLAD
    1755             :     UINT64_C(234883328),        // VMLAH
    1756             :     UINT64_C(4070572608),       // VMLALslsv2i32
    1757             :     UINT64_C(4069524032),       // VMLALslsv4i16
    1758             :     UINT64_C(4087349824),       // VMLALsluv2i32
    1759             :     UINT64_C(4086301248),       // VMLALsluv4i16
    1760             :     UINT64_C(4070574080),       // VMLALsv2i64
    1761             :     UINT64_C(4069525504),       // VMLALsv4i32
    1762             :     UINT64_C(4068476928),       // VMLALsv8i16
    1763             :     UINT64_C(4087351296),       // VMLALuv2i64
    1764             :     UINT64_C(4086302720),       // VMLALuv4i32
    1765             :     UINT64_C(4085254144),       // VMLALuv8i16
    1766             :     UINT64_C(234883584),        // VMLAS
    1767             :     UINT64_C(4060089616),       // VMLAfd
    1768             :     UINT64_C(4060089680),       // VMLAfq
    1769             :     UINT64_C(4061138192),       // VMLAhd
    1770             :     UINT64_C(4061138256),       // VMLAhq
    1771             :     UINT64_C(4070572352),       // VMLAslfd
    1772             :     UINT64_C(4087349568),       // VMLAslfq
    1773             :     UINT64_C(4069523776),       // VMLAslhd
    1774             :     UINT64_C(4086300992),       // VMLAslhq
    1775             :     UINT64_C(4070572096),       // VMLAslv2i32
    1776             :     UINT64_C(4069523520),       // VMLAslv4i16
    1777             :     UINT64_C(4087349312),       // VMLAslv4i32
    1778             :     UINT64_C(4086300736),       // VMLAslv8i16
    1779             :     UINT64_C(4060088640),       // VMLAv16i8
    1780             :     UINT64_C(4062185728),       // VMLAv2i32
    1781             :     UINT64_C(4061137152),       // VMLAv4i16
    1782             :     UINT64_C(4062185792),       // VMLAv4i32
    1783             :     UINT64_C(4061137216),       // VMLAv8i16
    1784             :     UINT64_C(4060088576),       // VMLAv8i8
    1785             :     UINT64_C(234883904),        // VMLSD
    1786             :     UINT64_C(234883392),        // VMLSH
    1787             :     UINT64_C(4070573632),       // VMLSLslsv2i32
    1788             :     UINT64_C(4069525056),       // VMLSLslsv4i16
    1789             :     UINT64_C(4087350848),       // VMLSLsluv2i32
    1790             :     UINT64_C(4086302272),       // VMLSLsluv4i16
    1791             :     UINT64_C(4070574592),       // VMLSLsv2i64
    1792             :     UINT64_C(4069526016),       // VMLSLsv4i32
    1793             :     UINT64_C(4068477440),       // VMLSLsv8i16
    1794             :     UINT64_C(4087351808),       // VMLSLuv2i64
    1795             :     UINT64_C(4086303232),       // VMLSLuv4i32
    1796             :     UINT64_C(4085254656),       // VMLSLuv8i16
    1797             :     UINT64_C(234883648),        // VMLSS
    1798             :     UINT64_C(4062186768),       // VMLSfd
    1799             :     UINT64_C(4062186832),       // VMLSfq
    1800             :     UINT64_C(4063235344),       // VMLShd
    1801             :     UINT64_C(4063235408),       // VMLShq
    1802             :     UINT64_C(4070573376),       // VMLSslfd
    1803             :     UINT64_C(4087350592),       // VMLSslfq
    1804             :     UINT64_C(4069524800),       // VMLSslhd
    1805             :     UINT64_C(4086302016),       // VMLSslhq
    1806             :     UINT64_C(4070573120),       // VMLSslv2i32
    1807             :     UINT64_C(4069524544),       // VMLSslv4i16
    1808             :     UINT64_C(4087350336),       // VMLSslv4i32
    1809             :     UINT64_C(4086301760),       // VMLSslv8i16
    1810             :     UINT64_C(4076865856),       // VMLSv16i8
    1811             :     UINT64_C(4078962944),       // VMLSv2i32
    1812             :     UINT64_C(4077914368),       // VMLSv4i16
    1813             :     UINT64_C(4078963008),       // VMLSv4i32
    1814             :     UINT64_C(4077914432),       // VMLSv8i16
    1815             :     UINT64_C(4076865792),       // VMLSv8i8
    1816             :     UINT64_C(246418240),        // VMOVD
    1817             :     UINT64_C(205523728),        // VMOVDRR
    1818             :     UINT64_C(4272949824),       // VMOVH
    1819             :     UINT64_C(234883344),        // VMOVHR
    1820             :     UINT64_C(4070574608),       // VMOVLsv2i64
    1821             :     UINT64_C(4069526032),       // VMOVLsv4i32
    1822             :     UINT64_C(4069001744),       // VMOVLsv8i16
    1823             :     UINT64_C(4087351824),       // VMOVLuv2i64
    1824             :     UINT64_C(4086303248),       // VMOVLuv4i32
    1825             :     UINT64_C(4085778960),       // VMOVLuv8i16
    1826             :     UINT64_C(4089053696),       // VMOVNv2i32
    1827             :     UINT64_C(4088791552),       // VMOVNv4i16
    1828             :     UINT64_C(4088529408),       // VMOVNv8i8
    1829             :     UINT64_C(235931920),        // VMOVRH
    1830             :     UINT64_C(206572304),        // VMOVRRD
    1831             :     UINT64_C(206572048),        // VMOVRRS
    1832             :     UINT64_C(235932176),        // VMOVRS
    1833             :     UINT64_C(246417984),        // VMOVS
    1834             :     UINT64_C(234883600),        // VMOVSR
    1835             :     UINT64_C(205523472),        // VMOVSRR
    1836             :     UINT64_C(4068478544),       // VMOVv16i8
    1837             :     UINT64_C(4068478512),       // VMOVv1i64
    1838             :     UINT64_C(4068478736),       // VMOVv2f32
    1839             :     UINT64_C(4068474896),       // VMOVv2i32
    1840             :     UINT64_C(4068478576),       // VMOVv2i64
    1841             :     UINT64_C(4068478800),       // VMOVv4f32
    1842             :     UINT64_C(4068476944),       // VMOVv4i16
    1843             :     UINT64_C(4068474960),       // VMOVv4i32
    1844             :     UINT64_C(4068477008),       // VMOVv8i16
    1845             :     UINT64_C(4068478480),       // VMOVv8i8
    1846             :     UINT64_C(250677776),        // VMRS
    1847             :     UINT64_C(251136528),        // VMRS_FPEXC
    1848             :     UINT64_C(251202064),        // VMRS_FPINST
    1849             :     UINT64_C(251267600),        // VMRS_FPINST2
    1850             :     UINT64_C(250612240),        // VMRS_FPSID
    1851             :     UINT64_C(251070992),        // VMRS_MVFR0
    1852             :     UINT64_C(251005456),        // VMRS_MVFR1
    1853             :     UINT64_C(250939920),        // VMRS_MVFR2
    1854             :     UINT64_C(249629200),        // VMSR
    1855             :     UINT64_C(250087952),        // VMSR_FPEXC
    1856             :     UINT64_C(250153488),        // VMSR_FPINST
    1857             :     UINT64_C(250219024),        // VMSR_FPINST2
    1858             :     UINT64_C(249563664),        // VMSR_FPSID
    1859             :     UINT64_C(236980992),        // VMULD
    1860             :     UINT64_C(236980480),        // VMULH
    1861             :     UINT64_C(4070575616),       // VMULLp64
    1862             :     UINT64_C(4068478464),       // VMULLp8
    1863             :     UINT64_C(4070574656),       // VMULLslsv2i32
    1864             :     UINT64_C(4069526080),       // VMULLslsv4i16
    1865             :     UINT64_C(4087351872),       // VMULLsluv2i32
    1866             :     UINT64_C(4086303296),       // VMULLsluv4i16
    1867             :     UINT64_C(4070575104),       // VMULLsv2i64
    1868             :     UINT64_C(4069526528),       // VMULLsv4i32
    1869             :     UINT64_C(4068477952),       // VMULLsv8i16
    1870             :     UINT64_C(4087352320),       // VMULLuv2i64
    1871             :     UINT64_C(4086303744),       // VMULLuv4i32
    1872             :     UINT64_C(4085255168),       // VMULLuv8i16
    1873             :     UINT64_C(236980736),        // VMULS
    1874             :     UINT64_C(4076866832),       // VMULfd
    1875             :     UINT64_C(4076866896),       // VMULfq
    1876             :     UINT64_C(4077915408),       // VMULhd
    1877             :     UINT64_C(4077915472),       // VMULhq
    1878             :     UINT64_C(4076865808),       // VMULpd
    1879             :     UINT64_C(4076865872),       // VMULpq
    1880             :     UINT64_C(4070574400),       // VMULslfd
    1881             :     UINT64_C(4087351616),       // VMULslfq
    1882             :     UINT64_C(4069525824),       // VMULslhd
    1883             :     UINT64_C(4086303040),       // VMULslhq
    1884             :     UINT64_C(4070574144),       // VMULslv2i32
    1885             :     UINT64_C(4069525568),       // VMULslv4i16
    1886             :     UINT64_C(4087351360),       // VMULslv4i32
    1887             :     UINT64_C(4086302784),       // VMULslv8i16
    1888             :     UINT64_C(4060088656),       // VMULv16i8
    1889             :     UINT64_C(4062185744),       // VMULv2i32
    1890             :     UINT64_C(4061137168),       // VMULv4i16
    1891             :     UINT64_C(4062185808),       // VMULv4i32
    1892             :     UINT64_C(4061137232),       // VMULv8i16
    1893             :     UINT64_C(4060088592),       // VMULv8i8
    1894             :     UINT64_C(4088399232),       // VMVNd
    1895             :     UINT64_C(4088399296),       // VMVNq
    1896             :     UINT64_C(4068474928),       // VMVNv2i32
    1897             :     UINT64_C(4068476976),       // VMVNv4i16
    1898             :     UINT64_C(4068474992),       // VMVNv4i32
    1899             :     UINT64_C(4068477040),       // VMVNv8i16
    1900             :     UINT64_C(246483776),        // VNEGD
    1901             :     UINT64_C(246483264),        // VNEGH
    1902             :     UINT64_C(246483520),        // VNEGS
    1903             :     UINT64_C(4088989632),       // VNEGf32q
    1904             :     UINT64_C(4088989568),       // VNEGfd
    1905             :     UINT64_C(4088727424),       // VNEGhd
    1906             :     UINT64_C(4088727488),       // VNEGhq
    1907             :     UINT64_C(4088726400),       // VNEGs16d
    1908             :     UINT64_C(4088726464),       // VNEGs16q
    1909             :     UINT64_C(4088988544),       // VNEGs32d
    1910             :     UINT64_C(4088988608),       // VNEGs32q
    1911             :     UINT64_C(4088464256),       // VNEGs8d
    1912             :     UINT64_C(4088464320),       // VNEGs8q
    1913             :     UINT64_C(235932480),        // VNMLAD
    1914             :     UINT64_C(235931968),        // VNMLAH
    1915             :     UINT64_C(235932224),        // VNMLAS
    1916             :     UINT64_C(235932416),        // VNMLSD
    1917             :     UINT64_C(235931904),        // VNMLSH
    1918             :     UINT64_C(235932160),        // VNMLSS
    1919             :     UINT64_C(236981056),        // VNMULD
    1920             :     UINT64_C(236980544),        // VNMULH
    1921             :     UINT64_C(236980800),        // VNMULS
    1922             :     UINT64_C(4063232272),       // VORNd
    1923             :     UINT64_C(4063232336),       // VORNq
    1924             :     UINT64_C(4062183696),       // VORRd
    1925             :     UINT64_C(4068475152),       // VORRiv2i32
    1926             :     UINT64_C(4068477200),       // VORRiv4i16
    1927             :     UINT64_C(4068475216),       // VORRiv4i32
    1928             :     UINT64_C(4068477264),       // VORRiv8i16
    1929             :     UINT64_C(4062183760),       // VORRq
    1930             :     UINT64_C(4088399424),       // VPADALsv16i8
    1931             :     UINT64_C(4088923648),       // VPADALsv2i32
    1932             :     UINT64_C(4088661504),       // VPADALsv4i16
    1933             :     UINT64_C(4088923712),       // VPADALsv4i32
    1934             :     UINT64_C(4088661568),       // VPADALsv8i16
    1935             :     UINT64_C(4088399360),       // VPADALsv8i8
    1936             :     UINT64_C(4088399552),       // VPADALuv16i8
    1937             :     UINT64_C(4088923776),       // VPADALuv2i32
    1938             :     UINT64_C(4088661632),       // VPADALuv4i16
    1939             :     UINT64_C(4088923840),       // VPADALuv4i32
    1940             :     UINT64_C(4088661696),       // VPADALuv8i16
    1941             :     UINT64_C(4088399488),       // VPADALuv8i8
    1942             :     UINT64_C(4088398400),       // VPADDLsv16i8
    1943             :     UINT64_C(4088922624),       // VPADDLsv2i32
    1944             :     UINT64_C(4088660480),       // VPADDLsv4i16
    1945             :     UINT64_C(4088922688),       // VPADDLsv4i32
    1946             :     UINT64_C(4088660544),       // VPADDLsv8i16
    1947             :     UINT64_C(4088398336),       // VPADDLsv8i8
    1948             :     UINT64_C(4088398528),       // VPADDLuv16i8
    1949             :     UINT64_C(4088922752),       // VPADDLuv2i32
    1950             :     UINT64_C(4088660608),       // VPADDLuv4i16
    1951             :     UINT64_C(4088922816),       // VPADDLuv4i32
    1952             :     UINT64_C(4088660672),       // VPADDLuv8i16
    1953             :     UINT64_C(4088398464),       // VPADDLuv8i8
    1954             :     UINT64_C(4076866816),       // VPADDf
    1955             :     UINT64_C(4077915392),       // VPADDh
    1956             :     UINT64_C(4061137680),       // VPADDi16
    1957             :     UINT64_C(4062186256),       // VPADDi32
    1958             :     UINT64_C(4060089104),       // VPADDi8
    1959             :     UINT64_C(4076867328),       // VPMAXf
    1960             :     UINT64_C(4077915904),       // VPMAXh
    1961             :     UINT64_C(4061137408),       // VPMAXs16
    1962             :     UINT64_C(4062185984),       // VPMAXs32
    1963             :     UINT64_C(4060088832),       // VPMAXs8
    1964             :     UINT64_C(4077914624),       // VPMAXu16
    1965             :     UINT64_C(4078963200),       // VPMAXu32
    1966             :     UINT64_C(4076866048),       // VPMAXu8
    1967             :     UINT64_C(4078964480),       // VPMINf
    1968             :     UINT64_C(4080013056),       // VPMINh
    1969             :     UINT64_C(4061137424),       // VPMINs16
    1970             :     UINT64_C(4062186000),       // VPMINs32
    1971             :     UINT64_C(4060088848),       // VPMINs8
    1972             :     UINT64_C(4077914640),       // VPMINu16
    1973             :     UINT64_C(4078963216),       // VPMINu32
    1974             :     UINT64_C(4076866064),       // VPMINu8
    1975             :     UINT64_C(4088399680),       // VQABSv16i8
    1976             :     UINT64_C(4088923904),       // VQABSv2i32
    1977             :     UINT64_C(4088661760),       // VQABSv4i16
    1978             :     UINT64_C(4088923968),       // VQABSv4i32
    1979             :     UINT64_C(4088661824),       // VQABSv8i16
    1980             :     UINT64_C(4088399616),       // VQABSv8i8
    1981             :     UINT64_C(4060086352),       // VQADDsv16i8
    1982             :     UINT64_C(4063232016),       // VQADDsv1i64
    1983             :     UINT64_C(4062183440),       // VQADDsv2i32
    1984             :     UINT64_C(4063232080),       // VQADDsv2i64
    1985             :     UINT64_C(4061134864),       // VQADDsv4i16
    1986             :     UINT64_C(4062183504),       // VQADDsv4i32
    1987             :     UINT64_C(4061134928),       // VQADDsv8i16
    1988             :     UINT64_C(4060086288),       // VQADDsv8i8
    1989             :     UINT64_C(4076863568),       // VQADDuv16i8
    1990             :     UINT64_C(4080009232),       // VQADDuv1i64
    1991             :     UINT64_C(4078960656),       // VQADDuv2i32
    1992             :     UINT64_C(4080009296),       // VQADDuv2i64
    1993             :     UINT64_C(4077912080),       // VQADDuv4i16
    1994             :     UINT64_C(4078960720),       // VQADDuv4i32
    1995             :     UINT64_C(4077912144),       // VQADDuv8i16
    1996             :     UINT64_C(4076863504),       // VQADDuv8i8
    1997             :     UINT64_C(4070572864),       // VQDMLALslv2i32
    1998             :     UINT64_C(4069524288),       // VQDMLALslv4i16
    1999             :     UINT64_C(4070574336),       // VQDMLALv2i64
    2000             :     UINT64_C(4069525760),       // VQDMLALv4i32
    2001             :     UINT64_C(4070573888),       // VQDMLSLslv2i32
    2002             :     UINT64_C(4069525312),       // VQDMLSLslv4i16
    2003             :     UINT64_C(4070574848),       // VQDMLSLv2i64
    2004             :     UINT64_C(4069526272),       // VQDMLSLv4i32
    2005             :     UINT64_C(4070575168),       // VQDMULHslv2i32
    2006             :     UINT64_C(4069526592),       // VQDMULHslv4i16
    2007             :     UINT64_C(4087352384),       // VQDMULHslv4i32
    2008             :     UINT64_C(4086303808),       // VQDMULHslv8i16
    2009             :     UINT64_C(4062186240),       // VQDMULHv2i32
    2010             :     UINT64_C(4061137664),       // VQDMULHv4i16
    2011             :     UINT64_C(4062186304),       // VQDMULHv4i32
    2012             :     UINT64_C(4061137728),       // VQDMULHv8i16
    2013             :     UINT64_C(4070574912),       // VQDMULLslv2i32
    2014             :     UINT64_C(4069526336),       // VQDMULLslv4i16
    2015             :     UINT64_C(4070575360),       // VQDMULLv2i64
    2016             :     UINT64_C(4069526784),       // VQDMULLv4i32
    2017             :     UINT64_C(4089053760),       // VQMOVNsuv2i32
    2018             :     UINT64_C(4088791616),       // VQMOVNsuv4i16
    2019             :     UINT64_C(4088529472),       // VQMOVNsuv8i8
    2020             :     UINT64_C(4089053824),       // VQMOVNsv2i32
    2021             :     UINT64_C(4088791680),       // VQMOVNsv4i16
    2022             :     UINT64_C(4088529536),       // VQMOVNsv8i8
    2023             :     UINT64_C(4089053888),       // VQMOVNuv2i32
    2024             :     UINT64_C(4088791744),       // VQMOVNuv4i16
    2025             :     UINT64_C(4088529600),       // VQMOVNuv8i8
    2026             :     UINT64_C(4088399808),       // VQNEGv16i8
    2027             :     UINT64_C(4088924032),       // VQNEGv2i32
    2028             :     UINT64_C(4088661888),       // VQNEGv4i16
    2029             :     UINT64_C(4088924096),       // VQNEGv4i32
    2030             :     UINT64_C(4088661952),       // VQNEGv8i16
    2031             :     UINT64_C(4088399744),       // VQNEGv8i8
    2032             :     UINT64_C(4070575680),       // VQRDMLAHslv2i32
    2033             :     UINT64_C(4069527104),       // VQRDMLAHslv4i16
    2034             :     UINT64_C(4087352896),       // VQRDMLAHslv4i32
    2035             :     UINT64_C(4086304320),       // VQRDMLAHslv8i16
    2036             :     UINT64_C(4078963472),       // VQRDMLAHv2i32
    2037             :     UINT64_C(4077914896),       // VQRDMLAHv4i16
    2038             :     UINT64_C(4078963536),       // VQRDMLAHv4i32
    2039             :     UINT64_C(4077914960),       // VQRDMLAHv8i16
    2040             :     UINT64_C(4070575936),       // VQRDMLSHslv2i32
    2041             :     UINT64_C(4069527360),       // VQRDMLSHslv4i16
    2042             :     UINT64_C(4087353152),       // VQRDMLSHslv4i32
    2043             :     UINT64_C(4086304576),       // VQRDMLSHslv8i16
    2044             :     UINT64_C(4078963728),       // VQRDMLSHv2i32
    2045             :     UINT64_C(4077915152),       // VQRDMLSHv4i16
    2046             :     UINT64_C(4078963792),       // VQRDMLSHv4i32
    2047             :     UINT64_C(4077915216),       // VQRDMLSHv8i16
    2048             :     UINT64_C(4070575424),       // VQRDMULHslv2i32
    2049             :     UINT64_C(4069526848),       // VQRDMULHslv4i16
    2050             :     UINT64_C(4087352640),       // VQRDMULHslv4i32
    2051             :     UINT64_C(4086304064),       // VQRDMULHslv8i16
    2052             :     UINT64_C(4078963456),       // VQRDMULHv2i32
    2053             :     UINT64_C(4077914880),       // VQRDMULHv4i16
    2054             :     UINT64_C(4078963520),       // VQRDMULHv4i32
    2055             :     UINT64_C(4077914944),       // VQRDMULHv8i16
    2056             :     UINT64_C(4060087632),       // VQRSHLsv16i8
    2057             :     UINT64_C(4063233296),       // VQRSHLsv1i64
    2058             :     UINT64_C(4062184720),       // VQRSHLsv2i32
    2059             :     UINT64_C(4063233360),       // VQRSHLsv2i64
    2060             :     UINT64_C(4061136144),       // VQRSHLsv4i16
    2061             :     UINT64_C(4062184784),       // VQRSHLsv4i32
    2062             :     UINT64_C(4061136208),       // VQRSHLsv8i16
    2063             :     UINT64_C(4060087568),       // VQRSHLsv8i8
    2064             :     UINT64_C(4076864848),       // VQRSHLuv16i8
    2065             :     UINT64_C(4080010512),       // VQRSHLuv1i64
    2066             :     UINT64_C(4078961936),       // VQRSHLuv2i32
    2067             :     UINT64_C(4080010576),       // VQRSHLuv2i64
    2068             :     UINT64_C(4077913360),       // VQRSHLuv4i16
    2069             :     UINT64_C(4078962000),       // VQRSHLuv4i32
    2070             :     UINT64_C(4077913424),       // VQRSHLuv8i16
    2071             :     UINT64_C(4076864784),       // VQRSHLuv8i8
    2072             :     UINT64_C(4070574416),       // VQRSHRNsv2i32
    2073             :     UINT64_C(4069525840),       // VQRSHRNsv4i16
    2074             :     UINT64_C(4069001552),       // VQRSHRNsv8i8
    2075             :     UINT64_C(4087351632),       // VQRSHRNuv2i32
    2076             :     UINT64_C(4086303056),       // VQRSHRNuv4i16
    2077             :     UINT64_C(4085778768),       // VQRSHRNuv8i8
    2078             :     UINT64_C(4087351376),       // VQRSHRUNv2i32
    2079             :     UINT64_C(4086302800),       // VQRSHRUNv4i16
    2080             :     UINT64_C(4085778512),       // VQRSHRUNv8i8
    2081             :     UINT64_C(4069001040),       // VQSHLsiv16i8
    2082             :     UINT64_C(4068476816),       // VQSHLsiv1i64
    2083             :     UINT64_C(4070573840),       // VQSHLsiv2i32
    2084             :     UINT64_C(4068476880),       // VQSHLsiv2i64
    2085             :     UINT64_C(4069525264),       // VQSHLsiv4i16
    2086             :     UINT64_C(4070573904),       // VQSHLsiv4i32
    2087             :     UINT64_C(4069525328),       // VQSHLsiv8i16
    2088             :     UINT64_C(4069000976),       // VQSHLsiv8i8
    2089             :     UINT64_C(4085778000),       // VQSHLsuv16i8
    2090             :     UINT64_C(4085253776),       // VQSHLsuv1i64
    2091             :     UINT64_C(4087350800),       // VQSHLsuv2i32
    2092             :     UINT64_C(4085253840),       // VQSHLsuv2i64
    2093             :     UINT64_C(4086302224),       // VQSHLsuv4i16
    2094             :     UINT64_C(4087350864),       // VQSHLsuv4i32
    2095             :     UINT64_C(4086302288),       // VQSHLsuv8i16
    2096             :     UINT64_C(4085777936),       // VQSHLsuv8i8
    2097             :     UINT64_C(4060087376),       // VQSHLsv16i8
    2098             :     UINT64_C(4063233040),       // VQSHLsv1i64
    2099             :     UINT64_C(4062184464),       // VQSHLsv2i32
    2100             :     UINT64_C(4063233104),       // VQSHLsv2i64
    2101             :     UINT64_C(4061135888),       // VQSHLsv4i16
    2102             :     UINT64_C(4062184528),       // VQSHLsv4i32
    2103             :     UINT64_C(4061135952),       // VQSHLsv8i16
    2104             :     UINT64_C(4060087312),       // VQSHLsv8i8
    2105             :     UINT64_C(4085778256),       // VQSHLuiv16i8
    2106             :     UINT64_C(4085254032),       // VQSHLuiv1i64
    2107             :     UINT64_C(4087351056),       // VQSHLuiv2i32
    2108             :     UINT64_C(4085254096),       // VQSHLuiv2i64
    2109             :     UINT64_C(4086302480),       // VQSHLuiv4i16
    2110             :     UINT64_C(4087351120),       // VQSHLuiv4i32
    2111             :     UINT64_C(4086302544),       // VQSHLuiv8i16
    2112             :     UINT64_C(4085778192),       // VQSHLuiv8i8
    2113             :     UINT64_C(4076864592),       // VQSHLuv16i8
    2114             :     UINT64_C(4080010256),       // VQSHLuv1i64
    2115             :     UINT64_C(4078961680),       // VQSHLuv2i32
    2116             :     UINT64_C(4080010320),       // VQSHLuv2i64
    2117             :     UINT64_C(4077913104),       // VQSHLuv4i16
    2118             :     UINT64_C(4078961744),       // VQSHLuv4i32
    2119             :     UINT64_C(4077913168),       // VQSHLuv8i16
    2120             :     UINT64_C(4076864528),       // VQSHLuv8i8
    2121             :     UINT64_C(4070574352),       // VQSHRNsv2i32
    2122             :     UINT64_C(4069525776),       // VQSHRNsv4i16
    2123             :     UINT64_C(4069001488),       // VQSHRNsv8i8
    2124             :     UINT64_C(4087351568),       // VQSHRNuv2i32
    2125             :     UINT64_C(4086302992),       // VQSHRNuv4i16
    2126             :     UINT64_C(4085778704),       // VQSHRNuv8i8
    2127             :     UINT64_C(4087351312),       // VQSHRUNv2i32
    2128             :     UINT64_C(4086302736),       // VQSHRUNv4i16
    2129             :     UINT64_C(4085778448),       // VQSHRUNv8i8
    2130             :     UINT64_C(4060086864),       // VQSUBsv16i8
    2131             :     UINT64_C(4063232528),       // VQSUBsv1i64
    2132             :     UINT64_C(4062183952),       // VQSUBsv2i32
    2133             :     UINT64_C(4063232592),       // VQSUBsv2i64
    2134             :     UINT64_C(4061135376),       // VQSUBsv4i16
    2135             :     UINT64_C(4062184016),       // VQSUBsv4i32
    2136             :     UINT64_C(4061135440),       // VQSUBsv8i16
    2137             :     UINT64_C(4060086800),       // VQSUBsv8i8
    2138             :     UINT64_C(4076864080),       // VQSUBuv16i8
    2139             :     UINT64_C(4080009744),       // VQSUBuv1i64
    2140             :     UINT64_C(4078961168),       // VQSUBuv2i32
    2141             :     UINT64_C(4080009808),       // VQSUBuv2i64
    2142             :     UINT64_C(4077912592),       // VQSUBuv4i16
    2143             :     UINT64_C(4078961232),       // VQSUBuv4i32
    2144             :     UINT64_C(4077912656),       // VQSUBuv8i16
    2145             :     UINT64_C(4076864016),       // VQSUBuv8i8
    2146             :     UINT64_C(4087350272),       // VRADDHNv2i32
    2147             :     UINT64_C(4086301696),       // VRADDHNv4i16
    2148             :     UINT64_C(4085253120),       // VRADDHNv8i8
    2149             :     UINT64_C(4089119744),       // VRECPEd
    2150             :     UINT64_C(4089120000),       // VRECPEfd
    2151             :     UINT64_C(4089120064),       // VRECPEfq
    2152             :     UINT64_C(4088857856),       // VRECPEhd
    2153             :     UINT64_C(4088857920),       // VRECPEhq
    2154             :     UINT64_C(4089119808),       // VRECPEq
    2155             :     UINT64_C(4060090128),       // VRECPSfd
    2156             :     UINT64_C(4060090192),       // VRECPSfq
    2157             :     UINT64_C(4061138704),       // VRECPShd
    2158             :     UINT64_C(4061138768),       // VRECPShq
    2159             :     UINT64_C(4088398080),       // VREV16d8
    2160             :     UINT64_C(4088398144),       // VREV16q8
    2161             :     UINT64_C(4088660096),       // VREV32d16
    2162             :     UINT64_C(4088397952),       // VREV32d8
    2163             :     UINT64_C(4088660160),       // VREV32q16
    2164             :     UINT64_C(4088398016),       // VREV32q8
    2165             :     UINT64_C(4088659968),       // VREV64d16
    2166             :     UINT64_C(4088922112),       // VREV64d32
    2167             :     UINT64_C(4088397824),       // VREV64d8
    2168             :     UINT64_C(4088660032),       // VREV64q16
    2169             :     UINT64_C(4088922176),       // VREV64q32
    2170             :     UINT64_C(4088397888),       // VREV64q8
    2171             :     UINT64_C(4060086592),       // VRHADDsv16i8
    2172             :     UINT64_C(4062183680),       // VRHADDsv2i32
    2173             :     UINT64_C(4061135104),       // VRHADDsv4i16
    2174             :     UINT64_C(4062183744),       // VRHADDsv4i32
    2175             :     UINT64_C(4061135168),       // VRHADDsv8i16
    2176             :     UINT64_C(4060086528),       // VRHADDsv8i8
    2177             :     UINT64_C(4076863808),       // VRHADDuv16i8
    2178             :     UINT64_C(4078960896),       // VRHADDuv2i32
    2179             :     UINT64_C(4077912320),       // VRHADDuv4i16
    2180             :     UINT64_C(4078960960),       // VRHADDuv4i32
    2181             :     UINT64_C(4077912384),       // VRHADDuv8i16
    2182             :     UINT64_C(4076863744),       // VRHADDuv8i8
    2183             :     UINT64_C(4273474368),       // VRINTAD
    2184             :     UINT64_C(4273473856),       // VRINTAH
    2185             :     UINT64_C(4089054464),       // VRINTANDf
    2186             :     UINT64_C(4088792320),       // VRINTANDh
    2187             :     UINT64_C(4089054528),       // VRINTANQf
    2188             :     UINT64_C(4088792384),       // VRINTANQh
    2189             :     UINT64_C(4273474112),       // VRINTAS
    2190             :     UINT64_C(4273670976),       // VRINTMD
    2191             :     UINT64_C(4273670464),       // VRINTMH
    2192             :     UINT64_C(4089054848),       // VRINTMNDf
    2193             :     UINT64_C(4088792704),       // VRINTMNDh
    2194             :     UINT64_C(4089054912),       // VRINTMNQf
    2195             :     UINT64_C(4088792768),       // VRINTMNQh
    2196             :     UINT64_C(4273670720),       // VRINTMS
    2197             :     UINT64_C(4273539904),       // VRINTND
    2198             :     UINT64_C(4273539392),       // VRINTNH
    2199             :     UINT64_C(4089054208),       // VRINTNNDf
    2200             :     UINT64_C(4088792064),       // VRINTNNDh
    2201             :     UINT64_C(4089054272),       // VRINTNNQf
    2202             :     UINT64_C(4088792128),       // VRINTNNQh
    2203             :     UINT64_C(4273539648),       // VRINTNS
    2204             :     UINT64_C(4273605440),       // VRINTPD
    2205             :     UINT64_C(4273604928),       // VRINTPH
    2206             :     UINT64_C(4089055104),       // VRINTPNDf
    2207             :     UINT64_C(4088792960),       // VRINTPNDh
    2208             :     UINT64_C(4089055168),       // VRINTPNQf
    2209             :     UINT64_C(4088793024),       // VRINTPNQh
    2210             :     UINT64_C(4273605184),       // VRINTPS
    2211             :     UINT64_C(246811456),        // VRINTRD
    2212             :     UINT64_C(246810944),        // VRINTRH
    2213             :     UINT64_C(246811200),        // VRINTRS
    2214             :     UINT64_C(246876992),        // VRINTXD
    2215             :     UINT64_C(246876480),        // VRINTXH
    2216             :     UINT64_C(4089054336),       // VRINTXNDf
    2217             :     UINT64_C(4088792192),       // VRINTXNDh
    2218             :     UINT64_C(4089054400),       // VRINTXNQf
    2219             :     UINT64_C(4088792256),       // VRINTXNQh
    2220             :     UINT64_C(246876736),        // VRINTXS
    2221             :     UINT64_C(246811584),        // VRINTZD
    2222             :     UINT64_C(246811072),        // VRINTZH
    2223             :     UINT64_C(4089054592),       // VRINTZNDf
    2224             :     UINT64_C(4088792448),       // VRINTZNDh
    2225             :     UINT64_C(4089054656),       // VRINTZNQf
    2226             :     UINT64_C(4088792512),       // VRINTZNQh
    2227             :     UINT64_C(246811328),        // VRINTZS
    2228             :     UINT64_C(4060087616),       // VRSHLsv16i8
    2229             :     UINT64_C(4063233280),       // VRSHLsv1i64
    2230             :     UINT64_C(4062184704),       // VRSHLsv2i32
    2231             :     UINT64_C(4063233344),       // VRSHLsv2i64
    2232             :     UINT64_C(4061136128),       // VRSHLsv4i16
    2233             :     UINT64_C(4062184768),       // VRSHLsv4i32
    2234             :     UINT64_C(4061136192),       // VRSHLsv8i16
    2235             :     UINT64_C(4060087552),       // VRSHLsv8i8
    2236             :     UINT64_C(4076864832),       // VRSHLuv16i8
    2237             :     UINT64_C(4080010496),       // VRSHLuv1i64
    2238             :     UINT64_C(4078961920),       // VRSHLuv2i32
    2239             :     UINT64_C(4080010560),       // VRSHLuv2i64
    2240             :     UINT64_C(4077913344),       // VRSHLuv4i16
    2241             :     UINT64_C(4078961984),       // VRSHLuv4i32
    2242             :     UINT64_C(4077913408),       // VRSHLuv8i16
    2243             :     UINT64_C(4076864768),       // VRSHLuv8i8
    2244             :     UINT64_C(4070574160),       // VRSHRNv2i32
    2245             :     UINT64_C(4069525584),       // VRSHRNv4i16
    2246             :     UINT64_C(4069001296),       // VRSHRNv8i8
    2247             :     UINT64_C(4068999760),       // VRSHRsv16i8
    2248             :     UINT64_C(4068475536),       // VRSHRsv1i64
    2249             :     UINT64_C(4070572560),       // VRSHRsv2i32
    2250             :     UINT64_C(4068475600),       // VRSHRsv2i64
    2251             :     UINT64_C(4069523984),       // VRSHRsv4i16
    2252             :     UINT64_C(4070572624),       // VRSHRsv4i32
    2253             :     UINT64_C(4069524048),       // VRSHRsv8i16
    2254             :     UINT64_C(4068999696),       // VRSHRsv8i8
    2255             :     UINT64_C(4085776976),       // VRSHRuv16i8
    2256             :     UINT64_C(4085252752),       // VRSHRuv1i64
    2257             :     UINT64_C(4087349776),       // VRSHRuv2i32
    2258             :     UINT64_C(4085252816),       // VRSHRuv2i64
    2259             :     UINT64_C(4086301200),       // VRSHRuv4i16
    2260             :     UINT64_C(4087349840),       // VRSHRuv4i32
    2261             :     UINT64_C(4086301264),       // VRSHRuv8i16
    2262             :     UINT64_C(4085776912),       // VRSHRuv8i8
    2263             :     UINT64_C(4089119872),       // VRSQRTEd
    2264             :     UINT64_C(4089120128),       // VRSQRTEfd
    2265             :     UINT64_C(4089120192),       // VRSQRTEfq
    2266             :     UINT64_C(4088857984),       // VRSQRTEhd
    2267             :     UINT64_C(4088858048),       // VRSQRTEhq
    2268             :     UINT64_C(4089119936),       // VRSQRTEq
    2269             :     UINT64_C(4062187280),       // VRSQRTSfd
    2270             :     UINT64_C(4062187344),       // VRSQRTSfq
    2271             :     UINT64_C(4063235856),       // VRSQRTShd
    2272             :     UINT64_C(4063235920),       // VRSQRTShq
    2273             :     UINT64_C(4069000016),       // VRSRAsv16i8
    2274             :     UINT64_C(4068475792),       // VRSRAsv1i64
    2275             :     UINT64_C(4070572816),       // VRSRAsv2i32
    2276             :     UINT64_C(4068475856),       // VRSRAsv2i64
    2277             :     UINT64_C(4069524240),       // VRSRAsv4i16
    2278             :     UINT64_C(4070572880),       // VRSRAsv4i32
    2279             :     UINT64_C(4069524304),       // VRSRAsv8i16
    2280             :     UINT64_C(4068999952),       // VRSRAsv8i8
    2281             :     UINT64_C(4085777232),       // VRSRAuv16i8
    2282             :     UINT64_C(4085253008),       // VRSRAuv1i64
    2283             :     UINT64_C(4087350032),       // VRSRAuv2i32
    2284             :     UINT64_C(4085253072),       // VRSRAuv2i64
    2285             :     UINT64_C(4086301456),       // VRSRAuv4i16
    2286             :     UINT64_C(4087350096),       // VRSRAuv4i32
    2287             :     UINT64_C(4086301520),       // VRSRAuv8i16
    2288             :     UINT64_C(4085777168),       // VRSRAuv8i8
    2289             :     UINT64_C(4087350784),       // VRSUBHNv2i32
    2290             :     UINT64_C(4086302208),       // VRSUBHNv4i16
    2291             :     UINT64_C(4085253632),       // VRSUBHNv8i8
    2292             :     UINT64_C(4229958912),       // VSDOTD
    2293             :     UINT64_C(4263513344),       // VSDOTDI
    2294             :     UINT64_C(4229958976),       // VSDOTQ
    2295             :     UINT64_C(4263513408),       // VSDOTQI
    2296             :     UINT64_C(4261415680),       // VSELEQD
    2297             :     UINT64_C(4261415168),       // VSELEQH
    2298             :     UINT64_C(4261415424),       // VSELEQS
    2299             :     UINT64_C(4263512832),       // VSELGED
    2300             :     UINT64_C(4263512320),       // VSELGEH
    2301             :     UINT64_C(4263512576),       // VSELGES
    2302             :     UINT64_C(4264561408),       // VSELGTD
    2303             :     UINT64_C(4264560896),       // VSELGTH
    2304             :     UINT64_C(4264561152),       // VSELGTS
    2305             :     UINT64_C(4262464256),       // VSELVSD
    2306             :     UINT64_C(4262463744),       // VSELVSH
    2307             :     UINT64_C(4262464000),       // VSELVSS
    2308             :     UINT64_C(234883888),        // VSETLNi16
    2309             :     UINT64_C(234883856),        // VSETLNi32
    2310             :     UINT64_C(239078160),        // VSETLNi8
    2311             :     UINT64_C(4088791808),       // VSHLLi16
    2312             :     UINT64_C(4089053952),       // VSHLLi32
    2313             :     UINT64_C(4088529664),       // VSHLLi8
    2314             :     UINT64_C(4070574608),       // VSHLLsv2i64
    2315             :     UINT64_C(4069526032),       // VSHLLsv4i32
    2316             :     UINT64_C(4069001744),       // VSHLLsv8i16
    2317             :     UINT64_C(4087351824),       // VSHLLuv2i64
    2318             :     UINT64_C(4086303248),       // VSHLLuv4i32
    2319             :     UINT64_C(4085778960),       // VSHLLuv8i16
    2320             :     UINT64_C(4069000528),       // VSHLiv16i8
    2321             :     UINT64_C(4068476304),       // VSHLiv1i64
    2322             :     UINT64_C(4070573328),       // VSHLiv2i32
    2323             :     UINT64_C(4068476368),       // VSHLiv2i64
    2324             :     UINT64_C(4069524752),       // VSHLiv4i16
    2325             :     UINT64_C(4070573392),       // VSHLiv4i32
    2326             :     UINT64_C(4069524816),       // VSHLiv8i16
    2327             :     UINT64_C(4069000464),       // VSHLiv8i8
    2328             :     UINT64_C(4060087360),       // VSHLsv16i8
    2329             :     UINT64_C(4063233024),       // VSHLsv1i64
    2330             :     UINT64_C(4062184448),       // VSHLsv2i32
    2331             :     UINT64_C(4063233088),       // VSHLsv2i64
    2332             :     UINT64_C(4061135872),       // VSHLsv4i16
    2333             :     UINT64_C(4062184512),       // VSHLsv4i32
    2334             :     UINT64_C(4061135936),       // VSHLsv8i16
    2335             :     UINT64_C(4060087296),       // VSHLsv8i8
    2336             :     UINT64_C(4076864576),       // VSHLuv16i8
    2337             :     UINT64_C(4080010240),       // VSHLuv1i64
    2338             :     UINT64_C(4078961664),       // VSHLuv2i32
    2339             :     UINT64_C(4080010304),       // VSHLuv2i64
    2340             :     UINT64_C(4077913088),       // VSHLuv4i16
    2341             :     UINT64_C(4078961728),       // VSHLuv4i32
    2342             :     UINT64_C(4077913152),       // VSHLuv8i16
    2343             :     UINT64_C(4076864512),       // VSHLuv8i8
    2344             :     UINT64_C(4070574096),       // VSHRNv2i32
    2345             :     UINT64_C(4069525520),       // VSHRNv4i16
    2346             :     UINT64_C(4069001232),       // VSHRNv8i8
    2347             :     UINT64_C(4068999248),       // VSHRsv16i8
    2348             :     UINT64_C(4068475024),       // VSHRsv1i64
    2349             :     UINT64_C(4070572048),       // VSHRsv2i32
    2350             :     UINT64_C(4068475088),       // VSHRsv2i64
    2351             :     UINT64_C(4069523472),       // VSHRsv4i16
    2352             :     UINT64_C(4070572112),       // VSHRsv4i32
    2353             :     UINT64_C(4069523536),       // VSHRsv8i16
    2354             :     UINT64_C(4068999184),       // VSHRsv8i8
    2355             :     UINT64_C(4085776464),       // VSHRuv16i8
    2356             :     UINT64_C(4085252240),       // VSHRuv1i64
    2357             :     UINT64_C(4087349264),       // VSHRuv2i32
    2358             :     UINT64_C(4085252304),       // VSHRuv2i64
    2359             :     UINT64_C(4086300688),       // VSHRuv4i16
    2360             :     UINT64_C(4087349328),       // VSHRuv4i32
    2361             :     UINT64_C(4086300752),       // VSHRuv8i16
    2362             :     UINT64_C(4085776400),       // VSHRuv8i8
    2363             :     UINT64_C(247073600),        // VSHTOD
    2364             :     UINT64_C(247073088),        // VSHTOH
    2365             :     UINT64_C(247073344),        // VSHTOS
    2366             :     UINT64_C(246942656),        // VSITOD
    2367             :     UINT64_C(246942144),        // VSITOH
    2368             :     UINT64_C(246942400),        // VSITOS
    2369             :     UINT64_C(4085777744),       // VSLIv16i8
    2370             :     UINT64_C(4085253520),       // VSLIv1i64
    2371             :     UINT64_C(4087350544),       // VSLIv2i32
    2372             :     UINT64_C(4085253584),       // VSLIv2i64
    2373             :     UINT64_C(4086301968),       // VSLIv4i16
    2374             :     UINT64_C(4087350608),       // VSLIv4i32
    2375             :     UINT64_C(4086302032),       // VSLIv8i16
    2376             :     UINT64_C(4085777680),       // VSLIv8i8
    2377             :     UINT64_C(247073728),        // VSLTOD
    2378             :     UINT64_C(247073216),        // VSLTOH
    2379             :     UINT64_C(247073472),        // VSLTOS
    2380             :     UINT64_C(246483904),        // VSQRTD
    2381             :     UINT64_C(246483392),        // VSQRTH
    2382             :     UINT64_C(246483648),        // VSQRTS
    2383             :     UINT64_C(4068999504),       // VSRAsv16i8
    2384             :     UINT64_C(4068475280),       // VSRAsv1i64
    2385             :     UINT64_C(4070572304),       // VSRAsv2i32
    2386             :     UINT64_C(4068475344),       // VSRAsv2i64
    2387             :     UINT64_C(4069523728),       // VSRAsv4i16
    2388             :     UINT64_C(4070572368),       // VSRAsv4i32
    2389             :     UINT64_C(4069523792),       // VSRAsv8i16
    2390             :     UINT64_C(4068999440),       // VSRAsv8i8
    2391             :     UINT64_C(4085776720),       // VSRAuv16i8
    2392             :     UINT64_C(4085252496),       // VSRAuv1i64
    2393             :     UINT64_C(4087349520),       // VSRAuv2i32
    2394             :     UINT64_C(4085252560),       // VSRAuv2i64
    2395             :     UINT64_C(4086300944),       // VSRAuv4i16
    2396             :     UINT64_C(4087349584),       // VSRAuv4i32
    2397             :     UINT64_C(4086301008),       // VSRAuv8i16
    2398             :     UINT64_C(4085776656),       // VSRAuv8i8
    2399             :     UINT64_C(4085777488),       // VSRIv16i8
    2400             :     UINT64_C(4085253264),       // VSRIv1i64
    2401             :     UINT64_C(4087350288),       // VSRIv2i32
    2402             :     UINT64_C(4085253328),       // VSRIv2i64
    2403             :     UINT64_C(4086301712),       // VSRIv4i16
    2404             :     UINT64_C(4087350352),       // VSRIv4i32
    2405             :     UINT64_C(4086301776),       // VSRIv8i16
    2406             :     UINT64_C(4085777424),       // VSRIv8i8
    2407             :     UINT64_C(4102030351),       // VST1LNd16
    2408             :     UINT64_C(4102030336),       // VST1LNd16_UPD
    2409             :     UINT64_C(4102031375),       // VST1LNd32
    2410             :     UINT64_C(4102031360),       // VST1LNd32_UPD
    2411             :     UINT64_C(4102029327),       // VST1LNd8
    2412             :     UINT64_C(4102029312),       // VST1LNd8_UPD
    2413             :     UINT64_C(0),        // VST1LNq16Pseudo
    2414             :     UINT64_C(0),        // VST1LNq16Pseudo_UPD
    2415             :     UINT64_C(0),        // VST1LNq32Pseudo
    2416             :     UINT64_C(0),        // VST1LNq32Pseudo_UPD
    2417             :     UINT64_C(0),        // VST1LNq8Pseudo
    2418             :     UINT64_C(0),        // VST1LNq8Pseudo_UPD
    2419             :     UINT64_C(4093642575),       // VST1d16
    2420             :     UINT64_C(4093641295),       // VST1d16Q
    2421             :     UINT64_C(0),        // VST1d16QPseudo
    2422             :     UINT64_C(4093641293),       // VST1d16Qwb_fixed
    2423             :     UINT64_C(4093641280),       // VST1d16Qwb_register
    2424             :     UINT64_C(4093642319),       // VST1d16T
    2425             :     UINT64_C(0),        // VST1d16TPseudo
    2426             :     UINT64_C(4093642317),       // VST1d16Twb_fixed
    2427             :     UINT64_C(4093642304),       // VST1d16Twb_register
    2428             :     UINT64_C(4093642573),       // VST1d16wb_fixed
    2429             :     UINT64_C(4093642560),       // VST1d16wb_register
    2430             :     UINT64_C(4093642639),       // VST1d32
    2431             :     UINT64_C(4093641359),       // VST1d32Q
    2432             :     UINT64_C(0),        // VST1d32QPseudo
    2433             :     UINT64_C(4093641357),       // VST1d32Qwb_fixed
    2434             :     UINT64_C(4093641344),       // VST1d32Qwb_register
    2435             :     UINT64_C(4093642383),       // VST1d32T
    2436             :     UINT64_C(0),        // VST1d32TPseudo
    2437             :     UINT64_C(4093642381),       // VST1d32Twb_fixed
    2438             :     UINT64_C(4093642368),       // VST1d32Twb_register
    2439             :     UINT64_C(4093642637),       // VST1d32wb_fixed
    2440             :     UINT64_C(4093642624),       // VST1d32wb_register
    2441             :     UINT64_C(4093642703),       // VST1d64
    2442             :     UINT64_C(4093641423),       // VST1d64Q
    2443             :     UINT64_C(0),        // VST1d64QPseudo
    2444             :     UINT64_C(0),        // VST1d64QPseudoWB_fixed
    2445             :     UINT64_C(0),        // VST1d64QPseudoWB_register
    2446             :     UINT64_C(4093641421),       // VST1d64Qwb_fixed
    2447             :     UINT64_C(4093641408),       // VST1d64Qwb_register
    2448             :     UINT64_C(4093642447),       // VST1d64T
    2449             :     UINT64_C(0),        // VST1d64TPseudo
    2450             :     UINT64_C(0),        // VST1d64TPseudoWB_fixed
    2451             :     UINT64_C(0),        // VST1d64TPseudoWB_register
    2452             :     UINT64_C(4093642445),       // VST1d64Twb_fixed
    2453             :     UINT64_C(4093642432),       // VST1d64Twb_register
    2454             :     UINT64_C(4093642701),       // VST1d64wb_fixed
    2455             :     UINT64_C(4093642688),       // VST1d64wb_register
    2456             :     UINT64_C(4093642511),       // VST1d8
    2457             :     UINT64_C(4093641231),       // VST1d8Q
    2458             :     UINT64_C(0),        // VST1d8QPseudo
    2459             :     UINT64_C(4093641229),       // VST1d8Qwb_fixed
    2460             :     UINT64_C(4093641216),       // VST1d8Qwb_register
    2461             :     UINT64_C(4093642255),       // VST1d8T
    2462             :     UINT64_C(0),        // VST1d8TPseudo
    2463             :     UINT64_C(4093642253),       // VST1d8Twb_fixed
    2464             :     UINT64_C(4093642240),       // VST1d8Twb_register
    2465             :     UINT64_C(4093642509),       // VST1d8wb_fixed
    2466             :     UINT64_C(4093642496),       // VST1d8wb_register
    2467             :     UINT64_C(4093643343),       // VST1q16
    2468             :     UINT64_C(0),        // VST1q16HighQPseudo
    2469             :     UINT64_C(0),        // VST1q16HighTPseudo
    2470             :     UINT64_C(0),        // VST1q16LowQPseudo_UPD
    2471             :     UINT64_C(0),        // VST1q16LowTPseudo_UPD
    2472             :     UINT64_C(4093643341),       // VST1q16wb_fixed
    2473             :     UINT64_C(4093643328),       // VST1q16wb_register
    2474             :     UINT64_C(4093643407),       // VST1q32
    2475             :     UINT64_C(0),        // VST1q32HighQPseudo
    2476             :     UINT64_C(0),        // VST1q32HighTPseudo
    2477             :     UINT64_C(0),        // VST1q32LowQPseudo_UPD
    2478             :     UINT64_C(0),        // VST1q32LowTPseudo_UPD
    2479             :     UINT64_C(4093643405),       // VST1q32wb_fixed
    2480             :     UINT64_C(4093643392),       // VST1q32wb_register
    2481             :     UINT64_C(4093643471),       // VST1q64
    2482             :     UINT64_C(0),        // VST1q64HighQPseudo
    2483             :     UINT64_C(0),        // VST1q64HighTPseudo
    2484             :     UINT64_C(0),        // VST1q64LowQPseudo_UPD
    2485             :     UINT64_C(0),        // VST1q64LowTPseudo_UPD
    2486             :     UINT64_C(4093643469),       // VST1q64wb_fixed
    2487             :     UINT64_C(4093643456),       // VST1q64wb_register
    2488             :     UINT64_C(4093643279),       // VST1q8
    2489             :     UINT64_C(0),        // VST1q8HighQPseudo
    2490             :     UINT64_C(0),        // VST1q8HighTPseudo
    2491             :     UINT64_C(0),        // VST1q8LowQPseudo_UPD
    2492             :     UINT64_C(0),        // VST1q8LowTPseudo_UPD
    2493             :     UINT64_C(4093643277),       // VST1q8wb_fixed
    2494             :     UINT64_C(4093643264),       // VST1q8wb_register
    2495             :     UINT64_C(4102030607),       // VST2LNd16
    2496             :     UINT64_C(0),        // VST2LNd16Pseudo
    2497             :     UINT64_C(0),        // VST2LNd16Pseudo_UPD
    2498             :     UINT64_C(4102030592),       // VST2LNd16_UPD
    2499             :     UINT64_C(4102031631),       // VST2LNd32
    2500             :     UINT64_C(0),        // VST2LNd32Pseudo
    2501             :     UINT64_C(0),        // VST2LNd32Pseudo_UPD
    2502             :     UINT64_C(4102031616),       // VST2LNd32_UPD
    2503             :     UINT64_C(4102029583),       // VST2LNd8
    2504             :     UINT64_C(0),        // VST2LNd8Pseudo
    2505             :     UINT64_C(0),        // VST2LNd8Pseudo_UPD
    2506             :     UINT64_C(4102029568),       // VST2LNd8_UPD
    2507             :     UINT64_C(4102030639),       // VST2LNq16
    2508             :     UINT64_C(0),        // VST2LNq16Pseudo
    2509             :     UINT64_C(0),        // VST2LNq16Pseudo_UPD
    2510             :     UINT64_C(4102030624),       // VST2LNq16_UPD
    2511             :     UINT64_C(4102031695),       // VST2LNq32
    2512             :     UINT64_C(0),        // VST2LNq32Pseudo
    2513             :     UINT64_C(0),        // VST2LNq32Pseudo_UPD
    2514             :     UINT64_C(4102031680),       // VST2LNq32_UPD
    2515             :     UINT64_C(4093643087),       // VST2b16
    2516             :     UINT64_C(4093643085),       // VST2b16wb_fixed
    2517             :     UINT64_C(4093643072),       // VST2b16wb_register
    2518             :     UINT64_C(4093643151),       // VST2b32
    2519             :     UINT64_C(4093643149),       // VST2b32wb_fixed
    2520             :     UINT64_C(4093643136),       // VST2b32wb_register
    2521             :     UINT64_C(4093643023),       // VST2b8
    2522             :     UINT64_C(4093643021),       // VST2b8wb_fixed
    2523             :     UINT64_C(4093643008),       // VST2b8wb_register
    2524             :     UINT64_C(4093642831),       // VST2d16
    2525             :     UINT64_C(4093642829),       // VST2d16wb_fixed
    2526             :     UINT64_C(4093642816),       // VST2d16wb_register
    2527             :     UINT64_C(4093642895),       // VST2d32
    2528             :     UINT64_C(4093642893),       // VST2d32wb_fixed
    2529             :     UINT64_C(4093642880),       // VST2d32wb_register
    2530             :     UINT64_C(4093642767),       // VST2d8
    2531             :     UINT64_C(4093642765),       // VST2d8wb_fixed
    2532             :     UINT64_C(4093642752),       // VST2d8wb_register
    2533             :     UINT64_C(4093641551),       // VST2q16
    2534             :     UINT64_C(0),        // VST2q16Pseudo
    2535             :     UINT64_C(0),        // VST2q16PseudoWB_fixed
    2536             :     UINT64_C(0),        // VST2q16PseudoWB_register
    2537             :     UINT64_C(4093641549),       // VST2q16wb_fixed
    2538             :     UINT64_C(4093641536),       // VST2q16wb_register
    2539             :     UINT64_C(4093641615),       // VST2q32
    2540             :     UINT64_C(0),        // VST2q32Pseudo
    2541             :     UINT64_C(0),        // VST2q32PseudoWB_fixed
    2542             :     UINT64_C(0),        // VST2q32PseudoWB_register
    2543             :     UINT64_C(4093641613),       // VST2q32wb_fixed
    2544             :     UINT64_C(4093641600),       // VST2q32wb_register
    2545             :     UINT64_C(4093641487),       // VST2q8
    2546             :     UINT64_C(0),        // VST2q8Pseudo
    2547             :     UINT64_C(0),        // VST2q8PseudoWB_fixed
    2548             :     UINT64_C(0),        // VST2q8PseudoWB_register
    2549             :     UINT64_C(4093641485),       // VST2q8wb_fixed
    2550             :     UINT64_C(4093641472),       // VST2q8wb_register
    2551             :     UINT64_C(4102030863),       // VST3LNd16
    2552             :     UINT64_C(0),        // VST3LNd16Pseudo
    2553             :     UINT64_C(0),        // VST3LNd16Pseudo_UPD
    2554             :     UINT64_C(4102030848),       // VST3LNd16_UPD
    2555             :     UINT64_C(4102031887),       // VST3LNd32
    2556             :     UINT64_C(0),        // VST3LNd32Pseudo
    2557             :     UINT64_C(0),        // VST3LNd32Pseudo_UPD
    2558             :     UINT64_C(4102031872),       // VST3LNd32_UPD
    2559             :     UINT64_C(4102029839),       // VST3LNd8
    2560             :     UINT64_C(0),        // VST3LNd8Pseudo
    2561             :     UINT64_C(0),        // VST3LNd8Pseudo_UPD
    2562             :     UINT64_C(4102029824),       // VST3LNd8_UPD
    2563             :     UINT64_C(4102030895),       // VST3LNq16
    2564             :     UINT64_C(0),        // VST3LNq16Pseudo
    2565             :     UINT64_C(0),        // VST3LNq16Pseudo_UPD
    2566             :     UINT64_C(4102030880),       // VST3LNq16_UPD
    2567             :     UINT64_C(4102031951),       // VST3LNq32
    2568             :     UINT64_C(0),        // VST3LNq32Pseudo
    2569             :     UINT64_C(0),        // VST3LNq32Pseudo_UPD
    2570             :     UINT64_C(4102031936),       // VST3LNq32_UPD
    2571             :     UINT64_C(4093641807),       // VST3d16
    2572             :     UINT64_C(0),        // VST3d16Pseudo
    2573             :     UINT64_C(0),        // VST3d16Pseudo_UPD
    2574             :     UINT64_C(4093641792),       // VST3d16_UPD
    2575             :     UINT64_C(4093641871),       // VST3d32
    2576             :     UINT64_C(0),        // VST3d32Pseudo
    2577             :     UINT64_C(0),        // VST3d32Pseudo_UPD
    2578             :     UINT64_C(4093641856),       // VST3d32_UPD
    2579             :     UINT64_C(4093641743),       // VST3d8
    2580             :     UINT64_C(0),        // VST3d8Pseudo
    2581             :     UINT64_C(0),        // VST3d8Pseudo_UPD
    2582             :     UINT64_C(4093641728),       // VST3d8_UPD
    2583             :     UINT64_C(4093642063),       // VST3q16
    2584             :     UINT64_C(0),        // VST3q16Pseudo_UPD
    2585             :     UINT64_C(4093642048),       // VST3q16_UPD
    2586             :     UINT64_C(0),        // VST3q16oddPseudo
    2587             :     UINT64_C(0),        // VST3q16oddPseudo_UPD
    2588             :     UINT64_C(4093642127),       // VST3q32
    2589             :     UINT64_C(0),        // VST3q32Pseudo_UPD
    2590             :     UINT64_C(4093642112),       // VST3q32_UPD
    2591             :     UINT64_C(0),        // VST3q32oddPseudo
    2592             :     UINT64_C(0),        // VST3q32oddPseudo_UPD
    2593             :     UINT64_C(4093641999),       // VST3q8
    2594             :     UINT64_C(0),        // VST3q8Pseudo_UPD
    2595             :     UINT64_C(4093641984),       // VST3q8_UPD
    2596             :     UINT64_C(0),        // VST3q8oddPseudo
    2597             :     UINT64_C(0),        // VST3q8oddPseudo_UPD
    2598             :     UINT64_C(4102031119),       // VST4LNd16
    2599             :     UINT64_C(0),        // VST4LNd16Pseudo
    2600             :     UINT64_C(0),        // VST4LNd16Pseudo_UPD
    2601             :     UINT64_C(4102031104),       // VST4LNd16_UPD
    2602             :     UINT64_C(4102032143),       // VST4LNd32
    2603             :     UINT64_C(0),        // VST4LNd32Pseudo
    2604             :     UINT64_C(0),        // VST4LNd32Pseudo_UPD
    2605             :     UINT64_C(4102032128),       // VST4LNd32_UPD
    2606             :     UINT64_C(4102030095),       // VST4LNd8
    2607             :     UINT64_C(0),        // VST4LNd8Pseudo
    2608             :     UINT64_C(0),        // VST4LNd8Pseudo_UPD
    2609             :     UINT64_C(4102030080),       // VST4LNd8_UPD
    2610             :     UINT64_C(4102031151),       // VST4LNq16
    2611             :     UINT64_C(0),        // VST4LNq16Pseudo
    2612             :     UINT64_C(0),        // VST4LNq16Pseudo_UPD
    2613             :     UINT64_C(4102031136),       // VST4LNq16_UPD
    2614             :     UINT64_C(4102032207),       // VST4LNq32
    2615             :     UINT64_C(0),        // VST4LNq32Pseudo
    2616             :     UINT64_C(0),        // VST4LNq32Pseudo_UPD
    2617             :     UINT64_C(4102032192),       // VST4LNq32_UPD
    2618             :     UINT64_C(4093640783),       // VST4d16
    2619             :     UINT64_C(0),        // VST4d16Pseudo
    2620             :     UINT64_C(0),        // VST4d16Pseudo_UPD
    2621             :     UINT64_C(4093640768),       // VST4d16_UPD
    2622             :     UINT64_C(4093640847),       // VST4d32
    2623             :     UINT64_C(0),        // VST4d32Pseudo
    2624             :     UINT64_C(0),        // VST4d32Pseudo_UPD
    2625             :     UINT64_C(4093640832),       // VST4d32_UPD
    2626             :     UINT64_C(4093640719),       // VST4d8
    2627             :     UINT64_C(0),        // VST4d8Pseudo
    2628             :     UINT64_C(0),        // VST4d8Pseudo_UPD
    2629             :     UINT64_C(4093640704),       // VST4d8_UPD
    2630             :     UINT64_C(4093641039),       // VST4q16
    2631             :     UINT64_C(0),        // VST4q16Pseudo_UPD
    2632             :     UINT64_C(4093641024),       // VST4q16_UPD
    2633             :     UINT64_C(0),        // VST4q16oddPseudo
    2634             :     UINT64_C(0),        // VST4q16oddPseudo_UPD
    2635             :     UINT64_C(4093641103),       // VST4q32
    2636             :     UINT64_C(0),        // VST4q32Pseudo_UPD
    2637             :     UINT64_C(4093641088),       // VST4q32_UPD
    2638             :     UINT64_C(0),        // VST4q32oddPseudo
    2639             :     UINT64_C(0),        // VST4q32oddPseudo_UPD
    2640             :     UINT64_C(4093640975),       // VST4q8
    2641             :     UINT64_C(0),        // VST4q8Pseudo_UPD
    2642             :     UINT64_C(4093640960),       // VST4q8_UPD
    2643             :     UINT64_C(0),        // VST4q8oddPseudo
    2644             :     UINT64_C(0),        // VST4q8oddPseudo_UPD
    2645             :     UINT64_C(220203776),        // VSTMDDB_UPD
    2646             :     UINT64_C(209718016),        // VSTMDIA
    2647             :     UINT64_C(211815168),        // VSTMDIA_UPD
    2648             :     UINT64_C(0),        // VSTMQIA
    2649             :     UINT64_C(220203520),        // VSTMSDB_UPD
    2650             :     UINT64_C(209717760),        // VSTMSIA
    2651             :     UINT64_C(211814912),        // VSTMSIA_UPD
    2652             :     UINT64_C(218106624),        // VSTRD
    2653             :     UINT64_C(218106112),        // VSTRH
    2654             :     UINT64_C(218106368),        // VSTRS
    2655             :     UINT64_C(238029632),        // VSUBD
    2656             :     UINT64_C(238029120),        // VSUBH
    2657             :     UINT64_C(4070573568),       // VSUBHNv2i32
    2658             :     UINT64_C(4069524992),       // VSUBHNv4i16
    2659             :     UINT64_C(4068476416),       // VSUBHNv8i8
    2660             :     UINT64_C(4070572544),       // VSUBLsv2i64
    2661             :     UINT64_C(4069523968),       // VSUBLsv4i32
    2662             :     UINT64_C(4068475392),       // VSUBLsv8i16
    2663             :     UINT64_C(4087349760),       // VSUBLuv2i64
    2664             :     UINT64_C(4086301184),       // VSUBLuv4i32
    2665             :     UINT64_C(4085252608),       // VSUBLuv8i16
    2666             :     UINT64_C(238029376),        // VSUBS
    2667             :     UINT64_C(4070572800),       // VSUBWsv2i64
    2668             :     UINT64_C(4069524224),       // VSUBWsv4i32
    2669             :     UINT64_C(4068475648),       // VSUBWsv8i16
    2670             :     UINT64_C(4087350016),       // VSUBWuv2i64
    2671             :     UINT64_C(4086301440),       // VSUBWuv4i32
    2672             :     UINT64_C(4085252864),       // VSUBWuv8i16
    2673             :     UINT64_C(4062186752),       // VSUBfd
    2674             :     UINT64_C(4062186816),       // VSUBfq
    2675             :     UINT64_C(4063235328),       // VSUBhd
    2676             :     UINT64_C(4063235392),       // VSUBhq
    2677             :     UINT64_C(4076865600),       // VSUBv16i8
    2678             :     UINT64_C(4080011264),       // VSUBv1i64
    2679             :     UINT64_C(4078962688),       // VSUBv2i32
    2680             :     UINT64_C(4080011328),       // VSUBv2i64
    2681             :     UINT64_C(4077914112),       // VSUBv4i16
    2682             :     UINT64_C(4078962752),       // VSUBv4i32
    2683             :     UINT64_C(4077914176),       // VSUBv8i16
    2684             :     UINT64_C(4076865536),       // VSUBv8i8
    2685             :     UINT64_C(4088528896),       // VSWPd
    2686             :     UINT64_C(4088528960),       // VSWPq
    2687             :     UINT64_C(4088399872),       // VTBL1
    2688             :     UINT64_C(4088400128),       // VTBL2
    2689             :     UINT64_C(4088400384),       // VTBL3
    2690             :     UINT64_C(0),        // VTBL3Pseudo
    2691             :     UINT64_C(4088400640),       // VTBL4
    2692             :     UINT64_C(0),        // VTBL4Pseudo
    2693             :     UINT64_C(4088399936),       // VTBX1
    2694             :     UINT64_C(4088400192),       // VTBX2
    2695             :     UINT64_C(4088400448),       // VTBX3
    2696             :     UINT64_C(0),        // VTBX3Pseudo
    2697             :     UINT64_C(4088400704),       // VTBX4
    2698             :     UINT64_C(0),        // VTBX4Pseudo
    2699             :     UINT64_C(247335744),        // VTOSHD
    2700             :     UINT64_C(247335232),        // VTOSHH
    2701             :     UINT64_C(247335488),        // VTOSHS
    2702             :     UINT64_C(247270208),        // VTOSIRD
    2703             :     UINT64_C(247269696),        // VTOSIRH
    2704             :     UINT64_C(247269952),        // VTOSIRS
    2705             :     UINT64_C(247270336),        // VTOSIZD
    2706             :     UINT64_C(247269824),        // VTOSIZH
    2707             :     UINT64_C(247270080),        // VTOSIZS
    2708             :     UINT64_C(247335872),        // VTOSLD
    2709             :     UINT64_C(247335360),        // VTOSLH
    2710             :     UINT64_C(247335616),        // VTOSLS
    2711             :     UINT64_C(247401280),        // VTOUHD
    2712             :     UINT64_C(247400768),        // VTOUHH
    2713             :     UINT64_C(247401024),        // VTOUHS
    2714             :     UINT64_C(247204672),        // VTOUIRD
    2715             :     UINT64_C(247204160),        // VTOUIRH
    2716             :     UINT64_C(247204416),        // VTOUIRS
    2717             :     UINT64_C(247204800),        // VTOUIZD
    2718             :     UINT64_C(247204288),        // VTOUIZH
    2719             :     UINT64_C(247204544),        // VTOUIZS
    2720             :     UINT64_C(247401408),        // VTOULD
    2721             :     UINT64_C(247400896),        // VTOULH
    2722             :     UINT64_C(247401152),        // VTOULS
    2723             :     UINT64_C(4088791168),       // VTRNd16
    2724             :     UINT64_C(4089053312),       // VTRNd32
    2725             :     UINT64_C(4088529024),       // VTRNd8
    2726             :     UINT64_C(4088791232),       // VTRNq16
    2727             :     UINT64_C(4089053376),       // VTRNq32
    2728             :     UINT64_C(4088529088),       // VTRNq8
    2729             :     UINT64_C(4060088400),       // VTSTv16i8
    2730             :     UINT64_C(4062185488),       // VTSTv2i32
    2731             :     UINT64_C(4061136912),       // VTSTv4i16
    2732             :     UINT64_C(4062185552),       // VTSTv4i32
    2733             :     UINT64_C(4061136976),       // VTSTv8i16
    2734             :     UINT64_C(4060088336),       // VTSTv8i8
    2735             :     UINT64_C(4229958928),       // VUDOTD
    2736             :     UINT64_C(4263513360),       // VUDOTDI
    2737             :     UINT64_C(4229958992),       // VUDOTQ
    2738             :     UINT64_C(4263513424),       // VUDOTQI
    2739             :     UINT64_C(247139136),        // VUHTOD
    2740             :     UINT64_C(247138624),        // VUHTOH
    2741             :     UINT64_C(247138880),        // VUHTOS
    2742             :     UINT64_C(246942528),        // VUITOD
    2743             :     UINT64_C(246942016),        // VUITOH
    2744             :     UINT64_C(246942272),        // VUITOS
    2745             :     UINT64_C(247139264),        // VULTOD
    2746             :     UINT64_C(247138752),        // VULTOH
    2747             :     UINT64_C(247139008),        // VULTOS
    2748             :     UINT64_C(4088791296),       // VUZPd16
    2749             :     UINT64_C(4088529152),       // VUZPd8
    2750             :     UINT64_C(4088791360),       // VUZPq16
    2751             :     UINT64_C(4089053504),       // VUZPq32
    2752             :     UINT64_C(4088529216),       // VUZPq8
    2753             :     UINT64_C(4088791424),       // VZIPd16
    2754             :     UINT64_C(4088529280),       // VZIPd8
    2755             :     UINT64_C(4088791488),       // VZIPq16
    2756             :     UINT64_C(4089053632),       // VZIPq32
    2757             :     UINT64_C(4088529344),       // VZIPq8
    2758             :     UINT64_C(139460608),        // sysLDMDA
    2759             :     UINT64_C(141557760),        // sysLDMDA_UPD
    2760             :     UINT64_C(156237824),        // sysLDMDB
    2761             :     UINT64_C(158334976),        // sysLDMDB_UPD
    2762             :     UINT64_C(147849216),        // sysLDMIA
    2763             :     UINT64_C(149946368),        // sysLDMIA_UPD
    2764             :     UINT64_C(164626432),        // sysLDMIB
    2765             :     UINT64_C(166723584),        // sysLDMIB_UPD
    2766             :     UINT64_C(138412032),        // sysSTMDA
    2767             :     UINT64_C(140509184),        // sysSTMDA_UPD
    2768             :     UINT64_C(155189248),        // sysSTMDB
    2769             :     UINT64_C(157286400),        // sysSTMDB_UPD
    2770             :     UINT64_C(146800640),        // sysSTMIA
    2771             :     UINT64_C(148897792),        // sysSTMIA_UPD
    2772             :     UINT64_C(163577856),        // sysSTMIB
    2773             :     UINT64_C(165675008),        // sysSTMIB_UPD
    2774             :     UINT64_C(4047503360),       // t2ADCri
    2775             :     UINT64_C(3946840064),       // t2ADCrr
    2776             :     UINT64_C(3946840064),       // t2ADCrs
    2777             :     UINT64_C(4043309056),       // t2ADDri
    2778             :     UINT64_C(4060086272),       // t2ADDri12
    2779             :     UINT64_C(3942645760),       // t2ADDrr
    2780             :     UINT64_C(3942645760),       // t2ADDrs
    2781             :     UINT64_C(4061069312),       // t2ADR
    2782             :     UINT64_C(4026531840),       // t2ANDri
    2783             :     UINT64_C(3925868544),       // t2ANDrr
    2784             :     UINT64_C(3925868544),       // t2ANDrs
    2785             :     UINT64_C(3931045920),       // t2ASRri
    2786             :     UINT64_C(4198559744),       // t2ASRrr
    2787             :     UINT64_C(4026568704),       // t2B
    2788             :     UINT64_C(4084137984),       // t2BFC
    2789             :     UINT64_C(4083154944),       // t2BFI
    2790             :     UINT64_C(4028628992),       // t2BICri
    2791             :     UINT64_C(3927965696),       // t2BICrr
    2792             :     UINT64_C(3927965696),       // t2BICrs
    2793             :     UINT64_C(4089483008),       // t2BXJ
    2794             :     UINT64_C(4026564608),       // t2Bcc
    2795             :     UINT64_C(3992977408),       // t2CDP
    2796             :     UINT64_C(4261412864),       // t2CDP2
    2797             :     UINT64_C(4089417519),       // t2CLREX
    2798             :     UINT64_C(4205899904),       // t2CLZ
    2799             :     UINT64_C(4044361472),       // t2CMNri
    2800             :     UINT64_C(3943698176),       // t2CMNzrr
    2801             :     UINT64_C(3943698176),       // t2CMNzrs
    2802             :     UINT64_C(4054847232),       // t2CMPri
    2803             :     UINT64_C(3954183936),       // t2CMPrr
    2804             :     UINT64_C(3954183936),       // t2CMPrs
    2805             :     UINT64_C(4088365312),       // t2CPS1p
    2806             :     UINT64_C(4088365056),       // t2CPS2p
    2807             :     UINT64_C(4088365312),       // t2CPS3p
    2808             :     UINT64_C(4206948480),       // t2CRC32B
    2809             :     UINT64_C(4207997056),       // t2CRC32CB
    2810             :     UINT64_C(4207997072),       // t2CRC32CH
    2811             :     UINT64_C(4207997088),       // t2CRC32CW
    2812             :     UINT64_C(4206948496),       // t2CRC32H
    2813             :     UINT64_C(4206948512),       // t2CRC32W
    2814             :     UINT64_C(4088365296),       // t2DBG
    2815             :     UINT64_C(4153376769),       // t2DCPS1
    2816             :     UINT64_C(4153376770),       // t2DCPS2
    2817             :     UINT64_C(4153376771),       // t2DCPS3
    2818             :     UINT64_C(4089417552),       // t2DMB
    2819             :     UINT64_C(4089417536),       // t2DSB
    2820             :     UINT64_C(4034920448),       // t2EORri
    2821             :     UINT64_C(3934257152),       // t2EORrr
    2822             :     UINT64_C(3934257152),       // t2EORrs
    2823             :     UINT64_C(4088365056),       // t2HINT
    2824             :     UINT64_C(4158685184),       // t2HVC
    2825             :     UINT64_C(4089417568),       // t2ISB
    2826             :     UINT64_C(48896),    // t2IT
    2827             :     UINT64_C(0),        // t2Int_eh_sjlj_setjmp
    2828             :     UINT64_C(0),        // t2Int_eh_sjlj_setjmp_nofp
    2829             :     UINT64_C(3905949615),       // t2LDA
    2830             :     UINT64_C(3905949583),       // t2LDAB
    2831             :     UINT64_C(3905949679),       // t2LDAEX
    2832             :     UINT64_C(3905949647),       // t2LDAEXB
    2833             :     UINT64_C(3905945855),       // t2LDAEXD
    2834             :     UINT64_C(3905949663),       // t2LDAEXH
    2835             :     UINT64_C(3905949599),       // t2LDAH
    2836             :     UINT64_C(4249878528),       // t2LDC2L_OFFSET
    2837             :     UINT64_C(4241489920),       // t2LDC2L_OPTION
    2838             :     UINT64_C(4235198464),       // t2LDC2L_POST
    2839             :     UINT64_C(4251975680),       // t2LDC2L_PRE
    2840             :     UINT64_C(4245684224),       // t2LDC2_OFFSET
    2841             :     UINT64_C(4237295616),       // t2LDC2_OPTION
    2842             :     UINT64_C(4231004160),       // t2LDC2_POST
    2843             :     UINT64_C(4247781376),       // t2LDC2_PRE
    2844             :     UINT64_C(3981443072),       // t2LDCL_OFFSET
    2845             :     UINT64_C(3973054464),       // t2LDCL_OPTION
    2846             :     UINT64_C(3966763008),       // t2LDCL_POST
    2847             :     UINT64_C(3983540224),       // t2LDCL_PRE
    2848             :     UINT64_C(3977248768),       // t2LDC_OFFSET
    2849             :     UINT64_C(3968860160),       // t2LDC_OPTION
    2850             :     UINT64_C(3962568704),       // t2LDC_POST
    2851             :     UINT64_C(3979345920),       // t2LDC_PRE
    2852             :     UINT64_C(3910139904),       // t2LDMDB
    2853             :     UINT64_C(3912237056),       // t2LDMDB_UPD
    2854             :     UINT64_C(3901751296),       // t2LDMIA
    2855             :     UINT64_C(3903848448),       // t2LDMIA_UPD
    2856             :     UINT64_C(4161801728),       // t2LDRBT
    2857             :     UINT64_C(4161800448),       // t2LDRB_POST
    2858             :     UINT64_C(4161801472),       // t2LDRB_PRE
    2859             :     UINT64_C(4170186752),       // t2LDRBi12
    2860             :     UINT64_C(4161801216),       // t2LDRBi8
    2861             :     UINT64_C(4162781184),       // t2LDRBpci
    2862             :     UINT64_C(4161798144),       // t2LDRBs
    2863             :     UINT64_C(3899654144),       // t2LDRD_POST
    2864             :     UINT64_C(3916431360),       // t2LDRD_PRE
    2865             :     UINT64_C(3914334208),       // t2LDRDi8
    2866             :     UINT64_C(3897560832),       // t2LDREX
    2867             :     UINT64_C(3905949519),       // t2LDREXB
    2868             :     UINT64_C(3905945727),       // t2LDREXD
    2869             :     UINT64_C(3905949535),       // t2LDREXH
    2870             :     UINT64_C(4163898880),       // t2LDRHT
    2871             :     UINT64_C(4163897600),       // t2LDRH_POST
    2872             :     UINT64_C(4163898624),       // t2LDRH_PRE
    2873             :     UINT64_C(4172283904),       // t2LDRHi12
    2874             :     UINT64_C(4163898368),       // t2LDRHi8
    2875             :     UINT64_C(4164878336),       // t2LDRHpci
    2876             :     UINT64_C(4163895296),       // t2LDRHs
    2877             :     UINT64_C(4178578944),       // t2LDRSBT
    2878             :     UINT64_C(4178577664),       // t2LDRSB_POST
    2879             :     UINT64_C(4178578688),       // t2LDRSB_PRE
    2880             :     UINT64_C(4186963968),       // t2LDRSBi12
    2881             :     UINT64_C(4178578432),       // t2LDRSBi8
    2882             :     UINT64_C(4179558400),       // t2LDRSBpci
    2883             :     UINT64_C(4178575360),       // t2LDRSBs
    2884             :     UINT64_C(4180676096),       // t2LDRSHT
    2885             :     UINT64_C(4180674816),       // t2LDRSH_POST
    2886             :     UINT64_C(4180675840),       // t2LDRSH_PRE
    2887             :     UINT64_C(4189061120),       // t2LDRSHi12
    2888             :     UINT64_C(4180675584),       // t2LDRSHi8
    2889             :     UINT64_C(4181655552),       // t2LDRSHpci
    2890             :     UINT64_C(4180672512),       // t2LDRSHs
    2891             :     UINT64_C(4165996032),       // t2LDRT
    2892             :     UINT64_C(4165994752),       // t2LDR_POST
    2893             :     UINT64_C(4165995776),       // t2LDR_PRE
    2894             :     UINT64_C(4174381056),       // t2LDRi12
    2895             :     UINT64_C(4165995520),       // t2LDRi8
    2896             :     UINT64_C(4166975488),       // t2LDRpci
    2897             :     UINT64_C(4165992448),       // t2LDRs
    2898             :     UINT64_C(3931045888),       // t2LSLri
    2899             :     UINT64_C(4194365440),       // t2LSLrr
    2900             :     UINT64_C(3931045904),       // t2LSRri
    2901             :     UINT64_C(4196462592),       // t2LSRrr
    2902             :     UINT64_C(3992977424),       // t2MCR
    2903             :     UINT64_C(4261412880),       // t2MCR2
    2904             :     UINT64_C(3963617280),       // t2MCRR
    2905             :     UINT64_C(4232052736),       // t2MCRR2
    2906             :     UINT64_C(4211081216),       // t2MLA
    2907             :     UINT64_C(4211081232),       // t2MLS
    2908             :     UINT64_C(4072669184),       // t2MOVTi16
    2909             :     UINT64_C(4031709184),       // t2MOVi
    2910             :     UINT64_C(4064280576),       // t2MOVi16
    2911             :     UINT64_C(3931045888),       // t2MOVr
    2912             :     UINT64_C(3932094560),       // t2MOVsra_flag
    2913             :     UINT64_C(3932094544),       // t2MOVsrl_flag
    2914             :     UINT64_C(3994026000),       // t2MRC
    2915             :     UINT64_C(4262461456),       // t2MRC2
    2916             :     UINT64_C(3964665856),       // t2MRRC
    2917             :     UINT64_C(4233101312),       // t2MRRC2
    2918             :     UINT64_C(4092559360),       // t2MRS_AR
    2919             :     UINT64_C(4092559360),       // t2MRS_M
    2920             :     UINT64_C(4091576352),       // t2MRSbanked
    2921             :     UINT64_C(4093607936),       // t2MRSsys_AR
    2922             :     UINT64_C(4085284864),       // t2MSR_AR
    2923             :     UINT64_C(4085284864),       // t2MSR_M
    2924             :     UINT64_C(4085284896),       // t2MSRbanked
    2925             :     UINT64_C(4211142656),       // t2MUL
    2926             :     UINT64_C(4033806336),       // t2MVNi
    2927             :     UINT64_C(3933143040),       // t2MVNr
    2928             :     UINT64_C(3933143040),       // t2MVNs
    2929             :     UINT64_C(4032823296),       // t2ORNri
    2930             :     UINT64_C(3932160000),       // t2ORNrr
    2931             :     UINT64_C(3932160000),       // t2ORNrs
    2932             :     UINT64_C(4030726144),       // t2ORRri
    2933             :     UINT64_C(3930062848),       // t2ORRrr
    2934             :     UINT64_C(3930062848),       // t2ORRrs
    2935             :     UINT64_C(3938451456),       // t2PKHBT
    2936             :     UINT64_C(3938451488),       // t2PKHTB
    2937             :     UINT64_C(4172345344),       // t2PLDWi12
    2938             :     UINT64_C(4163959808),       // t2PLDWi8
    2939             :     UINT64_C(4163956736),       // t2PLDWs
    2940             :     UINT64_C(4170248192),       // t2PLDi12
    2941             :     UINT64_C(4161862656),       // t2PLDi8
    2942             :     UINT64_C(4162842624),       // t2PLDpci
    2943             :     UINT64_C(4161859584),       // t2PLDs
    2944             :     UINT64_C(4187025408),       // t2PLIi12
    2945             :     UINT64_C(4178639872),       // t2PLIi8
    2946             :     UINT64_C(4179619840),       // t2PLIpci
    2947             :     UINT64_C(4178636800),       // t2PLIs
    2948             :     UINT64_C(4202754176),       // t2QADD
    2949             :     UINT64_C(4203802640),       // t2QADD16
    2950             :     UINT64_C(4202754064),       // t2QADD8
    2951             :     UINT64_C(4204851216),       // t2QASX
    2952             :     UINT64_C(4202754192),       // t2QDADD
    2953             :     UINT64_C(4202754224),       // t2QDSUB
    2954             :     UINT64_C(4209045520),       // t2QSAX
    2955             :     UINT64_C(4202754208),       // t2QSUB
    2956             :     UINT64_C(4207996944),       // t2QSUB16
    2957             :     UINT64_C(4206948368),       // t2QSUB8
    2958             :     UINT64_C(4203802784),       // t2RBIT
    2959             :     UINT64_C(4203802752),       // t2REV
    2960             :     UINT64_C(4203802768),       // t2REV16
    2961             :     UINT64_C(4203802800),       // t2REVSH
    2962             :     UINT64_C(3893411840),       // t2RFEDB
    2963             :     UINT64_C(3895508992),       // t2RFEDBW
    2964             :     UINT64_C(3918577664),       // t2RFEIA
    2965             :     UINT64_C(3920674816),       // t2RFEIAW
    2966             :     UINT64_C(3931045936),       // t2RORri
    2967             :     UINT64_C(4200656896),       // t2RORrr
    2968             :     UINT64_C(3931045936),       // t2RRX
    2969             :     UINT64_C(4055891968),       // t2RSBri
    2970             :     UINT64_C(3955228672),       // t2RSBrr
    2971             :     UINT64_C(3955228672),       // t2RSBrs
    2972             :     UINT64_C(4203802624),       // t2SADD16
    2973             :     UINT64_C(4202754048),       // t2SADD8
    2974             :     UINT64_C(4204851200),       // t2SASX
    2975             :     UINT64_C(4049600512),       // t2SBCri
    2976             :     UINT64_C(3948937216),       // t2SBCrr
    2977             :     UINT64_C(3948937216),       // t2SBCrs
    2978             :     UINT64_C(4081057792),       // t2SBFX
    2979             :     UINT64_C(4220580080),       // t2SDIV
    2980             :     UINT64_C(4204851328),       // t2SEL
    2981             :     UINT64_C(46608),    // t2SETPAN
    2982             :     UINT64_C(3917474175),       // t2SG
    2983             :     UINT64_C(4203802656),       // t2SHADD16
    2984             :     UINT64_C(4202754080),       // t2SHADD8
    2985             :     UINT64_C(4204851232),       // t2SHASX
    2986             :     UINT64_C(4209045536),       // t2SHSAX
    2987             :     UINT64_C(4207996960),       // t2SHSUB16
    2988             :     UINT64_C(4206948384),       // t2SHSUB8
    2989             :     UINT64_C(4159733760),       // t2SMC
    2990             :     UINT64_C(4212129792),       // t2SMLABB
    2991             :     UINT64_C(4212129808),       // t2SMLABT
    2992             :     UINT64_C(4213178368),       // t2SMLAD
    2993             :     UINT64_C(4213178384),       // t2SMLADX
    2994             :     UINT64_C(4223664128),       // t2SMLAL
    2995             :     UINT64_C(4223664256),       // t2SMLALBB
    2996             :     UINT64_C(4223664272),       // t2SMLALBT
    2997             :     UINT64_C(4223664320),       // t2SMLALD
    2998             :     UINT64_C(4223664336),       // t2SMLALDX
    2999             :     UINT64_C(4223664288),       // t2SMLALTB
    3000             :     UINT64_C(4223664304),       // t2SMLALTT
    3001             :     UINT64_C(4212129824),       // t2SMLATB
    3002             :     UINT64_C(4212129840),       // t2SMLATT
    3003             :     UINT64_C(4214226944),       // t2SMLAWB
    3004             :     UINT64_C(4214226960),       // t2SMLAWT
    3005             :     UINT64_C(4215275520),       // t2SMLSD
    3006             :     UINT64_C(4215275536),       // t2SMLSDX
    3007             :     UINT64_C(4224712896),       // t2SMLSLD
    3008             :     UINT64_C(4224712912),       // t2SMLSLDX
    3009             :     UINT64_C(4216324096),       // t2SMMLA
    3010             :     UINT64_C(4216324112),       // t2SMMLAR
    3011             :     UINT64_C(4217372672),       // t2SMMLS
    3012             :     UINT64_C(4217372688),       // t2SMMLSR
    3013             :     UINT64_C(4216385536),       // t2SMMUL
    3014             :     UINT64_C(4216385552),       // t2SMMULR
    3015             :     UINT64_C(4213239808),       // t2SMUAD
    3016             :     UINT64_C(4213239824),       // t2SMUADX
    3017             :     UINT64_C(4212191232),       // t2SMULBB
    3018             :     UINT64_C(4212191248),       // t2SMULBT
    3019             :     UINT64_C(4219469824),       // t2SMULL
    3020             :     UINT64_C(4212191264),       // t2SMULTB
    3021             :     UINT64_C(4212191280),       // t2SMULTT
    3022             :     UINT64_C(4214288384),       // t2SMULWB
    3023             :     UINT64_C(4214288400),       // t2SMULWT
    3024             :     UINT64_C(4215336960),       // t2SMUSD
    3025             :     UINT64_C(4215336976),       // t2SMUSDX
    3026             :     UINT64_C(3893215232),       // t2SRSDB
    3027             :     UINT64_C(3895312384),       // t2SRSDB_UPD
    3028             :     UINT64_C(3918381056),       // t2SRSIA
    3029             :     UINT64_C(3920478208),       // t2SRSIA_UPD
    3030             :     UINT64_C(4076863488),       // t2SSAT
    3031             :     UINT64_C(4078960640),       // t2SSAT16
    3032             :     UINT64_C(4209045504),       // t2SSAX
    3033             :     UINT64_C(4207996928),       // t2SSUB16
    3034             :     UINT64_C(4206948352),       // t2SSUB8
    3035             :     UINT64_C(4248829952),       // t2STC2L_OFFSET
    3036             :     UINT64_C(4240441344),       // t2STC2L_OPTION
    3037             :     UINT64_C(4234149888),       // t2STC2L_POST
    3038             :     UINT64_C(4250927104),       // t2STC2L_PRE
    3039             :     UINT64_C(4244635648),       // t2STC2_OFFSET
    3040             :     UINT64_C(4236247040),       // t2STC2_OPTION
    3041             :     UINT64_C(4229955584),       // t2STC2_POST
    3042             :     UINT64_C(4246732800),       // t2STC2_PRE
    3043             :     UINT64_C(3980394496),       // t2STCL_OFFSET
    3044             :     UINT64_C(3972005888),       // t2STCL_OPTION
    3045             :     UINT64_C(3965714432),       // t2STCL_POST
    3046             :     UINT64_C(3982491648),       // t2STCL_PRE
    3047             :     UINT64_C(3976200192),       // t2STC_OFFSET
    3048             :     UINT64_C(3967811584),       // t2STC_OPTION
    3049             :     UINT64_C(3961520128),       // t2STC_POST
    3050             :     UINT64_C(3978297344),       // t2STC_PRE
    3051             :     UINT64_C(3904901039),       // t2STL
    3052             :     UINT64_C(3904901007),       // t2STLB
    3053             :     UINT64_C(3904901088),       // t2STLEX
    3054             :     UINT64_C(3904901056),       // t2STLEXB
    3055             :     UINT64_C(3904897264),       // t2STLEXD
    3056             :     UINT64_C(3904901072),       // t2STLEXH
    3057             :     UINT64_C(3904901023),       // t2STLH
    3058             :     UINT64_C(3909091328),       // t2STMDB
    3059             :     UINT64_C(3911188480),       // t2STMDB_UPD
    3060             :     UINT64_C(3900702720),       // t2STMIA
    3061             :     UINT64_C(3902799872),       // t2STMIA_UPD
    3062             :     UINT64_C(4160753152),       // t2STRBT
    3063             :     UINT64_C(4160751872),       // t2STRB_POST
    3064             :     UINT64_C(4160752896),       // t2STRB_PRE
    3065             :     UINT64_C(4169138176),       // t2STRBi12
    3066             :     UINT64_C(4160752640),       // t2STRBi8
    3067             :     UINT64_C(4160749568),       // t2STRBs
    3068             :     UINT64_C(3898605568),       // t2STRD_POST
    3069             :     UINT64_C(3915382784),       // t2STRD_PRE
    3070             :     UINT64_C(3913285632),       // t2STRDi8
    3071             :     UINT64_C(3896508416),       // t2STREX
    3072             :     UINT64_C(3904900928),       // t2STREXB
    3073             :     UINT64_C(3904897136),       // t2STREXD
    3074             :     UINT64_C(3904900944),       // t2STREXH
    3075             :     UINT64_C(4162850304),       // t2STRHT
    3076             :     UINT64_C(4162849024),       // t2STRH_POST
    3077             :     UINT64_C(4162850048),       // t2STRH_PRE
    3078             :     UINT64_C(4171235328),       // t2STRHi12
    3079             :     UINT64_C(4162849792),       // t2STRHi8
    3080             :     UINT64_C(4162846720),       // t2STRHs
    3081             :     UINT64_C(4164947456),       // t2STRT
    3082             :     UINT64_C(4164946176),       // t2STR_POST
    3083             :     UINT64_C(4164947200),       // t2STR_PRE
    3084             :     UINT64_C(4173332480),       // t2STRi12
    3085             :     UINT64_C(4164946944),       // t2STRi8
    3086             :     UINT64_C(4164943872),       // t2STRs
    3087             :     UINT64_C(4091449088),       // t2SUBS_PC_LR
    3088             :     UINT64_C(4053794816),       // t2SUBri
    3089             :     UINT64_C(4070572032),       // t2SUBri12
    3090             :     UINT64_C(3953131520),       // t2SUBrr
    3091             :     UINT64_C(3953131520),       // t2SUBrs
    3092             :     UINT64_C(4198559872),       // t2SXTAB
    3093             :     UINT64_C(4196462720),       // t2SXTAB16
    3094             :     UINT64_C(4194365568),       // t2SXTAH
    3095             :     UINT64_C(4199542912),       // t2SXTB
    3096             :     UINT64_C(4197445760),       // t2SXTB16
    3097             :     UINT64_C(4195348608),       // t2SXTH
    3098             :     UINT64_C(3906007040),       // t2TBB
    3099             :     UINT64_C(3906007056),       // t2TBH
    3100             :     UINT64_C(4035972864),       // t2TEQri
    3101             :     UINT64_C(3935309568),       // t2TEQrr
    3102             :     UINT64_C(3935309568),       // t2TEQrs
    3103             :     UINT64_C(4088365074),       // t2TSB
    3104             :     UINT64_C(4027584256),       // t2TSTri
    3105             :     UINT64_C(3926920960),       // t2TSTrr
    3106             :     UINT64_C(3926920960),       // t2TSTrs
    3107             :     UINT64_C(3896569856),       // t2TT
    3108             :     UINT64_C(3896569984),       // t2TTA
    3109             :     UINT64_C(3896570048),       // t2TTAT
    3110             :     UINT64_C(3896569920),       // t2TTT
    3111             :     UINT64_C(4203802688),       // t2UADD16
    3112             :     UINT64_C(4202754112),       // t2UADD8
    3113             :     UINT64_C(4204851264),       // t2UASX
    3114             :     UINT64_C(4089446400),       // t2UBFX
    3115             :     UINT64_C(4159741952),       // t2UDF
    3116             :     UINT64_C(4222677232),       // t2UDIV
    3117             :     UINT64_C(4203802720),       // t2UHADD16
    3118             :     UINT64_C(4202754144),       // t2UHADD8
    3119             :     UINT64_C(4204851296),       // t2UHASX
    3120             :     UINT64_C(4209045600),       // t2UHSAX
    3121             :     UINT64_C(4207997024),       // t2UHSUB16
    3122             :     UINT64_C(4206948448),       // t2UHSUB8
    3123             :     UINT64_C(4225761376),       // t2UMAAL
    3124             :     UINT64_C(4225761280),       // t2UMLAL
    3125             :     UINT64_C(4221566976),       // t2UMULL
    3126             :     UINT64_C(4203802704),       // t2UQADD16
    3127             :     UINT64_C(4202754128),       // t2UQADD8
    3128             :     UINT64_C(4204851280),       // t2UQASX
    3129             :     UINT64_C(4209045584),       // t2UQSAX
    3130             :     UINT64_C(4207997008),       // t2UQSUB16
    3131             :     UINT64_C(4206948432),       // t2UQSUB8
    3132             :     UINT64_C(4218482688),       // t2USAD8
    3133             :     UINT64_C(4218421248),       // t2USADA8
    3134             :     UINT64_C(4085252096),       // t2USAT
    3135             :     UINT64_C(4087349248),       // t2USAT16
    3136             :     UINT64_C(4209045568),       // t2USAX
    3137             :     UINT64_C(4207996992),       // t2USUB16
    3138             :     UINT64_C(4206948416),       // t2USUB8
    3139             :     UINT64_C(4199608448),       // t2UXTAB
    3140             :     UINT64_C(4197511296),       // t2UXTAB16
    3141             :     UINT64_C(4195414144),       // t2UXTAH
    3142             :     UINT64_C(4200591488),       // t2UXTB
    3143             :     UINT64_C(4198494336),       // t2UXTB16
    3144             :     UINT64_C(4196397184),       // t2UXTH
    3145             :     UINT64_C(16704),    // tADC
    3146             :     UINT64_C(17408),    // tADDhirr
    3147             :     UINT64_C(7168),     // tADDi3
    3148             :     UINT64_C(12288),    // tADDi8
    3149             :     UINT64_C(17512),    // tADDrSP
    3150             :     UINT64_C(43008),    // tADDrSPi
    3151             :     UINT64_C(6144),     // tADDrr
    3152             :     UINT64_C(45056),    // tADDspi
    3153             :     UINT64_C(17541),    // tADDspr
    3154             :     UINT64_C(40960),    // tADR
    3155             :     UINT64_C(16384),    // tAND
    3156             :     UINT64_C(4096),     // tASRri
    3157             :     UINT64_C(16640),    // tASRrr
    3158             :     UINT64_C(57344),    // tB
    3159             :     UINT64_C(17280),    // tBIC
    3160             :     UINT64_C(48640),    // tBKPT
    3161             :     UINT64_C(4026585088),       // tBL
    3162             :     UINT64_C(18308),    // tBLXNSr
    3163             :     UINT64_C(4026580992),       // tBLXi
    3164             :     UINT64_C(18304),    // tBLXr
    3165             :     UINT64_C(18176),    // tBX
    3166             :     UINT64_C(18180),    // tBXNS
    3167             :     UINT64_C(53248),    // tBcc
    3168             :     UINT64_C(47360),    // tCBNZ
    3169             :     UINT64_C(45312),    // tCBZ
    3170             :     UINT64_C(17088),    // tCMNz
    3171             :     UINT64_C(17664),    // tCMPhir
    3172             :     UINT64_C(10240),    // tCMPi8
    3173             :     UINT64_C(17024),    // tCMPr
    3174             :     UINT64_C(46688),    // tCPS
    3175             :     UINT64_C(16448),    // tEOR
    3176             :     UINT64_C(48896),    // tHINT
    3177             :     UINT64_C(47744),    // tHLT
    3178             :     UINT64_C(0),        // tInt_WIN_eh_sjlj_longjmp
    3179             :     UINT64_C(0),        // tInt_eh_sjlj_longjmp
    3180             :     UINT64_C(0),        // tInt_eh_sjlj_setjmp
    3181             :     UINT64_C(51200),    // tLDMIA
    3182             :     UINT64_C(30720),    // tLDRBi
    3183             :     UINT64_C(23552),    // tLDRBr
    3184             :     UINT64_C(34816),    // tLDRHi
    3185             :     UINT64_C(23040),    // tLDRHr
    3186             :     UINT64_C(22016),    // tLDRSB
    3187             :     UINT64_C(24064),    // tLDRSH
    3188             :     UINT64_C(26624),    // tLDRi
    3189             :     UINT64_C(18432),    // tLDRpci
    3190             :     UINT64_C(22528),    // tLDRr
    3191             :     UINT64_C(38912),    // tLDRspi
    3192             :     UINT64_C(0),        // tLSLri
    3193             :     UINT64_C(16512),    // tLSLrr
    3194             :     UINT64_C(2048),     // tLSRri
    3195             :     UINT64_C(16576),    // tLSRrr
    3196             :     UINT64_C(0),        // tMOVSr
    3197             :     UINT64_C(8192),     // tMOVi8
    3198             :     UINT64_C(17920),    // tMOVr
    3199             :     UINT64_C(17216),    // tMUL
    3200             :     UINT64_C(17344),    // tMVN
    3201             :     UINT64_C(17152),    // tORR
    3202             :     UINT64_C(17528),    // tPICADD
    3203             :     UINT64_C(48128),    // tPOP
    3204             :     UINT64_C(46080),    // tPUSH
    3205             :     UINT64_C(47616),    // tREV
    3206             :     UINT64_C(47680),    // tREV16
    3207             :     UINT64_C(47808),    // tREVSH
    3208             :     UINT64_C(16832),    // tROR
    3209             :     UINT64_C(16960),    // tRSB
    3210             :     UINT64_C(16768),    // tSBC
    3211             :     UINT64_C(46672),    // tSETEND
    3212             :     UINT64_C(49152),    // tSTMIA_UPD
    3213             :     UINT64_C(28672),    // tSTRBi
    3214             :     UINT64_C(21504),    // tSTRBr
    3215             :     UINT64_C(32768),    // tSTRHi
    3216             :     UINT64_C(20992),    // tSTRHr
    3217             :     UINT64_C(24576),    // tSTRi
    3218             :     UINT64_C(20480),    // tSTRr
    3219             :     UINT64_C(36864),    // tSTRspi
    3220             :     UINT64_C(7680),     // tSUBi3
    3221             :     UINT64_C(14336),    // tSUBi8
    3222             :     UINT64_C(6656),     // tSUBrr
    3223             :     UINT64_C(45184),    // tSUBspi
    3224             :     UINT64_C(57088),    // tSVC
    3225             :     UINT64_C(45632),    // tSXTB
    3226             :     UINT64_C(45568),    // tSXTH
    3227             :     UINT64_C(57086),    // tTRAP
    3228             :     UINT64_C(16896),    // tTST
    3229             :     UINT64_C(56832),    // tUDF
    3230             :     UINT64_C(45760),    // tUXTB
    3231             :     UINT64_C(45696),    // tUXTH
    3232             :     UINT64_C(57081),    // t__brkdiv0
    3233             :     UINT64_C(0)
    3234             :   };
    3235       41655 :   const unsigned opcode = MI.getOpcode();
    3236       41655 :   uint64_t Value = InstBits[opcode];
    3237             :   uint64_t op = 0;
    3238             :   (void)op;  // suppress warning
    3239       41655 :   switch (opcode) {
    3240             :     case ARM::CLREX:
    3241             :     case ARM::TRAP:
    3242             :     case ARM::TRAPNaCl:
    3243             :     case ARM::TSB:
    3244             :     case ARM::VLD1LNq16Pseudo:
    3245             :     case ARM::VLD1LNq16Pseudo_UPD:
    3246             :     case ARM::VLD1LNq32Pseudo:
    3247             :     case ARM::VLD1LNq32Pseudo_UPD:
    3248             :     case ARM::VLD1LNq8Pseudo:
    3249             :     case ARM::VLD1LNq8Pseudo_UPD:
    3250             :     case ARM::VLD1d16QPseudo:
    3251             :     case ARM::VLD1d16TPseudo:
    3252             :     case ARM::VLD1d32QPseudo:
    3253             :     case ARM::VLD1d32TPseudo:
    3254             :     case ARM::VLD1d64QPseudo:
    3255             :     case ARM::VLD1d64QPseudoWB_fixed:
    3256             :     case ARM::VLD1d64QPseudoWB_register:
    3257             :     case ARM::VLD1d64TPseudo:
    3258             :     case ARM::VLD1d64TPseudoWB_fixed:
    3259             :     case ARM::VLD1d64TPseudoWB_register:
    3260             :     case ARM::VLD1d8QPseudo:
    3261             :     case ARM::VLD1d8TPseudo:
    3262             :     case ARM::VLD1q16HighQPseudo:
    3263             :     case ARM::VLD1q16HighTPseudo:
    3264             :     case ARM::VLD1q16LowQPseudo_UPD:
    3265             :     case ARM::VLD1q16LowTPseudo_UPD:
    3266             :     case ARM::VLD1q32HighQPseudo:
    3267             :     case ARM::VLD1q32HighTPseudo:
    3268             :     case ARM::VLD1q32LowQPseudo_UPD:
    3269             :     case ARM::VLD1q32LowTPseudo_UPD:
    3270             :     case ARM::VLD1q64HighQPseudo:
    3271             :     case ARM::VLD1q64HighTPseudo:
    3272             :     case ARM::VLD1q64LowQPseudo_UPD:
    3273             :     case ARM::VLD1q64LowTPseudo_UPD:
    3274             :     case ARM::VLD1q8HighQPseudo:
    3275             :     case ARM::VLD1q8HighTPseudo:
    3276             :     case ARM::VLD1q8LowQPseudo_UPD:
    3277             :     case ARM::VLD1q8LowTPseudo_UPD:
    3278             :     case ARM::VLD2DUPq16EvenPseudo:
    3279             :     case ARM::VLD2DUPq16OddPseudo:
    3280             :     case ARM::VLD2DUPq32EvenPseudo:
    3281             :     case ARM::VLD2DUPq32OddPseudo:
    3282             :     case ARM::VLD2DUPq8EvenPseudo:
    3283             :     case ARM::VLD2DUPq8OddPseudo:
    3284             :     case ARM::VLD2LNd16Pseudo:
    3285             :     case ARM::VLD2LNd16Pseudo_UPD:
    3286             :     case ARM::VLD2LNd32Pseudo:
    3287             :     case ARM::VLD2LNd32Pseudo_UPD:
    3288             :     case ARM::VLD2LNd8Pseudo:
    3289             :     case ARM::VLD2LNd8Pseudo_UPD:
    3290             :     case ARM::VLD2LNq16Pseudo:
    3291             :     case ARM::VLD2LNq16Pseudo_UPD:
    3292             :     case ARM::VLD2LNq32Pseudo:
    3293             :     case ARM::VLD2LNq32Pseudo_UPD:
    3294             :     case ARM::VLD2q16Pseudo:
    3295             :     case ARM::VLD2q16PseudoWB_fixed:
    3296             :     case ARM::VLD2q16PseudoWB_register:
    3297             :     case ARM::VLD2q32Pseudo:
    3298             :     case ARM::VLD2q32PseudoWB_fixed:
    3299             :     case ARM::VLD2q32PseudoWB_register:
    3300             :     case ARM::VLD2q8Pseudo:
    3301             :     case ARM::VLD2q8PseudoWB_fixed:
    3302             :     case ARM::VLD2q8PseudoWB_register:
    3303             :     case ARM::VLD3DUPd16Pseudo:
    3304             :     case ARM::VLD3DUPd16Pseudo_UPD:
    3305             :     case ARM::VLD3DUPd32Pseudo:
    3306             :     case ARM::VLD3DUPd32Pseudo_UPD:
    3307             :     case ARM::VLD3DUPd8Pseudo:
    3308             :     case ARM::VLD3DUPd8Pseudo_UPD:
    3309             :     case ARM::VLD3DUPq16EvenPseudo:
    3310             :     case ARM::VLD3DUPq16OddPseudo:
    3311             :     case ARM::VLD3DUPq32EvenPseudo:
    3312             :     case ARM::VLD3DUPq32OddPseudo:
    3313             :     case ARM::VLD3DUPq8EvenPseudo:
    3314             :     case ARM::VLD3DUPq8OddPseudo:
    3315             :     case ARM::VLD3LNd16Pseudo:
    3316             :     case ARM::VLD3LNd16Pseudo_UPD:
    3317             :     case ARM::VLD3LNd32Pseudo:
    3318             :     case ARM::VLD3LNd32Pseudo_UPD:
    3319             :     case ARM::VLD3LNd8Pseudo:
    3320             :     case ARM::VLD3LNd8Pseudo_UPD:
    3321             :     case ARM::VLD3LNq16Pseudo:
    3322             :     case ARM::VLD3LNq16Pseudo_UPD:
    3323             :     case ARM::VLD3LNq32Pseudo:
    3324             :     case ARM::VLD3LNq32Pseudo_UPD:
    3325             :     case ARM::VLD3d16Pseudo:
    3326             :     case ARM::VLD3d16Pseudo_UPD:
    3327             :     case ARM::VLD3d32Pseudo:
    3328             :     case ARM::VLD3d32Pseudo_UPD:
    3329             :     case ARM::VLD3d8Pseudo:
    3330             :     case ARM::VLD3d8Pseudo_UPD:
    3331             :     case ARM::VLD3q16Pseudo_UPD:
    3332             :     case ARM::VLD3q16oddPseudo:
    3333             :     case ARM::VLD3q16oddPseudo_UPD:
    3334             :     case ARM::VLD3q32Pseudo_UPD:
    3335             :     case ARM::VLD3q32oddPseudo:
    3336             :     case ARM::VLD3q32oddPseudo_UPD:
    3337             :     case ARM::VLD3q8Pseudo_UPD:
    3338             :     case ARM::VLD3q8oddPseudo:
    3339             :     case ARM::VLD3q8oddPseudo_UPD:
    3340             :     case ARM::VLD4DUPd16Pseudo:
    3341             :     case ARM::VLD4DUPd16Pseudo_UPD:
    3342             :     case ARM::VLD4DUPd32Pseudo:
    3343             :     case ARM::VLD4DUPd32Pseudo_UPD:
    3344             :     case ARM::VLD4DUPd8Pseudo:
    3345             :     case ARM::VLD4DUPd8Pseudo_UPD:
    3346             :     case ARM::VLD4DUPq16EvenPseudo:
    3347             :     case ARM::VLD4DUPq16OddPseudo:
    3348             :     case ARM::VLD4DUPq32EvenPseudo:
    3349             :     case ARM::VLD4DUPq32OddPseudo:
    3350             :     case ARM::VLD4DUPq8EvenPseudo:
    3351             :     case ARM::VLD4DUPq8OddPseudo:
    3352             :     case ARM::VLD4LNd16Pseudo:
    3353             :     case ARM::VLD4LNd16Pseudo_UPD:
    3354             :     case ARM::VLD4LNd32Pseudo:
    3355             :     case ARM::VLD4LNd32Pseudo_UPD:
    3356             :     case ARM::VLD4LNd8Pseudo:
    3357             :     case ARM::VLD4LNd8Pseudo_UPD:
    3358             :     case ARM::VLD4LNq16Pseudo:
    3359             :     case ARM::VLD4LNq16Pseudo_UPD:
    3360             :     case ARM::VLD4LNq32Pseudo:
    3361             :     case ARM::VLD4LNq32Pseudo_UPD:
    3362             :     case ARM::VLD4d16Pseudo:
    3363             :     case ARM::VLD4d16Pseudo_UPD:
    3364             :     case ARM::VLD4d32Pseudo:
    3365             :     case ARM::VLD4d32Pseudo_UPD:
    3366             :     case ARM::VLD4d8Pseudo:
    3367             :     case ARM::VLD4d8Pseudo_UPD:
    3368             :     case ARM::VLD4q16Pseudo_UPD:
    3369             :     case ARM::VLD4q16oddPseudo:
    3370             :     case ARM::VLD4q16oddPseudo_UPD:
    3371             :     case ARM::VLD4q32Pseudo_UPD:
    3372             :     case ARM::VLD4q32oddPseudo:
    3373             :     case ARM::VLD4q32oddPseudo_UPD:
    3374             :     case ARM::VLD4q8Pseudo_UPD:
    3375             :     case ARM::VLD4q8oddPseudo:
    3376             :     case ARM::VLD4q8oddPseudo_UPD:
    3377             :     case ARM::VLDMQIA:
    3378             :     case ARM::VST1LNq16Pseudo:
    3379             :     case ARM::VST1LNq16Pseudo_UPD:
    3380             :     case ARM::VST1LNq32Pseudo:
    3381             :     case ARM::VST1LNq32Pseudo_UPD:
    3382             :     case ARM::VST1LNq8Pseudo:
    3383             :     case ARM::VST1LNq8Pseudo_UPD:
    3384             :     case ARM::VST1d16QPseudo:
    3385             :     case ARM::VST1d16TPseudo:
    3386             :     case ARM::VST1d32QPseudo:
    3387             :     case ARM::VST1d32TPseudo:
    3388             :     case ARM::VST1d64QPseudo:
    3389             :     case ARM::VST1d64QPseudoWB_fixed:
    3390             :     case ARM::VST1d64QPseudoWB_register:
    3391             :     case ARM::VST1d64TPseudo:
    3392             :     case ARM::VST1d64TPseudoWB_fixed:
    3393             :     case ARM::VST1d64TPseudoWB_register:
    3394             :     case ARM::VST1d8QPseudo:
    3395             :     case ARM::VST1d8TPseudo:
    3396             :     case ARM::VST1q16HighQPseudo:
    3397             :     case ARM::VST1q16HighTPseudo:
    3398             :     case ARM::VST1q16LowQPseudo_UPD:
    3399             :     case ARM::VST1q16LowTPseudo_UPD:
    3400             :     case ARM::VST1q32HighQPseudo:
    3401             :     case ARM::VST1q32HighTPseudo:
    3402             :     case ARM::VST1q32LowQPseudo_UPD:
    3403             :     case ARM::VST1q32LowTPseudo_UPD:
    3404             :     case ARM::VST1q64HighQPseudo:
    3405             :     case ARM::VST1q64HighTPseudo:
    3406             :     case ARM::VST1q64LowQPseudo_UPD:
    3407             :     case ARM::VST1q64LowTPseudo_UPD:
    3408             :     case ARM::VST1q8HighQPseudo:
    3409             :     case ARM::VST1q8HighTPseudo:
    3410             :     case ARM::VST1q8LowQPseudo_UPD:
    3411             :     case ARM::VST1q8LowTPseudo_UPD:
    3412             :     case ARM::VST2LNd16Pseudo:
    3413             :     case ARM::VST2LNd16Pseudo_UPD:
    3414             :     case ARM::VST2LNd32Pseudo:
    3415             :     case ARM::VST2LNd32Pseudo_UPD:
    3416             :     case ARM::VST2LNd8Pseudo:
    3417             :     case ARM::VST2LNd8Pseudo_UPD:
    3418             :     case ARM::VST2LNq16Pseudo:
    3419             :     case ARM::VST2LNq16Pseudo_UPD:
    3420             :     case ARM::VST2LNq32Pseudo:
    3421             :     case ARM::VST2LNq32Pseudo_UPD:
    3422             :     case ARM::VST2q16Pseudo:
    3423             :     case ARM::VST2q16PseudoWB_fixed:
    3424             :     case ARM::VST2q16PseudoWB_register:
    3425             :     case ARM::VST2q32Pseudo:
    3426             :     case ARM::VST2q32PseudoWB_fixed:
    3427             :     case ARM::VST2q32PseudoWB_register:
    3428             :     case ARM::VST2q8Pseudo:
    3429             :     case ARM::VST2q8PseudoWB_fixed:
    3430             :     case ARM::VST2q8PseudoWB_register:
    3431             :     case ARM::VST3LNd16Pseudo:
    3432             :     case ARM::VST3LNd16Pseudo_UPD:
    3433             :     case ARM::VST3LNd32Pseudo:
    3434             :     case ARM::VST3LNd32Pseudo_UPD:
    3435             :     case ARM::VST3LNd8Pseudo:
    3436             :     case ARM::VST3LNd8Pseudo_UPD:
    3437             :     case ARM::VST3LNq16Pseudo:
    3438             :     case ARM::VST3LNq16Pseudo_UPD:
    3439             :     case ARM::VST3LNq32Pseudo:
    3440             :     case ARM::VST3LNq32Pseudo_UPD:
    3441             :     case ARM::VST3d16Pseudo:
    3442             :     case ARM::VST3d16Pseudo_UPD:
    3443             :     case ARM::VST3d32Pseudo:
    3444             :     case ARM::VST3d32Pseudo_UPD:
    3445             :     case ARM::VST3d8Pseudo:
    3446             :     case ARM::VST3d8Pseudo_UPD:
    3447             :     case ARM::VST3q16Pseudo_UPD:
    3448             :     case ARM::VST3q16oddPseudo:
    3449             :     case ARM::VST3q16oddPseudo_UPD:
    3450             :     case ARM::VST3q32Pseudo_UPD:
    3451             :     case ARM::VST3q32oddPseudo:
    3452             :     case ARM::VST3q32oddPseudo_UPD:
    3453             :     case ARM::VST3q8Pseudo_UPD:
    3454             :     case ARM::VST3q8oddPseudo:
    3455             :     case ARM::VST3q8oddPseudo_UPD:
    3456             :     case ARM::VST4LNd16Pseudo:
    3457             :     case ARM::VST4LNd16Pseudo_UPD:
    3458             :     case ARM::VST4LNd32Pseudo:
    3459             :     case ARM::VST4LNd32Pseudo_UPD:
    3460             :     case ARM::VST4LNd8Pseudo:
    3461             :     case ARM::VST4LNd8Pseudo_UPD:
    3462             :     case ARM::VST4LNq16Pseudo:
    3463             :     case ARM::VST4LNq16Pseudo_UPD:
    3464             :     case ARM::VST4LNq32Pseudo:
    3465             :     case ARM::VST4LNq32Pseudo_UPD:
    3466             :     case ARM::VST4d16Pseudo:
    3467             :     case ARM::VST4d16Pseudo_UPD:
    3468             :     case ARM::VST4d32Pseudo:
    3469             :     case ARM::VST4d32Pseudo_UPD:
    3470             :     case ARM::VST4d8Pseudo:
    3471             :     case ARM::VST4d8Pseudo_UPD:
    3472             :     case ARM::VST4q16Pseudo_UPD:
    3473             :     case ARM::VST4q16oddPseudo:
    3474             :     case ARM::VST4q16oddPseudo_UPD:
    3475             :     case ARM::VST4q32Pseudo_UPD:
    3476             :     case ARM::VST4q32oddPseudo:
    3477             :     case ARM::VST4q32oddPseudo_UPD:
    3478             :     case ARM::VST4q8Pseudo_UPD:
    3479             :     case ARM::VST4q8oddPseudo:
    3480             :     case ARM::VST4q8oddPseudo_UPD:
    3481             :     case ARM::VSTMQIA:
    3482             :     case ARM::VTBL3Pseudo:
    3483             :     case ARM::VTBL4Pseudo:
    3484             :     case ARM::VTBX3Pseudo:
    3485             :     case ARM::VTBX4Pseudo:
    3486             :     case ARM::t2CLREX:
    3487             :     case ARM::t2DCPS1:
    3488             :     case ARM::t2DCPS2:
    3489             :     case ARM::t2DCPS3:
    3490             :     case ARM::t2Int_eh_sjlj_setjmp:
    3491             :     case ARM::t2Int_eh_sjlj_setjmp_nofp:
    3492             :     case ARM::t2SG:
    3493             :     case ARM::t2TSB:
    3494             :     case ARM::tInt_WIN_eh_sjlj_longjmp:
    3495             :     case ARM::tInt_eh_sjlj_longjmp:
    3496             :     case ARM::tInt_eh_sjlj_setjmp:
    3497             :     case ARM::tTRAP:
    3498             :     case ARM::t__brkdiv0: {
    3499             :       break;
    3500             :     }
    3501             :     case ARM::VRINTAD:
    3502             :     case ARM::VRINTMD:
    3503             :     case ARM::VRINTND:
    3504             :     case ARM::VRINTPD: {
    3505             :       // op: Dd
    3506          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3507          16 :       Value |= (op & UINT64_C(16)) << 18;
    3508          16 :       Value |= (op & UINT64_C(15)) << 12;
    3509             :       // op: Dm
    3510          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3511          16 :       Value |= (op & UINT64_C(16)) << 1;
    3512          16 :       Value |= op & UINT64_C(15);
    3513          16 :       break;
    3514             :     }
    3515             :     case ARM::VMAXNMD:
    3516             :     case ARM::VMINNMD:
    3517             :     case ARM::VSELEQD:
    3518             :     case ARM::VSELGED:
    3519             :     case ARM::VSELGTD:
    3520             :     case ARM::VSELVSD: {
    3521             :       // op: Dd
    3522          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3523          24 :       Value |= (op & UINT64_C(16)) << 18;
    3524          24 :       Value |= (op & UINT64_C(15)) << 12;
    3525             :       // op: Dn
    3526          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3527          24 :       Value |= (op & UINT64_C(15)) << 16;
    3528          24 :       Value |= (op & UINT64_C(16)) << 3;
    3529             :       // op: Dm
    3530          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3531          24 :       Value |= (op & UINT64_C(16)) << 1;
    3532          24 :       Value |= op & UINT64_C(15);
    3533          24 :       break;
    3534             :     }
    3535             :     case ARM::CRC32B:
    3536             :     case ARM::CRC32CB:
    3537             :     case ARM::CRC32CH:
    3538             :     case ARM::CRC32CW:
    3539             :     case ARM::CRC32H:
    3540             :     case ARM::CRC32W: {
    3541             :       // op: Rd
    3542           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3543           6 :       Value |= (op & UINT64_C(15)) << 12;
    3544             :       // op: Rn
    3545           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3546           6 :       Value |= (op & UINT64_C(15)) << 16;
    3547             :       // op: Rm
    3548           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3549           6 :       Value |= op & UINT64_C(15);
    3550           6 :       break;
    3551             :     }
    3552             :     case ARM::t2MRS_AR:
    3553             :     case ARM::t2MRSsys_AR: {
    3554             :       // op: Rd
    3555           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3556           7 :       Value |= (op & UINT64_C(15)) << 8;
    3557           7 :       break;
    3558             :     }
    3559             :     case ARM::t2CLZ:
    3560             :     case ARM::t2RBIT:
    3561             :     case ARM::t2REV:
    3562             :     case ARM::t2REV16:
    3563             :     case ARM::t2REVSH: {
    3564             :       // op: Rd
    3565          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3566          31 :       Value |= (op & UINT64_C(15)) << 8;
    3567             :       // op: Rm
    3568          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3569          31 :       Value |= (op & UINT64_C(15)) << 16;
    3570          31 :       Value |= op & UINT64_C(15);
    3571          31 :       break;
    3572             :     }
    3573             :     case ARM::t2MOVsra_flag:
    3574             :     case ARM::t2MOVsrl_flag: {
    3575             :       // op: Rd
    3576           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3577           0 :       Value |= (op & UINT64_C(15)) << 8;
    3578             :       // op: Rm
    3579           0 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3580           0 :       Value |= op & UINT64_C(15);
    3581           0 :       break;
    3582             :     }
    3583             :     case ARM::t2SXTB:
    3584             :     case ARM::t2SXTB16:
    3585             :     case ARM::t2SXTH:
    3586             :     case ARM::t2UXTB:
    3587             :     case ARM::t2UXTB16:
    3588             :     case ARM::t2UXTH: {
    3589             :       // op: Rd
    3590          88 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3591          88 :       Value |= (op & UINT64_C(15)) << 8;
    3592             :       // op: Rm
    3593          88 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3594          88 :       Value |= op & UINT64_C(15);
    3595             :       // op: rot
    3596          88 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3597          88 :       Value |= (op & UINT64_C(3)) << 4;
    3598          88 :       break;
    3599             :     }
    3600             :     case ARM::t2CRC32B:
    3601             :     case ARM::t2CRC32CB:
    3602             :     case ARM::t2CRC32CH:
    3603             :     case ARM::t2CRC32CW:
    3604             :     case ARM::t2CRC32H:
    3605             :     case ARM::t2CRC32W:
    3606             :     case ARM::t2MUL:
    3607             :     case ARM::t2QADD16:
    3608             :     case ARM::t2QADD8:
    3609             :     case ARM::t2QASX:
    3610             :     case ARM::t2QSAX:
    3611             :     case ARM::t2QSUB16:
    3612             :     case ARM::t2QSUB8:
    3613             :     case ARM::t2SADD16:
    3614             :     case ARM::t2SADD8:
    3615             :     case ARM::t2SASX:
    3616             :     case ARM::t2SDIV:
    3617             :     case ARM::t2SEL:
    3618             :     case ARM::t2SHADD16:
    3619             :     case ARM::t2SHADD8:
    3620             :     case ARM::t2SHASX:
    3621             :     case ARM::t2SHSAX:
    3622             :     case ARM::t2SHSUB16:
    3623             :     case ARM::t2SHSUB8:
    3624             :     case ARM::t2SMMUL:
    3625             :     case ARM::t2SMMULR:
    3626             :     case ARM::t2SMUAD:
    3627             :     case ARM::t2SMUADX:
    3628             :     case ARM::t2SMULBB:
    3629             :     case ARM::t2SMULBT:
    3630             :     case ARM::t2SMULTB:
    3631             :     case ARM::t2SMULTT:
    3632             :     case ARM::t2SMULWB:
    3633             :     case ARM::t2SMULWT:
    3634             :     case ARM::t2SMUSD:
    3635             :     case ARM::t2SMUSDX:
    3636             :     case ARM::t2SSAX:
    3637             :     case ARM::t2SSUB16:
    3638             :     case ARM::t2SSUB8:
    3639             :     case ARM::t2UADD16:
    3640             :     case ARM::t2UADD8:
    3641             :     case ARM::t2UASX:
    3642             :     case ARM::t2UDIV:
    3643             :     case ARM::t2UHADD16:
    3644             :     case ARM::t2UHADD8:
    3645             :     case ARM::t2UHASX:
    3646             :     case ARM::t2UHSAX:
    3647             :     case ARM::t2UHSUB16:
    3648             :     case ARM::t2UHSUB8:
    3649             :     case ARM::t2UQADD16:
    3650             :     case ARM::t2UQADD8:
    3651             :     case ARM::t2UQASX:
    3652             :     case ARM::t2UQSAX:
    3653             :     case ARM::t2UQSUB16:
    3654             :     case ARM::t2UQSUB8:
    3655             :     case ARM::t2USAD8:
    3656             :     case ARM::t2USAX:
    3657             :     case ARM::t2USUB16:
    3658             :     case ARM::t2USUB8: {
    3659             :       // op: Rd
    3660         276 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3661         276 :       Value |= (op & UINT64_C(15)) << 8;
    3662             :       // op: Rn
    3663         276 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3664         276 :       Value |= (op & UINT64_C(15)) << 16;
    3665             :       // op: Rm
    3666         276 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3667         276 :       Value |= op & UINT64_C(15);
    3668         276 :       break;
    3669             :     }
    3670             :     case ARM::t2MLA:
    3671             :     case ARM::t2MLS:
    3672             :     case ARM::t2SMLABB:
    3673             :     case ARM::t2SMLABT:
    3674             :     case ARM::t2SMLAD:
    3675             :     case ARM::t2SMLADX:
    3676             :     case ARM::t2SMLATB:
    3677             :     case ARM::t2SMLATT:
    3678             :     case ARM::t2SMLAWB:
    3679             :     case ARM::t2SMLAWT:
    3680             :     case ARM::t2SMLSD:
    3681             :     case ARM::t2SMLSDX:
    3682             :     case ARM::t2SMMLA:
    3683             :     case ARM::t2SMMLAR:
    3684             :     case ARM::t2SMMLS:
    3685             :     case ARM::t2SMMLSR:
    3686             :     case ARM::t2USADA8: {
    3687             :       // op: Rd
    3688          78 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3689          78 :       Value |= (op & UINT64_C(15)) << 8;
    3690             :       // op: Rn
    3691          78 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3692          78 :       Value |= (op & UINT64_C(15)) << 16;
    3693             :       // op: Rm
    3694          78 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3695          78 :       Value |= op & UINT64_C(15);
    3696             :       // op: Ra
    3697          78 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3698          78 :       Value |= (op & UINT64_C(15)) << 12;
    3699          78 :       break;
    3700             :     }
    3701             :     case ARM::t2SXTAB:
    3702             :     case ARM::t2SXTAB16:
    3703             :     case ARM::t2SXTAH:
    3704             :     case ARM::t2UXTAB:
    3705             :     case ARM::t2UXTAB16:
    3706             :     case ARM::t2UXTAH: {
    3707             :       // op: Rd
    3708          67 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3709          67 :       Value |= (op & UINT64_C(15)) << 8;
    3710             :       // op: Rn
    3711          67 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3712          67 :       Value |= (op & UINT64_C(15)) << 16;
    3713             :       // op: Rm
    3714          67 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3715          67 :       Value |= op & UINT64_C(15);
    3716             :       // op: rot
    3717          67 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3718          67 :       Value |= (op & UINT64_C(3)) << 4;
    3719          67 :       break;
    3720             :     }
    3721             :     case ARM::t2PKHBT:
    3722             :     case ARM::t2PKHTB: {
    3723             :       // op: Rd
    3724          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3725          18 :       Value |= (op & UINT64_C(15)) << 8;
    3726             :       // op: Rn
    3727          18 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3728          18 :       Value |= (op & UINT64_C(15)) << 16;
    3729             :       // op: Rm
    3730          18 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3731          18 :       Value |= op & UINT64_C(15);
    3732             :       // op: sh
    3733          18 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3734          18 :       Value |= (op & UINT64_C(28)) << 10;
    3735          18 :       Value |= (op & UINT64_C(3)) << 6;
    3736          18 :       break;
    3737             :     }
    3738             :     case ARM::t2ADDri12:
    3739             :     case ARM::t2SUBri12: {
    3740             :       // op: Rd
    3741         383 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3742         383 :       Value |= (op & UINT64_C(15)) << 8;
    3743             :       // op: Rn
    3744         383 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3745         383 :       Value |= (op & UINT64_C(15)) << 16;
    3746             :       // op: imm
    3747         383 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3748         383 :       Value |= (op & UINT64_C(2048)) << 15;
    3749         383 :       Value |= (op & UINT64_C(1792)) << 4;
    3750         383 :       Value |= op & UINT64_C(255);
    3751         383 :       break;
    3752             :     }
    3753             :     case ARM::t2QADD:
    3754             :     case ARM::t2QDADD:
    3755             :     case ARM::t2QDSUB:
    3756             :     case ARM::t2QSUB: {
    3757             :       // op: Rd
    3758          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3759          16 :       Value |= (op & UINT64_C(15)) << 8;
    3760             :       // op: Rn
    3761          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3762          16 :       Value |= (op & UINT64_C(15)) << 16;
    3763             :       // op: Rm
    3764          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3765          16 :       Value |= op & UINT64_C(15);
    3766          16 :       break;
    3767             :     }
    3768             :     case ARM::t2BFI: {
    3769             :       // op: Rd
    3770          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3771          18 :       Value |= (op & UINT64_C(15)) << 8;
    3772             :       // op: Rn
    3773          18 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3774          18 :       Value |= (op & UINT64_C(15)) << 16;
    3775             :       // op: imm
    3776          18 :       op = getBitfieldInvertedMaskOpValue(MI, 3, Fixups, STI);
    3777          18 :       Value |= (op & UINT64_C(28)) << 10;
    3778          18 :       Value |= (op & UINT64_C(3)) << 6;
    3779          18 :       Value |= (op & UINT64_C(992)) >> 5;
    3780          18 :       break;
    3781             :     }
    3782             :     case ARM::t2SSAT16:
    3783             :     case ARM::t2USAT16: {
    3784             :       // op: Rd
    3785           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3786           8 :       Value |= (op & UINT64_C(15)) << 8;
    3787             :       // op: Rn
    3788           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3789           8 :       Value |= (op & UINT64_C(15)) << 16;
    3790             :       // op: sat_imm
    3791           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3792           8 :       Value |= op & UINT64_C(15);
    3793           8 :       break;
    3794             :     }
    3795             :     case ARM::t2SSAT:
    3796             :     case ARM::t2USAT: {
    3797             :       // op: Rd
    3798          72 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3799          72 :       Value |= (op & UINT64_C(15)) << 8;
    3800             :       // op: Rn
    3801          72 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3802          72 :       Value |= (op & UINT64_C(15)) << 16;
    3803             :       // op: sat_imm
    3804          72 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3805          72 :       Value |= op & UINT64_C(31);
    3806             :       // op: sh
    3807          72 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3808          72 :       Value |= (op & UINT64_C(32)) << 16;
    3809          72 :       Value |= (op & UINT64_C(28)) << 10;
    3810          72 :       Value |= (op & UINT64_C(3)) << 6;
    3811          72 :       break;
    3812             :     }
    3813             :     case ARM::t2STREX: {
    3814             :       // op: Rd
    3815          25 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3816          25 :       Value |= (op & UINT64_C(15)) << 8;
    3817             :       // op: Rt
    3818          25 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3819          25 :       Value |= (op & UINT64_C(15)) << 12;
    3820             :       // op: addr
    3821          50 :       op = getT2AddrModeImm0_1020s4OpValue(MI, 2, Fixups, STI);
    3822          25 :       Value |= (op & UINT64_C(3840)) << 8;
    3823          25 :       Value |= op & UINT64_C(255);
    3824          25 :       break;
    3825             :     }
    3826             :     case ARM::t2MRS_M: {
    3827             :       // op: Rd
    3828          63 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3829          63 :       Value |= (op & UINT64_C(15)) << 8;
    3830             :       // op: SYSm
    3831          63 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3832          63 :       Value |= op & UINT64_C(255);
    3833          63 :       break;
    3834             :     }
    3835             :     case ARM::t2ADR: {
    3836             :       // op: Rd
    3837          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3838          12 :       Value |= (op & UINT64_C(15)) << 8;
    3839             :       // op: addr
    3840          12 :       op = getT2AdrLabelOpValue(MI, 1, Fixups, STI);
    3841          12 :       Value |= (op & UINT64_C(2048)) << 15;
    3842          12 :       Value |= (op & UINT64_C(4096)) << 11;
    3843          12 :       Value |= (op & UINT64_C(4096)) << 9;
    3844          12 :       Value |= (op & UINT64_C(1792)) << 4;
    3845          12 :       Value |= op & UINT64_C(255);
    3846          12 :       break;
    3847             :     }
    3848             :     case ARM::t2BFC: {
    3849             :       // op: Rd
    3850          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3851          20 :       Value |= (op & UINT64_C(15)) << 8;
    3852             :       // op: imm
    3853          20 :       op = getBitfieldInvertedMaskOpValue(MI, 2, Fixups, STI);
    3854          20 :       Value |= (op & UINT64_C(28)) << 10;
    3855          20 :       Value |= (op & UINT64_C(3)) << 6;
    3856          20 :       Value |= (op & UINT64_C(992)) >> 5;
    3857          20 :       break;
    3858             :     }
    3859             :     case ARM::t2MOVi16: {
    3860             :       // op: Rd
    3861         327 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3862         327 :       Value |= (op & UINT64_C(15)) << 8;
    3863             :       // op: imm
    3864         327 :       op = getHiLo16ImmOpValue(MI, 1, Fixups, STI);
    3865         327 :       Value |= (op & UINT64_C(2048)) << 15;
    3866         327 :       Value |= (op & UINT64_C(61440)) << 4;
    3867         327 :       Value |= (op & UINT64_C(1792)) << 4;
    3868         327 :       Value |= op & UINT64_C(255);
    3869         327 :       break;
    3870             :     }
    3871             :     case ARM::t2MOVTi16: {
    3872             :       // op: Rd
    3873         256 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3874         256 :       Value |= (op & UINT64_C(15)) << 8;
    3875             :       // op: imm
    3876         256 :       op = getHiLo16ImmOpValue(MI, 2, Fixups, STI);
    3877         256 :       Value |= (op & UINT64_C(2048)) << 15;
    3878         256 :       Value |= (op & UINT64_C(61440)) << 4;
    3879         256 :       Value |= (op & UINT64_C(1792)) << 4;
    3880         256 :       Value |= op & UINT64_C(255);
    3881         256 :       break;
    3882             :     }
    3883             :     case ARM::t2SBFX:
    3884             :     case ARM::t2UBFX: {
    3885             :       // op: Rd
    3886          64 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3887          64 :       Value |= (op & UINT64_C(15)) << 8;
    3888             :       // op: msb
    3889          64 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3890          64 :       Value |= op & UINT64_C(31);
    3891             :       // op: lsb
    3892          64 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3893          64 :       Value |= (op & UINT64_C(28)) << 10;
    3894          64 :       Value |= (op & UINT64_C(3)) << 6;
    3895             :       // op: Rn
    3896          64 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3897          64 :       Value |= (op & UINT64_C(15)) << 16;
    3898          64 :       break;
    3899             :     }
    3900             :     case ARM::tADR: {
    3901             :       // op: Rd
    3902          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3903          26 :       Value |= (op & UINT64_C(7)) << 8;
    3904             :       // op: addr
    3905             :       op = getThumbAdrLabelOpValue(MI, 1, Fixups, STI);
    3906          26 :       Value |= op & UINT64_C(255);
    3907          26 :       break;
    3908             :     }
    3909             :     case ARM::tMOVi8: {
    3910             :       // op: Rd
    3911         315 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3912         315 :       Value |= (op & UINT64_C(7)) << 8;
    3913             :       // op: imm8
    3914         315 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3915         315 :       Value |= op & UINT64_C(255);
    3916         315 :       break;
    3917             :     }
    3918             :     case ARM::tMOVr: {
    3919             :       // op: Rd
    3920         959 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3921         959 :       Value |= (op & UINT64_C(8)) << 4;
    3922         959 :       Value |= op & UINT64_C(7);
    3923             :       // op: Rm
    3924         959 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3925         959 :       Value |= (op & UINT64_C(15)) << 3;
    3926         959 :       break;
    3927             :     }
    3928             :     case ARM::t2STLEX: {
    3929             :       // op: Rd
    3930           5 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3931           5 :       Value |= op & UINT64_C(15);
    3932             :       // op: Rt
    3933           5 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3934           5 :       Value |= (op & UINT64_C(15)) << 12;
    3935             :       // op: addr
    3936           5 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3937           5 :       Value |= (op & UINT64_C(15)) << 16;
    3938           5 :       break;
    3939             :     }
    3940             :     case ARM::t2STLEXB:
    3941             :     case ARM::t2STLEXH:
    3942             :     case ARM::t2STREXB:
    3943             :     case ARM::t2STREXH: {
    3944             :       // op: Rd
    3945          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3946          20 :       Value |= op & UINT64_C(15);
    3947             :       // op: addr
    3948          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3949          20 :       Value |= (op & UINT64_C(15)) << 16;
    3950             :       // op: Rt
    3951          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3952          20 :       Value |= (op & UINT64_C(15)) << 12;
    3953          20 :       break;
    3954             :     }
    3955             :     case ARM::t2STLEXD:
    3956             :     case ARM::t2STREXD: {
    3957             :       // op: Rd
    3958           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3959           8 :       Value |= op & UINT64_C(15);
    3960             :       // op: addr
    3961           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3962           8 :       Value |= (op & UINT64_C(15)) << 16;
    3963             :       // op: Rt
    3964           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3965           8 :       Value |= (op & UINT64_C(15)) << 12;
    3966             :       // op: Rt2
    3967           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3968           8 :       Value |= (op & UINT64_C(15)) << 8;
    3969           8 :       break;
    3970             :     }
    3971             :     case ARM::tMOVSr: {
    3972             :       // op: Rd
    3973          19 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3974          19 :       Value |= op & UINT64_C(7);
    3975             :       // op: Rm
    3976          19 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    3977          19 :       Value |= (op & UINT64_C(7)) << 3;
    3978          19 :       break;
    3979             :     }
    3980             :     case ARM::tADDi3:
    3981             :     case ARM::tSUBi3: {
    3982             :       // op: Rd
    3983          69 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3984          69 :       Value |= op & UINT64_C(7);
    3985             :       // op: Rm
    3986          69 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    3987          69 :       Value |= (op & UINT64_C(7)) << 3;
    3988             :       // op: imm3
    3989          69 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    3990          69 :       Value |= (op & UINT64_C(7)) << 6;
    3991          69 :       break;
    3992             :     }
    3993             :     case ARM::tASRri:
    3994             :     case ARM::tLSLri:
    3995             :     case ARM::tLSRri: {
    3996             :       // op: Rd
    3997         136 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    3998         136 :       Value |= op & UINT64_C(7);
    3999             :       // op: Rm
    4000         136 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4001         136 :       Value |= (op & UINT64_C(7)) << 3;
    4002             :       // op: imm5
    4003         136 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4004         136 :       Value |= (op & UINT64_C(31)) << 6;
    4005         136 :       break;
    4006             :     }
    4007             :     case ARM::tMUL:
    4008             :     case ARM::tMVN:
    4009             :     case ARM::tRSB: {
    4010             :       // op: Rd
    4011          44 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4012          44 :       Value |= op & UINT64_C(7);
    4013             :       // op: Rn
    4014          44 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4015          44 :       Value |= (op & UINT64_C(7)) << 3;
    4016          44 :       break;
    4017             :     }
    4018             :     case ARM::t2SMLALD:
    4019             :     case ARM::t2SMLALDX:
    4020             :     case ARM::t2SMLSLD:
    4021             :     case ARM::t2SMLSLDX: {
    4022             :       // op: Rd
    4023          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4024          16 :       Value |= (op & UINT64_C(15)) << 8;
    4025             :       // op: Rn
    4026          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4027          16 :       Value |= (op & UINT64_C(15)) << 16;
    4028             :       // op: Rm
    4029          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4030          16 :       Value |= op & UINT64_C(15);
    4031             :       // op: Ra
    4032          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4033          16 :       Value |= (op & UINT64_C(15)) << 12;
    4034          16 :       break;
    4035             :     }
    4036             :     case ARM::t2SMLAL:
    4037             :     case ARM::t2SMLALBB:
    4038             :     case ARM::t2SMLALBT:
    4039             :     case ARM::t2SMLALTB:
    4040             :     case ARM::t2SMLALTT:
    4041             :     case ARM::t2SMULL:
    4042             :     case ARM::t2UMAAL:
    4043             :     case ARM::t2UMLAL:
    4044             :     case ARM::t2UMULL: {
    4045             :       // op: RdLo
    4046          95 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4047          95 :       Value |= (op & UINT64_C(15)) << 12;
    4048             :       // op: RdHi
    4049          95 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4050          95 :       Value |= (op & UINT64_C(15)) << 8;
    4051             :       // op: Rn
    4052          95 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4053          95 :       Value |= (op & UINT64_C(15)) << 16;
    4054             :       // op: Rm
    4055          95 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4056          95 :       Value |= op & UINT64_C(15);
    4057          95 :       break;
    4058             :     }
    4059             :     case ARM::tADDi8:
    4060             :     case ARM::tSUBi8: {
    4061             :       // op: Rdn
    4062        1986 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4063        1986 :       Value |= (op & UINT64_C(7)) << 8;
    4064             :       // op: imm8
    4065        1986 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4066        1986 :       Value |= op & UINT64_C(255);
    4067        1986 :       break;
    4068             :     }
    4069             :     case ARM::tADDrSP: {
    4070             :       // op: Rdn
    4071          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4072          11 :       Value |= (op & UINT64_C(8)) << 4;
    4073          11 :       Value |= op & UINT64_C(7);
    4074          11 :       break;
    4075             :     }
    4076             :     case ARM::tADDhirr: {
    4077             :       // op: Rdn
    4078         151 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4079         151 :       Value |= (op & UINT64_C(8)) << 4;
    4080         151 :       Value |= op & UINT64_C(7);
    4081             :       // op: Rm
    4082         151 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4083         151 :       Value |= (op & UINT64_C(15)) << 3;
    4084         151 :       break;
    4085             :     }
    4086             :     case ARM::tADC:
    4087             :     case ARM::tAND:
    4088             :     case ARM::tASRrr:
    4089             :     case ARM::tBIC:
    4090             :     case ARM::tEOR:
    4091             :     case ARM::tLSLrr:
    4092             :     case ARM::tLSRrr:
    4093             :     case ARM::tORR:
    4094             :     case ARM::tROR:
    4095             :     case ARM::tSBC: {
    4096             :       // op: Rdn
    4097         168 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4098         168 :       Value |= op & UINT64_C(7);
    4099             :       // op: Rm
    4100         168 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4101         168 :       Value |= (op & UINT64_C(7)) << 3;
    4102         168 :       break;
    4103             :     }
    4104             :     case ARM::tBX:
    4105             :     case ARM::tBXNS: {
    4106             :       // op: Rm
    4107         464 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4108         464 :       Value |= (op & UINT64_C(15)) << 3;
    4109         464 :       break;
    4110             :     }
    4111             :     case ARM::tCMPhir: {
    4112             :       // op: Rm
    4113           7 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4114           7 :       Value |= (op & UINT64_C(15)) << 3;
    4115             :       // op: Rn
    4116           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4117           7 :       Value |= (op & UINT64_C(8)) << 4;
    4118           7 :       Value |= op & UINT64_C(7);
    4119           7 :       break;
    4120             :     }
    4121             :     case ARM::tREV:
    4122             :     case ARM::tREV16:
    4123             :     case ARM::tREVSH:
    4124             :     case ARM::tSXTB:
    4125             :     case ARM::tSXTH:
    4126             :     case ARM::tUXTB:
    4127             :     case ARM::tUXTH: {
    4128             :       // op: Rm
    4129          68 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4130          68 :       Value |= (op & UINT64_C(7)) << 3;
    4131             :       // op: Rd
    4132          68 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4133          68 :       Value |= op & UINT64_C(7);
    4134          68 :       break;
    4135             :     }
    4136             :     case ARM::tCMNz:
    4137             :     case ARM::tCMPr:
    4138             :     case ARM::tTST: {
    4139             :       // op: Rm
    4140          43 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4141          43 :       Value |= (op & UINT64_C(7)) << 3;
    4142             :       // op: Rn
    4143          43 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4144          43 :       Value |= op & UINT64_C(7);
    4145          43 :       break;
    4146             :     }
    4147             :     case ARM::tADDspr: {
    4148             :       // op: Rm
    4149          11 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4150          11 :       Value |= (op & UINT64_C(15)) << 3;
    4151          11 :       break;
    4152             :     }
    4153             :     case ARM::tADDrr:
    4154             :     case ARM::tSUBrr: {
    4155             :       // op: Rm
    4156          66 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4157          66 :       Value |= (op & UINT64_C(7)) << 6;
    4158             :       // op: Rn
    4159          66 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4160          66 :       Value |= (op & UINT64_C(7)) << 3;
    4161             :       // op: Rd
    4162          66 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4163          66 :       Value |= op & UINT64_C(7);
    4164          66 :       break;
    4165             :     }
    4166             :     case ARM::RFEDA:
    4167             :     case ARM::RFEDA_UPD:
    4168             :     case ARM::RFEDB:
    4169             :     case ARM::RFEDB_UPD:
    4170             :     case ARM::RFEIA:
    4171             :     case ARM::RFEIA_UPD:
    4172             :     case ARM::RFEIB:
    4173             :     case ARM::RFEIB_UPD:
    4174             :     case ARM::t2RFEDB:
    4175             :     case ARM::t2RFEDBW:
    4176             :     case ARM::t2RFEIA:
    4177             :     case ARM::t2RFEIAW: {
    4178             :       // op: Rn
    4179          40 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4180          40 :       Value |= (op & UINT64_C(15)) << 16;
    4181          40 :       break;
    4182             :     }
    4183             :     case ARM::t2CMNzrr:
    4184             :     case ARM::t2CMPrr:
    4185             :     case ARM::t2TBB:
    4186             :     case ARM::t2TBH:
    4187             :     case ARM::t2TEQrr:
    4188             :     case ARM::t2TSTrr: {
    4189             :       // op: Rn
    4190          21 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4191          21 :       Value |= (op & UINT64_C(15)) << 16;
    4192             :       // op: Rm
    4193          21 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4194          21 :       Value |= op & UINT64_C(15);
    4195          21 :       break;
    4196             :     }
    4197             :     case ARM::t2CMNzrs:
    4198             :     case ARM::t2CMPrs:
    4199             :     case ARM::t2TEQrs:
    4200             :     case ARM::t2TSTrs: {
    4201             :       // op: Rn
    4202          41 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4203          41 :       Value |= (op & UINT64_C(15)) << 16;
    4204             :       // op: ShiftedRm
    4205          41 :       op = getT2SORegOpValue(MI, 1, Fixups, STI);
    4206          41 :       Value |= (op & UINT64_C(3584)) << 3;
    4207          41 :       Value |= (op & UINT64_C(480)) >> 1;
    4208          41 :       Value |= op & UINT64_C(15);
    4209          41 :       break;
    4210             :     }
    4211             :     case ARM::t2CMNri:
    4212             :     case ARM::t2CMPri:
    4213             :     case ARM::t2TEQri:
    4214             :     case ARM::t2TSTri: {
    4215             :       // op: Rn
    4216          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4217          18 :       Value |= (op & UINT64_C(15)) << 16;
    4218             :       // op: imm
    4219          18 :       op = getT2SOImmOpValue(MI, 1, Fixups, STI);
    4220          18 :       Value |= (op & UINT64_C(2048)) << 15;
    4221          18 :       Value |= (op & UINT64_C(1792)) << 4;
    4222          18 :       Value |= op & UINT64_C(255);
    4223          18 :       break;
    4224             :     }
    4225             :     case ARM::t2STMDB:
    4226             :     case ARM::t2STMIA: {
    4227             :       // op: Rn
    4228          27 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4229          27 :       Value |= (op & UINT64_C(15)) << 16;
    4230             :       // op: regs
    4231          27 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    4232          27 :       Value |= op & UINT64_C(16384);
    4233          27 :       Value |= op & UINT64_C(8191);
    4234          27 :       break;
    4235             :     }
    4236             :     case ARM::t2LDMDB:
    4237             :     case ARM::t2LDMIA: {
    4238             :       // op: Rn
    4239          30 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4240          30 :       Value |= (op & UINT64_C(15)) << 16;
    4241             :       // op: regs
    4242          30 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    4243          30 :       Value |= op & UINT64_C(65535);
    4244          30 :       break;
    4245             :     }
    4246             :     case ARM::tCMPi8: {
    4247             :       // op: Rn
    4248          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4249          46 :       Value |= (op & UINT64_C(7)) << 8;
    4250             :       // op: imm8
    4251          46 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4252          46 :       Value |= op & UINT64_C(255);
    4253          46 :       break;
    4254             :     }
    4255             :     case ARM::tLDMIA: {
    4256             :       // op: Rn
    4257         141 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4258         141 :       Value |= (op & UINT64_C(7)) << 8;
    4259             :       // op: regs
    4260         141 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    4261         141 :       Value |= op & UINT64_C(255);
    4262         141 :       break;
    4263             :     }
    4264             :     case ARM::t2TT:
    4265             :     case ARM::t2TTA:
    4266             :     case ARM::t2TTAT:
    4267             :     case ARM::t2TTT: {
    4268             :       // op: Rn
    4269          15 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4270          15 :       Value |= (op & UINT64_C(15)) << 16;
    4271             :       // op: Rt
    4272          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4273          15 :       Value |= (op & UINT64_C(15)) << 8;
    4274          15 :       break;
    4275             :     }
    4276             :     case ARM::t2STMDB_UPD:
    4277             :     case ARM::t2STMIA_UPD: {
    4278             :       // op: Rn
    4279          29 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4280          29 :       Value |= (op & UINT64_C(15)) << 16;
    4281             :       // op: regs
    4282          29 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    4283          29 :       Value |= op & UINT64_C(16384);
    4284          29 :       Value |= op & UINT64_C(8191);
    4285          29 :       break;
    4286             :     }
    4287             :     case ARM::t2LDMDB_UPD:
    4288             :     case ARM::t2LDMIA_UPD: {
    4289             :       // op: Rn
    4290          38 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4291          38 :       Value |= (op & UINT64_C(15)) << 16;
    4292             :       // op: regs
    4293          38 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    4294          38 :       Value |= op & UINT64_C(65535);
    4295          38 :       break;
    4296             :     }
    4297             :     case ARM::tSTMIA_UPD: {
    4298             :       // op: Rn
    4299          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4300          10 :       Value |= (op & UINT64_C(7)) << 8;
    4301             :       // op: regs
    4302          10 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    4303          10 :       Value |= op & UINT64_C(255);
    4304          10 :       break;
    4305             :     }
    4306             :     case ARM::t2LDRB_POST:
    4307             :     case ARM::t2LDRH_POST:
    4308             :     case ARM::t2LDRSB_POST:
    4309             :     case ARM::t2LDRSH_POST:
    4310             :     case ARM::t2LDR_POST: {
    4311             :       // op: Rt
    4312         488 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4313         488 :       Value |= (op & UINT64_C(15)) << 12;
    4314             :       // op: Rn
    4315         488 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4316         488 :       Value |= (op & UINT64_C(15)) << 16;
    4317             :       // op: offset
    4318         488 :       op = getT2AddrModeImm8OffsetOpValue(MI, 3, Fixups, STI);
    4319         488 :       Value |= (op & UINT64_C(256)) << 1;
    4320         488 :       Value |= op & UINT64_C(255);
    4321         488 :       break;
    4322             :     }
    4323             :     case ARM::MRRC2:
    4324             :     case ARM::t2MRRC:
    4325             :     case ARM::t2MRRC2: {
    4326             :       // op: Rt
    4327          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4328          31 :       Value |= (op & UINT64_C(15)) << 12;
    4329             :       // op: Rt2
    4330          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4331          31 :       Value |= (op & UINT64_C(15)) << 16;
    4332             :       // op: cop
    4333          31 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4334          31 :       Value |= (op & UINT64_C(15)) << 8;
    4335             :       // op: opc1
    4336          31 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4337          31 :       Value |= (op & UINT64_C(15)) << 4;
    4338             :       // op: CRm
    4339          31 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4340          31 :       Value |= op & UINT64_C(15);
    4341          31 :       break;
    4342             :     }
    4343             :     case ARM::t2LDRD_POST: {
    4344             :       // op: Rt
    4345           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4346           8 :       Value |= (op & UINT64_C(15)) << 12;
    4347             :       // op: Rt2
    4348           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4349           8 :       Value |= (op & UINT64_C(15)) << 8;
    4350             :       // op: addr
    4351           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4352           8 :       Value |= (op & UINT64_C(15)) << 16;
    4353             :       // op: imm
    4354           8 :       op = getT2Imm8s4OpValue(MI, 4, Fixups, STI);
    4355           8 :       Value |= (op & UINT64_C(256)) << 15;
    4356           8 :       Value |= op & UINT64_C(255);
    4357           8 :       break;
    4358             :     }
    4359             :     case ARM::t2LDRDi8:
    4360             :     case ARM::t2STRDi8: {
    4361             :       // op: Rt
    4362          87 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4363          87 :       Value |= (op & UINT64_C(15)) << 12;
    4364             :       // op: Rt2
    4365          87 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4366          87 :       Value |= (op & UINT64_C(15)) << 8;
    4367             :       // op: addr
    4368          87 :       op = getT2AddrModeImm8s4OpValue(MI, 2, Fixups, STI);
    4369          87 :       Value |= (op & UINT64_C(256)) << 15;
    4370          87 :       Value |= (op & UINT64_C(7680)) << 7;
    4371          87 :       Value |= op & UINT64_C(255);
    4372          87 :       break;
    4373             :     }
    4374             :     case ARM::t2LDRD_PRE: {
    4375             :       // op: Rt
    4376           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4377           6 :       Value |= (op & UINT64_C(15)) << 12;
    4378             :       // op: Rt2
    4379           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4380           6 :       Value |= (op & UINT64_C(15)) << 8;
    4381             :       // op: addr
    4382           6 :       op = getT2AddrModeImm8s4OpValue(MI, 3, Fixups, STI);
    4383           6 :       Value |= (op & UINT64_C(256)) << 15;
    4384           6 :       Value |= (op & UINT64_C(7680)) << 7;
    4385           6 :       Value |= op & UINT64_C(255);
    4386           6 :       break;
    4387             :     }
    4388             :     case ARM::t2LDRBi12:
    4389             :     case ARM::t2LDRHi12:
    4390             :     case ARM::t2LDRSBi12:
    4391             :     case ARM::t2LDRSHi12:
    4392             :     case ARM::t2LDRi12:
    4393             :     case ARM::t2STRBi12:
    4394             :     case ARM::t2STRHi12:
    4395             :     case ARM::t2STRi12: {
    4396             :       // op: Rt
    4397        1260 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4398        1260 :       Value |= (op & UINT64_C(15)) << 12;
    4399             :       // op: addr
    4400        1260 :       op = getAddrModeImm12OpValue(MI, 1, Fixups, STI);
    4401        1260 :       Value |= (op & UINT64_C(122880)) << 3;
    4402        1260 :       Value |= op & UINT64_C(4095);
    4403        1260 :       break;
    4404             :     }
    4405             :     case ARM::t2LDRBpci:
    4406             :     case ARM::t2LDRHpci:
    4407             :     case ARM::t2LDRSBpci:
    4408             :     case ARM::t2LDRSHpci:
    4409             :     case ARM::t2LDRpci: {
    4410             :       // op: Rt
    4411          72 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4412          72 :       Value |= (op & UINT64_C(15)) << 12;
    4413             :       // op: addr
    4414          72 :       op = getAddrModeImm12OpValue(MI, 1, Fixups, STI);
    4415          72 :       Value |= (op & UINT64_C(4096)) << 11;
    4416          72 :       Value |= op & UINT64_C(4095);
    4417          72 :       break;
    4418             :     }
    4419             :     case ARM::t2LDA:
    4420             :     case ARM::t2LDAB:
    4421             :     case ARM::t2LDAEX:
    4422             :     case ARM::t2LDAH:
    4423             :     case ARM::t2STL:
    4424             :     case ARM::t2STLB:
    4425             :     case ARM::t2STLH: {
    4426             :       // op: Rt
    4427          35 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4428          35 :       Value |= (op & UINT64_C(15)) << 12;
    4429             :       // op: addr
    4430          35 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4431          35 :       Value |= (op & UINT64_C(15)) << 16;
    4432          35 :       break;
    4433             :     }
    4434             :     case ARM::t2LDREX: {
    4435             :       // op: Rt
    4436           9 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4437           9 :       Value |= (op & UINT64_C(15)) << 12;
    4438             :       // op: addr
    4439          18 :       op = getT2AddrModeImm0_1020s4OpValue(MI, 1, Fixups, STI);
    4440           9 :       Value |= (op & UINT64_C(3840)) << 8;
    4441           9 :       Value |= op & UINT64_C(255);
    4442           9 :       break;
    4443             :     }
    4444             :     case ARM::t2LDRBi8:
    4445             :     case ARM::t2LDRHi8:
    4446             :     case ARM::t2LDRSBi8:
    4447             :     case ARM::t2LDRSHi8:
    4448             :     case ARM::t2LDRi8:
    4449             :     case ARM::t2STRBi8:
    4450             :     case ARM::t2STRHi8:
    4451             :     case ARM::t2STRi8: {
    4452             :       // op: Rt
    4453          23 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4454          23 :       Value |= (op & UINT64_C(15)) << 12;
    4455             :       // op: addr
    4456          46 :       op = getT2AddrModeImm8OpValue(MI, 1, Fixups, STI);
    4457          23 :       Value |= (op & UINT64_C(7680)) << 7;
    4458          23 :       Value |= (op & UINT64_C(256)) << 1;
    4459          23 :       Value |= op & UINT64_C(255);
    4460          23 :       break;
    4461             :     }
    4462             :     case ARM::t2LDRBT:
    4463             :     case ARM::t2LDRHT:
    4464             :     case ARM::t2LDRSBT:
    4465             :     case ARM::t2LDRSHT:
    4466             :     case ARM::t2LDRT:
    4467             :     case ARM::t2STRBT:
    4468             :     case ARM::t2STRHT:
    4469             :     case ARM::t2STRT: {
    4470             :       // op: Rt
    4471          64 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4472          64 :       Value |= (op & UINT64_C(15)) << 12;
    4473             :       // op: addr
    4474         128 :       op = getT2AddrModeImm8OpValue(MI, 1, Fixups, STI);
    4475          64 :       Value |= (op & UINT64_C(7680)) << 7;
    4476          64 :       Value |= op & UINT64_C(255);
    4477          64 :       break;
    4478             :     }
    4479             :     case ARM::t2LDRB_PRE:
    4480             :     case ARM::t2LDRH_PRE:
    4481             :     case ARM::t2LDRSB_PRE:
    4482             :     case ARM::t2LDRSH_PRE:
    4483             :     case ARM::t2LDR_PRE: {
    4484             :       // op: Rt
    4485          30 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4486          30 :       Value |= (op & UINT64_C(15)) << 12;
    4487             :       // op: addr
    4488          60 :       op = getT2AddrModeImm8OpValue(MI, 2, Fixups, STI);
    4489          30 :       Value |= (op & UINT64_C(7680)) << 7;
    4490          30 :       Value |= (op & UINT64_C(256)) << 1;
    4491          30 :       Value |= op & UINT64_C(255);
    4492          30 :       break;
    4493             :     }
    4494             :     case ARM::t2LDRBs:
    4495             :     case ARM::t2LDRHs:
    4496             :     case ARM::t2LDRSBs:
    4497             :     case ARM::t2LDRSHs:
    4498             :     case ARM::t2LDRs:
    4499             :     case ARM::t2STRBs:
    4500             :     case ARM::t2STRHs:
    4501             :     case ARM::t2STRs: {
    4502             :       // op: Rt
    4503         228 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4504         228 :       Value |= (op & UINT64_C(15)) << 12;
    4505             :       // op: addr
    4506         456 :       op = getT2AddrModeSORegOpValue(MI, 1, Fixups, STI);
    4507         228 :       Value |= (op & UINT64_C(960)) << 10;
    4508         228 :       Value |= (op & UINT64_C(3)) << 4;
    4509         228 :       Value |= (op & UINT64_C(60)) >> 2;
    4510         228 :       break;
    4511             :     }
    4512             :     case ARM::MRC2:
    4513             :     case ARM::t2MRC:
    4514             :     case ARM::t2MRC2: {
    4515             :       // op: Rt
    4516          25 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4517          25 :       Value |= (op & UINT64_C(15)) << 12;
    4518             :       // op: cop
    4519          25 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4520          25 :       Value |= (op & UINT64_C(15)) << 8;
    4521             :       // op: opc1
    4522          25 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4523          25 :       Value |= (op & UINT64_C(7)) << 21;
    4524             :       // op: opc2
    4525          25 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    4526          25 :       Value |= (op & UINT64_C(7)) << 5;
    4527             :       // op: CRm
    4528          25 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4529          25 :       Value |= op & UINT64_C(15);
    4530             :       // op: CRn
    4531          25 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4532          25 :       Value |= (op & UINT64_C(15)) << 16;
    4533          25 :       break;
    4534             :     }
    4535             :     case ARM::tLDRpci: {
    4536             :       // op: Rt
    4537         121 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4538         121 :       Value |= (op & UINT64_C(7)) << 8;
    4539             :       // op: addr
    4540         121 :       op = getAddrModePCOpValue(MI, 1, Fixups, STI);
    4541         121 :       Value |= op & UINT64_C(255);
    4542         121 :       break;
    4543             :     }
    4544             :     case ARM::tLDRspi:
    4545             :     case ARM::tSTRspi: {
    4546             :       // op: Rt
    4547         924 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4548         924 :       Value |= (op & UINT64_C(7)) << 8;
    4549             :       // op: addr
    4550         924 :       op = getAddrModeThumbSPOpValue(MI, 1, Fixups, STI);
    4551         924 :       Value |= op & UINT64_C(255);
    4552         924 :       break;
    4553             :     }
    4554             :     case ARM::tLDRBi:
    4555             :     case ARM::tLDRHi:
    4556             :     case ARM::tLDRi:
    4557             :     case ARM::tSTRBi:
    4558             :     case ARM::tSTRHi:
    4559             :     case ARM::tSTRi: {
    4560             :       // op: Rt
    4561        2202 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4562        2202 :       Value |= op & UINT64_C(7);
    4563             :       // op: addr
    4564        4404 :       op = getAddrModeISOpValue(MI, 1, Fixups, STI);
    4565        2202 :       Value |= (op & UINT64_C(255)) << 3;
    4566        2202 :       break;
    4567             :     }
    4568             :     case ARM::tLDRBr:
    4569             :     case ARM::tLDRHr:
    4570             :     case ARM::tLDRSB:
    4571             :     case ARM::tLDRSH:
    4572             :     case ARM::tLDRr:
    4573             :     case ARM::tSTRBr:
    4574             :     case ARM::tSTRHr:
    4575             :     case ARM::tSTRr: {
    4576             :       // op: Rt
    4577          44 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4578          44 :       Value |= op & UINT64_C(7);
    4579             :       // op: addr
    4580          88 :       op = getThumbAddrModeRegRegOpValue(MI, 1, Fixups, STI);
    4581          44 :       Value |= (op & UINT64_C(63)) << 3;
    4582          44 :       break;
    4583             :     }
    4584             :     case ARM::t2STRB_POST:
    4585             :     case ARM::t2STRH_POST:
    4586             :     case ARM::t2STR_POST: {
    4587             :       // op: Rt
    4588         466 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4589         466 :       Value |= (op & UINT64_C(15)) << 12;
    4590             :       // op: Rn
    4591         466 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4592         466 :       Value |= (op & UINT64_C(15)) << 16;
    4593             :       // op: offset
    4594         466 :       op = getT2AddrModeImm8OffsetOpValue(MI, 3, Fixups, STI);
    4595         466 :       Value |= (op & UINT64_C(256)) << 1;
    4596         466 :       Value |= op & UINT64_C(255);
    4597         466 :       break;
    4598             :     }
    4599             :     case ARM::t2STRD_POST: {
    4600             :       // op: Rt
    4601          40 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4602          40 :       Value |= (op & UINT64_C(15)) << 12;
    4603             :       // op: Rt2
    4604          40 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4605          40 :       Value |= (op & UINT64_C(15)) << 8;
    4606             :       // op: addr
    4607          40 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4608          40 :       Value |= (op & UINT64_C(15)) << 16;
    4609             :       // op: imm
    4610          40 :       op = getT2Imm8s4OpValue(MI, 4, Fixups, STI);
    4611          40 :       Value |= (op & UINT64_C(256)) << 15;
    4612          40 :       Value |= op & UINT64_C(255);
    4613          40 :       break;
    4614             :     }
    4615             :     case ARM::t2STRD_PRE: {
    4616             :       // op: Rt
    4617          38 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4618          38 :       Value |= (op & UINT64_C(15)) << 12;
    4619             :       // op: Rt2
    4620          38 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4621          38 :       Value |= (op & UINT64_C(15)) << 8;
    4622             :       // op: addr
    4623          38 :       op = getT2AddrModeImm8s4OpValue(MI, 3, Fixups, STI);
    4624          38 :       Value |= (op & UINT64_C(256)) << 15;
    4625          38 :       Value |= (op & UINT64_C(7680)) << 7;
    4626          38 :       Value |= op & UINT64_C(255);
    4627          38 :       break;
    4628             :     }
    4629             :     case ARM::t2STRB_PRE:
    4630             :     case ARM::t2STRH_PRE:
    4631             :     case ARM::t2STR_PRE: {
    4632             :       // op: Rt
    4633          28 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4634          28 :       Value |= (op & UINT64_C(15)) << 12;
    4635             :       // op: addr
    4636          56 :       op = getT2AddrModeImm8OpValue(MI, 2, Fixups, STI);
    4637          28 :       Value |= (op & UINT64_C(7680)) << 7;
    4638          28 :       Value |= (op & UINT64_C(256)) << 1;
    4639          28 :       Value |= op & UINT64_C(255);
    4640          28 :       break;
    4641             :     }
    4642             :     case ARM::MCRR2:
    4643             :     case ARM::t2MCRR:
    4644             :     case ARM::t2MCRR2: {
    4645             :       // op: Rt
    4646          31 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4647          31 :       Value |= (op & UINT64_C(15)) << 12;
    4648             :       // op: Rt2
    4649          31 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4650          31 :       Value |= (op & UINT64_C(15)) << 16;
    4651             :       // op: cop
    4652          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4653          31 :       Value |= (op & UINT64_C(15)) << 8;
    4654             :       // op: opc1
    4655          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4656          31 :       Value |= (op & UINT64_C(15)) << 4;
    4657             :       // op: CRm
    4658          31 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4659          31 :       Value |= op & UINT64_C(15);
    4660          31 :       break;
    4661             :     }
    4662             :     case ARM::MCR2:
    4663             :     case ARM::t2MCR:
    4664             :     case ARM::t2MCR2: {
    4665             :       // op: Rt
    4666          25 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4667          25 :       Value |= (op & UINT64_C(15)) << 12;
    4668             :       // op: cop
    4669          25 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4670          25 :       Value |= (op & UINT64_C(15)) << 8;
    4671             :       // op: opc1
    4672          25 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4673          25 :       Value |= (op & UINT64_C(7)) << 21;
    4674             :       // op: opc2
    4675          25 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    4676          25 :       Value |= (op & UINT64_C(7)) << 5;
    4677             :       // op: CRm
    4678          25 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4679          25 :       Value |= op & UINT64_C(15);
    4680             :       // op: CRn
    4681          25 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4682          25 :       Value |= (op & UINT64_C(15)) << 16;
    4683          25 :       break;
    4684             :     }
    4685             :     case ARM::t2MSR_M: {
    4686             :       // op: SYSm
    4687          90 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4688          90 :       Value |= op & UINT64_C(3072);
    4689          90 :       Value |= op & UINT64_C(255);
    4690             :       // op: Rn
    4691          90 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4692          90 :       Value |= (op & UINT64_C(15)) << 16;
    4693          90 :       break;
    4694             :     }
    4695             :     case ARM::VCVTASD:
    4696             :     case ARM::VCVTAUD:
    4697             :     case ARM::VCVTMSD:
    4698             :     case ARM::VCVTMUD:
    4699             :     case ARM::VCVTNSD:
    4700             :     case ARM::VCVTNUD:
    4701             :     case ARM::VCVTPSD:
    4702             :     case ARM::VCVTPUD: {
    4703             :       // op: Sd
    4704          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4705          32 :       Value |= (op & UINT64_C(1)) << 22;
    4706          32 :       Value |= (op & UINT64_C(30)) << 11;
    4707             :       // op: Dm
    4708          32 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4709          32 :       Value |= (op & UINT64_C(16)) << 1;
    4710          32 :       Value |= op & UINT64_C(15);
    4711          32 :       break;
    4712             :     }
    4713             :     case ARM::VCVTASH:
    4714             :     case ARM::VCVTASS:
    4715             :     case ARM::VCVTAUH:
    4716             :     case ARM::VCVTAUS:
    4717             :     case ARM::VCVTMSH:
    4718             :     case ARM::VCVTMSS:
    4719             :     case ARM::VCVTMUH:
    4720             :     case ARM::VCVTMUS:
    4721             :     case ARM::VCVTNSH:
    4722             :     case ARM::VCVTNSS:
    4723             :     case ARM::VCVTNUH:
    4724             :     case ARM::VCVTNUS:
    4725             :     case ARM::VCVTPSH:
    4726             :     case ARM::VCVTPSS:
    4727             :     case ARM::VCVTPUH:
    4728             :     case ARM::VCVTPUS:
    4729             :     case ARM::VINSH:
    4730             :     case ARM::VMOVH:
    4731             :     case ARM::VRINTAH:
    4732             :     case ARM::VRINTAS:
    4733             :     case ARM::VRINTMH:
    4734             :     case ARM::VRINTMS:
    4735             :     case ARM::VRINTNH:
    4736             :     case ARM::VRINTNS:
    4737             :     case ARM::VRINTPH:
    4738             :     case ARM::VRINTPS: {
    4739             :       // op: Sd
    4740         104 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4741         104 :       Value |= (op & UINT64_C(1)) << 22;
    4742         104 :       Value |= (op & UINT64_C(30)) << 11;
    4743             :       // op: Sm
    4744         104 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4745         104 :       Value |= (op & UINT64_C(1)) << 5;
    4746         104 :       Value |= (op & UINT64_C(30)) >> 1;
    4747         104 :       break;
    4748             :     }
    4749             :     case ARM::VMAXNMH:
    4750             :     case ARM::VMAXNMS:
    4751             :     case ARM::VMINNMH:
    4752             :     case ARM::VMINNMS:
    4753             :     case ARM::VSELEQH:
    4754             :     case ARM::VSELEQS:
    4755             :     case ARM::VSELGEH:
    4756             :     case ARM::VSELGES:
    4757             :     case ARM::VSELGTH:
    4758             :     case ARM::VSELGTS:
    4759             :     case ARM::VSELVSH:
    4760             :     case ARM::VSELVSS: {
    4761             :       // op: Sd
    4762          48 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4763          48 :       Value |= (op & UINT64_C(1)) << 22;
    4764          48 :       Value |= (op & UINT64_C(30)) << 11;
    4765             :       // op: Sn
    4766          48 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4767          48 :       Value |= (op & UINT64_C(30)) << 15;
    4768          48 :       Value |= (op & UINT64_C(1)) << 7;
    4769             :       // op: Sm
    4770          48 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4771          48 :       Value |= (op & UINT64_C(1)) << 5;
    4772          48 :       Value |= (op & UINT64_C(30)) >> 1;
    4773          48 :       break;
    4774             :     }
    4775             :     case ARM::VDUP16d:
    4776             :     case ARM::VDUP16q:
    4777             :     case ARM::VDUP32d:
    4778             :     case ARM::VDUP32q:
    4779             :     case ARM::VDUP8d:
    4780             :     case ARM::VDUP8q: {
    4781             :       // op: V
    4782          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4783          12 :       Value |= (op & UINT64_C(15)) << 16;
    4784          12 :       Value |= (op & UINT64_C(16)) << 3;
    4785             :       // op: R
    4786          12 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4787          12 :       Value |= (op & UINT64_C(15)) << 12;
    4788             :       // op: p
    4789          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4790          12 :       Value |= (op & UINT64_C(15)) << 28;
    4791          24 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4792          12 :       break;
    4793             :     }
    4794             :     case ARM::VSETLNi32: {
    4795             :       // op: V
    4796          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4797          12 :       Value |= (op & UINT64_C(15)) << 16;
    4798          12 :       Value |= (op & UINT64_C(16)) << 3;
    4799             :       // op: R
    4800          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4801          12 :       Value |= (op & UINT64_C(15)) << 12;
    4802             :       // op: p
    4803          12 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4804          12 :       Value |= (op & UINT64_C(15)) << 28;
    4805             :       // op: lane
    4806          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4807          12 :       Value |= (op & UINT64_C(1)) << 21;
    4808          24 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4809          12 :       break;
    4810             :     }
    4811             :     case ARM::VSETLNi16: {
    4812             :       // op: V
    4813           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4814           6 :       Value |= (op & UINT64_C(15)) << 16;
    4815           6 :       Value |= (op & UINT64_C(16)) << 3;
    4816             :       // op: R
    4817           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4818           6 :       Value |= (op & UINT64_C(15)) << 12;
    4819             :       // op: p
    4820           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4821           6 :       Value |= (op & UINT64_C(15)) << 28;
    4822             :       // op: lane
    4823           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4824           6 :       Value |= (op & UINT64_C(2)) << 20;
    4825           6 :       Value |= (op & UINT64_C(1)) << 6;
    4826          12 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4827           6 :       break;
    4828             :     }
    4829             :     case ARM::VSETLNi8: {
    4830             :       // op: V
    4831           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4832           6 :       Value |= (op & UINT64_C(15)) << 16;
    4833           6 :       Value |= (op & UINT64_C(16)) << 3;
    4834             :       // op: R
    4835           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4836           6 :       Value |= (op & UINT64_C(15)) << 12;
    4837             :       // op: p
    4838           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4839           6 :       Value |= (op & UINT64_C(15)) << 28;
    4840             :       // op: lane
    4841           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4842           6 :       Value |= (op & UINT64_C(4)) << 19;
    4843           6 :       Value |= (op & UINT64_C(3)) << 5;
    4844          12 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4845           6 :       break;
    4846             :     }
    4847             :     case ARM::VGETLNi32: {
    4848             :       // op: V
    4849          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4850          10 :       Value |= (op & UINT64_C(15)) << 16;
    4851          10 :       Value |= (op & UINT64_C(16)) << 3;
    4852             :       // op: R
    4853          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4854          10 :       Value |= (op & UINT64_C(15)) << 12;
    4855             :       // op: p
    4856          10 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4857          10 :       Value |= (op & UINT64_C(15)) << 28;
    4858             :       // op: lane
    4859          10 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4860          10 :       Value |= (op & UINT64_C(1)) << 21;
    4861          20 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4862          10 :       break;
    4863             :     }
    4864             :     case ARM::VGETLNs16:
    4865             :     case ARM::VGETLNu16: {
    4866             :       // op: V
    4867           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4868           6 :       Value |= (op & UINT64_C(15)) << 16;
    4869           6 :       Value |= (op & UINT64_C(16)) << 3;
    4870             :       // op: R
    4871           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4872           6 :       Value |= (op & UINT64_C(15)) << 12;
    4873             :       // op: p
    4874           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4875           6 :       Value |= (op & UINT64_C(15)) << 28;
    4876             :       // op: lane
    4877           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4878           6 :       Value |= (op & UINT64_C(2)) << 20;
    4879           6 :       Value |= (op & UINT64_C(1)) << 6;
    4880          12 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4881           6 :       break;
    4882             :     }
    4883             :     case ARM::VGETLNs8:
    4884             :     case ARM::VGETLNu8: {
    4885             :       // op: V
    4886           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    4887           6 :       Value |= (op & UINT64_C(15)) << 16;
    4888           6 :       Value |= (op & UINT64_C(16)) << 3;
    4889             :       // op: R
    4890           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4891           6 :       Value |= (op & UINT64_C(15)) << 12;
    4892             :       // op: p
    4893           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    4894           6 :       Value |= (op & UINT64_C(15)) << 28;
    4895             :       // op: lane
    4896           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    4897           6 :       Value |= (op & UINT64_C(4)) << 19;
    4898           6 :       Value |= (op & UINT64_C(3)) << 5;
    4899          12 :       Value = NEONThumb2DupPostEncoder(MI, Value, STI);
    4900           6 :       break;
    4901             :     }
    4902             :     case ARM::VLD1LNd8: {
    4903             :       // op: Vd
    4904           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4905           4 :       Value |= (op & UINT64_C(16)) << 18;
    4906           4 :       Value |= (op & UINT64_C(15)) << 12;
    4907             :       // op: Rn
    4908           8 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    4909           4 :       Value |= (op & UINT64_C(15)) << 16;
    4910             :       // op: lane
    4911           4 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4912           4 :       Value |= (op & UINT64_C(7)) << 5;
    4913           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    4914           4 :       break;
    4915             :     }
    4916             :     case ARM::VLD1d16:
    4917             :     case ARM::VLD1d16T:
    4918             :     case ARM::VLD1d32:
    4919             :     case ARM::VLD1d32T:
    4920             :     case ARM::VLD1d64:
    4921             :     case ARM::VLD1d64T:
    4922             :     case ARM::VLD1d8:
    4923             :     case ARM::VLD1d8T: {
    4924             :       // op: Vd
    4925          34 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4926          34 :       Value |= (op & UINT64_C(16)) << 18;
    4927          34 :       Value |= (op & UINT64_C(15)) << 12;
    4928             :       // op: Rn
    4929          68 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    4930          34 :       Value |= (op & UINT64_C(15)) << 16;
    4931          34 :       Value |= op & UINT64_C(16);
    4932          68 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    4933          34 :       break;
    4934             :     }
    4935             :     case ARM::VLD1LNd16: {
    4936             :       // op: Vd
    4937           5 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4938           5 :       Value |= (op & UINT64_C(16)) << 18;
    4939           5 :       Value |= (op & UINT64_C(15)) << 12;
    4940             :       // op: Rn
    4941          10 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    4942           5 :       Value |= (op & UINT64_C(15)) << 16;
    4943           5 :       Value |= op & UINT64_C(48);
    4944             :       // op: lane
    4945           5 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    4946           5 :       Value |= (op & UINT64_C(3)) << 6;
    4947          10 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    4948           5 :       break;
    4949             :     }
    4950             :     case ARM::VLD1d16Q:
    4951             :     case ARM::VLD1d32Q:
    4952             :     case ARM::VLD1d64Q:
    4953             :     case ARM::VLD1d8Q:
    4954             :     case ARM::VLD1q16:
    4955             :     case ARM::VLD1q32:
    4956             :     case ARM::VLD1q64:
    4957             :     case ARM::VLD1q8:
    4958             :     case ARM::VLD2b16:
    4959             :     case ARM::VLD2b32:
    4960             :     case ARM::VLD2b8:
    4961             :     case ARM::VLD2d16:
    4962             :     case ARM::VLD2d32:
    4963             :     case ARM::VLD2d8:
    4964             :     case ARM::VLD2q16:
    4965             :     case ARM::VLD2q32:
    4966             :     case ARM::VLD2q8: {
    4967             :       // op: Vd
    4968          95 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4969          95 :       Value |= (op & UINT64_C(16)) << 18;
    4970          95 :       Value |= (op & UINT64_C(15)) << 12;
    4971             :       // op: Rn
    4972         190 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    4973          95 :       Value |= (op & UINT64_C(15)) << 16;
    4974          95 :       Value |= op & UINT64_C(48);
    4975         190 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    4976          95 :       break;
    4977             :     }
    4978             :     case ARM::VLD1LNd8_UPD: {
    4979             :       // op: Vd
    4980          13 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4981          13 :       Value |= (op & UINT64_C(16)) << 18;
    4982          13 :       Value |= (op & UINT64_C(15)) << 12;
    4983             :       // op: Rn
    4984          26 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    4985          13 :       Value |= (op & UINT64_C(15)) << 16;
    4986             :       // op: Rm
    4987             :       op = getAddrMode6OffsetOpValue(MI, 4, Fixups, STI);
    4988          13 :       Value |= op & UINT64_C(15);
    4989             :       // op: lane
    4990          13 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    4991          13 :       Value |= (op & UINT64_C(7)) << 5;
    4992          26 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    4993          13 :       break;
    4994             :     }
    4995             :     case ARM::VLD1LNd32_UPD: {
    4996             :       // op: Vd
    4997          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    4998          12 :       Value |= (op & UINT64_C(16)) << 18;
    4999          12 :       Value |= (op & UINT64_C(15)) << 12;
    5000             :       // op: Rn
    5001          24 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5002          12 :       Value |= (op & UINT64_C(15)) << 16;
    5003          12 :       Value |= (op & UINT64_C(16)) << 1;
    5004          12 :       Value |= op & UINT64_C(16);
    5005             :       // op: Rm
    5006             :       op = getAddrMode6OffsetOpValue(MI, 4, Fixups, STI);
    5007          12 :       Value |= op & UINT64_C(15);
    5008             :       // op: lane
    5009          12 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5010          12 :       Value |= (op & UINT64_C(1)) << 7;
    5011          24 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5012          12 :       break;
    5013             :     }
    5014             :     case ARM::VLD1LNd16_UPD: {
    5015             :       // op: Vd
    5016          19 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5017          19 :       Value |= (op & UINT64_C(16)) << 18;
    5018          19 :       Value |= (op & UINT64_C(15)) << 12;
    5019             :       // op: Rn
    5020          38 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5021          19 :       Value |= (op & UINT64_C(15)) << 16;
    5022          19 :       Value |= op & UINT64_C(16);
    5023             :       // op: Rm
    5024             :       op = getAddrMode6OffsetOpValue(MI, 4, Fixups, STI);
    5025          19 :       Value |= op & UINT64_C(15);
    5026             :       // op: lane
    5027          19 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5028          19 :       Value |= (op & UINT64_C(3)) << 6;
    5029          38 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5030          19 :       break;
    5031             :     }
    5032             :     case ARM::VLD1d16Twb_register:
    5033             :     case ARM::VLD1d16wb_register:
    5034             :     case ARM::VLD1d32Twb_register:
    5035             :     case ARM::VLD1d32wb_register:
    5036             :     case ARM::VLD1d64Twb_register:
    5037             :     case ARM::VLD1d64wb_register:
    5038             :     case ARM::VLD1d8Twb_register:
    5039             :     case ARM::VLD1d8wb_register: {
    5040             :       // op: Vd
    5041          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5042          24 :       Value |= (op & UINT64_C(16)) << 18;
    5043          24 :       Value |= (op & UINT64_C(15)) << 12;
    5044             :       // op: Rn
    5045          48 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5046          24 :       Value |= (op & UINT64_C(15)) << 16;
    5047          24 :       Value |= op & UINT64_C(16);
    5048             :       // op: Rm
    5049          24 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    5050          24 :       Value |= op & UINT64_C(15);
    5051          48 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5052          24 :       break;
    5053             :     }
    5054             :     case ARM::VLD2LNd32:
    5055             :     case ARM::VLD2LNq32: {
    5056             :       // op: Vd
    5057           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5058           8 :       Value |= (op & UINT64_C(16)) << 18;
    5059           8 :       Value |= (op & UINT64_C(15)) << 12;
    5060             :       // op: Rn
    5061          16 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5062           8 :       Value |= (op & UINT64_C(15)) << 16;
    5063           8 :       Value |= op & UINT64_C(16);
    5064             :       // op: lane
    5065           8 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5066           8 :       Value |= (op & UINT64_C(1)) << 7;
    5067          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5068           8 :       break;
    5069             :     }
    5070             :     case ARM::VLD2LNd16:
    5071             :     case ARM::VLD2LNq16: {
    5072             :       // op: Vd
    5073           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5074           8 :       Value |= (op & UINT64_C(16)) << 18;
    5075           8 :       Value |= (op & UINT64_C(15)) << 12;
    5076             :       // op: Rn
    5077          16 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5078           8 :       Value |= (op & UINT64_C(15)) << 16;
    5079           8 :       Value |= op & UINT64_C(16);
    5080             :       // op: lane
    5081           8 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5082           8 :       Value |= (op & UINT64_C(3)) << 6;
    5083          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5084           8 :       break;
    5085             :     }
    5086             :     case ARM::VLD2LNd8: {
    5087             :       // op: Vd
    5088           5 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5089           5 :       Value |= (op & UINT64_C(16)) << 18;
    5090           5 :       Value |= (op & UINT64_C(15)) << 12;
    5091             :       // op: Rn
    5092          10 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5093           5 :       Value |= (op & UINT64_C(15)) << 16;
    5094           5 :       Value |= op & UINT64_C(16);
    5095             :       // op: lane
    5096           5 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    5097           5 :       Value |= (op & UINT64_C(7)) << 5;
    5098          10 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5099           5 :       break;
    5100             :     }
    5101             :     case ARM::VLD1d16Twb_fixed:
    5102             :     case ARM::VLD1d16wb_fixed:
    5103             :     case ARM::VLD1d32Twb_fixed:
    5104             :     case ARM::VLD1d32wb_fixed:
    5105             :     case ARM::VLD1d64Twb_fixed:
    5106             :     case ARM::VLD1d64wb_fixed:
    5107             :     case ARM::VLD1d8Twb_fixed:
    5108             :     case ARM::VLD1d8wb_fixed: {
    5109             :       // op: Vd
    5110          72 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5111          72 :       Value |= (op & UINT64_C(16)) << 18;
    5112          72 :       Value |= (op & UINT64_C(15)) << 12;
    5113             :       // op: Rn
    5114         144 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5115          72 :       Value |= (op & UINT64_C(15)) << 16;
    5116          72 :       Value |= op & UINT64_C(16);
    5117         144 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5118          72 :       break;
    5119             :     }
    5120             :     case ARM::VLD1d16Qwb_register:
    5121             :     case ARM::VLD1d32Qwb_register:
    5122             :     case ARM::VLD1d64Qwb_register:
    5123             :     case ARM::VLD1d8Qwb_register:
    5124             :     case ARM::VLD1q16wb_register:
    5125             :     case ARM::VLD1q32wb_register:
    5126             :     case ARM::VLD1q64wb_register:
    5127             :     case ARM::VLD1q8wb_register:
    5128             :     case ARM::VLD2b16wb_register:
    5129             :     case ARM::VLD2b32wb_register:
    5130             :     case ARM::VLD2b8wb_register:
    5131             :     case ARM::VLD2d16wb_register:
    5132             :     case ARM::VLD2d32wb_register:
    5133             :     case ARM::VLD2d8wb_register:
    5134             :     case ARM::VLD2q16wb_register:
    5135             :     case ARM::VLD2q32wb_register:
    5136             :     case ARM::VLD2q8wb_register: {
    5137             :       // op: Vd
    5138          72 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5139          72 :       Value |= (op & UINT64_C(16)) << 18;
    5140          72 :       Value |= (op & UINT64_C(15)) << 12;
    5141             :       // op: Rn
    5142         144 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5143          72 :       Value |= (op & UINT64_C(15)) << 16;
    5144          72 :       Value |= op & UINT64_C(48);
    5145             :       // op: Rm
    5146          72 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    5147          72 :       Value |= op & UINT64_C(15);
    5148         144 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5149          72 :       break;
    5150             :     }
    5151             :     case ARM::VLD1d16Qwb_fixed:
    5152             :     case ARM::VLD1d32Qwb_fixed:
    5153             :     case ARM::VLD1d64Qwb_fixed:
    5154             :     case ARM::VLD1d8Qwb_fixed:
    5155             :     case ARM::VLD1q16wb_fixed:
    5156             :     case ARM::VLD1q32wb_fixed:
    5157             :     case ARM::VLD1q64wb_fixed:
    5158             :     case ARM::VLD1q8wb_fixed:
    5159             :     case ARM::VLD2b16wb_fixed:
    5160             :     case ARM::VLD2b32wb_fixed:
    5161             :     case ARM::VLD2b8wb_fixed:
    5162             :     case ARM::VLD2d16wb_fixed:
    5163             :     case ARM::VLD2d32wb_fixed:
    5164             :     case ARM::VLD2d8wb_fixed:
    5165             :     case ARM::VLD2q16wb_fixed:
    5166             :     case ARM::VLD2q32wb_fixed:
    5167             :     case ARM::VLD2q8wb_fixed: {
    5168             :       // op: Vd
    5169         102 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5170         102 :       Value |= (op & UINT64_C(16)) << 18;
    5171         102 :       Value |= (op & UINT64_C(15)) << 12;
    5172             :       // op: Rn
    5173         204 :       op = getAddrMode6AddressOpValue(MI, 2, Fixups, STI);
    5174         102 :       Value |= (op & UINT64_C(15)) << 16;
    5175         102 :       Value |= op & UINT64_C(48);
    5176         204 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5177         102 :       break;
    5178             :     }
    5179             :     case ARM::VLD3LNd32:
    5180             :     case ARM::VLD3LNq32: {
    5181             :       // op: Vd
    5182           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5183           6 :       Value |= (op & UINT64_C(16)) << 18;
    5184           6 :       Value |= (op & UINT64_C(15)) << 12;
    5185             :       // op: Rn
    5186          12 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5187           6 :       Value |= (op & UINT64_C(15)) << 16;
    5188             :       // op: lane
    5189           6 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5190           6 :       Value |= (op & UINT64_C(1)) << 7;
    5191          12 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5192           6 :       break;
    5193             :     }
    5194             :     case ARM::VLD3LNd16:
    5195             :     case ARM::VLD3LNq16: {
    5196             :       // op: Vd
    5197           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5198           6 :       Value |= (op & UINT64_C(16)) << 18;
    5199           6 :       Value |= (op & UINT64_C(15)) << 12;
    5200             :       // op: Rn
    5201          12 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5202           6 :       Value |= (op & UINT64_C(15)) << 16;
    5203             :       // op: lane
    5204           6 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5205           6 :       Value |= (op & UINT64_C(3)) << 6;
    5206          12 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5207           6 :       break;
    5208             :     }
    5209             :     case ARM::VLD3LNd8: {
    5210             :       // op: Vd
    5211           3 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5212           3 :       Value |= (op & UINT64_C(16)) << 18;
    5213           3 :       Value |= (op & UINT64_C(15)) << 12;
    5214             :       // op: Rn
    5215           6 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5216           3 :       Value |= (op & UINT64_C(15)) << 16;
    5217             :       // op: lane
    5218           3 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5219           3 :       Value |= (op & UINT64_C(7)) << 5;
    5220           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5221           3 :       break;
    5222             :     }
    5223             :     case ARM::VLD2LNd32_UPD:
    5224             :     case ARM::VLD2LNq32_UPD: {
    5225             :       // op: Vd
    5226           9 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5227           9 :       Value |= (op & UINT64_C(16)) << 18;
    5228           9 :       Value |= (op & UINT64_C(15)) << 12;
    5229             :       // op: Rn
    5230          18 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5231           9 :       Value |= (op & UINT64_C(15)) << 16;
    5232           9 :       Value |= op & UINT64_C(16);
    5233             :       // op: Rm
    5234             :       op = getAddrMode6OffsetOpValue(MI, 5, Fixups, STI);
    5235           9 :       Value |= op & UINT64_C(15);
    5236             :       // op: lane
    5237           9 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5238           9 :       Value |= (op & UINT64_C(1)) << 7;
    5239          18 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5240           9 :       break;
    5241             :     }
    5242             :     case ARM::VLD2LNd16_UPD:
    5243             :     case ARM::VLD2LNq16_UPD: {
    5244             :       // op: Vd
    5245           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5246           8 :       Value |= (op & UINT64_C(16)) << 18;
    5247           8 :       Value |= (op & UINT64_C(15)) << 12;
    5248             :       // op: Rn
    5249          16 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5250           8 :       Value |= (op & UINT64_C(15)) << 16;
    5251           8 :       Value |= op & UINT64_C(16);
    5252             :       // op: Rm
    5253             :       op = getAddrMode6OffsetOpValue(MI, 5, Fixups, STI);
    5254           8 :       Value |= op & UINT64_C(15);
    5255             :       // op: lane
    5256           8 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5257           8 :       Value |= (op & UINT64_C(3)) << 6;
    5258          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5259           8 :       break;
    5260             :     }
    5261             :     case ARM::VLD2LNd8_UPD: {
    5262             :       // op: Vd
    5263           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5264           6 :       Value |= (op & UINT64_C(16)) << 18;
    5265           6 :       Value |= (op & UINT64_C(15)) << 12;
    5266             :       // op: Rn
    5267          12 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5268           6 :       Value |= (op & UINT64_C(15)) << 16;
    5269           6 :       Value |= op & UINT64_C(16);
    5270             :       // op: Rm
    5271             :       op = getAddrMode6OffsetOpValue(MI, 5, Fixups, STI);
    5272           6 :       Value |= op & UINT64_C(15);
    5273             :       // op: lane
    5274           6 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    5275           6 :       Value |= (op & UINT64_C(7)) << 5;
    5276          12 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5277           6 :       break;
    5278             :     }
    5279             :     case ARM::VLD3d16:
    5280             :     case ARM::VLD3d32:
    5281             :     case ARM::VLD3d8:
    5282             :     case ARM::VLD3q16:
    5283             :     case ARM::VLD3q32:
    5284             :     case ARM::VLD3q8: {
    5285             :       // op: Vd
    5286          21 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5287          21 :       Value |= (op & UINT64_C(16)) << 18;
    5288          21 :       Value |= (op & UINT64_C(15)) << 12;
    5289             :       // op: Rn
    5290          42 :       op = getAddrMode6AddressOpValue(MI, 3, Fixups, STI);
    5291          21 :       Value |= (op & UINT64_C(15)) << 16;
    5292          21 :       Value |= op & UINT64_C(16);
    5293          42 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5294          21 :       break;
    5295             :     }
    5296             :     case ARM::VLD3LNd32_UPD:
    5297             :     case ARM::VLD3LNq32_UPD: {
    5298             :       // op: Vd
    5299           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5300           8 :       Value |= (op & UINT64_C(16)) << 18;
    5301           8 :       Value |= (op & UINT64_C(15)) << 12;
    5302             :       // op: Rn
    5303          16 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5304           8 :       Value |= (op & UINT64_C(15)) << 16;
    5305             :       // op: Rm
    5306             :       op = getAddrMode6OffsetOpValue(MI, 6, Fixups, STI);
    5307           8 :       Value |= op & UINT64_C(15);
    5308             :       // op: lane
    5309           8 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5310           8 :       Value |= (op & UINT64_C(1)) << 7;
    5311          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5312           8 :       break;
    5313             :     }
    5314             :     case ARM::VLD3LNd16_UPD:
    5315             :     case ARM::VLD3LNq16_UPD: {
    5316             :       // op: Vd
    5317           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5318           8 :       Value |= (op & UINT64_C(16)) << 18;
    5319           8 :       Value |= (op & UINT64_C(15)) << 12;
    5320             :       // op: Rn
    5321          16 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5322           8 :       Value |= (op & UINT64_C(15)) << 16;
    5323             :       // op: Rm
    5324             :       op = getAddrMode6OffsetOpValue(MI, 6, Fixups, STI);
    5325           8 :       Value |= op & UINT64_C(15);
    5326             :       // op: lane
    5327           8 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5328           8 :       Value |= (op & UINT64_C(3)) << 6;
    5329          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5330           8 :       break;
    5331             :     }
    5332             :     case ARM::VLD3LNd8_UPD: {
    5333             :       // op: Vd
    5334           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5335           4 :       Value |= (op & UINT64_C(16)) << 18;
    5336           4 :       Value |= (op & UINT64_C(15)) << 12;
    5337             :       // op: Rn
    5338           8 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5339           4 :       Value |= (op & UINT64_C(15)) << 16;
    5340             :       // op: Rm
    5341             :       op = getAddrMode6OffsetOpValue(MI, 6, Fixups, STI);
    5342           4 :       Value |= op & UINT64_C(15);
    5343             :       // op: lane
    5344           4 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5345           4 :       Value |= (op & UINT64_C(7)) << 5;
    5346           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5347           4 :       break;
    5348             :     }
    5349             :     case ARM::VLD3d16_UPD:
    5350             :     case ARM::VLD3d32_UPD:
    5351             :     case ARM::VLD3d8_UPD:
    5352             :     case ARM::VLD3q16_UPD:
    5353             :     case ARM::VLD3q32_UPD:
    5354             :     case ARM::VLD3q8_UPD: {
    5355             :       // op: Vd
    5356          42 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5357          42 :       Value |= (op & UINT64_C(16)) << 18;
    5358          42 :       Value |= (op & UINT64_C(15)) << 12;
    5359             :       // op: Rn
    5360          84 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5361          42 :       Value |= (op & UINT64_C(15)) << 16;
    5362          42 :       Value |= op & UINT64_C(16);
    5363             :       // op: Rm
    5364             :       op = getAddrMode6OffsetOpValue(MI, 6, Fixups, STI);
    5365          42 :       Value |= op & UINT64_C(15);
    5366          84 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5367          42 :       break;
    5368             :     }
    5369             :     case ARM::VLD4LNd16:
    5370             :     case ARM::VLD4LNq16: {
    5371             :       // op: Vd
    5372           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5373           8 :       Value |= (op & UINT64_C(16)) << 18;
    5374           8 :       Value |= (op & UINT64_C(15)) << 12;
    5375             :       // op: Rn
    5376          16 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5377           8 :       Value |= (op & UINT64_C(15)) << 16;
    5378           8 :       Value |= op & UINT64_C(16);
    5379             :       // op: lane
    5380           8 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5381           8 :       Value |= (op & UINT64_C(3)) << 6;
    5382          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5383           8 :       break;
    5384             :     }
    5385             :     case ARM::VLD4LNd8: {
    5386             :       // op: Vd
    5387           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5388           4 :       Value |= (op & UINT64_C(16)) << 18;
    5389           4 :       Value |= (op & UINT64_C(15)) << 12;
    5390             :       // op: Rn
    5391           8 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5392           4 :       Value |= (op & UINT64_C(15)) << 16;
    5393           4 :       Value |= op & UINT64_C(16);
    5394             :       // op: lane
    5395           4 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5396           4 :       Value |= (op & UINT64_C(7)) << 5;
    5397           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5398           4 :       break;
    5399             :     }
    5400             :     case ARM::VLD4LNd32:
    5401             :     case ARM::VLD4LNq32: {
    5402             :       // op: Vd
    5403          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5404          10 :       Value |= (op & UINT64_C(16)) << 18;
    5405          10 :       Value |= (op & UINT64_C(15)) << 12;
    5406             :       // op: Rn
    5407          20 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5408          10 :       Value |= (op & UINT64_C(15)) << 16;
    5409          10 :       Value |= op & UINT64_C(48);
    5410             :       // op: lane
    5411          10 :       op = getMachineOpValue(MI, MI.getOperand(10), Fixups, STI);
    5412          10 :       Value |= (op & UINT64_C(1)) << 7;
    5413          20 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5414          10 :       break;
    5415             :     }
    5416             :     case ARM::VLD4d16:
    5417             :     case ARM::VLD4d32:
    5418             :     case ARM::VLD4d8:
    5419             :     case ARM::VLD4q16:
    5420             :     case ARM::VLD4q32:
    5421             :     case ARM::VLD4q8: {
    5422             :       // op: Vd
    5423          33 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5424          33 :       Value |= (op & UINT64_C(16)) << 18;
    5425          33 :       Value |= (op & UINT64_C(15)) << 12;
    5426             :       // op: Rn
    5427          66 :       op = getAddrMode6AddressOpValue(MI, 4, Fixups, STI);
    5428          33 :       Value |= (op & UINT64_C(15)) << 16;
    5429          33 :       Value |= op & UINT64_C(48);
    5430          66 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5431          33 :       break;
    5432             :     }
    5433             :     case ARM::VLD4LNd16_UPD:
    5434             :     case ARM::VLD4LNq16_UPD: {
    5435             :       // op: Vd
    5436          13 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5437          13 :       Value |= (op & UINT64_C(16)) << 18;
    5438          13 :       Value |= (op & UINT64_C(15)) << 12;
    5439             :       // op: Rn
    5440          26 :       op = getAddrMode6AddressOpValue(MI, 5, Fixups, STI);
    5441          13 :       Value |= (op & UINT64_C(15)) << 16;
    5442          13 :       Value |= op & UINT64_C(16);
    5443             :       // op: Rm
    5444             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5445          13 :       Value |= op & UINT64_C(15);
    5446             :       // op: lane
    5447          13 :       op = getMachineOpValue(MI, MI.getOperand(12), Fixups, STI);
    5448          13 :       Value |= (op & UINT64_C(3)) << 6;
    5449          26 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5450          13 :       break;
    5451             :     }
    5452             :     case ARM::VLD4LNd8_UPD: {
    5453             :       // op: Vd
    5454           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5455           7 :       Value |= (op & UINT64_C(16)) << 18;
    5456           7 :       Value |= (op & UINT64_C(15)) << 12;
    5457             :       // op: Rn
    5458          14 :       op = getAddrMode6AddressOpValue(MI, 5, Fixups, STI);
    5459           7 :       Value |= (op & UINT64_C(15)) << 16;
    5460           7 :       Value |= op & UINT64_C(16);
    5461             :       // op: Rm
    5462             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5463           7 :       Value |= op & UINT64_C(15);
    5464             :       // op: lane
    5465           7 :       op = getMachineOpValue(MI, MI.getOperand(12), Fixups, STI);
    5466           7 :       Value |= (op & UINT64_C(7)) << 5;
    5467          14 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5468           7 :       break;
    5469             :     }
    5470             :     case ARM::VLD4LNd32_UPD:
    5471             :     case ARM::VLD4LNq32_UPD: {
    5472             :       // op: Vd
    5473          17 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5474          17 :       Value |= (op & UINT64_C(16)) << 18;
    5475          17 :       Value |= (op & UINT64_C(15)) << 12;
    5476             :       // op: Rn
    5477          34 :       op = getAddrMode6AddressOpValue(MI, 5, Fixups, STI);
    5478          17 :       Value |= (op & UINT64_C(15)) << 16;
    5479          17 :       Value |= op & UINT64_C(48);
    5480             :       // op: Rm
    5481             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5482          17 :       Value |= op & UINT64_C(15);
    5483             :       // op: lane
    5484          17 :       op = getMachineOpValue(MI, MI.getOperand(12), Fixups, STI);
    5485          17 :       Value |= (op & UINT64_C(1)) << 7;
    5486          34 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5487          17 :       break;
    5488             :     }
    5489             :     case ARM::VLD4d16_UPD:
    5490             :     case ARM::VLD4d32_UPD:
    5491             :     case ARM::VLD4d8_UPD:
    5492             :     case ARM::VLD4q16_UPD:
    5493             :     case ARM::VLD4q32_UPD:
    5494             :     case ARM::VLD4q8_UPD: {
    5495             :       // op: Vd
    5496          66 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5497          66 :       Value |= (op & UINT64_C(16)) << 18;
    5498          66 :       Value |= (op & UINT64_C(15)) << 12;
    5499             :       // op: Rn
    5500         132 :       op = getAddrMode6AddressOpValue(MI, 5, Fixups, STI);
    5501          66 :       Value |= (op & UINT64_C(15)) << 16;
    5502          66 :       Value |= op & UINT64_C(48);
    5503             :       // op: Rm
    5504             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5505          66 :       Value |= op & UINT64_C(15);
    5506         132 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5507          66 :       break;
    5508             :     }
    5509             :     case ARM::VLD1DUPd16:
    5510             :     case ARM::VLD1DUPd32:
    5511             :     case ARM::VLD1DUPd8:
    5512             :     case ARM::VLD1DUPq16:
    5513             :     case ARM::VLD1DUPq32:
    5514             :     case ARM::VLD1DUPq8:
    5515             :     case ARM::VLD2DUPd16:
    5516             :     case ARM::VLD2DUPd16x2:
    5517             :     case ARM::VLD2DUPd32:
    5518             :     case ARM::VLD2DUPd32x2:
    5519             :     case ARM::VLD2DUPd8:
    5520             :     case ARM::VLD2DUPd8x2: {
    5521             :       // op: Vd
    5522          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5523          26 :       Value |= (op & UINT64_C(16)) << 18;
    5524          26 :       Value |= (op & UINT64_C(15)) << 12;
    5525             :       // op: Rn
    5526          26 :       op = getAddrMode6DupAddressOpValue(MI, 1, Fixups, STI);
    5527          26 :       Value |= (op & UINT64_C(15)) << 16;
    5528          26 :       Value |= op & UINT64_C(16);
    5529          52 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5530          26 :       break;
    5531             :     }
    5532             :     case ARM::VLD1DUPd16wb_register:
    5533             :     case ARM::VLD1DUPd32wb_register:
    5534             :     case ARM::VLD1DUPd8wb_register:
    5535             :     case ARM::VLD1DUPq16wb_register:
    5536             :     case ARM::VLD1DUPq32wb_register:
    5537             :     case ARM::VLD1DUPq8wb_register:
    5538             :     case ARM::VLD2DUPd16wb_register:
    5539             :     case ARM::VLD2DUPd16x2wb_register:
    5540             :     case ARM::VLD2DUPd32wb_register:
    5541             :     case ARM::VLD2DUPd32x2wb_register:
    5542             :     case ARM::VLD2DUPd8wb_register:
    5543             :     case ARM::VLD2DUPd8x2wb_register: {
    5544             :       // op: Vd
    5545          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5546          26 :       Value |= (op & UINT64_C(16)) << 18;
    5547          26 :       Value |= (op & UINT64_C(15)) << 12;
    5548             :       // op: Rn
    5549          26 :       op = getAddrMode6DupAddressOpValue(MI, 2, Fixups, STI);
    5550          26 :       Value |= (op & UINT64_C(15)) << 16;
    5551          26 :       Value |= op & UINT64_C(16);
    5552             :       // op: Rm
    5553          26 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    5554          26 :       Value |= op & UINT64_C(15);
    5555          52 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5556          26 :       break;
    5557             :     }
    5558             :     case ARM::VLD1DUPd16wb_fixed:
    5559             :     case ARM::VLD1DUPd32wb_fixed:
    5560             :     case ARM::VLD1DUPd8wb_fixed:
    5561             :     case ARM::VLD1DUPq16wb_fixed:
    5562             :     case ARM::VLD1DUPq32wb_fixed:
    5563             :     case ARM::VLD1DUPq8wb_fixed:
    5564             :     case ARM::VLD2DUPd16wb_fixed:
    5565             :     case ARM::VLD2DUPd16x2wb_fixed:
    5566             :     case ARM::VLD2DUPd32wb_fixed:
    5567             :     case ARM::VLD2DUPd32x2wb_fixed:
    5568             :     case ARM::VLD2DUPd8wb_fixed:
    5569             :     case ARM::VLD2DUPd8x2wb_fixed: {
    5570             :       // op: Vd
    5571          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5572          26 :       Value |= (op & UINT64_C(16)) << 18;
    5573          26 :       Value |= (op & UINT64_C(15)) << 12;
    5574             :       // op: Rn
    5575          26 :       op = getAddrMode6DupAddressOpValue(MI, 2, Fixups, STI);
    5576          26 :       Value |= (op & UINT64_C(15)) << 16;
    5577          26 :       Value |= op & UINT64_C(16);
    5578          52 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5579          26 :       break;
    5580             :     }
    5581             :     case ARM::VLD3DUPd16:
    5582             :     case ARM::VLD3DUPd32:
    5583             :     case ARM::VLD3DUPd8:
    5584             :     case ARM::VLD3DUPq16:
    5585             :     case ARM::VLD3DUPq32:
    5586             :     case ARM::VLD3DUPq8: {
    5587             :       // op: Vd
    5588          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5589          12 :       Value |= (op & UINT64_C(16)) << 18;
    5590          12 :       Value |= (op & UINT64_C(15)) << 12;
    5591             :       // op: Rn
    5592          12 :       op = getAddrMode6DupAddressOpValue(MI, 3, Fixups, STI);
    5593          12 :       Value |= (op & UINT64_C(15)) << 16;
    5594          24 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5595          12 :       break;
    5596             :     }
    5597             :     case ARM::VLD3DUPd16_UPD:
    5598             :     case ARM::VLD3DUPd32_UPD:
    5599             :     case ARM::VLD3DUPd8_UPD:
    5600             :     case ARM::VLD3DUPq16_UPD:
    5601             :     case ARM::VLD3DUPq32_UPD:
    5602             :     case ARM::VLD3DUPq8_UPD: {
    5603             :       // op: Vd
    5604          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5605          24 :       Value |= (op & UINT64_C(16)) << 18;
    5606          24 :       Value |= (op & UINT64_C(15)) << 12;
    5607             :       // op: Rn
    5608          24 :       op = getAddrMode6DupAddressOpValue(MI, 4, Fixups, STI);
    5609          24 :       Value |= (op & UINT64_C(15)) << 16;
    5610             :       // op: Rm
    5611             :       op = getAddrMode6OffsetOpValue(MI, 6, Fixups, STI);
    5612          24 :       Value |= op & UINT64_C(15);
    5613          48 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5614          24 :       break;
    5615             :     }
    5616             :     case ARM::VLD4DUPd32:
    5617             :     case ARM::VLD4DUPq32: {
    5618             :       // op: Vd
    5619           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5620           8 :       Value |= (op & UINT64_C(16)) << 18;
    5621           8 :       Value |= (op & UINT64_C(15)) << 12;
    5622             :       // op: Rn
    5623           8 :       op = getAddrMode6DupAddressOpValue(MI, 4, Fixups, STI);
    5624           8 :       Value |= (op & UINT64_C(15)) << 16;
    5625           8 :       Value |= (op & UINT64_C(32)) << 1;
    5626           8 :       Value |= op & UINT64_C(16);
    5627          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5628           8 :       break;
    5629             :     }
    5630             :     case ARM::VLD4DUPd16:
    5631             :     case ARM::VLD4DUPd8:
    5632             :     case ARM::VLD4DUPq16:
    5633             :     case ARM::VLD4DUPq8: {
    5634             :       // op: Vd
    5635          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5636          12 :       Value |= (op & UINT64_C(16)) << 18;
    5637          12 :       Value |= (op & UINT64_C(15)) << 12;
    5638             :       // op: Rn
    5639          12 :       op = getAddrMode6DupAddressOpValue(MI, 4, Fixups, STI);
    5640          12 :       Value |= (op & UINT64_C(15)) << 16;
    5641          12 :       Value |= op & UINT64_C(16);
    5642          24 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5643          12 :       break;
    5644             :     }
    5645             :     case ARM::VLD4DUPd32_UPD:
    5646             :     case ARM::VLD4DUPq32_UPD: {
    5647             :       // op: Vd
    5648          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5649          16 :       Value |= (op & UINT64_C(16)) << 18;
    5650          16 :       Value |= (op & UINT64_C(15)) << 12;
    5651             :       // op: Rn
    5652          16 :       op = getAddrMode6DupAddressOpValue(MI, 5, Fixups, STI);
    5653          16 :       Value |= (op & UINT64_C(15)) << 16;
    5654          16 :       Value |= (op & UINT64_C(32)) << 1;
    5655          16 :       Value |= op & UINT64_C(16);
    5656             :       // op: Rm
    5657             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5658          16 :       Value |= op & UINT64_C(15);
    5659          32 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5660          16 :       break;
    5661             :     }
    5662             :     case ARM::VLD4DUPd16_UPD:
    5663             :     case ARM::VLD4DUPd8_UPD:
    5664             :     case ARM::VLD4DUPq16_UPD:
    5665             :     case ARM::VLD4DUPq8_UPD: {
    5666             :       // op: Vd
    5667          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5668          24 :       Value |= (op & UINT64_C(16)) << 18;
    5669          24 :       Value |= (op & UINT64_C(15)) << 12;
    5670             :       // op: Rn
    5671          24 :       op = getAddrMode6DupAddressOpValue(MI, 5, Fixups, STI);
    5672          24 :       Value |= (op & UINT64_C(15)) << 16;
    5673          24 :       Value |= op & UINT64_C(16);
    5674             :       // op: Rm
    5675             :       op = getAddrMode6OffsetOpValue(MI, 7, Fixups, STI);
    5676          24 :       Value |= op & UINT64_C(15);
    5677          48 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5678          24 :       break;
    5679             :     }
    5680             :     case ARM::VLD1LNd32: {
    5681             :       // op: Vd
    5682           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5683           6 :       Value |= (op & UINT64_C(16)) << 18;
    5684           6 :       Value |= (op & UINT64_C(15)) << 12;
    5685             :       // op: Rn
    5686          12 :       op = getAddrMode6OneLane32AddressOpValue(MI, 1, Fixups, STI);
    5687           6 :       Value |= (op & UINT64_C(15)) << 16;
    5688           6 :       Value |= op & UINT64_C(48);
    5689             :       // op: lane
    5690           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    5691           6 :       Value |= (op & UINT64_C(1)) << 7;
    5692          12 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    5693           6 :       break;
    5694             :     }
    5695             :     case ARM::VMOVv16i8:
    5696             :     case ARM::VMOVv1i64:
    5697             :     case ARM::VMOVv2f32:
    5698             :     case ARM::VMOVv2i64:
    5699             :     case ARM::VMOVv4f32:
    5700             :     case ARM::VMOVv8i8: {
    5701             :       // op: Vd
    5702          56 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5703          56 :       Value |= (op & UINT64_C(16)) << 18;
    5704          56 :       Value |= (op & UINT64_C(15)) << 12;
    5705             :       // op: SIMM
    5706          56 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5707          56 :       Value |= (op & UINT64_C(128)) << 17;
    5708          56 :       Value |= (op & UINT64_C(112)) << 12;
    5709          56 :       Value |= op & UINT64_C(15);
    5710         112 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5711          56 :       break;
    5712             :     }
    5713             :     case ARM::VBICiv2i32:
    5714             :     case ARM::VBICiv4i32:
    5715             :     case ARM::VORRiv2i32:
    5716             :     case ARM::VORRiv4i32: {
    5717             :       // op: Vd
    5718          19 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5719          19 :       Value |= (op & UINT64_C(16)) << 18;
    5720          19 :       Value |= (op & UINT64_C(15)) << 12;
    5721             :       // op: SIMM
    5722          19 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5723          19 :       Value |= (op & UINT64_C(128)) << 17;
    5724          19 :       Value |= (op & UINT64_C(112)) << 12;
    5725          19 :       Value |= op & UINT64_C(1536);
    5726          19 :       Value |= op & UINT64_C(15);
    5727          38 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5728          19 :       break;
    5729             :     }
    5730             :     case ARM::VMOVv2i32:
    5731             :     case ARM::VMOVv4i32:
    5732             :     case ARM::VMVNv2i32:
    5733             :     case ARM::VMVNv4i32: {
    5734             :       // op: Vd
    5735          58 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5736          58 :       Value |= (op & UINT64_C(16)) << 18;
    5737          58 :       Value |= (op & UINT64_C(15)) << 12;
    5738             :       // op: SIMM
    5739          58 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5740          58 :       Value |= (op & UINT64_C(128)) << 17;
    5741          58 :       Value |= (op & UINT64_C(112)) << 12;
    5742          58 :       Value |= op & UINT64_C(3840);
    5743          58 :       Value |= op & UINT64_C(15);
    5744         116 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5745          58 :       break;
    5746             :     }
    5747             :     case ARM::VBICiv4i16:
    5748             :     case ARM::VBICiv8i16:
    5749             :     case ARM::VMOVv4i16:
    5750             :     case ARM::VMOVv8i16:
    5751             :     case ARM::VMVNv4i16:
    5752             :     case ARM::VMVNv8i16:
    5753             :     case ARM::VORRiv4i16:
    5754             :     case ARM::VORRiv8i16: {
    5755             :       // op: Vd
    5756          36 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5757          36 :       Value |= (op & UINT64_C(16)) << 18;
    5758          36 :       Value |= (op & UINT64_C(15)) << 12;
    5759             :       // op: SIMM
    5760          36 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5761          36 :       Value |= (op & UINT64_C(128)) << 17;
    5762          36 :       Value |= (op & UINT64_C(112)) << 12;
    5763          36 :       Value |= op & UINT64_C(512);
    5764          36 :       Value |= op & UINT64_C(15);
    5765          72 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5766          36 :       break;
    5767             :     }
    5768             :     case ARM::VQSHLsiv4i16:
    5769             :     case ARM::VQSHLsiv8i16:
    5770             :     case ARM::VQSHLsuv4i16:
    5771             :     case ARM::VQSHLsuv8i16:
    5772             :     case ARM::VQSHLuiv4i16:
    5773             :     case ARM::VQSHLuiv8i16:
    5774             :     case ARM::VSHLLsv4i32:
    5775             :     case ARM::VSHLLuv4i32:
    5776             :     case ARM::VSHLiv4i16:
    5777             :     case ARM::VSHLiv8i16: {
    5778             :       // op: Vd
    5779          22 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5780          22 :       Value |= (op & UINT64_C(16)) << 18;
    5781          22 :       Value |= (op & UINT64_C(15)) << 12;
    5782             :       // op: Vm
    5783          22 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5784          22 :       Value |= (op & UINT64_C(16)) << 1;
    5785          22 :       Value |= op & UINT64_C(15);
    5786             :       // op: SIMM
    5787          22 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    5788          22 :       Value |= (op & UINT64_C(15)) << 16;
    5789          44 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5790          22 :       break;
    5791             :     }
    5792             :     case ARM::VQSHLsiv2i32:
    5793             :     case ARM::VQSHLsiv4i32:
    5794             :     case ARM::VQSHLsuv2i32:
    5795             :     case ARM::VQSHLsuv4i32:
    5796             :     case ARM::VQSHLuiv2i32:
    5797             :     case ARM::VQSHLuiv4i32:
    5798             :     case ARM::VSHLLsv2i64:
    5799             :     case ARM::VSHLLuv2i64:
    5800             :     case ARM::VSHLiv2i32:
    5801             :     case ARM::VSHLiv4i32: {
    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(31)) << 16;
    5813          44 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5814          22 :       break;
    5815             :     }
    5816             :     case ARM::VQSHLsiv1i64:
    5817             :     case ARM::VQSHLsiv2i64:
    5818             :     case ARM::VQSHLsuv1i64:
    5819             :     case ARM::VQSHLsuv2i64:
    5820             :     case ARM::VQSHLuiv1i64:
    5821             :     case ARM::VQSHLuiv2i64:
    5822             :     case ARM::VSHLiv1i64:
    5823             :     case ARM::VSHLiv2i64: {
    5824             :       // op: Vd
    5825          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5826          18 :       Value |= (op & UINT64_C(16)) << 18;
    5827          18 :       Value |= (op & UINT64_C(15)) << 12;
    5828             :       // op: Vm
    5829          18 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5830          18 :       Value |= (op & UINT64_C(16)) << 1;
    5831          18 :       Value |= op & UINT64_C(15);
    5832             :       // op: SIMM
    5833          18 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    5834          18 :       Value |= (op & UINT64_C(63)) << 16;
    5835          36 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5836          18 :       break;
    5837             :     }
    5838             :     case ARM::VQSHLsiv16i8:
    5839             :     case ARM::VQSHLsiv8i8:
    5840             :     case ARM::VQSHLsuv16i8:
    5841             :     case ARM::VQSHLsuv8i8:
    5842             :     case ARM::VQSHLuiv16i8:
    5843             :     case ARM::VQSHLuiv8i8:
    5844             :     case ARM::VSHLLsv8i16:
    5845             :     case ARM::VSHLLuv8i16:
    5846             :     case ARM::VSHLiv16i8:
    5847             :     case ARM::VSHLiv8i8: {
    5848             :       // op: Vd
    5849          22 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5850          22 :       Value |= (op & UINT64_C(16)) << 18;
    5851          22 :       Value |= (op & UINT64_C(15)) << 12;
    5852             :       // op: Vm
    5853          22 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5854          22 :       Value |= (op & UINT64_C(16)) << 1;
    5855          22 :       Value |= op & UINT64_C(15);
    5856             :       // op: SIMM
    5857          22 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    5858          22 :       Value |= (op & UINT64_C(7)) << 16;
    5859          44 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5860          22 :       break;
    5861             :     }
    5862             :     case ARM::VCVTf2xsd:
    5863             :     case ARM::VCVTf2xsq:
    5864             :     case ARM::VCVTf2xud:
    5865             :     case ARM::VCVTf2xuq:
    5866             :     case ARM::VCVTh2xsd:
    5867             :     case ARM::VCVTh2xsq:
    5868             :     case ARM::VCVTh2xud:
    5869             :     case ARM::VCVTh2xuq:
    5870             :     case ARM::VCVTxs2fd:
    5871             :     case ARM::VCVTxs2fq:
    5872             :     case ARM::VCVTxs2hd:
    5873             :     case ARM::VCVTxs2hq:
    5874             :     case ARM::VCVTxu2fd:
    5875             :     case ARM::VCVTxu2fq:
    5876             :     case ARM::VCVTxu2hd:
    5877             :     case ARM::VCVTxu2hq: {
    5878             :       // op: Vd
    5879          56 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5880          56 :       Value |= (op & UINT64_C(16)) << 18;
    5881          56 :       Value |= (op & UINT64_C(15)) << 12;
    5882             :       // op: Vm
    5883          56 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5884          56 :       Value |= (op & UINT64_C(16)) << 1;
    5885          56 :       Value |= op & UINT64_C(15);
    5886             :       // op: SIMM
    5887          56 :       op = getNEONVcvtImm32OpValue(MI, 2, Fixups, STI);
    5888          56 :       Value |= (op & UINT64_C(63)) << 16;
    5889         112 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5890          56 :       break;
    5891             :     }
    5892             :     case ARM::VQRSHRNsv4i16:
    5893             :     case ARM::VQRSHRNuv4i16:
    5894             :     case ARM::VQRSHRUNv4i16:
    5895             :     case ARM::VQSHRNsv4i16:
    5896             :     case ARM::VQSHRNuv4i16:
    5897             :     case ARM::VQSHRUNv4i16:
    5898             :     case ARM::VRSHRNv4i16:
    5899             :     case ARM::VRSHRsv4i16:
    5900             :     case ARM::VRSHRsv8i16:
    5901             :     case ARM::VRSHRuv4i16:
    5902             :     case ARM::VRSHRuv8i16:
    5903             :     case ARM::VSHRNv4i16:
    5904             :     case ARM::VSHRsv4i16:
    5905             :     case ARM::VSHRsv8i16:
    5906             :     case ARM::VSHRuv4i16:
    5907             :     case ARM::VSHRuv8i16: {
    5908             :       // op: Vd
    5909          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5910          46 :       Value |= (op & UINT64_C(16)) << 18;
    5911          46 :       Value |= (op & UINT64_C(15)) << 12;
    5912             :       // op: Vm
    5913          46 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5914          46 :       Value |= (op & UINT64_C(16)) << 1;
    5915          46 :       Value |= op & UINT64_C(15);
    5916             :       // op: SIMM
    5917          46 :       op = getShiftRight16Imm(MI, 2, Fixups, STI);
    5918          46 :       Value |= (op & UINT64_C(15)) << 16;
    5919          92 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5920          46 :       break;
    5921             :     }
    5922             :     case ARM::VQRSHRNsv2i32:
    5923             :     case ARM::VQRSHRNuv2i32:
    5924             :     case ARM::VQRSHRUNv2i32:
    5925             :     case ARM::VQSHRNsv2i32:
    5926             :     case ARM::VQSHRNuv2i32:
    5927             :     case ARM::VQSHRUNv2i32:
    5928             :     case ARM::VRSHRNv2i32:
    5929             :     case ARM::VRSHRsv2i32:
    5930             :     case ARM::VRSHRsv4i32:
    5931             :     case ARM::VRSHRuv2i32:
    5932             :     case ARM::VRSHRuv4i32:
    5933             :     case ARM::VSHRNv2i32:
    5934             :     case ARM::VSHRsv2i32:
    5935             :     case ARM::VSHRsv4i32:
    5936             :     case ARM::VSHRuv2i32:
    5937             :     case ARM::VSHRuv4i32: {
    5938             :       // op: Vd
    5939          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5940          46 :       Value |= (op & UINT64_C(16)) << 18;
    5941          46 :       Value |= (op & UINT64_C(15)) << 12;
    5942             :       // op: Vm
    5943          46 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5944          46 :       Value |= (op & UINT64_C(16)) << 1;
    5945          46 :       Value |= op & UINT64_C(15);
    5946             :       // op: SIMM
    5947          46 :       op = getShiftRight32Imm(MI, 2, Fixups, STI);
    5948          46 :       Value |= (op & UINT64_C(31)) << 16;
    5949          92 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5950          46 :       break;
    5951             :     }
    5952             :     case ARM::VRSHRsv1i64:
    5953             :     case ARM::VRSHRsv2i64:
    5954             :     case ARM::VRSHRuv1i64:
    5955             :     case ARM::VRSHRuv2i64:
    5956             :     case ARM::VSHRsv1i64:
    5957             :     case ARM::VSHRsv2i64:
    5958             :     case ARM::VSHRuv1i64:
    5959             :     case ARM::VSHRuv2i64: {
    5960             :       // op: Vd
    5961          28 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5962          28 :       Value |= (op & UINT64_C(16)) << 18;
    5963          28 :       Value |= (op & UINT64_C(15)) << 12;
    5964             :       // op: Vm
    5965          28 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5966          28 :       Value |= (op & UINT64_C(16)) << 1;
    5967          28 :       Value |= op & UINT64_C(15);
    5968             :       // op: SIMM
    5969          28 :       op = getShiftRight64Imm(MI, 2, Fixups, STI);
    5970          28 :       Value |= (op & UINT64_C(63)) << 16;
    5971          56 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    5972          28 :       break;
    5973             :     }
    5974             :     case ARM::VQRSHRNsv8i8:
    5975             :     case ARM::VQRSHRNuv8i8:
    5976             :     case ARM::VQRSHRUNv8i8:
    5977             :     case ARM::VQSHRNsv8i8:
    5978             :     case ARM::VQSHRNuv8i8:
    5979             :     case ARM::VQSHRUNv8i8:
    5980             :     case ARM::VRSHRNv8i8:
    5981             :     case ARM::VRSHRsv16i8:
    5982             :     case ARM::VRSHRsv8i8:
    5983             :     case ARM::VRSHRuv16i8:
    5984             :     case ARM::VRSHRuv8i8:
    5985             :     case ARM::VSHRNv8i8:
    5986             :     case ARM::VSHRsv16i8:
    5987             :     case ARM::VSHRsv8i8:
    5988             :     case ARM::VSHRuv16i8:
    5989             :     case ARM::VSHRuv8i8: {
    5990             :       // op: Vd
    5991          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    5992          46 :       Value |= (op & UINT64_C(16)) << 18;
    5993          46 :       Value |= (op & UINT64_C(15)) << 12;
    5994             :       // op: Vm
    5995          46 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    5996          46 :       Value |= (op & UINT64_C(16)) << 1;
    5997          46 :       Value |= op & UINT64_C(15);
    5998             :       // op: SIMM
    5999          46 :       op = getShiftRight8Imm(MI, 2, Fixups, STI);
    6000          46 :       Value |= (op & UINT64_C(7)) << 16;
    6001          92 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6002          46 :       break;
    6003             :     }
    6004             :     case ARM::VDUPLN32d:
    6005             :     case ARM::VDUPLN32q: {
    6006             :       // op: Vd
    6007           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6008           6 :       Value |= (op & UINT64_C(16)) << 18;
    6009           6 :       Value |= (op & UINT64_C(15)) << 12;
    6010             :       // op: Vm
    6011           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6012           6 :       Value |= (op & UINT64_C(16)) << 1;
    6013           6 :       Value |= op & UINT64_C(15);
    6014             :       // op: lane
    6015           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6016           6 :       Value |= (op & UINT64_C(1)) << 19;
    6017          12 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6018           6 :       break;
    6019             :     }
    6020             :     case ARM::VDUPLN16d:
    6021             :     case ARM::VDUPLN16q: {
    6022             :       // op: Vd
    6023           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6024           6 :       Value |= (op & UINT64_C(16)) << 18;
    6025           6 :       Value |= (op & UINT64_C(15)) << 12;
    6026             :       // op: Vm
    6027           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6028           6 :       Value |= (op & UINT64_C(16)) << 1;
    6029           6 :       Value |= op & UINT64_C(15);
    6030             :       // op: lane
    6031           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6032           6 :       Value |= (op & UINT64_C(3)) << 18;
    6033          12 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6034           6 :       break;
    6035             :     }
    6036             :     case ARM::VDUPLN8d:
    6037             :     case ARM::VDUPLN8q: {
    6038             :       // op: Vd
    6039           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6040           6 :       Value |= (op & UINT64_C(16)) << 18;
    6041           6 :       Value |= (op & UINT64_C(15)) << 12;
    6042             :       // op: Vm
    6043           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6044           6 :       Value |= (op & UINT64_C(16)) << 1;
    6045           6 :       Value |= op & UINT64_C(15);
    6046             :       // op: lane
    6047           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6048           6 :       Value |= (op & UINT64_C(7)) << 17;
    6049          12 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6050           6 :       break;
    6051             :     }
    6052             :     case ARM::AESIMC:
    6053             :     case ARM::AESMC:
    6054             :     case ARM::SHA1H:
    6055             :     case ARM::VABSfd:
    6056             :     case ARM::VABSfq:
    6057             :     case ARM::VABShd:
    6058             :     case ARM::VABShq:
    6059             :     case ARM::VABSv16i8:
    6060             :     case ARM::VABSv2i32:
    6061             :     case ARM::VABSv4i16:
    6062             :     case ARM::VABSv4i32:
    6063             :     case ARM::VABSv8i16:
    6064             :     case ARM::VABSv8i8:
    6065             :     case ARM::VCEQzv16i8:
    6066             :     case ARM::VCEQzv2f32:
    6067             :     case ARM::VCEQzv2i32:
    6068             :     case ARM::VCEQzv4f16:
    6069             :     case ARM::VCEQzv4f32:
    6070             :     case ARM::VCEQzv4i16:
    6071             :     case ARM::VCEQzv4i32:
    6072             :     case ARM::VCEQzv8f16:
    6073             :     case ARM::VCEQzv8i16:
    6074             :     case ARM::VCEQzv8i8:
    6075             :     case ARM::VCGEzv16i8:
    6076             :     case ARM::VCGEzv2f32:
    6077             :     case ARM::VCGEzv2i32:
    6078             :     case ARM::VCGEzv4f16:
    6079             :     case ARM::VCGEzv4f32:
    6080             :     case ARM::VCGEzv4i16:
    6081             :     case ARM::VCGEzv4i32:
    6082             :     case ARM::VCGEzv8f16:
    6083             :     case ARM::VCGEzv8i16:
    6084             :     case ARM::VCGEzv8i8:
    6085             :     case ARM::VCGTzv16i8:
    6086             :     case ARM::VCGTzv2f32:
    6087             :     case ARM::VCGTzv2i32:
    6088             :     case ARM::VCGTzv4f16:
    6089             :     case ARM::VCGTzv4f32:
    6090             :     case ARM::VCGTzv4i16:
    6091             :     case ARM::VCGTzv4i32:
    6092             :     case ARM::VCGTzv8f16:
    6093             :     case ARM::VCGTzv8i16:
    6094             :     case ARM::VCGTzv8i8:
    6095             :     case ARM::VCLEzv16i8:
    6096             :     case ARM::VCLEzv2f32:
    6097             :     case ARM::VCLEzv2i32:
    6098             :     case ARM::VCLEzv4f16:
    6099             :     case ARM::VCLEzv4f32:
    6100             :     case ARM::VCLEzv4i16:
    6101             :     case ARM::VCLEzv4i32:
    6102             :     case ARM::VCLEzv8f16:
    6103             :     case ARM::VCLEzv8i16:
    6104             :     case ARM::VCLEzv8i8:
    6105             :     case ARM::VCLSv16i8:
    6106             :     case ARM::VCLSv2i32:
    6107             :     case ARM::VCLSv4i16:
    6108             :     case ARM::VCLSv4i32:
    6109             :     case ARM::VCLSv8i16:
    6110             :     case ARM::VCLSv8i8:
    6111             :     case ARM::VCLTzv16i8:
    6112             :     case ARM::VCLTzv2f32:
    6113             :     case ARM::VCLTzv2i32:
    6114             :     case ARM::VCLTzv4f16:
    6115             :     case ARM::VCLTzv4f32:
    6116             :     case ARM::VCLTzv4i16:
    6117             :     case ARM::VCLTzv4i32:
    6118             :     case ARM::VCLTzv8f16:
    6119             :     case ARM::VCLTzv8i16:
    6120             :     case ARM::VCLTzv8i8:
    6121             :     case ARM::VCLZv16i8:
    6122             :     case ARM::VCLZv2i32:
    6123             :     case ARM::VCLZv4i16:
    6124             :     case ARM::VCLZv4i32:
    6125             :     case ARM::VCLZv8i16:
    6126             :     case ARM::VCLZv8i8:
    6127             :     case ARM::VCNTd:
    6128             :     case ARM::VCNTq:
    6129             :     case ARM::VCVTf2h:
    6130             :     case ARM::VCVTf2sd:
    6131             :     case ARM::VCVTf2sq:
    6132             :     case ARM::VCVTf2ud:
    6133             :     case ARM::VCVTf2uq:
    6134             :     case ARM::VCVTh2f:
    6135             :     case ARM::VCVTh2sd:
    6136             :     case ARM::VCVTh2sq:
    6137             :     case ARM::VCVTh2ud:
    6138             :     case ARM::VCVTh2uq:
    6139             :     case ARM::VCVTs2fd:
    6140             :     case ARM::VCVTs2fq:
    6141             :     case ARM::VCVTs2hd:
    6142             :     case ARM::VCVTs2hq:
    6143             :     case ARM::VCVTu2fd:
    6144             :     case ARM::VCVTu2fq:
    6145             :     case ARM::VCVTu2hd:
    6146             :     case ARM::VCVTu2hq:
    6147             :     case ARM::VMOVLsv2i64:
    6148             :     case ARM::VMOVLsv4i32:
    6149             :     case ARM::VMOVLsv8i16:
    6150             :     case ARM::VMOVLuv2i64:
    6151             :     case ARM::VMOVLuv4i32:
    6152             :     case ARM::VMOVLuv8i16:
    6153             :     case ARM::VMOVNv2i32:
    6154             :     case ARM::VMOVNv4i16:
    6155             :     case ARM::VMOVNv8i8:
    6156             :     case ARM::VMVNd:
    6157             :     case ARM::VMVNq:
    6158             :     case ARM::VNEGf32q:
    6159             :     case ARM::VNEGfd:
    6160             :     case ARM::VNEGhd:
    6161             :     case ARM::VNEGhq:
    6162             :     case ARM::VNEGs16d:
    6163             :     case ARM::VNEGs16q:
    6164             :     case ARM::VNEGs32d:
    6165             :     case ARM::VNEGs32q:
    6166             :     case ARM::VNEGs8d:
    6167             :     case ARM::VNEGs8q:
    6168             :     case ARM::VPADDLsv16i8:
    6169             :     case ARM::VPADDLsv2i32:
    6170             :     case ARM::VPADDLsv4i16:
    6171             :     case ARM::VPADDLsv4i32:
    6172             :     case ARM::VPADDLsv8i16:
    6173             :     case ARM::VPADDLsv8i8:
    6174             :     case ARM::VPADDLuv16i8:
    6175             :     case ARM::VPADDLuv2i32:
    6176             :     case ARM::VPADDLuv4i16:
    6177             :     case ARM::VPADDLuv4i32:
    6178             :     case ARM::VPADDLuv8i16:
    6179             :     case ARM::VPADDLuv8i8:
    6180             :     case ARM::VQABSv16i8:
    6181             :     case ARM::VQABSv2i32:
    6182             :     case ARM::VQABSv4i16:
    6183             :     case ARM::VQABSv4i32:
    6184             :     case ARM::VQABSv8i16:
    6185             :     case ARM::VQABSv8i8:
    6186             :     case ARM::VQMOVNsuv2i32:
    6187             :     case ARM::VQMOVNsuv4i16:
    6188             :     case ARM::VQMOVNsuv8i8:
    6189             :     case ARM::VQMOVNsv2i32:
    6190             :     case ARM::VQMOVNsv4i16:
    6191             :     case ARM::VQMOVNsv8i8:
    6192             :     case ARM::VQMOVNuv2i32:
    6193             :     case ARM::VQMOVNuv4i16:
    6194             :     case ARM::VQMOVNuv8i8:
    6195             :     case ARM::VQNEGv16i8:
    6196             :     case ARM::VQNEGv2i32:
    6197             :     case ARM::VQNEGv4i16:
    6198             :     case ARM::VQNEGv4i32:
    6199             :     case ARM::VQNEGv8i16:
    6200             :     case ARM::VQNEGv8i8:
    6201             :     case ARM::VRECPEd:
    6202             :     case ARM::VRECPEfd:
    6203             :     case ARM::VRECPEfq:
    6204             :     case ARM::VRECPEhd:
    6205             :     case ARM::VRECPEhq:
    6206             :     case ARM::VRECPEq:
    6207             :     case ARM::VREV16d8:
    6208             :     case ARM::VREV16q8:
    6209             :     case ARM::VREV32d16:
    6210             :     case ARM::VREV32d8:
    6211             :     case ARM::VREV32q16:
    6212             :     case ARM::VREV32q8:
    6213             :     case ARM::VREV64d16:
    6214             :     case ARM::VREV64d32:
    6215             :     case ARM::VREV64d8:
    6216             :     case ARM::VREV64q16:
    6217             :     case ARM::VREV64q32:
    6218             :     case ARM::VREV64q8:
    6219             :     case ARM::VRSQRTEd:
    6220             :     case ARM::VRSQRTEfd:
    6221             :     case ARM::VRSQRTEfq:
    6222             :     case ARM::VRSQRTEhd:
    6223             :     case ARM::VRSQRTEhq:
    6224             :     case ARM::VRSQRTEq:
    6225             :     case ARM::VSHLLi16:
    6226             :     case ARM::VSHLLi32:
    6227             :     case ARM::VSHLLi8:
    6228             :     case ARM::VSWPd:
    6229             :     case ARM::VSWPq:
    6230             :     case ARM::VTRNd16:
    6231             :     case ARM::VTRNd32:
    6232             :     case ARM::VTRNd8:
    6233             :     case ARM::VTRNq16:
    6234             :     case ARM::VTRNq32:
    6235             :     case ARM::VTRNq8:
    6236             :     case ARM::VUZPd16:
    6237             :     case ARM::VUZPd8:
    6238             :     case ARM::VUZPq16:
    6239             :     case ARM::VUZPq32:
    6240             :     case ARM::VUZPq8:
    6241             :     case ARM::VZIPd16:
    6242             :     case ARM::VZIPd8:
    6243             :     case ARM::VZIPq16:
    6244             :     case ARM::VZIPq32:
    6245             :     case ARM::VZIPq8: {
    6246             :       // op: Vd
    6247         454 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6248         454 :       Value |= (op & UINT64_C(16)) << 18;
    6249         454 :       Value |= (op & UINT64_C(15)) << 12;
    6250             :       // op: Vm
    6251         454 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6252         454 :       Value |= (op & UINT64_C(16)) << 1;
    6253         454 :       Value |= op & UINT64_C(15);
    6254         908 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6255         454 :       break;
    6256             :     }
    6257             :     case ARM::VCVTANSDf:
    6258             :     case ARM::VCVTANSDh:
    6259             :     case ARM::VCVTANSQf:
    6260             :     case ARM::VCVTANSQh:
    6261             :     case ARM::VCVTANUDf:
    6262             :     case ARM::VCVTANUDh:
    6263             :     case ARM::VCVTANUQf:
    6264             :     case ARM::VCVTANUQh:
    6265             :     case ARM::VCVTMNSDf:
    6266             :     case ARM::VCVTMNSDh:
    6267             :     case ARM::VCVTMNSQf:
    6268             :     case ARM::VCVTMNSQh:
    6269             :     case ARM::VCVTMNUDf:
    6270             :     case ARM::VCVTMNUDh:
    6271             :     case ARM::VCVTMNUQf:
    6272             :     case ARM::VCVTMNUQh:
    6273             :     case ARM::VCVTNNSDf:
    6274             :     case ARM::VCVTNNSDh:
    6275             :     case ARM::VCVTNNSQf:
    6276             :     case ARM::VCVTNNSQh:
    6277             :     case ARM::VCVTNNUDf:
    6278             :     case ARM::VCVTNNUDh:
    6279             :     case ARM::VCVTNNUQf:
    6280             :     case ARM::VCVTNNUQh:
    6281             :     case ARM::VCVTPNSDf:
    6282             :     case ARM::VCVTPNSDh:
    6283             :     case ARM::VCVTPNSQf:
    6284             :     case ARM::VCVTPNSQh:
    6285             :     case ARM::VCVTPNUDf:
    6286             :     case ARM::VCVTPNUDh:
    6287             :     case ARM::VCVTPNUQf:
    6288             :     case ARM::VCVTPNUQh:
    6289             :     case ARM::VRINTANDf:
    6290             :     case ARM::VRINTANDh:
    6291             :     case ARM::VRINTANQf:
    6292             :     case ARM::VRINTANQh:
    6293             :     case ARM::VRINTMNDf:
    6294             :     case ARM::VRINTMNDh:
    6295             :     case ARM::VRINTMNQf:
    6296             :     case ARM::VRINTMNQh:
    6297             :     case ARM::VRINTNNDf:
    6298             :     case ARM::VRINTNNDh:
    6299             :     case ARM::VRINTNNQf:
    6300             :     case ARM::VRINTNNQh:
    6301             :     case ARM::VRINTPNDf:
    6302             :     case ARM::VRINTPNDh:
    6303             :     case ARM::VRINTPNQf:
    6304             :     case ARM::VRINTPNQh:
    6305             :     case ARM::VRINTXNDf:
    6306             :     case ARM::VRINTXNDh:
    6307             :     case ARM::VRINTXNQf:
    6308             :     case ARM::VRINTXNQh:
    6309             :     case ARM::VRINTZNDf:
    6310             :     case ARM::VRINTZNDh:
    6311             :     case ARM::VRINTZNQf:
    6312             :     case ARM::VRINTZNQh: {
    6313             :       // op: Vd
    6314         178 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6315         178 :       Value |= (op & UINT64_C(16)) << 18;
    6316         178 :       Value |= (op & UINT64_C(15)) << 12;
    6317             :       // op: Vm
    6318         178 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6319         178 :       Value |= (op & UINT64_C(16)) << 1;
    6320         178 :       Value |= op & UINT64_C(15);
    6321         356 :       Value = NEONThumb2V8PostEncoder(MI, Value, STI);
    6322         178 :       break;
    6323             :     }
    6324             :     case ARM::VSLIv4i16:
    6325             :     case ARM::VSLIv8i16: {
    6326             :       // op: Vd
    6327          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6328          12 :       Value |= (op & UINT64_C(16)) << 18;
    6329          12 :       Value |= (op & UINT64_C(15)) << 12;
    6330             :       // op: Vm
    6331          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6332          12 :       Value |= (op & UINT64_C(16)) << 1;
    6333          12 :       Value |= op & UINT64_C(15);
    6334             :       // op: SIMM
    6335          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6336          12 :       Value |= (op & UINT64_C(15)) << 16;
    6337          24 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6338          12 :       break;
    6339             :     }
    6340             :     case ARM::VSLIv2i32:
    6341             :     case ARM::VSLIv4i32: {
    6342             :       // op: Vd
    6343          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6344          12 :       Value |= (op & UINT64_C(16)) << 18;
    6345          12 :       Value |= (op & UINT64_C(15)) << 12;
    6346             :       // op: Vm
    6347          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6348          12 :       Value |= (op & UINT64_C(16)) << 1;
    6349          12 :       Value |= op & UINT64_C(15);
    6350             :       // op: SIMM
    6351          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6352          12 :       Value |= (op & UINT64_C(31)) << 16;
    6353          24 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6354          12 :       break;
    6355             :     }
    6356             :     case ARM::VSLIv1i64:
    6357             :     case ARM::VSLIv2i64: {
    6358             :       // op: Vd
    6359          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6360          12 :       Value |= (op & UINT64_C(16)) << 18;
    6361          12 :       Value |= (op & UINT64_C(15)) << 12;
    6362             :       // op: Vm
    6363          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6364          12 :       Value |= (op & UINT64_C(16)) << 1;
    6365          12 :       Value |= op & UINT64_C(15);
    6366             :       // op: SIMM
    6367          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6368          12 :       Value |= (op & UINT64_C(63)) << 16;
    6369          24 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6370          12 :       break;
    6371             :     }
    6372             :     case ARM::VSLIv16i8:
    6373             :     case ARM::VSLIv8i8: {
    6374             :       // op: Vd
    6375          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6376          12 :       Value |= (op & UINT64_C(16)) << 18;
    6377          12 :       Value |= (op & UINT64_C(15)) << 12;
    6378             :       // op: Vm
    6379          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6380          12 :       Value |= (op & UINT64_C(16)) << 1;
    6381          12 :       Value |= op & UINT64_C(15);
    6382             :       // op: SIMM
    6383          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6384          12 :       Value |= (op & UINT64_C(7)) << 16;
    6385          24 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6386          12 :       break;
    6387             :     }
    6388             :     case ARM::VRSRAsv4i16:
    6389             :     case ARM::VRSRAsv8i16:
    6390             :     case ARM::VRSRAuv4i16:
    6391             :     case ARM::VRSRAuv8i16:
    6392             :     case ARM::VSRAsv4i16:
    6393             :     case ARM::VSRAsv8i16:
    6394             :     case ARM::VSRAuv4i16:
    6395             :     case ARM::VSRAuv8i16:
    6396             :     case ARM::VSRIv4i16:
    6397             :     case ARM::VSRIv8i16: {
    6398             :       // op: Vd
    6399          52 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6400          52 :       Value |= (op & UINT64_C(16)) << 18;
    6401          52 :       Value |= (op & UINT64_C(15)) << 12;
    6402             :       // op: Vm
    6403          52 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6404          52 :       Value |= (op & UINT64_C(16)) << 1;
    6405          52 :       Value |= op & UINT64_C(15);
    6406             :       // op: SIMM
    6407          52 :       op = getShiftRight16Imm(MI, 3, Fixups, STI);
    6408          52 :       Value |= (op & UINT64_C(15)) << 16;
    6409         104 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6410          52 :       break;
    6411             :     }
    6412             :     case ARM::VRSRAsv2i32:
    6413             :     case ARM::VRSRAsv4i32:
    6414             :     case ARM::VRSRAuv2i32:
    6415             :     case ARM::VRSRAuv4i32:
    6416             :     case ARM::VSRAsv2i32:
    6417             :     case ARM::VSRAsv4i32:
    6418             :     case ARM::VSRAuv2i32:
    6419             :     case ARM::VSRAuv4i32:
    6420             :     case ARM::VSRIv2i32:
    6421             :     case ARM::VSRIv4i32: {
    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 = getShiftRight32Imm(MI, 3, Fixups, STI);
    6432          52 :       Value |= (op & UINT64_C(31)) << 16;
    6433         104 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6434          52 :       break;
    6435             :     }
    6436             :     case ARM::VRSRAsv1i64:
    6437             :     case ARM::VRSRAsv2i64:
    6438             :     case ARM::VRSRAuv1i64:
    6439             :     case ARM::VRSRAuv2i64:
    6440             :     case ARM::VSRAsv1i64:
    6441             :     case ARM::VSRAsv2i64:
    6442             :     case ARM::VSRAuv1i64:
    6443             :     case ARM::VSRAuv2i64:
    6444             :     case ARM::VSRIv1i64:
    6445             :     case ARM::VSRIv2i64: {
    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 = getShiftRight64Imm(MI, 3, Fixups, STI);
    6456          52 :       Value |= (op & UINT64_C(63)) << 16;
    6457         104 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6458          52 :       break;
    6459             :     }
    6460             :     case ARM::VRSRAsv16i8:
    6461             :     case ARM::VRSRAsv8i8:
    6462             :     case ARM::VRSRAuv16i8:
    6463             :     case ARM::VRSRAuv8i8:
    6464             :     case ARM::VSRAsv16i8:
    6465             :     case ARM::VSRAsv8i8:
    6466             :     case ARM::VSRAuv16i8:
    6467             :     case ARM::VSRAuv8i8:
    6468             :     case ARM::VSRIv16i8:
    6469             :     case ARM::VSRIv8i8: {
    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 = getShiftRight8Imm(MI, 3, Fixups, STI);
    6480          52 :       Value |= (op & UINT64_C(7)) << 16;
    6481         104 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6482          52 :       break;
    6483             :     }
    6484             :     case ARM::AESD:
    6485             :     case ARM::AESE:
    6486             :     case ARM::SHA1SU1:
    6487             :     case ARM::SHA256SU0:
    6488             :     case ARM::VPADALsv16i8:
    6489             :     case ARM::VPADALsv2i32:
    6490             :     case ARM::VPADALsv4i16:
    6491             :     case ARM::VPADALsv4i32:
    6492             :     case ARM::VPADALsv8i16:
    6493             :     case ARM::VPADALsv8i8:
    6494             :     case ARM::VPADALuv16i8:
    6495             :     case ARM::VPADALuv2i32:
    6496             :     case ARM::VPADALuv4i16:
    6497             :     case ARM::VPADALuv4i32:
    6498             :     case ARM::VPADALuv8i16:
    6499             :     case ARM::VPADALuv8i8: {
    6500             :       // op: Vd
    6501          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6502          32 :       Value |= (op & UINT64_C(16)) << 18;
    6503          32 :       Value |= (op & UINT64_C(15)) << 12;
    6504             :       // op: Vm
    6505          32 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6506          32 :       Value |= (op & UINT64_C(16)) << 1;
    6507          32 :       Value |= op & UINT64_C(15);
    6508          64 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6509          32 :       break;
    6510             :     }
    6511             :     case ARM::VEXTd32: {
    6512             :       // op: Vd
    6513           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6514           0 :       Value |= (op & UINT64_C(16)) << 18;
    6515           0 :       Value |= (op & UINT64_C(15)) << 12;
    6516             :       // op: Vn
    6517           0 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6518           0 :       Value |= (op & UINT64_C(15)) << 16;
    6519           0 :       Value |= (op & UINT64_C(16)) << 3;
    6520             :       // op: Vm
    6521           0 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6522           0 :       Value |= (op & UINT64_C(16)) << 1;
    6523           0 :       Value |= op & UINT64_C(15);
    6524             :       // op: index
    6525           0 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6526           0 :       Value |= (op & UINT64_C(1)) << 10;
    6527           0 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6528           0 :       break;
    6529             :     }
    6530             :     case ARM::VEXTq64: {
    6531             :       // op: Vd
    6532           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6533           2 :       Value |= (op & UINT64_C(16)) << 18;
    6534           2 :       Value |= (op & UINT64_C(15)) << 12;
    6535             :       // op: Vn
    6536           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6537           2 :       Value |= (op & UINT64_C(15)) << 16;
    6538           2 :       Value |= (op & UINT64_C(16)) << 3;
    6539             :       // op: Vm
    6540           2 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6541           2 :       Value |= (op & UINT64_C(16)) << 1;
    6542           2 :       Value |= op & UINT64_C(15);
    6543             :       // op: index
    6544           2 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6545           2 :       Value |= (op & UINT64_C(1)) << 11;
    6546           4 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6547           2 :       break;
    6548             :     }
    6549             :     case ARM::VEXTq8: {
    6550             :       // op: Vd
    6551           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6552           8 :       Value |= (op & UINT64_C(16)) << 18;
    6553           8 :       Value |= (op & UINT64_C(15)) << 12;
    6554             :       // op: Vn
    6555           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6556           8 :       Value |= (op & UINT64_C(15)) << 16;
    6557           8 :       Value |= (op & UINT64_C(16)) << 3;
    6558             :       // op: Vm
    6559           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6560           8 :       Value |= (op & UINT64_C(16)) << 1;
    6561           8 :       Value |= op & UINT64_C(15);
    6562             :       // op: index
    6563           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6564           8 :       Value |= (op & UINT64_C(15)) << 8;
    6565          16 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6566           8 :       break;
    6567             :     }
    6568             :     case ARM::VEXTq32: {
    6569             :       // op: Vd
    6570           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6571           4 :       Value |= (op & UINT64_C(16)) << 18;
    6572           4 :       Value |= (op & UINT64_C(15)) << 12;
    6573             :       // op: Vn
    6574           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6575           4 :       Value |= (op & UINT64_C(15)) << 16;
    6576           4 :       Value |= (op & UINT64_C(16)) << 3;
    6577             :       // op: Vm
    6578           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6579           4 :       Value |= (op & UINT64_C(16)) << 1;
    6580           4 :       Value |= op & UINT64_C(15);
    6581             :       // op: index
    6582           4 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6583           4 :       Value |= (op & UINT64_C(3)) << 10;
    6584           8 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6585           4 :       break;
    6586             :     }
    6587             :     case ARM::VEXTd16: {
    6588             :       // op: Vd
    6589           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6590           4 :       Value |= (op & UINT64_C(16)) << 18;
    6591           4 :       Value |= (op & UINT64_C(15)) << 12;
    6592             :       // op: Vn
    6593           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6594           4 :       Value |= (op & UINT64_C(15)) << 16;
    6595           4 :       Value |= (op & UINT64_C(16)) << 3;
    6596             :       // op: Vm
    6597           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6598           4 :       Value |= (op & UINT64_C(16)) << 1;
    6599           4 :       Value |= op & UINT64_C(15);
    6600             :       // op: index
    6601           4 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6602           4 :       Value |= (op & UINT64_C(3)) << 9;
    6603           8 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6604           4 :       break;
    6605             :     }
    6606             :     case ARM::VEXTd8: {
    6607             :       // op: Vd
    6608           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6609           8 :       Value |= (op & UINT64_C(16)) << 18;
    6610           8 :       Value |= (op & UINT64_C(15)) << 12;
    6611             :       // op: Vn
    6612           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6613           8 :       Value |= (op & UINT64_C(15)) << 16;
    6614           8 :       Value |= (op & UINT64_C(16)) << 3;
    6615             :       // op: Vm
    6616           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6617           8 :       Value |= (op & UINT64_C(16)) << 1;
    6618           8 :       Value |= op & UINT64_C(15);
    6619             :       // op: index
    6620           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6621           8 :       Value |= (op & UINT64_C(7)) << 8;
    6622          16 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6623           8 :       break;
    6624             :     }
    6625             :     case ARM::VEXTq16: {
    6626             :       // op: Vd
    6627           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6628           0 :       Value |= (op & UINT64_C(16)) << 18;
    6629           0 :       Value |= (op & UINT64_C(15)) << 12;
    6630             :       // op: Vn
    6631           0 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6632           0 :       Value |= (op & UINT64_C(15)) << 16;
    6633           0 :       Value |= (op & UINT64_C(16)) << 3;
    6634             :       // op: Vm
    6635           0 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6636           0 :       Value |= (op & UINT64_C(16)) << 1;
    6637           0 :       Value |= op & UINT64_C(15);
    6638             :       // op: index
    6639           0 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6640           0 :       Value |= (op & UINT64_C(7)) << 9;
    6641           0 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6642           0 :       break;
    6643             :     }
    6644             :     case ARM::VCADDv2f32:
    6645             :     case ARM::VCADDv4f16:
    6646             :     case ARM::VCADDv4f32:
    6647             :     case ARM::VCADDv8f16: {
    6648             :       // op: Vd
    6649          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6650          16 :       Value |= (op & UINT64_C(16)) << 18;
    6651          16 :       Value |= (op & UINT64_C(15)) << 12;
    6652             :       // op: Vn
    6653          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6654          16 :       Value |= (op & UINT64_C(15)) << 16;
    6655          16 :       Value |= (op & UINT64_C(16)) << 3;
    6656             :       // op: Vm
    6657          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6658          16 :       Value |= (op & UINT64_C(16)) << 1;
    6659          16 :       Value |= op & UINT64_C(15);
    6660             :       // op: rot
    6661          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    6662          16 :       Value |= (op & UINT64_C(1)) << 24;
    6663          16 :       break;
    6664             :     }
    6665             :     case ARM::VABDLsv2i64:
    6666             :     case ARM::VABDLsv4i32:
    6667             :     case ARM::VABDLsv8i16:
    6668             :     case ARM::VABDLuv2i64:
    6669             :     case ARM::VABDLuv4i32:
    6670             :     case ARM::VABDLuv8i16:
    6671             :     case ARM::VABDfd:
    6672             :     case ARM::VABDfq:
    6673             :     case ARM::VABDhd:
    6674             :     case ARM::VABDhq:
    6675             :     case ARM::VABDsv16i8:
    6676             :     case ARM::VABDsv2i32:
    6677             :     case ARM::VABDsv4i16:
    6678             :     case ARM::VABDsv4i32:
    6679             :     case ARM::VABDsv8i16:
    6680             :     case ARM::VABDsv8i8:
    6681             :     case ARM::VABDuv16i8:
    6682             :     case ARM::VABDuv2i32:
    6683             :     case ARM::VABDuv4i16:
    6684             :     case ARM::VABDuv4i32:
    6685             :     case ARM::VABDuv8i16:
    6686             :     case ARM::VABDuv8i8:
    6687             :     case ARM::VACGEfd:
    6688             :     case ARM::VACGEfq:
    6689             :     case ARM::VACGEhd:
    6690             :     case ARM::VACGEhq:
    6691             :     case ARM::VACGTfd:
    6692             :     case ARM::VACGTfq:
    6693             :     case ARM::VACGThd:
    6694             :     case ARM::VACGThq:
    6695             :     case ARM::VADDHNv2i32:
    6696             :     case ARM::VADDHNv4i16:
    6697             :     case ARM::VADDHNv8i8:
    6698             :     case ARM::VADDLsv2i64:
    6699             :     case ARM::VADDLsv4i32:
    6700             :     case ARM::VADDLsv8i16:
    6701             :     case ARM::VADDLuv2i64:
    6702             :     case ARM::VADDLuv4i32:
    6703             :     case ARM::VADDLuv8i16:
    6704             :     case ARM::VADDWsv2i64:
    6705             :     case ARM::VADDWsv4i32:
    6706             :     case ARM::VADDWsv8i16:
    6707             :     case ARM::VADDWuv2i64:
    6708             :     case ARM::VADDWuv4i32:
    6709             :     case ARM::VADDWuv8i16:
    6710             :     case ARM::VADDfd:
    6711             :     case ARM::VADDfq:
    6712             :     case ARM::VADDhd:
    6713             :     case ARM::VADDhq:
    6714             :     case ARM::VADDv16i8:
    6715             :     case ARM::VADDv1i64:
    6716             :     case ARM::VADDv2i32:
    6717             :     case ARM::VADDv2i64:
    6718             :     case ARM::VADDv4i16:
    6719             :     case ARM::VADDv4i32:
    6720             :     case ARM::VADDv8i16:
    6721             :     case ARM::VADDv8i8:
    6722             :     case ARM::VANDd:
    6723             :     case ARM::VANDq:
    6724             :     case ARM::VBICd:
    6725             :     case ARM::VBICq:
    6726             :     case ARM::VCEQfd:
    6727             :     case ARM::VCEQfq:
    6728             :     case ARM::VCEQhd:
    6729             :     case ARM::VCEQhq:
    6730             :     case ARM::VCEQv16i8:
    6731             :     case ARM::VCEQv2i32:
    6732             :     case ARM::VCEQv4i16:
    6733             :     case ARM::VCEQv4i32:
    6734             :     case ARM::VCEQv8i16:
    6735             :     case ARM::VCEQv8i8:
    6736             :     case ARM::VCGEfd:
    6737             :     case ARM::VCGEfq:
    6738             :     case ARM::VCGEhd:
    6739             :     case ARM::VCGEhq:
    6740             :     case ARM::VCGEsv16i8:
    6741             :     case ARM::VCGEsv2i32:
    6742             :     case ARM::VCGEsv4i16:
    6743             :     case ARM::VCGEsv4i32:
    6744             :     case ARM::VCGEsv8i16:
    6745             :     case ARM::VCGEsv8i8:
    6746             :     case ARM::VCGEuv16i8:
    6747             :     case ARM::VCGEuv2i32:
    6748             :     case ARM::VCGEuv4i16:
    6749             :     case ARM::VCGEuv4i32:
    6750             :     case ARM::VCGEuv8i16:
    6751             :     case ARM::VCGEuv8i8:
    6752             :     case ARM::VCGTfd:
    6753             :     case ARM::VCGTfq:
    6754             :     case ARM::VCGThd:
    6755             :     case ARM::VCGThq:
    6756             :     case ARM::VCGTsv16i8:
    6757             :     case ARM::VCGTsv2i32:
    6758             :     case ARM::VCGTsv4i16:
    6759             :     case ARM::VCGTsv4i32:
    6760             :     case ARM::VCGTsv8i16:
    6761             :     case ARM::VCGTsv8i8:
    6762             :     case ARM::VCGTuv16i8:
    6763             :     case ARM::VCGTuv2i32:
    6764             :     case ARM::VCGTuv4i16:
    6765             :     case ARM::VCGTuv4i32:
    6766             :     case ARM::VCGTuv8i16:
    6767             :     case ARM::VCGTuv8i8:
    6768             :     case ARM::VEORd:
    6769             :     case ARM::VEORq:
    6770             :     case ARM::VHADDsv16i8:
    6771             :     case ARM::VHADDsv2i32:
    6772             :     case ARM::VHADDsv4i16:
    6773             :     case ARM::VHADDsv4i32:
    6774             :     case ARM::VHADDsv8i16:
    6775             :     case ARM::VHADDsv8i8:
    6776             :     case ARM::VHADDuv16i8:
    6777             :     case ARM::VHADDuv2i32:
    6778             :     case ARM::VHADDuv4i16:
    6779             :     case ARM::VHADDuv4i32:
    6780             :     case ARM::VHADDuv8i16:
    6781             :     case ARM::VHADDuv8i8:
    6782             :     case ARM::VHSUBsv16i8:
    6783             :     case ARM::VHSUBsv2i32:
    6784             :     case ARM::VHSUBsv4i16:
    6785             :     case ARM::VHSUBsv4i32:
    6786             :     case ARM::VHSUBsv8i16:
    6787             :     case ARM::VHSUBsv8i8:
    6788             :     case ARM::VHSUBuv16i8:
    6789             :     case ARM::VHSUBuv2i32:
    6790             :     case ARM::VHSUBuv4i16:
    6791             :     case ARM::VHSUBuv4i32:
    6792             :     case ARM::VHSUBuv8i16:
    6793             :     case ARM::VHSUBuv8i8:
    6794             :     case ARM::VMAXfd:
    6795             :     case ARM::VMAXfq:
    6796             :     case ARM::VMAXhd:
    6797             :     case ARM::VMAXhq:
    6798             :     case ARM::VMAXsv16i8:
    6799             :     case ARM::VMAXsv2i32:
    6800             :     case ARM::VMAXsv4i16:
    6801             :     case ARM::VMAXsv4i32:
    6802             :     case ARM::VMAXsv8i16:
    6803             :     case ARM::VMAXsv8i8:
    6804             :     case ARM::VMAXuv16i8:
    6805             :     case ARM::VMAXuv2i32:
    6806             :     case ARM::VMAXuv4i16:
    6807             :     case ARM::VMAXuv4i32:
    6808             :     case ARM::VMAXuv8i16:
    6809             :     case ARM::VMAXuv8i8:
    6810             :     case ARM::VMINfd:
    6811             :     case ARM::VMINfq:
    6812             :     case ARM::VMINhd:
    6813             :     case ARM::VMINhq:
    6814             :     case ARM::VMINsv16i8:
    6815             :     case ARM::VMINsv2i32:
    6816             :     case ARM::VMINsv4i16:
    6817             :     case ARM::VMINsv4i32:
    6818             :     case ARM::VMINsv8i16:
    6819             :     case ARM::VMINsv8i8:
    6820             :     case ARM::VMINuv16i8:
    6821             :     case ARM::VMINuv2i32:
    6822             :     case ARM::VMINuv4i16:
    6823             :     case ARM::VMINuv4i32:
    6824             :     case ARM::VMINuv8i16:
    6825             :     case ARM::VMINuv8i8:
    6826             :     case ARM::VMULLp64:
    6827             :     case ARM::VMULLp8:
    6828             :     case ARM::VMULLsv2i64:
    6829             :     case ARM::VMULLsv4i32:
    6830             :     case ARM::VMULLsv8i16:
    6831             :     case ARM::VMULLuv2i64:
    6832             :     case ARM::VMULLuv4i32:
    6833             :     case ARM::VMULLuv8i16:
    6834             :     case ARM::VMULfd:
    6835             :     case ARM::VMULfq:
    6836             :     case ARM::VMULhd:
    6837             :     case ARM::VMULhq:
    6838             :     case ARM::VMULpd:
    6839             :     case ARM::VMULpq:
    6840             :     case ARM::VMULv16i8:
    6841             :     case ARM::VMULv2i32:
    6842             :     case ARM::VMULv4i16:
    6843             :     case ARM::VMULv4i32:
    6844             :     case ARM::VMULv8i16:
    6845             :     case ARM::VMULv8i8:
    6846             :     case ARM::VORNd:
    6847             :     case ARM::VORNq:
    6848             :     case ARM::VORRd:
    6849             :     case ARM::VORRq:
    6850             :     case ARM::VPADDf:
    6851             :     case ARM::VPADDh:
    6852             :     case ARM::VPADDi16:
    6853             :     case ARM::VPADDi32:
    6854             :     case ARM::VPADDi8:
    6855             :     case ARM::VPMAXf:
    6856             :     case ARM::VPMAXh:
    6857             :     case ARM::VPMAXs16:
    6858             :     case ARM::VPMAXs32:
    6859             :     case ARM::VPMAXs8:
    6860             :     case ARM::VPMAXu16:
    6861             :     case ARM::VPMAXu32:
    6862             :     case ARM::VPMAXu8:
    6863             :     case ARM::VPMINf:
    6864             :     case ARM::VPMINh:
    6865             :     case ARM::VPMINs16:
    6866             :     case ARM::VPMINs32:
    6867             :     case ARM::VPMINs8:
    6868             :     case ARM::VPMINu16:
    6869             :     case ARM::VPMINu32:
    6870             :     case ARM::VPMINu8:
    6871             :     case ARM::VQADDsv16i8:
    6872             :     case ARM::VQADDsv1i64:
    6873             :     case ARM::VQADDsv2i32:
    6874             :     case ARM::VQADDsv2i64:
    6875             :     case ARM::VQADDsv4i16:
    6876             :     case ARM::VQADDsv4i32:
    6877             :     case ARM::VQADDsv8i16:
    6878             :     case ARM::VQADDsv8i8:
    6879             :     case ARM::VQADDuv16i8:
    6880             :     case ARM::VQADDuv1i64:
    6881             :     case ARM::VQADDuv2i32:
    6882             :     case ARM::VQADDuv2i64:
    6883             :     case ARM::VQADDuv4i16:
    6884             :     case ARM::VQADDuv4i32:
    6885             :     case ARM::VQADDuv8i16:
    6886             :     case ARM::VQADDuv8i8:
    6887             :     case ARM::VQDMULHv2i32:
    6888             :     case ARM::VQDMULHv4i16:
    6889             :     case ARM::VQDMULHv4i32:
    6890             :     case ARM::VQDMULHv8i16:
    6891             :     case ARM::VQDMULLv2i64:
    6892             :     case ARM::VQDMULLv4i32:
    6893             :     case ARM::VQRDMULHv2i32:
    6894             :     case ARM::VQRDMULHv4i16:
    6895             :     case ARM::VQRDMULHv4i32:
    6896             :     case ARM::VQRDMULHv8i16:
    6897             :     case ARM::VQSUBsv16i8:
    6898             :     case ARM::VQSUBsv1i64:
    6899             :     case ARM::VQSUBsv2i32:
    6900             :     case ARM::VQSUBsv2i64:
    6901             :     case ARM::VQSUBsv4i16:
    6902             :     case ARM::VQSUBsv4i32:
    6903             :     case ARM::VQSUBsv8i16:
    6904             :     case ARM::VQSUBsv8i8:
    6905             :     case ARM::VQSUBuv16i8:
    6906             :     case ARM::VQSUBuv1i64:
    6907             :     case ARM::VQSUBuv2i32:
    6908             :     case ARM::VQSUBuv2i64:
    6909             :     case ARM::VQSUBuv4i16:
    6910             :     case ARM::VQSUBuv4i32:
    6911             :     case ARM::VQSUBuv8i16:
    6912             :     case ARM::VQSUBuv8i8:
    6913             :     case ARM::VRADDHNv2i32:
    6914             :     case ARM::VRADDHNv4i16:
    6915             :     case ARM::VRADDHNv8i8:
    6916             :     case ARM::VRECPSfd:
    6917             :     case ARM::VRECPSfq:
    6918             :     case ARM::VRECPShd:
    6919             :     case ARM::VRECPShq:
    6920             :     case ARM::VRHADDsv16i8:
    6921             :     case ARM::VRHADDsv2i32:
    6922             :     case ARM::VRHADDsv4i16:
    6923             :     case ARM::VRHADDsv4i32:
    6924             :     case ARM::VRHADDsv8i16:
    6925             :     case ARM::VRHADDsv8i8:
    6926             :     case ARM::VRHADDuv16i8:
    6927             :     case ARM::VRHADDuv2i32:
    6928             :     case ARM::VRHADDuv4i16:
    6929             :     case ARM::VRHADDuv4i32:
    6930             :     case ARM::VRHADDuv8i16:
    6931             :     case ARM::VRHADDuv8i8:
    6932             :     case ARM::VRSQRTSfd:
    6933             :     case ARM::VRSQRTSfq:
    6934             :     case ARM::VRSQRTShd:
    6935             :     case ARM::VRSQRTShq:
    6936             :     case ARM::VRSUBHNv2i32:
    6937             :     case ARM::VRSUBHNv4i16:
    6938             :     case ARM::VRSUBHNv8i8:
    6939             :     case ARM::VSUBHNv2i32:
    6940             :     case ARM::VSUBHNv4i16:
    6941             :     case ARM::VSUBHNv8i8:
    6942             :     case ARM::VSUBLsv2i64:
    6943             :     case ARM::VSUBLsv4i32:
    6944             :     case ARM::VSUBLsv8i16:
    6945             :     case ARM::VSUBLuv2i64:
    6946             :     case ARM::VSUBLuv4i32:
    6947             :     case ARM::VSUBLuv8i16:
    6948             :     case ARM::VSUBWsv2i64:
    6949             :     case ARM::VSUBWsv4i32:
    6950             :     case ARM::VSUBWsv8i16:
    6951             :     case ARM::VSUBWuv2i64:
    6952             :     case ARM::VSUBWuv4i32:
    6953             :     case ARM::VSUBWuv8i16:
    6954             :     case ARM::VSUBfd:
    6955             :     case ARM::VSUBfq:
    6956             :     case ARM::VSUBhd:
    6957             :     case ARM::VSUBhq:
    6958             :     case ARM::VSUBv16i8:
    6959             :     case ARM::VSUBv1i64:
    6960             :     case ARM::VSUBv2i32:
    6961             :     case ARM::VSUBv2i64:
    6962             :     case ARM::VSUBv4i16:
    6963             :     case ARM::VSUBv4i32:
    6964             :     case ARM::VSUBv8i16:
    6965             :     case ARM::VSUBv8i8:
    6966             :     case ARM::VTBL1:
    6967             :     case ARM::VTBL2:
    6968             :     case ARM::VTBL3:
    6969             :     case ARM::VTBL4:
    6970             :     case ARM::VTSTv16i8:
    6971             :     case ARM::VTSTv2i32:
    6972             :     case ARM::VTSTv4i16:
    6973             :     case ARM::VTSTv4i32:
    6974             :     case ARM::VTSTv8i16:
    6975             :     case ARM::VTSTv8i8: {
    6976             :       // op: Vd
    6977         969 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    6978         969 :       Value |= (op & UINT64_C(16)) << 18;
    6979         969 :       Value |= (op & UINT64_C(15)) << 12;
    6980             :       // op: Vn
    6981         969 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    6982         969 :       Value |= (op & UINT64_C(15)) << 16;
    6983         969 :       Value |= (op & UINT64_C(16)) << 3;
    6984             :       // op: Vm
    6985         969 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    6986         969 :       Value |= (op & UINT64_C(16)) << 1;
    6987         969 :       Value |= op & UINT64_C(15);
    6988        1938 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    6989         969 :       break;
    6990             :     }
    6991             :     case ARM::VMAXNMNDf:
    6992             :     case ARM::VMAXNMNDh:
    6993             :     case ARM::VMAXNMNQf:
    6994             :     case ARM::VMAXNMNQh:
    6995             :     case ARM::VMINNMNDf:
    6996             :     case ARM::VMINNMNDh:
    6997             :     case ARM::VMINNMNQf:
    6998             :     case ARM::VMINNMNQh: {
    6999             :       // op: Vd
    7000          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7001          24 :       Value |= (op & UINT64_C(16)) << 18;
    7002          24 :       Value |= (op & UINT64_C(15)) << 12;
    7003             :       // op: Vn
    7004          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7005          24 :       Value |= (op & UINT64_C(15)) << 16;
    7006          24 :       Value |= (op & UINT64_C(16)) << 3;
    7007             :       // op: Vm
    7008          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7009          24 :       Value |= (op & UINT64_C(16)) << 1;
    7010          24 :       Value |= op & UINT64_C(15);
    7011          48 :       Value = NEONThumb2V8PostEncoder(MI, Value, STI);
    7012          24 :       break;
    7013             :     }
    7014             :     case ARM::VMULLslsv2i32:
    7015             :     case ARM::VMULLsluv2i32:
    7016             :     case ARM::VMULslfd:
    7017             :     case ARM::VMULslfq:
    7018             :     case ARM::VMULslv2i32:
    7019             :     case ARM::VMULslv4i32:
    7020             :     case ARM::VQDMULHslv2i32:
    7021             :     case ARM::VQDMULHslv4i32:
    7022             :     case ARM::VQDMULLslv2i32:
    7023             :     case ARM::VQRDMULHslv2i32:
    7024             :     case ARM::VQRDMULHslv4i32: {
    7025             :       // op: Vd
    7026          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7027          16 :       Value |= (op & UINT64_C(16)) << 18;
    7028          16 :       Value |= (op & UINT64_C(15)) << 12;
    7029             :       // op: Vn
    7030          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7031          16 :       Value |= (op & UINT64_C(15)) << 16;
    7032          16 :       Value |= (op & UINT64_C(16)) << 3;
    7033             :       // op: Vm
    7034          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7035          16 :       Value |= op & UINT64_C(15);
    7036             :       // op: lane
    7037          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7038          16 :       Value |= (op & UINT64_C(1)) << 5;
    7039          32 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7040          16 :       break;
    7041             :     }
    7042             :     case ARM::VMULLslsv4i16:
    7043             :     case ARM::VMULLsluv4i16:
    7044             :     case ARM::VMULslhd:
    7045             :     case ARM::VMULslhq:
    7046             :     case ARM::VMULslv4i16:
    7047             :     case ARM::VMULslv8i16:
    7048             :     case ARM::VQDMULHslv4i16:
    7049             :     case ARM::VQDMULHslv8i16:
    7050             :     case ARM::VQDMULLslv4i16:
    7051             :     case ARM::VQRDMULHslv4i16:
    7052             :     case ARM::VQRDMULHslv8i16: {
    7053             :       // op: Vd
    7054          25 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7055          25 :       Value |= (op & UINT64_C(16)) << 18;
    7056          25 :       Value |= (op & UINT64_C(15)) << 12;
    7057             :       // op: Vn
    7058          25 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7059          25 :       Value |= (op & UINT64_C(15)) << 16;
    7060          25 :       Value |= (op & UINT64_C(16)) << 3;
    7061             :       // op: Vm
    7062          25 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7063          25 :       Value |= op & UINT64_C(7);
    7064             :       // op: lane
    7065          25 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7066          25 :       Value |= (op & UINT64_C(2)) << 4;
    7067          25 :       Value |= (op & UINT64_C(1)) << 3;
    7068          50 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7069          25 :       break;
    7070             :     }
    7071             :     case ARM::VQRSHLsv16i8:
    7072             :     case ARM::VQRSHLsv1i64:
    7073             :     case ARM::VQRSHLsv2i32:
    7074             :     case ARM::VQRSHLsv2i64:
    7075             :     case ARM::VQRSHLsv4i16:
    7076             :     case ARM::VQRSHLsv4i32:
    7077             :     case ARM::VQRSHLsv8i16:
    7078             :     case ARM::VQRSHLsv8i8:
    7079             :     case ARM::VQRSHLuv16i8:
    7080             :     case ARM::VQRSHLuv1i64:
    7081             :     case ARM::VQRSHLuv2i32:
    7082             :     case ARM::VQRSHLuv2i64:
    7083             :     case ARM::VQRSHLuv4i16:
    7084             :     case ARM::VQRSHLuv4i32:
    7085             :     case ARM::VQRSHLuv8i16:
    7086             :     case ARM::VQRSHLuv8i8:
    7087             :     case ARM::VQSHLsv16i8:
    7088             :     case ARM::VQSHLsv1i64:
    7089             :     case ARM::VQSHLsv2i32:
    7090             :     case ARM::VQSHLsv2i64:
    7091             :     case ARM::VQSHLsv4i16:
    7092             :     case ARM::VQSHLsv4i32:
    7093             :     case ARM::VQSHLsv8i16:
    7094             :     case ARM::VQSHLsv8i8:
    7095             :     case ARM::VQSHLuv16i8:
    7096             :     case ARM::VQSHLuv1i64:
    7097             :     case ARM::VQSHLuv2i32:
    7098             :     case ARM::VQSHLuv2i64:
    7099             :     case ARM::VQSHLuv4i16:
    7100             :     case ARM::VQSHLuv4i32:
    7101             :     case ARM::VQSHLuv8i16:
    7102             :     case ARM::VQSHLuv8i8:
    7103             :     case ARM::VRSHLsv16i8:
    7104             :     case ARM::VRSHLsv1i64:
    7105             :     case ARM::VRSHLsv2i32:
    7106             :     case ARM::VRSHLsv2i64:
    7107             :     case ARM::VRSHLsv4i16:
    7108             :     case ARM::VRSHLsv4i32:
    7109             :     case ARM::VRSHLsv8i16:
    7110             :     case ARM::VRSHLsv8i8:
    7111             :     case ARM::VRSHLuv16i8:
    7112             :     case ARM::VRSHLuv1i64:
    7113             :     case ARM::VRSHLuv2i32:
    7114             :     case ARM::VRSHLuv2i64:
    7115             :     case ARM::VRSHLuv4i16:
    7116             :     case ARM::VRSHLuv4i32:
    7117             :     case ARM::VRSHLuv8i16:
    7118             :     case ARM::VRSHLuv8i8:
    7119             :     case ARM::VSHLsv16i8:
    7120             :     case ARM::VSHLsv1i64:
    7121             :     case ARM::VSHLsv2i32:
    7122             :     case ARM::VSHLsv2i64:
    7123             :     case ARM::VSHLsv4i16:
    7124             :     case ARM::VSHLsv4i32:
    7125             :     case ARM::VSHLsv8i16:
    7126             :     case ARM::VSHLsv8i8:
    7127             :     case ARM::VSHLuv16i8:
    7128             :     case ARM::VSHLuv1i64:
    7129             :     case ARM::VSHLuv2i32:
    7130             :     case ARM::VSHLuv2i64:
    7131             :     case ARM::VSHLuv4i16:
    7132             :     case ARM::VSHLuv4i32:
    7133             :     case ARM::VSHLuv8i16:
    7134             :     case ARM::VSHLuv8i8: {
    7135             :       // op: Vd
    7136         144 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7137         144 :       Value |= (op & UINT64_C(16)) << 18;
    7138         144 :       Value |= (op & UINT64_C(15)) << 12;
    7139             :       // op: Vn
    7140         144 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7141         144 :       Value |= (op & UINT64_C(15)) << 16;
    7142         144 :       Value |= (op & UINT64_C(16)) << 3;
    7143             :       // op: Vm
    7144         144 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7145         144 :       Value |= (op & UINT64_C(16)) << 1;
    7146         144 :       Value |= op & UINT64_C(15);
    7147         288 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7148         144 :       break;
    7149             :     }
    7150             :     case ARM::VCMLAv2f32:
    7151             :     case ARM::VCMLAv4f16:
    7152             :     case ARM::VCMLAv4f32:
    7153             :     case ARM::VCMLAv8f16: {
    7154             :       // op: Vd
    7155          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7156          24 :       Value |= (op & UINT64_C(16)) << 18;
    7157          24 :       Value |= (op & UINT64_C(15)) << 12;
    7158             :       // op: Vn
    7159          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7160          24 :       Value |= (op & UINT64_C(15)) << 16;
    7161          24 :       Value |= (op & UINT64_C(16)) << 3;
    7162             :       // op: Vm
    7163          24 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7164          24 :       Value |= (op & UINT64_C(16)) << 1;
    7165          24 :       Value |= op & UINT64_C(15);
    7166             :       // op: rot
    7167          24 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7168          24 :       Value |= (op & UINT64_C(3)) << 23;
    7169          24 :       break;
    7170             :     }
    7171             :     case ARM::VCMLAv2f32_indexed:
    7172             :     case ARM::VCMLAv4f32_indexed: {
    7173             :       // op: Vd
    7174          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7175          20 :       Value |= (op & UINT64_C(16)) << 18;
    7176          20 :       Value |= (op & UINT64_C(15)) << 12;
    7177             :       // op: Vn
    7178          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7179          20 :       Value |= (op & UINT64_C(15)) << 16;
    7180          20 :       Value |= (op & UINT64_C(16)) << 3;
    7181             :       // op: Vm
    7182          20 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7183          20 :       Value |= (op & UINT64_C(16)) << 1;
    7184          20 :       Value |= op & UINT64_C(15);
    7185             :       // op: rot
    7186          20 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7187          20 :       Value |= (op & UINT64_C(3)) << 20;
    7188          20 :       break;
    7189             :     }
    7190             :     case ARM::SHA1C:
    7191             :     case ARM::SHA1M:
    7192             :     case ARM::SHA1P:
    7193             :     case ARM::SHA1SU0:
    7194             :     case ARM::SHA256H:
    7195             :     case ARM::SHA256H2:
    7196             :     case ARM::SHA256SU1:
    7197             :     case ARM::VABALsv2i64:
    7198             :     case ARM::VABALsv4i32:
    7199             :     case ARM::VABALsv8i16:
    7200             :     case ARM::VABALuv2i64:
    7201             :     case ARM::VABALuv4i32:
    7202             :     case ARM::VABALuv8i16:
    7203             :     case ARM::VABAsv16i8:
    7204             :     case ARM::VABAsv2i32:
    7205             :     case ARM::VABAsv4i16:
    7206             :     case ARM::VABAsv4i32:
    7207             :     case ARM::VABAsv8i16:
    7208             :     case ARM::VABAsv8i8:
    7209             :     case ARM::VABAuv16i8:
    7210             :     case ARM::VABAuv2i32:
    7211             :     case ARM::VABAuv4i16:
    7212             :     case ARM::VABAuv4i32:
    7213             :     case ARM::VABAuv8i16:
    7214             :     case ARM::VABAuv8i8:
    7215             :     case ARM::VBIFd:
    7216             :     case ARM::VBIFq:
    7217             :     case ARM::VBITd:
    7218             :     case ARM::VBITq:
    7219             :     case ARM::VBSLd:
    7220             :     case ARM::VBSLq:
    7221             :     case ARM::VFMAfd:
    7222             :     case ARM::VFMAfq:
    7223             :     case ARM::VFMAhd:
    7224             :     case ARM::VFMAhq:
    7225             :     case ARM::VFMSfd:
    7226             :     case ARM::VFMSfq:
    7227             :     case ARM::VFMShd:
    7228             :     case ARM::VFMShq:
    7229             :     case ARM::VMLALsv2i64:
    7230             :     case ARM::VMLALsv4i32:
    7231             :     case ARM::VMLALsv8i16:
    7232             :     case ARM::VMLALuv2i64:
    7233             :     case ARM::VMLALuv4i32:
    7234             :     case ARM::VMLALuv8i16:
    7235             :     case ARM::VMLAfd:
    7236             :     case ARM::VMLAfq:
    7237             :     case ARM::VMLAhd:
    7238             :     case ARM::VMLAhq:
    7239             :     case ARM::VMLAv16i8:
    7240             :     case ARM::VMLAv2i32:
    7241             :     case ARM::VMLAv4i16:
    7242             :     case ARM::VMLAv4i32:
    7243             :     case ARM::VMLAv8i16:
    7244             :     case ARM::VMLAv8i8:
    7245             :     case ARM::VMLSLsv2i64:
    7246             :     case ARM::VMLSLsv4i32:
    7247             :     case ARM::VMLSLsv8i16:
    7248             :     case ARM::VMLSLuv2i64:
    7249             :     case ARM::VMLSLuv4i32:
    7250             :     case ARM::VMLSLuv8i16:
    7251             :     case ARM::VMLSfd:
    7252             :     case ARM::VMLSfq:
    7253             :     case ARM::VMLShd:
    7254             :     case ARM::VMLShq:
    7255             :     case ARM::VMLSv16i8:
    7256             :     case ARM::VMLSv2i32:
    7257             :     case ARM::VMLSv4i16:
    7258             :     case ARM::VMLSv4i32:
    7259             :     case ARM::VMLSv8i16:
    7260             :     case ARM::VMLSv8i8:
    7261             :     case ARM::VQDMLALv2i64:
    7262             :     case ARM::VQDMLALv4i32:
    7263             :     case ARM::VQDMLSLv2i64:
    7264             :     case ARM::VQDMLSLv4i32:
    7265             :     case ARM::VQRDMLAHv2i32:
    7266             :     case ARM::VQRDMLAHv4i16:
    7267             :     case ARM::VQRDMLAHv4i32:
    7268             :     case ARM::VQRDMLAHv8i16:
    7269             :     case ARM::VQRDMLSHv2i32:
    7270             :     case ARM::VQRDMLSHv4i16:
    7271             :     case ARM::VQRDMLSHv4i32:
    7272             :     case ARM::VQRDMLSHv8i16:
    7273             :     case ARM::VTBX1:
    7274             :     case ARM::VTBX2:
    7275             :     case ARM::VTBX3:
    7276             :     case ARM::VTBX4: {
    7277             :       // op: Vd
    7278         185 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7279         185 :       Value |= (op & UINT64_C(16)) << 18;
    7280         185 :       Value |= (op & UINT64_C(15)) << 12;
    7281             :       // op: Vn
    7282         185 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7283         185 :       Value |= (op & UINT64_C(15)) << 16;
    7284         185 :       Value |= (op & UINT64_C(16)) << 3;
    7285             :       // op: Vm
    7286         185 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7287         185 :       Value |= (op & UINT64_C(16)) << 1;
    7288         185 :       Value |= op & UINT64_C(15);
    7289         370 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7290         185 :       break;
    7291             :     }
    7292             :     case ARM::VMLALslsv2i32:
    7293             :     case ARM::VMLALsluv2i32:
    7294             :     case ARM::VMLAslfd:
    7295             :     case ARM::VMLAslfq:
    7296             :     case ARM::VMLAslv2i32:
    7297             :     case ARM::VMLAslv4i32:
    7298             :     case ARM::VMLSLslsv2i32:
    7299             :     case ARM::VMLSLsluv2i32:
    7300             :     case ARM::VMLSslfd:
    7301             :     case ARM::VMLSslfq:
    7302             :     case ARM::VMLSslv2i32:
    7303             :     case ARM::VMLSslv4i32:
    7304             :     case ARM::VQDMLALslv2i32:
    7305             :     case ARM::VQDMLSLslv2i32:
    7306             :     case ARM::VQRDMLAHslv2i32:
    7307             :     case ARM::VQRDMLAHslv4i32:
    7308             :     case ARM::VQRDMLSHslv2i32:
    7309             :     case ARM::VQRDMLSHslv4i32: {
    7310             :       // op: Vd
    7311          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7312          11 :       Value |= (op & UINT64_C(16)) << 18;
    7313          11 :       Value |= (op & UINT64_C(15)) << 12;
    7314             :       // op: Vn
    7315          11 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7316          11 :       Value |= (op & UINT64_C(15)) << 16;
    7317          11 :       Value |= (op & UINT64_C(16)) << 3;
    7318             :       // op: Vm
    7319          11 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7320          11 :       Value |= op & UINT64_C(15);
    7321             :       // op: lane
    7322          11 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7323          11 :       Value |= (op & UINT64_C(1)) << 5;
    7324          22 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7325          11 :       break;
    7326             :     }
    7327             :     case ARM::VCMLAv4f16_indexed:
    7328             :     case ARM::VCMLAv8f16_indexed: {
    7329             :       // op: Vd
    7330           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7331           6 :       Value |= (op & UINT64_C(16)) << 18;
    7332           6 :       Value |= (op & UINT64_C(15)) << 12;
    7333             :       // op: Vn
    7334           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7335           6 :       Value |= (op & UINT64_C(15)) << 16;
    7336           6 :       Value |= (op & UINT64_C(16)) << 3;
    7337             :       // op: Vm
    7338           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7339           6 :       Value |= op & UINT64_C(15);
    7340             :       // op: rot
    7341           6 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7342           6 :       Value |= (op & UINT64_C(3)) << 20;
    7343             :       // op: lane
    7344           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7345           6 :       Value |= (op & UINT64_C(1)) << 5;
    7346           6 :       break;
    7347             :     }
    7348             :     case ARM::VMLALslsv4i16:
    7349             :     case ARM::VMLALsluv4i16:
    7350             :     case ARM::VMLAslhd:
    7351             :     case ARM::VMLAslhq:
    7352             :     case ARM::VMLAslv4i16:
    7353             :     case ARM::VMLAslv8i16:
    7354             :     case ARM::VMLSLslsv4i16:
    7355             :     case ARM::VMLSLsluv4i16:
    7356             :     case ARM::VMLSslhd:
    7357             :     case ARM::VMLSslhq:
    7358             :     case ARM::VMLSslv4i16:
    7359             :     case ARM::VMLSslv8i16:
    7360             :     case ARM::VQDMLALslv4i16:
    7361             :     case ARM::VQDMLSLslv4i16:
    7362             :     case ARM::VQRDMLAHslv4i16:
    7363             :     case ARM::VQRDMLAHslv8i16:
    7364             :     case ARM::VQRDMLSHslv4i16:
    7365             :     case ARM::VQRDMLSHslv8i16: {
    7366             :       // op: Vd
    7367          35 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    7368          35 :       Value |= (op & UINT64_C(16)) << 18;
    7369          35 :       Value |= (op & UINT64_C(15)) << 12;
    7370             :       // op: Vn
    7371          35 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7372          35 :       Value |= (op & UINT64_C(15)) << 16;
    7373          35 :       Value |= (op & UINT64_C(16)) << 3;
    7374             :       // op: Vm
    7375          35 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7376          35 :       Value |= op & UINT64_C(7);
    7377             :       // op: lane
    7378          35 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7379          35 :       Value |= (op & UINT64_C(2)) << 4;
    7380          35 :       Value |= (op & UINT64_C(1)) << 3;
    7381          70 :       Value = NEONThumb2DataIPostEncoder(MI, Value, STI);
    7382          35 :       break;
    7383             :     }
    7384             :     case ARM::VSDOTD:
    7385             :     case ARM::VSDOTQ:
    7386             :     case ARM::VUDOTD:
    7387             :     case ARM::VUDOTQ: {
    7388             :       // op: Vd
    7389          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7390          24 :       Value |= (op & UINT64_C(16)) << 18;
    7391          24 :       Value |= (op & UINT64_C(15)) << 12;
    7392             :       // op: Vn
    7393          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7394          24 :       Value |= (op & UINT64_C(15)) << 16;
    7395          24 :       Value |= (op & UINT64_C(16)) << 3;
    7396             :       // op: Vm
    7397          24 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7398          24 :       Value |= (op & UINT64_C(16)) << 1;
    7399          24 :       Value |= op & UINT64_C(15);
    7400          24 :       break;
    7401             :     }
    7402             :     case ARM::VSDOTDI:
    7403             :     case ARM::VSDOTQI:
    7404             :     case ARM::VUDOTDI:
    7405             :     case ARM::VUDOTQI: {
    7406             :       // op: Vd
    7407          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    7408          24 :       Value |= (op & UINT64_C(16)) << 18;
    7409          24 :       Value |= (op & UINT64_C(15)) << 12;
    7410             :       // op: Vn
    7411          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7412          24 :       Value |= (op & UINT64_C(15)) << 16;
    7413          24 :       Value |= (op & UINT64_C(16)) << 3;
    7414             :       // op: Vm
    7415          24 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7416          24 :       Value |= op & UINT64_C(15);
    7417             :       // op: lane
    7418          24 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7419          24 :       Value |= (op & UINT64_C(1)) << 5;
    7420          24 :       break;
    7421             :     }
    7422             :     case ARM::VST1LNd8: {
    7423             :       // op: Vd
    7424           2 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7425           2 :       Value |= (op & UINT64_C(16)) << 18;
    7426           2 :       Value |= (op & UINT64_C(15)) << 12;
    7427             :       // op: Rn
    7428           4 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7429           2 :       Value |= (op & UINT64_C(15)) << 16;
    7430             :       // op: lane
    7431           2 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7432           2 :       Value |= (op & UINT64_C(7)) << 5;
    7433           4 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7434           2 :       break;
    7435             :     }
    7436             :     case ARM::VST3LNd32:
    7437             :     case ARM::VST3LNq32: {
    7438             :       // op: Vd
    7439           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7440           6 :       Value |= (op & UINT64_C(16)) << 18;
    7441           6 :       Value |= (op & UINT64_C(15)) << 12;
    7442             :       // op: Rn
    7443          12 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7444           6 :       Value |= (op & UINT64_C(15)) << 16;
    7445             :       // op: lane
    7446           6 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7447           6 :       Value |= (op & UINT64_C(1)) << 7;
    7448          12 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7449           6 :       break;
    7450             :     }
    7451             :     case ARM::VST3LNd16:
    7452             :     case ARM::VST3LNq16: {
    7453             :       // op: Vd
    7454           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7455           6 :       Value |= (op & UINT64_C(16)) << 18;
    7456           6 :       Value |= (op & UINT64_C(15)) << 12;
    7457             :       // op: Rn
    7458          12 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7459           6 :       Value |= (op & UINT64_C(15)) << 16;
    7460             :       // op: lane
    7461           6 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7462           6 :       Value |= (op & UINT64_C(3)) << 6;
    7463          12 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7464           6 :       break;
    7465             :     }
    7466             :     case ARM::VST3LNd8: {
    7467             :       // op: Vd
    7468           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7469           3 :       Value |= (op & UINT64_C(16)) << 18;
    7470           3 :       Value |= (op & UINT64_C(15)) << 12;
    7471             :       // op: Rn
    7472           6 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7473           3 :       Value |= (op & UINT64_C(15)) << 16;
    7474             :       // op: lane
    7475           3 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7476           3 :       Value |= (op & UINT64_C(7)) << 5;
    7477           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7478           3 :       break;
    7479             :     }
    7480             :     case ARM::VST1LNd16: {
    7481             :       // op: Vd
    7482           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7483           3 :       Value |= (op & UINT64_C(16)) << 18;
    7484           3 :       Value |= (op & UINT64_C(15)) << 12;
    7485             :       // op: Rn
    7486           6 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7487           3 :       Value |= (op & UINT64_C(15)) << 16;
    7488           3 :       Value |= op & UINT64_C(16);
    7489             :       // op: lane
    7490           3 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7491           3 :       Value |= (op & UINT64_C(3)) << 6;
    7492           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7493           3 :       break;
    7494             :     }
    7495             :     case ARM::VST2LNd32:
    7496             :     case ARM::VST2LNq32: {
    7497             :       // op: Vd
    7498           9 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7499           9 :       Value |= (op & UINT64_C(16)) << 18;
    7500           9 :       Value |= (op & UINT64_C(15)) << 12;
    7501             :       // op: Rn
    7502          18 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7503           9 :       Value |= (op & UINT64_C(15)) << 16;
    7504           9 :       Value |= op & UINT64_C(16);
    7505             :       // op: lane
    7506           9 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7507           9 :       Value |= (op & UINT64_C(1)) << 7;
    7508          18 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7509           9 :       break;
    7510             :     }
    7511             :     case ARM::VST2LNd16:
    7512             :     case ARM::VST2LNq16: {
    7513             :       // op: Vd
    7514           5 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7515           5 :       Value |= (op & UINT64_C(16)) << 18;
    7516           5 :       Value |= (op & UINT64_C(15)) << 12;
    7517             :       // op: Rn
    7518          10 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7519           5 :       Value |= (op & UINT64_C(15)) << 16;
    7520           5 :       Value |= op & UINT64_C(16);
    7521             :       // op: lane
    7522           5 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7523           5 :       Value |= (op & UINT64_C(3)) << 6;
    7524          10 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7525           5 :       break;
    7526             :     }
    7527             :     case ARM::VST2LNd8: {
    7528             :       // op: Vd
    7529           5 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7530           5 :       Value |= (op & UINT64_C(16)) << 18;
    7531           5 :       Value |= (op & UINT64_C(15)) << 12;
    7532             :       // op: Rn
    7533          10 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7534           5 :       Value |= (op & UINT64_C(15)) << 16;
    7535           5 :       Value |= op & UINT64_C(16);
    7536             :       // op: lane
    7537           5 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7538           5 :       Value |= (op & UINT64_C(7)) << 5;
    7539          10 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7540           5 :       break;
    7541             :     }
    7542             :     case ARM::VST4LNd16:
    7543             :     case ARM::VST4LNq16: {
    7544             :       // op: Vd
    7545           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7546           8 :       Value |= (op & UINT64_C(16)) << 18;
    7547           8 :       Value |= (op & UINT64_C(15)) << 12;
    7548             :       // op: Rn
    7549          16 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7550           8 :       Value |= (op & UINT64_C(15)) << 16;
    7551           8 :       Value |= op & UINT64_C(16);
    7552             :       // op: lane
    7553           8 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7554           8 :       Value |= (op & UINT64_C(3)) << 6;
    7555          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7556           8 :       break;
    7557             :     }
    7558             :     case ARM::VST4LNd8: {
    7559             :       // op: Vd
    7560           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7561           4 :       Value |= (op & UINT64_C(16)) << 18;
    7562           4 :       Value |= (op & UINT64_C(15)) << 12;
    7563             :       // op: Rn
    7564           8 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7565           4 :       Value |= (op & UINT64_C(15)) << 16;
    7566           4 :       Value |= op & UINT64_C(16);
    7567             :       // op: lane
    7568           4 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7569           4 :       Value |= (op & UINT64_C(7)) << 5;
    7570           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7571           4 :       break;
    7572             :     }
    7573             :     case ARM::VST1d16:
    7574             :     case ARM::VST1d16T:
    7575             :     case ARM::VST1d32:
    7576             :     case ARM::VST1d32T:
    7577             :     case ARM::VST1d64:
    7578             :     case ARM::VST1d64T:
    7579             :     case ARM::VST1d8:
    7580             :     case ARM::VST1d8T:
    7581             :     case ARM::VST3d16:
    7582             :     case ARM::VST3d32:
    7583             :     case ARM::VST3d8:
    7584             :     case ARM::VST3q16:
    7585             :     case ARM::VST3q32:
    7586             :     case ARM::VST3q8: {
    7587             :       // op: Vd
    7588          49 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7589          49 :       Value |= (op & UINT64_C(16)) << 18;
    7590          49 :       Value |= (op & UINT64_C(15)) << 12;
    7591             :       // op: Rn
    7592          98 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7593          49 :       Value |= (op & UINT64_C(15)) << 16;
    7594          49 :       Value |= op & UINT64_C(16);
    7595          98 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7596          49 :       break;
    7597             :     }
    7598             :     case ARM::VST4LNd32:
    7599             :     case ARM::VST4LNq32: {
    7600             :       // op: Vd
    7601          13 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7602          13 :       Value |= (op & UINT64_C(16)) << 18;
    7603          13 :       Value |= (op & UINT64_C(15)) << 12;
    7604             :       // op: Rn
    7605          26 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7606          13 :       Value |= (op & UINT64_C(15)) << 16;
    7607          13 :       Value |= op & UINT64_C(48);
    7608             :       // op: lane
    7609          13 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7610          13 :       Value |= (op & UINT64_C(1)) << 7;
    7611          26 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7612          13 :       break;
    7613             :     }
    7614             :     case ARM::VST1d16Q:
    7615             :     case ARM::VST1d32Q:
    7616             :     case ARM::VST1d64Q:
    7617             :     case ARM::VST1d8Q:
    7618             :     case ARM::VST1q16:
    7619             :     case ARM::VST1q32:
    7620             :     case ARM::VST1q64:
    7621             :     case ARM::VST1q8:
    7622             :     case ARM::VST2b16:
    7623             :     case ARM::VST2b32:
    7624             :     case ARM::VST2b8:
    7625             :     case ARM::VST2d16:
    7626             :     case ARM::VST2d32:
    7627             :     case ARM::VST2d8:
    7628             :     case ARM::VST2q16:
    7629             :     case ARM::VST2q32:
    7630             :     case ARM::VST2q8:
    7631             :     case ARM::VST4d16:
    7632             :     case ARM::VST4d32:
    7633             :     case ARM::VST4d8:
    7634             :     case ARM::VST4q16:
    7635             :     case ARM::VST4q32:
    7636             :     case ARM::VST4q8: {
    7637             :       // op: Vd
    7638         113 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7639         113 :       Value |= (op & UINT64_C(16)) << 18;
    7640         113 :       Value |= (op & UINT64_C(15)) << 12;
    7641             :       // op: Rn
    7642         226 :       op = getAddrMode6AddressOpValue(MI, 0, Fixups, STI);
    7643         113 :       Value |= (op & UINT64_C(15)) << 16;
    7644         113 :       Value |= op & UINT64_C(48);
    7645         226 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7646         113 :       break;
    7647             :     }
    7648             :     case ARM::VST1LNd32: {
    7649             :       // op: Vd
    7650           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    7651           3 :       Value |= (op & UINT64_C(16)) << 18;
    7652           3 :       Value |= (op & UINT64_C(15)) << 12;
    7653             :       // op: Rn
    7654           6 :       op = getAddrMode6OneLane32AddressOpValue(MI, 0, Fixups, STI);
    7655           3 :       Value |= (op & UINT64_C(15)) << 16;
    7656           3 :       Value |= op & UINT64_C(48);
    7657             :       // op: lane
    7658           3 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7659           3 :       Value |= (op & UINT64_C(1)) << 7;
    7660           6 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7661           3 :       break;
    7662             :     }
    7663             :     case ARM::VST1d16wb_fixed:
    7664             :     case ARM::VST1d32wb_fixed:
    7665             :     case ARM::VST1d64wb_fixed:
    7666             :     case ARM::VST1d8wb_fixed: {
    7667             :       // op: Vd
    7668          56 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7669          56 :       Value |= (op & UINT64_C(16)) << 18;
    7670          56 :       Value |= (op & UINT64_C(15)) << 12;
    7671             :       // op: Rn
    7672         112 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7673          56 :       Value |= (op & UINT64_C(15)) << 16;
    7674          56 :       Value |= op & UINT64_C(16);
    7675         112 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7676          56 :       break;
    7677             :     }
    7678             :     case ARM::VST1d16Qwb_fixed:
    7679             :     case ARM::VST1d16Twb_fixed:
    7680             :     case ARM::VST1d32Qwb_fixed:
    7681             :     case ARM::VST1d32Twb_fixed:
    7682             :     case ARM::VST1d64Qwb_fixed:
    7683             :     case ARM::VST1d64Twb_fixed:
    7684             :     case ARM::VST1d8Qwb_fixed:
    7685             :     case ARM::VST1d8Twb_fixed:
    7686             :     case ARM::VST1q16wb_fixed:
    7687             :     case ARM::VST1q32wb_fixed:
    7688             :     case ARM::VST1q64wb_fixed:
    7689             :     case ARM::VST1q8wb_fixed:
    7690             :     case ARM::VST2b16wb_fixed:
    7691             :     case ARM::VST2b32wb_fixed:
    7692             :     case ARM::VST2b8wb_fixed:
    7693             :     case ARM::VST2d16wb_fixed:
    7694             :     case ARM::VST2d32wb_fixed:
    7695             :     case ARM::VST2d8wb_fixed:
    7696             :     case ARM::VST2q16wb_fixed:
    7697             :     case ARM::VST2q32wb_fixed:
    7698             :     case ARM::VST2q8wb_fixed: {
    7699             :       // op: Vd
    7700          92 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7701          92 :       Value |= (op & UINT64_C(16)) << 18;
    7702          92 :       Value |= (op & UINT64_C(15)) << 12;
    7703             :       // op: Rn
    7704         184 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7705          92 :       Value |= (op & UINT64_C(15)) << 16;
    7706          92 :       Value |= op & UINT64_C(48);
    7707         184 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7708          92 :       break;
    7709             :     }
    7710             :     case ARM::VST1LNd8_UPD: {
    7711             :       // op: Vd
    7712          11 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7713          11 :       Value |= (op & UINT64_C(16)) << 18;
    7714          11 :       Value |= (op & UINT64_C(15)) << 12;
    7715             :       // op: Rn
    7716          22 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7717          11 :       Value |= (op & UINT64_C(15)) << 16;
    7718             :       // op: Rm
    7719             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7720          11 :       Value |= op & UINT64_C(15);
    7721             :       // op: lane
    7722          11 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7723          11 :       Value |= (op & UINT64_C(7)) << 5;
    7724          22 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7725          11 :       break;
    7726             :     }
    7727             :     case ARM::VST3LNd32_UPD:
    7728             :     case ARM::VST3LNq32_UPD: {
    7729             :       // op: Vd
    7730           8 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7731           8 :       Value |= (op & UINT64_C(16)) << 18;
    7732           8 :       Value |= (op & UINT64_C(15)) << 12;
    7733             :       // op: Rn
    7734          16 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7735           8 :       Value |= (op & UINT64_C(15)) << 16;
    7736             :       // op: Rm
    7737             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7738           8 :       Value |= op & UINT64_C(15);
    7739             :       // op: lane
    7740           8 :       op = getMachineOpValue(MI, MI.getOperand(7), Fixups, STI);
    7741           8 :       Value |= (op & UINT64_C(1)) << 7;
    7742          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7743           8 :       break;
    7744             :     }
    7745             :     case ARM::VST3LNd16_UPD:
    7746             :     case ARM::VST3LNq16_UPD: {
    7747             :       // op: Vd
    7748           8 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7749           8 :       Value |= (op & UINT64_C(16)) << 18;
    7750           8 :       Value |= (op & UINT64_C(15)) << 12;
    7751             :       // op: Rn
    7752          16 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7753           8 :       Value |= (op & UINT64_C(15)) << 16;
    7754             :       // op: Rm
    7755             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7756           8 :       Value |= op & UINT64_C(15);
    7757             :       // op: lane
    7758           8 :       op = getMachineOpValue(MI, MI.getOperand(7), Fixups, STI);
    7759           8 :       Value |= (op & UINT64_C(3)) << 6;
    7760          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7761           8 :       break;
    7762             :     }
    7763             :     case ARM::VST3LNd8_UPD: {
    7764             :       // op: Vd
    7765           4 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7766           4 :       Value |= (op & UINT64_C(16)) << 18;
    7767           4 :       Value |= (op & UINT64_C(15)) << 12;
    7768             :       // op: Rn
    7769           8 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7770           4 :       Value |= (op & UINT64_C(15)) << 16;
    7771             :       // op: Rm
    7772             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7773           4 :       Value |= op & UINT64_C(15);
    7774             :       // op: lane
    7775           4 :       op = getMachineOpValue(MI, MI.getOperand(7), Fixups, STI);
    7776           4 :       Value |= (op & UINT64_C(7)) << 5;
    7777           8 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7778           4 :       break;
    7779             :     }
    7780             :     case ARM::VST1LNd16_UPD: {
    7781             :       // op: Vd
    7782          17 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7783          17 :       Value |= (op & UINT64_C(16)) << 18;
    7784          17 :       Value |= (op & UINT64_C(15)) << 12;
    7785             :       // op: Rn
    7786          34 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7787          17 :       Value |= (op & UINT64_C(15)) << 16;
    7788          17 :       Value |= op & UINT64_C(16);
    7789             :       // op: Rm
    7790             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7791          17 :       Value |= op & UINT64_C(15);
    7792             :       // op: lane
    7793          17 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    7794          17 :       Value |= (op & UINT64_C(3)) << 6;
    7795          34 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7796          17 :       break;
    7797             :     }
    7798             :     case ARM::VST2LNd32_UPD:
    7799             :     case ARM::VST2LNq32_UPD: {
    7800             :       // op: Vd
    7801          10 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7802          10 :       Value |= (op & UINT64_C(16)) << 18;
    7803          10 :       Value |= (op & UINT64_C(15)) << 12;
    7804             :       // op: Rn
    7805          20 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7806          10 :       Value |= (op & UINT64_C(15)) << 16;
    7807          10 :       Value |= op & UINT64_C(16);
    7808             :       // op: Rm
    7809             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7810          10 :       Value |= op & UINT64_C(15);
    7811             :       // op: lane
    7812          10 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7813          10 :       Value |= (op & UINT64_C(1)) << 7;
    7814          20 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7815          10 :       break;
    7816             :     }
    7817             :     case ARM::VST2LNd16_UPD:
    7818             :     case ARM::VST2LNq16_UPD: {
    7819             :       // op: Vd
    7820           2 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7821           2 :       Value |= (op & UINT64_C(16)) << 18;
    7822           2 :       Value |= (op & UINT64_C(15)) << 12;
    7823             :       // op: Rn
    7824           4 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7825           2 :       Value |= (op & UINT64_C(15)) << 16;
    7826           2 :       Value |= op & UINT64_C(16);
    7827             :       // op: Rm
    7828             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7829           2 :       Value |= op & UINT64_C(15);
    7830             :       // op: lane
    7831           2 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7832           2 :       Value |= (op & UINT64_C(3)) << 6;
    7833           4 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7834           2 :       break;
    7835             :     }
    7836             :     case ARM::VST2LNd8_UPD: {
    7837             :       // op: Vd
    7838           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7839           6 :       Value |= (op & UINT64_C(16)) << 18;
    7840           6 :       Value |= (op & UINT64_C(15)) << 12;
    7841             :       // op: Rn
    7842          12 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7843           6 :       Value |= (op & UINT64_C(15)) << 16;
    7844           6 :       Value |= op & UINT64_C(16);
    7845             :       // op: Rm
    7846             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7847           6 :       Value |= op & UINT64_C(15);
    7848             :       // op: lane
    7849           6 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
    7850           6 :       Value |= (op & UINT64_C(7)) << 5;
    7851          12 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7852           6 :       break;
    7853             :     }
    7854             :     case ARM::VST4LNd16_UPD:
    7855             :     case ARM::VST4LNq16_UPD: {
    7856             :       // op: Vd
    7857          13 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7858          13 :       Value |= (op & UINT64_C(16)) << 18;
    7859          13 :       Value |= (op & UINT64_C(15)) << 12;
    7860             :       // op: Rn
    7861          26 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7862          13 :       Value |= (op & UINT64_C(15)) << 16;
    7863          13 :       Value |= op & UINT64_C(16);
    7864             :       // op: Rm
    7865             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7866          13 :       Value |= op & UINT64_C(15);
    7867             :       // op: lane
    7868          13 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    7869          13 :       Value |= (op & UINT64_C(3)) << 6;
    7870          26 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7871          13 :       break;
    7872             :     }
    7873             :     case ARM::VST4LNd8_UPD: {
    7874             :       // op: Vd
    7875           7 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7876           7 :       Value |= (op & UINT64_C(16)) << 18;
    7877           7 :       Value |= (op & UINT64_C(15)) << 12;
    7878             :       // op: Rn
    7879          14 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7880           7 :       Value |= (op & UINT64_C(15)) << 16;
    7881           7 :       Value |= op & UINT64_C(16);
    7882             :       // op: Rm
    7883             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7884           7 :       Value |= op & UINT64_C(15);
    7885             :       // op: lane
    7886           7 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    7887           7 :       Value |= (op & UINT64_C(7)) << 5;
    7888          14 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7889           7 :       break;
    7890             :     }
    7891             :     case ARM::VST3d16_UPD:
    7892             :     case ARM::VST3d32_UPD:
    7893             :     case ARM::VST3d8_UPD:
    7894             :     case ARM::VST3q16_UPD:
    7895             :     case ARM::VST3q32_UPD:
    7896             :     case ARM::VST3q8_UPD: {
    7897             :       // op: Vd
    7898          42 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7899          42 :       Value |= (op & UINT64_C(16)) << 18;
    7900          42 :       Value |= (op & UINT64_C(15)) << 12;
    7901             :       // op: Rn
    7902          84 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7903          42 :       Value |= (op & UINT64_C(15)) << 16;
    7904          42 :       Value |= op & UINT64_C(16);
    7905             :       // op: Rm
    7906             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7907          42 :       Value |= op & UINT64_C(15);
    7908          84 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7909          42 :       break;
    7910             :     }
    7911             :     case ARM::VST1d16wb_register:
    7912             :     case ARM::VST1d32wb_register:
    7913             :     case ARM::VST1d64wb_register:
    7914             :     case ARM::VST1d8wb_register: {
    7915             :       // op: Vd
    7916           8 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7917           8 :       Value |= (op & UINT64_C(16)) << 18;
    7918           8 :       Value |= (op & UINT64_C(15)) << 12;
    7919             :       // op: Rn
    7920          16 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7921           8 :       Value |= (op & UINT64_C(15)) << 16;
    7922           8 :       Value |= op & UINT64_C(16);
    7923             :       // op: Rm
    7924           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7925           8 :       Value |= op & UINT64_C(15);
    7926          16 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7927           8 :       break;
    7928             :     }
    7929             :     case ARM::VST4LNd32_UPD:
    7930             :     case ARM::VST4LNq32_UPD: {
    7931             :       // op: Vd
    7932          29 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7933          29 :       Value |= (op & UINT64_C(16)) << 18;
    7934          29 :       Value |= (op & UINT64_C(15)) << 12;
    7935             :       // op: Rn
    7936          58 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7937          29 :       Value |= (op & UINT64_C(15)) << 16;
    7938          29 :       Value |= op & UINT64_C(48);
    7939             :       // op: Rm
    7940             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7941          29 :       Value |= op & UINT64_C(15);
    7942             :       // op: lane
    7943          29 :       op = getMachineOpValue(MI, MI.getOperand(8), Fixups, STI);
    7944          29 :       Value |= (op & UINT64_C(1)) << 7;
    7945          58 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7946          29 :       break;
    7947             :     }
    7948             :     case ARM::VST4d16_UPD:
    7949             :     case ARM::VST4d32_UPD:
    7950             :     case ARM::VST4d8_UPD:
    7951             :     case ARM::VST4q16_UPD:
    7952             :     case ARM::VST4q32_UPD:
    7953             :     case ARM::VST4q8_UPD: {
    7954             :       // op: Vd
    7955          66 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7956          66 :       Value |= (op & UINT64_C(16)) << 18;
    7957          66 :       Value |= (op & UINT64_C(15)) << 12;
    7958             :       // op: Rn
    7959         132 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7960          66 :       Value |= (op & UINT64_C(15)) << 16;
    7961          66 :       Value |= op & UINT64_C(48);
    7962             :       // op: Rm
    7963             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    7964          66 :       Value |= op & UINT64_C(15);
    7965         132 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    7966          66 :       break;
    7967             :     }
    7968             :     case ARM::VST1d16Qwb_register:
    7969             :     case ARM::VST1d16Twb_register:
    7970             :     case ARM::VST1d32Qwb_register:
    7971             :     case ARM::VST1d32Twb_register:
    7972             :     case ARM::VST1d64Qwb_register:
    7973             :     case ARM::VST1d64Twb_register:
    7974             :     case ARM::VST1d8Qwb_register:
    7975             :     case ARM::VST1d8Twb_register:
    7976             :     case ARM::VST1q16wb_register:
    7977             :     case ARM::VST1q32wb_register:
    7978             :     case ARM::VST1q64wb_register:
    7979             :     case ARM::VST1q8wb_register:
    7980             :     case ARM::VST2b16wb_register:
    7981             :     case ARM::VST2b32wb_register:
    7982             :     case ARM::VST2b8wb_register:
    7983             :     case ARM::VST2d16wb_register:
    7984             :     case ARM::VST2d32wb_register:
    7985             :     case ARM::VST2d8wb_register:
    7986             :     case ARM::VST2q16wb_register:
    7987             :     case ARM::VST2q32wb_register:
    7988             :     case ARM::VST2q8wb_register: {
    7989             :       // op: Vd
    7990          58 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    7991          58 :       Value |= (op & UINT64_C(16)) << 18;
    7992          58 :       Value |= (op & UINT64_C(15)) << 12;
    7993             :       // op: Rn
    7994         116 :       op = getAddrMode6AddressOpValue(MI, 1, Fixups, STI);
    7995          58 :       Value |= (op & UINT64_C(15)) << 16;
    7996          58 :       Value |= op & UINT64_C(48);
    7997             :       // op: Rm
    7998          58 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    7999          58 :       Value |= op & UINT64_C(15);
    8000         116 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    8001          58 :       break;
    8002             :     }
    8003             :     case ARM::VST1LNd32_UPD: {
    8004             :       // op: Vd
    8005          10 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    8006          10 :       Value |= (op & UINT64_C(16)) << 18;
    8007          10 :       Value |= (op & UINT64_C(15)) << 12;
    8008             :       // op: Rn
    8009          20 :       op = getAddrMode6OneLane32AddressOpValue(MI, 1, Fixups, STI);
    8010          10 :       Value |= (op & UINT64_C(15)) << 16;
    8011          10 :       Value |= op & UINT64_C(48);
    8012             :       // op: Rm
    8013             :       op = getAddrMode6OffsetOpValue(MI, 3, Fixups, STI);
    8014          10 :       Value |= op & UINT64_C(15);
    8015             :       // op: lane
    8016          10 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    8017          10 :       Value |= (op & UINT64_C(1)) << 7;
    8018          20 :       Value = NEONThumb2LoadStorePostEncoder(MI, Value, STI);
    8019          10 :       break;
    8020             :     }
    8021         360 :     case ARM::LDC2L_OFFSET:
    8022             :     case ARM::LDC2L_PRE:
    8023             :     case ARM::LDC2_OFFSET:
    8024             :     case ARM::LDC2_PRE:
    8025             :     case ARM::STC2L_OFFSET:
    8026             :     case ARM::STC2L_PRE:
    8027             :     case ARM::STC2_OFFSET:
    8028             :     case ARM::STC2_PRE:
    8029             :     case ARM::t2LDC2L_OFFSET:
    8030             :     case ARM::t2LDC2L_PRE:
    8031             :     case ARM::t2LDC2_OFFSET:
    8032             :     case ARM::t2LDC2_PRE:
    8033             :     case ARM::t2LDCL_OFFSET:
    8034             :     case ARM::t2LDCL_PRE:
    8035             :     case ARM::t2LDC_OFFSET:
    8036             :     case ARM::t2LDC_PRE:
    8037             :     case ARM::t2STC2L_OFFSET:
    8038             :     case ARM::t2STC2L_PRE:
    8039             :     case ARM::t2STC2_OFFSET:
    8040             :     case ARM::t2STC2_PRE:
    8041             :     case ARM::t2STCL_OFFSET:
    8042             :     case ARM::t2STCL_PRE:
    8043             :     case ARM::t2STC_OFFSET:
    8044             :     case ARM::t2STC_PRE: {
    8045             :       // op: addr
    8046         360 :       op = getAddrMode5OpValue(MI, 2, Fixups, STI);
    8047         360 :       Value |= (op & UINT64_C(256)) << 15;
    8048         360 :       Value |= (op & UINT64_C(7680)) << 7;
    8049         360 :       Value |= op & UINT64_C(255);
    8050             :       // op: cop
    8051         360 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8052         360 :       Value |= (op & UINT64_C(15)) << 8;
    8053             :       // op: CRd
    8054         360 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8055         360 :       Value |= (op & UINT64_C(15)) << 12;
    8056         360 :       break;
    8057             :     }
    8058          21 :     case ARM::t2PLDWi12:
    8059             :     case ARM::t2PLDi12:
    8060             :     case ARM::t2PLIi12: {
    8061             :       // op: addr
    8062          21 :       op = getAddrModeImm12OpValue(MI, 0, Fixups, STI);
    8063          21 :       Value |= (op & UINT64_C(122880)) << 3;
    8064          21 :       Value |= op & UINT64_C(4095);
    8065          21 :       break;
    8066             :     }
    8067           0 :     case ARM::PLDWi12:
    8068             :     case ARM::PLDi12:
    8069             :     case ARM::PLIi12: {
    8070             :       // op: addr
    8071           0 :       op = getAddrModeImm12OpValue(MI, 0, Fixups, STI);
    8072           0 :       Value |= (op & UINT64_C(4096)) << 11;
    8073           0 :       Value |= (op & UINT64_C(122880)) << 3;
    8074           0 :       Value |= op & UINT64_C(4095);
    8075           0 :       break;
    8076             :     }
    8077           4 :     case ARM::t2PLDpci:
    8078             :     case ARM::t2PLIpci: {
    8079             :       // op: addr
    8080           4 :       op = getAddrModeImm12OpValue(MI, 0, Fixups, STI);
    8081           4 :       Value |= (op & UINT64_C(4096)) << 11;
    8082           4 :       Value |= op & UINT64_C(4095);
    8083           4 :       break;
    8084             :     }
    8085             :     case ARM::t2LDAEXB:
    8086             :     case ARM::t2LDAEXH:
    8087             :     case ARM::t2LDREXB:
    8088             :     case ARM::t2LDREXH: {
    8089             :       // op: addr
    8090          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8091          20 :       Value |= (op & UINT64_C(15)) << 16;
    8092             :       // op: Rt
    8093          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8094          20 :       Value |= (op & UINT64_C(15)) << 12;
    8095          20 :       break;
    8096             :     }
    8097             :     case ARM::t2LDAEXD:
    8098             :     case ARM::t2LDREXD: {
    8099             :       // op: addr
    8100           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8101           8 :       Value |= (op & UINT64_C(15)) << 16;
    8102             :       // op: Rt
    8103           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8104           8 :       Value |= (op & UINT64_C(15)) << 12;
    8105             :       // op: Rt2
    8106           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8107           8 :       Value |= (op & UINT64_C(15)) << 8;
    8108           8 :       break;
    8109             :     }
    8110           6 :     case ARM::t2PLDWi8:
    8111             :     case ARM::t2PLDi8:
    8112             :     case ARM::t2PLIi8: {
    8113             :       // op: addr
    8114          12 :       op = getT2AddrModeImm8OpValue(MI, 0, Fixups, STI);
    8115           6 :       Value |= (op & UINT64_C(7680)) << 7;
    8116           6 :       Value |= op & UINT64_C(255);
    8117           6 :       break;
    8118             :     }
    8119          24 :     case ARM::t2PLDWs:
    8120             :     case ARM::t2PLDs:
    8121             :     case ARM::t2PLIs: {
    8122             :       // op: addr
    8123          48 :       op = getT2AddrModeSORegOpValue(MI, 0, Fixups, STI);
    8124          24 :       Value |= (op & UINT64_C(960)) << 10;
    8125          24 :       Value |= (op & UINT64_C(3)) << 4;
    8126          24 :       Value |= (op & UINT64_C(60)) >> 2;
    8127          24 :       break;
    8128             :     }
    8129             :     case ARM::t2MSRbanked: {
    8130             :       // op: banked
    8131          33 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8132          33 :       Value |= (op & UINT64_C(32)) << 15;
    8133          33 :       Value |= (op & UINT64_C(15)) << 8;
    8134          33 :       Value |= op & UINT64_C(16);
    8135             :       // op: Rn
    8136          33 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8137          33 :       Value |= (op & UINT64_C(15)) << 16;
    8138          33 :       break;
    8139             :     }
    8140             :     case ARM::t2MRSbanked: {
    8141             :       // op: banked
    8142          33 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8143          33 :       Value |= (op & UINT64_C(32)) << 15;
    8144          33 :       Value |= (op & UINT64_C(15)) << 16;
    8145          33 :       Value |= op & UINT64_C(16);
    8146             :       // op: Rd
    8147          33 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8148          33 :       Value |= (op & UINT64_C(15)) << 8;
    8149          33 :       break;
    8150             :     }
    8151             :     case ARM::t2IT: {
    8152             :       // op: cc
    8153        2768 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8154        2768 :       Value |= (op & UINT64_C(15)) << 4;
    8155             :       // op: mask
    8156        2768 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8157        2768 :       Value |= op & UINT64_C(15);
    8158        2768 :       break;
    8159             :     }
    8160             :     case ARM::tADDrSPi: {
    8161             :       // op: dst
    8162         495 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8163         495 :       Value |= (op & UINT64_C(7)) << 8;
    8164             :       // op: imm
    8165         495 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8166         495 :       Value |= op & UINT64_C(255);
    8167         495 :       break;
    8168             :     }
    8169             :     case ARM::BX: {
    8170             :       // op: dst
    8171           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8172           0 :       Value |= op & UINT64_C(15);
    8173           0 :       break;
    8174             :     }
    8175             :     case ARM::tPICADD: {
    8176             :       // op: dst
    8177           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8178           0 :       Value |= op & UINT64_C(7);
    8179           0 :       break;
    8180             :     }
    8181             :     case ARM::tSETEND: {
    8182             :       // op: end
    8183          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8184          11 :       Value |= (op & UINT64_C(1)) << 3;
    8185          11 :       break;
    8186             :     }
    8187             :     case ARM::SETEND: {
    8188             :       // op: end
    8189          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8190          11 :       Value |= (op & UINT64_C(1)) << 9;
    8191          11 :       break;
    8192             :     }
    8193         709 :     case ARM::BL: {
    8194             :       // op: func
    8195         709 :       op = getARMBLTargetOpValue(MI, 0, Fixups, STI);
    8196         709 :       Value |= op & UINT64_C(16777215);
    8197         709 :       break;
    8198             :     }
    8199             :     case ARM::t2BXJ: {
    8200             :       // op: func
    8201          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8202          10 :       Value |= (op & UINT64_C(15)) << 16;
    8203          10 :       break;
    8204             :     }
    8205             :     case ARM::BLX: {
    8206             :       // op: func
    8207          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8208          20 :       Value |= op & UINT64_C(15);
    8209          20 :       break;
    8210             :     }
    8211             :     case ARM::tBLXNSr:
    8212             :     case ARM::tBLXr: {
    8213             :       // op: func
    8214          42 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8215          42 :       Value |= (op & UINT64_C(15)) << 3;
    8216          42 :       break;
    8217             :     }
    8218         979 :     case ARM::tBL: {
    8219             :       // op: func
    8220         979 :       op = getThumbBLTargetOpValue(MI, 2, Fixups, STI);
    8221         979 :       Value |= (op & UINT64_C(8388608)) << 3;
    8222         979 :       Value |= (op & UINT64_C(2095104)) << 5;
    8223         979 :       Value |= (op & UINT64_C(4194304)) >> 9;
    8224         979 :       Value |= (op & UINT64_C(2097152)) >> 10;
    8225         979 :       Value |= op & UINT64_C(2047);
    8226         979 :       break;
    8227             :     }
    8228          31 :     case ARM::tBLXi: {
    8229             :       // op: func
    8230          31 :       op = getThumbBLXTargetOpValue(MI, 2, Fixups, STI);
    8231          31 :       Value |= (op & UINT64_C(8388608)) << 3;
    8232          31 :       Value |= (op & UINT64_C(2095104)) << 5;
    8233          31 :       Value |= (op & UINT64_C(4194304)) >> 9;
    8234          31 :       Value |= (op & UINT64_C(2097152)) >> 10;
    8235          31 :       Value |= op & UINT64_C(2046);
    8236          31 :       break;
    8237             :     }
    8238             :     case ARM::t2SETPAN: {
    8239             :       // op: imm
    8240           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8241           2 :       Value |= (op & UINT64_C(1)) << 3;
    8242           2 :       break;
    8243             :     }
    8244             :     case ARM::SETPAN: {
    8245             :       // op: imm
    8246           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8247           2 :       Value |= (op & UINT64_C(1)) << 9;
    8248           2 :       break;
    8249             :     }
    8250             :     case ARM::tHINT: {
    8251             :       // op: imm
    8252         108 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8253         108 :       Value |= (op & UINT64_C(15)) << 4;
    8254         108 :       break;
    8255             :     }
    8256             :     case ARM::HVC: {
    8257             :       // op: imm
    8258           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8259           4 :       Value |= (op & UINT64_C(65520)) << 4;
    8260           4 :       Value |= op & UINT64_C(15);
    8261           4 :       break;
    8262             :     }
    8263             :     case ARM::t2HINT:
    8264             :     case ARM::t2SUBS_PC_LR:
    8265             :     case ARM::tSVC: {
    8266             :       // op: imm
    8267          64 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8268          64 :       Value |= op & UINT64_C(255);
    8269          64 :       break;
    8270             :     }
    8271             :     case ARM::tADDspi:
    8272             :     case ARM::tSUBspi: {
    8273             :       // op: imm
    8274         510 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8275         510 :       Value |= op & UINT64_C(127);
    8276         510 :       break;
    8277             :     }
    8278             :     case ARM::t2HVC:
    8279             :     case ARM::t2UDF: {
    8280             :       // op: imm16
    8281          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8282          10 :       Value |= (op & UINT64_C(61440)) << 4;
    8283          10 :       Value |= op & UINT64_C(4095);
    8284          10 :       break;
    8285             :     }
    8286             :     case ARM::UDF: {
    8287             :       // op: imm16
    8288           1 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8289           1 :       Value |= (op & UINT64_C(65520)) << 4;
    8290           1 :       Value |= op & UINT64_C(15);
    8291           1 :       break;
    8292             :     }
    8293             :     case ARM::tUDF: {
    8294             :       // op: imm8
    8295           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8296           2 :       Value |= op & UINT64_C(255);
    8297           2 :       break;
    8298             :     }
    8299             :     case ARM::tCPS: {
    8300             :       // op: imod
    8301          17 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8302          17 :       Value |= (op & UINT64_C(1)) << 4;
    8303             :       // op: iflags
    8304          17 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8305          17 :       Value |= op & UINT64_C(7);
    8306          17 :       break;
    8307             :     }
    8308             :     case ARM::CPS2p: {
    8309             :       // op: imod
    8310           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8311           4 :       Value |= (op & UINT64_C(3)) << 18;
    8312             :       // op: iflags
    8313           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8314           4 :       Value |= (op & UINT64_C(7)) << 6;
    8315           4 :       break;
    8316             :     }
    8317             :     case ARM::CPS3p: {
    8318             :       // op: imod
    8319           5 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8320           5 :       Value |= (op & UINT64_C(3)) << 18;
    8321             :       // op: iflags
    8322           5 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8323           5 :       Value |= (op & UINT64_C(7)) << 6;
    8324             :       // op: mode
    8325           5 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8326           5 :       Value |= op & UINT64_C(31);
    8327           5 :       break;
    8328             :     }
    8329             :     case ARM::t2CPS2p: {
    8330             :       // op: imod
    8331           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8332           4 :       Value |= (op & UINT64_C(3)) << 9;
    8333             :       // op: iflags
    8334           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8335           4 :       Value |= (op & UINT64_C(7)) << 5;
    8336           4 :       break;
    8337             :     }
    8338             :     case ARM::t2CPS3p: {
    8339             :       // op: imod
    8340          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8341          12 :       Value |= (op & UINT64_C(3)) << 9;
    8342             :       // op: iflags
    8343          12 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8344          12 :       Value |= (op & UINT64_C(7)) << 5;
    8345             :       // op: mode
    8346          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8347          12 :       Value |= op & UINT64_C(31);
    8348          12 :       break;
    8349             :     }
    8350             :     case ARM::t2MSR_AR: {
    8351             :       // op: mask
    8352          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8353          31 :       Value |= (op & UINT64_C(16)) << 16;
    8354          31 :       Value |= (op & UINT64_C(15)) << 8;
    8355             :       // op: Rn
    8356          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8357          31 :       Value |= (op & UINT64_C(15)) << 16;
    8358          31 :       break;
    8359             :     }
    8360             :     case ARM::CPS1p:
    8361             :     case ARM::SRSDA:
    8362             :     case ARM::SRSDA_UPD:
    8363             :     case ARM::SRSDB:
    8364             :     case ARM::SRSDB_UPD:
    8365             :     case ARM::SRSIA:
    8366             :     case ARM::SRSIA_UPD:
    8367             :     case ARM::SRSIB:
    8368             :     case ARM::SRSIB_UPD:
    8369             :     case ARM::t2CPS1p:
    8370             :     case ARM::t2SRSDB:
    8371             :     case ARM::t2SRSDB_UPD:
    8372             :     case ARM::t2SRSIA:
    8373             :     case ARM::t2SRSIA_UPD: {
    8374             :       // op: mode
    8375         122 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8376         122 :       Value |= op & UINT64_C(31);
    8377         122 :       break;
    8378             :     }
    8379             :     case ARM::LDC2L_POST:
    8380             :     case ARM::LDC2_POST:
    8381             :     case ARM::STC2L_POST:
    8382             :     case ARM::STC2_POST:
    8383             :     case ARM::t2LDC2L_POST:
    8384             :     case ARM::t2LDC2_POST:
    8385             :     case ARM::t2LDCL_POST:
    8386             :     case ARM::t2LDC_POST:
    8387             :     case ARM::t2STC2L_POST:
    8388             :     case ARM::t2STC2_POST:
    8389             :     case ARM::t2STCL_POST:
    8390             :     case ARM::t2STC_POST: {
    8391             :       // op: offset
    8392         176 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    8393         176 :       Value |= (op & UINT64_C(256)) << 15;
    8394         176 :       Value |= op & UINT64_C(255);
    8395             :       // op: addr
    8396         176 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8397         176 :       Value |= (op & UINT64_C(15)) << 16;
    8398             :       // op: cop
    8399         176 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8400         176 :       Value |= (op & UINT64_C(15)) << 8;
    8401             :       // op: CRd
    8402         176 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8403         176 :       Value |= (op & UINT64_C(15)) << 12;
    8404         176 :       break;
    8405             :     }
    8406             :     case ARM::CDP2:
    8407             :     case ARM::t2CDP:
    8408             :     case ARM::t2CDP2: {
    8409             :       // op: opc1
    8410          23 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8411          23 :       Value |= (op & UINT64_C(15)) << 20;
    8412             :       // op: CRn
    8413          23 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    8414          23 :       Value |= (op & UINT64_C(15)) << 16;
    8415             :       // op: CRd
    8416          23 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8417          23 :       Value |= (op & UINT64_C(15)) << 12;
    8418             :       // op: cop
    8419          23 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8420          23 :       Value |= (op & UINT64_C(15)) << 8;
    8421             :       // op: opc2
    8422          23 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
    8423          23 :       Value |= (op & UINT64_C(7)) << 5;
    8424             :       // op: CRm
    8425          23 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    8426          23 :       Value |= op & UINT64_C(15);
    8427          23 :       break;
    8428             :     }
    8429             :     case ARM::t2SMC: {
    8430             :       // op: opt
    8431           3 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8432           3 :       Value |= (op & UINT64_C(15)) << 16;
    8433           3 :       break;
    8434             :     }
    8435             :     case ARM::DMB:
    8436             :     case ARM::DSB:
    8437             :     case ARM::ISB:
    8438             :     case ARM::t2DBG:
    8439             :     case ARM::t2DMB:
    8440             :     case ARM::t2DSB:
    8441             :     case ARM::t2ISB: {
    8442             :       // op: opt
    8443         308 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8444         308 :       Value |= op & UINT64_C(15);
    8445         308 :       break;
    8446             :     }
    8447             :     case ARM::LDC2L_OPTION:
    8448             :     case ARM::LDC2_OPTION:
    8449             :     case ARM::STC2L_OPTION:
    8450             :     case ARM::STC2_OPTION:
    8451             :     case ARM::t2LDC2L_OPTION:
    8452             :     case ARM::t2LDC2_OPTION:
    8453             :     case ARM::t2LDCL_OPTION:
    8454             :     case ARM::t2LDC_OPTION:
    8455             :     case ARM::t2STC2L_OPTION:
    8456             :     case ARM::t2STC2_OPTION:
    8457             :     case ARM::t2STCL_OPTION:
    8458             :     case ARM::t2STC_OPTION: {
    8459             :       // op: option
    8460          88 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    8461          88 :       Value |= op & UINT64_C(255);
    8462             :       // op: addr
    8463          88 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8464          88 :       Value |= (op & UINT64_C(15)) << 16;
    8465             :       // op: cop
    8466          88 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8467          88 :       Value |= (op & UINT64_C(15)) << 8;
    8468             :       // op: CRd
    8469          88 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8470          88 :       Value |= (op & UINT64_C(15)) << 12;
    8471          88 :       break;
    8472             :     }
    8473             :     case ARM::BX_RET:
    8474             :     case ARM::ERET:
    8475             :     case ARM::MOVPCLR: {
    8476             :       // op: p
    8477         343 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8478         343 :       Value |= (op & UINT64_C(15)) << 28;
    8479         343 :       break;
    8480             :     }
    8481             :     case ARM::FMSTAT: {
    8482             :       // op: p
    8483          49 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8484          49 :       Value |= (op & UINT64_C(15)) << 28;
    8485          98 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8486          49 :       break;
    8487             :     }
    8488             :     case ARM::t2Bcc: {
    8489             :       // op: p
    8490          73 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8491          73 :       Value |= (op & UINT64_C(15)) << 22;
    8492             :       // op: target
    8493          73 :       op = getBranchTargetOpValue(MI, 0, Fixups, STI);
    8494          73 :       Value |= (op & UINT64_C(1048576)) << 6;
    8495          73 :       Value |= (op & UINT64_C(258048)) << 4;
    8496          73 :       Value |= (op & UINT64_C(262144)) >> 5;
    8497          73 :       Value |= (op & UINT64_C(524288)) >> 8;
    8498          73 :       Value |= (op & UINT64_C(4094)) >> 1;
    8499          73 :       break;
    8500             :     }
    8501             :     case ARM::VCMPEZD:
    8502             :     case ARM::VCMPZD: {
    8503             :       // op: p
    8504           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8505           2 :       Value |= (op & UINT64_C(15)) << 28;
    8506             :       // op: Dd
    8507           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8508           2 :       Value |= (op & UINT64_C(16)) << 18;
    8509           2 :       Value |= (op & UINT64_C(15)) << 12;
    8510           4 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8511           2 :       break;
    8512             :     }
    8513             :     case ARM::MRS:
    8514             :     case ARM::MRSsys: {
    8515             :       // op: p
    8516           7 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8517           7 :       Value |= (op & UINT64_C(15)) << 28;
    8518             :       // op: Rd
    8519           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8520           7 :       Value |= (op & UINT64_C(15)) << 12;
    8521           7 :       break;
    8522             :     }
    8523             :     case ARM::VLDMSIA:
    8524             :     case ARM::VSTMSIA: {
    8525             :       // op: p
    8526           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8527           2 :       Value |= (op & UINT64_C(15)) << 28;
    8528             :       // op: Rn
    8529           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8530           2 :       Value |= (op & UINT64_C(15)) << 16;
    8531             :       // op: regs
    8532           2 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    8533           2 :       Value |= (op & UINT64_C(256)) << 14;
    8534           2 :       Value |= (op & UINT64_C(7680)) << 3;
    8535           2 :       Value |= op & UINT64_C(255);
    8536           4 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8537           2 :       break;
    8538             :     }
    8539             :     case ARM::FLDMXIA:
    8540             :     case ARM::FSTMXIA: {
    8541             :       // op: p
    8542           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8543           2 :       Value |= (op & UINT64_C(15)) << 28;
    8544             :       // op: Rn
    8545           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8546           2 :       Value |= (op & UINT64_C(15)) << 16;
    8547             :       // op: regs
    8548           2 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    8549           2 :       Value |= (op & UINT64_C(3840)) << 4;
    8550           2 :       Value |= op & UINT64_C(254);
    8551           4 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8552           2 :       break;
    8553             :     }
    8554             :     case ARM::VLDMDIA:
    8555             :     case ARM::VSTMDIA: {
    8556             :       // op: p
    8557           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8558           4 :       Value |= (op & UINT64_C(15)) << 28;
    8559             :       // op: Rn
    8560           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8561           4 :       Value |= (op & UINT64_C(15)) << 16;
    8562             :       // op: regs
    8563           4 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    8564           4 :       Value |= (op & UINT64_C(4096)) << 10;
    8565           4 :       Value |= (op & UINT64_C(3840)) << 4;
    8566           4 :       Value |= op & UINT64_C(254);
    8567           8 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8568           4 :       break;
    8569             :     }
    8570             :     case ARM::VLLDM:
    8571             :     case ARM::VLSTM: {
    8572             :       // op: p
    8573           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8574           4 :       Value |= (op & UINT64_C(15)) << 28;
    8575             :       // op: Rn
    8576           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8577           4 :       Value |= (op & UINT64_C(15)) << 16;
    8578           8 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8579           4 :       break;
    8580             :     }
    8581             :     case ARM::VMRS:
    8582             :     case ARM::VMRS_FPEXC:
    8583             :     case ARM::VMRS_FPINST:
    8584             :     case ARM::VMRS_FPINST2:
    8585             :     case ARM::VMRS_FPSID:
    8586             :     case ARM::VMRS_MVFR0:
    8587             :     case ARM::VMRS_MVFR1:
    8588             :     case ARM::VMRS_MVFR2: {
    8589             :       // op: p
    8590         107 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8591         107 :       Value |= (op & UINT64_C(15)) << 28;
    8592             :       // op: Rt
    8593         107 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8594         107 :       Value |= (op & UINT64_C(15)) << 12;
    8595         214 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8596         107 :       break;
    8597             :     }
    8598             :     case ARM::VCMPEZH:
    8599             :     case ARM::VCMPEZS:
    8600             :     case ARM::VCMPZH:
    8601             :     case ARM::VCMPZS: {
    8602             :       // op: p
    8603          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8604          10 :       Value |= (op & UINT64_C(15)) << 28;
    8605             :       // op: Sd
    8606          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8607          10 :       Value |= (op & UINT64_C(1)) << 22;
    8608          10 :       Value |= (op & UINT64_C(30)) << 11;
    8609          20 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8610          10 :       break;
    8611             :     }
    8612             :     case ARM::BX_pred: {
    8613             :       // op: p
    8614          17 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8615          17 :       Value |= (op & UINT64_C(15)) << 28;
    8616             :       // op: dst
    8617          17 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8618          17 :       Value |= op & UINT64_C(15);
    8619          17 :       break;
    8620             :     }
    8621             :     case ARM::BL_pred: {
    8622             :       // op: p
    8623          82 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8624          82 :       Value |= (op & UINT64_C(15)) << 28;
    8625             :       // op: func
    8626          82 :       op = getARMBLTargetOpValue(MI, 0, Fixups, STI);
    8627          82 :       Value |= op & UINT64_C(16777215);
    8628          82 :       break;
    8629             :     }
    8630             :     case ARM::BLX_pred:
    8631             :     case ARM::BXJ: {
    8632             :       // op: p
    8633          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8634          10 :       Value |= (op & UINT64_C(15)) << 28;
    8635             :       // op: func
    8636          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8637          10 :       Value |= op & UINT64_C(15);
    8638          10 :       break;
    8639             :     }
    8640             :     case ARM::HINT: {
    8641             :       // op: p
    8642          81 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8643          81 :       Value |= (op & UINT64_C(15)) << 28;
    8644             :       // op: imm
    8645          81 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8646          81 :       Value |= op & UINT64_C(255);
    8647          81 :       break;
    8648             :     }
    8649             :     case ARM::DBG:
    8650             :     case ARM::SMC: {
    8651             :       // op: p
    8652          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8653          10 :       Value |= (op & UINT64_C(15)) << 28;
    8654             :       // op: opt
    8655          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8656          10 :       Value |= op & UINT64_C(15);
    8657          10 :       break;
    8658             :     }
    8659             :     case ARM::LDMDA:
    8660             :     case ARM::LDMDB:
    8661             :     case ARM::LDMIA:
    8662             :     case ARM::LDMIB:
    8663             :     case ARM::STMDA:
    8664             :     case ARM::STMDB:
    8665             :     case ARM::STMIA:
    8666             :     case ARM::STMIB:
    8667             :     case ARM::sysLDMDA:
    8668             :     case ARM::sysLDMDB:
    8669             :     case ARM::sysLDMIA:
    8670             :     case ARM::sysLDMIB:
    8671             :     case ARM::sysSTMDA:
    8672             :     case ARM::sysSTMDB:
    8673             :     case ARM::sysSTMIA:
    8674             :     case ARM::sysSTMIB: {
    8675             :       // op: p
    8676         164 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8677         164 :       Value |= (op & UINT64_C(15)) << 28;
    8678             :       // op: regs
    8679         164 :       op = getRegisterListOpValue(MI, 3, Fixups, STI);
    8680         164 :       Value |= op & UINT64_C(65535);
    8681             :       // op: Rn
    8682         164 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8683         164 :       Value |= (op & UINT64_C(15)) << 16;
    8684         164 :       break;
    8685             :     }
    8686             :     case ARM::VMSR:
    8687             :     case ARM::VMSR_FPEXC:
    8688             :     case ARM::VMSR_FPINST:
    8689             :     case ARM::VMSR_FPINST2:
    8690             :     case ARM::VMSR_FPSID: {
    8691             :       // op: p
    8692          86 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8693          86 :       Value |= (op & UINT64_C(15)) << 28;
    8694             :       // op: src
    8695          86 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8696          86 :       Value |= (op & UINT64_C(15)) << 12;
    8697         172 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8698          86 :       break;
    8699             :     }
    8700             :     case ARM::SVC: {
    8701             :       // op: p
    8702           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8703           8 :       Value |= (op & UINT64_C(15)) << 28;
    8704             :       // op: svc
    8705           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8706           8 :       Value |= op & UINT64_C(16777215);
    8707           8 :       break;
    8708             :     }
    8709             :     case ARM::Bcc: {
    8710             :       // op: p
    8711         225 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8712         225 :       Value |= (op & UINT64_C(15)) << 28;
    8713             :       // op: target
    8714         225 :       op = getARMBranchTargetOpValue(MI, 0, Fixups, STI);
    8715         225 :       Value |= op & UINT64_C(16777215);
    8716         225 :       break;
    8717             :     }
    8718             :     case ARM::tBcc: {
    8719             :       // op: p
    8720         180 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8721         180 :       Value |= (op & UINT64_C(15)) << 8;
    8722             :       // op: target
    8723         180 :       op = getThumbBCCTargetOpValue(MI, 0, Fixups, STI);
    8724         180 :       Value |= op & UINT64_C(255);
    8725         180 :       break;
    8726             :     }
    8727             :     case ARM::VABSD:
    8728             :     case ARM::VCMPD:
    8729             :     case ARM::VCMPED:
    8730             :     case ARM::VMOVD:
    8731             :     case ARM::VNEGD:
    8732             :     case ARM::VRINTRD:
    8733             :     case ARM::VRINTXD:
    8734             :     case ARM::VRINTZD:
    8735             :     case ARM::VSQRTD: {
    8736             :       // op: p
    8737         126 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8738         126 :       Value |= (op & UINT64_C(15)) << 28;
    8739             :       // op: Dd
    8740         126 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8741         126 :       Value |= (op & UINT64_C(16)) << 18;
    8742         126 :       Value |= (op & UINT64_C(15)) << 12;
    8743             :       // op: Dm
    8744         126 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8745         126 :       Value |= (op & UINT64_C(16)) << 1;
    8746         126 :       Value |= op & UINT64_C(15);
    8747         252 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8748         126 :       break;
    8749             :     }
    8750             :     case ARM::VCVTBHD:
    8751             :     case ARM::VCVTTHD:
    8752             :     case ARM::VSITOD:
    8753             :     case ARM::VUITOD: {
    8754             :       // op: p
    8755          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8756          20 :       Value |= (op & UINT64_C(15)) << 28;
    8757             :       // op: Dd
    8758          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8759          20 :       Value |= (op & UINT64_C(16)) << 18;
    8760          20 :       Value |= (op & UINT64_C(15)) << 12;
    8761             :       // op: Sm
    8762          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8763          20 :       Value |= (op & UINT64_C(1)) << 5;
    8764          20 :       Value |= (op & UINT64_C(30)) >> 1;
    8765          40 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8766          20 :       break;
    8767             :     }
    8768             :     case ARM::FCONSTD: {
    8769             :       // op: p
    8770          10 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8771          10 :       Value |= (op & UINT64_C(15)) << 28;
    8772             :       // op: Dd
    8773          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8774          10 :       Value |= (op & UINT64_C(16)) << 18;
    8775          10 :       Value |= (op & UINT64_C(15)) << 12;
    8776             :       // op: imm
    8777          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8778          10 :       Value |= (op & UINT64_C(240)) << 12;
    8779          10 :       Value |= op & UINT64_C(15);
    8780          20 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8781          10 :       break;
    8782             :     }
    8783             :     case ARM::VCVTBDH:
    8784             :     case ARM::VCVTTDH: {
    8785             :       // op: p
    8786          17 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8787          17 :       Value |= (op & UINT64_C(15)) << 28;
    8788             :       // op: Dm
    8789          17 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8790          17 :       Value |= (op & UINT64_C(16)) << 1;
    8791          17 :       Value |= op & UINT64_C(15);
    8792             :       // op: Sd
    8793          17 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8794          17 :       Value |= (op & UINT64_C(1)) << 22;
    8795          17 :       Value |= (op & UINT64_C(30)) << 11;
    8796          34 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8797          17 :       break;
    8798             :     }
    8799             :     case ARM::CLZ:
    8800             :     case ARM::RBIT:
    8801             :     case ARM::REV:
    8802             :     case ARM::REV16:
    8803             :     case ARM::REVSH: {
    8804             :       // op: p
    8805          27 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8806          27 :       Value |= (op & UINT64_C(15)) << 28;
    8807             :       // op: Rd
    8808          27 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8809          27 :       Value |= (op & UINT64_C(15)) << 12;
    8810             :       // op: Rm
    8811          27 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8812          27 :       Value |= op & UINT64_C(15);
    8813          27 :       break;
    8814             :     }
    8815             :     case ARM::MOVi16: {
    8816             :       // op: p
    8817         269 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8818         269 :       Value |= (op & UINT64_C(15)) << 28;
    8819             :       // op: Rd
    8820         269 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8821         269 :       Value |= (op & UINT64_C(15)) << 12;
    8822             :       // op: imm
    8823         269 :       op = getHiLo16ImmOpValue(MI, 1, Fixups, STI);
    8824         269 :       Value |= (op & UINT64_C(61440)) << 4;
    8825         269 :       Value |= op & UINT64_C(4095);
    8826         269 :       break;
    8827             :     }
    8828             :     case ARM::ADR: {
    8829             :       // op: p
    8830          30 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8831          30 :       Value |= (op & UINT64_C(15)) << 28;
    8832             :       // op: Rd
    8833          30 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8834          30 :       Value |= (op & UINT64_C(15)) << 12;
    8835             :       // op: label
    8836          30 :       op = getAdrLabelOpValue(MI, 1, Fixups, STI);
    8837          30 :       Value |= (op & UINT64_C(12288)) << 10;
    8838          30 :       Value |= op & UINT64_C(4095);
    8839          30 :       break;
    8840             :     }
    8841             :     case ARM::CMNzrr:
    8842             :     case ARM::CMPrr:
    8843             :     case ARM::TEQrr:
    8844             :     case ARM::TSTrr: {
    8845             :       // op: p
    8846          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8847          24 :       Value |= (op & UINT64_C(15)) << 28;
    8848             :       // op: Rn
    8849          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8850          24 :       Value |= (op & UINT64_C(15)) << 16;
    8851             :       // op: Rm
    8852          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8853          24 :       Value |= op & UINT64_C(15);
    8854          24 :       break;
    8855             :     }
    8856             :     case ARM::CMNri:
    8857             :     case ARM::CMPri:
    8858             :     case ARM::TEQri:
    8859             :     case ARM::TSTri: {
    8860             :       // op: p
    8861         104 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8862         104 :       Value |= (op & UINT64_C(15)) << 28;
    8863             :       // op: Rn
    8864         104 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8865         104 :       Value |= (op & UINT64_C(15)) << 16;
    8866             :       // op: imm
    8867         104 :       op = getModImmOpValue(MI, 1, Fixups, STI);
    8868         104 :       Value |= op & UINT64_C(4095);
    8869         104 :       break;
    8870             :     }
    8871             :     case ARM::VLDMSDB_UPD:
    8872             :     case ARM::VLDMSIA_UPD:
    8873             :     case ARM::VSTMSDB_UPD:
    8874             :     case ARM::VSTMSIA_UPD: {
    8875             :       // op: p
    8876           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8877           8 :       Value |= (op & UINT64_C(15)) << 28;
    8878             :       // op: Rn
    8879           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8880           8 :       Value |= (op & UINT64_C(15)) << 16;
    8881             :       // op: regs
    8882           8 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    8883           8 :       Value |= (op & UINT64_C(256)) << 14;
    8884           8 :       Value |= (op & UINT64_C(7680)) << 3;
    8885           8 :       Value |= op & UINT64_C(255);
    8886          16 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8887           8 :       break;
    8888             :     }
    8889             :     case ARM::FLDMXDB_UPD:
    8890             :     case ARM::FLDMXIA_UPD:
    8891             :     case ARM::FSTMXDB_UPD:
    8892             :     case ARM::FSTMXIA_UPD: {
    8893             :       // op: p
    8894           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8895           4 :       Value |= (op & UINT64_C(15)) << 28;
    8896             :       // op: Rn
    8897           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8898           4 :       Value |= (op & UINT64_C(15)) << 16;
    8899             :       // op: regs
    8900           4 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    8901           4 :       Value |= (op & UINT64_C(3840)) << 4;
    8902           4 :       Value |= op & UINT64_C(254);
    8903           8 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8904           4 :       break;
    8905             :     }
    8906             :     case ARM::VLDMDDB_UPD:
    8907             :     case ARM::VLDMDIA_UPD:
    8908             :     case ARM::VSTMDDB_UPD:
    8909             :     case ARM::VSTMDIA_UPD: {
    8910             :       // op: p
    8911          42 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8912          42 :       Value |= (op & UINT64_C(15)) << 28;
    8913             :       // op: Rn
    8914          42 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8915          42 :       Value |= (op & UINT64_C(15)) << 16;
    8916             :       // op: regs
    8917          42 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    8918          42 :       Value |= (op & UINT64_C(4096)) << 10;
    8919          42 :       Value |= (op & UINT64_C(3840)) << 4;
    8920          42 :       Value |= op & UINT64_C(254);
    8921          84 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8922          42 :       break;
    8923             :     }
    8924             :     case ARM::VMOVRH:
    8925             :     case ARM::VMOVRS: {
    8926             :       // op: p
    8927         172 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8928         172 :       Value |= (op & UINT64_C(15)) << 28;
    8929             :       // op: Rt
    8930         172 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8931         172 :       Value |= (op & UINT64_C(15)) << 12;
    8932             :       // op: Sn
    8933         172 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8934         172 :       Value |= (op & UINT64_C(30)) << 15;
    8935         172 :       Value |= (op & UINT64_C(1)) << 7;
    8936         344 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8937         172 :       break;
    8938             :     }
    8939             :     case ARM::LDA:
    8940             :     case ARM::LDAB:
    8941             :     case ARM::LDAEX:
    8942             :     case ARM::LDAEXB:
    8943             :     case ARM::LDAEXD:
    8944             :     case ARM::LDAEXH:
    8945             :     case ARM::LDAH:
    8946             :     case ARM::LDREX:
    8947             :     case ARM::LDREXB:
    8948             :     case ARM::LDREXD:
    8949             :     case ARM::LDREXH: {
    8950             :       // op: p
    8951          27 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8952          27 :       Value |= (op & UINT64_C(15)) << 28;
    8953             :       // op: Rt
    8954          27 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8955          27 :       Value |= (op & UINT64_C(15)) << 12;
    8956             :       // op: addr
    8957          27 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8958          27 :       Value |= (op & UINT64_C(15)) << 16;
    8959          27 :       break;
    8960             :     }
    8961             :     case ARM::STL:
    8962             :     case ARM::STLB:
    8963             :     case ARM::STLH: {
    8964             :       // op: p
    8965           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8966           6 :       Value |= (op & UINT64_C(15)) << 28;
    8967             :       // op: Rt
    8968           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8969           6 :       Value |= op & UINT64_C(15);
    8970             :       // op: addr
    8971           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8972           6 :       Value |= (op & UINT64_C(15)) << 16;
    8973           6 :       break;
    8974             :     }
    8975             :     case ARM::VCVTSD:
    8976             :     case ARM::VJCVT:
    8977             :     case ARM::VTOSIRD:
    8978             :     case ARM::VTOSIZD:
    8979             :     case ARM::VTOUIRD:
    8980             :     case ARM::VTOUIZD: {
    8981             :       // op: p
    8982          10 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    8983          10 :       Value |= (op & UINT64_C(15)) << 28;
    8984             :       // op: Sd
    8985          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    8986          10 :       Value |= (op & UINT64_C(1)) << 22;
    8987          10 :       Value |= (op & UINT64_C(30)) << 11;
    8988             :       // op: Dm
    8989          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    8990          10 :       Value |= (op & UINT64_C(16)) << 1;
    8991          10 :       Value |= op & UINT64_C(15);
    8992          20 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    8993          10 :       break;
    8994             :     }
    8995             :     case ARM::VABSH:
    8996             :     case ARM::VABSS:
    8997             :     case ARM::VCMPEH:
    8998             :     case ARM::VCMPES:
    8999             :     case ARM::VCMPH:
    9000             :     case ARM::VCMPS:
    9001             :     case ARM::VCVTBHS:
    9002             :     case ARM::VCVTBSH:
    9003             :     case ARM::VCVTTHS:
    9004             :     case ARM::VCVTTSH:
    9005             :     case ARM::VMOVS:
    9006             :     case ARM::VNEGH:
    9007             :     case ARM::VNEGS:
    9008             :     case ARM::VRINTRH:
    9009             :     case ARM::VRINTRS:
    9010             :     case ARM::VRINTXH:
    9011             :     case ARM::VRINTXS:
    9012             :     case ARM::VRINTZH:
    9013             :     case ARM::VRINTZS:
    9014             :     case ARM::VSITOH:
    9015             :     case ARM::VSITOS:
    9016             :     case ARM::VSQRTH:
    9017             :     case ARM::VSQRTS:
    9018             :     case ARM::VTOSIRH:
    9019             :     case ARM::VTOSIRS:
    9020             :     case ARM::VTOSIZH:
    9021             :     case ARM::VTOSIZS:
    9022             :     case ARM::VTOUIRH:
    9023             :     case ARM::VTOUIRS:
    9024             :     case ARM::VTOUIZH:
    9025             :     case ARM::VTOUIZS:
    9026             :     case ARM::VUITOH:
    9027             :     case ARM::VUITOS: {
    9028             :       // op: p
    9029         207 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9030         207 :       Value |= (op & UINT64_C(15)) << 28;
    9031             :       // op: Sd
    9032         207 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9033         207 :       Value |= (op & UINT64_C(1)) << 22;
    9034         207 :       Value |= (op & UINT64_C(30)) << 11;
    9035             :       // op: Sm
    9036         207 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9037         207 :       Value |= (op & UINT64_C(1)) << 5;
    9038         207 :       Value |= (op & UINT64_C(30)) >> 1;
    9039         414 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9040         207 :       break;
    9041             :     }
    9042             :     case ARM::FCONSTH:
    9043             :     case ARM::FCONSTS: {
    9044             :       // op: p
    9045          49 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9046          49 :       Value |= (op & UINT64_C(15)) << 28;
    9047             :       // op: Sd
    9048          49 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9049          49 :       Value |= (op & UINT64_C(1)) << 22;
    9050          49 :       Value |= (op & UINT64_C(30)) << 11;
    9051             :       // op: imm
    9052          49 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9053          49 :       Value |= (op & UINT64_C(240)) << 12;
    9054          49 :       Value |= op & UINT64_C(15);
    9055          98 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9056          49 :       break;
    9057             :     }
    9058             :     case ARM::VCVTDS: {
    9059             :       // op: p
    9060           2 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9061           2 :       Value |= (op & UINT64_C(15)) << 28;
    9062             :       // op: Sm
    9063           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9064           2 :       Value |= (op & UINT64_C(1)) << 5;
    9065           2 :       Value |= (op & UINT64_C(30)) >> 1;
    9066             :       // op: Dd
    9067           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9068           2 :       Value |= (op & UINT64_C(16)) << 18;
    9069           2 :       Value |= (op & UINT64_C(15)) << 12;
    9070           4 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9071           2 :       break;
    9072             :     }
    9073             :     case ARM::VMOVHR:
    9074             :     case ARM::VMOVSR: {
    9075             :       // op: p
    9076          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9077          24 :       Value |= (op & UINT64_C(15)) << 28;
    9078             :       // op: Sn
    9079          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9080          24 :       Value |= (op & UINT64_C(30)) << 15;
    9081          24 :       Value |= (op & UINT64_C(1)) << 7;
    9082             :       // op: Rt
    9083          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9084          24 :       Value |= (op & UINT64_C(15)) << 12;
    9085          48 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9086          24 :       break;
    9087             :     }
    9088             :     case ARM::MSRbanked: {
    9089             :       // op: p
    9090          33 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9091          33 :       Value |= (op & UINT64_C(15)) << 28;
    9092             :       // op: banked
    9093          33 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9094          33 :       Value |= (op & UINT64_C(32)) << 17;
    9095          33 :       Value |= (op & UINT64_C(15)) << 16;
    9096          33 :       Value |= (op & UINT64_C(16)) << 4;
    9097             :       // op: Rn
    9098          33 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9099          33 :       Value |= op & UINT64_C(15);
    9100          33 :       break;
    9101             :     }
    9102             :     case ARM::MRSbanked: {
    9103             :       // op: p
    9104          33 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9105          33 :       Value |= (op & UINT64_C(15)) << 28;
    9106             :       // op: banked
    9107          33 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9108          33 :       Value |= (op & UINT64_C(32)) << 17;
    9109          33 :       Value |= (op & UINT64_C(15)) << 16;
    9110          33 :       Value |= (op & UINT64_C(16)) << 4;
    9111             :       // op: Rd
    9112          33 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9113          33 :       Value |= (op & UINT64_C(15)) << 12;
    9114          33 :       break;
    9115             :     }
    9116             :     case ARM::MSR: {
    9117             :       // op: p
    9118          29 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9119          29 :       Value |= (op & UINT64_C(15)) << 28;
    9120             :       // op: mask
    9121          29 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9122          29 :       Value |= (op & UINT64_C(16)) << 18;
    9123          29 :       Value |= (op & UINT64_C(15)) << 16;
    9124             :       // op: Rn
    9125          29 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9126          29 :       Value |= op & UINT64_C(15);
    9127          29 :       break;
    9128             :     }
    9129             :     case ARM::MSRi: {
    9130             :       // op: p
    9131          46 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9132          46 :       Value |= (op & UINT64_C(15)) << 28;
    9133             :       // op: mask
    9134          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9135          46 :       Value |= (op & UINT64_C(16)) << 18;
    9136          46 :       Value |= (op & UINT64_C(15)) << 16;
    9137             :       // op: imm
    9138          46 :       op = getModImmOpValue(MI, 1, Fixups, STI);
    9139          46 :       Value |= op & UINT64_C(4095);
    9140          46 :       break;
    9141             :     }
    9142             :     case ARM::LDMDA_UPD:
    9143             :     case ARM::LDMDB_UPD:
    9144             :     case ARM::LDMIA_UPD:
    9145             :     case ARM::LDMIB_UPD:
    9146             :     case ARM::STMDA_UPD:
    9147             :     case ARM::STMDB_UPD:
    9148             :     case ARM::STMIA_UPD:
    9149             :     case ARM::STMIB_UPD:
    9150             :     case ARM::sysLDMDA_UPD:
    9151             :     case ARM::sysLDMDB_UPD:
    9152             :     case ARM::sysLDMIA_UPD:
    9153             :     case ARM::sysLDMIB_UPD:
    9154             :     case ARM::sysSTMDA_UPD:
    9155             :     case ARM::sysSTMDB_UPD:
    9156             :     case ARM::sysSTMIA_UPD:
    9157             :     case ARM::sysSTMIB_UPD: {
    9158             :       // op: p
    9159         455 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9160         455 :       Value |= (op & UINT64_C(15)) << 28;
    9161             :       // op: regs
    9162         455 :       op = getRegisterListOpValue(MI, 4, Fixups, STI);
    9163         455 :       Value |= op & UINT64_C(65535);
    9164             :       // op: Rn
    9165         455 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9166         455 :       Value |= (op & UINT64_C(15)) << 16;
    9167         455 :       break;
    9168             :     }
    9169             :     case ARM::MOVr:
    9170             :     case ARM::MOVr_TC:
    9171             :     case ARM::MVNr: {
    9172             :       // op: p
    9173         805 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9174         805 :       Value |= (op & UINT64_C(15)) << 28;
    9175             :       // op: s
    9176         805 :       op = getCCOutOpValue(MI, 4, Fixups, STI);
    9177         805 :       Value |= (op & UINT64_C(1)) << 20;
    9178             :       // op: Rd
    9179         805 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9180         805 :       Value |= (op & UINT64_C(15)) << 12;
    9181             :       // op: Rm
    9182         805 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9183         805 :       Value |= op & UINT64_C(15);
    9184         805 :       break;
    9185             :     }
    9186             :     case ARM::MOVi:
    9187             :     case ARM::MVNi: {
    9188             :       // op: p
    9189         518 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9190         518 :       Value |= (op & UINT64_C(15)) << 28;
    9191             :       // op: s
    9192         518 :       op = getCCOutOpValue(MI, 4, Fixups, STI);
    9193         518 :       Value |= (op & UINT64_C(1)) << 20;
    9194             :       // op: Rd
    9195         518 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9196         518 :       Value |= (op & UINT64_C(15)) << 12;
    9197             :       // op: imm
    9198         518 :       op = getModImmOpValue(MI, 1, Fixups, STI);
    9199         518 :       Value |= op & UINT64_C(4095);
    9200         518 :       break;
    9201             :     }
    9202             :     case ARM::VADDD:
    9203             :     case ARM::VDIVD:
    9204             :     case ARM::VMULD:
    9205             :     case ARM::VNMULD:
    9206             :     case ARM::VSUBD: {
    9207             :       // op: p
    9208          10 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9209          10 :       Value |= (op & UINT64_C(15)) << 28;
    9210             :       // op: Dd
    9211          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9212          10 :       Value |= (op & UINT64_C(16)) << 18;
    9213          10 :       Value |= (op & UINT64_C(15)) << 12;
    9214             :       // op: Dn
    9215          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9216          10 :       Value |= (op & UINT64_C(15)) << 16;
    9217          10 :       Value |= (op & UINT64_C(16)) << 3;
    9218             :       // op: Dm
    9219          10 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9220          10 :       Value |= (op & UINT64_C(16)) << 1;
    9221          10 :       Value |= op & UINT64_C(15);
    9222          20 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9223          10 :       break;
    9224             :     }
    9225             :     case ARM::VLDRD:
    9226             :     case ARM::VSTRD: {
    9227             :       // op: p
    9228          15 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9229          15 :       Value |= (op & UINT64_C(15)) << 28;
    9230             :       // op: Dd
    9231          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9232          15 :       Value |= (op & UINT64_C(16)) << 18;
    9233          15 :       Value |= (op & UINT64_C(15)) << 12;
    9234             :       // op: addr
    9235          15 :       op = getAddrMode5OpValue(MI, 1, Fixups, STI);
    9236          15 :       Value |= (op & UINT64_C(256)) << 15;
    9237          15 :       Value |= (op & UINT64_C(7680)) << 7;
    9238          15 :       Value |= op & UINT64_C(255);
    9239          30 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9240          15 :       break;
    9241             :     }
    9242             :     case ARM::VMOVDRR: {
    9243             :       // op: p
    9244          15 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9245          15 :       Value |= (op & UINT64_C(15)) << 28;
    9246             :       // op: Dm
    9247          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9248          15 :       Value |= (op & UINT64_C(16)) << 1;
    9249          15 :       Value |= op & UINT64_C(15);
    9250             :       // op: Rt
    9251          15 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9252          15 :       Value |= (op & UINT64_C(15)) << 12;
    9253             :       // op: Rt2
    9254          15 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9255          15 :       Value |= (op & UINT64_C(15)) << 16;
    9256          30 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9257          15 :       break;
    9258             :     }
    9259             :     case ARM::VMOVRRD: {
    9260             :       // op: p
    9261           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9262           8 :       Value |= (op & UINT64_C(15)) << 28;
    9263             :       // op: Dm
    9264           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9265           8 :       Value |= (op & UINT64_C(16)) << 1;
    9266           8 :       Value |= op & UINT64_C(15);
    9267             :       // op: Rt
    9268           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9269           8 :       Value |= (op & UINT64_C(15)) << 12;
    9270             :       // op: Rt2
    9271           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9272           8 :       Value |= (op & UINT64_C(15)) << 16;
    9273          16 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9274           8 :       break;
    9275             :     }
    9276             :     case ARM::SXTB:
    9277             :     case ARM::SXTB16:
    9278             :     case ARM::SXTH:
    9279             :     case ARM::UXTB:
    9280             :     case ARM::UXTB16:
    9281             :     case ARM::UXTH: {
    9282             :       // op: p
    9283          60 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9284          60 :       Value |= (op & UINT64_C(15)) << 28;
    9285             :       // op: Rd
    9286          60 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9287          60 :       Value |= (op & UINT64_C(15)) << 12;
    9288             :       // op: Rm
    9289          60 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9290          60 :       Value |= op & UINT64_C(15);
    9291             :       // op: rot
    9292          60 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9293          60 :       Value |= (op & UINT64_C(3)) << 10;
    9294          60 :       break;
    9295             :     }
    9296             :     case ARM::SEL: {
    9297             :       // op: p
    9298           4 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9299           4 :       Value |= (op & UINT64_C(15)) << 28;
    9300             :       // op: Rd
    9301           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9302           4 :       Value |= (op & UINT64_C(15)) << 12;
    9303             :       // op: Rn
    9304           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9305           4 :       Value |= (op & UINT64_C(15)) << 16;
    9306             :       // op: Rm
    9307           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9308           4 :       Value |= op & UINT64_C(15);
    9309           4 :       break;
    9310             :     }
    9311             :     case ARM::BFC: {
    9312             :       // op: p
    9313          30 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9314          30 :       Value |= (op & UINT64_C(15)) << 28;
    9315             :       // op: Rd
    9316          30 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9317          30 :       Value |= (op & UINT64_C(15)) << 12;
    9318             :       // op: imm
    9319          30 :       op = getBitfieldInvertedMaskOpValue(MI, 2, Fixups, STI);
    9320          30 :       Value |= (op & UINT64_C(992)) << 11;
    9321          30 :       Value |= (op & UINT64_C(31)) << 7;
    9322          30 :       break;
    9323             :     }
    9324             :     case ARM::MOVTi16: {
    9325             :       // op: p
    9326         201 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9327         201 :       Value |= (op & UINT64_C(15)) << 28;
    9328             :       // op: Rd
    9329         201 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9330         201 :       Value |= (op & UINT64_C(15)) << 12;
    9331             :       // op: imm
    9332         201 :       op = getHiLo16ImmOpValue(MI, 2, Fixups, STI);
    9333         201 :       Value |= (op & UINT64_C(61440)) << 4;
    9334         201 :       Value |= op & UINT64_C(4095);
    9335         201 :       break;
    9336             :     }
    9337             :     case ARM::SSAT16:
    9338             :     case ARM::USAT16: {
    9339             :       // op: p
    9340          11 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9341          11 :       Value |= (op & UINT64_C(15)) << 28;
    9342             :       // op: Rd
    9343          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9344          11 :       Value |= (op & UINT64_C(15)) << 12;
    9345             :       // op: sat_imm
    9346          11 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9347          11 :       Value |= (op & UINT64_C(15)) << 16;
    9348             :       // op: Rn
    9349          11 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9350          11 :       Value |= op & UINT64_C(15);
    9351          11 :       break;
    9352             :     }
    9353             :     case ARM::SDIV:
    9354             :     case ARM::SMMUL:
    9355             :     case ARM::SMMULR:
    9356             :     case ARM::UDIV:
    9357             :     case ARM::USAD8: {
    9358             :       // op: p
    9359          26 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9360          26 :       Value |= (op & UINT64_C(15)) << 28;
    9361             :       // op: Rd
    9362          26 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9363          26 :       Value |= (op & UINT64_C(15)) << 16;
    9364             :       // op: Rn
    9365          26 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9366          26 :       Value |= op & UINT64_C(15);
    9367             :       // op: Rm
    9368          26 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9369          26 :       Value |= (op & UINT64_C(15)) << 8;
    9370          26 :       break;
    9371             :     }
    9372             :     case ARM::CMNzrsi:
    9373             :     case ARM::CMPrsi:
    9374             :     case ARM::TEQrsi:
    9375             :     case ARM::TSTrsi: {
    9376             :       // op: p
    9377          52 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9378          52 :       Value |= (op & UINT64_C(15)) << 28;
    9379             :       // op: Rn
    9380          52 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9381          52 :       Value |= (op & UINT64_C(15)) << 16;
    9382             :       // op: shift
    9383          52 :       op = getSORegImmOpValue(MI, 1, Fixups, STI);
    9384          52 :       Value |= op & UINT64_C(4064);
    9385          52 :       Value |= op & UINT64_C(15);
    9386          52 :       break;
    9387             :     }
    9388             :     case ARM::QADD16:
    9389             :     case ARM::QADD8:
    9390             :     case ARM::QASX:
    9391             :     case ARM::QSAX:
    9392             :     case ARM::QSUB16:
    9393             :     case ARM::QSUB8:
    9394             :     case ARM::SADD16:
    9395             :     case ARM::SADD8:
    9396             :     case ARM::SASX:
    9397             :     case ARM::SHADD16:
    9398             :     case ARM::SHADD8:
    9399             :     case ARM::SHASX:
    9400             :     case ARM::SHSAX:
    9401             :     case ARM::SHSUB16:
    9402             :     case ARM::SHSUB8:
    9403             :     case ARM::SSAX:
    9404             :     case ARM::SSUB16:
    9405             :     case ARM::SSUB8:
    9406             :     case ARM::UADD16:
    9407             :     case ARM::UADD8:
    9408             :     case ARM::UASX:
    9409             :     case ARM::UHADD16:
    9410             :     case ARM::UHADD8:
    9411             :     case ARM::UHASX:
    9412             :     case ARM::UHSAX:
    9413             :     case ARM::UHSUB16:
    9414             :     case ARM::UHSUB8:
    9415             :     case ARM::UQADD16:
    9416             :     case ARM::UQADD8:
    9417             :     case ARM::UQASX:
    9418             :     case ARM::UQSAX:
    9419             :     case ARM::UQSUB16:
    9420             :     case ARM::UQSUB8:
    9421             :     case ARM::USAX:
    9422             :     case ARM::USUB16:
    9423             :     case ARM::USUB8: {
    9424             :       // op: p
    9425         132 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9426         132 :       Value |= (op & UINT64_C(15)) << 28;
    9427             :       // op: Rn
    9428         132 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9429         132 :       Value |= (op & UINT64_C(15)) << 16;
    9430             :       // op: Rd
    9431         132 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9432         132 :       Value |= (op & UINT64_C(15)) << 12;
    9433             :       // op: Rm
    9434         132 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9435         132 :       Value |= op & UINT64_C(15);
    9436         132 :       break;
    9437             :     }
    9438             :     case ARM::SMUAD:
    9439             :     case ARM::SMUADX:
    9440             :     case ARM::SMULBB:
    9441             :     case ARM::SMULBT:
    9442             :     case ARM::SMULTB:
    9443             :     case ARM::SMULTT:
    9444             :     case ARM::SMULWB:
    9445             :     case ARM::SMULWT:
    9446             :     case ARM::SMUSD:
    9447             :     case ARM::SMUSDX: {
    9448             :       // op: p
    9449          36 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9450          36 :       Value |= (op & UINT64_C(15)) << 28;
    9451             :       // op: Rn
    9452          36 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9453          36 :       Value |= op & UINT64_C(15);
    9454             :       // op: Rm
    9455          36 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9456          36 :       Value |= (op & UINT64_C(15)) << 8;
    9457             :       // op: Rd
    9458          36 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9459          36 :       Value |= (op & UINT64_C(15)) << 16;
    9460          36 :       break;
    9461             :     }
    9462             :     case ARM::QADD:
    9463             :     case ARM::QDADD:
    9464             :     case ARM::QDSUB:
    9465             :     case ARM::QSUB: {
    9466             :       // op: p
    9467          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9468          16 :       Value |= (op & UINT64_C(15)) << 28;
    9469             :       // op: Rn
    9470          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9471          16 :       Value |= (op & UINT64_C(15)) << 16;
    9472             :       // op: Rd
    9473          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9474          16 :       Value |= (op & UINT64_C(15)) << 12;
    9475             :       // op: Rm
    9476          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9477          16 :       Value |= op & UINT64_C(15);
    9478          16 :       break;
    9479             :     }
    9480             :     case ARM::SWP:
    9481             :     case ARM::SWPB: {
    9482             :       // op: p
    9483           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9484           6 :       Value |= (op & UINT64_C(15)) << 28;
    9485             :       // op: Rt
    9486           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9487           6 :       Value |= (op & UINT64_C(15)) << 12;
    9488             :       // op: Rt2
    9489           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9490           6 :       Value |= op & UINT64_C(15);
    9491             :       // op: addr
    9492           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9493           6 :       Value |= (op & UINT64_C(15)) << 16;
    9494           6 :       break;
    9495             :     }
    9496             :     case ARM::LDRBi12:
    9497             :     case ARM::LDRi12:
    9498             :     case ARM::STRBi12:
    9499             :     case ARM::STRi12: {
    9500             :       // op: p
    9501        1915 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9502        1915 :       Value |= (op & UINT64_C(15)) << 28;
    9503             :       // op: Rt
    9504        1915 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9505        1915 :       Value |= (op & UINT64_C(15)) << 12;
    9506             :       // op: addr
    9507        1915 :       op = getAddrModeImm12OpValue(MI, 1, Fixups, STI);
    9508        1915 :       Value |= (op & UINT64_C(4096)) << 11;
    9509        1915 :       Value |= (op & UINT64_C(122880)) << 3;
    9510        1915 :       Value |= op & UINT64_C(4095);
    9511        1915 :       break;
    9512             :     }
    9513             :     case ARM::LDRcp: {
    9514             :       // op: p
    9515           0 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9516           0 :       Value |= (op & UINT64_C(15)) << 28;
    9517             :       // op: Rt
    9518           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9519           0 :       Value |= (op & UINT64_C(15)) << 12;
    9520             :       // op: addr
    9521           0 :       op = getAddrModeImm12OpValue(MI, 1, Fixups, STI);
    9522           0 :       Value |= (op & UINT64_C(4096)) << 11;
    9523           0 :       Value |= op & UINT64_C(4095);
    9524           0 :       break;
    9525             :     }
    9526             :     case ARM::STLEX:
    9527             :     case ARM::STLEXB:
    9528             :     case ARM::STLEXD:
    9529             :     case ARM::STLEXH:
    9530             :     case ARM::STREX:
    9531             :     case ARM::STREXB:
    9532             :     case ARM::STREXD:
    9533             :     case ARM::STREXH: {
    9534             :       // op: p
    9535          21 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9536          21 :       Value |= (op & UINT64_C(15)) << 28;
    9537             :       // op: Rt
    9538          21 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9539          21 :       Value |= op & UINT64_C(15);
    9540             :       // op: addr
    9541          21 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9542          21 :       Value |= (op & UINT64_C(15)) << 16;
    9543             :       // op: Rd
    9544          21 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9545          21 :       Value |= (op & UINT64_C(15)) << 12;
    9546          21 :       break;
    9547             :     }
    9548             :     case ARM::VADDH:
    9549             :     case ARM::VADDS:
    9550             :     case ARM::VDIVH:
    9551             :     case ARM::VDIVS:
    9552             :     case ARM::VMULH:
    9553             :     case ARM::VMULS:
    9554             :     case ARM::VNMULH:
    9555             :     case ARM::VNMULS:
    9556             :     case ARM::VSUBH:
    9557             :     case ARM::VSUBS: {
    9558             :       // op: p
    9559          31 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9560          31 :       Value |= (op & UINT64_C(15)) << 28;
    9561             :       // op: Sd
    9562          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9563          31 :       Value |= (op & UINT64_C(1)) << 22;
    9564          31 :       Value |= (op & UINT64_C(30)) << 11;
    9565             :       // op: Sn
    9566          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9567          31 :       Value |= (op & UINT64_C(30)) << 15;
    9568          31 :       Value |= (op & UINT64_C(1)) << 7;
    9569             :       // op: Sm
    9570          31 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9571          31 :       Value |= (op & UINT64_C(1)) << 5;
    9572          31 :       Value |= (op & UINT64_C(30)) >> 1;
    9573          62 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9574          31 :       break;
    9575             :     }
    9576             :     case ARM::VLDRH:
    9577             :     case ARM::VSTRH: {
    9578             :       // op: p
    9579          32 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9580          32 :       Value |= (op & UINT64_C(15)) << 28;
    9581             :       // op: Sd
    9582          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9583          32 :       Value |= (op & UINT64_C(1)) << 22;
    9584          32 :       Value |= (op & UINT64_C(30)) << 11;
    9585             :       // op: addr
    9586          32 :       op = getAddrMode5FP16OpValue(MI, 1, Fixups, STI);
    9587          32 :       Value |= (op & UINT64_C(256)) << 15;
    9588          32 :       Value |= (op & UINT64_C(7680)) << 7;
    9589          32 :       Value |= op & UINT64_C(255);
    9590          64 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9591          32 :       break;
    9592             :     }
    9593             :     case ARM::VLDRS:
    9594             :     case ARM::VSTRS: {
    9595             :       // op: p
    9596         281 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9597         281 :       Value |= (op & UINT64_C(15)) << 28;
    9598             :       // op: Sd
    9599         281 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9600         281 :       Value |= (op & UINT64_C(1)) << 22;
    9601         281 :       Value |= (op & UINT64_C(30)) << 11;
    9602             :       // op: addr
    9603         281 :       op = getAddrMode5OpValue(MI, 1, Fixups, STI);
    9604         281 :       Value |= (op & UINT64_C(256)) << 15;
    9605         281 :       Value |= (op & UINT64_C(7680)) << 7;
    9606         281 :       Value |= op & UINT64_C(255);
    9607         562 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9608         281 :       break;
    9609             :     }
    9610             :     case ARM::VSHTOH:
    9611             :     case ARM::VSHTOS:
    9612             :     case ARM::VSLTOH:
    9613             :     case ARM::VSLTOS:
    9614             :     case ARM::VTOSHH:
    9615             :     case ARM::VTOSHS:
    9616             :     case ARM::VTOSLH:
    9617             :     case ARM::VTOSLS:
    9618             :     case ARM::VTOUHH:
    9619             :     case ARM::VTOUHS:
    9620             :     case ARM::VTOULH:
    9621             :     case ARM::VTOULS:
    9622             :     case ARM::VUHTOH:
    9623             :     case ARM::VUHTOS:
    9624             :     case ARM::VULTOH:
    9625             :     case ARM::VULTOS: {
    9626             :       // op: p
    9627          40 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9628          40 :       Value |= (op & UINT64_C(15)) << 28;
    9629             :       // op: fbits
    9630          40 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9631          40 :       Value |= (op & UINT64_C(1)) << 5;
    9632          40 :       Value |= (op & UINT64_C(30)) >> 1;
    9633             :       // op: dst
    9634          40 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9635          40 :       Value |= (op & UINT64_C(1)) << 22;
    9636          40 :       Value |= (op & UINT64_C(30)) << 11;
    9637          80 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9638          40 :       break;
    9639             :     }
    9640             :     case ARM::VSHTOD:
    9641             :     case ARM::VSLTOD:
    9642             :     case ARM::VTOSHD:
    9643             :     case ARM::VTOSLD:
    9644             :     case ARM::VTOUHD:
    9645             :     case ARM::VTOULD:
    9646             :     case ARM::VUHTOD:
    9647             :     case ARM::VULTOD: {
    9648             :       // op: p
    9649           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9650           8 :       Value |= (op & UINT64_C(15)) << 28;
    9651             :       // op: fbits
    9652           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9653           8 :       Value |= (op & UINT64_C(1)) << 5;
    9654           8 :       Value |= (op & UINT64_C(30)) >> 1;
    9655             :       // op: dst
    9656           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9657           8 :       Value |= (op & UINT64_C(16)) << 18;
    9658           8 :       Value |= (op & UINT64_C(15)) << 12;
    9659          16 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9660           8 :       break;
    9661             :     }
    9662             :     case ARM::ADCrr:
    9663             :     case ARM::ADDrr:
    9664             :     case ARM::ANDrr:
    9665             :     case ARM::BICrr:
    9666             :     case ARM::EORrr:
    9667             :     case ARM::ORRrr:
    9668             :     case ARM::RSBrr:
    9669             :     case ARM::RSCrr:
    9670             :     case ARM::SBCrr:
    9671             :     case ARM::SUBrr: {
    9672             :       // op: p
    9673         164 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9674         164 :       Value |= (op & UINT64_C(15)) << 28;
    9675             :       // op: s
    9676         164 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
    9677         164 :       Value |= (op & UINT64_C(1)) << 20;
    9678             :       // op: Rd
    9679         164 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9680         164 :       Value |= (op & UINT64_C(15)) << 12;
    9681             :       // op: Rn
    9682         164 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9683         164 :       Value |= (op & UINT64_C(15)) << 16;
    9684             :       // op: Rm
    9685         164 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9686         164 :       Value |= op & UINT64_C(15);
    9687         164 :       break;
    9688             :     }
    9689             :     case ARM::ADCri:
    9690             :     case ARM::ADDri:
    9691             :     case ARM::ANDri:
    9692             :     case ARM::BICri:
    9693             :     case ARM::EORri:
    9694             :     case ARM::ORRri:
    9695             :     case ARM::RSBri:
    9696             :     case ARM::RSCri:
    9697             :     case ARM::SBCri:
    9698             :     case ARM::SUBri: {
    9699             :       // op: p
    9700        2288 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9701        2288 :       Value |= (op & UINT64_C(15)) << 28;
    9702             :       // op: s
    9703        2288 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
    9704        2288 :       Value |= (op & UINT64_C(1)) << 20;
    9705             :       // op: Rd
    9706        2288 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9707        2288 :       Value |= (op & UINT64_C(15)) << 12;
    9708             :       // op: Rn
    9709        2288 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9710        2288 :       Value |= (op & UINT64_C(15)) << 16;
    9711             :       // op: imm
    9712        2288 :       op = getModImmOpValue(MI, 2, Fixups, STI);
    9713        2288 :       Value |= op & UINT64_C(4095);
    9714        2288 :       break;
    9715             :     }
    9716             :     case ARM::MVNsi: {
    9717             :       // op: p
    9718          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9719          12 :       Value |= (op & UINT64_C(15)) << 28;
    9720             :       // op: s
    9721          12 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
    9722          12 :       Value |= (op & UINT64_C(1)) << 20;
    9723             :       // op: Rd
    9724          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9725          12 :       Value |= (op & UINT64_C(15)) << 12;
    9726             :       // op: shift
    9727          12 :       op = getSORegImmOpValue(MI, 1, Fixups, STI);
    9728          12 :       Value |= op & UINT64_C(4064);
    9729          12 :       Value |= op & UINT64_C(15);
    9730          12 :       break;
    9731             :     }
    9732             :     case ARM::MOVsi: {
    9733             :       // op: p
    9734          42 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9735          42 :       Value |= (op & UINT64_C(15)) << 28;
    9736             :       // op: s
    9737          42 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
    9738          42 :       Value |= (op & UINT64_C(1)) << 20;
    9739             :       // op: Rd
    9740          42 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9741          42 :       Value |= (op & UINT64_C(15)) << 12;
    9742             :       // op: src
    9743          42 :       op = getSORegImmOpValue(MI, 1, Fixups, STI);
    9744          42 :       Value |= op & UINT64_C(4064);
    9745          42 :       Value |= op & UINT64_C(15);
    9746          42 :       break;
    9747             :     }
    9748             :     case ARM::MUL: {
    9749             :       // op: p
    9750          15 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9751          15 :       Value |= (op & UINT64_C(15)) << 28;
    9752             :       // op: s
    9753          15 :       op = getCCOutOpValue(MI, 5, Fixups, STI);
    9754          15 :       Value |= (op & UINT64_C(1)) << 20;
    9755             :       // op: Rd
    9756          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9757          15 :       Value |= (op & UINT64_C(15)) << 16;
    9758             :       // op: Rm
    9759          15 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9760          15 :       Value |= (op & UINT64_C(15)) << 8;
    9761             :       // op: Rn
    9762          15 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9763          15 :       Value |= op & UINT64_C(15);
    9764          15 :       break;
    9765             :     }
    9766             :     case ARM::VFMAD:
    9767             :     case ARM::VFMSD:
    9768             :     case ARM::VFNMAD:
    9769             :     case ARM::VFNMSD:
    9770             :     case ARM::VMLAD:
    9771             :     case ARM::VMLSD:
    9772             :     case ARM::VNMLAD:
    9773             :     case ARM::VNMLSD: {
    9774             :       // op: p
    9775          12 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9776          12 :       Value |= (op & UINT64_C(15)) << 28;
    9777             :       // op: Dd
    9778          12 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9779          12 :       Value |= (op & UINT64_C(16)) << 18;
    9780          12 :       Value |= (op & UINT64_C(15)) << 12;
    9781             :       // op: Dn
    9782          12 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9783          12 :       Value |= (op & UINT64_C(15)) << 16;
    9784          12 :       Value |= (op & UINT64_C(16)) << 3;
    9785             :       // op: Dm
    9786          12 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9787          12 :       Value |= (op & UINT64_C(16)) << 1;
    9788          12 :       Value |= op & UINT64_C(15);
    9789          24 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
    9790          12 :       break;
    9791             :     }
    9792             :     case ARM::SXTAB:
    9793             :     case ARM::SXTAB16:
    9794             :     case ARM::SXTAH:
    9795             :     case ARM::UXTAB:
    9796             :     case ARM::UXTAB16:
    9797             :     case ARM::UXTAH: {
    9798             :       // op: p
    9799          60 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9800          60 :       Value |= (op & UINT64_C(15)) << 28;
    9801             :       // op: Rd
    9802          60 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9803          60 :       Value |= (op & UINT64_C(15)) << 12;
    9804             :       // op: Rm
    9805          60 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9806          60 :       Value |= op & UINT64_C(15);
    9807             :       // op: Rn
    9808          60 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9809          60 :       Value |= (op & UINT64_C(15)) << 16;
    9810             :       // op: rot
    9811          60 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9812          60 :       Value |= (op & UINT64_C(3)) << 10;
    9813          60 :       break;
    9814             :     }
    9815             :     case ARM::PKHBT:
    9816             :     case ARM::PKHTB: {
    9817             :       // op: p
    9818          14 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9819          14 :       Value |= (op & UINT64_C(15)) << 28;
    9820             :       // op: Rd
    9821          14 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9822          14 :       Value |= (op & UINT64_C(15)) << 12;
    9823             :       // op: Rn
    9824          14 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9825          14 :       Value |= (op & UINT64_C(15)) << 16;
    9826             :       // op: Rm
    9827          14 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9828          14 :       Value |= op & UINT64_C(15);
    9829             :       // op: sh
    9830          14 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9831          14 :       Value |= (op & UINT64_C(31)) << 7;
    9832          14 :       break;
    9833             :     }
    9834             :     case ARM::SBFX:
    9835             :     case ARM::UBFX: {
    9836             :       // op: p
    9837           8 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9838           8 :       Value |= (op & UINT64_C(15)) << 28;
    9839             :       // op: Rd
    9840           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9841           8 :       Value |= (op & UINT64_C(15)) << 12;
    9842             :       // op: Rn
    9843           8 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9844           8 :       Value |= op & UINT64_C(15);
    9845             :       // op: lsb
    9846           8 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9847           8 :       Value |= (op & UINT64_C(31)) << 7;
    9848             :       // op: width
    9849           8 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9850           8 :       Value |= (op & UINT64_C(31)) << 16;
    9851           8 :       break;
    9852             :     }
    9853             :     case ARM::BFI: {
    9854             :       // op: p
    9855           7 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9856           7 :       Value |= (op & UINT64_C(15)) << 28;
    9857             :       // op: Rd
    9858           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9859           7 :       Value |= (op & UINT64_C(15)) << 12;
    9860             :       // op: Rn
    9861           7 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9862           7 :       Value |= op & UINT64_C(15);
    9863             :       // op: imm
    9864           7 :       op = getBitfieldInvertedMaskOpValue(MI, 3, Fixups, STI);
    9865           7 :       Value |= (op & UINT64_C(992)) << 11;
    9866           7 :       Value |= (op & UINT64_C(31)) << 7;
    9867           7 :       break;
    9868             :     }
    9869             :     case ARM::SSAT:
    9870             :     case ARM::USAT: {
    9871             :       // op: p
    9872          20 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9873          20 :       Value |= (op & UINT64_C(15)) << 28;
    9874             :       // op: Rd
    9875          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9876          20 :       Value |= (op & UINT64_C(15)) << 12;
    9877             :       // op: sat_imm
    9878          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9879          20 :       Value |= (op & UINT64_C(31)) << 16;
    9880             :       // op: Rn
    9881          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9882          20 :       Value |= op & UINT64_C(15);
    9883             :       // op: sh
    9884          20 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9885          20 :       Value |= (op & UINT64_C(31)) << 7;
    9886          20 :       Value |= (op & UINT64_C(32)) << 1;
    9887          20 :       break;
    9888             :     }
    9889             :     case ARM::MLS: {
    9890             :       // op: p
    9891           4 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9892           4 :       Value |= (op & UINT64_C(15)) << 28;
    9893             :       // op: Rd
    9894           4 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9895           4 :       Value |= (op & UINT64_C(15)) << 16;
    9896             :       // op: Rm
    9897           4 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9898           4 :       Value |= (op & UINT64_C(15)) << 8;
    9899             :       // op: Rn
    9900           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9901           4 :       Value |= op & UINT64_C(15);
    9902             :       // op: Ra
    9903           4 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9904           4 :       Value |= (op & UINT64_C(15)) << 12;
    9905           4 :       break;
    9906             :     }
    9907             :     case ARM::SMMLA:
    9908             :     case ARM::SMMLAR:
    9909             :     case ARM::SMMLS:
    9910             :     case ARM::SMMLSR:
    9911             :     case ARM::USADA8: {
    9912             :       // op: p
    9913          20 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9914          20 :       Value |= (op & UINT64_C(15)) << 28;
    9915             :       // op: Rd
    9916          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9917          20 :       Value |= (op & UINT64_C(15)) << 16;
    9918             :       // op: Rn
    9919          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9920          20 :       Value |= op & UINT64_C(15);
    9921             :       // op: Rm
    9922          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9923          20 :       Value |= (op & UINT64_C(15)) << 8;
    9924             :       // op: Ra
    9925          20 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9926          20 :       Value |= (op & UINT64_C(15)) << 12;
    9927          20 :       break;
    9928             :     }
    9929             :     case ARM::CMNzrsr:
    9930             :     case ARM::CMPrsr:
    9931             :     case ARM::TEQrsr:
    9932             :     case ARM::TSTrsr: {
    9933             :       // op: p
    9934          32 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9935          32 :       Value |= (op & UINT64_C(15)) << 28;
    9936             :       // op: Rn
    9937          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9938          32 :       Value |= (op & UINT64_C(15)) << 16;
    9939             :       // op: shift
    9940          32 :       op = getSORegRegOpValue(MI, 1, Fixups, STI);
    9941          32 :       Value |= op & UINT64_C(3840);
    9942          32 :       Value |= op & UINT64_C(96);
    9943          32 :       Value |= op & UINT64_C(15);
    9944          32 :       break;
    9945             :     }
    9946             :     case ARM::SMLAD:
    9947             :     case ARM::SMLADX:
    9948             :     case ARM::SMLSD:
    9949             :     case ARM::SMLSDX: {
    9950             :       // op: p
    9951          16 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9952          16 :       Value |= (op & UINT64_C(15)) << 28;
    9953             :       // op: Rn
    9954          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9955          16 :       Value |= op & UINT64_C(15);
    9956             :       // op: Rm
    9957          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9958          16 :       Value |= (op & UINT64_C(15)) << 8;
    9959             :       // op: Ra
    9960          16 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9961          16 :       Value |= (op & UINT64_C(15)) << 12;
    9962             :       // op: Rd
    9963          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9964          16 :       Value |= (op & UINT64_C(15)) << 16;
    9965          16 :       break;
    9966             :     }
    9967             :     case ARM::SMLABB:
    9968             :     case ARM::SMLABT:
    9969             :     case ARM::SMLATB:
    9970             :     case ARM::SMLATT:
    9971             :     case ARM::SMLAWB:
    9972             :     case ARM::SMLAWT: {
    9973             :       // op: p
    9974          24 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9975          24 :       Value |= (op & UINT64_C(15)) << 28;
    9976             :       // op: Rn
    9977          24 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    9978          24 :       Value |= op & UINT64_C(15);
    9979             :       // op: Rm
    9980          24 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    9981          24 :       Value |= (op & UINT64_C(15)) << 8;
    9982             :       // op: Rd
    9983          24 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9984          24 :       Value |= (op & UINT64_C(15)) << 16;
    9985             :       // op: Ra
    9986          24 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    9987          24 :       Value |= (op & UINT64_C(15)) << 12;
    9988          24 :       break;
    9989             :     }
    9990             :     case ARM::LDRB_PRE_IMM:
    9991             :     case ARM::LDR_PRE_IMM: {
    9992             :       // op: p
    9993           2 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
    9994           2 :       Value |= (op & UINT64_C(15)) << 28;
    9995             :       // op: Rt
    9996           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    9997           2 :       Value |= (op & UINT64_C(15)) << 12;
    9998             :       // op: addr
    9999           2 :       op = getAddrModeImm12OpValue(MI, 2, Fixups, STI);
   10000           2 :       Value |= (op & UINT64_C(4096)) << 11;
   10001           2 :       Value |= (op & UINT64_C(122880)) << 3;
   10002           2 :       Value |= op & UINT64_C(4095);
   10003           2 :       break;
   10004             :     }
   10005             :     case ARM::LDRBrs:
   10006             :     case ARM::LDRrs:
   10007             :     case ARM::STRBrs:
   10008             :     case ARM::STRrs: {
   10009             :       // op: p
   10010          46 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10011          46 :       Value |= (op & UINT64_C(15)) << 28;
   10012             :       // op: Rt
   10013          46 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10014          46 :       Value |= (op & UINT64_C(15)) << 12;
   10015             :       // op: shift
   10016          46 :       op = getLdStSORegOpValue(MI, 1, Fixups, STI);
   10017          46 :       Value |= (op & UINT64_C(4096)) << 11;
   10018          46 :       Value |= (op & UINT64_C(122880)) << 3;
   10019          46 :       Value |= op & UINT64_C(4064);
   10020          46 :       Value |= op & UINT64_C(15);
   10021          46 :       break;
   10022             :     }
   10023             :     case ARM::STRB_PRE_IMM:
   10024             :     case ARM::STR_PRE_IMM: {
   10025             :       // op: p
   10026          14 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10027          14 :       Value |= (op & UINT64_C(15)) << 28;
   10028             :       // op: Rt
   10029          14 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10030          14 :       Value |= (op & UINT64_C(15)) << 12;
   10031             :       // op: addr
   10032          14 :       op = getAddrModeImm12OpValue(MI, 2, Fixups, STI);
   10033          14 :       Value |= (op & UINT64_C(4096)) << 11;
   10034          14 :       Value |= (op & UINT64_C(122880)) << 3;
   10035          14 :       Value |= op & UINT64_C(4095);
   10036          14 :       break;
   10037             :     }
   10038             :     case ARM::VFMAH:
   10039             :     case ARM::VFMAS:
   10040             :     case ARM::VFMSH:
   10041             :     case ARM::VFMSS:
   10042             :     case ARM::VFNMAH:
   10043             :     case ARM::VFNMAS:
   10044             :     case ARM::VFNMSH:
   10045             :     case ARM::VFNMSS:
   10046             :     case ARM::VMLAH:
   10047             :     case ARM::VMLAS:
   10048             :     case ARM::VMLSH:
   10049             :     case ARM::VMLSS:
   10050             :     case ARM::VNMLAH:
   10051             :     case ARM::VNMLAS:
   10052             :     case ARM::VNMLSH:
   10053             :     case ARM::VNMLSS: {
   10054             :       // op: p
   10055          53 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10056          53 :       Value |= (op & UINT64_C(15)) << 28;
   10057             :       // op: Sd
   10058          53 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10059          53 :       Value |= (op & UINT64_C(1)) << 22;
   10060          53 :       Value |= (op & UINT64_C(30)) << 11;
   10061             :       // op: Sn
   10062          53 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10063          53 :       Value |= (op & UINT64_C(30)) << 15;
   10064          53 :       Value |= (op & UINT64_C(1)) << 7;
   10065             :       // op: Sm
   10066          53 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10067          53 :       Value |= (op & UINT64_C(1)) << 5;
   10068          53 :       Value |= (op & UINT64_C(30)) >> 1;
   10069         106 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
   10070          53 :       break;
   10071             :     }
   10072             :     case ARM::LDRH:
   10073             :     case ARM::LDRSB:
   10074             :     case ARM::LDRSH:
   10075             :     case ARM::STRH: {
   10076             :       // op: p
   10077          15 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10078          15 :       Value |= (op & UINT64_C(15)) << 28;
   10079             :       // op: addr
   10080          15 :       op = getAddrMode3OpValue(MI, 1, Fixups, STI);
   10081          15 :       Value |= (op & UINT64_C(256)) << 15;
   10082          15 :       Value |= (op & UINT64_C(8192)) << 9;
   10083          15 :       Value |= (op & UINT64_C(7680)) << 7;
   10084          15 :       Value |= (op & UINT64_C(240)) << 4;
   10085          15 :       Value |= op & UINT64_C(15);
   10086             :       // op: Rt
   10087          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10088          15 :       Value |= (op & UINT64_C(15)) << 12;
   10089          15 :       break;
   10090             :     }
   10091             :     case ARM::LDCL_OFFSET:
   10092             :     case ARM::LDCL_PRE:
   10093             :     case ARM::LDC_OFFSET:
   10094             :     case ARM::LDC_PRE:
   10095             :     case ARM::STCL_OFFSET:
   10096             :     case ARM::STCL_PRE:
   10097             :     case ARM::STC_OFFSET:
   10098             :     case ARM::STC_PRE: {
   10099             :       // op: p
   10100          72 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10101          72 :       Value |= (op & UINT64_C(15)) << 28;
   10102             :       // op: addr
   10103          72 :       op = getAddrMode5OpValue(MI, 2, Fixups, STI);
   10104          72 :       Value |= (op & UINT64_C(256)) << 15;
   10105          72 :       Value |= (op & UINT64_C(7680)) << 7;
   10106          72 :       Value |= op & UINT64_C(255);
   10107             :       // op: cop
   10108          72 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10109          72 :       Value |= (op & UINT64_C(15)) << 8;
   10110             :       // op: CRd
   10111          72 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10112          72 :       Value |= (op & UINT64_C(15)) << 12;
   10113          72 :       break;
   10114             :     }
   10115             :     case ARM::LDRHTi:
   10116             :     case ARM::LDRSBTi:
   10117             :     case ARM::LDRSHTi: {
   10118             :       // op: p
   10119          13 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10120          13 :       Value |= (op & UINT64_C(15)) << 28;
   10121             :       // op: addr
   10122          13 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10123          13 :       Value |= (op & UINT64_C(15)) << 16;
   10124             :       // op: Rt
   10125          13 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10126          13 :       Value |= (op & UINT64_C(15)) << 12;
   10127             :       // op: offset
   10128          13 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10129          13 :       Value |= (op & UINT64_C(256)) << 15;
   10130          13 :       Value |= (op & UINT64_C(240)) << 4;
   10131          13 :       Value |= op & UINT64_C(15);
   10132          13 :       break;
   10133             :     }
   10134             :     case ARM::STRHTi: {
   10135             :       // op: p
   10136           3 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10137           3 :       Value |= (op & UINT64_C(15)) << 28;
   10138             :       // op: addr
   10139           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10140           3 :       Value |= (op & UINT64_C(15)) << 16;
   10141             :       // op: Rt
   10142           3 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10143           3 :       Value |= (op & UINT64_C(15)) << 12;
   10144             :       // op: offset
   10145           3 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10146           3 :       Value |= (op & UINT64_C(256)) << 15;
   10147           3 :       Value |= (op & UINT64_C(240)) << 4;
   10148           3 :       Value |= op & UINT64_C(15);
   10149           3 :       break;
   10150             :     }
   10151             :     case ARM::VMOVSRR: {
   10152             :       // op: p
   10153           3 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10154           3 :       Value |= (op & UINT64_C(15)) << 28;
   10155             :       // op: dst1
   10156           3 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10157           3 :       Value |= (op & UINT64_C(1)) << 5;
   10158           3 :       Value |= (op & UINT64_C(30)) >> 1;
   10159             :       // op: src1
   10160           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10161           3 :       Value |= (op & UINT64_C(15)) << 12;
   10162             :       // op: src2
   10163           3 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10164           3 :       Value |= (op & UINT64_C(15)) << 16;
   10165           6 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
   10166           3 :       break;
   10167             :     }
   10168             :     case ARM::LDCL_POST:
   10169             :     case ARM::LDC_POST:
   10170             :     case ARM::STCL_POST:
   10171             :     case ARM::STC_POST: {
   10172             :       // op: p
   10173          32 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10174          32 :       Value |= (op & UINT64_C(15)) << 28;
   10175             :       // op: offset
   10176          32 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10177          32 :       Value |= (op & UINT64_C(256)) << 15;
   10178          32 :       Value |= op & UINT64_C(255);
   10179             :       // op: addr
   10180          32 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10181          32 :       Value |= (op & UINT64_C(15)) << 16;
   10182             :       // op: cop
   10183          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10184          32 :       Value |= (op & UINT64_C(15)) << 8;
   10185             :       // op: CRd
   10186          32 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10187          32 :       Value |= (op & UINT64_C(15)) << 12;
   10188          32 :       break;
   10189             :     }
   10190             :     case ARM::LDCL_OPTION:
   10191             :     case ARM::LDC_OPTION:
   10192             :     case ARM::STCL_OPTION:
   10193             :     case ARM::STC_OPTION: {
   10194             :       // op: p
   10195           6 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10196           6 :       Value |= (op & UINT64_C(15)) << 28;
   10197             :       // op: option
   10198           6 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10199           6 :       Value |= op & UINT64_C(255);
   10200             :       // op: addr
   10201           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10202           6 :       Value |= (op & UINT64_C(15)) << 16;
   10203             :       // op: cop
   10204           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10205           6 :       Value |= (op & UINT64_C(15)) << 8;
   10206             :       // op: CRd
   10207           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10208           6 :       Value |= (op & UINT64_C(15)) << 12;
   10209           6 :       break;
   10210             :     }
   10211             :     case ARM::ADCrsi:
   10212             :     case ARM::ADDrsi:
   10213             :     case ARM::ANDrsi:
   10214             :     case ARM::BICrsi:
   10215             :     case ARM::EORrsi:
   10216             :     case ARM::ORRrsi:
   10217             :     case ARM::RSBrsi:
   10218             :     case ARM::RSCrsi:
   10219             :     case ARM::SBCrsi:
   10220             :     case ARM::SUBrsi: {
   10221             :       // op: p
   10222         291 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10223         291 :       Value |= (op & UINT64_C(15)) << 28;
   10224             :       // op: s
   10225         291 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   10226         291 :       Value |= (op & UINT64_C(1)) << 20;
   10227             :       // op: Rd
   10228         291 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10229         291 :       Value |= (op & UINT64_C(15)) << 12;
   10230             :       // op: Rn
   10231         291 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10232         291 :       Value |= (op & UINT64_C(15)) << 16;
   10233             :       // op: shift
   10234         291 :       op = getSORegImmOpValue(MI, 2, Fixups, STI);
   10235         291 :       Value |= op & UINT64_C(4064);
   10236         291 :       Value |= op & UINT64_C(15);
   10237         291 :       break;
   10238             :     }
   10239             :     case ARM::MVNsr: {
   10240             :       // op: p
   10241           8 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10242           8 :       Value |= (op & UINT64_C(15)) << 28;
   10243             :       // op: s
   10244           8 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   10245           8 :       Value |= (op & UINT64_C(1)) << 20;
   10246             :       // op: Rd
   10247           8 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10248           8 :       Value |= (op & UINT64_C(15)) << 12;
   10249             :       // op: shift
   10250           8 :       op = getSORegRegOpValue(MI, 1, Fixups, STI);
   10251           8 :       Value |= op & UINT64_C(3840);
   10252           8 :       Value |= op & UINT64_C(96);
   10253           8 :       Value |= op & UINT64_C(15);
   10254           8 :       break;
   10255             :     }
   10256             :     case ARM::MOVsr: {
   10257             :       // op: p
   10258           0 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10259           0 :       Value |= (op & UINT64_C(15)) << 28;
   10260             :       // op: s
   10261           0 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   10262           0 :       Value |= (op & UINT64_C(1)) << 20;
   10263             :       // op: Rd
   10264           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10265           0 :       Value |= (op & UINT64_C(15)) << 12;
   10266             :       // op: src
   10267           0 :       op = getSORegRegOpValue(MI, 1, Fixups, STI);
   10268           0 :       Value |= op & UINT64_C(3840);
   10269           0 :       Value |= op & UINT64_C(96);
   10270           0 :       Value |= op & UINT64_C(15);
   10271           0 :       break;
   10272             :     }
   10273             :     case ARM::MLA: {
   10274             :       // op: p
   10275          13 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10276          13 :       Value |= (op & UINT64_C(15)) << 28;
   10277             :       // op: s
   10278          13 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   10279          13 :       Value |= (op & UINT64_C(1)) << 20;
   10280             :       // op: Rd
   10281          13 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10282          13 :       Value |= (op & UINT64_C(15)) << 16;
   10283             :       // op: Rm
   10284          13 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10285          13 :       Value |= (op & UINT64_C(15)) << 8;
   10286             :       // op: Rn
   10287          13 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10288          13 :       Value |= op & UINT64_C(15);
   10289             :       // op: Ra
   10290          13 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10291          13 :       Value |= (op & UINT64_C(15)) << 12;
   10292          13 :       break;
   10293             :     }
   10294             :     case ARM::SMULL:
   10295             :     case ARM::UMULL: {
   10296             :       // op: p
   10297          18 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10298          18 :       Value |= (op & UINT64_C(15)) << 28;
   10299             :       // op: s
   10300          18 :       op = getCCOutOpValue(MI, 6, Fixups, STI);
   10301          18 :       Value |= (op & UINT64_C(1)) << 20;
   10302             :       // op: RdLo
   10303          18 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10304          18 :       Value |= (op & UINT64_C(15)) << 12;
   10305             :       // op: RdHi
   10306          18 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10307          18 :       Value |= (op & UINT64_C(15)) << 16;
   10308             :       // op: Rm
   10309          18 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10310          18 :       Value |= (op & UINT64_C(15)) << 8;
   10311             :       // op: Rn
   10312          18 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10313          18 :       Value |= op & UINT64_C(15);
   10314          18 :       break;
   10315             :     }
   10316             :     case ARM::VMOVRRS: {
   10317             :       // op: p
   10318           2 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10319           2 :       Value |= (op & UINT64_C(15)) << 28;
   10320             :       // op: src1
   10321           2 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10322           2 :       Value |= (op & UINT64_C(1)) << 5;
   10323           2 :       Value |= (op & UINT64_C(30)) >> 1;
   10324             :       // op: Rt
   10325           2 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10326           2 :       Value |= (op & UINT64_C(15)) << 12;
   10327             :       // op: Rt2
   10328           2 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10329           2 :       Value |= (op & UINT64_C(15)) << 16;
   10330           4 :       Value = VFPThumb2PostEncoder(MI, Value, STI);
   10331           2 :       break;
   10332             :     }
   10333             :     case ARM::MRRC: {
   10334             :       // op: p
   10335           7 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10336           7 :       Value |= (op & UINT64_C(15)) << 28;
   10337             :       // op: Rt
   10338           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10339           7 :       Value |= (op & UINT64_C(15)) << 12;
   10340             :       // op: Rt2
   10341           7 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10342           7 :       Value |= (op & UINT64_C(15)) << 16;
   10343             :       // op: cop
   10344           7 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10345           7 :       Value |= (op & UINT64_C(15)) << 8;
   10346             :       // op: opc1
   10347           7 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10348           7 :       Value |= (op & UINT64_C(15)) << 4;
   10349             :       // op: CRm
   10350           7 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10351           7 :       Value |= op & UINT64_C(15);
   10352           7 :       break;
   10353             :     }
   10354             :     case ARM::LDRH_PRE:
   10355             :     case ARM::LDRSB_PRE:
   10356             :     case ARM::LDRSH_PRE: {
   10357             :       // op: p
   10358           9 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10359           9 :       Value |= (op & UINT64_C(15)) << 28;
   10360             :       // op: Rt
   10361           9 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10362           9 :       Value |= (op & UINT64_C(15)) << 12;
   10363             :       // op: addr
   10364           9 :       op = getAddrMode3OpValue(MI, 2, Fixups, STI);
   10365           9 :       Value |= (op & UINT64_C(256)) << 15;
   10366           9 :       Value |= (op & UINT64_C(8192)) << 9;
   10367           9 :       Value |= (op & UINT64_C(7680)) << 7;
   10368           9 :       Value |= (op & UINT64_C(240)) << 4;
   10369           9 :       Value |= op & UINT64_C(15);
   10370           9 :       break;
   10371             :     }
   10372             :     case ARM::LDRB_PRE_REG:
   10373             :     case ARM::LDR_PRE_REG: {
   10374             :       // op: p
   10375           7 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10376           7 :       Value |= (op & UINT64_C(15)) << 28;
   10377             :       // op: Rt
   10378           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10379           7 :       Value |= (op & UINT64_C(15)) << 12;
   10380             :       // op: addr
   10381           7 :       op = getLdStSORegOpValue(MI, 2, Fixups, STI);
   10382           7 :       Value |= (op & UINT64_C(4096)) << 11;
   10383           7 :       Value |= (op & UINT64_C(122880)) << 3;
   10384           7 :       Value |= op & UINT64_C(4064);
   10385           7 :       Value |= op & UINT64_C(15);
   10386           7 :       break;
   10387             :     }
   10388             :     case ARM::LDRBT_POST_REG:
   10389             :     case ARM::LDRB_POST_REG:
   10390             :     case ARM::LDRT_POST_REG:
   10391             :     case ARM::LDR_POST_REG: {
   10392             :       // op: p
   10393          14 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10394          14 :       Value |= (op & UINT64_C(15)) << 28;
   10395             :       // op: Rt
   10396          14 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10397          14 :       Value |= (op & UINT64_C(15)) << 12;
   10398             :       // op: offset
   10399          14 :       op = getAddrMode2OffsetOpValue(MI, 3, Fixups, STI);
   10400          14 :       Value |= (op & UINT64_C(4096)) << 11;
   10401          14 :       Value |= op & UINT64_C(4064);
   10402          14 :       Value |= op & UINT64_C(15);
   10403             :       // op: addr
   10404          14 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10405          14 :       Value |= (op & UINT64_C(15)) << 16;
   10406          14 :       break;
   10407             :     }
   10408             :     case ARM::LDRBT_POST_IMM:
   10409             :     case ARM::LDRB_POST_IMM:
   10410             :     case ARM::LDRT_POST_IMM:
   10411             :     case ARM::LDR_POST_IMM: {
   10412             :       // op: p
   10413         755 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10414         755 :       Value |= (op & UINT64_C(15)) << 28;
   10415             :       // op: Rt
   10416         755 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10417         755 :       Value |= (op & UINT64_C(15)) << 12;
   10418             :       // op: offset
   10419         755 :       op = getAddrMode2OffsetOpValue(MI, 3, Fixups, STI);
   10420         755 :       Value |= (op & UINT64_C(4096)) << 11;
   10421         755 :       Value |= op & UINT64_C(4095);
   10422             :       // op: addr
   10423         755 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10424         755 :       Value |= (op & UINT64_C(15)) << 16;
   10425         755 :       break;
   10426             :     }
   10427             :     case ARM::LDRH_POST:
   10428             :     case ARM::LDRSB_POST:
   10429             :     case ARM::LDRSH_POST: {
   10430             :       // op: p
   10431         175 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10432         175 :       Value |= (op & UINT64_C(15)) << 28;
   10433             :       // op: Rt
   10434         175 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10435         175 :       Value |= (op & UINT64_C(15)) << 12;
   10436             :       // op: offset
   10437         175 :       op = getAddrMode3OffsetOpValue(MI, 3, Fixups, STI);
   10438         175 :       Value |= (op & UINT64_C(256)) << 15;
   10439         175 :       Value |= (op & UINT64_C(512)) << 13;
   10440         175 :       Value |= (op & UINT64_C(240)) << 4;
   10441         175 :       Value |= op & UINT64_C(15);
   10442             :       // op: addr
   10443         175 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10444         175 :       Value |= (op & UINT64_C(15)) << 16;
   10445         175 :       break;
   10446             :     }
   10447             :     case ARM::STRH_PRE: {
   10448             :       // op: p
   10449           3 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10450           3 :       Value |= (op & UINT64_C(15)) << 28;
   10451             :       // op: Rt
   10452           3 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10453           3 :       Value |= (op & UINT64_C(15)) << 12;
   10454             :       // op: addr
   10455           3 :       op = getAddrMode3OpValue(MI, 2, Fixups, STI);
   10456           3 :       Value |= (op & UINT64_C(256)) << 15;
   10457           3 :       Value |= (op & UINT64_C(8192)) << 9;
   10458           3 :       Value |= (op & UINT64_C(7680)) << 7;
   10459           3 :       Value |= (op & UINT64_C(240)) << 4;
   10460           3 :       Value |= op & UINT64_C(15);
   10461           3 :       break;
   10462             :     }
   10463             :     case ARM::STRB_PRE_REG:
   10464             :     case ARM::STR_PRE_REG: {
   10465             :       // op: p
   10466           4 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10467           4 :       Value |= (op & UINT64_C(15)) << 28;
   10468             :       // op: Rt
   10469           4 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10470           4 :       Value |= (op & UINT64_C(15)) << 12;
   10471             :       // op: addr
   10472           4 :       op = getLdStSORegOpValue(MI, 2, Fixups, STI);
   10473           4 :       Value |= (op & UINT64_C(4096)) << 11;
   10474           4 :       Value |= (op & UINT64_C(122880)) << 3;
   10475           4 :       Value |= op & UINT64_C(4064);
   10476           4 :       Value |= op & UINT64_C(15);
   10477           4 :       break;
   10478             :     }
   10479             :     case ARM::STRBT_POST_REG:
   10480             :     case ARM::STRB_POST_REG:
   10481             :     case ARM::STRT_POST_REG:
   10482             :     case ARM::STR_POST_REG: {
   10483             :       // op: p
   10484          14 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10485          14 :       Value |= (op & UINT64_C(15)) << 28;
   10486             :       // op: Rt
   10487          14 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10488          14 :       Value |= (op & UINT64_C(15)) << 12;
   10489             :       // op: offset
   10490          14 :       op = getAddrMode2OffsetOpValue(MI, 3, Fixups, STI);
   10491          14 :       Value |= (op & UINT64_C(4096)) << 11;
   10492          14 :       Value |= op & UINT64_C(4064);
   10493          14 :       Value |= op & UINT64_C(15);
   10494             :       // op: addr
   10495          14 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10496          14 :       Value |= (op & UINT64_C(15)) << 16;
   10497          14 :       break;
   10498             :     }
   10499             :     case ARM::STRBT_POST_IMM:
   10500             :     case ARM::STRB_POST_IMM:
   10501             :     case ARM::STRT_POST_IMM:
   10502             :     case ARM::STR_POST_IMM: {
   10503             :       // op: p
   10504         747 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10505         747 :       Value |= (op & UINT64_C(15)) << 28;
   10506             :       // op: Rt
   10507         747 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10508         747 :       Value |= (op & UINT64_C(15)) << 12;
   10509             :       // op: offset
   10510         747 :       op = getAddrMode2OffsetOpValue(MI, 3, Fixups, STI);
   10511         747 :       Value |= (op & UINT64_C(4096)) << 11;
   10512         747 :       Value |= op & UINT64_C(4095);
   10513             :       // op: addr
   10514         747 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10515         747 :       Value |= (op & UINT64_C(15)) << 16;
   10516         747 :       break;
   10517             :     }
   10518             :     case ARM::STRH_POST: {
   10519             :       // op: p
   10520         169 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10521         169 :       Value |= (op & UINT64_C(15)) << 28;
   10522             :       // op: Rt
   10523         169 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10524         169 :       Value |= (op & UINT64_C(15)) << 12;
   10525             :       // op: offset
   10526         169 :       op = getAddrMode3OffsetOpValue(MI, 3, Fixups, STI);
   10527         169 :       Value |= (op & UINT64_C(256)) << 15;
   10528         169 :       Value |= (op & UINT64_C(512)) << 13;
   10529         169 :       Value |= (op & UINT64_C(240)) << 4;
   10530         169 :       Value |= op & UINT64_C(15);
   10531             :       // op: addr
   10532         169 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10533         169 :       Value |= (op & UINT64_C(15)) << 16;
   10534         169 :       break;
   10535             :     }
   10536             :     case ARM::MCRR: {
   10537             :       // op: p
   10538           7 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10539           7 :       Value |= (op & UINT64_C(15)) << 28;
   10540             :       // op: Rt
   10541           7 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10542           7 :       Value |= (op & UINT64_C(15)) << 12;
   10543             :       // op: Rt2
   10544           7 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10545           7 :       Value |= (op & UINT64_C(15)) << 16;
   10546             :       // op: cop
   10547           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10548           7 :       Value |= (op & UINT64_C(15)) << 8;
   10549             :       // op: opc1
   10550           7 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10551           7 :       Value |= (op & UINT64_C(15)) << 4;
   10552             :       // op: CRm
   10553           7 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10554           7 :       Value |= op & UINT64_C(15);
   10555           7 :       break;
   10556             :     }
   10557             :     case ARM::LDRD:
   10558             :     case ARM::STRD: {
   10559             :       // op: p
   10560          22 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10561          22 :       Value |= (op & UINT64_C(15)) << 28;
   10562             :       // op: addr
   10563          22 :       op = getAddrMode3OpValue(MI, 2, Fixups, STI);
   10564          22 :       Value |= (op & UINT64_C(256)) << 15;
   10565          22 :       Value |= (op & UINT64_C(8192)) << 9;
   10566          22 :       Value |= (op & UINT64_C(7680)) << 7;
   10567          22 :       Value |= (op & UINT64_C(240)) << 4;
   10568          22 :       Value |= op & UINT64_C(15);
   10569             :       // op: Rt
   10570          22 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10571          22 :       Value |= (op & UINT64_C(15)) << 12;
   10572          22 :       break;
   10573             :     }
   10574             :     case ARM::LDRHTr:
   10575             :     case ARM::LDRSBTr:
   10576             :     case ARM::LDRSHTr: {
   10577             :       // op: p
   10578           9 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10579           9 :       Value |= (op & UINT64_C(15)) << 28;
   10580             :       // op: addr
   10581           9 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10582           9 :       Value |= (op & UINT64_C(15)) << 16;
   10583             :       // op: Rt
   10584           9 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10585           9 :       Value |= (op & UINT64_C(15)) << 12;
   10586             :       // op: Rm
   10587          18 :       op = getPostIdxRegOpValue(MI, 3, Fixups, STI);
   10588           9 :       Value |= (op & UINT64_C(16)) << 19;
   10589           9 :       Value |= op & UINT64_C(15);
   10590           9 :       break;
   10591             :     }
   10592             :     case ARM::STRHTr: {
   10593             :       // op: p
   10594           3 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10595           3 :       Value |= (op & UINT64_C(15)) << 28;
   10596             :       // op: addr
   10597           3 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10598           3 :       Value |= (op & UINT64_C(15)) << 16;
   10599             :       // op: Rt
   10600           3 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10601           3 :       Value |= (op & UINT64_C(15)) << 12;
   10602             :       // op: Rm
   10603           6 :       op = getPostIdxRegOpValue(MI, 3, Fixups, STI);
   10604           3 :       Value |= (op & UINT64_C(16)) << 19;
   10605           3 :       Value |= op & UINT64_C(15);
   10606           3 :       break;
   10607             :     }
   10608             :     case ARM::ADCrsr:
   10609             :     case ARM::ADDrsr:
   10610             :     case ARM::ANDrsr:
   10611             :     case ARM::BICrsr:
   10612             :     case ARM::EORrsr:
   10613             :     case ARM::ORRrsr:
   10614             :     case ARM::RSBrsr:
   10615             :     case ARM::RSCrsr:
   10616             :     case ARM::SBCrsr:
   10617             :     case ARM::SUBrsr: {
   10618             :       // op: p
   10619         171 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10620         171 :       Value |= (op & UINT64_C(15)) << 28;
   10621             :       // op: s
   10622         171 :       op = getCCOutOpValue(MI, 7, Fixups, STI);
   10623         171 :       Value |= (op & UINT64_C(1)) << 20;
   10624             :       // op: Rd
   10625         171 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10626         171 :       Value |= (op & UINT64_C(15)) << 12;
   10627             :       // op: Rn
   10628         171 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10629         171 :       Value |= (op & UINT64_C(15)) << 16;
   10630             :       // op: shift
   10631         171 :       op = getSORegRegOpValue(MI, 2, Fixups, STI);
   10632         171 :       Value |= op & UINT64_C(3840);
   10633         171 :       Value |= op & UINT64_C(96);
   10634         171 :       Value |= op & UINT64_C(15);
   10635         171 :       break;
   10636             :     }
   10637             :     case ARM::UMAAL: {
   10638             :       // op: p
   10639           5 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10640           5 :       Value |= (op & UINT64_C(15)) << 28;
   10641             :       // op: RdLo
   10642           5 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10643           5 :       Value |= (op & UINT64_C(15)) << 12;
   10644             :       // op: RdHi
   10645           5 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10646           5 :       Value |= (op & UINT64_C(15)) << 16;
   10647             :       // op: Rm
   10648           5 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10649           5 :       Value |= (op & UINT64_C(15)) << 8;
   10650             :       // op: Rn
   10651           5 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10652           5 :       Value |= op & UINT64_C(15);
   10653           5 :       break;
   10654             :     }
   10655             :     case ARM::SMLALBB:
   10656             :     case ARM::SMLALBT:
   10657             :     case ARM::SMLALD:
   10658             :     case ARM::SMLALDX:
   10659             :     case ARM::SMLALTB:
   10660             :     case ARM::SMLALTT:
   10661             :     case ARM::SMLSLD:
   10662             :     case ARM::SMLSLDX: {
   10663             :       // op: p
   10664          32 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10665          32 :       Value |= (op & UINT64_C(15)) << 28;
   10666             :       // op: Rn
   10667          32 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10668          32 :       Value |= op & UINT64_C(15);
   10669             :       // op: Rm
   10670          32 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10671          32 :       Value |= (op & UINT64_C(15)) << 8;
   10672             :       // op: RdLo
   10673          32 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10674          32 :       Value |= (op & UINT64_C(15)) << 12;
   10675             :       // op: RdHi
   10676          32 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10677          32 :       Value |= (op & UINT64_C(15)) << 16;
   10678          32 :       break;
   10679             :     }
   10680             :     case ARM::LDRD_PRE: {
   10681             :       // op: p
   10682           3 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10683           3 :       Value |= (op & UINT64_C(15)) << 28;
   10684             :       // op: Rt
   10685           3 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10686           3 :       Value |= (op & UINT64_C(15)) << 12;
   10687             :       // op: addr
   10688           3 :       op = getAddrMode3OpValue(MI, 3, Fixups, STI);
   10689           3 :       Value |= (op & UINT64_C(256)) << 15;
   10690           3 :       Value |= (op & UINT64_C(8192)) << 9;
   10691           3 :       Value |= (op & UINT64_C(7680)) << 7;
   10692           3 :       Value |= (op & UINT64_C(240)) << 4;
   10693           3 :       Value |= op & UINT64_C(15);
   10694           3 :       break;
   10695             :     }
   10696             :     case ARM::MRC: {
   10697             :       // op: p
   10698          25 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10699          25 :       Value |= (op & UINT64_C(15)) << 28;
   10700             :       // op: Rt
   10701          25 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10702          25 :       Value |= (op & UINT64_C(15)) << 12;
   10703             :       // op: cop
   10704          25 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10705          25 :       Value |= (op & UINT64_C(15)) << 8;
   10706             :       // op: opc1
   10707          25 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10708          25 :       Value |= (op & UINT64_C(7)) << 21;
   10709             :       // op: opc2
   10710          25 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10711          25 :       Value |= (op & UINT64_C(7)) << 5;
   10712             :       // op: CRm
   10713          25 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10714          25 :       Value |= op & UINT64_C(15);
   10715             :       // op: CRn
   10716          25 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10717          25 :       Value |= (op & UINT64_C(15)) << 16;
   10718          25 :       break;
   10719             :     }
   10720             :     case ARM::LDRD_POST: {
   10721             :       // op: p
   10722           7 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10723           7 :       Value |= (op & UINT64_C(15)) << 28;
   10724             :       // op: Rt
   10725           7 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10726           7 :       Value |= (op & UINT64_C(15)) << 12;
   10727             :       // op: offset
   10728           7 :       op = getAddrMode3OffsetOpValue(MI, 4, Fixups, STI);
   10729           7 :       Value |= (op & UINT64_C(256)) << 15;
   10730           7 :       Value |= (op & UINT64_C(512)) << 13;
   10731           7 :       Value |= (op & UINT64_C(240)) << 4;
   10732           7 :       Value |= op & UINT64_C(15);
   10733             :       // op: addr
   10734           7 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10735           7 :       Value |= (op & UINT64_C(15)) << 16;
   10736           7 :       break;
   10737             :     }
   10738             :     case ARM::STRD_PRE: {
   10739             :       // op: p
   10740           3 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10741           3 :       Value |= (op & UINT64_C(15)) << 28;
   10742             :       // op: Rt
   10743           3 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10744           3 :       Value |= (op & UINT64_C(15)) << 12;
   10745             :       // op: addr
   10746           3 :       op = getAddrMode3OpValue(MI, 3, Fixups, STI);
   10747           3 :       Value |= (op & UINT64_C(256)) << 15;
   10748           3 :       Value |= (op & UINT64_C(8192)) << 9;
   10749           3 :       Value |= (op & UINT64_C(7680)) << 7;
   10750           3 :       Value |= (op & UINT64_C(240)) << 4;
   10751           3 :       Value |= op & UINT64_C(15);
   10752           3 :       break;
   10753             :     }
   10754             :     case ARM::STRD_POST: {
   10755             :       // op: p
   10756           7 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10757           7 :       Value |= (op & UINT64_C(15)) << 28;
   10758             :       // op: Rt
   10759           7 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10760           7 :       Value |= (op & UINT64_C(15)) << 12;
   10761             :       // op: offset
   10762           7 :       op = getAddrMode3OffsetOpValue(MI, 4, Fixups, STI);
   10763           7 :       Value |= (op & UINT64_C(256)) << 15;
   10764           7 :       Value |= (op & UINT64_C(512)) << 13;
   10765           7 :       Value |= (op & UINT64_C(240)) << 4;
   10766           7 :       Value |= op & UINT64_C(15);
   10767             :       // op: addr
   10768           7 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
   10769           7 :       Value |= (op & UINT64_C(15)) << 16;
   10770           7 :       break;
   10771             :     }
   10772             :     case ARM::MCR: {
   10773             :       // op: p
   10774          16 :       op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI);
   10775          16 :       Value |= (op & UINT64_C(15)) << 28;
   10776             :       // op: Rt
   10777          16 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
   10778          16 :       Value |= (op & UINT64_C(15)) << 12;
   10779             :       // op: cop
   10780          16 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
   10781          16 :       Value |= (op & UINT64_C(15)) << 8;
   10782             :       // op: opc1
   10783          16 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
   10784          16 :       Value |= (op & UINT64_C(7)) << 21;
   10785             :       // op: opc2
   10786          16 :       op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI);
   10787          16 :       Value |= (op & UINT64_C(7)) << 5;
   10788             :       // op: CRm
   10789          16 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
   10790