You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
keystone/llvm/lib/Target/Hexagon/HexagonGenMCCodeEmitter.inc

8738 lines
316 KiB

/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
|* *|
|* Machine Code Emitter *|
|* *|
|* Automatically generated file, do not edit! *|
|* *|
\*===----------------------------------------------------------------------===*/
uint64_t HexagonMCCodeEmitter::getBinaryCodeForInstr(const MCInst &MI,
SmallVectorImpl<MCFixup> &Fixups,
const MCSubtargetInfo &STI) const {
static const uint64_t InstBits[] = {
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(2357198976), // A2_abs
UINT64_C(2155872448), // A2_absp
UINT64_C(2357199008), // A2_abssat
UINT64_C(4076863488), // A2_add
UINT64_C(3577741408), // A2_addh_h16_hh
UINT64_C(3577741376), // A2_addh_h16_hl
UINT64_C(3577741344), // A2_addh_h16_lh
UINT64_C(3577741312), // A2_addh_h16_ll
UINT64_C(3577741536), // A2_addh_h16_sat_hh
UINT64_C(3577741504), // A2_addh_h16_sat_hl
UINT64_C(3577741472), // A2_addh_h16_sat_lh
UINT64_C(3577741440), // A2_addh_h16_sat_ll
UINT64_C(3573547072), // A2_addh_l16_hl
UINT64_C(3573547008), // A2_addh_l16_ll
UINT64_C(3573547200), // A2_addh_l16_sat_hl
UINT64_C(3573547136), // A2_addh_l16_sat_ll
UINT64_C(2952790016), // A2_addi
UINT64_C(3539992800), // A2_addp
UINT64_C(3546284192), // A2_addpsat
UINT64_C(4131389440), // A2_addsat
UINT64_C(0), // A2_addsp
UINT64_C(3546284256), // A2_addsph
UINT64_C(3546284224), // A2_addspl
UINT64_C(4043309056), // A2_and
UINT64_C(1979711488), // A2_andir
UINT64_C(3554672640), // A2_andp
UINT64_C(1879048192), // A2_aslh
UINT64_C(1881145344), // A2_asrh
UINT64_C(4085252096), // A2_combine_hh
UINT64_C(4087349248), // A2_combine_hl
UINT64_C(4089446400), // A2_combine_lh
UINT64_C(4091543552), // A2_combine_ll
UINT64_C(2080374784), // A2_combineii
UINT64_C(4110417920), // A2_combinew
UINT64_C(3586129920), // A2_max
UINT64_C(3552575616), // A2_maxp
UINT64_C(3586130048), // A2_maxu
UINT64_C(3552575648), // A2_maxup
UINT64_C(3584032768), // A2_min
UINT64_C(3550478528), // A2_minp
UINT64_C(3584032896), // A2_minu
UINT64_C(3550478560), // A2_minup
UINT64_C(2155872416), // A2_negp
UINT64_C(2357199040), // A2_negsat
UINT64_C(2130706432), // A2_nop
UINT64_C(0), // A2_not
UINT64_C(2155872384), // A2_notp
UINT64_C(4045406208), // A2_or
UINT64_C(1988100096), // A2_orir
UINT64_C(3554672704), // A2_orp
UINT64_C(4211081344), // A2_paddf
UINT64_C(4211089536), // A2_paddfnew
UINT64_C(1954545664), // A2_paddif
UINT64_C(1954553856), // A2_paddifnew
UINT64_C(1946157056), // A2_paddit
UINT64_C(1946165248), // A2_padditnew
UINT64_C(4211081216), // A2_paddt
UINT64_C(4211089408), // A2_paddtnew
UINT64_C(4177526912), // A2_pandf
UINT64_C(4177535104), // A2_pandfnew
UINT64_C(4177526784), // A2_pandt
UINT64_C(4177534976), // A2_pandtnew
UINT64_C(4179624064), // A2_porf
UINT64_C(4179632256), // A2_porfnew
UINT64_C(4179623936), // A2_port
UINT64_C(4179632128), // A2_portnew
UINT64_C(4213178496), // A2_psubf
UINT64_C(4213186688), // A2_psubfnew
UINT64_C(4213178368), // A2_psubt
UINT64_C(4213186560), // A2_psubtnew
UINT64_C(4183818368), // A2_pxorf
UINT64_C(4183826560), // A2_pxorfnew
UINT64_C(4183818240), // A2_pxort
UINT64_C(4183826432), // A2_pxortnew
UINT64_C(2294284320), // A2_roundsat
UINT64_C(2294284288), // A2_sat
UINT64_C(2361393376), // A2_satb
UINT64_C(2361393280), // A2_sath
UINT64_C(2361393344), // A2_satub
UINT64_C(2361393312), // A2_satuh
UINT64_C(4078960640), // A2_sub
UINT64_C(3579838560), // A2_subh_h16_hh
UINT64_C(3579838528), // A2_subh_h16_hl
UINT64_C(3579838496), // A2_subh_h16_lh
UINT64_C(3579838464), // A2_subh_h16_ll
UINT64_C(3579838688), // A2_subh_h16_sat_hh
UINT64_C(3579838656), // A2_subh_h16_sat_hl
UINT64_C(3579838624), // A2_subh_h16_sat_lh
UINT64_C(3579838592), // A2_subh_h16_sat_ll
UINT64_C(3575644224), // A2_subh_l16_hl
UINT64_C(3575644160), // A2_subh_l16_ll
UINT64_C(3575644352), // A2_subh_l16_sat_hl
UINT64_C(3575644288), // A2_subh_l16_sat_ll
UINT64_C(3542089952), // A2_subp
UINT64_C(1983905792), // A2_subri
UINT64_C(4139778048), // A2_subsat
UINT64_C(4127195136), // A2_svaddh
UINT64_C(4129292288), // A2_svaddhs
UINT64_C(4133486592), // A2_svadduhs
UINT64_C(4143972352), // A2_svavgh
UINT64_C(4146069504), // A2_svavghs
UINT64_C(4150263808), // A2_svnavgh
UINT64_C(4135583744), // A2_svsubh
UINT64_C(4137680896), // A2_svsubhs
UINT64_C(4141875200), // A2_svsubuhs
UINT64_C(2357199072), // A2_swiz
UINT64_C(1889533952), // A2_sxtb
UINT64_C(1893728256), // A2_sxth
UINT64_C(2218786816), // A2_sxtw
UINT64_C(1885339648), // A2_tfr
UINT64_C(1778384896), // A2_tfrcrr
UINT64_C(1954545664), // A2_tfrf
UINT64_C(1954553856), // A2_tfrfnew
UINT64_C(1914699776), // A2_tfrih
UINT64_C(1897922560), // A2_tfril
UINT64_C(0), // A2_tfrp
UINT64_C(0), // A2_tfrpf
UINT64_C(0), // A2_tfrpfnew
UINT64_C(0), // A2_tfrpi
UINT64_C(0), // A2_tfrpt
UINT64_C(0), // A2_tfrptnew
UINT64_C(1646264320), // A2_tfrrcr
UINT64_C(2013265920), // A2_tfrsi
UINT64_C(1946157056), // A2_tfrt
UINT64_C(1946165248), // A2_tfrtnew
UINT64_C(2151678080), // A2_vabsh
UINT64_C(2151678112), // A2_vabshsat
UINT64_C(2151678144), // A2_vabsw
UINT64_C(2151678176), // A2_vabswsat
UINT64_C(3539992640), // A2_vaddh
UINT64_C(3539992672), // A2_vaddhs
UINT64_C(3539992576), // A2_vaddub
UINT64_C(3539992608), // A2_vaddubs
UINT64_C(3539992704), // A2_vadduhs
UINT64_C(3539992736), // A2_vaddw
UINT64_C(3539992768), // A2_vaddws
UINT64_C(3544186944), // A2_vavgh
UINT64_C(3544187008), // A2_vavghcr
UINT64_C(3544186976), // A2_vavghr
UINT64_C(3544186880), // A2_vavgub
UINT64_C(3544186912), // A2_vavgubr
UINT64_C(3544187040), // A2_vavguh
UINT64_C(3544187072), // A2_vavguhr
UINT64_C(3546284128), // A2_vavguw
UINT64_C(3546284160), // A2_vavguwr
UINT64_C(3546284032), // A2_vavgw
UINT64_C(3546284096), // A2_vavgwcr
UINT64_C(3546284064), // A2_vavgwr
UINT64_C(3523215552), // A2_vcmpbeq
UINT64_C(3523215584), // A2_vcmpbgtu
UINT64_C(3523215456), // A2_vcmpheq
UINT64_C(3523215488), // A2_vcmphgt
UINT64_C(3523215520), // A2_vcmphgtu
UINT64_C(3523215360), // A2_vcmpweq
UINT64_C(3523215392), // A2_vcmpwgt
UINT64_C(3523215424), // A2_vcmpwgtu
UINT64_C(2155872480), // A2_vconj
UINT64_C(3552575680), // A2_vmaxb
UINT64_C(3552575520), // A2_vmaxh
UINT64_C(3552575488), // A2_vmaxub
UINT64_C(3552575552), // A2_vmaxuh
UINT64_C(3550478496), // A2_vmaxuw
UINT64_C(3552575584), // A2_vmaxw
UINT64_C(3552575712), // A2_vminb
UINT64_C(3550478368), // A2_vminh
UINT64_C(3550478336), // A2_vminub
UINT64_C(3550478400), // A2_vminuh
UINT64_C(3550478464), // A2_vminuw
UINT64_C(3550478432), // A2_vminw
UINT64_C(3548381184), // A2_vnavgh
UINT64_C(3548381248), // A2_vnavghcr
UINT64_C(3548381216), // A2_vnavghr
UINT64_C(3548381280), // A2_vnavgw
UINT64_C(3548381376), // A2_vnavgwcr
UINT64_C(3548381312), // A2_vnavgwr
UINT64_C(3896508448), // A2_vraddub
UINT64_C(3930062880), // A2_vraddub_acc
UINT64_C(3896508480), // A2_vrsadub
UINT64_C(3930062912), // A2_vrsadub_acc
UINT64_C(3542089792), // A2_vsubh
UINT64_C(3542089824), // A2_vsubhs
UINT64_C(3542089728), // A2_vsubub
UINT64_C(3542089760), // A2_vsububs
UINT64_C(3542089856), // A2_vsubuhs
UINT64_C(3542089888), // A2_vsubw
UINT64_C(3542089920), // A2_vsubws
UINT64_C(4049600512), // A2_xor
UINT64_C(3554672768), // A2_xorp
UINT64_C(1979719648), // A2_zxtb
UINT64_C(1891631104), // A2_zxth
UINT64_C(3267362816), // A4_addp_c
UINT64_C(4051697664), // A4_andn
UINT64_C(3554672672), // A4_andnp
UINT64_C(3558866944), // A4_bitsplit
UINT64_C(2294284416), // A4_bitspliti
UINT64_C(0), // A4_boundscheck
UINT64_C(3523223712), // A4_boundscheck_hi
UINT64_C(3523223680), // A4_boundscheck_lo
UINT64_C(3351249088), // A4_cmpbeq
UINT64_C(3707764736), // A4_cmpbeqi
UINT64_C(3351248960), // A4_cmpbgt
UINT64_C(3709861888), // A4_cmpbgti
UINT64_C(3351249120), // A4_cmpbgtu
UINT64_C(3711959040), // A4_cmpbgtui
UINT64_C(3351248992), // A4_cmpheq
UINT64_C(3707764744), // A4_cmpheqi
UINT64_C(3351249024), // A4_cmphgt
UINT64_C(3709861896), // A4_cmphgti
UINT64_C(3351249056), // A4_cmphgtu
UINT64_C(3711959048), // A4_cmphgtui
UINT64_C(2088763392), // A4_combineii
UINT64_C(1931485184), // A4_combineir
UINT64_C(1929388032), // A4_combineri
UINT64_C(2363490304), // A4_cround_ri
UINT64_C(3334471680), // A4_cround_rr
UINT64_C(0), // A4_ext
UINT64_C(0), // A4_ext_b
UINT64_C(0), // A4_ext_c
UINT64_C(0), // A4_ext_g
UINT64_C(3554672864), // A4_modwrapu
UINT64_C(4053794816), // A4_orn
UINT64_C(3554672736), // A4_ornp
UINT64_C(1879058432), // A4_paslhf
UINT64_C(1879059456), // A4_paslhfnew
UINT64_C(1879056384), // A4_paslht
UINT64_C(1879057408), // A4_paslhtnew
UINT64_C(1881155584), // A4_pasrhf
UINT64_C(1881156608), // A4_pasrhfnew
UINT64_C(1881153536), // A4_pasrht
UINT64_C(1881154560), // A4_pasrhtnew
UINT64_C(1889544192), // A4_psxtbf
UINT64_C(1889545216), // A4_psxtbfnew
UINT64_C(1889542144), // A4_psxtbt
UINT64_C(1889543168), // A4_psxtbtnew
UINT64_C(1893738496), // A4_psxthf
UINT64_C(1893739520), // A4_psxthfnew
UINT64_C(1893736448), // A4_psxtht
UINT64_C(1893737472), // A4_psxthtnew
UINT64_C(1887447040), // A4_pzxtbf
UINT64_C(1887448064), // A4_pzxtbfnew
UINT64_C(1887444992), // A4_pzxtbt
UINT64_C(1887446016), // A4_pzxtbtnew
UINT64_C(1891641344), // A4_pzxthf
UINT64_C(1891642368), // A4_pzxthfnew
UINT64_C(1891639296), // A4_pzxtht
UINT64_C(1891640320), // A4_pzxthtnew
UINT64_C(4081057792), // A4_rcmpeq
UINT64_C(1933582336), // A4_rcmpeqi
UINT64_C(4083154944), // A4_rcmpneq
UINT64_C(1935679488), // A4_rcmpneqi
UINT64_C(2363490432), // A4_round_ri
UINT64_C(2363490496), // A4_round_ri_sat
UINT64_C(3334471808), // A4_round_rr
UINT64_C(3334471872), // A4_round_rr_sat
UINT64_C(3269459968), // A4_subp_c
UINT64_C(1744830464), // A4_tfrcpp
UINT64_C(1663041536), // A4_tfrpcp
UINT64_C(3523223648), // A4_tlbmatch
UINT64_C(3523223552), // A4_vcmpbeq_any
UINT64_C(3690987520), // A4_vcmpbeqi
UINT64_C(3523223616), // A4_vcmpbgt
UINT64_C(3693084672), // A4_vcmpbgti
UINT64_C(3695181824), // A4_vcmpbgtui
UINT64_C(3690987528), // A4_vcmpheqi
UINT64_C(3693084680), // A4_vcmphgti
UINT64_C(3695181832), // A4_vcmphgtui
UINT64_C(3690987536), // A4_vcmpweqi
UINT64_C(3693084688), // A4_vcmpwgti
UINT64_C(3695181840), // A4_vcmpwgtui
UINT64_C(3407872032), // A4_vrmaxh
UINT64_C(3407880224), // A4_vrmaxuh
UINT64_C(3407880256), // A4_vrmaxuw
UINT64_C(3407872064), // A4_vrmaxw
UINT64_C(3407872160), // A4_vrminh
UINT64_C(3407880352), // A4_vrminuh
UINT64_C(3407880384), // A4_vrminuw
UINT64_C(3407872192), // A4_vrminw
UINT64_C(3936354304), // A5_ACS
UINT64_C(3242197024), // A5_vaddhubs
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0), // ARGEXTEND
UINT64_C(1805647872), // C2_all8
UINT64_C(1795162112), // C2_and
UINT64_C(1801453568), // C2_andn
UINT64_C(1803550720), // C2_any8
UINT64_C(3347054592), // C2_bitsclr
UINT64_C(2239758336), // C2_bitsclri
UINT64_C(3342860288), // C2_bitsset
UINT64_C(4244635776), // C2_ccombinewf
UINT64_C(4244643968), // C2_ccombinewnewf
UINT64_C(4244643840), // C2_ccombinewnewt
UINT64_C(4244635648), // C2_ccombinewt
UINT64_C(2122317824), // C2_cmoveif
UINT64_C(2113929216), // C2_cmoveit
UINT64_C(2122326016), // C2_cmovenewif
UINT64_C(2113937408), // C2_cmovenewit
UINT64_C(4060086272), // C2_cmpeq
UINT64_C(1962934272), // C2_cmpeqi
UINT64_C(3531603968), // C2_cmpeqp
UINT64_C(0),
UINT64_C(0),
UINT64_C(4064280576), // C2_cmpgt
UINT64_C(1967128576), // C2_cmpgti
UINT64_C(3531604032), // C2_cmpgtp
UINT64_C(4066377728), // C2_cmpgtu
UINT64_C(1971322880), // C2_cmpgtui
UINT64_C(3531604096), // C2_cmpgtup
UINT64_C(2248146944), // C2_mask
UINT64_C(4093640704), // C2_mux
UINT64_C(2046820352), // C2_muxii
UINT64_C(1929379840), // C2_muxir
UINT64_C(1937768448), // C2_muxri
UINT64_C(1807745024), // C2_not
UINT64_C(1797259264), // C2_or
UINT64_C(1809842176), // C2_orn
UINT64_C(0), // C2_pxfer_map
UINT64_C(2302672896), // C2_tfrpr
UINT64_C(2235564032), // C2_tfrrp
UINT64_C(2298478592), // C2_vitpack
UINT64_C(3506438144), // C2_vmux
UINT64_C(1799356416), // C2_xor
UINT64_C(1783169024), // C4_addipc
UINT64_C(1796210688), // C4_and_and
UINT64_C(1804599296), // C4_and_andn
UINT64_C(1798307840), // C4_and_or
UINT64_C(1806696448), // C4_and_orn
UINT64_C(4064280592), // C4_cmplte
UINT64_C(1967128592), // C4_cmpltei
UINT64_C(4066377744), // C4_cmplteu
UINT64_C(1971322896), // C4_cmplteui
UINT64_C(4060086288), // C4_cmpneq
UINT64_C(1962934288), // C4_cmpneqi
UINT64_C(1795170448), // C4_fastcorner9
UINT64_C(1796219024), // C4_fastcorner9_not
UINT64_C(3349151744), // C4_nbitsclr
UINT64_C(2241855488), // C4_nbitsclri
UINT64_C(3344957440), // C4_nbitsset
UINT64_C(1800404992), // C4_or_and
UINT64_C(1808793600), // C4_or_andn
UINT64_C(1802502144), // C4_or_or
UINT64_C(1810890752), // C4_or_orn
UINT64_C(1352663040), // CALLRv3nr
UINT64_C(1509949440), // CALLv3nr
UINT64_C(0), // CONST32
UINT64_C(0), // CONST32_Float_Real
UINT64_C(0), // CONST32_Int_Real
UINT64_C(0), // CONST64_Float_Real
UINT64_C(0), // CONST64_Int_Real
UINT64_C(0), // DuplexIClass0
UINT64_C(8192), // DuplexIClass1
UINT64_C(536870912), // DuplexIClass2
UINT64_C(536879104), // DuplexIClass3
UINT64_C(1073741824), // DuplexIClass4
UINT64_C(1073750016), // DuplexIClass5
UINT64_C(1610612736), // DuplexIClass6
UINT64_C(1610620928), // DuplexIClass7
UINT64_C(2147483648), // DuplexIClass8
UINT64_C(2147491840), // DuplexIClass9
UINT64_C(2684354560), // DuplexIClassA
UINT64_C(2684362752), // DuplexIClassB
UINT64_C(3221225472), // DuplexIClassC
UINT64_C(3221233664), // DuplexIClassD
UINT64_C(3758096384), // DuplexIClassE
UINT64_C(3758104576), // DuplexIClassF
UINT64_C(1384120320), // EH_RETURN_JMPR
UINT64_C(0),
UINT64_C(0),
UINT64_C(2162163808), // F2_conv_d2df
UINT64_C(2285895712), // F2_conv_d2sf
UINT64_C(2162163712), // F2_conv_df2d
UINT64_C(2162163904), // F2_conv_df2d_chop
UINT64_C(2281701408), // F2_conv_df2sf
UINT64_C(2162163744), // F2_conv_df2ud
UINT64_C(2162163936), // F2_conv_df2ud_chop
UINT64_C(2287992864), // F2_conv_df2uw
UINT64_C(2292187168), // F2_conv_df2uw_chop
UINT64_C(2290090016), // F2_conv_df2w
UINT64_C(2296381472), // F2_conv_df2w_chop
UINT64_C(2222981248), // F2_conv_sf2d
UINT64_C(2222981312), // F2_conv_sf2d_chop
UINT64_C(2222981120), // F2_conv_sf2df
UINT64_C(2222981216), // F2_conv_sf2ud
UINT64_C(2222981280), // F2_conv_sf2ud_chop
UINT64_C(2338324480), // F2_conv_sf2uw
UINT64_C(2338324512), // F2_conv_sf2uw_chop
UINT64_C(2340421632), // F2_conv_sf2w
UINT64_C(2340421664), // F2_conv_sf2w_chop
UINT64_C(2162163776), // F2_conv_ud2df
UINT64_C(2283798560), // F2_conv_ud2sf
UINT64_C(2222981152), // F2_conv_uw2df
UINT64_C(2334130176), // F2_conv_uw2sf
UINT64_C(2222981184), // F2_conv_w2df
UINT64_C(2336227328), // F2_conv_w2sf
UINT64_C(3699376144), // F2_dfclass
UINT64_C(3537895424), // F2_dfcmpeq
UINT64_C(3537895488), // F2_dfcmpge
UINT64_C(3537895456), // F2_dfcmpgt
UINT64_C(3537895520), // F2_dfcmpuo
UINT64_C(3644850176), // F2_dfimm_n
UINT64_C(3640655872), // F2_dfimm_p
UINT64_C(3942645760), // F2_sfadd
UINT64_C(2246049792), // F2_sfclass
UINT64_C(3353346144), // F2_sfcmpeq
UINT64_C(3353346048), // F2_sfcmpge
UINT64_C(3353346176), // F2_sfcmpgt
UINT64_C(3353346080), // F2_sfcmpuo
UINT64_C(3955228704), // F2_sffixupd
UINT64_C(3955228672), // F2_sffixupn
UINT64_C(2342518784), // F2_sffixupr
UINT64_C(4009754752), // F2_sffma
UINT64_C(4009754816), // F2_sffma_lib
UINT64_C(4016046208), // F2_sffma_sc
UINT64_C(4009754784), // F2_sffms
UINT64_C(4009754848), // F2_sffms_lib
UINT64_C(3594518528), // F2_sfimm_n
UINT64_C(3590324224), // F2_sfimm_p
UINT64_C(2346713088), // F2_sfinvsqrta
UINT64_C(3951034368), // F2_sfmax
UINT64_C(3951034400), // F2_sfmin
UINT64_C(3946840064), // F2_sfmpy
UINT64_C(3957325952), // F2_sfrecipa
UINT64_C(3942645792), // F2_sfsub
UINT64_C(0), // FCONST32_nsdata
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0), // HEXAGON_V6_vd0_pseudo
UINT64_C(0), // HEXAGON_V6_vd0_pseudo_128B
UINT64_C(1914699776), // HI
UINT64_C(0), // HI_GOT
UINT64_C(0), // HI_GOTREL
UINT64_C(1914699776), // HI_L
UINT64_C(0), // HI_PIC
UINT64_C(0),
UINT64_C(1509949440), // J2_call
UINT64_C(1562378240), // J2_callf
UINT64_C(1352663040), // J2_callr
UINT64_C(1361051648), // J2_callrf
UINT64_C(1358954496), // J2_callrt
UINT64_C(1560281088), // J2_callt
UINT64_C(1476395008), // J2_jump
UINT64_C(1476395008), // J2_jump_ext
UINT64_C(1545601024), // J2_jump_extf
UINT64_C(1545603072), // J2_jump_extfnew
UINT64_C(1545607168), // J2_jump_extfnewpt
UINT64_C(1543503872), // J2_jump_extt
UINT64_C(1543505920), // J2_jump_exttnew
UINT64_C(1543510016), // J2_jump_exttnewpt
UINT64_C(1476395008), // J2_jump_noext
UINT64_C(1545601024), // J2_jump_noextf
UINT64_C(1545603072), // J2_jump_noextfnew
UINT64_C(1545607168), // J2_jump_noextfnewpt
UINT64_C(1543503872), // J2_jump_noextt
UINT64_C(1543505920), // J2_jump_noexttnew
UINT64_C(1543510016), // J2_jump_noexttnewpt
UINT64_C(1545601024), // J2_jumpf
UINT64_C(1545603072), // J2_jumpfnew
UINT64_C(1545607168), // J2_jumpfnewpt
UINT64_C(1384120320), // J2_jumpr
UINT64_C(1398800384), // J2_jumprf
UINT64_C(1398802432), // J2_jumprfnew
UINT64_C(1398806528), // J2_jumprfnewpt
UINT64_C(1631584256), // J2_jumprgtez
UINT64_C(1631588352), // J2_jumprgtezpt
UINT64_C(1639972864), // J2_jumprltez
UINT64_C(1639976960), // J2_jumprltezpt
UINT64_C(1635778560), // J2_jumprnz
UINT64_C(1635782656), // J2_jumprnzpt
UINT64_C(1396703232), // J2_jumprt
UINT64_C(1396705280), // J2_jumprtnew
UINT64_C(1396709376), // J2_jumprtnewpt
UINT64_C(1627389952), // J2_jumprz
UINT64_C(1627394048), // J2_jumprzpt
UINT64_C(1543503872), // J2_jumpt
UINT64_C(1543505920), // J2_jumptnew
UINT64_C(1543510016), // J2_jumptnewpt
UINT64_C(1761607680), // J2_loop0i
UINT64_C(1761607680), // J2_loop0iext
UINT64_C(1610612736), // J2_loop0r
UINT64_C(1610612736), // J2_loop0rext
UINT64_C(1763704832), // J2_loop1i
UINT64_C(1763704832), // J2_loop1iext
UINT64_C(1612709888), // J2_loop1r
UINT64_C(1612709888), // J2_loop1rext
UINT64_C(1772093440), // J2_ploop1si
UINT64_C(1621098496), // J2_ploop1sr
UINT64_C(1774190592), // J2_ploop2si
UINT64_C(1623195648), // J2_ploop2sr
UINT64_C(1776287744), // J2_ploop3si
UINT64_C(1625292800), // J2_ploop3sr
UINT64_C(541065216), // J4_cmpeq_f_jumpnv_nt
UINT64_C(541073408), // J4_cmpeq_f_jumpnv_t
UINT64_C(339738624), // J4_cmpeq_fp0_jump_nt
UINT64_C(339746816), // J4_cmpeq_fp0_jump_t
UINT64_C(339742720), // J4_cmpeq_fp1_jump_nt
UINT64_C(339750912), // J4_cmpeq_fp1_jump_t
UINT64_C(536870912), // J4_cmpeq_t_jumpnv_nt
UINT64_C(536879104), // J4_cmpeq_t_jumpnv_t
UINT64_C(335544320), // J4_cmpeq_tp0_jump_nt
UINT64_C(335552512), // J4_cmpeq_tp0_jump_t
UINT64_C(335548416), // J4_cmpeq_tp1_jump_nt
UINT64_C(335556608), // J4_cmpeq_tp1_jump_t
UINT64_C(608174080), // J4_cmpeqi_f_jumpnv_nt
UINT64_C(608182272), // J4_cmpeqi_f_jumpnv_t
UINT64_C(272629760), // J4_cmpeqi_fp0_jump_nt
UINT64_C(272637952), // J4_cmpeqi_fp0_jump_t
UINT64_C(306184192), // J4_cmpeqi_fp1_jump_nt
UINT64_C(306192384), // J4_cmpeqi_fp1_jump_t
UINT64_C(603979776), // J4_cmpeqi_t_jumpnv_nt
UINT64_C(603987968), // J4_cmpeqi_t_jumpnv_t
UINT64_C(268435456), // J4_cmpeqi_tp0_jump_nt
UINT64_C(268443648), // J4_cmpeqi_tp0_jump_t
UINT64_C(301989888), // J4_cmpeqi_tp1_jump_nt
UINT64_C(301998080), // J4_cmpeqi_tp1_jump_t
UINT64_C(641728512), // J4_cmpeqn1_f_jumpnv_nt
UINT64_C(641736704), // J4_cmpeqn1_f_jumpnv_t
UINT64_C(297795584), // J4_cmpeqn1_fp0_jump_nt
UINT64_C(297803776), // J4_cmpeqn1_fp0_jump_t
UINT64_C(331350016), // J4_cmpeqn1_fp1_jump_nt
UINT64_C(331358208), // J4_cmpeqn1_fp1_jump_t
UINT64_C(637534208), // J4_cmpeqn1_t_jumpnv_nt
UINT64_C(637542400), // J4_cmpeqn1_t_jumpnv_t
UINT64_C(293601280), // J4_cmpeqn1_tp0_jump_nt
UINT64_C(293609472), // J4_cmpeqn1_tp0_jump_t
UINT64_C(327155712), // J4_cmpeqn1_tp1_jump_nt
UINT64_C(327163904), // J4_cmpeqn1_tp1_jump_t
UINT64_C(549453824), // J4_cmpgt_f_jumpnv_nt
UINT64_C(549462016), // J4_cmpgt_f_jumpnv_t
UINT64_C(348127232), // J4_cmpgt_fp0_jump_nt
UINT64_C(348135424), // J4_cmpgt_fp0_jump_t
UINT64_C(348131328), // J4_cmpgt_fp1_jump_nt
UINT64_C(348139520), // J4_cmpgt_fp1_jump_t
UINT64_C(545259520), // J4_cmpgt_t_jumpnv_nt
UINT64_C(545267712), // J4_cmpgt_t_jumpnv_t
UINT64_C(343932928), // J4_cmpgt_tp0_jump_nt
UINT64_C(343941120), // J4_cmpgt_tp0_jump_t
UINT64_C(343937024), // J4_cmpgt_tp1_jump_nt
UINT64_C(343945216), // J4_cmpgt_tp1_jump_t
UINT64_C(616562688), // J4_cmpgti_f_jumpnv_nt
UINT64_C(616570880), // J4_cmpgti_f_jumpnv_t
UINT64_C(281018368), // J4_cmpgti_fp0_jump_nt
UINT64_C(281026560), // J4_cmpgti_fp0_jump_t
UINT64_C(314572800), // J4_cmpgti_fp1_jump_nt
UINT64_C(314580992), // J4_cmpgti_fp1_jump_t
UINT64_C(612368384), // J4_cmpgti_t_jumpnv_nt
UINT64_C(612376576), // J4_cmpgti_t_jumpnv_t
UINT64_C(276824064), // J4_cmpgti_tp0_jump_nt
UINT64_C(276832256), // J4_cmpgti_tp0_jump_t
UINT64_C(310378496), // J4_cmpgti_tp1_jump_nt
UINT64_C(310386688), // J4_cmpgti_tp1_jump_t
UINT64_C(650117120), // J4_cmpgtn1_f_jumpnv_nt
UINT64_C(650125312), // J4_cmpgtn1_f_jumpnv_t
UINT64_C(297795840), // J4_cmpgtn1_fp0_jump_nt
UINT64_C(297804032), // J4_cmpgtn1_fp0_jump_t
UINT64_C(331350272), // J4_cmpgtn1_fp1_jump_nt
UINT64_C(331358464), // J4_cmpgtn1_fp1_jump_t
UINT64_C(645922816), // J4_cmpgtn1_t_jumpnv_nt
UINT64_C(645931008), // J4_cmpgtn1_t_jumpnv_t
UINT64_C(293601536), // J4_cmpgtn1_tp0_jump_nt
UINT64_C(293609728), // J4_cmpgtn1_tp0_jump_t
UINT64_C(327155968), // J4_cmpgtn1_tp1_jump_nt
UINT64_C(327164160), // J4_cmpgtn1_tp1_jump_t
UINT64_C(557842432), // J4_cmpgtu_f_jumpnv_nt
UINT64_C(557850624), // J4_cmpgtu_f_jumpnv_t
UINT64_C(356515840), // J4_cmpgtu_fp0_jump_nt
UINT64_C(356524032), // J4_cmpgtu_fp0_jump_t
UINT64_C(356519936), // J4_cmpgtu_fp1_jump_nt
UINT64_C(356528128), // J4_cmpgtu_fp1_jump_t
UINT64_C(553648128), // J4_cmpgtu_t_jumpnv_nt
UINT64_C(553656320), // J4_cmpgtu_t_jumpnv_t
UINT64_C(352321536), // J4_cmpgtu_tp0_jump_nt
UINT64_C(352329728), // J4_cmpgtu_tp0_jump_t
UINT64_C(352325632), // J4_cmpgtu_tp1_jump_nt
UINT64_C(352333824), // J4_cmpgtu_tp1_jump_t
UINT64_C(624951296), // J4_cmpgtui_f_jumpnv_nt
UINT64_C(624959488), // J4_cmpgtui_f_jumpnv_t
UINT64_C(289406976), // J4_cmpgtui_fp0_jump_nt
UINT64_C(289415168), // J4_cmpgtui_fp0_jump_t
UINT64_C(322961408), // J4_cmpgtui_fp1_jump_nt
UINT64_C(322969600), // J4_cmpgtui_fp1_jump_t
UINT64_C(620756992), // J4_cmpgtui_t_jumpnv_nt
UINT64_C(620765184), // J4_cmpgtui_t_jumpnv_t
UINT64_C(285212672), // J4_cmpgtui_tp0_jump_nt
UINT64_C(285220864), // J4_cmpgtui_tp0_jump_t
UINT64_C(318767104), // J4_cmpgtui_tp1_jump_nt
UINT64_C(318775296), // J4_cmpgtui_tp1_jump_t
UINT64_C(566231040), // J4_cmplt_f_jumpnv_nt
UINT64_C(566239232), // J4_cmplt_f_jumpnv_t
UINT64_C(562036736), // J4_cmplt_t_jumpnv_nt
UINT64_C(562044928), // J4_cmplt_t_jumpnv_t
UINT64_C(574619648), // J4_cmpltu_f_jumpnv_nt
UINT64_C(574627840), // J4_cmpltu_f_jumpnv_t
UINT64_C(570425344), // J4_cmpltu_t_jumpnv_nt
UINT64_C(570433536), // J4_cmpltu_t_jumpnv_t
UINT64_C(1386217472), // J4_hintjumpr
UINT64_C(369098752), // J4_jumpseti
UINT64_C(385875968), // J4_jumpsetr
UINT64_C(633339904), // J4_tstbit0_f_jumpnv_nt
UINT64_C(633348096), // J4_tstbit0_f_jumpnv_t
UINT64_C(297796352), // J4_tstbit0_fp0_jump_nt
UINT64_C(297804544), // J4_tstbit0_fp0_jump_t
UINT64_C(331350784), // J4_tstbit0_fp1_jump_nt
UINT64_C(331358976), // J4_tstbit0_fp1_jump_t
UINT64_C(629145600), // J4_tstbit0_t_jumpnv_nt
UINT64_C(629153792), // J4_tstbit0_t_jumpnv_t
UINT64_C(293602048), // J4_tstbit0_tp0_jump_nt
UINT64_C(293610240), // J4_tstbit0_tp0_jump_t
UINT64_C(327156480), // J4_tstbit0_tp1_jump_nt
UINT64_C(327164672), // J4_tstbit0_tp1_jump_t
UINT64_C(1384120320), // JMPret
UINT64_C(1398800384), // JMPretf
UINT64_C(1398802432), // JMPretfnew
UINT64_C(1398806528), // JMPretfnewpt
UINT64_C(1396703232), // JMPrett
UINT64_C(1396705280), // JMPrettnew
UINT64_C(1396709376), // JMPrettnewpt
UINT64_C(2417885214), // L2_deallocframe
UINT64_C(2424307712), // L2_loadalignb_io
UINT64_C(2659188736), // L2_loadalignb_pbr
UINT64_C(2558525440), // L2_loadalignb_pci
UINT64_C(2558525952), // L2_loadalignb_pcr
UINT64_C(2592079872), // L2_loadalignb_pi
UINT64_C(2625634304), // L2_loadalignb_pr
UINT64_C(2420113408), // L2_loadalignh_io
UINT64_C(2654994432), // L2_loadalignh_pbr
UINT64_C(2554331136), // L2_loadalignh_pci
UINT64_C(2554331648), // L2_loadalignh_pcr
UINT64_C(2587885568), // L2_loadalignh_pi
UINT64_C(2621440000), // L2_loadalignh_pr
UINT64_C(2418016256), // L2_loadbsw2_io
UINT64_C(2652897280), // L2_loadbsw2_pbr
UINT64_C(2552233984), // L2_loadbsw2_pci
UINT64_C(2552234496), // L2_loadbsw2_pcr
UINT64_C(2585788416), // L2_loadbsw2_pi
UINT64_C(2619342848), // L2_loadbsw2_pr
UINT64_C(2430599168), // L2_loadbsw4_io
UINT64_C(2665480192), // L2_loadbsw4_pbr
UINT64_C(2564816896), // L2_loadbsw4_pci
UINT64_C(2564817408), // L2_loadbsw4_pcr
UINT64_C(2598371328), // L2_loadbsw4_pi
UINT64_C(2631925760), // L2_loadbsw4_pr
UINT64_C(2422210560), // L2_loadbzw2_io
UINT64_C(2657091584), // L2_loadbzw2_pbr
UINT64_C(2556428288), // L2_loadbzw2_pci
UINT64_C(2556428800), // L2_loadbzw2_pcr
UINT64_C(2589982720), // L2_loadbzw2_pi
UINT64_C(2623537152), // L2_loadbzw2_pr
UINT64_C(2426404864), // L2_loadbzw4_io
UINT64_C(2661285888), // L2_loadbzw4_pbr
UINT64_C(2560622592), // L2_loadbzw4_pci
UINT64_C(2560623104), // L2_loadbzw4_pcr
UINT64_C(2594177024), // L2_loadbzw4_pi
UINT64_C(2627731456), // L2_loadbzw4_pr
UINT64_C(2432696320), // L2_loadrb_io
UINT64_C(2667577344), // L2_loadrb_pbr
UINT64_C(0),
UINT64_C(2566914048), // L2_loadrb_pci
UINT64_C(0),
UINT64_C(2566914560), // L2_loadrb_pcr
UINT64_C(2600468480), // L2_loadrb_pi
UINT64_C(2634022912), // L2_loadrb_pr
UINT64_C(1224736768), // L2_loadrbgp
UINT64_C(2445279232), // L2_loadrd_io
UINT64_C(2680160256), // L2_loadrd_pbr
UINT64_C(0),
UINT64_C(2579496960), // L2_loadrd_pci
UINT64_C(0),
UINT64_C(2579497472), // L2_loadrd_pcr
UINT64_C(2613051392), // L2_loadrd_pi
UINT64_C(2646605824), // L2_loadrd_pr
UINT64_C(1237319680), // L2_loadrdgp
UINT64_C(2436890624), // L2_loadrh_io
UINT64_C(2671771648), // L2_loadrh_pbr
UINT64_C(0),
UINT64_C(2571108352), // L2_loadrh_pci
UINT64_C(0),
UINT64_C(2571108864), // L2_loadrh_pcr
UINT64_C(2604662784), // L2_loadrh_pi
UINT64_C(2638217216), // L2_loadrh_pr
UINT64_C(1228931072), // L2_loadrhgp
UINT64_C(2441084928), // L2_loadri_io
UINT64_C(2675965952), // L2_loadri_pbr
UINT64_C(0),
UINT64_C(2575302656), // L2_loadri_pci
UINT64_C(0),
UINT64_C(2575303168), // L2_loadri_pcr
UINT64_C(2608857088), // L2_loadri_pi
UINT64_C(2642411520), // L2_loadri_pr
UINT64_C(1233125376), // L2_loadrigp
UINT64_C(2434793472), // L2_loadrub_io
UINT64_C(2669674496), // L2_loadrub_pbr
UINT64_C(0),
UINT64_C(2569011200), // L2_loadrub_pci
UINT64_C(0),
UINT64_C(2569011712), // L2_loadrub_pcr
UINT64_C(2602565632), // L2_loadrub_pi
UINT64_C(2636120064), // L2_loadrub_pr
UINT64_C(1226833920), // L2_loadrubgp
UINT64_C(2438987776), // L2_loadruh_io
UINT64_C(2673868800), // L2_loadruh_pbr
UINT64_C(0),
UINT64_C(2573205504), // L2_loadruh_pci
UINT64_C(0),
UINT64_C(2573206016), // L2_loadruh_pcr
UINT64_C(2606759936), // L2_loadruh_pi
UINT64_C(2640314368), // L2_loadruh_pr
UINT64_C(1231028224), // L2_loadruhgp
UINT64_C(2449473536), // L2_loadw_locked
UINT64_C(1157627904), // L2_ploadrbf_io
UINT64_C(2600478720), // L2_ploadrbf_pi
UINT64_C(1191182336), // L2_ploadrbfnew_io
UINT64_C(2600482816), // L2_ploadrbfnew_pi
UINT64_C(1090519040), // L2_ploadrbt_io
UINT64_C(2600476672), // L2_ploadrbt_pi
UINT64_C(1124073472), // L2_ploadrbtnew_io
UINT64_C(2600480768), // L2_ploadrbtnew_pi
UINT64_C(1170210816), // L2_ploadrdf_io
UINT64_C(2613061632), // L2_ploadrdf_pi
UINT64_C(1203765248), // L2_ploadrdfnew_io
UINT64_C(2613065728), // L2_ploadrdfnew_pi
UINT64_C(1103101952), // L2_ploadrdt_io
UINT64_C(2613059584), // L2_ploadrdt_pi
UINT64_C(1136656384), // L2_ploadrdtnew_io
UINT64_C(2613063680), // L2_ploadrdtnew_pi
UINT64_C(1161822208), // L2_ploadrhf_io
UINT64_C(2604673024), // L2_ploadrhf_pi
UINT64_C(1195376640), // L2_ploadrhfnew_io
UINT64_C(2604677120), // L2_ploadrhfnew_pi
UINT64_C(1094713344), // L2_ploadrht_io
UINT64_C(2604670976), // L2_ploadrht_pi
UINT64_C(1128267776), // L2_ploadrhtnew_io
UINT64_C(2604675072), // L2_ploadrhtnew_pi
UINT64_C(1166016512), // L2_ploadrif_io
UINT64_C(2608867328), // L2_ploadrif_pi
UINT64_C(1199570944), // L2_ploadrifnew_io
UINT64_C(2608871424), // L2_ploadrifnew_pi
UINT64_C(1098907648), // L2_ploadrit_io
UINT64_C(2608865280), // L2_ploadrit_pi
UINT64_C(1132462080), // L2_ploadritnew_io
UINT64_C(2608869376), // L2_ploadritnew_pi
UINT64_C(1159725056), // L2_ploadrubf_io
UINT64_C(2602575872), // L2_ploadrubf_pi
UINT64_C(1193279488), // L2_ploadrubfnew_io
UINT64_C(2602579968), // L2_ploadrubfnew_pi
UINT64_C(1092616192), // L2_ploadrubt_io
UINT64_C(2602573824), // L2_ploadrubt_pi
UINT64_C(1126170624), // L2_ploadrubtnew_io
UINT64_C(2602577920), // L2_ploadrubtnew_pi
UINT64_C(1163919360), // L2_ploadruhf_io
UINT64_C(2606770176), // L2_ploadruhf_pi
UINT64_C(1197473792), // L2_ploadruhfnew_io
UINT64_C(2606774272), // L2_ploadruhfnew_pi
UINT64_C(1096810496), // L2_ploadruht_io
UINT64_C(2606768128), // L2_ploadruht_pi
UINT64_C(1130364928), // L2_ploadruhtnew_io
UINT64_C(2606772224), // L2_ploadruhtnew_pi
UINT64_C(1040187392), // L4_add_memopb_io
UINT64_C(1042284544), // L4_add_memoph_io
UINT64_C(1044381696), // L4_add_memopw_io
UINT64_C(1040187456), // L4_and_memopb_io
UINT64_C(1042284608), // L4_and_memoph_io
UINT64_C(1044381760), // L4_and_memopw_io
UINT64_C(1056964608), // L4_iadd_memopb_io
UINT64_C(1059061760), // L4_iadd_memoph_io
UINT64_C(1061158912), // L4_iadd_memopw_io
UINT64_C(1056964672), // L4_iand_memopb_io
UINT64_C(1059061824), // L4_iand_memoph_io
UINT64_C(1061158976), // L4_iand_memopw_io
UINT64_C(1056964704), // L4_ior_memopb_io
UINT64_C(1059061856), // L4_ior_memoph_io
UINT64_C(1061159008), // L4_ior_memopw_io
UINT64_C(1056964640), // L4_isub_memopb_io
UINT64_C(1059061792), // L4_isub_memoph_io
UINT64_C(1061158944), // L4_isub_memopw_io
UINT64_C(2592083968), // L4_loadalignb_ap
UINT64_C(2625638400), // L4_loadalignb_ur
UINT64_C(2587889664), // L4_loadalignh_ap
UINT64_C(2621444096), // L4_loadalignh_ur
UINT64_C(2585792512), // L4_loadbsw2_ap
UINT64_C(2619346944), // L4_loadbsw2_ur
UINT64_C(2598375424), // L4_loadbsw4_ap
UINT64_C(2631929856), // L4_loadbsw4_ur
UINT64_C(2589986816), // L4_loadbzw2_ap
UINT64_C(2623541248), // L4_loadbzw2_ur
UINT64_C(2594181120), // L4_loadbzw4_ap
UINT64_C(2627735552), // L4_loadbzw4_ur
UINT64_C(2449477632), // L4_loadd_locked
UINT64_C(1224736768), // L4_loadrb_abs
UINT64_C(2600472576), // L4_loadrb_ap
UINT64_C(973078528), // L4_loadrb_rr
UINT64_C(2634027008), // L4_loadrb_ur
UINT64_C(1237319680), // L4_loadrd_abs
UINT64_C(2613055488), // L4_loadrd_ap
UINT64_C(985661440), // L4_loadrd_rr
UINT64_C(2646609920), // L4_loadrd_ur
UINT64_C(1228931072), // L4_loadrh_abs
UINT64_C(2604666880), // L4_loadrh_ap
UINT64_C(977272832), // L4_loadrh_rr
UINT64_C(2638221312), // L4_loadrh_ur
UINT64_C(1233125376), // L4_loadri_abs
UINT64_C(2608861184), // L4_loadri_ap
UINT64_C(981467136), // L4_loadri_rr
UINT64_C(2642415616), // L4_loadri_ur
UINT64_C(1226833920), // L4_loadrub_abs
UINT64_C(2602569728), // L4_loadrub_ap
UINT64_C(975175680), // L4_loadrub_rr
UINT64_C(2636124160), // L4_loadrub_ur
UINT64_C(1231028224), // L4_loadruh_abs
UINT64_C(2606764032), // L4_loadruh_ap
UINT64_C(979369984), // L4_loadruh_rr
UINT64_C(2640318464), // L4_loadruh_ur
UINT64_C(1040187488), // L4_or_memopb_io
UINT64_C(1042284640), // L4_or_memoph_io
UINT64_C(1044381792), // L4_or_memopw_io
UINT64_C(2667587712), // L4_ploadrbf_abs
UINT64_C(822083584), // L4_ploadrbf_rr
UINT64_C(2667591808), // L4_ploadrbfnew_abs
UINT64_C(855638016), // L4_ploadrbfnew_rr
UINT64_C(2667585664), // L4_ploadrbt_abs
UINT64_C(805306368), // L4_ploadrbt_rr
UINT64_C(2667589760), // L4_ploadrbtnew_abs
UINT64_C(838860800), // L4_ploadrbtnew_rr
UINT64_C(2680170624), // L4_ploadrdf_abs
UINT64_C(834666496), // L4_ploadrdf_rr
UINT64_C(2680174720), // L4_ploadrdfnew_abs
UINT64_C(868220928), // L4_ploadrdfnew_rr
UINT64_C(2680168576), // L4_ploadrdt_abs
UINT64_C(817889280), // L4_ploadrdt_rr
UINT64_C(2680172672), // L4_ploadrdtnew_abs
UINT64_C(851443712), // L4_ploadrdtnew_rr
UINT64_C(2671782016), // L4_ploadrhf_abs
UINT64_C(826277888), // L4_ploadrhf_rr
UINT64_C(2671786112), // L4_ploadrhfnew_abs
UINT64_C(859832320), // L4_ploadrhfnew_rr
UINT64_C(2671779968), // L4_ploadrht_abs
UINT64_C(809500672), // L4_ploadrht_rr
UINT64_C(2671784064), // L4_ploadrhtnew_abs
UINT64_C(843055104), // L4_ploadrhtnew_rr
UINT64_C(2675976320), // L4_ploadrif_abs
UINT64_C(830472192), // L4_ploadrif_rr
UINT64_C(2675980416), // L4_ploadrifnew_abs
UINT64_C(864026624), // L4_ploadrifnew_rr
UINT64_C(2675974272), // L4_ploadrit_abs
UINT64_C(813694976), // L4_ploadrit_rr
UINT64_C(2675978368), // L4_ploadritnew_abs
UINT64_C(847249408), // L4_ploadritnew_rr
UINT64_C(2669684864), // L4_ploadrubf_abs
UINT64_C(824180736), // L4_ploadrubf_rr
UINT64_C(2669688960), // L4_ploadrubfnew_abs
UINT64_C(857735168), // L4_ploadrubfnew_rr
UINT64_C(2669682816), // L4_ploadrubt_abs
UINT64_C(807403520), // L4_ploadrubt_rr
UINT64_C(2669686912), // L4_ploadrubtnew_abs
UINT64_C(840957952), // L4_ploadrubtnew_rr
UINT64_C(2673879168), // L4_ploadruhf_abs
UINT64_C(828375040), // L4_ploadruhf_rr
UINT64_C(2673883264), // L4_ploadruhfnew_abs
UINT64_C(861929472), // L4_ploadruhfnew_rr
UINT64_C(2673877120), // L4_ploadruht_abs
UINT64_C(811597824), // L4_ploadruht_rr
UINT64_C(2673881216), // L4_ploadruhtnew_abs
UINT64_C(845152256), // L4_ploadruhtnew_rr
UINT64_C(2518548510), // L4_return
UINT64_C(2518560798), // L4_return_f
UINT64_C(2518558750), // L4_return_fnew_pnt
UINT64_C(2518562846), // L4_return_fnew_pt
UINT64_C(2518552606), // L4_return_t
UINT64_C(2518550558), // L4_return_tnew_pnt
UINT64_C(2518554654), // L4_return_tnew_pt
UINT64_C(1040187424), // L4_sub_memopb_io
UINT64_C(1042284576), // L4_sub_memoph_io
UINT64_C(1044381728), // L4_sub_memopw_io
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(1897922560), // LO
UINT64_C(0), // LO_GOT
UINT64_C(0), // LO_GOTREL
UINT64_C(1897922560), // LO_H
UINT64_C(0), // LO_PIC
UINT64_C(4009754656), // M2_acci
UINT64_C(3791650816), // M2_accii
UINT64_C(3875536928), // M2_cmaci_s0
UINT64_C(3875536960), // M2_cmacr_s0
UINT64_C(3875537088), // M2_cmacs_s0
UINT64_C(3883925696), // M2_cmacs_s1
UINT64_C(3879731392), // M2_cmacsc_s0
UINT64_C(3888120000), // M2_cmacsc_s1
UINT64_C(3841982496), // M2_cmpyi_s0
UINT64_C(3841982528), // M2_cmpyr_s0
UINT64_C(3978297536), // M2_cmpyrs_s0
UINT64_C(3986686144), // M2_cmpyrs_s1
UINT64_C(3982491840), // M2_cmpyrsc_s0
UINT64_C(3990880448), // M2_cmpyrsc_s1
UINT64_C(3841982656), // M2_cmpys_s0
UINT64_C(3850371264), // M2_cmpys_s1
UINT64_C(3846176960), // M2_cmpysc_s0
UINT64_C(3854565568), // M2_cmpysc_s1
UINT64_C(3875537120), // M2_cnacs_s0
UINT64_C(3883925728), // M2_cnacs_s1
UINT64_C(3879731424), // M2_cnacsc_s0
UINT64_C(3888120032), // M2_cnacsc_s1
UINT64_C(3875536896), // M2_dpmpyss_acc_s0
UINT64_C(3877634048), // M2_dpmpyss_nac_s0
UINT64_C(3978297376), // M2_dpmpyss_rnd_s0
UINT64_C(3841982464), // M2_dpmpyss_s0
UINT64_C(3879731200), // M2_dpmpyuu_acc_s0
UINT64_C(3881828352), // M2_dpmpyuu_nac_s0
UINT64_C(3846176768), // M2_dpmpyuu_s0
UINT64_C(3986686080), // M2_hmmpyh_rs1
UINT64_C(3986685952), // M2_hmmpyh_s1
UINT64_C(3990880384), // M2_hmmpyl_rs1
UINT64_C(3986685984), // M2_hmmpyl_s1
UINT64_C(4009754624), // M2_maci
UINT64_C(3783262208), // M2_macsin
UINT64_C(3774873600), // M2_macsip
UINT64_C(3927965920), // M2_mmachs_rs0
UINT64_C(3936354528), // M2_mmachs_rs1
UINT64_C(3925868768), // M2_mmachs_s0
UINT64_C(3934257376), // M2_mmachs_s1
UINT64_C(3927965856), // M2_mmacls_rs0
UINT64_C(3936354464), // M2_mmacls_rs1
UINT64_C(3925868704), // M2_mmacls_s0
UINT64_C(3934257312), // M2_mmacls_s1
UINT64_C(3932160224), // M2_mmacuhs_rs0
UINT64_C(3940548832), // M2_mmacuhs_rs1
UINT64_C(3930063072), // M2_mmacuhs_s0
UINT64_C(3938451680), // M2_mmacuhs_s1
UINT64_C(3932160160), // M2_mmaculs_rs0
UINT64_C(3940548768), // M2_mmaculs_rs1
UINT64_C(3930063008), // M2_mmaculs_s0
UINT64_C(3938451616), // M2_mmaculs_s1
UINT64_C(3894411488), // M2_mmpyh_rs0
UINT64_C(3902800096), // M2_mmpyh_rs1
UINT64_C(3892314336), // M2_mmpyh_s0
UINT64_C(3900702944), // M2_mmpyh_s1
UINT64_C(3894411424), // M2_mmpyl_rs0
UINT64_C(3902800032), // M2_mmpyl_rs1
UINT64_C(3892314272), // M2_mmpyl_s0
UINT64_C(3900702880), // M2_mmpyl_s1
UINT64_C(3898605792), // M2_mmpyuh_rs0
UINT64_C(3906994400), // M2_mmpyuh_rs1
UINT64_C(3896508640), // M2_mmpyuh_s0
UINT64_C(3904897248), // M2_mmpyuh_s1
UINT64_C(3898605728), // M2_mmpyul_rs0
UINT64_C(3906994336), // M2_mmpyul_rs1
UINT64_C(3896508576), // M2_mmpyul_s0
UINT64_C(3904897184), // M2_mmpyul_s1
UINT64_C(3992977504), // M2_mpy_acc_hh_s0
UINT64_C(4001366112), // M2_mpy_acc_hh_s1
UINT64_C(3992977472), // M2_mpy_acc_hl_s0
UINT64_C(4001366080), // M2_mpy_acc_hl_s1
UINT64_C(3992977440), // M2_mpy_acc_lh_s0
UINT64_C(4001366048), // M2_mpy_acc_lh_s1
UINT64_C(3992977408), // M2_mpy_acc_ll_s0
UINT64_C(4001366016), // M2_mpy_acc_ll_s1
UINT64_C(3992977632), // M2_mpy_acc_sat_hh_s0
UINT64_C(4001366240), // M2_mpy_acc_sat_hh_s1
UINT64_C(3992977600), // M2_mpy_acc_sat_hl_s0
UINT64_C(4001366208), // M2_mpy_acc_sat_hl_s1
UINT64_C(3992977568), // M2_mpy_acc_sat_lh_s0
UINT64_C(4001366176), // M2_mpy_acc_sat_lh_s1
UINT64_C(3992977536), // M2_mpy_acc_sat_ll_s0
UINT64_C(4001366144), // M2_mpy_acc_sat_ll_s1
UINT64_C(3959423072), // M2_mpy_hh_s0
UINT64_C(3967811680), // M2_mpy_hh_s1
UINT64_C(3959423040), // M2_mpy_hl_s0
UINT64_C(3967811648), // M2_mpy_hl_s1
UINT64_C(3959423008), // M2_mpy_lh_s0
UINT64_C(3967811616), // M2_mpy_lh_s1
UINT64_C(3959422976), // M2_mpy_ll_s0
UINT64_C(3967811584), // M2_mpy_ll_s1
UINT64_C(3995074656), // M2_mpy_nac_hh_s0
UINT64_C(4003463264), // M2_mpy_nac_hh_s1
UINT64_C(3995074624), // M2_mpy_nac_hl_s0
UINT64_C(4003463232), // M2_mpy_nac_hl_s1
UINT64_C(3995074592), // M2_mpy_nac_lh_s0
UINT64_C(4003463200), // M2_mpy_nac_lh_s1
UINT64_C(3995074560), // M2_mpy_nac_ll_s0
UINT64_C(4003463168), // M2_mpy_nac_ll_s1
UINT64_C(3995074784), // M2_mpy_nac_sat_hh_s0
UINT64_C(4003463392), // M2_mpy_nac_sat_hh_s1
UINT64_C(3995074752), // M2_mpy_nac_sat_hl_s0
UINT64_C(4003463360), // M2_mpy_nac_sat_hl_s1
UINT64_C(3995074720), // M2_mpy_nac_sat_lh_s0
UINT64_C(4003463328), // M2_mpy_nac_sat_lh_s1
UINT64_C(3995074688), // M2_mpy_nac_sat_ll_s0
UINT64_C(4003463296), // M2_mpy_nac_sat_ll_s1
UINT64_C(3961520224), // M2_mpy_rnd_hh_s0
UINT64_C(3969908832), // M2_mpy_rnd_hh_s1
UINT64_C(3961520192), // M2_mpy_rnd_hl_s0
UINT64_C(3969908800), // M2_mpy_rnd_hl_s1
UINT64_C(3961520160), // M2_mpy_rnd_lh_s0
UINT64_C(3969908768), // M2_mpy_rnd_lh_s1
UINT64_C(3961520128), // M2_mpy_rnd_ll_s0
UINT64_C(3969908736), // M2_mpy_rnd_ll_s1
UINT64_C(3959423200), // M2_mpy_sat_hh_s0
UINT64_C(3967811808), // M2_mpy_sat_hh_s1
UINT64_C(3959423168), // M2_mpy_sat_hl_s0
UINT64_C(3967811776), // M2_mpy_sat_hl_s1
UINT64_C(3959423136), // M2_mpy_sat_lh_s0
UINT64_C(3967811744), // M2_mpy_sat_lh_s1
UINT64_C(3959423104), // M2_mpy_sat_ll_s0
UINT64_C(3967811712), // M2_mpy_sat_ll_s1
UINT64_C(3961520352), // M2_mpy_sat_rnd_hh_s0
UINT64_C(3969908960), // M2_mpy_sat_rnd_hh_s1
UINT64_C(3961520320), // M2_mpy_sat_rnd_hl_s0
UINT64_C(3969908928), // M2_mpy_sat_rnd_hl_s1
UINT64_C(3961520288), // M2_mpy_sat_rnd_lh_s0
UINT64_C(3969908896), // M2_mpy_sat_rnd_lh_s1
UINT64_C(3961520256), // M2_mpy_sat_rnd_ll_s0
UINT64_C(3969908864), // M2_mpy_sat_rnd_ll_s1
UINT64_C(3976200224), // M2_mpy_up
UINT64_C(3986686016), // M2_mpy_up_s1
UINT64_C(3990880256), // M2_mpy_up_s1_sat
UINT64_C(3858759776), // M2_mpyd_acc_hh_s0
UINT64_C(3867148384), // M2_mpyd_acc_hh_s1
UINT64_C(3858759744), // M2_mpyd_acc_hl_s0
UINT64_C(3867148352), // M2_mpyd_acc_hl_s1
UINT64_C(3858759712), // M2_mpyd_acc_lh_s0
UINT64_C(3867148320), // M2_mpyd_acc_lh_s1
UINT64_C(3858759680), // M2_mpyd_acc_ll_s0
UINT64_C(3867148288), // M2_mpyd_acc_ll_s1
UINT64_C(3825205344), // M2_mpyd_hh_s0
UINT64_C(3833593952), // M2_mpyd_hh_s1
UINT64_C(3825205312), // M2_mpyd_hl_s0
UINT64_C(3833593920), // M2_mpyd_hl_s1
UINT64_C(3825205280), // M2_mpyd_lh_s0
UINT64_C(3833593888), // M2_mpyd_lh_s1
UINT64_C(3825205248), // M2_mpyd_ll_s0
UINT64_C(3833593856), // M2_mpyd_ll_s1
UINT64_C(3860856928), // M2_mpyd_nac_hh_s0
UINT64_C(3869245536), // M2_mpyd_nac_hh_s1
UINT64_C(3860856896), // M2_mpyd_nac_hl_s0
UINT64_C(3869245504), // M2_mpyd_nac_hl_s1
UINT64_C(3860856864), // M2_mpyd_nac_lh_s0
UINT64_C(3869245472), // M2_mpyd_nac_lh_s1
UINT64_C(3860856832), // M2_mpyd_nac_ll_s0
UINT64_C(3869245440), // M2_mpyd_nac_ll_s1
UINT64_C(3827302496), // M2_mpyd_rnd_hh_s0
UINT64_C(3835691104), // M2_mpyd_rnd_hh_s1
UINT64_C(3827302464), // M2_mpyd_rnd_hl_s0
UINT64_C(3835691072), // M2_mpyd_rnd_hl_s1
UINT64_C(3827302432), // M2_mpyd_rnd_lh_s0
UINT64_C(3835691040), // M2_mpyd_rnd_lh_s1
UINT64_C(3827302400), // M2_mpyd_rnd_ll_s0
UINT64_C(3835691008), // M2_mpyd_rnd_ll_s1
UINT64_C(3976200192), // M2_mpyi
UINT64_C(3766484992), // M2_mpysin
UINT64_C(3758096384), // M2_mpysip
UINT64_C(0), // M2_mpysmi
UINT64_C(3982491680), // M2_mpysu_up
UINT64_C(3997171808), // M2_mpyu_acc_hh_s0
UINT64_C(4005560416), // M2_mpyu_acc_hh_s1
UINT64_C(3997171776), // M2_mpyu_acc_hl_s0
UINT64_C(4005560384), // M2_mpyu_acc_hl_s1
UINT64_C(3997171744), // M2_mpyu_acc_lh_s0
UINT64_C(4005560352), // M2_mpyu_acc_lh_s1
UINT64_C(3997171712), // M2_mpyu_acc_ll_s0
UINT64_C(4005560320), // M2_mpyu_acc_ll_s1
UINT64_C(3963617376), // M2_mpyu_hh_s0
UINT64_C(3972005984), // M2_mpyu_hh_s1
UINT64_C(3963617344), // M2_mpyu_hl_s0
UINT64_C(3972005952), // M2_mpyu_hl_s1
UINT64_C(3963617312), // M2_mpyu_lh_s0
UINT64_C(3972005920), // M2_mpyu_lh_s1
UINT64_C(3963617280), // M2_mpyu_ll_s0
UINT64_C(3972005888), // M2_mpyu_ll_s1
UINT64_C(3999268960), // M2_mpyu_nac_hh_s0
UINT64_C(4007657568), // M2_mpyu_nac_hh_s1
UINT64_C(3999268928), // M2_mpyu_nac_hl_s0
UINT64_C(4007657536), // M2_mpyu_nac_hl_s1
UINT64_C(3999268896), // M2_mpyu_nac_lh_s0
UINT64_C(4007657504), // M2_mpyu_nac_lh_s1
UINT64_C(3999268864), // M2_mpyu_nac_ll_s0
UINT64_C(4007657472), // M2_mpyu_nac_ll_s1
UINT64_C(3980394528), // M2_mpyu_up
UINT64_C(3862954080), // M2_mpyud_acc_hh_s0
UINT64_C(3871342688), // M2_mpyud_acc_hh_s1
UINT64_C(3862954048), // M2_mpyud_acc_hl_s0
UINT64_C(3871342656), // M2_mpyud_acc_hl_s1
UINT64_C(3862954016), // M2_mpyud_acc_lh_s0
UINT64_C(3871342624), // M2_mpyud_acc_lh_s1
UINT64_C(3862953984), // M2_mpyud_acc_ll_s0
UINT64_C(3871342592), // M2_mpyud_acc_ll_s1
UINT64_C(3829399648), // M2_mpyud_hh_s0
UINT64_C(3837788256), // M2_mpyud_hh_s1
UINT64_C(3829399616), // M2_mpyud_hl_s0
UINT64_C(3837788224), // M2_mpyud_hl_s1
UINT64_C(3829399584), // M2_mpyud_lh_s0
UINT64_C(3837788192), // M2_mpyud_lh_s1
UINT64_C(3829399552), // M2_mpyud_ll_s0
UINT64_C(3837788160), // M2_mpyud_ll_s1
UINT64_C(3865051232), // M2_mpyud_nac_hh_s0
UINT64_C(3873439840), // M2_mpyud_nac_hh_s1
UINT64_C(3865051200), // M2_mpyud_nac_hl_s0
UINT64_C(3873439808), // M2_mpyud_nac_hl_s1
UINT64_C(3865051168), // M2_mpyud_nac_lh_s0
UINT64_C(3873439776), // M2_mpyud_nac_lh_s1
UINT64_C(3865051136), // M2_mpyud_nac_ll_s0
UINT64_C(3873439744), // M2_mpyud_nac_ll_s1
UINT64_C(0), // M2_mpyui
UINT64_C(4018143264), // M2_nacci
UINT64_C(3800039424), // M2_naccii
UINT64_C(4009754720), // M2_subacc
UINT64_C(3898605568), // M2_vabsdiffh
UINT64_C(3894411264), // M2_vabsdiffw
UINT64_C(3930062976), // M2_vcmac_s0_sat_i
UINT64_C(3927965824), // M2_vcmac_s0_sat_r
UINT64_C(3896508608), // M2_vcmpy_s0_sat_i
UINT64_C(3894411456), // M2_vcmpy_s0_sat_r
UINT64_C(3904897216), // M2_vcmpy_s1_sat_i
UINT64_C(3902800064), // M2_vcmpy_s1_sat_r
UINT64_C(3925868672), // M2_vdmacs_s0
UINT64_C(3934257280), // M2_vdmacs_s1
UINT64_C(3909091328), // M2_vdmpyrs_s0
UINT64_C(3917479936), // M2_vdmpyrs_s1
UINT64_C(3892314240), // M2_vdmpys_s0
UINT64_C(3900702848), // M2_vdmpys_s1
UINT64_C(3877634080), // M2_vmac2
UINT64_C(3927965760), // M2_vmac2es
UINT64_C(3925868736), // M2_vmac2es_s0
UINT64_C(3934257344), // M2_vmac2es_s1
UINT64_C(3875537056), // M2_vmac2s_s0
UINT64_C(3883925664), // M2_vmac2s_s1
UINT64_C(3881828512), // M2_vmac2su_s0
UINT64_C(3890217120), // M2_vmac2su_s1
UINT64_C(3892314304), // M2_vmpy2es_s0
UINT64_C(3900702912), // M2_vmpy2es_s1
UINT64_C(3841982624), // M2_vmpy2s_s0
UINT64_C(3978297568), // M2_vmpy2s_s0pack
UINT64_C(3850371232), // M2_vmpy2s_s1
UINT64_C(3986686176), // M2_vmpy2s_s1pack
UINT64_C(3841982688), // M2_vmpy2su_s0
UINT64_C(3850371296), // M2_vmpy2su_s1
UINT64_C(3911188704), // M2_vraddh
UINT64_C(3909091360), // M2_vradduh
UINT64_C(3925868544), // M2_vrcmaci_s0
UINT64_C(3930062848), // M2_vrcmaci_s0c
UINT64_C(3925868576), // M2_vrcmacr_s0
UINT64_C(3932160032), // M2_vrcmacr_s0c
UINT64_C(3892314112), // M2_vrcmpyi_s0
UINT64_C(3896508416), // M2_vrcmpyi_s0c
UINT64_C(3892314144), // M2_vrcmpyr_s0
UINT64_C(3898605600), // M2_vrcmpyr_s0c
UINT64_C(0), // M2_vrcmpys_acc_s1
UINT64_C(3936354432), // M2_vrcmpys_acc_s1_h
UINT64_C(3940548736), // M2_vrcmpys_acc_s1_l
UINT64_C(0), // M2_vrcmpys_s1
UINT64_C(3902800000), // M2_vrcmpys_s1_h
UINT64_C(3906994304), // M2_vrcmpys_s1_l
UINT64_C(0), // M2_vrcmpys_s1rp
UINT64_C(3919577280), // M2_vrcmpys_s1rp_h
UINT64_C(3919577312), // M2_vrcmpys_s1rp_l
UINT64_C(3925868608), // M2_vrmac_s0
UINT64_C(3892314176), // M2_vrmpy_s0
UINT64_C(4018143328), // M2_xor_xacc
UINT64_C(4013948928), // M4_and_and
UINT64_C(4011851808), // M4_and_andn
UINT64_C(4013948960), // M4_and_or
UINT64_C(4013948992), // M4_and_xor
UINT64_C(3305111680), // M4_cmpyi_wh
UINT64_C(3305111712), // M4_cmpyi_whc
UINT64_C(3305111744), // M4_cmpyr_wh
UINT64_C(3305111776), // M4_cmpyr_whc
UINT64_C(4016046080), // M4_mac_up_s1_sat
UINT64_C(3623878656), // M4_mpyri_addi
UINT64_C(3749707776), // M4_mpyri_addr
UINT64_C(3741319168), // M4_mpyri_addr_u2
UINT64_C(3607101440), // M4_mpyrr_addi
UINT64_C(3808428032), // M4_mpyrr_addr
UINT64_C(4016046112), // M4_nac_up_s1_sat
UINT64_C(4013949024), // M4_or_and
UINT64_C(4011851776), // M4_or_andn
UINT64_C(4022337536), // M4_or_or
UINT64_C(4022337568), // M4_or_xor
UINT64_C(3846176992), // M4_pmpyw
UINT64_C(3877634272), // M4_pmpyw_acc
UINT64_C(3854565600), // M4_vpmpyh
UINT64_C(3886022880), // M4_vpmpyh_acc
UINT64_C(3927965888), // M4_vrmpyeh_acc_s0
UINT64_C(3936354496), // M4_vrmpyeh_acc_s1
UINT64_C(3896508544), // M4_vrmpyeh_s0
UINT64_C(3904897152), // M4_vrmpyeh_s1
UINT64_C(3932160192), // M4_vrmpyoh_acc_s0
UINT64_C(3940548800), // M4_vrmpyoh_acc_s1
UINT64_C(3894411328), // M4_vrmpyoh_s0
UINT64_C(3902799936), // M4_vrmpyoh_s1
UINT64_C(4022337600), // M4_xor_and
UINT64_C(4011851840), // M4_xor_andn
UINT64_C(4022337632), // M4_xor_or
UINT64_C(3397386240), // M4_xor_xacc
UINT64_C(3927965728), // M5_vdmacbsu
UINT64_C(3902799904), // M5_vdmpybsu
UINT64_C(3888119840), // M5_vmacbsu
UINT64_C(3883925536), // M5_vmacbuu
UINT64_C(3846176800), // M5_vmpybsu
UINT64_C(3850371104), // M5_vmpybuu
UINT64_C(3938451488), // M5_vrmacbsu
UINT64_C(3934257184), // M5_vrmacbuu
UINT64_C(3904897056), // M5_vrmpybsu
UINT64_C(3900702752), // M5_vrmpybuu
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(1509949440), // RESTORE_DEALLOC_BEFORE_TAILCALL_V4
UINT64_C(1509949440), // RESTORE_DEALLOC_BEFORE_TAILCALL_V4_EXT
UINT64_C(1476395008), // RESTORE_DEALLOC_RET_JMP_V4
UINT64_C(1476395008), // RESTORE_DEALLOC_RET_JMP_V4_EXT
UINT64_C(3288334336), // S2_addasl_rrri
UINT64_C(2694643712), // S2_allocframe
UINT64_C(2147483712), // S2_asl_i_p
UINT64_C(2181038272), // S2_asl_i_p_acc
UINT64_C(2185232448), // S2_asl_i_p_and
UINT64_C(2181038144), // S2_asl_i_p_nac
UINT64_C(2185232576), // S2_asl_i_p_or
UINT64_C(2189426752), // S2_asl_i_p_xacc
UINT64_C(2348810304), // S2_asl_i_r
UINT64_C(2382364864), // S2_asl_i_r_acc
UINT64_C(2386559040), // S2_asl_i_r_and
UINT64_C(2382364736), // S2_asl_i_r_nac
UINT64_C(2386559168), // S2_asl_i_r_or
UINT64_C(2353004608), // S2_asl_i_r_sat
UINT64_C(2390753344), // S2_asl_i_r_xacc
UINT64_C(2155872320), // S2_asl_i_vh
UINT64_C(2151678016), // S2_asl_i_vw
UINT64_C(3279945856), // S2_asl_r_p
UINT64_C(3418357888), // S2_asl_r_p_acc
UINT64_C(3409969280), // S2_asl_r_p_and
UINT64_C(3414163584), // S2_asl_r_p_nac
UINT64_C(3405774976), // S2_asl_r_p_or
UINT64_C(3412066432), // S2_asl_r_p_xor
UINT64_C(3326083200), // S2_asl_r_r
UINT64_C(3435135104), // S2_asl_r_r_acc
UINT64_C(3426746496), // S2_asl_r_r_and
UINT64_C(3430940800), // S2_asl_r_r_nac
UINT64_C(3422552192), // S2_asl_r_r_or
UINT64_C(3321888896), // S2_asl_r_r_sat
UINT64_C(3275751552), // S2_asl_r_vh
UINT64_C(3271557248), // S2_asl_r_vw
UINT64_C(2147483648), // S2_asr_i_p
UINT64_C(2181038208), // S2_asr_i_p_acc
UINT64_C(2185232384), // S2_asr_i_p_and
UINT64_C(2181038080), // S2_asr_i_p_nac
UINT64_C(2185232512), // S2_asr_i_p_or
UINT64_C(2160066784), // S2_asr_i_p_rnd
UINT64_C(0), // S2_asr_i_p_rnd_goodsyntax
UINT64_C(2348810240), // S2_asr_i_r
UINT64_C(2382364800), // S2_asr_i_r_acc
UINT64_C(2386558976), // S2_asr_i_r_and
UINT64_C(2382364672), // S2_asr_i_r_nac
UINT64_C(2386559104), // S2_asr_i_r_or
UINT64_C(2353004544), // S2_asr_i_r_rnd
UINT64_C(0), // S2_asr_i_r_rnd_goodsyntax
UINT64_C(2294284352), // S2_asr_i_svw_trun
UINT64_C(2155872256), // S2_asr_i_vh
UINT64_C(2151677952), // S2_asr_i_vw
UINT64_C(3279945728), // S2_asr_r_p
UINT64_C(3418357760), // S2_asr_r_p_acc
UINT64_C(3409969152), // S2_asr_r_p_and
UINT64_C(3414163456), // S2_asr_r_p_nac
UINT64_C(3405774848), // S2_asr_r_p_or
UINT64_C(3412066304), // S2_asr_r_p_xor
UINT64_C(3326083072), // S2_asr_r_r
UINT64_C(3435134976), // S2_asr_r_r_acc
UINT64_C(3426746368), // S2_asr_r_r_and
UINT64_C(3430940672), // S2_asr_r_r_nac
UINT64_C(3422552064), // S2_asr_r_r_or
UINT64_C(3321888768), // S2_asr_r_r_sat
UINT64_C(3305111616), // S2_asr_r_svw_trun
UINT64_C(3275751424), // S2_asr_r_vh
UINT64_C(3271557120), // S2_asr_r_vw
UINT64_C(2353004736), // S2_brev
UINT64_C(2160066752), // S2_brevp
UINT64_C(3250585792), // S2_cabacdecbin
UINT64_C(3265265664), // S2_cabacencbin
UINT64_C(2348810400), // S2_cl0
UINT64_C(2285895744), // S2_cl0p
UINT64_C(2348810432), // S2_cl1
UINT64_C(2285895808), // S2_cl1p
UINT64_C(2348810368), // S2_clb
UINT64_C(2348810464), // S2_clbnorm
UINT64_C(2285895680), // S2_clbp
UINT64_C(2361393184), // S2_clrbit_i
UINT64_C(3330277440), // S2_clrbit_r
UINT64_C(2353004672), // S2_ct0
UINT64_C(2296381504), // S2_ct0p
UINT64_C(2353004704), // S2_ct1
UINT64_C(2296381568), // S2_ct1p
UINT64_C(2160066688), // S2_deinterleave
UINT64_C(2365587456), // S2_extractu
UINT64_C(3372220416), // S2_extractu_rp
UINT64_C(2164260864), // S2_extractup
UINT64_C(3238002688), // S2_extractup_rp
UINT64_C(2399141888), // S2_insert
UINT64_C(3355443200), // S2_insert_rp
UINT64_C(2197815296), // S2_insertp
UINT64_C(3388997632), // S2_insertp_rp
UINT64_C(2160066720), // S2_interleave
UINT64_C(3246391488), // S2_lfsp
UINT64_C(3279945920), // S2_lsl_r_p
UINT64_C(3418357952), // S2_lsl_r_p_acc
UINT64_C(3409969344), // S2_lsl_r_p_and
UINT64_C(3414163648), // S2_lsl_r_p_nac
UINT64_C(3405775040), // S2_lsl_r_p_or
UINT64_C(3412066496), // S2_lsl_r_p_xor
UINT64_C(3326083264), // S2_lsl_r_r
UINT64_C(3435135168), // S2_lsl_r_r_acc
UINT64_C(3426746560), // S2_lsl_r_r_and
UINT64_C(3430940864), // S2_lsl_r_r_nac
UINT64_C(3422552256), // S2_lsl_r_r_or
UINT64_C(3275751616), // S2_lsl_r_vh
UINT64_C(3271557312), // S2_lsl_r_vw
UINT64_C(2147483680), // S2_lsr_i_p
UINT64_C(2181038240), // S2_lsr_i_p_acc
UINT64_C(2185232416), // S2_lsr_i_p_and
UINT64_C(2181038112), // S2_lsr_i_p_nac
UINT64_C(2185232544), // S2_lsr_i_p_or
UINT64_C(2189426720), // S2_lsr_i_p_xacc
UINT64_C(2348810272), // S2_lsr_i_r
UINT64_C(2382364832), // S2_lsr_i_r_acc
UINT64_C(2386559008), // S2_lsr_i_r_and
UINT64_C(2382364704), // S2_lsr_i_r_nac
UINT64_C(2386559136), // S2_lsr_i_r_or
UINT64_C(2390753312), // S2_lsr_i_r_xacc
UINT64_C(2155872288), // S2_lsr_i_vh
UINT64_C(2151677984), // S2_lsr_i_vw
UINT64_C(3279945792), // S2_lsr_r_p
UINT64_C(3418357824), // S2_lsr_r_p_acc
UINT64_C(3409969216), // S2_lsr_r_p_and
UINT64_C(3414163520), // S2_lsr_r_p_nac
UINT64_C(3405774912), // S2_lsr_r_p_or
UINT64_C(3412066368), // S2_lsr_r_p_xor
UINT64_C(3326083136), // S2_lsr_r_r
UINT64_C(3435135040), // S2_lsr_r_r_acc
UINT64_C(3426746432), // S2_lsr_r_r_and
UINT64_C(3430940736), // S2_lsr_r_r_nac
UINT64_C(3422552128), // S2_lsr_r_r_or
UINT64_C(3275751488), // S2_lsr_r_vh
UINT64_C(3271557184), // S2_lsr_r_vw
UINT64_C(4118806528), // S2_packhl
UINT64_C(3489660928), // S2_parityp
UINT64_C(1140850688), // S2_pstorerbf_io
UINT64_C(2868912132), // S2_pstorerbf_pi
UINT64_C(2868912260), // S2_pstorerbfnew_pi
UINT64_C(1151336448), // S2_pstorerbnewf_io
UINT64_C(2879397892), // S2_pstorerbnewf_pi
UINT64_C(2879398020), // S2_pstorerbnewfnew_pi
UINT64_C(1084227584), // S2_pstorerbnewt_io
UINT64_C(2879397888), // S2_pstorerbnewt_pi
UINT64_C(2879398016), // S2_pstorerbnewtnew_pi
UINT64_C(1073741824), // S2_pstorerbt_io
UINT64_C(2868912128), // S2_pstorerbt_pi
UINT64_C(2868912256), // S2_pstorerbtnew_pi
UINT64_C(1153433600), // S2_pstorerdf_io
UINT64_C(2881495044), // S2_pstorerdf_pi
UINT64_C(2881495172), // S2_pstorerdfnew_pi
UINT64_C(1086324736), // S2_pstorerdt_io
UINT64_C(2881495040), // S2_pstorerdt_pi
UINT64_C(2881495168), // S2_pstorerdtnew_pi
UINT64_C(1147142144), // S2_pstorerff_io
UINT64_C(2875203588), // S2_pstorerff_pi
UINT64_C(2875203716), // S2_pstorerffnew_pi
UINT64_C(1080033280), // S2_pstorerft_io
UINT64_C(2875203584), // S2_pstorerft_pi
UINT64_C(2875203712), // S2_pstorerftnew_pi
UINT64_C(1145044992), // S2_pstorerhf_io
UINT64_C(2873106436), // S2_pstorerhf_pi
UINT64_C(2873106564), // S2_pstorerhfnew_pi
UINT64_C(1151338496), // S2_pstorerhnewf_io
UINT64_C(2879399940), // S2_pstorerhnewf_pi
UINT64_C(2879400068), // S2_pstorerhnewfnew_pi
UINT64_C(1084229632), // S2_pstorerhnewt_io
UINT64_C(2879399936), // S2_pstorerhnewt_pi
UINT64_C(2879400064), // S2_pstorerhnewtnew_pi
UINT64_C(1077936128), // S2_pstorerht_io
UINT64_C(2873106432), // S2_pstorerht_pi
UINT64_C(2873106560), // S2_pstorerhtnew_pi
UINT64_C(1149239296), // S2_pstorerif_io
UINT64_C(2877300740), // S2_pstorerif_pi
UINT64_C(2877300868), // S2_pstorerifnew_pi
UINT64_C(1151340544), // S2_pstorerinewf_io
UINT64_C(2879401988), // S2_pstorerinewf_pi
UINT64_C(2879402116), // S2_pstorerinewfnew_pi
UINT64_C(1084231680), // S2_pstorerinewt_io
UINT64_C(2879401984), // S2_pstorerinewt_pi
UINT64_C(2879402112), // S2_pstorerinewtnew_pi
UINT64_C(1082130432), // S2_pstorerit_io
UINT64_C(2877300736), // S2_pstorerit_pi
UINT64_C(2877300864), // S2_pstoreritnew_pi
UINT64_C(2361393152), // S2_setbit_i
UINT64_C(3330277376), // S2_setbit_r
UINT64_C(3238002752), // S2_shuffeb
UINT64_C(3238002880), // S2_shuffeh
UINT64_C(3238002816), // S2_shuffob
UINT64_C(3246391296), // S2_shuffoh
UINT64_C(2701131776), // S2_storerb_io
UINT64_C(2936012800), // S2_storerb_pbr
UINT64_C(0),
UINT64_C(2835349504), // S2_storerb_pci
UINT64_C(0),
UINT64_C(2835349506), // S2_storerb_pcr
UINT64_C(2868903936), // S2_storerb_pi
UINT64_C(2902458368), // S2_storerb_pr
UINT64_C(1207959552), // S2_storerbabs
UINT64_C(1207959552), // S2_storerbgp
UINT64_C(2711617536), // S2_storerbnew_io
UINT64_C(2946498560), // S2_storerbnew_pbr
UINT64_C(2845835264), // S2_storerbnew_pci
UINT64_C(2845835266), // S2_storerbnew_pcr
UINT64_C(2879389696), // S2_storerbnew_pi
UINT64_C(2912944128), // S2_storerbnew_pr
UINT64_C(1218445312), // S2_storerbnewabs
UINT64_C(1218445312), // S2_storerbnewgp
UINT64_C(2713714688), // S2_storerd_io
UINT64_C(2948595712), // S2_storerd_pbr
UINT64_C(0),
UINT64_C(2847932416), // S2_storerd_pci
UINT64_C(0),
UINT64_C(2847932418), // S2_storerd_pcr
UINT64_C(2881486848), // S2_storerd_pi
UINT64_C(2915041280), // S2_storerd_pr
UINT64_C(1220542464), // S2_storerdabs
UINT64_C(1220542464), // S2_storerdgp
UINT64_C(2707423232), // S2_storerf_io
UINT64_C(2942304256), // S2_storerf_pbr
UINT64_C(0),
UINT64_C(2841640960), // S2_storerf_pci
UINT64_C(0),
UINT64_C(2841640962), // S2_storerf_pcr
UINT64_C(2875195392), // S2_storerf_pi
UINT64_C(2908749824), // S2_storerf_pr
UINT64_C(1214251008), // S2_storerfabs
UINT64_C(1214251008), // S2_storerfgp
UINT64_C(2705326080), // S2_storerh_io
UINT64_C(2940207104), // S2_storerh_pbr
UINT64_C(0),
UINT64_C(2839543808), // S2_storerh_pci
UINT64_C(0),
UINT64_C(2839543810), // S2_storerh_pcr
UINT64_C(2873098240), // S2_storerh_pi
UINT64_C(2906652672), // S2_storerh_pr
UINT64_C(1212153856), // S2_storerhabs
UINT64_C(1212153856), // S2_storerhgp
UINT64_C(2711619584), // S2_storerhnew_io
UINT64_C(2946500608), // S2_storerhnew_pbr
UINT64_C(2845837312), // S2_storerhnew_pci
UINT64_C(2845837314), // S2_storerhnew_pcr
UINT64_C(2879391744), // S2_storerhnew_pi
UINT64_C(2912946176), // S2_storerhnew_pr
UINT64_C(1218447360), // S2_storerhnewabs
UINT64_C(1218447360), // S2_storerhnewgp
UINT64_C(2709520384), // S2_storeri_io
UINT64_C(2944401408), // S2_storeri_pbr
UINT64_C(0),
UINT64_C(2843738112), // S2_storeri_pci
UINT64_C(0),
UINT64_C(2843738114), // S2_storeri_pcr
UINT64_C(2877292544), // S2_storeri_pi
UINT64_C(2910846976), // S2_storeri_pr
UINT64_C(1216348160), // S2_storeriabs
UINT64_C(1216348160), // S2_storerigp
UINT64_C(2711621632), // S2_storerinew_io
UINT64_C(2946502656), // S2_storerinew_pbr
UINT64_C(2845839360), // S2_storerinew_pci
UINT64_C(2845839362), // S2_storerinew_pcr
UINT64_C(2879393792), // S2_storerinew_pi
UINT64_C(2912948224), // S2_storerinew_pr
UINT64_C(1218449408), // S2_storerinewabs
UINT64_C(1218449408), // S2_storerinewgp
UINT64_C(2694840320), // S2_storew_locked
UINT64_C(2357198848), // S2_svsathb
UINT64_C(2357198912), // S2_svsathub
UINT64_C(2264924160), // S2_tableidxb
UINT64_C(0),
UINT64_C(2277507072), // S2_tableidxd
UINT64_C(0),
UINT64_C(2269118464), // S2_tableidxh
UINT64_C(0),
UINT64_C(2273312768), // S2_tableidxw
UINT64_C(0),
UINT64_C(2361393216), // S2_togglebit_i
UINT64_C(3330277504), // S2_togglebit_r
UINT64_C(2231369728), // S2_tstbit_i
UINT64_C(3338665984), // S2_tstbit_r
UINT64_C(3221225472), // S2_valignib
UINT64_C(3254779904), // S2_valignrb
UINT64_C(3284140096), // S2_vcnegh
UINT64_C(3284140032), // S2_vcrotate
UINT64_C(3407880416), // S2_vrcnegh
UINT64_C(2290090112), // S2_vrndpackwh
UINT64_C(2290090176), // S2_vrndpackwhs
UINT64_C(2281701568), // S2_vsathb
UINT64_C(2147483872), // S2_vsathb_nopack
UINT64_C(2281701376), // S2_vsathub
UINT64_C(2147483776), // S2_vsathub_nopack
UINT64_C(2281701440), // S2_vsatwh
UINT64_C(2147483840), // S2_vsatwh_nopack
UINT64_C(2281701504), // S2_vsatwuh
UINT64_C(2147483808), // S2_vsatwuh_nopack
UINT64_C(2353004768), // S2_vsplatrb
UINT64_C(2218786880), // S2_vsplatrh
UINT64_C(3229614080), // S2_vspliceib
UINT64_C(3263168512), // S2_vsplicerb
UINT64_C(2214592512), // S2_vsxtbh
UINT64_C(2214592640), // S2_vsxthw
UINT64_C(2290090048), // S2_vtrunehb
UINT64_C(3246391360), // S2_vtrunewh
UINT64_C(2290089984), // S2_vtrunohb
UINT64_C(3246391424), // S2_vtrunowh
UINT64_C(2214592576), // S2_vzxtbh
UINT64_C(2214592704), // S2_vzxthw
UINT64_C(3674210304), // S4_addaddi
UINT64_C(3724541956), // S4_addi_asl_ri
UINT64_C(3724541972), // S4_addi_lsr_ri
UINT64_C(3724541952), // S4_andi_asl_ri
UINT64_C(3724541968), // S4_andi_lsr_ri
UINT64_C(2350907392), // S4_clbaddi
UINT64_C(2287992896), // S4_clbpaddi
UINT64_C(2287992832), // S4_clbpnorm
UINT64_C(2373976064), // S4_extract
UINT64_C(3372220480), // S4_extract_rp
UINT64_C(2315255808), // S4_extractp
UINT64_C(3250585728), // S4_extractp_rp
UINT64_C(3330277568), // S4_lsli
UINT64_C(2233466880), // S4_ntstbit_i
UINT64_C(3340763136), // S4_ntstbit_r
UINT64_C(3657433088), // S4_or_andi
UINT64_C(3661627392), // S4_or_andix
UINT64_C(3665821696), // S4_or_ori
UINT64_C(3724541954), // S4_ori_asl_ri
UINT64_C(3724541970), // S4_ori_lsr_ri
UINT64_C(3588227072), // S4_parity
UINT64_C(2936012932), // S4_pstorerbf_abs
UINT64_C(889192448), // S4_pstorerbf_rr
UINT64_C(2936021124), // S4_pstorerbfnew_abs
UINT64_C(1174405120), // S4_pstorerbfnew_io
UINT64_C(922746880), // S4_pstorerbfnew_rr
UINT64_C(2946498692), // S4_pstorerbnewf_abs
UINT64_C(899678208), // S4_pstorerbnewf_rr
UINT64_C(2946506884), // S4_pstorerbnewfnew_abs
UINT64_C(1184890880), // S4_pstorerbnewfnew_io
UINT64_C(933232640), // S4_pstorerbnewfnew_rr
UINT64_C(2946498688), // S4_pstorerbnewt_abs
UINT64_C(882900992), // S4_pstorerbnewt_rr
UINT64_C(2946506880), // S4_pstorerbnewtnew_abs
UINT64_C(1117782016), // S4_pstorerbnewtnew_io
UINT64_C(916455424), // S4_pstorerbnewtnew_rr
UINT64_C(2936012928), // S4_pstorerbt_abs
UINT64_C(872415232), // S4_pstorerbt_rr
UINT64_C(2936021120), // S4_pstorerbtnew_abs
UINT64_C(1107296256), // S4_pstorerbtnew_io
UINT64_C(905969664), // S4_pstorerbtnew_rr
UINT64_C(2948595844), // S4_pstorerdf_abs
UINT64_C(901775360), // S4_pstorerdf_rr
UINT64_C(2948604036), // S4_pstorerdfnew_abs
UINT64_C(1186988032), // S4_pstorerdfnew_io
UINT64_C(935329792), // S4_pstorerdfnew_rr
UINT64_C(2948595840), // S4_pstorerdt_abs
UINT64_C(884998144), // S4_pstorerdt_rr
UINT64_C(2948604032), // S4_pstorerdtnew_abs
UINT64_C(1119879168), // S4_pstorerdtnew_io
UINT64_C(918552576), // S4_pstorerdtnew_rr
UINT64_C(2942304388), // S4_pstorerff_abs
UINT64_C(895483904), // S4_pstorerff_rr
UINT64_C(2942312580), // S4_pstorerffnew_abs
UINT64_C(1180696576), // S4_pstorerffnew_io
UINT64_C(929038336), // S4_pstorerffnew_rr
UINT64_C(2942304384), // S4_pstorerft_abs
UINT64_C(878706688), // S4_pstorerft_rr
UINT64_C(2942312576), // S4_pstorerftnew_abs
UINT64_C(1113587712), // S4_pstorerftnew_io
UINT64_C(912261120), // S4_pstorerftnew_rr
UINT64_C(2940207236), // S4_pstorerhf_abs
UINT64_C(893386752), // S4_pstorerhf_rr
UINT64_C(2940215428), // S4_pstorerhfnew_abs
UINT64_C(1178599424), // S4_pstorerhfnew_io
UINT64_C(926941184), // S4_pstorerhfnew_rr
UINT64_C(2946500740), // S4_pstorerhnewf_abs
UINT64_C(899678216), // S4_pstorerhnewf_rr
UINT64_C(2946508932), // S4_pstorerhnewfnew_abs
UINT64_C(1184892928), // S4_pstorerhnewfnew_io
UINT64_C(933232648), // S4_pstorerhnewfnew_rr
UINT64_C(2946500736), // S4_pstorerhnewt_abs
UINT64_C(882901000), // S4_pstorerhnewt_rr
UINT64_C(2946508928), // S4_pstorerhnewtnew_abs
UINT64_C(1117784064), // S4_pstorerhnewtnew_io
UINT64_C(916455432), // S4_pstorerhnewtnew_rr
UINT64_C(2940207232), // S4_pstorerht_abs
UINT64_C(876609536), // S4_pstorerht_rr
UINT64_C(2940215424), // S4_pstorerhtnew_abs
UINT64_C(1111490560), // S4_pstorerhtnew_io
UINT64_C(910163968), // S4_pstorerhtnew_rr
UINT64_C(2944401540), // S4_pstorerif_abs
UINT64_C(897581056), // S4_pstorerif_rr
UINT64_C(2944409732), // S4_pstorerifnew_abs
UINT64_C(1182793728), // S4_pstorerifnew_io
UINT64_C(931135488), // S4_pstorerifnew_rr
UINT64_C(2946502788), // S4_pstorerinewf_abs
UINT64_C(899678224), // S4_pstorerinewf_rr
UINT64_C(2946510980), // S4_pstorerinewfnew_abs
UINT64_C(1184894976), // S4_pstorerinewfnew_io
UINT64_C(933232656), // S4_pstorerinewfnew_rr
UINT64_C(2946502784), // S4_pstorerinewt_abs
UINT64_C(882901008), // S4_pstorerinewt_rr
UINT64_C(2946510976), // S4_pstorerinewtnew_abs
UINT64_C(1117786112), // S4_pstorerinewtnew_io
UINT64_C(916455440), // S4_pstorerinewtnew_rr
UINT64_C(2944401536), // S4_pstorerit_abs
UINT64_C(880803840), // S4_pstorerit_rr
UINT64_C(2944409728), // S4_pstoreritnew_abs
UINT64_C(1115684864), // S4_pstoreritnew_io
UINT64_C(914358272), // S4_pstoreritnew_rr
UINT64_C(2699034624), // S4_stored_locked
UINT64_C(1006632960), // S4_storeirb_io
UINT64_C(947912704), // S4_storeirbf_io
UINT64_C(964689920), // S4_storeirbfnew_io
UINT64_C(939524096), // S4_storeirbt_io
UINT64_C(956301312), // S4_storeirbtnew_io
UINT64_C(1008730112), // S4_storeirh_io
UINT64_C(950009856), // S4_storeirhf_io
UINT64_C(966787072), // S4_storeirhfnew_io
UINT64_C(941621248), // S4_storeirht_io
UINT64_C(958398464), // S4_storeirhtnew_io
UINT64_C(1010827264), // S4_storeiri_io
UINT64_C(952107008), // S4_storeirif_io
UINT64_C(968884224), // S4_storeirifnew_io
UINT64_C(943718400), // S4_storeirit_io
UINT64_C(960495616), // S4_storeiritnew_io
UINT64_C(2868904064), // S4_storerb_ap
UINT64_C(989855744), // S4_storerb_rr
UINT64_C(2902458496), // S4_storerb_ur
UINT64_C(2879389824), // S4_storerbnew_ap
UINT64_C(1000341504), // S4_storerbnew_rr
UINT64_C(2912944256), // S4_storerbnew_ur
UINT64_C(2881486976), // S4_storerd_ap
UINT64_C(1002438656), // S4_storerd_rr
UINT64_C(2915041408), // S4_storerd_ur
UINT64_C(2875195520), // S4_storerf_ap
UINT64_C(996147200), // S4_storerf_rr
UINT64_C(2908749952), // S4_storerf_ur
UINT64_C(2873098368), // S4_storerh_ap
UINT64_C(994050048), // S4_storerh_rr
UINT64_C(2906652800), // S4_storerh_ur
UINT64_C(2879391872), // S4_storerhnew_ap
UINT64_C(1000341512), // S4_storerhnew_rr
UINT64_C(2912946304), // S4_storerhnew_ur
UINT64_C(2877292672), // S4_storeri_ap
UINT64_C(998244352), // S4_storeri_rr
UINT64_C(2910847104), // S4_storeri_ur
UINT64_C(2879393920), // S4_storerinew_ap
UINT64_C(1000341520), // S4_storerinew_rr
UINT64_C(2912948352), // S4_storerinew_ur
UINT64_C(3682598912), // S4_subaddi
UINT64_C(3724541958), // S4_subi_asl_ri
UINT64_C(3724541974), // S4_subi_lsr_ri
UINT64_C(3284140224), // S4_vrcrotate
UINT64_C(3416260608), // S4_vrcrotate_acc
UINT64_C(3242197120), // S4_vxaddsubh
UINT64_C(3250585600), // S4_vxaddsubhr
UINT64_C(3242196992), // S4_vxaddsubw
UINT64_C(3242197184), // S4_vxsubaddh
UINT64_C(3250585664), // S4_vxsubaddhr
UINT64_C(3242197056), // S4_vxsubaddw
UINT64_C(2287992960), // S5_asrhub_rnd_sat
UINT64_C(0), // S5_asrhub_rnd_sat_goodsyntax
UINT64_C(2287992992), // S5_asrhub_sat
UINT64_C(2287992928), // S5_popcountp
UINT64_C(2149580800), // S5_vasrhrnd
UINT64_C(0), // S5_vasrhrnd_goodsyntax
UINT64_C(2147483744), // S6_rol_i_p
UINT64_C(2181038304), // S6_rol_i_p_acc
UINT64_C(2185232480), // S6_rol_i_p_and
UINT64_C(2181038176), // S6_rol_i_p_nac
UINT64_C(2185232608), // S6_rol_i_p_or
UINT64_C(2189426784), // S6_rol_i_p_xacc
UINT64_C(2348810336), // S6_rol_i_r
UINT64_C(2382364896), // S6_rol_i_r_acc
UINT64_C(2386559072), // S6_rol_i_r_and
UINT64_C(2382364768), // S6_rol_i_r_nac
UINT64_C(2386559200), // S6_rol_i_r_or
UINT64_C(2390753376), // S6_rol_i_r_xacc
UINT64_C(1509949440), // SAVE_REGISTERS_CALL_V4
UINT64_C(1509949440), // SAVE_REGISTERS_CALL_V4_EXT
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0), // TFRI64_V2_ext
UINT64_C(0), // TFRI64_V4
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0), // V4_SA1_addi
UINT64_C(6144), // V4_SA1_addrx
UINT64_C(3072), // V4_SA1_addsp
UINT64_C(4608), // V4_SA1_and1
UINT64_C(6768), // V4_SA1_clrf
UINT64_C(6736), // V4_SA1_clrfnew
UINT64_C(6752), // V4_SA1_clrt
UINT64_C(6720), // V4_SA1_clrtnew
UINT64_C(6400), // V4_SA1_cmpeqi
UINT64_C(7168), // V4_SA1_combine0i
UINT64_C(7176), // V4_SA1_combine1i
UINT64_C(7184), // V4_SA1_combine2i
UINT64_C(7192), // V4_SA1_combine3i
UINT64_C(7432), // V4_SA1_combinerz
UINT64_C(7424), // V4_SA1_combinezr
UINT64_C(4864), // V4_SA1_dec
UINT64_C(4352), // V4_SA1_inc
UINT64_C(2048), // V4_SA1_seti
UINT64_C(6656), // V4_SA1_setin1
UINT64_C(5376), // V4_SA1_sxtb
UINT64_C(5120), // V4_SA1_sxth
UINT64_C(4096), // V4_SA1_tfr
UINT64_C(5888), // V4_SA1_zxtb
UINT64_C(5632), // V4_SA1_zxth
UINT64_C(0), // V4_SL1_loadri_io
UINT64_C(4096), // V4_SL1_loadrub_io
UINT64_C(7936), // V4_SL2_deallocframe
UINT64_C(8128), // V4_SL2_jumpr31
UINT64_C(8133), // V4_SL2_jumpr31_f
UINT64_C(8135), // V4_SL2_jumpr31_fnew
UINT64_C(8132), // V4_SL2_jumpr31_t
UINT64_C(8134), // V4_SL2_jumpr31_tnew
UINT64_C(4096), // V4_SL2_loadrb_io
UINT64_C(7680), // V4_SL2_loadrd_sp
UINT64_C(0), // V4_SL2_loadrh_io
UINT64_C(7168), // V4_SL2_loadri_sp
UINT64_C(2048), // V4_SL2_loadruh_io
UINT64_C(8000), // V4_SL2_return
UINT64_C(8005), // V4_SL2_return_f
UINT64_C(8007), // V4_SL2_return_fnew
UINT64_C(8004), // V4_SL2_return_t
UINT64_C(8006), // V4_SL2_return_tnew
UINT64_C(4096), // V4_SS1_storeb_io
UINT64_C(0), // V4_SS1_storew_io
UINT64_C(7168), // V4_SS2_allocframe
UINT64_C(4608), // V4_SS2_storebi0
UINT64_C(4864), // V4_SS2_storebi1
UINT64_C(2560), // V4_SS2_stored_sp
UINT64_C(0), // V4_SS2_storeh_io
UINT64_C(2048), // V4_SS2_storew_sp
UINT64_C(4096), // V4_SS2_storewi0
UINT64_C(4352), // V4_SS2_storewi1
UINT64_C(2449473568), // V6_extractw
UINT64_C(2449473568), // V6_extractw_128B
UINT64_C(429916192), // V6_lvsplatw
UINT64_C(429916192), // V6_lvsplatw_128B
UINT64_C(503513088), // V6_pred_and
UINT64_C(503513088), // V6_pred_and_128B
UINT64_C(503513108), // V6_pred_and_n
UINT64_C(503513108), // V6_pred_and_n_128B
UINT64_C(503513096), // V6_pred_not
UINT64_C(503513096), // V6_pred_not_128B
UINT64_C(503513092), // V6_pred_or
UINT64_C(503513092), // V6_pred_or_128B
UINT64_C(503513104), // V6_pred_or_n
UINT64_C(503513104), // V6_pred_or_n_128B
UINT64_C(429916228), // V6_pred_scalar2
UINT64_C(429916228), // V6_pred_scalar2_128B
UINT64_C(503513100), // V6_pred_xor
UINT64_C(503513100), // V6_pred_xor_128B
UINT64_C(671088864), // V6_vL32Ub_ai
UINT64_C(671088864), // V6_vL32Ub_ai_128B
UINT64_C(687866080), // V6_vL32Ub_pi
UINT64_C(687866080), // V6_vL32Ub_pi_128B
UINT64_C(721420512), // V6_vL32Ub_ppu
UINT64_C(671088640), // V6_vL32b_ai
UINT64_C(671088640), // V6_vL32b_ai_128B
UINT64_C(671088672), // V6_vL32b_cur_ai
UINT64_C(671088672), // V6_vL32b_cur_ai_128B
UINT64_C(687865888), // V6_vL32b_cur_pi
UINT64_C(687865888), // V6_vL32b_cur_pi_128B
UINT64_C(721420320), // V6_vL32b_cur_ppu
UINT64_C(675282944), // V6_vL32b_nt_ai
UINT64_C(675282944), // V6_vL32b_nt_ai_128B
UINT64_C(675282976), // V6_vL32b_nt_cur_ai
UINT64_C(675282976), // V6_vL32b_nt_cur_ai_128B
UINT64_C(692060192), // V6_vL32b_nt_cur_pi
UINT64_C(692060192), // V6_vL32b_nt_cur_pi_128B
UINT64_C(725614624), // V6_vL32b_nt_cur_ppu
UINT64_C(692060160), // V6_vL32b_nt_pi
UINT64_C(692060160), // V6_vL32b_nt_pi_128B
UINT64_C(725614592), // V6_vL32b_nt_ppu
UINT64_C(675283008), // V6_vL32b_nt_tmp_ai
UINT64_C(675283008), // V6_vL32b_nt_tmp_ai_128B
UINT64_C(692060224), // V6_vL32b_nt_tmp_pi
UINT64_C(692060224), // V6_vL32b_nt_tmp_pi_128B
UINT64_C(725614656), // V6_vL32b_nt_tmp_ppu
UINT64_C(687865856), // V6_vL32b_pi
UINT64_C(687865856), // V6_vL32b_pi_128B
UINT64_C(721420288), // V6_vL32b_ppu
UINT64_C(671088704), // V6_vL32b_tmp_ai
UINT64_C(671088704), // V6_vL32b_tmp_ai_128B
UINT64_C(687865920), // V6_vL32b_tmp_pi
UINT64_C(687865920), // V6_vL32b_tmp_pi_128B
UINT64_C(721420352), // V6_vL32b_tmp_ppu
UINT64_C(673186016), // V6_vS32Ub_ai
UINT64_C(673186016), // V6_vS32Ub_ai_128B
UINT64_C(681574624), // V6_vS32Ub_npred_ai
UINT64_C(681574624), // V6_vS32Ub_npred_ai_128B
UINT64_C(698351840), // V6_vS32Ub_npred_pi
UINT64_C(698351840), // V6_vS32Ub_npred_pi_128B
UINT64_C(731906272), // V6_vS32Ub_npred_ppu
UINT64_C(689963232), // V6_vS32Ub_pi
UINT64_C(689963232), // V6_vS32Ub_pi_128B
UINT64_C(723517664), // V6_vS32Ub_ppu
UINT64_C(681574592), // V6_vS32Ub_pred_ai
UINT64_C(681574592), // V6_vS32Ub_pred_ai_128B
UINT64_C(698351808), // V6_vS32Ub_pred_pi
UINT64_C(698351808), // V6_vS32Ub_pred_pi_128B
UINT64_C(731906240), // V6_vS32Ub_pred_ppu
UINT64_C(673185792), // V6_vS32b_ai
UINT64_C(673185792), // V6_vS32b_ai_128B
UINT64_C(673185824), // V6_vS32b_new_ai
UINT64_C(673185824), // V6_vS32b_new_ai_128B
UINT64_C(681574504), // V6_vS32b_new_npred_ai
UINT64_C(681574504), // V6_vS32b_new_npred_ai_128B
UINT64_C(698351720), // V6_vS32b_new_npred_pi
UINT64_C(698351720), // V6_vS32b_new_npred_pi_128B
UINT64_C(731906152), // V6_vS32b_new_npred_ppu
UINT64_C(689963040), // V6_vS32b_new_pi
UINT64_C(689963040), // V6_vS32b_new_pi_128B
UINT64_C(723517472), // V6_vS32b_new_ppu
UINT64_C(681574464), // V6_vS32b_new_pred_ai
UINT64_C(681574464), // V6_vS32b_new_pred_ai_128B
UINT64_C(698351680), // V6_vS32b_new_pred_pi
UINT64_C(698351680), // V6_vS32b_new_pred_pi_128B
UINT64_C(731906112), // V6_vS32b_new_pred_ppu
UINT64_C(681574432), // V6_vS32b_npred_ai
UINT64_C(681574432), // V6_vS32b_npred_ai_128B
UINT64_C(698351648), // V6_vS32b_npred_pi
UINT64_C(698351648), // V6_vS32b_npred_pi_128B
UINT64_C(731906080), // V6_vS32b_npred_ppu
UINT64_C(679477280), // V6_vS32b_nqpred_ai
UINT64_C(679477280), // V6_vS32b_nqpred_ai_128B
UINT64_C(696254496), // V6_vS32b_nqpred_pi
UINT64_C(696254496), // V6_vS32b_nqpred_pi_128B
UINT64_C(729808928), // V6_vS32b_nqpred_ppu
UINT64_C(677380096), // V6_vS32b_nt_ai
UINT64_C(677380096), // V6_vS32b_nt_ai_128B
UINT64_C(677380128), // V6_vS32b_nt_new_ai
UINT64_C(677380128), // V6_vS32b_nt_new_ai_128B
UINT64_C(685768824), // V6_vS32b_nt_new_npred_ai
UINT64_C(685768824), // V6_vS32b_nt_new_npred_ai_128B
UINT64_C(702546040), // V6_vS32b_nt_new_npred_pi
UINT64_C(702546040), // V6_vS32b_nt_new_npred_pi_128B
UINT64_C(736100472), // V6_vS32b_nt_new_npred_ppu
UINT64_C(694157344), // V6_vS32b_nt_new_pi
UINT64_C(694157344), // V6_vS32b_nt_new_pi_128B
UINT64_C(727711776), // V6_vS32b_nt_new_ppu
UINT64_C(685768784), // V6_vS32b_nt_new_pred_ai
UINT64_C(685768784), // V6_vS32b_nt_new_pred_ai_128B
UINT64_C(702546000), // V6_vS32b_nt_new_pred_pi
UINT64_C(702546000), // V6_vS32b_nt_new_pred_pi_128B
UINT64_C(736100432), // V6_vS32b_nt_new_pred_ppu
UINT64_C(685768736), // V6_vS32b_nt_npred_ai
UINT64_C(685768736), // V6_vS32b_nt_npred_ai_128B
UINT64_C(702545952), // V6_vS32b_nt_npred_pi
UINT64_C(702545952), // V6_vS32b_nt_npred_pi_128B
UINT64_C(736100384), // V6_vS32b_nt_npred_ppu
UINT64_C(683671584), // V6_vS32b_nt_nqpred_ai
UINT64_C(683671584), // V6_vS32b_nt_nqpred_ai_128B
UINT64_C(700448800), // V6_vS32b_nt_nqpred_pi
UINT64_C(700448800), // V6_vS32b_nt_nqpred_pi_128B
UINT64_C(734003232), // V6_vS32b_nt_nqpred_ppu
UINT64_C(694157312), // V6_vS32b_nt_pi
UINT64_C(694157312), // V6_vS32b_nt_pi_128B
UINT64_C(727711744), // V6_vS32b_nt_ppu
UINT64_C(685768704), // V6_vS32b_nt_pred_ai
UINT64_C(685768704), // V6_vS32b_nt_pred_ai_128B
UINT64_C(702545920), // V6_vS32b_nt_pred_pi
UINT64_C(702545920), // V6_vS32b_nt_pred_pi_128B
UINT64_C(736100352), // V6_vS32b_nt_pred_ppu
UINT64_C(683671552), // V6_vS32b_nt_qpred_ai
UINT64_C(683671552), // V6_vS32b_nt_qpred_ai_128B
UINT64_C(700448768), // V6_vS32b_nt_qpred_pi
UINT64_C(700448768), // V6_vS32b_nt_qpred_pi_128B
UINT64_C(734003200), // V6_vS32b_nt_qpred_ppu
UINT64_C(689963008), // V6_vS32b_pi
UINT64_C(689963008), // V6_vS32b_pi_128B
UINT64_C(723517440), // V6_vS32b_ppu
UINT64_C(681574400), // V6_vS32b_pred_ai
UINT64_C(681574400), // V6_vS32b_pred_ai_128B
UINT64_C(698351616), // V6_vS32b_pred_pi
UINT64_C(698351616), // V6_vS32b_pred_pi_128B
UINT64_C(731906048), // V6_vS32b_pred_ppu
UINT64_C(679477248), // V6_vS32b_qpred_ai
UINT64_C(679477248), // V6_vS32b_qpred_ai_128B
UINT64_C(696254464), // V6_vS32b_qpred_pi
UINT64_C(696254464), // V6_vS32b_qpred_pi_128B
UINT64_C(729808896), // V6_vS32b_qpred_ppu
UINT64_C(482344992), // V6_vabsdiffh
UINT64_C(482344992), // V6_vabsdiffh_128B
UINT64_C(482344960), // V6_vabsdiffub
UINT64_C(482344960), // V6_vabsdiffub_128B
UINT64_C(482345024), // V6_vabsdiffuh
UINT64_C(482345024), // V6_vabsdiffuh_128B
UINT64_C(482345056), // V6_vabsdiffw
UINT64_C(482345056), // V6_vabsdiffw_128B
UINT64_C(503316480), // V6_vabsh
UINT64_C(503316480), // V6_vabsh_128B
UINT64_C(503316512), // V6_vabsh_sat
UINT64_C(503316512), // V6_vabsh_sat_128B
UINT64_C(503316544), // V6_vabsw
UINT64_C(503316544), // V6_vabsw_128B
UINT64_C(503316576), // V6_vabsw_sat
UINT64_C(503316576), // V6_vabsw_sat_128B
UINT64_C(530579648), // V6_vaddb
UINT64_C(530579648), // V6_vaddb_128B
UINT64_C(476053632), // V6_vaddb_dv
UINT64_C(476053632), // V6_vaddb_dv_128B
UINT64_C(503390304), // V6_vaddbnq
UINT64_C(503390304), // V6_vaddbnq_128B
UINT64_C(503390208), // V6_vaddbq
UINT64_C(503390208), // V6_vaddbq_128B
UINT64_C(530579680), // V6_vaddh
UINT64_C(530579680), // V6_vaddh_128B
UINT64_C(476053664), // V6_vaddh_dv
UINT64_C(476053664), // V6_vaddh_dv_128B
UINT64_C(503390336), // V6_vaddhnq
UINT64_C(503390336), // V6_vaddhnq_128B
UINT64_C(503390240), // V6_vaddhq
UINT64_C(503390240), // V6_vaddhq_128B
UINT64_C(473956448), // V6_vaddhsat
UINT64_C(473956448), // V6_vaddhsat_128B
UINT64_C(478150688), // V6_vaddhsat_dv
UINT64_C(478150688), // V6_vaddhsat_dv_128B
UINT64_C(480247936), // V6_vaddhw
UINT64_C(480247936), // V6_vaddhw_128B
UINT64_C(480247872), // V6_vaddubh
UINT64_C(480247872), // V6_vaddubh_128B
UINT64_C(473956384), // V6_vaddubsat
UINT64_C(473956384), // V6_vaddubsat_128B
UINT64_C(476053728), // V6_vaddubsat_dv
UINT64_C(476053728), // V6_vaddubsat_dv_128B
UINT64_C(473956416), // V6_vadduhsat
UINT64_C(473956416), // V6_vadduhsat_128B
UINT64_C(478150656), // V6_vadduhsat_dv
UINT64_C(478150656), // V6_vadduhsat_dv_128B
UINT64_C(480247904), // V6_vadduhw
UINT64_C(480247904), // V6_vadduhw_128B
UINT64_C(473956352), // V6_vaddw
UINT64_C(473956352), // V6_vaddw_128B
UINT64_C(476053696), // V6_vaddw_dv
UINT64_C(476053696), // V6_vaddw_dv_128B
UINT64_C(503390368), // V6_vaddwnq
UINT64_C(503390368), // V6_vaddwnq_128B
UINT64_C(503390272), // V6_vaddwq
UINT64_C(503390272), // V6_vaddwq_128B
UINT64_C(473956480), // V6_vaddwsat
UINT64_C(473956480), // V6_vaddwsat_128B
UINT64_C(478150720), // V6_vaddwsat_dv
UINT64_C(478150720), // V6_vaddwsat_dv_128B
UINT64_C(452984832), // V6_valignb
UINT64_C(452984832), // V6_valignb_128B
UINT64_C(505421824), // V6_valignbi
UINT64_C(505421824), // V6_valignbi_128B
UINT64_C(471859360), // V6_vand
UINT64_C(471859360), // V6_vand_128B
UINT64_C(429916320), // V6_vandqrt
UINT64_C(429916320), // V6_vandqrt_128B
UINT64_C(425730144), // V6_vandqrt_acc
UINT64_C(425730144), // V6_vandqrt_acc_128B
UINT64_C(429916232), // V6_vandvrt
UINT64_C(429916232), // V6_vandvrt_128B
UINT64_C(425730176), // V6_vandvrt_acc
UINT64_C(425730176), // V6_vandvrt_acc_128B
UINT64_C(427819008), // V6_vaslh
UINT64_C(427819008), // V6_vaslh_128B
UINT64_C(530579616), // V6_vaslhv
UINT64_C(530579616), // V6_vaslhv_128B
UINT64_C(425722080), // V6_vaslw
UINT64_C(425722080), // V6_vaslw_128B
UINT64_C(425730112), // V6_vaslw_acc
UINT64_C(425730112), // V6_vaslw_acc_128B
UINT64_C(530579584), // V6_vaslwv
UINT64_C(530579584), // V6_vaslwv_128B
UINT64_C(425722048), // V6_vasrh
UINT64_C(425722048), // V6_vasrh_128B
UINT64_C(452993024), // V6_vasrhbrndsat
UINT64_C(452993024), // V6_vasrhbrndsat_128B
UINT64_C(452985056), // V6_vasrhubrndsat
UINT64_C(452985056), // V6_vasrhubrndsat_128B
UINT64_C(452985024), // V6_vasrhubsat
UINT64_C(452985024), // V6_vasrhubsat_128B
UINT64_C(530579552), // V6_vasrhv
UINT64_C(530579552), // V6_vasrhv_128B
UINT64_C(425722016), // V6_vasrw
UINT64_C(425722016), // V6_vasrw_128B
UINT64_C(425730208), // V6_vasrw_acc
UINT64_C(425730208), // V6_vasrw_acc_128B
UINT64_C(452984896), // V6_vasrwh
UINT64_C(452984896), // V6_vasrwh_128B
UINT64_C(452984960), // V6_vasrwhrndsat
UINT64_C(452984960), // V6_vasrwhrndsat_128B
UINT64_C(452984928), // V6_vasrwhsat
UINT64_C(452984928), // V6_vasrwhsat_128B
UINT64_C(452984992), // V6_vasrwuhsat
UINT64_C(452984992), // V6_vasrwuhsat_128B
UINT64_C(530579456), // V6_vasrwv
UINT64_C(530579456), // V6_vasrwv_128B
UINT64_C(503521504), // V6_vassign
UINT64_C(503521504), // V6_vassign_128B
UINT64_C(482345152), // V6_vavgh
UINT64_C(482345152), // V6_vavgh_128B
UINT64_C(484442272), // V6_vavghrnd
UINT64_C(484442272), // V6_vavghrnd_128B
UINT64_C(482345088), // V6_vavgub
UINT64_C(482345088), // V6_vavgub_128B
UINT64_C(484442208), // V6_vavgubrnd
UINT64_C(484442208), // V6_vavgubrnd_128B
UINT64_C(482345120), // V6_vavguh
UINT64_C(482345120), // V6_vavguh_128B
UINT64_C(484442240), // V6_vavguhrnd
UINT64_C(484442240), // V6_vavguhrnd_128B
UINT64_C(482345184), // V6_vavgw
UINT64_C(482345184), // V6_vavgw_128B
UINT64_C(484442304), // V6_vavgwrnd
UINT64_C(484442304), // V6_vavgwrnd_128B
UINT64_C(442499072), // V6_vccombine
UINT64_C(442499072), // V6_vccombine_128B
UINT64_C(503447776), // V6_vcl0h
UINT64_C(503447776), // V6_vcl0h_128B
UINT64_C(503447712), // V6_vcl0w
UINT64_C(503447712), // V6_vcl0w_128B
UINT64_C(436207616), // V6_vcmov
UINT64_C(436207616), // V6_vcmov_128B
UINT64_C(524288224), // V6_vcombine
UINT64_C(524288224), // V6_vcombine_128B
UINT64_C(434118720), // V6_vdeal
UINT64_C(434118720), // V6_vdeal_128B
UINT64_C(503316704), // V6_vdealb
UINT64_C(522191072), // V6_vdealb4w
UINT64_C(522191072), // V6_vdealb4w_128B
UINT64_C(503316704), // V6_vdealb_128B
UINT64_C(503316672), // V6_vdealh
UINT64_C(503316672), // V6_vdealh_128B
UINT64_C(452993152), // V6_vdealvdd
UINT64_C(452993152), // V6_vdealvdd_128B
UINT64_C(522190880), // V6_vdelta
UINT64_C(522190880), // V6_vdelta_128B
UINT64_C(419430592), // V6_vdmpybus
UINT64_C(419430592), // V6_vdmpybus_128B
UINT64_C(419438784), // V6_vdmpybus_acc
UINT64_C(419438784), // V6_vdmpybus_acc_128B
UINT64_C(419430624), // V6_vdmpybus_dv
UINT64_C(419430624), // V6_vdmpybus_dv_128B
UINT64_C(419438816), // V6_vdmpybus_dv_acc
UINT64_C(419438816), // V6_vdmpybus_dv_acc_128B
UINT64_C(419430464), // V6_vdmpyhb
UINT64_C(419430464), // V6_vdmpyhb_128B
UINT64_C(419438688), // V6_vdmpyhb_acc
UINT64_C(419438688), // V6_vdmpyhb_acc_128B
UINT64_C(421527680), // V6_vdmpyhb_dv
UINT64_C(421527680), // V6_vdmpyhb_dv_128B
UINT64_C(421535872), // V6_vdmpyhb_dv_acc
UINT64_C(421535872), // V6_vdmpyhb_dv_acc_128B
UINT64_C(421527648), // V6_vdmpyhisat
UINT64_C(421527648), // V6_vdmpyhisat_128B
UINT64_C(421535808), // V6_vdmpyhisat_acc
UINT64_C(421535808), // V6_vdmpyhisat_acc_128B
UINT64_C(421527616), // V6_vdmpyhsat
UINT64_C(421527616), // V6_vdmpyhsat_128B
UINT64_C(421535840), // V6_vdmpyhsat_acc
UINT64_C(421535840), // V6_vdmpyhsat_acc_128B
UINT64_C(421527584), // V6_vdmpyhsuisat
UINT64_C(421527584), // V6_vdmpyhsuisat_128B
UINT64_C(421535776), // V6_vdmpyhsuisat_acc
UINT64_C(421535776), // V6_vdmpyhsuisat_acc_128B
UINT64_C(421527552), // V6_vdmpyhsusat
UINT64_C(421527552), // V6_vdmpyhsusat_128B
UINT64_C(421535744), // V6_vdmpyhsusat_acc
UINT64_C(421535744), // V6_vdmpyhsusat_acc_128B
UINT64_C(469762144), // V6_vdmpyhvsat
UINT64_C(469762144), // V6_vdmpyhvsat_128B
UINT64_C(469770336), // V6_vdmpyhvsat_acc
UINT64_C(469770336), // V6_vdmpyhvsat_acc_128B
UINT64_C(419430560), // V6_vdsaduh
UINT64_C(419430560), // V6_vdsaduh_128B
UINT64_C(425730048), // V6_vdsaduh_acc
UINT64_C(425730048), // V6_vdsaduh_acc_128B
UINT64_C(528482304), // V6_veqb
UINT64_C(528482304), // V6_veqb_128B
UINT64_C(478158848), // V6_veqb_and
UINT64_C(478158848), // V6_veqb_and_128B
UINT64_C(478158912), // V6_veqb_or
UINT64_C(478158912), // V6_veqb_or_128B
UINT64_C(478158976), // V6_veqb_xor
UINT64_C(478158976), // V6_veqb_xor_128B
UINT64_C(528482308), // V6_veqh
UINT64_C(528482308), // V6_veqh_128B
UINT64_C(478158852), // V6_veqh_and
UINT64_C(478158852), // V6_veqh_and_128B
UINT64_C(478158916), // V6_veqh_or
UINT64_C(478158916), // V6_veqh_or_128B
UINT64_C(478158980), // V6_veqh_xor
UINT64_C(478158980), // V6_veqh_xor_128B
UINT64_C(528482312), // V6_veqw
UINT64_C(528482312), // V6_veqw_128B
UINT64_C(478158856), // V6_veqw_and
UINT64_C(478158856), // V6_veqw_and_128B
UINT64_C(478158920), // V6_veqw_or
UINT64_C(478158920), // V6_veqw_or_128B
UINT64_C(478158984), // V6_veqw_xor
UINT64_C(478158984), // V6_veqw_xor_128B
UINT64_C(528482320), // V6_vgtb
UINT64_C(528482320), // V6_vgtb_128B
UINT64_C(478158864), // V6_vgtb_and
UINT64_C(478158864), // V6_vgtb_and_128B
UINT64_C(478158928), // V6_vgtb_or
UINT64_C(478158928), // V6_vgtb_or_128B
UINT64_C(478158992), // V6_vgtb_xor
UINT64_C(478158992), // V6_vgtb_xor_128B
UINT64_C(528482324), // V6_vgth
UINT64_C(528482324), // V6_vgth_128B
UINT64_C(478158868), // V6_vgth_and
UINT64_C(478158868), // V6_vgth_and_128B
UINT64_C(478158932), // V6_vgth_or
UINT64_C(478158932), // V6_vgth_or_128B
UINT64_C(478158996), // V6_vgth_xor
UINT64_C(478158996), // V6_vgth_xor_128B
UINT64_C(528482336), // V6_vgtub
UINT64_C(528482336), // V6_vgtub_128B
UINT64_C(478158880), // V6_vgtub_and
UINT64_C(478158880), // V6_vgtub_and_128B
UINT64_C(478158944), // V6_vgtub_or
UINT64_C(478158944), // V6_vgtub_or_128B
UINT64_C(478159008), // V6_vgtub_xor
UINT64_C(478159008), // V6_vgtub_xor_128B
UINT64_C(528482340), // V6_vgtuh
UINT64_C(528482340), // V6_vgtuh_128B
UINT64_C(478158884), // V6_vgtuh_and
UINT64_C(478158884), // V6_vgtuh_and_128B
UINT64_C(478158948), // V6_vgtuh_or
UINT64_C(478158948), // V6_vgtuh_or_128B
UINT64_C(478159012), // V6_vgtuh_xor
UINT64_C(478159012), // V6_vgtuh_xor_128B
UINT64_C(528482344), // V6_vgtuw
UINT64_C(528482344), // V6_vgtuw_128B
UINT64_C(478158888), // V6_vgtuw_and
UINT64_C(478158888), // V6_vgtuw_and_128B
UINT64_C(478158952), // V6_vgtuw_or
UINT64_C(478158952), // V6_vgtuw_or_128B
UINT64_C(478159016), // V6_vgtuw_xor
UINT64_C(478159016), // V6_vgtuw_xor_128B
UINT64_C(528482328), // V6_vgtw
UINT64_C(528482328), // V6_vgtw_128B
UINT64_C(478158872), // V6_vgtw_and
UINT64_C(478158872), // V6_vgtw_and_128B
UINT64_C(478158936), // V6_vgtw_or
UINT64_C(478158936), // V6_vgtw_or_128B
UINT64_C(478159000), // V6_vgtw_xor
UINT64_C(478159000), // V6_vgtw_xor_128B
UINT64_C(503324800), // V6_vhist
UINT64_C(503455872), // V6_vhistq
UINT64_C(429924384), // V6_vinsertwr
UINT64_C(429924384), // V6_vinsertwr_128B
UINT64_C(452984864), // V6_vlalignb
UINT64_C(452984864), // V6_vlalignb_128B
UINT64_C(509616128), // V6_vlalignbi
UINT64_C(509616128), // V6_vlalignbi_128B
UINT64_C(427819072), // V6_vlsrh
UINT64_C(427819072), // V6_vlsrh_128B
UINT64_C(530579520), // V6_vlsrhv
UINT64_C(530579520), // V6_vlsrhv_128B
UINT64_C(427819040), // V6_vlsrw
UINT64_C(427819040), // V6_vlsrw_128B
UINT64_C(530579488), // V6_vlsrwv
UINT64_C(530579488), // V6_vlsrwv_128B
UINT64_C(452993056), // V6_vlutvvb
UINT64_C(452993056), // V6_vlutvvb_128B
UINT64_C(452993184), // V6_vlutvvb_oracc
UINT64_C(452993184), // V6_vlutvvb_oracc_128B
UINT64_C(452993216), // V6_vlutvwh
UINT64_C(452993216), // V6_vlutvwh_128B
UINT64_C(452993248), // V6_vlutvwh_oracc
UINT64_C(452993248), // V6_vlutvwh_oracc_128B
UINT64_C(520093920), // V6_vmaxh
UINT64_C(520093920), // V6_vmaxh_128B
UINT64_C(520093856), // V6_vmaxub
UINT64_C(520093856), // V6_vmaxub_128B
UINT64_C(520093888), // V6_vmaxuh
UINT64_C(520093888), // V6_vmaxuh_128B
UINT64_C(522190848), // V6_vmaxw
UINT64_C(522190848), // V6_vmaxw_128B
UINT64_C(520093792), // V6_vminh
UINT64_C(520093792), // V6_vminh_128B
UINT64_C(520093728), // V6_vminub
UINT64_C(520093728), // V6_vminub_128B
UINT64_C(520093760), // V6_vminuh
UINT64_C(520093760), // V6_vminuh_128B
UINT64_C(520093824), // V6_vminw
UINT64_C(520093824), // V6_vminw_128B
UINT64_C(421527744), // V6_vmpabus
UINT64_C(421527744), // V6_vmpabus_128B
UINT64_C(421535936), // V6_vmpabus_acc
UINT64_C(421535936), // V6_vmpabus_acc_128B
UINT64_C(471859296), // V6_vmpabusv
UINT64_C(471859296), // V6_vmpabusv_128B
UINT64_C(484442336), // V6_vmpabuuv
UINT64_C(484442336), // V6_vmpabuuv_128B
UINT64_C(421527776), // V6_vmpahb
UINT64_C(421527776), // V6_vmpahb_128B
UINT64_C(421535968), // V6_vmpahb_acc
UINT64_C(421535968), // V6_vmpahb_acc_128B
UINT64_C(421527712), // V6_vmpybus
UINT64_C(421527712), // V6_vmpybus_128B
UINT64_C(421535904), // V6_vmpybus_acc
UINT64_C(421535904), // V6_vmpybus_acc_128B
UINT64_C(469762240), // V6_vmpybusv
UINT64_C(469762240), // V6_vmpybusv_128B
UINT64_C(469770432), // V6_vmpybusv_acc
UINT64_C(469770432), // V6_vmpybusv_acc_128B
UINT64_C(469762176), // V6_vmpybv
UINT64_C(469762176), // V6_vmpybv_128B
UINT64_C(469770368), // V6_vmpybv_acc
UINT64_C(469770368), // V6_vmpybv_acc_128B
UINT64_C(534773920), // V6_vmpyewuh
UINT64_C(534773920), // V6_vmpyewuh_128B
UINT64_C(423624704), // V6_vmpyh
UINT64_C(423624704), // V6_vmpyh_128B
UINT64_C(423632896), // V6_vmpyhsat_acc
UINT64_C(423632896), // V6_vmpyhsat_acc_128B
UINT64_C(423624768), // V6_vmpyhsrs
UINT64_C(423624768), // V6_vmpyhsrs_128B
UINT64_C(423624736), // V6_vmpyhss
UINT64_C(423624736), // V6_vmpyhss_128B
UINT64_C(471859264), // V6_vmpyhus
UINT64_C(471859264), // V6_vmpyhus_128B
UINT64_C(471867424), // V6_vmpyhus_acc
UINT64_C(471867424), // V6_vmpyhus_acc_128B
UINT64_C(469762272), // V6_vmpyhv
UINT64_C(469762272), // V6_vmpyhv_128B
UINT64_C(469770464), // V6_vmpyhv_acc
UINT64_C(469770464), // V6_vmpyhv_acc_128B
UINT64_C(471859232), // V6_vmpyhvsrs
UINT64_C(471859232), // V6_vmpyhvsrs_128B
UINT64_C(526385152), // V6_vmpyieoh
UINT64_C(526385152), // V6_vmpyieoh_128B
UINT64_C(473964544), // V6_vmpyiewh_acc
UINT64_C(473964544), // V6_vmpyiewh_acc_128B
UINT64_C(532676608), // V6_vmpyiewuh
UINT64_C(532676608), // V6_vmpyiewuh_128B
UINT64_C(471867552), // V6_vmpyiewuh_acc
UINT64_C(471867552), // V6_vmpyiewuh_acc_128B
UINT64_C(471859328), // V6_vmpyih
UINT64_C(471859328), // V6_vmpyih_128B
UINT64_C(471867520), // V6_vmpyih_acc
UINT64_C(471867520), // V6_vmpyih_acc_128B
UINT64_C(425721856), // V6_vmpyihb
UINT64_C(425721856), // V6_vmpyihb_128B
UINT64_C(425730080), // V6_vmpyihb_acc
UINT64_C(425730080), // V6_vmpyihb_acc_128B
UINT64_C(532676640), // V6_vmpyiowh
UINT64_C(532676640), // V6_vmpyiowh_128B
UINT64_C(429916160), // V6_vmpyiwb
UINT64_C(429916160), // V6_vmpyiwb_128B
UINT64_C(423632960), // V6_vmpyiwb_acc
UINT64_C(423632960), // V6_vmpyiwb_acc_128B
UINT64_C(427819232), // V6_vmpyiwh
UINT64_C(427819232), // V6_vmpyiwh_128B
UINT64_C(423632992), // V6_vmpyiwh_acc
UINT64_C(423632992), // V6_vmpyiwh_acc_128B
UINT64_C(534773984), // V6_vmpyowh
UINT64_C(534773984), // V6_vmpyowh_128B
UINT64_C(524288000), // V6_vmpyowh_rnd
UINT64_C(524288000), // V6_vmpyowh_rnd_128B
UINT64_C(471867616), // V6_vmpyowh_rnd_sacc
UINT64_C(471867616), // V6_vmpyowh_rnd_sacc_128B
UINT64_C(471867584), // V6_vmpyowh_sacc
UINT64_C(471867584), // V6_vmpyowh_sacc_128B
UINT64_C(432013312), // V6_vmpyub
UINT64_C(432013312), // V6_vmpyub_128B
UINT64_C(427827200), // V6_vmpyub_acc
UINT64_C(427827200), // V6_vmpyub_acc_128B
UINT64_C(469762208), // V6_vmpyubv
UINT64_C(469762208), // V6_vmpyubv_128B
UINT64_C(469770400), // V6_vmpyubv_acc
UINT64_C(469770400), // V6_vmpyubv_acc_128B
UINT64_C(423624800), // V6_vmpyuh
UINT64_C(423624800), // V6_vmpyuh_128B
UINT64_C(423632928), // V6_vmpyuh_acc
UINT64_C(423632928), // V6_vmpyuh_acc_128B
UINT64_C(471859200), // V6_vmpyuhv
UINT64_C(471859200), // V6_vmpyuhv_128B
UINT64_C(471867392), // V6_vmpyuhv_acc
UINT64_C(471867392), // V6_vmpyuhv_acc_128B
UINT64_C(518004736), // V6_vmux
UINT64_C(518004736), // V6_vmux_128B
UINT64_C(484442144), // V6_vnavgh
UINT64_C(484442144), // V6_vnavgh_128B
UINT64_C(484442112), // V6_vnavgub
UINT64_C(484442112), // V6_vnavgub_128B
UINT64_C(484442176), // V6_vnavgw
UINT64_C(484442176), // V6_vnavgw_128B
UINT64_C(440401920), // V6_vnccombine
UINT64_C(440401920), // V6_vnccombine_128B
UINT64_C(438304768), // V6_vncmov
UINT64_C(438304768), // V6_vncmov_128B
UINT64_C(503513248), // V6_vnormamth
UINT64_C(503513248), // V6_vnormamth_128B
UINT64_C(503513216), // V6_vnormamtw
UINT64_C(503513216), // V6_vnormamtw_128B
UINT64_C(503316608), // V6_vnot
UINT64_C(503316608), // V6_vnot_128B
UINT64_C(471859392), // V6_vor
UINT64_C(471859392), // V6_vor_128B
UINT64_C(532676672), // V6_vpackeb
UINT64_C(532676672), // V6_vpackeb_128B
UINT64_C(532676704), // V6_vpackeh
UINT64_C(532676704), // V6_vpackeh_128B
UINT64_C(532676800), // V6_vpackhb_sat
UINT64_C(532676800), // V6_vpackhb_sat_128B
UINT64_C(532676768), // V6_vpackhub_sat
UINT64_C(532676768), // V6_vpackhub_sat_128B
UINT64_C(534773792), // V6_vpackob
UINT64_C(534773792), // V6_vpackob_128B
UINT64_C(534773824), // V6_vpackoh
UINT64_C(534773824), // V6_vpackoh_128B
UINT64_C(534773760), // V6_vpackwh_sat
UINT64_C(534773760), // V6_vpackwh_sat_128B
UINT64_C(532676832), // V6_vpackwuh_sat
UINT64_C(532676832), // V6_vpackwuh_sat_128B
UINT64_C(503447744), // V6_vpopcounth
UINT64_C(503447744), // V6_vpopcounth_128B
UINT64_C(522190944), // V6_vrdelta
UINT64_C(522190944), // V6_vrdelta_128B
UINT64_C(419430528), // V6_vrmpybus
UINT64_C(419430528), // V6_vrmpybus_128B
UINT64_C(419438752), // V6_vrmpybus_acc
UINT64_C(419438752), // V6_vrmpybus_acc_128B
UINT64_C(423624832), // V6_vrmpybusi
UINT64_C(423624832), // V6_vrmpybusi_128B
UINT64_C(423633024), // V6_vrmpybusi_acc
UINT64_C(423633024), // V6_vrmpybusi_acc_128B
UINT64_C(469762112), // V6_vrmpybusv
UINT64_C(469762112), // V6_vrmpybusv_128B
UINT64_C(469770304), // V6_vrmpybusv_acc
UINT64_C(469770304), // V6_vrmpybusv_acc_128B
UINT64_C(469762080), // V6_vrmpybv
UINT64_C(469762080), // V6_vrmpybv_128B
UINT64_C(469770272), // V6_vrmpybv_acc
UINT64_C(469770272), // V6_vrmpybv_acc_128B
UINT64_C(419430496), // V6_vrmpyub
UINT64_C(419430496), // V6_vrmpyub_128B
UINT64_C(419438720), // V6_vrmpyub_acc
UINT64_C(419438720), // V6_vrmpyub_acc_128B
UINT64_C(429916352), // V6_vrmpyubi
UINT64_C(429916352), // V6_vrmpyubi_128B
UINT64_C(425730240), // V6_vrmpyubi_acc
UINT64_C(425730240), // V6_vrmpyubi_acc_128B
UINT64_C(469762048), // V6_vrmpyubv
UINT64_C(469762048), // V6_vrmpyubv_128B
UINT64_C(469770240), // V6_vrmpyubv_acc
UINT64_C(469770240), // V6_vrmpyubv_acc_128B
UINT64_C(425721888), // V6_vror
UINT64_C(425721888), // V6_vror_128B
UINT64_C(526385344), // V6_vroundhb
UINT64_C(526385344), // V6_vroundhb_128B
UINT64_C(526385376), // V6_vroundhub
UINT64_C(526385376), // V6_vroundhub_128B
UINT64_C(526385280), // V6_vroundwh
UINT64_C(526385280), // V6_vroundwh_128B
UINT64_C(526385312), // V6_vroundwuh
UINT64_C(526385312), // V6_vroundwuh_128B
UINT64_C(423624896), // V6_vrsadubi
UINT64_C(423624896), // V6_vrsadubi_128B
UINT64_C(423633088), // V6_vrsadubi_acc
UINT64_C(423633088), // V6_vrsadubi_acc_128B
UINT64_C(526385216), // V6_vsathub
UINT64_C(526385216), // V6_vsathub_128B
UINT64_C(526385248), // V6_vsatwh
UINT64_C(526385248), // V6_vsatwh_128B
UINT64_C(503447648), // V6_vsb
UINT64_C(503447648), // V6_vsb_128B
UINT64_C(503447680), // V6_vsh
UINT64_C(503447680), // V6_vsh_128B
UINT64_C(524288096), // V6_vshufeh
UINT64_C(524288096), // V6_vshufeh_128B
UINT64_C(434118688), // V6_vshuff
UINT64_C(434118688), // V6_vshuff_128B
UINT64_C(503447552), // V6_vshuffb
UINT64_C(503447552), // V6_vshuffb_128B
UINT64_C(524288032), // V6_vshuffeb
UINT64_C(524288032), // V6_vshuffeb_128B
UINT64_C(503382240), // V6_vshuffh
UINT64_C(503382240), // V6_vshuffh_128B
UINT64_C(524288064), // V6_vshuffob
UINT64_C(524288064), // V6_vshuffob_128B
UINT64_C(452993120), // V6_vshuffvdd
UINT64_C(452993120), // V6_vshuffvdd_128B
UINT64_C(524288192), // V6_vshufoeb
UINT64_C(524288192), // V6_vshufoeb_128B
UINT64_C(524288160), // V6_vshufoeh
UINT64_C(524288160), // V6_vshufoeh_128B
UINT64_C(524288128), // V6_vshufoh
UINT64_C(524288128), // V6_vshufoh_128B
UINT64_C(473956512), // V6_vsubb
UINT64_C(473956512), // V6_vsubb_128B
UINT64_C(478150752), // V6_vsubb_dv
UINT64_C(478150752), // V6_vsubb_dv_128B
UINT64_C(503455776), // V6_vsubbnq
UINT64_C(503455776), // V6_vsubbnq_128B
UINT64_C(503390400), // V6_vsubbq
UINT64_C(503390400), // V6_vsubbq_128B
UINT64_C(473956544), // V6_vsubh
UINT64_C(473956544), // V6_vsubh_128B
UINT64_C(478150784), // V6_vsubh_dv
UINT64_C(478150784), // V6_vsubh_dv_128B
UINT64_C(503455808), // V6_vsubhnq
UINT64_C(503455808), // V6_vsubhnq_128B
UINT64_C(503390432), // V6_vsubhq
UINT64_C(503390432), // V6_vsubhq_128B
UINT64_C(476053568), // V6_vsubhsat
UINT64_C(476053568), // V6_vsubhsat_128B
UINT64_C(480247808), // V6_vsubhsat_dv
UINT64_C(480247808), // V6_vsubhsat_dv_128B
UINT64_C(480248032), // V6_vsubhw
UINT64_C(480248032), // V6_vsubhw_128B
UINT64_C(480247968), // V6_vsububh
UINT64_C(480247968), // V6_vsububh_128B
UINT64_C(476053504), // V6_vsububsat
UINT64_C(476053504), // V6_vsububsat_128B
UINT64_C(478150848), // V6_vsububsat_dv
UINT64_C(478150848), // V6_vsububsat_dv_128B
UINT64_C(476053536), // V6_vsubuhsat
UINT64_C(476053536), // V6_vsubuhsat_128B
UINT64_C(478150880), // V6_vsubuhsat_dv
UINT64_C(478150880), // V6_vsubuhsat_dv_128B
UINT64_C(480248000), // V6_vsubuhw
UINT64_C(480248000), // V6_vsubuhw_128B
UINT64_C(473956576), // V6_vsubw
UINT64_C(473956576), // V6_vsubw_128B
UINT64_C(478150816), // V6_vsubw_dv
UINT64_C(478150816), // V6_vsubw_dv_128B
UINT64_C(503455840), // V6_vsubwnq
UINT64_C(503455840), // V6_vsubwnq_128B
UINT64_C(503455744), // V6_vsubwq
UINT64_C(503455744), // V6_vsubwq_128B
UINT64_C(476053600), // V6_vsubwsat
UINT64_C(476053600), // V6_vsubwsat_128B
UINT64_C(480247840), // V6_vsubwsat_dv
UINT64_C(480247840), // V6_vsubwsat_dv_128B
UINT64_C(513810432), // V6_vswap
UINT64_C(513810432), // V6_vswap_128B
UINT64_C(419430400), // V6_vtmpyb
UINT64_C(419430400), // V6_vtmpyb_128B
UINT64_C(419438592), // V6_vtmpyb_acc
UINT64_C(419438592), // V6_vtmpyb_acc_128B
UINT64_C(419430432), // V6_vtmpybus
UINT64_C(419430432), // V6_vtmpybus_128B
UINT64_C(419438624), // V6_vtmpybus_acc
UINT64_C(419438624), // V6_vtmpybus_acc_128B
UINT64_C(429916288), // V6_vtmpyhb
UINT64_C(429916288), // V6_vtmpyhb_128B
UINT64_C(419438656), // V6_vtmpyhb_acc
UINT64_C(419438656), // V6_vtmpyhb_acc_128B
UINT64_C(503382080), // V6_vunpackb
UINT64_C(503382080), // V6_vunpackb_128B
UINT64_C(503382112), // V6_vunpackh
UINT64_C(503382112), // V6_vunpackh_128B
UINT64_C(503324672), // V6_vunpackob
UINT64_C(503324672), // V6_vunpackob_128B
UINT64_C(503324704), // V6_vunpackoh
UINT64_C(503324704), // V6_vunpackoh_128B
UINT64_C(503382016), // V6_vunpackub
UINT64_C(503382016), // V6_vunpackub_128B
UINT64_C(503382048), // V6_vunpackuh
UINT64_C(503382048), // V6_vunpackuh_128B
UINT64_C(471859424), // V6_vxor
UINT64_C(471859424), // V6_vxor_128B
UINT64_C(503447584), // V6_vzb
UINT64_C(503447584), // V6_vzb_128B
UINT64_C(503447616), // V6_vzh
UINT64_C(503447616), // V6_vzh_128B
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(0),
UINT64_C(2818572288), // Y2_barrier
UINT64_C(2684354560), // Y2_dccleana
UINT64_C(2688548864), // Y2_dccleaninva
UINT64_C(2483027968), // Y2_dcfetchbo
UINT64_C(2686451712), // Y2_dcinva
UINT64_C(2696937472), // Y2_dczeroa
UINT64_C(1455423488), // Y2_icinva
UINT64_C(1472200706), // Y2_isync
UINT64_C(2822766592), // Y2_syncht
UINT64_C(2785017856), // Y4_l2fetch
UINT64_C(1648361472), // Y4_trace
UINT64_C(2793406464), // Y5_l2fetch
UINT64_C(2820673536), // Y5_l2gclean
UINT64_C(2820675584), // Y5_l2gcleaninv
UINT64_C(2820671488), // Y5_l2gunlock
UINT64_C(2699042816), // Y5_l2locka
UINT64_C(2791309312), // Y5_l2unlocka
UINT64_C(2797600768), // Y6_l2gcleaninvpa
UINT64_C(2795503616), // Y6_l2gcleanpa
UINT64_C(3581935616), // dep_A2_addsat
UINT64_C(3581935744), // dep_A2_subsat
UINT64_C(3556769792), // dep_S2_packhl
UINT64_C(0)
};
const unsigned opcode = MI.getOpcode();
uint64_t Value = InstBits[opcode];
uint64_t op = 0;
(void)op; // suppress warning
switch (opcode) {
case Hexagon::A2_addsp:
case Hexagon::A2_nop:
case Hexagon::A2_not:
case Hexagon::A2_tfrp:
case Hexagon::A2_tfrpf:
case Hexagon::A2_tfrpfnew:
case Hexagon::A2_tfrpi:
case Hexagon::A2_tfrpt:
case Hexagon::A2_tfrptnew:
case Hexagon::A4_boundscheck:
case Hexagon::ARGEXTEND:
case Hexagon::C2_pxfer_map:
case Hexagon::CONST32:
case Hexagon::CONST32_Float_Real:
case Hexagon::CONST32_Int_Real:
case Hexagon::CONST64_Float_Real:
case Hexagon::CONST64_Int_Real:
case Hexagon::DuplexIClass0:
case Hexagon::DuplexIClass1:
case Hexagon::DuplexIClass2:
case Hexagon::DuplexIClass3:
case Hexagon::DuplexIClass4:
case Hexagon::DuplexIClass5:
case Hexagon::DuplexIClass6:
case Hexagon::DuplexIClass7:
case Hexagon::DuplexIClass8:
case Hexagon::DuplexIClass9:
case Hexagon::DuplexIClassA:
case Hexagon::DuplexIClassB:
case Hexagon::DuplexIClassC:
case Hexagon::DuplexIClassD:
case Hexagon::DuplexIClassE:
case Hexagon::DuplexIClassF:
case Hexagon::FCONST32_nsdata:
case Hexagon::HEXAGON_V6_vd0_pseudo:
case Hexagon::HEXAGON_V6_vd0_pseudo_128B:
case Hexagon::HI_GOT:
case Hexagon::HI_GOTREL:
case Hexagon::HI_PIC:
case Hexagon::L2_deallocframe:
case Hexagon::L4_return:
case Hexagon::LO_GOT:
case Hexagon::LO_GOTREL:
case Hexagon::LO_PIC:
case Hexagon::M2_mpysmi:
case Hexagon::M2_mpyui:
case Hexagon::M2_vrcmpys_acc_s1:
case Hexagon::M2_vrcmpys_s1:
case Hexagon::M2_vrcmpys_s1rp:
case Hexagon::S2_asr_i_p_rnd_goodsyntax:
case Hexagon::S2_asr_i_r_rnd_goodsyntax:
case Hexagon::S5_asrhub_rnd_sat_goodsyntax:
case Hexagon::S5_vasrhrnd_goodsyntax:
case Hexagon::TFRI64_V2_ext:
case Hexagon::TFRI64_V4:
case Hexagon::V4_SL2_deallocframe:
case Hexagon::V4_SL2_jumpr31:
case Hexagon::V4_SL2_jumpr31_f:
case Hexagon::V4_SL2_jumpr31_fnew:
case Hexagon::V4_SL2_jumpr31_t:
case Hexagon::V4_SL2_jumpr31_tnew:
case Hexagon::V4_SL2_return:
case Hexagon::V4_SL2_return_f:
case Hexagon::V4_SL2_return_fnew:
case Hexagon::V4_SL2_return_t:
case Hexagon::V4_SL2_return_tnew:
case Hexagon::V6_vhist:
case Hexagon::Y2_barrier:
case Hexagon::Y2_isync:
case Hexagon::Y2_syncht:
case Hexagon::Y5_l2gclean:
case Hexagon::Y5_l2gcleaninv:
case Hexagon::Y5_l2gunlock: {
break;
}
case Hexagon::C2_all8:
case Hexagon::C2_any8:
case Hexagon::C2_not: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Ps
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 16;
break;
}
case Hexagon::C2_xor:
case Hexagon::C4_fastcorner9:
case Hexagon::C4_fastcorner9_not: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Ps
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 16;
// op: Pt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
break;
}
case Hexagon::C4_and_and:
case Hexagon::C4_and_andn:
case Hexagon::C4_and_or:
case Hexagon::C4_and_orn:
case Hexagon::C4_or_and:
case Hexagon::C4_or_andn:
case Hexagon::C4_or_or:
case Hexagon::C4_or_orn: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Ps
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 16;
// op: Pt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(3)) << 6;
break;
}
case Hexagon::C2_and:
case Hexagon::C2_andn:
case Hexagon::C2_or:
case Hexagon::C2_orn: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Ps
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
// op: Pt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3)) << 16;
break;
}
case Hexagon::C2_tfrrp: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::A4_cmpbeqi:
case Hexagon::A4_cmpbgti:
case Hexagon::A4_cmpbgtui:
case Hexagon::A4_cmpheqi:
case Hexagon::A4_cmphgti:
case Hexagon::A4_cmphgtui: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Imm
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
break;
}
case Hexagon::A4_cmpbeq:
case Hexagon::A4_cmpbgt:
case Hexagon::A4_cmpbgtu:
case Hexagon::A4_cmpheq:
case Hexagon::A4_cmphgt:
case Hexagon::A4_cmphgtu:
case Hexagon::A4_tlbmatch:
case Hexagon::C2_bitsclr:
case Hexagon::C2_bitsset:
case Hexagon::C2_cmpeqp:
case Hexagon::C2_cmpgtp:
case Hexagon::C2_cmpgtup:
case Hexagon::C4_nbitsclr:
case Hexagon::C4_nbitsset:
case Hexagon::S2_storew_locked:
case Hexagon::S2_tstbit_r:
case Hexagon::S4_ntstbit_r:
case Hexagon::S4_stored_locked: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::F2_sfclass:
case Hexagon::S2_tstbit_i:
case Hexagon::S4_ntstbit_i: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u5
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::C2_bitsclri:
case Hexagon::C4_nbitsclri: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u6
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(63)) << 8;
break;
}
case Hexagon::A4_vcmpbgtui:
case Hexagon::A4_vcmphgtui:
case Hexagon::A4_vcmpwgtui: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Imm
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(127)) << 5;
break;
}
case Hexagon::A4_vcmpbeqi:
case Hexagon::A4_vcmpbgti:
case Hexagon::A4_vcmpheqi:
case Hexagon::A4_vcmphgti:
case Hexagon::A4_vcmpweqi:
case Hexagon::A4_vcmpwgti: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Imm
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
break;
}
case Hexagon::A2_vcmpbeq:
case Hexagon::A2_vcmpbgtu:
case Hexagon::A2_vcmpheq:
case Hexagon::A2_vcmphgt:
case Hexagon::A2_vcmphgtu:
case Hexagon::A2_vcmpweq:
case Hexagon::A2_vcmpwgt:
case Hexagon::A2_vcmpwgtu:
case Hexagon::A4_boundscheck_hi:
case Hexagon::A4_boundscheck_lo:
case Hexagon::A4_vcmpbeq_any:
case Hexagon::A4_vcmpbgt: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::F2_dfclass: {
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u5
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 5;
break;
}
case Hexagon::J2_callf:
case Hexagon::J2_callt: {
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
// op: dst
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(98304)) << 7;
Value |= (op & UINT64_C(31744)) << 6;
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(508)) >> 1;
break;
}
case Hexagon::A2_paddf:
case Hexagon::A2_paddfnew:
case Hexagon::A2_paddt:
case Hexagon::A2_paddtnew:
case Hexagon::A2_pandf:
case Hexagon::A2_pandfnew:
case Hexagon::A2_pandt:
case Hexagon::A2_pandtnew:
case Hexagon::A2_porf:
case Hexagon::A2_porfnew:
case Hexagon::A2_port:
case Hexagon::A2_portnew:
case Hexagon::A2_pxorf:
case Hexagon::A2_pxorfnew:
case Hexagon::A2_pxort:
case Hexagon::A2_pxortnew:
case Hexagon::C2_ccombinewf:
case Hexagon::C2_ccombinewnewf:
case Hexagon::C2_ccombinewnewt:
case Hexagon::C2_ccombinewt: {
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::A2_psubf:
case Hexagon::A2_psubfnew:
case Hexagon::A2_psubt:
case Hexagon::A2_psubtnew: {
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::S4_pstorerbnewf_rr:
case Hexagon::S4_pstorerbnewfnew_rr:
case Hexagon::S4_pstorerbnewt_rr:
case Hexagon::S4_pstorerbnewtnew_rr:
case Hexagon::S4_pstorerhnewf_rr:
case Hexagon::S4_pstorerhnewfnew_rr:
case Hexagon::S4_pstorerhnewt_rr:
case Hexagon::S4_pstorerhnewtnew_rr:
case Hexagon::S4_pstorerinewf_rr:
case Hexagon::S4_pstorerinewfnew_rr:
case Hexagon::S4_pstorerinewt_rr:
case Hexagon::S4_pstorerinewtnew_rr: {
// op: Pv
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Ru
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: u2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 7;
// op: Nt
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::S4_pstorerbf_rr:
case Hexagon::S4_pstorerbfnew_rr:
case Hexagon::S4_pstorerbt_rr:
case Hexagon::S4_pstorerbtnew_rr:
case Hexagon::S4_pstorerdf_rr:
case Hexagon::S4_pstorerdfnew_rr:
case Hexagon::S4_pstorerdt_rr:
case Hexagon::S4_pstorerdtnew_rr:
case Hexagon::S4_pstorerff_rr:
case Hexagon::S4_pstorerffnew_rr:
case Hexagon::S4_pstorerft_rr:
case Hexagon::S4_pstorerftnew_rr:
case Hexagon::S4_pstorerhf_rr:
case Hexagon::S4_pstorerhfnew_rr:
case Hexagon::S4_pstorerht_rr:
case Hexagon::S4_pstorerhtnew_rr:
case Hexagon::S4_pstorerif_rr:
case Hexagon::S4_pstorerifnew_rr:
case Hexagon::S4_pstorerit_rr:
case Hexagon::S4_pstoreritnew_rr: {
// op: Pv
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Ru
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: u2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 7;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::S4_storeirhf_io:
case Hexagon::S4_storeirhfnew_io:
case Hexagon::S4_storeirht_io:
case Hexagon::S4_storeirhtnew_io: {
// op: Pv
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: S6
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(32)) << 8;
Value |= op & UINT64_C(31);
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(126)) << 6;
break;
}
case Hexagon::S4_storeirif_io:
case Hexagon::S4_storeirifnew_io:
case Hexagon::S4_storeirit_io:
case Hexagon::S4_storeiritnew_io: {
// op: Pv
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: S6
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(32)) << 8;
Value |= op & UINT64_C(31);
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(252)) << 5;
break;
}
case Hexagon::S4_storeirbf_io:
case Hexagon::S4_storeirbfnew_io:
case Hexagon::S4_storeirbt_io:
case Hexagon::S4_storeirbtnew_io: {
// op: Pv
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: S6
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(32)) << 8;
Value |= op & UINT64_C(31);
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(63)) << 7;
break;
}
case Hexagon::J4_jumpseti: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 16;
// op: U6
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(63)) << 8;
// op: r9_2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 11;
Value |= (op & UINT64_C(508)) >> 1;
break;
}
case Hexagon::J4_jumpsetr: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 8;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(15)) << 16;
// op: r9_2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 11;
Value |= (op & UINT64_C(508)) >> 1;
break;
}
case Hexagon::S4_addi_asl_ri:
case Hexagon::S4_addi_lsr_ri:
case Hexagon::S4_andi_asl_ri:
case Hexagon::S4_andi_lsr_ri:
case Hexagon::S4_ori_asl_ri:
case Hexagon::S4_ori_lsr_ri:
case Hexagon::S4_subi_asl_ri:
case Hexagon::S4_subi_lsr_ri: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u8
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(224)) << 16;
Value |= (op & UINT64_C(16)) << 9;
Value |= (op & UINT64_C(14)) << 4;
Value |= (op & UINT64_C(1)) << 3;
// op: U5
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S4_addaddi: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Ru
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(31);
// op: s6
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(48)) << 17;
Value |= (op & UINT64_C(8)) << 10;
Value |= (op & UINT64_C(7)) << 5;
break;
}
case Hexagon::S4_subaddi: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: s6
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(48)) << 17;
Value |= (op & UINT64_C(8)) << 10;
Value |= (op & UINT64_C(7)) << 5;
// op: Ru
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::M4_mpyri_addi: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: u6
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(48)) << 17;
Value |= (op & UINT64_C(8)) << 10;
Value |= (op & UINT64_C(7)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: U6
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(32)) << 18;
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V4_SA1_clrf:
case Hexagon::V4_SA1_clrfnew:
case Hexagon::V4_SA1_clrt:
case Hexagon::V4_SA1_clrtnew:
case Hexagon::V4_SA1_setin1: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
break;
}
case Hexagon::V4_SA1_and1:
case Hexagon::V4_SA1_dec:
case Hexagon::V4_SA1_inc:
case Hexagon::V4_SA1_sxtb:
case Hexagon::V4_SA1_sxth:
case Hexagon::V4_SA1_tfr:
case Hexagon::V4_SA1_zxtb:
case Hexagon::V4_SA1_zxth: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
break;
}
case Hexagon::V4_SL2_loadrb_io: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
// op: u3_0
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::V4_SL2_loadrh_io:
case Hexagon::V4_SL2_loadruh_io: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
// op: u3_1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(14)) << 7;
break;
}
case Hexagon::V4_SL1_loadrub_io: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
// op: u4_0
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(15)) << 8;
break;
}
case Hexagon::V4_SL1_loadri_io: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
// op: u4_2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(60)) << 6;
break;
}
case Hexagon::V4_SL2_loadri_sp: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
// op: u5_2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(124)) << 2;
break;
}
case Hexagon::V4_SA1_seti: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
// op: u6
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(63)) << 4;
break;
}
case Hexagon::V4_SA1_addsp: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
// op: u6_2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(252)) << 2;
break;
}
case Hexagon::F2_sfinvsqrta: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Pe
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::F2_sfrecipa: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Pe
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::C2_tfrpr: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Ps
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 16;
break;
}
case Hexagon::C2_vitpack: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Ps
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 16;
// op: Pt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
break;
}
case Hexagon::C2_mask: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Pt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
break;
}
case Hexagon::A2_paddif:
case Hexagon::A2_paddifnew:
case Hexagon::A2_paddit:
case Hexagon::A2_padditnew: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 21;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: s8
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
break;
}
case Hexagon::C2_cmoveif:
case Hexagon::C2_cmoveit:
case Hexagon::C2_cmovenewif:
case Hexagon::C2_cmovenewit: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 21;
// op: s12
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3840)) << 8;
Value |= (op & UINT64_C(255)) << 5;
break;
}
case Hexagon::C2_muxri: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 21;
// op: s8
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::C2_muxir: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 21;
// op: s8
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::C2_muxii: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 23;
// op: s8
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
// op: S8
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(254)) << 15;
Value |= (op & UINT64_C(1)) << 13;
break;
}
case Hexagon::C2_mux:
case Hexagon::C2_vmux: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::A4_paslhf:
case Hexagon::A4_paslhfnew:
case Hexagon::A4_paslht:
case Hexagon::A4_paslhtnew:
case Hexagon::A4_pasrhf:
case Hexagon::A4_pasrhfnew:
case Hexagon::A4_pasrht:
case Hexagon::A4_pasrhtnew:
case Hexagon::A4_psxtbf:
case Hexagon::A4_psxtbfnew:
case Hexagon::A4_psxtbt:
case Hexagon::A4_psxtbtnew:
case Hexagon::A4_psxthf:
case Hexagon::A4_psxthfnew:
case Hexagon::A4_psxtht:
case Hexagon::A4_psxthtnew:
case Hexagon::A4_pzxtbf:
case Hexagon::A4_pzxtbfnew:
case Hexagon::A4_pzxtbt:
case Hexagon::A4_pzxtbtnew:
case Hexagon::A4_pzxthf:
case Hexagon::A4_pzxthfnew:
case Hexagon::A4_pzxtht:
case Hexagon::A4_pzxthtnew: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::A2_aslh:
case Hexagon::A2_asrh:
case Hexagon::A2_sxtb:
case Hexagon::A2_sxth:
case Hexagon::A2_zxtb:
case Hexagon::A2_zxth:
case Hexagon::F2_conv_sf2uw:
case Hexagon::F2_conv_sf2uw_chop:
case Hexagon::F2_conv_sf2w:
case Hexagon::F2_conv_sf2w_chop:
case Hexagon::F2_conv_uw2sf:
case Hexagon::F2_conv_w2sf:
case Hexagon::F2_sffixupr: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::A4_bitsplit:
case Hexagon::A4_modwrapu:
case Hexagon::F2_sfadd:
case Hexagon::F2_sffixupd:
case Hexagon::F2_sffixupn:
case Hexagon::F2_sfmax:
case Hexagon::F2_sfmin:
case Hexagon::F2_sfmpy:
case Hexagon::F2_sfsub:
case Hexagon::M2_mpy_hh_s0:
case Hexagon::M2_mpy_hh_s1:
case Hexagon::M2_mpy_hl_s0:
case Hexagon::M2_mpy_hl_s1:
case Hexagon::M2_mpy_lh_s0:
case Hexagon::M2_mpy_lh_s1:
case Hexagon::M2_mpy_ll_s0:
case Hexagon::M2_mpy_ll_s1:
case Hexagon::M2_mpy_rnd_hh_s0:
case Hexagon::M2_mpy_rnd_hh_s1:
case Hexagon::M2_mpy_rnd_hl_s0:
case Hexagon::M2_mpy_rnd_hl_s1:
case Hexagon::M2_mpy_rnd_lh_s0:
case Hexagon::M2_mpy_rnd_lh_s1:
case Hexagon::M2_mpy_rnd_ll_s0:
case Hexagon::M2_mpy_rnd_ll_s1:
case Hexagon::M2_mpy_sat_hh_s0:
case Hexagon::M2_mpy_sat_hh_s1:
case Hexagon::M2_mpy_sat_hl_s0:
case Hexagon::M2_mpy_sat_hl_s1:
case Hexagon::M2_mpy_sat_lh_s0:
case Hexagon::M2_mpy_sat_lh_s1:
case Hexagon::M2_mpy_sat_ll_s0:
case Hexagon::M2_mpy_sat_ll_s1:
case Hexagon::M2_mpy_sat_rnd_hh_s0:
case Hexagon::M2_mpy_sat_rnd_hh_s1:
case Hexagon::M2_mpy_sat_rnd_hl_s0:
case Hexagon::M2_mpy_sat_rnd_hl_s1:
case Hexagon::M2_mpy_sat_rnd_lh_s0:
case Hexagon::M2_mpy_sat_rnd_lh_s1:
case Hexagon::M2_mpy_sat_rnd_ll_s0:
case Hexagon::M2_mpy_sat_rnd_ll_s1:
case Hexagon::M2_mpyu_hh_s0:
case Hexagon::M2_mpyu_hh_s1:
case Hexagon::M2_mpyu_hl_s0:
case Hexagon::M2_mpyu_hl_s1:
case Hexagon::M2_mpyu_lh_s0:
case Hexagon::M2_mpyu_lh_s1:
case Hexagon::M2_mpyu_ll_s0:
case Hexagon::M2_mpyu_ll_s1:
case Hexagon::S2_clrbit_r:
case Hexagon::S2_parityp:
case Hexagon::S2_setbit_r:
case Hexagon::S2_togglebit_r:
case Hexagon::S4_parity:
case Hexagon::dep_A2_addsat:
case Hexagon::dep_S2_packhl: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_extractu_rp:
case Hexagon::S4_extract_rp: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::A2_andir:
case Hexagon::A2_orir: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: s10
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(512)) << 12;
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::A2_addi: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: s16
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(65024)) << 12;
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::A4_rcmpeqi:
case Hexagon::A4_rcmpneqi: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: s8
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
break;
}
case Hexagon::S2_clrbit_i:
case Hexagon::S2_setbit_i:
case Hexagon::S2_togglebit_i: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u5
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::M2_mpysin:
case Hexagon::M2_mpysip: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u8
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
break;
}
case Hexagon::dep_A2_subsat: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::A2_minp:
case Hexagon::A2_minup: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::A2_maxp:
case Hexagon::A2_maxup: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::F2_conv_d2sf:
case Hexagon::F2_conv_df2sf:
case Hexagon::F2_conv_df2uw:
case Hexagon::F2_conv_df2uw_chop:
case Hexagon::F2_conv_df2w:
case Hexagon::F2_conv_df2w_chop:
case Hexagon::F2_conv_ud2sf:
case Hexagon::S5_popcountp: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::M4_cmpyi_wh:
case Hexagon::M4_cmpyi_whc:
case Hexagon::M4_cmpyr_wh:
case Hexagon::M4_cmpyr_whc:
case Hexagon::S2_asr_r_svw_trun: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S5_asrhub_rnd_sat:
case Hexagon::S5_asrhub_sat: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u4
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(15)) << 8;
break;
}
case Hexagon::A2_max:
case Hexagon::A2_maxu: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::A2_addh_h16_hh:
case Hexagon::A2_addh_h16_hl:
case Hexagon::A2_addh_h16_lh:
case Hexagon::A2_addh_h16_ll:
case Hexagon::A2_addh_h16_sat_hh:
case Hexagon::A2_addh_h16_sat_hl:
case Hexagon::A2_addh_h16_sat_lh:
case Hexagon::A2_addh_h16_sat_ll:
case Hexagon::A2_addh_l16_hl:
case Hexagon::A2_addh_l16_ll:
case Hexagon::A2_addh_l16_sat_hl:
case Hexagon::A2_addh_l16_sat_ll:
case Hexagon::A2_min:
case Hexagon::A2_minu:
case Hexagon::A2_subh_h16_hh:
case Hexagon::A2_subh_h16_hl:
case Hexagon::A2_subh_h16_lh:
case Hexagon::A2_subh_h16_ll:
case Hexagon::A2_subh_h16_sat_hh:
case Hexagon::A2_subh_h16_sat_hl:
case Hexagon::A2_subh_h16_sat_lh:
case Hexagon::A2_subh_h16_sat_ll:
case Hexagon::A2_subh_l16_hl:
case Hexagon::A2_subh_l16_ll:
case Hexagon::A2_subh_l16_sat_hl:
case Hexagon::A2_subh_l16_sat_ll: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::S2_addasl_rrri: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 5;
break;
}
case Hexagon::A2_subri: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: s10
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(512)) << 12;
Value |= (op & UINT64_C(511)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::A2_tfrsi: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: s16
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(49152)) << 8;
Value |= (op & UINT64_C(15872)) << 7;
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::S4_lsli: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: s6
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(62)) << 15;
Value |= (op & UINT64_C(1)) << 5;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::M4_mpyrr_addi: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: u6
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(48)) << 17;
Value |= (op & UINT64_C(8)) << 10;
Value |= (op & UINT64_C(7)) << 5;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::C4_addipc: {
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: u6
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(63)) << 7;
break;
}
case Hexagon::F2_conv_sf2d:
case Hexagon::F2_conv_sf2d_chop:
case Hexagon::F2_conv_sf2df:
case Hexagon::F2_conv_sf2ud:
case Hexagon::F2_conv_sf2ud_chop:
case Hexagon::F2_conv_uw2df:
case Hexagon::F2_conv_w2df: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::M2_cmpyi_s0:
case Hexagon::M2_cmpyr_s0:
case Hexagon::M2_cmpys_s0:
case Hexagon::M2_cmpys_s1:
case Hexagon::M2_cmpysc_s0:
case Hexagon::M2_cmpysc_s1:
case Hexagon::M2_dpmpyss_s0:
case Hexagon::M2_dpmpyuu_s0:
case Hexagon::M2_mpyd_hh_s0:
case Hexagon::M2_mpyd_hh_s1:
case Hexagon::M2_mpyd_hl_s0:
case Hexagon::M2_mpyd_hl_s1:
case Hexagon::M2_mpyd_lh_s0:
case Hexagon::M2_mpyd_lh_s1:
case Hexagon::M2_mpyd_ll_s0:
case Hexagon::M2_mpyd_ll_s1:
case Hexagon::M2_mpyd_rnd_hh_s0:
case Hexagon::M2_mpyd_rnd_hh_s1:
case Hexagon::M2_mpyd_rnd_hl_s0:
case Hexagon::M2_mpyd_rnd_hl_s1:
case Hexagon::M2_mpyd_rnd_lh_s0:
case Hexagon::M2_mpyd_rnd_lh_s1:
case Hexagon::M2_mpyd_rnd_ll_s0:
case Hexagon::M2_mpyd_rnd_ll_s1:
case Hexagon::M2_mpyud_hh_s0:
case Hexagon::M2_mpyud_hh_s1:
case Hexagon::M2_mpyud_hl_s0:
case Hexagon::M2_mpyud_hl_s1:
case Hexagon::M2_mpyud_lh_s0:
case Hexagon::M2_mpyud_lh_s1:
case Hexagon::M2_mpyud_ll_s0:
case Hexagon::M2_mpyud_ll_s1:
case Hexagon::M2_vmpy2s_s0:
case Hexagon::M2_vmpy2s_s1:
case Hexagon::M2_vmpy2su_s0:
case Hexagon::M2_vmpy2su_s1:
case Hexagon::M4_pmpyw:
case Hexagon::M4_vpmpyh:
case Hexagon::M5_vmpybsu:
case Hexagon::M5_vmpybuu: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::A4_combineri: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: s8
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
break;
}
case Hexagon::A4_combineir: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: s8
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
break;
}
case Hexagon::F2_conv_d2df:
case Hexagon::F2_conv_df2d:
case Hexagon::F2_conv_df2d_chop:
case Hexagon::F2_conv_df2ud:
case Hexagon::F2_conv_df2ud_chop:
case Hexagon::F2_conv_ud2df: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::S4_vrcrotate: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: u2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 5;
break;
}
case Hexagon::A2_vaddh:
case Hexagon::A2_vaddhs:
case Hexagon::A2_vaddub:
case Hexagon::A2_vaddubs:
case Hexagon::A2_vadduhs:
case Hexagon::A2_vaddw:
case Hexagon::A2_vaddws:
case Hexagon::A2_vavgh:
case Hexagon::A2_vavghcr:
case Hexagon::A2_vavghr:
case Hexagon::A2_vavgub:
case Hexagon::A2_vavgubr:
case Hexagon::A2_vavguh:
case Hexagon::A2_vavguhr:
case Hexagon::A2_vavguw:
case Hexagon::A2_vavguwr:
case Hexagon::A2_vavgw:
case Hexagon::A2_vavgwcr:
case Hexagon::A2_vavgwr:
case Hexagon::A2_vraddub:
case Hexagon::A2_vrsadub:
case Hexagon::M2_mmpyh_rs0:
case Hexagon::M2_mmpyh_rs1:
case Hexagon::M2_mmpyh_s0:
case Hexagon::M2_mmpyh_s1:
case Hexagon::M2_mmpyl_rs0:
case Hexagon::M2_mmpyl_rs1:
case Hexagon::M2_mmpyl_s0:
case Hexagon::M2_mmpyl_s1:
case Hexagon::M2_mmpyuh_rs0:
case Hexagon::M2_mmpyuh_rs1:
case Hexagon::M2_mmpyuh_s0:
case Hexagon::M2_mmpyuh_s1:
case Hexagon::M2_mmpyul_rs0:
case Hexagon::M2_mmpyul_rs1:
case Hexagon::M2_mmpyul_s0:
case Hexagon::M2_mmpyul_s1:
case Hexagon::M2_vcmpy_s0_sat_i:
case Hexagon::M2_vcmpy_s0_sat_r:
case Hexagon::M2_vcmpy_s1_sat_i:
case Hexagon::M2_vcmpy_s1_sat_r:
case Hexagon::M2_vdmpys_s0:
case Hexagon::M2_vdmpys_s1:
case Hexagon::M2_vmpy2es_s0:
case Hexagon::M2_vmpy2es_s1:
case Hexagon::M2_vrcmpyi_s0:
case Hexagon::M2_vrcmpyi_s0c:
case Hexagon::M2_vrcmpyr_s0:
case Hexagon::M2_vrcmpyr_s0c:
case Hexagon::M2_vrcmpys_s1_h:
case Hexagon::M2_vrcmpys_s1_l:
case Hexagon::M2_vrmpy_s0:
case Hexagon::M4_vrmpyeh_s0:
case Hexagon::M4_vrmpyeh_s1:
case Hexagon::M4_vrmpyoh_s0:
case Hexagon::M4_vrmpyoh_s1:
case Hexagon::M5_vdmpybsu:
case Hexagon::M5_vrmpybsu:
case Hexagon::M5_vrmpybuu: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_vsplicerb: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
break;
}
case Hexagon::S2_vspliceib: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: u3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 5;
break;
}
case Hexagon::S5_vasrhrnd: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u4
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(15)) << 8;
break;
}
case Hexagon::A2_vmaxb:
case Hexagon::A2_vmaxh:
case Hexagon::A2_vmaxub:
case Hexagon::A2_vmaxuh:
case Hexagon::A2_vmaxuw:
case Hexagon::A2_vmaxw:
case Hexagon::A2_vminb:
case Hexagon::A2_vminh:
case Hexagon::A2_vminub:
case Hexagon::A2_vminuh:
case Hexagon::A2_vminuw:
case Hexagon::A2_vminw:
case Hexagon::A2_vnavgh:
case Hexagon::A2_vnavghcr:
case Hexagon::A2_vnavghr:
case Hexagon::A2_vnavgw:
case Hexagon::A2_vnavgwcr:
case Hexagon::A2_vnavgwr:
case Hexagon::A2_vsubh:
case Hexagon::A2_vsubhs:
case Hexagon::A2_vsubub:
case Hexagon::A2_vsububs:
case Hexagon::A2_vsubuhs:
case Hexagon::A2_vsubw:
case Hexagon::A2_vsubws: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::S2_valignrb: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
break;
}
case Hexagon::S2_valignib: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 5;
break;
}
case Hexagon::M2_vabsdiffh:
case Hexagon::M2_vabsdiffw: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::A2_vraddub_acc:
case Hexagon::A2_vrsadub_acc:
case Hexagon::M2_vrcmaci_s0:
case Hexagon::M2_vrcmaci_s0c:
case Hexagon::M2_vrcmacr_s0:
case Hexagon::M2_vrcmacr_s0c:
case Hexagon::M2_vrmac_s0:
case Hexagon::M5_vrmacbsu:
case Hexagon::M5_vrmacbuu: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::A4_addp_c:
case Hexagon::A4_subp_c: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
break;
}
case Hexagon::A2_combineii: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: s8
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
// op: S8
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(254)) << 15;
Value |= (op & UINT64_C(1)) << 13;
break;
}
case Hexagon::A4_combineii: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: s8
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
// op: U6
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(62)) << 15;
Value |= (op & UINT64_C(1)) << 13;
break;
}
case Hexagon::V4_SA1_combinerz:
case Hexagon::V4_SA1_combinezr: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(7);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
break;
}
case Hexagon::V4_SA1_combine0i:
case Hexagon::V4_SA1_combine1i:
case Hexagon::V4_SA1_combine2i:
case Hexagon::V4_SA1_combine3i: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(7);
// op: u2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
break;
}
case Hexagon::V4_SL2_loadrd_sp: {
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(7);
// op: u5_3
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(248);
break;
}
case Hexagon::J4_cmpeq_fp0_jump_nt:
case Hexagon::J4_cmpeq_fp0_jump_t:
case Hexagon::J4_cmpeq_fp1_jump_nt:
case Hexagon::J4_cmpeq_fp1_jump_t:
case Hexagon::J4_cmpeq_tp0_jump_nt:
case Hexagon::J4_cmpeq_tp0_jump_t:
case Hexagon::J4_cmpeq_tp1_jump_nt:
case Hexagon::J4_cmpeq_tp1_jump_t:
case Hexagon::J4_cmpgt_fp0_jump_nt:
case Hexagon::J4_cmpgt_fp0_jump_t:
case Hexagon::J4_cmpgt_fp1_jump_nt:
case Hexagon::J4_cmpgt_fp1_jump_t:
case Hexagon::J4_cmpgt_tp0_jump_nt:
case Hexagon::J4_cmpgt_tp0_jump_t:
case Hexagon::J4_cmpgt_tp1_jump_nt:
case Hexagon::J4_cmpgt_tp1_jump_t:
case Hexagon::J4_cmpgtu_fp0_jump_nt:
case Hexagon::J4_cmpgtu_fp0_jump_t:
case Hexagon::J4_cmpgtu_fp1_jump_nt:
case Hexagon::J4_cmpgtu_fp1_jump_t:
case Hexagon::J4_cmpgtu_tp0_jump_nt:
case Hexagon::J4_cmpgtu_tp0_jump_t:
case Hexagon::J4_cmpgtu_tp1_jump_nt:
case Hexagon::J4_cmpgtu_tp1_jump_t: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(15)) << 8;
// op: r9_2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 11;
Value |= (op & UINT64_C(508)) >> 1;
break;
}
case Hexagon::J4_cmpeqi_fp0_jump_nt:
case Hexagon::J4_cmpeqi_fp0_jump_t:
case Hexagon::J4_cmpeqi_fp1_jump_nt:
case Hexagon::J4_cmpeqi_fp1_jump_t:
case Hexagon::J4_cmpeqi_tp0_jump_nt:
case Hexagon::J4_cmpeqi_tp0_jump_t:
case Hexagon::J4_cmpeqi_tp1_jump_nt:
case Hexagon::J4_cmpeqi_tp1_jump_t:
case Hexagon::J4_cmpgti_fp0_jump_nt:
case Hexagon::J4_cmpgti_fp0_jump_t:
case Hexagon::J4_cmpgti_fp1_jump_nt:
case Hexagon::J4_cmpgti_fp1_jump_t:
case Hexagon::J4_cmpgti_tp0_jump_nt:
case Hexagon::J4_cmpgti_tp0_jump_t:
case Hexagon::J4_cmpgti_tp1_jump_nt:
case Hexagon::J4_cmpgti_tp1_jump_t:
case Hexagon::J4_cmpgtui_fp0_jump_nt:
case Hexagon::J4_cmpgtui_fp0_jump_t:
case Hexagon::J4_cmpgtui_fp1_jump_nt:
case Hexagon::J4_cmpgtui_fp1_jump_t:
case Hexagon::J4_cmpgtui_tp0_jump_nt:
case Hexagon::J4_cmpgtui_tp0_jump_t:
case Hexagon::J4_cmpgtui_tp1_jump_nt:
case Hexagon::J4_cmpgtui_tp1_jump_t: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 16;
// op: U5
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: r9_2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 11;
Value |= (op & UINT64_C(508)) >> 1;
break;
}
case Hexagon::J4_cmpeqn1_fp0_jump_nt:
case Hexagon::J4_cmpeqn1_fp0_jump_t:
case Hexagon::J4_cmpeqn1_fp1_jump_nt:
case Hexagon::J4_cmpeqn1_fp1_jump_t:
case Hexagon::J4_cmpeqn1_tp0_jump_nt:
case Hexagon::J4_cmpeqn1_tp0_jump_t:
case Hexagon::J4_cmpeqn1_tp1_jump_nt:
case Hexagon::J4_cmpeqn1_tp1_jump_t:
case Hexagon::J4_cmpgtn1_fp0_jump_nt:
case Hexagon::J4_cmpgtn1_fp0_jump_t:
case Hexagon::J4_cmpgtn1_fp1_jump_nt:
case Hexagon::J4_cmpgtn1_fp1_jump_t:
case Hexagon::J4_cmpgtn1_tp0_jump_nt:
case Hexagon::J4_cmpgtn1_tp0_jump_t:
case Hexagon::J4_cmpgtn1_tp1_jump_nt:
case Hexagon::J4_cmpgtn1_tp1_jump_t:
case Hexagon::J4_tstbit0_fp0_jump_nt:
case Hexagon::J4_tstbit0_fp0_jump_t:
case Hexagon::J4_tstbit0_fp1_jump_nt:
case Hexagon::J4_tstbit0_fp1_jump_t:
case Hexagon::J4_tstbit0_tp0_jump_nt:
case Hexagon::J4_tstbit0_tp0_jump_t:
case Hexagon::J4_tstbit0_tp1_jump_nt:
case Hexagon::J4_tstbit0_tp1_jump_t: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 16;
// op: r9_2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 11;
Value |= (op & UINT64_C(508)) >> 1;
break;
}
case Hexagon::V4_SA1_cmpeqi: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
// op: u2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(3);
break;
}
case Hexagon::V4_SS2_storeh_io: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
// op: u3_1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(14)) << 7;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(15);
break;
}
case Hexagon::V4_SS1_storeb_io: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
// op: u4_0
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(15)) << 8;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(15);
break;
}
case Hexagon::V4_SS2_storebi0:
case Hexagon::V4_SS2_storebi1: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
// op: u4_0
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(15);
break;
}
case Hexagon::V4_SS1_storew_io: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
// op: u4_2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(60)) << 6;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(15);
break;
}
case Hexagon::V4_SS2_storewi0:
case Hexagon::V4_SS2_storewi1: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
// op: u4_2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(60)) >> 2;
break;
}
case Hexagon::CALLRv3nr:
case Hexagon::J2_callr:
case Hexagon::J4_hintjumpr:
case Hexagon::Y2_dccleana:
case Hexagon::Y2_dccleaninva:
case Hexagon::Y2_dcinva:
case Hexagon::Y2_dczeroa:
case Hexagon::Y2_icinva:
case Hexagon::Y4_trace: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::Y4_l2fetch:
case Hexagon::Y5_l2fetch: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S4_storerbnew_rr:
case Hexagon::S4_storerhnew_rr:
case Hexagon::S4_storerinew_rr: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Ru
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: u2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 7;
// op: Nt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::S4_storerb_rr:
case Hexagon::S4_storerd_rr:
case Hexagon::S4_storerf_rr:
case Hexagon::S4_storerh_rr:
case Hexagon::S4_storeri_rr: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Ru
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: u2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 7;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::S4_storeirh_io: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: S8
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(128)) << 6;
Value |= op & UINT64_C(127);
// op: offset
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(126)) << 6;
break;
}
case Hexagon::S4_storeiri_io: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: S8
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(128)) << 6;
Value |= op & UINT64_C(127);
// op: offset
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(252)) << 5;
break;
}
case Hexagon::S4_storeirb_io: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: S8
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(128)) << 6;
Value |= op & UINT64_C(127);
// op: offset
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(63)) << 7;
break;
}
case Hexagon::J2_jumprgtez:
case Hexagon::J2_jumprgtezpt:
case Hexagon::J2_jumprltez:
case Hexagon::J2_jumprltezpt:
case Hexagon::J2_jumprnz:
case Hexagon::J2_jumprnzpt:
case Hexagon::J2_jumprz:
case Hexagon::J2_jumprzpt: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: r13_2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(16384)) << 7;
Value |= op & UINT64_C(8192);
Value |= (op & UINT64_C(8188)) >> 1;
break;
}
case Hexagon::Y2_dcfetchbo: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u11_3
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(16376)) >> 3;
break;
}
case Hexagon::J2_callrf:
case Hexagon::J2_callrt: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
break;
}
case Hexagon::S2_cl0:
case Hexagon::S2_cl0p:
case Hexagon::S2_cl1:
case Hexagon::S2_cl1p:
case Hexagon::S2_clb:
case Hexagon::S2_clbnorm:
case Hexagon::S2_clbp:
case Hexagon::S2_ct0:
case Hexagon::S2_ct0p:
case Hexagon::S2_ct1:
case Hexagon::S2_ct1p:
case Hexagon::S4_clbpnorm: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::S4_clbaddi:
case Hexagon::S4_clbpaddi: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: s6
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(63)) << 8;
break;
}
case Hexagon::C2_cmpeq:
case Hexagon::C2_cmpgt:
case Hexagon::C2_cmpgtu:
case Hexagon::C4_cmplte:
case Hexagon::C4_cmplteu:
case Hexagon::C4_cmpneq: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Pd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
break;
}
case Hexagon::A2_add:
case Hexagon::A2_addp:
case Hexagon::A2_addpsat:
case Hexagon::A2_addsat:
case Hexagon::A2_addsph:
case Hexagon::A2_addspl:
case Hexagon::A2_and:
case Hexagon::A2_andp:
case Hexagon::A2_combinew:
case Hexagon::A2_or:
case Hexagon::A2_orp:
case Hexagon::A2_svaddh:
case Hexagon::A2_svaddhs:
case Hexagon::A2_svadduhs:
case Hexagon::A2_svavgh:
case Hexagon::A2_svavghs:
case Hexagon::A2_xor:
case Hexagon::A2_xorp:
case Hexagon::A4_rcmpeq:
case Hexagon::A4_rcmpneq:
case Hexagon::S2_packhl: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::A2_combine_hh:
case Hexagon::A2_combine_hl:
case Hexagon::A2_combine_lh:
case Hexagon::A2_combine_ll:
case Hexagon::A2_sub:
case Hexagon::A2_subp:
case Hexagon::A2_subsat:
case Hexagon::A2_svnavgh:
case Hexagon::A2_svsubh:
case Hexagon::A2_svsubhs:
case Hexagon::A2_svsubuhs:
case Hexagon::A4_andn:
case Hexagon::A4_andnp:
case Hexagon::A4_orn:
case Hexagon::A4_ornp: {
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::A2_absp:
case Hexagon::A2_negp:
case Hexagon::A2_notp:
case Hexagon::A2_vabsh:
case Hexagon::A2_vabshsat:
case Hexagon::A2_vabsw:
case Hexagon::A2_vabswsat:
case Hexagon::A2_vconj:
case Hexagon::S2_brevp:
case Hexagon::S2_deinterleave:
case Hexagon::S2_interleave:
case Hexagon::S2_vsathb_nopack:
case Hexagon::S2_vsathub_nopack:
case Hexagon::S2_vsatwh_nopack:
case Hexagon::S2_vsatwuh_nopack: {
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rdd
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::S4_or_andix: {
// op: Rx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Ru
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(31);
// op: s10
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(512)) << 12;
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::A2_tfrih:
case Hexagon::A2_tfril: {
// op: Rx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u16
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(49152)) << 8;
Value |= op & UINT64_C(16383);
break;
}
case Hexagon::M4_mpyrr_addr: {
// op: Rx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Ru
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::V4_SA1_addrx: {
// op: Rx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(15)) << 4;
break;
}
case Hexagon::V4_SA1_addi: {
// op: Rx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(15);
// op: s7
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(127)) << 4;
break;
}
case Hexagon::F2_sffma:
case Hexagon::F2_sffma_lib:
case Hexagon::F2_sffms:
case Hexagon::F2_sffms_lib:
case Hexagon::M2_mpy_acc_hh_s0:
case Hexagon::M2_mpy_acc_hh_s1:
case Hexagon::M2_mpy_acc_hl_s0:
case Hexagon::M2_mpy_acc_hl_s1:
case Hexagon::M2_mpy_acc_lh_s0:
case Hexagon::M2_mpy_acc_lh_s1:
case Hexagon::M2_mpy_acc_ll_s0:
case Hexagon::M2_mpy_acc_ll_s1:
case Hexagon::M2_mpy_acc_sat_hh_s0:
case Hexagon::M2_mpy_acc_sat_hh_s1:
case Hexagon::M2_mpy_acc_sat_hl_s0:
case Hexagon::M2_mpy_acc_sat_hl_s1:
case Hexagon::M2_mpy_acc_sat_lh_s0:
case Hexagon::M2_mpy_acc_sat_lh_s1:
case Hexagon::M2_mpy_acc_sat_ll_s0:
case Hexagon::M2_mpy_acc_sat_ll_s1:
case Hexagon::M2_mpy_nac_hh_s0:
case Hexagon::M2_mpy_nac_hh_s1:
case Hexagon::M2_mpy_nac_hl_s0:
case Hexagon::M2_mpy_nac_hl_s1:
case Hexagon::M2_mpy_nac_lh_s0:
case Hexagon::M2_mpy_nac_lh_s1:
case Hexagon::M2_mpy_nac_ll_s0:
case Hexagon::M2_mpy_nac_ll_s1:
case Hexagon::M2_mpy_nac_sat_hh_s0:
case Hexagon::M2_mpy_nac_sat_hh_s1:
case Hexagon::M2_mpy_nac_sat_hl_s0:
case Hexagon::M2_mpy_nac_sat_hl_s1:
case Hexagon::M2_mpy_nac_sat_lh_s0:
case Hexagon::M2_mpy_nac_sat_lh_s1:
case Hexagon::M2_mpy_nac_sat_ll_s0:
case Hexagon::M2_mpy_nac_sat_ll_s1:
case Hexagon::M2_mpyu_acc_hh_s0:
case Hexagon::M2_mpyu_acc_hh_s1:
case Hexagon::M2_mpyu_acc_hl_s0:
case Hexagon::M2_mpyu_acc_hl_s1:
case Hexagon::M2_mpyu_acc_lh_s0:
case Hexagon::M2_mpyu_acc_lh_s1:
case Hexagon::M2_mpyu_acc_ll_s0:
case Hexagon::M2_mpyu_acc_ll_s1:
case Hexagon::M2_mpyu_nac_hh_s0:
case Hexagon::M2_mpyu_nac_hh_s1:
case Hexagon::M2_mpyu_nac_hl_s0:
case Hexagon::M2_mpyu_nac_hl_s1:
case Hexagon::M2_mpyu_nac_lh_s0:
case Hexagon::M2_mpyu_nac_lh_s1:
case Hexagon::M2_mpyu_nac_ll_s0:
case Hexagon::M2_mpyu_nac_ll_s1:
case Hexagon::S2_asl_r_r_acc:
case Hexagon::S2_asl_r_r_and:
case Hexagon::S2_asl_r_r_nac:
case Hexagon::S2_asl_r_r_or:
case Hexagon::S2_asr_r_r_acc:
case Hexagon::S2_asr_r_r_and:
case Hexagon::S2_asr_r_r_nac:
case Hexagon::S2_asr_r_r_or:
case Hexagon::S2_lsl_r_r_acc:
case Hexagon::S2_lsl_r_r_and:
case Hexagon::S2_lsl_r_r_nac:
case Hexagon::S2_lsl_r_r_or:
case Hexagon::S2_lsr_r_r_acc:
case Hexagon::S2_lsr_r_r_and:
case Hexagon::S2_lsr_r_r_nac:
case Hexagon::S2_lsr_r_r_or: {
// op: Rx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::F2_sffma_sc: {
// op: Rx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Pu
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
break;
}
case Hexagon::S4_or_andi:
case Hexagon::S4_or_ori: {
// op: Rx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: s10
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(512)) << 12;
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::S2_tableidxb:
case Hexagon::S2_tableidxd:
case Hexagon::S2_tableidxh:
case Hexagon::S2_tableidxw: {
// op: Rx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(8)) << 18;
Value |= (op & UINT64_C(7)) << 5;
// op: S6
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(63)) << 8;
break;
}
case Hexagon::S2_asl_i_r_acc:
case Hexagon::S2_asl_i_r_and:
case Hexagon::S2_asl_i_r_nac:
case Hexagon::S2_asl_i_r_or:
case Hexagon::S2_asl_i_r_xacc:
case Hexagon::S2_asr_i_r_acc:
case Hexagon::S2_asr_i_r_and:
case Hexagon::S2_asr_i_r_nac:
case Hexagon::S2_asr_i_r_or:
case Hexagon::S2_lsr_i_r_acc:
case Hexagon::S2_lsr_i_r_and:
case Hexagon::S2_lsr_i_r_nac:
case Hexagon::S2_lsr_i_r_or:
case Hexagon::S2_lsr_i_r_xacc: {
// op: Rx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u5
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::A4_vrmaxh:
case Hexagon::A4_vrmaxuh:
case Hexagon::A4_vrmaxuw:
case Hexagon::A4_vrmaxw:
case Hexagon::A4_vrminh:
case Hexagon::A4_vrminuh:
case Hexagon::A4_vrminuw:
case Hexagon::A4_vrminw: {
// op: Rxx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Ru
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::M2_cmaci_s0:
case Hexagon::M2_cmacr_s0:
case Hexagon::M2_cmacs_s0:
case Hexagon::M2_cmacs_s1:
case Hexagon::M2_cmacsc_s0:
case Hexagon::M2_cmacsc_s1:
case Hexagon::M2_cnacs_s0:
case Hexagon::M2_cnacs_s1:
case Hexagon::M2_cnacsc_s0:
case Hexagon::M2_cnacsc_s1:
case Hexagon::M2_dpmpyss_acc_s0:
case Hexagon::M2_dpmpyss_nac_s0:
case Hexagon::M2_dpmpyuu_acc_s0:
case Hexagon::M2_dpmpyuu_nac_s0:
case Hexagon::M2_mpyd_acc_hh_s0:
case Hexagon::M2_mpyd_acc_hh_s1:
case Hexagon::M2_mpyd_acc_hl_s0:
case Hexagon::M2_mpyd_acc_hl_s1:
case Hexagon::M2_mpyd_acc_lh_s0:
case Hexagon::M2_mpyd_acc_lh_s1:
case Hexagon::M2_mpyd_acc_ll_s0:
case Hexagon::M2_mpyd_acc_ll_s1:
case Hexagon::M2_mpyd_nac_hh_s0:
case Hexagon::M2_mpyd_nac_hh_s1:
case Hexagon::M2_mpyd_nac_hl_s0:
case Hexagon::M2_mpyd_nac_hl_s1:
case Hexagon::M2_mpyd_nac_lh_s0:
case Hexagon::M2_mpyd_nac_lh_s1:
case Hexagon::M2_mpyd_nac_ll_s0:
case Hexagon::M2_mpyd_nac_ll_s1:
case Hexagon::M2_mpyud_acc_hh_s0:
case Hexagon::M2_mpyud_acc_hh_s1:
case Hexagon::M2_mpyud_acc_hl_s0:
case Hexagon::M2_mpyud_acc_hl_s1:
case Hexagon::M2_mpyud_acc_lh_s0:
case Hexagon::M2_mpyud_acc_lh_s1:
case Hexagon::M2_mpyud_acc_ll_s0:
case Hexagon::M2_mpyud_acc_ll_s1:
case Hexagon::M2_mpyud_nac_hh_s0:
case Hexagon::M2_mpyud_nac_hh_s1:
case Hexagon::M2_mpyud_nac_hl_s0:
case Hexagon::M2_mpyud_nac_hl_s1:
case Hexagon::M2_mpyud_nac_lh_s0:
case Hexagon::M2_mpyud_nac_lh_s1:
case Hexagon::M2_mpyud_nac_ll_s0:
case Hexagon::M2_mpyud_nac_ll_s1:
case Hexagon::M2_vmac2:
case Hexagon::M2_vmac2s_s0:
case Hexagon::M2_vmac2s_s1:
case Hexagon::M2_vmac2su_s0:
case Hexagon::M2_vmac2su_s1:
case Hexagon::M4_pmpyw_acc:
case Hexagon::M4_vpmpyh_acc:
case Hexagon::M5_vmacbsu:
case Hexagon::M5_vmacbuu: {
// op: Rxx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_asl_r_p_acc:
case Hexagon::S2_asl_r_p_and:
case Hexagon::S2_asl_r_p_nac:
case Hexagon::S2_asl_r_p_or:
case Hexagon::S2_asl_r_p_xor:
case Hexagon::S2_asr_r_p_acc:
case Hexagon::S2_asr_r_p_and:
case Hexagon::S2_asr_r_p_nac:
case Hexagon::S2_asr_r_p_or:
case Hexagon::S2_asr_r_p_xor:
case Hexagon::S2_lsl_r_p_acc:
case Hexagon::S2_lsl_r_p_and:
case Hexagon::S2_lsl_r_p_nac:
case Hexagon::S2_lsl_r_p_or:
case Hexagon::S2_lsl_r_p_xor:
case Hexagon::S2_lsr_r_p_acc:
case Hexagon::S2_lsr_r_p_and:
case Hexagon::S2_lsr_r_p_nac:
case Hexagon::S2_lsr_r_p_or:
case Hexagon::S2_lsr_r_p_xor:
case Hexagon::S2_vrcnegh: {
// op: Rxx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S4_vrcrotate_acc: {
// op: Rxx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: u2
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 5;
break;
}
case Hexagon::M2_mmachs_rs0:
case Hexagon::M2_mmachs_rs1:
case Hexagon::M2_mmachs_s0:
case Hexagon::M2_mmachs_s1:
case Hexagon::M2_mmacls_rs0:
case Hexagon::M2_mmacls_rs1:
case Hexagon::M2_mmacls_s0:
case Hexagon::M2_mmacls_s1:
case Hexagon::M2_mmacuhs_rs0:
case Hexagon::M2_mmacuhs_rs1:
case Hexagon::M2_mmacuhs_s0:
case Hexagon::M2_mmacuhs_s1:
case Hexagon::M2_mmaculs_rs0:
case Hexagon::M2_mmaculs_rs1:
case Hexagon::M2_mmaculs_s0:
case Hexagon::M2_mmaculs_s1:
case Hexagon::M2_vcmac_s0_sat_i:
case Hexagon::M2_vcmac_s0_sat_r:
case Hexagon::M2_vdmacs_s0:
case Hexagon::M2_vdmacs_s1:
case Hexagon::M2_vmac2es:
case Hexagon::M2_vmac2es_s0:
case Hexagon::M2_vmac2es_s1:
case Hexagon::M2_vrcmpys_acc_s1_h:
case Hexagon::M2_vrcmpys_acc_s1_l:
case Hexagon::M4_vrmpyeh_acc_s0:
case Hexagon::M4_vrmpyeh_acc_s1:
case Hexagon::M4_vrmpyoh_acc_s0:
case Hexagon::M4_vrmpyoh_acc_s1:
case Hexagon::M4_xor_xacc:
case Hexagon::M5_vdmacbsu: {
// op: Rxx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_asl_i_p_acc:
case Hexagon::S2_asl_i_p_and:
case Hexagon::S2_asl_i_p_nac:
case Hexagon::S2_asl_i_p_or:
case Hexagon::S2_asl_i_p_xacc:
case Hexagon::S2_asr_i_p_acc:
case Hexagon::S2_asr_i_p_and:
case Hexagon::S2_asr_i_p_nac:
case Hexagon::S2_asr_i_p_or:
case Hexagon::S2_lsr_i_p_acc:
case Hexagon::S2_lsr_i_p_and:
case Hexagon::S2_lsr_i_p_nac:
case Hexagon::S2_lsr_i_p_or:
case Hexagon::S2_lsr_i_p_xacc: {
// op: Rxx
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rss
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u6
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(63)) << 8;
break;
}
case Hexagon::S2_storerbnew_pbr:
case Hexagon::S2_storerbnew_pcr:
case Hexagon::S2_storerhnew_pbr:
case Hexagon::S2_storerhnew_pcr:
case Hexagon::S2_storerinew_pbr:
case Hexagon::S2_storerinew_pcr: {
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: Nt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S2_storerb_pcr:
case Hexagon::S2_storerd_pcr:
case Hexagon::S2_storerf_pcr:
case Hexagon::S2_storerh_pcr:
case Hexagon::S2_storeri_pcr: {
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerb_pbr:
case Hexagon::S2_storerd_pbr:
case Hexagon::S2_storerf_pbr:
case Hexagon::S2_storerh_pbr:
case Hexagon::S2_storeri_pbr: {
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: src
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerbnew_pci: {
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(15)) << 3;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: Nt
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S2_storerb_pci: {
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(15)) << 3;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerhnew_pci: {
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(30)) << 2;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: Nt
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S2_storerf_pci:
case Hexagon::S2_storerh_pci: {
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(30)) << 2;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerinew_pci: {
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(60)) << 1;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: Nt
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S2_storeri_pci: {
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(60)) << 1;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerd_pci: {
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(120);
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storeriabs:
case Hexagon::S2_storerigp: {
// op: addr
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(196608)) << 9;
Value |= (op & UINT64_C(63488)) << 5;
Value |= (op & UINT64_C(1024)) << 3;
Value |= (op & UINT64_C(1020)) >> 2;
// op: src
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerinewabs:
case Hexagon::S2_storerinewgp: {
// op: addr
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(196608)) << 9;
Value |= (op & UINT64_C(63488)) << 5;
Value |= (op & UINT64_C(1024)) << 3;
Value |= (op & UINT64_C(1020)) >> 2;
// op: src
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S2_storerdabs:
case Hexagon::S2_storerdgp: {
// op: addr
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(393216)) << 8;
Value |= (op & UINT64_C(126976)) << 4;
Value |= (op & UINT64_C(2048)) << 2;
Value |= (op & UINT64_C(2040)) >> 3;
// op: src
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerbabs:
case Hexagon::S2_storerbgp: {
// op: addr
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(49152)) << 11;
Value |= (op & UINT64_C(15872)) << 7;
Value |= (op & UINT64_C(256)) << 5;
Value |= op & UINT64_C(255);
// op: src
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerbnewabs:
case Hexagon::S2_storerbnewgp: {
// op: addr
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(49152)) << 11;
Value |= (op & UINT64_C(15872)) << 7;
Value |= (op & UINT64_C(256)) << 5;
Value |= op & UINT64_C(255);
// op: src
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S2_storerfabs:
case Hexagon::S2_storerfgp:
case Hexagon::S2_storerhabs:
case Hexagon::S2_storerhgp: {
// op: addr
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(98304)) << 10;
Value |= (op & UINT64_C(31744)) << 6;
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(510)) >> 1;
// op: src
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerhnewabs:
case Hexagon::S2_storerhnewgp: {
// op: addr
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(98304)) << 10;
Value |= (op & UINT64_C(31744)) << 6;
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(510)) >> 1;
// op: src
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::L4_add_memoph_io:
case Hexagon::L4_and_memoph_io:
case Hexagon::L4_iadd_memoph_io:
case Hexagon::L4_iand_memoph_io:
case Hexagon::L4_ior_memoph_io:
case Hexagon::L4_isub_memoph_io:
case Hexagon::L4_or_memoph_io:
case Hexagon::L4_sub_memoph_io: {
// op: base
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: delta
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(31);
// op: offset
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(126)) << 6;
break;
}
case Hexagon::L4_add_memopw_io:
case Hexagon::L4_and_memopw_io:
case Hexagon::L4_iadd_memopw_io:
case Hexagon::L4_iand_memopw_io:
case Hexagon::L4_ior_memopw_io:
case Hexagon::L4_isub_memopw_io:
case Hexagon::L4_or_memopw_io:
case Hexagon::L4_sub_memopw_io: {
// op: base
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: delta
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(31);
// op: offset
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(252)) << 5;
break;
}
case Hexagon::L4_add_memopb_io:
case Hexagon::L4_and_memopb_io:
case Hexagon::L4_iadd_memopb_io:
case Hexagon::L4_iand_memopb_io:
case Hexagon::L4_ior_memopb_io:
case Hexagon::L4_isub_memopb_io:
case Hexagon::L4_or_memopb_io:
case Hexagon::L4_sub_memopb_io: {
// op: base
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: delta
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(31);
// op: offset
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(63)) << 7;
break;
}
case Hexagon::CALLv3nr:
case Hexagon::J2_call:
case Hexagon::J2_jump:
case Hexagon::J2_jump_ext:
case Hexagon::J2_jump_noext:
case Hexagon::RESTORE_DEALLOC_BEFORE_TAILCALL_V4:
case Hexagon::RESTORE_DEALLOC_BEFORE_TAILCALL_V4_EXT:
case Hexagon::RESTORE_DEALLOC_RET_JMP_V4:
case Hexagon::RESTORE_DEALLOC_RET_JMP_V4_EXT:
case Hexagon::SAVE_REGISTERS_CALL_V4:
case Hexagon::SAVE_REGISTERS_CALL_V4_EXT: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(16744448)) << 1;
Value |= (op & UINT64_C(32764)) >> 1;
break;
}
case Hexagon::EH_RETURN_JMPR:
case Hexagon::J2_jumpr:
case Hexagon::JMPret: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::S4_storerb_ap:
case Hexagon::S4_storerd_ap:
case Hexagon::S4_storerf_ap:
case Hexagon::S4_storerh_ap:
case Hexagon::S4_storeri_ap: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: addr
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(63);
// op: src
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S4_storerbnew_ap:
case Hexagon::S4_storerhnew_ap:
case Hexagon::S4_storerinew_ap: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: addr
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(63);
// op: src
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::HI:
case Hexagon::LO_H: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: imm_value
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3221225472)) >> 8;
Value |= (op & UINT64_C(1073676288)) >> 16;
break;
}
case Hexagon::HI_L:
case Hexagon::LO: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: imm_value
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(49152)) << 8;
Value |= op & UINT64_C(16383);
break;
}
case Hexagon::M4_mpyri_addr_u2: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(192)) << 15;
Value |= (op & UINT64_C(32)) << 8;
Value |= (op & UINT64_C(28)) << 3;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::M4_mpyri_addr: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(48)) << 17;
Value |= (op & UINT64_C(8)) << 10;
Value |= (op & UINT64_C(7)) << 5;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::V6_pred_not:
case Hexagon::V6_pred_not_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
break;
}
case Hexagon::V6_pred_and:
case Hexagon::V6_pred_and_128B:
case Hexagon::V6_pred_and_n:
case Hexagon::V6_pred_and_n_128B:
case Hexagon::V6_pred_or:
case Hexagon::V6_pred_or_128B:
case Hexagon::V6_pred_or_n:
case Hexagon::V6_pred_or_n_128B:
case Hexagon::V6_pred_xor:
case Hexagon::V6_pred_xor_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3)) << 22;
break;
}
case Hexagon::V6_pred_scalar2:
case Hexagon::V6_pred_scalar2_128B:
case Hexagon::Y5_l2locka: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::F2_dfcmpeq:
case Hexagon::F2_dfcmpge:
case Hexagon::F2_dfcmpgt:
case Hexagon::F2_dfcmpuo:
case Hexagon::F2_sfcmpeq:
case Hexagon::F2_sfcmpge:
case Hexagon::F2_sfcmpgt:
case Hexagon::F2_sfcmpuo: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::C2_cmpgtui:
case Hexagon::C4_cmplteui: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::C2_cmpeqi:
case Hexagon::C2_cmpgti:
case Hexagon::C4_cmpltei:
case Hexagon::C4_cmpneqi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(512)) << 12;
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::V6_vandvrt:
case Hexagon::V6_vandvrt_128B:
case Hexagon::V6_veqb:
case Hexagon::V6_veqb_128B:
case Hexagon::V6_veqh:
case Hexagon::V6_veqh_128B:
case Hexagon::V6_veqw:
case Hexagon::V6_veqw_128B:
case Hexagon::V6_vgtb:
case Hexagon::V6_vgtb_128B:
case Hexagon::V6_vgth:
case Hexagon::V6_vgth_128B:
case Hexagon::V6_vgtub:
case Hexagon::V6_vgtub_128B:
case Hexagon::V6_vgtuh:
case Hexagon::V6_vgtuh_128B:
case Hexagon::V6_vgtuw:
case Hexagon::V6_vgtuw_128B:
case Hexagon::V6_vgtw:
case Hexagon::V6_vgtw_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::V6_vandvrt_acc:
case Hexagon::V6_vandvrt_acc_128B:
case Hexagon::V6_veqb_and:
case Hexagon::V6_veqb_and_128B:
case Hexagon::V6_veqb_or:
case Hexagon::V6_veqb_or_128B:
case Hexagon::V6_veqb_xor:
case Hexagon::V6_veqb_xor_128B:
case Hexagon::V6_veqh_and:
case Hexagon::V6_veqh_and_128B:
case Hexagon::V6_veqh_or:
case Hexagon::V6_veqh_or_128B:
case Hexagon::V6_veqh_xor:
case Hexagon::V6_veqh_xor_128B:
case Hexagon::V6_veqw_and:
case Hexagon::V6_veqw_and_128B:
case Hexagon::V6_veqw_or:
case Hexagon::V6_veqw_or_128B:
case Hexagon::V6_veqw_xor:
case Hexagon::V6_veqw_xor_128B:
case Hexagon::V6_vgtb_and:
case Hexagon::V6_vgtb_and_128B:
case Hexagon::V6_vgtb_or:
case Hexagon::V6_vgtb_or_128B:
case Hexagon::V6_vgtb_xor:
case Hexagon::V6_vgtb_xor_128B:
case Hexagon::V6_vgth_and:
case Hexagon::V6_vgth_and_128B:
case Hexagon::V6_vgth_or:
case Hexagon::V6_vgth_or_128B:
case Hexagon::V6_vgth_xor:
case Hexagon::V6_vgth_xor_128B:
case Hexagon::V6_vgtub_and:
case Hexagon::V6_vgtub_and_128B:
case Hexagon::V6_vgtub_or:
case Hexagon::V6_vgtub_or_128B:
case Hexagon::V6_vgtub_xor:
case Hexagon::V6_vgtub_xor_128B:
case Hexagon::V6_vgtuh_and:
case Hexagon::V6_vgtuh_and_128B:
case Hexagon::V6_vgtuh_or:
case Hexagon::V6_vgtuh_or_128B:
case Hexagon::V6_vgtuh_xor:
case Hexagon::V6_vgtuh_xor_128B:
case Hexagon::V6_vgtuw_and:
case Hexagon::V6_vgtuw_and_128B:
case Hexagon::V6_vgtuw_or:
case Hexagon::V6_vgtuw_or_128B:
case Hexagon::V6_vgtuw_xor:
case Hexagon::V6_vgtuw_xor_128B:
case Hexagon::V6_vgtw_and:
case Hexagon::V6_vgtw_and_128B:
case Hexagon::V6_vgtw_or:
case Hexagon::V6_vgtw_or_128B:
case Hexagon::V6_vgtw_xor:
case Hexagon::V6_vgtw_xor_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::L2_loadalignb_pbr:
case Hexagon::L2_loadalignh_pbr:
case Hexagon::L2_loadbsw2_pbr:
case Hexagon::L2_loadbsw2_pcr:
case Hexagon::L2_loadbsw4_pbr:
case Hexagon::L2_loadbsw4_pcr:
case Hexagon::L2_loadbzw2_pbr:
case Hexagon::L2_loadbzw2_pcr:
case Hexagon::L2_loadbzw4_pbr:
case Hexagon::L2_loadbzw4_pcr:
case Hexagon::L2_loadrb_pbr:
case Hexagon::L2_loadrb_pcr:
case Hexagon::L2_loadrd_pbr:
case Hexagon::L2_loadrd_pcr:
case Hexagon::L2_loadrh_pbr:
case Hexagon::L2_loadrh_pcr:
case Hexagon::L2_loadri_pbr:
case Hexagon::L2_loadri_pcr:
case Hexagon::L2_loadrub_pbr:
case Hexagon::L2_loadrub_pcr:
case Hexagon::L2_loadruh_pbr:
case Hexagon::L2_loadruh_pcr: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
break;
}
case Hexagon::L2_loadrd_pci: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(120)) << 2;
break;
}
case Hexagon::L2_loadalignb_pci:
case Hexagon::L2_loadrb_pci:
case Hexagon::L2_loadrub_pci: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(15)) << 5;
break;
}
case Hexagon::L2_loadalignh_pci:
case Hexagon::L2_loadbsw2_pci:
case Hexagon::L2_loadbzw2_pci:
case Hexagon::L2_loadrh_pci:
case Hexagon::L2_loadruh_pci: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(30)) << 4;
break;
}
case Hexagon::L2_loadbsw4_pci:
case Hexagon::L2_loadbzw4_pci:
case Hexagon::L2_loadri_pci: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(60)) << 3;
break;
}
case Hexagon::L2_loadalignb_pcr:
case Hexagon::L2_loadalignh_pcr: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: Rz
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: Mu
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
break;
}
case Hexagon::L2_loadrigp:
case Hexagon::L4_loadri_abs: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: addr
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(196608)) << 9;
Value |= (op & UINT64_C(63488)) << 5;
Value |= (op & UINT64_C(2044)) << 3;
break;
}
case Hexagon::L2_loadrdgp:
case Hexagon::L4_loadrd_abs: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: addr
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(393216)) << 8;
Value |= (op & UINT64_C(126976)) << 4;
Value |= (op & UINT64_C(4088)) << 2;
break;
}
case Hexagon::L2_loadrbgp:
case Hexagon::L2_loadrubgp:
case Hexagon::L4_loadrb_abs:
case Hexagon::L4_loadrub_abs: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: addr
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(49152)) << 11;
Value |= (op & UINT64_C(15872)) << 7;
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::L2_loadrhgp:
case Hexagon::L2_loadruhgp:
case Hexagon::L4_loadrh_abs:
case Hexagon::L4_loadruh_abs: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: addr
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(98304)) << 10;
Value |= (op & UINT64_C(31744)) << 6;
Value |= (op & UINT64_C(1022)) << 4;
break;
}
case Hexagon::A2_abs:
case Hexagon::A2_abssat:
case Hexagon::A2_negsat:
case Hexagon::A2_roundsat:
case Hexagon::A2_sat:
case Hexagon::A2_satb:
case Hexagon::A2_sath:
case Hexagon::A2_satub:
case Hexagon::A2_satuh:
case Hexagon::A2_swiz:
case Hexagon::A2_sxtw:
case Hexagon::A2_tfr:
case Hexagon::A2_tfrcrr:
case Hexagon::A2_tfrrcr:
case Hexagon::A4_tfrcpp:
case Hexagon::A4_tfrpcp:
case Hexagon::L2_loadw_locked:
case Hexagon::L4_loadd_locked:
case Hexagon::S2_brev:
case Hexagon::S2_svsathb:
case Hexagon::S2_svsathub:
case Hexagon::S2_vrndpackwh:
case Hexagon::S2_vrndpackwhs:
case Hexagon::S2_vsathb:
case Hexagon::S2_vsathub:
case Hexagon::S2_vsatwh:
case Hexagon::S2_vsatwuh:
case Hexagon::S2_vsplatrb:
case Hexagon::S2_vsplatrh:
case Hexagon::S2_vsxtbh:
case Hexagon::S2_vsxthw:
case Hexagon::S2_vtrunehb:
case Hexagon::S2_vtrunohb:
case Hexagon::S2_vzxtbh:
case Hexagon::S2_vzxthw: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::A4_bitspliti:
case Hexagon::A4_cround_ri:
case Hexagon::A4_round_ri:
case Hexagon::A4_round_ri_sat:
case Hexagon::S2_asl_i_r:
case Hexagon::S2_asl_i_r_sat:
case Hexagon::S2_asr_i_r:
case Hexagon::S2_asr_i_r_rnd:
case Hexagon::S2_asr_i_svw_trun:
case Hexagon::S2_lsr_i_r: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: u5
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::F2_dfimm_n:
case Hexagon::F2_dfimm_p:
case Hexagon::F2_sfimm_n:
case Hexagon::F2_sfimm_p: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(512)) << 12;
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::L2_ploadrhf_io:
case Hexagon::L2_ploadrhfnew_io:
case Hexagon::L2_ploadrht_io:
case Hexagon::L2_ploadrhtnew_io:
case Hexagon::L2_ploadruhf_io:
case Hexagon::L2_ploadruhfnew_io:
case Hexagon::L2_ploadruht_io:
case Hexagon::L2_ploadruhtnew_io: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(126)) << 4;
break;
}
case Hexagon::L2_ploadrif_io:
case Hexagon::L2_ploadrifnew_io:
case Hexagon::L2_ploadrit_io:
case Hexagon::L2_ploadritnew_io: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(252)) << 3;
break;
}
case Hexagon::L2_ploadrdf_io:
case Hexagon::L2_ploadrdfnew_io:
case Hexagon::L2_ploadrdt_io:
case Hexagon::L2_ploadrdtnew_io: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(504)) << 2;
break;
}
case Hexagon::L2_ploadrbf_io:
case Hexagon::L2_ploadrbfnew_io:
case Hexagon::L2_ploadrbt_io:
case Hexagon::L2_ploadrbtnew_io:
case Hexagon::L2_ploadrubf_io:
case Hexagon::L2_ploadrubfnew_io:
case Hexagon::L2_ploadrubt_io:
case Hexagon::L2_ploadrubtnew_io: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(63)) << 5;
break;
}
case Hexagon::A2_tfrf:
case Hexagon::A2_tfrfnew:
case Hexagon::A2_tfrt:
case Hexagon::A2_tfrtnew: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 21;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::L4_ploadrbf_rr:
case Hexagon::L4_ploadrbfnew_rr:
case Hexagon::L4_ploadrbt_rr:
case Hexagon::L4_ploadrbtnew_rr:
case Hexagon::L4_ploadrdf_rr:
case Hexagon::L4_ploadrdfnew_rr:
case Hexagon::L4_ploadrdt_rr:
case Hexagon::L4_ploadrdtnew_rr:
case Hexagon::L4_ploadrhf_rr:
case Hexagon::L4_ploadrhfnew_rr:
case Hexagon::L4_ploadrht_rr:
case Hexagon::L4_ploadrhtnew_rr:
case Hexagon::L4_ploadrif_rr:
case Hexagon::L4_ploadrifnew_rr:
case Hexagon::L4_ploadrit_rr:
case Hexagon::L4_ploadritnew_rr:
case Hexagon::L4_ploadrubf_rr:
case Hexagon::L4_ploadrubfnew_rr:
case Hexagon::L4_ploadrubt_rr:
case Hexagon::L4_ploadrubtnew_rr:
case Hexagon::L4_ploadruhf_rr:
case Hexagon::L4_ploadruhfnew_rr:
case Hexagon::L4_ploadruht_rr:
case Hexagon::L4_ploadruhtnew_rr: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: u2
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 7;
break;
}
case Hexagon::V6_vmux:
case Hexagon::V6_vmux_128B:
case Hexagon::V6_vswap:
case Hexagon::V6_vswap_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::V6_vandqrt:
case Hexagon::V6_vandqrt_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::L4_ploadrbf_abs:
case Hexagon::L4_ploadrbfnew_abs:
case Hexagon::L4_ploadrbt_abs:
case Hexagon::L4_ploadrbtnew_abs:
case Hexagon::L4_ploadrdf_abs:
case Hexagon::L4_ploadrdfnew_abs:
case Hexagon::L4_ploadrdt_abs:
case Hexagon::L4_ploadrdtnew_abs:
case Hexagon::L4_ploadrhf_abs:
case Hexagon::L4_ploadrhfnew_abs:
case Hexagon::L4_ploadrht_abs:
case Hexagon::L4_ploadrhtnew_abs:
case Hexagon::L4_ploadrif_abs:
case Hexagon::L4_ploadrifnew_abs:
case Hexagon::L4_ploadrit_abs:
case Hexagon::L4_ploadritnew_abs:
case Hexagon::L4_ploadrubf_abs:
case Hexagon::L4_ploadrubfnew_abs:
case Hexagon::L4_ploadrubt_abs:
case Hexagon::L4_ploadrubtnew_abs:
case Hexagon::L4_ploadruhf_abs:
case Hexagon::L4_ploadruhfnew_abs:
case Hexagon::L4_ploadruht_abs:
case Hexagon::L4_ploadruhtnew_abs: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 9;
// op: absaddr
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(62)) << 15;
Value |= (op & UINT64_C(1)) << 8;
break;
}
case Hexagon::V6_lvsplatw:
case Hexagon::V6_lvsplatw_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::L2_loadrd_io: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(12288)) << 13;
Value |= (op & UINT64_C(4088)) << 2;
break;
}
case Hexagon::L2_loadrb_io:
case Hexagon::L2_loadrub_io: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 16;
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::L2_loadbsw2_io:
case Hexagon::L2_loadbzw2_io:
case Hexagon::L2_loadrh_io:
case Hexagon::L2_loadruh_io: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3072)) << 15;
Value |= (op & UINT64_C(1022)) << 4;
break;
}
case Hexagon::L2_loadbsw4_io:
case Hexagon::L2_loadbzw4_io:
case Hexagon::L2_loadri_io: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(6144)) << 14;
Value |= (op & UINT64_C(2044)) << 3;
break;
}
case Hexagon::V6_vL32Ub_ai_128B:
case Hexagon::V6_vL32b_ai_128B:
case Hexagon::V6_vL32b_cur_ai_128B:
case Hexagon::V6_vL32b_nt_ai_128B:
case Hexagon::V6_vL32b_nt_cur_ai_128B:
case Hexagon::V6_vL32b_nt_tmp_ai_128B:
case Hexagon::V6_vL32b_tmp_ai_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1024)) << 3;
Value |= (op & UINT64_C(896)) << 1;
break;
}
case Hexagon::L4_loadalignb_ur:
case Hexagon::L4_loadalignh_ur:
case Hexagon::L4_loadbsw2_ur:
case Hexagon::L4_loadbsw4_ur:
case Hexagon::L4_loadbzw2_ur:
case Hexagon::L4_loadbzw4_ur:
case Hexagon::L4_loadrb_ur:
case Hexagon::L4_loadrd_ur:
case Hexagon::L4_loadrh_ur:
case Hexagon::L4_loadri_ur:
case Hexagon::L4_loadrub_ur:
case Hexagon::L4_loadruh_ur: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 7;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(60)) << 6;
Value |= (op & UINT64_C(3)) << 5;
break;
}
case Hexagon::A4_cround_rr:
case Hexagon::A4_round_rr:
case Hexagon::A4_round_rr_sat:
case Hexagon::A5_vaddhubs:
case Hexagon::M2_cmpyrs_s0:
case Hexagon::M2_cmpyrs_s1:
case Hexagon::M2_cmpyrsc_s0:
case Hexagon::M2_cmpyrsc_s1:
case Hexagon::M2_dpmpyss_rnd_s0:
case Hexagon::M2_hmmpyh_rs1:
case Hexagon::M2_hmmpyh_s1:
case Hexagon::M2_hmmpyl_rs1:
case Hexagon::M2_hmmpyl_s1:
case Hexagon::M2_mpy_up:
case Hexagon::M2_mpy_up_s1:
case Hexagon::M2_mpy_up_s1_sat:
case Hexagon::M2_mpyi:
case Hexagon::M2_mpysu_up:
case Hexagon::M2_mpyu_up:
case Hexagon::M2_vdmpyrs_s0:
case Hexagon::M2_vdmpyrs_s1:
case Hexagon::M2_vmpy2s_s0pack:
case Hexagon::M2_vmpy2s_s1pack:
case Hexagon::M2_vraddh:
case Hexagon::M2_vradduh:
case Hexagon::M2_vrcmpys_s1rp_h:
case Hexagon::M2_vrcmpys_s1rp_l:
case Hexagon::S2_asl_r_p:
case Hexagon::S2_asl_r_r:
case Hexagon::S2_asl_r_r_sat:
case Hexagon::S2_asl_r_vh:
case Hexagon::S2_asl_r_vw:
case Hexagon::S2_asr_r_p:
case Hexagon::S2_asr_r_r:
case Hexagon::S2_asr_r_r_sat:
case Hexagon::S2_asr_r_vh:
case Hexagon::S2_asr_r_vw:
case Hexagon::S2_cabacdecbin:
case Hexagon::S2_extractup_rp:
case Hexagon::S2_lfsp:
case Hexagon::S2_lsl_r_p:
case Hexagon::S2_lsl_r_r:
case Hexagon::S2_lsl_r_vh:
case Hexagon::S2_lsl_r_vw:
case Hexagon::S2_lsr_r_p:
case Hexagon::S2_lsr_r_r:
case Hexagon::S2_lsr_r_vh:
case Hexagon::S2_lsr_r_vw:
case Hexagon::S2_shuffeb:
case Hexagon::S2_shuffeh:
case Hexagon::S2_vcnegh:
case Hexagon::S2_vcrotate:
case Hexagon::S2_vtrunewh:
case Hexagon::S2_vtrunowh:
case Hexagon::S4_extractp_rp:
case Hexagon::S4_vxaddsubh:
case Hexagon::S4_vxaddsubhr:
case Hexagon::S4_vxaddsubw:
case Hexagon::S4_vxsubaddh:
case Hexagon::S4_vxsubaddhr:
case Hexagon::S4_vxsubaddw:
case Hexagon::S6_rol_i_r: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_extractu:
case Hexagon::S4_extract: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(24)) << 18;
Value |= (op & UINT64_C(7)) << 5;
break;
}
case Hexagon::S2_cabacencbin: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
break;
}
case Hexagon::L4_loadrb_rr:
case Hexagon::L4_loadrd_rr:
case Hexagon::L4_loadrh_rr:
case Hexagon::L4_loadri_rr:
case Hexagon::L4_loadrub_rr:
case Hexagon::L4_loadruh_rr: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: u2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 7;
break;
}
case Hexagon::V6_vL32Ub_ai:
case Hexagon::V6_vL32b_ai:
case Hexagon::V6_vL32b_cur_ai:
case Hexagon::V6_vL32b_nt_ai:
case Hexagon::V6_vL32b_nt_cur_ai:
case Hexagon::V6_vL32b_nt_tmp_ai:
case Hexagon::V6_vL32b_tmp_ai: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(448)) << 2;
break;
}
case Hexagon::S6_rol_i_p: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(63)) << 8;
break;
}
case Hexagon::S2_extractup:
case Hexagon::S4_extractp: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(63)) << 8;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(56)) << 18;
Value |= (op & UINT64_C(7)) << 5;
break;
}
case Hexagon::V6_vabsh:
case Hexagon::V6_vabsh_128B:
case Hexagon::V6_vabsh_sat:
case Hexagon::V6_vabsh_sat_128B:
case Hexagon::V6_vabsw:
case Hexagon::V6_vabsw_128B:
case Hexagon::V6_vabsw_sat:
case Hexagon::V6_vabsw_sat_128B:
case Hexagon::V6_vassign:
case Hexagon::V6_vassign_128B:
case Hexagon::V6_vcl0h:
case Hexagon::V6_vcl0h_128B:
case Hexagon::V6_vcl0w:
case Hexagon::V6_vcl0w_128B:
case Hexagon::V6_vdealb:
case Hexagon::V6_vdealb_128B:
case Hexagon::V6_vdealh:
case Hexagon::V6_vdealh_128B:
case Hexagon::V6_vnormamth:
case Hexagon::V6_vnormamth_128B:
case Hexagon::V6_vnormamtw:
case Hexagon::V6_vnormamtw_128B:
case Hexagon::V6_vnot:
case Hexagon::V6_vnot_128B:
case Hexagon::V6_vpopcounth:
case Hexagon::V6_vpopcounth_128B:
case Hexagon::V6_vsb:
case Hexagon::V6_vsb_128B:
case Hexagon::V6_vsh:
case Hexagon::V6_vsh_128B:
case Hexagon::V6_vshuffb:
case Hexagon::V6_vshuffb_128B:
case Hexagon::V6_vshuffh:
case Hexagon::V6_vshuffh_128B:
case Hexagon::V6_vunpackb:
case Hexagon::V6_vunpackb_128B:
case Hexagon::V6_vunpackh:
case Hexagon::V6_vunpackh_128B:
case Hexagon::V6_vunpackub:
case Hexagon::V6_vunpackub_128B:
case Hexagon::V6_vunpackuh:
case Hexagon::V6_vunpackuh_128B:
case Hexagon::V6_vzb:
case Hexagon::V6_vzb_128B:
case Hexagon::V6_vzh:
case Hexagon::V6_vzh_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_shuffob:
case Hexagon::S2_shuffoh:
case Hexagon::V6_extractw:
case Hexagon::V6_extractw_128B:
case Hexagon::V6_vabsdiffh:
case Hexagon::V6_vabsdiffh_128B:
case Hexagon::V6_vabsdiffub:
case Hexagon::V6_vabsdiffub_128B:
case Hexagon::V6_vabsdiffuh:
case Hexagon::V6_vabsdiffuh_128B:
case Hexagon::V6_vabsdiffw:
case Hexagon::V6_vabsdiffw_128B:
case Hexagon::V6_vaddb:
case Hexagon::V6_vaddb_128B:
case Hexagon::V6_vaddb_dv:
case Hexagon::V6_vaddb_dv_128B:
case Hexagon::V6_vaddh:
case Hexagon::V6_vaddh_128B:
case Hexagon::V6_vaddh_dv:
case Hexagon::V6_vaddh_dv_128B:
case Hexagon::V6_vaddhsat:
case Hexagon::V6_vaddhsat_128B:
case Hexagon::V6_vaddhsat_dv:
case Hexagon::V6_vaddhsat_dv_128B:
case Hexagon::V6_vaddhw:
case Hexagon::V6_vaddhw_128B:
case Hexagon::V6_vaddubh:
case Hexagon::V6_vaddubh_128B:
case Hexagon::V6_vaddubsat:
case Hexagon::V6_vaddubsat_128B:
case Hexagon::V6_vaddubsat_dv:
case Hexagon::V6_vaddubsat_dv_128B:
case Hexagon::V6_vadduhsat:
case Hexagon::V6_vadduhsat_128B:
case Hexagon::V6_vadduhsat_dv:
case Hexagon::V6_vadduhsat_dv_128B:
case Hexagon::V6_vadduhw:
case Hexagon::V6_vadduhw_128B:
case Hexagon::V6_vaddw:
case Hexagon::V6_vaddw_128B:
case Hexagon::V6_vaddw_dv:
case Hexagon::V6_vaddw_dv_128B:
case Hexagon::V6_vaddwsat:
case Hexagon::V6_vaddwsat_128B:
case Hexagon::V6_vaddwsat_dv:
case Hexagon::V6_vaddwsat_dv_128B:
case Hexagon::V6_vand:
case Hexagon::V6_vand_128B:
case Hexagon::V6_vaslh:
case Hexagon::V6_vaslh_128B:
case Hexagon::V6_vaslhv:
case Hexagon::V6_vaslhv_128B:
case Hexagon::V6_vaslw:
case Hexagon::V6_vaslw_128B:
case Hexagon::V6_vaslwv:
case Hexagon::V6_vaslwv_128B:
case Hexagon::V6_vasrh:
case Hexagon::V6_vasrh_128B:
case Hexagon::V6_vasrhv:
case Hexagon::V6_vasrhv_128B:
case Hexagon::V6_vasrw:
case Hexagon::V6_vasrw_128B:
case Hexagon::V6_vasrwv:
case Hexagon::V6_vasrwv_128B:
case Hexagon::V6_vavgh:
case Hexagon::V6_vavgh_128B:
case Hexagon::V6_vavghrnd:
case Hexagon::V6_vavghrnd_128B:
case Hexagon::V6_vavgub:
case Hexagon::V6_vavgub_128B:
case Hexagon::V6_vavgubrnd:
case Hexagon::V6_vavgubrnd_128B:
case Hexagon::V6_vavguh:
case Hexagon::V6_vavguh_128B:
case Hexagon::V6_vavguhrnd:
case Hexagon::V6_vavguhrnd_128B:
case Hexagon::V6_vavgw:
case Hexagon::V6_vavgw_128B:
case Hexagon::V6_vavgwrnd:
case Hexagon::V6_vavgwrnd_128B:
case Hexagon::V6_vcombine:
case Hexagon::V6_vcombine_128B:
case Hexagon::V6_vdealb4w:
case Hexagon::V6_vdealb4w_128B:
case Hexagon::V6_vdelta:
case Hexagon::V6_vdelta_128B:
case Hexagon::V6_vdmpybus:
case Hexagon::V6_vdmpybus_128B:
case Hexagon::V6_vdmpybus_dv:
case Hexagon::V6_vdmpybus_dv_128B:
case Hexagon::V6_vdmpyhb:
case Hexagon::V6_vdmpyhb_128B:
case Hexagon::V6_vdmpyhb_dv:
case Hexagon::V6_vdmpyhb_dv_128B:
case Hexagon::V6_vdmpyhisat:
case Hexagon::V6_vdmpyhisat_128B:
case Hexagon::V6_vdmpyhsat:
case Hexagon::V6_vdmpyhsat_128B:
case Hexagon::V6_vdmpyhsuisat:
case Hexagon::V6_vdmpyhsuisat_128B:
case Hexagon::V6_vdmpyhsusat:
case Hexagon::V6_vdmpyhsusat_128B:
case Hexagon::V6_vdmpyhvsat:
case Hexagon::V6_vdmpyhvsat_128B:
case Hexagon::V6_vdsaduh:
case Hexagon::V6_vdsaduh_128B:
case Hexagon::V6_vlsrh:
case Hexagon::V6_vlsrh_128B:
case Hexagon::V6_vlsrhv:
case Hexagon::V6_vlsrhv_128B:
case Hexagon::V6_vlsrw:
case Hexagon::V6_vlsrw_128B:
case Hexagon::V6_vlsrwv:
case Hexagon::V6_vlsrwv_128B:
case Hexagon::V6_vmaxh:
case Hexagon::V6_vmaxh_128B:
case Hexagon::V6_vmaxub:
case Hexagon::V6_vmaxub_128B:
case Hexagon::V6_vmaxuh:
case Hexagon::V6_vmaxuh_128B:
case Hexagon::V6_vmaxw:
case Hexagon::V6_vmaxw_128B:
case Hexagon::V6_vminh:
case Hexagon::V6_vminh_128B:
case Hexagon::V6_vminub:
case Hexagon::V6_vminub_128B:
case Hexagon::V6_vminuh:
case Hexagon::V6_vminuh_128B:
case Hexagon::V6_vminw:
case Hexagon::V6_vminw_128B:
case Hexagon::V6_vmpabus:
case Hexagon::V6_vmpabus_128B:
case Hexagon::V6_vmpabusv:
case Hexagon::V6_vmpabusv_128B:
case Hexagon::V6_vmpabuuv:
case Hexagon::V6_vmpabuuv_128B:
case Hexagon::V6_vmpahb:
case Hexagon::V6_vmpahb_128B:
case Hexagon::V6_vmpybus:
case Hexagon::V6_vmpybus_128B:
case Hexagon::V6_vmpybusv:
case Hexagon::V6_vmpybusv_128B:
case Hexagon::V6_vmpybv:
case Hexagon::V6_vmpybv_128B:
case Hexagon::V6_vmpyewuh:
case Hexagon::V6_vmpyewuh_128B:
case Hexagon::V6_vmpyh:
case Hexagon::V6_vmpyh_128B:
case Hexagon::V6_vmpyhsrs:
case Hexagon::V6_vmpyhsrs_128B:
case Hexagon::V6_vmpyhss:
case Hexagon::V6_vmpyhss_128B:
case Hexagon::V6_vmpyhus:
case Hexagon::V6_vmpyhus_128B:
case Hexagon::V6_vmpyhv:
case Hexagon::V6_vmpyhv_128B:
case Hexagon::V6_vmpyhvsrs:
case Hexagon::V6_vmpyhvsrs_128B:
case Hexagon::V6_vmpyieoh:
case Hexagon::V6_vmpyieoh_128B:
case Hexagon::V6_vmpyiewuh:
case Hexagon::V6_vmpyiewuh_128B:
case Hexagon::V6_vmpyih:
case Hexagon::V6_vmpyih_128B:
case Hexagon::V6_vmpyihb:
case Hexagon::V6_vmpyihb_128B:
case Hexagon::V6_vmpyiowh:
case Hexagon::V6_vmpyiowh_128B:
case Hexagon::V6_vmpyiwb:
case Hexagon::V6_vmpyiwb_128B:
case Hexagon::V6_vmpyiwh:
case Hexagon::V6_vmpyiwh_128B:
case Hexagon::V6_vmpyowh:
case Hexagon::V6_vmpyowh_128B:
case Hexagon::V6_vmpyowh_rnd:
case Hexagon::V6_vmpyowh_rnd_128B:
case Hexagon::V6_vmpyub:
case Hexagon::V6_vmpyub_128B:
case Hexagon::V6_vmpyubv:
case Hexagon::V6_vmpyubv_128B:
case Hexagon::V6_vmpyuh:
case Hexagon::V6_vmpyuh_128B:
case Hexagon::V6_vmpyuhv:
case Hexagon::V6_vmpyuhv_128B:
case Hexagon::V6_vnavgh:
case Hexagon::V6_vnavgh_128B:
case Hexagon::V6_vnavgub:
case Hexagon::V6_vnavgub_128B:
case Hexagon::V6_vnavgw:
case Hexagon::V6_vnavgw_128B:
case Hexagon::V6_vor:
case Hexagon::V6_vor_128B:
case Hexagon::V6_vpackeb:
case Hexagon::V6_vpackeb_128B:
case Hexagon::V6_vpackeh:
case Hexagon::V6_vpackeh_128B:
case Hexagon::V6_vpackhb_sat:
case Hexagon::V6_vpackhb_sat_128B:
case Hexagon::V6_vpackhub_sat:
case Hexagon::V6_vpackhub_sat_128B:
case Hexagon::V6_vpackob:
case Hexagon::V6_vpackob_128B:
case Hexagon::V6_vpackoh:
case Hexagon::V6_vpackoh_128B:
case Hexagon::V6_vpackwh_sat:
case Hexagon::V6_vpackwh_sat_128B:
case Hexagon::V6_vpackwuh_sat:
case Hexagon::V6_vpackwuh_sat_128B:
case Hexagon::V6_vrdelta:
case Hexagon::V6_vrdelta_128B:
case Hexagon::V6_vrmpybus:
case Hexagon::V6_vrmpybus_128B:
case Hexagon::V6_vrmpybusv:
case Hexagon::V6_vrmpybusv_128B:
case Hexagon::V6_vrmpybv:
case Hexagon::V6_vrmpybv_128B:
case Hexagon::V6_vrmpyub:
case Hexagon::V6_vrmpyub_128B:
case Hexagon::V6_vrmpyubv:
case Hexagon::V6_vrmpyubv_128B:
case Hexagon::V6_vror:
case Hexagon::V6_vror_128B:
case Hexagon::V6_vroundhb:
case Hexagon::V6_vroundhb_128B:
case Hexagon::V6_vroundhub:
case Hexagon::V6_vroundhub_128B:
case Hexagon::V6_vroundwh:
case Hexagon::V6_vroundwh_128B:
case Hexagon::V6_vroundwuh:
case Hexagon::V6_vroundwuh_128B:
case Hexagon::V6_vsathub:
case Hexagon::V6_vsathub_128B:
case Hexagon::V6_vsatwh:
case Hexagon::V6_vsatwh_128B:
case Hexagon::V6_vshufeh:
case Hexagon::V6_vshufeh_128B:
case Hexagon::V6_vshuffeb:
case Hexagon::V6_vshuffeb_128B:
case Hexagon::V6_vshuffob:
case Hexagon::V6_vshuffob_128B:
case Hexagon::V6_vshufoeb:
case Hexagon::V6_vshufoeb_128B:
case Hexagon::V6_vshufoeh:
case Hexagon::V6_vshufoeh_128B:
case Hexagon::V6_vshufoh:
case Hexagon::V6_vshufoh_128B:
case Hexagon::V6_vsubb:
case Hexagon::V6_vsubb_128B:
case Hexagon::V6_vsubb_dv:
case Hexagon::V6_vsubb_dv_128B:
case Hexagon::V6_vsubh:
case Hexagon::V6_vsubh_128B:
case Hexagon::V6_vsubh_dv:
case Hexagon::V6_vsubh_dv_128B:
case Hexagon::V6_vsubhsat:
case Hexagon::V6_vsubhsat_128B:
case Hexagon::V6_vsubhsat_dv:
case Hexagon::V6_vsubhsat_dv_128B:
case Hexagon::V6_vsubhw:
case Hexagon::V6_vsubhw_128B:
case Hexagon::V6_vsububh:
case Hexagon::V6_vsububh_128B:
case Hexagon::V6_vsububsat:
case Hexagon::V6_vsububsat_128B:
case Hexagon::V6_vsububsat_dv:
case Hexagon::V6_vsububsat_dv_128B:
case Hexagon::V6_vsubuhsat:
case Hexagon::V6_vsubuhsat_128B:
case Hexagon::V6_vsubuhsat_dv:
case Hexagon::V6_vsubuhsat_dv_128B:
case Hexagon::V6_vsubuhw:
case Hexagon::V6_vsubuhw_128B:
case Hexagon::V6_vsubw:
case Hexagon::V6_vsubw_128B:
case Hexagon::V6_vsubw_dv:
case Hexagon::V6_vsubw_dv_128B:
case Hexagon::V6_vsubwsat:
case Hexagon::V6_vsubwsat_128B:
case Hexagon::V6_vsubwsat_dv:
case Hexagon::V6_vsubwsat_dv_128B:
case Hexagon::V6_vtmpyb:
case Hexagon::V6_vtmpyb_128B:
case Hexagon::V6_vtmpybus:
case Hexagon::V6_vtmpybus_128B:
case Hexagon::V6_vtmpyhb:
case Hexagon::V6_vtmpyhb_128B:
case Hexagon::V6_vxor:
case Hexagon::V6_vxor_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::V6_vrmpybusi:
case Hexagon::V6_vrmpybusi_128B:
case Hexagon::V6_vrmpyubi:
case Hexagon::V6_vrmpyubi_128B:
case Hexagon::V6_vrsadubi:
case Hexagon::V6_vrsadubi_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 5;
break;
}
case Hexagon::V6_valignbi:
case Hexagon::V6_valignbi_128B:
case Hexagon::V6_vlalignbi:
case Hexagon::V6_vlalignbi_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 5;
break;
}
case Hexagon::V6_valignb:
case Hexagon::V6_valignb_128B:
case Hexagon::V6_vasrhbrndsat:
case Hexagon::V6_vasrhbrndsat_128B:
case Hexagon::V6_vasrhubrndsat:
case Hexagon::V6_vasrhubrndsat_128B:
case Hexagon::V6_vasrhubsat:
case Hexagon::V6_vasrhubsat_128B:
case Hexagon::V6_vasrwh:
case Hexagon::V6_vasrwh_128B:
case Hexagon::V6_vasrwhrndsat:
case Hexagon::V6_vasrwhrndsat_128B:
case Hexagon::V6_vasrwhsat:
case Hexagon::V6_vasrwhsat_128B:
case Hexagon::V6_vasrwuhsat:
case Hexagon::V6_vasrwuhsat_128B:
case Hexagon::V6_vdealvdd:
case Hexagon::V6_vdealvdd_128B:
case Hexagon::V6_vlalignb:
case Hexagon::V6_vlalignb_128B:
case Hexagon::V6_vlutvvb:
case Hexagon::V6_vlutvvb_128B:
case Hexagon::V6_vlutvwh:
case Hexagon::V6_vlutvwh_128B:
case Hexagon::V6_vshuffvdd:
case Hexagon::V6_vshuffvdd_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 19;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 16;
break;
}
case Hexagon::V6_vandqrt_acc:
case Hexagon::V6_vandqrt_acc_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::L2_ploadrdf_pi:
case Hexagon::L2_ploadrdfnew_pi:
case Hexagon::L2_ploadrdt_pi:
case Hexagon::L2_ploadrdtnew_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3)) << 9;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(120)) << 2;
break;
}
case Hexagon::L2_ploadrbf_pi:
case Hexagon::L2_ploadrbfnew_pi:
case Hexagon::L2_ploadrbt_pi:
case Hexagon::L2_ploadrbtnew_pi:
case Hexagon::L2_ploadrubf_pi:
case Hexagon::L2_ploadrubfnew_pi:
case Hexagon::L2_ploadrubt_pi:
case Hexagon::L2_ploadrubtnew_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3)) << 9;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(15)) << 5;
break;
}
case Hexagon::L2_ploadrhf_pi:
case Hexagon::L2_ploadrhfnew_pi:
case Hexagon::L2_ploadrht_pi:
case Hexagon::L2_ploadrhtnew_pi:
case Hexagon::L2_ploadruhf_pi:
case Hexagon::L2_ploadruhfnew_pi:
case Hexagon::L2_ploadruht_pi:
case Hexagon::L2_ploadruhtnew_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3)) << 9;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(30)) << 4;
break;
}
case Hexagon::L2_ploadrif_pi:
case Hexagon::L2_ploadrifnew_pi:
case Hexagon::L2_ploadrit_pi:
case Hexagon::L2_ploadritnew_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(3)) << 9;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(60)) << 3;
break;
}
case Hexagon::V6_vinsertwr:
case Hexagon::V6_vinsertwr_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::L2_loadrd_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(120)) << 2;
break;
}
case Hexagon::L2_loadrb_pi:
case Hexagon::L2_loadrub_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(15)) << 5;
break;
}
case Hexagon::L2_loadbsw2_pi:
case Hexagon::L2_loadbzw2_pi:
case Hexagon::L2_loadrh_pi:
case Hexagon::L2_loadruh_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(30)) << 4;
break;
}
case Hexagon::L2_loadbsw4_pi:
case Hexagon::L2_loadbzw4_pi:
case Hexagon::L2_loadri_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(60)) << 3;
break;
}
case Hexagon::L2_loadbsw2_pr:
case Hexagon::L2_loadbsw4_pr:
case Hexagon::L2_loadbzw2_pr:
case Hexagon::L2_loadbzw4_pr:
case Hexagon::L2_loadrb_pr:
case Hexagon::L2_loadrd_pr:
case Hexagon::L2_loadrh_pr:
case Hexagon::L2_loadri_pr:
case Hexagon::L2_loadrub_pr:
case Hexagon::L2_loadruh_pr:
case Hexagon::V6_vL32Ub_ppu:
case Hexagon::V6_vL32b_cur_ppu:
case Hexagon::V6_vL32b_nt_cur_ppu:
case Hexagon::V6_vL32b_nt_ppu:
case Hexagon::V6_vL32b_nt_tmp_ppu:
case Hexagon::V6_vL32b_ppu:
case Hexagon::V6_vL32b_tmp_ppu: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
break;
}
case Hexagon::S6_rol_i_r_acc:
case Hexagon::S6_rol_i_r_and:
case Hexagon::S6_rol_i_r_nac:
case Hexagon::S6_rol_i_r_or:
case Hexagon::S6_rol_i_r_xacc: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_insert: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(24)) << 18;
Value |= (op & UINT64_C(7)) << 5;
break;
}
case Hexagon::V6_vL32Ub_pi:
case Hexagon::V6_vL32b_cur_pi:
case Hexagon::V6_vL32b_nt_cur_pi:
case Hexagon::V6_vL32b_nt_pi:
case Hexagon::V6_vL32b_nt_tmp_pi:
case Hexagon::V6_vL32b_pi:
case Hexagon::V6_vL32b_tmp_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(448)) << 2;
break;
}
case Hexagon::S6_rol_i_p_acc:
case Hexagon::S6_rol_i_p_and:
case Hexagon::S6_rol_i_p_nac:
case Hexagon::S6_rol_i_p_or:
case Hexagon::S6_rol_i_p_xacc: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(63)) << 8;
break;
}
case Hexagon::S2_insertp: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(63)) << 8;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(56)) << 18;
Value |= (op & UINT64_C(7)) << 5;
break;
}
case Hexagon::V6_vL32Ub_pi_128B:
case Hexagon::V6_vL32b_cur_pi_128B:
case Hexagon::V6_vL32b_nt_cur_pi_128B:
case Hexagon::V6_vL32b_nt_pi_128B:
case Hexagon::V6_vL32b_nt_tmp_pi_128B:
case Hexagon::V6_vL32b_pi_128B:
case Hexagon::V6_vL32b_tmp_pi_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(896)) << 1;
break;
}
case Hexagon::V6_vunpackob:
case Hexagon::V6_vunpackob_128B:
case Hexagon::V6_vunpackoh:
case Hexagon::V6_vunpackoh_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::V6_vaslw_acc:
case Hexagon::V6_vaslw_acc_128B:
case Hexagon::V6_vasrw_acc:
case Hexagon::V6_vasrw_acc_128B:
case Hexagon::V6_vdmpybus_acc:
case Hexagon::V6_vdmpybus_acc_128B:
case Hexagon::V6_vdmpybus_dv_acc:
case Hexagon::V6_vdmpybus_dv_acc_128B:
case Hexagon::V6_vdmpyhb_acc:
case Hexagon::V6_vdmpyhb_acc_128B:
case Hexagon::V6_vdmpyhb_dv_acc:
case Hexagon::V6_vdmpyhb_dv_acc_128B:
case Hexagon::V6_vdmpyhisat_acc:
case Hexagon::V6_vdmpyhisat_acc_128B:
case Hexagon::V6_vdmpyhsat_acc:
case Hexagon::V6_vdmpyhsat_acc_128B:
case Hexagon::V6_vdmpyhsuisat_acc:
case Hexagon::V6_vdmpyhsuisat_acc_128B:
case Hexagon::V6_vdmpyhsusat_acc:
case Hexagon::V6_vdmpyhsusat_acc_128B:
case Hexagon::V6_vdmpyhvsat_acc:
case Hexagon::V6_vdmpyhvsat_acc_128B:
case Hexagon::V6_vdsaduh_acc:
case Hexagon::V6_vdsaduh_acc_128B:
case Hexagon::V6_vmpabus_acc:
case Hexagon::V6_vmpabus_acc_128B:
case Hexagon::V6_vmpahb_acc:
case Hexagon::V6_vmpahb_acc_128B:
case Hexagon::V6_vmpybus_acc:
case Hexagon::V6_vmpybus_acc_128B:
case Hexagon::V6_vmpybusv_acc:
case Hexagon::V6_vmpybusv_acc_128B:
case Hexagon::V6_vmpybv_acc:
case Hexagon::V6_vmpybv_acc_128B:
case Hexagon::V6_vmpyhsat_acc:
case Hexagon::V6_vmpyhsat_acc_128B:
case Hexagon::V6_vmpyhus_acc:
case Hexagon::V6_vmpyhus_acc_128B:
case Hexagon::V6_vmpyhv_acc:
case Hexagon::V6_vmpyhv_acc_128B:
case Hexagon::V6_vmpyiewh_acc:
case Hexagon::V6_vmpyiewh_acc_128B:
case Hexagon::V6_vmpyiewuh_acc:
case Hexagon::V6_vmpyiewuh_acc_128B:
case Hexagon::V6_vmpyih_acc:
case Hexagon::V6_vmpyih_acc_128B:
case Hexagon::V6_vmpyihb_acc:
case Hexagon::V6_vmpyihb_acc_128B:
case Hexagon::V6_vmpyiwb_acc:
case Hexagon::V6_vmpyiwb_acc_128B:
case Hexagon::V6_vmpyiwh_acc:
case Hexagon::V6_vmpyiwh_acc_128B:
case Hexagon::V6_vmpyowh_rnd_sacc:
case Hexagon::V6_vmpyowh_rnd_sacc_128B:
case Hexagon::V6_vmpyowh_sacc:
case Hexagon::V6_vmpyowh_sacc_128B:
case Hexagon::V6_vmpyub_acc:
case Hexagon::V6_vmpyub_acc_128B:
case Hexagon::V6_vmpyubv_acc:
case Hexagon::V6_vmpyubv_acc_128B:
case Hexagon::V6_vmpyuh_acc:
case Hexagon::V6_vmpyuh_acc_128B:
case Hexagon::V6_vmpyuhv_acc:
case Hexagon::V6_vmpyuhv_acc_128B:
case Hexagon::V6_vrmpybus_acc:
case Hexagon::V6_vrmpybus_acc_128B:
case Hexagon::V6_vrmpybusv_acc:
case Hexagon::V6_vrmpybusv_acc_128B:
case Hexagon::V6_vrmpybv_acc:
case Hexagon::V6_vrmpybv_acc_128B:
case Hexagon::V6_vrmpyub_acc:
case Hexagon::V6_vrmpyub_acc_128B:
case Hexagon::V6_vrmpyubv_acc:
case Hexagon::V6_vrmpyubv_acc_128B:
case Hexagon::V6_vtmpyb_acc:
case Hexagon::V6_vtmpyb_acc_128B:
case Hexagon::V6_vtmpybus_acc:
case Hexagon::V6_vtmpybus_acc_128B:
case Hexagon::V6_vtmpyhb_acc:
case Hexagon::V6_vtmpyhb_acc_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::V6_vrmpybusi_acc:
case Hexagon::V6_vrmpybusi_acc_128B:
case Hexagon::V6_vrmpyubi_acc:
case Hexagon::V6_vrmpyubi_acc_128B:
case Hexagon::V6_vrsadubi_acc:
case Hexagon::V6_vrsadubi_acc_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(1)) << 5;
break;
}
case Hexagon::V6_vlutvvb_oracc:
case Hexagon::V6_vlutvvb_oracc_128B:
case Hexagon::V6_vlutvwh_oracc:
case Hexagon::V6_vlutvwh_oracc_128B: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 19;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(7)) << 16;
break;
}
case Hexagon::L2_loadalignb_io: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 16;
Value |= (op & UINT64_C(511)) << 5;
break;
}
case Hexagon::L2_loadalignh_io: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(3072)) << 15;
Value |= (op & UINT64_C(1022)) << 4;
break;
}
case Hexagon::M2_accii:
case Hexagon::M2_macsin:
case Hexagon::M2_macsip:
case Hexagon::M2_naccii: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(255)) << 5;
break;
}
case Hexagon::M2_acci:
case Hexagon::M2_maci:
case Hexagon::M2_nacci:
case Hexagon::M2_xor_xacc:
case Hexagon::M4_and_and:
case Hexagon::M4_and_andn:
case Hexagon::M4_and_or:
case Hexagon::M4_and_xor:
case Hexagon::M4_mac_up_s1_sat:
case Hexagon::M4_nac_up_s1_sat:
case Hexagon::M4_or_and:
case Hexagon::M4_or_andn:
case Hexagon::M4_or_or:
case Hexagon::M4_or_xor:
case Hexagon::M4_xor_and:
case Hexagon::M4_xor_andn:
case Hexagon::M4_xor_or:
case Hexagon::S2_insert_rp:
case Hexagon::S2_insertp_rp: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::M2_subacc: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::L2_loadalignb_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(15)) << 5;
break;
}
case Hexagon::L2_loadalignh_pi: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(30)) << 4;
break;
}
case Hexagon::L2_loadalignb_pr:
case Hexagon::L2_loadalignh_pr: {
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
break;
}
case Hexagon::A5_ACS: {
// op: dst1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: dst2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: src1
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::L4_loadalignb_ap:
case Hexagon::L4_loadalignh_ap:
case Hexagon::L4_loadbsw2_ap:
case Hexagon::L4_loadbsw4_ap:
case Hexagon::L4_loadbzw2_ap:
case Hexagon::L4_loadbzw4_ap:
case Hexagon::L4_loadrb_ap:
case Hexagon::L4_loadrd_ap:
case Hexagon::L4_loadrh_ap:
case Hexagon::L4_loadri_ap:
case Hexagon::L4_loadrub_ap:
case Hexagon::L4_loadruh_ap: {
// op: dst1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: dst2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: addr
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(60)) << 6;
Value |= (op & UINT64_C(3)) << 5;
break;
}
case Hexagon::A4_ext:
case Hexagon::A4_ext_b:
case Hexagon::A4_ext_c:
case Hexagon::A4_ext_g: {
// op: imm
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(4293918720)) >> 4;
Value |= (op & UINT64_C(1048512)) >> 6;
break;
}
case Hexagon::J2_loop0r:
case Hexagon::J2_loop0rext:
case Hexagon::J2_loop1r:
case Hexagon::J2_loop1rext: {
// op: offset
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(496)) << 4;
Value |= (op & UINT64_C(12)) << 1;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::J2_loop0i:
case Hexagon::J2_loop0iext:
case Hexagon::J2_loop1i:
case Hexagon::J2_loop1iext: {
// op: offset
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(496)) << 4;
Value |= (op & UINT64_C(12)) << 1;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(992)) << 11;
Value |= (op & UINT64_C(28)) << 3;
Value |= op & UINT64_C(3);
break;
}
case Hexagon::J2_ploop1sr:
case Hexagon::J2_ploop2sr:
case Hexagon::J2_ploop3sr: {
// op: r7_2
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(496)) << 4;
Value |= (op & UINT64_C(12)) << 1;
// op: Rs
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::J2_ploop1si:
case Hexagon::J2_ploop2si:
case Hexagon::J2_ploop3si: {
// op: r7_2
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(496)) << 4;
Value |= (op & UINT64_C(12)) << 1;
// op: U10
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(992)) << 11;
Value |= (op & UINT64_C(28)) << 3;
Value |= op & UINT64_C(3);
break;
}
case Hexagon::V4_SS2_stored_sp: {
// op: s6_3
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(504);
// op: Rtt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::L4_return_f:
case Hexagon::L4_return_fnew_pnt:
case Hexagon::L4_return_fnew_pt:
case Hexagon::L4_return_t:
case Hexagon::L4_return_tnew_pnt:
case Hexagon::L4_return_tnew_pt: {
// op: src
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
break;
}
case Hexagon::J2_jumprf:
case Hexagon::J2_jumprfnew:
case Hexagon::J2_jumprfnewpt:
case Hexagon::J2_jumprt:
case Hexagon::J2_jumprtnew:
case Hexagon::J2_jumprtnewpt:
case Hexagon::JMPretf:
case Hexagon::JMPretfnew:
case Hexagon::JMPretfnewpt:
case Hexagon::JMPrett:
case Hexagon::JMPrettnew:
case Hexagon::JMPrettnewpt: {
// op: src
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
// op: dst
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::J2_jump_extf:
case Hexagon::J2_jump_extfnew:
case Hexagon::J2_jump_extfnewpt:
case Hexagon::J2_jump_extt:
case Hexagon::J2_jump_exttnew:
case Hexagon::J2_jump_exttnewpt:
case Hexagon::J2_jump_noextf:
case Hexagon::J2_jump_noextfnew:
case Hexagon::J2_jump_noextfnewpt:
case Hexagon::J2_jump_noextt:
case Hexagon::J2_jump_noexttnew:
case Hexagon::J2_jump_noexttnewpt:
case Hexagon::J2_jumpf:
case Hexagon::J2_jumpfnew:
case Hexagon::J2_jumpfnewpt:
case Hexagon::J2_jumpt:
case Hexagon::J2_jumptnew:
case Hexagon::J2_jumptnewpt: {
// op: src
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 8;
// op: dst
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(98304)) << 7;
Value |= (op & UINT64_C(31744)) << 6;
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(508)) >> 1;
break;
}
case Hexagon::V6_vS32Ub_npred_ai_128B:
case Hexagon::V6_vS32Ub_pred_ai_128B:
case Hexagon::V6_vS32b_npred_ai_128B:
case Hexagon::V6_vS32b_nqpred_ai_128B:
case Hexagon::V6_vS32b_nt_npred_ai_128B:
case Hexagon::V6_vS32b_nt_nqpred_ai_128B:
case Hexagon::V6_vS32b_nt_pred_ai_128B:
case Hexagon::V6_vS32b_nt_qpred_ai_128B:
case Hexagon::V6_vS32b_pred_ai_128B:
case Hexagon::V6_vS32b_qpred_ai_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1024)) << 3;
Value |= (op & UINT64_C(896)) << 1;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V6_vS32b_new_npred_ai_128B:
case Hexagon::V6_vS32b_new_pred_ai_128B:
case Hexagon::V6_vS32b_nt_new_npred_ai_128B:
case Hexagon::V6_vS32b_nt_new_pred_ai_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1024)) << 3;
Value |= (op & UINT64_C(896)) << 1;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::V6_vS32Ub_npred_ai:
case Hexagon::V6_vS32Ub_pred_ai:
case Hexagon::V6_vS32b_npred_ai:
case Hexagon::V6_vS32b_nqpred_ai:
case Hexagon::V6_vS32b_nt_npred_ai:
case Hexagon::V6_vS32b_nt_nqpred_ai:
case Hexagon::V6_vS32b_nt_pred_ai:
case Hexagon::V6_vS32b_nt_qpred_ai:
case Hexagon::V6_vS32b_pred_ai:
case Hexagon::V6_vS32b_qpred_ai: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(448)) << 2;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V6_vS32b_new_npred_ai:
case Hexagon::V6_vS32b_new_pred_ai:
case Hexagon::V6_vS32b_nt_new_npred_ai:
case Hexagon::V6_vS32b_nt_new_pred_ai: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(448)) << 2;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::V6_vhistq: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(3)) << 22;
break;
}
case Hexagon::Y5_l2unlocka: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::V6_vS32Ub_ai_128B:
case Hexagon::V6_vS32b_ai_128B:
case Hexagon::V6_vS32b_nt_ai_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(1024)) << 3;
Value |= (op & UINT64_C(896)) << 1;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V6_vS32b_new_ai_128B:
case Hexagon::V6_vS32b_nt_new_ai_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(1024)) << 3;
Value |= (op & UINT64_C(896)) << 1;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::S2_storerd_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(12288)) << 13;
Value |= (op & UINT64_C(2048)) << 2;
Value |= (op & UINT64_C(2040)) >> 3;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerb_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 16;
Value |= (op & UINT64_C(256)) << 5;
Value |= op & UINT64_C(255);
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerbnew_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 16;
Value |= (op & UINT64_C(256)) << 5;
Value |= op & UINT64_C(255);
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S4_storerb_ur:
case Hexagon::S4_storerd_ur:
case Hexagon::S4_storerf_ur:
case Hexagon::S4_storerh_ur:
case Hexagon::S4_storeri_ur: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 6;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(63);
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S4_storerbnew_ur:
case Hexagon::S4_storerhnew_ur:
case Hexagon::S4_storerinew_ur: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(2)) << 12;
Value |= (op & UINT64_C(1)) << 6;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(63);
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S2_storerf_io:
case Hexagon::S2_storerh_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3072)) << 15;
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(510)) >> 1;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerhnew_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3072)) << 15;
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(510)) >> 1;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::V6_vS32Ub_ai:
case Hexagon::V6_vS32b_ai:
case Hexagon::V6_vS32b_nt_ai: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(448)) << 2;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V6_vS32b_new_ai:
case Hexagon::V6_vS32b_nt_new_ai: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(512)) << 4;
Value |= (op & UINT64_C(448)) << 2;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::S2_storeri_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(6144)) << 14;
Value |= (op & UINT64_C(1024)) << 3;
Value |= (op & UINT64_C(1020)) >> 2;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerinew_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(6144)) << 14;
Value |= (op & UINT64_C(1024)) << 3;
Value |= (op & UINT64_C(1020)) >> 2;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::Y6_l2gcleaninvpa:
case Hexagon::Y6_l2gcleanpa: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::J4_cmplt_f_jumpnv_nt:
case Hexagon::J4_cmplt_f_jumpnv_t:
case Hexagon::J4_cmplt_t_jumpnv_nt:
case Hexagon::J4_cmplt_t_jumpnv_t:
case Hexagon::J4_cmpltu_f_jumpnv_nt:
case Hexagon::J4_cmpltu_f_jumpnv_t:
case Hexagon::J4_cmpltu_t_jumpnv_nt:
case Hexagon::J4_cmpltu_t_jumpnv_t: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(7)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 11;
Value |= (op & UINT64_C(508)) >> 1;
break;
}
case Hexagon::J4_cmpeqn1_f_jumpnv_nt:
case Hexagon::J4_cmpeqn1_f_jumpnv_t:
case Hexagon::J4_cmpeqn1_t_jumpnv_nt:
case Hexagon::J4_cmpeqn1_t_jumpnv_t:
case Hexagon::J4_cmpgtn1_f_jumpnv_nt:
case Hexagon::J4_cmpgtn1_f_jumpnv_t:
case Hexagon::J4_cmpgtn1_t_jumpnv_nt:
case Hexagon::J4_cmpgtn1_t_jumpnv_t:
case Hexagon::J4_tstbit0_f_jumpnv_nt:
case Hexagon::J4_tstbit0_f_jumpnv_t:
case Hexagon::J4_tstbit0_t_jumpnv_nt:
case Hexagon::J4_tstbit0_t_jumpnv_t: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(7)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 11;
Value |= (op & UINT64_C(508)) >> 1;
break;
}
case Hexagon::J4_cmpeq_f_jumpnv_nt:
case Hexagon::J4_cmpeq_f_jumpnv_t:
case Hexagon::J4_cmpeq_t_jumpnv_nt:
case Hexagon::J4_cmpeq_t_jumpnv_t:
case Hexagon::J4_cmpeqi_f_jumpnv_nt:
case Hexagon::J4_cmpeqi_f_jumpnv_t:
case Hexagon::J4_cmpeqi_t_jumpnv_nt:
case Hexagon::J4_cmpeqi_t_jumpnv_t:
case Hexagon::J4_cmpgt_f_jumpnv_nt:
case Hexagon::J4_cmpgt_f_jumpnv_t:
case Hexagon::J4_cmpgt_t_jumpnv_nt:
case Hexagon::J4_cmpgt_t_jumpnv_t:
case Hexagon::J4_cmpgti_f_jumpnv_nt:
case Hexagon::J4_cmpgti_f_jumpnv_t:
case Hexagon::J4_cmpgti_t_jumpnv_nt:
case Hexagon::J4_cmpgti_t_jumpnv_t:
case Hexagon::J4_cmpgtu_f_jumpnv_nt:
case Hexagon::J4_cmpgtu_f_jumpnv_t:
case Hexagon::J4_cmpgtu_t_jumpnv_nt:
case Hexagon::J4_cmpgtu_t_jumpnv_t:
case Hexagon::J4_cmpgtui_f_jumpnv_nt:
case Hexagon::J4_cmpgtui_f_jumpnv_t:
case Hexagon::J4_cmpgtui_t_jumpnv_nt:
case Hexagon::J4_cmpgtui_t_jumpnv_t: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(7)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1536)) << 11;
Value |= (op & UINT64_C(508)) >> 1;
break;
}
case Hexagon::S4_pstorerbf_abs:
case Hexagon::S4_pstorerbfnew_abs:
case Hexagon::S4_pstorerbt_abs:
case Hexagon::S4_pstorerbtnew_abs:
case Hexagon::S4_pstorerdf_abs:
case Hexagon::S4_pstorerdfnew_abs:
case Hexagon::S4_pstorerdt_abs:
case Hexagon::S4_pstorerdtnew_abs:
case Hexagon::S4_pstorerff_abs:
case Hexagon::S4_pstorerffnew_abs:
case Hexagon::S4_pstorerft_abs:
case Hexagon::S4_pstorerftnew_abs:
case Hexagon::S4_pstorerhf_abs:
case Hexagon::S4_pstorerhfnew_abs:
case Hexagon::S4_pstorerht_abs:
case Hexagon::S4_pstorerhtnew_abs:
case Hexagon::S4_pstorerif_abs:
case Hexagon::S4_pstorerifnew_abs:
case Hexagon::S4_pstorerit_abs:
case Hexagon::S4_pstoreritnew_abs: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: absaddr
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(48)) << 12;
Value |= (op & UINT64_C(15)) << 3;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S4_pstorerbnewf_abs:
case Hexagon::S4_pstorerbnewfnew_abs:
case Hexagon::S4_pstorerbnewt_abs:
case Hexagon::S4_pstorerbnewtnew_abs:
case Hexagon::S4_pstorerhnewf_abs:
case Hexagon::S4_pstorerhnewfnew_abs:
case Hexagon::S4_pstorerhnewt_abs:
case Hexagon::S4_pstorerhnewtnew_abs:
case Hexagon::S4_pstorerinewf_abs:
case Hexagon::S4_pstorerinewfnew_abs:
case Hexagon::S4_pstorerinewt_abs:
case Hexagon::S4_pstorerinewtnew_abs: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: absaddr
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(48)) << 12;
Value |= (op & UINT64_C(15)) << 3;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S2_pstorerif_io:
case Hexagon::S2_pstorerit_io:
case Hexagon::S4_pstorerifnew_io:
case Hexagon::S4_pstoreritnew_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(128)) << 6;
Value |= (op & UINT64_C(124)) << 1;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_pstorerinewf_io:
case Hexagon::S2_pstorerinewt_io:
case Hexagon::S4_pstorerinewfnew_io:
case Hexagon::S4_pstorerinewtnew_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(128)) << 6;
Value |= (op & UINT64_C(124)) << 1;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S2_pstorerdf_io:
case Hexagon::S2_pstorerdt_io:
case Hexagon::S4_pstorerdfnew_io:
case Hexagon::S4_pstorerdtnew_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(256)) << 5;
Value |= op & UINT64_C(248);
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_pstorerbf_io:
case Hexagon::S2_pstorerbt_io:
case Hexagon::S4_pstorerbfnew_io:
case Hexagon::S4_pstorerbtnew_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(32)) << 8;
Value |= (op & UINT64_C(31)) << 3;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_pstorerbnewf_io:
case Hexagon::S2_pstorerbnewt_io:
case Hexagon::S4_pstorerbnewfnew_io:
case Hexagon::S4_pstorerbnewtnew_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(32)) << 8;
Value |= (op & UINT64_C(31)) << 3;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::S2_pstorerff_io:
case Hexagon::S2_pstorerft_io:
case Hexagon::S2_pstorerhf_io:
case Hexagon::S2_pstorerht_io:
case Hexagon::S4_pstorerffnew_io:
case Hexagon::S4_pstorerftnew_io:
case Hexagon::S4_pstorerhfnew_io:
case Hexagon::S4_pstorerhtnew_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(64)) << 7;
Value |= (op & UINT64_C(62)) << 2;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_pstorerhnewf_io:
case Hexagon::S2_pstorerhnewt_io:
case Hexagon::S4_pstorerhnewfnew_io:
case Hexagon::S4_pstorerhnewtnew_io: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(64)) << 7;
Value |= (op & UINT64_C(62)) << 2;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::V6_vS32Ub_npred_ppu:
case Hexagon::V6_vS32Ub_pred_ppu:
case Hexagon::V6_vS32b_npred_ppu:
case Hexagon::V6_vS32b_nqpred_ppu:
case Hexagon::V6_vS32b_nt_npred_ppu:
case Hexagon::V6_vS32b_nt_nqpred_ppu:
case Hexagon::V6_vS32b_nt_pred_ppu:
case Hexagon::V6_vS32b_nt_qpred_ppu:
case Hexagon::V6_vS32b_pred_ppu:
case Hexagon::V6_vS32b_qpred_ppu: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V6_vS32b_new_npred_ppu:
case Hexagon::V6_vS32b_new_pred_ppu:
case Hexagon::V6_vS32b_nt_new_npred_ppu:
case Hexagon::V6_vS32b_nt_new_pred_ppu: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::V6_vS32Ub_npred_pi:
case Hexagon::V6_vS32Ub_pred_pi:
case Hexagon::V6_vS32b_npred_pi:
case Hexagon::V6_vS32b_nqpred_pi:
case Hexagon::V6_vS32b_nt_npred_pi:
case Hexagon::V6_vS32b_nt_nqpred_pi:
case Hexagon::V6_vS32b_nt_pred_pi:
case Hexagon::V6_vS32b_nt_qpred_pi:
case Hexagon::V6_vS32b_pred_pi:
case Hexagon::V6_vS32b_qpred_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(448)) << 2;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V6_vS32b_new_npred_pi:
case Hexagon::V6_vS32b_new_pred_pi:
case Hexagon::V6_vS32b_nt_new_npred_pi:
case Hexagon::V6_vS32b_nt_new_pred_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(448)) << 2;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::V6_vS32Ub_npred_pi_128B:
case Hexagon::V6_vS32Ub_pred_pi_128B:
case Hexagon::V6_vS32b_npred_pi_128B:
case Hexagon::V6_vS32b_nqpred_pi_128B:
case Hexagon::V6_vS32b_nt_npred_pi_128B:
case Hexagon::V6_vS32b_nt_nqpred_pi_128B:
case Hexagon::V6_vS32b_nt_pred_pi_128B:
case Hexagon::V6_vS32b_nt_qpred_pi_128B:
case Hexagon::V6_vS32b_pred_pi_128B:
case Hexagon::V6_vS32b_qpred_pi_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(896)) << 1;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V6_vS32b_new_npred_pi_128B:
case Hexagon::V6_vS32b_new_pred_pi_128B:
case Hexagon::V6_vS32b_nt_new_npred_pi_128B:
case Hexagon::V6_vS32b_nt_new_pred_pi_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 11;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(896)) << 1;
// op: src4
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::V6_vaddbnq:
case Hexagon::V6_vaddbnq_128B:
case Hexagon::V6_vaddbq:
case Hexagon::V6_vaddbq_128B:
case Hexagon::V6_vaddhnq:
case Hexagon::V6_vaddhnq_128B:
case Hexagon::V6_vaddhq:
case Hexagon::V6_vaddhq_128B:
case Hexagon::V6_vaddwnq:
case Hexagon::V6_vaddwnq_128B:
case Hexagon::V6_vaddwq:
case Hexagon::V6_vaddwq_128B:
case Hexagon::V6_vsubbnq:
case Hexagon::V6_vsubbnq_128B:
case Hexagon::V6_vsubbq:
case Hexagon::V6_vsubbq_128B:
case Hexagon::V6_vsubhnq:
case Hexagon::V6_vsubhnq_128B:
case Hexagon::V6_vsubhq:
case Hexagon::V6_vsubhq_128B:
case Hexagon::V6_vsubwnq:
case Hexagon::V6_vsubwnq_128B:
case Hexagon::V6_vsubwq:
case Hexagon::V6_vsubwq_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 22;
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::V6_vcmov:
case Hexagon::V6_vcmov_128B:
case Hexagon::V6_vncmov:
case Hexagon::V6_vncmov_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::V6_vccombine:
case Hexagon::V6_vccombine_128B:
case Hexagon::V6_vnccombine:
case Hexagon::V6_vnccombine_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(3)) << 5;
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::S2_asl_i_vh:
case Hexagon::S2_asr_i_vh:
case Hexagon::S2_lsr_i_vh: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(15)) << 8;
break;
}
case Hexagon::S2_asl_i_vw:
case Hexagon::S2_asr_i_vw:
case Hexagon::S2_lsr_i_vw: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_asl_i_p:
case Hexagon::S2_asr_i_p:
case Hexagon::S2_asr_i_p_rnd:
case Hexagon::S2_lsr_i_p: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: dst
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(63)) << 8;
break;
}
case Hexagon::S2_storerb_pr:
case Hexagon::S2_storerd_pr:
case Hexagon::S2_storerf_pr:
case Hexagon::S2_storerh_pr:
case Hexagon::S2_storeri_pr: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_storerbnew_pr:
case Hexagon::S2_storerhnew_pr:
case Hexagon::S2_storerinew_pr: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
break;
}
case Hexagon::V6_vS32Ub_ppu:
case Hexagon::V6_vS32b_nt_ppu:
case Hexagon::V6_vS32b_ppu: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V6_vS32b_new_ppu:
case Hexagon::V6_vS32b_nt_new_ppu: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(1)) << 13;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::V6_vS32Ub_pi:
case Hexagon::V6_vS32b_nt_pi:
case Hexagon::V6_vS32b_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(448)) << 2;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V6_vS32b_new_pi:
case Hexagon::V6_vS32b_nt_new_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(448)) << 2;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::V6_vS32Ub_pi_128B:
case Hexagon::V6_vS32b_nt_pi_128B:
case Hexagon::V6_vS32b_pi_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(896)) << 1;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(31);
break;
}
case Hexagon::V6_vS32b_new_pi_128B:
case Hexagon::V6_vS32b_nt_new_pi_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(896)) << 1;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(7);
break;
}
case Hexagon::S2_storerb_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(15)) << 3;
break;
}
case Hexagon::S2_storerf_pi:
case Hexagon::S2_storerh_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(30)) << 2;
break;
}
case Hexagon::S2_storeri_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(60)) << 1;
break;
}
case Hexagon::S2_storerd_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= op & UINT64_C(120);
break;
}
case Hexagon::S2_storerbnew_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(15)) << 3;
break;
}
case Hexagon::S2_storerhnew_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(30)) << 2;
break;
}
case Hexagon::S2_storerinew_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(60)) << 1;
break;
}
case Hexagon::S2_pstorerbf_pi:
case Hexagon::S2_pstorerbfnew_pi:
case Hexagon::S2_pstorerbt_pi:
case Hexagon::S2_pstorerbtnew_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(15)) << 3;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_pstorerff_pi:
case Hexagon::S2_pstorerffnew_pi:
case Hexagon::S2_pstorerft_pi:
case Hexagon::S2_pstorerftnew_pi:
case Hexagon::S2_pstorerhf_pi:
case Hexagon::S2_pstorerhfnew_pi:
case Hexagon::S2_pstorerht_pi:
case Hexagon::S2_pstorerhtnew_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(30)) << 2;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_pstorerif_pi:
case Hexagon::S2_pstorerifnew_pi:
case Hexagon::S2_pstorerit_pi:
case Hexagon::S2_pstoreritnew_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(60)) << 1;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_pstorerdf_pi:
case Hexagon::S2_pstorerdfnew_pi:
case Hexagon::S2_pstorerdt_pi:
case Hexagon::S2_pstorerdtnew_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(120);
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
break;
}
case Hexagon::S2_pstorerbnewf_pi:
case Hexagon::S2_pstorerbnewfnew_pi:
case Hexagon::S2_pstorerbnewt_pi:
case Hexagon::S2_pstorerbnewtnew_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(15)) << 3;
break;
}
case Hexagon::S2_pstorerhnewf_pi:
case Hexagon::S2_pstorerhnewfnew_pi:
case Hexagon::S2_pstorerhnewt_pi:
case Hexagon::S2_pstorerhnewtnew_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(30)) << 2;
break;
}
case Hexagon::S2_pstorerinewf_pi:
case Hexagon::S2_pstorerinewfnew_pi:
case Hexagon::S2_pstorerinewt_pi:
case Hexagon::S2_pstorerinewtnew_pi: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(3);
// op: src2
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(7)) << 8;
// op: offset
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= (op & UINT64_C(60)) << 1;
break;
}
case Hexagon::V6_vdeal:
case Hexagon::V6_vdeal_128B:
case Hexagon::V6_vshuff:
case Hexagon::V6_vshuff_128B: {
// op: src1
op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI);
Value |= (op & UINT64_C(31)) << 8;
// op: src2
op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI);
Value |= op & UINT64_C(31);
// op: src3
op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI);
Value |= (op & UINT64_C(31)) << 16;
break;
}
case Hexagon::S2_allocframe: {
// op: u11_3
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(16376)) >> 3;
break;
}
case Hexagon::V4_SS2_storew_sp: {
// op: u5_2
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(124)) << 2;
// op: Rt
op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI);
Value |= op & UINT64_C(15);
break;
}
case Hexagon::V4_SS2_allocframe: {
// op: u5_3
op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI);
Value |= (op & UINT64_C(248)) << 1;
break;
}
default:
std::string msg;
raw_string_ostream Msg(msg);
Msg << "Not supported instr: " << MI;
report_fatal_error(Msg.str());
}
return Value;
}