Coverage Report

Created: 2025-12-14 06:36

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/capstonenext/arch/TMS320C64x/TMS320C64xGenAsmWriter.inc
Line
Count
Source
1
/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2
|*                                                                            *|
3
|*Assembly Writer Source Fragment                                             *|
4
|*                                                                            *|
5
|* Automatically generated file, do not edit!                                 *|
6
|*                                                                            *|
7
\*===----------------------------------------------------------------------===*/
8
9
#include <stdio.h>
10
11
/// printInstruction - This method is automatically generated by tablegen
12
/// from the instruction set description.
13
40.1k
static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI) {
14
40.1k
  static const uint32_t OpInfo[] = {
15
40.1k
    0U, // PHI
16
40.1k
    0U, // INLINEASM
17
40.1k
    0U, // CFI_INSTRUCTION
18
40.1k
    0U, // EH_LABEL
19
40.1k
    0U, // GC_LABEL
20
40.1k
    0U, // KILL
21
40.1k
    0U, // EXTRACT_SUBREG
22
40.1k
    0U, // INSERT_SUBREG
23
40.1k
    0U, // IMPLICIT_DEF
24
40.1k
    0U, // SUBREG_TO_REG
25
40.1k
    0U, // COPY_TO_REGCLASS
26
40.1k
    882U, // DBG_VALUE
27
40.1k
    0U, // REG_SEQUENCE
28
40.1k
    0U, // COPY
29
40.1k
    875U, // BUNDLE
30
40.1k
    904U, // LIFETIME_START
31
40.1k
    862U, // LIFETIME_END
32
40.1k
    0U, // STACKMAP
33
40.1k
    0U, // PATCHPOINT
34
40.1k
    0U, // LOAD_STACK_GUARD
35
40.1k
    0U, // STATEPOINT
36
40.1k
    0U, // FRAME_ALLOC
37
40.1k
    1126U,  // ABS2_l2_rr
38
40.1k
    10847U, // ABS_l1_pp
39
40.1k
    1631U,  // ABS_l1_rr
40
40.1k
    85006U, // ADD2_d2_rrr
41
40.1k
    85006U, // ADD2_l1_rrr_x2
42
40.1k
    85006U, // ADD2_s1_rrr
43
40.1k
    85171U, // ADD4_l1_rrr_x2
44
40.1k
    91479U, // ADDAB_d1_rir
45
40.1k
    91479U, // ADDAB_d1_rrr
46
40.1k
    91541U, // ADDAD_d1_rir
47
40.1k
    91541U, // ADDAD_d1_rrr
48
40.1k
    91577U, // ADDAH_d1_rir
49
40.1k
    91577U, // ADDAH_d1_rrr
50
40.1k
    91937U, // ADDAW_d1_rir
51
40.1k
    91937U, // ADDAW_d1_rrr
52
40.1k
    132488U,  // ADDKPC_s3_iir
53
40.1k
    1518U,  // ADDK_s2_ir
54
40.1k
    233140U,  // ADDU_l1_rpp
55
40.1k
    216756U,  // ADDU_l1_rrp_x2
56
40.1k
    91555U, // ADD_d1_rir
57
40.1k
    91555U, // ADD_d1_rrr
58
40.1k
    91555U, // ADD_d2_rir
59
40.1k
    85411U, // ADD_d2_rrr
60
40.1k
    232867U,  // ADD_l1_ipp
61
40.1k
    85411U, // ADD_l1_irr
62
40.1k
    232867U,  // ADD_l1_rpp
63
40.1k
    216483U,  // ADD_l1_rrp_x2
64
40.1k
    85411U, // ADD_l1_rrr_x2
65
40.1k
    85411U, // ADD_s1_irr
66
40.1k
    85411U, // ADD_s1_rrr
67
40.1k
    85542U, // ANDN_d2_rrr
68
40.1k
    85542U, // ANDN_l1_rrr_x2
69
40.1k
    85542U, // ANDN_s4_rrr
70
40.1k
    85416U, // AND_d2_rir
71
40.1k
    85416U, // AND_d2_rrr
72
40.1k
    85416U, // AND_l1_irr
73
40.1k
    85416U, // AND_l1_rrr_x2
74
40.1k
    85416U, // AND_s1_irr
75
40.1k
    85416U, // AND_s1_rrr
76
40.1k
    85019U, // AVG2_m1_rrr
77
40.1k
    85232U, // AVGU4_m1_rrr
78
40.1k
    1410U,  // BDEC_s8_ir
79
40.1k
    1196U,  // BITC4_m2_rr
80
40.1k
    307756U,  // BNOP_s10_ri
81
40.1k
    307756U,  // BNOP_s9_ii
82
40.1k
    1654U,  // BPOS_s8_ir
83
40.1k
    53588U, // B_s5_i
84
40.1k
    53588U, // B_s6_r
85
40.1k
    892U, // B_s7_irp
86
40.1k
    898U, // B_s7_nrp
87
40.1k
    353870U,  // CLR_s15_riir
88
40.1k
    91726U, // CLR_s1_rrr
89
40.1k
    85080U, // CMPEQ2_s1_rrr
90
40.1k
    85207U, // CMPEQ4_s1_rrr
91
40.1k
    101938U,  // CMPEQ_l1_ipr
92
40.1k
    85554U, // CMPEQ_l1_irr
93
40.1k
    101938U,  // CMPEQ_l1_rpr
94
40.1k
    85554U, // CMPEQ_l1_rrr_x2
95
40.1k
    85109U, // CMPGT2_s1_rrr
96
40.1k
    85298U, // CMPGTU4_s1_rrr
97
40.1k
    102037U,  // CMPGT_l1_ipr
98
40.1k
    85653U, // CMPGT_l1_irr
99
40.1k
    102037U,  // CMPGT_l1_rpr
100
40.1k
    85653U, // CMPGT_l1_rrr_x2
101
40.1k
    102150U,  // CMPLTU_l1_ipr
102
40.1k
    85766U, // CMPLTU_l1_irr
103
40.1k
    102150U,  // CMPLTU_l1_rpr
104
40.1k
    85766U, // CMPLTU_l1_rrr_x2
105
40.1k
    102044U,  // CMPLT_l1_ipr
106
40.1k
    85660U, // CMPLT_l1_irr
107
40.1k
    102044U,  // CMPLT_l1_rpr
108
40.1k
    85660U, // CMPLT_l1_rrr_x2
109
40.1k
    1529U,  // DEAL_m2_rr
110
40.1k
    216145U,  // DOTP2_m1_rrp
111
40.1k
    85073U, // DOTP2_m1_rrr
112
40.1k
    85065U, // DOTPN2_m1_rrr
113
40.1k
    85124U, // DOTPNRSU2_m1_rrr
114
40.1k
    85135U, // DOTPRSU2_m1_rrr
115
40.1k
    85281U, // DOTPSU4_m1_rrr
116
40.1k
    85273U, // DOTPU4_m1_rrr
117
40.1k
    354062U,  // EXTU_s15_riir
118
40.1k
    91918U, // EXTU_s1_rrr
119
40.1k
    353955U,  // EXT_s15_riir
120
40.1k
    91811U, // EXT_s1_rrr
121
40.1k
    102142U,  // GMPGTU_l1_ipr
122
40.1k
    85758U, // GMPGTU_l1_irr
123
40.1k
    102142U,  // GMPGTU_l1_rpr
124
40.1k
    85758U, // GMPGTU_l1_rrr_x2
125
40.1k
    85321U, // GMPY4_m1_rrr
126
40.1k
    5800U,  // LDBU_d5_mr
127
40.1k
    6824U,  // LDBU_d6_mr
128
40.1k
    5470U,  // LDB_d5_mr
129
40.1k
    6494U,  // LDB_d6_mr
130
40.1k
    14120U, // LDDW_d7_mp
131
40.1k
    5818U,  // LDHU_d5_mr
132
40.1k
    6842U,  // LDHU_d6_mr
133
40.1k
    5568U,  // LDH_d5_mr
134
40.1k
    6592U,  // LDH_d6_mr
135
40.1k
    14131U, // LDNDW_d8_mp
136
40.1k
    5959U,  // LDNW_d5_mr
137
40.1k
    5934U,  // LDW_d5_mr
138
40.1k
    6958U,  // LDW_d6_mr
139
40.1k
    85404U, // LMBD_l1_irr
140
40.1k
    85404U, // LMBD_l1_rrr_x2
141
40.1k
    85145U, // MAX2_l1_rrr_x2
142
40.1k
    85307U, // MAXU4_l1_rrr_x2
143
40.1k
    85059U, // MIN2_l1_rrr_x2
144
40.1k
    85266U, // MINU4_l1_rrr_x2
145
40.1k
    216224U,  // MPY2_m1_rrp
146
40.1k
    85566U, // MPYHIR_m1_rrr
147
40.1k
    216544U,  // MPYHI_m1_rrp
148
40.1k
    85720U, // MPYHLU_m4_rrr
149
40.1k
    85516U, // MPYHL_m4_rrr
150
40.1k
    85728U, // MPYHSLU_m4_rrr
151
40.1k
    85743U, // MPYHSU_m4_rrr
152
40.1k
    85613U, // MPYHULS_m4_rrr
153
40.1k
    85628U, // MPYHUS_m4_rrr
154
40.1k
    85713U, // MPYHU_m4_rrr
155
40.1k
    85466U, // MPYH_m4_rrr
156
40.1k
    85696U, // MPYLHU_m4_rrr
157
40.1k
    85453U, // MPYLH_m4_rrr
158
40.1k
    85574U, // MPYLIR_m1_rrr
159
40.1k
    216551U,  // MPYLI_m1_rrp
160
40.1k
    85704U, // MPYLSHU_m4_rrr
161
40.1k
    85604U, // MPYLUHS_m4_rrr
162
40.1k
    216362U,  // MPYSU4_m1_rrp
163
40.1k
    85751U, // MPYSU_m4_irr
164
40.1k
    85751U, // MPYSU_m4_rrr
165
40.1k
    216386U,  // MPYU4_m1_rrp
166
40.1k
    85636U, // MPYUS_m4_rrr
167
40.1k
    85780U, // MPYU_m4_rrr
168
40.1k
    85849U, // MPY_m4_irr
169
40.1k
    85849U, // MPY_m4_rrr
170
40.1k
    1424U,  // MVC_s1_rr
171
40.1k
    1424U,  // MVC_s1_rr2
172
40.1k
    1453U,  // MVD_m2_rr
173
40.1k
    1477U,  // MVKLH_s12_ir
174
40.1k
    1524U,  // MVKL_s12_ir
175
40.1k
    1524U,  // MVK_d1_rr
176
40.1k
    1524U,  // MVK_l2_ir
177
40.1k
    53249U, // NOP_n
178
40.1k
    2592U,  // NORM_l1_pr
179
40.1k
    1568U,  // NORM_l1_rr
180
40.1k
    85588U, // OR_d2_rir
181
40.1k
    85588U, // OR_d2_rrr
182
40.1k
    85588U, // OR_l1_irr
183
40.1k
    85588U, // OR_l1_rrr_x2
184
40.1k
    85588U, // OR_s1_irr
185
40.1k
    85588U, // OR_s1_rrr
186
40.1k
    85043U, // PACK2_l1_rrr_x2
187
40.1k
    85043U, // PACK2_s4_rrr
188
40.1k
    85025U, // PACKH2_l1_rrr_x2
189
40.1k
    85025U, // PACKH2_s1_rrr
190
40.1k
    85184U, // PACKH4_l1_rrr_x2
191
40.1k
    85050U, // PACKHL2_l1_rrr_x2
192
40.1k
    85050U, // PACKHL2_s1_rrr
193
40.1k
    85192U, // PACKL4_l1_rrr_x2
194
40.1k
    85033U, // PACKLH2_l1_rrr_x2
195
40.1k
    85033U, // PACKLH2_s1_rrr
196
40.1k
    91667U, // ROTL_m1_rir
197
40.1k
    91667U, // ROTL_m1_rrr
198
40.1k
    85005U, // SADD2_s4_rrr
199
40.1k
    85224U, // SADDU4_s4_rrr
200
40.1k
    85100U, // SADDUS2_s4_rrr
201
40.1k
    232866U,  // SADD_l1_ipp
202
40.1k
    85410U, // SADD_l1_irr
203
40.1k
    232866U,  // SADD_l1_rpp
204
40.1k
    85410U, // SADD_l1_rrr_x2
205
40.1k
    85410U, // SADD_s1_rrr
206
40.1k
    2699U,  // SAT_l1_pr
207
40.1k
    353936U,  // SET_s15_riir
208
40.1k
    91792U, // SET_s1_rrr
209
40.1k
    1535U,  // SHFL_m2_rr
210
40.1k
    85347U, // SHLMB_l1_rrr_x2
211
40.1k
    85347U, // SHLMB_s4_rrr
212
40.1k
    223750U,  // SHL_s1_pip
213
40.1k
    223750U,  // SHL_s1_prp
214
40.1k
    222726U,  // SHL_s1_rip
215
40.1k
    91654U, // SHL_s1_rir
216
40.1k
    222726U,  // SHL_s1_rrp
217
40.1k
    91654U, // SHL_s1_rrr
218
40.1k
    91232U, // SHR2_s1_rir
219
40.1k
    91232U, // SHR2_s4_rrr
220
40.1k
    85354U, // SHRMB_l1_rrr_x2
221
40.1k
    85354U, // SHRMB_s4_rrr
222
40.1k
    91261U, // SHRU2_s1_rir
223
40.1k
    91261U, // SHRU2_s4_rrr
224
40.1k
    223977U,  // SHRU_s1_pip
225
40.1k
    223977U,  // SHRU_s1_prp
226
40.1k
    91881U, // SHRU_s1_rir
227
40.1k
    91881U, // SHRU_s1_rrr
228
40.1k
    223801U,  // SHR_s1_pip
229
40.1k
    223801U,  // SHR_s1_prp
230
40.1k
    91705U, // SHR_s1_rir
231
40.1k
    91705U, // SHR_s1_rrr
232
40.1k
    216223U,  // SMPY2_m1_rrp
233
40.1k
    85515U, // SMPYHL_m4_rrr
234
40.1k
    85465U, // SMPYH_m4_rrr
235
40.1k
    85452U, // SMPYLH_m4_rrr
236
40.1k
    85848U, // SMPY_m4_rrr
237
40.1k
    85042U, // SPACK2_s4_rrr
238
40.1k
    85248U, // SPACKU4_s4_rrr
239
40.1k
    91653U, // SSHL_s1_rir
240
40.1k
    91653U, // SSHL_s1_rrr
241
40.1k
    85529U, // SSHVL_m1_rrr
242
40.1k
    85592U, // SSHVR_m1_rrr
243
40.1k
    232822U,  // SSUB_l1_ipp
244
40.1k
    85366U, // SSUB_l1_irr
245
40.1k
    85366U, // SSUB_l1_rrr_x1
246
40.1k
    85366U, // SSUB_l1_rrr_x2
247
40.1k
    438641U,  // STB_d5_rm
248
40.1k
    504177U,  // STB_d6_rm
249
40.1k
    8001U,  // STDW_d7_pm
250
40.1k
    438740U,  // STH_d5_rm
251
40.1k
    504276U,  // STH_d6_rm
252
40.1k
    7994U,  // STNDW_d8_pm
253
40.1k
    439117U,  // STNW_d5_rm
254
40.1k
    439123U,  // STW_d5_rm
255
40.1k
    504659U,  // STW_d6_rm
256
40.1k
    84999U, // SUB2_d2_rrr
257
40.1k
    84999U, // SUB2_l1_rrr_x2
258
40.1k
    84999U, // SUB2_s1_rrr
259
40.1k
    85158U, // SUB4_l1_rrr_x2
260
40.1k
    85215U, // SUBABS4_l1_rrr_x2
261
40.1k
    91472U, // SUBAB_d1_rir
262
40.1k
    91472U, // SUBAB_d1_rrr
263
40.1k
    91472U, // SUBAH_d1_rir
264
40.1k
    91570U, // SUBAH_d1_rrr
265
40.1k
    91472U, // SUBAW_d1_rir
266
40.1k
    91930U, // SUBAW_d1_rrr
267
40.1k
    85372U, // SUBC_l1_rrr_x2
268
40.1k
    216750U,  // SUBU_l1_rrp_x1
269
40.1k
    216750U,  // SUBU_l1_rrp_x2
270
40.1k
    91511U, // SUB_d1_rir
271
40.1k
    91511U, // SUB_d1_rrr
272
40.1k
    85367U, // SUB_d2_rrr
273
40.1k
    232823U,  // SUB_l1_ipp
274
40.1k
    85367U, // SUB_l1_irr
275
40.1k
    216439U,  // SUB_l1_rrp_x1
276
40.1k
    216439U,  // SUB_l1_rrp_x2
277
40.1k
    85367U, // SUB_l1_rrr_x1
278
40.1k
    85367U, // SUB_l1_rrr_x2
279
40.1k
    85367U, // SUB_s1_irr
280
40.1k
    85367U, // SUB_s1_rrr
281
40.1k
    91511U, // SUB_s4_rrr
282
40.1k
    1232U,  // SWAP4_l2_rr
283
40.1k
    1271U,  // UNPKHU4_l2_rr
284
40.1k
    1271U,  // UNPKHU4_s14_rr
285
40.1k
    1289U,  // UNPKLU4_l2_rr
286
40.1k
    1289U,  // UNPKLU4_s14_rr
287
40.1k
    85587U, // XOR_d2_rir
288
40.1k
    85587U, // XOR_d2_rrr
289
40.1k
    85587U, // XOR_l1_irr
290
40.1k
    85587U, // XOR_l1_rrr_x2
291
40.1k
    85587U, // XOR_s1_irr
292
40.1k
    85587U, // XOR_s1_rrr
293
40.1k
    1044U,  // XPND2_m2_rr
294
40.1k
    1209U,  // XPND4_m2_rr
295
40.1k
    0U
296
40.1k
  };
297
298
40.1k
#ifndef CAPSTONE_DIET
299
40.1k
  static const char AsmStrs[] = {
300
40.1k
  /* 0 */ 'n', 'o', 'p', 9, 9, 0,
301
40.1k
  /* 6 */ 's', 'u', 'b', '2', 9, 0,
302
40.1k
  /* 12 */ 's', 'a', 'd', 'd', '2', 9, 0,
303
40.1k
  /* 19 */ 'x', 'p', 'n', 'd', '2', 9, 0,
304
40.1k
  /* 26 */ 'a', 'v', 'g', '2', 9, 0,
305
40.1k
  /* 32 */ 'p', 'a', 'c', 'k', 'h', '2', 9, 0,
306
40.1k
  /* 40 */ 'p', 'a', 'c', 'k', 'l', 'h', '2', 9, 0,
307
40.1k
  /* 49 */ 's', 'p', 'a', 'c', 'k', '2', 9, 0,
308
40.1k
  /* 57 */ 'p', 'a', 'c', 'k', 'h', 'l', '2', 9, 0,
309
40.1k
  /* 66 */ 'm', 'i', 'n', '2', 9, 0,
310
40.1k
  /* 72 */ 'd', 'o', 't', 'p', 'n', '2', 9, 0,
311
40.1k
  /* 80 */ 'd', 'o', 't', 'p', '2', 9, 0,
312
40.1k
  /* 87 */ 'c', 'm', 'p', 'e', 'q', '2', 9, 0,
313
40.1k
  /* 95 */ 's', 'h', 'r', '2', 9, 0,
314
40.1k
  /* 101 */ 'a', 'b', 's', '2', 9, 0,
315
40.1k
  /* 107 */ 's', 'a', 'd', 'd', 'u', 's', '2', 9, 0,
316
40.1k
  /* 116 */ 'c', 'm', 'p', 'g', 't', '2', 9, 0,
317
40.1k
  /* 124 */ 's', 'h', 'r', 'u', '2', 9, 0,
318
40.1k
  /* 131 */ 'd', 'o', 't', 'p', 'n', 'r', 's', 'u', '2', 9, 0,
319
40.1k
  /* 142 */ 'd', 'o', 't', 'p', 'r', 's', 'u', '2', 9, 0,
320
40.1k
  /* 152 */ 'm', 'a', 'x', '2', 9, 0,
321
40.1k
  /* 158 */ 's', 'm', 'p', 'y', '2', 9, 0,
322
40.1k
  /* 165 */ 's', 'u', 'b', '4', 9, 0,
323
40.1k
  /* 171 */ 'b', 'i', 't', 'c', '4', 9, 0,
324
40.1k
  /* 178 */ 'a', 'd', 'd', '4', 9, 0,
325
40.1k
  /* 184 */ 'x', 'p', 'n', 'd', '4', 9, 0,
326
40.1k
  /* 191 */ 'p', 'a', 'c', 'k', 'h', '4', 9, 0,
327
40.1k
  /* 199 */ 'p', 'a', 'c', 'k', 'l', '4', 9, 0,
328
40.1k
  /* 207 */ 's', 'w', 'a', 'p', '4', 9, 0,
329
40.1k
  /* 214 */ 'c', 'm', 'p', 'e', 'q', '4', 9, 0,
330
40.1k
  /* 222 */ 's', 'u', 'b', 'a', 'b', 's', '4', 9, 0,
331
40.1k
  /* 231 */ 's', 'a', 'd', 'd', 'u', '4', 9, 0,
332
40.1k
  /* 239 */ 'a', 'v', 'g', 'u', '4', 9, 0,
333
40.1k
  /* 246 */ 'u', 'n', 'p', 'k', 'h', 'u', '4', 9, 0,
334
40.1k
  /* 255 */ 's', 'p', 'a', 'c', 'k', 'u', '4', 9, 0,
335
40.1k
  /* 264 */ 'u', 'n', 'p', 'k', 'l', 'u', '4', 9, 0,
336
40.1k
  /* 273 */ 'm', 'i', 'n', 'u', '4', 9, 0,
337
40.1k
  /* 280 */ 'd', 'o', 't', 'p', 'u', '4', 9, 0,
338
40.1k
  /* 288 */ 'd', 'o', 't', 'p', 's', 'u', '4', 9, 0,
339
40.1k
  /* 297 */ 'm', 'p', 'y', 's', 'u', '4', 9, 0,
340
40.1k
  /* 305 */ 'c', 'm', 'p', 'g', 't', 'u', '4', 9, 0,
341
40.1k
  /* 314 */ 'm', 'a', 'x', 'u', '4', 9, 0,
342
40.1k
  /* 321 */ 'm', 'p', 'y', 'u', '4', 9, 0,
343
40.1k
  /* 328 */ 'g', 'm', 'p', 'y', '4', 9, 0,
344
40.1k
  /* 335 */ 's', 'u', 'b', 'a', 'b', 9, 0,
345
40.1k
  /* 342 */ 'a', 'd', 'd', 'a', 'b', 9, 0,
346
40.1k
  /* 349 */ 'l', 'd', 'b', 9, 0,
347
40.1k
  /* 354 */ 's', 'h', 'l', 'm', 'b', 9, 0,
348
40.1k
  /* 361 */ 's', 'h', 'r', 'm', 'b', 9, 0,
349
40.1k
  /* 368 */ 's', 't', 'b', 9, 0,
350
40.1k
  /* 373 */ 's', 's', 'u', 'b', 9, 0,
351
40.1k
  /* 379 */ 's', 'u', 'b', 'c', 9, 0,
352
40.1k
  /* 385 */ 'b', 'd', 'e', 'c', 9, 0,
353
40.1k
  /* 391 */ 'a', 'd', 'd', 'k', 'p', 'c', 9, 0,
354
40.1k
  /* 399 */ 'm', 'v', 'c', 9, 0,
355
40.1k
  /* 404 */ 'a', 'd', 'd', 'a', 'd', 9, 0,
356
40.1k
  /* 411 */ 'l', 'm', 'b', 'd', 9, 0,
357
40.1k
  /* 417 */ 's', 'a', 'd', 'd', 9, 0,
358
40.1k
  /* 423 */ 'a', 'n', 'd', 9, 0,
359
40.1k
  /* 428 */ 'm', 'v', 'd', 9, 0,
360
40.1k
  /* 433 */ 's', 'u', 'b', 'a', 'h', 9, 0,
361
40.1k
  /* 440 */ 'a', 'd', 'd', 'a', 'h', 9, 0,
362
40.1k
  /* 447 */ 'l', 'd', 'h', 9, 0,
363
40.1k
  /* 452 */ 'm', 'v', 'k', 'l', 'h', 9, 0,
364
40.1k
  /* 459 */ 's', 'm', 'p', 'y', 'l', 'h', 9, 0,
365
40.1k
  /* 467 */ 's', 't', 'h', 9, 0,
366
40.1k
  /* 472 */ 's', 'm', 'p', 'y', 'h', 9, 0,
367
40.1k
  /* 479 */ 'm', 'p', 'y', 'h', 'i', 9, 0,
368
40.1k
  /* 486 */ 'm', 'p', 'y', 'l', 'i', 9, 0,
369
40.1k
  /* 493 */ 'a', 'd', 'd', 'k', 9, 0,
370
40.1k
  /* 499 */ 'm', 'v', 'k', 9, 0,
371
40.1k
  /* 504 */ 'd', 'e', 'a', 'l', 9, 0,
372
40.1k
  /* 510 */ 's', 'h', 'f', 'l', 9, 0,
373
40.1k
  /* 516 */ 's', 's', 'h', 'l', 9, 0,
374
40.1k
  /* 522 */ 's', 'm', 'p', 'y', 'h', 'l', 9, 0,
375
40.1k
  /* 530 */ 'r', 'o', 't', 'l', 9, 0,
376
40.1k
  /* 536 */ 's', 's', 'h', 'v', 'l', 9, 0,
377
40.1k
  /* 543 */ 'n', 'o', 'r', 'm', 9, 0,
378
40.1k
  /* 549 */ 'a', 'n', 'd', 'n', 9, 0,
379
40.1k
  /* 555 */ 'b', 'n', 'o', 'p', 9, 0,
380
40.1k
  /* 561 */ 'c', 'm', 'p', 'e', 'q', 9, 0,
381
40.1k
  /* 568 */ 's', 'h', 'r', 9, 0,
382
40.1k
  /* 573 */ 'm', 'p', 'y', 'h', 'i', 'r', 9, 0,
383
40.1k
  /* 581 */ 'm', 'p', 'y', 'l', 'i', 'r', 9, 0,
384
40.1k
  /* 589 */ 'c', 'l', 'r', 9, 0,
385
40.1k
  /* 594 */ 'x', 'o', 'r', 9, 0,
386
40.1k
  /* 599 */ 's', 's', 'h', 'v', 'r', 9, 0,
387
40.1k
  /* 606 */ 'a', 'b', 's', 9, 0,
388
40.1k
  /* 611 */ 'm', 'p', 'y', 'l', 'u', 'h', 's', 9, 0,
389
40.1k
  /* 620 */ 'm', 'p', 'y', 'h', 'u', 'l', 's', 9, 0,
390
40.1k
  /* 629 */ 'b', 'p', 'o', 's', 9, 0,
391
40.1k
  /* 635 */ 'm', 'p', 'y', 'h', 'u', 's', 9, 0,
392
40.1k
  /* 643 */ 'm', 'p', 'y', 'u', 's', 9, 0,
393
40.1k
  /* 650 */ 's', 'a', 't', 9, 0,
394
40.1k
  /* 655 */ 's', 'e', 't', 9, 0,
395
40.1k
  /* 660 */ 'c', 'm', 'p', 'g', 't', 9, 0,
396
40.1k
  /* 667 */ 'c', 'm', 'p', 'l', 't', 9, 0,
397
40.1k
  /* 674 */ 'e', 'x', 't', 9, 0,
398
40.1k
  /* 679 */ 'l', 'd', 'b', 'u', 9, 0,
399
40.1k
  /* 685 */ 's', 'u', 'b', 'u', 9, 0,
400
40.1k
  /* 691 */ 'a', 'd', 'd', 'u', 9, 0,
401
40.1k
  /* 697 */ 'l', 'd', 'h', 'u', 9, 0,
402
40.1k
  /* 703 */ 'm', 'p', 'y', 'l', 'h', 'u', 9, 0,
403
40.1k
  /* 711 */ 'm', 'p', 'y', 'l', 's', 'h', 'u', 9, 0,
404
40.1k
  /* 720 */ 'm', 'p', 'y', 'h', 'u', 9, 0,
405
40.1k
  /* 727 */ 'm', 'p', 'y', 'h', 'l', 'u', 9, 0,
406
40.1k
  /* 735 */ 'm', 'p', 'y', 'h', 's', 'l', 'u', 9, 0,
407
40.1k
  /* 744 */ 's', 'h', 'r', 'u', 9, 0,
408
40.1k
  /* 750 */ 'm', 'p', 'y', 'h', 's', 'u', 9, 0,
409
40.1k
  /* 758 */ 'm', 'p', 'y', 's', 'u', 9, 0,
410
40.1k
  /* 765 */ 'c', 'm', 'p', 'g', 't', 'u', 9, 0,
411
40.1k
  /* 773 */ 'c', 'm', 'p', 'l', 't', 'u', 9, 0,
412
40.1k
  /* 781 */ 'e', 'x', 't', 'u', 9, 0,
413
40.1k
  /* 787 */ 'm', 'p', 'y', 'u', 9, 0,
414
40.1k
  /* 793 */ 's', 'u', 'b', 'a', 'w', 9, 0,
415
40.1k
  /* 800 */ 'a', 'd', 'd', 'a', 'w', 9, 0,
416
40.1k
  /* 807 */ 'l', 'd', 'd', 'w', 9, 0,
417
40.1k
  /* 813 */ 'l', 'd', 'w', 9, 0,
418
40.1k
  /* 818 */ 'l', 'd', 'n', 'd', 'w', 9, 0,
419
40.1k
  /* 825 */ 's', 't', 'n', 'd', 'w', 9, 0,
420
40.1k
  /* 832 */ 's', 't', 'd', 'w', 9, 0,
421
40.1k
  /* 838 */ 'l', 'd', 'n', 'w', 9, 0,
422
40.1k
  /* 844 */ 's', 't', 'n', 'w', 9, 0,
423
40.1k
  /* 850 */ 's', 't', 'w', 9, 0,
424
40.1k
  /* 855 */ 's', 'm', 'p', 'y', 9, 0,
425
40.1k
  /* 861 */ 'l', 'i', 'f', 'e', 't', 'i', 'm', 'e', '_', 'e', 'n', 'd', 0,
426
40.1k
  /* 874 */ 'b', 'u', 'n', 'd', 'l', 'e', 0,
427
40.1k
  /* 881 */ 'd', 'b', 'g', '_', 'v', 'a', 'l', 'u', 'e', 0,
428
40.1k
  /* 891 */ 'b', 9, 'i', 'r', 'p', 0,
429
40.1k
  /* 897 */ 'b', 9, 'n', 'r', 'p', 0,
430
40.1k
  /* 903 */ 'l', 'i', 'f', 'e', 't', 'i', 'm', 'e', '_', 's', 't', 'a', 'r', 't', 0,
431
40.1k
  };
432
40.1k
#endif
433
434
  // Emit the opcode for the instruction.
435
40.1k
  uint32_t Bits = OpInfo[MCInst_getOpcode(MI)];
436
40.1k
  CS_ASSERT_RET(Bits != 0 && "Cannot print this instruction.");
437
40.1k
#ifndef CAPSTONE_DIET
438
40.1k
  SStream_concat0(O, AsmStrs+(Bits & 1023)-1);
439
40.1k
#endif
440
441
442
  // Fragment 0 encoded into 3 bits for 8 unique commands.
443
40.1k
  switch ((uint32_t)((Bits >> 10) & 7)) {
444
0
  default:
445
2.13k
  case 0:
446
    // DBG_VALUE, BUNDLE, LIFETIME_START, LIFETIME_END, B_s7_irp, B_s7_nrp
447
2.13k
    return;
448
0
    break;
449
12.5k
  case 1:
450
    // ABS2_l2_rr, ABS_l1_rr, ADDAB_d1_rir, ADDAB_d1_rrr, ADDAD_d1_rir, ADDAD...
451
12.5k
    printOperand(MI, 1, O); 
452
12.5k
    SStream_concat0(O, ", ");
453
12.5k
    break;
454
3.17k
  case 2:
455
    // ABS_l1_pp, NORM_l1_pr, SAT_l1_pr, SHL_s1_pip, SHL_s1_prp, SHRU_s1_pip,...
456
3.17k
    printRegPair(MI, 1, O); 
457
3.17k
    SStream_concat0(O, ", ");
458
3.17k
    break;
459
10.5k
  case 3:
460
    // ADD2_d2_rrr, ADD2_l1_rrr_x2, ADD2_s1_rrr, ADD4_l1_rrr_x2, ADDU_l1_rpp,...
461
10.5k
    printOperand(MI, 2, O); 
462
10.5k
    SStream_concat0(O, ", ");
463
10.5k
    break;
464
5.81k
  case 4:
465
    // BNOP_s10_ri, BNOP_s9_ii, B_s5_i, B_s6_r, NOP_n, STB_d5_rm, STB_d6_rm, ...
466
5.81k
    printOperand(MI, 0, O); 
467
5.81k
    break;
468
2.25k
  case 5:
469
    // LDBU_d5_mr, LDB_d5_mr, LDDW_d7_mp, LDHU_d5_mr, LDH_d5_mr, LDNDW_d8_mp,...
470
2.25k
    printMemOperand(MI, 1, O); 
471
2.25k
    SStream_concat0(O, ", ");
472
2.25k
    break;
473
2.66k
  case 6:
474
    // LDBU_d6_mr, LDB_d6_mr, LDHU_d6_mr, LDH_d6_mr, LDW_d6_mr
475
2.66k
    printMemOperand2(MI, 1, O); 
476
2.66k
    SStream_concat0(O, ", ");
477
2.66k
    printOperand(MI, 0, O); 
478
2.66k
    return;
479
0
    break;
480
923
  case 7:
481
    // STDW_d7_pm, STNDW_d8_pm
482
923
    printRegPair(MI, 0, O); 
483
923
    SStream_concat0(O, ", ");
484
923
    printMemOperand(MI, 1, O); 
485
923
    return;
486
0
    break;
487
40.1k
  }
488
489
490
  // Fragment 1 encoded into 3 bits for 7 unique commands.
491
34.3k
  switch ((uint32_t)((Bits >> 13) & 7)) {
492
0
  default:
493
9.92k
  case 0:
494
    // ABS2_l2_rr, ABS_l1_rr, ADDKPC_s3_iir, ADDK_s2_ir, BDEC_s8_ir, BITC4_m2...
495
9.92k
    printOperand(MI, 0, O); 
496
9.92k
    break;
497
1.41k
  case 1:
498
    // ABS_l1_pp, LDDW_d7_mp, LDNDW_d8_mp
499
1.41k
    printRegPair(MI, 0, O); 
500
1.41k
    return;
501
0
    break;
502
7.74k
  case 2:
503
    // ADD2_d2_rrr, ADD2_l1_rrr_x2, ADD2_s1_rrr, ADD4_l1_rrr_x2, ADDU_l1_rrp_...
504
7.74k
    printOperand(MI, 1, O); 
505
7.74k
    SStream_concat0(O, ", ");
506
7.74k
    break;
507
6.63k
  case 3:
508
    // ADDAB_d1_rir, ADDAB_d1_rrr, ADDAD_d1_rir, ADDAD_d1_rrr, ADDAH_d1_rir, ...
509
6.63k
    printOperand(MI, 2, O); 
510
6.63k
    SStream_concat0(O, ", ");
511
6.63k
    break;
512
2.84k
  case 4:
513
    // ADDU_l1_rpp, ADD_l1_ipp, ADD_l1_rpp, CMPEQ_l1_ipr, CMPEQ_l1_rpr, CMPGT...
514
2.84k
    printRegPair(MI, 1, O); 
515
2.84k
    SStream_concat0(O, ", ");
516
2.84k
    break;
517
2.94k
  case 5:
518
    // BNOP_s10_ri, BNOP_s9_ii, STB_d5_rm, STB_d6_rm, STH_d5_rm, STH_d6_rm, S...
519
2.94k
    SStream_concat0(O, ", ");
520
2.94k
    break;
521
2.86k
  case 6:
522
    // B_s5_i, B_s6_r, NOP_n
523
2.86k
    return;
524
0
    break;
525
34.3k
  }
526
527
528
  // Fragment 2 encoded into 3 bits for 8 unique commands.
529
30.0k
  switch ((uint32_t)((Bits >> 16) & 7)) {
530
0
  default:
531
9.26k
  case 0:
532
    // ABS2_l2_rr, ABS_l1_rr, ADDK_s2_ir, BDEC_s8_ir, BITC4_m2_rr, BPOS_s8_ir...
533
9.26k
    return;
534
0
    break;
535
11.5k
  case 1:
536
    // ADD2_d2_rrr, ADD2_l1_rrr_x2, ADD2_s1_rrr, ADD4_l1_rrr_x2, ADDAB_d1_rir...
537
11.5k
    printOperand(MI, 0, O); 
538
11.5k
    return;
539
0
    break;
540
658
  case 2:
541
    // ADDKPC_s3_iir
542
658
    SStream_concat0(O, ", ");
543
658
    printOperand(MI, 2, O); 
544
658
    return;
545
0
    break;
546
4.08k
  case 3:
547
    // ADDU_l1_rpp, ADDU_l1_rrp_x2, ADD_l1_ipp, ADD_l1_rpp, ADD_l1_rrp_x2, DO...
548
4.08k
    printRegPair(MI, 0, O); 
549
4.08k
    return;
550
0
    break;
551
920
  case 4:
552
    // BNOP_s10_ri, BNOP_s9_ii
553
920
    printOperand(MI, 1, O); 
554
920
    return;
555
0
    break;
556
1.59k
  case 5:
557
    // CLR_s15_riir, EXTU_s15_riir, EXT_s15_riir, SET_s15_riir
558
1.59k
    printOperand(MI, 3, O); 
559
1.59k
    SStream_concat0(O, ", ");
560
1.59k
    printOperand(MI, 0, O); 
561
1.59k
    return;
562
0
    break;
563
931
  case 6:
564
    // STB_d5_rm, STH_d5_rm, STNW_d5_rm, STW_d5_rm
565
931
    printMemOperand(MI, 1, O); 
566
931
    return;
567
0
    break;
568
1.09k
  case 7:
569
    // STB_d6_rm, STH_d6_rm, STW_d6_rm
570
1.09k
    printMemOperand2(MI, 1, O); 
571
1.09k
    return;
572
0
    break;
573
30.0k
  }
574
575
30.0k
}
576
577
578
/// getRegisterName - This method is automatically generated by tblgen
579
/// from the register set description.  This returns the assembler name
580
/// for the specified register.
581
172k
static const char *getRegisterName(unsigned RegNo) {
582
172k
#ifndef CAPSTONE_DIET
583
172k
  static const char AsmStrs[] = {
584
172k
  /* 0 */ 'a', '1', '0', 0,
585
172k
  /* 4 */ 'b', '1', '0', 0,
586
172k
  /* 8 */ 'a', '2', '0', 0,
587
172k
  /* 12 */ 'b', '2', '0', 0,
588
172k
  /* 16 */ 'a', '3', '0', 0,
589
172k
  /* 20 */ 'b', '3', '0', 0,
590
172k
  /* 24 */ 'a', '0', 0,
591
172k
  /* 27 */ 'b', '0', 0,
592
172k
  /* 30 */ 'a', '1', '1', 0,
593
172k
  /* 34 */ 'b', '1', '1', 0,
594
172k
  /* 38 */ 'a', '2', '1', 0,
595
172k
  /* 42 */ 'b', '2', '1', 0,
596
172k
  /* 46 */ 'a', '3', '1', 0,
597
172k
  /* 50 */ 'b', '3', '1', 0,
598
172k
  /* 54 */ 'a', '1', 0,
599
172k
  /* 57 */ 'b', '1', 0,
600
172k
  /* 60 */ 'p', 'c', 'e', '1', 0,
601
172k
  /* 65 */ 'a', '1', '2', 0,
602
172k
  /* 69 */ 'b', '1', '2', 0,
603
172k
  /* 73 */ 'a', '2', '2', 0,
604
172k
  /* 77 */ 'b', '2', '2', 0,
605
172k
  /* 81 */ 'a', '2', 0,
606
172k
  /* 84 */ 'b', '2', 0,
607
172k
  /* 87 */ 'a', '1', '3', 0,
608
172k
  /* 91 */ 'b', '1', '3', 0,
609
172k
  /* 95 */ 'a', '2', '3', 0,
610
172k
  /* 99 */ 'b', '2', '3', 0,
611
172k
  /* 103 */ 'a', '3', 0,
612
172k
  /* 106 */ 'b', '3', 0,
613
172k
  /* 109 */ 'a', '1', '4', 0,
614
172k
  /* 113 */ 'b', '1', '4', 0,
615
172k
  /* 117 */ 'a', '2', '4', 0,
616
172k
  /* 121 */ 'b', '2', '4', 0,
617
172k
  /* 125 */ 'a', '4', 0,
618
172k
  /* 128 */ 'b', '4', 0,
619
172k
  /* 131 */ 'a', '1', '5', 0,
620
172k
  /* 135 */ 'b', '1', '5', 0,
621
172k
  /* 139 */ 'a', '2', '5', 0,
622
172k
  /* 143 */ 'b', '2', '5', 0,
623
172k
  /* 147 */ 'a', '5', 0,
624
172k
  /* 150 */ 'b', '5', 0,
625
172k
  /* 153 */ 'a', '1', '6', 0,
626
172k
  /* 157 */ 'b', '1', '6', 0,
627
172k
  /* 161 */ 'a', '2', '6', 0,
628
172k
  /* 165 */ 'b', '2', '6', 0,
629
172k
  /* 169 */ 'a', '6', 0,
630
172k
  /* 172 */ 'b', '6', 0,
631
172k
  /* 175 */ 'a', '1', '7', 0,
632
172k
  /* 179 */ 'b', '1', '7', 0,
633
172k
  /* 183 */ 'a', '2', '7', 0,
634
172k
  /* 187 */ 'b', '2', '7', 0,
635
172k
  /* 191 */ 'a', '7', 0,
636
172k
  /* 194 */ 'b', '7', 0,
637
172k
  /* 197 */ 'a', '1', '8', 0,
638
172k
  /* 201 */ 'b', '1', '8', 0,
639
172k
  /* 205 */ 'a', '2', '8', 0,
640
172k
  /* 209 */ 'b', '2', '8', 0,
641
172k
  /* 213 */ 'a', '8', 0,
642
172k
  /* 216 */ 'b', '8', 0,
643
172k
  /* 219 */ 'a', '1', '9', 0,
644
172k
  /* 223 */ 'b', '1', '9', 0,
645
172k
  /* 227 */ 'a', '2', '9', 0,
646
172k
  /* 231 */ 'b', '2', '9', 0,
647
172k
  /* 235 */ 'a', '9', 0,
648
172k
  /* 238 */ 'b', '9', 0,
649
172k
  /* 241 */ 'g', 'p', 'l', 'y', 'a', 0,
650
172k
  /* 247 */ 'g', 'p', 'l', 'y', 'b', 0,
651
172k
  /* 253 */ 'r', 'i', 'l', 'c', 0,
652
172k
  /* 258 */ 't', 's', 'c', 'h', 0,
653
172k
  /* 263 */ 't', 's', 'c', 'l', 0,
654
172k
  /* 268 */ 'd', 'n', 'u', 'm', 0,
655
172k
  /* 273 */ 'r', 'e', 'p', 0,
656
172k
  /* 277 */ 'i', 'r', 'p', 0,
657
172k
  /* 281 */ 'n', 'r', 'p', 0,
658
172k
  /* 285 */ 'i', 's', 't', 'p', 0,
659
172k
  /* 290 */ 'e', 'c', 'r', 0,
660
172k
  /* 294 */ 'i', 'c', 'r', 0,
661
172k
  /* 298 */ 'd', 'i', 'e', 'r', 0,
662
172k
  /* 303 */ 'g', 'f', 'p', 'g', 'f', 'r', 0,
663
172k
  /* 310 */ 'a', 'm', 'r', 0,
664
172k
  /* 314 */ 'i', 'e', 'r', 'r', 0,
665
172k
  /* 319 */ 'c', 's', 'r', 0,
666
172k
  /* 323 */ 'i', 's', 'r', 0,
667
172k
  /* 327 */ 's', 's', 'r', 0,
668
172k
  /* 331 */ 'i', 't', 's', 'r', 0,
669
172k
  /* 336 */ 'n', 't', 's', 'r', 0,
670
172k
  };
671
672
172k
  static const uint16_t RegAsmOffset[] = {
673
172k
    310, 319, 298, 268, 290, 303, 241, 247, 294, 299, 314, 254, 277, 323, 
674
172k
    285, 331, 281, 336, 273, 253, 327, 258, 263, 332, 24, 54, 81, 103, 
675
172k
    125, 147, 169, 191, 213, 235, 0, 30, 65, 87, 109, 131, 153, 175, 
676
172k
    197, 219, 8, 38, 73, 95, 117, 139, 161, 183, 205, 227, 16, 46, 
677
172k
    27, 57, 84, 106, 128, 150, 172, 194, 216, 238, 4, 34, 69, 91, 
678
172k
    113, 135, 157, 179, 201, 223, 12, 42, 77, 99, 121, 143, 165, 187, 
679
172k
    209, 231, 20, 50, 60, 
680
172k
  };
681
682
172k
  return AsmStrs+RegAsmOffset[RegNo-1];
683
#else
684
  return NULL;
685
#endif
686
172k
}