LCOV - code coverage report
Current view: top level - build-llvm/lib/Target/Sparc - SparcGenMCCodeEmitter.inc (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 146 170 85.9 %
Date: 2018-06-17 00:07:59 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        1853 : uint64_t SparcMCCodeEmitter::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(2155880448),       // ADDCCri
     158             :     UINT64_C(2155872256),       // ADDCCrr
     159             :     UINT64_C(2151686144),       // ADDCri
     160             :     UINT64_C(2151677952),       // ADDCrr
     161             :     UINT64_C(2160074752),       // ADDEri
     162             :     UINT64_C(2160066560),       // ADDErr
     163             :     UINT64_C(2175795744),       // ADDXC
     164             :     UINT64_C(2175795808),       // ADDXCCC
     165             :     UINT64_C(2147491840),       // ADDXri
     166             :     UINT64_C(2147483648),       // ADDXrr
     167             :     UINT64_C(2147491840),       // ADDri
     168             :     UINT64_C(2147483648),       // ADDrr
     169             :     UINT64_C(2175795968),       // ALIGNADDR
     170             :     UINT64_C(2175796032),       // ALIGNADDRL
     171             :     UINT64_C(2156404736),       // ANDCCri
     172             :     UINT64_C(2156396544),       // ANDCCrr
     173             :     UINT64_C(2158501888),       // ANDNCCri
     174             :     UINT64_C(2158493696),       // ANDNCCrr
     175             :     UINT64_C(2150113280),       // ANDNri
     176             :     UINT64_C(2150105088),       // ANDNrr
     177             :     UINT64_C(2150105088),       // ANDXNrr
     178             :     UINT64_C(2148016128),       // ANDXri
     179             :     UINT64_C(2148007936),       // ANDXrr
     180             :     UINT64_C(2148016128),       // ANDri
     181             :     UINT64_C(2148007936),       // ANDrr
     182             :     UINT64_C(2175795776),       // ARRAY16
     183             :     UINT64_C(2175795840),       // ARRAY32
     184             :     UINT64_C(2175795712),       // ARRAY8
     185             :     UINT64_C(276824064),        // BA
     186             :     UINT64_C(8388608),  // BCOND
     187             :     UINT64_C(545259520),        // BCONDA
     188             :     UINT64_C(2176851968),       // BINDri
     189             :     UINT64_C(2176843776),       // BINDrr
     190             :     UINT64_C(2175796000),       // BMASK
     191             :     UINT64_C(21495808), // BPFCC
     192             :     UINT64_C(558366720),        // BPFCCA
     193             :     UINT64_C(557842432),        // BPFCCANT
     194             :     UINT64_C(20971520), // BPFCCNT
     195             :     UINT64_C(784334848),        // BPGEZapn
     196             :     UINT64_C(784859136),        // BPGEZapt
     197             :     UINT64_C(247463936),        // BPGEZnapn
     198             :     UINT64_C(247988224),        // BPGEZnapt
     199             :     UINT64_C(750780416),        // BPGZapn
     200             :     UINT64_C(751304704),        // BPGZapt
     201             :     UINT64_C(213909504),        // BPGZnapn
     202             :     UINT64_C(214433792),        // BPGZnapt
     203             :     UINT64_C(4718592),  // BPICC
     204             :     UINT64_C(541589504),        // BPICCA
     205             :     UINT64_C(541065216),        // BPICCANT
     206             :     UINT64_C(4194304),  // BPICCNT
     207             :     UINT64_C(616562688),        // BPLEZapn
     208             :     UINT64_C(617086976),        // BPLEZapt
     209             :     UINT64_C(79691776), // BPLEZnapn
     210             :     UINT64_C(80216064), // BPLEZnapt
     211             :     UINT64_C(650117120),        // BPLZapn
     212             :     UINT64_C(650641408),        // BPLZapt
     213             :     UINT64_C(113246208),        // BPLZnapn
     214             :     UINT64_C(113770496),        // BPLZnapt
     215             :     UINT64_C(717225984),        // BPNZapn
     216             :     UINT64_C(717750272),        // BPNZapt
     217             :     UINT64_C(180355072),        // BPNZnapn
     218             :     UINT64_C(180879360),        // BPNZnapt
     219             :     UINT64_C(6815744),  // BPXCC
     220             :     UINT64_C(543686656),        // BPXCCA
     221             :     UINT64_C(543162368),        // BPXCCANT
     222             :     UINT64_C(6291456),  // BPXCCNT
     223             :     UINT64_C(583008256),        // BPZapn
     224             :     UINT64_C(583532544),        // BPZapt
     225             :     UINT64_C(46137344), // BPZnapn
     226             :     UINT64_C(46661632), // BPZnapt
     227             :     UINT64_C(2175796096),       // BSHUFFLE
     228             :     UINT64_C(1073741824),       // CALL
     229             :     UINT64_C(2680168448),       // CALLri
     230             :     UINT64_C(2680160256),       // CALLrr
     231             :     UINT64_C(3252683072),       // CASAasi10
     232             :     UINT64_C(3252682752),       // CASArr
     233             :     UINT64_C(3253735424),       // CASXrr
     234             :     UINT64_C(3252686848),       // CASrr
     235             :     UINT64_C(29360128), // CBCOND
     236             :     UINT64_C(566231040),        // CBCONDA
     237             :     UINT64_C(2175796128),       // CMASK16
     238             :     UINT64_C(2175796192),       // CMASK32
     239             :     UINT64_C(2175796064),       // CMASK8
     240             :     UINT64_C(2157977600),       // CMPri
     241             :     UINT64_C(2157969408),       // CMPrr
     242             :     UINT64_C(2175795328),       // EDGE16
     243             :     UINT64_C(2175795392),       // EDGE16L
     244             :     UINT64_C(2175795424),       // EDGE16LN
     245             :     UINT64_C(2175795360),       // EDGE16N
     246             :     UINT64_C(2175795456),       // EDGE32
     247             :     UINT64_C(2175795520),       // EDGE32L
     248             :     UINT64_C(2175795552),       // EDGE32LN
     249             :     UINT64_C(2175795488),       // EDGE32N
     250             :     UINT64_C(2175795200),       // EDGE8
     251             :     UINT64_C(2175795264),       // EDGE8L
     252             :     UINT64_C(2175795296),       // EDGE8LN
     253             :     UINT64_C(2175795232),       // EDGE8N
     254             :     UINT64_C(2174746944),       // FABSD
     255             :     UINT64_C(2174746976),       // FABSQ
     256             :     UINT64_C(2174746912),       // FABSS
     257             :     UINT64_C(2174748736),       // FADDD
     258             :     UINT64_C(2174748768),       // FADDQ
     259             :     UINT64_C(2174748704),       // FADDS
     260             :     UINT64_C(2175797504),       // FALIGNADATA
     261             :     UINT64_C(2175798784),       // FAND
     262             :     UINT64_C(2175798528),       // FANDNOT1
     263             :     UINT64_C(2175798560),       // FANDNOT1S
     264             :     UINT64_C(2175798400),       // FANDNOT2
     265             :     UINT64_C(2175798432),       // FANDNOT2S
     266             :     UINT64_C(2175798816),       // FANDS
     267             :     UINT64_C(25165824), // FBCOND
     268             :     UINT64_C(562036736),        // FBCONDA
     269             :     UINT64_C(2175797376),       // FCHKSM16
     270             :     UINT64_C(2175273536),       // FCMPD
     271             :     UINT64_C(2175796544),       // FCMPEQ16
     272             :     UINT64_C(2175796672),       // FCMPEQ32
     273             :     UINT64_C(2175796480),       // FCMPGT16
     274             :     UINT64_C(2175796608),       // FCMPGT32
     275             :     UINT64_C(2175796224),       // FCMPLE16
     276             :     UINT64_C(2175796352),       // FCMPLE32
     277             :     UINT64_C(2175796288),       // FCMPNE16
     278             :     UINT64_C(2175796416),       // FCMPNE32
     279             :     UINT64_C(2175273568),       // FCMPQ
     280             :     UINT64_C(2175273504),       // FCMPS
     281             :     UINT64_C(2174749120),       // FDIVD
     282             :     UINT64_C(2174749152),       // FDIVQ
     283             :     UINT64_C(2174749088),       // FDIVS
     284             :     UINT64_C(2174750144),       // FDMULQ
     285             :     UINT64_C(2174753344),       // FDTOI
     286             :     UINT64_C(2174753216),       // FDTOQ
     287             :     UINT64_C(2174752960),       // FDTOS
     288             :     UINT64_C(2174750784),       // FDTOX
     289             :     UINT64_C(2175797664),       // FEXPAND
     290             :     UINT64_C(2174749760),       // FHADDD
     291             :     UINT64_C(2174749728),       // FHADDS
     292             :     UINT64_C(2174749888),       // FHSUBD
     293             :     UINT64_C(2174749856),       // FHSUBS
     294             :     UINT64_C(2174753024),       // FITOD
     295             :     UINT64_C(2174753152),       // FITOQ
     296             :     UINT64_C(2174752896),       // FITOS
     297             :     UINT64_C(2175806016),       // FLCMPD
     298             :     UINT64_C(2175805984),       // FLCMPS
     299             :     UINT64_C(2178416640),       // FLUSH
     300             :     UINT64_C(2170028032),       // FLUSHW
     301             :     UINT64_C(2178424832),       // FLUSHri
     302             :     UINT64_C(2178416640),       // FLUSHrr
     303             :     UINT64_C(2175797248),       // FMEAN16
     304             :     UINT64_C(2174746688),       // FMOVD
     305             :     UINT64_C(2175270976),       // FMOVD_FCC
     306             :     UINT64_C(2175279168),       // FMOVD_ICC
     307             :     UINT64_C(2175283264),       // FMOVD_XCC
     308             :     UINT64_C(2174746720),       // FMOVQ
     309             :     UINT64_C(2175271008),       // FMOVQ_FCC
     310             :     UINT64_C(2175279200),       // FMOVQ_ICC
     311             :     UINT64_C(2175283296),       // FMOVQ_XCC
     312             :     UINT64_C(2175278272),       // FMOVRGEZD
     313             :     UINT64_C(2175278304),       // FMOVRGEZQ
     314             :     UINT64_C(2175278240),       // FMOVRGEZS
     315             :     UINT64_C(2175277248),       // FMOVRGZD
     316             :     UINT64_C(2175277280),       // FMOVRGZQ
     317             :     UINT64_C(2175277216),       // FMOVRGZS
     318             :     UINT64_C(2175273152),       // FMOVRLEZD
     319             :     UINT64_C(2175273184),       // FMOVRLEZQ
     320             :     UINT64_C(2175273120),       // FMOVRLEZS
     321             :     UINT64_C(2175274176),       // FMOVRLZD
     322             :     UINT64_C(2175274208),       // FMOVRLZQ
     323             :     UINT64_C(2175274144),       // FMOVRLZS
     324             :     UINT64_C(2175276224),       // FMOVRNZD
     325             :     UINT64_C(2175276256),       // FMOVRNZQ
     326             :     UINT64_C(2175276192),       // FMOVRNZS
     327             :     UINT64_C(2175272128),       // FMOVRZD
     328             :     UINT64_C(2175272160),       // FMOVRZQ
     329             :     UINT64_C(2175272096),       // FMOVRZS
     330             :     UINT64_C(2174746656),       // FMOVS
     331             :     UINT64_C(2175270944),       // FMOVS_FCC
     332             :     UINT64_C(2175279136),       // FMOVS_ICC
     333             :     UINT64_C(2175283232),       // FMOVS_XCC
     334             :     UINT64_C(2175796928),       // FMUL8SUX16
     335             :     UINT64_C(2175796960),       // FMUL8ULX16
     336             :     UINT64_C(2175796768),       // FMUL8X16
     337             :     UINT64_C(2175796896),       // FMUL8X16AL
     338             :     UINT64_C(2175796832),       // FMUL8X16AU
     339             :     UINT64_C(2174748992),       // FMULD
     340             :     UINT64_C(2175796992),       // FMULD8SUX16
     341             :     UINT64_C(2175797024),       // FMULD8ULX16
     342             :     UINT64_C(2174749024),       // FMULQ
     343             :     UINT64_C(2174748960),       // FMULS
     344             :     UINT64_C(2174749248),       // FNADDD
     345             :     UINT64_C(2174749216),       // FNADDS
     346             :     UINT64_C(2175798720),       // FNAND
     347             :     UINT64_C(2175798752),       // FNANDS
     348             :     UINT64_C(2174746816),       // FNEGD
     349             :     UINT64_C(2174746848),       // FNEGQ
     350             :     UINT64_C(2174746784),       // FNEGS
     351             :     UINT64_C(2174750272),       // FNHADDD
     352             :     UINT64_C(2174750240),       // FNHADDS
     353             :     UINT64_C(2174749504),       // FNMULD
     354             :     UINT64_C(2174749472),       // FNMULS
     355             :     UINT64_C(2175798336),       // FNOR
     356             :     UINT64_C(2175798368),       // FNORS
     357             :     UINT64_C(2175798592),       // FNOT1
     358             :     UINT64_C(2175798624),       // FNOT1S
     359             :     UINT64_C(2175798464),       // FNOT2
     360             :     UINT64_C(2175798496),       // FNOT2S
     361             :     UINT64_C(2174750496),       // FNSMULD
     362             :     UINT64_C(2175799232),       // FONE
     363             :     UINT64_C(2175799264),       // FONES
     364             :     UINT64_C(2175799168),       // FOR
     365             :     UINT64_C(2175799104),       // FORNOT1
     366             :     UINT64_C(2175799136),       // FORNOT1S
     367             :     UINT64_C(2175798976),       // FORNOT2
     368             :     UINT64_C(2175799008),       // FORNOT2S
     369             :     UINT64_C(2175799200),       // FORS
     370             :     UINT64_C(2175797088),       // FPACK16
     371             :     UINT64_C(2175797056),       // FPACK32
     372             :     UINT64_C(2175797152),       // FPACKFIX
     373             :     UINT64_C(2175797760),       // FPADD16
     374             :     UINT64_C(2175797792),       // FPADD16S
     375             :     UINT64_C(2175797824),       // FPADD32
     376             :     UINT64_C(2175797856),       // FPADD32S
     377             :     UINT64_C(2175797312),       // FPADD64
     378             :     UINT64_C(2175797600),       // FPMERGE
     379             :     UINT64_C(2175797888),       // FPSUB16
     380             :     UINT64_C(2175797920),       // FPSUB16S
     381             :     UINT64_C(2175797952),       // FPSUB32
     382             :     UINT64_C(2175797984),       // FPSUB32S
     383             :     UINT64_C(2174753120),       // FQTOD
     384             :     UINT64_C(2174753376),       // FQTOI
     385             :     UINT64_C(2174752992),       // FQTOS
     386             :     UINT64_C(2174750816),       // FQTOX
     387             :     UINT64_C(2175796512),       // FSLAS16
     388             :     UINT64_C(2175796640),       // FSLAS32
     389             :     UINT64_C(2175796256),       // FSLL16
     390             :     UINT64_C(2175796384),       // FSLL32
     391             :     UINT64_C(2174749984),       // FSMULD
     392             :     UINT64_C(2174747968),       // FSQRTD
     393             :     UINT64_C(2174748000),       // FSQRTQ
     394             :     UINT64_C(2174747936),       // FSQRTS
     395             :     UINT64_C(2175796576),       // FSRA16
     396             :     UINT64_C(2175796704),       // FSRA32
     397             :     UINT64_C(2175798912),       // FSRC1
     398             :     UINT64_C(2175798944),       // FSRC1S
     399             :     UINT64_C(2175799040),       // FSRC2
     400             :     UINT64_C(2175799072),       // FSRC2S
     401             :     UINT64_C(2175796320),       // FSRL16
     402             :     UINT64_C(2175796448),       // FSRL32
     403             :     UINT64_C(2174753056),       // FSTOD
     404             :     UINT64_C(2174753312),       // FSTOI
     405             :     UINT64_C(2174753184),       // FSTOQ
     406             :     UINT64_C(2174750752),       // FSTOX
     407             :     UINT64_C(2174748864),       // FSUBD
     408             :     UINT64_C(2174748896),       // FSUBQ
     409             :     UINT64_C(2174748832),       // FSUBS
     410             :     UINT64_C(2175798848),       // FXNOR
     411             :     UINT64_C(2175798880),       // FXNORS
     412             :     UINT64_C(2175798656),       // FXOR
     413             :     UINT64_C(2175798688),       // FXORS
     414             :     UINT64_C(2174750976),       // FXTOD
     415             :     UINT64_C(2174751104),       // FXTOQ
     416             :     UINT64_C(2174750848),       // FXTOS
     417             :     UINT64_C(2175798272),       // FZERO
     418             :     UINT64_C(2175798304),       // FZEROS
     419             :     UINT64_C(2176851968),       // JMPLri
     420             :     UINT64_C(2176843776),       // JMPLrr
     421             :     UINT64_C(3229614080),       // LDArr
     422             :     UINT64_C(3246923776),       // LDCSRri
     423             :     UINT64_C(3246915584),       // LDCSRrr
     424             :     UINT64_C(3246399488),       // LDCri
     425             :     UINT64_C(3246391296),       // LDCrr
     426             :     UINT64_C(3231186944),       // LDDArr
     427             :     UINT64_C(3247972352),       // LDDCri
     428             :     UINT64_C(3247964160),       // LDDCrr
     429             :     UINT64_C(3247964160),       // LDDFArr
     430             :     UINT64_C(3239583744),       // LDDFri
     431             :     UINT64_C(3239575552),       // LDDFrr
     432             :     UINT64_C(3222806528),       // LDDri
     433             :     UINT64_C(3222798336),       // LDDrr
     434             :     UINT64_C(3246391296),       // LDFArr
     435             :     UINT64_C(3238535168),       // LDFSRri
     436             :     UINT64_C(3238526976),       // LDFSRrr
     437             :     UINT64_C(3238010880),       // LDFri
     438             :     UINT64_C(3238002688),       // LDFrr
     439             :     UINT64_C(3247439872),       // LDQFArr
     440             :     UINT64_C(3239059456),       // LDQFri
     441             :     UINT64_C(3239051264),       // LDQFrr
     442             :     UINT64_C(3234332672),       // LDSBArr
     443             :     UINT64_C(3225952256),       // LDSBri
     444             :     UINT64_C(3225944064),       // LDSBrr
     445             :     UINT64_C(3234856960),       // LDSHArr
     446             :     UINT64_C(3226476544),       // LDSHri
     447             :     UINT64_C(3226468352),       // LDSHrr
     448             :     UINT64_C(3236429824),       // LDSTUBArr
     449             :     UINT64_C(3228049408),       // LDSTUBri
     450             :     UINT64_C(3228041216),       // LDSTUBrr
     451             :     UINT64_C(3225427968),       // LDSWri
     452             :     UINT64_C(3225419776),       // LDSWrr
     453             :     UINT64_C(3230138368),       // LDUBArr
     454             :     UINT64_C(3221757952),       // LDUBri
     455             :     UINT64_C(3221749760),       // LDUBrr
     456             :     UINT64_C(3230662656),       // LDUHArr
     457             :     UINT64_C(3222282240),       // LDUHri
     458             :     UINT64_C(3222274048),       // LDUHrr
     459             :     UINT64_C(3272089600),       // LDXFSRri
     460             :     UINT64_C(3272081408),       // LDXFSRrr
     461             :     UINT64_C(3227000832),       // LDXri
     462             :     UINT64_C(3226992640),       // LDXrr
     463             :     UINT64_C(3221233664),       // LDri
     464             :     UINT64_C(3221225472),       // LDrr
     465             :     UINT64_C(2147491840),       // LEAX_ADDri
     466             :     UINT64_C(2147491840),       // LEA_ADDri
     467             :     UINT64_C(2175795936),       // LZCNT
     468             :     UINT64_C(2168709120),       // MEMBARi
     469             :     UINT64_C(2175803904),       // MOVDTOX
     470             :     UINT64_C(2170560512),       // MOVFCCri
     471             :     UINT64_C(2170552320),       // MOVFCCrr
     472             :     UINT64_C(2170822656),       // MOVICCri
     473             :     UINT64_C(2170814464),       // MOVICCrr
     474             :     UINT64_C(2172140544),       // MOVRGEZri
     475             :     UINT64_C(2172132352),       // MOVRGEZrr
     476             :     UINT64_C(2172139520),       // MOVRGZri
     477             :     UINT64_C(2172131328),       // MOVRGZrr
     478             :     UINT64_C(2172135424),       // MOVRLEZri
     479             :     UINT64_C(2172127232),       // MOVRLEZrr
     480             :     UINT64_C(2172136448),       // MOVRLZri
     481             :     UINT64_C(2172128256),       // MOVRLZrr
     482             :     UINT64_C(2172138496),       // MOVRNZri
     483             :     UINT64_C(2172130304),       // MOVRNZrr
     484             :     UINT64_C(2172134400),       // MOVRRZri
     485             :     UINT64_C(2172126208),       // MOVRRZrr
     486             :     UINT64_C(2175804000),       // MOVSTOSW
     487             :     UINT64_C(2175803936),       // MOVSTOUW
     488             :     UINT64_C(2175804192),       // MOVWTOS
     489             :     UINT64_C(2170826752),       // MOVXCCri
     490             :     UINT64_C(2170818560),       // MOVXCCrr
     491             :     UINT64_C(2175804160),       // MOVXTOD
     492             :     UINT64_C(2166366208),       // MULSCCri
     493             :     UINT64_C(2166358016),       // MULSCCrr
     494             :     UINT64_C(2152210432),       // MULXri
     495             :     UINT64_C(2152202240),       // MULXrr
     496             :     UINT64_C(16777216), // NOP
     497             :     UINT64_C(2156929024),       // ORCCri
     498             :     UINT64_C(2156920832),       // ORCCrr
     499             :     UINT64_C(2159026176),       // ORNCCri
     500             :     UINT64_C(2159017984),       // ORNCCrr
     501             :     UINT64_C(2150637568),       // ORNri
     502             :     UINT64_C(2150629376),       // ORNrr
     503             :     UINT64_C(2150629376),       // ORXNrr
     504             :     UINT64_C(2148540416),       // ORXri
     505             :     UINT64_C(2148532224),       // ORXrr
     506             :     UINT64_C(2148540416),       // ORri
     507             :     UINT64_C(2148532224),       // ORrr
     508             :     UINT64_C(2175797184),       // PDIST
     509             :     UINT64_C(2175797216),       // PDISTN
     510             :     UINT64_C(2171600896),       // POPCrr
     511             :     UINT64_C(2168455168),       // RDASR
     512             :     UINT64_C(2169503744),       // RDPR
     513             :     UINT64_C(2168979456),       // RDPSR
     514             :     UINT64_C(2170028032),       // RDTBR
     515             :     UINT64_C(2169503744),       // RDWIM
     516             :     UINT64_C(2179473408),       // RESTOREri
     517             :     UINT64_C(2179465216),       // RESTORErr
     518             :     UINT64_C(2177359872),       // RET
     519             :     UINT64_C(2177097728),       // RETL
     520             :     UINT64_C(2177376256),       // RETTri
     521             :     UINT64_C(2177368064),       // RETTrr
     522             :     UINT64_C(2178949120),       // SAVEri
     523             :     UINT64_C(2178940928),       // SAVErr
     524             :     UINT64_C(2163744768),       // SDIVCCri
     525             :     UINT64_C(2163736576),       // SDIVCCrr
     526             :     UINT64_C(2171084800),       // SDIVXri
     527             :     UINT64_C(2171076608),       // SDIVXrr
     528             :     UINT64_C(2155356160),       // SDIVri
     529             :     UINT64_C(2155347968),       // SDIVrr
     530             :     UINT64_C(16777216), // SETHIXi
     531             :     UINT64_C(16777216), // SETHIi
     532             :     UINT64_C(2175799296),       // SHUTDOWN
     533             :     UINT64_C(2175799328),       // SIAM
     534             :     UINT64_C(2166894592),       // SLLXri
     535             :     UINT64_C(2166886400),       // SLLXrr
     536             :     UINT64_C(2166890496),       // SLLri
     537             :     UINT64_C(2166882304),       // SLLrr
     538             :     UINT64_C(2180521984),       // SMACri
     539             :     UINT64_C(2180513792),       // SMACrr
     540             :     UINT64_C(2161647616),       // SMULCCri
     541             :     UINT64_C(2161639424),       // SMULCCrr
     542             :     UINT64_C(2153259008),       // SMULri
     543             :     UINT64_C(2153250816),       // SMULrr
     544             :     UINT64_C(2167943168),       // SRAXri
     545             :     UINT64_C(2167934976),       // SRAXrr
     546             :     UINT64_C(2167939072),       // SRAri
     547             :     UINT64_C(2167930880),       // SRArr
     548             :     UINT64_C(2167418880),       // SRLXri
     549             :     UINT64_C(2167410688),       // SRLXrr
     550             :     UINT64_C(2167414784),       // SRLri
     551             :     UINT64_C(2167406592),       // SRLrr
     552             :     UINT64_C(3231711232),       // STArr
     553             :     UINT64_C(2168700928),       // STBAR
     554             :     UINT64_C(3232235520),       // STBArr
     555             :     UINT64_C(3223855104),       // STBri
     556             :     UINT64_C(3223846912),       // STBrr
     557             :     UINT64_C(3249020928),       // STCSRri
     558             :     UINT64_C(3249012736),       // STCSRrr
     559             :     UINT64_C(3248496640),       // STCri
     560             :     UINT64_C(3248488448),       // STCrr
     561             :     UINT64_C(3233284096),       // STDArr
     562             :     UINT64_C(3249545216),       // STDCQri
     563             :     UINT64_C(3249537024),       // STDCQrr
     564             :     UINT64_C(3250069504),       // STDCri
     565             :     UINT64_C(3250061312),       // STDCrr
     566             :     UINT64_C(3250061312),       // STDFArr
     567             :     UINT64_C(3241156608),       // STDFQri
     568             :     UINT64_C(3241148416),       // STDFQrr
     569             :     UINT64_C(3241680896),       // STDFri
     570             :     UINT64_C(3241672704),       // STDFrr
     571             :     UINT64_C(3224903680),       // STDri
     572             :     UINT64_C(3224895488),       // STDrr
     573             :     UINT64_C(3248488448),       // STFArr
     574             :     UINT64_C(3240632320),       // STFSRri
     575             :     UINT64_C(3240624128),       // STFSRrr
     576             :     UINT64_C(3240108032),       // STFri
     577             :     UINT64_C(3240099840),       // STFrr
     578             :     UINT64_C(3232759808),       // STHArr
     579             :     UINT64_C(3224379392),       // STHri
     580             :     UINT64_C(3224371200),       // STHrr
     581             :     UINT64_C(3249537024),       // STQFArr
     582             :     UINT64_C(3241156608),       // STQFri
     583             :     UINT64_C(3241148416),       // STQFrr
     584             :     UINT64_C(3274186752),       // STXFSRri
     585             :     UINT64_C(3274178560),       // STXFSRrr
     586             :     UINT64_C(3228573696),       // STXri
     587             :     UINT64_C(3228565504),       // STXrr
     588             :     UINT64_C(3223330816),       // STri
     589             :     UINT64_C(3223322624),       // STrr
     590             :     UINT64_C(2157977600),       // SUBCCri
     591             :     UINT64_C(2157969408),       // SUBCCrr
     592             :     UINT64_C(2153783296),       // SUBCri
     593             :     UINT64_C(2153775104),       // SUBCrr
     594             :     UINT64_C(2162171904),       // SUBEri
     595             :     UINT64_C(2162163712),       // SUBErr
     596             :     UINT64_C(2149588992),       // SUBXri
     597             :     UINT64_C(2149580800),       // SUBXrr
     598             :     UINT64_C(2149588992),       // SUBri
     599             :     UINT64_C(2149580800),       // SUBrr
     600             :     UINT64_C(3237478400),       // SWAPArr
     601             :     UINT64_C(3229097984),       // SWAPri
     602             :     UINT64_C(3229089792),       // SWAPrr
     603             :     UINT64_C(2177916931),       // TA3
     604             :     UINT64_C(2446336005),       // TA5
     605             :     UINT64_C(2165317632),       // TADDCCTVri
     606             :     UINT64_C(2165309440),       // TADDCCTVrr
     607             :     UINT64_C(2164269056),       // TADDCCri
     608             :     UINT64_C(2164260864),       // TADDCCrr
     609             :     UINT64_C(2177900544),       // TICCri
     610             :     UINT64_C(2177892352),       // TICCrr
     611             :     UINT64_C(2147483648),       // TLS_ADDXrr
     612             :     UINT64_C(2147483648),       // TLS_ADDrr
     613             :     UINT64_C(1073741824),       // TLS_CALL
     614             :     UINT64_C(3226992640),       // TLS_LDXrr
     615             :     UINT64_C(3221225472),       // TLS_LDrr
     616             :     UINT64_C(2177900544),       // TRAPri
     617             :     UINT64_C(2177892352),       // TRAPrr
     618             :     UINT64_C(2165841920),       // TSUBCCTVri
     619             :     UINT64_C(2165833728),       // TSUBCCTVrr
     620             :     UINT64_C(2164793344),       // TSUBCCri
     621             :     UINT64_C(2164785152),       // TSUBCCrr
     622             :     UINT64_C(2177904640),       // TXCCri
     623             :     UINT64_C(2177896448),       // TXCCrr
     624             :     UINT64_C(2163220480),       // UDIVCCri
     625             :     UINT64_C(2163212288),       // UDIVCCrr
     626             :     UINT64_C(2154307584),       // UDIVXri
     627             :     UINT64_C(2154299392),       // UDIVXrr
     628             :     UINT64_C(2154831872),       // UDIVri
     629             :     UINT64_C(2154823680),       // UDIVrr
     630             :     UINT64_C(2179997696),       // UMACri
     631             :     UINT64_C(2179989504),       // UMACrr
     632             :     UINT64_C(2161123328),       // UMULCCri
     633             :     UINT64_C(2161115136),       // UMULCCrr
     634             :     UINT64_C(2175795904),       // UMULXHI
     635             :     UINT64_C(2152734720),       // UMULri
     636             :     UINT64_C(2152726528),       // UMULrr
     637             :     UINT64_C(0),        // UNIMP
     638             :     UINT64_C(2175273536),       // V9FCMPD
     639             :     UINT64_C(2175273664),       // V9FCMPED
     640             :     UINT64_C(2175273696),       // V9FCMPEQ
     641             :     UINT64_C(2175273632),       // V9FCMPES
     642             :     UINT64_C(2175273568),       // V9FCMPQ
     643             :     UINT64_C(2175273504),       // V9FCMPS
     644             :     UINT64_C(2175270976),       // V9FMOVD_FCC
     645             :     UINT64_C(2175271008),       // V9FMOVQ_FCC
     646             :     UINT64_C(2175270944),       // V9FMOVS_FCC
     647             :     UINT64_C(2170560512),       // V9MOVFCCri
     648             :     UINT64_C(2170552320),       // V9MOVFCCrr
     649             :     UINT64_C(2172657664),       // WRASRri
     650             :     UINT64_C(2172649472),       // WRASRrr
     651             :     UINT64_C(2173706240),       // WRPRri
     652             :     UINT64_C(2173698048),       // WRPRrr
     653             :     UINT64_C(2173181952),       // WRPSRri
     654             :     UINT64_C(2173173760),       // WRPSRrr
     655             :     UINT64_C(2174230528),       // WRTBRri
     656             :     UINT64_C(2174222336),       // WRTBRrr
     657             :     UINT64_C(2173706240),       // WRWIMri
     658             :     UINT64_C(2173698048),       // WRWIMrr
     659             :     UINT64_C(2175804064),       // XMULX
     660             :     UINT64_C(2175804128),       // XMULXHI
     661             :     UINT64_C(2159550464),       // XNORCCri
     662             :     UINT64_C(2159542272),       // XNORCCrr
     663             :     UINT64_C(2151153664),       // XNORXrr
     664             :     UINT64_C(2151161856),       // XNORri
     665             :     UINT64_C(2151153664),       // XNORrr
     666             :     UINT64_C(2157453312),       // XORCCri
     667             :     UINT64_C(2157445120),       // XORCCrr
     668             :     UINT64_C(2149064704),       // XORXri
     669             :     UINT64_C(2149056512),       // XORXrr
     670             :     UINT64_C(2149064704),       // XORri
     671             :     UINT64_C(2149056512),       // XORrr
     672             :     UINT64_C(0)
     673             :   };
     674        1853 :   const unsigned opcode = MI.getOpcode();
     675        1853 :   uint64_t Value = InstBits[opcode];
     676             :   uint64_t op = 0;
     677             :   (void)op;  // suppress warning
     678        1853 :   switch (opcode) {
     679             :     case SP::FLUSH:
     680             :     case SP::FLUSHW:
     681             :     case SP::NOP:
     682             :     case SP::SHUTDOWN:
     683             :     case SP::SIAM:
     684             :     case SP::STBAR:
     685             :     case SP::TA3:
     686             :     case SP::TA5: {
     687             :       break;
     688             :     }
     689             :     case SP::BPFCC:
     690             :     case SP::BPFCCA:
     691             :     case SP::BPFCCANT:
     692             :     case SP::BPFCCNT: {
     693             :       // op: cc
     694          94 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
     695          94 :       Value |= (op & UINT64_C(3)) << 20;
     696             :       // op: cond
     697          94 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     698          94 :       Value |= (op & UINT64_C(15)) << 25;
     699             :       // op: imm19
     700          94 :       op = getBranchPredTargetOpValue(MI, 0, Fixups, STI);
     701          94 :       Value |= op & UINT64_C(524287);
     702             :       break;
     703             :     }
     704             :     case SP::BPICC:
     705             :     case SP::BPICCA:
     706             :     case SP::BPICCANT:
     707             :     case SP::BPICCNT:
     708             :     case SP::BPXCC:
     709             :     case SP::BPXCCA:
     710             :     case SP::BPXCCANT:
     711             :     case SP::BPXCCNT: {
     712             :       // op: cond
     713         148 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     714         148 :       Value |= (op & UINT64_C(15)) << 25;
     715             :       // op: imm19
     716         148 :       op = getBranchPredTargetOpValue(MI, 0, Fixups, STI);
     717         148 :       Value |= op & UINT64_C(524287);
     718             :       break;
     719             :     }
     720          24 :     case SP::CALL:
     721             :     case SP::TLS_CALL: {
     722             :       // op: disp
     723          24 :       op = getCallTargetOpValue(MI, 0, Fixups, STI);
     724          24 :       Value |= op & UINT64_C(1073741823);
     725             :       break;
     726             :     }
     727          11 :     case SP::BPGEZapn:
     728             :     case SP::BPGEZapt:
     729             :     case SP::BPGEZnapn:
     730             :     case SP::BPGEZnapt:
     731             :     case SP::BPGZapn:
     732             :     case SP::BPGZapt:
     733             :     case SP::BPGZnapn:
     734             :     case SP::BPGZnapt:
     735             :     case SP::BPLEZapn:
     736             :     case SP::BPLEZapt:
     737             :     case SP::BPLEZnapn:
     738             :     case SP::BPLEZnapt:
     739             :     case SP::BPLZapn:
     740             :     case SP::BPLZapt:
     741             :     case SP::BPLZnapn:
     742             :     case SP::BPLZnapt:
     743             :     case SP::BPNZapn:
     744             :     case SP::BPNZapt:
     745             :     case SP::BPNZnapn:
     746             :     case SP::BPNZnapt:
     747             :     case SP::BPZapn:
     748             :     case SP::BPZapt:
     749             :     case SP::BPZnapn:
     750             :     case SP::BPZnapt: {
     751             :       // op: imm16
     752          11 :       op = getBranchOnRegTargetOpValue(MI, 1, Fixups, STI);
     753          11 :       Value |= (op & UINT64_C(49152)) << 6;
     754          11 :       Value |= op & UINT64_C(16383);
     755             :       // op: rs1
     756          11 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     757          11 :       Value |= (op & UINT64_C(31)) << 14;
     758             :       break;
     759             :     }
     760           4 :     case SP::BA: {
     761             :       // op: imm22
     762           4 :       op = getBranchTargetOpValue(MI, 0, Fixups, STI);
     763           4 :       Value |= op & UINT64_C(4194303);
     764             :       break;
     765             :     }
     766         225 :     case SP::BCOND:
     767             :     case SP::BCONDA:
     768             :     case SP::CBCOND:
     769             :     case SP::CBCONDA:
     770             :     case SP::FBCOND:
     771             :     case SP::FBCONDA: {
     772             :       // op: imm22
     773         225 :       op = getBranchTargetOpValue(MI, 0, Fixups, STI);
     774         225 :       Value |= op & UINT64_C(4194303);
     775             :       // op: cond
     776         225 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     777         225 :       Value |= (op & UINT64_C(15)) << 25;
     778             :       break;
     779             :     }
     780             :     case SP::UNIMP: {
     781             :       // op: imm22
     782           1 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     783           1 :       Value |= op & UINT64_C(4194303);
     784             :       break;
     785             :     }
     786             :     case SP::SETHIXi:
     787             :     case SP::SETHIi: {
     788             :       // op: imm22
     789          99 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     790          99 :       Value |= op & UINT64_C(4194303);
     791             :       // op: rd
     792          99 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     793          99 :       Value |= (op & UINT64_C(31)) << 25;
     794             :       break;
     795             :     }
     796             :     case SP::FONE:
     797             :     case SP::FONES:
     798             :     case SP::FZERO:
     799             :     case SP::FZEROS:
     800             :     case SP::RDPSR:
     801             :     case SP::RDTBR:
     802             :     case SP::RDWIM: {
     803             :       // op: rd
     804          19 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     805          19 :       Value |= (op & UINT64_C(31)) << 25;
     806             :       break;
     807             :     }
     808             :     case SP::V9MOVFCCrr: {
     809             :       // op: rd
     810          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     811          15 :       Value |= (op & UINT64_C(31)) << 25;
     812             :       // op: cc
     813          15 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     814          15 :       Value |= (op & UINT64_C(3)) << 11;
     815             :       // op: cond
     816          15 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
     817          15 :       Value |= (op & UINT64_C(15)) << 14;
     818             :       // op: rs2
     819          15 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
     820          15 :       Value |= op & UINT64_C(31);
     821             :       break;
     822             :     }
     823             :     case SP::V9MOVFCCri: {
     824             :       // op: rd
     825           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     826           0 :       Value |= (op & UINT64_C(31)) << 25;
     827             :       // op: cc
     828           0 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     829           0 :       Value |= (op & UINT64_C(3)) << 11;
     830             :       // op: cond
     831           0 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
     832           0 :       Value |= (op & UINT64_C(15)) << 14;
     833             :       // op: simm11
     834           0 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
     835           0 :       Value |= op & UINT64_C(2047);
     836             :       break;
     837             :     }
     838             :     case SP::FMOVD_FCC:
     839             :     case SP::FMOVD_ICC:
     840             :     case SP::FMOVD_XCC:
     841             :     case SP::FMOVQ_FCC:
     842             :     case SP::FMOVQ_ICC:
     843             :     case SP::FMOVQ_XCC:
     844             :     case SP::FMOVS_FCC:
     845             :     case SP::FMOVS_ICC:
     846             :     case SP::FMOVS_XCC:
     847             :     case SP::MOVFCCrr:
     848             :     case SP::MOVICCrr:
     849             :     case SP::MOVXCCrr: {
     850             :       // op: rd
     851          56 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     852          56 :       Value |= (op & UINT64_C(31)) << 25;
     853             :       // op: cond
     854          56 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
     855          56 :       Value |= (op & UINT64_C(15)) << 14;
     856             :       // op: rs2
     857          56 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     858          56 :       Value |= op & UINT64_C(31);
     859             :       break;
     860             :     }
     861             :     case SP::MOVFCCri:
     862             :     case SP::MOVICCri:
     863             :     case SP::MOVXCCri: {
     864             :       // op: rd
     865           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     866           0 :       Value |= (op & UINT64_C(31)) << 25;
     867             :       // op: cond
     868           0 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
     869           0 :       Value |= (op & UINT64_C(15)) << 14;
     870             :       // op: simm11
     871           0 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     872           0 :       Value |= op & UINT64_C(2047);
     873             :       break;
     874             :     }
     875             :     case SP::V9FMOVD_FCC:
     876             :     case SP::V9FMOVQ_FCC:
     877             :     case SP::V9FMOVS_FCC: {
     878             :       // op: rd
     879          15 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     880          15 :       Value |= (op & UINT64_C(31)) << 25;
     881             :       // op: cond
     882          15 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
     883          15 :       Value |= (op & UINT64_C(15)) << 14;
     884             :       // op: opf_cc
     885          15 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     886          15 :       Value |= (op & UINT64_C(3)) << 11;
     887             :       // op: rs2
     888          15 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
     889          15 :       Value |= op & UINT64_C(31);
     890             :       break;
     891             :     }
     892             :     case SP::FNOT1:
     893             :     case SP::FNOT1S:
     894             :     case SP::FSRC1:
     895             :     case SP::FSRC1S:
     896             :     case SP::RDASR:
     897             :     case SP::RDPR: {
     898             :       // op: rd
     899          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     900          31 :       Value |= (op & UINT64_C(31)) << 25;
     901             :       // op: rs1
     902          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     903          31 :       Value |= (op & UINT64_C(31)) << 14;
     904             :       break;
     905             :     }
     906             :     case SP::LDArr:
     907             :     case SP::LDDArr:
     908             :     case SP::LDDFArr:
     909             :     case SP::LDFArr:
     910             :     case SP::LDQFArr:
     911             :     case SP::LDSBArr:
     912             :     case SP::LDSHArr:
     913             :     case SP::LDSTUBArr:
     914             :     case SP::LDUBArr:
     915             :     case SP::LDUHArr:
     916             :     case SP::SWAPArr: {
     917             :       // op: rd
     918          20 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     919          20 :       Value |= (op & UINT64_C(31)) << 25;
     920             :       // op: rs1
     921          20 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     922          20 :       Value |= (op & UINT64_C(31)) << 14;
     923             :       // op: asi
     924          20 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
     925          20 :       Value |= (op & UINT64_C(255)) << 5;
     926             :       // op: rs2
     927          20 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
     928          20 :       Value |= op & UINT64_C(31);
     929             :       break;
     930             :     }
     931             :     case SP::CASArr: {
     932             :       // op: rd
     933          10 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
     934          10 :       Value |= (op & UINT64_C(31)) << 25;
     935             :       // op: rs1
     936          10 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
     937          10 :       Value |= (op & UINT64_C(31)) << 14;
     938             :       // op: asi
     939          10 :       op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
     940          10 :       Value |= (op & UINT64_C(255)) << 5;
     941             :       // op: rs2
     942          10 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
     943          10 :       Value |= op & UINT64_C(31);
     944             :       break;
     945             :     }
     946             :     case SP::ADDCCrr:
     947             :     case SP::ADDCrr:
     948             :     case SP::ADDErr:
     949             :     case SP::ADDXC:
     950             :     case SP::ADDXCCC:
     951             :     case SP::ADDXrr:
     952             :     case SP::ADDrr:
     953             :     case SP::ALIGNADDR:
     954             :     case SP::ALIGNADDRL:
     955             :     case SP::ANDCCrr:
     956             :     case SP::ANDNCCrr:
     957             :     case SP::ANDNrr:
     958             :     case SP::ANDXNrr:
     959             :     case SP::ANDXrr:
     960             :     case SP::ANDrr:
     961             :     case SP::ARRAY16:
     962             :     case SP::ARRAY32:
     963             :     case SP::ARRAY8:
     964             :     case SP::BMASK:
     965             :     case SP::BSHUFFLE:
     966             :     case SP::CASAasi10:
     967             :     case SP::CASXrr:
     968             :     case SP::CASrr:
     969             :     case SP::EDGE16:
     970             :     case SP::EDGE16L:
     971             :     case SP::EDGE16LN:
     972             :     case SP::EDGE16N:
     973             :     case SP::EDGE32:
     974             :     case SP::EDGE32L:
     975             :     case SP::EDGE32LN:
     976             :     case SP::EDGE32N:
     977             :     case SP::EDGE8:
     978             :     case SP::EDGE8L:
     979             :     case SP::EDGE8LN:
     980             :     case SP::EDGE8N:
     981             :     case SP::FADDD:
     982             :     case SP::FADDQ:
     983             :     case SP::FADDS:
     984             :     case SP::FALIGNADATA:
     985             :     case SP::FAND:
     986             :     case SP::FANDNOT1:
     987             :     case SP::FANDNOT1S:
     988             :     case SP::FANDNOT2:
     989             :     case SP::FANDNOT2S:
     990             :     case SP::FANDS:
     991             :     case SP::FCHKSM16:
     992             :     case SP::FCMPEQ16:
     993             :     case SP::FCMPEQ32:
     994             :     case SP::FCMPGT16:
     995             :     case SP::FCMPGT32:
     996             :     case SP::FCMPLE16:
     997             :     case SP::FCMPLE32:
     998             :     case SP::FCMPNE16:
     999             :     case SP::FCMPNE32:
    1000             :     case SP::FDIVD:
    1001             :     case SP::FDIVQ:
    1002             :     case SP::FDIVS:
    1003             :     case SP::FDMULQ:
    1004             :     case SP::FHADDD:
    1005             :     case SP::FHADDS:
    1006             :     case SP::FHSUBD:
    1007             :     case SP::FHSUBS:
    1008             :     case SP::FLCMPD:
    1009             :     case SP::FLCMPS:
    1010             :     case SP::FMEAN16:
    1011             :     case SP::FMOVRGEZD:
    1012             :     case SP::FMOVRGEZQ:
    1013             :     case SP::FMOVRGEZS:
    1014             :     case SP::FMOVRGZD:
    1015             :     case SP::FMOVRGZQ:
    1016             :     case SP::FMOVRGZS:
    1017             :     case SP::FMOVRLEZD:
    1018             :     case SP::FMOVRLEZQ:
    1019             :     case SP::FMOVRLEZS:
    1020             :     case SP::FMOVRLZD:
    1021             :     case SP::FMOVRLZQ:
    1022             :     case SP::FMOVRLZS:
    1023             :     case SP::FMOVRNZD:
    1024             :     case SP::FMOVRNZQ:
    1025             :     case SP::FMOVRNZS:
    1026             :     case SP::FMOVRZD:
    1027             :     case SP::FMOVRZQ:
    1028             :     case SP::FMOVRZS:
    1029             :     case SP::FMUL8SUX16:
    1030             :     case SP::FMUL8ULX16:
    1031             :     case SP::FMUL8X16:
    1032             :     case SP::FMUL8X16AL:
    1033             :     case SP::FMUL8X16AU:
    1034             :     case SP::FMULD:
    1035             :     case SP::FMULD8SUX16:
    1036             :     case SP::FMULD8ULX16:
    1037             :     case SP::FMULQ:
    1038             :     case SP::FMULS:
    1039             :     case SP::FNADDD:
    1040             :     case SP::FNADDS:
    1041             :     case SP::FNAND:
    1042             :     case SP::FNANDS:
    1043             :     case SP::FNHADDD:
    1044             :     case SP::FNHADDS:
    1045             :     case SP::FNMULD:
    1046             :     case SP::FNMULS:
    1047             :     case SP::FNOR:
    1048             :     case SP::FNORS:
    1049             :     case SP::FNSMULD:
    1050             :     case SP::FOR:
    1051             :     case SP::FORNOT1:
    1052             :     case SP::FORNOT1S:
    1053             :     case SP::FORNOT2:
    1054             :     case SP::FORNOT2S:
    1055             :     case SP::FORS:
    1056             :     case SP::FPACK32:
    1057             :     case SP::FPADD16:
    1058             :     case SP::FPADD16S:
    1059             :     case SP::FPADD32:
    1060             :     case SP::FPADD32S:
    1061             :     case SP::FPADD64:
    1062             :     case SP::FPMERGE:
    1063             :     case SP::FPSUB16:
    1064             :     case SP::FPSUB16S:
    1065             :     case SP::FPSUB32:
    1066             :     case SP::FPSUB32S:
    1067             :     case SP::FSLAS16:
    1068             :     case SP::FSLAS32:
    1069             :     case SP::FSLL16:
    1070             :     case SP::FSLL32:
    1071             :     case SP::FSMULD:
    1072             :     case SP::FSRA16:
    1073             :     case SP::FSRA32:
    1074             :     case SP::FSRL16:
    1075             :     case SP::FSRL32:
    1076             :     case SP::FSUBD:
    1077             :     case SP::FSUBQ:
    1078             :     case SP::FSUBS:
    1079             :     case SP::FXNOR:
    1080             :     case SP::FXNORS:
    1081             :     case SP::FXOR:
    1082             :     case SP::FXORS:
    1083             :     case SP::JMPLrr:
    1084             :     case SP::LDCrr:
    1085             :     case SP::LDDCrr:
    1086             :     case SP::LDDFrr:
    1087             :     case SP::LDDrr:
    1088             :     case SP::LDFrr:
    1089             :     case SP::LDQFrr:
    1090             :     case SP::LDSBrr:
    1091             :     case SP::LDSHrr:
    1092             :     case SP::LDSTUBrr:
    1093             :     case SP::LDSWrr:
    1094             :     case SP::LDUBrr:
    1095             :     case SP::LDUHrr:
    1096             :     case SP::LDXrr:
    1097             :     case SP::LDrr:
    1098             :     case SP::MOVRGEZrr:
    1099             :     case SP::MOVRGZrr:
    1100             :     case SP::MOVRLEZrr:
    1101             :     case SP::MOVRLZrr:
    1102             :     case SP::MOVRNZrr:
    1103             :     case SP::MOVRRZrr:
    1104             :     case SP::MULSCCrr:
    1105             :     case SP::MULXrr:
    1106             :     case SP::ORCCrr:
    1107             :     case SP::ORNCCrr:
    1108             :     case SP::ORNrr:
    1109             :     case SP::ORXNrr:
    1110             :     case SP::ORXrr:
    1111             :     case SP::ORrr:
    1112             :     case SP::PDIST:
    1113             :     case SP::PDISTN:
    1114             :     case SP::RESTORErr:
    1115             :     case SP::SAVErr:
    1116             :     case SP::SDIVCCrr:
    1117             :     case SP::SDIVXrr:
    1118             :     case SP::SDIVrr:
    1119             :     case SP::SLLXrr:
    1120             :     case SP::SLLrr:
    1121             :     case SP::SMACrr:
    1122             :     case SP::SMULCCrr:
    1123             :     case SP::SMULrr:
    1124             :     case SP::SRAXrr:
    1125             :     case SP::SRArr:
    1126             :     case SP::SRLXrr:
    1127             :     case SP::SRLrr:
    1128             :     case SP::SUBCCrr:
    1129             :     case SP::SUBCrr:
    1130             :     case SP::SUBErr:
    1131             :     case SP::SUBXrr:
    1132             :     case SP::SUBrr:
    1133             :     case SP::SWAPrr:
    1134             :     case SP::TADDCCTVrr:
    1135             :     case SP::TADDCCrr:
    1136             :     case SP::TLS_ADDXrr:
    1137             :     case SP::TLS_ADDrr:
    1138             :     case SP::TLS_LDXrr:
    1139             :     case SP::TLS_LDrr:
    1140             :     case SP::TSUBCCTVrr:
    1141             :     case SP::TSUBCCrr:
    1142             :     case SP::UDIVCCrr:
    1143             :     case SP::UDIVXrr:
    1144             :     case SP::UDIVrr:
    1145             :     case SP::UMACrr:
    1146             :     case SP::UMULCCrr:
    1147             :     case SP::UMULXHI:
    1148             :     case SP::UMULrr:
    1149             :     case SP::V9FCMPD:
    1150             :     case SP::V9FCMPED:
    1151             :     case SP::V9FCMPEQ:
    1152             :     case SP::V9FCMPES:
    1153             :     case SP::V9FCMPQ:
    1154             :     case SP::V9FCMPS:
    1155             :     case SP::WRASRrr:
    1156             :     case SP::WRPRrr:
    1157             :     case SP::XMULX:
    1158             :     case SP::XMULXHI:
    1159             :     case SP::XNORCCrr:
    1160             :     case SP::XNORXrr:
    1161             :     case SP::XNORrr:
    1162             :     case SP::XORCCrr:
    1163             :     case SP::XORXrr:
    1164             :     case SP::XORrr: {
    1165             :       // op: rd
    1166         354 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1167         354 :       Value |= (op & UINT64_C(31)) << 25;
    1168             :       // op: rs1
    1169         354 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1170         354 :       Value |= (op & UINT64_C(31)) << 14;
    1171             :       // op: rs2
    1172         354 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    1173         354 :       Value |= op & UINT64_C(31);
    1174             :       break;
    1175             :     }
    1176             :     case SP::SLLXri:
    1177             :     case SP::SRAXri:
    1178             :     case SP::SRLXri: {
    1179             :       // op: rd
    1180           6 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1181           6 :       Value |= (op & UINT64_C(31)) << 25;
    1182             :       // op: rs1
    1183           6 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1184           6 :       Value |= (op & UINT64_C(31)) << 14;
    1185             :       // op: shcnt
    1186           6 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    1187           6 :       Value |= op & UINT64_C(63);
    1188             :       break;
    1189             :     }
    1190             :     case SP::MOVRGEZri:
    1191             :     case SP::MOVRGZri:
    1192             :     case SP::MOVRLEZri:
    1193             :     case SP::MOVRLZri:
    1194             :     case SP::MOVRNZri:
    1195             :     case SP::MOVRRZri: {
    1196             :       // op: rd
    1197           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1198           0 :       Value |= (op & UINT64_C(31)) << 25;
    1199             :       // op: rs1
    1200           0 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1201           0 :       Value |= (op & UINT64_C(31)) << 14;
    1202             :       // op: simm10
    1203           0 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    1204           0 :       Value |= op & UINT64_C(1023);
    1205             :       break;
    1206             :     }
    1207             :     case SP::ADDCCri:
    1208             :     case SP::ADDCri:
    1209             :     case SP::ADDEri:
    1210             :     case SP::ADDXri:
    1211             :     case SP::ADDri:
    1212             :     case SP::ANDCCri:
    1213             :     case SP::ANDNCCri:
    1214             :     case SP::ANDNri:
    1215             :     case SP::ANDXri:
    1216             :     case SP::ANDri:
    1217             :     case SP::JMPLri:
    1218             :     case SP::LDCri:
    1219             :     case SP::LDDCri:
    1220             :     case SP::LDDFri:
    1221             :     case SP::LDDri:
    1222             :     case SP::LDFri:
    1223             :     case SP::LDQFri:
    1224             :     case SP::LDSBri:
    1225             :     case SP::LDSHri:
    1226             :     case SP::LDSTUBri:
    1227             :     case SP::LDSWri:
    1228             :     case SP::LDUBri:
    1229             :     case SP::LDUHri:
    1230             :     case SP::LDXri:
    1231             :     case SP::LDri:
    1232             :     case SP::LEAX_ADDri:
    1233             :     case SP::LEA_ADDri:
    1234             :     case SP::MULSCCri:
    1235             :     case SP::MULXri:
    1236             :     case SP::ORCCri:
    1237             :     case SP::ORNCCri:
    1238             :     case SP::ORNri:
    1239             :     case SP::ORXri:
    1240             :     case SP::ORri:
    1241             :     case SP::RESTOREri:
    1242             :     case SP::SAVEri:
    1243             :     case SP::SDIVCCri:
    1244             :     case SP::SDIVXri:
    1245             :     case SP::SDIVri:
    1246             :     case SP::SLLri:
    1247             :     case SP::SMACri:
    1248             :     case SP::SMULCCri:
    1249             :     case SP::SMULri:
    1250             :     case SP::SRAri:
    1251             :     case SP::SRLri:
    1252             :     case SP::SUBCCri:
    1253             :     case SP::SUBCri:
    1254             :     case SP::SUBEri:
    1255             :     case SP::SUBXri:
    1256             :     case SP::SUBri:
    1257             :     case SP::SWAPri:
    1258             :     case SP::TADDCCTVri:
    1259             :     case SP::TADDCCri:
    1260             :     case SP::TSUBCCTVri:
    1261             :     case SP::TSUBCCri:
    1262             :     case SP::UDIVCCri:
    1263             :     case SP::UDIVXri:
    1264             :     case SP::UDIVri:
    1265             :     case SP::UMACri:
    1266             :     case SP::UMULCCri:
    1267             :     case SP::UMULri:
    1268             :     case SP::WRASRri:
    1269             :     case SP::WRPRri:
    1270             :     case SP::XNORCCri:
    1271             :     case SP::XNORri:
    1272             :     case SP::XORCCri:
    1273             :     case SP::XORXri:
    1274             :     case SP::XORri: {
    1275             :       // op: rd
    1276         260 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1277         260 :       Value |= (op & UINT64_C(31)) << 25;
    1278             :       // op: rs1
    1279         260 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1280         260 :       Value |= (op & UINT64_C(31)) << 14;
    1281             :       // op: simm13
    1282         260 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    1283         260 :       Value |= op & UINT64_C(8191);
    1284             :       break;
    1285             :     }
    1286             :     case SP::FABSD:
    1287             :     case SP::FABSQ:
    1288             :     case SP::FABSS:
    1289             :     case SP::FDTOI:
    1290             :     case SP::FDTOQ:
    1291             :     case SP::FDTOS:
    1292             :     case SP::FDTOX:
    1293             :     case SP::FEXPAND:
    1294             :     case SP::FITOD:
    1295             :     case SP::FITOQ:
    1296             :     case SP::FITOS:
    1297             :     case SP::FMOVD:
    1298             :     case SP::FMOVQ:
    1299             :     case SP::FMOVS:
    1300             :     case SP::FNEGD:
    1301             :     case SP::FNEGQ:
    1302             :     case SP::FNEGS:
    1303             :     case SP::FNOT2:
    1304             :     case SP::FNOT2S:
    1305             :     case SP::FPACK16:
    1306             :     case SP::FPACKFIX:
    1307             :     case SP::FQTOD:
    1308             :     case SP::FQTOI:
    1309             :     case SP::FQTOS:
    1310             :     case SP::FQTOX:
    1311             :     case SP::FSQRTD:
    1312             :     case SP::FSQRTQ:
    1313             :     case SP::FSQRTS:
    1314             :     case SP::FSRC2:
    1315             :     case SP::FSRC2S:
    1316             :     case SP::FSTOD:
    1317             :     case SP::FSTOI:
    1318             :     case SP::FSTOQ:
    1319             :     case SP::FSTOX:
    1320             :     case SP::FXTOD:
    1321             :     case SP::FXTOQ:
    1322             :     case SP::FXTOS:
    1323             :     case SP::LZCNT:
    1324             :     case SP::MOVDTOX:
    1325             :     case SP::MOVSTOSW:
    1326             :     case SP::MOVSTOUW:
    1327             :     case SP::MOVWTOS:
    1328             :     case SP::MOVXTOD:
    1329             :     case SP::POPCrr: {
    1330             :       // op: rd
    1331          31 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1332          31 :       Value |= (op & UINT64_C(31)) << 25;
    1333             :       // op: rs2
    1334          31 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1335          31 :       Value |= op & UINT64_C(31);
    1336             :       break;
    1337             :     }
    1338             :     case SP::STArr:
    1339             :     case SP::STBArr:
    1340             :     case SP::STDArr:
    1341             :     case SP::STDFArr:
    1342             :     case SP::STFArr:
    1343             :     case SP::STHArr:
    1344             :     case SP::STQFArr: {
    1345             :       // op: rd
    1346          19 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    1347          19 :       Value |= (op & UINT64_C(31)) << 25;
    1348             :       // op: rs1
    1349          19 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1350          19 :       Value |= (op & UINT64_C(31)) << 14;
    1351             :       // op: asi
    1352          19 :       op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
    1353          19 :       Value |= (op & UINT64_C(255)) << 5;
    1354             :       // op: rs2
    1355          19 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1356          19 :       Value |= op & UINT64_C(31);
    1357             :       break;
    1358             :     }
    1359             :     case SP::STBrr:
    1360             :     case SP::STCrr:
    1361             :     case SP::STDCrr:
    1362             :     case SP::STDFrr:
    1363             :     case SP::STDrr:
    1364             :     case SP::STFrr:
    1365             :     case SP::STHrr:
    1366             :     case SP::STQFrr:
    1367             :     case SP::STXrr:
    1368             :     case SP::STrr: {
    1369             :       // op: rd
    1370          55 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    1371          55 :       Value |= (op & UINT64_C(31)) << 25;
    1372             :       // op: rs1
    1373          55 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1374          55 :       Value |= (op & UINT64_C(31)) << 14;
    1375             :       // op: rs2
    1376          55 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1377          55 :       Value |= op & UINT64_C(31);
    1378             :       break;
    1379             :     }
    1380             :     case SP::STBri:
    1381             :     case SP::STCri:
    1382             :     case SP::STDCri:
    1383             :     case SP::STDFri:
    1384             :     case SP::STDri:
    1385             :     case SP::STFri:
    1386             :     case SP::STHri:
    1387             :     case SP::STQFri:
    1388             :     case SP::STXri:
    1389             :     case SP::STri: {
    1390             :       // op: rd
    1391          17 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    1392          17 :       Value |= (op & UINT64_C(31)) << 25;
    1393             :       // op: rs1
    1394          17 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1395          17 :       Value |= (op & UINT64_C(31)) << 14;
    1396             :       // op: simm13
    1397          17 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1398          17 :       Value |= op & UINT64_C(8191);
    1399             :       break;
    1400             :     }
    1401             :     case SP::TICCri:
    1402             :     case SP::TRAPri:
    1403             :     case SP::TXCCri: {
    1404             :       // op: rs1
    1405          97 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1406          97 :       Value |= (op & UINT64_C(31)) << 14;
    1407             :       // op: cond
    1408          97 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    1409          97 :       Value |= (op & UINT64_C(15)) << 25;
    1410             :       // op: imm
    1411          97 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1412          97 :       Value |= op & UINT64_C(255);
    1413             :       break;
    1414             :     }
    1415             :     case SP::TICCrr:
    1416             :     case SP::TRAPrr:
    1417             :     case SP::TXCCrr: {
    1418             :       // op: rs1
    1419         102 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1420         102 :       Value |= (op & UINT64_C(31)) << 14;
    1421             :       // op: cond
    1422         102 :       op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
    1423         102 :       Value |= (op & UINT64_C(15)) << 25;
    1424             :       // op: rs2
    1425         102 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1426         102 :       Value |= op & UINT64_C(31);
    1427             :       break;
    1428             :     }
    1429             :     case SP::BINDrr:
    1430             :     case SP::CALLrr:
    1431             :     case SP::CMPrr:
    1432             :     case SP::FCMPD:
    1433             :     case SP::FCMPQ:
    1434             :     case SP::FCMPS:
    1435             :     case SP::FLUSHrr:
    1436             :     case SP::LDCSRrr:
    1437             :     case SP::LDFSRrr:
    1438             :     case SP::LDXFSRrr:
    1439             :     case SP::RETTrr:
    1440             :     case SP::STCSRrr:
    1441             :     case SP::STDCQrr:
    1442             :     case SP::STDFQrr:
    1443             :     case SP::STFSRrr:
    1444             :     case SP::STXFSRrr:
    1445             :     case SP::WRPSRrr:
    1446             :     case SP::WRTBRrr:
    1447             :     case SP::WRWIMrr: {
    1448             :       // op: rs1
    1449          48 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1450          48 :       Value |= (op & UINT64_C(31)) << 14;
    1451             :       // op: rs2
    1452          48 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1453          48 :       Value |= op & UINT64_C(31);
    1454             :       break;
    1455             :     }
    1456             :     case SP::BINDri:
    1457             :     case SP::CALLri:
    1458             :     case SP::CMPri:
    1459             :     case SP::FLUSHri:
    1460             :     case SP::LDCSRri:
    1461             :     case SP::LDFSRri:
    1462             :     case SP::LDXFSRri:
    1463             :     case SP::RETTri:
    1464             :     case SP::STCSRri:
    1465             :     case SP::STDCQri:
    1466             :     case SP::STDFQri:
    1467             :     case SP::STFSRri:
    1468             :     case SP::STXFSRri:
    1469             :     case SP::WRPSRri:
    1470             :     case SP::WRTBRri:
    1471             :     case SP::WRWIMri: {
    1472             :       // op: rs1
    1473          51 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1474          51 :       Value |= (op & UINT64_C(31)) << 14;
    1475             :       // op: simm13
    1476          51 :       op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
    1477          51 :       Value |= op & UINT64_C(8191);
    1478             :       break;
    1479             :     }
    1480             :     case SP::CMASK16:
    1481             :     case SP::CMASK32:
    1482             :     case SP::CMASK8: {
    1483             :       // op: rs2
    1484           0 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1485           0 :       Value |= op & UINT64_C(31);
    1486             :       break;
    1487             :     }
    1488             :     case SP::MEMBARi:
    1489             :     case SP::RET:
    1490             :     case SP::RETL: {
    1491             :       // op: simm13
    1492          27 :       op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
    1493          27 :       Value |= op & UINT64_C(8191);
    1494             :       break;
    1495             :     }
    1496             :   default:
    1497             :     std::string msg;
    1498             :     raw_string_ostream Msg(msg);
    1499           0 :     Msg << "Not supported instr: " << MI;
    1500           0 :     report_fatal_error(Msg.str());
    1501             :   }
    1502        1853 :   return Value;
    1503             : }
    1504             : 
    1505             : #ifdef ENABLE_INSTR_PREDICATE_VERIFIER
    1506             : #undef ENABLE_INSTR_PREDICATE_VERIFIER
    1507             : #include <sstream>
    1508             : 
    1509             : // Flags for subtarget features that participate in instruction matching.
    1510             : enum SubtargetFeatureFlag : uint8_t {
    1511             :   Feature_UseSoftMulDiv = (1ULL << 4),
    1512             :   Feature_HasV9 = (1ULL << 0),
    1513             :   Feature_HasVIS = (1ULL << 1),
    1514             :   Feature_HasVIS2 = (1ULL << 2),
    1515             :   Feature_HasVIS3 = (1ULL << 3),
    1516             :   Feature_None = 0
    1517             : };
    1518             : 
    1519             : #ifndef NDEBUG
    1520             : static const char *SubtargetFeatureNames[] = {
    1521             :   "Feature_HasV9",
    1522             :   "Feature_HasVIS",
    1523             :   "Feature_HasVIS2",
    1524             :   "Feature_HasVIS3",
    1525             :   "Feature_UseSoftMulDiv",
    1526             :   nullptr
    1527             : };
    1528             : 
    1529             : #endif // NDEBUG
    1530             : uint64_t SparcMCCodeEmitter::
    1531             : computeAvailableFeatures(const FeatureBitset& FB) const {
    1532             :   uint64_t Features = 0;
    1533             :   if ((FB[Sparc::FeatureSoftMulDiv]))
    1534             :     Features |= Feature_UseSoftMulDiv;
    1535             :   if ((FB[Sparc::FeatureV9]))
    1536             :     Features |= Feature_HasV9;
    1537             :   if ((FB[Sparc::FeatureVIS]))
    1538             :     Features |= Feature_HasVIS;
    1539             :   if ((FB[Sparc::FeatureVIS2]))
    1540             :     Features |= Feature_HasVIS2;
    1541             :   if ((FB[Sparc::FeatureVIS3]))
    1542             :     Features |= Feature_HasVIS3;
    1543             :   return Features;
    1544             : }
    1545             : 
    1546             : void SparcMCCodeEmitter::verifyInstructionPredicates(
    1547             :     const MCInst &Inst, uint64_t AvailableFeatures) const {
    1548             : #ifndef NDEBUG
    1549             :   static uint64_t RequiredFeatures[] = {
    1550             :     0, // PHI = 0
    1551             :     0, // INLINEASM = 1
    1552             :     0, // CFI_INSTRUCTION = 2
    1553             :     0, // EH_LABEL = 3
    1554             :     0, // GC_LABEL = 4
    1555             :     0, // ANNOTATION_LABEL = 5
    1556             :     0, // KILL = 6
    1557             :     0, // EXTRACT_SUBREG = 7
    1558             :     0, // INSERT_SUBREG = 8
    1559             :     0, // IMPLICIT_DEF = 9
    1560             :     0, // SUBREG_TO_REG = 10
    1561             :     0, // COPY_TO_REGCLASS = 11
    1562             :     0, // DBG_VALUE = 12
    1563             :     0, // DBG_LABEL = 13
    1564             :     0, // REG_SEQUENCE = 14
    1565             :     0, // COPY = 15
    1566             :     0, // BUNDLE = 16
    1567             :     0, // LIFETIME_START = 17
    1568             :     0, // LIFETIME_END = 18
    1569             :     0, // STACKMAP = 19
    1570             :     0, // FENTRY_CALL = 20
    1571             :     0, // PATCHPOINT = 21
    1572             :     0, // LOAD_STACK_GUARD = 22
    1573             :     0, // STATEPOINT = 23
    1574             :     0, // LOCAL_ESCAPE = 24
    1575             :     0, // FAULTING_OP = 25
    1576             :     0, // PATCHABLE_OP = 26
    1577             :     0, // PATCHABLE_FUNCTION_ENTER = 27
    1578             :     0, // PATCHABLE_RET = 28
    1579             :     0, // PATCHABLE_FUNCTION_EXIT = 29
    1580             :     0, // PATCHABLE_TAIL_CALL = 30
    1581             :     0, // PATCHABLE_EVENT_CALL = 31
    1582             :     0, // PATCHABLE_TYPED_EVENT_CALL = 32
    1583             :     0, // ICALL_BRANCH_FUNNEL = 33
    1584             :     0, // G_ADD = 34
    1585             :     0, // G_SUB = 35
    1586             :     0, // G_MUL = 36
    1587             :     0, // G_SDIV = 37
    1588             :     0, // G_UDIV = 38
    1589             :     0, // G_SREM = 39
    1590             :     0, // G_UREM = 40
    1591             :     0, // G_AND = 41
    1592             :     0, // G_OR = 42
    1593             :     0, // G_XOR = 43
    1594             :     0, // G_IMPLICIT_DEF = 44
    1595             :     0, // G_PHI = 45
    1596             :     0, // G_FRAME_INDEX = 46
    1597             :     0, // G_GLOBAL_VALUE = 47
    1598             :     0, // G_EXTRACT = 48
    1599             :     0, // G_UNMERGE_VALUES = 49
    1600             :     0, // G_INSERT = 50
    1601             :     0, // G_MERGE_VALUES = 51
    1602             :     0, // G_PTRTOINT = 52
    1603             :     0, // G_INTTOPTR = 53
    1604             :     0, // G_BITCAST = 54
    1605             :     0, // G_LOAD = 55
    1606             :     0, // G_SEXTLOAD = 56
    1607             :     0, // G_ZEXTLOAD = 57
    1608             :     0, // G_STORE = 58
    1609             :     0, // G_ATOMIC_CMPXCHG_WITH_SUCCESS = 59
    1610             :     0, // G_ATOMIC_CMPXCHG = 60
    1611             :     0, // G_ATOMICRMW_XCHG = 61
    1612             :     0, // G_ATOMICRMW_ADD = 62
    1613             :     0, // G_ATOMICRMW_SUB = 63
    1614             :     0, // G_ATOMICRMW_AND = 64
    1615             :     0, // G_ATOMICRMW_NAND = 65
    1616             :     0, // G_ATOMICRMW_OR = 66
    1617             :     0, // G_ATOMICRMW_XOR = 67
    1618             :     0, // G_ATOMICRMW_MAX = 68
    1619             :     0, // G_ATOMICRMW_MIN = 69
    1620             :     0, // G_ATOMICRMW_UMAX = 70
    1621             :     0, // G_ATOMICRMW_UMIN = 71
    1622             :     0, // G_BRCOND = 72
    1623             :     0, // G_BRINDIRECT = 73
    1624             :     0, // G_INTRINSIC = 74
    1625             :     0, // G_INTRINSIC_W_SIDE_EFFECTS = 75
    1626             :     0, // G_ANYEXT = 76
    1627             :     0, // G_TRUNC = 77
    1628             :     0, // G_CONSTANT = 78
    1629             :     0, // G_FCONSTANT = 79
    1630             :     0, // G_VASTART = 80
    1631             :     0, // G_VAARG = 81
    1632             :     0, // G_SEXT = 82
    1633             :     0, // G_ZEXT = 83
    1634             :     0, // G_SHL = 84
    1635             :     0, // G_LSHR = 85
    1636             :     0, // G_ASHR = 86
    1637             :     0, // G_ICMP = 87
    1638             :     0, // G_FCMP = 88
    1639             :     0, // G_SELECT = 89
    1640             :     0, // G_UADDE = 90
    1641             :     0, // G_USUBE = 91
    1642             :     0, // G_SADDO = 92
    1643             :     0, // G_SSUBO = 93
    1644             :     0, // G_UMULO = 94
    1645             :     0, // G_SMULO = 95
    1646             :     0, // G_UMULH = 96
    1647             :     0, // G_SMULH = 97
    1648             :     0, // G_FADD = 98
    1649             :     0, // G_FSUB = 99
    1650             :     0, // G_FMUL = 100
    1651             :     0, // G_FMA = 101
    1652             :     0, // G_FDIV = 102
    1653             :     0, // G_FREM = 103
    1654             :     0, // G_FPOW = 104
    1655             :     0, // G_FEXP = 105
    1656             :     0, // G_FEXP2 = 106
    1657             :     0, // G_FLOG = 107
    1658             :     0, // G_FLOG2 = 108
    1659             :     0, // G_FNEG = 109
    1660             :     0, // G_FPEXT = 110
    1661             :     0, // G_FPTRUNC = 111
    1662             :     0, // G_FPTOSI = 112
    1663             :     0, // G_FPTOUI = 113
    1664             :     0, // G_SITOFP = 114
    1665             :     0, // G_UITOFP = 115
    1666             :     0, // G_FABS = 116
    1667             :     0, // G_GEP = 117
    1668             :     0, // G_PTR_MASK = 118
    1669             :     0, // G_BR = 119
    1670             :     0, // G_INSERT_VECTOR_ELT = 120
    1671             :     0, // G_EXTRACT_VECTOR_ELT = 121
    1672             :     0, // G_SHUFFLE_VECTOR = 122
    1673             :     0, // G_BSWAP = 123
    1674             :     0, // ADJCALLSTACKDOWN = 124
    1675             :     0, // ADJCALLSTACKUP = 125
    1676             :     0, // EH_SJLJ_LONGJMP32ri = 126
    1677             :     0, // EH_SJLJ_LONGJMP32rr = 127
    1678             :     0, // EH_SJLJ_SETJMP32ri = 128
    1679             :     0, // EH_SJLJ_SETJMP32rr = 129
    1680             :     0, // GETPCX = 130
    1681             :     0, // SELECT_CC_DFP_FCC = 131
    1682             :     0, // SELECT_CC_DFP_ICC = 132
    1683             :     0, // SELECT_CC_FP_FCC = 133
    1684             :     0, // SELECT_CC_FP_ICC = 134
    1685             :     0, // SELECT_CC_Int_FCC = 135
    1686             :     0, // SELECT_CC_Int_ICC = 136
    1687             :     0, // SELECT_CC_QFP_FCC = 137
    1688             :     0, // SELECT_CC_QFP_ICC = 138
    1689             :     0, // SET = 139
    1690             :     0, // ADDCCri = 140
    1691             :     0, // ADDCCrr = 141
    1692             :     0, // ADDCri = 142
    1693             :     0, // ADDCrr = 143
    1694             :     0, // ADDEri = 144
    1695             :     0, // ADDErr = 145
    1696             :     Feature_HasVIS3 | 0, // ADDXC = 146
    1697             :     Feature_HasVIS3 | 0, // ADDXCCC = 147
    1698             :     0, // ADDXri = 148
    1699             :     0, // ADDXrr = 149
    1700             :     0, // ADDri = 150
    1701             :     0, // ADDrr = 151
    1702             :     Feature_HasVIS | 0, // ALIGNADDR = 152
    1703             :     Feature_HasVIS | 0, // ALIGNADDRL = 153
    1704             :     0, // ANDCCri = 154
    1705             :     0, // ANDCCrr = 155
    1706             :     0, // ANDNCCri = 156
    1707             :     0, // ANDNCCrr = 157
    1708             :     0, // ANDNri = 158
    1709             :     0, // ANDNrr = 159
    1710             :     0, // ANDXNrr = 160
    1711             :     0, // ANDXri = 161
    1712             :     0, // ANDXrr = 162
    1713             :     0, // ANDri = 163
    1714             :     0, // ANDrr = 164
    1715             :     Feature_HasVIS | 0, // ARRAY16 = 165
    1716             :     Feature_HasVIS | 0, // ARRAY32 = 166
    1717             :     Feature_HasVIS | 0, // ARRAY8 = 167
    1718             :     0, // BA = 168
    1719             :     0, // BCOND = 169
    1720             :     0, // BCONDA = 170
    1721             :     0, // BINDri = 171
    1722             :     0, // BINDrr = 172
    1723             :     Feature_HasVIS2 | 0, // BMASK = 173
    1724             :     Feature_HasV9 | 0, // BPFCC = 174
    1725             :     Feature_HasV9 | 0, // BPFCCA = 175
    1726             :     Feature_HasV9 | 0, // BPFCCANT = 176
    1727             :     Feature_HasV9 | 0, // BPFCCNT = 177
    1728             :     0, // BPGEZapn = 178
    1729             :     0, // BPGEZapt = 179
    1730             :     0, // BPGEZnapn = 180
    1731             :     0, // BPGEZnapt = 181
    1732             :     0, // BPGZapn = 182
    1733             :     0, // BPGZapt = 183
    1734             :     0, // BPGZnapn = 184
    1735             :     0, // BPGZnapt = 185
    1736             :     Feature_HasV9 | 0, // BPICC = 186
    1737             :     Feature_HasV9 | 0, // BPICCA = 187
    1738             :     Feature_HasV9 | 0, // BPICCANT = 188
    1739             :     Feature_HasV9 | 0, // BPICCNT = 189
    1740             :     0, // BPLEZapn = 190
    1741             :     0, // BPLEZapt = 191
    1742             :     0, // BPLEZnapn = 192
    1743             :     0, // BPLEZnapt = 193
    1744             :     0, // BPLZapn = 194
    1745             :     0, // BPLZapt = 195
    1746             :     0, // BPLZnapn = 196
    1747             :     0, // BPLZnapt = 197
    1748             :     0, // BPNZapn = 198
    1749             :     0, // BPNZapt = 199
    1750             :     0, // BPNZnapn = 200
    1751             :     0, // BPNZnapt = 201
    1752             :     0, // BPXCC = 202
    1753             :     0, // BPXCCA = 203
    1754             :     0, // BPXCCANT = 204
    1755             :     0, // BPXCCNT = 205
    1756             :     0, // BPZapn = 206
    1757             :     0, // BPZapt = 207
    1758             :     0, // BPZnapn = 208
    1759             :     0, // BPZnapt = 209
    1760             :     Feature_HasVIS2 | 0, // BSHUFFLE = 210
    1761             :     0, // CALL = 211
    1762             :     0, // CALLri = 212
    1763             :     0, // CALLrr = 213
    1764             :     0, // CASAasi10 = 214
    1765             :     0, // CASArr = 215
    1766             :     0, // CASXrr = 216
    1767             :     Feature_HasV9 | 0, // CASrr = 217
    1768             :     0, // CBCOND = 218
    1769             :     0, // CBCONDA = 219
    1770             :     Feature_HasVIS3 | 0, // CMASK16 = 220
    1771             :     Feature_HasVIS3 | 0, // CMASK32 = 221
    1772             :     Feature_HasVIS3 | 0, // CMASK8 = 222
    1773             :     0, // CMPri = 223
    1774             :     0, // CMPrr = 224
    1775             :     Feature_HasVIS | 0, // EDGE16 = 225
    1776             :     Feature_HasVIS | 0, // EDGE16L = 226
    1777             :     Feature_HasVIS2 | 0, // EDGE16LN = 227
    1778             :     Feature_HasVIS2 | 0, // EDGE16N = 228
    1779             :     Feature_HasVIS | 0, // EDGE32 = 229
    1780             :     Feature_HasVIS | 0, // EDGE32L = 230
    1781             :     Feature_HasVIS2 | 0, // EDGE32LN = 231
    1782             :     Feature_HasVIS2 | 0, // EDGE32N = 232
    1783             :     Feature_HasVIS | 0, // EDGE8 = 233
    1784             :     Feature_HasVIS | 0, // EDGE8L = 234
    1785             :     Feature_HasVIS2 | 0, // EDGE8LN = 235
    1786             :     Feature_HasVIS2 | 0, // EDGE8N = 236
    1787             :     Feature_HasV9 | 0, // FABSD = 237
    1788             :     Feature_HasV9 | 0, // FABSQ = 238
    1789             :     0, // FABSS = 239
    1790             :     0, // FADDD = 240
    1791             :     0, // FADDQ = 241
    1792             :     0, // FADDS = 242
    1793             :     Feature_HasVIS | 0, // FALIGNADATA = 243
    1794             :     Feature_HasVIS | 0, // FAND = 244
    1795             :     Feature_HasVIS | 0, // FANDNOT1 = 245
    1796             :     Feature_HasVIS | 0, // FANDNOT1S = 246
    1797             :     Feature_HasVIS | 0, // FANDNOT2 = 247
    1798             :     Feature_HasVIS | 0, // FANDNOT2S = 248
    1799             :     Feature_HasVIS | 0, // FANDS = 249
    1800             :     0, // FBCOND = 250
    1801             :     0, // FBCONDA = 251
    1802             :     Feature_HasVIS3 | 0, // FCHKSM16 = 252
    1803             :     0, // FCMPD = 253
    1804             :     Feature_HasVIS | 0, // FCMPEQ16 = 254
    1805             :     Feature_HasVIS | 0, // FCMPEQ32 = 255
    1806             :     Feature_HasVIS | 0, // FCMPGT16 = 256
    1807             :     Feature_HasVIS | 0, // FCMPGT32 = 257
    1808             :     Feature_HasVIS | 0, // FCMPLE16 = 258
    1809             :     Feature_HasVIS | 0, // FCMPLE32 = 259
    1810             :     Feature_HasVIS | 0, // FCMPNE16 = 260
    1811             :     Feature_HasVIS | 0, // FCMPNE32 = 261
    1812             :     0, // FCMPQ = 262
    1813             :     0, // FCMPS = 263
    1814             :     0, // FDIVD = 264
    1815             :     0, // FDIVQ = 265
    1816             :     0, // FDIVS = 266
    1817             :     0, // FDMULQ = 267
    1818             :     0, // FDTOI = 268
    1819             :     0, // FDTOQ = 269
    1820             :     0, // FDTOS = 270
    1821             :     0, // FDTOX = 271
    1822             :     Feature_HasVIS | 0, // FEXPAND = 272
    1823             :     Feature_HasVIS3 | 0, // FHADDD = 273
    1824             :     Feature_HasVIS3 | 0, // FHADDS = 274
    1825             :     Feature_HasVIS3 | 0, // FHSUBD = 275
    1826             :     Feature_HasVIS3 | 0, // FHSUBS = 276
    1827             :     0, // FITOD = 277
    1828             :     0, // FITOQ = 278
    1829             :     0, // FITOS = 279
    1830             :     Feature_HasVIS3 | 0, // FLCMPD = 280
    1831             :     Feature_HasVIS3 | 0, // FLCMPS = 281
    1832             :     0, // FLUSH = 282
    1833             :     Feature_HasV9 | 0, // FLUSHW = 283
    1834             :     0, // FLUSHri = 284
    1835             :     0, // FLUSHrr = 285
    1836             :     Feature_HasVIS3 | 0, // FMEAN16 = 286
    1837             :     Feature_HasV9 | 0, // FMOVD = 287
    1838             :     Feature_HasV9 | 0, // FMOVD_FCC = 288
    1839             :     Feature_HasV9 | 0, // FMOVD_ICC = 289
    1840             :     0, // FMOVD_XCC = 290
    1841             :     Feature_HasV9 | 0, // FMOVQ = 291
    1842             :     Feature_HasV9 | 0, // FMOVQ_FCC = 292
    1843             :     Feature_HasV9 | 0, // FMOVQ_ICC = 293
    1844             :     0, // FMOVQ_XCC = 294
    1845             :     Feature_HasV9 | 0, // FMOVRGEZD = 295
    1846             :     Feature_HasV9 | 0, // FMOVRGEZQ = 296
    1847             :     Feature_HasV9 | 0, // FMOVRGEZS = 297
    1848             :     Feature_HasV9 | 0, // FMOVRGZD = 298
    1849             :     Feature_HasV9 | 0, // FMOVRGZQ = 299
    1850             :     Feature_HasV9 | 0, // FMOVRGZS = 300
    1851             :     Feature_HasV9 | 0, // FMOVRLEZD = 301
    1852             :     Feature_HasV9 | 0, // FMOVRLEZQ = 302
    1853             :     Feature_HasV9 | 0, // FMOVRLEZS = 303
    1854             :     Feature_HasV9 | 0, // FMOVRLZD = 304
    1855             :     Feature_HasV9 | 0, // FMOVRLZQ = 305
    1856             :     Feature_HasV9 | 0, // FMOVRLZS = 306
    1857             :     Feature_HasV9 | 0, // FMOVRNZD = 307
    1858             :     Feature_HasV9 | 0, // FMOVRNZQ = 308
    1859             :     Feature_HasV9 | 0, // FMOVRNZS = 309
    1860             :     Feature_HasV9 | 0, // FMOVRZD = 310
    1861             :     Feature_HasV9 | 0, // FMOVRZQ = 311
    1862             :     Feature_HasV9 | 0, // FMOVRZS = 312
    1863             :     0, // FMOVS = 313
    1864             :     Feature_HasV9 | 0, // FMOVS_FCC = 314
    1865             :     Feature_HasV9 | 0, // FMOVS_ICC = 315
    1866             :     0, // FMOVS_XCC = 316
    1867             :     Feature_HasVIS | 0, // FMUL8SUX16 = 317
    1868             :     Feature_HasVIS | 0, // FMUL8ULX16 = 318
    1869             :     Feature_HasVIS | 0, // FMUL8X16 = 319
    1870             :     Feature_HasVIS | 0, // FMUL8X16AL = 320
    1871             :     Feature_HasVIS | 0, // FMUL8X16AU = 321
    1872             :     0, // FMULD = 322
    1873             :     Feature_HasVIS | 0, // FMULD8SUX16 = 323
    1874             :     Feature_HasVIS | 0, // FMULD8ULX16 = 324
    1875             :     0, // FMULQ = 325
    1876             :     0, // FMULS = 326
    1877             :     Feature_HasVIS3 | 0, // FNADDD = 327
    1878             :     Feature_HasVIS3 | 0, // FNADDS = 328
    1879             :     Feature_HasVIS | 0, // FNAND = 329
    1880             :     Feature_HasVIS | 0, // FNANDS = 330
    1881             :     Feature_HasV9 | 0, // FNEGD = 331
    1882             :     Feature_HasV9 | 0, // FNEGQ = 332
    1883             :     0, // FNEGS = 333
    1884             :     Feature_HasVIS3 | 0, // FNHADDD = 334
    1885             :     Feature_HasVIS3 | 0, // FNHADDS = 335
    1886             :     Feature_HasVIS3 | 0, // FNMULD = 336
    1887             :     Feature_HasVIS3 | 0, // FNMULS = 337
    1888             :     Feature_HasVIS | 0, // FNOR = 338
    1889             :     Feature_HasVIS | 0, // FNORS = 339
    1890             :     Feature_HasVIS | 0, // FNOT1 = 340
    1891             :     Feature_HasVIS | 0, // FNOT1S = 341
    1892             :     Feature_HasVIS | 0, // FNOT2 = 342
    1893             :     Feature_HasVIS | 0, // FNOT2S = 343
    1894             :     Feature_HasVIS3 | 0, // FNSMULD = 344
    1895             :     Feature_HasVIS | 0, // FONE = 345
    1896             :     Feature_HasVIS | 0, // FONES = 346
    1897             :     Feature_HasVIS | 0, // FOR = 347
    1898             :     Feature_HasVIS | 0, // FORNOT1 = 348
    1899             :     Feature_HasVIS | 0, // FORNOT1S = 349
    1900             :     Feature_HasVIS | 0, // FORNOT2 = 350
    1901             :     Feature_HasVIS | 0, // FORNOT2S = 351
    1902             :     Feature_HasVIS | 0, // FORS = 352
    1903             :     Feature_HasVIS | 0, // FPACK16 = 353
    1904             :     Feature_HasVIS | 0, // FPACK32 = 354
    1905             :     Feature_HasVIS | 0, // FPACKFIX = 355
    1906             :     Feature_HasVIS | 0, // FPADD16 = 356
    1907             :     Feature_HasVIS | 0, // FPADD16S = 357
    1908             :     Feature_HasVIS | 0, // FPADD32 = 358
    1909             :     Feature_HasVIS | 0, // FPADD32S = 359
    1910             :     Feature_HasVIS3 | 0, // FPADD64 = 360
    1911             :     Feature_HasVIS | 0, // FPMERGE = 361
    1912             :     Feature_HasVIS | 0, // FPSUB16 = 362
    1913             :     Feature_HasVIS | 0, // FPSUB16S = 363
    1914             :     Feature_HasVIS | 0, // FPSUB32 = 364
    1915             :     Feature_HasVIS | 0, // FPSUB32S = 365
    1916             :     0, // FQTOD = 366
    1917             :     0, // FQTOI = 367
    1918             :     0, // FQTOS = 368
    1919             :     0, // FQTOX = 369
    1920             :     Feature_HasVIS3 | 0, // FSLAS16 = 370
    1921             :     Feature_HasVIS3 | 0, // FSLAS32 = 371
    1922             :     Feature_HasVIS3 | 0, // FSLL16 = 372
    1923             :     Feature_HasVIS3 | 0, // FSLL32 = 373
    1924             :     0, // FSMULD = 374
    1925             :     0, // FSQRTD = 375
    1926             :     0, // FSQRTQ = 376
    1927             :     0, // FSQRTS = 377
    1928             :     Feature_HasVIS3 | 0, // FSRA16 = 378
    1929             :     Feature_HasVIS3 | 0, // FSRA32 = 379
    1930             :     Feature_HasVIS | 0, // FSRC1 = 380
    1931             :     Feature_HasVIS | 0, // FSRC1S = 381
    1932             :     Feature_HasVIS | 0, // FSRC2 = 382
    1933             :     Feature_HasVIS | 0, // FSRC2S = 383
    1934             :     Feature_HasVIS3 | 0, // FSRL16 = 384
    1935             :     Feature_HasVIS3 | 0, // FSRL32 = 385
    1936             :     0, // FSTOD = 386
    1937             :     0, // FSTOI = 387
    1938             :     0, // FSTOQ = 388
    1939             :     0, // FSTOX = 389
    1940             :     0, // FSUBD = 390
    1941             :     0, // FSUBQ = 391
    1942             :     0, // FSUBS = 392
    1943             :     Feature_HasVIS | 0, // FXNOR = 393
    1944             :     Feature_HasVIS | 0, // FXNORS = 394
    1945             :     Feature_HasVIS | 0, // FXOR = 395
    1946             :     Feature_HasVIS | 0, // FXORS = 396
    1947             :     0, // FXTOD = 397
    1948             :     0, // FXTOQ = 398
    1949             :     0, // FXTOS = 399
    1950             :     Feature_HasVIS | 0, // FZERO = 400
    1951             :     Feature_HasVIS | 0, // FZEROS = 401
    1952             :     0, // JMPLri = 402
    1953             :     0, // JMPLrr = 403
    1954             :     0, // LDArr = 404
    1955             :     0, // LDCSRri = 405
    1956             :     0, // LDCSRrr = 406
    1957             :     0, // LDCri = 407
    1958             :     0, // LDCrr = 408
    1959             :     0, // LDDArr = 409
    1960             :     0, // LDDCri = 410
    1961             :     0, // LDDCrr = 411
    1962             :     Feature_HasV9 | 0, // LDDFArr = 412
    1963             :     0, // LDDFri = 413
    1964             :     0, // LDDFrr = 414
    1965             :     0, // LDDri = 415
    1966             :     0, // LDDrr = 416
    1967             :     Feature_HasV9 | 0, // LDFArr = 417
    1968             :     0, // LDFSRri = 418
    1969             :     0, // LDFSRrr = 419
    1970             :     0, // LDFri = 420
    1971             :     0, // LDFrr = 421
    1972             :     Feature_HasV9 | 0, // LDQFArr = 422
    1973             :     Feature_HasV9 | 0, // LDQFri = 423
    1974             :     Feature_HasV9 | 0, // LDQFrr = 424
    1975             :     0, // LDSBArr = 425
    1976             :     0, // LDSBri = 426
    1977             :     0, // LDSBrr = 427
    1978             :     0, // LDSHArr = 428
    1979             :     0, // LDSHri = 429
    1980             :     0, // LDSHrr = 430
    1981             :     0, // LDSTUBArr = 431
    1982             :     0, // LDSTUBri = 432
    1983             :     0, // LDSTUBrr = 433
    1984             :     0, // LDSWri = 434
    1985             :     0, // LDSWrr = 435
    1986             :     0, // LDUBArr = 436
    1987             :     0, // LDUBri = 437
    1988             :     0, // LDUBrr = 438
    1989             :     0, // LDUHArr = 439
    1990             :     0, // LDUHri = 440
    1991             :     0, // LDUHrr = 441
    1992             :     Feature_HasV9 | 0, // LDXFSRri = 442
    1993             :     Feature_HasV9 | 0, // LDXFSRrr = 443
    1994             :     0, // LDXri = 444
    1995             :     0, // LDXrr = 445
    1996             :     0, // LDri = 446
    1997             :     0, // LDrr = 447
    1998             :     0, // LEAX_ADDri = 448
    1999             :     0, // LEA_ADDri = 449
    2000             :     Feature_HasVIS3 | 0, // LZCNT = 450
    2001             :     Feature_HasV9 | 0, // MEMBARi = 451
    2002             :     Feature_HasVIS3 | 0, // MOVDTOX = 452
    2003             :     Feature_HasV9 | 0, // MOVFCCri = 453
    2004             :     Feature_HasV9 | 0, // MOVFCCrr = 454
    2005             :     Feature_HasV9 | 0, // MOVICCri = 455
    2006             :     Feature_HasV9 | 0, // MOVICCrr = 456
    2007             :     0, // MOVRGEZri = 457
    2008             :     0, // MOVRGEZrr = 458
    2009             :     0, // MOVRGZri = 459
    2010             :     0, // MOVRGZrr = 460
    2011             :     0, // MOVRLEZri = 461
    2012             :     0, // MOVRLEZrr = 462
    2013             :     0, // MOVRLZri = 463
    2014             :     0, // MOVRLZrr = 464
    2015             :     0, // MOVRNZri = 465
    2016             :     0, // MOVRNZrr = 466
    2017             :     0, // MOVRRZri = 467
    2018             :     0, // MOVRRZrr = 468
    2019             :     Feature_HasVIS3 | 0, // MOVSTOSW = 469
    2020             :     Feature_HasVIS3 | 0, // MOVSTOUW = 470
    2021             :     Feature_HasVIS3 | 0, // MOVWTOS = 471
    2022             :     0, // MOVXCCri = 472
    2023             :     0, // MOVXCCrr = 473
    2024             :     Feature_HasVIS3 | 0, // MOVXTOD = 474
    2025             :     0, // MULSCCri = 475
    2026             :     0, // MULSCCrr = 476
    2027             :     0, // MULXri = 477
    2028             :     0, // MULXrr = 478
    2029             :     0, // NOP = 479
    2030             :     0, // ORCCri = 480
    2031             :     0, // ORCCrr = 481
    2032             :     0, // ORNCCri = 482
    2033             :     0, // ORNCCrr = 483
    2034             :     0, // ORNri = 484
    2035             :     0, // ORNrr = 485
    2036             :     0, // ORXNrr = 486
    2037             :     0, // ORXri = 487
    2038             :     0, // ORXrr = 488
    2039             :     0, // ORri = 489
    2040             :     0, // ORrr = 490
    2041             :     Feature_HasVIS | 0, // PDIST = 491
    2042             :     Feature_HasVIS3 | 0, // PDISTN = 492
    2043             :     Feature_HasV9 | 0, // POPCrr = 493
    2044             :     0, // RDASR = 494
    2045             :     Feature_HasV9 | 0, // RDPR = 495
    2046             :     0, // RDPSR = 496
    2047             :     0, // RDTBR = 497
    2048             :     0, // RDWIM = 498
    2049             :     0, // RESTOREri = 499
    2050             :     0, // RESTORErr = 500
    2051             :     0, // RET = 501
    2052             :     0, // RETL = 502
    2053             :     0, // RETTri = 503
    2054             :     0, // RETTrr = 504
    2055             :     0, // SAVEri = 505
    2056             :     0, // SAVErr = 506
    2057             :     0, // SDIVCCri = 507
    2058             :     0, // SDIVCCrr = 508
    2059             :     0, // SDIVXri = 509
    2060             :     0, // SDIVXrr = 510
    2061             :     0, // SDIVri = 511
    2062             :     0, // SDIVrr = 512
    2063             :     0, // SETHIXi = 513
    2064             :     0, // SETHIi = 514
    2065             :     Feature_HasVIS | 0, // SHUTDOWN = 515
    2066             :     Feature_HasVIS2 | 0, // SIAM = 516
    2067             :     0, // SLLXri = 517
    2068             :     0, // SLLXrr = 518
    2069             :     0, // SLLri = 519
    2070             :     0, // SLLrr = 520
    2071             :     0, // SMACri = 521
    2072             :     0, // SMACrr = 522
    2073             :     0, // SMULCCri = 523
    2074             :     0, // SMULCCrr = 524
    2075             :     0, // SMULri = 525
    2076             :     0, // SMULrr = 526
    2077             :     0, // SRAXri = 527
    2078             :     0, // SRAXrr = 528
    2079             :     0, // SRAri = 529
    2080             :     0, // SRArr = 530
    2081             :     0, // SRLXri = 531
    2082             :     0, // SRLXrr = 532
    2083             :     0, // SRLri = 533
    2084             :     0, // SRLrr = 534
    2085             :     0, // STArr = 535
    2086             :     0, // STBAR = 536
    2087             :     0, // STBArr = 537
    2088             :     0, // STBri = 538
    2089             :     0, // STBrr = 539
    2090             :     0, // STCSRri = 540
    2091             :     0, // STCSRrr = 541
    2092             :     0, // STCri = 542
    2093             :     0, // STCrr = 543
    2094             :     0, // STDArr = 544
    2095             :     0, // STDCQri = 545
    2096             :     0, // STDCQrr = 546
    2097             :     0, // STDCri = 547
    2098             :     0, // STDCrr = 548
    2099             :     Feature_HasV9 | 0, // STDFArr = 549
    2100             :     0, // STDFQri = 550
    2101             :     0, // STDFQrr = 551
    2102             :     0, // STDFri = 552
    2103             :     0, // STDFrr = 553
    2104             :     0, // STDri = 554
    2105             :     0, // STDrr = 555
    2106             :     Feature_HasV9 | 0, // STFArr = 556
    2107             :     0, // STFSRri = 557
    2108             :     0, // STFSRrr = 558
    2109             :     0, // STFri = 559
    2110             :     0, // STFrr = 560
    2111             :     0, // STHArr = 561
    2112             :     0, // STHri = 562
    2113             :     0, // STHrr = 563
    2114             :     Feature_HasV9 | 0, // STQFArr = 564
    2115             :     Feature_HasV9 | 0, // STQFri = 565
    2116             :     Feature_HasV9 | 0, // STQFrr = 566
    2117             :     Feature_HasV9 | 0, // STXFSRri = 567
    2118             :     Feature_HasV9 | 0, // STXFSRrr = 568
    2119             :     0, // STXri = 569
    2120             :     0, // STXrr = 570
    2121             :     0, // STri = 571
    2122             :     0, // STrr = 572
    2123             :     0, // SUBCCri = 573
    2124             :     0, // SUBCCrr = 574
    2125             :     0, // SUBCri = 575
    2126             :     0, // SUBCrr = 576
    2127             :     0, // SUBEri = 577
    2128             :     0, // SUBErr = 578
    2129             :     0, // SUBXri = 579
    2130             :     0, // SUBXrr = 580
    2131             :     0, // SUBri = 581
    2132             :     0, // SUBrr = 582
    2133             :     0, // SWAPArr = 583
    2134             :     0, // SWAPri = 584
    2135             :     0, // SWAPrr = 585
    2136             :     0, // TA3 = 586
    2137             :     0, // TA5 = 587
    2138             :     0, // TADDCCTVri = 588
    2139             :     0, // TADDCCTVrr = 589
    2140             :     0, // TADDCCri = 590
    2141             :     0, // TADDCCrr = 591
    2142             :     Feature_HasV9 | 0, // TICCri = 592
    2143             :     Feature_HasV9 | 0, // TICCrr = 593
    2144             :     0, // TLS_ADDXrr = 594
    2145             :     0, // TLS_ADDrr = 595
    2146             :     0, // TLS_CALL = 596
    2147             :     0, // TLS_LDXrr = 597
    2148             :     0, // TLS_LDrr = 598
    2149             :     0, // TRAPri = 599
    2150             :     0, // TRAPrr = 600
    2151             :     0, // TSUBCCTVri = 601
    2152             :     0, // TSUBCCTVrr = 602
    2153             :     0, // TSUBCCri = 603
    2154             :     0, // TSUBCCrr = 604
    2155             :     0, // TXCCri = 605
    2156             :     0, // TXCCrr = 606
    2157             :     0, // UDIVCCri = 607
    2158             :     0, // UDIVCCrr = 608
    2159             :     0, // UDIVXri = 609
    2160             :     0, // UDIVXrr = 610
    2161             :     0, // UDIVri = 611
    2162             :     0, // UDIVrr = 612
    2163             :     0, // UMACri = 613
    2164             :     0, // UMACrr = 614
    2165             :     0, // UMULCCri = 615
    2166             :     0, // UMULCCrr = 616
    2167             :     Feature_HasVIS3 | 0, // UMULXHI = 617
    2168             :     0, // UMULri = 618
    2169             :     0, // UMULrr = 619
    2170             :     0, // UNIMP = 620
    2171             :     0, // V9FCMPD = 621
    2172             :     0, // V9FCMPED = 622
    2173             :     0, // V9FCMPEQ = 623
    2174             :     0, // V9FCMPES = 624
    2175             :     0, // V9FCMPQ = 625
    2176             :     0, // V9FCMPS = 626
    2177             :     Feature_HasV9 | 0, // V9FMOVD_FCC = 627
    2178             :     Feature_HasV9 | 0, // V9FMOVQ_FCC = 628
    2179             :     Feature_HasV9 | 0, // V9FMOVS_FCC = 629
    2180             :     Feature_HasV9 | 0, // V9MOVFCCri = 630
    2181             :     Feature_HasV9 | 0, // V9MOVFCCrr = 631
    2182             :     0, // WRASRri = 632
    2183             :     0, // WRASRrr = 633
    2184             :     Feature_HasV9 | 0, // WRPRri = 634
    2185             :     Feature_HasV9 | 0, // WRPRrr = 635
    2186             :     0, // WRPSRri = 636
    2187             :     0, // WRPSRrr = 637
    2188             :     0, // WRTBRri = 638
    2189             :     0, // WRTBRrr = 639
    2190             :     0, // WRWIMri = 640
    2191             :     0, // WRWIMrr = 641
    2192             :     Feature_HasVIS3 | 0, // XMULX = 642
    2193             :     Feature_HasVIS3 | 0, // XMULXHI = 643
    2194             :     0, // XNORCCri = 644
    2195             :     0, // XNORCCrr = 645
    2196             :     0, // XNORXrr = 646
    2197             :     0, // XNORri = 647
    2198             :     0, // XNORrr = 648
    2199             :     0, // XORCCri = 649
    2200             :     0, // XORCCrr = 650
    2201             :     0, // XORXri = 651
    2202             :     0, // XORXrr = 652
    2203             :     0, // XORri = 653
    2204             :     0, // XORrr = 654
    2205             :   };
    2206             : 
    2207             :   assert(Inst.getOpcode() < 655);
    2208             :   uint64_t MissingFeatures =
    2209             :       (AvailableFeatures & RequiredFeatures[Inst.getOpcode()]) ^
    2210             :       RequiredFeatures[Inst.getOpcode()];
    2211             :   if (MissingFeatures) {
    2212             :     std::ostringstream Msg;
    2213             :     Msg << "Attempting to emit " << MCII.getName(Inst.getOpcode()).str()
    2214             :         << " instruction but the ";
    2215             :     for (unsigned i = 0; i < 8 * sizeof(MissingFeatures); ++i)
    2216             :       if (MissingFeatures & (1ULL << i))
    2217             :         Msg << SubtargetFeatureNames[i] << " ";
    2218             :     Msg << "predicate(s) are not met";
    2219             :     report_fatal_error(Msg.str());
    2220             :   }
    2221             : #else
    2222             : // Silence unused variable warning on targets that don't use MCII for other purposes (e.g. BPF).
    2223             : (void)MCII;
    2224             : #endif // NDEBUG
    2225             : }
    2226             : #endif

Generated by: LCOV version 1.13