Coverage Report

Created: 2018-07-12 09:57

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/clang-build/lib/Target/MSP430/MSP430GenAsmWriter.inc
Line
Count
Source (jump to first uncovered line)
1
/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2
|*                                                                            *|
3
|* Assembly Writer Source Fragment                                            *|
4
|*                                                                            *|
5
|* Automatically generated file, do not edit!                                 *|
6
|*                                                                            *|
7
\*===----------------------------------------------------------------------===*/
8
9
/// printInstruction - This method is automatically generated by tablegen
10
/// from the instruction set description.
11
2.51k
void MSP430InstPrinter::printInstruction(const MCInst *MI, raw_ostream &O) {
12
2.51k
  static const char AsmStrs[] = {
13
2.51k
  /* 0 */ 'r', 'l', 'a', '.', 'b', 9, 0,
14
2.51k
  /* 7 */ 'r', 'r', 'a', '.', 'b', 9, 0,
15
2.51k
  /* 14 */ 's', 'u', 'b', '.', 'b', 9, 0,
16
2.51k
  /* 21 */ 's', 'u', 'b', 'c', '.', 'b', 9, 0,
17
2.51k
  /* 29 */ 'a', 'd', 'd', 'c', '.', 'b', 9, 0,
18
2.51k
  /* 37 */ 'b', 'i', 'c', '.', 'b', 9, 0,
19
2.51k
  /* 44 */ 'c', 'l', 'r', 'c', 10, 9, 'r', 'r', 'c', '.', 'b', 9, 0,
20
2.51k
  /* 57 */ 'a', 'd', 'd', '.', 'b', 9, 0,
21
2.51k
  /* 64 */ 'a', 'n', 'd', '.', 'b', 9, 0,
22
2.51k
  /* 71 */ 'c', 'm', 'p', '.', 'b', 9, 0,
23
2.51k
  /* 78 */ 'x', 'o', 'r', '.', 'b', 9, 0,
24
2.51k
  /* 85 */ 'b', 'i', 's', '.', 'b', 9, 0,
25
2.51k
  /* 92 */ 'b', 'i', 't', '.', 'b', 9, 0,
26
2.51k
  /* 99 */ 'm', 'o', 'v', '.', 'b', 9, 0,
27
2.51k
  /* 106 */ 's', 'w', 'p', 'b', 9, 0,
28
2.51k
  /* 112 */ 'c', 'a', 'l', 'l', 9, 0,
29
2.51k
  /* 118 */ 'j', 'm', 'p', 9, 0,
30
2.51k
  /* 123 */ 'b', 'r', 9, 0,
31
2.51k
  /* 127 */ 's', 'x', 't', 9, 0,
32
2.51k
  /* 132 */ 'r', 'l', 'a', '.', 'w', 9, 0,
33
2.51k
  /* 139 */ 'r', 'r', 'a', '.', 'w', 9, 0,
34
2.51k
  /* 146 */ 's', 'u', 'b', '.', 'w', 9, 0,
35
2.51k
  /* 153 */ 's', 'u', 'b', 'c', '.', 'w', 9, 0,
36
2.51k
  /* 161 */ 'a', 'd', 'd', 'c', '.', 'w', 9, 0,
37
2.51k
  /* 169 */ 'b', 'i', 'c', '.', 'w', 9, 0,
38
2.51k
  /* 176 */ 'c', 'l', 'r', 'c', 10, 9, 'r', 'r', 'c', '.', 'w', 9, 0,
39
2.51k
  /* 189 */ 'a', 'd', 'd', '.', 'w', 9, 0,
40
2.51k
  /* 196 */ 'a', 'n', 'd', '.', 'w', 9, 0,
41
2.51k
  /* 203 */ 'p', 'u', 's', 'h', '.', 'w', 9, 0,
42
2.51k
  /* 211 */ 'c', 'm', 'p', '.', 'w', 9, 0,
43
2.51k
  /* 218 */ 'p', 'o', 'p', '.', 'w', 9, 0,
44
2.51k
  /* 225 */ 'x', 'o', 'r', '.', 'w', 9, 0,
45
2.51k
  /* 232 */ 'b', 'i', 's', '.', 'w', 9, 0,
46
2.51k
  /* 239 */ 'b', 'i', 't', '.', 'w', 9, 0,
47
2.51k
  /* 246 */ 'm', 'o', 'v', '.', 'w', 9, 0,
48
2.51k
  /* 253 */ '#', 32, 'X', 'R', 'a', 'y', 32, 'F', 'u', 'n', 'c', 't', 'i', 'o', 'n', 32, 'P', 'a', 't', 'c', 'h', 'a', 'b', 'l', 'e', 32, 'R', 'E', 'T', '.', 0,
49
2.51k
  /* 284 */ '#', 32, 'X', 'R', 'a', 'y', 32, 'T', 'y', 'p', 'e', 'd', 32, 'E', 'v', 'e', 'n', 't', 32, 'L', 'o', 'g', '.', 0,
50
2.51k
  /* 308 */ '#', 32, 'X', 'R', 'a', 'y', 32, 'C', 'u', 's', 't', 'o', 'm', 32, 'E', 'v', 'e', 'n', 't', 32, 'L', 'o', 'g', '.', 0,
51
2.51k
  /* 333 */ '#', 32, 'X', 'R', 'a', 'y', 32, 'F', 'u', 'n', 'c', 't', 'i', 'o', 'n', 32, 'E', 'n', 't', 'e', 'r', '.', 0,
52
2.51k
  /* 356 */ '#', 32, 'X', 'R', 'a', 'y', 32, 'T', 'a', 'i', 'l', 32, 'C', 'a', 'l', 'l', 32, 'E', 'x', 'i', 't', '.', 0,
53
2.51k
  /* 379 */ '#', 32, 'X', 'R', 'a', 'y', 32, 'F', 'u', 'n', 'c', 't', 'i', 'o', 'n', 32, 'E', 'x', 'i', 't', '.', 0,
54
2.51k
  /* 401 */ 's', 'u', 'b', '.', 'b', 9, '@', 0,
55
2.51k
  /* 409 */ 'a', 'd', 'd', '.', 'b', 9, '@', 0,
56
2.51k
  /* 417 */ 'a', 'n', 'd', '.', 'b', 9, '@', 0,
57
2.51k
  /* 425 */ 'x', 'o', 'r', '.', 'b', 9, '@', 0,
58
2.51k
  /* 433 */ 'b', 'i', 's', '.', 'b', 9, '@', 0,
59
2.51k
  /* 441 */ 'm', 'o', 'v', '.', 'b', 9, '@', 0,
60
2.51k
  /* 449 */ 's', 'u', 'b', '.', 'w', 9, '@', 0,
61
2.51k
  /* 457 */ 'a', 'd', 'd', '.', 'w', 9, '@', 0,
62
2.51k
  /* 465 */ 'a', 'n', 'd', '.', 'w', 9, '@', 0,
63
2.51k
  /* 473 */ 'x', 'o', 'r', '.', 'w', 9, '@', 0,
64
2.51k
  /* 481 */ 'b', 'i', 's', '.', 'w', 9, '@', 0,
65
2.51k
  /* 489 */ 'm', 'o', 'v', '.', 'w', 9, '@', 0,
66
2.51k
  /* 497 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0,
67
2.51k
  /* 510 */ 'B', 'U', 'N', 'D', 'L', 'E', 0,
68
2.51k
  /* 517 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0,
69
2.51k
  /* 527 */ 'D', 'B', 'G', '_', 'L', 'A', 'B', 'E', 'L', 0,
70
2.51k
  /* 537 */ '#', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'D', 'O', 'W', 'N', 0,
71
2.51k
  /* 555 */ '#', 32, 'S', 'r', 'a', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', 0,
72
2.51k
  /* 570 */ '#', 32, 'S', 'h', 'l', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', 0,
73
2.51k
  /* 585 */ '#', 32, 'S', 'r', 'l', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', 0,
74
2.51k
  /* 600 */ '#', 32, 'S', 'e', 'l', 'e', 'c', 't', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', 0,
75
2.51k
  /* 618 */ '#', 32, 'S', 'r', 'a', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', 0,
76
2.51k
  /* 632 */ '#', 32, 'S', 'h', 'l', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', 0,
77
2.51k
  /* 646 */ '#', 32, 'S', 'r', 'l', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', 0,
78
2.51k
  /* 660 */ '#', 32, 'S', 'e', 'l', 'e', 'c', 't', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', 0,
79
2.51k
  /* 677 */ '#', 32, 'A', 'D', 'D', 'f', 'r', 'a', 'm', 'e', 32, 'P', 'S', 'E', 'U', 'D', 'O', 0,
80
2.51k
  /* 695 */ '#', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'U', 'P', 0,
81
2.51k
  /* 711 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0,
82
2.51k
  /* 726 */ 'r', 'e', 't', 'i', 0,
83
2.51k
  /* 731 */ 'j', 0,
84
2.51k
  /* 733 */ '#', 32, 'F', 'E', 'n', 't', 'r', 'y', 32, 'c', 'a', 'l', 'l', 0,
85
2.51k
  /* 747 */ 'n', 'o', 'p', 0,
86
2.51k
  /* 751 */ 'r', 'e', 't', 0,
87
2.51k
  };
88
2.51k
89
2.51k
  static const uint16_t OpInfo0[] = {
90
2.51k
    0U, // PHI
91
2.51k
    0U, // INLINEASM
92
2.51k
    0U, // CFI_INSTRUCTION
93
2.51k
    0U, // EH_LABEL
94
2.51k
    0U, // GC_LABEL
95
2.51k
    0U, // ANNOTATION_LABEL
96
2.51k
    0U, // KILL
97
2.51k
    0U, // EXTRACT_SUBREG
98
2.51k
    0U, // INSERT_SUBREG
99
2.51k
    0U, // IMPLICIT_DEF
100
2.51k
    0U, // SUBREG_TO_REG
101
2.51k
    0U, // COPY_TO_REGCLASS
102
2.51k
    518U, // DBG_VALUE
103
2.51k
    528U, // DBG_LABEL
104
2.51k
    0U, // REG_SEQUENCE
105
2.51k
    0U, // COPY
106
2.51k
    511U, // BUNDLE
107
2.51k
    712U, // LIFETIME_START
108
2.51k
    498U, // LIFETIME_END
109
2.51k
    0U, // STACKMAP
110
2.51k
    734U, // FENTRY_CALL
111
2.51k
    0U, // PATCHPOINT
112
2.51k
    0U, // LOAD_STACK_GUARD
113
2.51k
    0U, // STATEPOINT
114
2.51k
    0U, // LOCAL_ESCAPE
115
2.51k
    0U, // FAULTING_OP
116
2.51k
    0U, // PATCHABLE_OP
117
2.51k
    334U, // PATCHABLE_FUNCTION_ENTER
118
2.51k
    254U, // PATCHABLE_RET
119
2.51k
    380U, // PATCHABLE_FUNCTION_EXIT
120
2.51k
    357U, // PATCHABLE_TAIL_CALL
121
2.51k
    309U, // PATCHABLE_EVENT_CALL
122
2.51k
    285U, // PATCHABLE_TYPED_EVENT_CALL
123
2.51k
    0U, // ICALL_BRANCH_FUNNEL
124
2.51k
    0U, // G_ADD
125
2.51k
    0U, // G_SUB
126
2.51k
    0U, // G_MUL
127
2.51k
    0U, // G_SDIV
128
2.51k
    0U, // G_UDIV
129
2.51k
    0U, // G_SREM
130
2.51k
    0U, // G_UREM
131
2.51k
    0U, // G_AND
132
2.51k
    0U, // G_OR
133
2.51k
    0U, // G_XOR
134
2.51k
    0U, // G_IMPLICIT_DEF
135
2.51k
    0U, // G_PHI
136
2.51k
    0U, // G_FRAME_INDEX
137
2.51k
    0U, // G_GLOBAL_VALUE
138
2.51k
    0U, // G_EXTRACT
139
2.51k
    0U, // G_UNMERGE_VALUES
140
2.51k
    0U, // G_INSERT
141
2.51k
    0U, // G_MERGE_VALUES
142
2.51k
    0U, // G_PTRTOINT
143
2.51k
    0U, // G_INTTOPTR
144
2.51k
    0U, // G_BITCAST
145
2.51k
    0U, // G_LOAD
146
2.51k
    0U, // G_SEXTLOAD
147
2.51k
    0U, // G_ZEXTLOAD
148
2.51k
    0U, // G_STORE
149
2.51k
    0U, // G_ATOMIC_CMPXCHG_WITH_SUCCESS
150
2.51k
    0U, // G_ATOMIC_CMPXCHG
151
2.51k
    0U, // G_ATOMICRMW_XCHG
152
2.51k
    0U, // G_ATOMICRMW_ADD
153
2.51k
    0U, // G_ATOMICRMW_SUB
154
2.51k
    0U, // G_ATOMICRMW_AND
155
2.51k
    0U, // G_ATOMICRMW_NAND
156
2.51k
    0U, // G_ATOMICRMW_OR
157
2.51k
    0U, // G_ATOMICRMW_XOR
158
2.51k
    0U, // G_ATOMICRMW_MAX
159
2.51k
    0U, // G_ATOMICRMW_MIN
160
2.51k
    0U, // G_ATOMICRMW_UMAX
161
2.51k
    0U, // G_ATOMICRMW_UMIN
162
2.51k
    0U, // G_BRCOND
163
2.51k
    0U, // G_BRINDIRECT
164
2.51k
    0U, // G_INTRINSIC
165
2.51k
    0U, // G_INTRINSIC_W_SIDE_EFFECTS
166
2.51k
    0U, // G_ANYEXT
167
2.51k
    0U, // G_TRUNC
168
2.51k
    0U, // G_CONSTANT
169
2.51k
    0U, // G_FCONSTANT
170
2.51k
    0U, // G_VASTART
171
2.51k
    0U, // G_VAARG
172
2.51k
    0U, // G_SEXT
173
2.51k
    0U, // G_ZEXT
174
2.51k
    0U, // G_SHL
175
2.51k
    0U, // G_LSHR
176
2.51k
    0U, // G_ASHR
177
2.51k
    0U, // G_ICMP
178
2.51k
    0U, // G_FCMP
179
2.51k
    0U, // G_SELECT
180
2.51k
    0U, // G_UADDE
181
2.51k
    0U, // G_USUBE
182
2.51k
    0U, // G_SADDO
183
2.51k
    0U, // G_SSUBO
184
2.51k
    0U, // G_UMULO
185
2.51k
    0U, // G_SMULO
186
2.51k
    0U, // G_UMULH
187
2.51k
    0U, // G_SMULH
188
2.51k
    0U, // G_FADD
189
2.51k
    0U, // G_FSUB
190
2.51k
    0U, // G_FMUL
191
2.51k
    0U, // G_FMA
192
2.51k
    0U, // G_FDIV
193
2.51k
    0U, // G_FREM
194
2.51k
    0U, // G_FPOW
195
2.51k
    0U, // G_FEXP
196
2.51k
    0U, // G_FEXP2
197
2.51k
    0U, // G_FLOG
198
2.51k
    0U, // G_FLOG2
199
2.51k
    0U, // G_FNEG
200
2.51k
    0U, // G_FPEXT
201
2.51k
    0U, // G_FPTRUNC
202
2.51k
    0U, // G_FPTOSI
203
2.51k
    0U, // G_FPTOUI
204
2.51k
    0U, // G_SITOFP
205
2.51k
    0U, // G_UITOFP
206
2.51k
    0U, // G_FABS
207
2.51k
    0U, // G_GEP
208
2.51k
    0U, // G_PTR_MASK
209
2.51k
    0U, // G_BR
210
2.51k
    0U, // G_INSERT_VECTOR_ELT
211
2.51k
    0U, // G_EXTRACT_VECTOR_ELT
212
2.51k
    0U, // G_SHUFFLE_VECTOR
213
2.51k
    0U, // G_BSWAP
214
2.51k
    0U, // G_ADDRSPACE_CAST
215
2.51k
    1186U,  // ADC16mi
216
2.51k
    18594U, // ADC16mm
217
2.51k
    1186U,  // ADC16mr
218
2.51k
    1186U,  // ADC16ri
219
2.51k
    34978U, // ADC16rm
220
2.51k
    1186U,  // ADC16rr
221
2.51k
    1054U,  // ADC8mi
222
2.51k
    18462U, // ADC8mm
223
2.51k
    1054U,  // ADC8mr
224
2.51k
    1054U,  // ADC8ri
225
2.51k
    34846U, // ADC8rm
226
2.51k
    1054U,  // ADC8rr
227
2.51k
    1214U,  // ADD16mi
228
2.51k
    18622U, // ADD16mm
229
2.51k
    1214U,  // ADD16mr
230
2.51k
    1214U,  // ADD16ri
231
2.51k
    35006U, // ADD16rm
232
2.51k
    3530U,  // ADD16rm_POST
233
2.51k
    1214U,  // ADD16rr
234
2.51k
    1082U,  // ADD8mi
235
2.51k
    18490U, // ADD8mm
236
2.51k
    1082U,  // ADD8mr
237
2.51k
    1082U,  // ADD8ri
238
2.51k
    34874U, // ADD8rm
239
2.51k
    3482U,  // ADD8rm_POST
240
2.51k
    1082U,  // ADD8rr
241
2.51k
    678U, // ADDframe
242
2.51k
    538U, // ADJCALLSTACKDOWN
243
2.51k
    696U, // ADJCALLSTACKUP
244
2.51k
    1221U,  // AND16mi
245
2.51k
    18629U, // AND16mm
246
2.51k
    1221U,  // AND16mr
247
2.51k
    1221U,  // AND16ri
248
2.51k
    35013U, // AND16rm
249
2.51k
    3538U,  // AND16rm_POST
250
2.51k
    1221U,  // AND16rr
251
2.51k
    1089U,  // AND8mi
252
2.51k
    18497U, // AND8mm
253
2.51k
    1089U,  // AND8mr
254
2.51k
    1089U,  // AND8ri
255
2.51k
    34881U, // AND8rm
256
2.51k
    3490U,  // AND8rm_POST
257
2.51k
    1089U,  // AND8rr
258
2.51k
    18602U, // BIC16mm
259
2.51k
    1194U,  // BIC16mr
260
2.51k
    34986U, // BIC16rm
261
2.51k
    1194U,  // BIC16rr
262
2.51k
    18470U, // BIC8mm
263
2.51k
    1062U,  // BIC8mr
264
2.51k
    34854U, // BIC8rm
265
2.51k
    1062U,  // BIC8rr
266
2.51k
    1264U,  // BIT16mi
267
2.51k
    18672U, // BIT16mm
268
2.51k
    1264U,  // BIT16mr
269
2.51k
    4336U,  // BIT16ri
270
2.51k
    5360U,  // BIT16rm
271
2.51k
    4336U,  // BIT16rr
272
2.51k
    1117U,  // BIT8mi
273
2.51k
    18525U, // BIT8mm
274
2.51k
    1117U,  // BIT8mr
275
2.51k
    4189U,  // BIT8ri
276
2.51k
    5213U,  // BIT8rm
277
2.51k
    4189U,  // BIT8rr
278
2.51k
    6268U,  // Bi
279
2.51k
    7292U,  // Bm
280
2.51k
    6268U,  // Br
281
2.51k
    6257U,  // CALLi
282
2.51k
    8305U,  // CALLm
283
2.51k
    6257U,  // CALLr
284
2.51k
    1236U,  // CMP16mi
285
2.51k
    1236U,  // CMP16mr
286
2.51k
    4308U,  // CMP16ri
287
2.51k
    5332U,  // CMP16rm
288
2.51k
    4308U,  // CMP16rr
289
2.51k
    1096U,  // CMP8mi
290
2.51k
    1096U,  // CMP8mr
291
2.51k
    4168U,  // CMP8ri
292
2.51k
    5192U,  // CMP8rm
293
2.51k
    4168U,  // CMP8rr
294
2.51k
    9948U,  // JCC
295
2.51k
    10359U, // JMP
296
2.51k
    1271U,  // MOV16mi
297
2.51k
    18679U, // MOV16mm
298
2.51k
    1271U,  // MOV16mr
299
2.51k
    4343U,  // MOV16ri
300
2.51k
    5367U,  // MOV16rm
301
2.51k
    50666U, // MOV16rm_POST
302
2.51k
    4343U,  // MOV16rr
303
2.51k
    1124U,  // MOV8mi
304
2.51k
    18532U, // MOV8mm
305
2.51k
    1124U,  // MOV8mr
306
2.51k
    4196U,  // MOV8ri
307
2.51k
    5220U,  // MOV8rm
308
2.51k
    50618U, // MOV8rm_POST
309
2.51k
    4196U,  // MOV8rr
310
2.51k
    5220U,  // MOVZX16rm8
311
2.51k
    4196U,  // MOVZX16rr8
312
2.51k
    748U, // NOP
313
2.51k
    1257U,  // OR16mi
314
2.51k
    18665U, // OR16mm
315
2.51k
    1257U,  // OR16mr
316
2.51k
    1257U,  // OR16ri
317
2.51k
    35049U, // OR16rm
318
2.51k
    3554U,  // OR16rm_POST
319
2.51k
    1257U,  // OR16rr
320
2.51k
    1110U,  // OR8mi
321
2.51k
    18518U, // OR8mm
322
2.51k
    1110U,  // OR8mr
323
2.51k
    1110U,  // OR8ri
324
2.51k
    34902U, // OR8rm
325
2.51k
    3506U,  // OR8rm_POST
326
2.51k
    1110U,  // OR8rr
327
2.51k
    6363U,  // POP16r
328
2.51k
    6348U,  // PUSH16r
329
2.51k
    752U, // RET
330
2.51k
    727U, // RETI
331
2.51k
    6284U,  // SAR16r1
332
2.51k
    6321U,  // SAR16r1c
333
2.51k
    6152U,  // SAR8r1
334
2.51k
    6189U,  // SAR8r1c
335
2.51k
    1178U,  // SBC16mi
336
2.51k
    18586U, // SBC16mm
337
2.51k
    1178U,  // SBC16mr
338
2.51k
    1178U,  // SBC16ri
339
2.51k
    34970U, // SBC16rm
340
2.51k
    1178U,  // SBC16rr
341
2.51k
    1046U,  // SBC8mi
342
2.51k
    18454U, // SBC8mm
343
2.51k
    1046U,  // SBC8mr
344
2.51k
    1046U,  // SBC8ri
345
2.51k
    34838U, // SBC8rm
346
2.51k
    1046U,  // SBC8rr
347
2.51k
    6272U,  // SEXT16r
348
2.51k
    6277U,  // SHL16r1
349
2.51k
    6145U,  // SHL8r1
350
2.51k
    1171U,  // SUB16mi
351
2.51k
    18579U, // SUB16mm
352
2.51k
    1171U,  // SUB16mr
353
2.51k
    1171U,  // SUB16ri
354
2.51k
    34963U, // SUB16rm
355
2.51k
    3522U,  // SUB16rm_POST
356
2.51k
    1171U,  // SUB16rr
357
2.51k
    1039U,  // SUB8mi
358
2.51k
    18447U, // SUB8mm
359
2.51k
    1039U,  // SUB8mr
360
2.51k
    1039U,  // SUB8ri
361
2.51k
    34831U, // SUB8rm
362
2.51k
    3474U,  // SUB8rm_POST
363
2.51k
    1039U,  // SUB8rr
364
2.51k
    6251U,  // SWPB16r
365
2.51k
    601U, // Select16
366
2.51k
    661U, // Select8
367
2.51k
    571U, // Shl16
368
2.51k
    633U, // Shl8
369
2.51k
    556U, // Sra16
370
2.51k
    619U, // Sra8
371
2.51k
    586U, // Srl16
372
2.51k
    647U, // Srl8
373
2.51k
    1250U,  // XOR16mi
374
2.51k
    18658U, // XOR16mm
375
2.51k
    1250U,  // XOR16mr
376
2.51k
    1250U,  // XOR16ri
377
2.51k
    35042U, // XOR16rm
378
2.51k
    3546U,  // XOR16rm_POST
379
2.51k
    1250U,  // XOR16rr
380
2.51k
    1103U,  // XOR8mi
381
2.51k
    18511U, // XOR8mm
382
2.51k
    1103U,  // XOR8mr
383
2.51k
    1103U,  // XOR8ri
384
2.51k
    34895U, // XOR8rm
385
2.51k
    3498U,  // XOR8rm_POST
386
2.51k
    1103U,  // XOR8rr
387
2.51k
    4196U,  // ZEXT16r
388
2.51k
  };
389
2.51k
390
2.51k
  static const uint8_t OpInfo1[] = {
391
2.51k
    0U, // PHI
392
2.51k
    0U, // INLINEASM
393
2.51k
    0U, // CFI_INSTRUCTION
394
2.51k
    0U, // EH_LABEL
395
2.51k
    0U, // GC_LABEL
396
2.51k
    0U, // ANNOTATION_LABEL
397
2.51k
    0U, // KILL
398
2.51k
    0U, // EXTRACT_SUBREG
399
2.51k
    0U, // INSERT_SUBREG
400
2.51k
    0U, // IMPLICIT_DEF
401
2.51k
    0U, // SUBREG_TO_REG
402
2.51k
    0U, // COPY_TO_REGCLASS
403
2.51k
    0U, // DBG_VALUE
404
2.51k
    0U, // DBG_LABEL
405
2.51k
    0U, // REG_SEQUENCE
406
2.51k
    0U, // COPY
407
2.51k
    0U, // BUNDLE
408
2.51k
    0U, // LIFETIME_START
409
2.51k
    0U, // LIFETIME_END
410
2.51k
    0U, // STACKMAP
411
2.51k
    0U, // FENTRY_CALL
412
2.51k
    0U, // PATCHPOINT
413
2.51k
    0U, // LOAD_STACK_GUARD
414
2.51k
    0U, // STATEPOINT
415
2.51k
    0U, // LOCAL_ESCAPE
416
2.51k
    0U, // FAULTING_OP
417
2.51k
    0U, // PATCHABLE_OP
418
2.51k
    0U, // PATCHABLE_FUNCTION_ENTER
419
2.51k
    0U, // PATCHABLE_RET
420
2.51k
    0U, // PATCHABLE_FUNCTION_EXIT
421
2.51k
    0U, // PATCHABLE_TAIL_CALL
422
2.51k
    0U, // PATCHABLE_EVENT_CALL
423
2.51k
    0U, // PATCHABLE_TYPED_EVENT_CALL
424
2.51k
    0U, // ICALL_BRANCH_FUNNEL
425
2.51k
    0U, // G_ADD
426
2.51k
    0U, // G_SUB
427
2.51k
    0U, // G_MUL
428
2.51k
    0U, // G_SDIV
429
2.51k
    0U, // G_UDIV
430
2.51k
    0U, // G_SREM
431
2.51k
    0U, // G_UREM
432
2.51k
    0U, // G_AND
433
2.51k
    0U, // G_OR
434
2.51k
    0U, // G_XOR
435
2.51k
    0U, // G_IMPLICIT_DEF
436
2.51k
    0U, // G_PHI
437
2.51k
    0U, // G_FRAME_INDEX
438
2.51k
    0U, // G_GLOBAL_VALUE
439
2.51k
    0U, // G_EXTRACT
440
2.51k
    0U, // G_UNMERGE_VALUES
441
2.51k
    0U, // G_INSERT
442
2.51k
    0U, // G_MERGE_VALUES
443
2.51k
    0U, // G_PTRTOINT
444
2.51k
    0U, // G_INTTOPTR
445
2.51k
    0U, // G_BITCAST
446
2.51k
    0U, // G_LOAD
447
2.51k
    0U, // G_SEXTLOAD
448
2.51k
    0U, // G_ZEXTLOAD
449
2.51k
    0U, // G_STORE
450
2.51k
    0U, // G_ATOMIC_CMPXCHG_WITH_SUCCESS
451
2.51k
    0U, // G_ATOMIC_CMPXCHG
452
2.51k
    0U, // G_ATOMICRMW_XCHG
453
2.51k
    0U, // G_ATOMICRMW_ADD
454
2.51k
    0U, // G_ATOMICRMW_SUB
455
2.51k
    0U, // G_ATOMICRMW_AND
456
2.51k
    0U, // G_ATOMICRMW_NAND
457
2.51k
    0U, // G_ATOMICRMW_OR
458
2.51k
    0U, // G_ATOMICRMW_XOR
459
2.51k
    0U, // G_ATOMICRMW_MAX
460
2.51k
    0U, // G_ATOMICRMW_MIN
461
2.51k
    0U, // G_ATOMICRMW_UMAX
462
2.51k
    0U, // G_ATOMICRMW_UMIN
463
2.51k
    0U, // G_BRCOND
464
2.51k
    0U, // G_BRINDIRECT
465
2.51k
    0U, // G_INTRINSIC
466
2.51k
    0U, // G_INTRINSIC_W_SIDE_EFFECTS
467
2.51k
    0U, // G_ANYEXT
468
2.51k
    0U, // G_TRUNC
469
2.51k
    0U, // G_CONSTANT
470
2.51k
    0U, // G_FCONSTANT
471
2.51k
    0U, // G_VASTART
472
2.51k
    0U, // G_VAARG
473
2.51k
    0U, // G_SEXT
474
2.51k
    0U, // G_ZEXT
475
2.51k
    0U, // G_SHL
476
2.51k
    0U, // G_LSHR
477
2.51k
    0U, // G_ASHR
478
2.51k
    0U, // G_ICMP
479
2.51k
    0U, // G_FCMP
480
2.51k
    0U, // G_SELECT
481
2.51k
    0U, // G_UADDE
482
2.51k
    0U, // G_USUBE
483
2.51k
    0U, // G_SADDO
484
2.51k
    0U, // G_SSUBO
485
2.51k
    0U, // G_UMULO
486
2.51k
    0U, // G_SMULO
487
2.51k
    0U, // G_UMULH
488
2.51k
    0U, // G_SMULH
489
2.51k
    0U, // G_FADD
490
2.51k
    0U, // G_FSUB
491
2.51k
    0U, // G_FMUL
492
2.51k
    0U, // G_FMA
493
2.51k
    0U, // G_FDIV
494
2.51k
    0U, // G_FREM
495
2.51k
    0U, // G_FPOW
496
2.51k
    0U, // G_FEXP
497
2.51k
    0U, // G_FEXP2
498
2.51k
    0U, // G_FLOG
499
2.51k
    0U, // G_FLOG2
500
2.51k
    0U, // G_FNEG
501
2.51k
    0U, // G_FPEXT
502
2.51k
    0U, // G_FPTRUNC
503
2.51k
    0U, // G_FPTOSI
504
2.51k
    0U, // G_FPTOUI
505
2.51k
    0U, // G_SITOFP
506
2.51k
    0U, // G_UITOFP
507
2.51k
    0U, // G_FABS
508
2.51k
    0U, // G_GEP
509
2.51k
    0U, // G_PTR_MASK
510
2.51k
    0U, // G_BR
511
2.51k
    0U, // G_INSERT_VECTOR_ELT
512
2.51k
    0U, // G_EXTRACT_VECTOR_ELT
513
2.51k
    0U, // G_SHUFFLE_VECTOR
514
2.51k
    0U, // G_BSWAP
515
2.51k
    0U, // G_ADDRSPACE_CAST
516
2.51k
    0U, // ADC16mi
517
2.51k
    0U, // ADC16mm
518
2.51k
    0U, // ADC16mr
519
2.51k
    1U, // ADC16ri
520
2.51k
    0U, // ADC16rm
521
2.51k
    1U, // ADC16rr
522
2.51k
    0U, // ADC8mi
523
2.51k
    0U, // ADC8mm
524
2.51k
    0U, // ADC8mr
525
2.51k
    1U, // ADC8ri
526
2.51k
    0U, // ADC8rm
527
2.51k
    1U, // ADC8rr
528
2.51k
    0U, // ADD16mi
529
2.51k
    0U, // ADD16mm
530
2.51k
    0U, // ADD16mr
531
2.51k
    1U, // ADD16ri
532
2.51k
    0U, // ADD16rm
533
2.51k
    0U, // ADD16rm_POST
534
2.51k
    1U, // ADD16rr
535
2.51k
    0U, // ADD8mi
536
2.51k
    0U, // ADD8mm
537
2.51k
    0U, // ADD8mr
538
2.51k
    1U, // ADD8ri
539
2.51k
    0U, // ADD8rm
540
2.51k
    0U, // ADD8rm_POST
541
2.51k
    1U, // ADD8rr
542
2.51k
    0U, // ADDframe
543
2.51k
    0U, // ADJCALLSTACKDOWN
544
2.51k
    0U, // ADJCALLSTACKUP
545
2.51k
    0U, // AND16mi
546
2.51k
    0U, // AND16mm
547
2.51k
    0U, // AND16mr
548
2.51k
    1U, // AND16ri
549
2.51k
    0U, // AND16rm
550
2.51k
    0U, // AND16rm_POST
551
2.51k
    1U, // AND16rr
552
2.51k
    0U, // AND8mi
553
2.51k
    0U, // AND8mm
554
2.51k
    0U, // AND8mr
555
2.51k
    1U, // AND8ri
556
2.51k
    0U, // AND8rm
557
2.51k
    0U, // AND8rm_POST
558
2.51k
    1U, // AND8rr
559
2.51k
    0U, // BIC16mm
560
2.51k
    0U, // BIC16mr
561
2.51k
    0U, // BIC16rm
562
2.51k
    1U, // BIC16rr
563
2.51k
    0U, // BIC8mm
564
2.51k
    0U, // BIC8mr
565
2.51k
    0U, // BIC8rm
566
2.51k
    1U, // BIC8rr
567
2.51k
    0U, // BIT16mi
568
2.51k
    0U, // BIT16mm
569
2.51k
    0U, // BIT16mr
570
2.51k
    0U, // BIT16ri
571
2.51k
    0U, // BIT16rm
572
2.51k
    0U, // BIT16rr
573
2.51k
    0U, // BIT8mi
574
2.51k
    0U, // BIT8mm
575
2.51k
    0U, // BIT8mr
576
2.51k
    0U, // BIT8ri
577
2.51k
    0U, // BIT8rm
578
2.51k
    0U, // BIT8rr
579
2.51k
    0U, // Bi
580
2.51k
    0U, // Bm
581
2.51k
    0U, // Br
582
2.51k
    0U, // CALLi
583
2.51k
    0U, // CALLm
584
2.51k
    0U, // CALLr
585
2.51k
    0U, // CMP16mi
586
2.51k
    0U, // CMP16mr
587
2.51k
    0U, // CMP16ri
588
2.51k
    0U, // CMP16rm
589
2.51k
    0U, // CMP16rr
590
2.51k
    0U, // CMP8mi
591
2.51k
    0U, // CMP8mr
592
2.51k
    0U, // CMP8ri
593
2.51k
    0U, // CMP8rm
594
2.51k
    0U, // CMP8rr
595
2.51k
    0U, // JCC
596
2.51k
    0U, // JMP
597
2.51k
    0U, // MOV16mi
598
2.51k
    0U, // MOV16mm
599
2.51k
    0U, // MOV16mr
600
2.51k
    0U, // MOV16ri
601
2.51k
    0U, // MOV16rm
602
2.51k
    0U, // MOV16rm_POST
603
2.51k
    0U, // MOV16rr
604
2.51k
    0U, // MOV8mi
605
2.51k
    0U, // MOV8mm
606
2.51k
    0U, // MOV8mr
607
2.51k
    0U, // MOV8ri
608
2.51k
    0U, // MOV8rm
609
2.51k
    0U, // MOV8rm_POST
610
2.51k
    0U, // MOV8rr
611
2.51k
    0U, // MOVZX16rm8
612
2.51k
    0U, // MOVZX16rr8
613
2.51k
    0U, // NOP
614
2.51k
    0U, // OR16mi
615
2.51k
    0U, // OR16mm
616
2.51k
    0U, // OR16mr
617
2.51k
    1U, // OR16ri
618
2.51k
    0U, // OR16rm
619
2.51k
    0U, // OR16rm_POST
620
2.51k
    1U, // OR16rr
621
2.51k
    0U, // OR8mi
622
2.51k
    0U, // OR8mm
623
2.51k
    0U, // OR8mr
624
2.51k
    1U, // OR8ri
625
2.51k
    0U, // OR8rm
626
2.51k
    0U, // OR8rm_POST
627
2.51k
    1U, // OR8rr
628
2.51k
    0U, // POP16r
629
2.51k
    0U, // PUSH16r
630
2.51k
    0U, // RET
631
2.51k
    0U, // RETI
632
2.51k
    0U, // SAR16r1
633
2.51k
    0U, // SAR16r1c
634
2.51k
    0U, // SAR8r1
635
2.51k
    0U, // SAR8r1c
636
2.51k
    0U, // SBC16mi
637
2.51k
    0U, // SBC16mm
638
2.51k
    0U, // SBC16mr
639
2.51k
    1U, // SBC16ri
640
2.51k
    0U, // SBC16rm
641
2.51k
    1U, // SBC16rr
642
2.51k
    0U, // SBC8mi
643
2.51k
    0U, // SBC8mm
644
2.51k
    0U, // SBC8mr
645
2.51k
    1U, // SBC8ri
646
2.51k
    0U, // SBC8rm
647
2.51k
    1U, // SBC8rr
648
2.51k
    0U, // SEXT16r
649
2.51k
    0U, // SHL16r1
650
2.51k
    0U, // SHL8r1
651
2.51k
    0U, // SUB16mi
652
2.51k
    0U, // SUB16mm
653
2.51k
    0U, // SUB16mr
654
2.51k
    1U, // SUB16ri
655
2.51k
    0U, // SUB16rm
656
2.51k
    0U, // SUB16rm_POST
657
2.51k
    1U, // SUB16rr
658
2.51k
    0U, // SUB8mi
659
2.51k
    0U, // SUB8mm
660
2.51k
    0U, // SUB8mr
661
2.51k
    1U, // SUB8ri
662
2.51k
    0U, // SUB8rm
663
2.51k
    0U, // SUB8rm_POST
664
2.51k
    1U, // SUB8rr
665
2.51k
    0U, // SWPB16r
666
2.51k
    0U, // Select16
667
2.51k
    0U, // Select8
668
2.51k
    0U, // Shl16
669
2.51k
    0U, // Shl8
670
2.51k
    0U, // Sra16
671
2.51k
    0U, // Sra8
672
2.51k
    0U, // Srl16
673
2.51k
    0U, // Srl8
674
2.51k
    0U, // XOR16mi
675
2.51k
    0U, // XOR16mm
676
2.51k
    0U, // XOR16mr
677
2.51k
    1U, // XOR16ri
678
2.51k
    0U, // XOR16rm
679
2.51k
    0U, // XOR16rm_POST
680
2.51k
    1U, // XOR16rr
681
2.51k
    0U, // XOR8mi
682
2.51k
    0U, // XOR8mm
683
2.51k
    0U, // XOR8mr
684
2.51k
    1U, // XOR8ri
685
2.51k
    0U, // XOR8rm
686
2.51k
    0U, // XOR8rm_POST
687
2.51k
    1U, // XOR8rr
688
2.51k
    0U, // ZEXT16r
689
2.51k
  };
690
2.51k
691
2.51k
  O << "\t";
692
2.51k
693
2.51k
  // Emit the opcode for the instruction.
694
2.51k
  uint32_t Bits = 0;
695
2.51k
  Bits |= OpInfo0[MI->getOpcode()] << 0;
696
2.51k
  Bits |= OpInfo1[MI->getOpcode()] << 16;
697
2.51k
  assert(Bits != 0 && "Cannot print this instruction.");
698
2.51k
  O << AsmStrs+(Bits & 1023)-1;
699
2.51k
700
2.51k
701
2.51k
  // Fragment 0 encoded into 4 bits for 11 unique commands.
702
2.51k
  switch ((Bits >> 10) & 15) {
703
2.51k
  
default: 0
llvm_unreachable0
("Invalid command number.");
704
2.51k
  case 0:
705
292
    // DBG_VALUE, DBG_LABEL, BUNDLE, LIFETIME_START, LIFETIME_END, FENTRY_CAL...
706
292
    return;
707
2.51k
    
break0
;
708
2.51k
  case 1:
709
1.12k
    // ADC16mi, ADC16mr, ADC16ri, ADC16rr, ADC8mi, ADC8mr, ADC8ri, ADC8rr, AD...
710
1.12k
    printOperand(MI, 2, O);
711
1.12k
    break;
712
2.51k
  case 2:
713
44
    // ADC16mm, ADC16rm, ADC8mm, ADC8rm, ADD16mm, ADD16rm, ADD8mm, ADD8rm, AN...
714
44
    printSrcMemOperand(MI, 2, O);
715
44
    O << ", ";
716
44
    break;
717
2.51k
  case 3:
718
5
    // ADD16rm_POST, ADD8rm_POST, AND16rm_POST, AND8rm_POST, OR16rm_POST, OR8...
719
5
    printOperand(MI, 3, O);
720
5
    O << "+, ";
721
5
    printOperand(MI, 0, O);
722
5
    return;
723
2.51k
    
break0
;
724
2.51k
  case 4:
725
386
    // BIT16ri, BIT16rr, BIT8ri, BIT8rr, CMP16ri, CMP16rr, CMP8ri, CMP8rr, MO...
726
386
    printOperand(MI, 1, O);
727
386
    O << ", ";
728
386
    printOperand(MI, 0, O);
729
386
    return;
730
2.51k
    
break0
;
731
2.51k
  case 5:
732
310
    // BIT16rm, BIT8rm, CMP16rm, CMP8rm, MOV16rm, MOV8rm, MOVZX16rm8
733
310
    printSrcMemOperand(MI, 1, O);
734
310
    O << ", ";
735
310
    printOperand(MI, 0, O);
736
310
    return;
737
2.51k
    
break0
;
738
2.51k
  case 6:
739
288
    // Bi, Br, CALLi, CALLr, POP16r, PUSH16r, SAR16r1, SAR16r1c, SAR8r1, SAR8...
740
288
    printOperand(MI, 0, O);
741
288
    return;
742
2.51k
    
break0
;
743
2.51k
  case 7:
744
2
    // Bm
745
2
    printSrcMemOperand(MI, 0, O);
746
2
    return;
747
2.51k
    
break0
;
748
2.51k
  case 8:
749
0
    // CALLm
750
0
    printSrcMemOperand(MI, 0, O, "mem");
751
0
    return;
752
2.51k
    
break0
;
753
2.51k
  case 9:
754
52
    // JCC
755
52
    printCCOperand(MI, 1, O);
756
52
    O << "\t";
757
52
    printPCRelImmOperand(MI, 0, O);
758
52
    return;
759
2.51k
    
break0
;
760
2.51k
  case 10:
761
7
    // JMP
762
7
    printPCRelImmOperand(MI, 0, O);
763
7
    return;
764
2.51k
    
break0
;
765
1.16k
  }
766
1.16k
767
1.16k
768
1.16k
  // Fragment 1 encoded into 2 bits for 4 unique commands.
769
1.16k
  switch ((Bits >> 14) & 3) {
770
1.16k
  
default: 0
llvm_unreachable0
("Invalid command number.");
771
1.16k
  case 0:
772
1.12k
    // ADC16mi, ADC16mr, ADC16ri, ADC16rr, ADC8mi, ADC8mr, ADC8ri, ADC8rr, AD...
773
1.12k
    O << ", ";
774
1.12k
    break;
775
1.16k
  case 1:
776
27
    // ADC16mm, ADC8mm, ADD16mm, ADD8mm, AND16mm, AND8mm, BIC16mm, BIC8mm, BI...
777
27
    printSrcMemOperand(MI, 0, O);
778
27
    return;
779
1.16k
    
break0
;
780
1.16k
  case 2:
781
17
    // ADC16rm, ADC8rm, ADD16rm, ADD8rm, AND16rm, AND8rm, BIC16rm, BIC8rm, OR...
782
17
    printOperand(MI, 0, O);
783
17
    return;
784
1.16k
    
break0
;
785
1.16k
  case 3:
786
0
    // MOV16rm_POST, MOV8rm_POST
787
0
    O << "+, ";
788
0
    printOperand(MI, 0, O);
789
0
    return;
790
1.16k
    
break0
;
791
1.12k
  }
792
1.12k
793
1.12k
794
1.12k
  // Fragment 2 encoded into 1 bits for 2 unique commands.
795
1.12k
  if ((Bits >> 16) & 1) {
796
262
    // ADC16ri, ADC16rr, ADC8ri, ADC8rr, ADD16ri, ADD16rr, ADD8ri, ADD8rr, AN...
797
262
    printOperand(MI, 0, O);
798
262
    return;
799
863
  } else {
800
863
    // ADC16mi, ADC16mr, ADC8mi, ADC8mr, ADD16mi, ADD16mr, ADD8mi, ADD8mr, AN...
801
863
    printSrcMemOperand(MI, 0, O);
802
863
    return;
803
863
  }
804
1.12k
805
1.12k
}
806
807
808
/// getRegisterName - This method is automatically generated by tblgen
809
/// from the register set description.  This returns the assembler name
810
/// for the specified register.
811
2.08k
const char *MSP430InstPrinter::getRegisterName(unsigned RegNo) {
812
2.08k
  assert(RegNo && RegNo < 33 && "Invalid register number!");
813
2.08k
814
2.08k
  static const char AsmStrs[] = {
815
2.08k
  /* 0 */ 'r', '1', '0', 0,
816
2.08k
  /* 4 */ 'r', '0', 0,
817
2.08k
  /* 7 */ 'r', '1', '1', 0,
818
2.08k
  /* 11 */ 'r', '1', 0,
819
2.08k
  /* 14 */ 'r', '1', '2', 0,
820
2.08k
  /* 18 */ 'r', '2', 0,
821
2.08k
  /* 21 */ 'r', '1', '3', 0,
822
2.08k
  /* 25 */ 'r', '3', 0,
823
2.08k
  /* 28 */ 'r', '1', '4', 0,
824
2.08k
  /* 32 */ 'r', '4', 0,
825
2.08k
  /* 35 */ 'r', '1', '5', 0,
826
2.08k
  /* 39 */ 'r', '5', 0,
827
2.08k
  /* 42 */ 'r', '6', 0,
828
2.08k
  /* 45 */ 'r', '7', 0,
829
2.08k
  /* 48 */ 'r', '8', 0,
830
2.08k
  /* 51 */ 'r', '9', 0,
831
2.08k
  };
832
2.08k
833
2.08k
  static const uint8_t RegAsmOffset[] = {
834
2.08k
    25, 25, 32, 32, 4, 4, 11, 11, 18, 18, 39, 42, 45, 48, 
835
2.08k
    51, 0, 7, 14, 21, 28, 35, 39, 42, 45, 48, 51, 0, 7, 
836
2.08k
    14, 21, 28, 35, 
837
2.08k
  };
838
2.08k
839
2.08k
  assert (*(AsmStrs+RegAsmOffset[RegNo-1]) &&
840
2.08k
          "Invalid alt name index for register!");
841
2.08k
  return AsmStrs+RegAsmOffset[RegNo-1];
842
2.08k
}
843
844
#ifdef PRINT_ALIAS_INSTR
845
#undef PRINT_ALIAS_INSTR
846
847
bool MSP430InstPrinter::printAliasInstr(const MCInst *MI, raw_ostream &OS) {
848
  return false;
849
}
850
851
#endif // PRINT_ALIAS_INSTR