1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* Machine Code Emitter *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* *|
7\*===----------------------------------------------------------------------===*/
8
9uint64_t HexagonMCCodeEmitter::getBinaryCodeForInstr(const MCInst &MI,
10 SmallVectorImpl<MCFixup> &Fixups,
11 const MCSubtargetInfo &STI) const {
12 static const uint64_t InstBits[] = {
13 UINT64_C(2357198976), // A2_abs
14 UINT64_C(2155872448), // A2_absp
15 UINT64_C(2357199008), // A2_abssat
16 UINT64_C(4076863488), // A2_add
17 UINT64_C(3577741408), // A2_addh_h16_hh
18 UINT64_C(3577741376), // A2_addh_h16_hl
19 UINT64_C(3577741344), // A2_addh_h16_lh
20 UINT64_C(3577741312), // A2_addh_h16_ll
21 UINT64_C(3577741536), // A2_addh_h16_sat_hh
22 UINT64_C(3577741504), // A2_addh_h16_sat_hl
23 UINT64_C(3577741472), // A2_addh_h16_sat_lh
24 UINT64_C(3577741440), // A2_addh_h16_sat_ll
25 UINT64_C(3573547072), // A2_addh_l16_hl
26 UINT64_C(3573547008), // A2_addh_l16_ll
27 UINT64_C(3573547200), // A2_addh_l16_sat_hl
28 UINT64_C(3573547136), // A2_addh_l16_sat_ll
29 UINT64_C(2952790016), // A2_addi
30 UINT64_C(3539992800), // A2_addp
31 UINT64_C(3546284192), // A2_addpsat
32 UINT64_C(4131389440), // A2_addsat
33 UINT64_C(3546284256), // A2_addsph
34 UINT64_C(3546284224), // A2_addspl
35 UINT64_C(4043309056), // A2_and
36 UINT64_C(1979711488), // A2_andir
37 UINT64_C(3554672640), // A2_andp
38 UINT64_C(1879048192), // A2_aslh
39 UINT64_C(1881145344), // A2_asrh
40 UINT64_C(4085252096), // A2_combine_hh
41 UINT64_C(4087349248), // A2_combine_hl
42 UINT64_C(4089446400), // A2_combine_lh
43 UINT64_C(4091543552), // A2_combine_ll
44 UINT64_C(2080374784), // A2_combineii
45 UINT64_C(4110417920), // A2_combinew
46 UINT64_C(3586129920), // A2_max
47 UINT64_C(3552575616), // A2_maxp
48 UINT64_C(3586130048), // A2_maxu
49 UINT64_C(3552575648), // A2_maxup
50 UINT64_C(3584032768), // A2_min
51 UINT64_C(3550478528), // A2_minp
52 UINT64_C(3584032896), // A2_minu
53 UINT64_C(3550478560), // A2_minup
54 UINT64_C(2155872416), // A2_negp
55 UINT64_C(2357199040), // A2_negsat
56 UINT64_C(2130706432), // A2_nop
57 UINT64_C(2155872384), // A2_notp
58 UINT64_C(4045406208), // A2_or
59 UINT64_C(1988100096), // A2_orir
60 UINT64_C(3554672704), // A2_orp
61 UINT64_C(4211081344), // A2_paddf
62 UINT64_C(4211089536), // A2_paddfnew
63 UINT64_C(1954545664), // A2_paddif
64 UINT64_C(1954553856), // A2_paddifnew
65 UINT64_C(1946157056), // A2_paddit
66 UINT64_C(1946165248), // A2_padditnew
67 UINT64_C(4211081216), // A2_paddt
68 UINT64_C(4211089408), // A2_paddtnew
69 UINT64_C(4177526912), // A2_pandf
70 UINT64_C(4177535104), // A2_pandfnew
71 UINT64_C(4177526784), // A2_pandt
72 UINT64_C(4177534976), // A2_pandtnew
73 UINT64_C(4179624064), // A2_porf
74 UINT64_C(4179632256), // A2_porfnew
75 UINT64_C(4179623936), // A2_port
76 UINT64_C(4179632128), // A2_portnew
77 UINT64_C(4213178496), // A2_psubf
78 UINT64_C(4213186688), // A2_psubfnew
79 UINT64_C(4213178368), // A2_psubt
80 UINT64_C(4213186560), // A2_psubtnew
81 UINT64_C(4183818368), // A2_pxorf
82 UINT64_C(4183826560), // A2_pxorfnew
83 UINT64_C(4183818240), // A2_pxort
84 UINT64_C(4183826432), // A2_pxortnew
85 UINT64_C(2294284320), // A2_roundsat
86 UINT64_C(2294284288), // A2_sat
87 UINT64_C(2361393376), // A2_satb
88 UINT64_C(2361393280), // A2_sath
89 UINT64_C(2361393344), // A2_satub
90 UINT64_C(2361393312), // A2_satuh
91 UINT64_C(4078960640), // A2_sub
92 UINT64_C(3579838560), // A2_subh_h16_hh
93 UINT64_C(3579838528), // A2_subh_h16_hl
94 UINT64_C(3579838496), // A2_subh_h16_lh
95 UINT64_C(3579838464), // A2_subh_h16_ll
96 UINT64_C(3579838688), // A2_subh_h16_sat_hh
97 UINT64_C(3579838656), // A2_subh_h16_sat_hl
98 UINT64_C(3579838624), // A2_subh_h16_sat_lh
99 UINT64_C(3579838592), // A2_subh_h16_sat_ll
100 UINT64_C(3575644224), // A2_subh_l16_hl
101 UINT64_C(3575644160), // A2_subh_l16_ll
102 UINT64_C(3575644352), // A2_subh_l16_sat_hl
103 UINT64_C(3575644288), // A2_subh_l16_sat_ll
104 UINT64_C(3542089952), // A2_subp
105 UINT64_C(1983905792), // A2_subri
106 UINT64_C(4139778048), // A2_subsat
107 UINT64_C(4127195136), // A2_svaddh
108 UINT64_C(4129292288), // A2_svaddhs
109 UINT64_C(4133486592), // A2_svadduhs
110 UINT64_C(4143972352), // A2_svavgh
111 UINT64_C(4146069504), // A2_svavghs
112 UINT64_C(4150263808), // A2_svnavgh
113 UINT64_C(4135583744), // A2_svsubh
114 UINT64_C(4137680896), // A2_svsubhs
115 UINT64_C(4141875200), // A2_svsubuhs
116 UINT64_C(2357199072), // A2_swiz
117 UINT64_C(1889533952), // A2_sxtb
118 UINT64_C(1893728256), // A2_sxth
119 UINT64_C(2218786816), // A2_sxtw
120 UINT64_C(1885339648), // A2_tfr
121 UINT64_C(1778384896), // A2_tfrcrr
122 UINT64_C(1914699776), // A2_tfrih
123 UINT64_C(1897922560), // A2_tfril
124 UINT64_C(1646264320), // A2_tfrrcr
125 UINT64_C(2013265920), // A2_tfrsi
126 UINT64_C(2151678080), // A2_vabsh
127 UINT64_C(2151678112), // A2_vabshsat
128 UINT64_C(2151678144), // A2_vabsw
129 UINT64_C(2151678176), // A2_vabswsat
130 UINT64_C(3539992640), // A2_vaddh
131 UINT64_C(3539992672), // A2_vaddhs
132 UINT64_C(3539992576), // A2_vaddub
133 UINT64_C(3539992608), // A2_vaddubs
134 UINT64_C(3539992704), // A2_vadduhs
135 UINT64_C(3539992736), // A2_vaddw
136 UINT64_C(3539992768), // A2_vaddws
137 UINT64_C(3544186944), // A2_vavgh
138 UINT64_C(3544187008), // A2_vavghcr
139 UINT64_C(3544186976), // A2_vavghr
140 UINT64_C(3544186880), // A2_vavgub
141 UINT64_C(3544186912), // A2_vavgubr
142 UINT64_C(3544187040), // A2_vavguh
143 UINT64_C(3544187072), // A2_vavguhr
144 UINT64_C(3546284128), // A2_vavguw
145 UINT64_C(3546284160), // A2_vavguwr
146 UINT64_C(3546284032), // A2_vavgw
147 UINT64_C(3546284096), // A2_vavgwcr
148 UINT64_C(3546284064), // A2_vavgwr
149 UINT64_C(3523215552), // A2_vcmpbeq
150 UINT64_C(3523215584), // A2_vcmpbgtu
151 UINT64_C(3523215456), // A2_vcmpheq
152 UINT64_C(3523215488), // A2_vcmphgt
153 UINT64_C(3523215520), // A2_vcmphgtu
154 UINT64_C(3523215360), // A2_vcmpweq
155 UINT64_C(3523215392), // A2_vcmpwgt
156 UINT64_C(3523215424), // A2_vcmpwgtu
157 UINT64_C(2155872480), // A2_vconj
158 UINT64_C(3552575680), // A2_vmaxb
159 UINT64_C(3552575520), // A2_vmaxh
160 UINT64_C(3552575488), // A2_vmaxub
161 UINT64_C(3552575552), // A2_vmaxuh
162 UINT64_C(3550478496), // A2_vmaxuw
163 UINT64_C(3552575584), // A2_vmaxw
164 UINT64_C(3552575712), // A2_vminb
165 UINT64_C(3550478368), // A2_vminh
166 UINT64_C(3550478336), // A2_vminub
167 UINT64_C(3550478400), // A2_vminuh
168 UINT64_C(3550478464), // A2_vminuw
169 UINT64_C(3550478432), // A2_vminw
170 UINT64_C(3548381184), // A2_vnavgh
171 UINT64_C(3548381248), // A2_vnavghcr
172 UINT64_C(3548381216), // A2_vnavghr
173 UINT64_C(3548381280), // A2_vnavgw
174 UINT64_C(3548381376), // A2_vnavgwcr
175 UINT64_C(3548381312), // A2_vnavgwr
176 UINT64_C(3896508448), // A2_vraddub
177 UINT64_C(3930062880), // A2_vraddub_acc
178 UINT64_C(3896508480), // A2_vrsadub
179 UINT64_C(3930062912), // A2_vrsadub_acc
180 UINT64_C(3542089792), // A2_vsubh
181 UINT64_C(3542089824), // A2_vsubhs
182 UINT64_C(3542089728), // A2_vsubub
183 UINT64_C(3542089760), // A2_vsububs
184 UINT64_C(3542089856), // A2_vsubuhs
185 UINT64_C(3542089888), // A2_vsubw
186 UINT64_C(3542089920), // A2_vsubws
187 UINT64_C(4049600512), // A2_xor
188 UINT64_C(3554672768), // A2_xorp
189 UINT64_C(1891631104), // A2_zxth
190 UINT64_C(3267362816), // A4_addp_c
191 UINT64_C(4051697664), // A4_andn
192 UINT64_C(3554672672), // A4_andnp
193 UINT64_C(3558866944), // A4_bitsplit
194 UINT64_C(2294284416), // A4_bitspliti
195 UINT64_C(3523223712), // A4_boundscheck_hi
196 UINT64_C(3523223680), // A4_boundscheck_lo
197 UINT64_C(3351249088), // A4_cmpbeq
198 UINT64_C(3707764736), // A4_cmpbeqi
199 UINT64_C(3351248960), // A4_cmpbgt
200 UINT64_C(3709861888), // A4_cmpbgti
201 UINT64_C(3351249120), // A4_cmpbgtu
202 UINT64_C(3711959040), // A4_cmpbgtui
203 UINT64_C(3351248992), // A4_cmpheq
204 UINT64_C(3707764744), // A4_cmpheqi
205 UINT64_C(3351249024), // A4_cmphgt
206 UINT64_C(3709861896), // A4_cmphgti
207 UINT64_C(3351249056), // A4_cmphgtu
208 UINT64_C(3711959048), // A4_cmphgtui
209 UINT64_C(2088763392), // A4_combineii
210 UINT64_C(1931485184), // A4_combineir
211 UINT64_C(1929388032), // A4_combineri
212 UINT64_C(2363490304), // A4_cround_ri
213 UINT64_C(3334471680), // A4_cround_rr
214 UINT64_C(0), // A4_ext
215 UINT64_C(3554672864), // A4_modwrapu
216 UINT64_C(4053794816), // A4_orn
217 UINT64_C(3554672736), // A4_ornp
218 UINT64_C(1879058432), // A4_paslhf
219 UINT64_C(1879059456), // A4_paslhfnew
220 UINT64_C(1879056384), // A4_paslht
221 UINT64_C(1879057408), // A4_paslhtnew
222 UINT64_C(1881155584), // A4_pasrhf
223 UINT64_C(1881156608), // A4_pasrhfnew
224 UINT64_C(1881153536), // A4_pasrht
225 UINT64_C(1881154560), // A4_pasrhtnew
226 UINT64_C(1889544192), // A4_psxtbf
227 UINT64_C(1889545216), // A4_psxtbfnew
228 UINT64_C(1889542144), // A4_psxtbt
229 UINT64_C(1889543168), // A4_psxtbtnew
230 UINT64_C(1893738496), // A4_psxthf
231 UINT64_C(1893739520), // A4_psxthfnew
232 UINT64_C(1893736448), // A4_psxtht
233 UINT64_C(1893737472), // A4_psxthtnew
234 UINT64_C(1887447040), // A4_pzxtbf
235 UINT64_C(1887448064), // A4_pzxtbfnew
236 UINT64_C(1887444992), // A4_pzxtbt
237 UINT64_C(1887446016), // A4_pzxtbtnew
238 UINT64_C(1891641344), // A4_pzxthf
239 UINT64_C(1891642368), // A4_pzxthfnew
240 UINT64_C(1891639296), // A4_pzxtht
241 UINT64_C(1891640320), // A4_pzxthtnew
242 UINT64_C(4081057792), // A4_rcmpeq
243 UINT64_C(1933582336), // A4_rcmpeqi
244 UINT64_C(4083154944), // A4_rcmpneq
245 UINT64_C(1935679488), // A4_rcmpneqi
246 UINT64_C(2363490432), // A4_round_ri
247 UINT64_C(2363490496), // A4_round_ri_sat
248 UINT64_C(3334471808), // A4_round_rr
249 UINT64_C(3334471872), // A4_round_rr_sat
250 UINT64_C(3269459968), // A4_subp_c
251 UINT64_C(1744830464), // A4_tfrcpp
252 UINT64_C(1663041536), // A4_tfrpcp
253 UINT64_C(3523223648), // A4_tlbmatch
254 UINT64_C(3523223552), // A4_vcmpbeq_any
255 UINT64_C(3690987520), // A4_vcmpbeqi
256 UINT64_C(3523223616), // A4_vcmpbgt
257 UINT64_C(3693084672), // A4_vcmpbgti
258 UINT64_C(3695181824), // A4_vcmpbgtui
259 UINT64_C(3690987528), // A4_vcmpheqi
260 UINT64_C(3693084680), // A4_vcmphgti
261 UINT64_C(3695181832), // A4_vcmphgtui
262 UINT64_C(3690987536), // A4_vcmpweqi
263 UINT64_C(3693084688), // A4_vcmpwgti
264 UINT64_C(3695181840), // A4_vcmpwgtui
265 UINT64_C(3407872032), // A4_vrmaxh
266 UINT64_C(3407880224), // A4_vrmaxuh
267 UINT64_C(3407880256), // A4_vrmaxuw
268 UINT64_C(3407872064), // A4_vrmaxw
269 UINT64_C(3407872160), // A4_vrminh
270 UINT64_C(3407880352), // A4_vrminuh
271 UINT64_C(3407880384), // A4_vrminuw
272 UINT64_C(3407872192), // A4_vrminw
273 UINT64_C(3936354304), // A5_ACS
274 UINT64_C(3242197024), // A5_vaddhubs
275 UINT64_C(3523223584), // A6_vcmpbeq_notany
276 UINT64_C(3940548608), // A6_vminub_RdP
277 UINT64_C(2294284448), // A7_clip
278 UINT64_C(2363490368), // A7_croundd_ri
279 UINT64_C(3334471744), // A7_croundd_rr
280 UINT64_C(2294284480), // A7_vclip
281 UINT64_C(1805647872), // C2_all8
282 UINT64_C(1795162112), // C2_and
283 UINT64_C(1801453568), // C2_andn
284 UINT64_C(1803550720), // C2_any8
285 UINT64_C(3347054592), // C2_bitsclr
286 UINT64_C(2239758336), // C2_bitsclri
287 UINT64_C(3342860288), // C2_bitsset
288 UINT64_C(4244635776), // C2_ccombinewf
289 UINT64_C(4244643968), // C2_ccombinewnewf
290 UINT64_C(4244643840), // C2_ccombinewnewt
291 UINT64_C(4244635648), // C2_ccombinewt
292 UINT64_C(2122317824), // C2_cmoveif
293 UINT64_C(2113929216), // C2_cmoveit
294 UINT64_C(2122326016), // C2_cmovenewif
295 UINT64_C(2113937408), // C2_cmovenewit
296 UINT64_C(4060086272), // C2_cmpeq
297 UINT64_C(1962934272), // C2_cmpeqi
298 UINT64_C(3531603968), // C2_cmpeqp
299 UINT64_C(4064280576), // C2_cmpgt
300 UINT64_C(1967128576), // C2_cmpgti
301 UINT64_C(3531604032), // C2_cmpgtp
302 UINT64_C(4066377728), // C2_cmpgtu
303 UINT64_C(1971322880), // C2_cmpgtui
304 UINT64_C(3531604096), // C2_cmpgtup
305 UINT64_C(2248146944), // C2_mask
306 UINT64_C(4093640704), // C2_mux
307 UINT64_C(2046820352), // C2_muxii
308 UINT64_C(1929379840), // C2_muxir
309 UINT64_C(1937768448), // C2_muxri
310 UINT64_C(1807745024), // C2_not
311 UINT64_C(1797259264), // C2_or
312 UINT64_C(1809842176), // C2_orn
313 UINT64_C(2302672896), // C2_tfrpr
314 UINT64_C(2235564032), // C2_tfrrp
315 UINT64_C(2298478592), // C2_vitpack
316 UINT64_C(3506438144), // C2_vmux
317 UINT64_C(1799356416), // C2_xor
318 UINT64_C(1783169024), // C4_addipc
319 UINT64_C(1796210688), // C4_and_and
320 UINT64_C(1804599296), // C4_and_andn
321 UINT64_C(1798307840), // C4_and_or
322 UINT64_C(1806696448), // C4_and_orn
323 UINT64_C(4064280592), // C4_cmplte
324 UINT64_C(1967128592), // C4_cmpltei
325 UINT64_C(4066377744), // C4_cmplteu
326 UINT64_C(1971322896), // C4_cmplteui
327 UINT64_C(4060086288), // C4_cmpneq
328 UINT64_C(1962934288), // C4_cmpneqi
329 UINT64_C(1795170448), // C4_fastcorner9
330 UINT64_C(1796219024), // C4_fastcorner9_not
331 UINT64_C(3349151744), // C4_nbitsclr
332 UINT64_C(2241855488), // C4_nbitsclri
333 UINT64_C(3344957440), // C4_nbitsset
334 UINT64_C(1800404992), // C4_or_and
335 UINT64_C(1808793600), // C4_or_andn
336 UINT64_C(1802502144), // C4_or_or
337 UINT64_C(1810890752), // C4_or_orn
338 UINT64_C(1509949440), // CALLProfile
339 UINT64_C(0), // CONST32
340 UINT64_C(0), // CONST64
341 UINT64_C(0), // DuplexIClass0
342 UINT64_C(8192), // DuplexIClass1
343 UINT64_C(536870912), // DuplexIClass2
344 UINT64_C(536879104), // DuplexIClass3
345 UINT64_C(1073741824), // DuplexIClass4
346 UINT64_C(1073750016), // DuplexIClass5
347 UINT64_C(1610612736), // DuplexIClass6
348 UINT64_C(1610620928), // DuplexIClass7
349 UINT64_C(2147483648), // DuplexIClass8
350 UINT64_C(2147491840), // DuplexIClass9
351 UINT64_C(2684354560), // DuplexIClassA
352 UINT64_C(2684362752), // DuplexIClassB
353 UINT64_C(3221225472), // DuplexIClassC
354 UINT64_C(3221233664), // DuplexIClassD
355 UINT64_C(3758096384), // DuplexIClassE
356 UINT64_C(3758104576), // DuplexIClassF
357 UINT64_C(1384120320), // EH_RETURN_JMPR
358 UINT64_C(2162163808), // F2_conv_d2df
359 UINT64_C(2285895712), // F2_conv_d2sf
360 UINT64_C(2162163712), // F2_conv_df2d
361 UINT64_C(2162163904), // F2_conv_df2d_chop
362 UINT64_C(2281701408), // F2_conv_df2sf
363 UINT64_C(2162163744), // F2_conv_df2ud
364 UINT64_C(2162163936), // F2_conv_df2ud_chop
365 UINT64_C(2287992864), // F2_conv_df2uw
366 UINT64_C(2292187168), // F2_conv_df2uw_chop
367 UINT64_C(2290090016), // F2_conv_df2w
368 UINT64_C(2296381472), // F2_conv_df2w_chop
369 UINT64_C(2222981248), // F2_conv_sf2d
370 UINT64_C(2222981312), // F2_conv_sf2d_chop
371 UINT64_C(2222981120), // F2_conv_sf2df
372 UINT64_C(2222981216), // F2_conv_sf2ud
373 UINT64_C(2222981280), // F2_conv_sf2ud_chop
374 UINT64_C(2338324480), // F2_conv_sf2uw
375 UINT64_C(2338324512), // F2_conv_sf2uw_chop
376 UINT64_C(2340421632), // F2_conv_sf2w
377 UINT64_C(2340421664), // F2_conv_sf2w_chop
378 UINT64_C(2162163776), // F2_conv_ud2df
379 UINT64_C(2283798560), // F2_conv_ud2sf
380 UINT64_C(2222981152), // F2_conv_uw2df
381 UINT64_C(2334130176), // F2_conv_uw2sf
382 UINT64_C(2222981184), // F2_conv_w2df
383 UINT64_C(2336227328), // F2_conv_w2sf
384 UINT64_C(3892314208), // F2_dfadd
385 UINT64_C(3699376144), // F2_dfclass
386 UINT64_C(3537895424), // F2_dfcmpeq
387 UINT64_C(3537895488), // F2_dfcmpge
388 UINT64_C(3537895456), // F2_dfcmpgt
389 UINT64_C(3537895520), // F2_dfcmpuo
390 UINT64_C(3644850176), // F2_dfimm_n
391 UINT64_C(3640655872), // F2_dfimm_p
392 UINT64_C(3894411360), // F2_dfmax
393 UINT64_C(3904897120), // F2_dfmin
394 UINT64_C(3896508512), // F2_dfmpyfix
395 UINT64_C(3934257248), // F2_dfmpyhh
396 UINT64_C(3925868640), // F2_dfmpylh
397 UINT64_C(3902799968), // F2_dfmpyll
398 UINT64_C(3900702816), // F2_dfsub
399 UINT64_C(3942645760), // F2_sfadd
400 UINT64_C(2246049792), // F2_sfclass
401 UINT64_C(3353346144), // F2_sfcmpeq
402 UINT64_C(3353346048), // F2_sfcmpge
403 UINT64_C(3353346176), // F2_sfcmpgt
404 UINT64_C(3353346080), // F2_sfcmpuo
405 UINT64_C(3955228704), // F2_sffixupd
406 UINT64_C(3955228672), // F2_sffixupn
407 UINT64_C(2342518784), // F2_sffixupr
408 UINT64_C(4009754752), // F2_sffma
409 UINT64_C(4009754816), // F2_sffma_lib
410 UINT64_C(4016046208), // F2_sffma_sc
411 UINT64_C(4009754784), // F2_sffms
412 UINT64_C(4009754848), // F2_sffms_lib
413 UINT64_C(3594518528), // F2_sfimm_n
414 UINT64_C(3590324224), // F2_sfimm_p
415 UINT64_C(2346713088), // F2_sfinvsqrta
416 UINT64_C(3951034368), // F2_sfmax
417 UINT64_C(3951034400), // F2_sfmin
418 UINT64_C(3946840064), // F2_sfmpy
419 UINT64_C(3957325952), // F2_sfrecipa
420 UINT64_C(3942645792), // F2_sfsub
421 UINT64_C(1746927616), // G4_tfrgcpp
422 UINT64_C(1780482048), // G4_tfrgcrr
423 UINT64_C(1660944384), // G4_tfrgpcp
424 UINT64_C(1644167168), // G4_tfrgrcr
425 UINT64_C(35651584), // HI
426 UINT64_C(1509949440), // J2_call
427 UINT64_C(1562378240), // J2_callf
428 UINT64_C(1352663040), // J2_callr
429 UINT64_C(1361051648), // J2_callrf
430 UINT64_C(1354760192), // J2_callrh
431 UINT64_C(1358954496), // J2_callrt
432 UINT64_C(1560281088), // J2_callt
433 UINT64_C(1476395008), // J2_jump
434 UINT64_C(1545601024), // J2_jumpf
435 UINT64_C(1545603072), // J2_jumpfnew
436 UINT64_C(1545607168), // J2_jumpfnewpt
437 UINT64_C(1545605120), // J2_jumpfpt
438 UINT64_C(1384120320), // J2_jumpr
439 UINT64_C(1398800384), // J2_jumprf
440 UINT64_C(1398802432), // J2_jumprfnew
441 UINT64_C(1398806528), // J2_jumprfnewpt
442 UINT64_C(1398804480), // J2_jumprfpt
443 UINT64_C(1631584256), // J2_jumprgtez
444 UINT64_C(1631588352), // J2_jumprgtezpt
445 UINT64_C(1388314624), // J2_jumprh
446 UINT64_C(1639972864), // J2_jumprltez
447 UINT64_C(1639976960), // J2_jumprltezpt
448 UINT64_C(1635778560), // J2_jumprnz
449 UINT64_C(1635782656), // J2_jumprnzpt
450 UINT64_C(1396703232), // J2_jumprt
451 UINT64_C(1396705280), // J2_jumprtnew
452 UINT64_C(1396709376), // J2_jumprtnewpt
453 UINT64_C(1396707328), // J2_jumprtpt
454 UINT64_C(1627389952), // J2_jumprz
455 UINT64_C(1627394048), // J2_jumprzpt
456 UINT64_C(1543503872), // J2_jumpt
457 UINT64_C(1543505920), // J2_jumptnew
458 UINT64_C(1543510016), // J2_jumptnewpt
459 UINT64_C(1543507968), // J2_jumptpt
460 UINT64_C(1761607680), // J2_loop0i
461 UINT64_C(1761607680), // J2_loop0iext
462 UINT64_C(1610612736), // J2_loop0r
463 UINT64_C(1610612736), // J2_loop0rext
464 UINT64_C(1763704832), // J2_loop1i
465 UINT64_C(1763704832), // J2_loop1iext
466 UINT64_C(1612709888), // J2_loop1r
467 UINT64_C(1612709888), // J2_loop1rext
468 UINT64_C(1413480448), // J2_pause
469 UINT64_C(1772093440), // J2_ploop1si
470 UINT64_C(1621098496), // J2_ploop1sr
471 UINT64_C(1774190592), // J2_ploop2si
472 UINT64_C(1623195648), // J2_ploop2sr
473 UINT64_C(1776287744), // J2_ploop3si
474 UINT64_C(1625292800), // J2_ploop3sr
475 UINT64_C(1474297856), // J2_rte
476 UINT64_C(1409286144), // J2_trap0
477 UINT64_C(1417674752), // J2_trap1
478 UINT64_C(1474301952), // J2_unpause
479 UINT64_C(541065216), // J4_cmpeq_f_jumpnv_nt
480 UINT64_C(541073408), // J4_cmpeq_f_jumpnv_t
481 UINT64_C(339738624), // J4_cmpeq_fp0_jump_nt
482 UINT64_C(339746816), // J4_cmpeq_fp0_jump_t
483 UINT64_C(339742720), // J4_cmpeq_fp1_jump_nt
484 UINT64_C(339750912), // J4_cmpeq_fp1_jump_t
485 UINT64_C(536870912), // J4_cmpeq_t_jumpnv_nt
486 UINT64_C(536879104), // J4_cmpeq_t_jumpnv_t
487 UINT64_C(335544320), // J4_cmpeq_tp0_jump_nt
488 UINT64_C(335552512), // J4_cmpeq_tp0_jump_t
489 UINT64_C(335548416), // J4_cmpeq_tp1_jump_nt
490 UINT64_C(335556608), // J4_cmpeq_tp1_jump_t
491 UINT64_C(608174080), // J4_cmpeqi_f_jumpnv_nt
492 UINT64_C(608182272), // J4_cmpeqi_f_jumpnv_t
493 UINT64_C(272629760), // J4_cmpeqi_fp0_jump_nt
494 UINT64_C(272637952), // J4_cmpeqi_fp0_jump_t
495 UINT64_C(306184192), // J4_cmpeqi_fp1_jump_nt
496 UINT64_C(306192384), // J4_cmpeqi_fp1_jump_t
497 UINT64_C(603979776), // J4_cmpeqi_t_jumpnv_nt
498 UINT64_C(603987968), // J4_cmpeqi_t_jumpnv_t
499 UINT64_C(268435456), // J4_cmpeqi_tp0_jump_nt
500 UINT64_C(268443648), // J4_cmpeqi_tp0_jump_t
501 UINT64_C(301989888), // J4_cmpeqi_tp1_jump_nt
502 UINT64_C(301998080), // J4_cmpeqi_tp1_jump_t
503 UINT64_C(641728512), // J4_cmpeqn1_f_jumpnv_nt
504 UINT64_C(641736704), // J4_cmpeqn1_f_jumpnv_t
505 UINT64_C(297795584), // J4_cmpeqn1_fp0_jump_nt
506 UINT64_C(297803776), // J4_cmpeqn1_fp0_jump_t
507 UINT64_C(331350016), // J4_cmpeqn1_fp1_jump_nt
508 UINT64_C(331358208), // J4_cmpeqn1_fp1_jump_t
509 UINT64_C(637534208), // J4_cmpeqn1_t_jumpnv_nt
510 UINT64_C(637542400), // J4_cmpeqn1_t_jumpnv_t
511 UINT64_C(293601280), // J4_cmpeqn1_tp0_jump_nt
512 UINT64_C(293609472), // J4_cmpeqn1_tp0_jump_t
513 UINT64_C(327155712), // J4_cmpeqn1_tp1_jump_nt
514 UINT64_C(327163904), // J4_cmpeqn1_tp1_jump_t
515 UINT64_C(549453824), // J4_cmpgt_f_jumpnv_nt
516 UINT64_C(549462016), // J4_cmpgt_f_jumpnv_t
517 UINT64_C(348127232), // J4_cmpgt_fp0_jump_nt
518 UINT64_C(348135424), // J4_cmpgt_fp0_jump_t
519 UINT64_C(348131328), // J4_cmpgt_fp1_jump_nt
520 UINT64_C(348139520), // J4_cmpgt_fp1_jump_t
521 UINT64_C(545259520), // J4_cmpgt_t_jumpnv_nt
522 UINT64_C(545267712), // J4_cmpgt_t_jumpnv_t
523 UINT64_C(343932928), // J4_cmpgt_tp0_jump_nt
524 UINT64_C(343941120), // J4_cmpgt_tp0_jump_t
525 UINT64_C(343937024), // J4_cmpgt_tp1_jump_nt
526 UINT64_C(343945216), // J4_cmpgt_tp1_jump_t
527 UINT64_C(616562688), // J4_cmpgti_f_jumpnv_nt
528 UINT64_C(616570880), // J4_cmpgti_f_jumpnv_t
529 UINT64_C(281018368), // J4_cmpgti_fp0_jump_nt
530 UINT64_C(281026560), // J4_cmpgti_fp0_jump_t
531 UINT64_C(314572800), // J4_cmpgti_fp1_jump_nt
532 UINT64_C(314580992), // J4_cmpgti_fp1_jump_t
533 UINT64_C(612368384), // J4_cmpgti_t_jumpnv_nt
534 UINT64_C(612376576), // J4_cmpgti_t_jumpnv_t
535 UINT64_C(276824064), // J4_cmpgti_tp0_jump_nt
536 UINT64_C(276832256), // J4_cmpgti_tp0_jump_t
537 UINT64_C(310378496), // J4_cmpgti_tp1_jump_nt
538 UINT64_C(310386688), // J4_cmpgti_tp1_jump_t
539 UINT64_C(650117120), // J4_cmpgtn1_f_jumpnv_nt
540 UINT64_C(650125312), // J4_cmpgtn1_f_jumpnv_t
541 UINT64_C(297795840), // J4_cmpgtn1_fp0_jump_nt
542 UINT64_C(297804032), // J4_cmpgtn1_fp0_jump_t
543 UINT64_C(331350272), // J4_cmpgtn1_fp1_jump_nt
544 UINT64_C(331358464), // J4_cmpgtn1_fp1_jump_t
545 UINT64_C(645922816), // J4_cmpgtn1_t_jumpnv_nt
546 UINT64_C(645931008), // J4_cmpgtn1_t_jumpnv_t
547 UINT64_C(293601536), // J4_cmpgtn1_tp0_jump_nt
548 UINT64_C(293609728), // J4_cmpgtn1_tp0_jump_t
549 UINT64_C(327155968), // J4_cmpgtn1_tp1_jump_nt
550 UINT64_C(327164160), // J4_cmpgtn1_tp1_jump_t
551 UINT64_C(557842432), // J4_cmpgtu_f_jumpnv_nt
552 UINT64_C(557850624), // J4_cmpgtu_f_jumpnv_t
553 UINT64_C(356515840), // J4_cmpgtu_fp0_jump_nt
554 UINT64_C(356524032), // J4_cmpgtu_fp0_jump_t
555 UINT64_C(356519936), // J4_cmpgtu_fp1_jump_nt
556 UINT64_C(356528128), // J4_cmpgtu_fp1_jump_t
557 UINT64_C(553648128), // J4_cmpgtu_t_jumpnv_nt
558 UINT64_C(553656320), // J4_cmpgtu_t_jumpnv_t
559 UINT64_C(352321536), // J4_cmpgtu_tp0_jump_nt
560 UINT64_C(352329728), // J4_cmpgtu_tp0_jump_t
561 UINT64_C(352325632), // J4_cmpgtu_tp1_jump_nt
562 UINT64_C(352333824), // J4_cmpgtu_tp1_jump_t
563 UINT64_C(624951296), // J4_cmpgtui_f_jumpnv_nt
564 UINT64_C(624959488), // J4_cmpgtui_f_jumpnv_t
565 UINT64_C(289406976), // J4_cmpgtui_fp0_jump_nt
566 UINT64_C(289415168), // J4_cmpgtui_fp0_jump_t
567 UINT64_C(322961408), // J4_cmpgtui_fp1_jump_nt
568 UINT64_C(322969600), // J4_cmpgtui_fp1_jump_t
569 UINT64_C(620756992), // J4_cmpgtui_t_jumpnv_nt
570 UINT64_C(620765184), // J4_cmpgtui_t_jumpnv_t
571 UINT64_C(285212672), // J4_cmpgtui_tp0_jump_nt
572 UINT64_C(285220864), // J4_cmpgtui_tp0_jump_t
573 UINT64_C(318767104), // J4_cmpgtui_tp1_jump_nt
574 UINT64_C(318775296), // J4_cmpgtui_tp1_jump_t
575 UINT64_C(566231040), // J4_cmplt_f_jumpnv_nt
576 UINT64_C(566239232), // J4_cmplt_f_jumpnv_t
577 UINT64_C(562036736), // J4_cmplt_t_jumpnv_nt
578 UINT64_C(562044928), // J4_cmplt_t_jumpnv_t
579 UINT64_C(574619648), // J4_cmpltu_f_jumpnv_nt
580 UINT64_C(574627840), // J4_cmpltu_f_jumpnv_t
581 UINT64_C(570425344), // J4_cmpltu_t_jumpnv_nt
582 UINT64_C(570433536), // J4_cmpltu_t_jumpnv_t
583 UINT64_C(1386217472), // J4_hintjumpr
584 UINT64_C(369098752), // J4_jumpseti
585 UINT64_C(385875968), // J4_jumpsetr
586 UINT64_C(633339904), // J4_tstbit0_f_jumpnv_nt
587 UINT64_C(633348096), // J4_tstbit0_f_jumpnv_t
588 UINT64_C(297796352), // J4_tstbit0_fp0_jump_nt
589 UINT64_C(297804544), // J4_tstbit0_fp0_jump_t
590 UINT64_C(331350784), // J4_tstbit0_fp1_jump_nt
591 UINT64_C(331358976), // J4_tstbit0_fp1_jump_t
592 UINT64_C(629145600), // J4_tstbit0_t_jumpnv_nt
593 UINT64_C(629153792), // J4_tstbit0_t_jumpnv_t
594 UINT64_C(293602048), // J4_tstbit0_tp0_jump_nt
595 UINT64_C(293610240), // J4_tstbit0_tp0_jump_t
596 UINT64_C(327156480), // J4_tstbit0_tp1_jump_nt
597 UINT64_C(327164672), // J4_tstbit0_tp1_jump_t
598 UINT64_C(2415919104), // L2_deallocframe
599 UINT64_C(2424307712), // L2_loadalignb_io
600 UINT64_C(2659188736), // L2_loadalignb_pbr
601 UINT64_C(2558525440), // L2_loadalignb_pci
602 UINT64_C(2558525952), // L2_loadalignb_pcr
603 UINT64_C(2592079872), // L2_loadalignb_pi
604 UINT64_C(2625634304), // L2_loadalignb_pr
605 UINT64_C(2420113408), // L2_loadalignh_io
606 UINT64_C(2654994432), // L2_loadalignh_pbr
607 UINT64_C(2554331136), // L2_loadalignh_pci
608 UINT64_C(2554331648), // L2_loadalignh_pcr
609 UINT64_C(2587885568), // L2_loadalignh_pi
610 UINT64_C(2621440000), // L2_loadalignh_pr
611 UINT64_C(2418016256), // L2_loadbsw2_io
612 UINT64_C(2652897280), // L2_loadbsw2_pbr
613 UINT64_C(2552233984), // L2_loadbsw2_pci
614 UINT64_C(2552234496), // L2_loadbsw2_pcr
615 UINT64_C(2585788416), // L2_loadbsw2_pi
616 UINT64_C(2619342848), // L2_loadbsw2_pr
617 UINT64_C(2430599168), // L2_loadbsw4_io
618 UINT64_C(2665480192), // L2_loadbsw4_pbr
619 UINT64_C(2564816896), // L2_loadbsw4_pci
620 UINT64_C(2564817408), // L2_loadbsw4_pcr
621 UINT64_C(2598371328), // L2_loadbsw4_pi
622 UINT64_C(2631925760), // L2_loadbsw4_pr
623 UINT64_C(2422210560), // L2_loadbzw2_io
624 UINT64_C(2657091584), // L2_loadbzw2_pbr
625 UINT64_C(2556428288), // L2_loadbzw2_pci
626 UINT64_C(2556428800), // L2_loadbzw2_pcr
627 UINT64_C(2589982720), // L2_loadbzw2_pi
628 UINT64_C(2623537152), // L2_loadbzw2_pr
629 UINT64_C(2426404864), // L2_loadbzw4_io
630 UINT64_C(2661285888), // L2_loadbzw4_pbr
631 UINT64_C(2560622592), // L2_loadbzw4_pci
632 UINT64_C(2560623104), // L2_loadbzw4_pcr
633 UINT64_C(2594177024), // L2_loadbzw4_pi
634 UINT64_C(2627731456), // L2_loadbzw4_pr
635 UINT64_C(2432696320), // L2_loadrb_io
636 UINT64_C(2667577344), // L2_loadrb_pbr
637 UINT64_C(2566914048), // L2_loadrb_pci
638 UINT64_C(2566914560), // L2_loadrb_pcr
639 UINT64_C(2600468480), // L2_loadrb_pi
640 UINT64_C(2634022912), // L2_loadrb_pr
641 UINT64_C(1224736768), // L2_loadrbgp
642 UINT64_C(2445279232), // L2_loadrd_io
643 UINT64_C(2680160256), // L2_loadrd_pbr
644 UINT64_C(2579496960), // L2_loadrd_pci
645 UINT64_C(2579497472), // L2_loadrd_pcr
646 UINT64_C(2613051392), // L2_loadrd_pi
647 UINT64_C(2646605824), // L2_loadrd_pr
648 UINT64_C(1237319680), // L2_loadrdgp
649 UINT64_C(2436890624), // L2_loadrh_io
650 UINT64_C(2671771648), // L2_loadrh_pbr
651 UINT64_C(2571108352), // L2_loadrh_pci
652 UINT64_C(2571108864), // L2_loadrh_pcr
653 UINT64_C(2604662784), // L2_loadrh_pi
654 UINT64_C(2638217216), // L2_loadrh_pr
655 UINT64_C(1228931072), // L2_loadrhgp
656 UINT64_C(2441084928), // L2_loadri_io
657 UINT64_C(2675965952), // L2_loadri_pbr
658 UINT64_C(2575302656), // L2_loadri_pci
659 UINT64_C(2575303168), // L2_loadri_pcr
660 UINT64_C(2608857088), // L2_loadri_pi
661 UINT64_C(2642411520), // L2_loadri_pr
662 UINT64_C(1233125376), // L2_loadrigp
663 UINT64_C(2434793472), // L2_loadrub_io
664 UINT64_C(2669674496), // L2_loadrub_pbr
665 UINT64_C(2569011200), // L2_loadrub_pci
666 UINT64_C(2569011712), // L2_loadrub_pcr
667 UINT64_C(2602565632), // L2_loadrub_pi
668 UINT64_C(2636120064), // L2_loadrub_pr
669 UINT64_C(1226833920), // L2_loadrubgp
670 UINT64_C(2438987776), // L2_loadruh_io
671 UINT64_C(2673868800), // L2_loadruh_pbr
672 UINT64_C(2573205504), // L2_loadruh_pci
673 UINT64_C(2573206016), // L2_loadruh_pcr
674 UINT64_C(2606759936), // L2_loadruh_pi
675 UINT64_C(2640314368), // L2_loadruh_pr
676 UINT64_C(1231028224), // L2_loadruhgp
677 UINT64_C(2449475584), // L2_loadw_aq
678 UINT64_C(2449473536), // L2_loadw_locked
679 UINT64_C(1157627904), // L2_ploadrbf_io
680 UINT64_C(2600478720), // L2_ploadrbf_pi
681 UINT64_C(1191182336), // L2_ploadrbfnew_io
682 UINT64_C(2600482816), // L2_ploadrbfnew_pi
683 UINT64_C(1090519040), // L2_ploadrbt_io
684 UINT64_C(2600476672), // L2_ploadrbt_pi
685 UINT64_C(1124073472), // L2_ploadrbtnew_io
686 UINT64_C(2600480768), // L2_ploadrbtnew_pi
687 UINT64_C(1170210816), // L2_ploadrdf_io
688 UINT64_C(2613061632), // L2_ploadrdf_pi
689 UINT64_C(1203765248), // L2_ploadrdfnew_io
690 UINT64_C(2613065728), // L2_ploadrdfnew_pi
691 UINT64_C(1103101952), // L2_ploadrdt_io
692 UINT64_C(2613059584), // L2_ploadrdt_pi
693 UINT64_C(1136656384), // L2_ploadrdtnew_io
694 UINT64_C(2613063680), // L2_ploadrdtnew_pi
695 UINT64_C(1161822208), // L2_ploadrhf_io
696 UINT64_C(2604673024), // L2_ploadrhf_pi
697 UINT64_C(1195376640), // L2_ploadrhfnew_io
698 UINT64_C(2604677120), // L2_ploadrhfnew_pi
699 UINT64_C(1094713344), // L2_ploadrht_io
700 UINT64_C(2604670976), // L2_ploadrht_pi
701 UINT64_C(1128267776), // L2_ploadrhtnew_io
702 UINT64_C(2604675072), // L2_ploadrhtnew_pi
703 UINT64_C(1166016512), // L2_ploadrif_io
704 UINT64_C(2608867328), // L2_ploadrif_pi
705 UINT64_C(1199570944), // L2_ploadrifnew_io
706 UINT64_C(2608871424), // L2_ploadrifnew_pi
707 UINT64_C(1098907648), // L2_ploadrit_io
708 UINT64_C(2608865280), // L2_ploadrit_pi
709 UINT64_C(1132462080), // L2_ploadritnew_io
710 UINT64_C(2608869376), // L2_ploadritnew_pi
711 UINT64_C(1159725056), // L2_ploadrubf_io
712 UINT64_C(2602575872), // L2_ploadrubf_pi
713 UINT64_C(1193279488), // L2_ploadrubfnew_io
714 UINT64_C(2602579968), // L2_ploadrubfnew_pi
715 UINT64_C(1092616192), // L2_ploadrubt_io
716 UINT64_C(2602573824), // L2_ploadrubt_pi
717 UINT64_C(1126170624), // L2_ploadrubtnew_io
718 UINT64_C(2602577920), // L2_ploadrubtnew_pi
719 UINT64_C(1163919360), // L2_ploadruhf_io
720 UINT64_C(2606770176), // L2_ploadruhf_pi
721 UINT64_C(1197473792), // L2_ploadruhfnew_io
722 UINT64_C(2606774272), // L2_ploadruhfnew_pi
723 UINT64_C(1096810496), // L2_ploadruht_io
724 UINT64_C(2606768128), // L2_ploadruht_pi
725 UINT64_C(1130364928), // L2_ploadruhtnew_io
726 UINT64_C(2606772224), // L2_ploadruhtnew_pi
727 UINT64_C(1040187392), // L4_add_memopb_io
728 UINT64_C(1042284544), // L4_add_memoph_io
729 UINT64_C(1044381696), // L4_add_memopw_io
730 UINT64_C(1040187456), // L4_and_memopb_io
731 UINT64_C(1042284608), // L4_and_memoph_io
732 UINT64_C(1044381760), // L4_and_memopw_io
733 UINT64_C(1056964608), // L4_iadd_memopb_io
734 UINT64_C(1059061760), // L4_iadd_memoph_io
735 UINT64_C(1061158912), // L4_iadd_memopw_io
736 UINT64_C(1056964672), // L4_iand_memopb_io
737 UINT64_C(1059061824), // L4_iand_memoph_io
738 UINT64_C(1061158976), // L4_iand_memopw_io
739 UINT64_C(1056964704), // L4_ior_memopb_io
740 UINT64_C(1059061856), // L4_ior_memoph_io
741 UINT64_C(1061159008), // L4_ior_memopw_io
742 UINT64_C(1056964640), // L4_isub_memopb_io
743 UINT64_C(1059061792), // L4_isub_memoph_io
744 UINT64_C(1061158944), // L4_isub_memopw_io
745 UINT64_C(2592083968), // L4_loadalignb_ap
746 UINT64_C(2625638400), // L4_loadalignb_ur
747 UINT64_C(2587889664), // L4_loadalignh_ap
748 UINT64_C(2621444096), // L4_loadalignh_ur
749 UINT64_C(2585792512), // L4_loadbsw2_ap
750 UINT64_C(2619346944), // L4_loadbsw2_ur
751 UINT64_C(2598375424), // L4_loadbsw4_ap
752 UINT64_C(2631929856), // L4_loadbsw4_ur
753 UINT64_C(2589986816), // L4_loadbzw2_ap
754 UINT64_C(2623541248), // L4_loadbzw2_ur
755 UINT64_C(2594181120), // L4_loadbzw4_ap
756 UINT64_C(2627735552), // L4_loadbzw4_ur
757 UINT64_C(2449479680), // L4_loadd_aq
758 UINT64_C(2449477632), // L4_loadd_locked
759 UINT64_C(2600472576), // L4_loadrb_ap
760 UINT64_C(973078528), // L4_loadrb_rr
761 UINT64_C(2634027008), // L4_loadrb_ur
762 UINT64_C(2613055488), // L4_loadrd_ap
763 UINT64_C(985661440), // L4_loadrd_rr
764 UINT64_C(2646609920), // L4_loadrd_ur
765 UINT64_C(2604666880), // L4_loadrh_ap
766 UINT64_C(977272832), // L4_loadrh_rr
767 UINT64_C(2638221312), // L4_loadrh_ur
768 UINT64_C(2608861184), // L4_loadri_ap
769 UINT64_C(981467136), // L4_loadri_rr
770 UINT64_C(2642415616), // L4_loadri_ur
771 UINT64_C(2602569728), // L4_loadrub_ap
772 UINT64_C(975175680), // L4_loadrub_rr
773 UINT64_C(2636124160), // L4_loadrub_ur
774 UINT64_C(2606764032), // L4_loadruh_ap
775 UINT64_C(979369984), // L4_loadruh_rr
776 UINT64_C(2640318464), // L4_loadruh_ur
777 UINT64_C(2449481728), // L4_loadw_phys
778 UINT64_C(1040187488), // L4_or_memopb_io
779 UINT64_C(1042284640), // L4_or_memoph_io
780 UINT64_C(1044381792), // L4_or_memopw_io
781 UINT64_C(2667587712), // L4_ploadrbf_abs
782 UINT64_C(822083584), // L4_ploadrbf_rr
783 UINT64_C(2667591808), // L4_ploadrbfnew_abs
784 UINT64_C(855638016), // L4_ploadrbfnew_rr
785 UINT64_C(2667585664), // L4_ploadrbt_abs
786 UINT64_C(805306368), // L4_ploadrbt_rr
787 UINT64_C(2667589760), // L4_ploadrbtnew_abs
788 UINT64_C(838860800), // L4_ploadrbtnew_rr
789 UINT64_C(2680170624), // L4_ploadrdf_abs
790 UINT64_C(834666496), // L4_ploadrdf_rr
791 UINT64_C(2680174720), // L4_ploadrdfnew_abs
792 UINT64_C(868220928), // L4_ploadrdfnew_rr
793 UINT64_C(2680168576), // L4_ploadrdt_abs
794 UINT64_C(817889280), // L4_ploadrdt_rr
795 UINT64_C(2680172672), // L4_ploadrdtnew_abs
796 UINT64_C(851443712), // L4_ploadrdtnew_rr
797 UINT64_C(2671782016), // L4_ploadrhf_abs
798 UINT64_C(826277888), // L4_ploadrhf_rr
799 UINT64_C(2671786112), // L4_ploadrhfnew_abs
800 UINT64_C(859832320), // L4_ploadrhfnew_rr
801 UINT64_C(2671779968), // L4_ploadrht_abs
802 UINT64_C(809500672), // L4_ploadrht_rr
803 UINT64_C(2671784064), // L4_ploadrhtnew_abs
804 UINT64_C(843055104), // L4_ploadrhtnew_rr
805 UINT64_C(2675976320), // L4_ploadrif_abs
806 UINT64_C(830472192), // L4_ploadrif_rr
807 UINT64_C(2675980416), // L4_ploadrifnew_abs
808 UINT64_C(864026624), // L4_ploadrifnew_rr
809 UINT64_C(2675974272), // L4_ploadrit_abs
810 UINT64_C(813694976), // L4_ploadrit_rr
811 UINT64_C(2675978368), // L4_ploadritnew_abs
812 UINT64_C(847249408), // L4_ploadritnew_rr
813 UINT64_C(2669684864), // L4_ploadrubf_abs
814 UINT64_C(824180736), // L4_ploadrubf_rr
815 UINT64_C(2669688960), // L4_ploadrubfnew_abs
816 UINT64_C(857735168), // L4_ploadrubfnew_rr
817 UINT64_C(2669682816), // L4_ploadrubt_abs
818 UINT64_C(807403520), // L4_ploadrubt_rr
819 UINT64_C(2669686912), // L4_ploadrubtnew_abs
820 UINT64_C(840957952), // L4_ploadrubtnew_rr
821 UINT64_C(2673879168), // L4_ploadruhf_abs
822 UINT64_C(828375040), // L4_ploadruhf_rr
823 UINT64_C(2673883264), // L4_ploadruhfnew_abs
824 UINT64_C(861929472), // L4_ploadruhfnew_rr
825 UINT64_C(2673877120), // L4_ploadruht_abs
826 UINT64_C(811597824), // L4_ploadruht_rr
827 UINT64_C(2673881216), // L4_ploadruhtnew_abs
828 UINT64_C(845152256), // L4_ploadruhtnew_rr
829 UINT64_C(2516582400), // L4_return
830 UINT64_C(2516594688), // L4_return_f
831 UINT64_C(2516592640), // L4_return_fnew_pnt
832 UINT64_C(2516596736), // L4_return_fnew_pt
833 UINT64_C(2516586496), // L4_return_t
834 UINT64_C(2516584448), // L4_return_tnew_pnt
835 UINT64_C(2516588544), // L4_return_tnew_pt
836 UINT64_C(1040187424), // L4_sub_memopb_io
837 UINT64_C(1042284576), // L4_sub_memoph_io
838 UINT64_C(1044381728), // L4_sub_memopw_io
839 UINT64_C(2449473600), // L6_memcpy
840 UINT64_C(18874368), // LO
841 UINT64_C(4009754656), // M2_acci
842 UINT64_C(3791650816), // M2_accii
843 UINT64_C(3875536928), // M2_cmaci_s0
844 UINT64_C(3875536960), // M2_cmacr_s0
845 UINT64_C(3875537088), // M2_cmacs_s0
846 UINT64_C(3883925696), // M2_cmacs_s1
847 UINT64_C(3879731392), // M2_cmacsc_s0
848 UINT64_C(3888120000), // M2_cmacsc_s1
849 UINT64_C(3841982496), // M2_cmpyi_s0
850 UINT64_C(3841982528), // M2_cmpyr_s0
851 UINT64_C(3978297536), // M2_cmpyrs_s0
852 UINT64_C(3986686144), // M2_cmpyrs_s1
853 UINT64_C(3982491840), // M2_cmpyrsc_s0
854 UINT64_C(3990880448), // M2_cmpyrsc_s1
855 UINT64_C(3841982656), // M2_cmpys_s0
856 UINT64_C(3850371264), // M2_cmpys_s1
857 UINT64_C(3846176960), // M2_cmpysc_s0
858 UINT64_C(3854565568), // M2_cmpysc_s1
859 UINT64_C(3875537120), // M2_cnacs_s0
860 UINT64_C(3883925728), // M2_cnacs_s1
861 UINT64_C(3879731424), // M2_cnacsc_s0
862 UINT64_C(3888120032), // M2_cnacsc_s1
863 UINT64_C(3875536896), // M2_dpmpyss_acc_s0
864 UINT64_C(3877634048), // M2_dpmpyss_nac_s0
865 UINT64_C(3978297376), // M2_dpmpyss_rnd_s0
866 UINT64_C(3841982464), // M2_dpmpyss_s0
867 UINT64_C(3879731200), // M2_dpmpyuu_acc_s0
868 UINT64_C(3881828352), // M2_dpmpyuu_nac_s0
869 UINT64_C(3846176768), // M2_dpmpyuu_s0
870 UINT64_C(3986686080), // M2_hmmpyh_rs1
871 UINT64_C(3986685952), // M2_hmmpyh_s1
872 UINT64_C(3990880384), // M2_hmmpyl_rs1
873 UINT64_C(3986685984), // M2_hmmpyl_s1
874 UINT64_C(4009754624), // M2_maci
875 UINT64_C(3783262208), // M2_macsin
876 UINT64_C(3774873600), // M2_macsip
877 UINT64_C(3927965920), // M2_mmachs_rs0
878 UINT64_C(3936354528), // M2_mmachs_rs1
879 UINT64_C(3925868768), // M2_mmachs_s0
880 UINT64_C(3934257376), // M2_mmachs_s1
881 UINT64_C(3927965856), // M2_mmacls_rs0
882 UINT64_C(3936354464), // M2_mmacls_rs1
883 UINT64_C(3925868704), // M2_mmacls_s0
884 UINT64_C(3934257312), // M2_mmacls_s1
885 UINT64_C(3932160224), // M2_mmacuhs_rs0
886 UINT64_C(3940548832), // M2_mmacuhs_rs1
887 UINT64_C(3930063072), // M2_mmacuhs_s0
888 UINT64_C(3938451680), // M2_mmacuhs_s1
889 UINT64_C(3932160160), // M2_mmaculs_rs0
890 UINT64_C(3940548768), // M2_mmaculs_rs1
891 UINT64_C(3930063008), // M2_mmaculs_s0
892 UINT64_C(3938451616), // M2_mmaculs_s1
893 UINT64_C(3894411488), // M2_mmpyh_rs0
894 UINT64_C(3902800096), // M2_mmpyh_rs1
895 UINT64_C(3892314336), // M2_mmpyh_s0
896 UINT64_C(3900702944), // M2_mmpyh_s1
897 UINT64_C(3894411424), // M2_mmpyl_rs0
898 UINT64_C(3902800032), // M2_mmpyl_rs1
899 UINT64_C(3892314272), // M2_mmpyl_s0
900 UINT64_C(3900702880), // M2_mmpyl_s1
901 UINT64_C(3898605792), // M2_mmpyuh_rs0
902 UINT64_C(3906994400), // M2_mmpyuh_rs1
903 UINT64_C(3896508640), // M2_mmpyuh_s0
904 UINT64_C(3904897248), // M2_mmpyuh_s1
905 UINT64_C(3898605728), // M2_mmpyul_rs0
906 UINT64_C(3906994336), // M2_mmpyul_rs1
907 UINT64_C(3896508576), // M2_mmpyul_s0
908 UINT64_C(3904897184), // M2_mmpyul_s1
909 UINT64_C(4018143232), // M2_mnaci
910 UINT64_C(3992977504), // M2_mpy_acc_hh_s0
911 UINT64_C(4001366112), // M2_mpy_acc_hh_s1
912 UINT64_C(3992977472), // M2_mpy_acc_hl_s0
913 UINT64_C(4001366080), // M2_mpy_acc_hl_s1
914 UINT64_C(3992977440), // M2_mpy_acc_lh_s0
915 UINT64_C(4001366048), // M2_mpy_acc_lh_s1
916 UINT64_C(3992977408), // M2_mpy_acc_ll_s0
917 UINT64_C(4001366016), // M2_mpy_acc_ll_s1
918 UINT64_C(3992977632), // M2_mpy_acc_sat_hh_s0
919 UINT64_C(4001366240), // M2_mpy_acc_sat_hh_s1
920 UINT64_C(3992977600), // M2_mpy_acc_sat_hl_s0
921 UINT64_C(4001366208), // M2_mpy_acc_sat_hl_s1
922 UINT64_C(3992977568), // M2_mpy_acc_sat_lh_s0
923 UINT64_C(4001366176), // M2_mpy_acc_sat_lh_s1
924 UINT64_C(3992977536), // M2_mpy_acc_sat_ll_s0
925 UINT64_C(4001366144), // M2_mpy_acc_sat_ll_s1
926 UINT64_C(3959423072), // M2_mpy_hh_s0
927 UINT64_C(3967811680), // M2_mpy_hh_s1
928 UINT64_C(3959423040), // M2_mpy_hl_s0
929 UINT64_C(3967811648), // M2_mpy_hl_s1
930 UINT64_C(3959423008), // M2_mpy_lh_s0
931 UINT64_C(3967811616), // M2_mpy_lh_s1
932 UINT64_C(3959422976), // M2_mpy_ll_s0
933 UINT64_C(3967811584), // M2_mpy_ll_s1
934 UINT64_C(3995074656), // M2_mpy_nac_hh_s0
935 UINT64_C(4003463264), // M2_mpy_nac_hh_s1
936 UINT64_C(3995074624), // M2_mpy_nac_hl_s0
937 UINT64_C(4003463232), // M2_mpy_nac_hl_s1
938 UINT64_C(3995074592), // M2_mpy_nac_lh_s0
939 UINT64_C(4003463200), // M2_mpy_nac_lh_s1
940 UINT64_C(3995074560), // M2_mpy_nac_ll_s0
941 UINT64_C(4003463168), // M2_mpy_nac_ll_s1
942 UINT64_C(3995074784), // M2_mpy_nac_sat_hh_s0
943 UINT64_C(4003463392), // M2_mpy_nac_sat_hh_s1
944 UINT64_C(3995074752), // M2_mpy_nac_sat_hl_s0
945 UINT64_C(4003463360), // M2_mpy_nac_sat_hl_s1
946 UINT64_C(3995074720), // M2_mpy_nac_sat_lh_s0
947 UINT64_C(4003463328), // M2_mpy_nac_sat_lh_s1
948 UINT64_C(3995074688), // M2_mpy_nac_sat_ll_s0
949 UINT64_C(4003463296), // M2_mpy_nac_sat_ll_s1
950 UINT64_C(3961520224), // M2_mpy_rnd_hh_s0
951 UINT64_C(3969908832), // M2_mpy_rnd_hh_s1
952 UINT64_C(3961520192), // M2_mpy_rnd_hl_s0
953 UINT64_C(3969908800), // M2_mpy_rnd_hl_s1
954 UINT64_C(3961520160), // M2_mpy_rnd_lh_s0
955 UINT64_C(3969908768), // M2_mpy_rnd_lh_s1
956 UINT64_C(3961520128), // M2_mpy_rnd_ll_s0
957 UINT64_C(3969908736), // M2_mpy_rnd_ll_s1
958 UINT64_C(3959423200), // M2_mpy_sat_hh_s0
959 UINT64_C(3967811808), // M2_mpy_sat_hh_s1
960 UINT64_C(3959423168), // M2_mpy_sat_hl_s0
961 UINT64_C(3967811776), // M2_mpy_sat_hl_s1
962 UINT64_C(3959423136), // M2_mpy_sat_lh_s0
963 UINT64_C(3967811744), // M2_mpy_sat_lh_s1
964 UINT64_C(3959423104), // M2_mpy_sat_ll_s0
965 UINT64_C(3967811712), // M2_mpy_sat_ll_s1
966 UINT64_C(3961520352), // M2_mpy_sat_rnd_hh_s0
967 UINT64_C(3969908960), // M2_mpy_sat_rnd_hh_s1
968 UINT64_C(3961520320), // M2_mpy_sat_rnd_hl_s0
969 UINT64_C(3969908928), // M2_mpy_sat_rnd_hl_s1
970 UINT64_C(3961520288), // M2_mpy_sat_rnd_lh_s0
971 UINT64_C(3969908896), // M2_mpy_sat_rnd_lh_s1
972 UINT64_C(3961520256), // M2_mpy_sat_rnd_ll_s0
973 UINT64_C(3969908864), // M2_mpy_sat_rnd_ll_s1
974 UINT64_C(3976200224), // M2_mpy_up
975 UINT64_C(3986686016), // M2_mpy_up_s1
976 UINT64_C(3990880256), // M2_mpy_up_s1_sat
977 UINT64_C(3858759776), // M2_mpyd_acc_hh_s0
978 UINT64_C(3867148384), // M2_mpyd_acc_hh_s1
979 UINT64_C(3858759744), // M2_mpyd_acc_hl_s0
980 UINT64_C(3867148352), // M2_mpyd_acc_hl_s1
981 UINT64_C(3858759712), // M2_mpyd_acc_lh_s0
982 UINT64_C(3867148320), // M2_mpyd_acc_lh_s1
983 UINT64_C(3858759680), // M2_mpyd_acc_ll_s0
984 UINT64_C(3867148288), // M2_mpyd_acc_ll_s1
985 UINT64_C(3825205344), // M2_mpyd_hh_s0
986 UINT64_C(3833593952), // M2_mpyd_hh_s1
987 UINT64_C(3825205312), // M2_mpyd_hl_s0
988 UINT64_C(3833593920), // M2_mpyd_hl_s1
989 UINT64_C(3825205280), // M2_mpyd_lh_s0
990 UINT64_C(3833593888), // M2_mpyd_lh_s1
991 UINT64_C(3825205248), // M2_mpyd_ll_s0
992 UINT64_C(3833593856), // M2_mpyd_ll_s1
993 UINT64_C(3860856928), // M2_mpyd_nac_hh_s0
994 UINT64_C(3869245536), // M2_mpyd_nac_hh_s1
995 UINT64_C(3860856896), // M2_mpyd_nac_hl_s0
996 UINT64_C(3869245504), // M2_mpyd_nac_hl_s1
997 UINT64_C(3860856864), // M2_mpyd_nac_lh_s0
998 UINT64_C(3869245472), // M2_mpyd_nac_lh_s1
999 UINT64_C(3860856832), // M2_mpyd_nac_ll_s0
1000 UINT64_C(3869245440), // M2_mpyd_nac_ll_s1
1001 UINT64_C(3827302496), // M2_mpyd_rnd_hh_s0
1002 UINT64_C(3835691104), // M2_mpyd_rnd_hh_s1
1003 UINT64_C(3827302464), // M2_mpyd_rnd_hl_s0
1004 UINT64_C(3835691072), // M2_mpyd_rnd_hl_s1
1005 UINT64_C(3827302432), // M2_mpyd_rnd_lh_s0
1006 UINT64_C(3835691040), // M2_mpyd_rnd_lh_s1
1007 UINT64_C(3827302400), // M2_mpyd_rnd_ll_s0
1008 UINT64_C(3835691008), // M2_mpyd_rnd_ll_s1
1009 UINT64_C(3976200192), // M2_mpyi
1010 UINT64_C(3766484992), // M2_mpysin
1011 UINT64_C(3758096384), // M2_mpysip
1012 UINT64_C(3982491680), // M2_mpysu_up
1013 UINT64_C(3997171808), // M2_mpyu_acc_hh_s0
1014 UINT64_C(4005560416), // M2_mpyu_acc_hh_s1
1015 UINT64_C(3997171776), // M2_mpyu_acc_hl_s0
1016 UINT64_C(4005560384), // M2_mpyu_acc_hl_s1
1017 UINT64_C(3997171744), // M2_mpyu_acc_lh_s0
1018 UINT64_C(4005560352), // M2_mpyu_acc_lh_s1
1019 UINT64_C(3997171712), // M2_mpyu_acc_ll_s0
1020 UINT64_C(4005560320), // M2_mpyu_acc_ll_s1
1021 UINT64_C(3963617376), // M2_mpyu_hh_s0
1022 UINT64_C(3972005984), // M2_mpyu_hh_s1
1023 UINT64_C(3963617344), // M2_mpyu_hl_s0
1024 UINT64_C(3972005952), // M2_mpyu_hl_s1
1025 UINT64_C(3963617312), // M2_mpyu_lh_s0
1026 UINT64_C(3972005920), // M2_mpyu_lh_s1
1027 UINT64_C(3963617280), // M2_mpyu_ll_s0
1028 UINT64_C(3972005888), // M2_mpyu_ll_s1
1029 UINT64_C(3999268960), // M2_mpyu_nac_hh_s0
1030 UINT64_C(4007657568), // M2_mpyu_nac_hh_s1
1031 UINT64_C(3999268928), // M2_mpyu_nac_hl_s0
1032 UINT64_C(4007657536), // M2_mpyu_nac_hl_s1
1033 UINT64_C(3999268896), // M2_mpyu_nac_lh_s0
1034 UINT64_C(4007657504), // M2_mpyu_nac_lh_s1
1035 UINT64_C(3999268864), // M2_mpyu_nac_ll_s0
1036 UINT64_C(4007657472), // M2_mpyu_nac_ll_s1
1037 UINT64_C(3980394528), // M2_mpyu_up
1038 UINT64_C(3862954080), // M2_mpyud_acc_hh_s0
1039 UINT64_C(3871342688), // M2_mpyud_acc_hh_s1
1040 UINT64_C(3862954048), // M2_mpyud_acc_hl_s0
1041 UINT64_C(3871342656), // M2_mpyud_acc_hl_s1
1042 UINT64_C(3862954016), // M2_mpyud_acc_lh_s0
1043 UINT64_C(3871342624), // M2_mpyud_acc_lh_s1
1044 UINT64_C(3862953984), // M2_mpyud_acc_ll_s0
1045 UINT64_C(3871342592), // M2_mpyud_acc_ll_s1
1046 UINT64_C(3829399648), // M2_mpyud_hh_s0
1047 UINT64_C(3837788256), // M2_mpyud_hh_s1
1048 UINT64_C(3829399616), // M2_mpyud_hl_s0
1049 UINT64_C(3837788224), // M2_mpyud_hl_s1
1050 UINT64_C(3829399584), // M2_mpyud_lh_s0
1051 UINT64_C(3837788192), // M2_mpyud_lh_s1
1052 UINT64_C(3829399552), // M2_mpyud_ll_s0
1053 UINT64_C(3837788160), // M2_mpyud_ll_s1
1054 UINT64_C(3865051232), // M2_mpyud_nac_hh_s0
1055 UINT64_C(3873439840), // M2_mpyud_nac_hh_s1
1056 UINT64_C(3865051200), // M2_mpyud_nac_hl_s0
1057 UINT64_C(3873439808), // M2_mpyud_nac_hl_s1
1058 UINT64_C(3865051168), // M2_mpyud_nac_lh_s0
1059 UINT64_C(3873439776), // M2_mpyud_nac_lh_s1
1060 UINT64_C(3865051136), // M2_mpyud_nac_ll_s0
1061 UINT64_C(3873439744), // M2_mpyud_nac_ll_s1
1062 UINT64_C(4018143264), // M2_nacci
1063 UINT64_C(3800039424), // M2_naccii
1064 UINT64_C(4009754720), // M2_subacc
1065 UINT64_C(3898605568), // M2_vabsdiffh
1066 UINT64_C(3894411264), // M2_vabsdiffw
1067 UINT64_C(3930062976), // M2_vcmac_s0_sat_i
1068 UINT64_C(3927965824), // M2_vcmac_s0_sat_r
1069 UINT64_C(3896508608), // M2_vcmpy_s0_sat_i
1070 UINT64_C(3894411456), // M2_vcmpy_s0_sat_r
1071 UINT64_C(3904897216), // M2_vcmpy_s1_sat_i
1072 UINT64_C(3902800064), // M2_vcmpy_s1_sat_r
1073 UINT64_C(3925868672), // M2_vdmacs_s0
1074 UINT64_C(3934257280), // M2_vdmacs_s1
1075 UINT64_C(3909091328), // M2_vdmpyrs_s0
1076 UINT64_C(3917479936), // M2_vdmpyrs_s1
1077 UINT64_C(3892314240), // M2_vdmpys_s0
1078 UINT64_C(3900702848), // M2_vdmpys_s1
1079 UINT64_C(3877634080), // M2_vmac2
1080 UINT64_C(3927965760), // M2_vmac2es
1081 UINT64_C(3925868736), // M2_vmac2es_s0
1082 UINT64_C(3934257344), // M2_vmac2es_s1
1083 UINT64_C(3875537056), // M2_vmac2s_s0
1084 UINT64_C(3883925664), // M2_vmac2s_s1
1085 UINT64_C(3881828512), // M2_vmac2su_s0
1086 UINT64_C(3890217120), // M2_vmac2su_s1
1087 UINT64_C(3892314304), // M2_vmpy2es_s0
1088 UINT64_C(3900702912), // M2_vmpy2es_s1
1089 UINT64_C(3841982624), // M2_vmpy2s_s0
1090 UINT64_C(3978297568), // M2_vmpy2s_s0pack
1091 UINT64_C(3850371232), // M2_vmpy2s_s1
1092 UINT64_C(3986686176), // M2_vmpy2s_s1pack
1093 UINT64_C(3841982688), // M2_vmpy2su_s0
1094 UINT64_C(3850371296), // M2_vmpy2su_s1
1095 UINT64_C(3911188704), // M2_vraddh
1096 UINT64_C(3909091360), // M2_vradduh
1097 UINT64_C(3925868544), // M2_vrcmaci_s0
1098 UINT64_C(3930062848), // M2_vrcmaci_s0c
1099 UINT64_C(3925868576), // M2_vrcmacr_s0
1100 UINT64_C(3932160032), // M2_vrcmacr_s0c
1101 UINT64_C(3892314112), // M2_vrcmpyi_s0
1102 UINT64_C(3896508416), // M2_vrcmpyi_s0c
1103 UINT64_C(3892314144), // M2_vrcmpyr_s0
1104 UINT64_C(3898605600), // M2_vrcmpyr_s0c
1105 UINT64_C(3936354432), // M2_vrcmpys_acc_s1_h
1106 UINT64_C(3940548736), // M2_vrcmpys_acc_s1_l
1107 UINT64_C(3902800000), // M2_vrcmpys_s1_h
1108 UINT64_C(3906994304), // M2_vrcmpys_s1_l
1109 UINT64_C(3919577280), // M2_vrcmpys_s1rp_h
1110 UINT64_C(3919577312), // M2_vrcmpys_s1rp_l
1111 UINT64_C(3925868608), // M2_vrmac_s0
1112 UINT64_C(3892314176), // M2_vrmpy_s0
1113 UINT64_C(4018143328), // M2_xor_xacc
1114 UINT64_C(4013948928), // M4_and_and
1115 UINT64_C(4011851808), // M4_and_andn
1116 UINT64_C(4013948960), // M4_and_or
1117 UINT64_C(4013948992), // M4_and_xor
1118 UINT64_C(3305111680), // M4_cmpyi_wh
1119 UINT64_C(3305111712), // M4_cmpyi_whc
1120 UINT64_C(3305111744), // M4_cmpyr_wh
1121 UINT64_C(3305111776), // M4_cmpyr_whc
1122 UINT64_C(4016046080), // M4_mac_up_s1_sat
1123 UINT64_C(3623878656), // M4_mpyri_addi
1124 UINT64_C(3749707776), // M4_mpyri_addr
1125 UINT64_C(3741319168), // M4_mpyri_addr_u2
1126 UINT64_C(3607101440), // M4_mpyrr_addi
1127 UINT64_C(3808428032), // M4_mpyrr_addr
1128 UINT64_C(4016046112), // M4_nac_up_s1_sat
1129 UINT64_C(4013949024), // M4_or_and
1130 UINT64_C(4011851776), // M4_or_andn
1131 UINT64_C(4022337536), // M4_or_or
1132 UINT64_C(4022337568), // M4_or_xor
1133 UINT64_C(3846176992), // M4_pmpyw
1134 UINT64_C(3877634272), // M4_pmpyw_acc
1135 UINT64_C(3854565600), // M4_vpmpyh
1136 UINT64_C(3886022880), // M4_vpmpyh_acc
1137 UINT64_C(3927965888), // M4_vrmpyeh_acc_s0
1138 UINT64_C(3936354496), // M4_vrmpyeh_acc_s1
1139 UINT64_C(3896508544), // M4_vrmpyeh_s0
1140 UINT64_C(3904897152), // M4_vrmpyeh_s1
1141 UINT64_C(3932160192), // M4_vrmpyoh_acc_s0
1142 UINT64_C(3940548800), // M4_vrmpyoh_acc_s1
1143 UINT64_C(3894411328), // M4_vrmpyoh_s0
1144 UINT64_C(3902799936), // M4_vrmpyoh_s1
1145 UINT64_C(4022337600), // M4_xor_and
1146 UINT64_C(4011851840), // M4_xor_andn
1147 UINT64_C(4022337632), // M4_xor_or
1148 UINT64_C(3397386240), // M4_xor_xacc
1149 UINT64_C(3927965728), // M5_vdmacbsu
1150 UINT64_C(3902799904), // M5_vdmpybsu
1151 UINT64_C(3888119840), // M5_vmacbsu
1152 UINT64_C(3883925536), // M5_vmacbuu
1153 UINT64_C(3846176800), // M5_vmpybsu
1154 UINT64_C(3850371104), // M5_vmpybuu
1155 UINT64_C(3938451488), // M5_vrmacbsu
1156 UINT64_C(3934257184), // M5_vrmacbuu
1157 UINT64_C(3904897056), // M5_vrmpybsu
1158 UINT64_C(3900702752), // M5_vrmpybuu
1159 UINT64_C(3906994176), // M6_vabsdiffb
1160 UINT64_C(3902799872), // M6_vabsdiffub
1161 UINT64_C(3898605632), // M7_dcmpyiw
1162 UINT64_C(3932160064), // M7_dcmpyiw_acc
1163 UINT64_C(3906994240), // M7_dcmpyiwc
1164 UINT64_C(3930063040), // M7_dcmpyiwc_acc
1165 UINT64_C(3900702784), // M7_dcmpyrw
1166 UINT64_C(3934257216), // M7_dcmpyrw_acc
1167 UINT64_C(3904897088), // M7_dcmpyrwc
1168 UINT64_C(3938451520), // M7_dcmpyrwc_acc
1169 UINT64_C(3911188480), // M7_wcmpyiw
1170 UINT64_C(3919577088), // M7_wcmpyiw_rnd
1171 UINT64_C(3909091456), // M7_wcmpyiwc
1172 UINT64_C(3917480064), // M7_wcmpyiwc_rnd
1173 UINT64_C(3913285632), // M7_wcmpyrw
1174 UINT64_C(3921674240), // M7_wcmpyrw_rnd
1175 UINT64_C(3915382784), // M7_wcmpyrwc
1176 UINT64_C(3923771392), // M7_wcmpyrwc_rnd
1177 UINT64_C(1509949440), // PS_call_stk
1178 UINT64_C(1352663040), // PS_callr_nr
1179 UINT64_C(1384120320), // PS_jmpret
1180 UINT64_C(1398800384), // PS_jmpretf
1181 UINT64_C(1398802432), // PS_jmpretfnew
1182 UINT64_C(1398806528), // PS_jmpretfnewpt
1183 UINT64_C(1396703232), // PS_jmprett
1184 UINT64_C(1396705280), // PS_jmprettnew
1185 UINT64_C(1396709376), // PS_jmprettnewpt
1186 UINT64_C(1224736768), // PS_loadrbabs
1187 UINT64_C(1237319680), // PS_loadrdabs
1188 UINT64_C(1228931072), // PS_loadrhabs
1189 UINT64_C(1233125376), // PS_loadriabs
1190 UINT64_C(1226833920), // PS_loadrubabs
1191 UINT64_C(1231028224), // PS_loadruhabs
1192 UINT64_C(1207959552), // PS_storerbabs
1193 UINT64_C(1218445312), // PS_storerbnewabs
1194 UINT64_C(1220542464), // PS_storerdabs
1195 UINT64_C(1214251008), // PS_storerfabs
1196 UINT64_C(1212153856), // PS_storerhabs
1197 UINT64_C(1218447360), // PS_storerhnewabs
1198 UINT64_C(1216348160), // PS_storeriabs
1199 UINT64_C(1218449408), // PS_storerinewabs
1200 UINT64_C(1417674752), // PS_trap1
1201 UINT64_C(2699034636), // R6_release_at_vi
1202 UINT64_C(2699034668), // R6_release_st_vi
1203 UINT64_C(1509949440), // RESTORE_DEALLOC_BEFORE_TAILCALL_V4
1204 UINT64_C(1509949440), // RESTORE_DEALLOC_BEFORE_TAILCALL_V4_EXT
1205 UINT64_C(1509949440), // RESTORE_DEALLOC_BEFORE_TAILCALL_V4_EXT_PIC
1206 UINT64_C(1509949440), // RESTORE_DEALLOC_BEFORE_TAILCALL_V4_PIC
1207 UINT64_C(1476395008), // RESTORE_DEALLOC_RET_JMP_V4
1208 UINT64_C(1476395008), // RESTORE_DEALLOC_RET_JMP_V4_EXT
1209 UINT64_C(1476395008), // RESTORE_DEALLOC_RET_JMP_V4_EXT_PIC
1210 UINT64_C(1476395008), // RESTORE_DEALLOC_RET_JMP_V4_PIC
1211 UINT64_C(3288334336), // S2_addasl_rrri
1212 UINT64_C(2692743168), // S2_allocframe
1213 UINT64_C(2147483712), // S2_asl_i_p
1214 UINT64_C(2181038272), // S2_asl_i_p_acc
1215 UINT64_C(2185232448), // S2_asl_i_p_and
1216 UINT64_C(2181038144), // S2_asl_i_p_nac
1217 UINT64_C(2185232576), // S2_asl_i_p_or
1218 UINT64_C(2189426752), // S2_asl_i_p_xacc
1219 UINT64_C(2348810304), // S2_asl_i_r
1220 UINT64_C(2382364864), // S2_asl_i_r_acc
1221 UINT64_C(2386559040), // S2_asl_i_r_and
1222 UINT64_C(2382364736), // S2_asl_i_r_nac
1223 UINT64_C(2386559168), // S2_asl_i_r_or
1224 UINT64_C(2353004608), // S2_asl_i_r_sat
1225 UINT64_C(2390753344), // S2_asl_i_r_xacc
1226 UINT64_C(2155872320), // S2_asl_i_vh
1227 UINT64_C(2151678016), // S2_asl_i_vw
1228 UINT64_C(3279945856), // S2_asl_r_p
1229 UINT64_C(3418357888), // S2_asl_r_p_acc
1230 UINT64_C(3409969280), // S2_asl_r_p_and
1231 UINT64_C(3414163584), // S2_asl_r_p_nac
1232 UINT64_C(3405774976), // S2_asl_r_p_or
1233 UINT64_C(3412066432), // S2_asl_r_p_xor
1234 UINT64_C(3326083200), // S2_asl_r_r
1235 UINT64_C(3435135104), // S2_asl_r_r_acc
1236 UINT64_C(3426746496), // S2_asl_r_r_and
1237 UINT64_C(3430940800), // S2_asl_r_r_nac
1238 UINT64_C(3422552192), // S2_asl_r_r_or
1239 UINT64_C(3321888896), // S2_asl_r_r_sat
1240 UINT64_C(3275751552), // S2_asl_r_vh
1241 UINT64_C(3271557248), // S2_asl_r_vw
1242 UINT64_C(2147483648), // S2_asr_i_p
1243 UINT64_C(2181038208), // S2_asr_i_p_acc
1244 UINT64_C(2185232384), // S2_asr_i_p_and
1245 UINT64_C(2181038080), // S2_asr_i_p_nac
1246 UINT64_C(2185232512), // S2_asr_i_p_or
1247 UINT64_C(2160066784), // S2_asr_i_p_rnd
1248 UINT64_C(2348810240), // S2_asr_i_r
1249 UINT64_C(2382364800), // S2_asr_i_r_acc
1250 UINT64_C(2386558976), // S2_asr_i_r_and
1251 UINT64_C(2382364672), // S2_asr_i_r_nac
1252 UINT64_C(2386559104), // S2_asr_i_r_or
1253 UINT64_C(2353004544), // S2_asr_i_r_rnd
1254 UINT64_C(2294284352), // S2_asr_i_svw_trun
1255 UINT64_C(2155872256), // S2_asr_i_vh
1256 UINT64_C(2151677952), // S2_asr_i_vw
1257 UINT64_C(3279945728), // S2_asr_r_p
1258 UINT64_C(3418357760), // S2_asr_r_p_acc
1259 UINT64_C(3409969152), // S2_asr_r_p_and
1260 UINT64_C(3414163456), // S2_asr_r_p_nac
1261 UINT64_C(3405774848), // S2_asr_r_p_or
1262 UINT64_C(3412066304), // S2_asr_r_p_xor
1263 UINT64_C(3326083072), // S2_asr_r_r
1264 UINT64_C(3435134976), // S2_asr_r_r_acc
1265 UINT64_C(3426746368), // S2_asr_r_r_and
1266 UINT64_C(3430940672), // S2_asr_r_r_nac
1267 UINT64_C(3422552064), // S2_asr_r_r_or
1268 UINT64_C(3321888768), // S2_asr_r_r_sat
1269 UINT64_C(3305111616), // S2_asr_r_svw_trun
1270 UINT64_C(3275751424), // S2_asr_r_vh
1271 UINT64_C(3271557120), // S2_asr_r_vw
1272 UINT64_C(2353004736), // S2_brev
1273 UINT64_C(2160066752), // S2_brevp
1274 UINT64_C(3250585792), // S2_cabacdecbin
1275 UINT64_C(2348810400), // S2_cl0
1276 UINT64_C(2285895744), // S2_cl0p
1277 UINT64_C(2348810432), // S2_cl1
1278 UINT64_C(2285895808), // S2_cl1p
1279 UINT64_C(2348810368), // S2_clb
1280 UINT64_C(2348810464), // S2_clbnorm
1281 UINT64_C(2285895680), // S2_clbp
1282 UINT64_C(2361393184), // S2_clrbit_i
1283 UINT64_C(3330277440), // S2_clrbit_r
1284 UINT64_C(2353004672), // S2_ct0
1285 UINT64_C(2296381504), // S2_ct0p
1286 UINT64_C(2353004704), // S2_ct1
1287 UINT64_C(2296381568), // S2_ct1p
1288 UINT64_C(2160066688), // S2_deinterleave
1289 UINT64_C(2365587456), // S2_extractu
1290 UINT64_C(3372220416), // S2_extractu_rp
1291 UINT64_C(2164260864), // S2_extractup
1292 UINT64_C(3238002688), // S2_extractup_rp
1293 UINT64_C(2399141888), // S2_insert
1294 UINT64_C(3355443200), // S2_insert_rp
1295 UINT64_C(2197815296), // S2_insertp
1296 UINT64_C(3388997632), // S2_insertp_rp
1297 UINT64_C(2160066720), // S2_interleave
1298 UINT64_C(3246391488), // S2_lfsp
1299 UINT64_C(3279945920), // S2_lsl_r_p
1300 UINT64_C(3418357952), // S2_lsl_r_p_acc
1301 UINT64_C(3409969344), // S2_lsl_r_p_and
1302 UINT64_C(3414163648), // S2_lsl_r_p_nac
1303 UINT64_C(3405775040), // S2_lsl_r_p_or
1304 UINT64_C(3412066496), // S2_lsl_r_p_xor
1305 UINT64_C(3326083264), // S2_lsl_r_r
1306 UINT64_C(3435135168), // S2_lsl_r_r_acc
1307 UINT64_C(3426746560), // S2_lsl_r_r_and
1308 UINT64_C(3430940864), // S2_lsl_r_r_nac
1309 UINT64_C(3422552256), // S2_lsl_r_r_or
1310 UINT64_C(3275751616), // S2_lsl_r_vh
1311 UINT64_C(3271557312), // S2_lsl_r_vw
1312 UINT64_C(2147483680), // S2_lsr_i_p
1313 UINT64_C(2181038240), // S2_lsr_i_p_acc
1314 UINT64_C(2185232416), // S2_lsr_i_p_and
1315 UINT64_C(2181038112), // S2_lsr_i_p_nac
1316 UINT64_C(2185232544), // S2_lsr_i_p_or
1317 UINT64_C(2189426720), // S2_lsr_i_p_xacc
1318 UINT64_C(2348810272), // S2_lsr_i_r
1319 UINT64_C(2382364832), // S2_lsr_i_r_acc
1320 UINT64_C(2386559008), // S2_lsr_i_r_and
1321 UINT64_C(2382364704), // S2_lsr_i_r_nac
1322 UINT64_C(2386559136), // S2_lsr_i_r_or
1323 UINT64_C(2390753312), // S2_lsr_i_r_xacc
1324 UINT64_C(2155872288), // S2_lsr_i_vh
1325 UINT64_C(2151677984), // S2_lsr_i_vw
1326 UINT64_C(3279945792), // S2_lsr_r_p
1327 UINT64_C(3418357824), // S2_lsr_r_p_acc
1328 UINT64_C(3409969216), // S2_lsr_r_p_and
1329 UINT64_C(3414163520), // S2_lsr_r_p_nac
1330 UINT64_C(3405774912), // S2_lsr_r_p_or
1331 UINT64_C(3412066368), // S2_lsr_r_p_xor
1332 UINT64_C(3326083136), // S2_lsr_r_r
1333 UINT64_C(3435135040), // S2_lsr_r_r_acc
1334 UINT64_C(3426746432), // S2_lsr_r_r_and
1335 UINT64_C(3430940736), // S2_lsr_r_r_nac
1336 UINT64_C(3422552128), // S2_lsr_r_r_or
1337 UINT64_C(3275751488), // S2_lsr_r_vh
1338 UINT64_C(3271557184), // S2_lsr_r_vw
1339 UINT64_C(2365595648), // S2_mask
1340 UINT64_C(4118806528), // S2_packhl
1341 UINT64_C(3489660928), // S2_parityp
1342 UINT64_C(1140850688), // S2_pstorerbf_io
1343 UINT64_C(2868912132), // S2_pstorerbf_pi
1344 UINT64_C(2852134916), // S2_pstorerbf_pi_nt
1345 UINT64_C(2868912260), // S2_pstorerbfnew_pi
1346 UINT64_C(1151336448), // S2_pstorerbnewf_io
1347 UINT64_C(2879397892), // S2_pstorerbnewf_pi
1348 UINT64_C(2879398020), // S2_pstorerbnewfnew_pi
1349 UINT64_C(1084227584), // S2_pstorerbnewt_io
1350 UINT64_C(2879397888), // S2_pstorerbnewt_pi
1351 UINT64_C(2879398016), // S2_pstorerbnewtnew_pi
1352 UINT64_C(1073741824), // S2_pstorerbt_io
1353 UINT64_C(2868912128), // S2_pstorerbt_pi
1354 UINT64_C(2852134912), // S2_pstorerbt_pi_nt
1355 UINT64_C(2868912256), // S2_pstorerbtnew_pi
1356 UINT64_C(1153433600), // S2_pstorerdf_io
1357 UINT64_C(2881495044), // S2_pstorerdf_pi
1358 UINT64_C(2864717828), // S2_pstorerdf_pi_nt
1359 UINT64_C(2881495172), // S2_pstorerdfnew_pi
1360 UINT64_C(1086324736), // S2_pstorerdt_io
1361 UINT64_C(2881495040), // S2_pstorerdt_pi
1362 UINT64_C(2864717824), // S2_pstorerdt_pi_nt
1363 UINT64_C(2881495168), // S2_pstorerdtnew_pi
1364 UINT64_C(1147142144), // S2_pstorerff_io
1365 UINT64_C(2875203588), // S2_pstorerff_pi
1366 UINT64_C(2875203716), // S2_pstorerffnew_pi
1367 UINT64_C(1080033280), // S2_pstorerft_io
1368 UINT64_C(2875203584), // S2_pstorerft_pi
1369 UINT64_C(2875203712), // S2_pstorerftnew_pi
1370 UINT64_C(1145044992), // S2_pstorerhf_io
1371 UINT64_C(2873106436), // S2_pstorerhf_pi
1372 UINT64_C(2856329220), // S2_pstorerhf_pi_nt
1373 UINT64_C(2873106564), // S2_pstorerhfnew_pi
1374 UINT64_C(1151338496), // S2_pstorerhnewf_io
1375 UINT64_C(2879399940), // S2_pstorerhnewf_pi
1376 UINT64_C(2879400068), // S2_pstorerhnewfnew_pi
1377 UINT64_C(1084229632), // S2_pstorerhnewt_io
1378 UINT64_C(2879399936), // S2_pstorerhnewt_pi
1379 UINT64_C(2879400064), // S2_pstorerhnewtnew_pi
1380 UINT64_C(1077936128), // S2_pstorerht_io
1381 UINT64_C(2873106432), // S2_pstorerht_pi
1382 UINT64_C(2856329216), // S2_pstorerht_pi_nt
1383 UINT64_C(2873106560), // S2_pstorerhtnew_pi
1384 UINT64_C(1149239296), // S2_pstorerif_io
1385 UINT64_C(2877300740), // S2_pstorerif_pi
1386 UINT64_C(2860523524), // S2_pstorerif_pi_nt
1387 UINT64_C(2877300868), // S2_pstorerifnew_pi
1388 UINT64_C(1151340544), // S2_pstorerinewf_io
1389 UINT64_C(2879401988), // S2_pstorerinewf_pi
1390 UINT64_C(2879402116), // S2_pstorerinewfnew_pi
1391 UINT64_C(1084231680), // S2_pstorerinewt_io
1392 UINT64_C(2879401984), // S2_pstorerinewt_pi
1393 UINT64_C(2879402112), // S2_pstorerinewtnew_pi
1394 UINT64_C(1082130432), // S2_pstorerit_io
1395 UINT64_C(2877300736), // S2_pstorerit_pi
1396 UINT64_C(2860523520), // S2_pstorerit_pi_nt
1397 UINT64_C(2877300864), // S2_pstoreritnew_pi
1398 UINT64_C(2361393152), // S2_setbit_i
1399 UINT64_C(3330277376), // S2_setbit_r
1400 UINT64_C(3238002752), // S2_shuffeb
1401 UINT64_C(3238002880), // S2_shuffeh
1402 UINT64_C(3238002816), // S2_shuffob
1403 UINT64_C(3246391296), // S2_shuffoh
1404 UINT64_C(2701131776), // S2_storerb_io
1405 UINT64_C(2936012800), // S2_storerb_pbr
1406 UINT64_C(2835349504), // S2_storerb_pci
1407 UINT64_C(2835349506), // S2_storerb_pcr
1408 UINT64_C(2868903936), // S2_storerb_pi
1409 UINT64_C(2852126720), // S2_storerb_pi_nt
1410 UINT64_C(2902458368), // S2_storerb_pr
1411 UINT64_C(1207959552), // S2_storerbgp
1412 UINT64_C(2711617536), // S2_storerbnew_io
1413 UINT64_C(2946498560), // S2_storerbnew_pbr
1414 UINT64_C(2845835264), // S2_storerbnew_pci
1415 UINT64_C(2845835266), // S2_storerbnew_pcr
1416 UINT64_C(2879389696), // S2_storerbnew_pi
1417 UINT64_C(2912944128), // S2_storerbnew_pr
1418 UINT64_C(1218445312), // S2_storerbnewgp
1419 UINT64_C(2713714688), // S2_storerd_io
1420 UINT64_C(2948595712), // S2_storerd_pbr
1421 UINT64_C(2847932416), // S2_storerd_pci
1422 UINT64_C(2847932418), // S2_storerd_pcr
1423 UINT64_C(2881486848), // S2_storerd_pi
1424 UINT64_C(2864709632), // S2_storerd_pi_nt
1425 UINT64_C(2915041280), // S2_storerd_pr
1426 UINT64_C(1220542464), // S2_storerdgp
1427 UINT64_C(2707423232), // S2_storerf_io
1428 UINT64_C(2942304256), // S2_storerf_pbr
1429 UINT64_C(2841640960), // S2_storerf_pci
1430 UINT64_C(2841640962), // S2_storerf_pcr
1431 UINT64_C(2875195392), // S2_storerf_pi
1432 UINT64_C(2908749824), // S2_storerf_pr
1433 UINT64_C(1214251008), // S2_storerfgp
1434 UINT64_C(2705326080), // S2_storerh_io
1435 UINT64_C(2940207104), // S2_storerh_pbr
1436 UINT64_C(2839543808), // S2_storerh_pci
1437 UINT64_C(2839543810), // S2_storerh_pcr
1438 UINT64_C(2873098240), // S2_storerh_pi
1439 UINT64_C(2856321024), // S2_storerh_pi_nt
1440 UINT64_C(2906652672), // S2_storerh_pr
1441 UINT64_C(1212153856), // S2_storerhgp
1442 UINT64_C(2711619584), // S2_storerhnew_io
1443 UINT64_C(2946500608), // S2_storerhnew_pbr
1444 UINT64_C(2845837312), // S2_storerhnew_pci
1445 UINT64_C(2845837314), // S2_storerhnew_pcr
1446 UINT64_C(2879391744), // S2_storerhnew_pi
1447 UINT64_C(2912946176), // S2_storerhnew_pr
1448 UINT64_C(1218447360), // S2_storerhnewgp
1449 UINT64_C(2709520384), // S2_storeri_io
1450 UINT64_C(2944401408), // S2_storeri_pbr
1451 UINT64_C(2843738112), // S2_storeri_pci
1452 UINT64_C(2843738114), // S2_storeri_pcr
1453 UINT64_C(2877292544), // S2_storeri_pi
1454 UINT64_C(2860515328), // S2_storeri_pi_nt
1455 UINT64_C(2910846976), // S2_storeri_pr
1456 UINT64_C(1216348160), // S2_storerigp
1457 UINT64_C(2711621632), // S2_storerinew_io
1458 UINT64_C(2946502656), // S2_storerinew_pbr
1459 UINT64_C(2845839360), // S2_storerinew_pci
1460 UINT64_C(2845839362), // S2_storerinew_pcr
1461 UINT64_C(2879393792), // S2_storerinew_pi
1462 UINT64_C(2912948224), // S2_storerinew_pr
1463 UINT64_C(1218449408), // S2_storerinewgp
1464 UINT64_C(2694840320), // S2_storew_locked
1465 UINT64_C(2694840328), // S2_storew_rl_at_vi
1466 UINT64_C(2694840360), // S2_storew_rl_st_vi
1467 UINT64_C(2357198848), // S2_svsathb
1468 UINT64_C(2357198912), // S2_svsathub
1469 UINT64_C(2264924160), // S2_tableidxb
1470 UINT64_C(2277507072), // S2_tableidxd
1471 UINT64_C(2269118464), // S2_tableidxh
1472 UINT64_C(2273312768), // S2_tableidxw
1473 UINT64_C(2361393216), // S2_togglebit_i
1474 UINT64_C(3330277504), // S2_togglebit_r
1475 UINT64_C(2231369728), // S2_tstbit_i
1476 UINT64_C(3338665984), // S2_tstbit_r
1477 UINT64_C(3221225472), // S2_valignib
1478 UINT64_C(3254779904), // S2_valignrb
1479 UINT64_C(3284140096), // S2_vcnegh
1480 UINT64_C(3284140032), // S2_vcrotate
1481 UINT64_C(3407880416), // S2_vrcnegh
1482 UINT64_C(2290090112), // S2_vrndpackwh
1483 UINT64_C(2290090176), // S2_vrndpackwhs
1484 UINT64_C(2281701568), // S2_vsathb
1485 UINT64_C(2147483872), // S2_vsathb_nopack
1486 UINT64_C(2281701376), // S2_vsathub
1487 UINT64_C(2147483776), // S2_vsathub_nopack
1488 UINT64_C(2281701440), // S2_vsatwh
1489 UINT64_C(2147483840), // S2_vsatwh_nopack
1490 UINT64_C(2281701504), // S2_vsatwuh
1491 UINT64_C(2147483808), // S2_vsatwuh_nopack
1492 UINT64_C(2353004768), // S2_vsplatrb
1493 UINT64_C(2218786880), // S2_vsplatrh
1494 UINT64_C(3229614080), // S2_vspliceib
1495 UINT64_C(3263168512), // S2_vsplicerb
1496 UINT64_C(2214592512), // S2_vsxtbh
1497 UINT64_C(2214592640), // S2_vsxthw
1498 UINT64_C(2290090048), // S2_vtrunehb
1499 UINT64_C(3246391360), // S2_vtrunewh
1500 UINT64_C(2290089984), // S2_vtrunohb
1501 UINT64_C(3246391424), // S2_vtrunowh
1502 UINT64_C(2214592576), // S2_vzxtbh
1503 UINT64_C(2214592704), // S2_vzxthw
1504 UINT64_C(3674210304), // S4_addaddi
1505 UINT64_C(3724541956), // S4_addi_asl_ri
1506 UINT64_C(3724541972), // S4_addi_lsr_ri
1507 UINT64_C(3724541952), // S4_andi_asl_ri
1508 UINT64_C(3724541968), // S4_andi_lsr_ri
1509 UINT64_C(2350907392), // S4_clbaddi
1510 UINT64_C(2287992896), // S4_clbpaddi
1511 UINT64_C(2287992832), // S4_clbpnorm
1512 UINT64_C(2373976064), // S4_extract
1513 UINT64_C(3372220480), // S4_extract_rp
1514 UINT64_C(2315255808), // S4_extractp
1515 UINT64_C(3250585728), // S4_extractp_rp
1516 UINT64_C(3330277568), // S4_lsli
1517 UINT64_C(2233466880), // S4_ntstbit_i
1518 UINT64_C(3340763136), // S4_ntstbit_r
1519 UINT64_C(3657433088), // S4_or_andi
1520 UINT64_C(3661627392), // S4_or_andix
1521 UINT64_C(3665821696), // S4_or_ori
1522 UINT64_C(3724541954), // S4_ori_asl_ri
1523 UINT64_C(3724541970), // S4_ori_lsr_ri
1524 UINT64_C(3588227072), // S4_parity
1525 UINT64_C(2936012932), // S4_pstorerbf_abs
1526 UINT64_C(889192448), // S4_pstorerbf_rr
1527 UINT64_C(2936021124), // S4_pstorerbfnew_abs
1528 UINT64_C(1174405120), // S4_pstorerbfnew_io
1529 UINT64_C(922746880), // S4_pstorerbfnew_rr
1530 UINT64_C(2946498692), // S4_pstorerbnewf_abs
1531 UINT64_C(899678208), // S4_pstorerbnewf_rr
1532 UINT64_C(2946506884), // S4_pstorerbnewfnew_abs
1533 UINT64_C(1184890880), // S4_pstorerbnewfnew_io
1534 UINT64_C(933232640), // S4_pstorerbnewfnew_rr
1535 UINT64_C(2946498688), // S4_pstorerbnewt_abs
1536 UINT64_C(882900992), // S4_pstorerbnewt_rr
1537 UINT64_C(2946506880), // S4_pstorerbnewtnew_abs
1538 UINT64_C(1117782016), // S4_pstorerbnewtnew_io
1539 UINT64_C(916455424), // S4_pstorerbnewtnew_rr
1540 UINT64_C(2936012928), // S4_pstorerbt_abs
1541 UINT64_C(872415232), // S4_pstorerbt_rr
1542 UINT64_C(2936021120), // S4_pstorerbtnew_abs
1543 UINT64_C(1107296256), // S4_pstorerbtnew_io
1544 UINT64_C(905969664), // S4_pstorerbtnew_rr
1545 UINT64_C(2948595844), // S4_pstorerdf_abs
1546 UINT64_C(901775360), // S4_pstorerdf_rr
1547 UINT64_C(2948604036), // S4_pstorerdfnew_abs
1548 UINT64_C(1186988032), // S4_pstorerdfnew_io
1549 UINT64_C(935329792), // S4_pstorerdfnew_rr
1550 UINT64_C(2948595840), // S4_pstorerdt_abs
1551 UINT64_C(884998144), // S4_pstorerdt_rr
1552 UINT64_C(2948604032), // S4_pstorerdtnew_abs
1553 UINT64_C(1119879168), // S4_pstorerdtnew_io
1554 UINT64_C(918552576), // S4_pstorerdtnew_rr
1555 UINT64_C(2942304388), // S4_pstorerff_abs
1556 UINT64_C(895483904), // S4_pstorerff_rr
1557 UINT64_C(2942312580), // S4_pstorerffnew_abs
1558 UINT64_C(1180696576), // S4_pstorerffnew_io
1559 UINT64_C(929038336), // S4_pstorerffnew_rr
1560 UINT64_C(2942304384), // S4_pstorerft_abs
1561 UINT64_C(878706688), // S4_pstorerft_rr
1562 UINT64_C(2942312576), // S4_pstorerftnew_abs
1563 UINT64_C(1113587712), // S4_pstorerftnew_io
1564 UINT64_C(912261120), // S4_pstorerftnew_rr
1565 UINT64_C(2940207236), // S4_pstorerhf_abs
1566 UINT64_C(893386752), // S4_pstorerhf_rr
1567 UINT64_C(2940215428), // S4_pstorerhfnew_abs
1568 UINT64_C(1178599424), // S4_pstorerhfnew_io
1569 UINT64_C(926941184), // S4_pstorerhfnew_rr
1570 UINT64_C(2946500740), // S4_pstorerhnewf_abs
1571 UINT64_C(899678216), // S4_pstorerhnewf_rr
1572 UINT64_C(2946508932), // S4_pstorerhnewfnew_abs
1573 UINT64_C(1184892928), // S4_pstorerhnewfnew_io
1574 UINT64_C(933232648), // S4_pstorerhnewfnew_rr
1575 UINT64_C(2946500736), // S4_pstorerhnewt_abs
1576 UINT64_C(882901000), // S4_pstorerhnewt_rr
1577 UINT64_C(2946508928), // S4_pstorerhnewtnew_abs
1578 UINT64_C(1117784064), // S4_pstorerhnewtnew_io
1579 UINT64_C(916455432), // S4_pstorerhnewtnew_rr
1580 UINT64_C(2940207232), // S4_pstorerht_abs
1581 UINT64_C(876609536), // S4_pstorerht_rr
1582 UINT64_C(2940215424), // S4_pstorerhtnew_abs
1583 UINT64_C(1111490560), // S4_pstorerhtnew_io
1584 UINT64_C(910163968), // S4_pstorerhtnew_rr
1585 UINT64_C(2944401540), // S4_pstorerif_abs
1586 UINT64_C(897581056), // S4_pstorerif_rr
1587 UINT64_C(2944409732), // S4_pstorerifnew_abs
1588 UINT64_C(1182793728), // S4_pstorerifnew_io
1589 UINT64_C(931135488), // S4_pstorerifnew_rr
1590 UINT64_C(2946502788), // S4_pstorerinewf_abs
1591 UINT64_C(899678224), // S4_pstorerinewf_rr
1592 UINT64_C(2946510980), // S4_pstorerinewfnew_abs
1593 UINT64_C(1184894976), // S4_pstorerinewfnew_io
1594 UINT64_C(933232656), // S4_pstorerinewfnew_rr
1595 UINT64_C(2946502784), // S4_pstorerinewt_abs
1596 UINT64_C(882901008), // S4_pstorerinewt_rr
1597 UINT64_C(2946510976), // S4_pstorerinewtnew_abs
1598 UINT64_C(1117786112), // S4_pstorerinewtnew_io
1599 UINT64_C(916455440), // S4_pstorerinewtnew_rr
1600 UINT64_C(2944401536), // S4_pstorerit_abs
1601 UINT64_C(880803840), // S4_pstorerit_rr
1602 UINT64_C(2944409728), // S4_pstoreritnew_abs
1603 UINT64_C(1115684864), // S4_pstoreritnew_io
1604 UINT64_C(914358272), // S4_pstoreritnew_rr
1605 UINT64_C(2699034624), // S4_stored_locked
1606 UINT64_C(2699034632), // S4_stored_rl_at_vi
1607 UINT64_C(2699034664), // S4_stored_rl_st_vi
1608 UINT64_C(1006632960), // S4_storeirb_io
1609 UINT64_C(947912704), // S4_storeirbf_io
1610 UINT64_C(964689920), // S4_storeirbfnew_io
1611 UINT64_C(939524096), // S4_storeirbt_io
1612 UINT64_C(956301312), // S4_storeirbtnew_io
1613 UINT64_C(1008730112), // S4_storeirh_io
1614 UINT64_C(950009856), // S4_storeirhf_io
1615 UINT64_C(966787072), // S4_storeirhfnew_io
1616 UINT64_C(941621248), // S4_storeirht_io
1617 UINT64_C(958398464), // S4_storeirhtnew_io
1618 UINT64_C(1010827264), // S4_storeiri_io
1619 UINT64_C(952107008), // S4_storeirif_io
1620 UINT64_C(968884224), // S4_storeirifnew_io
1621 UINT64_C(943718400), // S4_storeirit_io
1622 UINT64_C(960495616), // S4_storeiritnew_io
1623 UINT64_C(2868904064), // S4_storerb_ap
1624 UINT64_C(989855744), // S4_storerb_rr
1625 UINT64_C(2902458496), // S4_storerb_ur
1626 UINT64_C(2879389824), // S4_storerbnew_ap
1627 UINT64_C(1000341504), // S4_storerbnew_rr
1628 UINT64_C(2912944256), // S4_storerbnew_ur
1629 UINT64_C(2881486976), // S4_storerd_ap
1630 UINT64_C(1002438656), // S4_storerd_rr
1631 UINT64_C(2915041408), // S4_storerd_ur
1632 UINT64_C(2875195520), // S4_storerf_ap
1633 UINT64_C(996147200), // S4_storerf_rr
1634 UINT64_C(2908749952), // S4_storerf_ur
1635 UINT64_C(2873098368), // S4_storerh_ap
1636 UINT64_C(994050048), // S4_storerh_rr
1637 UINT64_C(2906652800), // S4_storerh_ur
1638 UINT64_C(2879391872), // S4_storerhnew_ap
1639 UINT64_C(1000341512), // S4_storerhnew_rr
1640 UINT64_C(2912946304), // S4_storerhnew_ur
1641 UINT64_C(2877292672), // S4_storeri_ap
1642 UINT64_C(998244352), // S4_storeri_rr
1643 UINT64_C(2910847104), // S4_storeri_ur
1644 UINT64_C(2879393920), // S4_storerinew_ap
1645 UINT64_C(1000341520), // S4_storerinew_rr
1646 UINT64_C(2912948352), // S4_storerinew_ur
1647 UINT64_C(3682598912), // S4_subaddi
1648 UINT64_C(3724541958), // S4_subi_asl_ri
1649 UINT64_C(3724541974), // S4_subi_lsr_ri
1650 UINT64_C(3284140224), // S4_vrcrotate
1651 UINT64_C(3416260608), // S4_vrcrotate_acc
1652 UINT64_C(3242197120), // S4_vxaddsubh
1653 UINT64_C(3250585600), // S4_vxaddsubhr
1654 UINT64_C(3242196992), // S4_vxaddsubw
1655 UINT64_C(3242197184), // S4_vxsubaddh
1656 UINT64_C(3250585664), // S4_vxsubaddhr
1657 UINT64_C(3242197056), // S4_vxsubaddw
1658 UINT64_C(2287992960), // S5_asrhub_rnd_sat
1659 UINT64_C(2287992992), // S5_asrhub_sat
1660 UINT64_C(2287992928), // S5_popcountp
1661 UINT64_C(2149580800), // S5_vasrhrnd
1662 UINT64_C(2147483744), // S6_rol_i_p
1663 UINT64_C(2181038304), // S6_rol_i_p_acc
1664 UINT64_C(2185232480), // S6_rol_i_p_and
1665 UINT64_C(2181038176), // S6_rol_i_p_nac
1666 UINT64_C(2185232608), // S6_rol_i_p_or
1667 UINT64_C(2189426784), // S6_rol_i_p_xacc
1668 UINT64_C(2348810336), // S6_rol_i_r
1669 UINT64_C(2382364896), // S6_rol_i_r_acc
1670 UINT64_C(2386559072), // S6_rol_i_r_and
1671 UINT64_C(2382364768), // S6_rol_i_r_nac
1672 UINT64_C(2386559200), // S6_rol_i_r_or
1673 UINT64_C(2390753376), // S6_rol_i_r_xacc
1674 UINT64_C(2218786944), // S6_vsplatrbp
1675 UINT64_C(3246391392), // S6_vtrunehb_ppp
1676 UINT64_C(3246391456), // S6_vtrunohb_ppp
1677 UINT64_C(0), // SA1_addi
1678 UINT64_C(6144), // SA1_addrx
1679 UINT64_C(3072), // SA1_addsp
1680 UINT64_C(4608), // SA1_and1
1681 UINT64_C(6768), // SA1_clrf
1682 UINT64_C(6736), // SA1_clrfnew
1683 UINT64_C(6752), // SA1_clrt
1684 UINT64_C(6720), // SA1_clrtnew
1685 UINT64_C(6400), // SA1_cmpeqi
1686 UINT64_C(7168), // SA1_combine0i
1687 UINT64_C(7176), // SA1_combine1i
1688 UINT64_C(7184), // SA1_combine2i
1689 UINT64_C(7192), // SA1_combine3i
1690 UINT64_C(7432), // SA1_combinerz
1691 UINT64_C(7424), // SA1_combinezr
1692 UINT64_C(4864), // SA1_dec
1693 UINT64_C(4352), // SA1_inc
1694 UINT64_C(2048), // SA1_seti
1695 UINT64_C(6656), // SA1_setin1
1696 UINT64_C(5376), // SA1_sxtb
1697 UINT64_C(5120), // SA1_sxth
1698 UINT64_C(4096), // SA1_tfr
1699 UINT64_C(5888), // SA1_zxtb
1700 UINT64_C(5632), // SA1_zxth
1701 UINT64_C(1509949440), // SAVE_REGISTERS_CALL_V4
1702 UINT64_C(1509949440), // SAVE_REGISTERS_CALL_V4STK
1703 UINT64_C(1509949440), // SAVE_REGISTERS_CALL_V4STK_EXT
1704 UINT64_C(1509949440), // SAVE_REGISTERS_CALL_V4STK_EXT_PIC
1705 UINT64_C(1509949440), // SAVE_REGISTERS_CALL_V4STK_PIC
1706 UINT64_C(1509949440), // SAVE_REGISTERS_CALL_V4_EXT
1707 UINT64_C(1509949440), // SAVE_REGISTERS_CALL_V4_EXT_PIC
1708 UINT64_C(1509949440), // SAVE_REGISTERS_CALL_V4_PIC
1709 UINT64_C(0), // SL1_loadri_io
1710 UINT64_C(4096), // SL1_loadrub_io
1711 UINT64_C(7936), // SL2_deallocframe
1712 UINT64_C(8128), // SL2_jumpr31
1713 UINT64_C(8133), // SL2_jumpr31_f
1714 UINT64_C(8135), // SL2_jumpr31_fnew
1715 UINT64_C(8132), // SL2_jumpr31_t
1716 UINT64_C(8134), // SL2_jumpr31_tnew
1717 UINT64_C(4096), // SL2_loadrb_io
1718 UINT64_C(7680), // SL2_loadrd_sp
1719 UINT64_C(0), // SL2_loadrh_io
1720 UINT64_C(7168), // SL2_loadri_sp
1721 UINT64_C(2048), // SL2_loadruh_io
1722 UINT64_C(8000), // SL2_return
1723 UINT64_C(8005), // SL2_return_f
1724 UINT64_C(8007), // SL2_return_fnew
1725 UINT64_C(8004), // SL2_return_t
1726 UINT64_C(8006), // SL2_return_tnew
1727 UINT64_C(4096), // SS1_storeb_io
1728 UINT64_C(0), // SS1_storew_io
1729 UINT64_C(7168), // SS2_allocframe
1730 UINT64_C(4608), // SS2_storebi0
1731 UINT64_C(4864), // SS2_storebi1
1732 UINT64_C(2560), // SS2_stored_sp
1733 UINT64_C(0), // SS2_storeh_io
1734 UINT64_C(2048), // SS2_storew_sp
1735 UINT64_C(4096), // SS2_storewi0
1736 UINT64_C(4352), // SS2_storewi1
1737 UINT64_C(0), // TFRI64_V2_ext
1738 UINT64_C(0), // TFRI64_V4
1739 UINT64_C(2449473568), // V6_extractw
1740 UINT64_C(432013536), // V6_get_qfext
1741 UINT64_C(432013504), // V6_get_qfext_oracc
1742 UINT64_C(432013376), // V6_lvsplatb
1743 UINT64_C(432013344), // V6_lvsplath
1744 UINT64_C(429916192), // V6_lvsplatw
1745 UINT64_C(503513088), // V6_pred_and
1746 UINT64_C(503513108), // V6_pred_and_n
1747 UINT64_C(503513096), // V6_pred_not
1748 UINT64_C(503513092), // V6_pred_or
1749 UINT64_C(503513104), // V6_pred_or_n
1750 UINT64_C(429916228), // V6_pred_scalar2
1751 UINT64_C(429916236), // V6_pred_scalar2v2
1752 UINT64_C(503513100), // V6_pred_xor
1753 UINT64_C(432013408), // V6_set_qfext
1754 UINT64_C(503513112), // V6_shuffeqh
1755 UINT64_C(503513116), // V6_shuffeqw
1756 UINT64_C(524296320), // V6_v6mpyhubs10
1757 UINT64_C(522199168), // V6_v6mpyhubs10_vxx
1758 UINT64_C(524296192), // V6_v6mpyvubs10
1759 UINT64_C(522199040), // V6_v6mpyvubs10_vxx
1760 UINT64_C(671088864), // V6_vL32Ub_ai
1761 UINT64_C(687866080), // V6_vL32Ub_pi
1762 UINT64_C(721420512), // V6_vL32Ub_ppu
1763 UINT64_C(671088640), // V6_vL32b_ai
1764 UINT64_C(671088672), // V6_vL32b_cur_ai
1765 UINT64_C(679477408), // V6_vL32b_cur_npred_ai
1766 UINT64_C(696254624), // V6_vL32b_cur_npred_pi
1767 UINT64_C(729809056), // V6_vL32b_cur_npred_ppu
1768 UINT64_C(687865888), // V6_vL32b_cur_pi
1769 UINT64_C(721420320), // V6_vL32b_cur_ppu
1770 UINT64_C(679477376), // V6_vL32b_cur_pred_ai
1771 UINT64_C(696254592), // V6_vL32b_cur_pred_pi
1772 UINT64_C(729809024), // V6_vL32b_cur_pred_ppu
1773 UINT64_C(679477344), // V6_vL32b_npred_ai
1774 UINT64_C(696254560), // V6_vL32b_npred_pi
1775 UINT64_C(729808992), // V6_vL32b_npred_ppu
1776 UINT64_C(675282944), // V6_vL32b_nt_ai
1777 UINT64_C(675282976), // V6_vL32b_nt_cur_ai
1778 UINT64_C(683671712), // V6_vL32b_nt_cur_npred_ai
1779 UINT64_C(700448928), // V6_vL32b_nt_cur_npred_pi
1780 UINT64_C(734003360), // V6_vL32b_nt_cur_npred_ppu
1781 UINT64_C(692060192), // V6_vL32b_nt_cur_pi
1782 UINT64_C(725614624), // V6_vL32b_nt_cur_ppu
1783 UINT64_C(683671680), // V6_vL32b_nt_cur_pred_ai
1784 UINT64_C(700448896), // V6_vL32b_nt_cur_pred_pi
1785 UINT64_C(734003328), // V6_vL32b_nt_cur_pred_ppu
1786 UINT64_C(683671648), // V6_vL32b_nt_npred_ai
1787 UINT64_C(700448864), // V6_vL32b_nt_npred_pi
1788 UINT64_C(734003296), // V6_vL32b_nt_npred_ppu
1789 UINT64_C(692060160), // V6_vL32b_nt_pi
1790 UINT64_C(725614592), // V6_vL32b_nt_ppu
1791 UINT64_C(683671616), // V6_vL32b_nt_pred_ai
1792 UINT64_C(700448832), // V6_vL32b_nt_pred_pi
1793 UINT64_C(734003264), // V6_vL32b_nt_pred_ppu
1794 UINT64_C(675283008), // V6_vL32b_nt_tmp_ai
1795 UINT64_C(683671776), // V6_vL32b_nt_tmp_npred_ai
1796 UINT64_C(700448992), // V6_vL32b_nt_tmp_npred_pi
1797 UINT64_C(734003424), // V6_vL32b_nt_tmp_npred_ppu
1798 UINT64_C(692060224), // V6_vL32b_nt_tmp_pi
1799 UINT64_C(725614656), // V6_vL32b_nt_tmp_ppu
1800 UINT64_C(683671744), // V6_vL32b_nt_tmp_pred_ai
1801 UINT64_C(700448960), // V6_vL32b_nt_tmp_pred_pi
1802 UINT64_C(734003392), // V6_vL32b_nt_tmp_pred_ppu
1803 UINT64_C(687865856), // V6_vL32b_pi
1804 UINT64_C(721420288), // V6_vL32b_ppu
1805 UINT64_C(679477312), // V6_vL32b_pred_ai
1806 UINT64_C(696254528), // V6_vL32b_pred_pi
1807 UINT64_C(729808960), // V6_vL32b_pred_ppu
1808 UINT64_C(671088704), // V6_vL32b_tmp_ai
1809 UINT64_C(679477472), // V6_vL32b_tmp_npred_ai
1810 UINT64_C(696254688), // V6_vL32b_tmp_npred_pi
1811 UINT64_C(729809120), // V6_vL32b_tmp_npred_ppu
1812 UINT64_C(687865920), // V6_vL32b_tmp_pi
1813 UINT64_C(721420352), // V6_vL32b_tmp_ppu
1814 UINT64_C(679477440), // V6_vL32b_tmp_pred_ai
1815 UINT64_C(696254656), // V6_vL32b_tmp_pred_pi
1816 UINT64_C(729809088), // V6_vL32b_tmp_pred_ppu
1817 UINT64_C(673186016), // V6_vS32Ub_ai
1818 UINT64_C(681574624), // V6_vS32Ub_npred_ai
1819 UINT64_C(698351840), // V6_vS32Ub_npred_pi
1820 UINT64_C(731906272), // V6_vS32Ub_npred_ppu
1821 UINT64_C(689963232), // V6_vS32Ub_pi
1822 UINT64_C(723517664), // V6_vS32Ub_ppu
1823 UINT64_C(681574592), // V6_vS32Ub_pred_ai
1824 UINT64_C(698351808), // V6_vS32Ub_pred_pi
1825 UINT64_C(731906240), // V6_vS32Ub_pred_ppu
1826 UINT64_C(673185792), // V6_vS32b_ai
1827 UINT64_C(673185824), // V6_vS32b_new_ai
1828 UINT64_C(681574504), // V6_vS32b_new_npred_ai
1829 UINT64_C(698351720), // V6_vS32b_new_npred_pi
1830 UINT64_C(731906152), // V6_vS32b_new_npred_ppu
1831 UINT64_C(689963040), // V6_vS32b_new_pi
1832 UINT64_C(723517472), // V6_vS32b_new_ppu
1833 UINT64_C(681574464), // V6_vS32b_new_pred_ai
1834 UINT64_C(698351680), // V6_vS32b_new_pred_pi
1835 UINT64_C(731906112), // V6_vS32b_new_pred_ppu
1836 UINT64_C(681574432), // V6_vS32b_npred_ai
1837 UINT64_C(698351648), // V6_vS32b_npred_pi
1838 UINT64_C(731906080), // V6_vS32b_npred_ppu
1839 UINT64_C(679477280), // V6_vS32b_nqpred_ai
1840 UINT64_C(696254496), // V6_vS32b_nqpred_pi
1841 UINT64_C(729808928), // V6_vS32b_nqpred_ppu
1842 UINT64_C(677380096), // V6_vS32b_nt_ai
1843 UINT64_C(677380128), // V6_vS32b_nt_new_ai
1844 UINT64_C(685768824), // V6_vS32b_nt_new_npred_ai
1845 UINT64_C(702546040), // V6_vS32b_nt_new_npred_pi
1846 UINT64_C(736100472), // V6_vS32b_nt_new_npred_ppu
1847 UINT64_C(694157344), // V6_vS32b_nt_new_pi
1848 UINT64_C(727711776), // V6_vS32b_nt_new_ppu
1849 UINT64_C(685768784), // V6_vS32b_nt_new_pred_ai
1850 UINT64_C(702546000), // V6_vS32b_nt_new_pred_pi
1851 UINT64_C(736100432), // V6_vS32b_nt_new_pred_ppu
1852 UINT64_C(685768736), // V6_vS32b_nt_npred_ai
1853 UINT64_C(702545952), // V6_vS32b_nt_npred_pi
1854 UINT64_C(736100384), // V6_vS32b_nt_npred_ppu
1855 UINT64_C(683671584), // V6_vS32b_nt_nqpred_ai
1856 UINT64_C(700448800), // V6_vS32b_nt_nqpred_pi
1857 UINT64_C(734003232), // V6_vS32b_nt_nqpred_ppu
1858 UINT64_C(694157312), // V6_vS32b_nt_pi
1859 UINT64_C(727711744), // V6_vS32b_nt_ppu
1860 UINT64_C(685768704), // V6_vS32b_nt_pred_ai
1861 UINT64_C(702545920), // V6_vS32b_nt_pred_pi
1862 UINT64_C(736100352), // V6_vS32b_nt_pred_ppu
1863 UINT64_C(683671552), // V6_vS32b_nt_qpred_ai
1864 UINT64_C(700448768), // V6_vS32b_nt_qpred_pi
1865 UINT64_C(734003200), // V6_vS32b_nt_qpred_ppu
1866 UINT64_C(689963008), // V6_vS32b_pi
1867 UINT64_C(723517440), // V6_vS32b_ppu
1868 UINT64_C(681574400), // V6_vS32b_pred_ai
1869 UINT64_C(698351616), // V6_vS32b_pred_pi
1870 UINT64_C(731906048), // V6_vS32b_pred_ppu
1871 UINT64_C(679477248), // V6_vS32b_qpred_ai
1872 UINT64_C(696254464), // V6_vS32b_qpred_pi
1873 UINT64_C(729808896), // V6_vS32b_qpred_ppu
1874 UINT64_C(673185832), // V6_vS32b_srls_ai
1875 UINT64_C(689963048), // V6_vS32b_srls_pi
1876 UINT64_C(723517480), // V6_vS32b_srls_ppu
1877 UINT64_C(476455104), // V6_vabs_f8
1878 UINT64_C(503718016), // V6_vabs_hf
1879 UINT64_C(504242368), // V6_vabs_qf16_hf
1880 UINT64_C(504242400), // V6_vabs_qf16_qf16
1881 UINT64_C(504242336), // V6_vabs_qf32_qf32
1882 UINT64_C(504242304), // V6_vabs_qf32_sf
1883 UINT64_C(503718048), // V6_vabs_sf
1884 UINT64_C(503382144), // V6_vabsb
1885 UINT64_C(503382176), // V6_vabsb_sat
1886 UINT64_C(482344992), // V6_vabsdiffh
1887 UINT64_C(482344960), // V6_vabsdiffub
1888 UINT64_C(482345024), // V6_vabsdiffuh
1889 UINT64_C(482345056), // V6_vabsdiffw
1890 UINT64_C(503316480), // V6_vabsh
1891 UINT64_C(503316512), // V6_vabsh_sat
1892 UINT64_C(503316544), // V6_vabsw
1893 UINT64_C(503316576), // V6_vabsw_sat
1894 UINT64_C(526393440), // V6_vadd_hf
1895 UINT64_C(528482432), // V6_vadd_hf_f8
1896 UINT64_C(530587872), // V6_vadd_hf_hf
1897 UINT64_C(526393408), // V6_vadd_qf16
1898 UINT64_C(526393472), // V6_vadd_qf16_mix
1899 UINT64_C(530587648), // V6_vadd_qf32
1900 UINT64_C(530587712), // V6_vadd_qf32_mix
1901 UINT64_C(530587680), // V6_vadd_sf
1902 UINT64_C(490741952), // V6_vadd_sf_bf
1903 UINT64_C(528490624), // V6_vadd_sf_hf
1904 UINT64_C(528490688), // V6_vadd_sf_sf
1905 UINT64_C(530579648), // V6_vaddb
1906 UINT64_C(476053632), // V6_vaddb_dv
1907 UINT64_C(503390304), // V6_vaddbnq
1908 UINT64_C(503390208), // V6_vaddbq
1909 UINT64_C(520093696), // V6_vaddbsat
1910 UINT64_C(513802240), // V6_vaddbsat_dv
1911 UINT64_C(480256000), // V6_vaddcarry
1912 UINT64_C(497033216), // V6_vaddcarryo
1913 UINT64_C(494936064), // V6_vaddcarrysat
1914 UINT64_C(520101888), // V6_vaddclbh
1915 UINT64_C(520101920), // V6_vaddclbw
1916 UINT64_C(530579680), // V6_vaddh
1917 UINT64_C(476053664), // V6_vaddh_dv
1918 UINT64_C(503390336), // V6_vaddhnq
1919 UINT64_C(503390240), // V6_vaddhq
1920 UINT64_C(473956448), // V6_vaddhsat
1921 UINT64_C(478150688), // V6_vaddhsat_dv
1922 UINT64_C(480247936), // V6_vaddhw
1923 UINT64_C(471867456), // V6_vaddhw_acc
1924 UINT64_C(480247872), // V6_vaddubh
1925 UINT64_C(473964704), // V6_vaddubh_acc
1926 UINT64_C(473956384), // V6_vaddubsat
1927 UINT64_C(476053728), // V6_vaddubsat_dv
1928 UINT64_C(513802368), // V6_vaddububb_sat
1929 UINT64_C(473956416), // V6_vadduhsat
1930 UINT64_C(478150656), // V6_vadduhsat_dv
1931 UINT64_C(480247904), // V6_vadduhw
1932 UINT64_C(473964672), // V6_vadduhw_acc
1933 UINT64_C(526385184), // V6_vadduwsat
1934 UINT64_C(513802304), // V6_vadduwsat_dv
1935 UINT64_C(473956352), // V6_vaddw
1936 UINT64_C(476053696), // V6_vaddw_dv
1937 UINT64_C(503390368), // V6_vaddwnq
1938 UINT64_C(503390272), // V6_vaddwq
1939 UINT64_C(473956480), // V6_vaddwsat
1940 UINT64_C(478150720), // V6_vaddwsat_dv
1941 UINT64_C(402653344), // V6_valign4
1942 UINT64_C(452984832), // V6_valignb
1943 UINT64_C(505421824), // V6_valignbi
1944 UINT64_C(471859360), // V6_vand
1945 UINT64_C(429917344), // V6_vandnqrt
1946 UINT64_C(425731168), // V6_vandnqrt_acc
1947 UINT64_C(429916320), // V6_vandqrt
1948 UINT64_C(425730144), // V6_vandqrt_acc
1949 UINT64_C(503521312), // V6_vandvnqv
1950 UINT64_C(503521280), // V6_vandvqv
1951 UINT64_C(429916232), // V6_vandvrt
1952 UINT64_C(425730176), // V6_vandvrt_acc
1953 UINT64_C(427819008), // V6_vaslh
1954 UINT64_C(429924512), // V6_vaslh_acc
1955 UINT64_C(530579616), // V6_vaslhv
1956 UINT64_C(425722080), // V6_vaslw
1957 UINT64_C(425730112), // V6_vaslw_acc
1958 UINT64_C(530579584), // V6_vaslwv
1959 UINT64_C(446701792), // V6_vasr_into
1960 UINT64_C(425722048), // V6_vasrh
1961 UINT64_C(427827424), // V6_vasrh_acc
1962 UINT64_C(452993024), // V6_vasrhbrndsat
1963 UINT64_C(402653184), // V6_vasrhbsat
1964 UINT64_C(452985056), // V6_vasrhubrndsat
1965 UINT64_C(452985024), // V6_vasrhubsat
1966 UINT64_C(530579552), // V6_vasrhv
1967 UINT64_C(402653408), // V6_vasruhubrndsat
1968 UINT64_C(402661536), // V6_vasruhubsat
1969 UINT64_C(402653216), // V6_vasruwuhrndsat
1970 UINT64_C(402661504), // V6_vasruwuhsat
1971 UINT64_C(486539360), // V6_vasrvuhubrndsat
1972 UINT64_C(486539328), // V6_vasrvuhubsat
1973 UINT64_C(486539296), // V6_vasrvwuhrndsat
1974 UINT64_C(486539264), // V6_vasrvwuhsat
1975 UINT64_C(425722016), // V6_vasrw
1976 UINT64_C(425730208), // V6_vasrw_acc
1977 UINT64_C(452984896), // V6_vasrwh
1978 UINT64_C(452984960), // V6_vasrwhrndsat
1979 UINT64_C(452984928), // V6_vasrwhsat
1980 UINT64_C(402653248), // V6_vasrwuhrndsat
1981 UINT64_C(452984992), // V6_vasrwuhsat
1982 UINT64_C(530579456), // V6_vasrwv
1983 UINT64_C(503521504), // V6_vassign
1984 UINT64_C(503717920), // V6_vassign_fp
1985 UINT64_C(503382208), // V6_vassign_tmp
1986 UINT64_C(520102016), // V6_vavgb
1987 UINT64_C(520102048), // V6_vavgbrnd
1988 UINT64_C(482345152), // V6_vavgh
1989 UINT64_C(484442272), // V6_vavghrnd
1990 UINT64_C(482345088), // V6_vavgub
1991 UINT64_C(484442208), // V6_vavgubrnd
1992 UINT64_C(482345120), // V6_vavguh
1993 UINT64_C(484442240), // V6_vavguhrnd
1994 UINT64_C(520101952), // V6_vavguw
1995 UINT64_C(520101984), // V6_vavguwrnd
1996 UINT64_C(482345184), // V6_vavgw
1997 UINT64_C(484442304), // V6_vavgwrnd
1998 UINT64_C(442499072), // V6_vccombine
1999 UINT64_C(503447776), // V6_vcl0h
2000 UINT64_C(503447712), // V6_vcl0w
2001 UINT64_C(436207616), // V6_vcmov
2002 UINT64_C(524288224), // V6_vcombine
2003 UINT64_C(513802464), // V6_vcombine_tmp
2004 UINT64_C(503718112), // V6_vconv_bf_qf32
2005 UINT64_C(504111328), // V6_vconv_f8_qf16
2006 UINT64_C(503652416), // V6_vconv_h_hf
2007 UINT64_C(503718080), // V6_vconv_h_hf_rnd
2008 UINT64_C(503652480), // V6_vconv_hf_h
2009 UINT64_C(503586912), // V6_vconv_hf_qf16
2010 UINT64_C(503587008), // V6_vconv_hf_qf32
2011 UINT64_C(504111264), // V6_vconv_qf16_f8
2012 UINT64_C(504111232), // V6_vconv_qf16_hf
2013 UINT64_C(504111296), // V6_vconv_qf16_qf16
2014 UINT64_C(504176864), // V6_vconv_qf32_qf32
2015 UINT64_C(504176832), // V6_vconv_qf32_sf
2016 UINT64_C(503586816), // V6_vconv_sf_qf32
2017 UINT64_C(503652448), // V6_vconv_sf_w
2018 UINT64_C(503652384), // V6_vconv_w_sf
2019 UINT64_C(448798912), // V6_vcvt2_b_hf
2020 UINT64_C(517284032), // V6_vcvt2_hf_b
2021 UINT64_C(517284064), // V6_vcvt2_hf_ub
2022 UINT64_C(448798944), // V6_vcvt2_ub_hf
2023 UINT64_C(532684992), // V6_vcvt_b_hf
2024 UINT64_C(490741856), // V6_vcvt_bf_sf
2025 UINT64_C(534782016), // V6_vcvt_f8_hf
2026 UINT64_C(503717888), // V6_vcvt_h_hf
2027 UINT64_C(503586880), // V6_vcvt_hf_b
2028 UINT64_C(503652512), // V6_vcvt_hf_f8
2029 UINT64_C(503587040), // V6_vcvt_hf_h
2030 UINT64_C(526393376), // V6_vcvt_hf_sf
2031 UINT64_C(503586848), // V6_vcvt_hf_ub
2032 UINT64_C(503586976), // V6_vcvt_hf_uh
2033 UINT64_C(503586944), // V6_vcvt_sf_hf
2034 UINT64_C(532684960), // V6_vcvt_ub_hf
2035 UINT64_C(503652352), // V6_vcvt_uh_hf
2036 UINT64_C(434118720), // V6_vdeal
2037 UINT64_C(503316704), // V6_vdealb
2038 UINT64_C(522191072), // V6_vdealb4w
2039 UINT64_C(503316672), // V6_vdealh
2040 UINT64_C(452993152), // V6_vdealvdd
2041 UINT64_C(522190880), // V6_vdelta
2042 UINT64_C(530587840), // V6_vdmpy_sf_hf
2043 UINT64_C(473964640), // V6_vdmpy_sf_hf_acc
2044 UINT64_C(419430592), // V6_vdmpybus
2045 UINT64_C(419438784), // V6_vdmpybus_acc
2046 UINT64_C(419430624), // V6_vdmpybus_dv
2047 UINT64_C(419438816), // V6_vdmpybus_dv_acc
2048 UINT64_C(419430464), // V6_vdmpyhb
2049 UINT64_C(419438688), // V6_vdmpyhb_acc
2050 UINT64_C(421527680), // V6_vdmpyhb_dv
2051 UINT64_C(421535872), // V6_vdmpyhb_dv_acc
2052 UINT64_C(421527648), // V6_vdmpyhisat
2053 UINT64_C(421535808), // V6_vdmpyhisat_acc
2054 UINT64_C(421527616), // V6_vdmpyhsat
2055 UINT64_C(421535840), // V6_vdmpyhsat_acc
2056 UINT64_C(421527584), // V6_vdmpyhsuisat
2057 UINT64_C(421535776), // V6_vdmpyhsuisat_acc
2058 UINT64_C(421527552), // V6_vdmpyhsusat
2059 UINT64_C(421535744), // V6_vdmpyhsusat_acc
2060 UINT64_C(469762144), // V6_vdmpyhvsat
2061 UINT64_C(469770336), // V6_vdmpyhvsat_acc
2062 UINT64_C(419430560), // V6_vdsaduh
2063 UINT64_C(425730048), // V6_vdsaduh_acc
2064 UINT64_C(528482304), // V6_veqb
2065 UINT64_C(478158848), // V6_veqb_and
2066 UINT64_C(478158912), // V6_veqb_or
2067 UINT64_C(478158976), // V6_veqb_xor
2068 UINT64_C(528482308), // V6_veqh
2069 UINT64_C(478158852), // V6_veqh_and
2070 UINT64_C(478158916), // V6_veqh_or
2071 UINT64_C(478158980), // V6_veqh_xor
2072 UINT64_C(528482332), // V6_veqhf
2073 UINT64_C(478158876), // V6_veqhf_and
2074 UINT64_C(478158940), // V6_veqhf_or
2075 UINT64_C(478159004), // V6_veqhf_xor
2076 UINT64_C(528482316), // V6_veqsf
2077 UINT64_C(478158860), // V6_veqsf_and
2078 UINT64_C(478158924), // V6_veqsf_or
2079 UINT64_C(478158988), // V6_veqsf_xor
2080 UINT64_C(528482312), // V6_veqw
2081 UINT64_C(478158856), // V6_veqw_and
2082 UINT64_C(478158920), // V6_veqw_or
2083 UINT64_C(478158984), // V6_veqw_xor
2084 UINT64_C(476061856), // V6_vfmax_f8
2085 UINT64_C(476061760), // V6_vfmax_hf
2086 UINT64_C(476061792), // V6_vfmax_sf
2087 UINT64_C(476061824), // V6_vfmin_f8
2088 UINT64_C(476061696), // V6_vfmin_hf
2089 UINT64_C(476061728), // V6_vfmin_sf
2090 UINT64_C(476455136), // V6_vfneg_f8
2091 UINT64_C(503717952), // V6_vfneg_hf
2092 UINT64_C(503717984), // V6_vfneg_sf
2093 UINT64_C(788529408), // V6_vgathermh
2094 UINT64_C(788530432), // V6_vgathermhq
2095 UINT64_C(788529664), // V6_vgathermhw
2096 UINT64_C(788530688), // V6_vgathermhwq
2097 UINT64_C(788529152), // V6_vgathermw
2098 UINT64_C(788530176), // V6_vgathermwq
2099 UINT64_C(528482320), // V6_vgtb
2100 UINT64_C(478158864), // V6_vgtb_and
2101 UINT64_C(478158928), // V6_vgtb_or
2102 UINT64_C(478158992), // V6_vgtb_xor
2103 UINT64_C(478158968), // V6_vgtbf
2104 UINT64_C(478159056), // V6_vgtbf_and
2105 UINT64_C(478158904), // V6_vgtbf_or
2106 UINT64_C(478159088), // V6_vgtbf_xor
2107 UINT64_C(528482324), // V6_vgth
2108 UINT64_C(478158868), // V6_vgth_and
2109 UINT64_C(478158932), // V6_vgth_or
2110 UINT64_C(478158996), // V6_vgth_xor
2111 UINT64_C(478158964), // V6_vgthf
2112 UINT64_C(478159052), // V6_vgthf_and
2113 UINT64_C(478158900), // V6_vgthf_or
2114 UINT64_C(478159084), // V6_vgthf_xor
2115 UINT64_C(478158960), // V6_vgtsf
2116 UINT64_C(478159048), // V6_vgtsf_and
2117 UINT64_C(478158896), // V6_vgtsf_or
2118 UINT64_C(478159080), // V6_vgtsf_xor
2119 UINT64_C(528482336), // V6_vgtub
2120 UINT64_C(478158880), // V6_vgtub_and
2121 UINT64_C(478158944), // V6_vgtub_or
2122 UINT64_C(478159008), // V6_vgtub_xor
2123 UINT64_C(528482340), // V6_vgtuh
2124 UINT64_C(478158884), // V6_vgtuh_and
2125 UINT64_C(478158948), // V6_vgtuh_or
2126 UINT64_C(478159012), // V6_vgtuh_xor
2127 UINT64_C(528482344), // V6_vgtuw
2128 UINT64_C(478158888), // V6_vgtuw_and
2129 UINT64_C(478158952), // V6_vgtuw_or
2130 UINT64_C(478159016), // V6_vgtuw_xor
2131 UINT64_C(528482328), // V6_vgtw
2132 UINT64_C(478158872), // V6_vgtw_and
2133 UINT64_C(478158936), // V6_vgtw_or
2134 UINT64_C(478159000), // V6_vgtw_xor
2135 UINT64_C(503324800), // V6_vhist
2136 UINT64_C(503455872), // V6_vhistq
2137 UINT64_C(504111200), // V6_vilog2_hf
2138 UINT64_C(504111136), // V6_vilog2_qf16
2139 UINT64_C(504111104), // V6_vilog2_qf32
2140 UINT64_C(504111168), // V6_vilog2_sf
2141 UINT64_C(429924384), // V6_vinsertwr
2142 UINT64_C(452984864), // V6_vlalignb
2143 UINT64_C(509616128), // V6_vlalignbi
2144 UINT64_C(427819104), // V6_vlsrb
2145 UINT64_C(427819072), // V6_vlsrh
2146 UINT64_C(530579520), // V6_vlsrhv
2147 UINT64_C(427819040), // V6_vlsrw
2148 UINT64_C(530579488), // V6_vlsrwv
2149 UINT64_C(425721984), // V6_vlut4
2150 UINT64_C(452993056), // V6_vlutvvb
2151 UINT64_C(402653280), // V6_vlutvvb_nm
2152 UINT64_C(452993184), // V6_vlutvvb_oracc
2153 UINT64_C(482353152), // V6_vlutvvb_oracci
2154 UINT64_C(505413632), // V6_vlutvvbi
2155 UINT64_C(452993216), // V6_vlutvwh
2156 UINT64_C(402653312), // V6_vlutvwh_nm
2157 UINT64_C(452993248), // V6_vlutvwh_oracc
2158 UINT64_C(484450304), // V6_vlutvwh_oracci
2159 UINT64_C(509607936), // V6_vlutvwhi
2160 UINT64_C(490741984), // V6_vmax_bf
2161 UINT64_C(532684896), // V6_vmax_hf
2162 UINT64_C(532684832), // V6_vmax_sf
2163 UINT64_C(522191008), // V6_vmaxb
2164 UINT64_C(520093920), // V6_vmaxh
2165 UINT64_C(520093856), // V6_vmaxub
2166 UINT64_C(520093888), // V6_vmaxuh
2167 UINT64_C(522190848), // V6_vmaxw
2168 UINT64_C(520102112), // V6_vmerge_qf
2169 UINT64_C(490741760), // V6_vmin_bf
2170 UINT64_C(532684928), // V6_vmin_hf
2171 UINT64_C(532684864), // V6_vmin_sf
2172 UINT64_C(522190976), // V6_vminb
2173 UINT64_C(520093792), // V6_vminh
2174 UINT64_C(520093728), // V6_vminub
2175 UINT64_C(520093760), // V6_vminuh
2176 UINT64_C(520093824), // V6_vminw
2177 UINT64_C(421527744), // V6_vmpabus
2178 UINT64_C(421535936), // V6_vmpabus_acc
2179 UINT64_C(471859296), // V6_vmpabusv
2180 UINT64_C(425721952), // V6_vmpabuu
2181 UINT64_C(429924480), // V6_vmpabuu_acc
2182 UINT64_C(484442336), // V6_vmpabuuv
2183 UINT64_C(421527776), // V6_vmpahb
2184 UINT64_C(421535968), // V6_vmpahb_acc
2185 UINT64_C(427827328), // V6_vmpahhsat
2186 UINT64_C(427819168), // V6_vmpauhb
2187 UINT64_C(427827264), // V6_vmpauhb_acc
2188 UINT64_C(427827360), // V6_vmpauhuhsat
2189 UINT64_C(427827392), // V6_vmpsuhuhsat
2190 UINT64_C(528482496), // V6_vmpy_hf_f8
2191 UINT64_C(528482528), // V6_vmpy_hf_f8_acc
2192 UINT64_C(528490592), // V6_vmpy_hf_hf
2193 UINT64_C(473964608), // V6_vmpy_hf_hf_acc
2194 UINT64_C(534782048), // V6_vmpy_qf16
2195 UINT64_C(534782080), // V6_vmpy_qf16_hf
2196 UINT64_C(534782112), // V6_vmpy_qf16_mix_hf
2197 UINT64_C(534781952), // V6_vmpy_qf32
2198 UINT64_C(534782176), // V6_vmpy_qf32_hf
2199 UINT64_C(528490496), // V6_vmpy_qf32_mix_hf
2200 UINT64_C(534782144), // V6_vmpy_qf32_qf16
2201 UINT64_C(534781984), // V6_vmpy_qf32_sf
2202 UINT64_C(436215904), // V6_vmpy_rt_hf
2203 UINT64_C(436215872), // V6_vmpy_rt_qf16
2204 UINT64_C(436215840), // V6_vmpy_rt_sf
2205 UINT64_C(490741888), // V6_vmpy_sf_bf
2206 UINT64_C(486547456), // V6_vmpy_sf_bf_acc
2207 UINT64_C(528490560), // V6_vmpy_sf_hf
2208 UINT64_C(473964576), // V6_vmpy_sf_hf_acc
2209 UINT64_C(528490528), // V6_vmpy_sf_sf
2210 UINT64_C(421527712), // V6_vmpybus
2211 UINT64_C(421535904), // V6_vmpybus_acc
2212 UINT64_C(469762240), // V6_vmpybusv
2213 UINT64_C(469770432), // V6_vmpybusv_acc
2214 UINT64_C(469762176), // V6_vmpybv
2215 UINT64_C(469770368), // V6_vmpybv_acc
2216 UINT64_C(534773920), // V6_vmpyewuh
2217 UINT64_C(513802432), // V6_vmpyewuh_64
2218 UINT64_C(423624704), // V6_vmpyh
2219 UINT64_C(429924544), // V6_vmpyh_acc
2220 UINT64_C(423632896), // V6_vmpyhsat_acc
2221 UINT64_C(423624768), // V6_vmpyhsrs
2222 UINT64_C(423624736), // V6_vmpyhss
2223 UINT64_C(471859264), // V6_vmpyhus
2224 UINT64_C(471867424), // V6_vmpyhus_acc
2225 UINT64_C(469762272), // V6_vmpyhv
2226 UINT64_C(469770464), // V6_vmpyhv_acc
2227 UINT64_C(471859232), // V6_vmpyhvsrs
2228 UINT64_C(526385152), // V6_vmpyieoh
2229 UINT64_C(473964544), // V6_vmpyiewh_acc
2230 UINT64_C(532676608), // V6_vmpyiewuh
2231 UINT64_C(471867552), // V6_vmpyiewuh_acc
2232 UINT64_C(471859328), // V6_vmpyih
2233 UINT64_C(471867520), // V6_vmpyih_acc
2234 UINT64_C(425721856), // V6_vmpyihb
2235 UINT64_C(425730080), // V6_vmpyihb_acc
2236 UINT64_C(532676640), // V6_vmpyiowh
2237 UINT64_C(429916160), // V6_vmpyiwb
2238 UINT64_C(423632960), // V6_vmpyiwb_acc
2239 UINT64_C(427819232), // V6_vmpyiwh
2240 UINT64_C(423632992), // V6_vmpyiwh_acc
2241 UINT64_C(427819200), // V6_vmpyiwub
2242 UINT64_C(427827232), // V6_vmpyiwub_acc
2243 UINT64_C(534773984), // V6_vmpyowh
2244 UINT64_C(471867488), // V6_vmpyowh_64_acc
2245 UINT64_C(524288000), // V6_vmpyowh_rnd
2246 UINT64_C(471867616), // V6_vmpyowh_rnd_sacc
2247 UINT64_C(471867584), // V6_vmpyowh_sacc
2248 UINT64_C(432013312), // V6_vmpyub
2249 UINT64_C(427827200), // V6_vmpyub_acc
2250 UINT64_C(469762208), // V6_vmpyubv
2251 UINT64_C(469770400), // V6_vmpyubv_acc
2252 UINT64_C(423624800), // V6_vmpyuh
2253 UINT64_C(423632928), // V6_vmpyuh_acc
2254 UINT64_C(425721920), // V6_vmpyuhe
2255 UINT64_C(427827296), // V6_vmpyuhe_acc
2256 UINT64_C(471859200), // V6_vmpyuhv
2257 UINT64_C(471867392), // V6_vmpyuhv_acc
2258 UINT64_C(532685024), // V6_vmpyuhvs
2259 UINT64_C(518004736), // V6_vmux
2260 UINT64_C(520102080), // V6_vnavgb
2261 UINT64_C(484442144), // V6_vnavgh
2262 UINT64_C(484442112), // V6_vnavgub
2263 UINT64_C(484442176), // V6_vnavgw
2264 UINT64_C(440401920), // V6_vnccombine
2265 UINT64_C(438304768), // V6_vncmov
2266 UINT64_C(504242240), // V6_vneg_qf16_hf
2267 UINT64_C(504242272), // V6_vneg_qf16_qf16
2268 UINT64_C(504242208), // V6_vneg_qf32_qf32
2269 UINT64_C(504242176), // V6_vneg_qf32_sf
2270 UINT64_C(503513248), // V6_vnormamth
2271 UINT64_C(503513216), // V6_vnormamtw
2272 UINT64_C(503316608), // V6_vnot
2273 UINT64_C(471859392), // V6_vor
2274 UINT64_C(532676672), // V6_vpackeb
2275 UINT64_C(532676704), // V6_vpackeh
2276 UINT64_C(532676800), // V6_vpackhb_sat
2277 UINT64_C(532676768), // V6_vpackhub_sat
2278 UINT64_C(534773792), // V6_vpackob
2279 UINT64_C(534773824), // V6_vpackoh
2280 UINT64_C(534773760), // V6_vpackwh_sat
2281 UINT64_C(532676832), // V6_vpackwuh_sat
2282 UINT64_C(503447744), // V6_vpopcounth
2283 UINT64_C(503521344), // V6_vprefixqb
2284 UINT64_C(503521600), // V6_vprefixqh
2285 UINT64_C(503521856), // V6_vprefixqw
2286 UINT64_C(522190944), // V6_vrdelta
2287 UINT64_C(432013472), // V6_vrmpybub_rtt
2288 UINT64_C(429924352), // V6_vrmpybub_rtt_acc
2289 UINT64_C(419430528), // V6_vrmpybus
2290 UINT64_C(419438752), // V6_vrmpybus_acc
2291 UINT64_C(423624832), // V6_vrmpybusi
2292 UINT64_C(423633024), // V6_vrmpybusi_acc
2293 UINT64_C(469762112), // V6_vrmpybusv
2294 UINT64_C(469770304), // V6_vrmpybusv_acc
2295 UINT64_C(469762080), // V6_vrmpybv
2296 UINT64_C(469770272), // V6_vrmpybv_acc
2297 UINT64_C(419430496), // V6_vrmpyub
2298 UINT64_C(419438720), // V6_vrmpyub_acc
2299 UINT64_C(432013440), // V6_vrmpyub_rtt
2300 UINT64_C(429924576), // V6_vrmpyub_rtt_acc
2301 UINT64_C(429916352), // V6_vrmpyubi
2302 UINT64_C(425730240), // V6_vrmpyubi_acc
2303 UINT64_C(469762048), // V6_vrmpyubv
2304 UINT64_C(469770240), // V6_vrmpyubv_acc
2305 UINT64_C(434634752), // V6_vrmpyzbb_rt
2306 UINT64_C(432021568), // V6_vrmpyzbb_rt_acc
2307 UINT64_C(434110464), // V6_vrmpyzbb_rx
2308 UINT64_C(432545856), // V6_vrmpyzbb_rx_acc
2309 UINT64_C(435683392), // V6_vrmpyzbub_rt
2310 UINT64_C(433070112), // V6_vrmpyzbub_rt_acc
2311 UINT64_C(435159104), // V6_vrmpyzbub_rx
2312 UINT64_C(433594400), // V6_vrmpyzbub_rx_acc
2313 UINT64_C(434634784), // V6_vrmpyzcb_rt
2314 UINT64_C(432021600), // V6_vrmpyzcb_rt_acc
2315 UINT64_C(434110496), // V6_vrmpyzcb_rx
2316 UINT64_C(432545888), // V6_vrmpyzcb_rx_acc
2317 UINT64_C(434634816), // V6_vrmpyzcbs_rt
2318 UINT64_C(432021536), // V6_vrmpyzcbs_rt_acc
2319 UINT64_C(434110528), // V6_vrmpyzcbs_rx
2320 UINT64_C(432545824), // V6_vrmpyzcbs_rx_acc
2321 UINT64_C(435683328), // V6_vrmpyznb_rt
2322 UINT64_C(433070144), // V6_vrmpyznb_rt_acc
2323 UINT64_C(435159040), // V6_vrmpyznb_rx
2324 UINT64_C(433594432), // V6_vrmpyznb_rx_acc
2325 UINT64_C(425721888), // V6_vror
2326 UINT64_C(444604640), // V6_vrotr
2327 UINT64_C(526385344), // V6_vroundhb
2328 UINT64_C(526385376), // V6_vroundhub
2329 UINT64_C(534773856), // V6_vrounduhub
2330 UINT64_C(534773888), // V6_vrounduwuh
2331 UINT64_C(526385280), // V6_vroundwh
2332 UINT64_C(526385312), // V6_vroundwuh
2333 UINT64_C(423624896), // V6_vrsadubi
2334 UINT64_C(423633088), // V6_vrsadubi_acc
2335 UINT64_C(494936288), // V6_vsatdw
2336 UINT64_C(526385216), // V6_vsathub
2337 UINT64_C(522191040), // V6_vsatuwuh
2338 UINT64_C(526385248), // V6_vsatwh
2339 UINT64_C(503447648), // V6_vsb
2340 UINT64_C(790626336), // V6_vscattermh
2341 UINT64_C(790626464), // V6_vscattermh_add
2342 UINT64_C(796917888), // V6_vscattermhq
2343 UINT64_C(790626368), // V6_vscattermhw
2344 UINT64_C(790626496), // V6_vscattermhw_add
2345 UINT64_C(799014912), // V6_vscattermhwq
2346 UINT64_C(790626304), // V6_vscattermw
2347 UINT64_C(790626432), // V6_vscattermw_add
2348 UINT64_C(796917760), // V6_vscattermwq
2349 UINT64_C(503447680), // V6_vsh
2350 UINT64_C(524288096), // V6_vshufeh
2351 UINT64_C(434118688), // V6_vshuff
2352 UINT64_C(503447552), // V6_vshuffb
2353 UINT64_C(524288032), // V6_vshuffeb
2354 UINT64_C(503382240), // V6_vshuffh
2355 UINT64_C(524288064), // V6_vshuffob
2356 UINT64_C(452993120), // V6_vshuffvdd
2357 UINT64_C(524288192), // V6_vshufoeb
2358 UINT64_C(524288160), // V6_vshufoeh
2359 UINT64_C(524288128), // V6_vshufoh
2360 UINT64_C(526393536), // V6_vsub_hf
2361 UINT64_C(528482464), // V6_vsub_hf_f8
2362 UINT64_C(526393344), // V6_vsub_hf_hf
2363 UINT64_C(436215936), // V6_vsub_hf_mix
2364 UINT64_C(526393504), // V6_vsub_qf16
2365 UINT64_C(526393568), // V6_vsub_qf16_mix
2366 UINT64_C(530587744), // V6_vsub_qf32
2367 UINT64_C(530587808), // V6_vsub_qf32_mix
2368 UINT64_C(530587776), // V6_vsub_sf
2369 UINT64_C(490741920), // V6_vsub_sf_bf
2370 UINT64_C(528490656), // V6_vsub_sf_hf
2371 UINT64_C(436215808), // V6_vsub_sf_mix
2372 UINT64_C(528490720), // V6_vsub_sf_sf
2373 UINT64_C(473956512), // V6_vsubb
2374 UINT64_C(478150752), // V6_vsubb_dv
2375 UINT64_C(503455776), // V6_vsubbnq
2376 UINT64_C(503390400), // V6_vsubbq
2377 UINT64_C(522190912), // V6_vsubbsat
2378 UINT64_C(513802272), // V6_vsubbsat_dv
2379 UINT64_C(480256128), // V6_vsubcarry
2380 UINT64_C(497033344), // V6_vsubcarryo
2381 UINT64_C(473956544), // V6_vsubh
2382 UINT64_C(478150784), // V6_vsubh_dv
2383 UINT64_C(503455808), // V6_vsubhnq
2384 UINT64_C(503390432), // V6_vsubhq
2385 UINT64_C(476053568), // V6_vsubhsat
2386 UINT64_C(480247808), // V6_vsubhsat_dv
2387 UINT64_C(480248032), // V6_vsubhw
2388 UINT64_C(480247968), // V6_vsububh
2389 UINT64_C(476053504), // V6_vsububsat
2390 UINT64_C(478150848), // V6_vsububsat_dv
2391 UINT64_C(513802400), // V6_vsubububb_sat
2392 UINT64_C(476053536), // V6_vsubuhsat
2393 UINT64_C(478150880), // V6_vsubuhsat_dv
2394 UINT64_C(480248000), // V6_vsubuhw
2395 UINT64_C(532676736), // V6_vsubuwsat
2396 UINT64_C(513802336), // V6_vsubuwsat_dv
2397 UINT64_C(473956576), // V6_vsubw
2398 UINT64_C(478150816), // V6_vsubw_dv
2399 UINT64_C(503455840), // V6_vsubwnq
2400 UINT64_C(503455744), // V6_vsubwq
2401 UINT64_C(476053600), // V6_vsubwsat
2402 UINT64_C(480247840), // V6_vsubwsat_dv
2403 UINT64_C(513810432), // V6_vswap
2404 UINT64_C(419430400), // V6_vtmpyb
2405 UINT64_C(419438592), // V6_vtmpyb_acc
2406 UINT64_C(419430432), // V6_vtmpybus
2407 UINT64_C(419438624), // V6_vtmpybus_acc
2408 UINT64_C(429916288), // V6_vtmpyhb
2409 UINT64_C(419438656), // V6_vtmpyhb_acc
2410 UINT64_C(503382080), // V6_vunpackb
2411 UINT64_C(503382112), // V6_vunpackh
2412 UINT64_C(503324672), // V6_vunpackob
2413 UINT64_C(503324704), // V6_vunpackoh
2414 UINT64_C(503382016), // V6_vunpackub
2415 UINT64_C(503382048), // V6_vunpackuh
2416 UINT64_C(503325824), // V6_vwhist128
2417 UINT64_C(503326336), // V6_vwhist128m
2418 UINT64_C(503456896), // V6_vwhist128q
2419 UINT64_C(503457408), // V6_vwhist128qm
2420 UINT64_C(503325312), // V6_vwhist256
2421 UINT64_C(503325568), // V6_vwhist256_sat
2422 UINT64_C(503456384), // V6_vwhist256q
2423 UINT64_C(503456640), // V6_vwhist256q_sat
2424 UINT64_C(471859424), // V6_vxor
2425 UINT64_C(503447584), // V6_vzb
2426 UINT64_C(503447616), // V6_vzh
2427 UINT64_C(738197504), // V6_zLd_ai
2428 UINT64_C(754974720), // V6_zLd_pi
2429 UINT64_C(754974721), // V6_zLd_ppu
2430 UINT64_C(746586112), // V6_zLd_pred_ai
2431 UINT64_C(763363328), // V6_zLd_pred_pi
2432 UINT64_C(763363329), // V6_zLd_pred_ppu
2433 UINT64_C(429916448), // V6_zextract
2434 UINT64_C(2818572288), // Y2_barrier
2435 UINT64_C(1814036480), // Y2_break
2436 UINT64_C(1677721696), // Y2_ciad
2437 UINT64_C(1694498816), // Y2_crswap0
2438 UINT64_C(1677721632), // Y2_cswi
2439 UINT64_C(2684354560), // Y2_dccleana
2440 UINT64_C(2720006144), // Y2_dccleanidx
2441 UINT64_C(2688548864), // Y2_dccleaninva
2442 UINT64_C(2724200448), // Y2_dccleaninvidx
2443 UINT64_C(2483027968), // Y2_dcfetchbo
2444 UINT64_C(2483036160), // Y2_dcfetchbo_nt
2445 UINT64_C(2686451712), // Y2_dcinva
2446 UINT64_C(2722103296), // Y2_dcinvidx
2447 UINT64_C(2717908992), // Y2_dckill
2448 UINT64_C(2753560576), // Y2_dctagr
2449 UINT64_C(2751463424), // Y2_dctagw
2450 UINT64_C(2696937472), // Y2_dczeroa
2451 UINT64_C(2696945664), // Y2_dczeroa_nt
2452 UINT64_C(1711276032), // Y2_getimask
2453 UINT64_C(1717567488), // Y2_iassignr
2454 UINT64_C(1677721664), // Y2_iassignw
2455 UINT64_C(1436549120), // Y2_icdatar
2456 UINT64_C(1438654464), // Y2_icdataw
2457 UINT64_C(1455423488), // Y2_icinva
2458 UINT64_C(1455425536), // Y2_icinvidx
2459 UINT64_C(1455427584), // Y2_ickill
2460 UINT64_C(1440743424), // Y2_ictagr
2461 UINT64_C(1438646272), // Y2_ictagw
2462 UINT64_C(1472200706), // Y2_isync
2463 UINT64_C(1814036576), // Y2_k0lock
2464 UINT64_C(1814036608), // Y2_k0unlock
2465 UINT64_C(2824863744), // Y2_l2cleaninvidx
2466 UINT64_C(2820669440), // Y2_l2kill
2467 UINT64_C(1681915936), // Y2_resume
2468 UINT64_C(1686110208), // Y2_setimask
2469 UINT64_C(1686110240), // Y2_setprio
2470 UINT64_C(1684013088), // Y2_start
2471 UINT64_C(1684013056), // Y2_stop
2472 UINT64_C(1677721600), // Y2_swi
2473 UINT64_C(2822766592), // Y2_syncht
2474 UINT64_C(1853882368), // Y2_tfrscrr
2475 UINT64_C(1728053248), // Y2_tfrsrcr
2476 UINT64_C(1814036512), // Y2_tlblock
2477 UINT64_C(1820327936), // Y2_tlbp
2478 UINT64_C(1818230784), // Y2_tlbpp
2479 UINT64_C(1816133632), // Y2_tlbr
2480 UINT64_C(1814036544), // Y2_tlbunlock
2481 UINT64_C(1811939328), // Y2_tlbw
2482 UINT64_C(1681915904), // Y2_wait
2483 UINT64_C(1696595968), // Y4_crswap1
2484 UINT64_C(1837105152), // Y4_crswap10
2485 UINT64_C(2785017856), // Y4_l2fetch
2486 UINT64_C(2757754880), // Y4_l2tagr
2487 UINT64_C(2755657728), // Y4_l2tagw
2488 UINT64_C(1684013120), // Y4_nmi
2489 UINT64_C(1686110304), // Y4_siad
2490 UINT64_C(1862270976), // Y4_tfrscpp
2491 UINT64_C(1828716544), // Y4_tfrspcp
2492 UINT64_C(1648361472), // Y4_trace
2493 UINT64_C(1824522240), // Y5_ctlbw
2494 UINT64_C(2787115008), // Y5_l2cleanidx
2495 UINT64_C(2793406464), // Y5_l2fetch
2496 UINT64_C(2820673536), // Y5_l2gclean
2497 UINT64_C(2820675584), // Y5_l2gcleaninv
2498 UINT64_C(2820671488), // Y5_l2gunlock
2499 UINT64_C(2789212160), // Y5_l2invidx
2500 UINT64_C(2699042816), // Y5_l2locka
2501 UINT64_C(2791309312), // Y5_l2unlocka
2502 UINT64_C(1822425088), // Y5_tlbasidi
2503 UINT64_C(1826619392), // Y5_tlboc
2504 UINT64_C(1648361504), // Y6_diag
2505 UINT64_C(1648361536), // Y6_diag0
2506 UINT64_C(1648361568), // Y6_diag1
2507 UINT64_C(2785017920), // Y6_dmlink
2508 UINT64_C(2818572384), // Y6_dmpause
2509 UINT64_C(2818572352), // Y6_dmpoll
2510 UINT64_C(2785017984), // Y6_dmresume
2511 UINT64_C(2785017888), // Y6_dmstart
2512 UINT64_C(2818572320), // Y6_dmwait
2513 UINT64_C(2797600768), // Y6_l2gcleaninvpa
2514 UINT64_C(2795503616), // Y6_l2gcleanpa
2515 UINT64_C(3581935616), // dep_A2_addsat
2516 UINT64_C(3581935744), // dep_A2_subsat
2517 UINT64_C(3556769792), // dep_S2_packhl
2518 UINT64_C(0), // invalid_decode
2519 };
2520 constexpr unsigned FirstSupportedOpcode = 947;
2521
2522 const unsigned opcode = MI.getOpcode();
2523 if (opcode < FirstSupportedOpcode)
2524 reportUnsupportedInst(Inst: MI);
2525 unsigned TableIndex = opcode - FirstSupportedOpcode;
2526 uint64_t Value = InstBits[TableIndex];
2527 uint64_t op = 0;
2528 (void)op; // suppress warning
2529 switch (opcode) {
2530 case Hexagon::A2_nop:
2531 case Hexagon::CONST32:
2532 case Hexagon::CONST64:
2533 case Hexagon::DuplexIClass0:
2534 case Hexagon::DuplexIClass1:
2535 case Hexagon::DuplexIClass2:
2536 case Hexagon::DuplexIClass3:
2537 case Hexagon::DuplexIClass4:
2538 case Hexagon::DuplexIClass5:
2539 case Hexagon::DuplexIClass6:
2540 case Hexagon::DuplexIClass7:
2541 case Hexagon::DuplexIClass8:
2542 case Hexagon::DuplexIClass9:
2543 case Hexagon::DuplexIClassA:
2544 case Hexagon::DuplexIClassB:
2545 case Hexagon::DuplexIClassC:
2546 case Hexagon::DuplexIClassD:
2547 case Hexagon::DuplexIClassE:
2548 case Hexagon::DuplexIClassF:
2549 case Hexagon::J2_rte:
2550 case Hexagon::J2_unpause:
2551 case Hexagon::SL2_deallocframe:
2552 case Hexagon::SL2_jumpr31:
2553 case Hexagon::SL2_jumpr31_f:
2554 case Hexagon::SL2_jumpr31_fnew:
2555 case Hexagon::SL2_jumpr31_t:
2556 case Hexagon::SL2_jumpr31_tnew:
2557 case Hexagon::SL2_return:
2558 case Hexagon::SL2_return_f:
2559 case Hexagon::SL2_return_fnew:
2560 case Hexagon::SL2_return_t:
2561 case Hexagon::SL2_return_tnew:
2562 case Hexagon::TFRI64_V2_ext:
2563 case Hexagon::TFRI64_V4:
2564 case Hexagon::V6_vhist:
2565 case Hexagon::V6_vwhist128:
2566 case Hexagon::V6_vwhist256:
2567 case Hexagon::V6_vwhist256_sat:
2568 case Hexagon::Y2_barrier:
2569 case Hexagon::Y2_break:
2570 case Hexagon::Y2_dckill:
2571 case Hexagon::Y2_ickill:
2572 case Hexagon::Y2_isync:
2573 case Hexagon::Y2_k0lock:
2574 case Hexagon::Y2_k0unlock:
2575 case Hexagon::Y2_l2kill:
2576 case Hexagon::Y2_syncht:
2577 case Hexagon::Y2_tlblock:
2578 case Hexagon::Y2_tlbunlock:
2579 case Hexagon::Y5_l2gclean:
2580 case Hexagon::Y5_l2gcleaninv:
2581 case Hexagon::Y5_l2gunlock:
2582 case Hexagon::invalid_decode: {
2583 break;
2584 }
2585 case Hexagon::A2_tfrcrr: {
2586 // op: Cs32
2587 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2588 Value |= (op & 0x1f) << 16;
2589 // op: Rd32
2590 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2591 Value |= (op & 0x1f);
2592 break;
2593 }
2594 case Hexagon::A4_tfrcpp: {
2595 // op: Css32
2596 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2597 Value |= (op & 0x1f) << 16;
2598 // op: Rdd32
2599 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2600 Value |= (op & 0x1f);
2601 break;
2602 }
2603 case Hexagon::G4_tfrgcrr: {
2604 // op: Gs32
2605 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2606 Value |= (op & 0x1f) << 16;
2607 // op: Rd32
2608 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2609 Value |= (op & 0x1f);
2610 break;
2611 }
2612 case Hexagon::G4_tfrgcpp: {
2613 // op: Gss32
2614 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2615 Value |= (op & 0x1f) << 16;
2616 // op: Rdd32
2617 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2618 Value |= (op & 0x1f);
2619 break;
2620 }
2621 case Hexagon::J4_cmpeqi_f_jumpnv_nt:
2622 case Hexagon::J4_cmpeqi_f_jumpnv_t:
2623 case Hexagon::J4_cmpeqi_t_jumpnv_nt:
2624 case Hexagon::J4_cmpeqi_t_jumpnv_t:
2625 case Hexagon::J4_cmpgti_f_jumpnv_nt:
2626 case Hexagon::J4_cmpgti_f_jumpnv_t:
2627 case Hexagon::J4_cmpgti_t_jumpnv_nt:
2628 case Hexagon::J4_cmpgti_t_jumpnv_t:
2629 case Hexagon::J4_cmpgtui_f_jumpnv_nt:
2630 case Hexagon::J4_cmpgtui_f_jumpnv_t:
2631 case Hexagon::J4_cmpgtui_t_jumpnv_nt:
2632 case Hexagon::J4_cmpgtui_t_jumpnv_t: {
2633 // op: II
2634 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2635 Value |= (op & 0x1f) << 8;
2636 // op: Ii
2637 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2638 Value |= (op & 0x600) << 11;
2639 Value |= (op & 0x1fc) >> 1;
2640 // op: Ns8
2641 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2642 Value |= (op & 0x7) << 16;
2643 break;
2644 }
2645 case Hexagon::J4_cmpeqi_fp0_jump_nt:
2646 case Hexagon::J4_cmpeqi_fp0_jump_t:
2647 case Hexagon::J4_cmpeqi_fp1_jump_nt:
2648 case Hexagon::J4_cmpeqi_fp1_jump_t:
2649 case Hexagon::J4_cmpeqi_tp0_jump_nt:
2650 case Hexagon::J4_cmpeqi_tp0_jump_t:
2651 case Hexagon::J4_cmpeqi_tp1_jump_nt:
2652 case Hexagon::J4_cmpeqi_tp1_jump_t:
2653 case Hexagon::J4_cmpgti_fp0_jump_nt:
2654 case Hexagon::J4_cmpgti_fp0_jump_t:
2655 case Hexagon::J4_cmpgti_fp1_jump_nt:
2656 case Hexagon::J4_cmpgti_fp1_jump_t:
2657 case Hexagon::J4_cmpgti_tp0_jump_nt:
2658 case Hexagon::J4_cmpgti_tp0_jump_t:
2659 case Hexagon::J4_cmpgti_tp1_jump_nt:
2660 case Hexagon::J4_cmpgti_tp1_jump_t:
2661 case Hexagon::J4_cmpgtui_fp0_jump_nt:
2662 case Hexagon::J4_cmpgtui_fp0_jump_t:
2663 case Hexagon::J4_cmpgtui_fp1_jump_nt:
2664 case Hexagon::J4_cmpgtui_fp1_jump_t:
2665 case Hexagon::J4_cmpgtui_tp0_jump_nt:
2666 case Hexagon::J4_cmpgtui_tp0_jump_t:
2667 case Hexagon::J4_cmpgtui_tp1_jump_nt:
2668 case Hexagon::J4_cmpgtui_tp1_jump_t: {
2669 // op: II
2670 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2671 Value |= (op & 0x1f) << 8;
2672 // op: Ii
2673 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2674 Value |= (op & 0x600) << 11;
2675 Value |= (op & 0x1fc) >> 1;
2676 // op: Rs16
2677 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2678 Value |= (op & 0xf) << 16;
2679 break;
2680 }
2681 case Hexagon::J4_jumpseti: {
2682 // op: II
2683 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2684 Value |= (op & 0x3f) << 8;
2685 // op: Ii
2686 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2687 Value |= (op & 0x600) << 11;
2688 Value |= (op & 0x1fc) >> 1;
2689 // op: Rd16
2690 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2691 Value |= (op & 0xf) << 16;
2692 break;
2693 }
2694 case Hexagon::S4_storerbnew_ap:
2695 case Hexagon::S4_storerhnew_ap:
2696 case Hexagon::S4_storerinew_ap: {
2697 // op: II
2698 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2699 Value |= (op & 0x3f);
2700 // op: Nt8
2701 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2702 Value |= (op & 0x7) << 8;
2703 // op: Re32
2704 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2705 Value |= (op & 0x1f) << 16;
2706 break;
2707 }
2708 case Hexagon::S4_storerb_ap:
2709 case Hexagon::S4_storerf_ap:
2710 case Hexagon::S4_storerh_ap:
2711 case Hexagon::S4_storeri_ap: {
2712 // op: II
2713 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2714 Value |= (op & 0x3f);
2715 // op: Rt32
2716 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2717 Value |= (op & 0x1f) << 8;
2718 // op: Re32
2719 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2720 Value |= (op & 0x1f) << 16;
2721 break;
2722 }
2723 case Hexagon::S4_storerd_ap: {
2724 // op: II
2725 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2726 Value |= (op & 0x3f);
2727 // op: Rtt32
2728 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2729 Value |= (op & 0x1f) << 8;
2730 // op: Re32
2731 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2732 Value |= (op & 0x1f) << 16;
2733 break;
2734 }
2735 case Hexagon::L4_loadbsw2_ap:
2736 case Hexagon::L4_loadbzw2_ap:
2737 case Hexagon::L4_loadrb_ap:
2738 case Hexagon::L4_loadrh_ap:
2739 case Hexagon::L4_loadri_ap:
2740 case Hexagon::L4_loadrub_ap:
2741 case Hexagon::L4_loadruh_ap: {
2742 // op: II
2743 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2744 Value |= (op & 0x3c) << 6;
2745 Value |= (op & 0x3) << 5;
2746 // op: Rd32
2747 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2748 Value |= (op & 0x1f);
2749 // op: Re32
2750 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2751 Value |= (op & 0x1f) << 16;
2752 break;
2753 }
2754 case Hexagon::L4_loadbsw4_ap:
2755 case Hexagon::L4_loadbzw4_ap:
2756 case Hexagon::L4_loadrd_ap: {
2757 // op: II
2758 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2759 Value |= (op & 0x3c) << 6;
2760 Value |= (op & 0x3) << 5;
2761 // op: Rdd32
2762 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2763 Value |= (op & 0x1f);
2764 // op: Re32
2765 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2766 Value |= (op & 0x1f) << 16;
2767 break;
2768 }
2769 case Hexagon::L4_loadalignb_ap:
2770 case Hexagon::L4_loadalignh_ap: {
2771 // op: II
2772 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
2773 Value |= (op & 0x3c) << 6;
2774 Value |= (op & 0x3) << 5;
2775 // op: Ryy32
2776 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2777 Value |= (op & 0x1f);
2778 // op: Re32
2779 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2780 Value |= (op & 0x1f) << 16;
2781 break;
2782 }
2783 case Hexagon::V6_vwhist128m: {
2784 // op: Ii
2785 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2786 Value |= (op & 0x1) << 8;
2787 break;
2788 }
2789 case Hexagon::PS_storerhnewabs:
2790 case Hexagon::S2_storerhnewgp: {
2791 // op: Ii
2792 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2793 Value |= (op & 0x18000) << 10;
2794 Value |= (op & 0x7c00) << 6;
2795 Value |= (op & 0x200) << 4;
2796 Value |= (op & 0x1fe) >> 1;
2797 // op: Nt8
2798 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2799 Value |= (op & 0x7) << 8;
2800 break;
2801 }
2802 case Hexagon::PS_storerfabs:
2803 case Hexagon::PS_storerhabs:
2804 case Hexagon::S2_storerfgp:
2805 case Hexagon::S2_storerhgp: {
2806 // op: Ii
2807 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2808 Value |= (op & 0x18000) << 10;
2809 Value |= (op & 0x7c00) << 6;
2810 Value |= (op & 0x200) << 4;
2811 Value |= (op & 0x1fe) >> 1;
2812 // op: Rt32
2813 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2814 Value |= (op & 0x1f) << 8;
2815 break;
2816 }
2817 case Hexagon::J2_loop0i:
2818 case Hexagon::J2_loop1i:
2819 case Hexagon::J2_ploop1si:
2820 case Hexagon::J2_ploop2si:
2821 case Hexagon::J2_ploop3si: {
2822 // op: Ii
2823 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2824 Value |= (op & 0x1f0) << 4;
2825 Value |= (op & 0xc) << 1;
2826 // op: II
2827 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2828 Value |= (op & 0x3e0) << 11;
2829 Value |= (op & 0x1c) << 3;
2830 Value |= (op & 0x3);
2831 break;
2832 }
2833 case Hexagon::J2_loop0r:
2834 case Hexagon::J2_loop1r:
2835 case Hexagon::J2_ploop1sr:
2836 case Hexagon::J2_ploop2sr:
2837 case Hexagon::J2_ploop3sr: {
2838 // op: Ii
2839 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2840 Value |= (op & 0x1f0) << 4;
2841 Value |= (op & 0xc) << 1;
2842 // op: Rs32
2843 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2844 Value |= (op & 0x1f) << 16;
2845 break;
2846 }
2847 case Hexagon::SS2_stored_sp: {
2848 // op: Ii
2849 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2850 Value |= (op & 0x1f8);
2851 // op: Rtt8
2852 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2853 Value |= (op & 0x7);
2854 break;
2855 }
2856 case Hexagon::J2_pause: {
2857 // op: Ii
2858 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2859 Value |= (op & 0x300) << 8;
2860 Value |= (op & 0xf8) << 5;
2861 Value |= (op & 0x7) << 2;
2862 break;
2863 }
2864 case Hexagon::PS_storerinewabs:
2865 case Hexagon::S2_storerinewgp: {
2866 // op: Ii
2867 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2868 Value |= (op & 0x30000) << 9;
2869 Value |= (op & 0xf800) << 5;
2870 Value |= (op & 0x400) << 3;
2871 Value |= (op & 0x3fc) >> 2;
2872 // op: Nt8
2873 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2874 Value |= (op & 0x7) << 8;
2875 break;
2876 }
2877 case Hexagon::PS_storeriabs:
2878 case Hexagon::S2_storerigp: {
2879 // op: Ii
2880 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2881 Value |= (op & 0x30000) << 9;
2882 Value |= (op & 0xf800) << 5;
2883 Value |= (op & 0x400) << 3;
2884 Value |= (op & 0x3fc) >> 2;
2885 // op: Rt32
2886 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2887 Value |= (op & 0x1f) << 8;
2888 break;
2889 }
2890 case Hexagon::PS_storerdabs:
2891 case Hexagon::S2_storerdgp: {
2892 // op: Ii
2893 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2894 Value |= (op & 0x60000) << 8;
2895 Value |= (op & 0x1f000) << 4;
2896 Value |= (op & 0x800) << 2;
2897 Value |= (op & 0x7f8) >> 3;
2898 // op: Rtt32
2899 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2900 Value |= (op & 0x1f) << 8;
2901 break;
2902 }
2903 case Hexagon::SS2_storew_sp: {
2904 // op: Ii
2905 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2906 Value |= (op & 0x7c) << 2;
2907 // op: Rt16
2908 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2909 Value |= (op & 0xf);
2910 break;
2911 }
2912 case Hexagon::PS_storerbnewabs:
2913 case Hexagon::S2_storerbnewgp: {
2914 // op: Ii
2915 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2916 Value |= (op & 0xc000) << 11;
2917 Value |= (op & 0x3e00) << 7;
2918 Value |= (op & 0x100) << 5;
2919 Value |= (op & 0xff);
2920 // op: Nt8
2921 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2922 Value |= (op & 0x7) << 8;
2923 break;
2924 }
2925 case Hexagon::PS_storerbabs:
2926 case Hexagon::S2_storerbgp: {
2927 // op: Ii
2928 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2929 Value |= (op & 0xc000) << 11;
2930 Value |= (op & 0x3e00) << 7;
2931 Value |= (op & 0x100) << 5;
2932 Value |= (op & 0xff);
2933 // op: Rt32
2934 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2935 Value |= (op & 0x1f) << 8;
2936 break;
2937 }
2938 case Hexagon::SS2_allocframe: {
2939 // op: Ii
2940 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2941 Value |= (op & 0xf8) << 1;
2942 break;
2943 }
2944 case Hexagon::J2_trap0:
2945 case Hexagon::PS_trap1: {
2946 // op: Ii
2947 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2948 Value |= (op & 0xf8) << 5;
2949 Value |= (op & 0x7) << 2;
2950 break;
2951 }
2952 case Hexagon::J2_call:
2953 case Hexagon::J2_jump: {
2954 // op: Ii
2955 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2956 Value |= (op & 0xff8000) << 1;
2957 Value |= (op & 0x7ffc) >> 1;
2958 break;
2959 }
2960 case Hexagon::A4_ext: {
2961 // op: Ii
2962 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2963 Value |= (op & 0xfff00000) >> 4;
2964 Value |= (op & 0xfffc0) >> 6;
2965 break;
2966 }
2967 case Hexagon::V6_vwhist128qm: {
2968 // op: Ii
2969 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2970 Value |= (op & 0x1) << 8;
2971 // op: Qv4
2972 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2973 Value |= (op & 0x3) << 22;
2974 break;
2975 }
2976 case Hexagon::S2_storerinew_io: {
2977 // op: Ii
2978 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2979 Value |= (op & 0x1800) << 14;
2980 Value |= (op & 0x400) << 3;
2981 Value |= (op & 0x3fc) >> 2;
2982 // op: Rs32
2983 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2984 Value |= (op & 0x1f) << 16;
2985 // op: Nt8
2986 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
2987 Value |= (op & 0x7) << 8;
2988 break;
2989 }
2990 case Hexagon::S2_storeri_io: {
2991 // op: Ii
2992 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
2993 Value |= (op & 0x1800) << 14;
2994 Value |= (op & 0x400) << 3;
2995 Value |= (op & 0x3fc) >> 2;
2996 // op: Rs32
2997 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
2998 Value |= (op & 0x1f) << 16;
2999 // op: Rt32
3000 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3001 Value |= (op & 0x1f) << 8;
3002 break;
3003 }
3004 case Hexagon::L2_loadrhgp:
3005 case Hexagon::L2_loadruhgp:
3006 case Hexagon::PS_loadrhabs:
3007 case Hexagon::PS_loadruhabs: {
3008 // op: Ii
3009 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3010 Value |= (op & 0x18000) << 10;
3011 Value |= (op & 0x7c00) << 6;
3012 Value |= (op & 0x3fe) << 4;
3013 // op: Rd32
3014 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3015 Value |= (op & 0x1f);
3016 break;
3017 }
3018 case Hexagon::J2_callf:
3019 case Hexagon::J2_callt:
3020 case Hexagon::J2_jumpf:
3021 case Hexagon::J2_jumpfnew:
3022 case Hexagon::J2_jumpfnewpt:
3023 case Hexagon::J2_jumpfpt:
3024 case Hexagon::J2_jumpt:
3025 case Hexagon::J2_jumptnew:
3026 case Hexagon::J2_jumptnewpt:
3027 case Hexagon::J2_jumptpt: {
3028 // op: Ii
3029 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3030 Value |= (op & 0x18000) << 7;
3031 Value |= (op & 0x7c00) << 6;
3032 Value |= (op & 0x200) << 4;
3033 Value |= (op & 0x1fc) >> 1;
3034 // op: Pu4
3035 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3036 Value |= (op & 0x3) << 8;
3037 break;
3038 }
3039 case Hexagon::S2_mask: {
3040 // op: Ii
3041 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3042 Value |= (op & 0x1f) << 8;
3043 // op: II
3044 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3045 Value |= (op & 0x18) << 18;
3046 Value |= (op & 0x7) << 5;
3047 // op: Rd32
3048 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3049 Value |= (op & 0x1f);
3050 break;
3051 }
3052 case Hexagon::S4_storerbnew_ur:
3053 case Hexagon::S4_storerhnew_ur:
3054 case Hexagon::S4_storerinew_ur: {
3055 // op: Ii
3056 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3057 Value |= (op & 0x2) << 12;
3058 Value |= (op & 0x1) << 6;
3059 // op: II
3060 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3061 Value |= (op & 0x3f);
3062 // op: Ru32
3063 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3064 Value |= (op & 0x1f) << 16;
3065 // op: Nt8
3066 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3067 Value |= (op & 0x7) << 8;
3068 break;
3069 }
3070 case Hexagon::S4_storerb_ur:
3071 case Hexagon::S4_storerf_ur:
3072 case Hexagon::S4_storerh_ur:
3073 case Hexagon::S4_storeri_ur: {
3074 // op: Ii
3075 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3076 Value |= (op & 0x2) << 12;
3077 Value |= (op & 0x1) << 6;
3078 // op: II
3079 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3080 Value |= (op & 0x3f);
3081 // op: Ru32
3082 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3083 Value |= (op & 0x1f) << 16;
3084 // op: Rt32
3085 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3086 Value |= (op & 0x1f) << 8;
3087 break;
3088 }
3089 case Hexagon::S4_storerd_ur: {
3090 // op: Ii
3091 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3092 Value |= (op & 0x2) << 12;
3093 Value |= (op & 0x1) << 6;
3094 // op: II
3095 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3096 Value |= (op & 0x3f);
3097 // op: Ru32
3098 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3099 Value |= (op & 0x1f) << 16;
3100 // op: Rtt32
3101 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3102 Value |= (op & 0x1f) << 8;
3103 break;
3104 }
3105 case Hexagon::F2_sfimm_n:
3106 case Hexagon::F2_sfimm_p: {
3107 // op: Ii
3108 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3109 Value |= (op & 0x200) << 12;
3110 Value |= (op & 0x1ff) << 5;
3111 // op: Rd32
3112 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3113 Value |= (op & 0x1f);
3114 break;
3115 }
3116 case Hexagon::F2_dfimm_n:
3117 case Hexagon::F2_dfimm_p: {
3118 // op: Ii
3119 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3120 Value |= (op & 0x200) << 12;
3121 Value |= (op & 0x1ff) << 5;
3122 // op: Rdd32
3123 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3124 Value |= (op & 0x1f);
3125 break;
3126 }
3127 case Hexagon::A2_subri: {
3128 // op: Ii
3129 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3130 Value |= (op & 0x200) << 12;
3131 Value |= (op & 0x1ff) << 5;
3132 // op: Rs32
3133 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3134 Value |= (op & 0x1f) << 16;
3135 // op: Rd32
3136 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3137 Value |= (op & 0x1f);
3138 break;
3139 }
3140 case Hexagon::SA1_combine0i:
3141 case Hexagon::SA1_combine1i:
3142 case Hexagon::SA1_combine2i:
3143 case Hexagon::SA1_combine3i: {
3144 // op: Ii
3145 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3146 Value |= (op & 0x3) << 5;
3147 // op: Rdd8
3148 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3149 Value |= (op & 0x7);
3150 break;
3151 }
3152 case Hexagon::SA1_cmpeqi: {
3153 // op: Ii
3154 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3155 Value |= (op & 0x3);
3156 // op: Rs16
3157 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3158 Value |= (op & 0xf) << 4;
3159 break;
3160 }
3161 case Hexagon::S4_pstorerbnewf_abs:
3162 case Hexagon::S4_pstorerbnewfnew_abs:
3163 case Hexagon::S4_pstorerbnewt_abs:
3164 case Hexagon::S4_pstorerbnewtnew_abs:
3165 case Hexagon::S4_pstorerhnewf_abs:
3166 case Hexagon::S4_pstorerhnewfnew_abs:
3167 case Hexagon::S4_pstorerhnewt_abs:
3168 case Hexagon::S4_pstorerhnewtnew_abs:
3169 case Hexagon::S4_pstorerinewf_abs:
3170 case Hexagon::S4_pstorerinewfnew_abs:
3171 case Hexagon::S4_pstorerinewt_abs:
3172 case Hexagon::S4_pstorerinewtnew_abs: {
3173 // op: Ii
3174 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3175 Value |= (op & 0x30) << 12;
3176 Value |= (op & 0xf) << 3;
3177 // op: Pv4
3178 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3179 Value |= (op & 0x3);
3180 // op: Nt8
3181 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3182 Value |= (op & 0x7) << 8;
3183 break;
3184 }
3185 case Hexagon::S4_pstorerbf_abs:
3186 case Hexagon::S4_pstorerbfnew_abs:
3187 case Hexagon::S4_pstorerbt_abs:
3188 case Hexagon::S4_pstorerbtnew_abs:
3189 case Hexagon::S4_pstorerff_abs:
3190 case Hexagon::S4_pstorerffnew_abs:
3191 case Hexagon::S4_pstorerft_abs:
3192 case Hexagon::S4_pstorerftnew_abs:
3193 case Hexagon::S4_pstorerhf_abs:
3194 case Hexagon::S4_pstorerhfnew_abs:
3195 case Hexagon::S4_pstorerht_abs:
3196 case Hexagon::S4_pstorerhtnew_abs:
3197 case Hexagon::S4_pstorerif_abs:
3198 case Hexagon::S4_pstorerifnew_abs:
3199 case Hexagon::S4_pstorerit_abs:
3200 case Hexagon::S4_pstoreritnew_abs: {
3201 // op: Ii
3202 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3203 Value |= (op & 0x30) << 12;
3204 Value |= (op & 0xf) << 3;
3205 // op: Pv4
3206 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3207 Value |= (op & 0x3);
3208 // op: Rt32
3209 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3210 Value |= (op & 0x1f) << 8;
3211 break;
3212 }
3213 case Hexagon::S4_pstorerdf_abs:
3214 case Hexagon::S4_pstorerdfnew_abs:
3215 case Hexagon::S4_pstorerdt_abs:
3216 case Hexagon::S4_pstorerdtnew_abs: {
3217 // op: Ii
3218 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3219 Value |= (op & 0x30) << 12;
3220 Value |= (op & 0xf) << 3;
3221 // op: Pv4
3222 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3223 Value |= (op & 0x3);
3224 // op: Rtt32
3225 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3226 Value |= (op & 0x1f) << 8;
3227 break;
3228 }
3229 case Hexagon::M4_mpyri_addi: {
3230 // op: Ii
3231 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3232 Value |= (op & 0x30) << 17;
3233 Value |= (op & 0x8) << 10;
3234 Value |= (op & 0x7) << 5;
3235 // op: II
3236 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3237 Value |= (op & 0x20) << 18;
3238 Value |= (op & 0x1f);
3239 // op: Rs32
3240 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3241 Value |= (op & 0x1f) << 16;
3242 // op: Rd32
3243 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3244 Value |= (op & 0x1f) << 8;
3245 break;
3246 }
3247 case Hexagon::M4_mpyrr_addi: {
3248 // op: Ii
3249 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3250 Value |= (op & 0x30) << 17;
3251 Value |= (op & 0x8) << 10;
3252 Value |= (op & 0x7) << 5;
3253 // op: Rs32
3254 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3255 Value |= (op & 0x1f) << 16;
3256 // op: Rt32
3257 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3258 Value |= (op & 0x1f) << 8;
3259 // op: Rd32
3260 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3261 Value |= (op & 0x1f);
3262 break;
3263 }
3264 case Hexagon::S2_storerd_io: {
3265 // op: Ii
3266 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3267 Value |= (op & 0x3000) << 13;
3268 Value |= (op & 0x800) << 2;
3269 Value |= (op & 0x7f8) >> 3;
3270 // op: Rs32
3271 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3272 Value |= (op & 0x1f) << 16;
3273 // op: Rtt32
3274 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3275 Value |= (op & 0x1f) << 8;
3276 break;
3277 }
3278 case Hexagon::L2_loadrigp:
3279 case Hexagon::PS_loadriabs: {
3280 // op: Ii
3281 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3282 Value |= (op & 0x30000) << 9;
3283 Value |= (op & 0xf800) << 5;
3284 Value |= (op & 0x7fc) << 3;
3285 // op: Rd32
3286 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3287 Value |= (op & 0x1f);
3288 break;
3289 }
3290 case Hexagon::SS1_storew_io: {
3291 // op: Ii
3292 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3293 Value |= (op & 0x3c) << 6;
3294 // op: Rs16
3295 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3296 Value |= (op & 0xf) << 4;
3297 // op: Rt16
3298 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3299 Value |= (op & 0xf);
3300 break;
3301 }
3302 case Hexagon::SS2_storewi0:
3303 case Hexagon::SS2_storewi1: {
3304 // op: Ii
3305 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3306 Value |= (op & 0x3c) >> 2;
3307 // op: Rs16
3308 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3309 Value |= (op & 0xf) << 4;
3310 break;
3311 }
3312 case Hexagon::S4_lsli: {
3313 // op: Ii
3314 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3315 Value |= (op & 0x3e) << 15;
3316 Value |= (op & 0x1) << 5;
3317 // op: Rt32
3318 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3319 Value |= (op & 0x1f) << 8;
3320 // op: Rd32
3321 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3322 Value |= (op & 0x1f);
3323 break;
3324 }
3325 case Hexagon::SA1_seti: {
3326 // op: Ii
3327 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3328 Value |= (op & 0x3f) << 4;
3329 // op: Rd16
3330 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3331 Value |= (op & 0xf);
3332 break;
3333 }
3334 case Hexagon::L4_iadd_memopb_io:
3335 case Hexagon::L4_iand_memopb_io:
3336 case Hexagon::L4_ior_memopb_io:
3337 case Hexagon::L4_isub_memopb_io: {
3338 // op: Ii
3339 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3340 Value |= (op & 0x3f) << 7;
3341 // op: II
3342 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3343 Value |= (op & 0x1f);
3344 // op: Rs32
3345 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3346 Value |= (op & 0x1f) << 16;
3347 break;
3348 }
3349 case Hexagon::S4_storeirb_io: {
3350 // op: Ii
3351 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3352 Value |= (op & 0x3f) << 7;
3353 // op: II
3354 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3355 Value |= (op & 0x80) << 6;
3356 Value |= (op & 0x7f);
3357 // op: Rs32
3358 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3359 Value |= (op & 0x1f) << 16;
3360 break;
3361 }
3362 case Hexagon::C4_addipc: {
3363 // op: Ii
3364 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3365 Value |= (op & 0x3f) << 7;
3366 // op: Rd32
3367 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3368 Value |= (op & 0x1f);
3369 break;
3370 }
3371 case Hexagon::L4_add_memopb_io:
3372 case Hexagon::L4_and_memopb_io:
3373 case Hexagon::L4_or_memopb_io:
3374 case Hexagon::L4_sub_memopb_io: {
3375 // op: Ii
3376 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3377 Value |= (op & 0x3f) << 7;
3378 // op: Rs32
3379 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3380 Value |= (op & 0x1f) << 16;
3381 // op: Rt32
3382 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3383 Value |= (op & 0x1f);
3384 break;
3385 }
3386 case Hexagon::Y2_dcfetchbo:
3387 case Hexagon::Y2_dcfetchbo_nt: {
3388 // op: Ii
3389 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3390 Value |= (op & 0x3ff8) >> 3;
3391 // op: Rs32
3392 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3393 Value |= (op & 0x1f) << 16;
3394 break;
3395 }
3396 case Hexagon::J2_jumprgtez:
3397 case Hexagon::J2_jumprgtezpt:
3398 case Hexagon::J2_jumprltez:
3399 case Hexagon::J2_jumprltezpt:
3400 case Hexagon::J2_jumprnz:
3401 case Hexagon::J2_jumprnzpt:
3402 case Hexagon::J2_jumprz:
3403 case Hexagon::J2_jumprzpt: {
3404 // op: Ii
3405 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3406 Value |= (op & 0x4000) << 7;
3407 Value |= (op & 0x2000);
3408 Value |= (op & 0x1ffc) >> 1;
3409 // op: Rs32
3410 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3411 Value |= (op & 0x1f) << 16;
3412 break;
3413 }
3414 case Hexagon::J4_tstbit0_f_jumpnv_nt:
3415 case Hexagon::J4_tstbit0_f_jumpnv_t:
3416 case Hexagon::J4_tstbit0_t_jumpnv_nt:
3417 case Hexagon::J4_tstbit0_t_jumpnv_t: {
3418 // op: Ii
3419 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3420 Value |= (op & 0x600) << 11;
3421 Value |= (op & 0x1fc) >> 1;
3422 // op: Ns8
3423 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3424 Value |= (op & 0x7) << 16;
3425 break;
3426 }
3427 case Hexagon::J4_tstbit0_fp0_jump_nt:
3428 case Hexagon::J4_tstbit0_fp0_jump_t:
3429 case Hexagon::J4_tstbit0_fp1_jump_nt:
3430 case Hexagon::J4_tstbit0_fp1_jump_t:
3431 case Hexagon::J4_tstbit0_tp0_jump_nt:
3432 case Hexagon::J4_tstbit0_tp0_jump_t:
3433 case Hexagon::J4_tstbit0_tp1_jump_nt:
3434 case Hexagon::J4_tstbit0_tp1_jump_t: {
3435 // op: Ii
3436 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3437 Value |= (op & 0x600) << 11;
3438 Value |= (op & 0x1fc) >> 1;
3439 // op: Rs16
3440 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3441 Value |= (op & 0xf) << 16;
3442 break;
3443 }
3444 case Hexagon::S2_storerbnew_io: {
3445 // op: Ii
3446 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3447 Value |= (op & 0x600) << 16;
3448 Value |= (op & 0x100) << 5;
3449 Value |= (op & 0xff);
3450 // op: Rs32
3451 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3452 Value |= (op & 0x1f) << 16;
3453 // op: Nt8
3454 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3455 Value |= (op & 0x7) << 8;
3456 break;
3457 }
3458 case Hexagon::S2_storerb_io: {
3459 // op: Ii
3460 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3461 Value |= (op & 0x600) << 16;
3462 Value |= (op & 0x100) << 5;
3463 Value |= (op & 0xff);
3464 // op: Rs32
3465 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3466 Value |= (op & 0x1f) << 16;
3467 // op: Rt32
3468 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3469 Value |= (op & 0x1f) << 8;
3470 break;
3471 }
3472 case Hexagon::L2_loadrdgp:
3473 case Hexagon::PS_loadrdabs: {
3474 // op: Ii
3475 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3476 Value |= (op & 0x60000) << 8;
3477 Value |= (op & 0x1f000) << 4;
3478 Value |= (op & 0xff8) << 2;
3479 // op: Rdd32
3480 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3481 Value |= (op & 0x1f);
3482 break;
3483 }
3484 case Hexagon::SL2_loadri_sp: {
3485 // op: Ii
3486 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3487 Value |= (op & 0x7c) << 2;
3488 // op: Rd16
3489 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3490 Value |= (op & 0xf);
3491 break;
3492 }
3493 case Hexagon::L4_iadd_memoph_io:
3494 case Hexagon::L4_iand_memoph_io:
3495 case Hexagon::L4_ior_memoph_io:
3496 case Hexagon::L4_isub_memoph_io: {
3497 // op: Ii
3498 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3499 Value |= (op & 0x7e) << 6;
3500 // op: II
3501 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3502 Value |= (op & 0x1f);
3503 // op: Rs32
3504 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3505 Value |= (op & 0x1f) << 16;
3506 break;
3507 }
3508 case Hexagon::S4_storeirh_io: {
3509 // op: Ii
3510 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3511 Value |= (op & 0x7e) << 6;
3512 // op: II
3513 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3514 Value |= (op & 0x80) << 6;
3515 Value |= (op & 0x7f);
3516 // op: Rs32
3517 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3518 Value |= (op & 0x1f) << 16;
3519 break;
3520 }
3521 case Hexagon::L4_add_memoph_io:
3522 case Hexagon::L4_and_memoph_io:
3523 case Hexagon::L4_or_memoph_io:
3524 case Hexagon::L4_sub_memoph_io: {
3525 // op: Ii
3526 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3527 Value |= (op & 0x7e) << 6;
3528 // op: Rs32
3529 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3530 Value |= (op & 0x1f) << 16;
3531 // op: Rt32
3532 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3533 Value |= (op & 0x1f);
3534 break;
3535 }
3536 case Hexagon::V6_vS32b_srls_ai:
3537 case Hexagon::V6_zLd_ai: {
3538 // op: Ii
3539 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3540 Value |= (op & 0x8) << 10;
3541 Value |= (op & 0x7) << 8;
3542 // op: Rt32
3543 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3544 Value |= (op & 0x1f) << 16;
3545 break;
3546 }
3547 case Hexagon::V6_vS32b_new_ai:
3548 case Hexagon::V6_vS32b_nt_new_ai: {
3549 // op: Ii
3550 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3551 Value |= (op & 0x8) << 10;
3552 Value |= (op & 0x7) << 8;
3553 // op: Rt32
3554 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3555 Value |= (op & 0x1f) << 16;
3556 // op: Os8
3557 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3558 Value |= (op & 0x7);
3559 break;
3560 }
3561 case Hexagon::V6_vS32Ub_ai:
3562 case Hexagon::V6_vS32b_ai:
3563 case Hexagon::V6_vS32b_nt_ai: {
3564 // op: Ii
3565 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3566 Value |= (op & 0x8) << 10;
3567 Value |= (op & 0x7) << 8;
3568 // op: Rt32
3569 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3570 Value |= (op & 0x1f) << 16;
3571 // op: Vs32
3572 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3573 Value |= (op & 0x1f);
3574 break;
3575 }
3576 case Hexagon::S2_storerhnew_io: {
3577 // op: Ii
3578 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3579 Value |= (op & 0xc00) << 15;
3580 Value |= (op & 0x200) << 4;
3581 Value |= (op & 0x1fe) >> 1;
3582 // op: Rs32
3583 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3584 Value |= (op & 0x1f) << 16;
3585 // op: Nt8
3586 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3587 Value |= (op & 0x7) << 8;
3588 break;
3589 }
3590 case Hexagon::S2_storerf_io:
3591 case Hexagon::S2_storerh_io: {
3592 // op: Ii
3593 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3594 Value |= (op & 0xc00) << 15;
3595 Value |= (op & 0x200) << 4;
3596 Value |= (op & 0x1fe) >> 1;
3597 // op: Rs32
3598 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3599 Value |= (op & 0x1f) << 16;
3600 // op: Rt32
3601 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3602 Value |= (op & 0x1f) << 8;
3603 break;
3604 }
3605 case Hexagon::L2_loadrbgp:
3606 case Hexagon::L2_loadrubgp:
3607 case Hexagon::PS_loadrbabs:
3608 case Hexagon::PS_loadrubabs: {
3609 // op: Ii
3610 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3611 Value |= (op & 0xc000) << 11;
3612 Value |= (op & 0x3e00) << 7;
3613 Value |= (op & 0x1ff) << 5;
3614 // op: Rd32
3615 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3616 Value |= (op & 0x1f);
3617 break;
3618 }
3619 case Hexagon::A2_tfrsi: {
3620 // op: Ii
3621 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3622 Value |= (op & 0xc000) << 8;
3623 Value |= (op & 0x3e00) << 7;
3624 Value |= (op & 0x1ff) << 5;
3625 // op: Rd32
3626 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3627 Value |= (op & 0x1f);
3628 break;
3629 }
3630 case Hexagon::SS2_storeh_io: {
3631 // op: Ii
3632 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3633 Value |= (op & 0xe) << 7;
3634 // op: Rs16
3635 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3636 Value |= (op & 0xf) << 4;
3637 // op: Rt16
3638 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3639 Value |= (op & 0xf);
3640 break;
3641 }
3642 case Hexagon::S4_addi_asl_ri:
3643 case Hexagon::S4_addi_lsr_ri:
3644 case Hexagon::S4_andi_asl_ri:
3645 case Hexagon::S4_andi_lsr_ri:
3646 case Hexagon::S4_ori_asl_ri:
3647 case Hexagon::S4_ori_lsr_ri:
3648 case Hexagon::S4_subi_asl_ri:
3649 case Hexagon::S4_subi_lsr_ri: {
3650 // op: Ii
3651 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3652 Value |= (op & 0xe0) << 16;
3653 Value |= (op & 0x10) << 9;
3654 Value |= (op & 0xe) << 4;
3655 Value |= (op & 0x1) << 3;
3656 // op: II
3657 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3658 Value |= (op & 0x1f) << 8;
3659 // op: Rx32
3660 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3661 Value |= (op & 0x1f) << 16;
3662 break;
3663 }
3664 case Hexagon::SS1_storeb_io: {
3665 // op: Ii
3666 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3667 Value |= (op & 0xf) << 8;
3668 // op: Rs16
3669 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3670 Value |= (op & 0xf) << 4;
3671 // op: Rt16
3672 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3673 Value |= (op & 0xf);
3674 break;
3675 }
3676 case Hexagon::SS2_storebi0:
3677 case Hexagon::SS2_storebi1: {
3678 // op: Ii
3679 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3680 Value |= (op & 0xf);
3681 // op: Rs16
3682 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3683 Value |= (op & 0xf) << 4;
3684 break;
3685 }
3686 case Hexagon::SL2_loadrd_sp: {
3687 // op: Ii
3688 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3689 Value |= (op & 0xf8);
3690 // op: Rdd8
3691 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3692 Value |= (op & 0x7);
3693 break;
3694 }
3695 case Hexagon::SA1_addsp: {
3696 // op: Ii
3697 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3698 Value |= (op & 0xfc) << 2;
3699 // op: Rd16
3700 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3701 Value |= (op & 0xf);
3702 break;
3703 }
3704 case Hexagon::L4_iadd_memopw_io:
3705 case Hexagon::L4_iand_memopw_io:
3706 case Hexagon::L4_ior_memopw_io:
3707 case Hexagon::L4_isub_memopw_io: {
3708 // op: Ii
3709 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3710 Value |= (op & 0xfc) << 5;
3711 // op: II
3712 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3713 Value |= (op & 0x1f);
3714 // op: Rs32
3715 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3716 Value |= (op & 0x1f) << 16;
3717 break;
3718 }
3719 case Hexagon::S4_storeiri_io: {
3720 // op: Ii
3721 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3722 Value |= (op & 0xfc) << 5;
3723 // op: II
3724 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3725 Value |= (op & 0x80) << 6;
3726 Value |= (op & 0x7f);
3727 // op: Rs32
3728 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3729 Value |= (op & 0x1f) << 16;
3730 break;
3731 }
3732 case Hexagon::L4_add_memopw_io:
3733 case Hexagon::L4_and_memopw_io:
3734 case Hexagon::L4_or_memopw_io:
3735 case Hexagon::L4_sub_memopw_io: {
3736 // op: Ii
3737 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3738 Value |= (op & 0xfc) << 5;
3739 // op: Rs32
3740 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3741 Value |= (op & 0x1f) << 16;
3742 // op: Rt32
3743 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3744 Value |= (op & 0x1f);
3745 break;
3746 }
3747 case Hexagon::A4_combineii: {
3748 // op: Ii
3749 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3750 Value |= (op & 0xff) << 5;
3751 // op: II
3752 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3753 Value |= (op & 0x3e) << 15;
3754 Value |= (op & 0x1) << 13;
3755 // op: Rdd32
3756 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3757 Value |= (op & 0x1f);
3758 break;
3759 }
3760 case Hexagon::A2_combineii: {
3761 // op: Ii
3762 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3763 Value |= (op & 0xff) << 5;
3764 // op: II
3765 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3766 Value |= (op & 0xfe) << 15;
3767 Value |= (op & 0x1) << 13;
3768 // op: Rdd32
3769 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3770 Value |= (op & 0x1f);
3771 break;
3772 }
3773 case Hexagon::A4_combineir: {
3774 // op: Ii
3775 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3776 Value |= (op & 0xff) << 5;
3777 // op: Rs32
3778 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3779 Value |= (op & 0x1f) << 16;
3780 // op: Rdd32
3781 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3782 Value |= (op & 0x1f);
3783 break;
3784 }
3785 case Hexagon::S2_pstorerdf_io:
3786 case Hexagon::S2_pstorerdt_io:
3787 case Hexagon::S4_pstorerdfnew_io:
3788 case Hexagon::S4_pstorerdtnew_io: {
3789 // op: Ii
3790 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3791 Value |= (op & 0x100) << 5;
3792 Value |= (op & 0xf8);
3793 // op: Pv4
3794 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3795 Value |= (op & 0x3);
3796 // op: Rs32
3797 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3798 Value |= (op & 0x1f) << 16;
3799 // op: Rtt32
3800 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3801 Value |= (op & 0x1f) << 8;
3802 break;
3803 }
3804 case Hexagon::L2_loadri_io: {
3805 // op: Ii
3806 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3807 Value |= (op & 0x1800) << 14;
3808 Value |= (op & 0x7fc) << 3;
3809 // op: Rs32
3810 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3811 Value |= (op & 0x1f) << 16;
3812 // op: Rd32
3813 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3814 Value |= (op & 0x1f);
3815 break;
3816 }
3817 case Hexagon::L2_loadbsw4_io:
3818 case Hexagon::L2_loadbzw4_io: {
3819 // op: Ii
3820 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3821 Value |= (op & 0x1800) << 14;
3822 Value |= (op & 0x7fc) << 3;
3823 // op: Rs32
3824 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3825 Value |= (op & 0x1f) << 16;
3826 // op: Rdd32
3827 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3828 Value |= (op & 0x1f);
3829 break;
3830 }
3831 case Hexagon::S2_storerhnew_pci: {
3832 // op: Ii
3833 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3834 Value |= (op & 0x1e) << 2;
3835 // op: Mu2
3836 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3837 Value |= (op & 0x1) << 13;
3838 // op: Nt8
3839 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3840 Value |= (op & 0x7) << 8;
3841 // op: Rx32
3842 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3843 Value |= (op & 0x1f) << 16;
3844 break;
3845 }
3846 case Hexagon::S2_storerf_pci:
3847 case Hexagon::S2_storerh_pci: {
3848 // op: Ii
3849 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3850 Value |= (op & 0x1e) << 2;
3851 // op: Mu2
3852 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3853 Value |= (op & 0x1) << 13;
3854 // op: Rt32
3855 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
3856 Value |= (op & 0x1f) << 8;
3857 // op: Rx32
3858 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3859 Value |= (op & 0x1f) << 16;
3860 break;
3861 }
3862 case Hexagon::S2_storerhnew_pi: {
3863 // op: Ii
3864 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3865 Value |= (op & 0x1e) << 2;
3866 // op: Nt8
3867 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3868 Value |= (op & 0x7) << 8;
3869 // op: Rx32
3870 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3871 Value |= (op & 0x1f) << 16;
3872 break;
3873 }
3874 case Hexagon::S2_storerf_pi:
3875 case Hexagon::S2_storerh_pi:
3876 case Hexagon::S2_storerh_pi_nt: {
3877 // op: Ii
3878 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3879 Value |= (op & 0x1e) << 2;
3880 // op: Rt32
3881 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3882 Value |= (op & 0x1f) << 8;
3883 // op: Rx32
3884 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3885 Value |= (op & 0x1f) << 16;
3886 break;
3887 }
3888 case Hexagon::F2_dfclass: {
3889 // op: Ii
3890 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3891 Value |= (op & 0x1f) << 5;
3892 // op: Rss32
3893 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3894 Value |= (op & 0x1f) << 16;
3895 // op: Pd4
3896 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3897 Value |= (op & 0x3);
3898 break;
3899 }
3900 case Hexagon::S2_extractu:
3901 case Hexagon::S4_extract: {
3902 // op: Ii
3903 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3904 Value |= (op & 0x1f) << 8;
3905 // op: II
3906 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
3907 Value |= (op & 0x18) << 18;
3908 Value |= (op & 0x7) << 5;
3909 // op: Rs32
3910 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3911 Value |= (op & 0x1f) << 16;
3912 // op: Rd32
3913 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3914 Value |= (op & 0x1f);
3915 break;
3916 }
3917 case Hexagon::F2_sfclass:
3918 case Hexagon::S2_tstbit_i:
3919 case Hexagon::S4_ntstbit_i: {
3920 // op: Ii
3921 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3922 Value |= (op & 0x1f) << 8;
3923 // op: Rs32
3924 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3925 Value |= (op & 0x1f) << 16;
3926 // op: Pd4
3927 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3928 Value |= (op & 0x3);
3929 break;
3930 }
3931 case Hexagon::A4_cround_ri:
3932 case Hexagon::A4_round_ri:
3933 case Hexagon::A4_round_ri_sat:
3934 case Hexagon::A7_clip:
3935 case Hexagon::S2_asl_i_r:
3936 case Hexagon::S2_asl_i_r_sat:
3937 case Hexagon::S2_asr_i_r:
3938 case Hexagon::S2_asr_i_r_rnd:
3939 case Hexagon::S2_clrbit_i:
3940 case Hexagon::S2_lsr_i_r:
3941 case Hexagon::S2_setbit_i:
3942 case Hexagon::S2_togglebit_i:
3943 case Hexagon::S6_rol_i_r: {
3944 // op: Ii
3945 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3946 Value |= (op & 0x1f) << 8;
3947 // op: Rs32
3948 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3949 Value |= (op & 0x1f) << 16;
3950 // op: Rd32
3951 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3952 Value |= (op & 0x1f);
3953 break;
3954 }
3955 case Hexagon::A4_bitspliti: {
3956 // op: Ii
3957 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3958 Value |= (op & 0x1f) << 8;
3959 // op: Rs32
3960 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3961 Value |= (op & 0x1f) << 16;
3962 // op: Rdd32
3963 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3964 Value |= (op & 0x1f);
3965 break;
3966 }
3967 case Hexagon::S2_asr_i_svw_trun: {
3968 // op: Ii
3969 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3970 Value |= (op & 0x1f) << 8;
3971 // op: Rss32
3972 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3973 Value |= (op & 0x1f) << 16;
3974 // op: Rd32
3975 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3976 Value |= (op & 0x1f);
3977 break;
3978 }
3979 case Hexagon::A7_vclip:
3980 case Hexagon::S2_asl_i_vw:
3981 case Hexagon::S2_asr_i_vw:
3982 case Hexagon::S2_lsr_i_vw: {
3983 // op: Ii
3984 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3985 Value |= (op & 0x1f) << 8;
3986 // op: Rss32
3987 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
3988 Value |= (op & 0x1f) << 16;
3989 // op: Rdd32
3990 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
3991 Value |= (op & 0x1f);
3992 break;
3993 }
3994 case Hexagon::C2_cmpgtui:
3995 case Hexagon::C4_cmplteui: {
3996 // op: Ii
3997 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
3998 Value |= (op & 0x1ff) << 5;
3999 // op: Rs32
4000 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4001 Value |= (op & 0x1f) << 16;
4002 // op: Pd4
4003 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4004 Value |= (op & 0x3);
4005 break;
4006 }
4007 case Hexagon::L4_loadbsw2_ur:
4008 case Hexagon::L4_loadbzw2_ur:
4009 case Hexagon::L4_loadrb_ur:
4010 case Hexagon::L4_loadrh_ur:
4011 case Hexagon::L4_loadri_ur:
4012 case Hexagon::L4_loadrub_ur:
4013 case Hexagon::L4_loadruh_ur: {
4014 // op: Ii
4015 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4016 Value |= (op & 0x2) << 12;
4017 Value |= (op & 0x1) << 7;
4018 // op: II
4019 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4020 Value |= (op & 0x3c) << 6;
4021 Value |= (op & 0x3) << 5;
4022 // op: Rt32
4023 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4024 Value |= (op & 0x1f) << 16;
4025 // op: Rd32
4026 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4027 Value |= (op & 0x1f);
4028 break;
4029 }
4030 case Hexagon::L4_loadbsw4_ur:
4031 case Hexagon::L4_loadbzw4_ur:
4032 case Hexagon::L4_loadrd_ur: {
4033 // op: Ii
4034 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4035 Value |= (op & 0x2) << 12;
4036 Value |= (op & 0x1) << 7;
4037 // op: II
4038 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4039 Value |= (op & 0x3c) << 6;
4040 Value |= (op & 0x3) << 5;
4041 // op: Rt32
4042 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4043 Value |= (op & 0x1f) << 16;
4044 // op: Rdd32
4045 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4046 Value |= (op & 0x1f);
4047 break;
4048 }
4049 case Hexagon::S4_storerbnew_rr:
4050 case Hexagon::S4_storerhnew_rr:
4051 case Hexagon::S4_storerinew_rr: {
4052 // op: Ii
4053 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4054 Value |= (op & 0x2) << 12;
4055 Value |= (op & 0x1) << 7;
4056 // op: Rs32
4057 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4058 Value |= (op & 0x1f) << 16;
4059 // op: Ru32
4060 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4061 Value |= (op & 0x1f) << 8;
4062 // op: Nt8
4063 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4064 Value |= (op & 0x7);
4065 break;
4066 }
4067 case Hexagon::S4_storerb_rr:
4068 case Hexagon::S4_storerf_rr:
4069 case Hexagon::S4_storerh_rr:
4070 case Hexagon::S4_storeri_rr: {
4071 // op: Ii
4072 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4073 Value |= (op & 0x2) << 12;
4074 Value |= (op & 0x1) << 7;
4075 // op: Rs32
4076 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4077 Value |= (op & 0x1f) << 16;
4078 // op: Ru32
4079 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4080 Value |= (op & 0x1f) << 8;
4081 // op: Rt32
4082 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4083 Value |= (op & 0x1f);
4084 break;
4085 }
4086 case Hexagon::S4_storerd_rr: {
4087 // op: Ii
4088 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4089 Value |= (op & 0x2) << 12;
4090 Value |= (op & 0x1) << 7;
4091 // op: Rs32
4092 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4093 Value |= (op & 0x1f) << 16;
4094 // op: Ru32
4095 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4096 Value |= (op & 0x1f) << 8;
4097 // op: Rtt32
4098 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4099 Value |= (op & 0x1f);
4100 break;
4101 }
4102 case Hexagon::S2_pstorerbnewf_io:
4103 case Hexagon::S2_pstorerbnewt_io:
4104 case Hexagon::S4_pstorerbnewfnew_io:
4105 case Hexagon::S4_pstorerbnewtnew_io: {
4106 // op: Ii
4107 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4108 Value |= (op & 0x20) << 8;
4109 Value |= (op & 0x1f) << 3;
4110 // op: Pv4
4111 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4112 Value |= (op & 0x3);
4113 // op: Rs32
4114 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4115 Value |= (op & 0x1f) << 16;
4116 // op: Nt8
4117 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4118 Value |= (op & 0x7) << 8;
4119 break;
4120 }
4121 case Hexagon::S2_pstorerbf_io:
4122 case Hexagon::S2_pstorerbt_io:
4123 case Hexagon::S4_pstorerbfnew_io:
4124 case Hexagon::S4_pstorerbtnew_io: {
4125 // op: Ii
4126 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4127 Value |= (op & 0x20) << 8;
4128 Value |= (op & 0x1f) << 3;
4129 // op: Pv4
4130 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4131 Value |= (op & 0x3);
4132 // op: Rs32
4133 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4134 Value |= (op & 0x1f) << 16;
4135 // op: Rt32
4136 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4137 Value |= (op & 0x1f) << 8;
4138 break;
4139 }
4140 case Hexagon::C2_cmpeqi:
4141 case Hexagon::C2_cmpgti:
4142 case Hexagon::C4_cmpltei:
4143 case Hexagon::C4_cmpneqi: {
4144 // op: Ii
4145 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4146 Value |= (op & 0x200) << 12;
4147 Value |= (op & 0x1ff) << 5;
4148 // op: Rs32
4149 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4150 Value |= (op & 0x1f) << 16;
4151 // op: Pd4
4152 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4153 Value |= (op & 0x3);
4154 break;
4155 }
4156 case Hexagon::A2_andir:
4157 case Hexagon::A2_orir: {
4158 // op: Ii
4159 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4160 Value |= (op & 0x200) << 12;
4161 Value |= (op & 0x1ff) << 5;
4162 // op: Rs32
4163 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4164 Value |= (op & 0x1f) << 16;
4165 // op: Rd32
4166 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4167 Value |= (op & 0x1f);
4168 break;
4169 }
4170 case Hexagon::S4_subaddi: {
4171 // op: Ii
4172 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4173 Value |= (op & 0x30) << 17;
4174 Value |= (op & 0x8) << 10;
4175 Value |= (op & 0x7) << 5;
4176 // op: Rs32
4177 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4178 Value |= (op & 0x1f) << 16;
4179 // op: Ru32
4180 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4181 Value |= (op & 0x1f);
4182 // op: Rd32
4183 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4184 Value |= (op & 0x1f) << 8;
4185 break;
4186 }
4187 case Hexagon::L2_loadrd_io: {
4188 // op: Ii
4189 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4190 Value |= (op & 0x3000) << 13;
4191 Value |= (op & 0xff8) << 2;
4192 // op: Rs32
4193 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4194 Value |= (op & 0x1f) << 16;
4195 // op: Rdd32
4196 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4197 Value |= (op & 0x1f);
4198 break;
4199 }
4200 case Hexagon::S2_storerinew_pci: {
4201 // op: Ii
4202 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4203 Value |= (op & 0x3c) << 1;
4204 // op: Mu2
4205 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4206 Value |= (op & 0x1) << 13;
4207 // op: Nt8
4208 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
4209 Value |= (op & 0x7) << 8;
4210 // op: Rx32
4211 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4212 Value |= (op & 0x1f) << 16;
4213 break;
4214 }
4215 case Hexagon::S2_storeri_pci: {
4216 // op: Ii
4217 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4218 Value |= (op & 0x3c) << 1;
4219 // op: Mu2
4220 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4221 Value |= (op & 0x1) << 13;
4222 // op: Rt32
4223 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
4224 Value |= (op & 0x1f) << 8;
4225 // op: Rx32
4226 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4227 Value |= (op & 0x1f) << 16;
4228 break;
4229 }
4230 case Hexagon::S2_storerinew_pi: {
4231 // op: Ii
4232 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4233 Value |= (op & 0x3c) << 1;
4234 // op: Nt8
4235 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4236 Value |= (op & 0x7) << 8;
4237 // op: Rx32
4238 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4239 Value |= (op & 0x1f) << 16;
4240 break;
4241 }
4242 case Hexagon::S2_storeri_pi:
4243 case Hexagon::S2_storeri_pi_nt: {
4244 // op: Ii
4245 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4246 Value |= (op & 0x3c) << 1;
4247 // op: Rt32
4248 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4249 Value |= (op & 0x1f) << 8;
4250 // op: Rx32
4251 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4252 Value |= (op & 0x1f) << 16;
4253 break;
4254 }
4255 case Hexagon::SL1_loadri_io: {
4256 // op: Ii
4257 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4258 Value |= (op & 0x3c) << 6;
4259 // op: Rs16
4260 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4261 Value |= (op & 0xf) << 4;
4262 // op: Rd16
4263 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4264 Value |= (op & 0xf);
4265 break;
4266 }
4267 case Hexagon::L4_ploadrbf_abs:
4268 case Hexagon::L4_ploadrbfnew_abs:
4269 case Hexagon::L4_ploadrbt_abs:
4270 case Hexagon::L4_ploadrbtnew_abs:
4271 case Hexagon::L4_ploadrhf_abs:
4272 case Hexagon::L4_ploadrhfnew_abs:
4273 case Hexagon::L4_ploadrht_abs:
4274 case Hexagon::L4_ploadrhtnew_abs:
4275 case Hexagon::L4_ploadrif_abs:
4276 case Hexagon::L4_ploadrifnew_abs:
4277 case Hexagon::L4_ploadrit_abs:
4278 case Hexagon::L4_ploadritnew_abs:
4279 case Hexagon::L4_ploadrubf_abs:
4280 case Hexagon::L4_ploadrubfnew_abs:
4281 case Hexagon::L4_ploadrubt_abs:
4282 case Hexagon::L4_ploadrubtnew_abs:
4283 case Hexagon::L4_ploadruhf_abs:
4284 case Hexagon::L4_ploadruhfnew_abs:
4285 case Hexagon::L4_ploadruht_abs:
4286 case Hexagon::L4_ploadruhtnew_abs: {
4287 // op: Ii
4288 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4289 Value |= (op & 0x3e) << 15;
4290 Value |= (op & 0x1) << 8;
4291 // op: Pt4
4292 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4293 Value |= (op & 0x3) << 9;
4294 // op: Rd32
4295 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4296 Value |= (op & 0x1f);
4297 break;
4298 }
4299 case Hexagon::L4_ploadrdf_abs:
4300 case Hexagon::L4_ploadrdfnew_abs:
4301 case Hexagon::L4_ploadrdt_abs:
4302 case Hexagon::L4_ploadrdtnew_abs: {
4303 // op: Ii
4304 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4305 Value |= (op & 0x3e) << 15;
4306 Value |= (op & 0x1) << 8;
4307 // op: Pt4
4308 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4309 Value |= (op & 0x3) << 9;
4310 // op: Rdd32
4311 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4312 Value |= (op & 0x1f);
4313 break;
4314 }
4315 case Hexagon::S4_storeirbf_io:
4316 case Hexagon::S4_storeirbfnew_io:
4317 case Hexagon::S4_storeirbt_io:
4318 case Hexagon::S4_storeirbtnew_io: {
4319 // op: Ii
4320 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4321 Value |= (op & 0x3f) << 7;
4322 // op: II
4323 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4324 Value |= (op & 0x20) << 8;
4325 Value |= (op & 0x1f);
4326 // op: Pv4
4327 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4328 Value |= (op & 0x3) << 5;
4329 // op: Rs32
4330 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4331 Value |= (op & 0x1f) << 16;
4332 break;
4333 }
4334 case Hexagon::S2_extractup:
4335 case Hexagon::S4_extractp: {
4336 // op: Ii
4337 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4338 Value |= (op & 0x3f) << 8;
4339 // op: II
4340 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4341 Value |= (op & 0x38) << 18;
4342 Value |= (op & 0x7) << 5;
4343 // op: Rss32
4344 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4345 Value |= (op & 0x1f) << 16;
4346 // op: Rdd32
4347 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4348 Value |= (op & 0x1f);
4349 break;
4350 }
4351 case Hexagon::C2_bitsclri:
4352 case Hexagon::C4_nbitsclri: {
4353 // op: Ii
4354 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4355 Value |= (op & 0x3f) << 8;
4356 // op: Rs32
4357 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4358 Value |= (op & 0x1f) << 16;
4359 // op: Pd4
4360 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4361 Value |= (op & 0x3);
4362 break;
4363 }
4364 case Hexagon::S4_clbaddi: {
4365 // op: Ii
4366 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4367 Value |= (op & 0x3f) << 8;
4368 // op: Rs32
4369 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4370 Value |= (op & 0x1f) << 16;
4371 // op: Rd32
4372 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4373 Value |= (op & 0x1f);
4374 break;
4375 }
4376 case Hexagon::S4_clbpaddi: {
4377 // op: Ii
4378 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4379 Value |= (op & 0x3f) << 8;
4380 // op: Rss32
4381 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4382 Value |= (op & 0x1f) << 16;
4383 // op: Rd32
4384 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4385 Value |= (op & 0x1f);
4386 break;
4387 }
4388 case Hexagon::A7_croundd_ri:
4389 case Hexagon::S2_asl_i_p:
4390 case Hexagon::S2_asr_i_p:
4391 case Hexagon::S2_asr_i_p_rnd:
4392 case Hexagon::S2_lsr_i_p:
4393 case Hexagon::S6_rol_i_p: {
4394 // op: Ii
4395 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4396 Value |= (op & 0x3f) << 8;
4397 // op: Rss32
4398 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4399 Value |= (op & 0x1f) << 16;
4400 // op: Rdd32
4401 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4402 Value |= (op & 0x1f);
4403 break;
4404 }
4405 case Hexagon::S2_allocframe: {
4406 // op: Ii
4407 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4408 Value |= (op & 0x3ff8) >> 3;
4409 // op: Rx32
4410 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4411 Value |= (op & 0x1f) << 16;
4412 break;
4413 }
4414 case Hexagon::S2_pstorerhnewf_io:
4415 case Hexagon::S2_pstorerhnewt_io:
4416 case Hexagon::S4_pstorerhnewfnew_io:
4417 case Hexagon::S4_pstorerhnewtnew_io: {
4418 // op: Ii
4419 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4420 Value |= (op & 0x40) << 7;
4421 Value |= (op & 0x3e) << 2;
4422 // op: Pv4
4423 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4424 Value |= (op & 0x3);
4425 // op: Rs32
4426 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4427 Value |= (op & 0x1f) << 16;
4428 // op: Nt8
4429 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4430 Value |= (op & 0x7) << 8;
4431 break;
4432 }
4433 case Hexagon::S2_pstorerff_io:
4434 case Hexagon::S2_pstorerft_io:
4435 case Hexagon::S2_pstorerhf_io:
4436 case Hexagon::S2_pstorerht_io:
4437 case Hexagon::S4_pstorerffnew_io:
4438 case Hexagon::S4_pstorerftnew_io:
4439 case Hexagon::S4_pstorerhfnew_io:
4440 case Hexagon::S4_pstorerhtnew_io: {
4441 // op: Ii
4442 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4443 Value |= (op & 0x40) << 7;
4444 Value |= (op & 0x3e) << 2;
4445 // op: Pv4
4446 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4447 Value |= (op & 0x3);
4448 // op: Rs32
4449 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4450 Value |= (op & 0x1f) << 16;
4451 // op: Rt32
4452 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4453 Value |= (op & 0x1f) << 8;
4454 break;
4455 }
4456 case Hexagon::J4_cmpeqn1_f_jumpnv_nt:
4457 case Hexagon::J4_cmpeqn1_f_jumpnv_t:
4458 case Hexagon::J4_cmpeqn1_t_jumpnv_nt:
4459 case Hexagon::J4_cmpeqn1_t_jumpnv_t:
4460 case Hexagon::J4_cmpgtn1_f_jumpnv_nt:
4461 case Hexagon::J4_cmpgtn1_f_jumpnv_t:
4462 case Hexagon::J4_cmpgtn1_t_jumpnv_nt:
4463 case Hexagon::J4_cmpgtn1_t_jumpnv_t: {
4464 // op: Ii
4465 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4466 Value |= (op & 0x600) << 11;
4467 Value |= (op & 0x1fc) >> 1;
4468 // op: Ns8
4469 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4470 Value |= (op & 0x7) << 16;
4471 break;
4472 }
4473 case Hexagon::J4_cmpeq_f_jumpnv_nt:
4474 case Hexagon::J4_cmpeq_f_jumpnv_t:
4475 case Hexagon::J4_cmpeq_t_jumpnv_nt:
4476 case Hexagon::J4_cmpeq_t_jumpnv_t:
4477 case Hexagon::J4_cmpgt_f_jumpnv_nt:
4478 case Hexagon::J4_cmpgt_f_jumpnv_t:
4479 case Hexagon::J4_cmpgt_t_jumpnv_nt:
4480 case Hexagon::J4_cmpgt_t_jumpnv_t:
4481 case Hexagon::J4_cmpgtu_f_jumpnv_nt:
4482 case Hexagon::J4_cmpgtu_f_jumpnv_t:
4483 case Hexagon::J4_cmpgtu_t_jumpnv_nt:
4484 case Hexagon::J4_cmpgtu_t_jumpnv_t: {
4485 // op: Ii
4486 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4487 Value |= (op & 0x600) << 11;
4488 Value |= (op & 0x1fc) >> 1;
4489 // op: Ns8
4490 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4491 Value |= (op & 0x7) << 16;
4492 // op: Rt32
4493 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4494 Value |= (op & 0x1f) << 8;
4495 break;
4496 }
4497 case Hexagon::J4_cmpeqn1_fp0_jump_nt:
4498 case Hexagon::J4_cmpeqn1_fp0_jump_t:
4499 case Hexagon::J4_cmpeqn1_fp1_jump_nt:
4500 case Hexagon::J4_cmpeqn1_fp1_jump_t:
4501 case Hexagon::J4_cmpeqn1_tp0_jump_nt:
4502 case Hexagon::J4_cmpeqn1_tp0_jump_t:
4503 case Hexagon::J4_cmpeqn1_tp1_jump_nt:
4504 case Hexagon::J4_cmpeqn1_tp1_jump_t:
4505 case Hexagon::J4_cmpgtn1_fp0_jump_nt:
4506 case Hexagon::J4_cmpgtn1_fp0_jump_t:
4507 case Hexagon::J4_cmpgtn1_fp1_jump_nt:
4508 case Hexagon::J4_cmpgtn1_fp1_jump_t:
4509 case Hexagon::J4_cmpgtn1_tp0_jump_nt:
4510 case Hexagon::J4_cmpgtn1_tp0_jump_t:
4511 case Hexagon::J4_cmpgtn1_tp1_jump_nt:
4512 case Hexagon::J4_cmpgtn1_tp1_jump_t: {
4513 // op: Ii
4514 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4515 Value |= (op & 0x600) << 11;
4516 Value |= (op & 0x1fc) >> 1;
4517 // op: Rs16
4518 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4519 Value |= (op & 0xf) << 16;
4520 break;
4521 }
4522 case Hexagon::J4_cmpeq_fp0_jump_nt:
4523 case Hexagon::J4_cmpeq_fp0_jump_t:
4524 case Hexagon::J4_cmpeq_fp1_jump_nt:
4525 case Hexagon::J4_cmpeq_fp1_jump_t:
4526 case Hexagon::J4_cmpeq_tp0_jump_nt:
4527 case Hexagon::J4_cmpeq_tp0_jump_t:
4528 case Hexagon::J4_cmpeq_tp1_jump_nt:
4529 case Hexagon::J4_cmpeq_tp1_jump_t:
4530 case Hexagon::J4_cmpgt_fp0_jump_nt:
4531 case Hexagon::J4_cmpgt_fp0_jump_t:
4532 case Hexagon::J4_cmpgt_fp1_jump_nt:
4533 case Hexagon::J4_cmpgt_fp1_jump_t:
4534 case Hexagon::J4_cmpgt_tp0_jump_nt:
4535 case Hexagon::J4_cmpgt_tp0_jump_t:
4536 case Hexagon::J4_cmpgt_tp1_jump_nt:
4537 case Hexagon::J4_cmpgt_tp1_jump_t:
4538 case Hexagon::J4_cmpgtu_fp0_jump_nt:
4539 case Hexagon::J4_cmpgtu_fp0_jump_t:
4540 case Hexagon::J4_cmpgtu_fp1_jump_nt:
4541 case Hexagon::J4_cmpgtu_fp1_jump_t:
4542 case Hexagon::J4_cmpgtu_tp0_jump_nt:
4543 case Hexagon::J4_cmpgtu_tp0_jump_t:
4544 case Hexagon::J4_cmpgtu_tp1_jump_nt:
4545 case Hexagon::J4_cmpgtu_tp1_jump_t: {
4546 // op: Ii
4547 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4548 Value |= (op & 0x600) << 11;
4549 Value |= (op & 0x1fc) >> 1;
4550 // op: Rs16
4551 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4552 Value |= (op & 0xf) << 16;
4553 // op: Rt16
4554 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4555 Value |= (op & 0xf) << 8;
4556 break;
4557 }
4558 case Hexagon::J4_jumpsetr: {
4559 // op: Ii
4560 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4561 Value |= (op & 0x600) << 11;
4562 Value |= (op & 0x1fc) >> 1;
4563 // op: Rs16
4564 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4565 Value |= (op & 0xf) << 16;
4566 // op: Rd16
4567 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4568 Value |= (op & 0xf) << 8;
4569 break;
4570 }
4571 case Hexagon::J4_cmplt_f_jumpnv_nt:
4572 case Hexagon::J4_cmplt_f_jumpnv_t:
4573 case Hexagon::J4_cmplt_t_jumpnv_nt:
4574 case Hexagon::J4_cmplt_t_jumpnv_t:
4575 case Hexagon::J4_cmpltu_f_jumpnv_nt:
4576 case Hexagon::J4_cmpltu_f_jumpnv_t:
4577 case Hexagon::J4_cmpltu_t_jumpnv_nt:
4578 case Hexagon::J4_cmpltu_t_jumpnv_t: {
4579 // op: Ii
4580 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4581 Value |= (op & 0x600) << 11;
4582 Value |= (op & 0x1fc) >> 1;
4583 // op: Rt32
4584 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4585 Value |= (op & 0x1f) << 8;
4586 // op: Ns8
4587 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4588 Value |= (op & 0x7) << 16;
4589 break;
4590 }
4591 case Hexagon::L2_loadrb_io:
4592 case Hexagon::L2_loadrub_io: {
4593 // op: Ii
4594 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4595 Value |= (op & 0x600) << 16;
4596 Value |= (op & 0x1ff) << 5;
4597 // op: Rs32
4598 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4599 Value |= (op & 0x1f) << 16;
4600 // op: Rd32
4601 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4602 Value |= (op & 0x1f);
4603 break;
4604 }
4605 case Hexagon::V6_vS32b_new_pi:
4606 case Hexagon::V6_vS32b_nt_new_pi: {
4607 // op: Ii
4608 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4609 Value |= (op & 0x7) << 8;
4610 // op: Os8
4611 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4612 Value |= (op & 0x7);
4613 // op: Rx32
4614 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4615 Value |= (op & 0x1f) << 16;
4616 break;
4617 }
4618 case Hexagon::SL2_loadrb_io: {
4619 // op: Ii
4620 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4621 Value |= (op & 0x7) << 8;
4622 // op: Rs16
4623 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4624 Value |= (op & 0xf) << 4;
4625 // op: Rd16
4626 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4627 Value |= (op & 0xf);
4628 break;
4629 }
4630 case Hexagon::V6_vS32b_srls_pi:
4631 case Hexagon::V6_zLd_pi: {
4632 // op: Ii
4633 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4634 Value |= (op & 0x7) << 8;
4635 // op: Rx32
4636 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4637 Value |= (op & 0x1f) << 16;
4638 break;
4639 }
4640 case Hexagon::V6_vS32Ub_pi:
4641 case Hexagon::V6_vS32b_nt_pi:
4642 case Hexagon::V6_vS32b_pi: {
4643 // op: Ii
4644 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4645 Value |= (op & 0x7) << 8;
4646 // op: Vs32
4647 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4648 Value |= (op & 0x1f);
4649 // op: Rx32
4650 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4651 Value |= (op & 0x1f) << 16;
4652 break;
4653 }
4654 case Hexagon::S2_storerd_pci: {
4655 // op: Ii
4656 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4657 Value |= (op & 0x78);
4658 // op: Mu2
4659 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4660 Value |= (op & 0x1) << 13;
4661 // op: Rtt32
4662 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
4663 Value |= (op & 0x1f) << 8;
4664 // op: Rx32
4665 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4666 Value |= (op & 0x1f) << 16;
4667 break;
4668 }
4669 case Hexagon::S2_storerd_pi:
4670 case Hexagon::S2_storerd_pi_nt: {
4671 // op: Ii
4672 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4673 Value |= (op & 0x78);
4674 // op: Rtt32
4675 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4676 Value |= (op & 0x1f) << 8;
4677 // op: Rx32
4678 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4679 Value |= (op & 0x1f) << 16;
4680 break;
4681 }
4682 case Hexagon::S4_storeirhf_io:
4683 case Hexagon::S4_storeirhfnew_io:
4684 case Hexagon::S4_storeirht_io:
4685 case Hexagon::S4_storeirhtnew_io: {
4686 // op: Ii
4687 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4688 Value |= (op & 0x7e) << 6;
4689 // op: II
4690 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4691 Value |= (op & 0x20) << 8;
4692 Value |= (op & 0x1f);
4693 // op: Pv4
4694 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4695 Value |= (op & 0x3) << 5;
4696 // op: Rs32
4697 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4698 Value |= (op & 0x1f) << 16;
4699 break;
4700 }
4701 case Hexagon::SA1_addi: {
4702 // op: Ii
4703 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4704 Value |= (op & 0x7f) << 4;
4705 // op: Rx16
4706 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4707 Value |= (op & 0xf);
4708 break;
4709 }
4710 case Hexagon::A4_cmpbgtui:
4711 case Hexagon::A4_cmphgtui: {
4712 // op: Ii
4713 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4714 Value |= (op & 0x7f) << 5;
4715 // op: Rs32
4716 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4717 Value |= (op & 0x1f) << 16;
4718 // op: Pd4
4719 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4720 Value |= (op & 0x3);
4721 break;
4722 }
4723 case Hexagon::A4_vcmpbgtui:
4724 case Hexagon::A4_vcmphgtui:
4725 case Hexagon::A4_vcmpwgtui: {
4726 // op: Ii
4727 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4728 Value |= (op & 0x7f) << 5;
4729 // op: Rss32
4730 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4731 Value |= (op & 0x1f) << 16;
4732 // op: Pd4
4733 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4734 Value |= (op & 0x3);
4735 break;
4736 }
4737 case Hexagon::V6_zLd_pred_ai: {
4738 // op: Ii
4739 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4740 Value |= (op & 0x8) << 10;
4741 Value |= (op & 0x7) << 8;
4742 // op: Pv4
4743 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4744 Value |= (op & 0x3) << 11;
4745 // op: Rt32
4746 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4747 Value |= (op & 0x1f) << 16;
4748 break;
4749 }
4750 case Hexagon::V6_vS32b_new_npred_ai:
4751 case Hexagon::V6_vS32b_new_pred_ai:
4752 case Hexagon::V6_vS32b_nt_new_npred_ai:
4753 case Hexagon::V6_vS32b_nt_new_pred_ai: {
4754 // op: Ii
4755 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4756 Value |= (op & 0x8) << 10;
4757 Value |= (op & 0x7) << 8;
4758 // op: Pv4
4759 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4760 Value |= (op & 0x3) << 11;
4761 // op: Rt32
4762 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4763 Value |= (op & 0x1f) << 16;
4764 // op: Os8
4765 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4766 Value |= (op & 0x7);
4767 break;
4768 }
4769 case Hexagon::V6_vS32Ub_npred_ai:
4770 case Hexagon::V6_vS32Ub_pred_ai:
4771 case Hexagon::V6_vS32b_npred_ai:
4772 case Hexagon::V6_vS32b_nt_npred_ai:
4773 case Hexagon::V6_vS32b_nt_pred_ai:
4774 case Hexagon::V6_vS32b_pred_ai: {
4775 // op: Ii
4776 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4777 Value |= (op & 0x8) << 10;
4778 Value |= (op & 0x7) << 8;
4779 // op: Pv4
4780 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4781 Value |= (op & 0x3) << 11;
4782 // op: Rt32
4783 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4784 Value |= (op & 0x1f) << 16;
4785 // op: Vs32
4786 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4787 Value |= (op & 0x1f);
4788 break;
4789 }
4790 case Hexagon::V6_vS32b_nqpred_ai:
4791 case Hexagon::V6_vS32b_nt_nqpred_ai:
4792 case Hexagon::V6_vS32b_nt_qpred_ai:
4793 case Hexagon::V6_vS32b_qpred_ai: {
4794 // op: Ii
4795 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4796 Value |= (op & 0x8) << 10;
4797 Value |= (op & 0x7) << 8;
4798 // op: Qv4
4799 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4800 Value |= (op & 0x3) << 11;
4801 // op: Rt32
4802 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4803 Value |= (op & 0x1f) << 16;
4804 // op: Vs32
4805 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4806 Value |= (op & 0x1f);
4807 break;
4808 }
4809 case Hexagon::V6_vL32Ub_ai:
4810 case Hexagon::V6_vL32b_ai:
4811 case Hexagon::V6_vL32b_cur_ai:
4812 case Hexagon::V6_vL32b_nt_ai:
4813 case Hexagon::V6_vL32b_nt_cur_ai:
4814 case Hexagon::V6_vL32b_nt_tmp_ai:
4815 case Hexagon::V6_vL32b_tmp_ai: {
4816 // op: Ii
4817 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4818 Value |= (op & 0x8) << 10;
4819 Value |= (op & 0x7) << 8;
4820 // op: Rt32
4821 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4822 Value |= (op & 0x1f) << 16;
4823 // op: Vd32
4824 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4825 Value |= (op & 0x1f);
4826 break;
4827 }
4828 case Hexagon::S2_pstorerinewf_io:
4829 case Hexagon::S2_pstorerinewt_io:
4830 case Hexagon::S4_pstorerinewfnew_io:
4831 case Hexagon::S4_pstorerinewtnew_io: {
4832 // op: Ii
4833 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4834 Value |= (op & 0x80) << 6;
4835 Value |= (op & 0x7c) << 1;
4836 // op: Pv4
4837 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4838 Value |= (op & 0x3);
4839 // op: Rs32
4840 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4841 Value |= (op & 0x1f) << 16;
4842 // op: Nt8
4843 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4844 Value |= (op & 0x7) << 8;
4845 break;
4846 }
4847 case Hexagon::S2_pstorerif_io:
4848 case Hexagon::S2_pstorerit_io:
4849 case Hexagon::S4_pstorerifnew_io:
4850 case Hexagon::S4_pstoreritnew_io: {
4851 // op: Ii
4852 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4853 Value |= (op & 0x80) << 6;
4854 Value |= (op & 0x7c) << 1;
4855 // op: Pv4
4856 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4857 Value |= (op & 0x3);
4858 // op: Rs32
4859 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4860 Value |= (op & 0x1f) << 16;
4861 // op: Rt32
4862 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4863 Value |= (op & 0x1f) << 8;
4864 break;
4865 }
4866 case Hexagon::M4_mpyri_addr_u2: {
4867 // op: Ii
4868 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4869 Value |= (op & 0xc0) << 15;
4870 Value |= (op & 0x20) << 8;
4871 Value |= (op & 0x1c) << 3;
4872 // op: Ru32
4873 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4874 Value |= (op & 0x1f);
4875 // op: Rs32
4876 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4877 Value |= (op & 0x1f) << 16;
4878 // op: Rd32
4879 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4880 Value |= (op & 0x1f) << 8;
4881 break;
4882 }
4883 case Hexagon::L2_loadbsw2_io:
4884 case Hexagon::L2_loadbzw2_io:
4885 case Hexagon::L2_loadrh_io:
4886 case Hexagon::L2_loadruh_io: {
4887 // op: Ii
4888 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4889 Value |= (op & 0xc00) << 15;
4890 Value |= (op & 0x3fe) << 4;
4891 // op: Rs32
4892 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4893 Value |= (op & 0x1f) << 16;
4894 // op: Rd32
4895 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4896 Value |= (op & 0x1f);
4897 break;
4898 }
4899 case Hexagon::A2_tfrih:
4900 case Hexagon::A2_tfril: {
4901 // op: Ii
4902 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4903 Value |= (op & 0xc000) << 8;
4904 Value |= (op & 0x3fff);
4905 // op: Rx32
4906 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4907 Value |= (op & 0x1f) << 16;
4908 break;
4909 }
4910 case Hexagon::SL2_loadrh_io:
4911 case Hexagon::SL2_loadruh_io: {
4912 // op: Ii
4913 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4914 Value |= (op & 0xe) << 7;
4915 // op: Rs16
4916 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4917 Value |= (op & 0xf) << 4;
4918 // op: Rd16
4919 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4920 Value |= (op & 0xf);
4921 break;
4922 }
4923 case Hexagon::S2_storerbnew_pci: {
4924 // op: Ii
4925 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4926 Value |= (op & 0xf) << 3;
4927 // op: Mu2
4928 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4929 Value |= (op & 0x1) << 13;
4930 // op: Nt8
4931 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
4932 Value |= (op & 0x7) << 8;
4933 // op: Rx32
4934 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4935 Value |= (op & 0x1f) << 16;
4936 break;
4937 }
4938 case Hexagon::S2_storerb_pci: {
4939 // op: Ii
4940 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4941 Value |= (op & 0xf) << 3;
4942 // op: Mu2
4943 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4944 Value |= (op & 0x1) << 13;
4945 // op: Rt32
4946 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
4947 Value |= (op & 0x1f) << 8;
4948 // op: Rx32
4949 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4950 Value |= (op & 0x1f) << 16;
4951 break;
4952 }
4953 case Hexagon::S2_storerbnew_pi: {
4954 // op: Ii
4955 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4956 Value |= (op & 0xf) << 3;
4957 // op: Nt8
4958 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4959 Value |= (op & 0x7) << 8;
4960 // op: Rx32
4961 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4962 Value |= (op & 0x1f) << 16;
4963 break;
4964 }
4965 case Hexagon::S2_storerb_pi:
4966 case Hexagon::S2_storerb_pi_nt: {
4967 // op: Ii
4968 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4969 Value |= (op & 0xf) << 3;
4970 // op: Rt32
4971 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
4972 Value |= (op & 0x1f) << 8;
4973 // op: Rx32
4974 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4975 Value |= (op & 0x1f) << 16;
4976 break;
4977 }
4978 case Hexagon::SL1_loadrub_io: {
4979 // op: Ii
4980 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4981 Value |= (op & 0xf) << 8;
4982 // op: Rs16
4983 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4984 Value |= (op & 0xf) << 4;
4985 // op: Rd16
4986 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
4987 Value |= (op & 0xf);
4988 break;
4989 }
4990 case Hexagon::S5_asrhub_rnd_sat:
4991 case Hexagon::S5_asrhub_sat: {
4992 // op: Ii
4993 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
4994 Value |= (op & 0xf) << 8;
4995 // op: Rss32
4996 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
4997 Value |= (op & 0x1f) << 16;
4998 // op: Rd32
4999 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5000 Value |= (op & 0x1f);
5001 break;
5002 }
5003 case Hexagon::S2_asl_i_vh:
5004 case Hexagon::S2_asr_i_vh:
5005 case Hexagon::S2_lsr_i_vh:
5006 case Hexagon::S5_vasrhrnd: {
5007 // op: Ii
5008 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5009 Value |= (op & 0xf) << 8;
5010 // op: Rss32
5011 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5012 Value |= (op & 0x1f) << 16;
5013 // op: Rdd32
5014 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5015 Value |= (op & 0x1f);
5016 break;
5017 }
5018 case Hexagon::C2_cmoveif:
5019 case Hexagon::C2_cmoveit:
5020 case Hexagon::C2_cmovenewif:
5021 case Hexagon::C2_cmovenewit: {
5022 // op: Ii
5023 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5024 Value |= (op & 0xf00) << 8;
5025 Value |= (op & 0xff) << 5;
5026 // op: Pu4
5027 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5028 Value |= (op & 0x3) << 21;
5029 // op: Rd32
5030 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5031 Value |= (op & 0x1f);
5032 break;
5033 }
5034 case Hexagon::J2_trap1: {
5035 // op: Ii
5036 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5037 Value |= (op & 0xf8) << 5;
5038 Value |= (op & 0x7) << 2;
5039 // op: Rx32
5040 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5041 Value |= (op & 0x1f) << 16;
5042 break;
5043 }
5044 case Hexagon::S4_storeirif_io:
5045 case Hexagon::S4_storeirifnew_io:
5046 case Hexagon::S4_storeirit_io:
5047 case Hexagon::S4_storeiritnew_io: {
5048 // op: Ii
5049 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5050 Value |= (op & 0xfc) << 5;
5051 // op: II
5052 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5053 Value |= (op & 0x20) << 8;
5054 Value |= (op & 0x1f);
5055 // op: Pv4
5056 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5057 Value |= (op & 0x3) << 5;
5058 // op: Rs32
5059 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5060 Value |= (op & 0x1f) << 16;
5061 break;
5062 }
5063 case Hexagon::A2_addi: {
5064 // op: Ii
5065 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5066 Value |= (op & 0xfe00) << 12;
5067 Value |= (op & 0x1ff) << 5;
5068 // op: Rs32
5069 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5070 Value |= (op & 0x1f) << 16;
5071 // op: Rd32
5072 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5073 Value |= (op & 0x1f);
5074 break;
5075 }
5076 case Hexagon::C2_muxii: {
5077 // op: Ii
5078 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5079 Value |= (op & 0xff) << 5;
5080 // op: II
5081 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5082 Value |= (op & 0xfe) << 15;
5083 Value |= (op & 0x1) << 13;
5084 // op: Pu4
5085 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5086 Value |= (op & 0x3) << 23;
5087 // op: Rd32
5088 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5089 Value |= (op & 0x1f);
5090 break;
5091 }
5092 case Hexagon::C2_muxri: {
5093 // op: Ii
5094 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5095 Value |= (op & 0xff) << 5;
5096 // op: Pu4
5097 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5098 Value |= (op & 0x3) << 21;
5099 // op: Rs32
5100 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5101 Value |= (op & 0x1f) << 16;
5102 // op: Rd32
5103 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5104 Value |= (op & 0x1f);
5105 break;
5106 }
5107 case Hexagon::A4_cmpbeqi:
5108 case Hexagon::A4_cmpbgti:
5109 case Hexagon::A4_cmpheqi:
5110 case Hexagon::A4_cmphgti: {
5111 // op: Ii
5112 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5113 Value |= (op & 0xff) << 5;
5114 // op: Rs32
5115 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5116 Value |= (op & 0x1f) << 16;
5117 // op: Pd4
5118 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5119 Value |= (op & 0x3);
5120 break;
5121 }
5122 case Hexagon::A4_rcmpeqi:
5123 case Hexagon::A4_rcmpneqi:
5124 case Hexagon::M2_mpysin:
5125 case Hexagon::M2_mpysip: {
5126 // op: Ii
5127 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5128 Value |= (op & 0xff) << 5;
5129 // op: Rs32
5130 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5131 Value |= (op & 0x1f) << 16;
5132 // op: Rd32
5133 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5134 Value |= (op & 0x1f);
5135 break;
5136 }
5137 case Hexagon::A4_combineri: {
5138 // op: Ii
5139 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5140 Value |= (op & 0xff) << 5;
5141 // op: Rs32
5142 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5143 Value |= (op & 0x1f) << 16;
5144 // op: Rdd32
5145 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5146 Value |= (op & 0x1f);
5147 break;
5148 }
5149 case Hexagon::A4_vcmpbeqi:
5150 case Hexagon::A4_vcmpbgti:
5151 case Hexagon::A4_vcmpheqi:
5152 case Hexagon::A4_vcmphgti:
5153 case Hexagon::A4_vcmpweqi:
5154 case Hexagon::A4_vcmpwgti: {
5155 // op: Ii
5156 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5157 Value |= (op & 0xff) << 5;
5158 // op: Rss32
5159 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5160 Value |= (op & 0x1f) << 16;
5161 // op: Pd4
5162 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5163 Value |= (op & 0x3);
5164 break;
5165 }
5166 case Hexagon::V6_vrmpybusi:
5167 case Hexagon::V6_vrmpyubi:
5168 case Hexagon::V6_vrsadubi: {
5169 // op: Ii
5170 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5171 Value |= (op & 0x1) << 5;
5172 // op: Vuu32
5173 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5174 Value |= (op & 0x1f) << 8;
5175 // op: Rt32
5176 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5177 Value |= (op & 0x1f) << 16;
5178 // op: Vdd32
5179 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5180 Value |= (op & 0x1f);
5181 break;
5182 }
5183 case Hexagon::S2_pstorerhnewf_pi:
5184 case Hexagon::S2_pstorerhnewfnew_pi:
5185 case Hexagon::S2_pstorerhnewt_pi:
5186 case Hexagon::S2_pstorerhnewtnew_pi: {
5187 // op: Ii
5188 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5189 Value |= (op & 0x1e) << 2;
5190 // op: Pv4
5191 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5192 Value |= (op & 0x3);
5193 // op: Nt8
5194 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5195 Value |= (op & 0x7) << 8;
5196 // op: Rx32
5197 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5198 Value |= (op & 0x1f) << 16;
5199 break;
5200 }
5201 case Hexagon::S2_pstorerff_pi:
5202 case Hexagon::S2_pstorerffnew_pi:
5203 case Hexagon::S2_pstorerft_pi:
5204 case Hexagon::S2_pstorerftnew_pi:
5205 case Hexagon::S2_pstorerhf_pi:
5206 case Hexagon::S2_pstorerhf_pi_nt:
5207 case Hexagon::S2_pstorerhfnew_pi:
5208 case Hexagon::S2_pstorerht_pi:
5209 case Hexagon::S2_pstorerht_pi_nt:
5210 case Hexagon::S2_pstorerhtnew_pi: {
5211 // op: Ii
5212 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5213 Value |= (op & 0x1e) << 2;
5214 // op: Pv4
5215 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5216 Value |= (op & 0x3);
5217 // op: Rt32
5218 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5219 Value |= (op & 0x1f) << 8;
5220 // op: Rx32
5221 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5222 Value |= (op & 0x1f) << 16;
5223 break;
5224 }
5225 case Hexagon::L2_loadbsw2_pci:
5226 case Hexagon::L2_loadbzw2_pci:
5227 case Hexagon::L2_loadrh_pci:
5228 case Hexagon::L2_loadruh_pci: {
5229 // op: Ii
5230 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5231 Value |= (op & 0x1e) << 4;
5232 // op: Mu2
5233 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5234 Value |= (op & 0x1) << 13;
5235 // op: Rd32
5236 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5237 Value |= (op & 0x1f);
5238 // op: Rx32
5239 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5240 Value |= (op & 0x1f) << 16;
5241 break;
5242 }
5243 case Hexagon::L2_loadbsw2_pi:
5244 case Hexagon::L2_loadbzw2_pi:
5245 case Hexagon::L2_loadrh_pi:
5246 case Hexagon::L2_loadruh_pi: {
5247 // op: Ii
5248 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5249 Value |= (op & 0x1e) << 4;
5250 // op: Rd32
5251 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5252 Value |= (op & 0x1f);
5253 // op: Rx32
5254 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5255 Value |= (op & 0x1f) << 16;
5256 break;
5257 }
5258 case Hexagon::S2_insert: {
5259 // op: Ii
5260 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5261 Value |= (op & 0x1f) << 8;
5262 // op: II
5263 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5264 Value |= (op & 0x18) << 18;
5265 Value |= (op & 0x7) << 5;
5266 // op: Rs32
5267 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5268 Value |= (op & 0x1f) << 16;
5269 // op: Rx32
5270 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5271 Value |= (op & 0x1f);
5272 break;
5273 }
5274 case Hexagon::S2_asl_i_r_acc:
5275 case Hexagon::S2_asl_i_r_and:
5276 case Hexagon::S2_asl_i_r_nac:
5277 case Hexagon::S2_asl_i_r_or:
5278 case Hexagon::S2_asl_i_r_xacc:
5279 case Hexagon::S2_asr_i_r_acc:
5280 case Hexagon::S2_asr_i_r_and:
5281 case Hexagon::S2_asr_i_r_nac:
5282 case Hexagon::S2_asr_i_r_or:
5283 case Hexagon::S2_lsr_i_r_acc:
5284 case Hexagon::S2_lsr_i_r_and:
5285 case Hexagon::S2_lsr_i_r_nac:
5286 case Hexagon::S2_lsr_i_r_or:
5287 case Hexagon::S2_lsr_i_r_xacc:
5288 case Hexagon::S6_rol_i_r_acc:
5289 case Hexagon::S6_rol_i_r_and:
5290 case Hexagon::S6_rol_i_r_nac:
5291 case Hexagon::S6_rol_i_r_or:
5292 case Hexagon::S6_rol_i_r_xacc: {
5293 // op: Ii
5294 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5295 Value |= (op & 0x1f) << 8;
5296 // op: Rs32
5297 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5298 Value |= (op & 0x1f) << 16;
5299 // op: Rx32
5300 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5301 Value |= (op & 0x1f);
5302 break;
5303 }
5304 case Hexagon::L2_ploadrdf_io:
5305 case Hexagon::L2_ploadrdfnew_io:
5306 case Hexagon::L2_ploadrdt_io:
5307 case Hexagon::L2_ploadrdtnew_io: {
5308 // op: Ii
5309 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5310 Value |= (op & 0x1f8) << 2;
5311 // op: Pt4
5312 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5313 Value |= (op & 0x3) << 11;
5314 // op: Rs32
5315 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5316 Value |= (op & 0x1f) << 16;
5317 // op: Rdd32
5318 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5319 Value |= (op & 0x1f);
5320 break;
5321 }
5322 case Hexagon::S4_vrcrotate: {
5323 // op: Ii
5324 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5325 Value |= (op & 0x2) << 12;
5326 Value |= (op & 0x1) << 5;
5327 // op: Rss32
5328 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5329 Value |= (op & 0x1f) << 16;
5330 // op: Rt32
5331 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5332 Value |= (op & 0x1f) << 8;
5333 // op: Rdd32
5334 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5335 Value |= (op & 0x1f);
5336 break;
5337 }
5338 case Hexagon::L4_loadalignb_ur:
5339 case Hexagon::L4_loadalignh_ur: {
5340 // op: Ii
5341 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5342 Value |= (op & 0x2) << 12;
5343 Value |= (op & 0x1) << 7;
5344 // op: II
5345 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5346 Value |= (op & 0x3c) << 6;
5347 Value |= (op & 0x3) << 5;
5348 // op: Rt32
5349 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5350 Value |= (op & 0x1f) << 16;
5351 // op: Ryy32
5352 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5353 Value |= (op & 0x1f);
5354 break;
5355 }
5356 case Hexagon::S4_pstorerbnewf_rr:
5357 case Hexagon::S4_pstorerbnewfnew_rr:
5358 case Hexagon::S4_pstorerbnewt_rr:
5359 case Hexagon::S4_pstorerbnewtnew_rr:
5360 case Hexagon::S4_pstorerhnewf_rr:
5361 case Hexagon::S4_pstorerhnewfnew_rr:
5362 case Hexagon::S4_pstorerhnewt_rr:
5363 case Hexagon::S4_pstorerhnewtnew_rr:
5364 case Hexagon::S4_pstorerinewf_rr:
5365 case Hexagon::S4_pstorerinewfnew_rr:
5366 case Hexagon::S4_pstorerinewt_rr:
5367 case Hexagon::S4_pstorerinewtnew_rr: {
5368 // op: Ii
5369 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5370 Value |= (op & 0x2) << 12;
5371 Value |= (op & 0x1) << 7;
5372 // op: Pv4
5373 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5374 Value |= (op & 0x3) << 5;
5375 // op: Rs32
5376 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5377 Value |= (op & 0x1f) << 16;
5378 // op: Ru32
5379 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5380 Value |= (op & 0x1f) << 8;
5381 // op: Nt8
5382 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5383 Value |= (op & 0x7);
5384 break;
5385 }
5386 case Hexagon::S4_pstorerbf_rr:
5387 case Hexagon::S4_pstorerbfnew_rr:
5388 case Hexagon::S4_pstorerbt_rr:
5389 case Hexagon::S4_pstorerbtnew_rr:
5390 case Hexagon::S4_pstorerff_rr:
5391 case Hexagon::S4_pstorerffnew_rr:
5392 case Hexagon::S4_pstorerft_rr:
5393 case Hexagon::S4_pstorerftnew_rr:
5394 case Hexagon::S4_pstorerhf_rr:
5395 case Hexagon::S4_pstorerhfnew_rr:
5396 case Hexagon::S4_pstorerht_rr:
5397 case Hexagon::S4_pstorerhtnew_rr:
5398 case Hexagon::S4_pstorerif_rr:
5399 case Hexagon::S4_pstorerifnew_rr:
5400 case Hexagon::S4_pstorerit_rr:
5401 case Hexagon::S4_pstoreritnew_rr: {
5402 // op: Ii
5403 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5404 Value |= (op & 0x2) << 12;
5405 Value |= (op & 0x1) << 7;
5406 // op: Pv4
5407 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5408 Value |= (op & 0x3) << 5;
5409 // op: Rs32
5410 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5411 Value |= (op & 0x1f) << 16;
5412 // op: Ru32
5413 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5414 Value |= (op & 0x1f) << 8;
5415 // op: Rt32
5416 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5417 Value |= (op & 0x1f);
5418 break;
5419 }
5420 case Hexagon::S4_pstorerdf_rr:
5421 case Hexagon::S4_pstorerdfnew_rr:
5422 case Hexagon::S4_pstorerdt_rr:
5423 case Hexagon::S4_pstorerdtnew_rr: {
5424 // op: Ii
5425 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5426 Value |= (op & 0x2) << 12;
5427 Value |= (op & 0x1) << 7;
5428 // op: Pv4
5429 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5430 Value |= (op & 0x3) << 5;
5431 // op: Rs32
5432 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5433 Value |= (op & 0x1f) << 16;
5434 // op: Ru32
5435 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5436 Value |= (op & 0x1f) << 8;
5437 // op: Rtt32
5438 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5439 Value |= (op & 0x1f);
5440 break;
5441 }
5442 case Hexagon::L4_loadrb_rr:
5443 case Hexagon::L4_loadrh_rr:
5444 case Hexagon::L4_loadri_rr:
5445 case Hexagon::L4_loadrub_rr:
5446 case Hexagon::L4_loadruh_rr: {
5447 // op: Ii
5448 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5449 Value |= (op & 0x2) << 12;
5450 Value |= (op & 0x1) << 7;
5451 // op: Rs32
5452 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5453 Value |= (op & 0x1f) << 16;
5454 // op: Rt32
5455 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5456 Value |= (op & 0x1f) << 8;
5457 // op: Rd32
5458 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5459 Value |= (op & 0x1f);
5460 break;
5461 }
5462 case Hexagon::L4_loadrd_rr: {
5463 // op: Ii
5464 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5465 Value |= (op & 0x2) << 12;
5466 Value |= (op & 0x1) << 7;
5467 // op: Rs32
5468 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5469 Value |= (op & 0x1f) << 16;
5470 // op: Rt32
5471 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5472 Value |= (op & 0x1f) << 8;
5473 // op: Rdd32
5474 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5475 Value |= (op & 0x1f);
5476 break;
5477 }
5478 case Hexagon::S4_or_andi:
5479 case Hexagon::S4_or_ori: {
5480 // op: Ii
5481 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5482 Value |= (op & 0x200) << 12;
5483 Value |= (op & 0x1ff) << 5;
5484 // op: Rs32
5485 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5486 Value |= (op & 0x1f) << 16;
5487 // op: Rx32
5488 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5489 Value |= (op & 0x1f);
5490 break;
5491 }
5492 case Hexagon::S4_or_andix: {
5493 // op: Ii
5494 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5495 Value |= (op & 0x200) << 12;
5496 Value |= (op & 0x1ff) << 5;
5497 // op: Ru32
5498 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5499 Value |= (op & 0x1f);
5500 // op: Rx32
5501 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5502 Value |= (op & 0x1f) << 16;
5503 break;
5504 }
5505 case Hexagon::V6_v6mpyhubs10:
5506 case Hexagon::V6_v6mpyvubs10: {
5507 // op: Ii
5508 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5509 Value |= (op & 0x3) << 5;
5510 // op: Vuu32
5511 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5512 Value |= (op & 0x1f) << 8;
5513 // op: Vvv32
5514 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5515 Value |= (op & 0x1f) << 16;
5516 // op: Vdd32
5517 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5518 Value |= (op & 0x1f);
5519 break;
5520 }
5521 case Hexagon::S4_addaddi: {
5522 // op: Ii
5523 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5524 Value |= (op & 0x30) << 17;
5525 Value |= (op & 0x8) << 10;
5526 Value |= (op & 0x7) << 5;
5527 // op: Rs32
5528 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5529 Value |= (op & 0x1f) << 16;
5530 // op: Ru32
5531 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5532 Value |= (op & 0x1f);
5533 // op: Rd32
5534 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5535 Value |= (op & 0x1f) << 8;
5536 break;
5537 }
5538 case Hexagon::M4_mpyri_addr: {
5539 // op: Ii
5540 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5541 Value |= (op & 0x30) << 17;
5542 Value |= (op & 0x8) << 10;
5543 Value |= (op & 0x7) << 5;
5544 // op: Ru32
5545 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5546 Value |= (op & 0x1f);
5547 // op: Rs32
5548 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5549 Value |= (op & 0x1f) << 16;
5550 // op: Rd32
5551 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5552 Value |= (op & 0x1f) << 8;
5553 break;
5554 }
5555 case Hexagon::S2_pstorerinewf_pi:
5556 case Hexagon::S2_pstorerinewfnew_pi:
5557 case Hexagon::S2_pstorerinewt_pi:
5558 case Hexagon::S2_pstorerinewtnew_pi: {
5559 // op: Ii
5560 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5561 Value |= (op & 0x3c) << 1;
5562 // op: Pv4
5563 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5564 Value |= (op & 0x3);
5565 // op: Nt8
5566 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5567 Value |= (op & 0x7) << 8;
5568 // op: Rx32
5569 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5570 Value |= (op & 0x1f) << 16;
5571 break;
5572 }
5573 case Hexagon::S2_pstorerif_pi:
5574 case Hexagon::S2_pstorerif_pi_nt:
5575 case Hexagon::S2_pstorerifnew_pi:
5576 case Hexagon::S2_pstorerit_pi:
5577 case Hexagon::S2_pstorerit_pi_nt:
5578 case Hexagon::S2_pstoreritnew_pi: {
5579 // op: Ii
5580 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5581 Value |= (op & 0x3c) << 1;
5582 // op: Pv4
5583 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5584 Value |= (op & 0x3);
5585 // op: Rt32
5586 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5587 Value |= (op & 0x1f) << 8;
5588 // op: Rx32
5589 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5590 Value |= (op & 0x1f) << 16;
5591 break;
5592 }
5593 case Hexagon::L2_loadri_pci: {
5594 // op: Ii
5595 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5596 Value |= (op & 0x3c) << 3;
5597 // op: Mu2
5598 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5599 Value |= (op & 0x1) << 13;
5600 // op: Rd32
5601 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5602 Value |= (op & 0x1f);
5603 // op: Rx32
5604 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5605 Value |= (op & 0x1f) << 16;
5606 break;
5607 }
5608 case Hexagon::L2_loadbsw4_pci:
5609 case Hexagon::L2_loadbzw4_pci: {
5610 // op: Ii
5611 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5612 Value |= (op & 0x3c) << 3;
5613 // op: Mu2
5614 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5615 Value |= (op & 0x1) << 13;
5616 // op: Rdd32
5617 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5618 Value |= (op & 0x1f);
5619 // op: Rx32
5620 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5621 Value |= (op & 0x1f) << 16;
5622 break;
5623 }
5624 case Hexagon::L2_loadri_pi: {
5625 // op: Ii
5626 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5627 Value |= (op & 0x3c) << 3;
5628 // op: Rd32
5629 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5630 Value |= (op & 0x1f);
5631 // op: Rx32
5632 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5633 Value |= (op & 0x1f) << 16;
5634 break;
5635 }
5636 case Hexagon::L2_loadbsw4_pi:
5637 case Hexagon::L2_loadbzw4_pi: {
5638 // op: Ii
5639 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5640 Value |= (op & 0x3c) << 3;
5641 // op: Rdd32
5642 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5643 Value |= (op & 0x1f);
5644 // op: Rx32
5645 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5646 Value |= (op & 0x1f) << 16;
5647 break;
5648 }
5649 case Hexagon::L2_ploadrbf_io:
5650 case Hexagon::L2_ploadrbfnew_io:
5651 case Hexagon::L2_ploadrbt_io:
5652 case Hexagon::L2_ploadrbtnew_io:
5653 case Hexagon::L2_ploadrubf_io:
5654 case Hexagon::L2_ploadrubfnew_io:
5655 case Hexagon::L2_ploadrubt_io:
5656 case Hexagon::L2_ploadrubtnew_io: {
5657 // op: Ii
5658 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5659 Value |= (op & 0x3f) << 5;
5660 // op: Pt4
5661 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5662 Value |= (op & 0x3) << 11;
5663 // op: Rs32
5664 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5665 Value |= (op & 0x1f) << 16;
5666 // op: Rd32
5667 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5668 Value |= (op & 0x1f);
5669 break;
5670 }
5671 case Hexagon::S2_insertp: {
5672 // op: Ii
5673 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5674 Value |= (op & 0x3f) << 8;
5675 // op: II
5676 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5677 Value |= (op & 0x38) << 18;
5678 Value |= (op & 0x7) << 5;
5679 // op: Rss32
5680 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5681 Value |= (op & 0x1f) << 16;
5682 // op: Rxx32
5683 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5684 Value |= (op & 0x1f);
5685 break;
5686 }
5687 case Hexagon::S2_asl_i_p_acc:
5688 case Hexagon::S2_asl_i_p_and:
5689 case Hexagon::S2_asl_i_p_nac:
5690 case Hexagon::S2_asl_i_p_or:
5691 case Hexagon::S2_asl_i_p_xacc:
5692 case Hexagon::S2_asr_i_p_acc:
5693 case Hexagon::S2_asr_i_p_and:
5694 case Hexagon::S2_asr_i_p_nac:
5695 case Hexagon::S2_asr_i_p_or:
5696 case Hexagon::S2_lsr_i_p_acc:
5697 case Hexagon::S2_lsr_i_p_and:
5698 case Hexagon::S2_lsr_i_p_nac:
5699 case Hexagon::S2_lsr_i_p_or:
5700 case Hexagon::S2_lsr_i_p_xacc:
5701 case Hexagon::S6_rol_i_p_acc:
5702 case Hexagon::S6_rol_i_p_and:
5703 case Hexagon::S6_rol_i_p_nac:
5704 case Hexagon::S6_rol_i_p_or:
5705 case Hexagon::S6_rol_i_p_xacc: {
5706 // op: Ii
5707 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5708 Value |= (op & 0x3f) << 8;
5709 // op: Rss32
5710 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5711 Value |= (op & 0x1f) << 16;
5712 // op: Rxx32
5713 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5714 Value |= (op & 0x1f);
5715 break;
5716 }
5717 case Hexagon::L2_loadalignb_io: {
5718 // op: Ii
5719 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5720 Value |= (op & 0x600) << 16;
5721 Value |= (op & 0x1ff) << 5;
5722 // op: Rs32
5723 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5724 Value |= (op & 0x1f) << 16;
5725 // op: Ryy32
5726 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5727 Value |= (op & 0x1f);
5728 break;
5729 }
5730 case Hexagon::S2_vspliceib: {
5731 // op: Ii
5732 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5733 Value |= (op & 0x7) << 5;
5734 // op: Rss32
5735 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5736 Value |= (op & 0x1f) << 16;
5737 // op: Rtt32
5738 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5739 Value |= (op & 0x1f) << 8;
5740 // op: Rdd32
5741 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5742 Value |= (op & 0x1f);
5743 break;
5744 }
5745 case Hexagon::S2_addasl_rrri: {
5746 // op: Ii
5747 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5748 Value |= (op & 0x7) << 5;
5749 // op: Rt32
5750 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5751 Value |= (op & 0x1f) << 8;
5752 // op: Rs32
5753 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5754 Value |= (op & 0x1f) << 16;
5755 // op: Rd32
5756 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5757 Value |= (op & 0x1f);
5758 break;
5759 }
5760 case Hexagon::S2_valignib: {
5761 // op: Ii
5762 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5763 Value |= (op & 0x7) << 5;
5764 // op: Rtt32
5765 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5766 Value |= (op & 0x1f) << 8;
5767 // op: Rss32
5768 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5769 Value |= (op & 0x1f) << 16;
5770 // op: Rdd32
5771 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5772 Value |= (op & 0x1f);
5773 break;
5774 }
5775 case Hexagon::V6_valignbi:
5776 case Hexagon::V6_vlalignbi:
5777 case Hexagon::V6_vlutvvbi: {
5778 // op: Ii
5779 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5780 Value |= (op & 0x7) << 5;
5781 // op: Vu32
5782 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5783 Value |= (op & 0x1f) << 8;
5784 // op: Vv32
5785 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5786 Value |= (op & 0x1f) << 16;
5787 // op: Vd32
5788 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5789 Value |= (op & 0x1f);
5790 break;
5791 }
5792 case Hexagon::V6_vlutvwhi: {
5793 // op: Ii
5794 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5795 Value |= (op & 0x7) << 5;
5796 // op: Vu32
5797 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5798 Value |= (op & 0x1f) << 8;
5799 // op: Vv32
5800 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5801 Value |= (op & 0x1f) << 16;
5802 // op: Vdd32
5803 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5804 Value |= (op & 0x1f);
5805 break;
5806 }
5807 case Hexagon::V6_vS32b_new_npred_pi:
5808 case Hexagon::V6_vS32b_new_pred_pi:
5809 case Hexagon::V6_vS32b_nt_new_npred_pi:
5810 case Hexagon::V6_vS32b_nt_new_pred_pi: {
5811 // op: Ii
5812 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5813 Value |= (op & 0x7) << 8;
5814 // op: Pv4
5815 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5816 Value |= (op & 0x3) << 11;
5817 // op: Os8
5818 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5819 Value |= (op & 0x7);
5820 // op: Rx32
5821 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5822 Value |= (op & 0x1f) << 16;
5823 break;
5824 }
5825 case Hexagon::V6_zLd_pred_pi: {
5826 // op: Ii
5827 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5828 Value |= (op & 0x7) << 8;
5829 // op: Pv4
5830 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5831 Value |= (op & 0x3) << 11;
5832 // op: Rx32
5833 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5834 Value |= (op & 0x1f) << 16;
5835 break;
5836 }
5837 case Hexagon::V6_vS32Ub_npred_pi:
5838 case Hexagon::V6_vS32Ub_pred_pi:
5839 case Hexagon::V6_vS32b_npred_pi:
5840 case Hexagon::V6_vS32b_nt_npred_pi:
5841 case Hexagon::V6_vS32b_nt_pred_pi:
5842 case Hexagon::V6_vS32b_pred_pi: {
5843 // op: Ii
5844 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5845 Value |= (op & 0x7) << 8;
5846 // op: Pv4
5847 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5848 Value |= (op & 0x3) << 11;
5849 // op: Vs32
5850 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5851 Value |= (op & 0x1f);
5852 // op: Rx32
5853 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5854 Value |= (op & 0x1f) << 16;
5855 break;
5856 }
5857 case Hexagon::V6_vS32b_nqpred_pi:
5858 case Hexagon::V6_vS32b_nt_nqpred_pi:
5859 case Hexagon::V6_vS32b_nt_qpred_pi:
5860 case Hexagon::V6_vS32b_qpred_pi: {
5861 // op: Ii
5862 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5863 Value |= (op & 0x7) << 8;
5864 // op: Qv4
5865 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5866 Value |= (op & 0x3) << 11;
5867 // op: Vs32
5868 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5869 Value |= (op & 0x1f);
5870 // op: Rx32
5871 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5872 Value |= (op & 0x1f) << 16;
5873 break;
5874 }
5875 case Hexagon::V6_vL32Ub_pi:
5876 case Hexagon::V6_vL32b_cur_pi:
5877 case Hexagon::V6_vL32b_nt_cur_pi:
5878 case Hexagon::V6_vL32b_nt_pi:
5879 case Hexagon::V6_vL32b_nt_tmp_pi:
5880 case Hexagon::V6_vL32b_pi:
5881 case Hexagon::V6_vL32b_tmp_pi: {
5882 // op: Ii
5883 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5884 Value |= (op & 0x7) << 8;
5885 // op: Vd32
5886 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5887 Value |= (op & 0x1f);
5888 // op: Rx32
5889 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5890 Value |= (op & 0x1f) << 16;
5891 break;
5892 }
5893 case Hexagon::L2_loadrd_pci: {
5894 // op: Ii
5895 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5896 Value |= (op & 0x78) << 2;
5897 // op: Mu2
5898 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5899 Value |= (op & 0x1) << 13;
5900 // op: Rdd32
5901 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5902 Value |= (op & 0x1f);
5903 // op: Rx32
5904 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5905 Value |= (op & 0x1f) << 16;
5906 break;
5907 }
5908 case Hexagon::L2_loadrd_pi: {
5909 // op: Ii
5910 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5911 Value |= (op & 0x78) << 2;
5912 // op: Rdd32
5913 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5914 Value |= (op & 0x1f);
5915 // op: Rx32
5916 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5917 Value |= (op & 0x1f) << 16;
5918 break;
5919 }
5920 case Hexagon::S2_pstorerdf_pi:
5921 case Hexagon::S2_pstorerdf_pi_nt:
5922 case Hexagon::S2_pstorerdfnew_pi:
5923 case Hexagon::S2_pstorerdt_pi:
5924 case Hexagon::S2_pstorerdt_pi_nt:
5925 case Hexagon::S2_pstorerdtnew_pi: {
5926 // op: Ii
5927 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5928 Value |= (op & 0x78);
5929 // op: Pv4
5930 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5931 Value |= (op & 0x3);
5932 // op: Rtt32
5933 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5934 Value |= (op & 0x1f) << 8;
5935 // op: Rx32
5936 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5937 Value |= (op & 0x1f) << 16;
5938 break;
5939 }
5940 case Hexagon::L2_ploadrhf_io:
5941 case Hexagon::L2_ploadrhfnew_io:
5942 case Hexagon::L2_ploadrht_io:
5943 case Hexagon::L2_ploadrhtnew_io:
5944 case Hexagon::L2_ploadruhf_io:
5945 case Hexagon::L2_ploadruhfnew_io:
5946 case Hexagon::L2_ploadruht_io:
5947 case Hexagon::L2_ploadruhtnew_io: {
5948 // op: Ii
5949 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5950 Value |= (op & 0x7e) << 4;
5951 // op: Pt4
5952 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5953 Value |= (op & 0x3) << 11;
5954 // op: Rs32
5955 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5956 Value |= (op & 0x1f) << 16;
5957 // op: Rd32
5958 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5959 Value |= (op & 0x1f);
5960 break;
5961 }
5962 case Hexagon::V6_vL32b_cur_npred_ai:
5963 case Hexagon::V6_vL32b_cur_pred_ai:
5964 case Hexagon::V6_vL32b_npred_ai:
5965 case Hexagon::V6_vL32b_nt_cur_npred_ai:
5966 case Hexagon::V6_vL32b_nt_cur_pred_ai:
5967 case Hexagon::V6_vL32b_nt_npred_ai:
5968 case Hexagon::V6_vL32b_nt_pred_ai:
5969 case Hexagon::V6_vL32b_nt_tmp_npred_ai:
5970 case Hexagon::V6_vL32b_nt_tmp_pred_ai:
5971 case Hexagon::V6_vL32b_pred_ai:
5972 case Hexagon::V6_vL32b_tmp_npred_ai:
5973 case Hexagon::V6_vL32b_tmp_pred_ai: {
5974 // op: Ii
5975 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5976 Value |= (op & 0x8) << 10;
5977 Value |= (op & 0x7) << 8;
5978 // op: Pv4
5979 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
5980 Value |= (op & 0x3) << 11;
5981 // op: Rt32
5982 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
5983 Value |= (op & 0x1f) << 16;
5984 // op: Vd32
5985 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
5986 Value |= (op & 0x1f);
5987 break;
5988 }
5989 case Hexagon::S2_tableidxb:
5990 case Hexagon::S2_tableidxd:
5991 case Hexagon::S2_tableidxh:
5992 case Hexagon::S2_tableidxw: {
5993 // op: Ii
5994 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
5995 Value |= (op & 0x8) << 18;
5996 Value |= (op & 0x7) << 5;
5997 // op: II
5998 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
5999 Value |= (op & 0x3f) << 8;
6000 // op: Rs32
6001 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6002 Value |= (op & 0x1f) << 16;
6003 // op: Rx32
6004 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6005 Value |= (op & 0x1f);
6006 break;
6007 }
6008 case Hexagon::L2_loadalignh_io: {
6009 // op: Ii
6010 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6011 Value |= (op & 0xc00) << 15;
6012 Value |= (op & 0x3fe) << 4;
6013 // op: Rs32
6014 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6015 Value |= (op & 0x1f) << 16;
6016 // op: Ryy32
6017 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6018 Value |= (op & 0x1f);
6019 break;
6020 }
6021 case Hexagon::S2_pstorerbnewf_pi:
6022 case Hexagon::S2_pstorerbnewfnew_pi:
6023 case Hexagon::S2_pstorerbnewt_pi:
6024 case Hexagon::S2_pstorerbnewtnew_pi: {
6025 // op: Ii
6026 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6027 Value |= (op & 0xf) << 3;
6028 // op: Pv4
6029 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6030 Value |= (op & 0x3);
6031 // op: Nt8
6032 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6033 Value |= (op & 0x7) << 8;
6034 // op: Rx32
6035 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6036 Value |= (op & 0x1f) << 16;
6037 break;
6038 }
6039 case Hexagon::S2_pstorerbf_pi:
6040 case Hexagon::S2_pstorerbf_pi_nt:
6041 case Hexagon::S2_pstorerbfnew_pi:
6042 case Hexagon::S2_pstorerbt_pi:
6043 case Hexagon::S2_pstorerbt_pi_nt:
6044 case Hexagon::S2_pstorerbtnew_pi: {
6045 // op: Ii
6046 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6047 Value |= (op & 0xf) << 3;
6048 // op: Pv4
6049 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6050 Value |= (op & 0x3);
6051 // op: Rt32
6052 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6053 Value |= (op & 0x1f) << 8;
6054 // op: Rx32
6055 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6056 Value |= (op & 0x1f) << 16;
6057 break;
6058 }
6059 case Hexagon::L2_loadrb_pci:
6060 case Hexagon::L2_loadrub_pci: {
6061 // op: Ii
6062 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6063 Value |= (op & 0xf) << 5;
6064 // op: Mu2
6065 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6066 Value |= (op & 0x1) << 13;
6067 // op: Rd32
6068 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6069 Value |= (op & 0x1f);
6070 // op: Rx32
6071 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6072 Value |= (op & 0x1f) << 16;
6073 break;
6074 }
6075 case Hexagon::L2_loadrb_pi:
6076 case Hexagon::L2_loadrub_pi: {
6077 // op: Ii
6078 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6079 Value |= (op & 0xf) << 5;
6080 // op: Rd32
6081 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6082 Value |= (op & 0x1f);
6083 // op: Rx32
6084 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6085 Value |= (op & 0x1f) << 16;
6086 break;
6087 }
6088 case Hexagon::L2_ploadrif_io:
6089 case Hexagon::L2_ploadrifnew_io:
6090 case Hexagon::L2_ploadrit_io:
6091 case Hexagon::L2_ploadritnew_io: {
6092 // op: Ii
6093 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6094 Value |= (op & 0xfc) << 3;
6095 // op: Pt4
6096 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6097 Value |= (op & 0x3) << 11;
6098 // op: Rs32
6099 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6100 Value |= (op & 0x1f) << 16;
6101 // op: Rd32
6102 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6103 Value |= (op & 0x1f);
6104 break;
6105 }
6106 case Hexagon::A2_paddif:
6107 case Hexagon::A2_paddifnew:
6108 case Hexagon::A2_paddit:
6109 case Hexagon::A2_padditnew:
6110 case Hexagon::C2_muxir: {
6111 // op: Ii
6112 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6113 Value |= (op & 0xff) << 5;
6114 // op: Pu4
6115 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6116 Value |= (op & 0x3) << 21;
6117 // op: Rs32
6118 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6119 Value |= (op & 0x1f) << 16;
6120 // op: Rd32
6121 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6122 Value |= (op & 0x1f);
6123 break;
6124 }
6125 case Hexagon::M2_accii:
6126 case Hexagon::M2_macsin:
6127 case Hexagon::M2_macsip:
6128 case Hexagon::M2_naccii: {
6129 // op: Ii
6130 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6131 Value |= (op & 0xff) << 5;
6132 // op: Rs32
6133 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6134 Value |= (op & 0x1f) << 16;
6135 // op: Rx32
6136 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6137 Value |= (op & 0x1f);
6138 break;
6139 }
6140 case Hexagon::V6_vrmpybusi_acc:
6141 case Hexagon::V6_vrmpyubi_acc:
6142 case Hexagon::V6_vrsadubi_acc: {
6143 // op: Ii
6144 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6145 Value |= (op & 0x1) << 5;
6146 // op: Vuu32
6147 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6148 Value |= (op & 0x1f) << 8;
6149 // op: Rt32
6150 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6151 Value |= (op & 0x1f) << 16;
6152 // op: Vxx32
6153 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6154 Value |= (op & 0x1f);
6155 break;
6156 }
6157 case Hexagon::L2_loadalignh_pci: {
6158 // op: Ii
6159 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6160 Value |= (op & 0x1e) << 4;
6161 // op: Mu2
6162 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
6163 Value |= (op & 0x1) << 13;
6164 // op: Ryy32
6165 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6166 Value |= (op & 0x1f);
6167 // op: Rx32
6168 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6169 Value |= (op & 0x1f) << 16;
6170 break;
6171 }
6172 case Hexagon::L2_ploadrhf_pi:
6173 case Hexagon::L2_ploadrhfnew_pi:
6174 case Hexagon::L2_ploadrht_pi:
6175 case Hexagon::L2_ploadrhtnew_pi:
6176 case Hexagon::L2_ploadruhf_pi:
6177 case Hexagon::L2_ploadruhfnew_pi:
6178 case Hexagon::L2_ploadruht_pi:
6179 case Hexagon::L2_ploadruhtnew_pi: {
6180 // op: Ii
6181 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6182 Value |= (op & 0x1e) << 4;
6183 // op: Pt4
6184 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6185 Value |= (op & 0x3) << 9;
6186 // op: Rd32
6187 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6188 Value |= (op & 0x1f);
6189 // op: Rx32
6190 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6191 Value |= (op & 0x1f) << 16;
6192 break;
6193 }
6194 case Hexagon::L2_loadalignh_pi: {
6195 // op: Ii
6196 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6197 Value |= (op & 0x1e) << 4;
6198 // op: Ryy32
6199 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6200 Value |= (op & 0x1f);
6201 // op: Rx32
6202 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6203 Value |= (op & 0x1f) << 16;
6204 break;
6205 }
6206 case Hexagon::S4_vrcrotate_acc: {
6207 // op: Ii
6208 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6209 Value |= (op & 0x2) << 12;
6210 Value |= (op & 0x1) << 5;
6211 // op: Rss32
6212 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6213 Value |= (op & 0x1f) << 16;
6214 // op: Rt32
6215 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6216 Value |= (op & 0x1f) << 8;
6217 // op: Rxx32
6218 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6219 Value |= (op & 0x1f);
6220 break;
6221 }
6222 case Hexagon::L4_ploadrbf_rr:
6223 case Hexagon::L4_ploadrbfnew_rr:
6224 case Hexagon::L4_ploadrbt_rr:
6225 case Hexagon::L4_ploadrbtnew_rr:
6226 case Hexagon::L4_ploadrhf_rr:
6227 case Hexagon::L4_ploadrhfnew_rr:
6228 case Hexagon::L4_ploadrht_rr:
6229 case Hexagon::L4_ploadrhtnew_rr:
6230 case Hexagon::L4_ploadrif_rr:
6231 case Hexagon::L4_ploadrifnew_rr:
6232 case Hexagon::L4_ploadrit_rr:
6233 case Hexagon::L4_ploadritnew_rr:
6234 case Hexagon::L4_ploadrubf_rr:
6235 case Hexagon::L4_ploadrubfnew_rr:
6236 case Hexagon::L4_ploadrubt_rr:
6237 case Hexagon::L4_ploadrubtnew_rr:
6238 case Hexagon::L4_ploadruhf_rr:
6239 case Hexagon::L4_ploadruhfnew_rr:
6240 case Hexagon::L4_ploadruht_rr:
6241 case Hexagon::L4_ploadruhtnew_rr: {
6242 // op: Ii
6243 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6244 Value |= (op & 0x2) << 12;
6245 Value |= (op & 0x1) << 7;
6246 // op: Pv4
6247 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6248 Value |= (op & 0x3) << 5;
6249 // op: Rs32
6250 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6251 Value |= (op & 0x1f) << 16;
6252 // op: Rt32
6253 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6254 Value |= (op & 0x1f) << 8;
6255 // op: Rd32
6256 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6257 Value |= (op & 0x1f);
6258 break;
6259 }
6260 case Hexagon::L4_ploadrdf_rr:
6261 case Hexagon::L4_ploadrdfnew_rr:
6262 case Hexagon::L4_ploadrdt_rr:
6263 case Hexagon::L4_ploadrdtnew_rr: {
6264 // op: Ii
6265 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6266 Value |= (op & 0x2) << 12;
6267 Value |= (op & 0x1) << 7;
6268 // op: Pv4
6269 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6270 Value |= (op & 0x3) << 5;
6271 // op: Rs32
6272 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6273 Value |= (op & 0x1f) << 16;
6274 // op: Rt32
6275 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6276 Value |= (op & 0x1f) << 8;
6277 // op: Rdd32
6278 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6279 Value |= (op & 0x1f);
6280 break;
6281 }
6282 case Hexagon::V6_v6mpyhubs10_vxx:
6283 case Hexagon::V6_v6mpyvubs10_vxx: {
6284 // op: Ii
6285 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6286 Value |= (op & 0x3) << 5;
6287 // op: Vuu32
6288 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6289 Value |= (op & 0x1f) << 8;
6290 // op: Vvv32
6291 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6292 Value |= (op & 0x1f) << 16;
6293 // op: Vxx32
6294 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6295 Value |= (op & 0x1f);
6296 break;
6297 }
6298 case Hexagon::L2_ploadrif_pi:
6299 case Hexagon::L2_ploadrifnew_pi:
6300 case Hexagon::L2_ploadrit_pi:
6301 case Hexagon::L2_ploadritnew_pi: {
6302 // op: Ii
6303 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6304 Value |= (op & 0x3c) << 3;
6305 // op: Pt4
6306 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6307 Value |= (op & 0x3) << 9;
6308 // op: Rd32
6309 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6310 Value |= (op & 0x1f);
6311 // op: Rx32
6312 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6313 Value |= (op & 0x1f) << 16;
6314 break;
6315 }
6316 case Hexagon::V6_vlutvvb_oracci: {
6317 // op: Ii
6318 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6319 Value |= (op & 0x7) << 5;
6320 // op: Vu32
6321 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6322 Value |= (op & 0x1f) << 8;
6323 // op: Vv32
6324 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6325 Value |= (op & 0x1f) << 16;
6326 // op: Vx32
6327 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6328 Value |= (op & 0x1f);
6329 break;
6330 }
6331 case Hexagon::V6_vlutvwh_oracci: {
6332 // op: Ii
6333 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6334 Value |= (op & 0x7) << 5;
6335 // op: Vu32
6336 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6337 Value |= (op & 0x1f) << 8;
6338 // op: Vv32
6339 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6340 Value |= (op & 0x1f) << 16;
6341 // op: Vxx32
6342 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6343 Value |= (op & 0x1f);
6344 break;
6345 }
6346 case Hexagon::V6_vL32b_cur_npred_pi:
6347 case Hexagon::V6_vL32b_cur_pred_pi:
6348 case Hexagon::V6_vL32b_npred_pi:
6349 case Hexagon::V6_vL32b_nt_cur_npred_pi:
6350 case Hexagon::V6_vL32b_nt_cur_pred_pi:
6351 case Hexagon::V6_vL32b_nt_npred_pi:
6352 case Hexagon::V6_vL32b_nt_pred_pi:
6353 case Hexagon::V6_vL32b_nt_tmp_npred_pi:
6354 case Hexagon::V6_vL32b_nt_tmp_pred_pi:
6355 case Hexagon::V6_vL32b_pred_pi:
6356 case Hexagon::V6_vL32b_tmp_npred_pi:
6357 case Hexagon::V6_vL32b_tmp_pred_pi: {
6358 // op: Ii
6359 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6360 Value |= (op & 0x7) << 8;
6361 // op: Pv4
6362 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6363 Value |= (op & 0x3) << 11;
6364 // op: Vd32
6365 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6366 Value |= (op & 0x1f);
6367 // op: Rx32
6368 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6369 Value |= (op & 0x1f) << 16;
6370 break;
6371 }
6372 case Hexagon::L2_ploadrdf_pi:
6373 case Hexagon::L2_ploadrdfnew_pi:
6374 case Hexagon::L2_ploadrdt_pi:
6375 case Hexagon::L2_ploadrdtnew_pi: {
6376 // op: Ii
6377 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6378 Value |= (op & 0x78) << 2;
6379 // op: Pt4
6380 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6381 Value |= (op & 0x3) << 9;
6382 // op: Rdd32
6383 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6384 Value |= (op & 0x1f);
6385 // op: Rx32
6386 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6387 Value |= (op & 0x1f) << 16;
6388 break;
6389 }
6390 case Hexagon::L2_loadalignb_pci: {
6391 // op: Ii
6392 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6393 Value |= (op & 0xf) << 5;
6394 // op: Mu2
6395 op = getMachineOpValue(MI, MO: MI.getOperand(i: 5), Fixups, STI);
6396 Value |= (op & 0x1) << 13;
6397 // op: Ryy32
6398 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6399 Value |= (op & 0x1f);
6400 // op: Rx32
6401 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6402 Value |= (op & 0x1f) << 16;
6403 break;
6404 }
6405 case Hexagon::L2_ploadrbf_pi:
6406 case Hexagon::L2_ploadrbfnew_pi:
6407 case Hexagon::L2_ploadrbt_pi:
6408 case Hexagon::L2_ploadrbtnew_pi:
6409 case Hexagon::L2_ploadrubf_pi:
6410 case Hexagon::L2_ploadrubfnew_pi:
6411 case Hexagon::L2_ploadrubt_pi:
6412 case Hexagon::L2_ploadrubtnew_pi: {
6413 // op: Ii
6414 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6415 Value |= (op & 0xf) << 5;
6416 // op: Pt4
6417 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6418 Value |= (op & 0x3) << 9;
6419 // op: Rd32
6420 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6421 Value |= (op & 0x1f);
6422 // op: Rx32
6423 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6424 Value |= (op & 0x1f) << 16;
6425 break;
6426 }
6427 case Hexagon::L2_loadalignb_pi: {
6428 // op: Ii
6429 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6430 Value |= (op & 0xf) << 5;
6431 // op: Ryy32
6432 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6433 Value |= (op & 0x1f);
6434 // op: Rx32
6435 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6436 Value |= (op & 0x1f) << 16;
6437 break;
6438 }
6439 case Hexagon::S2_storerbnew_pbr:
6440 case Hexagon::S2_storerbnew_pcr:
6441 case Hexagon::S2_storerbnew_pr:
6442 case Hexagon::S2_storerhnew_pbr:
6443 case Hexagon::S2_storerhnew_pcr:
6444 case Hexagon::S2_storerhnew_pr:
6445 case Hexagon::S2_storerinew_pbr:
6446 case Hexagon::S2_storerinew_pcr:
6447 case Hexagon::S2_storerinew_pr: {
6448 // op: Mu2
6449 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6450 Value |= (op & 0x1) << 13;
6451 // op: Nt8
6452 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6453 Value |= (op & 0x7) << 8;
6454 // op: Rx32
6455 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6456 Value |= (op & 0x1f) << 16;
6457 break;
6458 }
6459 case Hexagon::V6_vS32b_new_ppu:
6460 case Hexagon::V6_vS32b_nt_new_ppu: {
6461 // op: Mu2
6462 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6463 Value |= (op & 0x1) << 13;
6464 // op: Os8
6465 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6466 Value |= (op & 0x7);
6467 // op: Rx32
6468 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6469 Value |= (op & 0x1f) << 16;
6470 break;
6471 }
6472 case Hexagon::S2_storerb_pbr:
6473 case Hexagon::S2_storerb_pcr:
6474 case Hexagon::S2_storerb_pr:
6475 case Hexagon::S2_storerf_pbr:
6476 case Hexagon::S2_storerf_pcr:
6477 case Hexagon::S2_storerf_pr:
6478 case Hexagon::S2_storerh_pbr:
6479 case Hexagon::S2_storerh_pcr:
6480 case Hexagon::S2_storerh_pr:
6481 case Hexagon::S2_storeri_pbr:
6482 case Hexagon::S2_storeri_pcr:
6483 case Hexagon::S2_storeri_pr: {
6484 // op: Mu2
6485 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6486 Value |= (op & 0x1) << 13;
6487 // op: Rt32
6488 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6489 Value |= (op & 0x1f) << 8;
6490 // op: Rx32
6491 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6492 Value |= (op & 0x1f) << 16;
6493 break;
6494 }
6495 case Hexagon::S2_storerd_pbr:
6496 case Hexagon::S2_storerd_pcr:
6497 case Hexagon::S2_storerd_pr: {
6498 // op: Mu2
6499 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6500 Value |= (op & 0x1) << 13;
6501 // op: Rtt32
6502 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6503 Value |= (op & 0x1f) << 8;
6504 // op: Rx32
6505 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6506 Value |= (op & 0x1f) << 16;
6507 break;
6508 }
6509 case Hexagon::V6_vS32b_srls_ppu:
6510 case Hexagon::V6_zLd_ppu: {
6511 // op: Mu2
6512 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6513 Value |= (op & 0x1) << 13;
6514 // op: Rx32
6515 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6516 Value |= (op & 0x1f) << 16;
6517 break;
6518 }
6519 case Hexagon::V6_vS32Ub_ppu:
6520 case Hexagon::V6_vS32b_nt_ppu:
6521 case Hexagon::V6_vS32b_ppu: {
6522 // op: Mu2
6523 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6524 Value |= (op & 0x1) << 13;
6525 // op: Vs32
6526 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6527 Value |= (op & 0x1f);
6528 // op: Rx32
6529 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6530 Value |= (op & 0x1f) << 16;
6531 break;
6532 }
6533 case Hexagon::L2_loadbsw2_pbr:
6534 case Hexagon::L2_loadbsw2_pcr:
6535 case Hexagon::L2_loadbsw2_pr:
6536 case Hexagon::L2_loadbzw2_pbr:
6537 case Hexagon::L2_loadbzw2_pcr:
6538 case Hexagon::L2_loadbzw2_pr:
6539 case Hexagon::L2_loadrb_pbr:
6540 case Hexagon::L2_loadrb_pcr:
6541 case Hexagon::L2_loadrb_pr:
6542 case Hexagon::L2_loadrh_pbr:
6543 case Hexagon::L2_loadrh_pcr:
6544 case Hexagon::L2_loadrh_pr:
6545 case Hexagon::L2_loadri_pbr:
6546 case Hexagon::L2_loadri_pcr:
6547 case Hexagon::L2_loadri_pr:
6548 case Hexagon::L2_loadrub_pbr:
6549 case Hexagon::L2_loadrub_pcr:
6550 case Hexagon::L2_loadrub_pr:
6551 case Hexagon::L2_loadruh_pbr:
6552 case Hexagon::L2_loadruh_pcr:
6553 case Hexagon::L2_loadruh_pr: {
6554 // op: Mu2
6555 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6556 Value |= (op & 0x1) << 13;
6557 // op: Rd32
6558 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6559 Value |= (op & 0x1f);
6560 // op: Rx32
6561 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6562 Value |= (op & 0x1f) << 16;
6563 break;
6564 }
6565 case Hexagon::L2_loadbsw4_pbr:
6566 case Hexagon::L2_loadbsw4_pcr:
6567 case Hexagon::L2_loadbsw4_pr:
6568 case Hexagon::L2_loadbzw4_pbr:
6569 case Hexagon::L2_loadbzw4_pcr:
6570 case Hexagon::L2_loadbzw4_pr:
6571 case Hexagon::L2_loadrd_pbr:
6572 case Hexagon::L2_loadrd_pcr:
6573 case Hexagon::L2_loadrd_pr: {
6574 // op: Mu2
6575 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6576 Value |= (op & 0x1) << 13;
6577 // op: Rdd32
6578 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6579 Value |= (op & 0x1f);
6580 // op: Rx32
6581 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6582 Value |= (op & 0x1f) << 16;
6583 break;
6584 }
6585 case Hexagon::V6_vL32Ub_ppu:
6586 case Hexagon::V6_vL32b_cur_ppu:
6587 case Hexagon::V6_vL32b_nt_cur_ppu:
6588 case Hexagon::V6_vL32b_nt_ppu:
6589 case Hexagon::V6_vL32b_nt_tmp_ppu:
6590 case Hexagon::V6_vL32b_ppu:
6591 case Hexagon::V6_vL32b_tmp_ppu: {
6592 // op: Mu2
6593 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6594 Value |= (op & 0x1) << 13;
6595 // op: Vd32
6596 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6597 Value |= (op & 0x1f);
6598 // op: Rx32
6599 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6600 Value |= (op & 0x1f) << 16;
6601 break;
6602 }
6603 case Hexagon::L2_loadalignb_pbr:
6604 case Hexagon::L2_loadalignb_pcr:
6605 case Hexagon::L2_loadalignb_pr:
6606 case Hexagon::L2_loadalignh_pbr:
6607 case Hexagon::L2_loadalignh_pcr:
6608 case Hexagon::L2_loadalignh_pr: {
6609 // op: Mu2
6610 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6611 Value |= (op & 0x1) << 13;
6612 // op: Ryy32
6613 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6614 Value |= (op & 0x1f);
6615 // op: Rx32
6616 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6617 Value |= (op & 0x1f) << 16;
6618 break;
6619 }
6620 case Hexagon::C2_all8:
6621 case Hexagon::C2_any8:
6622 case Hexagon::C2_not: {
6623 // op: Ps4
6624 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6625 Value |= (op & 0x3) << 16;
6626 // op: Pd4
6627 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6628 Value |= (op & 0x3);
6629 break;
6630 }
6631 case Hexagon::C2_xor:
6632 case Hexagon::C4_fastcorner9:
6633 case Hexagon::C4_fastcorner9_not: {
6634 // op: Ps4
6635 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6636 Value |= (op & 0x3) << 16;
6637 // op: Pt4
6638 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6639 Value |= (op & 0x3) << 8;
6640 // op: Pd4
6641 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6642 Value |= (op & 0x3);
6643 break;
6644 }
6645 case Hexagon::C4_and_and:
6646 case Hexagon::C4_and_andn:
6647 case Hexagon::C4_and_or:
6648 case Hexagon::C4_and_orn:
6649 case Hexagon::C4_or_and:
6650 case Hexagon::C4_or_andn:
6651 case Hexagon::C4_or_or:
6652 case Hexagon::C4_or_orn: {
6653 // op: Ps4
6654 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6655 Value |= (op & 0x3) << 16;
6656 // op: Pt4
6657 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6658 Value |= (op & 0x3) << 8;
6659 // op: Pu4
6660 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6661 Value |= (op & 0x3) << 6;
6662 // op: Pd4
6663 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6664 Value |= (op & 0x3);
6665 break;
6666 }
6667 case Hexagon::C2_vitpack: {
6668 // op: Ps4
6669 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6670 Value |= (op & 0x3) << 16;
6671 // op: Pt4
6672 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6673 Value |= (op & 0x3) << 8;
6674 // op: Rd32
6675 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6676 Value |= (op & 0x1f);
6677 break;
6678 }
6679 case Hexagon::C2_tfrpr: {
6680 // op: Ps4
6681 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6682 Value |= (op & 0x3) << 16;
6683 // op: Rd32
6684 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6685 Value |= (op & 0x1f);
6686 break;
6687 }
6688 case Hexagon::V6_vcmov:
6689 case Hexagon::V6_vncmov: {
6690 // op: Ps4
6691 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6692 Value |= (op & 0x3) << 5;
6693 // op: Vu32
6694 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6695 Value |= (op & 0x1f) << 8;
6696 // op: Vd32
6697 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6698 Value |= (op & 0x1f);
6699 break;
6700 }
6701 case Hexagon::V6_vccombine:
6702 case Hexagon::V6_vnccombine: {
6703 // op: Ps4
6704 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6705 Value |= (op & 0x3) << 5;
6706 // op: Vu32
6707 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6708 Value |= (op & 0x1f) << 8;
6709 // op: Vv32
6710 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6711 Value |= (op & 0x1f) << 16;
6712 // op: Vdd32
6713 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6714 Value |= (op & 0x1f);
6715 break;
6716 }
6717 case Hexagon::Y2_setimask:
6718 case Hexagon::Y2_setprio: {
6719 // op: Pt4
6720 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6721 Value |= (op & 0x3) << 8;
6722 // op: Rs32
6723 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6724 Value |= (op & 0x1f) << 16;
6725 break;
6726 }
6727 case Hexagon::C2_and:
6728 case Hexagon::C2_andn:
6729 case Hexagon::C2_or:
6730 case Hexagon::C2_orn: {
6731 // op: Pt4
6732 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6733 Value |= (op & 0x3) << 8;
6734 // op: Ps4
6735 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6736 Value |= (op & 0x3) << 16;
6737 // op: Pd4
6738 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6739 Value |= (op & 0x3);
6740 break;
6741 }
6742 case Hexagon::C2_mask: {
6743 // op: Pt4
6744 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6745 Value |= (op & 0x3) << 8;
6746 // op: Rdd32
6747 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6748 Value |= (op & 0x1f);
6749 break;
6750 }
6751 case Hexagon::J2_callrf:
6752 case Hexagon::J2_callrt:
6753 case Hexagon::J2_jumprf:
6754 case Hexagon::J2_jumprfnew:
6755 case Hexagon::J2_jumprfnewpt:
6756 case Hexagon::J2_jumprfpt:
6757 case Hexagon::J2_jumprt:
6758 case Hexagon::J2_jumprtnew:
6759 case Hexagon::J2_jumprtnewpt:
6760 case Hexagon::J2_jumprtpt: {
6761 // op: Pu4
6762 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6763 Value |= (op & 0x3) << 8;
6764 // op: Rs32
6765 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6766 Value |= (op & 0x1f) << 16;
6767 break;
6768 }
6769 case Hexagon::A2_paddf:
6770 case Hexagon::A2_paddfnew:
6771 case Hexagon::A2_paddt:
6772 case Hexagon::A2_paddtnew:
6773 case Hexagon::A2_pandf:
6774 case Hexagon::A2_pandfnew:
6775 case Hexagon::A2_pandt:
6776 case Hexagon::A2_pandtnew:
6777 case Hexagon::A2_porf:
6778 case Hexagon::A2_porfnew:
6779 case Hexagon::A2_port:
6780 case Hexagon::A2_portnew:
6781 case Hexagon::A2_pxorf:
6782 case Hexagon::A2_pxorfnew:
6783 case Hexagon::A2_pxort:
6784 case Hexagon::A2_pxortnew:
6785 case Hexagon::C2_mux: {
6786 // op: Pu4
6787 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6788 Value |= (op & 0x3) << 5;
6789 // op: Rs32
6790 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6791 Value |= (op & 0x1f) << 16;
6792 // op: Rt32
6793 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6794 Value |= (op & 0x1f) << 8;
6795 // op: Rd32
6796 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6797 Value |= (op & 0x1f);
6798 break;
6799 }
6800 case Hexagon::C2_ccombinewf:
6801 case Hexagon::C2_ccombinewnewf:
6802 case Hexagon::C2_ccombinewnewt:
6803 case Hexagon::C2_ccombinewt: {
6804 // op: Pu4
6805 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6806 Value |= (op & 0x3) << 5;
6807 // op: Rs32
6808 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6809 Value |= (op & 0x1f) << 16;
6810 // op: Rt32
6811 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6812 Value |= (op & 0x1f) << 8;
6813 // op: Rdd32
6814 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6815 Value |= (op & 0x1f);
6816 break;
6817 }
6818 case Hexagon::C2_vmux: {
6819 // op: Pu4
6820 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6821 Value |= (op & 0x3) << 5;
6822 // op: Rss32
6823 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6824 Value |= (op & 0x1f) << 16;
6825 // op: Rtt32
6826 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6827 Value |= (op & 0x1f) << 8;
6828 // op: Rdd32
6829 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6830 Value |= (op & 0x1f);
6831 break;
6832 }
6833 case Hexagon::A2_psubf:
6834 case Hexagon::A2_psubfnew:
6835 case Hexagon::A2_psubt:
6836 case Hexagon::A2_psubtnew: {
6837 // op: Pu4
6838 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6839 Value |= (op & 0x3) << 5;
6840 // op: Rt32
6841 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6842 Value |= (op & 0x1f) << 8;
6843 // op: Rs32
6844 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6845 Value |= (op & 0x1f) << 16;
6846 // op: Rd32
6847 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6848 Value |= (op & 0x1f);
6849 break;
6850 }
6851 case Hexagon::A4_paslhf:
6852 case Hexagon::A4_paslhfnew:
6853 case Hexagon::A4_paslht:
6854 case Hexagon::A4_paslhtnew:
6855 case Hexagon::A4_pasrhf:
6856 case Hexagon::A4_pasrhfnew:
6857 case Hexagon::A4_pasrht:
6858 case Hexagon::A4_pasrhtnew:
6859 case Hexagon::A4_psxtbf:
6860 case Hexagon::A4_psxtbfnew:
6861 case Hexagon::A4_psxtbt:
6862 case Hexagon::A4_psxtbtnew:
6863 case Hexagon::A4_psxthf:
6864 case Hexagon::A4_psxthfnew:
6865 case Hexagon::A4_psxtht:
6866 case Hexagon::A4_psxthtnew:
6867 case Hexagon::A4_pzxtbf:
6868 case Hexagon::A4_pzxtbfnew:
6869 case Hexagon::A4_pzxtbt:
6870 case Hexagon::A4_pzxtbtnew:
6871 case Hexagon::A4_pzxthf:
6872 case Hexagon::A4_pzxthfnew:
6873 case Hexagon::A4_pzxtht:
6874 case Hexagon::A4_pzxthtnew: {
6875 // op: Pu4
6876 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6877 Value |= (op & 0x3) << 8;
6878 // op: Rs32
6879 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6880 Value |= (op & 0x1f) << 16;
6881 // op: Rd32
6882 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6883 Value |= (op & 0x1f);
6884 break;
6885 }
6886 case Hexagon::V6_vS32b_new_npred_ppu:
6887 case Hexagon::V6_vS32b_new_pred_ppu:
6888 case Hexagon::V6_vS32b_nt_new_npred_ppu:
6889 case Hexagon::V6_vS32b_nt_new_pred_ppu: {
6890 // op: Pv4
6891 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6892 Value |= (op & 0x3) << 11;
6893 // op: Mu2
6894 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6895 Value |= (op & 0x1) << 13;
6896 // op: Os8
6897 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6898 Value |= (op & 0x7);
6899 // op: Rx32
6900 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6901 Value |= (op & 0x1f) << 16;
6902 break;
6903 }
6904 case Hexagon::V6_zLd_pred_ppu: {
6905 // op: Pv4
6906 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6907 Value |= (op & 0x3) << 11;
6908 // op: Mu2
6909 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6910 Value |= (op & 0x1) << 13;
6911 // op: Rx32
6912 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6913 Value |= (op & 0x1f) << 16;
6914 break;
6915 }
6916 case Hexagon::V6_vS32Ub_npred_ppu:
6917 case Hexagon::V6_vS32Ub_pred_ppu:
6918 case Hexagon::V6_vS32b_npred_ppu:
6919 case Hexagon::V6_vS32b_nt_npred_ppu:
6920 case Hexagon::V6_vS32b_nt_pred_ppu:
6921 case Hexagon::V6_vS32b_pred_ppu: {
6922 // op: Pv4
6923 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6924 Value |= (op & 0x3) << 11;
6925 // op: Mu2
6926 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6927 Value |= (op & 0x1) << 13;
6928 // op: Vs32
6929 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6930 Value |= (op & 0x1f);
6931 // op: Rx32
6932 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6933 Value |= (op & 0x1f) << 16;
6934 break;
6935 }
6936 case Hexagon::L4_return_f:
6937 case Hexagon::L4_return_fnew_pnt:
6938 case Hexagon::L4_return_fnew_pt:
6939 case Hexagon::L4_return_t:
6940 case Hexagon::L4_return_tnew_pnt:
6941 case Hexagon::L4_return_tnew_pt: {
6942 // op: Pv4
6943 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6944 Value |= (op & 0x3) << 8;
6945 // op: Rs32
6946 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6947 Value |= (op & 0x1f) << 16;
6948 // op: Rdd32
6949 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6950 Value |= (op & 0x1f);
6951 break;
6952 }
6953 case Hexagon::V6_vL32b_cur_npred_ppu:
6954 case Hexagon::V6_vL32b_cur_pred_ppu:
6955 case Hexagon::V6_vL32b_npred_ppu:
6956 case Hexagon::V6_vL32b_nt_cur_npred_ppu:
6957 case Hexagon::V6_vL32b_nt_cur_pred_ppu:
6958 case Hexagon::V6_vL32b_nt_npred_ppu:
6959 case Hexagon::V6_vL32b_nt_pred_ppu:
6960 case Hexagon::V6_vL32b_nt_tmp_npred_ppu:
6961 case Hexagon::V6_vL32b_nt_tmp_pred_ppu:
6962 case Hexagon::V6_vL32b_pred_ppu:
6963 case Hexagon::V6_vL32b_tmp_npred_ppu:
6964 case Hexagon::V6_vL32b_tmp_pred_ppu: {
6965 // op: Pv4
6966 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6967 Value |= (op & 0x3) << 11;
6968 // op: Mu2
6969 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6970 Value |= (op & 0x1) << 13;
6971 // op: Vd32
6972 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6973 Value |= (op & 0x1f);
6974 // op: Rx32
6975 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6976 Value |= (op & 0x1f) << 16;
6977 break;
6978 }
6979 case Hexagon::V6_vscattermhq:
6980 case Hexagon::V6_vscattermwq: {
6981 // op: Qs4
6982 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
6983 Value |= (op & 0x3) << 5;
6984 // op: Rt32
6985 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
6986 Value |= (op & 0x1f) << 16;
6987 // op: Mu2
6988 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
6989 Value |= (op & 0x1) << 13;
6990 // op: Vv32
6991 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
6992 Value |= (op & 0x1f) << 8;
6993 // op: Vw32
6994 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
6995 Value |= (op & 0x1f);
6996 break;
6997 }
6998 case Hexagon::V6_vgathermhq:
6999 case Hexagon::V6_vgathermwq: {
7000 // op: Qs4
7001 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7002 Value |= (op & 0x3) << 5;
7003 // op: Rt32
7004 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7005 Value |= (op & 0x1f) << 16;
7006 // op: Mu2
7007 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7008 Value |= (op & 0x1) << 13;
7009 // op: Vv32
7010 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7011 Value |= (op & 0x1f);
7012 break;
7013 }
7014 case Hexagon::V6_vscattermhwq: {
7015 // op: Qs4
7016 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7017 Value |= (op & 0x3) << 5;
7018 // op: Rt32
7019 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7020 Value |= (op & 0x1f) << 16;
7021 // op: Mu2
7022 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7023 Value |= (op & 0x1) << 13;
7024 // op: Vvv32
7025 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7026 Value |= (op & 0x1f) << 8;
7027 // op: Vw32
7028 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
7029 Value |= (op & 0x1f);
7030 break;
7031 }
7032 case Hexagon::V6_vgathermhwq: {
7033 // op: Qs4
7034 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7035 Value |= (op & 0x3) << 5;
7036 // op: Rt32
7037 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7038 Value |= (op & 0x1f) << 16;
7039 // op: Mu2
7040 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7041 Value |= (op & 0x1) << 13;
7042 // op: Vvv32
7043 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7044 Value |= (op & 0x1f);
7045 break;
7046 }
7047 case Hexagon::V6_pred_not: {
7048 // op: Qs4
7049 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7050 Value |= (op & 0x3) << 8;
7051 // op: Qd4
7052 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7053 Value |= (op & 0x3);
7054 break;
7055 }
7056 case Hexagon::V6_pred_and:
7057 case Hexagon::V6_pred_and_n:
7058 case Hexagon::V6_pred_or:
7059 case Hexagon::V6_pred_or_n:
7060 case Hexagon::V6_pred_xor:
7061 case Hexagon::V6_shuffeqh:
7062 case Hexagon::V6_shuffeqw: {
7063 // op: Qs4
7064 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7065 Value |= (op & 0x3) << 8;
7066 // op: Qt4
7067 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7068 Value |= (op & 0x3) << 22;
7069 // op: Qd4
7070 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7071 Value |= (op & 0x3);
7072 break;
7073 }
7074 case Hexagon::V6_vmux: {
7075 // op: Qt4
7076 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7077 Value |= (op & 0x3) << 5;
7078 // op: Vu32
7079 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7080 Value |= (op & 0x1f) << 8;
7081 // op: Vv32
7082 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7083 Value |= (op & 0x1f) << 16;
7084 // op: Vd32
7085 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7086 Value |= (op & 0x1f);
7087 break;
7088 }
7089 case Hexagon::V6_vswap: {
7090 // op: Qt4
7091 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7092 Value |= (op & 0x3) << 5;
7093 // op: Vu32
7094 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7095 Value |= (op & 0x1f) << 8;
7096 // op: Vv32
7097 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7098 Value |= (op & 0x1f) << 16;
7099 // op: Vdd32
7100 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7101 Value |= (op & 0x1f);
7102 break;
7103 }
7104 case Hexagon::V6_vandnqrt:
7105 case Hexagon::V6_vandqrt: {
7106 // op: Qu4
7107 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7108 Value |= (op & 0x3) << 8;
7109 // op: Rt32
7110 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7111 Value |= (op & 0x1f) << 16;
7112 // op: Vd32
7113 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7114 Value |= (op & 0x1f);
7115 break;
7116 }
7117 case Hexagon::V6_vandnqrt_acc:
7118 case Hexagon::V6_vandqrt_acc: {
7119 // op: Qu4
7120 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7121 Value |= (op & 0x3) << 8;
7122 // op: Rt32
7123 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7124 Value |= (op & 0x1f) << 16;
7125 // op: Vx32
7126 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7127 Value |= (op & 0x1f);
7128 break;
7129 }
7130 case Hexagon::V6_vhistq:
7131 case Hexagon::V6_vwhist128q:
7132 case Hexagon::V6_vwhist256q:
7133 case Hexagon::V6_vwhist256q_sat: {
7134 // op: Qv4
7135 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7136 Value |= (op & 0x3) << 22;
7137 break;
7138 }
7139 case Hexagon::V6_vS32b_nqpred_ppu:
7140 case Hexagon::V6_vS32b_nt_nqpred_ppu:
7141 case Hexagon::V6_vS32b_nt_qpred_ppu:
7142 case Hexagon::V6_vS32b_qpred_ppu: {
7143 // op: Qv4
7144 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7145 Value |= (op & 0x3) << 11;
7146 // op: Mu2
7147 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7148 Value |= (op & 0x1) << 13;
7149 // op: Vs32
7150 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
7151 Value |= (op & 0x1f);
7152 // op: Rx32
7153 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7154 Value |= (op & 0x1f) << 16;
7155 break;
7156 }
7157 case Hexagon::V6_vprefixqb:
7158 case Hexagon::V6_vprefixqh:
7159 case Hexagon::V6_vprefixqw: {
7160 // op: Qv4
7161 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7162 Value |= (op & 0x3) << 22;
7163 // op: Vd32
7164 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7165 Value |= (op & 0x1f);
7166 break;
7167 }
7168 case Hexagon::V6_vandvnqv:
7169 case Hexagon::V6_vandvqv: {
7170 // op: Qv4
7171 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7172 Value |= (op & 0x3) << 22;
7173 // op: Vu32
7174 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7175 Value |= (op & 0x1f) << 8;
7176 // op: Vd32
7177 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7178 Value |= (op & 0x1f);
7179 break;
7180 }
7181 case Hexagon::V6_vaddbnq:
7182 case Hexagon::V6_vaddbq:
7183 case Hexagon::V6_vaddhnq:
7184 case Hexagon::V6_vaddhq:
7185 case Hexagon::V6_vaddwnq:
7186 case Hexagon::V6_vaddwq:
7187 case Hexagon::V6_vsubbnq:
7188 case Hexagon::V6_vsubbq:
7189 case Hexagon::V6_vsubhnq:
7190 case Hexagon::V6_vsubhq:
7191 case Hexagon::V6_vsubwnq:
7192 case Hexagon::V6_vsubwq: {
7193 // op: Qv4
7194 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7195 Value |= (op & 0x3) << 22;
7196 // op: Vu32
7197 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7198 Value |= (op & 0x1f) << 8;
7199 // op: Vx32
7200 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7201 Value |= (op & 0x1f);
7202 break;
7203 }
7204 case Hexagon::SA1_clrf:
7205 case Hexagon::SA1_clrfnew:
7206 case Hexagon::SA1_clrt:
7207 case Hexagon::SA1_clrtnew:
7208 case Hexagon::SA1_setin1: {
7209 // op: Rd16
7210 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7211 Value |= (op & 0xf);
7212 break;
7213 }
7214 case Hexagon::Y6_dmpause:
7215 case Hexagon::Y6_dmpoll:
7216 case Hexagon::Y6_dmwait: {
7217 // op: Rd32
7218 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7219 Value |= (op & 0x1f);
7220 break;
7221 }
7222 case Hexagon::PS_callr_nr: {
7223 // op: Rs
7224 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7225 Value |= (op & 0x1f) << 16;
7226 break;
7227 }
7228 case Hexagon::SA1_and1:
7229 case Hexagon::SA1_dec:
7230 case Hexagon::SA1_inc:
7231 case Hexagon::SA1_sxtb:
7232 case Hexagon::SA1_sxth:
7233 case Hexagon::SA1_tfr:
7234 case Hexagon::SA1_zxtb:
7235 case Hexagon::SA1_zxth: {
7236 // op: Rs16
7237 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7238 Value |= (op & 0xf) << 4;
7239 // op: Rd16
7240 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7241 Value |= (op & 0xf);
7242 break;
7243 }
7244 case Hexagon::SA1_combinerz:
7245 case Hexagon::SA1_combinezr: {
7246 // op: Rs16
7247 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7248 Value |= (op & 0xf) << 4;
7249 // op: Rdd8
7250 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7251 Value |= (op & 0x7);
7252 break;
7253 }
7254 case Hexagon::SA1_addrx: {
7255 // op: Rs16
7256 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7257 Value |= (op & 0xf) << 4;
7258 // op: Rx16
7259 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7260 Value |= (op & 0xf);
7261 break;
7262 }
7263 case Hexagon::J2_callr:
7264 case Hexagon::J2_callrh:
7265 case Hexagon::J2_jumpr:
7266 case Hexagon::J2_jumprh:
7267 case Hexagon::J4_hintjumpr:
7268 case Hexagon::R6_release_at_vi:
7269 case Hexagon::R6_release_st_vi:
7270 case Hexagon::Y2_ciad:
7271 case Hexagon::Y2_cswi:
7272 case Hexagon::Y2_dccleana:
7273 case Hexagon::Y2_dccleanidx:
7274 case Hexagon::Y2_dccleaninva:
7275 case Hexagon::Y2_dccleaninvidx:
7276 case Hexagon::Y2_dcinva:
7277 case Hexagon::Y2_dcinvidx:
7278 case Hexagon::Y2_dczeroa:
7279 case Hexagon::Y2_dczeroa_nt:
7280 case Hexagon::Y2_iassignw:
7281 case Hexagon::Y2_icinva:
7282 case Hexagon::Y2_icinvidx:
7283 case Hexagon::Y2_l2cleaninvidx:
7284 case Hexagon::Y2_resume:
7285 case Hexagon::Y2_start:
7286 case Hexagon::Y2_stop:
7287 case Hexagon::Y2_swi:
7288 case Hexagon::Y2_wait:
7289 case Hexagon::Y4_nmi:
7290 case Hexagon::Y4_siad:
7291 case Hexagon::Y4_trace:
7292 case Hexagon::Y5_l2cleanidx:
7293 case Hexagon::Y5_l2invidx:
7294 case Hexagon::Y5_l2unlocka:
7295 case Hexagon::Y5_tlbasidi:
7296 case Hexagon::Y6_diag:
7297 case Hexagon::Y6_dmresume:
7298 case Hexagon::Y6_dmstart: {
7299 // op: Rs32
7300 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7301 Value |= (op & 0x1f) << 16;
7302 break;
7303 }
7304 case Hexagon::S2_storew_rl_at_vi:
7305 case Hexagon::S2_storew_rl_st_vi:
7306 case Hexagon::Y2_dctagw:
7307 case Hexagon::Y2_icdataw:
7308 case Hexagon::Y2_ictagw:
7309 case Hexagon::Y4_l2fetch:
7310 case Hexagon::Y4_l2tagw:
7311 case Hexagon::Y6_dmlink: {
7312 // op: Rs32
7313 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7314 Value |= (op & 0x1f) << 16;
7315 // op: Rt32
7316 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7317 Value |= (op & 0x1f) << 8;
7318 break;
7319 }
7320 case Hexagon::L6_memcpy: {
7321 // op: Rs32
7322 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7323 Value |= (op & 0x1f) << 16;
7324 // op: Rt32
7325 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7326 Value |= (op & 0x1f) << 8;
7327 // op: Mu2
7328 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7329 Value |= (op & 0x1) << 13;
7330 break;
7331 }
7332 case Hexagon::S4_stored_rl_at_vi:
7333 case Hexagon::S4_stored_rl_st_vi:
7334 case Hexagon::Y5_l2fetch: {
7335 // op: Rs32
7336 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7337 Value |= (op & 0x1f) << 16;
7338 // op: Rtt32
7339 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7340 Value |= (op & 0x1f) << 8;
7341 break;
7342 }
7343 case Hexagon::A2_tfrrcr: {
7344 // op: Rs32
7345 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7346 Value |= (op & 0x1f) << 16;
7347 // op: Cd32
7348 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7349 Value |= (op & 0x1f);
7350 break;
7351 }
7352 case Hexagon::G4_tfrgrcr: {
7353 // op: Rs32
7354 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7355 Value |= (op & 0x1f) << 16;
7356 // op: Gd32
7357 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7358 Value |= (op & 0x1f);
7359 break;
7360 }
7361 case Hexagon::C2_tfrrp:
7362 case Hexagon::Y5_l2locka: {
7363 // op: Rs32
7364 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7365 Value |= (op & 0x1f) << 16;
7366 // op: Pd4
7367 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7368 Value |= (op & 0x3);
7369 break;
7370 }
7371 case Hexagon::A2_abs:
7372 case Hexagon::A2_abssat:
7373 case Hexagon::A2_aslh:
7374 case Hexagon::A2_asrh:
7375 case Hexagon::A2_negsat:
7376 case Hexagon::A2_satb:
7377 case Hexagon::A2_sath:
7378 case Hexagon::A2_satub:
7379 case Hexagon::A2_satuh:
7380 case Hexagon::A2_swiz:
7381 case Hexagon::A2_sxtb:
7382 case Hexagon::A2_sxth:
7383 case Hexagon::A2_tfr:
7384 case Hexagon::A2_zxth:
7385 case Hexagon::F2_conv_sf2uw:
7386 case Hexagon::F2_conv_sf2uw_chop:
7387 case Hexagon::F2_conv_sf2w:
7388 case Hexagon::F2_conv_sf2w_chop:
7389 case Hexagon::F2_conv_uw2sf:
7390 case Hexagon::F2_conv_w2sf:
7391 case Hexagon::F2_sffixupr:
7392 case Hexagon::L2_loadw_aq:
7393 case Hexagon::L2_loadw_locked:
7394 case Hexagon::S2_brev:
7395 case Hexagon::S2_cl0:
7396 case Hexagon::S2_cl1:
7397 case Hexagon::S2_clb:
7398 case Hexagon::S2_clbnorm:
7399 case Hexagon::S2_ct0:
7400 case Hexagon::S2_ct1:
7401 case Hexagon::S2_svsathb:
7402 case Hexagon::S2_svsathub:
7403 case Hexagon::S2_vsplatrb:
7404 case Hexagon::Y2_dctagr:
7405 case Hexagon::Y2_getimask:
7406 case Hexagon::Y2_iassignr:
7407 case Hexagon::Y2_icdatar:
7408 case Hexagon::Y2_ictagr:
7409 case Hexagon::Y2_tlbp:
7410 case Hexagon::Y4_l2tagr: {
7411 // op: Rs32
7412 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7413 Value |= (op & 0x1f) << 16;
7414 // op: Rd32
7415 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7416 Value |= (op & 0x1f);
7417 break;
7418 }
7419 case Hexagon::A2_sxtw:
7420 case Hexagon::F2_conv_sf2d:
7421 case Hexagon::F2_conv_sf2d_chop:
7422 case Hexagon::F2_conv_sf2df:
7423 case Hexagon::F2_conv_sf2ud:
7424 case Hexagon::F2_conv_sf2ud_chop:
7425 case Hexagon::F2_conv_uw2df:
7426 case Hexagon::F2_conv_w2df:
7427 case Hexagon::L2_deallocframe:
7428 case Hexagon::L4_loadd_aq:
7429 case Hexagon::L4_loadd_locked:
7430 case Hexagon::L4_return:
7431 case Hexagon::S2_vsplatrh:
7432 case Hexagon::S2_vsxtbh:
7433 case Hexagon::S2_vsxthw:
7434 case Hexagon::S2_vzxtbh:
7435 case Hexagon::S2_vzxthw:
7436 case Hexagon::S6_vsplatrbp:
7437 case Hexagon::Y2_tlbr: {
7438 // op: Rs32
7439 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7440 Value |= (op & 0x1f) << 16;
7441 // op: Rdd32
7442 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7443 Value |= (op & 0x1f);
7444 break;
7445 }
7446 case Hexagon::A4_cmpbeq:
7447 case Hexagon::A4_cmpbgt:
7448 case Hexagon::A4_cmpbgtu:
7449 case Hexagon::A4_cmpheq:
7450 case Hexagon::A4_cmphgt:
7451 case Hexagon::A4_cmphgtu:
7452 case Hexagon::C2_bitsclr:
7453 case Hexagon::C2_bitsset:
7454 case Hexagon::C2_cmpeq:
7455 case Hexagon::C2_cmpgt:
7456 case Hexagon::C2_cmpgtu:
7457 case Hexagon::C4_cmplte:
7458 case Hexagon::C4_cmplteu:
7459 case Hexagon::C4_cmpneq:
7460 case Hexagon::C4_nbitsclr:
7461 case Hexagon::C4_nbitsset:
7462 case Hexagon::F2_sfcmpeq:
7463 case Hexagon::F2_sfcmpge:
7464 case Hexagon::F2_sfcmpgt:
7465 case Hexagon::F2_sfcmpuo:
7466 case Hexagon::S2_storew_locked:
7467 case Hexagon::S2_tstbit_r:
7468 case Hexagon::S4_ntstbit_r: {
7469 // op: Rs32
7470 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7471 Value |= (op & 0x1f) << 16;
7472 // op: Rt32
7473 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7474 Value |= (op & 0x1f) << 8;
7475 // op: Pd4
7476 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7477 Value |= (op & 0x3);
7478 break;
7479 }
7480 case Hexagon::A2_add:
7481 case Hexagon::A2_addsat:
7482 case Hexagon::A2_and:
7483 case Hexagon::A2_max:
7484 case Hexagon::A2_maxu:
7485 case Hexagon::A2_or:
7486 case Hexagon::A2_svaddh:
7487 case Hexagon::A2_svaddhs:
7488 case Hexagon::A2_svadduhs:
7489 case Hexagon::A2_svavgh:
7490 case Hexagon::A2_svavghs:
7491 case Hexagon::A2_xor:
7492 case Hexagon::A4_cround_rr:
7493 case Hexagon::A4_modwrapu:
7494 case Hexagon::A4_rcmpeq:
7495 case Hexagon::A4_rcmpneq:
7496 case Hexagon::A4_round_rr:
7497 case Hexagon::A4_round_rr_sat:
7498 case Hexagon::F2_sfadd:
7499 case Hexagon::F2_sffixupd:
7500 case Hexagon::F2_sffixupn:
7501 case Hexagon::F2_sfmax:
7502 case Hexagon::F2_sfmin:
7503 case Hexagon::F2_sfmpy:
7504 case Hexagon::F2_sfsub:
7505 case Hexagon::L4_loadw_phys:
7506 case Hexagon::M2_cmpyrs_s0:
7507 case Hexagon::M2_cmpyrs_s1:
7508 case Hexagon::M2_cmpyrsc_s0:
7509 case Hexagon::M2_cmpyrsc_s1:
7510 case Hexagon::M2_dpmpyss_rnd_s0:
7511 case Hexagon::M2_hmmpyh_rs1:
7512 case Hexagon::M2_hmmpyh_s1:
7513 case Hexagon::M2_hmmpyl_rs1:
7514 case Hexagon::M2_hmmpyl_s1:
7515 case Hexagon::M2_mpy_hh_s0:
7516 case Hexagon::M2_mpy_hh_s1:
7517 case Hexagon::M2_mpy_hl_s0:
7518 case Hexagon::M2_mpy_hl_s1:
7519 case Hexagon::M2_mpy_lh_s0:
7520 case Hexagon::M2_mpy_lh_s1:
7521 case Hexagon::M2_mpy_ll_s0:
7522 case Hexagon::M2_mpy_ll_s1:
7523 case Hexagon::M2_mpy_rnd_hh_s0:
7524 case Hexagon::M2_mpy_rnd_hh_s1:
7525 case Hexagon::M2_mpy_rnd_hl_s0:
7526 case Hexagon::M2_mpy_rnd_hl_s1:
7527 case Hexagon::M2_mpy_rnd_lh_s0:
7528 case Hexagon::M2_mpy_rnd_lh_s1:
7529 case Hexagon::M2_mpy_rnd_ll_s0:
7530 case Hexagon::M2_mpy_rnd_ll_s1:
7531 case Hexagon::M2_mpy_sat_hh_s0:
7532 case Hexagon::M2_mpy_sat_hh_s1:
7533 case Hexagon::M2_mpy_sat_hl_s0:
7534 case Hexagon::M2_mpy_sat_hl_s1:
7535 case Hexagon::M2_mpy_sat_lh_s0:
7536 case Hexagon::M2_mpy_sat_lh_s1:
7537 case Hexagon::M2_mpy_sat_ll_s0:
7538 case Hexagon::M2_mpy_sat_ll_s1:
7539 case Hexagon::M2_mpy_sat_rnd_hh_s0:
7540 case Hexagon::M2_mpy_sat_rnd_hh_s1:
7541 case Hexagon::M2_mpy_sat_rnd_hl_s0:
7542 case Hexagon::M2_mpy_sat_rnd_hl_s1:
7543 case Hexagon::M2_mpy_sat_rnd_lh_s0:
7544 case Hexagon::M2_mpy_sat_rnd_lh_s1:
7545 case Hexagon::M2_mpy_sat_rnd_ll_s0:
7546 case Hexagon::M2_mpy_sat_rnd_ll_s1:
7547 case Hexagon::M2_mpy_up:
7548 case Hexagon::M2_mpy_up_s1:
7549 case Hexagon::M2_mpy_up_s1_sat:
7550 case Hexagon::M2_mpyi:
7551 case Hexagon::M2_mpysu_up:
7552 case Hexagon::M2_mpyu_hh_s0:
7553 case Hexagon::M2_mpyu_hh_s1:
7554 case Hexagon::M2_mpyu_hl_s0:
7555 case Hexagon::M2_mpyu_hl_s1:
7556 case Hexagon::M2_mpyu_lh_s0:
7557 case Hexagon::M2_mpyu_lh_s1:
7558 case Hexagon::M2_mpyu_ll_s0:
7559 case Hexagon::M2_mpyu_ll_s1:
7560 case Hexagon::M2_mpyu_up:
7561 case Hexagon::M2_vmpy2s_s0pack:
7562 case Hexagon::M2_vmpy2s_s1pack:
7563 case Hexagon::S2_asl_r_r:
7564 case Hexagon::S2_asl_r_r_sat:
7565 case Hexagon::S2_asr_r_r:
7566 case Hexagon::S2_asr_r_r_sat:
7567 case Hexagon::S2_clrbit_r:
7568 case Hexagon::S2_lsl_r_r:
7569 case Hexagon::S2_lsr_r_r:
7570 case Hexagon::S2_setbit_r:
7571 case Hexagon::S2_togglebit_r:
7572 case Hexagon::S4_parity:
7573 case Hexagon::dep_A2_addsat: {
7574 // op: Rs32
7575 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7576 Value |= (op & 0x1f) << 16;
7577 // op: Rt32
7578 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7579 Value |= (op & 0x1f) << 8;
7580 // op: Rd32
7581 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7582 Value |= (op & 0x1f);
7583 break;
7584 }
7585 case Hexagon::A2_combinew:
7586 case Hexagon::A4_bitsplit:
7587 case Hexagon::M2_cmpyi_s0:
7588 case Hexagon::M2_cmpyr_s0:
7589 case Hexagon::M2_cmpys_s0:
7590 case Hexagon::M2_cmpys_s1:
7591 case Hexagon::M2_cmpysc_s0:
7592 case Hexagon::M2_cmpysc_s1:
7593 case Hexagon::M2_dpmpyss_s0:
7594 case Hexagon::M2_dpmpyuu_s0:
7595 case Hexagon::M2_mpyd_hh_s0:
7596 case Hexagon::M2_mpyd_hh_s1:
7597 case Hexagon::M2_mpyd_hl_s0:
7598 case Hexagon::M2_mpyd_hl_s1:
7599 case Hexagon::M2_mpyd_lh_s0:
7600 case Hexagon::M2_mpyd_lh_s1:
7601 case Hexagon::M2_mpyd_ll_s0:
7602 case Hexagon::M2_mpyd_ll_s1:
7603 case Hexagon::M2_mpyd_rnd_hh_s0:
7604 case Hexagon::M2_mpyd_rnd_hh_s1:
7605 case Hexagon::M2_mpyd_rnd_hl_s0:
7606 case Hexagon::M2_mpyd_rnd_hl_s1:
7607 case Hexagon::M2_mpyd_rnd_lh_s0:
7608 case Hexagon::M2_mpyd_rnd_lh_s1:
7609 case Hexagon::M2_mpyd_rnd_ll_s0:
7610 case Hexagon::M2_mpyd_rnd_ll_s1:
7611 case Hexagon::M2_mpyud_hh_s0:
7612 case Hexagon::M2_mpyud_hh_s1:
7613 case Hexagon::M2_mpyud_hl_s0:
7614 case Hexagon::M2_mpyud_hl_s1:
7615 case Hexagon::M2_mpyud_lh_s0:
7616 case Hexagon::M2_mpyud_lh_s1:
7617 case Hexagon::M2_mpyud_ll_s0:
7618 case Hexagon::M2_mpyud_ll_s1:
7619 case Hexagon::M2_vmpy2s_s0:
7620 case Hexagon::M2_vmpy2s_s1:
7621 case Hexagon::M2_vmpy2su_s0:
7622 case Hexagon::M2_vmpy2su_s1:
7623 case Hexagon::M4_pmpyw:
7624 case Hexagon::M4_vpmpyh:
7625 case Hexagon::M5_vmpybsu:
7626 case Hexagon::M5_vmpybuu:
7627 case Hexagon::S2_packhl:
7628 case Hexagon::dep_S2_packhl: {
7629 // op: Rs32
7630 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7631 Value |= (op & 0x1f) << 16;
7632 // op: Rt32
7633 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7634 Value |= (op & 0x1f) << 8;
7635 // op: Rdd32
7636 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7637 Value |= (op & 0x1f);
7638 break;
7639 }
7640 case Hexagon::S4_stored_locked: {
7641 // op: Rs32
7642 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7643 Value |= (op & 0x1f) << 16;
7644 // op: Rtt32
7645 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7646 Value |= (op & 0x1f) << 8;
7647 // op: Pd4
7648 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7649 Value |= (op & 0x3);
7650 break;
7651 }
7652 case Hexagon::S2_extractu_rp:
7653 case Hexagon::S4_extract_rp: {
7654 // op: Rs32
7655 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7656 Value |= (op & 0x1f) << 16;
7657 // op: Rtt32
7658 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7659 Value |= (op & 0x1f) << 8;
7660 // op: Rd32
7661 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7662 Value |= (op & 0x1f);
7663 break;
7664 }
7665 case Hexagon::Y2_tfrsrcr: {
7666 // op: Rs32
7667 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7668 Value |= (op & 0x1f) << 16;
7669 // op: Sd128
7670 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7671 Value |= (op & 0x7f);
7672 break;
7673 }
7674 case Hexagon::F2_sfinvsqrta: {
7675 // op: Rs32
7676 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7677 Value |= (op & 0x1f) << 16;
7678 // op: Rd32
7679 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7680 Value |= (op & 0x1f);
7681 // op: Pe4
7682 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7683 Value |= (op & 0x3) << 5;
7684 break;
7685 }
7686 case Hexagon::F2_sffma_sc: {
7687 // op: Rs32
7688 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7689 Value |= (op & 0x1f) << 16;
7690 // op: Rt32
7691 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7692 Value |= (op & 0x1f) << 8;
7693 // op: Pu4
7694 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
7695 Value |= (op & 0x3) << 5;
7696 // op: Rx32
7697 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7698 Value |= (op & 0x1f);
7699 break;
7700 }
7701 case Hexagon::F2_sfrecipa: {
7702 // op: Rs32
7703 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7704 Value |= (op & 0x1f) << 16;
7705 // op: Rt32
7706 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7707 Value |= (op & 0x1f) << 8;
7708 // op: Rd32
7709 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7710 Value |= (op & 0x1f);
7711 // op: Pe4
7712 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7713 Value |= (op & 0x3) << 5;
7714 break;
7715 }
7716 case Hexagon::F2_sffma:
7717 case Hexagon::F2_sffma_lib:
7718 case Hexagon::F2_sffms:
7719 case Hexagon::F2_sffms_lib:
7720 case Hexagon::M2_acci:
7721 case Hexagon::M2_maci:
7722 case Hexagon::M2_mnaci:
7723 case Hexagon::M2_mpy_acc_hh_s0:
7724 case Hexagon::M2_mpy_acc_hh_s1:
7725 case Hexagon::M2_mpy_acc_hl_s0:
7726 case Hexagon::M2_mpy_acc_hl_s1:
7727 case Hexagon::M2_mpy_acc_lh_s0:
7728 case Hexagon::M2_mpy_acc_lh_s1:
7729 case Hexagon::M2_mpy_acc_ll_s0:
7730 case Hexagon::M2_mpy_acc_ll_s1:
7731 case Hexagon::M2_mpy_acc_sat_hh_s0:
7732 case Hexagon::M2_mpy_acc_sat_hh_s1:
7733 case Hexagon::M2_mpy_acc_sat_hl_s0:
7734 case Hexagon::M2_mpy_acc_sat_hl_s1:
7735 case Hexagon::M2_mpy_acc_sat_lh_s0:
7736 case Hexagon::M2_mpy_acc_sat_lh_s1:
7737 case Hexagon::M2_mpy_acc_sat_ll_s0:
7738 case Hexagon::M2_mpy_acc_sat_ll_s1:
7739 case Hexagon::M2_mpy_nac_hh_s0:
7740 case Hexagon::M2_mpy_nac_hh_s1:
7741 case Hexagon::M2_mpy_nac_hl_s0:
7742 case Hexagon::M2_mpy_nac_hl_s1:
7743 case Hexagon::M2_mpy_nac_lh_s0:
7744 case Hexagon::M2_mpy_nac_lh_s1:
7745 case Hexagon::M2_mpy_nac_ll_s0:
7746 case Hexagon::M2_mpy_nac_ll_s1:
7747 case Hexagon::M2_mpy_nac_sat_hh_s0:
7748 case Hexagon::M2_mpy_nac_sat_hh_s1:
7749 case Hexagon::M2_mpy_nac_sat_hl_s0:
7750 case Hexagon::M2_mpy_nac_sat_hl_s1:
7751 case Hexagon::M2_mpy_nac_sat_lh_s0:
7752 case Hexagon::M2_mpy_nac_sat_lh_s1:
7753 case Hexagon::M2_mpy_nac_sat_ll_s0:
7754 case Hexagon::M2_mpy_nac_sat_ll_s1:
7755 case Hexagon::M2_mpyu_acc_hh_s0:
7756 case Hexagon::M2_mpyu_acc_hh_s1:
7757 case Hexagon::M2_mpyu_acc_hl_s0:
7758 case Hexagon::M2_mpyu_acc_hl_s1:
7759 case Hexagon::M2_mpyu_acc_lh_s0:
7760 case Hexagon::M2_mpyu_acc_lh_s1:
7761 case Hexagon::M2_mpyu_acc_ll_s0:
7762 case Hexagon::M2_mpyu_acc_ll_s1:
7763 case Hexagon::M2_mpyu_nac_hh_s0:
7764 case Hexagon::M2_mpyu_nac_hh_s1:
7765 case Hexagon::M2_mpyu_nac_hl_s0:
7766 case Hexagon::M2_mpyu_nac_hl_s1:
7767 case Hexagon::M2_mpyu_nac_lh_s0:
7768 case Hexagon::M2_mpyu_nac_lh_s1:
7769 case Hexagon::M2_mpyu_nac_ll_s0:
7770 case Hexagon::M2_mpyu_nac_ll_s1:
7771 case Hexagon::M2_nacci:
7772 case Hexagon::M2_xor_xacc:
7773 case Hexagon::M4_and_and:
7774 case Hexagon::M4_and_andn:
7775 case Hexagon::M4_and_or:
7776 case Hexagon::M4_and_xor:
7777 case Hexagon::M4_mac_up_s1_sat:
7778 case Hexagon::M4_nac_up_s1_sat:
7779 case Hexagon::M4_or_and:
7780 case Hexagon::M4_or_andn:
7781 case Hexagon::M4_or_or:
7782 case Hexagon::M4_or_xor:
7783 case Hexagon::M4_xor_and:
7784 case Hexagon::M4_xor_andn:
7785 case Hexagon::M4_xor_or:
7786 case Hexagon::S2_asl_r_r_acc:
7787 case Hexagon::S2_asl_r_r_and:
7788 case Hexagon::S2_asl_r_r_nac:
7789 case Hexagon::S2_asl_r_r_or:
7790 case Hexagon::S2_asr_r_r_acc:
7791 case Hexagon::S2_asr_r_r_and:
7792 case Hexagon::S2_asr_r_r_nac:
7793 case Hexagon::S2_asr_r_r_or:
7794 case Hexagon::S2_lsl_r_r_acc:
7795 case Hexagon::S2_lsl_r_r_and:
7796 case Hexagon::S2_lsl_r_r_nac:
7797 case Hexagon::S2_lsl_r_r_or:
7798 case Hexagon::S2_lsr_r_r_acc:
7799 case Hexagon::S2_lsr_r_r_and:
7800 case Hexagon::S2_lsr_r_r_nac:
7801 case Hexagon::S2_lsr_r_r_or: {
7802 // op: Rs32
7803 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7804 Value |= (op & 0x1f) << 16;
7805 // op: Rt32
7806 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7807 Value |= (op & 0x1f) << 8;
7808 // op: Rx32
7809 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7810 Value |= (op & 0x1f);
7811 break;
7812 }
7813 case Hexagon::M2_cmaci_s0:
7814 case Hexagon::M2_cmacr_s0:
7815 case Hexagon::M2_cmacs_s0:
7816 case Hexagon::M2_cmacs_s1:
7817 case Hexagon::M2_cmacsc_s0:
7818 case Hexagon::M2_cmacsc_s1:
7819 case Hexagon::M2_cnacs_s0:
7820 case Hexagon::M2_cnacs_s1:
7821 case Hexagon::M2_cnacsc_s0:
7822 case Hexagon::M2_cnacsc_s1:
7823 case Hexagon::M2_dpmpyss_acc_s0:
7824 case Hexagon::M2_dpmpyss_nac_s0:
7825 case Hexagon::M2_dpmpyuu_acc_s0:
7826 case Hexagon::M2_dpmpyuu_nac_s0:
7827 case Hexagon::M2_mpyd_acc_hh_s0:
7828 case Hexagon::M2_mpyd_acc_hh_s1:
7829 case Hexagon::M2_mpyd_acc_hl_s0:
7830 case Hexagon::M2_mpyd_acc_hl_s1:
7831 case Hexagon::M2_mpyd_acc_lh_s0:
7832 case Hexagon::M2_mpyd_acc_lh_s1:
7833 case Hexagon::M2_mpyd_acc_ll_s0:
7834 case Hexagon::M2_mpyd_acc_ll_s1:
7835 case Hexagon::M2_mpyd_nac_hh_s0:
7836 case Hexagon::M2_mpyd_nac_hh_s1:
7837 case Hexagon::M2_mpyd_nac_hl_s0:
7838 case Hexagon::M2_mpyd_nac_hl_s1:
7839 case Hexagon::M2_mpyd_nac_lh_s0:
7840 case Hexagon::M2_mpyd_nac_lh_s1:
7841 case Hexagon::M2_mpyd_nac_ll_s0:
7842 case Hexagon::M2_mpyd_nac_ll_s1:
7843 case Hexagon::M2_mpyud_acc_hh_s0:
7844 case Hexagon::M2_mpyud_acc_hh_s1:
7845 case Hexagon::M2_mpyud_acc_hl_s0:
7846 case Hexagon::M2_mpyud_acc_hl_s1:
7847 case Hexagon::M2_mpyud_acc_lh_s0:
7848 case Hexagon::M2_mpyud_acc_lh_s1:
7849 case Hexagon::M2_mpyud_acc_ll_s0:
7850 case Hexagon::M2_mpyud_acc_ll_s1:
7851 case Hexagon::M2_mpyud_nac_hh_s0:
7852 case Hexagon::M2_mpyud_nac_hh_s1:
7853 case Hexagon::M2_mpyud_nac_hl_s0:
7854 case Hexagon::M2_mpyud_nac_hl_s1:
7855 case Hexagon::M2_mpyud_nac_lh_s0:
7856 case Hexagon::M2_mpyud_nac_lh_s1:
7857 case Hexagon::M2_mpyud_nac_ll_s0:
7858 case Hexagon::M2_mpyud_nac_ll_s1:
7859 case Hexagon::M2_vmac2:
7860 case Hexagon::M2_vmac2s_s0:
7861 case Hexagon::M2_vmac2s_s1:
7862 case Hexagon::M2_vmac2su_s0:
7863 case Hexagon::M2_vmac2su_s1:
7864 case Hexagon::M4_pmpyw_acc:
7865 case Hexagon::M4_vpmpyh_acc:
7866 case Hexagon::M5_vmacbsu:
7867 case Hexagon::M5_vmacbuu: {
7868 // op: Rs32
7869 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7870 Value |= (op & 0x1f) << 16;
7871 // op: Rt32
7872 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7873 Value |= (op & 0x1f) << 8;
7874 // op: Rxx32
7875 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7876 Value |= (op & 0x1f);
7877 break;
7878 }
7879 case Hexagon::S2_insert_rp: {
7880 // op: Rs32
7881 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7882 Value |= (op & 0x1f) << 16;
7883 // op: Rtt32
7884 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
7885 Value |= (op & 0x1f) << 8;
7886 // op: Rx32
7887 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7888 Value |= (op & 0x1f);
7889 break;
7890 }
7891 case Hexagon::Y2_tlbw: {
7892 // op: Rss32
7893 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7894 Value |= (op & 0x1f) << 16;
7895 // op: Rt32
7896 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7897 Value |= (op & 0x1f) << 8;
7898 break;
7899 }
7900 case Hexagon::Y6_diag0:
7901 case Hexagon::Y6_diag1: {
7902 // op: Rss32
7903 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7904 Value |= (op & 0x1f) << 16;
7905 // op: Rtt32
7906 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7907 Value |= (op & 0x1f) << 8;
7908 break;
7909 }
7910 case Hexagon::A4_tfrpcp: {
7911 // op: Rss32
7912 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7913 Value |= (op & 0x1f) << 16;
7914 // op: Cdd32
7915 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7916 Value |= (op & 0x1f);
7917 break;
7918 }
7919 case Hexagon::G4_tfrgpcp: {
7920 // op: Rss32
7921 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7922 Value |= (op & 0x1f) << 16;
7923 // op: Gdd32
7924 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7925 Value |= (op & 0x1f);
7926 break;
7927 }
7928 case Hexagon::A2_roundsat:
7929 case Hexagon::A2_sat:
7930 case Hexagon::F2_conv_d2sf:
7931 case Hexagon::F2_conv_df2sf:
7932 case Hexagon::F2_conv_df2uw:
7933 case Hexagon::F2_conv_df2uw_chop:
7934 case Hexagon::F2_conv_df2w:
7935 case Hexagon::F2_conv_df2w_chop:
7936 case Hexagon::F2_conv_ud2sf:
7937 case Hexagon::S2_cl0p:
7938 case Hexagon::S2_cl1p:
7939 case Hexagon::S2_clbp:
7940 case Hexagon::S2_ct0p:
7941 case Hexagon::S2_ct1p:
7942 case Hexagon::S2_vrndpackwh:
7943 case Hexagon::S2_vrndpackwhs:
7944 case Hexagon::S2_vsathb:
7945 case Hexagon::S2_vsathub:
7946 case Hexagon::S2_vsatwh:
7947 case Hexagon::S2_vsatwuh:
7948 case Hexagon::S2_vtrunehb:
7949 case Hexagon::S2_vtrunohb:
7950 case Hexagon::S4_clbpnorm:
7951 case Hexagon::S5_popcountp:
7952 case Hexagon::Y2_tlbpp:
7953 case Hexagon::Y5_tlboc: {
7954 // op: Rss32
7955 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7956 Value |= (op & 0x1f) << 16;
7957 // op: Rd32
7958 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7959 Value |= (op & 0x1f);
7960 break;
7961 }
7962 case Hexagon::A2_absp:
7963 case Hexagon::A2_negp:
7964 case Hexagon::A2_notp:
7965 case Hexagon::A2_vabsh:
7966 case Hexagon::A2_vabshsat:
7967 case Hexagon::A2_vabsw:
7968 case Hexagon::A2_vabswsat:
7969 case Hexagon::A2_vconj:
7970 case Hexagon::F2_conv_d2df:
7971 case Hexagon::F2_conv_df2d:
7972 case Hexagon::F2_conv_df2d_chop:
7973 case Hexagon::F2_conv_df2ud:
7974 case Hexagon::F2_conv_df2ud_chop:
7975 case Hexagon::F2_conv_ud2df:
7976 case Hexagon::S2_brevp:
7977 case Hexagon::S2_deinterleave:
7978 case Hexagon::S2_interleave:
7979 case Hexagon::S2_vsathb_nopack:
7980 case Hexagon::S2_vsathub_nopack:
7981 case Hexagon::S2_vsatwh_nopack:
7982 case Hexagon::S2_vsatwuh_nopack: {
7983 // op: Rss32
7984 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7985 Value |= (op & 0x1f) << 16;
7986 // op: Rdd32
7987 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
7988 Value |= (op & 0x1f);
7989 break;
7990 }
7991 case Hexagon::A4_tlbmatch: {
7992 // op: Rss32
7993 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
7994 Value |= (op & 0x1f) << 16;
7995 // op: Rt32
7996 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
7997 Value |= (op & 0x1f) << 8;
7998 // op: Pd4
7999 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8000 Value |= (op & 0x3);
8001 break;
8002 }
8003 case Hexagon::M4_cmpyi_wh:
8004 case Hexagon::M4_cmpyi_whc:
8005 case Hexagon::M4_cmpyr_wh:
8006 case Hexagon::M4_cmpyr_whc:
8007 case Hexagon::S2_asr_r_svw_trun:
8008 case Hexagon::Y5_ctlbw: {
8009 // op: Rss32
8010 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8011 Value |= (op & 0x1f) << 16;
8012 // op: Rt32
8013 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8014 Value |= (op & 0x1f) << 8;
8015 // op: Rd32
8016 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8017 Value |= (op & 0x1f);
8018 break;
8019 }
8020 case Hexagon::A7_croundd_rr:
8021 case Hexagon::S2_asl_r_p:
8022 case Hexagon::S2_asl_r_vh:
8023 case Hexagon::S2_asl_r_vw:
8024 case Hexagon::S2_asr_r_p:
8025 case Hexagon::S2_asr_r_vh:
8026 case Hexagon::S2_asr_r_vw:
8027 case Hexagon::S2_lsl_r_p:
8028 case Hexagon::S2_lsl_r_vh:
8029 case Hexagon::S2_lsl_r_vw:
8030 case Hexagon::S2_lsr_r_p:
8031 case Hexagon::S2_lsr_r_vh:
8032 case Hexagon::S2_lsr_r_vw:
8033 case Hexagon::S2_vcnegh:
8034 case Hexagon::S2_vcrotate: {
8035 // op: Rss32
8036 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8037 Value |= (op & 0x1f) << 16;
8038 // op: Rt32
8039 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8040 Value |= (op & 0x1f) << 8;
8041 // op: Rdd32
8042 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8043 Value |= (op & 0x1f);
8044 break;
8045 }
8046 case Hexagon::A2_vcmpbeq:
8047 case Hexagon::A2_vcmpbgtu:
8048 case Hexagon::A2_vcmpheq:
8049 case Hexagon::A2_vcmphgt:
8050 case Hexagon::A2_vcmphgtu:
8051 case Hexagon::A2_vcmpweq:
8052 case Hexagon::A2_vcmpwgt:
8053 case Hexagon::A2_vcmpwgtu:
8054 case Hexagon::A4_boundscheck_hi:
8055 case Hexagon::A4_boundscheck_lo:
8056 case Hexagon::A4_vcmpbeq_any:
8057 case Hexagon::A4_vcmpbgt:
8058 case Hexagon::A6_vcmpbeq_notany:
8059 case Hexagon::C2_cmpeqp:
8060 case Hexagon::C2_cmpgtp:
8061 case Hexagon::C2_cmpgtup:
8062 case Hexagon::F2_dfcmpeq:
8063 case Hexagon::F2_dfcmpge:
8064 case Hexagon::F2_dfcmpgt:
8065 case Hexagon::F2_dfcmpuo: {
8066 // op: Rss32
8067 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8068 Value |= (op & 0x1f) << 16;
8069 // op: Rtt32
8070 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8071 Value |= (op & 0x1f) << 8;
8072 // op: Pd4
8073 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8074 Value |= (op & 0x3);
8075 break;
8076 }
8077 case Hexagon::S2_vsplicerb: {
8078 // op: Rss32
8079 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8080 Value |= (op & 0x1f) << 16;
8081 // op: Rtt32
8082 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8083 Value |= (op & 0x1f) << 8;
8084 // op: Pu4
8085 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8086 Value |= (op & 0x3) << 5;
8087 // op: Rdd32
8088 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8089 Value |= (op & 0x1f);
8090 break;
8091 }
8092 case Hexagon::A5_vaddhubs:
8093 case Hexagon::M2_vdmpyrs_s0:
8094 case Hexagon::M2_vdmpyrs_s1:
8095 case Hexagon::M2_vraddh:
8096 case Hexagon::M2_vradduh:
8097 case Hexagon::M2_vrcmpys_s1rp_h:
8098 case Hexagon::M2_vrcmpys_s1rp_l:
8099 case Hexagon::M7_wcmpyiw:
8100 case Hexagon::M7_wcmpyiw_rnd:
8101 case Hexagon::M7_wcmpyiwc:
8102 case Hexagon::M7_wcmpyiwc_rnd:
8103 case Hexagon::M7_wcmpyrw:
8104 case Hexagon::M7_wcmpyrw_rnd:
8105 case Hexagon::M7_wcmpyrwc:
8106 case Hexagon::M7_wcmpyrwc_rnd:
8107 case Hexagon::S2_parityp: {
8108 // op: Rss32
8109 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8110 Value |= (op & 0x1f) << 16;
8111 // op: Rtt32
8112 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8113 Value |= (op & 0x1f) << 8;
8114 // op: Rd32
8115 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8116 Value |= (op & 0x1f);
8117 break;
8118 }
8119 case Hexagon::A2_addp:
8120 case Hexagon::A2_addpsat:
8121 case Hexagon::A2_addsph:
8122 case Hexagon::A2_addspl:
8123 case Hexagon::A2_andp:
8124 case Hexagon::A2_maxp:
8125 case Hexagon::A2_maxup:
8126 case Hexagon::A2_orp:
8127 case Hexagon::A2_vaddh:
8128 case Hexagon::A2_vaddhs:
8129 case Hexagon::A2_vaddub:
8130 case Hexagon::A2_vaddubs:
8131 case Hexagon::A2_vadduhs:
8132 case Hexagon::A2_vaddw:
8133 case Hexagon::A2_vaddws:
8134 case Hexagon::A2_vavgh:
8135 case Hexagon::A2_vavghcr:
8136 case Hexagon::A2_vavghr:
8137 case Hexagon::A2_vavgub:
8138 case Hexagon::A2_vavgubr:
8139 case Hexagon::A2_vavguh:
8140 case Hexagon::A2_vavguhr:
8141 case Hexagon::A2_vavguw:
8142 case Hexagon::A2_vavguwr:
8143 case Hexagon::A2_vavgw:
8144 case Hexagon::A2_vavgwcr:
8145 case Hexagon::A2_vavgwr:
8146 case Hexagon::A2_vraddub:
8147 case Hexagon::A2_vrsadub:
8148 case Hexagon::A2_xorp:
8149 case Hexagon::F2_dfadd:
8150 case Hexagon::F2_dfmax:
8151 case Hexagon::F2_dfmin:
8152 case Hexagon::F2_dfmpyfix:
8153 case Hexagon::F2_dfmpyll:
8154 case Hexagon::F2_dfsub:
8155 case Hexagon::M2_mmpyh_rs0:
8156 case Hexagon::M2_mmpyh_rs1:
8157 case Hexagon::M2_mmpyh_s0:
8158 case Hexagon::M2_mmpyh_s1:
8159 case Hexagon::M2_mmpyl_rs0:
8160 case Hexagon::M2_mmpyl_rs1:
8161 case Hexagon::M2_mmpyl_s0:
8162 case Hexagon::M2_mmpyl_s1:
8163 case Hexagon::M2_mmpyuh_rs0:
8164 case Hexagon::M2_mmpyuh_rs1:
8165 case Hexagon::M2_mmpyuh_s0:
8166 case Hexagon::M2_mmpyuh_s1:
8167 case Hexagon::M2_mmpyul_rs0:
8168 case Hexagon::M2_mmpyul_rs1:
8169 case Hexagon::M2_mmpyul_s0:
8170 case Hexagon::M2_mmpyul_s1:
8171 case Hexagon::M2_vcmpy_s0_sat_i:
8172 case Hexagon::M2_vcmpy_s0_sat_r:
8173 case Hexagon::M2_vcmpy_s1_sat_i:
8174 case Hexagon::M2_vcmpy_s1_sat_r:
8175 case Hexagon::M2_vdmpys_s0:
8176 case Hexagon::M2_vdmpys_s1:
8177 case Hexagon::M2_vmpy2es_s0:
8178 case Hexagon::M2_vmpy2es_s1:
8179 case Hexagon::M2_vrcmpyi_s0:
8180 case Hexagon::M2_vrcmpyi_s0c:
8181 case Hexagon::M2_vrcmpyr_s0:
8182 case Hexagon::M2_vrcmpyr_s0c:
8183 case Hexagon::M2_vrcmpys_s1_h:
8184 case Hexagon::M2_vrcmpys_s1_l:
8185 case Hexagon::M2_vrmpy_s0:
8186 case Hexagon::M4_vrmpyeh_s0:
8187 case Hexagon::M4_vrmpyeh_s1:
8188 case Hexagon::M4_vrmpyoh_s0:
8189 case Hexagon::M4_vrmpyoh_s1:
8190 case Hexagon::M5_vdmpybsu:
8191 case Hexagon::M5_vrmpybsu:
8192 case Hexagon::M5_vrmpybuu:
8193 case Hexagon::M7_dcmpyiw:
8194 case Hexagon::M7_dcmpyiwc:
8195 case Hexagon::M7_dcmpyrw:
8196 case Hexagon::M7_dcmpyrwc:
8197 case Hexagon::S2_cabacdecbin:
8198 case Hexagon::S2_extractup_rp:
8199 case Hexagon::S2_lfsp:
8200 case Hexagon::S2_shuffeb:
8201 case Hexagon::S2_shuffeh:
8202 case Hexagon::S2_vtrunewh:
8203 case Hexagon::S2_vtrunowh:
8204 case Hexagon::S4_extractp_rp:
8205 case Hexagon::S4_vxaddsubh:
8206 case Hexagon::S4_vxaddsubhr:
8207 case Hexagon::S4_vxaddsubw:
8208 case Hexagon::S4_vxsubaddh:
8209 case Hexagon::S4_vxsubaddhr:
8210 case Hexagon::S4_vxsubaddw:
8211 case Hexagon::S6_vtrunehb_ppp:
8212 case Hexagon::S6_vtrunohb_ppp: {
8213 // op: Rss32
8214 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8215 Value |= (op & 0x1f) << 16;
8216 // op: Rtt32
8217 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8218 Value |= (op & 0x1f) << 8;
8219 // op: Rdd32
8220 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8221 Value |= (op & 0x1f);
8222 break;
8223 }
8224 case Hexagon::Y4_tfrspcp: {
8225 // op: Rss32
8226 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8227 Value |= (op & 0x1f) << 16;
8228 // op: Sdd128
8229 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8230 Value |= (op & 0x7f);
8231 break;
8232 }
8233 case Hexagon::S2_asl_r_p_acc:
8234 case Hexagon::S2_asl_r_p_and:
8235 case Hexagon::S2_asl_r_p_nac:
8236 case Hexagon::S2_asl_r_p_or:
8237 case Hexagon::S2_asl_r_p_xor:
8238 case Hexagon::S2_asr_r_p_acc:
8239 case Hexagon::S2_asr_r_p_and:
8240 case Hexagon::S2_asr_r_p_nac:
8241 case Hexagon::S2_asr_r_p_or:
8242 case Hexagon::S2_asr_r_p_xor:
8243 case Hexagon::S2_lsl_r_p_acc:
8244 case Hexagon::S2_lsl_r_p_and:
8245 case Hexagon::S2_lsl_r_p_nac:
8246 case Hexagon::S2_lsl_r_p_or:
8247 case Hexagon::S2_lsl_r_p_xor:
8248 case Hexagon::S2_lsr_r_p_acc:
8249 case Hexagon::S2_lsr_r_p_and:
8250 case Hexagon::S2_lsr_r_p_nac:
8251 case Hexagon::S2_lsr_r_p_or:
8252 case Hexagon::S2_lsr_r_p_xor:
8253 case Hexagon::S2_vrcnegh: {
8254 // op: Rss32
8255 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8256 Value |= (op & 0x1f) << 16;
8257 // op: Rt32
8258 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8259 Value |= (op & 0x1f) << 8;
8260 // op: Rxx32
8261 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8262 Value |= (op & 0x1f);
8263 break;
8264 }
8265 case Hexagon::A4_addp_c:
8266 case Hexagon::A4_subp_c: {
8267 // op: Rss32
8268 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8269 Value |= (op & 0x1f) << 16;
8270 // op: Rtt32
8271 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8272 Value |= (op & 0x1f) << 8;
8273 // op: Rdd32
8274 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8275 Value |= (op & 0x1f);
8276 // op: Px4
8277 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8278 Value |= (op & 0x3) << 5;
8279 break;
8280 }
8281 case Hexagon::A2_vraddub_acc:
8282 case Hexagon::A2_vrsadub_acc:
8283 case Hexagon::F2_dfmpyhh:
8284 case Hexagon::F2_dfmpylh:
8285 case Hexagon::M2_mmachs_rs0:
8286 case Hexagon::M2_mmachs_rs1:
8287 case Hexagon::M2_mmachs_s0:
8288 case Hexagon::M2_mmachs_s1:
8289 case Hexagon::M2_mmacls_rs0:
8290 case Hexagon::M2_mmacls_rs1:
8291 case Hexagon::M2_mmacls_s0:
8292 case Hexagon::M2_mmacls_s1:
8293 case Hexagon::M2_mmacuhs_rs0:
8294 case Hexagon::M2_mmacuhs_rs1:
8295 case Hexagon::M2_mmacuhs_s0:
8296 case Hexagon::M2_mmacuhs_s1:
8297 case Hexagon::M2_mmaculs_rs0:
8298 case Hexagon::M2_mmaculs_rs1:
8299 case Hexagon::M2_mmaculs_s0:
8300 case Hexagon::M2_mmaculs_s1:
8301 case Hexagon::M2_vcmac_s0_sat_i:
8302 case Hexagon::M2_vcmac_s0_sat_r:
8303 case Hexagon::M2_vdmacs_s0:
8304 case Hexagon::M2_vdmacs_s1:
8305 case Hexagon::M2_vmac2es:
8306 case Hexagon::M2_vmac2es_s0:
8307 case Hexagon::M2_vmac2es_s1:
8308 case Hexagon::M2_vrcmaci_s0:
8309 case Hexagon::M2_vrcmaci_s0c:
8310 case Hexagon::M2_vrcmacr_s0:
8311 case Hexagon::M2_vrcmacr_s0c:
8312 case Hexagon::M2_vrcmpys_acc_s1_h:
8313 case Hexagon::M2_vrcmpys_acc_s1_l:
8314 case Hexagon::M2_vrmac_s0:
8315 case Hexagon::M4_vrmpyeh_acc_s0:
8316 case Hexagon::M4_vrmpyeh_acc_s1:
8317 case Hexagon::M4_vrmpyoh_acc_s0:
8318 case Hexagon::M4_vrmpyoh_acc_s1:
8319 case Hexagon::M4_xor_xacc:
8320 case Hexagon::M5_vdmacbsu:
8321 case Hexagon::M5_vrmacbsu:
8322 case Hexagon::M5_vrmacbuu:
8323 case Hexagon::M7_dcmpyiw_acc:
8324 case Hexagon::M7_dcmpyiwc_acc:
8325 case Hexagon::M7_dcmpyrw_acc:
8326 case Hexagon::M7_dcmpyrwc_acc:
8327 case Hexagon::S2_insertp_rp: {
8328 // op: Rss32
8329 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8330 Value |= (op & 0x1f) << 16;
8331 // op: Rtt32
8332 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8333 Value |= (op & 0x1f) << 8;
8334 // op: Rxx32
8335 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8336 Value |= (op & 0x1f);
8337 break;
8338 }
8339 case Hexagon::A4_vrmaxh:
8340 case Hexagon::A4_vrmaxuh:
8341 case Hexagon::A4_vrmaxuw:
8342 case Hexagon::A4_vrmaxw:
8343 case Hexagon::A4_vrminh:
8344 case Hexagon::A4_vrminuh:
8345 case Hexagon::A4_vrminuw:
8346 case Hexagon::A4_vrminw: {
8347 // op: Rss32
8348 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8349 Value |= (op & 0x1f) << 16;
8350 // op: Ru32
8351 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8352 Value |= (op & 0x1f);
8353 // op: Rxx32
8354 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8355 Value |= (op & 0x1f) << 8;
8356 break;
8357 }
8358 case Hexagon::A5_ACS: {
8359 // op: Rss32
8360 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8361 Value |= (op & 0x1f) << 16;
8362 // op: Rtt32
8363 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
8364 Value |= (op & 0x1f) << 8;
8365 // op: Rxx32
8366 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8367 Value |= (op & 0x1f);
8368 // op: Pe4
8369 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8370 Value |= (op & 0x3) << 5;
8371 break;
8372 }
8373 case Hexagon::V6_vscattermh:
8374 case Hexagon::V6_vscattermh_add:
8375 case Hexagon::V6_vscattermw:
8376 case Hexagon::V6_vscattermw_add: {
8377 // op: Rt32
8378 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8379 Value |= (op & 0x1f) << 16;
8380 // op: Mu2
8381 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8382 Value |= (op & 0x1) << 13;
8383 // op: Vv32
8384 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8385 Value |= (op & 0x1f) << 8;
8386 // op: Vw32
8387 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8388 Value |= (op & 0x1f);
8389 break;
8390 }
8391 case Hexagon::V6_vgathermh:
8392 case Hexagon::V6_vgathermw: {
8393 // op: Rt32
8394 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8395 Value |= (op & 0x1f) << 16;
8396 // op: Mu2
8397 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8398 Value |= (op & 0x1) << 13;
8399 // op: Vv32
8400 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8401 Value |= (op & 0x1f);
8402 break;
8403 }
8404 case Hexagon::V6_vscattermhw:
8405 case Hexagon::V6_vscattermhw_add: {
8406 // op: Rt32
8407 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8408 Value |= (op & 0x1f) << 16;
8409 // op: Mu2
8410 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8411 Value |= (op & 0x1) << 13;
8412 // op: Vvv32
8413 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8414 Value |= (op & 0x1f) << 8;
8415 // op: Vw32
8416 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8417 Value |= (op & 0x1f);
8418 break;
8419 }
8420 case Hexagon::V6_vgathermhw: {
8421 // op: Rt32
8422 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8423 Value |= (op & 0x1f) << 16;
8424 // op: Mu2
8425 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8426 Value |= (op & 0x1) << 13;
8427 // op: Vvv32
8428 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8429 Value |= (op & 0x1f);
8430 break;
8431 }
8432 case Hexagon::V6_pred_scalar2:
8433 case Hexagon::V6_pred_scalar2v2: {
8434 // op: Rt32
8435 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8436 Value |= (op & 0x1f) << 16;
8437 // op: Qd4
8438 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8439 Value |= (op & 0x3);
8440 break;
8441 }
8442 case Hexagon::V6_lvsplatb:
8443 case Hexagon::V6_lvsplath:
8444 case Hexagon::V6_lvsplatw:
8445 case Hexagon::V6_zextract: {
8446 // op: Rt32
8447 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8448 Value |= (op & 0x1f) << 16;
8449 // op: Vd32
8450 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8451 Value |= (op & 0x1f);
8452 break;
8453 }
8454 case Hexagon::A2_addh_h16_hh:
8455 case Hexagon::A2_addh_h16_hl:
8456 case Hexagon::A2_addh_h16_lh:
8457 case Hexagon::A2_addh_h16_ll:
8458 case Hexagon::A2_addh_h16_sat_hh:
8459 case Hexagon::A2_addh_h16_sat_hl:
8460 case Hexagon::A2_addh_h16_sat_lh:
8461 case Hexagon::A2_addh_h16_sat_ll:
8462 case Hexagon::A2_addh_l16_hl:
8463 case Hexagon::A2_addh_l16_ll:
8464 case Hexagon::A2_addh_l16_sat_hl:
8465 case Hexagon::A2_addh_l16_sat_ll:
8466 case Hexagon::A2_combine_hh:
8467 case Hexagon::A2_combine_hl:
8468 case Hexagon::A2_combine_lh:
8469 case Hexagon::A2_combine_ll:
8470 case Hexagon::A2_min:
8471 case Hexagon::A2_minu:
8472 case Hexagon::A2_sub:
8473 case Hexagon::A2_subh_h16_hh:
8474 case Hexagon::A2_subh_h16_hl:
8475 case Hexagon::A2_subh_h16_lh:
8476 case Hexagon::A2_subh_h16_ll:
8477 case Hexagon::A2_subh_h16_sat_hh:
8478 case Hexagon::A2_subh_h16_sat_hl:
8479 case Hexagon::A2_subh_h16_sat_lh:
8480 case Hexagon::A2_subh_h16_sat_ll:
8481 case Hexagon::A2_subh_l16_hl:
8482 case Hexagon::A2_subh_l16_ll:
8483 case Hexagon::A2_subh_l16_sat_hl:
8484 case Hexagon::A2_subh_l16_sat_ll:
8485 case Hexagon::A2_subsat:
8486 case Hexagon::A2_svnavgh:
8487 case Hexagon::A2_svsubh:
8488 case Hexagon::A2_svsubhs:
8489 case Hexagon::A2_svsubuhs:
8490 case Hexagon::A4_andn:
8491 case Hexagon::A4_orn:
8492 case Hexagon::dep_A2_subsat: {
8493 // op: Rt32
8494 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8495 Value |= (op & 0x1f) << 8;
8496 // op: Rs32
8497 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8498 Value |= (op & 0x1f) << 16;
8499 // op: Rd32
8500 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8501 Value |= (op & 0x1f);
8502 break;
8503 }
8504 case Hexagon::V6_vinsertwr: {
8505 // op: Rt32
8506 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8507 Value |= (op & 0x1f) << 16;
8508 // op: Vx32
8509 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8510 Value |= (op & 0x1f);
8511 break;
8512 }
8513 case Hexagon::M2_subacc: {
8514 // op: Rt32
8515 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8516 Value |= (op & 0x1f) << 8;
8517 // op: Rs32
8518 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8519 Value |= (op & 0x1f) << 16;
8520 // op: Rx32
8521 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8522 Value |= (op & 0x1f);
8523 break;
8524 }
8525 case Hexagon::V6_vdeal:
8526 case Hexagon::V6_vshuff: {
8527 // op: Rt32
8528 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
8529 Value |= (op & 0x1f) << 16;
8530 // op: Vy32
8531 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8532 Value |= (op & 0x1f) << 8;
8533 // op: Vx32
8534 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8535 Value |= (op & 0x1f);
8536 break;
8537 }
8538 case Hexagon::Y6_l2gcleaninvpa:
8539 case Hexagon::Y6_l2gcleanpa: {
8540 // op: Rtt32
8541 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8542 Value |= (op & 0x1f) << 8;
8543 break;
8544 }
8545 case Hexagon::S2_valignrb: {
8546 // op: Rtt32
8547 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8548 Value |= (op & 0x1f) << 8;
8549 // op: Rss32
8550 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8551 Value |= (op & 0x1f) << 16;
8552 // op: Pu4
8553 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8554 Value |= (op & 0x3) << 5;
8555 // op: Rdd32
8556 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8557 Value |= (op & 0x1f);
8558 break;
8559 }
8560 case Hexagon::A2_minp:
8561 case Hexagon::A2_minup:
8562 case Hexagon::A2_subp:
8563 case Hexagon::A2_vmaxb:
8564 case Hexagon::A2_vmaxh:
8565 case Hexagon::A2_vmaxub:
8566 case Hexagon::A2_vmaxuh:
8567 case Hexagon::A2_vmaxuw:
8568 case Hexagon::A2_vmaxw:
8569 case Hexagon::A2_vminb:
8570 case Hexagon::A2_vminh:
8571 case Hexagon::A2_vminub:
8572 case Hexagon::A2_vminuh:
8573 case Hexagon::A2_vminuw:
8574 case Hexagon::A2_vminw:
8575 case Hexagon::A2_vnavgh:
8576 case Hexagon::A2_vnavghcr:
8577 case Hexagon::A2_vnavghr:
8578 case Hexagon::A2_vnavgw:
8579 case Hexagon::A2_vnavgwcr:
8580 case Hexagon::A2_vnavgwr:
8581 case Hexagon::A2_vsubh:
8582 case Hexagon::A2_vsubhs:
8583 case Hexagon::A2_vsubub:
8584 case Hexagon::A2_vsububs:
8585 case Hexagon::A2_vsubuhs:
8586 case Hexagon::A2_vsubw:
8587 case Hexagon::A2_vsubws:
8588 case Hexagon::A4_andnp:
8589 case Hexagon::A4_ornp:
8590 case Hexagon::M2_vabsdiffh:
8591 case Hexagon::M2_vabsdiffw:
8592 case Hexagon::M6_vabsdiffb:
8593 case Hexagon::M6_vabsdiffub:
8594 case Hexagon::S2_shuffob:
8595 case Hexagon::S2_shuffoh: {
8596 // op: Rtt32
8597 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8598 Value |= (op & 0x1f) << 8;
8599 // op: Rss32
8600 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8601 Value |= (op & 0x1f) << 16;
8602 // op: Rdd32
8603 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8604 Value |= (op & 0x1f);
8605 break;
8606 }
8607 case Hexagon::A6_vminub_RdP: {
8608 // op: Rtt32
8609 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8610 Value |= (op & 0x1f) << 8;
8611 // op: Rss32
8612 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8613 Value |= (op & 0x1f) << 16;
8614 // op: Rdd32
8615 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8616 Value |= (op & 0x1f);
8617 // op: Pe4
8618 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8619 Value |= (op & 0x3) << 5;
8620 break;
8621 }
8622 case Hexagon::M4_mpyrr_addr: {
8623 // op: Ru32
8624 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8625 Value |= (op & 0x1f);
8626 // op: Rs32
8627 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8628 Value |= (op & 0x1f) << 16;
8629 // op: Ry32
8630 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8631 Value |= (op & 0x1f) << 8;
8632 break;
8633 }
8634 case Hexagon::Y2_crswap0:
8635 case Hexagon::Y4_crswap1: {
8636 // op: Rx32
8637 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8638 Value |= (op & 0x1f) << 16;
8639 break;
8640 }
8641 case Hexagon::Y4_crswap10: {
8642 // op: Rxx32
8643 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8644 Value |= (op & 0x1f) << 16;
8645 break;
8646 }
8647 case Hexagon::Y2_tfrscrr: {
8648 // op: Ss128
8649 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8650 Value |= (op & 0x7f) << 16;
8651 // op: Rd32
8652 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8653 Value |= (op & 0x1f);
8654 break;
8655 }
8656 case Hexagon::Y4_tfrscpp: {
8657 // op: Sss128
8658 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8659 Value |= (op & 0x7f) << 16;
8660 // op: Rdd32
8661 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8662 Value |= (op & 0x1f);
8663 break;
8664 }
8665 case Hexagon::V6_extractw: {
8666 // op: Vu32
8667 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8668 Value |= (op & 0x1f) << 8;
8669 // op: Rs32
8670 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8671 Value |= (op & 0x1f) << 16;
8672 // op: Rd32
8673 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8674 Value |= (op & 0x1f);
8675 break;
8676 }
8677 case Hexagon::V6_vandvrt: {
8678 // op: Vu32
8679 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8680 Value |= (op & 0x1f) << 8;
8681 // op: Rt32
8682 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8683 Value |= (op & 0x1f) << 16;
8684 // op: Qd4
8685 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8686 Value |= (op & 0x3);
8687 break;
8688 }
8689 case Hexagon::V6_get_qfext:
8690 case Hexagon::V6_set_qfext:
8691 case Hexagon::V6_vaslh:
8692 case Hexagon::V6_vaslw:
8693 case Hexagon::V6_vasrh:
8694 case Hexagon::V6_vasrw:
8695 case Hexagon::V6_vdmpybus:
8696 case Hexagon::V6_vdmpyhb:
8697 case Hexagon::V6_vdmpyhsat:
8698 case Hexagon::V6_vdmpyhsusat:
8699 case Hexagon::V6_vlsrb:
8700 case Hexagon::V6_vlsrh:
8701 case Hexagon::V6_vlsrw:
8702 case Hexagon::V6_vmpy_rt_hf:
8703 case Hexagon::V6_vmpy_rt_qf16:
8704 case Hexagon::V6_vmpy_rt_sf:
8705 case Hexagon::V6_vmpyhsrs:
8706 case Hexagon::V6_vmpyhss:
8707 case Hexagon::V6_vmpyihb:
8708 case Hexagon::V6_vmpyiwb:
8709 case Hexagon::V6_vmpyiwh:
8710 case Hexagon::V6_vmpyiwub:
8711 case Hexagon::V6_vmpyuhe:
8712 case Hexagon::V6_vrmpybus:
8713 case Hexagon::V6_vrmpyub:
8714 case Hexagon::V6_vror: {
8715 // op: Vu32
8716 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8717 Value |= (op & 0x1f) << 8;
8718 // op: Rt32
8719 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8720 Value |= (op & 0x1f) << 16;
8721 // op: Vd32
8722 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8723 Value |= (op & 0x1f);
8724 break;
8725 }
8726 case Hexagon::V6_vmpybus:
8727 case Hexagon::V6_vmpyh:
8728 case Hexagon::V6_vmpyub:
8729 case Hexagon::V6_vmpyuh: {
8730 // op: Vu32
8731 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8732 Value |= (op & 0x1f) << 8;
8733 // op: Rt32
8734 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8735 Value |= (op & 0x1f) << 16;
8736 // op: Vdd32
8737 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8738 Value |= (op & 0x1f);
8739 break;
8740 }
8741 case Hexagon::V6_vrmpyzbb_rt:
8742 case Hexagon::V6_vrmpyzbub_rt:
8743 case Hexagon::V6_vrmpyzcb_rt:
8744 case Hexagon::V6_vrmpyzcbs_rt:
8745 case Hexagon::V6_vrmpyznb_rt: {
8746 // op: Vu32
8747 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8748 Value |= (op & 0x1f) << 8;
8749 // op: Rt8
8750 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8751 Value |= (op & 0x7) << 16;
8752 // op: Vdddd32
8753 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8754 Value |= (op & 0x1f);
8755 break;
8756 }
8757 case Hexagon::V6_vlut4: {
8758 // op: Vu32
8759 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8760 Value |= (op & 0x1f) << 8;
8761 // op: Rtt32
8762 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8763 Value |= (op & 0x1f) << 16;
8764 // op: Vd32
8765 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8766 Value |= (op & 0x1f);
8767 break;
8768 }
8769 case Hexagon::V6_vrmpybub_rtt:
8770 case Hexagon::V6_vrmpyub_rtt: {
8771 // op: Vu32
8772 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8773 Value |= (op & 0x1f) << 8;
8774 // op: Rtt32
8775 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8776 Value |= (op & 0x1f) << 16;
8777 // op: Vdd32
8778 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8779 Value |= (op & 0x1f);
8780 break;
8781 }
8782 case Hexagon::V6_vabs_f8:
8783 case Hexagon::V6_vabs_hf:
8784 case Hexagon::V6_vabs_qf16_hf:
8785 case Hexagon::V6_vabs_qf16_qf16:
8786 case Hexagon::V6_vabs_qf32_qf32:
8787 case Hexagon::V6_vabs_qf32_sf:
8788 case Hexagon::V6_vabs_sf:
8789 case Hexagon::V6_vabsb:
8790 case Hexagon::V6_vabsb_sat:
8791 case Hexagon::V6_vabsh:
8792 case Hexagon::V6_vabsh_sat:
8793 case Hexagon::V6_vabsw:
8794 case Hexagon::V6_vabsw_sat:
8795 case Hexagon::V6_vassign:
8796 case Hexagon::V6_vassign_fp:
8797 case Hexagon::V6_vassign_tmp:
8798 case Hexagon::V6_vcl0h:
8799 case Hexagon::V6_vcl0w:
8800 case Hexagon::V6_vconv_f8_qf16:
8801 case Hexagon::V6_vconv_h_hf:
8802 case Hexagon::V6_vconv_h_hf_rnd:
8803 case Hexagon::V6_vconv_hf_h:
8804 case Hexagon::V6_vconv_hf_qf16:
8805 case Hexagon::V6_vconv_qf16_hf:
8806 case Hexagon::V6_vconv_qf16_qf16:
8807 case Hexagon::V6_vconv_qf32_qf32:
8808 case Hexagon::V6_vconv_qf32_sf:
8809 case Hexagon::V6_vconv_sf_qf32:
8810 case Hexagon::V6_vconv_sf_w:
8811 case Hexagon::V6_vconv_w_sf:
8812 case Hexagon::V6_vcvt_h_hf:
8813 case Hexagon::V6_vcvt_hf_h:
8814 case Hexagon::V6_vcvt_hf_uh:
8815 case Hexagon::V6_vcvt_uh_hf:
8816 case Hexagon::V6_vdealb:
8817 case Hexagon::V6_vdealh:
8818 case Hexagon::V6_vfneg_f8:
8819 case Hexagon::V6_vfneg_hf:
8820 case Hexagon::V6_vfneg_sf:
8821 case Hexagon::V6_vilog2_hf:
8822 case Hexagon::V6_vilog2_qf16:
8823 case Hexagon::V6_vilog2_qf32:
8824 case Hexagon::V6_vilog2_sf:
8825 case Hexagon::V6_vneg_qf16_hf:
8826 case Hexagon::V6_vneg_qf16_qf16:
8827 case Hexagon::V6_vneg_qf32_qf32:
8828 case Hexagon::V6_vneg_qf32_sf:
8829 case Hexagon::V6_vnormamth:
8830 case Hexagon::V6_vnormamtw:
8831 case Hexagon::V6_vnot:
8832 case Hexagon::V6_vpopcounth:
8833 case Hexagon::V6_vshuffb:
8834 case Hexagon::V6_vshuffh: {
8835 // op: Vu32
8836 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8837 Value |= (op & 0x1f) << 8;
8838 // op: Vd32
8839 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8840 Value |= (op & 0x1f);
8841 break;
8842 }
8843 case Hexagon::V6_vconv_qf16_f8:
8844 case Hexagon::V6_vcvt2_hf_b:
8845 case Hexagon::V6_vcvt2_hf_ub:
8846 case Hexagon::V6_vcvt_hf_b:
8847 case Hexagon::V6_vcvt_hf_f8:
8848 case Hexagon::V6_vcvt_hf_ub:
8849 case Hexagon::V6_vcvt_sf_hf:
8850 case Hexagon::V6_vsb:
8851 case Hexagon::V6_vsh:
8852 case Hexagon::V6_vunpackb:
8853 case Hexagon::V6_vunpackh:
8854 case Hexagon::V6_vunpackub:
8855 case Hexagon::V6_vunpackuh:
8856 case Hexagon::V6_vzb:
8857 case Hexagon::V6_vzh: {
8858 // op: Vu32
8859 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8860 Value |= (op & 0x1f) << 8;
8861 // op: Vdd32
8862 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8863 Value |= (op & 0x1f);
8864 break;
8865 }
8866 case Hexagon::V6_veqb:
8867 case Hexagon::V6_veqh:
8868 case Hexagon::V6_veqhf:
8869 case Hexagon::V6_veqsf:
8870 case Hexagon::V6_veqw:
8871 case Hexagon::V6_vgtb:
8872 case Hexagon::V6_vgtbf:
8873 case Hexagon::V6_vgth:
8874 case Hexagon::V6_vgthf:
8875 case Hexagon::V6_vgtsf:
8876 case Hexagon::V6_vgtub:
8877 case Hexagon::V6_vgtuh:
8878 case Hexagon::V6_vgtuw:
8879 case Hexagon::V6_vgtw: {
8880 // op: Vu32
8881 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8882 Value |= (op & 0x1f) << 8;
8883 // op: Vv32
8884 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8885 Value |= (op & 0x1f) << 16;
8886 // op: Qd4
8887 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8888 Value |= (op & 0x3);
8889 break;
8890 }
8891 case Hexagon::V6_vaddcarrysat: {
8892 // op: Vu32
8893 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
8894 Value |= (op & 0x1f) << 8;
8895 // op: Vv32
8896 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
8897 Value |= (op & 0x1f) << 16;
8898 // op: Qs4
8899 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
8900 Value |= (op & 0x3) << 5;
8901 // op: Vd32
8902 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
8903 Value |= (op & 0x1f);
8904 break;
8905 }
8906 case Hexagon::V6_vabsdiffh:
8907 case Hexagon::V6_vabsdiffub:
8908 case Hexagon::V6_vabsdiffuh:
8909 case Hexagon::V6_vabsdiffw:
8910 case Hexagon::V6_vadd_hf:
8911 case Hexagon::V6_vadd_hf_hf:
8912 case Hexagon::V6_vadd_qf16:
8913 case Hexagon::V6_vadd_qf16_mix:
8914 case Hexagon::V6_vadd_qf32:
8915 case Hexagon::V6_vadd_qf32_mix:
8916 case Hexagon::V6_vadd_sf:
8917 case Hexagon::V6_vadd_sf_sf:
8918 case Hexagon::V6_vaddb:
8919 case Hexagon::V6_vaddbsat:
8920 case Hexagon::V6_vaddclbh:
8921 case Hexagon::V6_vaddclbw:
8922 case Hexagon::V6_vaddh:
8923 case Hexagon::V6_vaddhsat:
8924 case Hexagon::V6_vaddubsat:
8925 case Hexagon::V6_vaddububb_sat:
8926 case Hexagon::V6_vadduhsat:
8927 case Hexagon::V6_vadduwsat:
8928 case Hexagon::V6_vaddw:
8929 case Hexagon::V6_vaddwsat:
8930 case Hexagon::V6_vand:
8931 case Hexagon::V6_vaslhv:
8932 case Hexagon::V6_vaslwv:
8933 case Hexagon::V6_vasrhv:
8934 case Hexagon::V6_vasrwv:
8935 case Hexagon::V6_vavgb:
8936 case Hexagon::V6_vavgbrnd:
8937 case Hexagon::V6_vavgh:
8938 case Hexagon::V6_vavghrnd:
8939 case Hexagon::V6_vavgub:
8940 case Hexagon::V6_vavgubrnd:
8941 case Hexagon::V6_vavguh:
8942 case Hexagon::V6_vavguhrnd:
8943 case Hexagon::V6_vavguw:
8944 case Hexagon::V6_vavguwrnd:
8945 case Hexagon::V6_vavgw:
8946 case Hexagon::V6_vavgwrnd:
8947 case Hexagon::V6_vcvt2_b_hf:
8948 case Hexagon::V6_vcvt2_ub_hf:
8949 case Hexagon::V6_vcvt_b_hf:
8950 case Hexagon::V6_vcvt_bf_sf:
8951 case Hexagon::V6_vcvt_f8_hf:
8952 case Hexagon::V6_vcvt_hf_sf:
8953 case Hexagon::V6_vcvt_ub_hf:
8954 case Hexagon::V6_vdealb4w:
8955 case Hexagon::V6_vdelta:
8956 case Hexagon::V6_vdmpy_sf_hf:
8957 case Hexagon::V6_vdmpyhvsat:
8958 case Hexagon::V6_vfmax_f8:
8959 case Hexagon::V6_vfmax_hf:
8960 case Hexagon::V6_vfmax_sf:
8961 case Hexagon::V6_vfmin_f8:
8962 case Hexagon::V6_vfmin_hf:
8963 case Hexagon::V6_vfmin_sf:
8964 case Hexagon::V6_vlsrhv:
8965 case Hexagon::V6_vlsrwv:
8966 case Hexagon::V6_vmax_bf:
8967 case Hexagon::V6_vmax_hf:
8968 case Hexagon::V6_vmax_sf:
8969 case Hexagon::V6_vmaxb:
8970 case Hexagon::V6_vmaxh:
8971 case Hexagon::V6_vmaxub:
8972 case Hexagon::V6_vmaxuh:
8973 case Hexagon::V6_vmaxw:
8974 case Hexagon::V6_vmerge_qf:
8975 case Hexagon::V6_vmin_bf:
8976 case Hexagon::V6_vmin_hf:
8977 case Hexagon::V6_vmin_sf:
8978 case Hexagon::V6_vminb:
8979 case Hexagon::V6_vminh:
8980 case Hexagon::V6_vminub:
8981 case Hexagon::V6_vminuh:
8982 case Hexagon::V6_vminw:
8983 case Hexagon::V6_vmpy_hf_hf:
8984 case Hexagon::V6_vmpy_qf16:
8985 case Hexagon::V6_vmpy_qf16_hf:
8986 case Hexagon::V6_vmpy_qf16_mix_hf:
8987 case Hexagon::V6_vmpy_qf32:
8988 case Hexagon::V6_vmpy_qf32_sf:
8989 case Hexagon::V6_vmpy_sf_sf:
8990 case Hexagon::V6_vmpyewuh:
8991 case Hexagon::V6_vmpyhvsrs:
8992 case Hexagon::V6_vmpyieoh:
8993 case Hexagon::V6_vmpyiewuh:
8994 case Hexagon::V6_vmpyih:
8995 case Hexagon::V6_vmpyiowh:
8996 case Hexagon::V6_vmpyowh:
8997 case Hexagon::V6_vmpyowh_rnd:
8998 case Hexagon::V6_vmpyuhvs:
8999 case Hexagon::V6_vnavgb:
9000 case Hexagon::V6_vnavgh:
9001 case Hexagon::V6_vnavgub:
9002 case Hexagon::V6_vnavgw:
9003 case Hexagon::V6_vor:
9004 case Hexagon::V6_vpackeb:
9005 case Hexagon::V6_vpackeh:
9006 case Hexagon::V6_vpackhb_sat:
9007 case Hexagon::V6_vpackhub_sat:
9008 case Hexagon::V6_vpackob:
9009 case Hexagon::V6_vpackoh:
9010 case Hexagon::V6_vpackwh_sat:
9011 case Hexagon::V6_vpackwuh_sat:
9012 case Hexagon::V6_vrdelta:
9013 case Hexagon::V6_vrmpybusv:
9014 case Hexagon::V6_vrmpybv:
9015 case Hexagon::V6_vrmpyubv:
9016 case Hexagon::V6_vrotr:
9017 case Hexagon::V6_vroundhb:
9018 case Hexagon::V6_vroundhub:
9019 case Hexagon::V6_vrounduhub:
9020 case Hexagon::V6_vrounduwuh:
9021 case Hexagon::V6_vroundwh:
9022 case Hexagon::V6_vroundwuh:
9023 case Hexagon::V6_vsatdw:
9024 case Hexagon::V6_vsathub:
9025 case Hexagon::V6_vsatuwuh:
9026 case Hexagon::V6_vsatwh:
9027 case Hexagon::V6_vshufeh:
9028 case Hexagon::V6_vshuffeb:
9029 case Hexagon::V6_vshuffob:
9030 case Hexagon::V6_vshufoh:
9031 case Hexagon::V6_vsub_hf:
9032 case Hexagon::V6_vsub_hf_hf:
9033 case Hexagon::V6_vsub_hf_mix:
9034 case Hexagon::V6_vsub_qf16:
9035 case Hexagon::V6_vsub_qf16_mix:
9036 case Hexagon::V6_vsub_qf32:
9037 case Hexagon::V6_vsub_qf32_mix:
9038 case Hexagon::V6_vsub_sf:
9039 case Hexagon::V6_vsub_sf_mix:
9040 case Hexagon::V6_vsub_sf_sf:
9041 case Hexagon::V6_vsubb:
9042 case Hexagon::V6_vsubbsat:
9043 case Hexagon::V6_vsubh:
9044 case Hexagon::V6_vsubhsat:
9045 case Hexagon::V6_vsububsat:
9046 case Hexagon::V6_vsubububb_sat:
9047 case Hexagon::V6_vsubuhsat:
9048 case Hexagon::V6_vsubuwsat:
9049 case Hexagon::V6_vsubw:
9050 case Hexagon::V6_vsubwsat:
9051 case Hexagon::V6_vxor: {
9052 // op: Vu32
9053 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9054 Value |= (op & 0x1f) << 8;
9055 // op: Vv32
9056 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9057 Value |= (op & 0x1f) << 16;
9058 // op: Vd32
9059 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9060 Value |= (op & 0x1f);
9061 break;
9062 }
9063 case Hexagon::V6_vadd_hf_f8:
9064 case Hexagon::V6_vadd_sf_bf:
9065 case Hexagon::V6_vadd_sf_hf:
9066 case Hexagon::V6_vaddhw:
9067 case Hexagon::V6_vaddubh:
9068 case Hexagon::V6_vadduhw:
9069 case Hexagon::V6_vcombine:
9070 case Hexagon::V6_vcombine_tmp:
9071 case Hexagon::V6_vmpy_hf_f8:
9072 case Hexagon::V6_vmpy_qf32_hf:
9073 case Hexagon::V6_vmpy_qf32_mix_hf:
9074 case Hexagon::V6_vmpy_qf32_qf16:
9075 case Hexagon::V6_vmpy_sf_bf:
9076 case Hexagon::V6_vmpy_sf_hf:
9077 case Hexagon::V6_vmpybusv:
9078 case Hexagon::V6_vmpybv:
9079 case Hexagon::V6_vmpyewuh_64:
9080 case Hexagon::V6_vmpyhus:
9081 case Hexagon::V6_vmpyhv:
9082 case Hexagon::V6_vmpyubv:
9083 case Hexagon::V6_vmpyuhv:
9084 case Hexagon::V6_vshufoeb:
9085 case Hexagon::V6_vshufoeh:
9086 case Hexagon::V6_vsub_hf_f8:
9087 case Hexagon::V6_vsub_sf_bf:
9088 case Hexagon::V6_vsub_sf_hf:
9089 case Hexagon::V6_vsubhw:
9090 case Hexagon::V6_vsububh:
9091 case Hexagon::V6_vsubuhw: {
9092 // op: Vu32
9093 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9094 Value |= (op & 0x1f) << 8;
9095 // op: Vv32
9096 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9097 Value |= (op & 0x1f) << 16;
9098 // op: Vdd32
9099 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9100 Value |= (op & 0x1f);
9101 break;
9102 }
9103 case Hexagon::V6_valign4:
9104 case Hexagon::V6_valignb:
9105 case Hexagon::V6_vasrhbrndsat:
9106 case Hexagon::V6_vasrhbsat:
9107 case Hexagon::V6_vasrhubrndsat:
9108 case Hexagon::V6_vasrhubsat:
9109 case Hexagon::V6_vasruhubrndsat:
9110 case Hexagon::V6_vasruhubsat:
9111 case Hexagon::V6_vasruwuhrndsat:
9112 case Hexagon::V6_vasruwuhsat:
9113 case Hexagon::V6_vasrwh:
9114 case Hexagon::V6_vasrwhrndsat:
9115 case Hexagon::V6_vasrwhsat:
9116 case Hexagon::V6_vasrwuhrndsat:
9117 case Hexagon::V6_vasrwuhsat:
9118 case Hexagon::V6_vlalignb:
9119 case Hexagon::V6_vlutvvb:
9120 case Hexagon::V6_vlutvvb_nm: {
9121 // op: Vu32
9122 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9123 Value |= (op & 0x1f) << 8;
9124 // op: Vv32
9125 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9126 Value |= (op & 0x1f) << 19;
9127 // op: Rt8
9128 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9129 Value |= (op & 0x7) << 16;
9130 // op: Vd32
9131 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9132 Value |= (op & 0x1f);
9133 break;
9134 }
9135 case Hexagon::V6_vdealvdd:
9136 case Hexagon::V6_vlutvwh:
9137 case Hexagon::V6_vlutvwh_nm:
9138 case Hexagon::V6_vshuffvdd: {
9139 // op: Vu32
9140 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9141 Value |= (op & 0x1f) << 8;
9142 // op: Vv32
9143 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9144 Value |= (op & 0x1f) << 19;
9145 // op: Rt8
9146 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9147 Value |= (op & 0x7) << 16;
9148 // op: Vdd32
9149 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9150 Value |= (op & 0x1f);
9151 break;
9152 }
9153 case Hexagon::V6_vandvrt_acc: {
9154 // op: Vu32
9155 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9156 Value |= (op & 0x1f) << 8;
9157 // op: Rt32
9158 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9159 Value |= (op & 0x1f) << 16;
9160 // op: Qx4
9161 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9162 Value |= (op & 0x3);
9163 break;
9164 }
9165 case Hexagon::V6_get_qfext_oracc:
9166 case Hexagon::V6_vaslh_acc:
9167 case Hexagon::V6_vaslw_acc:
9168 case Hexagon::V6_vasrh_acc:
9169 case Hexagon::V6_vasrw_acc:
9170 case Hexagon::V6_vdmpybus_acc:
9171 case Hexagon::V6_vdmpyhb_acc:
9172 case Hexagon::V6_vdmpyhsat_acc:
9173 case Hexagon::V6_vdmpyhsusat_acc:
9174 case Hexagon::V6_vmpyihb_acc:
9175 case Hexagon::V6_vmpyiwb_acc:
9176 case Hexagon::V6_vmpyiwh_acc:
9177 case Hexagon::V6_vmpyiwub_acc:
9178 case Hexagon::V6_vmpyuhe_acc:
9179 case Hexagon::V6_vrmpybus_acc:
9180 case Hexagon::V6_vrmpyub_acc: {
9181 // op: Vu32
9182 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9183 Value |= (op & 0x1f) << 8;
9184 // op: Rt32
9185 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9186 Value |= (op & 0x1f) << 16;
9187 // op: Vx32
9188 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9189 Value |= (op & 0x1f);
9190 break;
9191 }
9192 case Hexagon::V6_vmpybus_acc:
9193 case Hexagon::V6_vmpyh_acc:
9194 case Hexagon::V6_vmpyhsat_acc:
9195 case Hexagon::V6_vmpyub_acc:
9196 case Hexagon::V6_vmpyuh_acc: {
9197 // op: Vu32
9198 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9199 Value |= (op & 0x1f) << 8;
9200 // op: Rt32
9201 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9202 Value |= (op & 0x1f) << 16;
9203 // op: Vxx32
9204 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9205 Value |= (op & 0x1f);
9206 break;
9207 }
9208 case Hexagon::V6_vrmpyzbb_rt_acc:
9209 case Hexagon::V6_vrmpyzbub_rt_acc:
9210 case Hexagon::V6_vrmpyzcb_rt_acc:
9211 case Hexagon::V6_vrmpyzcbs_rt_acc:
9212 case Hexagon::V6_vrmpyznb_rt_acc: {
9213 // op: Vu32
9214 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9215 Value |= (op & 0x1f) << 8;
9216 // op: Rt8
9217 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9218 Value |= (op & 0x7) << 16;
9219 // op: Vyyyy32
9220 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9221 Value |= (op & 0x1f);
9222 break;
9223 }
9224 case Hexagon::V6_vmpahhsat:
9225 case Hexagon::V6_vmpauhuhsat:
9226 case Hexagon::V6_vmpsuhuhsat: {
9227 // op: Vu32
9228 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9229 Value |= (op & 0x1f) << 8;
9230 // op: Rtt32
9231 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9232 Value |= (op & 0x1f) << 16;
9233 // op: Vx32
9234 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9235 Value |= (op & 0x1f);
9236 break;
9237 }
9238 case Hexagon::V6_vrmpybub_rtt_acc:
9239 case Hexagon::V6_vrmpyub_rtt_acc: {
9240 // op: Vu32
9241 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9242 Value |= (op & 0x1f) << 8;
9243 // op: Rtt32
9244 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9245 Value |= (op & 0x1f) << 16;
9246 // op: Vxx32
9247 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9248 Value |= (op & 0x1f);
9249 break;
9250 }
9251 case Hexagon::V6_vrmpyzbb_rx:
9252 case Hexagon::V6_vrmpyzbub_rx:
9253 case Hexagon::V6_vrmpyzcb_rx:
9254 case Hexagon::V6_vrmpyzcbs_rx:
9255 case Hexagon::V6_vrmpyznb_rx: {
9256 // op: Vu32
9257 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9258 Value |= (op & 0x1f) << 8;
9259 // op: Vdddd32
9260 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9261 Value |= (op & 0x1f);
9262 // op: Rx8
9263 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9264 Value |= (op & 0x7) << 16;
9265 break;
9266 }
9267 case Hexagon::V6_veqb_and:
9268 case Hexagon::V6_veqb_or:
9269 case Hexagon::V6_veqb_xor:
9270 case Hexagon::V6_veqh_and:
9271 case Hexagon::V6_veqh_or:
9272 case Hexagon::V6_veqh_xor:
9273 case Hexagon::V6_veqhf_and:
9274 case Hexagon::V6_veqhf_or:
9275 case Hexagon::V6_veqhf_xor:
9276 case Hexagon::V6_veqsf_and:
9277 case Hexagon::V6_veqsf_or:
9278 case Hexagon::V6_veqsf_xor:
9279 case Hexagon::V6_veqw_and:
9280 case Hexagon::V6_veqw_or:
9281 case Hexagon::V6_veqw_xor:
9282 case Hexagon::V6_vgtb_and:
9283 case Hexagon::V6_vgtb_or:
9284 case Hexagon::V6_vgtb_xor:
9285 case Hexagon::V6_vgtbf_and:
9286 case Hexagon::V6_vgtbf_or:
9287 case Hexagon::V6_vgtbf_xor:
9288 case Hexagon::V6_vgth_and:
9289 case Hexagon::V6_vgth_or:
9290 case Hexagon::V6_vgth_xor:
9291 case Hexagon::V6_vgthf_and:
9292 case Hexagon::V6_vgthf_or:
9293 case Hexagon::V6_vgthf_xor:
9294 case Hexagon::V6_vgtsf_and:
9295 case Hexagon::V6_vgtsf_or:
9296 case Hexagon::V6_vgtsf_xor:
9297 case Hexagon::V6_vgtub_and:
9298 case Hexagon::V6_vgtub_or:
9299 case Hexagon::V6_vgtub_xor:
9300 case Hexagon::V6_vgtuh_and:
9301 case Hexagon::V6_vgtuh_or:
9302 case Hexagon::V6_vgtuh_xor:
9303 case Hexagon::V6_vgtuw_and:
9304 case Hexagon::V6_vgtuw_or:
9305 case Hexagon::V6_vgtuw_xor:
9306 case Hexagon::V6_vgtw_and:
9307 case Hexagon::V6_vgtw_or:
9308 case Hexagon::V6_vgtw_xor: {
9309 // op: Vu32
9310 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9311 Value |= (op & 0x1f) << 8;
9312 // op: Vv32
9313 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9314 Value |= (op & 0x1f) << 16;
9315 // op: Qx4
9316 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9317 Value |= (op & 0x3);
9318 break;
9319 }
9320 case Hexagon::V6_vaddcarryo:
9321 case Hexagon::V6_vsubcarryo: {
9322 // op: Vu32
9323 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9324 Value |= (op & 0x1f) << 8;
9325 // op: Vv32
9326 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9327 Value |= (op & 0x1f) << 16;
9328 // op: Vd32
9329 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9330 Value |= (op & 0x1f);
9331 // op: Qe4
9332 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9333 Value |= (op & 0x3) << 5;
9334 break;
9335 }
9336 case Hexagon::V6_vaddcarry:
9337 case Hexagon::V6_vsubcarry: {
9338 // op: Vu32
9339 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9340 Value |= (op & 0x1f) << 8;
9341 // op: Vv32
9342 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9343 Value |= (op & 0x1f) << 16;
9344 // op: Vd32
9345 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9346 Value |= (op & 0x1f);
9347 // op: Qx4
9348 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9349 Value |= (op & 0x3) << 5;
9350 break;
9351 }
9352 case Hexagon::V6_vdmpy_sf_hf_acc:
9353 case Hexagon::V6_vdmpyhvsat_acc:
9354 case Hexagon::V6_vmpy_hf_hf_acc:
9355 case Hexagon::V6_vmpyiewh_acc:
9356 case Hexagon::V6_vmpyiewuh_acc:
9357 case Hexagon::V6_vmpyih_acc:
9358 case Hexagon::V6_vmpyowh_rnd_sacc:
9359 case Hexagon::V6_vmpyowh_sacc:
9360 case Hexagon::V6_vrmpybusv_acc:
9361 case Hexagon::V6_vrmpybv_acc:
9362 case Hexagon::V6_vrmpyubv_acc: {
9363 // op: Vu32
9364 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9365 Value |= (op & 0x1f) << 8;
9366 // op: Vv32
9367 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9368 Value |= (op & 0x1f) << 16;
9369 // op: Vx32
9370 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9371 Value |= (op & 0x1f);
9372 break;
9373 }
9374 case Hexagon::V6_vaddhw_acc:
9375 case Hexagon::V6_vaddubh_acc:
9376 case Hexagon::V6_vadduhw_acc:
9377 case Hexagon::V6_vasr_into:
9378 case Hexagon::V6_vmpy_hf_f8_acc:
9379 case Hexagon::V6_vmpy_sf_bf_acc:
9380 case Hexagon::V6_vmpy_sf_hf_acc:
9381 case Hexagon::V6_vmpybusv_acc:
9382 case Hexagon::V6_vmpybv_acc:
9383 case Hexagon::V6_vmpyhus_acc:
9384 case Hexagon::V6_vmpyhv_acc:
9385 case Hexagon::V6_vmpyowh_64_acc:
9386 case Hexagon::V6_vmpyubv_acc:
9387 case Hexagon::V6_vmpyuhv_acc: {
9388 // op: Vu32
9389 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9390 Value |= (op & 0x1f) << 8;
9391 // op: Vv32
9392 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9393 Value |= (op & 0x1f) << 16;
9394 // op: Vxx32
9395 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9396 Value |= (op & 0x1f);
9397 break;
9398 }
9399 case Hexagon::V6_vlutvvb_oracc: {
9400 // op: Vu32
9401 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9402 Value |= (op & 0x1f) << 8;
9403 // op: Vv32
9404 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9405 Value |= (op & 0x1f) << 19;
9406 // op: Rt8
9407 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
9408 Value |= (op & 0x7) << 16;
9409 // op: Vx32
9410 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9411 Value |= (op & 0x1f);
9412 break;
9413 }
9414 case Hexagon::V6_vlutvwh_oracc: {
9415 // op: Vu32
9416 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9417 Value |= (op & 0x1f) << 8;
9418 // op: Vv32
9419 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9420 Value |= (op & 0x1f) << 19;
9421 // op: Rt8
9422 op = getMachineOpValue(MI, MO: MI.getOperand(i: 4), Fixups, STI);
9423 Value |= (op & 0x7) << 16;
9424 // op: Vxx32
9425 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9426 Value |= (op & 0x1f);
9427 break;
9428 }
9429 case Hexagon::V6_vunpackob:
9430 case Hexagon::V6_vunpackoh: {
9431 // op: Vu32
9432 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9433 Value |= (op & 0x1f) << 8;
9434 // op: Vxx32
9435 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9436 Value |= (op & 0x1f);
9437 break;
9438 }
9439 case Hexagon::V6_vrmpyzbb_rx_acc:
9440 case Hexagon::V6_vrmpyzbub_rx_acc:
9441 case Hexagon::V6_vrmpyzcb_rx_acc:
9442 case Hexagon::V6_vrmpyzcbs_rx_acc:
9443 case Hexagon::V6_vrmpyznb_rx_acc: {
9444 // op: Vu32
9445 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9446 Value |= (op & 0x1f) << 8;
9447 // op: Vyyyy32
9448 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9449 Value |= (op & 0x1f);
9450 // op: Rx8
9451 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9452 Value |= (op & 0x7) << 16;
9453 break;
9454 }
9455 case Hexagon::V6_vdmpyhisat:
9456 case Hexagon::V6_vdmpyhsuisat: {
9457 // op: Vuu32
9458 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9459 Value |= (op & 0x1f) << 8;
9460 // op: Rt32
9461 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9462 Value |= (op & 0x1f) << 16;
9463 // op: Vd32
9464 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9465 Value |= (op & 0x1f);
9466 break;
9467 }
9468 case Hexagon::V6_vdmpybus_dv:
9469 case Hexagon::V6_vdmpyhb_dv:
9470 case Hexagon::V6_vdsaduh:
9471 case Hexagon::V6_vmpabus:
9472 case Hexagon::V6_vmpabuu:
9473 case Hexagon::V6_vmpahb:
9474 case Hexagon::V6_vmpauhb:
9475 case Hexagon::V6_vtmpyb:
9476 case Hexagon::V6_vtmpybus:
9477 case Hexagon::V6_vtmpyhb: {
9478 // op: Vuu32
9479 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9480 Value |= (op & 0x1f) << 8;
9481 // op: Rt32
9482 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9483 Value |= (op & 0x1f) << 16;
9484 // op: Vdd32
9485 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9486 Value |= (op & 0x1f);
9487 break;
9488 }
9489 case Hexagon::V6_vconv_bf_qf32:
9490 case Hexagon::V6_vconv_hf_qf32: {
9491 // op: Vuu32
9492 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9493 Value |= (op & 0x1f) << 8;
9494 // op: Vd32
9495 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9496 Value |= (op & 0x1f);
9497 break;
9498 }
9499 case Hexagon::V6_vasrvuhubrndsat:
9500 case Hexagon::V6_vasrvuhubsat:
9501 case Hexagon::V6_vasrvwuhrndsat:
9502 case Hexagon::V6_vasrvwuhsat: {
9503 // op: Vuu32
9504 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9505 Value |= (op & 0x1f) << 8;
9506 // op: Vv32
9507 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9508 Value |= (op & 0x1f) << 16;
9509 // op: Vd32
9510 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9511 Value |= (op & 0x1f);
9512 break;
9513 }
9514 case Hexagon::V6_vaddb_dv:
9515 case Hexagon::V6_vaddbsat_dv:
9516 case Hexagon::V6_vaddh_dv:
9517 case Hexagon::V6_vaddhsat_dv:
9518 case Hexagon::V6_vaddubsat_dv:
9519 case Hexagon::V6_vadduhsat_dv:
9520 case Hexagon::V6_vadduwsat_dv:
9521 case Hexagon::V6_vaddw_dv:
9522 case Hexagon::V6_vaddwsat_dv:
9523 case Hexagon::V6_vmpabusv:
9524 case Hexagon::V6_vmpabuuv:
9525 case Hexagon::V6_vsubb_dv:
9526 case Hexagon::V6_vsubbsat_dv:
9527 case Hexagon::V6_vsubh_dv:
9528 case Hexagon::V6_vsubhsat_dv:
9529 case Hexagon::V6_vsububsat_dv:
9530 case Hexagon::V6_vsubuhsat_dv:
9531 case Hexagon::V6_vsubuwsat_dv:
9532 case Hexagon::V6_vsubw_dv:
9533 case Hexagon::V6_vsubwsat_dv: {
9534 // op: Vuu32
9535 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9536 Value |= (op & 0x1f) << 8;
9537 // op: Vvv32
9538 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9539 Value |= (op & 0x1f) << 16;
9540 // op: Vdd32
9541 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9542 Value |= (op & 0x1f);
9543 break;
9544 }
9545 case Hexagon::V6_vdmpyhisat_acc:
9546 case Hexagon::V6_vdmpyhsuisat_acc: {
9547 // op: Vuu32
9548 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9549 Value |= (op & 0x1f) << 8;
9550 // op: Rt32
9551 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9552 Value |= (op & 0x1f) << 16;
9553 // op: Vx32
9554 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9555 Value |= (op & 0x1f);
9556 break;
9557 }
9558 case Hexagon::V6_vdmpybus_dv_acc:
9559 case Hexagon::V6_vdmpyhb_dv_acc:
9560 case Hexagon::V6_vdsaduh_acc:
9561 case Hexagon::V6_vmpabus_acc:
9562 case Hexagon::V6_vmpabuu_acc:
9563 case Hexagon::V6_vmpahb_acc:
9564 case Hexagon::V6_vmpauhb_acc:
9565 case Hexagon::V6_vtmpyb_acc:
9566 case Hexagon::V6_vtmpybus_acc:
9567 case Hexagon::V6_vtmpyhb_acc: {
9568 // op: Vuu32
9569 op = getMachineOpValue(MI, MO: MI.getOperand(i: 2), Fixups, STI);
9570 Value |= (op & 0x1f) << 8;
9571 // op: Rt32
9572 op = getMachineOpValue(MI, MO: MI.getOperand(i: 3), Fixups, STI);
9573 Value |= (op & 0x1f) << 16;
9574 // op: Vxx32
9575 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9576 Value |= (op & 0x1f);
9577 break;
9578 }
9579 case Hexagon::EH_RETURN_JMPR:
9580 case Hexagon::PS_jmpret: {
9581 // op: dst
9582 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9583 Value |= (op & 0x1f) << 16;
9584 break;
9585 }
9586 case Hexagon::HI:
9587 case Hexagon::LO: {
9588 // op: dst
9589 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9590 Value |= (op & 0x1f) << 16;
9591 // op: imm_value
9592 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9593 Value |= (op & 0xc000) << 8;
9594 Value |= (op & 0x3fff);
9595 break;
9596 }
9597 case Hexagon::CALLProfile:
9598 case Hexagon::PS_call_stk:
9599 case Hexagon::RESTORE_DEALLOC_BEFORE_TAILCALL_V4:
9600 case Hexagon::RESTORE_DEALLOC_BEFORE_TAILCALL_V4_EXT:
9601 case Hexagon::RESTORE_DEALLOC_BEFORE_TAILCALL_V4_EXT_PIC:
9602 case Hexagon::RESTORE_DEALLOC_BEFORE_TAILCALL_V4_PIC:
9603 case Hexagon::RESTORE_DEALLOC_RET_JMP_V4:
9604 case Hexagon::RESTORE_DEALLOC_RET_JMP_V4_EXT:
9605 case Hexagon::RESTORE_DEALLOC_RET_JMP_V4_EXT_PIC:
9606 case Hexagon::RESTORE_DEALLOC_RET_JMP_V4_PIC:
9607 case Hexagon::SAVE_REGISTERS_CALL_V4:
9608 case Hexagon::SAVE_REGISTERS_CALL_V4STK:
9609 case Hexagon::SAVE_REGISTERS_CALL_V4STK_EXT:
9610 case Hexagon::SAVE_REGISTERS_CALL_V4STK_EXT_PIC:
9611 case Hexagon::SAVE_REGISTERS_CALL_V4STK_PIC:
9612 case Hexagon::SAVE_REGISTERS_CALL_V4_EXT:
9613 case Hexagon::SAVE_REGISTERS_CALL_V4_EXT_PIC:
9614 case Hexagon::SAVE_REGISTERS_CALL_V4_PIC: {
9615 // op: dst
9616 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9617 Value |= (op & 0xff8000) << 1;
9618 Value |= (op & 0x7ffc) >> 1;
9619 break;
9620 }
9621 case Hexagon::J2_loop0rext:
9622 case Hexagon::J2_loop1rext: {
9623 // op: offset
9624 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9625 Value |= (op & 0x1f0) << 4;
9626 Value |= (op & 0xc) << 1;
9627 // op: src2
9628 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9629 Value |= (op & 0x1f) << 16;
9630 break;
9631 }
9632 case Hexagon::J2_loop0iext:
9633 case Hexagon::J2_loop1iext: {
9634 // op: offset
9635 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9636 Value |= (op & 0x1f0) << 4;
9637 Value |= (op & 0xc) << 1;
9638 // op: src2
9639 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9640 Value |= (op & 0x3e0) << 11;
9641 Value |= (op & 0x1c) << 3;
9642 Value |= (op & 0x3);
9643 break;
9644 }
9645 case Hexagon::PS_jmpretf:
9646 case Hexagon::PS_jmpretfnew:
9647 case Hexagon::PS_jmpretfnewpt:
9648 case Hexagon::PS_jmprett:
9649 case Hexagon::PS_jmprettnew:
9650 case Hexagon::PS_jmprettnewpt: {
9651 // op: src
9652 op = getMachineOpValue(MI, MO: MI.getOperand(i: 0), Fixups, STI);
9653 Value |= (op & 0x3) << 8;
9654 // op: dst
9655 op = getMachineOpValue(MI, MO: MI.getOperand(i: 1), Fixups, STI);
9656 Value |= (op & 0x1f) << 16;
9657 break;
9658 }
9659 default:
9660 reportUnsupportedInst(Inst: MI);
9661 }
9662 return Value;
9663}
9664
9665#ifdef GET_OPERAND_BIT_OFFSET
9666#undef GET_OPERAND_BIT_OFFSET
9667
9668uint32_t HexagonMCCodeEmitter::getOperandBitOffset(const MCInst &MI,
9669 unsigned OpNum,
9670 const MCSubtargetInfo &STI) const {
9671 switch (MI.getOpcode()) {
9672 case Hexagon::A2_nop:
9673 case Hexagon::CONST32:
9674 case Hexagon::CONST64:
9675 case Hexagon::DuplexIClass0:
9676 case Hexagon::DuplexIClass1:
9677 case Hexagon::DuplexIClass2:
9678 case Hexagon::DuplexIClass3:
9679 case Hexagon::DuplexIClass4:
9680 case Hexagon::DuplexIClass5:
9681 case Hexagon::DuplexIClass6:
9682 case Hexagon::DuplexIClass7:
9683 case Hexagon::DuplexIClass8:
9684 case Hexagon::DuplexIClass9:
9685 case Hexagon::DuplexIClassA:
9686 case Hexagon::DuplexIClassB:
9687 case Hexagon::DuplexIClassC:
9688 case Hexagon::DuplexIClassD:
9689 case Hexagon::DuplexIClassE:
9690 case Hexagon::DuplexIClassF:
9691 case Hexagon::J2_rte:
9692 case Hexagon::J2_unpause:
9693 case Hexagon::SL2_deallocframe:
9694 case Hexagon::SL2_jumpr31:
9695 case Hexagon::SL2_jumpr31_f:
9696 case Hexagon::SL2_jumpr31_fnew:
9697 case Hexagon::SL2_jumpr31_t:
9698 case Hexagon::SL2_jumpr31_tnew:
9699 case Hexagon::SL2_return:
9700 case Hexagon::SL2_return_f:
9701 case Hexagon::SL2_return_fnew:
9702 case Hexagon::SL2_return_t:
9703 case Hexagon::SL2_return_tnew:
9704 case Hexagon::TFRI64_V2_ext:
9705 case Hexagon::TFRI64_V4:
9706 case Hexagon::V6_vhist:
9707 case Hexagon::V6_vwhist128:
9708 case Hexagon::V6_vwhist256:
9709 case Hexagon::V6_vwhist256_sat:
9710 case Hexagon::Y2_barrier:
9711 case Hexagon::Y2_break:
9712 case Hexagon::Y2_dckill:
9713 case Hexagon::Y2_ickill:
9714 case Hexagon::Y2_isync:
9715 case Hexagon::Y2_k0lock:
9716 case Hexagon::Y2_k0unlock:
9717 case Hexagon::Y2_l2kill:
9718 case Hexagon::Y2_syncht:
9719 case Hexagon::Y2_tlblock:
9720 case Hexagon::Y2_tlbunlock:
9721 case Hexagon::Y5_l2gclean:
9722 case Hexagon::Y5_l2gcleaninv:
9723 case Hexagon::Y5_l2gunlock:
9724 case Hexagon::invalid_decode: {
9725 break;
9726 }
9727 case Hexagon::PS_storerbnewabs:
9728 case Hexagon::PS_storerhnewabs:
9729 case Hexagon::PS_storerinewabs:
9730 case Hexagon::S2_storerbnewgp:
9731 case Hexagon::S2_storerhnewgp:
9732 case Hexagon::S2_storerinewgp: {
9733 switch (OpNum) {
9734 case 0:
9735 // op: Ii
9736 return 0;
9737 case 1:
9738 // op: Nt8
9739 return 8;
9740 }
9741 break;
9742 }
9743 case Hexagon::PS_storerbabs:
9744 case Hexagon::PS_storerfabs:
9745 case Hexagon::PS_storerhabs:
9746 case Hexagon::PS_storeriabs:
9747 case Hexagon::S2_storerbgp:
9748 case Hexagon::S2_storerfgp:
9749 case Hexagon::S2_storerhgp:
9750 case Hexagon::S2_storerigp: {
9751 switch (OpNum) {
9752 case 0:
9753 // op: Ii
9754 return 0;
9755 case 1:
9756 // op: Rt32
9757 return 8;
9758 }
9759 break;
9760 }
9761 case Hexagon::PS_storerdabs:
9762 case Hexagon::S2_storerdgp: {
9763 switch (OpNum) {
9764 case 0:
9765 // op: Ii
9766 return 0;
9767 case 1:
9768 // op: Rtt32
9769 return 8;
9770 }
9771 break;
9772 }
9773 case Hexagon::A4_ext: {
9774 switch (OpNum) {
9775 case 0:
9776 // op: Ii
9777 return 0;
9778 }
9779 break;
9780 }
9781 case Hexagon::J2_call:
9782 case Hexagon::J2_jump: {
9783 switch (OpNum) {
9784 case 0:
9785 // op: Ii
9786 return 1;
9787 }
9788 break;
9789 }
9790 case Hexagon::J2_pause:
9791 case Hexagon::J2_trap0:
9792 case Hexagon::PS_trap1: {
9793 switch (OpNum) {
9794 case 0:
9795 // op: Ii
9796 return 2;
9797 }
9798 break;
9799 }
9800 case Hexagon::J2_loop0i:
9801 case Hexagon::J2_loop1i:
9802 case Hexagon::J2_ploop1si:
9803 case Hexagon::J2_ploop2si:
9804 case Hexagon::J2_ploop3si: {
9805 switch (OpNum) {
9806 case 0:
9807 // op: Ii
9808 return 3;
9809 case 1:
9810 // op: II
9811 return 0;
9812 }
9813 break;
9814 }
9815 case Hexagon::J2_loop0r:
9816 case Hexagon::J2_loop1r:
9817 case Hexagon::J2_ploop1sr:
9818 case Hexagon::J2_ploop2sr:
9819 case Hexagon::J2_ploop3sr: {
9820 switch (OpNum) {
9821 case 0:
9822 // op: Ii
9823 return 3;
9824 case 1:
9825 // op: Rs32
9826 return 16;
9827 }
9828 break;
9829 }
9830 case Hexagon::SS2_stored_sp: {
9831 switch (OpNum) {
9832 case 0:
9833 // op: Ii
9834 return 3;
9835 case 1:
9836 // op: Rtt8
9837 return 0;
9838 }
9839 break;
9840 }
9841 case Hexagon::SS2_storew_sp: {
9842 switch (OpNum) {
9843 case 0:
9844 // op: Ii
9845 return 4;
9846 case 1:
9847 // op: Rt16
9848 return 0;
9849 }
9850 break;
9851 }
9852 case Hexagon::SS2_allocframe: {
9853 switch (OpNum) {
9854 case 0:
9855 // op: Ii
9856 return 4;
9857 }
9858 break;
9859 }
9860 case Hexagon::V6_vwhist128m: {
9861 switch (OpNum) {
9862 case 0:
9863 // op: Ii
9864 return 8;
9865 }
9866 break;
9867 }
9868 case Hexagon::Y2_setimask:
9869 case Hexagon::Y2_setprio: {
9870 switch (OpNum) {
9871 case 0:
9872 // op: Pt4
9873 return 8;
9874 case 1:
9875 // op: Rs32
9876 return 16;
9877 }
9878 break;
9879 }
9880 case Hexagon::J2_callrf:
9881 case Hexagon::J2_callrt:
9882 case Hexagon::J2_jumprf:
9883 case Hexagon::J2_jumprfnew:
9884 case Hexagon::J2_jumprfnewpt:
9885 case Hexagon::J2_jumprfpt:
9886 case Hexagon::J2_jumprt:
9887 case Hexagon::J2_jumprtnew:
9888 case Hexagon::J2_jumprtnewpt:
9889 case Hexagon::J2_jumprtpt: {
9890 switch (OpNum) {
9891 case 0:
9892 // op: Pu4
9893 return 8;
9894 case 1:
9895 // op: Rs32
9896 return 16;
9897 }
9898 break;
9899 }
9900 case Hexagon::V6_vgathermhq:
9901 case Hexagon::V6_vgathermwq: {
9902 switch (OpNum) {
9903 case 0:
9904 // op: Qs4
9905 return 5;
9906 case 1:
9907 // op: Rt32
9908 return 16;
9909 case 2:
9910 // op: Mu2
9911 return 13;
9912 case 3:
9913 // op: Vv32
9914 return 0;
9915 }
9916 break;
9917 }
9918 case Hexagon::V6_vscattermhq:
9919 case Hexagon::V6_vscattermwq: {
9920 switch (OpNum) {
9921 case 0:
9922 // op: Qs4
9923 return 5;
9924 case 1:
9925 // op: Rt32
9926 return 16;
9927 case 2:
9928 // op: Mu2
9929 return 13;
9930 case 3:
9931 // op: Vv32
9932 return 8;
9933 case 4:
9934 // op: Vw32
9935 return 0;
9936 }
9937 break;
9938 }
9939 case Hexagon::V6_vgathermhwq: {
9940 switch (OpNum) {
9941 case 0:
9942 // op: Qs4
9943 return 5;
9944 case 1:
9945 // op: Rt32
9946 return 16;
9947 case 2:
9948 // op: Mu2
9949 return 13;
9950 case 3:
9951 // op: Vvv32
9952 return 0;
9953 }
9954 break;
9955 }
9956 case Hexagon::V6_vscattermhwq: {
9957 switch (OpNum) {
9958 case 0:
9959 // op: Qs4
9960 return 5;
9961 case 1:
9962 // op: Rt32
9963 return 16;
9964 case 2:
9965 // op: Mu2
9966 return 13;
9967 case 3:
9968 // op: Vvv32
9969 return 8;
9970 case 4:
9971 // op: Vw32
9972 return 0;
9973 }
9974 break;
9975 }
9976 case Hexagon::V6_vhistq:
9977 case Hexagon::V6_vwhist128q:
9978 case Hexagon::V6_vwhist256q:
9979 case Hexagon::V6_vwhist256q_sat: {
9980 switch (OpNum) {
9981 case 0:
9982 // op: Qv4
9983 return 22;
9984 }
9985 break;
9986 }
9987 case Hexagon::SA1_clrf:
9988 case Hexagon::SA1_clrfnew:
9989 case Hexagon::SA1_clrt:
9990 case Hexagon::SA1_clrtnew:
9991 case Hexagon::SA1_setin1: {
9992 switch (OpNum) {
9993 case 0:
9994 // op: Rd16
9995 return 0;
9996 }
9997 break;
9998 }
9999 case Hexagon::Y6_dmpause:
10000 case Hexagon::Y6_dmpoll:
10001 case Hexagon::Y6_dmwait: {
10002 switch (OpNum) {
10003 case 0:
10004 // op: Rd32
10005 return 0;
10006 }
10007 break;
10008 }
10009 case Hexagon::PS_callr_nr: {
10010 switch (OpNum) {
10011 case 0:
10012 // op: Rs
10013 return 16;
10014 }
10015 break;
10016 }
10017 case Hexagon::L6_memcpy: {
10018 switch (OpNum) {
10019 case 0:
10020 // op: Rs32
10021 return 16;
10022 case 1:
10023 // op: Rt32
10024 return 8;
10025 case 2:
10026 // op: Mu2
10027 return 13;
10028 }
10029 break;
10030 }
10031 case Hexagon::S2_storew_rl_at_vi:
10032 case Hexagon::S2_storew_rl_st_vi:
10033 case Hexagon::Y2_dctagw:
10034 case Hexagon::Y2_icdataw:
10035 case Hexagon::Y2_ictagw:
10036 case Hexagon::Y4_l2fetch:
10037 case Hexagon::Y4_l2tagw:
10038 case Hexagon::Y6_dmlink: {
10039 switch (OpNum) {
10040 case 0:
10041 // op: Rs32
10042 return 16;
10043 case 1:
10044 // op: Rt32
10045 return 8;
10046 }
10047 break;
10048 }
10049 case Hexagon::S4_stored_rl_at_vi:
10050 case Hexagon::S4_stored_rl_st_vi:
10051 case Hexagon::Y5_l2fetch: {
10052 switch (OpNum) {
10053 case 0:
10054 // op: Rs32
10055 return 16;
10056 case 1:
10057 // op: Rtt32
10058 return 8;
10059 }
10060 break;
10061 }
10062 case Hexagon::J2_callr:
10063 case Hexagon::J2_callrh:
10064 case Hexagon::J2_jumpr:
10065 case Hexagon::J2_jumprh:
10066 case Hexagon::J4_hintjumpr:
10067 case Hexagon::R6_release_at_vi:
10068 case Hexagon::R6_release_st_vi:
10069 case Hexagon::Y2_ciad:
10070 case Hexagon::Y2_cswi:
10071 case Hexagon::Y2_dccleana:
10072 case Hexagon::Y2_dccleanidx:
10073 case Hexagon::Y2_dccleaninva:
10074 case Hexagon::Y2_dccleaninvidx:
10075 case Hexagon::Y2_dcinva:
10076 case Hexagon::Y2_dcinvidx:
10077 case Hexagon::Y2_dczeroa:
10078 case Hexagon::Y2_dczeroa_nt:
10079 case Hexagon::Y2_iassignw:
10080 case Hexagon::Y2_icinva:
10081 case Hexagon::Y2_icinvidx:
10082 case Hexagon::Y2_l2cleaninvidx:
10083 case Hexagon::Y2_resume:
10084 case Hexagon::Y2_start:
10085 case Hexagon::Y2_stop:
10086 case Hexagon::Y2_swi:
10087 case Hexagon::Y2_wait:
10088 case Hexagon::Y4_nmi:
10089 case Hexagon::Y4_siad:
10090 case Hexagon::Y4_trace:
10091 case Hexagon::Y5_l2cleanidx:
10092 case Hexagon::Y5_l2invidx:
10093 case Hexagon::Y5_l2unlocka:
10094 case Hexagon::Y5_tlbasidi:
10095 case Hexagon::Y6_diag:
10096 case Hexagon::Y6_dmresume:
10097 case Hexagon::Y6_dmstart: {
10098 switch (OpNum) {
10099 case 0:
10100 // op: Rs32
10101 return 16;
10102 }
10103 break;
10104 }
10105 case Hexagon::Y2_tlbw: {
10106 switch (OpNum) {
10107 case 0:
10108 // op: Rss32
10109 return 16;
10110 case 1:
10111 // op: Rt32
10112 return 8;
10113 }
10114 break;
10115 }
10116 case Hexagon::Y6_diag0:
10117 case Hexagon::Y6_diag1: {
10118 switch (OpNum) {
10119 case 0:
10120 // op: Rss32
10121 return 16;
10122 case 1:
10123 // op: Rtt32
10124 return 8;
10125 }
10126 break;
10127 }
10128 case Hexagon::V6_vgathermh:
10129 case Hexagon::V6_vgathermw: {
10130 switch (OpNum) {
10131 case 0:
10132 // op: Rt32
10133 return 16;
10134 case 1:
10135 // op: Mu2
10136 return 13;
10137 case 2:
10138 // op: Vv32
10139 return 0;
10140 }
10141 break;
10142 }
10143 case Hexagon::V6_vscattermh:
10144 case Hexagon::V6_vscattermh_add:
10145 case Hexagon::V6_vscattermw:
10146 case Hexagon::V6_vscattermw_add: {
10147 switch (OpNum) {
10148 case 0:
10149 // op: Rt32
10150 return 16;
10151 case 1:
10152 // op: Mu2
10153 return 13;
10154 case 2:
10155 // op: Vv32
10156 return 8;
10157 case 3:
10158 // op: Vw32
10159 return 0;
10160 }
10161 break;
10162 }
10163 case Hexagon::V6_vgathermhw: {
10164 switch (OpNum) {
10165 case 0:
10166 // op: Rt32
10167 return 16;
10168 case 1:
10169 // op: Mu2
10170 return 13;
10171 case 2:
10172 // op: Vvv32
10173 return 0;
10174 }
10175 break;
10176 }
10177 case Hexagon::V6_vscattermhw:
10178 case Hexagon::V6_vscattermhw_add: {
10179 switch (OpNum) {
10180 case 0:
10181 // op: Rt32
10182 return 16;
10183 case 1:
10184 // op: Mu2
10185 return 13;
10186 case 2:
10187 // op: Vvv32
10188 return 8;
10189 case 3:
10190 // op: Vw32
10191 return 0;
10192 }
10193 break;
10194 }
10195 case Hexagon::Y6_l2gcleaninvpa:
10196 case Hexagon::Y6_l2gcleanpa: {
10197 switch (OpNum) {
10198 case 0:
10199 // op: Rtt32
10200 return 8;
10201 }
10202 break;
10203 }
10204 case Hexagon::Y2_crswap0:
10205 case Hexagon::Y4_crswap1: {
10206 switch (OpNum) {
10207 case 0:
10208 // op: Rx32
10209 return 16;
10210 }
10211 break;
10212 }
10213 case Hexagon::Y4_crswap10: {
10214 switch (OpNum) {
10215 case 0:
10216 // op: Rxx32
10217 return 16;
10218 }
10219 break;
10220 }
10221 case Hexagon::HI:
10222 case Hexagon::LO: {
10223 switch (OpNum) {
10224 case 0:
10225 // op: dst
10226 return 16;
10227 case 1:
10228 // op: imm_value
10229 return 0;
10230 }
10231 break;
10232 }
10233 case Hexagon::EH_RETURN_JMPR:
10234 case Hexagon::PS_jmpret: {
10235 switch (OpNum) {
10236 case 0:
10237 // op: dst
10238 return 16;
10239 }
10240 break;
10241 }
10242 case Hexagon::CALLProfile:
10243 case Hexagon::PS_call_stk:
10244 case Hexagon::RESTORE_DEALLOC_BEFORE_TAILCALL_V4:
10245 case Hexagon::RESTORE_DEALLOC_BEFORE_TAILCALL_V4_EXT:
10246 case Hexagon::RESTORE_DEALLOC_BEFORE_TAILCALL_V4_EXT_PIC:
10247 case Hexagon::RESTORE_DEALLOC_BEFORE_TAILCALL_V4_PIC:
10248 case Hexagon::RESTORE_DEALLOC_RET_JMP_V4:
10249 case Hexagon::RESTORE_DEALLOC_RET_JMP_V4_EXT:
10250 case Hexagon::RESTORE_DEALLOC_RET_JMP_V4_EXT_PIC:
10251 case Hexagon::RESTORE_DEALLOC_RET_JMP_V4_PIC:
10252 case Hexagon::SAVE_REGISTERS_CALL_V4:
10253 case Hexagon::SAVE_REGISTERS_CALL_V4STK:
10254 case Hexagon::SAVE_REGISTERS_CALL_V4STK_EXT:
10255 case Hexagon::SAVE_REGISTERS_CALL_V4STK_EXT_PIC:
10256 case Hexagon::SAVE_REGISTERS_CALL_V4STK_PIC:
10257 case Hexagon::SAVE_REGISTERS_CALL_V4_EXT:
10258 case Hexagon::SAVE_REGISTERS_CALL_V4_EXT_PIC:
10259 case Hexagon::SAVE_REGISTERS_CALL_V4_PIC: {
10260 switch (OpNum) {
10261 case 0:
10262 // op: dst
10263 return 1;
10264 }
10265 break;
10266 }
10267 case Hexagon::J2_loop0iext:
10268 case Hexagon::J2_loop1iext: {
10269 switch (OpNum) {
10270 case 0:
10271 // op: offset
10272 return 3;
10273 case 1:
10274 // op: src2
10275 return 0;
10276 }
10277 break;
10278 }
10279 case Hexagon::J2_loop0rext:
10280 case Hexagon::J2_loop1rext: {
10281 switch (OpNum) {
10282 case 0:
10283 // op: offset
10284 return 3;
10285 case 1:
10286 // op: src2
10287 return 16;
10288 }
10289 break;
10290 }
10291 case Hexagon::PS_jmpretf:
10292 case Hexagon::PS_jmpretfnew:
10293 case Hexagon::PS_jmpretfnewpt:
10294 case Hexagon::PS_jmprett:
10295 case Hexagon::PS_jmprettnew:
10296 case Hexagon::PS_jmprettnewpt: {
10297 switch (OpNum) {
10298 case 0:
10299 // op: src
10300 return 8;
10301 case 1:
10302 // op: dst
10303 return 16;
10304 }
10305 break;
10306 }
10307 case Hexagon::A2_tfrcrr: {
10308 switch (OpNum) {
10309 case 1:
10310 // op: Cs32
10311 return 16;
10312 case 0:
10313 // op: Rd32
10314 return 0;
10315 }
10316 break;
10317 }
10318 case Hexagon::A4_tfrcpp: {
10319 switch (OpNum) {
10320 case 1:
10321 // op: Css32
10322 return 16;
10323 case 0:
10324 // op: Rdd32
10325 return 0;
10326 }
10327 break;
10328 }
10329 case Hexagon::G4_tfrgcrr: {
10330 switch (OpNum) {
10331 case 1:
10332 // op: Gs32
10333 return 16;
10334 case 0:
10335 // op: Rd32
10336 return 0;
10337 }
10338 break;
10339 }
10340 case Hexagon::G4_tfrgcpp: {
10341 switch (OpNum) {
10342 case 1:
10343 // op: Gss32
10344 return 16;
10345 case 0:
10346 // op: Rdd32
10347 return 0;
10348 }
10349 break;
10350 }
10351 case Hexagon::S4_storerbnew_ap:
10352 case Hexagon::S4_storerhnew_ap:
10353 case Hexagon::S4_storerinew_ap: {
10354 switch (OpNum) {
10355 case 1:
10356 // op: II
10357 return 0;
10358 case 2:
10359 // op: Nt8
10360 return 8;
10361 case 0:
10362 // op: Re32
10363 return 16;
10364 }
10365 break;
10366 }
10367 case Hexagon::S4_storerb_ap:
10368 case Hexagon::S4_storerf_ap:
10369 case Hexagon::S4_storerh_ap:
10370 case Hexagon::S4_storeri_ap: {
10371 switch (OpNum) {
10372 case 1:
10373 // op: II
10374 return 0;
10375 case 2:
10376 // op: Rt32
10377 return 8;
10378 case 0:
10379 // op: Re32
10380 return 16;
10381 }
10382 break;
10383 }
10384 case Hexagon::S4_storerd_ap: {
10385 switch (OpNum) {
10386 case 1:
10387 // op: II
10388 return 0;
10389 case 2:
10390 // op: Rtt32
10391 return 8;
10392 case 0:
10393 // op: Re32
10394 return 16;
10395 }
10396 break;
10397 }
10398 case Hexagon::J4_cmpeqi_f_jumpnv_nt:
10399 case Hexagon::J4_cmpeqi_f_jumpnv_t:
10400 case Hexagon::J4_cmpeqi_t_jumpnv_nt:
10401 case Hexagon::J4_cmpeqi_t_jumpnv_t:
10402 case Hexagon::J4_cmpgti_f_jumpnv_nt:
10403 case Hexagon::J4_cmpgti_f_jumpnv_t:
10404 case Hexagon::J4_cmpgti_t_jumpnv_nt:
10405 case Hexagon::J4_cmpgti_t_jumpnv_t:
10406 case Hexagon::J4_cmpgtui_f_jumpnv_nt:
10407 case Hexagon::J4_cmpgtui_f_jumpnv_t:
10408 case Hexagon::J4_cmpgtui_t_jumpnv_nt:
10409 case Hexagon::J4_cmpgtui_t_jumpnv_t: {
10410 switch (OpNum) {
10411 case 1:
10412 // op: II
10413 return 8;
10414 case 2:
10415 // op: Ii
10416 return 1;
10417 case 0:
10418 // op: Ns8
10419 return 16;
10420 }
10421 break;
10422 }
10423 case Hexagon::J4_jumpseti: {
10424 switch (OpNum) {
10425 case 1:
10426 // op: II
10427 return 8;
10428 case 2:
10429 // op: Ii
10430 return 1;
10431 case 0:
10432 // op: Rd16
10433 return 16;
10434 }
10435 break;
10436 }
10437 case Hexagon::J4_cmpeqi_fp0_jump_nt:
10438 case Hexagon::J4_cmpeqi_fp0_jump_t:
10439 case Hexagon::J4_cmpeqi_fp1_jump_nt:
10440 case Hexagon::J4_cmpeqi_fp1_jump_t:
10441 case Hexagon::J4_cmpeqi_tp0_jump_nt:
10442 case Hexagon::J4_cmpeqi_tp0_jump_t:
10443 case Hexagon::J4_cmpeqi_tp1_jump_nt:
10444 case Hexagon::J4_cmpeqi_tp1_jump_t:
10445 case Hexagon::J4_cmpgti_fp0_jump_nt:
10446 case Hexagon::J4_cmpgti_fp0_jump_t:
10447 case Hexagon::J4_cmpgti_fp1_jump_nt:
10448 case Hexagon::J4_cmpgti_fp1_jump_t:
10449 case Hexagon::J4_cmpgti_tp0_jump_nt:
10450 case Hexagon::J4_cmpgti_tp0_jump_t:
10451 case Hexagon::J4_cmpgti_tp1_jump_nt:
10452 case Hexagon::J4_cmpgti_tp1_jump_t:
10453 case Hexagon::J4_cmpgtui_fp0_jump_nt:
10454 case Hexagon::J4_cmpgtui_fp0_jump_t:
10455 case Hexagon::J4_cmpgtui_fp1_jump_nt:
10456 case Hexagon::J4_cmpgtui_fp1_jump_t:
10457 case Hexagon::J4_cmpgtui_tp0_jump_nt:
10458 case Hexagon::J4_cmpgtui_tp0_jump_t:
10459 case Hexagon::J4_cmpgtui_tp1_jump_nt:
10460 case Hexagon::J4_cmpgtui_tp1_jump_t: {
10461 switch (OpNum) {
10462 case 1:
10463 // op: II
10464 return 8;
10465 case 2:
10466 // op: Ii
10467 return 1;
10468 case 0:
10469 // op: Rs16
10470 return 16;
10471 }
10472 break;
10473 }
10474 case Hexagon::SA1_cmpeqi:
10475 case Hexagon::SS2_storebi0:
10476 case Hexagon::SS2_storebi1:
10477 case Hexagon::SS2_storewi0:
10478 case Hexagon::SS2_storewi1: {
10479 switch (OpNum) {
10480 case 1:
10481 // op: Ii
10482 return 0;
10483 case 0:
10484 // op: Rs16
10485 return 4;
10486 }
10487 break;
10488 }
10489 case Hexagon::S2_storerbnew_io:
10490 case Hexagon::S2_storerhnew_io:
10491 case Hexagon::S2_storerinew_io: {
10492 switch (OpNum) {
10493 case 1:
10494 // op: Ii
10495 return 0;
10496 case 0:
10497 // op: Rs32
10498 return 16;
10499 case 2:
10500 // op: Nt8
10501 return 8;
10502 }
10503 break;
10504 }
10505 case Hexagon::S2_storerb_io:
10506 case Hexagon::S2_storerf_io:
10507 case Hexagon::S2_storerh_io:
10508 case Hexagon::S2_storeri_io: {
10509 switch (OpNum) {
10510 case 1:
10511 // op: Ii
10512 return 0;
10513 case 0:
10514 // op: Rs32
10515 return 16;
10516 case 2:
10517 // op: Rt32
10518 return 8;
10519 }
10520 break;
10521 }
10522 case Hexagon::S2_storerd_io: {
10523 switch (OpNum) {
10524 case 1:
10525 // op: Ii
10526 return 0;
10527 case 0:
10528 // op: Rs32
10529 return 16;
10530 case 2:
10531 // op: Rtt32
10532 return 8;
10533 }
10534 break;
10535 }
10536 case Hexagon::Y2_dcfetchbo:
10537 case Hexagon::Y2_dcfetchbo_nt: {
10538 switch (OpNum) {
10539 case 1:
10540 // op: Ii
10541 return 0;
10542 case 0:
10543 // op: Rs32
10544 return 16;
10545 }
10546 break;
10547 }
10548 case Hexagon::J4_tstbit0_f_jumpnv_nt:
10549 case Hexagon::J4_tstbit0_f_jumpnv_t:
10550 case Hexagon::J4_tstbit0_t_jumpnv_nt:
10551 case Hexagon::J4_tstbit0_t_jumpnv_t: {
10552 switch (OpNum) {
10553 case 1:
10554 // op: Ii
10555 return 1;
10556 case 0:
10557 // op: Ns8
10558 return 16;
10559 }
10560 break;
10561 }
10562 case Hexagon::J2_callf:
10563 case Hexagon::J2_callt:
10564 case Hexagon::J2_jumpf:
10565 case Hexagon::J2_jumpfnew:
10566 case Hexagon::J2_jumpfnewpt:
10567 case Hexagon::J2_jumpfpt:
10568 case Hexagon::J2_jumpt:
10569 case Hexagon::J2_jumptnew:
10570 case Hexagon::J2_jumptnewpt:
10571 case Hexagon::J2_jumptpt: {
10572 switch (OpNum) {
10573 case 1:
10574 // op: Ii
10575 return 1;
10576 case 0:
10577 // op: Pu4
10578 return 8;
10579 }
10580 break;
10581 }
10582 case Hexagon::J4_tstbit0_fp0_jump_nt:
10583 case Hexagon::J4_tstbit0_fp0_jump_t:
10584 case Hexagon::J4_tstbit0_fp1_jump_nt:
10585 case Hexagon::J4_tstbit0_fp1_jump_t:
10586 case Hexagon::J4_tstbit0_tp0_jump_nt:
10587 case Hexagon::J4_tstbit0_tp0_jump_t:
10588 case Hexagon::J4_tstbit0_tp1_jump_nt:
10589 case Hexagon::J4_tstbit0_tp1_jump_t: {
10590 switch (OpNum) {
10591 case 1:
10592 // op: Ii
10593 return 1;
10594 case 0:
10595 // op: Rs16
10596 return 16;
10597 }
10598 break;
10599 }
10600 case Hexagon::J2_jumprgtez:
10601 case Hexagon::J2_jumprgtezpt:
10602 case Hexagon::J2_jumprltez:
10603 case Hexagon::J2_jumprltezpt:
10604 case Hexagon::J2_jumprnz:
10605 case Hexagon::J2_jumprnzpt:
10606 case Hexagon::J2_jumprz:
10607 case Hexagon::J2_jumprzpt: {
10608 switch (OpNum) {
10609 case 1:
10610 // op: Ii
10611 return 1;
10612 case 0:
10613 // op: Rs32
10614 return 16;
10615 }
10616 break;
10617 }
10618 case Hexagon::S4_pstorerbnewf_abs:
10619 case Hexagon::S4_pstorerbnewfnew_abs:
10620 case Hexagon::S4_pstorerbnewt_abs:
10621 case Hexagon::S4_pstorerbnewtnew_abs:
10622 case Hexagon::S4_pstorerhnewf_abs:
10623 case Hexagon::S4_pstorerhnewfnew_abs:
10624 case Hexagon::S4_pstorerhnewt_abs:
10625 case Hexagon::S4_pstorerhnewtnew_abs:
10626 case Hexagon::S4_pstorerinewf_abs:
10627 case Hexagon::S4_pstorerinewfnew_abs:
10628 case Hexagon::S4_pstorerinewt_abs:
10629 case Hexagon::S4_pstorerinewtnew_abs: {
10630 switch (OpNum) {
10631 case 1:
10632 // op: Ii
10633 return 3;
10634 case 0:
10635 // op: Pv4
10636 return 0;
10637 case 2:
10638 // op: Nt8
10639 return 8;
10640 }
10641 break;
10642 }
10643 case Hexagon::S4_pstorerbf_abs:
10644 case Hexagon::S4_pstorerbfnew_abs:
10645 case Hexagon::S4_pstorerbt_abs:
10646 case Hexagon::S4_pstorerbtnew_abs:
10647 case Hexagon::S4_pstorerff_abs:
10648 case Hexagon::S4_pstorerffnew_abs:
10649 case Hexagon::S4_pstorerft_abs:
10650 case Hexagon::S4_pstorerftnew_abs:
10651 case Hexagon::S4_pstorerhf_abs:
10652 case Hexagon::S4_pstorerhfnew_abs:
10653 case Hexagon::S4_pstorerht_abs:
10654 case Hexagon::S4_pstorerhtnew_abs:
10655 case Hexagon::S4_pstorerif_abs:
10656 case Hexagon::S4_pstorerifnew_abs:
10657 case Hexagon::S4_pstorerit_abs:
10658 case Hexagon::S4_pstoreritnew_abs: {
10659 switch (OpNum) {
10660 case 1:
10661 // op: Ii
10662 return 3;
10663 case 0:
10664 // op: Pv4
10665 return 0;
10666 case 2:
10667 // op: Rt32
10668 return 8;
10669 }
10670 break;
10671 }
10672 case Hexagon::S4_pstorerdf_abs:
10673 case Hexagon::S4_pstorerdfnew_abs:
10674 case Hexagon::S4_pstorerdt_abs:
10675 case Hexagon::S4_pstorerdtnew_abs: {
10676 switch (OpNum) {
10677 case 1:
10678 // op: Ii
10679 return 3;
10680 case 0:
10681 // op: Pv4
10682 return 0;
10683 case 2:
10684 // op: Rtt32
10685 return 8;
10686 }
10687 break;
10688 }
10689 case Hexagon::SL2_loadrd_sp: {
10690 switch (OpNum) {
10691 case 1:
10692 // op: Ii
10693 return 3;
10694 case 0:
10695 // op: Rdd8
10696 return 0;
10697 }
10698 break;
10699 }
10700 case Hexagon::S4_addi_asl_ri:
10701 case Hexagon::S4_addi_lsr_ri:
10702 case Hexagon::S4_andi_asl_ri:
10703 case Hexagon::S4_andi_lsr_ri:
10704 case Hexagon::S4_ori_asl_ri:
10705 case Hexagon::S4_ori_lsr_ri:
10706 case Hexagon::S4_subi_asl_ri:
10707 case Hexagon::S4_subi_lsr_ri: {
10708 switch (OpNum) {
10709 case 1:
10710 // op: Ii
10711 return 3;
10712 case 3:
10713 // op: II
10714 return 8;
10715 case 0:
10716 // op: Rx32
10717 return 16;
10718 }
10719 break;
10720 }
10721 case Hexagon::SA1_addsp:
10722 case Hexagon::SA1_seti:
10723 case Hexagon::SL2_loadri_sp: {
10724 switch (OpNum) {
10725 case 1:
10726 // op: Ii
10727 return 4;
10728 case 0:
10729 // op: Rd16
10730 return 0;
10731 }
10732 break;
10733 }
10734 case Hexagon::A2_tfrsi:
10735 case Hexagon::F2_sfimm_n:
10736 case Hexagon::F2_sfimm_p:
10737 case Hexagon::L2_loadrbgp:
10738 case Hexagon::L2_loadrhgp:
10739 case Hexagon::L2_loadrigp:
10740 case Hexagon::L2_loadrubgp:
10741 case Hexagon::L2_loadruhgp:
10742 case Hexagon::PS_loadrbabs:
10743 case Hexagon::PS_loadrhabs:
10744 case Hexagon::PS_loadriabs:
10745 case Hexagon::PS_loadrubabs:
10746 case Hexagon::PS_loadruhabs: {
10747 switch (OpNum) {
10748 case 1:
10749 // op: Ii
10750 return 5;
10751 case 0:
10752 // op: Rd32
10753 return 0;
10754 }
10755 break;
10756 }
10757 case Hexagon::F2_dfimm_n:
10758 case Hexagon::F2_dfimm_p:
10759 case Hexagon::L2_loadrdgp:
10760 case Hexagon::PS_loadrdabs: {
10761 switch (OpNum) {
10762 case 1:
10763 // op: Ii
10764 return 5;
10765 case 0:
10766 // op: Rdd32
10767 return 0;
10768 }
10769 break;
10770 }
10771 case Hexagon::SA1_combine0i:
10772 case Hexagon::SA1_combine1i:
10773 case Hexagon::SA1_combine2i:
10774 case Hexagon::SA1_combine3i: {
10775 switch (OpNum) {
10776 case 1:
10777 // op: Ii
10778 return 5;
10779 case 0:
10780 // op: Rdd8
10781 return 0;
10782 }
10783 break;
10784 }
10785 case Hexagon::A2_combineii:
10786 case Hexagon::A4_combineii: {
10787 switch (OpNum) {
10788 case 1:
10789 // op: Ii
10790 return 5;
10791 case 2:
10792 // op: II
10793 return 13;
10794 case 0:
10795 // op: Rdd32
10796 return 0;
10797 }
10798 break;
10799 }
10800 case Hexagon::A2_subri: {
10801 switch (OpNum) {
10802 case 1:
10803 // op: Ii
10804 return 5;
10805 case 2:
10806 // op: Rs32
10807 return 16;
10808 case 0:
10809 // op: Rd32
10810 return 0;
10811 }
10812 break;
10813 }
10814 case Hexagon::A4_combineir: {
10815 switch (OpNum) {
10816 case 1:
10817 // op: Ii
10818 return 5;
10819 case 2:
10820 // op: Rs32
10821 return 16;
10822 case 0:
10823 // op: Rdd32
10824 return 0;
10825 }
10826 break;
10827 }
10828 case Hexagon::M4_mpyrr_addi: {
10829 switch (OpNum) {
10830 case 1:
10831 // op: Ii
10832 return 5;
10833 case 2:
10834 // op: Rs32
10835 return 16;
10836 case 3:
10837 // op: Rt32
10838 return 8;
10839 case 0:
10840 // op: Rd32
10841 return 0;
10842 }
10843 break;
10844 }
10845 case Hexagon::S4_lsli: {
10846 switch (OpNum) {
10847 case 1:
10848 // op: Ii
10849 return 5;
10850 case 2:
10851 // op: Rt32
10852 return 8;
10853 case 0:
10854 // op: Rd32
10855 return 0;
10856 }
10857 break;
10858 }
10859 case Hexagon::M4_mpyri_addi: {
10860 switch (OpNum) {
10861 case 1:
10862 // op: Ii
10863 return 5;
10864 case 3:
10865 // op: II
10866 return 0;
10867 case 2:
10868 // op: Rs32
10869 return 16;
10870 case 0:
10871 // op: Rd32
10872 return 8;
10873 }
10874 break;
10875 }
10876 case Hexagon::S4_storerbnew_ur:
10877 case Hexagon::S4_storerhnew_ur:
10878 case Hexagon::S4_storerinew_ur: {
10879 switch (OpNum) {
10880 case 1:
10881 // op: Ii
10882 return 6;
10883 case 2:
10884 // op: II
10885 return 0;
10886 case 0:
10887 // op: Ru32
10888 return 16;
10889 case 3:
10890 // op: Nt8
10891 return 8;
10892 }
10893 break;
10894 }
10895 case Hexagon::S4_storerb_ur:
10896 case Hexagon::S4_storerf_ur:
10897 case Hexagon::S4_storerh_ur:
10898 case Hexagon::S4_storeri_ur: {
10899 switch (OpNum) {
10900 case 1:
10901 // op: Ii
10902 return 6;
10903 case 2:
10904 // op: II
10905 return 0;
10906 case 0:
10907 // op: Ru32
10908 return 16;
10909 case 3:
10910 // op: Rt32
10911 return 8;
10912 }
10913 break;
10914 }
10915 case Hexagon::S4_storerd_ur: {
10916 switch (OpNum) {
10917 case 1:
10918 // op: Ii
10919 return 6;
10920 case 2:
10921 // op: II
10922 return 0;
10923 case 0:
10924 // op: Ru32
10925 return 16;
10926 case 3:
10927 // op: Rtt32
10928 return 8;
10929 }
10930 break;
10931 }
10932 case Hexagon::C4_addipc: {
10933 switch (OpNum) {
10934 case 1:
10935 // op: Ii
10936 return 7;
10937 case 0:
10938 // op: Rd32
10939 return 0;
10940 }
10941 break;
10942 }
10943 case Hexagon::L4_add_memopb_io:
10944 case Hexagon::L4_add_memoph_io:
10945 case Hexagon::L4_add_memopw_io:
10946 case Hexagon::L4_and_memopb_io:
10947 case Hexagon::L4_and_memoph_io:
10948 case Hexagon::L4_and_memopw_io:
10949 case Hexagon::L4_or_memopb_io:
10950 case Hexagon::L4_or_memoph_io:
10951 case Hexagon::L4_or_memopw_io:
10952 case Hexagon::L4_sub_memopb_io:
10953 case Hexagon::L4_sub_memoph_io:
10954 case Hexagon::L4_sub_memopw_io: {
10955 switch (OpNum) {
10956 case 1:
10957 // op: Ii
10958 return 7;
10959 case 0:
10960 // op: Rs32
10961 return 16;
10962 case 2:
10963 // op: Rt32
10964 return 0;
10965 }
10966 break;
10967 }
10968 case Hexagon::L4_iadd_memopb_io:
10969 case Hexagon::L4_iadd_memoph_io:
10970 case Hexagon::L4_iadd_memopw_io:
10971 case Hexagon::L4_iand_memopb_io:
10972 case Hexagon::L4_iand_memoph_io:
10973 case Hexagon::L4_iand_memopw_io:
10974 case Hexagon::L4_ior_memopb_io:
10975 case Hexagon::L4_ior_memoph_io:
10976 case Hexagon::L4_ior_memopw_io:
10977 case Hexagon::L4_isub_memopb_io:
10978 case Hexagon::L4_isub_memoph_io:
10979 case Hexagon::L4_isub_memopw_io:
10980 case Hexagon::S4_storeirb_io:
10981 case Hexagon::S4_storeirh_io:
10982 case Hexagon::S4_storeiri_io: {
10983 switch (OpNum) {
10984 case 1:
10985 // op: Ii
10986 return 7;
10987 case 2:
10988 // op: II
10989 return 0;
10990 case 0:
10991 // op: Rs32
10992 return 16;
10993 }
10994 break;
10995 }
10996 case Hexagon::V6_vwhist128qm: {
10997 switch (OpNum) {
10998 case 1:
10999 // op: Ii
11000 return 8;
11001 case 0:
11002 // op: Qv4
11003 return 22;
11004 }
11005 break;
11006 }
11007 case Hexagon::SS1_storeb_io:
11008 case Hexagon::SS1_storew_io:
11009 case Hexagon::SS2_storeh_io: {
11010 switch (OpNum) {
11011 case 1:
11012 // op: Ii
11013 return 8;
11014 case 0:
11015 // op: Rs16
11016 return 4;
11017 case 2:
11018 // op: Rt16
11019 return 0;
11020 }
11021 break;
11022 }
11023 case Hexagon::V6_vS32b_new_ai:
11024 case Hexagon::V6_vS32b_nt_new_ai: {
11025 switch (OpNum) {
11026 case 1:
11027 // op: Ii
11028 return 8;
11029 case 0:
11030 // op: Rt32
11031 return 16;
11032 case 2:
11033 // op: Os8
11034 return 0;
11035 }
11036 break;
11037 }
11038 case Hexagon::V6_vS32Ub_ai:
11039 case Hexagon::V6_vS32b_ai:
11040 case Hexagon::V6_vS32b_nt_ai: {
11041 switch (OpNum) {
11042 case 1:
11043 // op: Ii
11044 return 8;
11045 case 0:
11046 // op: Rt32
11047 return 16;
11048 case 2:
11049 // op: Vs32
11050 return 0;
11051 }
11052 break;
11053 }
11054 case Hexagon::V6_vS32b_srls_ai:
11055 case Hexagon::V6_zLd_ai: {
11056 switch (OpNum) {
11057 case 1:
11058 // op: Ii
11059 return 8;
11060 case 0:
11061 // op: Rt32
11062 return 16;
11063 }
11064 break;
11065 }
11066 case Hexagon::S2_mask: {
11067 switch (OpNum) {
11068 case 1:
11069 // op: Ii
11070 return 8;
11071 case 2:
11072 // op: II
11073 return 5;
11074 case 0:
11075 // op: Rd32
11076 return 0;
11077 }
11078 break;
11079 }
11080 case Hexagon::C2_all8:
11081 case Hexagon::C2_any8:
11082 case Hexagon::C2_not: {
11083 switch (OpNum) {
11084 case 1:
11085 // op: Ps4
11086 return 16;
11087 case 0:
11088 // op: Pd4
11089 return 0;
11090 }
11091 break;
11092 }
11093 case Hexagon::C2_tfrpr: {
11094 switch (OpNum) {
11095 case 1:
11096 // op: Ps4
11097 return 16;
11098 case 0:
11099 // op: Rd32
11100 return 0;
11101 }
11102 break;
11103 }
11104 case Hexagon::C2_xor:
11105 case Hexagon::C4_fastcorner9:
11106 case Hexagon::C4_fastcorner9_not: {
11107 switch (OpNum) {
11108 case 1:
11109 // op: Ps4
11110 return 16;
11111 case 2:
11112 // op: Pt4
11113 return 8;
11114 case 0:
11115 // op: Pd4
11116 return 0;
11117 }
11118 break;
11119 }
11120 case Hexagon::C2_vitpack: {
11121 switch (OpNum) {
11122 case 1:
11123 // op: Ps4
11124 return 16;
11125 case 2:
11126 // op: Pt4
11127 return 8;
11128 case 0:
11129 // op: Rd32
11130 return 0;
11131 }
11132 break;
11133 }
11134 case Hexagon::C4_and_and:
11135 case Hexagon::C4_and_andn:
11136 case Hexagon::C4_and_or:
11137 case Hexagon::C4_and_orn:
11138 case Hexagon::C4_or_and:
11139 case Hexagon::C4_or_andn:
11140 case Hexagon::C4_or_or:
11141 case Hexagon::C4_or_orn: {
11142 switch (OpNum) {
11143 case 1:
11144 // op: Ps4
11145 return 16;
11146 case 2:
11147 // op: Pt4
11148 return 8;
11149 case 3:
11150 // op: Pu4
11151 return 6;
11152 case 0:
11153 // op: Pd4
11154 return 0;
11155 }
11156 break;
11157 }
11158 case Hexagon::V6_vcmov:
11159 case Hexagon::V6_vncmov: {
11160 switch (OpNum) {
11161 case 1:
11162 // op: Ps4
11163 return 5;
11164 case 2:
11165 // op: Vu32
11166 return 8;
11167 case 0:
11168 // op: Vd32
11169 return 0;
11170 }
11171 break;
11172 }
11173 case Hexagon::V6_vccombine:
11174 case Hexagon::V6_vnccombine: {
11175 switch (OpNum) {
11176 case 1:
11177 // op: Ps4
11178 return 5;
11179 case 2:
11180 // op: Vu32
11181 return 8;
11182 case 3:
11183 // op: Vv32
11184 return 16;
11185 case 0:
11186 // op: Vdd32
11187 return 0;
11188 }
11189 break;
11190 }
11191 case Hexagon::C2_mask: {
11192 switch (OpNum) {
11193 case 1:
11194 // op: Pt4
11195 return 8;
11196 case 0:
11197 // op: Rdd32
11198 return 0;
11199 }
11200 break;
11201 }
11202 case Hexagon::C2_and:
11203 case Hexagon::C2_andn:
11204 case Hexagon::C2_or:
11205 case Hexagon::C2_orn: {
11206 switch (OpNum) {
11207 case 1:
11208 // op: Pt4
11209 return 8;
11210 case 2:
11211 // op: Ps4
11212 return 16;
11213 case 0:
11214 // op: Pd4
11215 return 0;
11216 }
11217 break;
11218 }
11219 case Hexagon::A2_paddf:
11220 case Hexagon::A2_paddfnew:
11221 case Hexagon::A2_paddt:
11222 case Hexagon::A2_paddtnew:
11223 case Hexagon::A2_pandf:
11224 case Hexagon::A2_pandfnew:
11225 case Hexagon::A2_pandt:
11226 case Hexagon::A2_pandtnew:
11227 case Hexagon::A2_porf:
11228 case Hexagon::A2_porfnew:
11229 case Hexagon::A2_port:
11230 case Hexagon::A2_portnew:
11231 case Hexagon::A2_pxorf:
11232 case Hexagon::A2_pxorfnew:
11233 case Hexagon::A2_pxort:
11234 case Hexagon::A2_pxortnew:
11235 case Hexagon::C2_mux: {
11236 switch (OpNum) {
11237 case 1:
11238 // op: Pu4
11239 return 5;
11240 case 2:
11241 // op: Rs32
11242 return 16;
11243 case 3:
11244 // op: Rt32
11245 return 8;
11246 case 0:
11247 // op: Rd32
11248 return 0;
11249 }
11250 break;
11251 }
11252 case Hexagon::C2_ccombinewf:
11253 case Hexagon::C2_ccombinewnewf:
11254 case Hexagon::C2_ccombinewnewt:
11255 case Hexagon::C2_ccombinewt: {
11256 switch (OpNum) {
11257 case 1:
11258 // op: Pu4
11259 return 5;
11260 case 2:
11261 // op: Rs32
11262 return 16;
11263 case 3:
11264 // op: Rt32
11265 return 8;
11266 case 0:
11267 // op: Rdd32
11268 return 0;
11269 }
11270 break;
11271 }
11272 case Hexagon::C2_vmux: {
11273 switch (OpNum) {
11274 case 1:
11275 // op: Pu4
11276 return 5;
11277 case 2:
11278 // op: Rss32
11279 return 16;
11280 case 3:
11281 // op: Rtt32
11282 return 8;
11283 case 0:
11284 // op: Rdd32
11285 return 0;
11286 }
11287 break;
11288 }
11289 case Hexagon::A2_psubf:
11290 case Hexagon::A2_psubfnew:
11291 case Hexagon::A2_psubt:
11292 case Hexagon::A2_psubtnew: {
11293 switch (OpNum) {
11294 case 1:
11295 // op: Pu4
11296 return 5;
11297 case 2:
11298 // op: Rt32
11299 return 8;
11300 case 3:
11301 // op: Rs32
11302 return 16;
11303 case 0:
11304 // op: Rd32
11305 return 0;
11306 }
11307 break;
11308 }
11309 case Hexagon::A4_paslhf:
11310 case Hexagon::A4_paslhfnew:
11311 case Hexagon::A4_paslht:
11312 case Hexagon::A4_paslhtnew:
11313 case Hexagon::A4_pasrhf:
11314 case Hexagon::A4_pasrhfnew:
11315 case Hexagon::A4_pasrht:
11316 case Hexagon::A4_pasrhtnew:
11317 case Hexagon::A4_psxtbf:
11318 case Hexagon::A4_psxtbfnew:
11319 case Hexagon::A4_psxtbt:
11320 case Hexagon::A4_psxtbtnew:
11321 case Hexagon::A4_psxthf:
11322 case Hexagon::A4_psxthfnew:
11323 case Hexagon::A4_psxtht:
11324 case Hexagon::A4_psxthtnew:
11325 case Hexagon::A4_pzxtbf:
11326 case Hexagon::A4_pzxtbfnew:
11327 case Hexagon::A4_pzxtbt:
11328 case Hexagon::A4_pzxtbtnew:
11329 case Hexagon::A4_pzxthf:
11330 case Hexagon::A4_pzxthfnew:
11331 case Hexagon::A4_pzxtht:
11332 case Hexagon::A4_pzxthtnew: {
11333 switch (OpNum) {
11334 case 1:
11335 // op: Pu4
11336 return 8;
11337 case 2:
11338 // op: Rs32
11339 return 16;
11340 case 0:
11341 // op: Rd32
11342 return 0;
11343 }
11344 break;
11345 }
11346 case Hexagon::V6_zLd_pred_ppu: {
11347 switch (OpNum) {
11348 case 1:
11349 // op: Pv4
11350 return 11;
11351 case 3:
11352 // op: Mu2
11353 return 13;
11354 case 0:
11355 // op: Rx32
11356 return 16;
11357 }
11358 break;
11359 }
11360 case Hexagon::V6_vS32b_new_npred_ppu:
11361 case Hexagon::V6_vS32b_new_pred_ppu:
11362 case Hexagon::V6_vS32b_nt_new_npred_ppu:
11363 case Hexagon::V6_vS32b_nt_new_pred_ppu: {
11364 switch (OpNum) {
11365 case 1:
11366 // op: Pv4
11367 return 11;
11368 case 3:
11369 // op: Mu2
11370 return 13;
11371 case 4:
11372 // op: Os8
11373 return 0;
11374 case 0:
11375 // op: Rx32
11376 return 16;
11377 }
11378 break;
11379 }
11380 case Hexagon::V6_vS32Ub_npred_ppu:
11381 case Hexagon::V6_vS32Ub_pred_ppu:
11382 case Hexagon::V6_vS32b_npred_ppu:
11383 case Hexagon::V6_vS32b_nt_npred_ppu:
11384 case Hexagon::V6_vS32b_nt_pred_ppu:
11385 case Hexagon::V6_vS32b_pred_ppu: {
11386 switch (OpNum) {
11387 case 1:
11388 // op: Pv4
11389 return 11;
11390 case 3:
11391 // op: Mu2
11392 return 13;
11393 case 4:
11394 // op: Vs32
11395 return 0;
11396 case 0:
11397 // op: Rx32
11398 return 16;
11399 }
11400 break;
11401 }
11402 case Hexagon::L4_return_f:
11403 case Hexagon::L4_return_fnew_pnt:
11404 case Hexagon::L4_return_fnew_pt:
11405 case Hexagon::L4_return_t:
11406 case Hexagon::L4_return_tnew_pnt:
11407 case Hexagon::L4_return_tnew_pt: {
11408 switch (OpNum) {
11409 case 1:
11410 // op: Pv4
11411 return 8;
11412 case 2:
11413 // op: Rs32
11414 return 16;
11415 case 0:
11416 // op: Rdd32
11417 return 0;
11418 }
11419 break;
11420 }
11421 case Hexagon::V6_pred_not: {
11422 switch (OpNum) {
11423 case 1:
11424 // op: Qs4
11425 return 8;
11426 case 0:
11427 // op: Qd4
11428 return 0;
11429 }
11430 break;
11431 }
11432 case Hexagon::V6_pred_and:
11433 case Hexagon::V6_pred_and_n:
11434 case Hexagon::V6_pred_or:
11435 case Hexagon::V6_pred_or_n:
11436 case Hexagon::V6_pred_xor:
11437 case Hexagon::V6_shuffeqh:
11438 case Hexagon::V6_shuffeqw: {
11439 switch (OpNum) {
11440 case 1:
11441 // op: Qs4
11442 return 8;
11443 case 2:
11444 // op: Qt4
11445 return 22;
11446 case 0:
11447 // op: Qd4
11448 return 0;
11449 }
11450 break;
11451 }
11452 case Hexagon::V6_vmux: {
11453 switch (OpNum) {
11454 case 1:
11455 // op: Qt4
11456 return 5;
11457 case 2:
11458 // op: Vu32
11459 return 8;
11460 case 3:
11461 // op: Vv32
11462 return 16;
11463 case 0:
11464 // op: Vd32
11465 return 0;
11466 }
11467 break;
11468 }
11469 case Hexagon::V6_vswap: {
11470 switch (OpNum) {
11471 case 1:
11472 // op: Qt4
11473 return 5;
11474 case 2:
11475 // op: Vu32
11476 return 8;
11477 case 3:
11478 // op: Vv32
11479 return 16;
11480 case 0:
11481 // op: Vdd32
11482 return 0;
11483 }
11484 break;
11485 }
11486 case Hexagon::V6_vandnqrt:
11487 case Hexagon::V6_vandqrt: {
11488 switch (OpNum) {
11489 case 1:
11490 // op: Qu4
11491 return 8;
11492 case 2:
11493 // op: Rt32
11494 return 16;
11495 case 0:
11496 // op: Vd32
11497 return 0;
11498 }
11499 break;
11500 }
11501 case Hexagon::V6_vS32b_nqpred_ppu:
11502 case Hexagon::V6_vS32b_nt_nqpred_ppu:
11503 case Hexagon::V6_vS32b_nt_qpred_ppu:
11504 case Hexagon::V6_vS32b_qpred_ppu: {
11505 switch (OpNum) {
11506 case 1:
11507 // op: Qv4
11508 return 11;
11509 case 3:
11510 // op: Mu2
11511 return 13;
11512 case 4:
11513 // op: Vs32
11514 return 0;
11515 case 0:
11516 // op: Rx32
11517 return 16;
11518 }
11519 break;
11520 }
11521 case Hexagon::V6_vprefixqb:
11522 case Hexagon::V6_vprefixqh:
11523 case Hexagon::V6_vprefixqw: {
11524 switch (OpNum) {
11525 case 1:
11526 // op: Qv4
11527 return 22;
11528 case 0:
11529 // op: Vd32
11530 return 0;
11531 }
11532 break;
11533 }
11534 case Hexagon::V6_vandvnqv:
11535 case Hexagon::V6_vandvqv: {
11536 switch (OpNum) {
11537 case 1:
11538 // op: Qv4
11539 return 22;
11540 case 2:
11541 // op: Vu32
11542 return 8;
11543 case 0:
11544 // op: Vd32
11545 return 0;
11546 }
11547 break;
11548 }
11549 case Hexagon::V6_vaddbnq:
11550 case Hexagon::V6_vaddbq:
11551 case Hexagon::V6_vaddhnq:
11552 case Hexagon::V6_vaddhq:
11553 case Hexagon::V6_vaddwnq:
11554 case Hexagon::V6_vaddwq:
11555 case Hexagon::V6_vsubbnq:
11556 case Hexagon::V6_vsubbq:
11557 case Hexagon::V6_vsubhnq:
11558 case Hexagon::V6_vsubhq:
11559 case Hexagon::V6_vsubwnq:
11560 case Hexagon::V6_vsubwq: {
11561 switch (OpNum) {
11562 case 1:
11563 // op: Qv4
11564 return 22;
11565 case 3:
11566 // op: Vu32
11567 return 8;
11568 case 0:
11569 // op: Vx32
11570 return 0;
11571 }
11572 break;
11573 }
11574 case Hexagon::SA1_and1:
11575 case Hexagon::SA1_dec:
11576 case Hexagon::SA1_inc:
11577 case Hexagon::SA1_sxtb:
11578 case Hexagon::SA1_sxth:
11579 case Hexagon::SA1_tfr:
11580 case Hexagon::SA1_zxtb:
11581 case Hexagon::SA1_zxth: {
11582 switch (OpNum) {
11583 case 1:
11584 // op: Rs16
11585 return 4;
11586 case 0:
11587 // op: Rd16
11588 return 0;
11589 }
11590 break;
11591 }
11592 case Hexagon::SA1_combinerz:
11593 case Hexagon::SA1_combinezr: {
11594 switch (OpNum) {
11595 case 1:
11596 // op: Rs16
11597 return 4;
11598 case 0:
11599 // op: Rdd8
11600 return 0;
11601 }
11602 break;
11603 }
11604 case Hexagon::A2_tfrrcr: {
11605 switch (OpNum) {
11606 case 1:
11607 // op: Rs32
11608 return 16;
11609 case 0:
11610 // op: Cd32
11611 return 0;
11612 }
11613 break;
11614 }
11615 case Hexagon::G4_tfrgrcr: {
11616 switch (OpNum) {
11617 case 1:
11618 // op: Rs32
11619 return 16;
11620 case 0:
11621 // op: Gd32
11622 return 0;
11623 }
11624 break;
11625 }
11626 case Hexagon::C2_tfrrp:
11627 case Hexagon::Y5_l2locka: {
11628 switch (OpNum) {
11629 case 1:
11630 // op: Rs32
11631 return 16;
11632 case 0:
11633 // op: Pd4
11634 return 0;
11635 }
11636 break;
11637 }
11638 case Hexagon::A2_abs:
11639 case Hexagon::A2_abssat:
11640 case Hexagon::A2_aslh:
11641 case Hexagon::A2_asrh:
11642 case Hexagon::A2_negsat:
11643 case Hexagon::A2_satb:
11644 case Hexagon::A2_sath:
11645 case Hexagon::A2_satub:
11646 case Hexagon::A2_satuh:
11647 case Hexagon::A2_swiz:
11648 case Hexagon::A2_sxtb:
11649 case Hexagon::A2_sxth:
11650 case Hexagon::A2_tfr:
11651 case Hexagon::A2_zxth:
11652 case Hexagon::F2_conv_sf2uw:
11653 case Hexagon::F2_conv_sf2uw_chop:
11654 case Hexagon::F2_conv_sf2w:
11655 case Hexagon::F2_conv_sf2w_chop:
11656 case Hexagon::F2_conv_uw2sf:
11657 case Hexagon::F2_conv_w2sf:
11658 case Hexagon::F2_sffixupr:
11659 case Hexagon::L2_loadw_aq:
11660 case Hexagon::L2_loadw_locked:
11661 case Hexagon::S2_brev:
11662 case Hexagon::S2_cl0:
11663 case Hexagon::S2_cl1:
11664 case Hexagon::S2_clb:
11665 case Hexagon::S2_clbnorm:
11666 case Hexagon::S2_ct0:
11667 case Hexagon::S2_ct1:
11668 case Hexagon::S2_svsathb:
11669 case Hexagon::S2_svsathub:
11670 case Hexagon::S2_vsplatrb:
11671 case Hexagon::Y2_dctagr:
11672 case Hexagon::Y2_getimask:
11673 case Hexagon::Y2_iassignr:
11674 case Hexagon::Y2_icdatar:
11675 case Hexagon::Y2_ictagr:
11676 case Hexagon::Y2_tlbp:
11677 case Hexagon::Y4_l2tagr: {
11678 switch (OpNum) {
11679 case 1:
11680 // op: Rs32
11681 return 16;
11682 case 0:
11683 // op: Rd32
11684 return 0;
11685 }
11686 break;
11687 }
11688 case Hexagon::A2_sxtw:
11689 case Hexagon::F2_conv_sf2d:
11690 case Hexagon::F2_conv_sf2d_chop:
11691 case Hexagon::F2_conv_sf2df:
11692 case Hexagon::F2_conv_sf2ud:
11693 case Hexagon::F2_conv_sf2ud_chop:
11694 case Hexagon::F2_conv_uw2df:
11695 case Hexagon::F2_conv_w2df:
11696 case Hexagon::L2_deallocframe:
11697 case Hexagon::L4_loadd_aq:
11698 case Hexagon::L4_loadd_locked:
11699 case Hexagon::L4_return:
11700 case Hexagon::S2_vsplatrh:
11701 case Hexagon::S2_vsxtbh:
11702 case Hexagon::S2_vsxthw:
11703 case Hexagon::S2_vzxtbh:
11704 case Hexagon::S2_vzxthw:
11705 case Hexagon::S6_vsplatrbp:
11706 case Hexagon::Y2_tlbr: {
11707 switch (OpNum) {
11708 case 1:
11709 // op: Rs32
11710 return 16;
11711 case 0:
11712 // op: Rdd32
11713 return 0;
11714 }
11715 break;
11716 }
11717 case Hexagon::Y2_tfrsrcr: {
11718 switch (OpNum) {
11719 case 1:
11720 // op: Rs32
11721 return 16;
11722 case 0:
11723 // op: Sd128
11724 return 0;
11725 }
11726 break;
11727 }
11728 case Hexagon::A4_cmpbeq:
11729 case Hexagon::A4_cmpbgt:
11730 case Hexagon::A4_cmpbgtu:
11731 case Hexagon::A4_cmpheq:
11732 case Hexagon::A4_cmphgt:
11733 case Hexagon::A4_cmphgtu:
11734 case Hexagon::C2_bitsclr:
11735 case Hexagon::C2_bitsset:
11736 case Hexagon::C2_cmpeq:
11737 case Hexagon::C2_cmpgt:
11738 case Hexagon::C2_cmpgtu:
11739 case Hexagon::C4_cmplte:
11740 case Hexagon::C4_cmplteu:
11741 case Hexagon::C4_cmpneq:
11742 case Hexagon::C4_nbitsclr:
11743 case Hexagon::C4_nbitsset:
11744 case Hexagon::F2_sfcmpeq:
11745 case Hexagon::F2_sfcmpge:
11746 case Hexagon::F2_sfcmpgt:
11747 case Hexagon::F2_sfcmpuo:
11748 case Hexagon::S2_storew_locked:
11749 case Hexagon::S2_tstbit_r:
11750 case Hexagon::S4_ntstbit_r: {
11751 switch (OpNum) {
11752 case 1:
11753 // op: Rs32
11754 return 16;
11755 case 2:
11756 // op: Rt32
11757 return 8;
11758 case 0:
11759 // op: Pd4
11760 return 0;
11761 }
11762 break;
11763 }
11764 case Hexagon::A2_add:
11765 case Hexagon::A2_addsat:
11766 case Hexagon::A2_and:
11767 case Hexagon::A2_max:
11768 case Hexagon::A2_maxu:
11769 case Hexagon::A2_or:
11770 case Hexagon::A2_svaddh:
11771 case Hexagon::A2_svaddhs:
11772 case Hexagon::A2_svadduhs:
11773 case Hexagon::A2_svavgh:
11774 case Hexagon::A2_svavghs:
11775 case Hexagon::A2_xor:
11776 case Hexagon::A4_cround_rr:
11777 case Hexagon::A4_modwrapu:
11778 case Hexagon::A4_rcmpeq:
11779 case Hexagon::A4_rcmpneq:
11780 case Hexagon::A4_round_rr:
11781 case Hexagon::A4_round_rr_sat:
11782 case Hexagon::F2_sfadd:
11783 case Hexagon::F2_sffixupd:
11784 case Hexagon::F2_sffixupn:
11785 case Hexagon::F2_sfmax:
11786 case Hexagon::F2_sfmin:
11787 case Hexagon::F2_sfmpy:
11788 case Hexagon::F2_sfsub:
11789 case Hexagon::L4_loadw_phys:
11790 case Hexagon::M2_cmpyrs_s0:
11791 case Hexagon::M2_cmpyrs_s1:
11792 case Hexagon::M2_cmpyrsc_s0:
11793 case Hexagon::M2_cmpyrsc_s1:
11794 case Hexagon::M2_dpmpyss_rnd_s0:
11795 case Hexagon::M2_hmmpyh_rs1:
11796 case Hexagon::M2_hmmpyh_s1:
11797 case Hexagon::M2_hmmpyl_rs1:
11798 case Hexagon::M2_hmmpyl_s1:
11799 case Hexagon::M2_mpy_hh_s0:
11800 case Hexagon::M2_mpy_hh_s1:
11801 case Hexagon::M2_mpy_hl_s0:
11802 case Hexagon::M2_mpy_hl_s1:
11803 case Hexagon::M2_mpy_lh_s0:
11804 case Hexagon::M2_mpy_lh_s1:
11805 case Hexagon::M2_mpy_ll_s0:
11806 case Hexagon::M2_mpy_ll_s1:
11807 case Hexagon::M2_mpy_rnd_hh_s0:
11808 case Hexagon::M2_mpy_rnd_hh_s1:
11809 case Hexagon::M2_mpy_rnd_hl_s0:
11810 case Hexagon::M2_mpy_rnd_hl_s1:
11811 case Hexagon::M2_mpy_rnd_lh_s0:
11812 case Hexagon::M2_mpy_rnd_lh_s1:
11813 case Hexagon::M2_mpy_rnd_ll_s0:
11814 case Hexagon::M2_mpy_rnd_ll_s1:
11815 case Hexagon::M2_mpy_sat_hh_s0:
11816 case Hexagon::M2_mpy_sat_hh_s1:
11817 case Hexagon::M2_mpy_sat_hl_s0:
11818 case Hexagon::M2_mpy_sat_hl_s1:
11819 case Hexagon::M2_mpy_sat_lh_s0:
11820 case Hexagon::M2_mpy_sat_lh_s1:
11821 case Hexagon::M2_mpy_sat_ll_s0:
11822 case Hexagon::M2_mpy_sat_ll_s1:
11823 case Hexagon::M2_mpy_sat_rnd_hh_s0:
11824 case Hexagon::M2_mpy_sat_rnd_hh_s1:
11825 case Hexagon::M2_mpy_sat_rnd_hl_s0:
11826 case Hexagon::M2_mpy_sat_rnd_hl_s1:
11827 case Hexagon::M2_mpy_sat_rnd_lh_s0:
11828 case Hexagon::M2_mpy_sat_rnd_lh_s1:
11829 case Hexagon::M2_mpy_sat_rnd_ll_s0:
11830 case Hexagon::M2_mpy_sat_rnd_ll_s1:
11831 case Hexagon::M2_mpy_up:
11832 case Hexagon::M2_mpy_up_s1:
11833 case Hexagon::M2_mpy_up_s1_sat:
11834 case Hexagon::M2_mpyi:
11835 case Hexagon::M2_mpysu_up:
11836 case Hexagon::M2_mpyu_hh_s0:
11837 case Hexagon::M2_mpyu_hh_s1:
11838 case Hexagon::M2_mpyu_hl_s0:
11839 case Hexagon::M2_mpyu_hl_s1:
11840 case Hexagon::M2_mpyu_lh_s0:
11841 case Hexagon::M2_mpyu_lh_s1:
11842 case Hexagon::M2_mpyu_ll_s0:
11843 case Hexagon::M2_mpyu_ll_s1:
11844 case Hexagon::M2_mpyu_up:
11845 case Hexagon::M2_vmpy2s_s0pack:
11846 case Hexagon::M2_vmpy2s_s1pack:
11847 case Hexagon::S2_asl_r_r:
11848 case Hexagon::S2_asl_r_r_sat:
11849 case Hexagon::S2_asr_r_r:
11850 case Hexagon::S2_asr_r_r_sat:
11851 case Hexagon::S2_clrbit_r:
11852 case Hexagon::S2_lsl_r_r:
11853 case Hexagon::S2_lsr_r_r:
11854 case Hexagon::S2_setbit_r:
11855 case Hexagon::S2_togglebit_r:
11856 case Hexagon::S4_parity:
11857 case Hexagon::dep_A2_addsat: {
11858 switch (OpNum) {
11859 case 1:
11860 // op: Rs32
11861 return 16;
11862 case 2:
11863 // op: Rt32
11864 return 8;
11865 case 0:
11866 // op: Rd32
11867 return 0;
11868 }
11869 break;
11870 }
11871 case Hexagon::A2_combinew:
11872 case Hexagon::A4_bitsplit:
11873 case Hexagon::M2_cmpyi_s0:
11874 case Hexagon::M2_cmpyr_s0:
11875 case Hexagon::M2_cmpys_s0:
11876 case Hexagon::M2_cmpys_s1:
11877 case Hexagon::M2_cmpysc_s0:
11878 case Hexagon::M2_cmpysc_s1:
11879 case Hexagon::M2_dpmpyss_s0:
11880 case Hexagon::M2_dpmpyuu_s0:
11881 case Hexagon::M2_mpyd_hh_s0:
11882 case Hexagon::M2_mpyd_hh_s1:
11883 case Hexagon::M2_mpyd_hl_s0:
11884 case Hexagon::M2_mpyd_hl_s1:
11885 case Hexagon::M2_mpyd_lh_s0:
11886 case Hexagon::M2_mpyd_lh_s1:
11887 case Hexagon::M2_mpyd_ll_s0:
11888 case Hexagon::M2_mpyd_ll_s1:
11889 case Hexagon::M2_mpyd_rnd_hh_s0:
11890 case Hexagon::M2_mpyd_rnd_hh_s1:
11891 case Hexagon::M2_mpyd_rnd_hl_s0:
11892 case Hexagon::M2_mpyd_rnd_hl_s1:
11893 case Hexagon::M2_mpyd_rnd_lh_s0:
11894 case Hexagon::M2_mpyd_rnd_lh_s1:
11895 case Hexagon::M2_mpyd_rnd_ll_s0:
11896 case Hexagon::M2_mpyd_rnd_ll_s1:
11897 case Hexagon::M2_mpyud_hh_s0:
11898 case Hexagon::M2_mpyud_hh_s1:
11899 case Hexagon::M2_mpyud_hl_s0:
11900 case Hexagon::M2_mpyud_hl_s1:
11901 case Hexagon::M2_mpyud_lh_s0:
11902 case Hexagon::M2_mpyud_lh_s1:
11903 case Hexagon::M2_mpyud_ll_s0:
11904 case Hexagon::M2_mpyud_ll_s1:
11905 case Hexagon::M2_vmpy2s_s0:
11906 case Hexagon::M2_vmpy2s_s1:
11907 case Hexagon::M2_vmpy2su_s0:
11908 case Hexagon::M2_vmpy2su_s1:
11909 case Hexagon::M4_pmpyw:
11910 case Hexagon::M4_vpmpyh:
11911 case Hexagon::M5_vmpybsu:
11912 case Hexagon::M5_vmpybuu:
11913 case Hexagon::S2_packhl:
11914 case Hexagon::dep_S2_packhl: {
11915 switch (OpNum) {
11916 case 1:
11917 // op: Rs32
11918 return 16;
11919 case 2:
11920 // op: Rt32
11921 return 8;
11922 case 0:
11923 // op: Rdd32
11924 return 0;
11925 }
11926 break;
11927 }
11928 case Hexagon::S4_stored_locked: {
11929 switch (OpNum) {
11930 case 1:
11931 // op: Rs32
11932 return 16;
11933 case 2:
11934 // op: Rtt32
11935 return 8;
11936 case 0:
11937 // op: Pd4
11938 return 0;
11939 }
11940 break;
11941 }
11942 case Hexagon::S2_extractu_rp:
11943 case Hexagon::S4_extract_rp: {
11944 switch (OpNum) {
11945 case 1:
11946 // op: Rs32
11947 return 16;
11948 case 2:
11949 // op: Rtt32
11950 return 8;
11951 case 0:
11952 // op: Rd32
11953 return 0;
11954 }
11955 break;
11956 }
11957 case Hexagon::A4_tfrpcp: {
11958 switch (OpNum) {
11959 case 1:
11960 // op: Rss32
11961 return 16;
11962 case 0:
11963 // op: Cdd32
11964 return 0;
11965 }
11966 break;
11967 }
11968 case Hexagon::G4_tfrgpcp: {
11969 switch (OpNum) {
11970 case 1:
11971 // op: Rss32
11972 return 16;
11973 case 0:
11974 // op: Gdd32
11975 return 0;
11976 }
11977 break;
11978 }
11979 case Hexagon::A2_roundsat:
11980 case Hexagon::A2_sat:
11981 case Hexagon::F2_conv_d2sf:
11982 case Hexagon::F2_conv_df2sf:
11983 case Hexagon::F2_conv_df2uw:
11984 case Hexagon::F2_conv_df2uw_chop:
11985 case Hexagon::F2_conv_df2w:
11986 case Hexagon::F2_conv_df2w_chop:
11987 case Hexagon::F2_conv_ud2sf:
11988 case Hexagon::S2_cl0p:
11989 case Hexagon::S2_cl1p:
11990 case Hexagon::S2_clbp:
11991 case Hexagon::S2_ct0p:
11992 case Hexagon::S2_ct1p:
11993 case Hexagon::S2_vrndpackwh:
11994 case Hexagon::S2_vrndpackwhs:
11995 case Hexagon::S2_vsathb:
11996 case Hexagon::S2_vsathub:
11997 case Hexagon::S2_vsatwh:
11998 case Hexagon::S2_vsatwuh:
11999 case Hexagon::S2_vtrunehb:
12000 case Hexagon::S2_vtrunohb:
12001 case Hexagon::S4_clbpnorm:
12002 case Hexagon::S5_popcountp:
12003 case Hexagon::Y2_tlbpp:
12004 case Hexagon::Y5_tlboc: {
12005 switch (OpNum) {
12006 case 1:
12007 // op: Rss32
12008 return 16;
12009 case 0:
12010 // op: Rd32
12011 return 0;
12012 }
12013 break;
12014 }
12015 case Hexagon::A2_absp:
12016 case Hexagon::A2_negp:
12017 case Hexagon::A2_notp:
12018 case Hexagon::A2_vabsh:
12019 case Hexagon::A2_vabshsat:
12020 case Hexagon::A2_vabsw:
12021 case Hexagon::A2_vabswsat:
12022 case Hexagon::A2_vconj:
12023 case Hexagon::F2_conv_d2df:
12024 case Hexagon::F2_conv_df2d:
12025 case Hexagon::F2_conv_df2d_chop:
12026 case Hexagon::F2_conv_df2ud:
12027 case Hexagon::F2_conv_df2ud_chop:
12028 case Hexagon::F2_conv_ud2df:
12029 case Hexagon::S2_brevp:
12030 case Hexagon::S2_deinterleave:
12031 case Hexagon::S2_interleave:
12032 case Hexagon::S2_vsathb_nopack:
12033 case Hexagon::S2_vsathub_nopack:
12034 case Hexagon::S2_vsatwh_nopack:
12035 case Hexagon::S2_vsatwuh_nopack: {
12036 switch (OpNum) {
12037 case 1:
12038 // op: Rss32
12039 return 16;
12040 case 0:
12041 // op: Rdd32
12042 return 0;
12043 }
12044 break;
12045 }
12046 case Hexagon::Y4_tfrspcp: {
12047 switch (OpNum) {
12048 case 1:
12049 // op: Rss32
12050 return 16;
12051 case 0:
12052 // op: Sdd128
12053 return 0;
12054 }
12055 break;
12056 }
12057 case Hexagon::A4_tlbmatch: {
12058 switch (OpNum) {
12059 case 1:
12060 // op: Rss32
12061 return 16;
12062 case 2:
12063 // op: Rt32
12064 return 8;
12065 case 0:
12066 // op: Pd4
12067 return 0;
12068 }
12069 break;
12070 }
12071 case Hexagon::M4_cmpyi_wh:
12072 case Hexagon::M4_cmpyi_whc:
12073 case Hexagon::M4_cmpyr_wh:
12074 case Hexagon::M4_cmpyr_whc:
12075 case Hexagon::S2_asr_r_svw_trun:
12076 case Hexagon::Y5_ctlbw: {
12077 switch (OpNum) {
12078 case 1:
12079 // op: Rss32
12080 return 16;
12081 case 2:
12082 // op: Rt32
12083 return 8;
12084 case 0:
12085 // op: Rd32
12086 return 0;
12087 }
12088 break;
12089 }
12090 case Hexagon::A7_croundd_rr:
12091 case Hexagon::S2_asl_r_p:
12092 case Hexagon::S2_asl_r_vh:
12093 case Hexagon::S2_asl_r_vw:
12094 case Hexagon::S2_asr_r_p:
12095 case Hexagon::S2_asr_r_vh:
12096 case Hexagon::S2_asr_r_vw:
12097 case Hexagon::S2_lsl_r_p:
12098 case Hexagon::S2_lsl_r_vh:
12099 case Hexagon::S2_lsl_r_vw:
12100 case Hexagon::S2_lsr_r_p:
12101 case Hexagon::S2_lsr_r_vh:
12102 case Hexagon::S2_lsr_r_vw:
12103 case Hexagon::S2_vcnegh:
12104 case Hexagon::S2_vcrotate: {
12105 switch (OpNum) {
12106 case 1:
12107 // op: Rss32
12108 return 16;
12109 case 2:
12110 // op: Rt32
12111 return 8;
12112 case 0:
12113 // op: Rdd32
12114 return 0;
12115 }
12116 break;
12117 }
12118 case Hexagon::A2_vcmpbeq:
12119 case Hexagon::A2_vcmpbgtu:
12120 case Hexagon::A2_vcmpheq:
12121 case Hexagon::A2_vcmphgt:
12122 case Hexagon::A2_vcmphgtu:
12123 case Hexagon::A2_vcmpweq:
12124 case Hexagon::A2_vcmpwgt:
12125 case Hexagon::A2_vcmpwgtu:
12126 case Hexagon::A4_boundscheck_hi:
12127 case Hexagon::A4_boundscheck_lo:
12128 case Hexagon::A4_vcmpbeq_any:
12129 case Hexagon::A4_vcmpbgt:
12130 case Hexagon::A6_vcmpbeq_notany:
12131 case Hexagon::C2_cmpeqp:
12132 case Hexagon::C2_cmpgtp:
12133 case Hexagon::C2_cmpgtup:
12134 case Hexagon::F2_dfcmpeq:
12135 case Hexagon::F2_dfcmpge:
12136 case Hexagon::F2_dfcmpgt:
12137 case Hexagon::F2_dfcmpuo: {
12138 switch (OpNum) {
12139 case 1:
12140 // op: Rss32
12141 return 16;
12142 case 2:
12143 // op: Rtt32
12144 return 8;
12145 case 0:
12146 // op: Pd4
12147 return 0;
12148 }
12149 break;
12150 }
12151 case Hexagon::A5_vaddhubs:
12152 case Hexagon::M2_vdmpyrs_s0:
12153 case Hexagon::M2_vdmpyrs_s1:
12154 case Hexagon::M2_vraddh:
12155 case Hexagon::M2_vradduh:
12156 case Hexagon::M2_vrcmpys_s1rp_h:
12157 case Hexagon::M2_vrcmpys_s1rp_l:
12158 case Hexagon::M7_wcmpyiw:
12159 case Hexagon::M7_wcmpyiw_rnd:
12160 case Hexagon::M7_wcmpyiwc:
12161 case Hexagon::M7_wcmpyiwc_rnd:
12162 case Hexagon::M7_wcmpyrw:
12163 case Hexagon::M7_wcmpyrw_rnd:
12164 case Hexagon::M7_wcmpyrwc:
12165 case Hexagon::M7_wcmpyrwc_rnd:
12166 case Hexagon::S2_parityp: {
12167 switch (OpNum) {
12168 case 1:
12169 // op: Rss32
12170 return 16;
12171 case 2:
12172 // op: Rtt32
12173 return 8;
12174 case 0:
12175 // op: Rd32
12176 return 0;
12177 }
12178 break;
12179 }
12180 case Hexagon::A2_addp:
12181 case Hexagon::A2_addpsat:
12182 case Hexagon::A2_addsph:
12183 case Hexagon::A2_addspl:
12184 case Hexagon::A2_andp:
12185 case Hexagon::A2_maxp:
12186 case Hexagon::A2_maxup:
12187 case Hexagon::A2_orp:
12188 case Hexagon::A2_vaddh:
12189 case Hexagon::A2_vaddhs:
12190 case Hexagon::A2_vaddub:
12191 case Hexagon::A2_vaddubs:
12192 case Hexagon::A2_vadduhs:
12193 case Hexagon::A2_vaddw:
12194 case Hexagon::A2_vaddws:
12195 case Hexagon::A2_vavgh:
12196 case Hexagon::A2_vavghcr:
12197 case Hexagon::A2_vavghr:
12198 case Hexagon::A2_vavgub:
12199 case Hexagon::A2_vavgubr:
12200 case Hexagon::A2_vavguh:
12201 case Hexagon::A2_vavguhr:
12202 case Hexagon::A2_vavguw:
12203 case Hexagon::A2_vavguwr:
12204 case Hexagon::A2_vavgw:
12205 case Hexagon::A2_vavgwcr:
12206 case Hexagon::A2_vavgwr:
12207 case Hexagon::A2_vraddub:
12208 case Hexagon::A2_vrsadub:
12209 case Hexagon::A2_xorp:
12210 case Hexagon::F2_dfadd:
12211 case Hexagon::F2_dfmax:
12212 case Hexagon::F2_dfmin:
12213 case Hexagon::F2_dfmpyfix:
12214 case Hexagon::F2_dfmpyll:
12215 case Hexagon::F2_dfsub:
12216 case Hexagon::M2_mmpyh_rs0:
12217 case Hexagon::M2_mmpyh_rs1:
12218 case Hexagon::M2_mmpyh_s0:
12219 case Hexagon::M2_mmpyh_s1:
12220 case Hexagon::M2_mmpyl_rs0:
12221 case Hexagon::M2_mmpyl_rs1:
12222 case Hexagon::M2_mmpyl_s0:
12223 case Hexagon::M2_mmpyl_s1:
12224 case Hexagon::M2_mmpyuh_rs0:
12225 case Hexagon::M2_mmpyuh_rs1:
12226 case Hexagon::M2_mmpyuh_s0:
12227 case Hexagon::M2_mmpyuh_s1:
12228 case Hexagon::M2_mmpyul_rs0:
12229 case Hexagon::M2_mmpyul_rs1:
12230 case Hexagon::M2_mmpyul_s0:
12231 case Hexagon::M2_mmpyul_s1:
12232 case Hexagon::M2_vcmpy_s0_sat_i:
12233 case Hexagon::M2_vcmpy_s0_sat_r:
12234 case Hexagon::M2_vcmpy_s1_sat_i:
12235 case Hexagon::M2_vcmpy_s1_sat_r:
12236 case Hexagon::M2_vdmpys_s0:
12237 case Hexagon::M2_vdmpys_s1:
12238 case Hexagon::M2_vmpy2es_s0:
12239 case Hexagon::M2_vmpy2es_s1:
12240 case Hexagon::M2_vrcmpyi_s0:
12241 case Hexagon::M2_vrcmpyi_s0c:
12242 case Hexagon::M2_vrcmpyr_s0:
12243 case Hexagon::M2_vrcmpyr_s0c:
12244 case Hexagon::M2_vrcmpys_s1_h:
12245 case Hexagon::M2_vrcmpys_s1_l:
12246 case Hexagon::M2_vrmpy_s0:
12247 case Hexagon::M4_vrmpyeh_s0:
12248 case Hexagon::M4_vrmpyeh_s1:
12249 case Hexagon::M4_vrmpyoh_s0:
12250 case Hexagon::M4_vrmpyoh_s1:
12251 case Hexagon::M5_vdmpybsu:
12252 case Hexagon::M5_vrmpybsu:
12253 case Hexagon::M5_vrmpybuu:
12254 case Hexagon::M7_dcmpyiw:
12255 case Hexagon::M7_dcmpyiwc:
12256 case Hexagon::M7_dcmpyrw:
12257 case Hexagon::M7_dcmpyrwc:
12258 case Hexagon::S2_cabacdecbin:
12259 case Hexagon::S2_extractup_rp:
12260 case Hexagon::S2_lfsp:
12261 case Hexagon::S2_shuffeb:
12262 case Hexagon::S2_shuffeh:
12263 case Hexagon::S2_vtrunewh:
12264 case Hexagon::S2_vtrunowh:
12265 case Hexagon::S4_extractp_rp:
12266 case Hexagon::S4_vxaddsubh:
12267 case Hexagon::S4_vxaddsubhr:
12268 case Hexagon::S4_vxaddsubw:
12269 case Hexagon::S4_vxsubaddh:
12270 case Hexagon::S4_vxsubaddhr:
12271 case Hexagon::S4_vxsubaddw:
12272 case Hexagon::S6_vtrunehb_ppp:
12273 case Hexagon::S6_vtrunohb_ppp: {
12274 switch (OpNum) {
12275 case 1:
12276 // op: Rss32
12277 return 16;
12278 case 2:
12279 // op: Rtt32
12280 return 8;
12281 case 0:
12282 // op: Rdd32
12283 return 0;
12284 }
12285 break;
12286 }
12287 case Hexagon::S2_vsplicerb: {
12288 switch (OpNum) {
12289 case 1:
12290 // op: Rss32
12291 return 16;
12292 case 2:
12293 // op: Rtt32
12294 return 8;
12295 case 3:
12296 // op: Pu4
12297 return 5;
12298 case 0:
12299 // op: Rdd32
12300 return 0;
12301 }
12302 break;
12303 }
12304 case Hexagon::V6_pred_scalar2:
12305 case Hexagon::V6_pred_scalar2v2: {
12306 switch (OpNum) {
12307 case 1:
12308 // op: Rt32
12309 return 16;
12310 case 0:
12311 // op: Qd4
12312 return 0;
12313 }
12314 break;
12315 }
12316 case Hexagon::V6_lvsplatb:
12317 case Hexagon::V6_lvsplath:
12318 case Hexagon::V6_lvsplatw:
12319 case Hexagon::V6_zextract: {
12320 switch (OpNum) {
12321 case 1:
12322 // op: Rt32
12323 return 16;
12324 case 0:
12325 // op: Vd32
12326 return 0;
12327 }
12328 break;
12329 }
12330 case Hexagon::A2_addh_h16_hh:
12331 case Hexagon::A2_addh_h16_hl:
12332 case Hexagon::A2_addh_h16_lh:
12333 case Hexagon::A2_addh_h16_ll:
12334 case Hexagon::A2_addh_h16_sat_hh:
12335 case Hexagon::A2_addh_h16_sat_hl:
12336 case Hexagon::A2_addh_h16_sat_lh:
12337 case Hexagon::A2_addh_h16_sat_ll:
12338 case Hexagon::A2_addh_l16_hl:
12339 case Hexagon::A2_addh_l16_ll:
12340 case Hexagon::A2_addh_l16_sat_hl:
12341 case Hexagon::A2_addh_l16_sat_ll:
12342 case Hexagon::A2_combine_hh:
12343 case Hexagon::A2_combine_hl:
12344 case Hexagon::A2_combine_lh:
12345 case Hexagon::A2_combine_ll:
12346 case Hexagon::A2_min:
12347 case Hexagon::A2_minu:
12348 case Hexagon::A2_sub:
12349 case Hexagon::A2_subh_h16_hh:
12350 case Hexagon::A2_subh_h16_hl:
12351 case Hexagon::A2_subh_h16_lh:
12352 case Hexagon::A2_subh_h16_ll:
12353 case Hexagon::A2_subh_h16_sat_hh:
12354 case Hexagon::A2_subh_h16_sat_hl:
12355 case Hexagon::A2_subh_h16_sat_lh:
12356 case Hexagon::A2_subh_h16_sat_ll:
12357 case Hexagon::A2_subh_l16_hl:
12358 case Hexagon::A2_subh_l16_ll:
12359 case Hexagon::A2_subh_l16_sat_hl:
12360 case Hexagon::A2_subh_l16_sat_ll:
12361 case Hexagon::A2_subsat:
12362 case Hexagon::A2_svnavgh:
12363 case Hexagon::A2_svsubh:
12364 case Hexagon::A2_svsubhs:
12365 case Hexagon::A2_svsubuhs:
12366 case Hexagon::A4_andn:
12367 case Hexagon::A4_orn:
12368 case Hexagon::dep_A2_subsat: {
12369 switch (OpNum) {
12370 case 1:
12371 // op: Rt32
12372 return 8;
12373 case 2:
12374 // op: Rs32
12375 return 16;
12376 case 0:
12377 // op: Rd32
12378 return 0;
12379 }
12380 break;
12381 }
12382 case Hexagon::A2_minp:
12383 case Hexagon::A2_minup:
12384 case Hexagon::A2_subp:
12385 case Hexagon::A2_vmaxb:
12386 case Hexagon::A2_vmaxh:
12387 case Hexagon::A2_vmaxub:
12388 case Hexagon::A2_vmaxuh:
12389 case Hexagon::A2_vmaxuw:
12390 case Hexagon::A2_vmaxw:
12391 case Hexagon::A2_vminb:
12392 case Hexagon::A2_vminh:
12393 case Hexagon::A2_vminub:
12394 case Hexagon::A2_vminuh:
12395 case Hexagon::A2_vminuw:
12396 case Hexagon::A2_vminw:
12397 case Hexagon::A2_vnavgh:
12398 case Hexagon::A2_vnavghcr:
12399 case Hexagon::A2_vnavghr:
12400 case Hexagon::A2_vnavgw:
12401 case Hexagon::A2_vnavgwcr:
12402 case Hexagon::A2_vnavgwr:
12403 case Hexagon::A2_vsubh:
12404 case Hexagon::A2_vsubhs:
12405 case Hexagon::A2_vsubub:
12406 case Hexagon::A2_vsububs:
12407 case Hexagon::A2_vsubuhs:
12408 case Hexagon::A2_vsubw:
12409 case Hexagon::A2_vsubws:
12410 case Hexagon::A4_andnp:
12411 case Hexagon::A4_ornp:
12412 case Hexagon::M2_vabsdiffh:
12413 case Hexagon::M2_vabsdiffw:
12414 case Hexagon::M6_vabsdiffb:
12415 case Hexagon::M6_vabsdiffub:
12416 case Hexagon::S2_shuffob:
12417 case Hexagon::S2_shuffoh: {
12418 switch (OpNum) {
12419 case 1:
12420 // op: Rtt32
12421 return 8;
12422 case 2:
12423 // op: Rss32
12424 return 16;
12425 case 0:
12426 // op: Rdd32
12427 return 0;
12428 }
12429 break;
12430 }
12431 case Hexagon::S2_valignrb: {
12432 switch (OpNum) {
12433 case 1:
12434 // op: Rtt32
12435 return 8;
12436 case 2:
12437 // op: Rss32
12438 return 16;
12439 case 3:
12440 // op: Pu4
12441 return 5;
12442 case 0:
12443 // op: Rdd32
12444 return 0;
12445 }
12446 break;
12447 }
12448 case Hexagon::M4_mpyrr_addr: {
12449 switch (OpNum) {
12450 case 1:
12451 // op: Ru32
12452 return 0;
12453 case 3:
12454 // op: Rs32
12455 return 16;
12456 case 0:
12457 // op: Ry32
12458 return 8;
12459 }
12460 break;
12461 }
12462 case Hexagon::Y2_tfrscrr: {
12463 switch (OpNum) {
12464 case 1:
12465 // op: Ss128
12466 return 16;
12467 case 0:
12468 // op: Rd32
12469 return 0;
12470 }
12471 break;
12472 }
12473 case Hexagon::Y4_tfrscpp: {
12474 switch (OpNum) {
12475 case 1:
12476 // op: Sss128
12477 return 16;
12478 case 0:
12479 // op: Rdd32
12480 return 0;
12481 }
12482 break;
12483 }
12484 case Hexagon::V6_vabs_f8:
12485 case Hexagon::V6_vabs_hf:
12486 case Hexagon::V6_vabs_qf16_hf:
12487 case Hexagon::V6_vabs_qf16_qf16:
12488 case Hexagon::V6_vabs_qf32_qf32:
12489 case Hexagon::V6_vabs_qf32_sf:
12490 case Hexagon::V6_vabs_sf:
12491 case Hexagon::V6_vabsb:
12492 case Hexagon::V6_vabsb_sat:
12493 case Hexagon::V6_vabsh:
12494 case Hexagon::V6_vabsh_sat:
12495 case Hexagon::V6_vabsw:
12496 case Hexagon::V6_vabsw_sat:
12497 case Hexagon::V6_vassign:
12498 case Hexagon::V6_vassign_fp:
12499 case Hexagon::V6_vassign_tmp:
12500 case Hexagon::V6_vcl0h:
12501 case Hexagon::V6_vcl0w:
12502 case Hexagon::V6_vconv_f8_qf16:
12503 case Hexagon::V6_vconv_h_hf:
12504 case Hexagon::V6_vconv_h_hf_rnd:
12505 case Hexagon::V6_vconv_hf_h:
12506 case Hexagon::V6_vconv_hf_qf16:
12507 case Hexagon::V6_vconv_qf16_hf:
12508 case Hexagon::V6_vconv_qf16_qf16:
12509 case Hexagon::V6_vconv_qf32_qf32:
12510 case Hexagon::V6_vconv_qf32_sf:
12511 case Hexagon::V6_vconv_sf_qf32:
12512 case Hexagon::V6_vconv_sf_w:
12513 case Hexagon::V6_vconv_w_sf:
12514 case Hexagon::V6_vcvt_h_hf:
12515 case Hexagon::V6_vcvt_hf_h:
12516 case Hexagon::V6_vcvt_hf_uh:
12517 case Hexagon::V6_vcvt_uh_hf:
12518 case Hexagon::V6_vdealb:
12519 case Hexagon::V6_vdealh:
12520 case Hexagon::V6_vfneg_f8:
12521 case Hexagon::V6_vfneg_hf:
12522 case Hexagon::V6_vfneg_sf:
12523 case Hexagon::V6_vilog2_hf:
12524 case Hexagon::V6_vilog2_qf16:
12525 case Hexagon::V6_vilog2_qf32:
12526 case Hexagon::V6_vilog2_sf:
12527 case Hexagon::V6_vneg_qf16_hf:
12528 case Hexagon::V6_vneg_qf16_qf16:
12529 case Hexagon::V6_vneg_qf32_qf32:
12530 case Hexagon::V6_vneg_qf32_sf:
12531 case Hexagon::V6_vnormamth:
12532 case Hexagon::V6_vnormamtw:
12533 case Hexagon::V6_vnot:
12534 case Hexagon::V6_vpopcounth:
12535 case Hexagon::V6_vshuffb:
12536 case Hexagon::V6_vshuffh: {
12537 switch (OpNum) {
12538 case 1:
12539 // op: Vu32
12540 return 8;
12541 case 0:
12542 // op: Vd32
12543 return 0;
12544 }
12545 break;
12546 }
12547 case Hexagon::V6_vconv_qf16_f8:
12548 case Hexagon::V6_vcvt2_hf_b:
12549 case Hexagon::V6_vcvt2_hf_ub:
12550 case Hexagon::V6_vcvt_hf_b:
12551 case Hexagon::V6_vcvt_hf_f8:
12552 case Hexagon::V6_vcvt_hf_ub:
12553 case Hexagon::V6_vcvt_sf_hf:
12554 case Hexagon::V6_vsb:
12555 case Hexagon::V6_vsh:
12556 case Hexagon::V6_vunpackb:
12557 case Hexagon::V6_vunpackh:
12558 case Hexagon::V6_vunpackub:
12559 case Hexagon::V6_vunpackuh:
12560 case Hexagon::V6_vzb:
12561 case Hexagon::V6_vzh: {
12562 switch (OpNum) {
12563 case 1:
12564 // op: Vu32
12565 return 8;
12566 case 0:
12567 // op: Vdd32
12568 return 0;
12569 }
12570 break;
12571 }
12572 case Hexagon::V6_extractw: {
12573 switch (OpNum) {
12574 case 1:
12575 // op: Vu32
12576 return 8;
12577 case 2:
12578 // op: Rs32
12579 return 16;
12580 case 0:
12581 // op: Rd32
12582 return 0;
12583 }
12584 break;
12585 }
12586 case Hexagon::V6_vandvrt: {
12587 switch (OpNum) {
12588 case 1:
12589 // op: Vu32
12590 return 8;
12591 case 2:
12592 // op: Rt32
12593 return 16;
12594 case 0:
12595 // op: Qd4
12596 return 0;
12597 }
12598 break;
12599 }
12600 case Hexagon::V6_get_qfext:
12601 case Hexagon::V6_set_qfext:
12602 case Hexagon::V6_vaslh:
12603 case Hexagon::V6_vaslw:
12604 case Hexagon::V6_vasrh:
12605 case Hexagon::V6_vasrw:
12606 case Hexagon::V6_vdmpybus:
12607 case Hexagon::V6_vdmpyhb:
12608 case Hexagon::V6_vdmpyhsat:
12609 case Hexagon::V6_vdmpyhsusat:
12610 case Hexagon::V6_vlsrb:
12611 case Hexagon::V6_vlsrh:
12612 case Hexagon::V6_vlsrw:
12613 case Hexagon::V6_vmpy_rt_hf:
12614 case Hexagon::V6_vmpy_rt_qf16:
12615 case Hexagon::V6_vmpy_rt_sf:
12616 case Hexagon::V6_vmpyhsrs:
12617 case Hexagon::V6_vmpyhss:
12618 case Hexagon::V6_vmpyihb:
12619 case Hexagon::V6_vmpyiwb:
12620 case Hexagon::V6_vmpyiwh:
12621 case Hexagon::V6_vmpyiwub:
12622 case Hexagon::V6_vmpyuhe:
12623 case Hexagon::V6_vrmpybus:
12624 case Hexagon::V6_vrmpyub:
12625 case Hexagon::V6_vror: {
12626 switch (OpNum) {
12627 case 1:
12628 // op: Vu32
12629 return 8;
12630 case 2:
12631 // op: Rt32
12632 return 16;
12633 case 0:
12634 // op: Vd32
12635 return 0;
12636 }
12637 break;
12638 }
12639 case Hexagon::V6_vmpybus:
12640 case Hexagon::V6_vmpyh:
12641 case Hexagon::V6_vmpyub:
12642 case Hexagon::V6_vmpyuh: {
12643 switch (OpNum) {
12644 case 1:
12645 // op: Vu32
12646 return 8;
12647 case 2:
12648 // op: Rt32
12649 return 16;
12650 case 0:
12651 // op: Vdd32
12652 return 0;
12653 }
12654 break;
12655 }
12656 case Hexagon::V6_vrmpyzbb_rt:
12657 case Hexagon::V6_vrmpyzbub_rt:
12658 case Hexagon::V6_vrmpyzcb_rt:
12659 case Hexagon::V6_vrmpyzcbs_rt:
12660 case Hexagon::V6_vrmpyznb_rt: {
12661 switch (OpNum) {
12662 case 1:
12663 // op: Vu32
12664 return 8;
12665 case 2:
12666 // op: Rt8
12667 return 16;
12668 case 0:
12669 // op: Vdddd32
12670 return 0;
12671 }
12672 break;
12673 }
12674 case Hexagon::V6_vlut4: {
12675 switch (OpNum) {
12676 case 1:
12677 // op: Vu32
12678 return 8;
12679 case 2:
12680 // op: Rtt32
12681 return 16;
12682 case 0:
12683 // op: Vd32
12684 return 0;
12685 }
12686 break;
12687 }
12688 case Hexagon::V6_vrmpybub_rtt:
12689 case Hexagon::V6_vrmpyub_rtt: {
12690 switch (OpNum) {
12691 case 1:
12692 // op: Vu32
12693 return 8;
12694 case 2:
12695 // op: Rtt32
12696 return 16;
12697 case 0:
12698 // op: Vdd32
12699 return 0;
12700 }
12701 break;
12702 }
12703 case Hexagon::V6_veqb:
12704 case Hexagon::V6_veqh:
12705 case Hexagon::V6_veqhf:
12706 case Hexagon::V6_veqsf:
12707 case Hexagon::V6_veqw:
12708 case Hexagon::V6_vgtb:
12709 case Hexagon::V6_vgtbf:
12710 case Hexagon::V6_vgth:
12711 case Hexagon::V6_vgthf:
12712 case Hexagon::V6_vgtsf:
12713 case Hexagon::V6_vgtub:
12714 case Hexagon::V6_vgtuh:
12715 case Hexagon::V6_vgtuw:
12716 case Hexagon::V6_vgtw: {
12717 switch (OpNum) {
12718 case 1:
12719 // op: Vu32
12720 return 8;
12721 case 2:
12722 // op: Vv32
12723 return 16;
12724 case 0:
12725 // op: Qd4
12726 return 0;
12727 }
12728 break;
12729 }
12730 case Hexagon::V6_vabsdiffh:
12731 case Hexagon::V6_vabsdiffub:
12732 case Hexagon::V6_vabsdiffuh:
12733 case Hexagon::V6_vabsdiffw:
12734 case Hexagon::V6_vadd_hf:
12735 case Hexagon::V6_vadd_hf_hf:
12736 case Hexagon::V6_vadd_qf16:
12737 case Hexagon::V6_vadd_qf16_mix:
12738 case Hexagon::V6_vadd_qf32:
12739 case Hexagon::V6_vadd_qf32_mix:
12740 case Hexagon::V6_vadd_sf:
12741 case Hexagon::V6_vadd_sf_sf:
12742 case Hexagon::V6_vaddb:
12743 case Hexagon::V6_vaddbsat:
12744 case Hexagon::V6_vaddclbh:
12745 case Hexagon::V6_vaddclbw:
12746 case Hexagon::V6_vaddh:
12747 case Hexagon::V6_vaddhsat:
12748 case Hexagon::V6_vaddubsat:
12749 case Hexagon::V6_vaddububb_sat:
12750 case Hexagon::V6_vadduhsat:
12751 case Hexagon::V6_vadduwsat:
12752 case Hexagon::V6_vaddw:
12753 case Hexagon::V6_vaddwsat:
12754 case Hexagon::V6_vand:
12755 case Hexagon::V6_vaslhv:
12756 case Hexagon::V6_vaslwv:
12757 case Hexagon::V6_vasrhv:
12758 case Hexagon::V6_vasrwv:
12759 case Hexagon::V6_vavgb:
12760 case Hexagon::V6_vavgbrnd:
12761 case Hexagon::V6_vavgh:
12762 case Hexagon::V6_vavghrnd:
12763 case Hexagon::V6_vavgub:
12764 case Hexagon::V6_vavgubrnd:
12765 case Hexagon::V6_vavguh:
12766 case Hexagon::V6_vavguhrnd:
12767 case Hexagon::V6_vavguw:
12768 case Hexagon::V6_vavguwrnd:
12769 case Hexagon::V6_vavgw:
12770 case Hexagon::V6_vavgwrnd:
12771 case Hexagon::V6_vcvt2_b_hf:
12772 case Hexagon::V6_vcvt2_ub_hf:
12773 case Hexagon::V6_vcvt_b_hf:
12774 case Hexagon::V6_vcvt_bf_sf:
12775 case Hexagon::V6_vcvt_f8_hf:
12776 case Hexagon::V6_vcvt_hf_sf:
12777 case Hexagon::V6_vcvt_ub_hf:
12778 case Hexagon::V6_vdealb4w:
12779 case Hexagon::V6_vdelta:
12780 case Hexagon::V6_vdmpy_sf_hf:
12781 case Hexagon::V6_vdmpyhvsat:
12782 case Hexagon::V6_vfmax_f8:
12783 case Hexagon::V6_vfmax_hf:
12784 case Hexagon::V6_vfmax_sf:
12785 case Hexagon::V6_vfmin_f8:
12786 case Hexagon::V6_vfmin_hf:
12787 case Hexagon::V6_vfmin_sf:
12788 case Hexagon::V6_vlsrhv:
12789 case Hexagon::V6_vlsrwv:
12790 case Hexagon::V6_vmax_bf:
12791 case Hexagon::V6_vmax_hf:
12792 case Hexagon::V6_vmax_sf:
12793 case Hexagon::V6_vmaxb:
12794 case Hexagon::V6_vmaxh:
12795 case Hexagon::V6_vmaxub:
12796 case Hexagon::V6_vmaxuh:
12797 case Hexagon::V6_vmaxw:
12798 case Hexagon::V6_vmerge_qf:
12799 case Hexagon::V6_vmin_bf:
12800 case Hexagon::V6_vmin_hf:
12801 case Hexagon::V6_vmin_sf:
12802 case Hexagon::V6_vminb:
12803 case Hexagon::V6_vminh:
12804 case Hexagon::V6_vminub:
12805 case Hexagon::V6_vminuh:
12806 case Hexagon::V6_vminw:
12807 case Hexagon::V6_vmpy_hf_hf:
12808 case Hexagon::V6_vmpy_qf16:
12809 case Hexagon::V6_vmpy_qf16_hf:
12810 case Hexagon::V6_vmpy_qf16_mix_hf:
12811 case Hexagon::V6_vmpy_qf32:
12812 case Hexagon::V6_vmpy_qf32_sf:
12813 case Hexagon::V6_vmpy_sf_sf:
12814 case Hexagon::V6_vmpyewuh:
12815 case Hexagon::V6_vmpyhvsrs:
12816 case Hexagon::V6_vmpyieoh:
12817 case Hexagon::V6_vmpyiewuh:
12818 case Hexagon::V6_vmpyih:
12819 case Hexagon::V6_vmpyiowh:
12820 case Hexagon::V6_vmpyowh:
12821 case Hexagon::V6_vmpyowh_rnd:
12822 case Hexagon::V6_vmpyuhvs:
12823 case Hexagon::V6_vnavgb:
12824 case Hexagon::V6_vnavgh:
12825 case Hexagon::V6_vnavgub:
12826 case Hexagon::V6_vnavgw:
12827 case Hexagon::V6_vor:
12828 case Hexagon::V6_vpackeb:
12829 case Hexagon::V6_vpackeh:
12830 case Hexagon::V6_vpackhb_sat:
12831 case Hexagon::V6_vpackhub_sat:
12832 case Hexagon::V6_vpackob:
12833 case Hexagon::V6_vpackoh:
12834 case Hexagon::V6_vpackwh_sat:
12835 case Hexagon::V6_vpackwuh_sat:
12836 case Hexagon::V6_vrdelta:
12837 case Hexagon::V6_vrmpybusv:
12838 case Hexagon::V6_vrmpybv:
12839 case Hexagon::V6_vrmpyubv:
12840 case Hexagon::V6_vrotr:
12841 case Hexagon::V6_vroundhb:
12842 case Hexagon::V6_vroundhub:
12843 case Hexagon::V6_vrounduhub:
12844 case Hexagon::V6_vrounduwuh:
12845 case Hexagon::V6_vroundwh:
12846 case Hexagon::V6_vroundwuh:
12847 case Hexagon::V6_vsatdw:
12848 case Hexagon::V6_vsathub:
12849 case Hexagon::V6_vsatuwuh:
12850 case Hexagon::V6_vsatwh:
12851 case Hexagon::V6_vshufeh:
12852 case Hexagon::V6_vshuffeb:
12853 case Hexagon::V6_vshuffob:
12854 case Hexagon::V6_vshufoh:
12855 case Hexagon::V6_vsub_hf:
12856 case Hexagon::V6_vsub_hf_hf:
12857 case Hexagon::V6_vsub_hf_mix:
12858 case Hexagon::V6_vsub_qf16:
12859 case Hexagon::V6_vsub_qf16_mix:
12860 case Hexagon::V6_vsub_qf32:
12861 case Hexagon::V6_vsub_qf32_mix:
12862 case Hexagon::V6_vsub_sf:
12863 case Hexagon::V6_vsub_sf_mix:
12864 case Hexagon::V6_vsub_sf_sf:
12865 case Hexagon::V6_vsubb:
12866 case Hexagon::V6_vsubbsat:
12867 case Hexagon::V6_vsubh:
12868 case Hexagon::V6_vsubhsat:
12869 case Hexagon::V6_vsububsat:
12870 case Hexagon::V6_vsubububb_sat:
12871 case Hexagon::V6_vsubuhsat:
12872 case Hexagon::V6_vsubuwsat:
12873 case Hexagon::V6_vsubw:
12874 case Hexagon::V6_vsubwsat:
12875 case Hexagon::V6_vxor: {
12876 switch (OpNum) {
12877 case 1:
12878 // op: Vu32
12879 return 8;
12880 case 2:
12881 // op: Vv32
12882 return 16;
12883 case 0:
12884 // op: Vd32
12885 return 0;
12886 }
12887 break;
12888 }
12889 case Hexagon::V6_vadd_hf_f8:
12890 case Hexagon::V6_vadd_sf_bf:
12891 case Hexagon::V6_vadd_sf_hf:
12892 case Hexagon::V6_vaddhw:
12893 case Hexagon::V6_vaddubh:
12894 case Hexagon::V6_vadduhw:
12895 case Hexagon::V6_vcombine:
12896 case Hexagon::V6_vcombine_tmp:
12897 case Hexagon::V6_vmpy_hf_f8:
12898 case Hexagon::V6_vmpy_qf32_hf:
12899 case Hexagon::V6_vmpy_qf32_mix_hf:
12900 case Hexagon::V6_vmpy_qf32_qf16:
12901 case Hexagon::V6_vmpy_sf_bf:
12902 case Hexagon::V6_vmpy_sf_hf:
12903 case Hexagon::V6_vmpybusv:
12904 case Hexagon::V6_vmpybv:
12905 case Hexagon::V6_vmpyewuh_64:
12906 case Hexagon::V6_vmpyhus:
12907 case Hexagon::V6_vmpyhv:
12908 case Hexagon::V6_vmpyubv:
12909 case Hexagon::V6_vmpyuhv:
12910 case Hexagon::V6_vshufoeb:
12911 case Hexagon::V6_vshufoeh:
12912 case Hexagon::V6_vsub_hf_f8:
12913 case Hexagon::V6_vsub_sf_bf:
12914 case Hexagon::V6_vsub_sf_hf:
12915 case Hexagon::V6_vsubhw:
12916 case Hexagon::V6_vsububh:
12917 case Hexagon::V6_vsubuhw: {
12918 switch (OpNum) {
12919 case 1:
12920 // op: Vu32
12921 return 8;
12922 case 2:
12923 // op: Vv32
12924 return 16;
12925 case 0:
12926 // op: Vdd32
12927 return 0;
12928 }
12929 break;
12930 }
12931 case Hexagon::V6_vaddcarrysat: {
12932 switch (OpNum) {
12933 case 1:
12934 // op: Vu32
12935 return 8;
12936 case 2:
12937 // op: Vv32
12938 return 16;
12939 case 3:
12940 // op: Qs4
12941 return 5;
12942 case 0:
12943 // op: Vd32
12944 return 0;
12945 }
12946 break;
12947 }
12948 case Hexagon::V6_valign4:
12949 case Hexagon::V6_valignb:
12950 case Hexagon::V6_vasrhbrndsat:
12951 case Hexagon::V6_vasrhbsat:
12952 case Hexagon::V6_vasrhubrndsat:
12953 case Hexagon::V6_vasrhubsat:
12954 case Hexagon::V6_vasruhubrndsat:
12955 case Hexagon::V6_vasruhubsat:
12956 case Hexagon::V6_vasruwuhrndsat:
12957 case Hexagon::V6_vasruwuhsat:
12958 case Hexagon::V6_vasrwh:
12959 case Hexagon::V6_vasrwhrndsat:
12960 case Hexagon::V6_vasrwhsat:
12961 case Hexagon::V6_vasrwuhrndsat:
12962 case Hexagon::V6_vasrwuhsat:
12963 case Hexagon::V6_vlalignb:
12964 case Hexagon::V6_vlutvvb:
12965 case Hexagon::V6_vlutvvb_nm: {
12966 switch (OpNum) {
12967 case 1:
12968 // op: Vu32
12969 return 8;
12970 case 2:
12971 // op: Vv32
12972 return 19;
12973 case 3:
12974 // op: Rt8
12975 return 16;
12976 case 0:
12977 // op: Vd32
12978 return 0;
12979 }
12980 break;
12981 }
12982 case Hexagon::V6_vdealvdd:
12983 case Hexagon::V6_vlutvwh:
12984 case Hexagon::V6_vlutvwh_nm:
12985 case Hexagon::V6_vshuffvdd: {
12986 switch (OpNum) {
12987 case 1:
12988 // op: Vu32
12989 return 8;
12990 case 2:
12991 // op: Vv32
12992 return 19;
12993 case 3:
12994 // op: Rt8
12995 return 16;
12996 case 0:
12997 // op: Vdd32
12998 return 0;
12999 }
13000 break;
13001 }
13002 case Hexagon::V6_vconv_bf_qf32:
13003 case Hexagon::V6_vconv_hf_qf32: {
13004 switch (OpNum) {
13005 case 1:
13006 // op: Vuu32
13007 return 8;
13008 case 0:
13009 // op: Vd32
13010 return 0;
13011 }
13012 break;
13013 }
13014 case Hexagon::V6_vdmpyhisat:
13015 case Hexagon::V6_vdmpyhsuisat: {
13016 switch (OpNum) {
13017 case 1:
13018 // op: Vuu32
13019 return 8;
13020 case 2:
13021 // op: Rt32
13022 return 16;
13023 case 0:
13024 // op: Vd32
13025 return 0;
13026 }
13027 break;
13028 }
13029 case Hexagon::V6_vdmpybus_dv:
13030 case Hexagon::V6_vdmpyhb_dv:
13031 case Hexagon::V6_vdsaduh:
13032 case Hexagon::V6_vmpabus:
13033 case Hexagon::V6_vmpabuu:
13034 case Hexagon::V6_vmpahb:
13035 case Hexagon::V6_vmpauhb:
13036 case Hexagon::V6_vtmpyb:
13037 case Hexagon::V6_vtmpybus:
13038 case Hexagon::V6_vtmpyhb: {
13039 switch (OpNum) {
13040 case 1:
13041 // op: Vuu32
13042 return 8;
13043 case 2:
13044 // op: Rt32
13045 return 16;
13046 case 0:
13047 // op: Vdd32
13048 return 0;
13049 }
13050 break;
13051 }
13052 case Hexagon::V6_vasrvuhubrndsat:
13053 case Hexagon::V6_vasrvuhubsat:
13054 case Hexagon::V6_vasrvwuhrndsat:
13055 case Hexagon::V6_vasrvwuhsat: {
13056 switch (OpNum) {
13057 case 1:
13058 // op: Vuu32
13059 return 8;
13060 case 2:
13061 // op: Vv32
13062 return 16;
13063 case 0:
13064 // op: Vd32
13065 return 0;
13066 }
13067 break;
13068 }
13069 case Hexagon::V6_vaddb_dv:
13070 case Hexagon::V6_vaddbsat_dv:
13071 case Hexagon::V6_vaddh_dv:
13072 case Hexagon::V6_vaddhsat_dv:
13073 case Hexagon::V6_vaddubsat_dv:
13074 case Hexagon::V6_vadduhsat_dv:
13075 case Hexagon::V6_vadduwsat_dv:
13076 case Hexagon::V6_vaddw_dv:
13077 case Hexagon::V6_vaddwsat_dv:
13078 case Hexagon::V6_vmpabusv:
13079 case Hexagon::V6_vmpabuuv:
13080 case Hexagon::V6_vsubb_dv:
13081 case Hexagon::V6_vsubbsat_dv:
13082 case Hexagon::V6_vsubh_dv:
13083 case Hexagon::V6_vsubhsat_dv:
13084 case Hexagon::V6_vsububsat_dv:
13085 case Hexagon::V6_vsubuhsat_dv:
13086 case Hexagon::V6_vsubuwsat_dv:
13087 case Hexagon::V6_vsubw_dv:
13088 case Hexagon::V6_vsubwsat_dv: {
13089 switch (OpNum) {
13090 case 1:
13091 // op: Vuu32
13092 return 8;
13093 case 2:
13094 // op: Vvv32
13095 return 16;
13096 case 0:
13097 // op: Vdd32
13098 return 0;
13099 }
13100 break;
13101 }
13102 case Hexagon::L4_loadbsw2_ap:
13103 case Hexagon::L4_loadbzw2_ap:
13104 case Hexagon::L4_loadrb_ap:
13105 case Hexagon::L4_loadrh_ap:
13106 case Hexagon::L4_loadri_ap:
13107 case Hexagon::L4_loadrub_ap:
13108 case Hexagon::L4_loadruh_ap: {
13109 switch (OpNum) {
13110 case 2:
13111 // op: II
13112 return 5;
13113 case 0:
13114 // op: Rd32
13115 return 0;
13116 case 1:
13117 // op: Re32
13118 return 16;
13119 }
13120 break;
13121 }
13122 case Hexagon::L4_loadbsw4_ap:
13123 case Hexagon::L4_loadbzw4_ap:
13124 case Hexagon::L4_loadrd_ap: {
13125 switch (OpNum) {
13126 case 2:
13127 // op: II
13128 return 5;
13129 case 0:
13130 // op: Rdd32
13131 return 0;
13132 case 1:
13133 // op: Re32
13134 return 16;
13135 }
13136 break;
13137 }
13138 case Hexagon::A2_tfrih:
13139 case Hexagon::A2_tfril:
13140 case Hexagon::S2_allocframe: {
13141 switch (OpNum) {
13142 case 2:
13143 // op: Ii
13144 return 0;
13145 case 0:
13146 // op: Rx32
13147 return 16;
13148 }
13149 break;
13150 }
13151 case Hexagon::J4_cmpeq_f_jumpnv_nt:
13152 case Hexagon::J4_cmpeq_f_jumpnv_t:
13153 case Hexagon::J4_cmpeq_t_jumpnv_nt:
13154 case Hexagon::J4_cmpeq_t_jumpnv_t:
13155 case Hexagon::J4_cmpgt_f_jumpnv_nt:
13156 case Hexagon::J4_cmpgt_f_jumpnv_t:
13157 case Hexagon::J4_cmpgt_t_jumpnv_nt:
13158 case Hexagon::J4_cmpgt_t_jumpnv_t:
13159 case Hexagon::J4_cmpgtu_f_jumpnv_nt:
13160 case Hexagon::J4_cmpgtu_f_jumpnv_t:
13161 case Hexagon::J4_cmpgtu_t_jumpnv_nt:
13162 case Hexagon::J4_cmpgtu_t_jumpnv_t: {
13163 switch (OpNum) {
13164 case 2:
13165 // op: Ii
13166 return 1;
13167 case 0:
13168 // op: Ns8
13169 return 16;
13170 case 1:
13171 // op: Rt32
13172 return 8;
13173 }
13174 break;
13175 }
13176 case Hexagon::J4_cmpeqn1_f_jumpnv_nt:
13177 case Hexagon::J4_cmpeqn1_f_jumpnv_t:
13178 case Hexagon::J4_cmpeqn1_t_jumpnv_nt:
13179 case Hexagon::J4_cmpeqn1_t_jumpnv_t:
13180 case Hexagon::J4_cmpgtn1_f_jumpnv_nt:
13181 case Hexagon::J4_cmpgtn1_f_jumpnv_t:
13182 case Hexagon::J4_cmpgtn1_t_jumpnv_nt:
13183 case Hexagon::J4_cmpgtn1_t_jumpnv_t: {
13184 switch (OpNum) {
13185 case 2:
13186 // op: Ii
13187 return 1;
13188 case 0:
13189 // op: Ns8
13190 return 16;
13191 }
13192 break;
13193 }
13194 case Hexagon::J4_cmpeq_fp0_jump_nt:
13195 case Hexagon::J4_cmpeq_fp0_jump_t:
13196 case Hexagon::J4_cmpeq_fp1_jump_nt:
13197 case Hexagon::J4_cmpeq_fp1_jump_t:
13198 case Hexagon::J4_cmpeq_tp0_jump_nt:
13199 case Hexagon::J4_cmpeq_tp0_jump_t:
13200 case Hexagon::J4_cmpeq_tp1_jump_nt:
13201 case Hexagon::J4_cmpeq_tp1_jump_t:
13202 case Hexagon::J4_cmpgt_fp0_jump_nt:
13203 case Hexagon::J4_cmpgt_fp0_jump_t:
13204 case Hexagon::J4_cmpgt_fp1_jump_nt:
13205 case Hexagon::J4_cmpgt_fp1_jump_t:
13206 case Hexagon::J4_cmpgt_tp0_jump_nt:
13207 case Hexagon::J4_cmpgt_tp0_jump_t:
13208 case Hexagon::J4_cmpgt_tp1_jump_nt:
13209 case Hexagon::J4_cmpgt_tp1_jump_t:
13210 case Hexagon::J4_cmpgtu_fp0_jump_nt:
13211 case Hexagon::J4_cmpgtu_fp0_jump_t:
13212 case Hexagon::J4_cmpgtu_fp1_jump_nt:
13213 case Hexagon::J4_cmpgtu_fp1_jump_t:
13214 case Hexagon::J4_cmpgtu_tp0_jump_nt:
13215 case Hexagon::J4_cmpgtu_tp0_jump_t:
13216 case Hexagon::J4_cmpgtu_tp1_jump_nt:
13217 case Hexagon::J4_cmpgtu_tp1_jump_t: {
13218 switch (OpNum) {
13219 case 2:
13220 // op: Ii
13221 return 1;
13222 case 0:
13223 // op: Rs16
13224 return 16;
13225 case 1:
13226 // op: Rt16
13227 return 8;
13228 }
13229 break;
13230 }
13231 case Hexagon::J4_cmpeqn1_fp0_jump_nt:
13232 case Hexagon::J4_cmpeqn1_fp0_jump_t:
13233 case Hexagon::J4_cmpeqn1_fp1_jump_nt:
13234 case Hexagon::J4_cmpeqn1_fp1_jump_t:
13235 case Hexagon::J4_cmpeqn1_tp0_jump_nt:
13236 case Hexagon::J4_cmpeqn1_tp0_jump_t:
13237 case Hexagon::J4_cmpeqn1_tp1_jump_nt:
13238 case Hexagon::J4_cmpeqn1_tp1_jump_t:
13239 case Hexagon::J4_cmpgtn1_fp0_jump_nt:
13240 case Hexagon::J4_cmpgtn1_fp0_jump_t:
13241 case Hexagon::J4_cmpgtn1_fp1_jump_nt:
13242 case Hexagon::J4_cmpgtn1_fp1_jump_t:
13243 case Hexagon::J4_cmpgtn1_tp0_jump_nt:
13244 case Hexagon::J4_cmpgtn1_tp0_jump_t:
13245 case Hexagon::J4_cmpgtn1_tp1_jump_nt:
13246 case Hexagon::J4_cmpgtn1_tp1_jump_t: {
13247 switch (OpNum) {
13248 case 2:
13249 // op: Ii
13250 return 1;
13251 case 0:
13252 // op: Rs16
13253 return 16;
13254 }
13255 break;
13256 }
13257 case Hexagon::J4_cmplt_f_jumpnv_nt:
13258 case Hexagon::J4_cmplt_f_jumpnv_t:
13259 case Hexagon::J4_cmplt_t_jumpnv_nt:
13260 case Hexagon::J4_cmplt_t_jumpnv_t:
13261 case Hexagon::J4_cmpltu_f_jumpnv_nt:
13262 case Hexagon::J4_cmpltu_f_jumpnv_t:
13263 case Hexagon::J4_cmpltu_t_jumpnv_nt:
13264 case Hexagon::J4_cmpltu_t_jumpnv_t: {
13265 switch (OpNum) {
13266 case 2:
13267 // op: Ii
13268 return 1;
13269 case 0:
13270 // op: Rt32
13271 return 8;
13272 case 1:
13273 // op: Ns8
13274 return 16;
13275 }
13276 break;
13277 }
13278 case Hexagon::J4_jumpsetr: {
13279 switch (OpNum) {
13280 case 2:
13281 // op: Ii
13282 return 1;
13283 case 1:
13284 // op: Rs16
13285 return 16;
13286 case 0:
13287 // op: Rd16
13288 return 8;
13289 }
13290 break;
13291 }
13292 case Hexagon::J2_trap1: {
13293 switch (OpNum) {
13294 case 2:
13295 // op: Ii
13296 return 2;
13297 case 0:
13298 // op: Rx32
13299 return 16;
13300 }
13301 break;
13302 }
13303 case Hexagon::S2_pstorerbnewf_io:
13304 case Hexagon::S2_pstorerbnewt_io:
13305 case Hexagon::S2_pstorerhnewf_io:
13306 case Hexagon::S2_pstorerhnewt_io:
13307 case Hexagon::S2_pstorerinewf_io:
13308 case Hexagon::S2_pstorerinewt_io:
13309 case Hexagon::S4_pstorerbnewfnew_io:
13310 case Hexagon::S4_pstorerbnewtnew_io:
13311 case Hexagon::S4_pstorerhnewfnew_io:
13312 case Hexagon::S4_pstorerhnewtnew_io:
13313 case Hexagon::S4_pstorerinewfnew_io:
13314 case Hexagon::S4_pstorerinewtnew_io: {
13315 switch (OpNum) {
13316 case 2:
13317 // op: Ii
13318 return 3;
13319 case 0:
13320 // op: Pv4
13321 return 0;
13322 case 1:
13323 // op: Rs32
13324 return 16;
13325 case 3:
13326 // op: Nt8
13327 return 8;
13328 }
13329 break;
13330 }
13331 case Hexagon::S2_pstorerbf_io:
13332 case Hexagon::S2_pstorerbt_io:
13333 case Hexagon::S2_pstorerff_io:
13334 case Hexagon::S2_pstorerft_io:
13335 case Hexagon::S2_pstorerhf_io:
13336 case Hexagon::S2_pstorerht_io:
13337 case Hexagon::S2_pstorerif_io:
13338 case Hexagon::S2_pstorerit_io:
13339 case Hexagon::S4_pstorerbfnew_io:
13340 case Hexagon::S4_pstorerbtnew_io:
13341 case Hexagon::S4_pstorerffnew_io:
13342 case Hexagon::S4_pstorerftnew_io:
13343 case Hexagon::S4_pstorerhfnew_io:
13344 case Hexagon::S4_pstorerhtnew_io:
13345 case Hexagon::S4_pstorerifnew_io:
13346 case Hexagon::S4_pstoreritnew_io: {
13347 switch (OpNum) {
13348 case 2:
13349 // op: Ii
13350 return 3;
13351 case 0:
13352 // op: Pv4
13353 return 0;
13354 case 1:
13355 // op: Rs32
13356 return 16;
13357 case 3:
13358 // op: Rt32
13359 return 8;
13360 }
13361 break;
13362 }
13363 case Hexagon::S2_pstorerdf_io:
13364 case Hexagon::S2_pstorerdt_io:
13365 case Hexagon::S4_pstorerdfnew_io:
13366 case Hexagon::S4_pstorerdtnew_io: {
13367 switch (OpNum) {
13368 case 2:
13369 // op: Ii
13370 return 3;
13371 case 0:
13372 // op: Pv4
13373 return 0;
13374 case 1:
13375 // op: Rs32
13376 return 16;
13377 case 3:
13378 // op: Rtt32
13379 return 8;
13380 }
13381 break;
13382 }
13383 case Hexagon::S2_storerbnew_pci:
13384 case Hexagon::S2_storerhnew_pci:
13385 case Hexagon::S2_storerinew_pci: {
13386 switch (OpNum) {
13387 case 2:
13388 // op: Ii
13389 return 3;
13390 case 3:
13391 // op: Mu2
13392 return 13;
13393 case 4:
13394 // op: Nt8
13395 return 8;
13396 case 0:
13397 // op: Rx32
13398 return 16;
13399 }
13400 break;
13401 }
13402 case Hexagon::S2_storerb_pci:
13403 case Hexagon::S2_storerf_pci:
13404 case Hexagon::S2_storerh_pci:
13405 case Hexagon::S2_storeri_pci: {
13406 switch (OpNum) {
13407 case 2:
13408 // op: Ii
13409 return 3;
13410 case 3:
13411 // op: Mu2
13412 return 13;
13413 case 4:
13414 // op: Rt32
13415 return 8;
13416 case 0:
13417 // op: Rx32
13418 return 16;
13419 }
13420 break;
13421 }
13422 case Hexagon::S2_storerd_pci: {
13423 switch (OpNum) {
13424 case 2:
13425 // op: Ii
13426 return 3;
13427 case 3:
13428 // op: Mu2
13429 return 13;
13430 case 4:
13431 // op: Rtt32
13432 return 8;
13433 case 0:
13434 // op: Rx32
13435 return 16;
13436 }
13437 break;
13438 }
13439 case Hexagon::S2_storerbnew_pi:
13440 case Hexagon::S2_storerhnew_pi:
13441 case Hexagon::S2_storerinew_pi: {
13442 switch (OpNum) {
13443 case 2:
13444 // op: Ii
13445 return 3;
13446 case 3:
13447 // op: Nt8
13448 return 8;
13449 case 0:
13450 // op: Rx32
13451 return 16;
13452 }
13453 break;
13454 }
13455 case Hexagon::S2_storerb_pi:
13456 case Hexagon::S2_storerb_pi_nt:
13457 case Hexagon::S2_storerf_pi:
13458 case Hexagon::S2_storerh_pi:
13459 case Hexagon::S2_storerh_pi_nt:
13460 case Hexagon::S2_storeri_pi:
13461 case Hexagon::S2_storeri_pi_nt: {
13462 switch (OpNum) {
13463 case 2:
13464 // op: Ii
13465 return 3;
13466 case 3:
13467 // op: Rt32
13468 return 8;
13469 case 0:
13470 // op: Rx32
13471 return 16;
13472 }
13473 break;
13474 }
13475 case Hexagon::S2_storerd_pi:
13476 case Hexagon::S2_storerd_pi_nt: {
13477 switch (OpNum) {
13478 case 2:
13479 // op: Ii
13480 return 3;
13481 case 3:
13482 // op: Rtt32
13483 return 8;
13484 case 0:
13485 // op: Rx32
13486 return 16;
13487 }
13488 break;
13489 }
13490 case Hexagon::SA1_addi: {
13491 switch (OpNum) {
13492 case 2:
13493 // op: Ii
13494 return 4;
13495 case 0:
13496 // op: Rx16
13497 return 0;
13498 }
13499 break;
13500 }
13501 case Hexagon::C2_cmoveif:
13502 case Hexagon::C2_cmoveit:
13503 case Hexagon::C2_cmovenewif:
13504 case Hexagon::C2_cmovenewit: {
13505 switch (OpNum) {
13506 case 2:
13507 // op: Ii
13508 return 5;
13509 case 1:
13510 // op: Pu4
13511 return 21;
13512 case 0:
13513 // op: Rd32
13514 return 0;
13515 }
13516 break;
13517 }
13518 case Hexagon::C2_muxri: {
13519 switch (OpNum) {
13520 case 2:
13521 // op: Ii
13522 return 5;
13523 case 1:
13524 // op: Pu4
13525 return 21;
13526 case 3:
13527 // op: Rs32
13528 return 16;
13529 case 0:
13530 // op: Rd32
13531 return 0;
13532 }
13533 break;
13534 }
13535 case Hexagon::A4_cmpbeqi:
13536 case Hexagon::A4_cmpbgti:
13537 case Hexagon::A4_cmpbgtui:
13538 case Hexagon::A4_cmpheqi:
13539 case Hexagon::A4_cmphgti:
13540 case Hexagon::A4_cmphgtui:
13541 case Hexagon::C2_cmpeqi:
13542 case Hexagon::C2_cmpgti:
13543 case Hexagon::C2_cmpgtui:
13544 case Hexagon::C4_cmpltei:
13545 case Hexagon::C4_cmplteui:
13546 case Hexagon::C4_cmpneqi: {
13547 switch (OpNum) {
13548 case 2:
13549 // op: Ii
13550 return 5;
13551 case 1:
13552 // op: Rs32
13553 return 16;
13554 case 0:
13555 // op: Pd4
13556 return 0;
13557 }
13558 break;
13559 }
13560 case Hexagon::A2_addi:
13561 case Hexagon::A2_andir:
13562 case Hexagon::A2_orir:
13563 case Hexagon::A4_rcmpeqi:
13564 case Hexagon::A4_rcmpneqi:
13565 case Hexagon::L2_loadbsw2_io:
13566 case Hexagon::L2_loadbzw2_io:
13567 case Hexagon::L2_loadrb_io:
13568 case Hexagon::L2_loadrh_io:
13569 case Hexagon::L2_loadri_io:
13570 case Hexagon::L2_loadrub_io:
13571 case Hexagon::L2_loadruh_io:
13572 case Hexagon::M2_mpysin:
13573 case Hexagon::M2_mpysip: {
13574 switch (OpNum) {
13575 case 2:
13576 // op: Ii
13577 return 5;
13578 case 1:
13579 // op: Rs32
13580 return 16;
13581 case 0:
13582 // op: Rd32
13583 return 0;
13584 }
13585 break;
13586 }
13587 case Hexagon::A4_combineri:
13588 case Hexagon::L2_loadbsw4_io:
13589 case Hexagon::L2_loadbzw4_io:
13590 case Hexagon::L2_loadrd_io: {
13591 switch (OpNum) {
13592 case 2:
13593 // op: Ii
13594 return 5;
13595 case 1:
13596 // op: Rs32
13597 return 16;
13598 case 0:
13599 // op: Rdd32
13600 return 0;
13601 }
13602 break;
13603 }
13604 case Hexagon::S4_subaddi: {
13605 switch (OpNum) {
13606 case 2:
13607 // op: Ii
13608 return 5;
13609 case 1:
13610 // op: Rs32
13611 return 16;
13612 case 3:
13613 // op: Ru32
13614 return 0;
13615 case 0:
13616 // op: Rd32
13617 return 8;
13618 }
13619 break;
13620 }
13621 case Hexagon::A4_vcmpbeqi:
13622 case Hexagon::A4_vcmpbgti:
13623 case Hexagon::A4_vcmpbgtui:
13624 case Hexagon::A4_vcmpheqi:
13625 case Hexagon::A4_vcmphgti:
13626 case Hexagon::A4_vcmphgtui:
13627 case Hexagon::A4_vcmpweqi:
13628 case Hexagon::A4_vcmpwgti:
13629 case Hexagon::A4_vcmpwgtui:
13630 case Hexagon::F2_dfclass: {
13631 switch (OpNum) {
13632 case 2:
13633 // op: Ii
13634 return 5;
13635 case 1:
13636 // op: Rss32
13637 return 16;
13638 case 0:
13639 // op: Pd4
13640 return 0;
13641 }
13642 break;
13643 }
13644 case Hexagon::M4_mpyri_addr_u2: {
13645 switch (OpNum) {
13646 case 2:
13647 // op: Ii
13648 return 5;
13649 case 1:
13650 // op: Ru32
13651 return 0;
13652 case 3:
13653 // op: Rs32
13654 return 16;
13655 case 0:
13656 // op: Rd32
13657 return 8;
13658 }
13659 break;
13660 }
13661 case Hexagon::C2_muxii: {
13662 switch (OpNum) {
13663 case 2:
13664 // op: Ii
13665 return 5;
13666 case 3:
13667 // op: II
13668 return 13;
13669 case 1:
13670 // op: Pu4
13671 return 23;
13672 case 0:
13673 // op: Rd32
13674 return 0;
13675 }
13676 break;
13677 }
13678 case Hexagon::S4_storerbnew_rr:
13679 case Hexagon::S4_storerhnew_rr:
13680 case Hexagon::S4_storerinew_rr: {
13681 switch (OpNum) {
13682 case 2:
13683 // op: Ii
13684 return 7;
13685 case 0:
13686 // op: Rs32
13687 return 16;
13688 case 1:
13689 // op: Ru32
13690 return 8;
13691 case 3:
13692 // op: Nt8
13693 return 0;
13694 }
13695 break;
13696 }
13697 case Hexagon::S4_storerb_rr:
13698 case Hexagon::S4_storerf_rr:
13699 case Hexagon::S4_storerh_rr:
13700 case Hexagon::S4_storeri_rr: {
13701 switch (OpNum) {
13702 case 2:
13703 // op: Ii
13704 return 7;
13705 case 0:
13706 // op: Rs32
13707 return 16;
13708 case 1:
13709 // op: Ru32
13710 return 8;
13711 case 3:
13712 // op: Rt32
13713 return 0;
13714 }
13715 break;
13716 }
13717 case Hexagon::S4_storerd_rr: {
13718 switch (OpNum) {
13719 case 2:
13720 // op: Ii
13721 return 7;
13722 case 0:
13723 // op: Rs32
13724 return 16;
13725 case 1:
13726 // op: Ru32
13727 return 8;
13728 case 3:
13729 // op: Rtt32
13730 return 0;
13731 }
13732 break;
13733 }
13734 case Hexagon::S4_storeirbf_io:
13735 case Hexagon::S4_storeirbfnew_io:
13736 case Hexagon::S4_storeirbt_io:
13737 case Hexagon::S4_storeirbtnew_io:
13738 case Hexagon::S4_storeirhf_io:
13739 case Hexagon::S4_storeirhfnew_io:
13740 case Hexagon::S4_storeirht_io:
13741 case Hexagon::S4_storeirhtnew_io:
13742 case Hexagon::S4_storeirif_io:
13743 case Hexagon::S4_storeirifnew_io:
13744 case Hexagon::S4_storeirit_io:
13745 case Hexagon::S4_storeiritnew_io: {
13746 switch (OpNum) {
13747 case 2:
13748 // op: Ii
13749 return 7;
13750 case 3:
13751 // op: II
13752 return 0;
13753 case 0:
13754 // op: Pv4
13755 return 5;
13756 case 1:
13757 // op: Rs32
13758 return 16;
13759 }
13760 break;
13761 }
13762 case Hexagon::L4_loadbsw2_ur:
13763 case Hexagon::L4_loadbzw2_ur:
13764 case Hexagon::L4_loadrb_ur:
13765 case Hexagon::L4_loadrh_ur:
13766 case Hexagon::L4_loadri_ur:
13767 case Hexagon::L4_loadrub_ur:
13768 case Hexagon::L4_loadruh_ur: {
13769 switch (OpNum) {
13770 case 2:
13771 // op: Ii
13772 return 7;
13773 case 3:
13774 // op: II
13775 return 5;
13776 case 1:
13777 // op: Rt32
13778 return 16;
13779 case 0:
13780 // op: Rd32
13781 return 0;
13782 }
13783 break;
13784 }
13785 case Hexagon::L4_loadbsw4_ur:
13786 case Hexagon::L4_loadbzw4_ur:
13787 case Hexagon::L4_loadrd_ur: {
13788 switch (OpNum) {
13789 case 2:
13790 // op: Ii
13791 return 7;
13792 case 3:
13793 // op: II
13794 return 5;
13795 case 1:
13796 // op: Rt32
13797 return 16;
13798 case 0:
13799 // op: Rdd32
13800 return 0;
13801 }
13802 break;
13803 }
13804 case Hexagon::V6_vS32b_new_npred_ai:
13805 case Hexagon::V6_vS32b_new_pred_ai:
13806 case Hexagon::V6_vS32b_nt_new_npred_ai:
13807 case Hexagon::V6_vS32b_nt_new_pred_ai: {
13808 switch (OpNum) {
13809 case 2:
13810 // op: Ii
13811 return 8;
13812 case 0:
13813 // op: Pv4
13814 return 11;
13815 case 1:
13816 // op: Rt32
13817 return 16;
13818 case 3:
13819 // op: Os8
13820 return 0;
13821 }
13822 break;
13823 }
13824 case Hexagon::V6_vS32Ub_npred_ai:
13825 case Hexagon::V6_vS32Ub_pred_ai:
13826 case Hexagon::V6_vS32b_npred_ai:
13827 case Hexagon::V6_vS32b_nt_npred_ai:
13828 case Hexagon::V6_vS32b_nt_pred_ai:
13829 case Hexagon::V6_vS32b_pred_ai: {
13830 switch (OpNum) {
13831 case 2:
13832 // op: Ii
13833 return 8;
13834 case 0:
13835 // op: Pv4
13836 return 11;
13837 case 1:
13838 // op: Rt32
13839 return 16;
13840 case 3:
13841 // op: Vs32
13842 return 0;
13843 }
13844 break;
13845 }
13846 case Hexagon::V6_zLd_pred_ai: {
13847 switch (OpNum) {
13848 case 2:
13849 // op: Ii
13850 return 8;
13851 case 0:
13852 // op: Pv4
13853 return 11;
13854 case 1:
13855 // op: Rt32
13856 return 16;
13857 }
13858 break;
13859 }
13860 case Hexagon::V6_vS32b_nqpred_ai:
13861 case Hexagon::V6_vS32b_nt_nqpred_ai:
13862 case Hexagon::V6_vS32b_nt_qpred_ai:
13863 case Hexagon::V6_vS32b_qpred_ai: {
13864 switch (OpNum) {
13865 case 2:
13866 // op: Ii
13867 return 8;
13868 case 0:
13869 // op: Qv4
13870 return 11;
13871 case 1:
13872 // op: Rt32
13873 return 16;
13874 case 3:
13875 // op: Vs32
13876 return 0;
13877 }
13878 break;
13879 }
13880 case Hexagon::V6_vS32b_srls_pi:
13881 case Hexagon::V6_zLd_pi: {
13882 switch (OpNum) {
13883 case 2:
13884 // op: Ii
13885 return 8;
13886 case 0:
13887 // op: Rx32
13888 return 16;
13889 }
13890 break;
13891 }
13892 case Hexagon::L4_ploadrbf_abs:
13893 case Hexagon::L4_ploadrbfnew_abs:
13894 case Hexagon::L4_ploadrbt_abs:
13895 case Hexagon::L4_ploadrbtnew_abs:
13896 case Hexagon::L4_ploadrhf_abs:
13897 case Hexagon::L4_ploadrhfnew_abs:
13898 case Hexagon::L4_ploadrht_abs:
13899 case Hexagon::L4_ploadrhtnew_abs:
13900 case Hexagon::L4_ploadrif_abs:
13901 case Hexagon::L4_ploadrifnew_abs:
13902 case Hexagon::L4_ploadrit_abs:
13903 case Hexagon::L4_ploadritnew_abs:
13904 case Hexagon::L4_ploadrubf_abs:
13905 case Hexagon::L4_ploadrubfnew_abs:
13906 case Hexagon::L4_ploadrubt_abs:
13907 case Hexagon::L4_ploadrubtnew_abs:
13908 case Hexagon::L4_ploadruhf_abs:
13909 case Hexagon::L4_ploadruhfnew_abs:
13910 case Hexagon::L4_ploadruht_abs:
13911 case Hexagon::L4_ploadruhtnew_abs: {
13912 switch (OpNum) {
13913 case 2:
13914 // op: Ii
13915 return 8;
13916 case 1:
13917 // op: Pt4
13918 return 9;
13919 case 0:
13920 // op: Rd32
13921 return 0;
13922 }
13923 break;
13924 }
13925 case Hexagon::L4_ploadrdf_abs:
13926 case Hexagon::L4_ploadrdfnew_abs:
13927 case Hexagon::L4_ploadrdt_abs:
13928 case Hexagon::L4_ploadrdtnew_abs: {
13929 switch (OpNum) {
13930 case 2:
13931 // op: Ii
13932 return 8;
13933 case 1:
13934 // op: Pt4
13935 return 9;
13936 case 0:
13937 // op: Rdd32
13938 return 0;
13939 }
13940 break;
13941 }
13942 case Hexagon::SL1_loadri_io:
13943 case Hexagon::SL1_loadrub_io:
13944 case Hexagon::SL2_loadrb_io:
13945 case Hexagon::SL2_loadrh_io:
13946 case Hexagon::SL2_loadruh_io: {
13947 switch (OpNum) {
13948 case 2:
13949 // op: Ii
13950 return 8;
13951 case 1:
13952 // op: Rs16
13953 return 4;
13954 case 0:
13955 // op: Rd16
13956 return 0;
13957 }
13958 break;
13959 }
13960 case Hexagon::C2_bitsclri:
13961 case Hexagon::C4_nbitsclri:
13962 case Hexagon::F2_sfclass:
13963 case Hexagon::S2_tstbit_i:
13964 case Hexagon::S4_ntstbit_i: {
13965 switch (OpNum) {
13966 case 2:
13967 // op: Ii
13968 return 8;
13969 case 1:
13970 // op: Rs32
13971 return 16;
13972 case 0:
13973 // op: Pd4
13974 return 0;
13975 }
13976 break;
13977 }
13978 case Hexagon::A4_cround_ri:
13979 case Hexagon::A4_round_ri:
13980 case Hexagon::A4_round_ri_sat:
13981 case Hexagon::A7_clip:
13982 case Hexagon::S2_asl_i_r:
13983 case Hexagon::S2_asl_i_r_sat:
13984 case Hexagon::S2_asr_i_r:
13985 case Hexagon::S2_asr_i_r_rnd:
13986 case Hexagon::S2_clrbit_i:
13987 case Hexagon::S2_lsr_i_r:
13988 case Hexagon::S2_setbit_i:
13989 case Hexagon::S2_togglebit_i:
13990 case Hexagon::S4_clbaddi:
13991 case Hexagon::S6_rol_i_r: {
13992 switch (OpNum) {
13993 case 2:
13994 // op: Ii
13995 return 8;
13996 case 1:
13997 // op: Rs32
13998 return 16;
13999 case 0:
14000 // op: Rd32
14001 return 0;
14002 }
14003 break;
14004 }
14005 case Hexagon::A4_bitspliti: {
14006 switch (OpNum) {
14007 case 2:
14008 // op: Ii
14009 return 8;
14010 case 1:
14011 // op: Rs32
14012 return 16;
14013 case 0:
14014 // op: Rdd32
14015 return 0;
14016 }
14017 break;
14018 }
14019 case Hexagon::S2_asr_i_svw_trun:
14020 case Hexagon::S4_clbpaddi:
14021 case Hexagon::S5_asrhub_rnd_sat:
14022 case Hexagon::S5_asrhub_sat: {
14023 switch (OpNum) {
14024 case 2:
14025 // op: Ii
14026 return 8;
14027 case 1:
14028 // op: Rss32
14029 return 16;
14030 case 0:
14031 // op: Rd32
14032 return 0;
14033 }
14034 break;
14035 }
14036 case Hexagon::A7_croundd_ri:
14037 case Hexagon::A7_vclip:
14038 case Hexagon::S2_asl_i_p:
14039 case Hexagon::S2_asl_i_vh:
14040 case Hexagon::S2_asl_i_vw:
14041 case Hexagon::S2_asr_i_p:
14042 case Hexagon::S2_asr_i_p_rnd:
14043 case Hexagon::S2_asr_i_vh:
14044 case Hexagon::S2_asr_i_vw:
14045 case Hexagon::S2_lsr_i_p:
14046 case Hexagon::S2_lsr_i_vh:
14047 case Hexagon::S2_lsr_i_vw:
14048 case Hexagon::S5_vasrhrnd:
14049 case Hexagon::S6_rol_i_p: {
14050 switch (OpNum) {
14051 case 2:
14052 // op: Ii
14053 return 8;
14054 case 1:
14055 // op: Rss32
14056 return 16;
14057 case 0:
14058 // op: Rdd32
14059 return 0;
14060 }
14061 break;
14062 }
14063 case Hexagon::V6_vL32Ub_ai:
14064 case Hexagon::V6_vL32b_ai:
14065 case Hexagon::V6_vL32b_cur_ai:
14066 case Hexagon::V6_vL32b_nt_ai:
14067 case Hexagon::V6_vL32b_nt_cur_ai:
14068 case Hexagon::V6_vL32b_nt_tmp_ai:
14069 case Hexagon::V6_vL32b_tmp_ai: {
14070 switch (OpNum) {
14071 case 2:
14072 // op: Ii
14073 return 8;
14074 case 1:
14075 // op: Rt32
14076 return 16;
14077 case 0:
14078 // op: Vd32
14079 return 0;
14080 }
14081 break;
14082 }
14083 case Hexagon::S2_extractu:
14084 case Hexagon::S4_extract: {
14085 switch (OpNum) {
14086 case 2:
14087 // op: Ii
14088 return 8;
14089 case 3:
14090 // op: II
14091 return 5;
14092 case 1:
14093 // op: Rs32
14094 return 16;
14095 case 0:
14096 // op: Rd32
14097 return 0;
14098 }
14099 break;
14100 }
14101 case Hexagon::S2_extractup:
14102 case Hexagon::S4_extractp: {
14103 switch (OpNum) {
14104 case 2:
14105 // op: Ii
14106 return 8;
14107 case 3:
14108 // op: II
14109 return 5;
14110 case 1:
14111 // op: Rss32
14112 return 16;
14113 case 0:
14114 // op: Rdd32
14115 return 0;
14116 }
14117 break;
14118 }
14119 case Hexagon::V6_vS32b_new_pi:
14120 case Hexagon::V6_vS32b_nt_new_pi: {
14121 switch (OpNum) {
14122 case 2:
14123 // op: Ii
14124 return 8;
14125 case 3:
14126 // op: Os8
14127 return 0;
14128 case 0:
14129 // op: Rx32
14130 return 16;
14131 }
14132 break;
14133 }
14134 case Hexagon::V6_vS32Ub_pi:
14135 case Hexagon::V6_vS32b_nt_pi:
14136 case Hexagon::V6_vS32b_pi: {
14137 switch (OpNum) {
14138 case 2:
14139 // op: Ii
14140 return 8;
14141 case 3:
14142 // op: Vs32
14143 return 0;
14144 case 0:
14145 // op: Rx32
14146 return 16;
14147 }
14148 break;
14149 }
14150 case Hexagon::V6_vS32b_srls_ppu:
14151 case Hexagon::V6_zLd_ppu: {
14152 switch (OpNum) {
14153 case 2:
14154 // op: Mu2
14155 return 13;
14156 case 0:
14157 // op: Rx32
14158 return 16;
14159 }
14160 break;
14161 }
14162 case Hexagon::S2_storerbnew_pbr:
14163 case Hexagon::S2_storerbnew_pcr:
14164 case Hexagon::S2_storerbnew_pr:
14165 case Hexagon::S2_storerhnew_pbr:
14166 case Hexagon::S2_storerhnew_pcr:
14167 case Hexagon::S2_storerhnew_pr:
14168 case Hexagon::S2_storerinew_pbr:
14169 case Hexagon::S2_storerinew_pcr:
14170 case Hexagon::S2_storerinew_pr: {
14171 switch (OpNum) {
14172 case 2:
14173 // op: Mu2
14174 return 13;
14175 case 3:
14176 // op: Nt8
14177 return 8;
14178 case 0:
14179 // op: Rx32
14180 return 16;
14181 }
14182 break;
14183 }
14184 case Hexagon::V6_vS32b_new_ppu:
14185 case Hexagon::V6_vS32b_nt_new_ppu: {
14186 switch (OpNum) {
14187 case 2:
14188 // op: Mu2
14189 return 13;
14190 case 3:
14191 // op: Os8
14192 return 0;
14193 case 0:
14194 // op: Rx32
14195 return 16;
14196 }
14197 break;
14198 }
14199 case Hexagon::S2_storerb_pbr:
14200 case Hexagon::S2_storerb_pcr:
14201 case Hexagon::S2_storerb_pr:
14202 case Hexagon::S2_storerf_pbr:
14203 case Hexagon::S2_storerf_pcr:
14204 case Hexagon::S2_storerf_pr:
14205 case Hexagon::S2_storerh_pbr:
14206 case Hexagon::S2_storerh_pcr:
14207 case Hexagon::S2_storerh_pr:
14208 case Hexagon::S2_storeri_pbr:
14209 case Hexagon::S2_storeri_pcr:
14210 case Hexagon::S2_storeri_pr: {
14211 switch (OpNum) {
14212 case 2:
14213 // op: Mu2
14214 return 13;
14215 case 3:
14216 // op: Rt32
14217 return 8;
14218 case 0:
14219 // op: Rx32
14220 return 16;
14221 }
14222 break;
14223 }
14224 case Hexagon::S2_storerd_pbr:
14225 case Hexagon::S2_storerd_pcr:
14226 case Hexagon::S2_storerd_pr: {
14227 switch (OpNum) {
14228 case 2:
14229 // op: Mu2
14230 return 13;
14231 case 3:
14232 // op: Rtt32
14233 return 8;
14234 case 0:
14235 // op: Rx32
14236 return 16;
14237 }
14238 break;
14239 }
14240 case Hexagon::V6_vS32Ub_ppu:
14241 case Hexagon::V6_vS32b_nt_ppu:
14242 case Hexagon::V6_vS32b_ppu: {
14243 switch (OpNum) {
14244 case 2:
14245 // op: Mu2
14246 return 13;
14247 case 3:
14248 // op: Vs32
14249 return 0;
14250 case 0:
14251 // op: Rx32
14252 return 16;
14253 }
14254 break;
14255 }
14256 case Hexagon::V6_vL32b_cur_npred_ppu:
14257 case Hexagon::V6_vL32b_cur_pred_ppu:
14258 case Hexagon::V6_vL32b_npred_ppu:
14259 case Hexagon::V6_vL32b_nt_cur_npred_ppu:
14260 case Hexagon::V6_vL32b_nt_cur_pred_ppu:
14261 case Hexagon::V6_vL32b_nt_npred_ppu:
14262 case Hexagon::V6_vL32b_nt_pred_ppu:
14263 case Hexagon::V6_vL32b_nt_tmp_npred_ppu:
14264 case Hexagon::V6_vL32b_nt_tmp_pred_ppu:
14265 case Hexagon::V6_vL32b_pred_ppu:
14266 case Hexagon::V6_vL32b_tmp_npred_ppu:
14267 case Hexagon::V6_vL32b_tmp_pred_ppu: {
14268 switch (OpNum) {
14269 case 2:
14270 // op: Pv4
14271 return 11;
14272 case 4:
14273 // op: Mu2
14274 return 13;
14275 case 0:
14276 // op: Vd32
14277 return 0;
14278 case 1:
14279 // op: Rx32
14280 return 16;
14281 }
14282 break;
14283 }
14284 case Hexagon::V6_vandnqrt_acc:
14285 case Hexagon::V6_vandqrt_acc: {
14286 switch (OpNum) {
14287 case 2:
14288 // op: Qu4
14289 return 8;
14290 case 3:
14291 // op: Rt32
14292 return 16;
14293 case 0:
14294 // op: Vx32
14295 return 0;
14296 }
14297 break;
14298 }
14299 case Hexagon::SA1_addrx: {
14300 switch (OpNum) {
14301 case 2:
14302 // op: Rs16
14303 return 4;
14304 case 0:
14305 // op: Rx16
14306 return 0;
14307 }
14308 break;
14309 }
14310 case Hexagon::F2_sfinvsqrta: {
14311 switch (OpNum) {
14312 case 2:
14313 // op: Rs32
14314 return 16;
14315 case 0:
14316 // op: Rd32
14317 return 0;
14318 case 1:
14319 // op: Pe4
14320 return 5;
14321 }
14322 break;
14323 }
14324 case Hexagon::F2_sfrecipa: {
14325 switch (OpNum) {
14326 case 2:
14327 // op: Rs32
14328 return 16;
14329 case 3:
14330 // op: Rt32
14331 return 8;
14332 case 0:
14333 // op: Rd32
14334 return 0;
14335 case 1:
14336 // op: Pe4
14337 return 5;
14338 }
14339 break;
14340 }
14341 case Hexagon::F2_sffma:
14342 case Hexagon::F2_sffma_lib:
14343 case Hexagon::F2_sffms:
14344 case Hexagon::F2_sffms_lib:
14345 case Hexagon::M2_acci:
14346 case Hexagon::M2_maci:
14347 case Hexagon::M2_mnaci:
14348 case Hexagon::M2_mpy_acc_hh_s0:
14349 case Hexagon::M2_mpy_acc_hh_s1:
14350 case Hexagon::M2_mpy_acc_hl_s0:
14351 case Hexagon::M2_mpy_acc_hl_s1:
14352 case Hexagon::M2_mpy_acc_lh_s0:
14353 case Hexagon::M2_mpy_acc_lh_s1:
14354 case Hexagon::M2_mpy_acc_ll_s0:
14355 case Hexagon::M2_mpy_acc_ll_s1:
14356 case Hexagon::M2_mpy_acc_sat_hh_s0:
14357 case Hexagon::M2_mpy_acc_sat_hh_s1:
14358 case Hexagon::M2_mpy_acc_sat_hl_s0:
14359 case Hexagon::M2_mpy_acc_sat_hl_s1:
14360 case Hexagon::M2_mpy_acc_sat_lh_s0:
14361 case Hexagon::M2_mpy_acc_sat_lh_s1:
14362 case Hexagon::M2_mpy_acc_sat_ll_s0:
14363 case Hexagon::M2_mpy_acc_sat_ll_s1:
14364 case Hexagon::M2_mpy_nac_hh_s0:
14365 case Hexagon::M2_mpy_nac_hh_s1:
14366 case Hexagon::M2_mpy_nac_hl_s0:
14367 case Hexagon::M2_mpy_nac_hl_s1:
14368 case Hexagon::M2_mpy_nac_lh_s0:
14369 case Hexagon::M2_mpy_nac_lh_s1:
14370 case Hexagon::M2_mpy_nac_ll_s0:
14371 case Hexagon::M2_mpy_nac_ll_s1:
14372 case Hexagon::M2_mpy_nac_sat_hh_s0:
14373 case Hexagon::M2_mpy_nac_sat_hh_s1:
14374 case Hexagon::M2_mpy_nac_sat_hl_s0:
14375 case Hexagon::M2_mpy_nac_sat_hl_s1:
14376 case Hexagon::M2_mpy_nac_sat_lh_s0:
14377 case Hexagon::M2_mpy_nac_sat_lh_s1:
14378 case Hexagon::M2_mpy_nac_sat_ll_s0:
14379 case Hexagon::M2_mpy_nac_sat_ll_s1:
14380 case Hexagon::M2_mpyu_acc_hh_s0:
14381 case Hexagon::M2_mpyu_acc_hh_s1:
14382 case Hexagon::M2_mpyu_acc_hl_s0:
14383 case Hexagon::M2_mpyu_acc_hl_s1:
14384 case Hexagon::M2_mpyu_acc_lh_s0:
14385 case Hexagon::M2_mpyu_acc_lh_s1:
14386 case Hexagon::M2_mpyu_acc_ll_s0:
14387 case Hexagon::M2_mpyu_acc_ll_s1:
14388 case Hexagon::M2_mpyu_nac_hh_s0:
14389 case Hexagon::M2_mpyu_nac_hh_s1:
14390 case Hexagon::M2_mpyu_nac_hl_s0:
14391 case Hexagon::M2_mpyu_nac_hl_s1:
14392 case Hexagon::M2_mpyu_nac_lh_s0:
14393 case Hexagon::M2_mpyu_nac_lh_s1:
14394 case Hexagon::M2_mpyu_nac_ll_s0:
14395 case Hexagon::M2_mpyu_nac_ll_s1:
14396 case Hexagon::M2_nacci:
14397 case Hexagon::M2_xor_xacc:
14398 case Hexagon::M4_and_and:
14399 case Hexagon::M4_and_andn:
14400 case Hexagon::M4_and_or:
14401 case Hexagon::M4_and_xor:
14402 case Hexagon::M4_mac_up_s1_sat:
14403 case Hexagon::M4_nac_up_s1_sat:
14404 case Hexagon::M4_or_and:
14405 case Hexagon::M4_or_andn:
14406 case Hexagon::M4_or_or:
14407 case Hexagon::M4_or_xor:
14408 case Hexagon::M4_xor_and:
14409 case Hexagon::M4_xor_andn:
14410 case Hexagon::M4_xor_or:
14411 case Hexagon::S2_asl_r_r_acc:
14412 case Hexagon::S2_asl_r_r_and:
14413 case Hexagon::S2_asl_r_r_nac:
14414 case Hexagon::S2_asl_r_r_or:
14415 case Hexagon::S2_asr_r_r_acc:
14416 case Hexagon::S2_asr_r_r_and:
14417 case Hexagon::S2_asr_r_r_nac:
14418 case Hexagon::S2_asr_r_r_or:
14419 case Hexagon::S2_lsl_r_r_acc:
14420 case Hexagon::S2_lsl_r_r_and:
14421 case Hexagon::S2_lsl_r_r_nac:
14422 case Hexagon::S2_lsl_r_r_or:
14423 case Hexagon::S2_lsr_r_r_acc:
14424 case Hexagon::S2_lsr_r_r_and:
14425 case Hexagon::S2_lsr_r_r_nac:
14426 case Hexagon::S2_lsr_r_r_or: {
14427 switch (OpNum) {
14428 case 2:
14429 // op: Rs32
14430 return 16;
14431 case 3:
14432 // op: Rt32
14433 return 8;
14434 case 0:
14435 // op: Rx32
14436 return 0;
14437 }
14438 break;
14439 }
14440 case Hexagon::M2_cmaci_s0:
14441 case Hexagon::M2_cmacr_s0:
14442 case Hexagon::M2_cmacs_s0:
14443 case Hexagon::M2_cmacs_s1:
14444 case Hexagon::M2_cmacsc_s0:
14445 case Hexagon::M2_cmacsc_s1:
14446 case Hexagon::M2_cnacs_s0:
14447 case Hexagon::M2_cnacs_s1:
14448 case Hexagon::M2_cnacsc_s0:
14449 case Hexagon::M2_cnacsc_s1:
14450 case Hexagon::M2_dpmpyss_acc_s0:
14451 case Hexagon::M2_dpmpyss_nac_s0:
14452 case Hexagon::M2_dpmpyuu_acc_s0:
14453 case Hexagon::M2_dpmpyuu_nac_s0:
14454 case Hexagon::M2_mpyd_acc_hh_s0:
14455 case Hexagon::M2_mpyd_acc_hh_s1:
14456 case Hexagon::M2_mpyd_acc_hl_s0:
14457 case Hexagon::M2_mpyd_acc_hl_s1:
14458 case Hexagon::M2_mpyd_acc_lh_s0:
14459 case Hexagon::M2_mpyd_acc_lh_s1:
14460 case Hexagon::M2_mpyd_acc_ll_s0:
14461 case Hexagon::M2_mpyd_acc_ll_s1:
14462 case Hexagon::M2_mpyd_nac_hh_s0:
14463 case Hexagon::M2_mpyd_nac_hh_s1:
14464 case Hexagon::M2_mpyd_nac_hl_s0:
14465 case Hexagon::M2_mpyd_nac_hl_s1:
14466 case Hexagon::M2_mpyd_nac_lh_s0:
14467 case Hexagon::M2_mpyd_nac_lh_s1:
14468 case Hexagon::M2_mpyd_nac_ll_s0:
14469 case Hexagon::M2_mpyd_nac_ll_s1:
14470 case Hexagon::M2_mpyud_acc_hh_s0:
14471 case Hexagon::M2_mpyud_acc_hh_s1:
14472 case Hexagon::M2_mpyud_acc_hl_s0:
14473 case Hexagon::M2_mpyud_acc_hl_s1:
14474 case Hexagon::M2_mpyud_acc_lh_s0:
14475 case Hexagon::M2_mpyud_acc_lh_s1:
14476 case Hexagon::M2_mpyud_acc_ll_s0:
14477 case Hexagon::M2_mpyud_acc_ll_s1:
14478 case Hexagon::M2_mpyud_nac_hh_s0:
14479 case Hexagon::M2_mpyud_nac_hh_s1:
14480 case Hexagon::M2_mpyud_nac_hl_s0:
14481 case Hexagon::M2_mpyud_nac_hl_s1:
14482 case Hexagon::M2_mpyud_nac_lh_s0:
14483 case Hexagon::M2_mpyud_nac_lh_s1:
14484 case Hexagon::M2_mpyud_nac_ll_s0:
14485 case Hexagon::M2_mpyud_nac_ll_s1:
14486 case Hexagon::M2_vmac2:
14487 case Hexagon::M2_vmac2s_s0:
14488 case Hexagon::M2_vmac2s_s1:
14489 case Hexagon::M2_vmac2su_s0:
14490 case Hexagon::M2_vmac2su_s1:
14491 case Hexagon::M4_pmpyw_acc:
14492 case Hexagon::M4_vpmpyh_acc:
14493 case Hexagon::M5_vmacbsu:
14494 case Hexagon::M5_vmacbuu: {
14495 switch (OpNum) {
14496 case 2:
14497 // op: Rs32
14498 return 16;
14499 case 3:
14500 // op: Rt32
14501 return 8;
14502 case 0:
14503 // op: Rxx32
14504 return 0;
14505 }
14506 break;
14507 }
14508 case Hexagon::F2_sffma_sc: {
14509 switch (OpNum) {
14510 case 2:
14511 // op: Rs32
14512 return 16;
14513 case 3:
14514 // op: Rt32
14515 return 8;
14516 case 4:
14517 // op: Pu4
14518 return 5;
14519 case 0:
14520 // op: Rx32
14521 return 0;
14522 }
14523 break;
14524 }
14525 case Hexagon::S2_insert_rp: {
14526 switch (OpNum) {
14527 case 2:
14528 // op: Rs32
14529 return 16;
14530 case 3:
14531 // op: Rtt32
14532 return 8;
14533 case 0:
14534 // op: Rx32
14535 return 0;
14536 }
14537 break;
14538 }
14539 case Hexagon::S2_asl_r_p_acc:
14540 case Hexagon::S2_asl_r_p_and:
14541 case Hexagon::S2_asl_r_p_nac:
14542 case Hexagon::S2_asl_r_p_or:
14543 case Hexagon::S2_asl_r_p_xor:
14544 case Hexagon::S2_asr_r_p_acc:
14545 case Hexagon::S2_asr_r_p_and:
14546 case Hexagon::S2_asr_r_p_nac:
14547 case Hexagon::S2_asr_r_p_or:
14548 case Hexagon::S2_asr_r_p_xor:
14549 case Hexagon::S2_lsl_r_p_acc:
14550 case Hexagon::S2_lsl_r_p_and:
14551 case Hexagon::S2_lsl_r_p_nac:
14552 case Hexagon::S2_lsl_r_p_or:
14553 case Hexagon::S2_lsl_r_p_xor:
14554 case Hexagon::S2_lsr_r_p_acc:
14555 case Hexagon::S2_lsr_r_p_and:
14556 case Hexagon::S2_lsr_r_p_nac:
14557 case Hexagon::S2_lsr_r_p_or:
14558 case Hexagon::S2_lsr_r_p_xor:
14559 case Hexagon::S2_vrcnegh: {
14560 switch (OpNum) {
14561 case 2:
14562 // op: Rss32
14563 return 16;
14564 case 3:
14565 // op: Rt32
14566 return 8;
14567 case 0:
14568 // op: Rxx32
14569 return 0;
14570 }
14571 break;
14572 }
14573 case Hexagon::A4_addp_c:
14574 case Hexagon::A4_subp_c: {
14575 switch (OpNum) {
14576 case 2:
14577 // op: Rss32
14578 return 16;
14579 case 3:
14580 // op: Rtt32
14581 return 8;
14582 case 0:
14583 // op: Rdd32
14584 return 0;
14585 case 1:
14586 // op: Px4
14587 return 5;
14588 }
14589 break;
14590 }
14591 case Hexagon::A2_vraddub_acc:
14592 case Hexagon::A2_vrsadub_acc:
14593 case Hexagon::F2_dfmpyhh:
14594 case Hexagon::F2_dfmpylh:
14595 case Hexagon::M2_mmachs_rs0:
14596 case Hexagon::M2_mmachs_rs1:
14597 case Hexagon::M2_mmachs_s0:
14598 case Hexagon::M2_mmachs_s1:
14599 case Hexagon::M2_mmacls_rs0:
14600 case Hexagon::M2_mmacls_rs1:
14601 case Hexagon::M2_mmacls_s0:
14602 case Hexagon::M2_mmacls_s1:
14603 case Hexagon::M2_mmacuhs_rs0:
14604 case Hexagon::M2_mmacuhs_rs1:
14605 case Hexagon::M2_mmacuhs_s0:
14606 case Hexagon::M2_mmacuhs_s1:
14607 case Hexagon::M2_mmaculs_rs0:
14608 case Hexagon::M2_mmaculs_rs1:
14609 case Hexagon::M2_mmaculs_s0:
14610 case Hexagon::M2_mmaculs_s1:
14611 case Hexagon::M2_vcmac_s0_sat_i:
14612 case Hexagon::M2_vcmac_s0_sat_r:
14613 case Hexagon::M2_vdmacs_s0:
14614 case Hexagon::M2_vdmacs_s1:
14615 case Hexagon::M2_vmac2es:
14616 case Hexagon::M2_vmac2es_s0:
14617 case Hexagon::M2_vmac2es_s1:
14618 case Hexagon::M2_vrcmaci_s0:
14619 case Hexagon::M2_vrcmaci_s0c:
14620 case Hexagon::M2_vrcmacr_s0:
14621 case Hexagon::M2_vrcmacr_s0c:
14622 case Hexagon::M2_vrcmpys_acc_s1_h:
14623 case Hexagon::M2_vrcmpys_acc_s1_l:
14624 case Hexagon::M2_vrmac_s0:
14625 case Hexagon::M4_vrmpyeh_acc_s0:
14626 case Hexagon::M4_vrmpyeh_acc_s1:
14627 case Hexagon::M4_vrmpyoh_acc_s0:
14628 case Hexagon::M4_vrmpyoh_acc_s1:
14629 case Hexagon::M4_xor_xacc:
14630 case Hexagon::M5_vdmacbsu:
14631 case Hexagon::M5_vrmacbsu:
14632 case Hexagon::M5_vrmacbuu:
14633 case Hexagon::M7_dcmpyiw_acc:
14634 case Hexagon::M7_dcmpyiwc_acc:
14635 case Hexagon::M7_dcmpyrw_acc:
14636 case Hexagon::M7_dcmpyrwc_acc:
14637 case Hexagon::S2_insertp_rp: {
14638 switch (OpNum) {
14639 case 2:
14640 // op: Rss32
14641 return 16;
14642 case 3:
14643 // op: Rtt32
14644 return 8;
14645 case 0:
14646 // op: Rxx32
14647 return 0;
14648 }
14649 break;
14650 }
14651 case Hexagon::A4_vrmaxh:
14652 case Hexagon::A4_vrmaxuh:
14653 case Hexagon::A4_vrmaxuw:
14654 case Hexagon::A4_vrmaxw:
14655 case Hexagon::A4_vrminh:
14656 case Hexagon::A4_vrminuh:
14657 case Hexagon::A4_vrminuw:
14658 case Hexagon::A4_vrminw: {
14659 switch (OpNum) {
14660 case 2:
14661 // op: Rss32
14662 return 16;
14663 case 3:
14664 // op: Ru32
14665 return 0;
14666 case 0:
14667 // op: Rxx32
14668 return 8;
14669 }
14670 break;
14671 }
14672 case Hexagon::V6_vinsertwr: {
14673 switch (OpNum) {
14674 case 2:
14675 // op: Rt32
14676 return 16;
14677 case 0:
14678 // op: Vx32
14679 return 0;
14680 }
14681 break;
14682 }
14683 case Hexagon::M2_subacc: {
14684 switch (OpNum) {
14685 case 2:
14686 // op: Rt32
14687 return 8;
14688 case 3:
14689 // op: Rs32
14690 return 16;
14691 case 0:
14692 // op: Rx32
14693 return 0;
14694 }
14695 break;
14696 }
14697 case Hexagon::A6_vminub_RdP: {
14698 switch (OpNum) {
14699 case 2:
14700 // op: Rtt32
14701 return 8;
14702 case 3:
14703 // op: Rss32
14704 return 16;
14705 case 0:
14706 // op: Rdd32
14707 return 0;
14708 case 1:
14709 // op: Pe4
14710 return 5;
14711 }
14712 break;
14713 }
14714 case Hexagon::V6_vrmpyzbb_rx:
14715 case Hexagon::V6_vrmpyzbub_rx:
14716 case Hexagon::V6_vrmpyzcb_rx:
14717 case Hexagon::V6_vrmpyzcbs_rx:
14718 case Hexagon::V6_vrmpyznb_rx: {
14719 switch (OpNum) {
14720 case 2:
14721 // op: Vu32
14722 return 8;
14723 case 0:
14724 // op: Vdddd32
14725 return 0;
14726 case 1:
14727 // op: Rx8
14728 return 16;
14729 }
14730 break;
14731 }
14732 case Hexagon::V6_vunpackob:
14733 case Hexagon::V6_vunpackoh: {
14734 switch (OpNum) {
14735 case 2:
14736 // op: Vu32
14737 return 8;
14738 case 0:
14739 // op: Vxx32
14740 return 0;
14741 }
14742 break;
14743 }
14744 case Hexagon::V6_vandvrt_acc: {
14745 switch (OpNum) {
14746 case 2:
14747 // op: Vu32
14748 return 8;
14749 case 3:
14750 // op: Rt32
14751 return 16;
14752 case 0:
14753 // op: Qx4
14754 return 0;
14755 }
14756 break;
14757 }
14758 case Hexagon::V6_get_qfext_oracc:
14759 case Hexagon::V6_vaslh_acc:
14760 case Hexagon::V6_vaslw_acc:
14761 case Hexagon::V6_vasrh_acc:
14762 case Hexagon::V6_vasrw_acc:
14763 case Hexagon::V6_vdmpybus_acc:
14764 case Hexagon::V6_vdmpyhb_acc:
14765 case Hexagon::V6_vdmpyhsat_acc:
14766 case Hexagon::V6_vdmpyhsusat_acc:
14767 case Hexagon::V6_vmpyihb_acc:
14768 case Hexagon::V6_vmpyiwb_acc:
14769 case Hexagon::V6_vmpyiwh_acc:
14770 case Hexagon::V6_vmpyiwub_acc:
14771 case Hexagon::V6_vmpyuhe_acc:
14772 case Hexagon::V6_vrmpybus_acc:
14773 case Hexagon::V6_vrmpyub_acc: {
14774 switch (OpNum) {
14775 case 2:
14776 // op: Vu32
14777 return 8;
14778 case 3:
14779 // op: Rt32
14780 return 16;
14781 case 0:
14782 // op: Vx32
14783 return 0;
14784 }
14785 break;
14786 }
14787 case Hexagon::V6_vmpybus_acc:
14788 case Hexagon::V6_vmpyh_acc:
14789 case Hexagon::V6_vmpyhsat_acc:
14790 case Hexagon::V6_vmpyub_acc:
14791 case Hexagon::V6_vmpyuh_acc: {
14792 switch (OpNum) {
14793 case 2:
14794 // op: Vu32
14795 return 8;
14796 case 3:
14797 // op: Rt32
14798 return 16;
14799 case 0:
14800 // op: Vxx32
14801 return 0;
14802 }
14803 break;
14804 }
14805 case Hexagon::V6_vrmpyzbb_rt_acc:
14806 case Hexagon::V6_vrmpyzbub_rt_acc:
14807 case Hexagon::V6_vrmpyzcb_rt_acc:
14808 case Hexagon::V6_vrmpyzcbs_rt_acc:
14809 case Hexagon::V6_vrmpyznb_rt_acc: {
14810 switch (OpNum) {
14811 case 2:
14812 // op: Vu32
14813 return 8;
14814 case 3:
14815 // op: Rt8
14816 return 16;
14817 case 0:
14818 // op: Vyyyy32
14819 return 0;
14820 }
14821 break;
14822 }
14823 case Hexagon::V6_vmpahhsat:
14824 case Hexagon::V6_vmpauhuhsat:
14825 case Hexagon::V6_vmpsuhuhsat: {
14826 switch (OpNum) {
14827 case 2:
14828 // op: Vu32
14829 return 8;
14830 case 3:
14831 // op: Rtt32
14832 return 16;
14833 case 0:
14834 // op: Vx32
14835 return 0;
14836 }
14837 break;
14838 }
14839 case Hexagon::V6_vrmpybub_rtt_acc:
14840 case Hexagon::V6_vrmpyub_rtt_acc: {
14841 switch (OpNum) {
14842 case 2:
14843 // op: Vu32
14844 return 8;
14845 case 3:
14846 // op: Rtt32
14847 return 16;
14848 case 0:
14849 // op: Vxx32
14850 return 0;
14851 }
14852 break;
14853 }
14854 case Hexagon::V6_veqb_and:
14855 case Hexagon::V6_veqb_or:
14856 case Hexagon::V6_veqb_xor:
14857 case Hexagon::V6_veqh_and:
14858 case Hexagon::V6_veqh_or:
14859 case Hexagon::V6_veqh_xor:
14860 case Hexagon::V6_veqhf_and:
14861 case Hexagon::V6_veqhf_or:
14862 case Hexagon::V6_veqhf_xor:
14863 case Hexagon::V6_veqsf_and:
14864 case Hexagon::V6_veqsf_or:
14865 case Hexagon::V6_veqsf_xor:
14866 case Hexagon::V6_veqw_and:
14867 case Hexagon::V6_veqw_or:
14868 case Hexagon::V6_veqw_xor:
14869 case Hexagon::V6_vgtb_and:
14870 case Hexagon::V6_vgtb_or:
14871 case Hexagon::V6_vgtb_xor:
14872 case Hexagon::V6_vgtbf_and:
14873 case Hexagon::V6_vgtbf_or:
14874 case Hexagon::V6_vgtbf_xor:
14875 case Hexagon::V6_vgth_and:
14876 case Hexagon::V6_vgth_or:
14877 case Hexagon::V6_vgth_xor:
14878 case Hexagon::V6_vgthf_and:
14879 case Hexagon::V6_vgthf_or:
14880 case Hexagon::V6_vgthf_xor:
14881 case Hexagon::V6_vgtsf_and:
14882 case Hexagon::V6_vgtsf_or:
14883 case Hexagon::V6_vgtsf_xor:
14884 case Hexagon::V6_vgtub_and:
14885 case Hexagon::V6_vgtub_or:
14886 case Hexagon::V6_vgtub_xor:
14887 case Hexagon::V6_vgtuh_and:
14888 case Hexagon::V6_vgtuh_or:
14889 case Hexagon::V6_vgtuh_xor:
14890 case Hexagon::V6_vgtuw_and:
14891 case Hexagon::V6_vgtuw_or:
14892 case Hexagon::V6_vgtuw_xor:
14893 case Hexagon::V6_vgtw_and:
14894 case Hexagon::V6_vgtw_or:
14895 case Hexagon::V6_vgtw_xor: {
14896 switch (OpNum) {
14897 case 2:
14898 // op: Vu32
14899 return 8;
14900 case 3:
14901 // op: Vv32
14902 return 16;
14903 case 0:
14904 // op: Qx4
14905 return 0;
14906 }
14907 break;
14908 }
14909 case Hexagon::V6_vaddcarryo:
14910 case Hexagon::V6_vsubcarryo: {
14911 switch (OpNum) {
14912 case 2:
14913 // op: Vu32
14914 return 8;
14915 case 3:
14916 // op: Vv32
14917 return 16;
14918 case 0:
14919 // op: Vd32
14920 return 0;
14921 case 1:
14922 // op: Qe4
14923 return 5;
14924 }
14925 break;
14926 }
14927 case Hexagon::V6_vaddcarry:
14928 case Hexagon::V6_vsubcarry: {
14929 switch (OpNum) {
14930 case 2:
14931 // op: Vu32
14932 return 8;
14933 case 3:
14934 // op: Vv32
14935 return 16;
14936 case 0:
14937 // op: Vd32
14938 return 0;
14939 case 1:
14940 // op: Qx4
14941 return 5;
14942 }
14943 break;
14944 }
14945 case Hexagon::V6_vdmpy_sf_hf_acc:
14946 case Hexagon::V6_vdmpyhvsat_acc:
14947 case Hexagon::V6_vmpy_hf_hf_acc:
14948 case Hexagon::V6_vmpyiewh_acc:
14949 case Hexagon::V6_vmpyiewuh_acc:
14950 case Hexagon::V6_vmpyih_acc:
14951 case Hexagon::V6_vmpyowh_rnd_sacc:
14952 case Hexagon::V6_vmpyowh_sacc:
14953 case Hexagon::V6_vrmpybusv_acc:
14954 case Hexagon::V6_vrmpybv_acc:
14955 case Hexagon::V6_vrmpyubv_acc: {
14956 switch (OpNum) {
14957 case 2:
14958 // op: Vu32
14959 return 8;
14960 case 3:
14961 // op: Vv32
14962 return 16;
14963 case 0:
14964 // op: Vx32
14965 return 0;
14966 }
14967 break;
14968 }
14969 case Hexagon::V6_vaddhw_acc:
14970 case Hexagon::V6_vaddubh_acc:
14971 case Hexagon::V6_vadduhw_acc:
14972 case Hexagon::V6_vasr_into:
14973 case Hexagon::V6_vmpy_hf_f8_acc:
14974 case Hexagon::V6_vmpy_sf_bf_acc:
14975 case Hexagon::V6_vmpy_sf_hf_acc:
14976 case Hexagon::V6_vmpybusv_acc:
14977 case Hexagon::V6_vmpybv_acc:
14978 case Hexagon::V6_vmpyhus_acc:
14979 case Hexagon::V6_vmpyhv_acc:
14980 case Hexagon::V6_vmpyowh_64_acc:
14981 case Hexagon::V6_vmpyubv_acc:
14982 case Hexagon::V6_vmpyuhv_acc: {
14983 switch (OpNum) {
14984 case 2:
14985 // op: Vu32
14986 return 8;
14987 case 3:
14988 // op: Vv32
14989 return 16;
14990 case 0:
14991 // op: Vxx32
14992 return 0;
14993 }
14994 break;
14995 }
14996 case Hexagon::V6_vlutvvb_oracc: {
14997 switch (OpNum) {
14998 case 2:
14999 // op: Vu32
15000 return 8;
15001 case 3:
15002 // op: Vv32
15003 return 19;
15004 case 4:
15005 // op: Rt8
15006 return 16;
15007 case 0:
15008 // op: Vx32
15009 return 0;
15010 }
15011 break;
15012 }
15013 case Hexagon::V6_vlutvwh_oracc: {
15014 switch (OpNum) {
15015 case 2:
15016 // op: Vu32
15017 return 8;
15018 case 3:
15019 // op: Vv32
15020 return 19;
15021 case 4:
15022 // op: Rt8
15023 return 16;
15024 case 0:
15025 // op: Vxx32
15026 return 0;
15027 }
15028 break;
15029 }
15030 case Hexagon::V6_vdmpyhisat_acc:
15031 case Hexagon::V6_vdmpyhsuisat_acc: {
15032 switch (OpNum) {
15033 case 2:
15034 // op: Vuu32
15035 return 8;
15036 case 3:
15037 // op: Rt32
15038 return 16;
15039 case 0:
15040 // op: Vx32
15041 return 0;
15042 }
15043 break;
15044 }
15045 case Hexagon::V6_vdmpybus_dv_acc:
15046 case Hexagon::V6_vdmpyhb_dv_acc:
15047 case Hexagon::V6_vdsaduh_acc:
15048 case Hexagon::V6_vmpabus_acc:
15049 case Hexagon::V6_vmpabuu_acc:
15050 case Hexagon::V6_vmpahb_acc:
15051 case Hexagon::V6_vmpauhb_acc:
15052 case Hexagon::V6_vtmpyb_acc:
15053 case Hexagon::V6_vtmpybus_acc:
15054 case Hexagon::V6_vtmpyhb_acc: {
15055 switch (OpNum) {
15056 case 2:
15057 // op: Vuu32
15058 return 8;
15059 case 3:
15060 // op: Rt32
15061 return 16;
15062 case 0:
15063 // op: Vxx32
15064 return 0;
15065 }
15066 break;
15067 }
15068 case Hexagon::L4_loadalignb_ap:
15069 case Hexagon::L4_loadalignh_ap: {
15070 switch (OpNum) {
15071 case 3:
15072 // op: II
15073 return 5;
15074 case 0:
15075 // op: Ryy32
15076 return 0;
15077 case 1:
15078 // op: Re32
15079 return 16;
15080 }
15081 break;
15082 }
15083 case Hexagon::S2_pstorerbnewf_pi:
15084 case Hexagon::S2_pstorerbnewfnew_pi:
15085 case Hexagon::S2_pstorerbnewt_pi:
15086 case Hexagon::S2_pstorerbnewtnew_pi:
15087 case Hexagon::S2_pstorerhnewf_pi:
15088 case Hexagon::S2_pstorerhnewfnew_pi:
15089 case Hexagon::S2_pstorerhnewt_pi:
15090 case Hexagon::S2_pstorerhnewtnew_pi:
15091 case Hexagon::S2_pstorerinewf_pi:
15092 case Hexagon::S2_pstorerinewfnew_pi:
15093 case Hexagon::S2_pstorerinewt_pi:
15094 case Hexagon::S2_pstorerinewtnew_pi: {
15095 switch (OpNum) {
15096 case 3:
15097 // op: Ii
15098 return 3;
15099 case 1:
15100 // op: Pv4
15101 return 0;
15102 case 4:
15103 // op: Nt8
15104 return 8;
15105 case 0:
15106 // op: Rx32
15107 return 16;
15108 }
15109 break;
15110 }
15111 case Hexagon::S2_pstorerbf_pi:
15112 case Hexagon::S2_pstorerbf_pi_nt:
15113 case Hexagon::S2_pstorerbfnew_pi:
15114 case Hexagon::S2_pstorerbt_pi:
15115 case Hexagon::S2_pstorerbt_pi_nt:
15116 case Hexagon::S2_pstorerbtnew_pi:
15117 case Hexagon::S2_pstorerff_pi:
15118 case Hexagon::S2_pstorerffnew_pi:
15119 case Hexagon::S2_pstorerft_pi:
15120 case Hexagon::S2_pstorerftnew_pi:
15121 case Hexagon::S2_pstorerhf_pi:
15122 case Hexagon::S2_pstorerhf_pi_nt:
15123 case Hexagon::S2_pstorerhfnew_pi:
15124 case Hexagon::S2_pstorerht_pi:
15125 case Hexagon::S2_pstorerht_pi_nt:
15126 case Hexagon::S2_pstorerhtnew_pi:
15127 case Hexagon::S2_pstorerif_pi:
15128 case Hexagon::S2_pstorerif_pi_nt:
15129 case Hexagon::S2_pstorerifnew_pi:
15130 case Hexagon::S2_pstorerit_pi:
15131 case Hexagon::S2_pstorerit_pi_nt:
15132 case Hexagon::S2_pstoreritnew_pi: {
15133 switch (OpNum) {
15134 case 3:
15135 // op: Ii
15136 return 3;
15137 case 1:
15138 // op: Pv4
15139 return 0;
15140 case 4:
15141 // op: Rt32
15142 return 8;
15143 case 0:
15144 // op: Rx32
15145 return 16;
15146 }
15147 break;
15148 }
15149 case Hexagon::S2_pstorerdf_pi:
15150 case Hexagon::S2_pstorerdf_pi_nt:
15151 case Hexagon::S2_pstorerdfnew_pi:
15152 case Hexagon::S2_pstorerdt_pi:
15153 case Hexagon::S2_pstorerdt_pi_nt:
15154 case Hexagon::S2_pstorerdtnew_pi: {
15155 switch (OpNum) {
15156 case 3:
15157 // op: Ii
15158 return 3;
15159 case 1:
15160 // op: Pv4
15161 return 0;
15162 case 4:
15163 // op: Rtt32
15164 return 8;
15165 case 0:
15166 // op: Rx32
15167 return 16;
15168 }
15169 break;
15170 }
15171 case Hexagon::L2_loadbsw2_pi:
15172 case Hexagon::L2_loadbzw2_pi:
15173 case Hexagon::L2_loadrb_pi:
15174 case Hexagon::L2_loadrh_pi:
15175 case Hexagon::L2_loadri_pi:
15176 case Hexagon::L2_loadrub_pi:
15177 case Hexagon::L2_loadruh_pi: {
15178 switch (OpNum) {
15179 case 3:
15180 // op: Ii
15181 return 5;
15182 case 0:
15183 // op: Rd32
15184 return 0;
15185 case 1:
15186 // op: Rx32
15187 return 16;
15188 }
15189 break;
15190 }
15191 case Hexagon::L2_loadbsw4_pi:
15192 case Hexagon::L2_loadbzw4_pi:
15193 case Hexagon::L2_loadrd_pi: {
15194 switch (OpNum) {
15195 case 3:
15196 // op: Ii
15197 return 5;
15198 case 0:
15199 // op: Rdd32
15200 return 0;
15201 case 1:
15202 // op: Rx32
15203 return 16;
15204 }
15205 break;
15206 }
15207 case Hexagon::L2_ploadrbf_io:
15208 case Hexagon::L2_ploadrbfnew_io:
15209 case Hexagon::L2_ploadrbt_io:
15210 case Hexagon::L2_ploadrbtnew_io:
15211 case Hexagon::L2_ploadrhf_io:
15212 case Hexagon::L2_ploadrhfnew_io:
15213 case Hexagon::L2_ploadrht_io:
15214 case Hexagon::L2_ploadrhtnew_io:
15215 case Hexagon::L2_ploadrif_io:
15216 case Hexagon::L2_ploadrifnew_io:
15217 case Hexagon::L2_ploadrit_io:
15218 case Hexagon::L2_ploadritnew_io:
15219 case Hexagon::L2_ploadrubf_io:
15220 case Hexagon::L2_ploadrubfnew_io:
15221 case Hexagon::L2_ploadrubt_io:
15222 case Hexagon::L2_ploadrubtnew_io:
15223 case Hexagon::L2_ploadruhf_io:
15224 case Hexagon::L2_ploadruhfnew_io:
15225 case Hexagon::L2_ploadruht_io:
15226 case Hexagon::L2_ploadruhtnew_io: {
15227 switch (OpNum) {
15228 case 3:
15229 // op: Ii
15230 return 5;
15231 case 1:
15232 // op: Pt4
15233 return 11;
15234 case 2:
15235 // op: Rs32
15236 return 16;
15237 case 0:
15238 // op: Rd32
15239 return 0;
15240 }
15241 break;
15242 }
15243 case Hexagon::L2_ploadrdf_io:
15244 case Hexagon::L2_ploadrdfnew_io:
15245 case Hexagon::L2_ploadrdt_io:
15246 case Hexagon::L2_ploadrdtnew_io: {
15247 switch (OpNum) {
15248 case 3:
15249 // op: Ii
15250 return 5;
15251 case 1:
15252 // op: Pt4
15253 return 11;
15254 case 2:
15255 // op: Rs32
15256 return 16;
15257 case 0:
15258 // op: Rdd32
15259 return 0;
15260 }
15261 break;
15262 }
15263 case Hexagon::A2_paddif:
15264 case Hexagon::A2_paddifnew:
15265 case Hexagon::A2_paddit:
15266 case Hexagon::A2_padditnew:
15267 case Hexagon::C2_muxir: {
15268 switch (OpNum) {
15269 case 3:
15270 // op: Ii
15271 return 5;
15272 case 1:
15273 // op: Pu4
15274 return 21;
15275 case 2:
15276 // op: Rs32
15277 return 16;
15278 case 0:
15279 // op: Rd32
15280 return 0;
15281 }
15282 break;
15283 }
15284 case Hexagon::S4_addaddi: {
15285 switch (OpNum) {
15286 case 3:
15287 // op: Ii
15288 return 5;
15289 case 1:
15290 // op: Rs32
15291 return 16;
15292 case 2:
15293 // op: Ru32
15294 return 0;
15295 case 0:
15296 // op: Rd32
15297 return 8;
15298 }
15299 break;
15300 }
15301 case Hexagon::S4_vrcrotate: {
15302 switch (OpNum) {
15303 case 3:
15304 // op: Ii
15305 return 5;
15306 case 1:
15307 // op: Rss32
15308 return 16;
15309 case 2:
15310 // op: Rt32
15311 return 8;
15312 case 0:
15313 // op: Rdd32
15314 return 0;
15315 }
15316 break;
15317 }
15318 case Hexagon::S2_vspliceib: {
15319 switch (OpNum) {
15320 case 3:
15321 // op: Ii
15322 return 5;
15323 case 1:
15324 // op: Rss32
15325 return 16;
15326 case 2:
15327 // op: Rtt32
15328 return 8;
15329 case 0:
15330 // op: Rdd32
15331 return 0;
15332 }
15333 break;
15334 }
15335 case Hexagon::S2_addasl_rrri: {
15336 switch (OpNum) {
15337 case 3:
15338 // op: Ii
15339 return 5;
15340 case 1:
15341 // op: Rt32
15342 return 8;
15343 case 2:
15344 // op: Rs32
15345 return 16;
15346 case 0:
15347 // op: Rd32
15348 return 0;
15349 }
15350 break;
15351 }
15352 case Hexagon::S2_valignib: {
15353 switch (OpNum) {
15354 case 3:
15355 // op: Ii
15356 return 5;
15357 case 1:
15358 // op: Rtt32
15359 return 8;
15360 case 2:
15361 // op: Rss32
15362 return 16;
15363 case 0:
15364 // op: Rdd32
15365 return 0;
15366 }
15367 break;
15368 }
15369 case Hexagon::S4_or_andix: {
15370 switch (OpNum) {
15371 case 3:
15372 // op: Ii
15373 return 5;
15374 case 1:
15375 // op: Ru32
15376 return 0;
15377 case 0:
15378 // op: Rx32
15379 return 16;
15380 }
15381 break;
15382 }
15383 case Hexagon::M4_mpyri_addr: {
15384 switch (OpNum) {
15385 case 3:
15386 // op: Ii
15387 return 5;
15388 case 1:
15389 // op: Ru32
15390 return 0;
15391 case 2:
15392 // op: Rs32
15393 return 16;
15394 case 0:
15395 // op: Rd32
15396 return 8;
15397 }
15398 break;
15399 }
15400 case Hexagon::V6_valignbi:
15401 case Hexagon::V6_vlalignbi:
15402 case Hexagon::V6_vlutvvbi: {
15403 switch (OpNum) {
15404 case 3:
15405 // op: Ii
15406 return 5;
15407 case 1:
15408 // op: Vu32
15409 return 8;
15410 case 2:
15411 // op: Vv32
15412 return 16;
15413 case 0:
15414 // op: Vd32
15415 return 0;
15416 }
15417 break;
15418 }
15419 case Hexagon::V6_vlutvwhi: {
15420 switch (OpNum) {
15421 case 3:
15422 // op: Ii
15423 return 5;
15424 case 1:
15425 // op: Vu32
15426 return 8;
15427 case 2:
15428 // op: Vv32
15429 return 16;
15430 case 0:
15431 // op: Vdd32
15432 return 0;
15433 }
15434 break;
15435 }
15436 case Hexagon::V6_vrmpybusi:
15437 case Hexagon::V6_vrmpyubi:
15438 case Hexagon::V6_vrsadubi: {
15439 switch (OpNum) {
15440 case 3:
15441 // op: Ii
15442 return 5;
15443 case 1:
15444 // op: Vuu32
15445 return 8;
15446 case 2:
15447 // op: Rt32
15448 return 16;
15449 case 0:
15450 // op: Vdd32
15451 return 0;
15452 }
15453 break;
15454 }
15455 case Hexagon::V6_v6mpyhubs10:
15456 case Hexagon::V6_v6mpyvubs10: {
15457 switch (OpNum) {
15458 case 3:
15459 // op: Ii
15460 return 5;
15461 case 1:
15462 // op: Vuu32
15463 return 8;
15464 case 2:
15465 // op: Vvv32
15466 return 16;
15467 case 0:
15468 // op: Vdd32
15469 return 0;
15470 }
15471 break;
15472 }
15473 case Hexagon::M2_accii:
15474 case Hexagon::M2_macsin:
15475 case Hexagon::M2_macsip:
15476 case Hexagon::M2_naccii:
15477 case Hexagon::S4_or_andi:
15478 case Hexagon::S4_or_ori: {
15479 switch (OpNum) {
15480 case 3:
15481 // op: Ii
15482 return 5;
15483 case 2:
15484 // op: Rs32
15485 return 16;
15486 case 0:
15487 // op: Rx32
15488 return 0;
15489 }
15490 break;
15491 }
15492 case Hexagon::L2_loadalignb_io:
15493 case Hexagon::L2_loadalignh_io: {
15494 switch (OpNum) {
15495 case 3:
15496 // op: Ii
15497 return 5;
15498 case 2:
15499 // op: Rs32
15500 return 16;
15501 case 0:
15502 // op: Ryy32
15503 return 0;
15504 }
15505 break;
15506 }
15507 case Hexagon::S2_tableidxb:
15508 case Hexagon::S2_tableidxd:
15509 case Hexagon::S2_tableidxh:
15510 case Hexagon::S2_tableidxw: {
15511 switch (OpNum) {
15512 case 3:
15513 // op: Ii
15514 return 5;
15515 case 4:
15516 // op: II
15517 return 8;
15518 case 2:
15519 // op: Rs32
15520 return 16;
15521 case 0:
15522 // op: Rx32
15523 return 0;
15524 }
15525 break;
15526 }
15527 case Hexagon::L2_loadbsw2_pci:
15528 case Hexagon::L2_loadbzw2_pci:
15529 case Hexagon::L2_loadrb_pci:
15530 case Hexagon::L2_loadrh_pci:
15531 case Hexagon::L2_loadri_pci:
15532 case Hexagon::L2_loadrub_pci:
15533 case Hexagon::L2_loadruh_pci: {
15534 switch (OpNum) {
15535 case 3:
15536 // op: Ii
15537 return 5;
15538 case 4:
15539 // op: Mu2
15540 return 13;
15541 case 0:
15542 // op: Rd32
15543 return 0;
15544 case 1:
15545 // op: Rx32
15546 return 16;
15547 }
15548 break;
15549 }
15550 case Hexagon::L2_loadbsw4_pci:
15551 case Hexagon::L2_loadbzw4_pci:
15552 case Hexagon::L2_loadrd_pci: {
15553 switch (OpNum) {
15554 case 3:
15555 // op: Ii
15556 return 5;
15557 case 4:
15558 // op: Mu2
15559 return 13;
15560 case 0:
15561 // op: Rdd32
15562 return 0;
15563 case 1:
15564 // op: Rx32
15565 return 16;
15566 }
15567 break;
15568 }
15569 case Hexagon::S4_pstorerbnewf_rr:
15570 case Hexagon::S4_pstorerbnewfnew_rr:
15571 case Hexagon::S4_pstorerbnewt_rr:
15572 case Hexagon::S4_pstorerbnewtnew_rr:
15573 case Hexagon::S4_pstorerhnewf_rr:
15574 case Hexagon::S4_pstorerhnewfnew_rr:
15575 case Hexagon::S4_pstorerhnewt_rr:
15576 case Hexagon::S4_pstorerhnewtnew_rr:
15577 case Hexagon::S4_pstorerinewf_rr:
15578 case Hexagon::S4_pstorerinewfnew_rr:
15579 case Hexagon::S4_pstorerinewt_rr:
15580 case Hexagon::S4_pstorerinewtnew_rr: {
15581 switch (OpNum) {
15582 case 3:
15583 // op: Ii
15584 return 7;
15585 case 0:
15586 // op: Pv4
15587 return 5;
15588 case 1:
15589 // op: Rs32
15590 return 16;
15591 case 2:
15592 // op: Ru32
15593 return 8;
15594 case 4:
15595 // op: Nt8
15596 return 0;
15597 }
15598 break;
15599 }
15600 case Hexagon::S4_pstorerbf_rr:
15601 case Hexagon::S4_pstorerbfnew_rr:
15602 case Hexagon::S4_pstorerbt_rr:
15603 case Hexagon::S4_pstorerbtnew_rr:
15604 case Hexagon::S4_pstorerff_rr:
15605 case Hexagon::S4_pstorerffnew_rr:
15606 case Hexagon::S4_pstorerft_rr:
15607 case Hexagon::S4_pstorerftnew_rr:
15608 case Hexagon::S4_pstorerhf_rr:
15609 case Hexagon::S4_pstorerhfnew_rr:
15610 case Hexagon::S4_pstorerht_rr:
15611 case Hexagon::S4_pstorerhtnew_rr:
15612 case Hexagon::S4_pstorerif_rr:
15613 case Hexagon::S4_pstorerifnew_rr:
15614 case Hexagon::S4_pstorerit_rr:
15615 case Hexagon::S4_pstoreritnew_rr: {
15616 switch (OpNum) {
15617 case 3:
15618 // op: Ii
15619 return 7;
15620 case 0:
15621 // op: Pv4
15622 return 5;
15623 case 1:
15624 // op: Rs32
15625 return 16;
15626 case 2:
15627 // op: Ru32
15628 return 8;
15629 case 4:
15630 // op: Rt32
15631 return 0;
15632 }
15633 break;
15634 }
15635 case Hexagon::S4_pstorerdf_rr:
15636 case Hexagon::S4_pstorerdfnew_rr:
15637 case Hexagon::S4_pstorerdt_rr:
15638 case Hexagon::S4_pstorerdtnew_rr: {
15639 switch (OpNum) {
15640 case 3:
15641 // op: Ii
15642 return 7;
15643 case 0:
15644 // op: Pv4
15645 return 5;
15646 case 1:
15647 // op: Rs32
15648 return 16;
15649 case 2:
15650 // op: Ru32
15651 return 8;
15652 case 4:
15653 // op: Rtt32
15654 return 0;
15655 }
15656 break;
15657 }
15658 case Hexagon::L4_loadrb_rr:
15659 case Hexagon::L4_loadrh_rr:
15660 case Hexagon::L4_loadri_rr:
15661 case Hexagon::L4_loadrub_rr:
15662 case Hexagon::L4_loadruh_rr: {
15663 switch (OpNum) {
15664 case 3:
15665 // op: Ii
15666 return 7;
15667 case 1:
15668 // op: Rs32
15669 return 16;
15670 case 2:
15671 // op: Rt32
15672 return 8;
15673 case 0:
15674 // op: Rd32
15675 return 0;
15676 }
15677 break;
15678 }
15679 case Hexagon::L4_loadrd_rr: {
15680 switch (OpNum) {
15681 case 3:
15682 // op: Ii
15683 return 7;
15684 case 1:
15685 // op: Rs32
15686 return 16;
15687 case 2:
15688 // op: Rt32
15689 return 8;
15690 case 0:
15691 // op: Rdd32
15692 return 0;
15693 }
15694 break;
15695 }
15696 case Hexagon::L4_loadalignb_ur:
15697 case Hexagon::L4_loadalignh_ur: {
15698 switch (OpNum) {
15699 case 3:
15700 // op: Ii
15701 return 7;
15702 case 4:
15703 // op: II
15704 return 5;
15705 case 2:
15706 // op: Rt32
15707 return 16;
15708 case 0:
15709 // op: Ryy32
15710 return 0;
15711 }
15712 break;
15713 }
15714 case Hexagon::V6_vL32Ub_pi:
15715 case Hexagon::V6_vL32b_cur_pi:
15716 case Hexagon::V6_vL32b_nt_cur_pi:
15717 case Hexagon::V6_vL32b_nt_pi:
15718 case Hexagon::V6_vL32b_nt_tmp_pi:
15719 case Hexagon::V6_vL32b_pi:
15720 case Hexagon::V6_vL32b_tmp_pi: {
15721 switch (OpNum) {
15722 case 3:
15723 // op: Ii
15724 return 8;
15725 case 0:
15726 // op: Vd32
15727 return 0;
15728 case 1:
15729 // op: Rx32
15730 return 16;
15731 }
15732 break;
15733 }
15734 case Hexagon::V6_zLd_pred_pi: {
15735 switch (OpNum) {
15736 case 3:
15737 // op: Ii
15738 return 8;
15739 case 1:
15740 // op: Pv4
15741 return 11;
15742 case 0:
15743 // op: Rx32
15744 return 16;
15745 }
15746 break;
15747 }
15748 case Hexagon::V6_vL32b_cur_npred_ai:
15749 case Hexagon::V6_vL32b_cur_pred_ai:
15750 case Hexagon::V6_vL32b_npred_ai:
15751 case Hexagon::V6_vL32b_nt_cur_npred_ai:
15752 case Hexagon::V6_vL32b_nt_cur_pred_ai:
15753 case Hexagon::V6_vL32b_nt_npred_ai:
15754 case Hexagon::V6_vL32b_nt_pred_ai:
15755 case Hexagon::V6_vL32b_nt_tmp_npred_ai:
15756 case Hexagon::V6_vL32b_nt_tmp_pred_ai:
15757 case Hexagon::V6_vL32b_pred_ai:
15758 case Hexagon::V6_vL32b_tmp_npred_ai:
15759 case Hexagon::V6_vL32b_tmp_pred_ai: {
15760 switch (OpNum) {
15761 case 3:
15762 // op: Ii
15763 return 8;
15764 case 1:
15765 // op: Pv4
15766 return 11;
15767 case 2:
15768 // op: Rt32
15769 return 16;
15770 case 0:
15771 // op: Vd32
15772 return 0;
15773 }
15774 break;
15775 }
15776 case Hexagon::V6_vS32b_new_npred_pi:
15777 case Hexagon::V6_vS32b_new_pred_pi:
15778 case Hexagon::V6_vS32b_nt_new_npred_pi:
15779 case Hexagon::V6_vS32b_nt_new_pred_pi: {
15780 switch (OpNum) {
15781 case 3:
15782 // op: Ii
15783 return 8;
15784 case 1:
15785 // op: Pv4
15786 return 11;
15787 case 4:
15788 // op: Os8
15789 return 0;
15790 case 0:
15791 // op: Rx32
15792 return 16;
15793 }
15794 break;
15795 }
15796 case Hexagon::V6_vS32Ub_npred_pi:
15797 case Hexagon::V6_vS32Ub_pred_pi:
15798 case Hexagon::V6_vS32b_npred_pi:
15799 case Hexagon::V6_vS32b_nt_npred_pi:
15800 case Hexagon::V6_vS32b_nt_pred_pi:
15801 case Hexagon::V6_vS32b_pred_pi: {
15802 switch (OpNum) {
15803 case 3:
15804 // op: Ii
15805 return 8;
15806 case 1:
15807 // op: Pv4
15808 return 11;
15809 case 4:
15810 // op: Vs32
15811 return 0;
15812 case 0:
15813 // op: Rx32
15814 return 16;
15815 }
15816 break;
15817 }
15818 case Hexagon::V6_vS32b_nqpred_pi:
15819 case Hexagon::V6_vS32b_nt_nqpred_pi:
15820 case Hexagon::V6_vS32b_nt_qpred_pi:
15821 case Hexagon::V6_vS32b_qpred_pi: {
15822 switch (OpNum) {
15823 case 3:
15824 // op: Ii
15825 return 8;
15826 case 1:
15827 // op: Qv4
15828 return 11;
15829 case 4:
15830 // op: Vs32
15831 return 0;
15832 case 0:
15833 // op: Rx32
15834 return 16;
15835 }
15836 break;
15837 }
15838 case Hexagon::S2_asl_i_r_acc:
15839 case Hexagon::S2_asl_i_r_and:
15840 case Hexagon::S2_asl_i_r_nac:
15841 case Hexagon::S2_asl_i_r_or:
15842 case Hexagon::S2_asl_i_r_xacc:
15843 case Hexagon::S2_asr_i_r_acc:
15844 case Hexagon::S2_asr_i_r_and:
15845 case Hexagon::S2_asr_i_r_nac:
15846 case Hexagon::S2_asr_i_r_or:
15847 case Hexagon::S2_lsr_i_r_acc:
15848 case Hexagon::S2_lsr_i_r_and:
15849 case Hexagon::S2_lsr_i_r_nac:
15850 case Hexagon::S2_lsr_i_r_or:
15851 case Hexagon::S2_lsr_i_r_xacc:
15852 case Hexagon::S6_rol_i_r_acc:
15853 case Hexagon::S6_rol_i_r_and:
15854 case Hexagon::S6_rol_i_r_nac:
15855 case Hexagon::S6_rol_i_r_or:
15856 case Hexagon::S6_rol_i_r_xacc: {
15857 switch (OpNum) {
15858 case 3:
15859 // op: Ii
15860 return 8;
15861 case 2:
15862 // op: Rs32
15863 return 16;
15864 case 0:
15865 // op: Rx32
15866 return 0;
15867 }
15868 break;
15869 }
15870 case Hexagon::S2_asl_i_p_acc:
15871 case Hexagon::S2_asl_i_p_and:
15872 case Hexagon::S2_asl_i_p_nac:
15873 case Hexagon::S2_asl_i_p_or:
15874 case Hexagon::S2_asl_i_p_xacc:
15875 case Hexagon::S2_asr_i_p_acc:
15876 case Hexagon::S2_asr_i_p_and:
15877 case Hexagon::S2_asr_i_p_nac:
15878 case Hexagon::S2_asr_i_p_or:
15879 case Hexagon::S2_lsr_i_p_acc:
15880 case Hexagon::S2_lsr_i_p_and:
15881 case Hexagon::S2_lsr_i_p_nac:
15882 case Hexagon::S2_lsr_i_p_or:
15883 case Hexagon::S2_lsr_i_p_xacc:
15884 case Hexagon::S6_rol_i_p_acc:
15885 case Hexagon::S6_rol_i_p_and:
15886 case Hexagon::S6_rol_i_p_nac:
15887 case Hexagon::S6_rol_i_p_or:
15888 case Hexagon::S6_rol_i_p_xacc: {
15889 switch (OpNum) {
15890 case 3:
15891 // op: Ii
15892 return 8;
15893 case 2:
15894 // op: Rss32
15895 return 16;
15896 case 0:
15897 // op: Rxx32
15898 return 0;
15899 }
15900 break;
15901 }
15902 case Hexagon::S2_insert: {
15903 switch (OpNum) {
15904 case 3:
15905 // op: Ii
15906 return 8;
15907 case 4:
15908 // op: II
15909 return 5;
15910 case 2:
15911 // op: Rs32
15912 return 16;
15913 case 0:
15914 // op: Rx32
15915 return 0;
15916 }
15917 break;
15918 }
15919 case Hexagon::S2_insertp: {
15920 switch (OpNum) {
15921 case 3:
15922 // op: Ii
15923 return 8;
15924 case 4:
15925 // op: II
15926 return 5;
15927 case 2:
15928 // op: Rss32
15929 return 16;
15930 case 0:
15931 // op: Rxx32
15932 return 0;
15933 }
15934 break;
15935 }
15936 case Hexagon::L2_loadbsw2_pbr:
15937 case Hexagon::L2_loadbsw2_pcr:
15938 case Hexagon::L2_loadbsw2_pr:
15939 case Hexagon::L2_loadbzw2_pbr:
15940 case Hexagon::L2_loadbzw2_pcr:
15941 case Hexagon::L2_loadbzw2_pr:
15942 case Hexagon::L2_loadrb_pbr:
15943 case Hexagon::L2_loadrb_pcr:
15944 case Hexagon::L2_loadrb_pr:
15945 case Hexagon::L2_loadrh_pbr:
15946 case Hexagon::L2_loadrh_pcr:
15947 case Hexagon::L2_loadrh_pr:
15948 case Hexagon::L2_loadri_pbr:
15949 case Hexagon::L2_loadri_pcr:
15950 case Hexagon::L2_loadri_pr:
15951 case Hexagon::L2_loadrub_pbr:
15952 case Hexagon::L2_loadrub_pcr:
15953 case Hexagon::L2_loadrub_pr:
15954 case Hexagon::L2_loadruh_pbr:
15955 case Hexagon::L2_loadruh_pcr:
15956 case Hexagon::L2_loadruh_pr: {
15957 switch (OpNum) {
15958 case 3:
15959 // op: Mu2
15960 return 13;
15961 case 0:
15962 // op: Rd32
15963 return 0;
15964 case 1:
15965 // op: Rx32
15966 return 16;
15967 }
15968 break;
15969 }
15970 case Hexagon::L2_loadbsw4_pbr:
15971 case Hexagon::L2_loadbsw4_pcr:
15972 case Hexagon::L2_loadbsw4_pr:
15973 case Hexagon::L2_loadbzw4_pbr:
15974 case Hexagon::L2_loadbzw4_pcr:
15975 case Hexagon::L2_loadbzw4_pr:
15976 case Hexagon::L2_loadrd_pbr:
15977 case Hexagon::L2_loadrd_pcr:
15978 case Hexagon::L2_loadrd_pr: {
15979 switch (OpNum) {
15980 case 3:
15981 // op: Mu2
15982 return 13;
15983 case 0:
15984 // op: Rdd32
15985 return 0;
15986 case 1:
15987 // op: Rx32
15988 return 16;
15989 }
15990 break;
15991 }
15992 case Hexagon::V6_vL32Ub_ppu:
15993 case Hexagon::V6_vL32b_cur_ppu:
15994 case Hexagon::V6_vL32b_nt_cur_ppu:
15995 case Hexagon::V6_vL32b_nt_ppu:
15996 case Hexagon::V6_vL32b_nt_tmp_ppu:
15997 case Hexagon::V6_vL32b_ppu:
15998 case Hexagon::V6_vL32b_tmp_ppu: {
15999 switch (OpNum) {
16000 case 3:
16001 // op: Mu2
16002 return 13;
16003 case 0:
16004 // op: Vd32
16005 return 0;
16006 case 1:
16007 // op: Rx32
16008 return 16;
16009 }
16010 break;
16011 }
16012 case Hexagon::A5_ACS: {
16013 switch (OpNum) {
16014 case 3:
16015 // op: Rss32
16016 return 16;
16017 case 4:
16018 // op: Rtt32
16019 return 8;
16020 case 0:
16021 // op: Rxx32
16022 return 0;
16023 case 1:
16024 // op: Pe4
16025 return 5;
16026 }
16027 break;
16028 }
16029 case Hexagon::V6_vrmpyzbb_rx_acc:
16030 case Hexagon::V6_vrmpyzbub_rx_acc:
16031 case Hexagon::V6_vrmpyzcb_rx_acc:
16032 case Hexagon::V6_vrmpyzcbs_rx_acc:
16033 case Hexagon::V6_vrmpyznb_rx_acc: {
16034 switch (OpNum) {
16035 case 3:
16036 // op: Vu32
16037 return 8;
16038 case 0:
16039 // op: Vyyyy32
16040 return 0;
16041 case 1:
16042 // op: Rx8
16043 return 16;
16044 }
16045 break;
16046 }
16047 case Hexagon::L2_loadalignb_pi:
16048 case Hexagon::L2_loadalignh_pi: {
16049 switch (OpNum) {
16050 case 4:
16051 // op: Ii
16052 return 5;
16053 case 0:
16054 // op: Ryy32
16055 return 0;
16056 case 1:
16057 // op: Rx32
16058 return 16;
16059 }
16060 break;
16061 }
16062 case Hexagon::L2_ploadrbf_pi:
16063 case Hexagon::L2_ploadrbfnew_pi:
16064 case Hexagon::L2_ploadrbt_pi:
16065 case Hexagon::L2_ploadrbtnew_pi:
16066 case Hexagon::L2_ploadrhf_pi:
16067 case Hexagon::L2_ploadrhfnew_pi:
16068 case Hexagon::L2_ploadrht_pi:
16069 case Hexagon::L2_ploadrhtnew_pi:
16070 case Hexagon::L2_ploadrif_pi:
16071 case Hexagon::L2_ploadrifnew_pi:
16072 case Hexagon::L2_ploadrit_pi:
16073 case Hexagon::L2_ploadritnew_pi:
16074 case Hexagon::L2_ploadrubf_pi:
16075 case Hexagon::L2_ploadrubfnew_pi:
16076 case Hexagon::L2_ploadrubt_pi:
16077 case Hexagon::L2_ploadrubtnew_pi:
16078 case Hexagon::L2_ploadruhf_pi:
16079 case Hexagon::L2_ploadruhfnew_pi:
16080 case Hexagon::L2_ploadruht_pi:
16081 case Hexagon::L2_ploadruhtnew_pi: {
16082 switch (OpNum) {
16083 case 4:
16084 // op: Ii
16085 return 5;
16086 case 2:
16087 // op: Pt4
16088 return 9;
16089 case 0:
16090 // op: Rd32
16091 return 0;
16092 case 1:
16093 // op: Rx32
16094 return 16;
16095 }
16096 break;
16097 }
16098 case Hexagon::L2_ploadrdf_pi:
16099 case Hexagon::L2_ploadrdfnew_pi:
16100 case Hexagon::L2_ploadrdt_pi:
16101 case Hexagon::L2_ploadrdtnew_pi: {
16102 switch (OpNum) {
16103 case 4:
16104 // op: Ii
16105 return 5;
16106 case 2:
16107 // op: Pt4
16108 return 9;
16109 case 0:
16110 // op: Rdd32
16111 return 0;
16112 case 1:
16113 // op: Rx32
16114 return 16;
16115 }
16116 break;
16117 }
16118 case Hexagon::S4_vrcrotate_acc: {
16119 switch (OpNum) {
16120 case 4:
16121 // op: Ii
16122 return 5;
16123 case 2:
16124 // op: Rss32
16125 return 16;
16126 case 3:
16127 // op: Rt32
16128 return 8;
16129 case 0:
16130 // op: Rxx32
16131 return 0;
16132 }
16133 break;
16134 }
16135 case Hexagon::V6_vlutvvb_oracci: {
16136 switch (OpNum) {
16137 case 4:
16138 // op: Ii
16139 return 5;
16140 case 2:
16141 // op: Vu32
16142 return 8;
16143 case 3:
16144 // op: Vv32
16145 return 16;
16146 case 0:
16147 // op: Vx32
16148 return 0;
16149 }
16150 break;
16151 }
16152 case Hexagon::V6_vlutvwh_oracci: {
16153 switch (OpNum) {
16154 case 4:
16155 // op: Ii
16156 return 5;
16157 case 2:
16158 // op: Vu32
16159 return 8;
16160 case 3:
16161 // op: Vv32
16162 return 16;
16163 case 0:
16164 // op: Vxx32
16165 return 0;
16166 }
16167 break;
16168 }
16169 case Hexagon::V6_vrmpybusi_acc:
16170 case Hexagon::V6_vrmpyubi_acc:
16171 case Hexagon::V6_vrsadubi_acc: {
16172 switch (OpNum) {
16173 case 4:
16174 // op: Ii
16175 return 5;
16176 case 2:
16177 // op: Vuu32
16178 return 8;
16179 case 3:
16180 // op: Rt32
16181 return 16;
16182 case 0:
16183 // op: Vxx32
16184 return 0;
16185 }
16186 break;
16187 }
16188 case Hexagon::V6_v6mpyhubs10_vxx:
16189 case Hexagon::V6_v6mpyvubs10_vxx: {
16190 switch (OpNum) {
16191 case 4:
16192 // op: Ii
16193 return 5;
16194 case 2:
16195 // op: Vuu32
16196 return 8;
16197 case 3:
16198 // op: Vvv32
16199 return 16;
16200 case 0:
16201 // op: Vxx32
16202 return 0;
16203 }
16204 break;
16205 }
16206 case Hexagon::L2_loadalignb_pci:
16207 case Hexagon::L2_loadalignh_pci: {
16208 switch (OpNum) {
16209 case 4:
16210 // op: Ii
16211 return 5;
16212 case 5:
16213 // op: Mu2
16214 return 13;
16215 case 0:
16216 // op: Ryy32
16217 return 0;
16218 case 1:
16219 // op: Rx32
16220 return 16;
16221 }
16222 break;
16223 }
16224 case Hexagon::L4_ploadrbf_rr:
16225 case Hexagon::L4_ploadrbfnew_rr:
16226 case Hexagon::L4_ploadrbt_rr:
16227 case Hexagon::L4_ploadrbtnew_rr:
16228 case Hexagon::L4_ploadrhf_rr:
16229 case Hexagon::L4_ploadrhfnew_rr:
16230 case Hexagon::L4_ploadrht_rr:
16231 case Hexagon::L4_ploadrhtnew_rr:
16232 case Hexagon::L4_ploadrif_rr:
16233 case Hexagon::L4_ploadrifnew_rr:
16234 case Hexagon::L4_ploadrit_rr:
16235 case Hexagon::L4_ploadritnew_rr:
16236 case Hexagon::L4_ploadrubf_rr:
16237 case Hexagon::L4_ploadrubfnew_rr:
16238 case Hexagon::L4_ploadrubt_rr:
16239 case Hexagon::L4_ploadrubtnew_rr:
16240 case Hexagon::L4_ploadruhf_rr:
16241 case Hexagon::L4_ploadruhfnew_rr:
16242 case Hexagon::L4_ploadruht_rr:
16243 case Hexagon::L4_ploadruhtnew_rr: {
16244 switch (OpNum) {
16245 case 4:
16246 // op: Ii
16247 return 7;
16248 case 1:
16249 // op: Pv4
16250 return 5;
16251 case 2:
16252 // op: Rs32
16253 return 16;
16254 case 3:
16255 // op: Rt32
16256 return 8;
16257 case 0:
16258 // op: Rd32
16259 return 0;
16260 }
16261 break;
16262 }
16263 case Hexagon::L4_ploadrdf_rr:
16264 case Hexagon::L4_ploadrdfnew_rr:
16265 case Hexagon::L4_ploadrdt_rr:
16266 case Hexagon::L4_ploadrdtnew_rr: {
16267 switch (OpNum) {
16268 case 4:
16269 // op: Ii
16270 return 7;
16271 case 1:
16272 // op: Pv4
16273 return 5;
16274 case 2:
16275 // op: Rs32
16276 return 16;
16277 case 3:
16278 // op: Rt32
16279 return 8;
16280 case 0:
16281 // op: Rdd32
16282 return 0;
16283 }
16284 break;
16285 }
16286 case Hexagon::V6_vL32b_cur_npred_pi:
16287 case Hexagon::V6_vL32b_cur_pred_pi:
16288 case Hexagon::V6_vL32b_npred_pi:
16289 case Hexagon::V6_vL32b_nt_cur_npred_pi:
16290 case Hexagon::V6_vL32b_nt_cur_pred_pi:
16291 case Hexagon::V6_vL32b_nt_npred_pi:
16292 case Hexagon::V6_vL32b_nt_pred_pi:
16293 case Hexagon::V6_vL32b_nt_tmp_npred_pi:
16294 case Hexagon::V6_vL32b_nt_tmp_pred_pi:
16295 case Hexagon::V6_vL32b_pred_pi:
16296 case Hexagon::V6_vL32b_tmp_npred_pi:
16297 case Hexagon::V6_vL32b_tmp_pred_pi: {
16298 switch (OpNum) {
16299 case 4:
16300 // op: Ii
16301 return 8;
16302 case 2:
16303 // op: Pv4
16304 return 11;
16305 case 0:
16306 // op: Vd32
16307 return 0;
16308 case 1:
16309 // op: Rx32
16310 return 16;
16311 }
16312 break;
16313 }
16314 case Hexagon::L2_loadalignb_pbr:
16315 case Hexagon::L2_loadalignb_pcr:
16316 case Hexagon::L2_loadalignb_pr:
16317 case Hexagon::L2_loadalignh_pbr:
16318 case Hexagon::L2_loadalignh_pcr:
16319 case Hexagon::L2_loadalignh_pr: {
16320 switch (OpNum) {
16321 case 4:
16322 // op: Mu2
16323 return 13;
16324 case 0:
16325 // op: Ryy32
16326 return 0;
16327 case 1:
16328 // op: Rx32
16329 return 16;
16330 }
16331 break;
16332 }
16333 case Hexagon::V6_vdeal:
16334 case Hexagon::V6_vshuff: {
16335 switch (OpNum) {
16336 case 4:
16337 // op: Rt32
16338 return 16;
16339 case 0:
16340 // op: Vy32
16341 return 8;
16342 case 1:
16343 // op: Vx32
16344 return 0;
16345 }
16346 break;
16347 }
16348 default:
16349 reportUnsupportedInst(MI);
16350 }
16351 reportUnsupportedOperand(MI, OpNum);
16352}
16353
16354#endif // GET_OPERAND_BIT_OFFSET
16355
16356