Coverage Report

Created: 2025-11-09 07:00

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