In MipsDisassembler.cpp, instead of defining register class tables, use the ones
[oota-llvm.git] / test / MC / Disassembler / Mips / mips32r2.txt
1 # RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mcpu=mips32r2
2
3 # CHECK: abs.d $f12,$f14
4 0x46 0x20 0x73 0x05
5
6 # CHECK: abs.s $f6,$f7
7 0x46 0x00 0x39 0x85
8
9 # CHECK: add t1,a2,a3
10 0x00 0xc7 0x48 0x20
11
12 # CHECK: add.d $f8,$f12,$f14
13 0x46 0x2e 0x62 0x00
14
15 # CHECK: add.s $f9,$f6,$f7
16 0x46 0x07 0x32 0x40
17
18 # CHECK: addi t1,a2,17767
19 0x20 0xc9 0x45 0x67
20
21 # CHECK: addiu t1,a2,-15001
22 0x24 0xc9 0xc5 0x67
23
24 # CHECK: addu t1,a2,a3
25 0x00 0xc7 0x48 0x21
26
27 # CHECK: and t1,a2,a3
28 0x00 0xc7 0x48 0x24
29
30 # CHECK: andi t1,a2,0x4567
31 0x30 0xc9 0x45 0x67
32
33 # CHECK: b 00000534
34 0x10 0x00 0x01 0x4c
35
36 # CHECK: bal 00000534
37 0x04 0x11 0x01 0x4c
38
39 # CHECK: bc1f 00000534
40 0x45 0x00 0x01 0x4c
41
42 # CHECK: bc1t 00000534
43 0x45 0x01 0x01 0x4c
44
45 # CHECK: beq t1,a2,00000534
46 0x11 0x26 0x01 0x4c
47
48 # CHECK: bgez a2,00000534
49 0x04 0xc1 0x01 0x4c
50
51 # CHECK: bgezal a2,00000534
52 0x04 0xd1 0x01 0x4c
53
54 # CHECK: bgtz a2,00000534
55 0x1c 0xc0 0x01 0x4c
56
57 # CHECK: blez a2,00000534
58 0x18 0xc0 0x01 0x4c
59
60 # CHECK: bne t1,a2,00000534
61 0x15 0x26 0x01 0x4c
62
63 # CHECK: c.eq.d $f12,$f14
64 0x46 0x2e 0x60 0x32
65
66 # CHECK: c.eq.s $f6,$f7
67 0x46 0x07 0x30 0x32
68
69 # CHECK: c.f.d $f12,$f14
70 0x46 0x2e 0x60 0x30
71
72 # CHECK: c.f.s $f6,$f7
73 0x46 0x07 0x30 0x30
74
75 # CHECK: c.le.d $f12,$f14
76 0x46 0x2e 0x60 0x3e
77
78 # CHECK: c.le.s $f6,$f7
79 0x46 0x07 0x30 0x3e
80
81 # CHECK: c.lt.d $f12,$f14
82 0x46 0x2e 0x60 0x3c
83
84 # CHECK: c.lt.s $f6,$f7
85 0x46 0x07 0x30 0x3c
86
87 # CHECK: c.nge.d $f12,$f14
88 0x46 0x2e 0x60 0x3d
89
90 # CHECK: c.nge.s $f6,$f7
91 0x46 0x07 0x30 0x3d
92
93 # CHECK: c.ngl.d $f12,$f14
94 0x46 0x2e 0x60 0x3b
95
96 # CHECK: c.ngl.s $f6,$f7
97 0x46 0x07 0x30 0x3b
98
99 # CHECK: c.ngle.d $f12,$f14
100 0x46 0x2e 0x60 0x39
101
102 # CHECK: c.ngle.s $f6,$f7
103 0x46 0x07 0x30 0x39
104
105 # CHECK: c.ngt.d $f12,$f14
106 0x46 0x2e 0x60 0x3f
107
108 # CHECK: c.ngt.s $f6,$f7
109 0x46 0x07 0x30 0x3f
110
111 # CHECK: c.ole.d $f12,$f14
112 0x46 0x2e 0x60 0x36
113
114 # CHECK: c.ole.s $f6,$f7
115 0x46 0x07 0x30 0x36
116
117 # CHECK: c.olt.d $f12,$f14
118 0x46 0x2e 0x60 0x34
119
120 # CHECK: c.olt.s $f6,$f7
121 0x46 0x07 0x30 0x34
122
123 # CHECK: c.seq.d $f12,$f14
124 0x46 0x2e 0x60 0x3a
125
126 # CHECK: c.seq.s $f6,$f7
127 0x46 0x07 0x30 0x3a
128
129 # CHECK: c.sf.d $f12,$f14
130 0x46 0x2e 0x60 0x38
131
132 # CHECK: c.sf.s $f6,$f7
133 0x46 0x07 0x30 0x38
134
135 # CHECK: c.ueq.d $f12,$f14
136 0x46 0x2e 0x60 0x33
137
138 # CHECK: c.ueq.s $f28,$f18
139 0x46 0x12 0xe0 0x33
140
141 # CHECK: c.ule.d $f12,$f14
142 0x46 0x2e 0x60 0x37
143
144 # CHECK: c.ule.s $f6,$f7
145 0x46 0x07 0x30 0x37
146
147 # CHECK: c.ult.d $f12,$f14
148 0x46 0x2e 0x60 0x35
149
150 # CHECK: c.ult.s $f6,$f7
151 0x46 0x07 0x30 0x35
152
153 # CHECK: c.un.d $f12,$f14
154 0x46 0x2e 0x60 0x31
155
156 # CHECK: c.un.s $f6,$f7
157 0x46 0x07 0x30 0x31
158
159 # CHECK: ceil.w.d $f12,$f14
160 0x46 0x20 0x73 0x0e
161
162 # CHECK: ceil.w.s $f6,$f7
163 0x46 0x00 0x39 0x8e
164
165 # CHECK: cfc1 a2,$7
166 0x44 0x46 0x38 0x00
167
168 # CHECK: clo a2,a3
169 0x70 0xe6 0x30 0x21
170
171 # CHECK: clz a2,a3
172 0x70 0xe6 0x30 0x20
173
174 # CHECK: ctc1 a2,$7
175 0x44 0xc6 0x38 0x00
176
177 # CHECK: cvt.d.s $f6,$f7
178 0x46 0x00 0x39 0xa1
179
180 # CHECK: cvt.d.w $f12,$f14
181 0x46 0x80 0x73 0x21
182
183 # CHECK: cvt.l.d $f12,$f14
184 0x46 0x20 0x73 0x05
185
186 # CHECK: cvt.l.s $f6,$f7
187 0x46 0x00 0x39 0xa5
188
189 # CHECK: cvt.s.d $f12,$f14
190 0x46 0x20 0x73 0x20
191
192 # CHECK: cvt.s.w $f6,$f7
193 0x46 0x80 0x39 0xa0
194
195 # CHECK: cvt.w.d $f12,$f14
196 0x46 0x20 0x73 0x24
197
198 # CHECK: cvt.w.s $f6,$f7
199 0x46 0x00 0x39 0xa4
200
201 # CHECK: floor.w.d $f12,$f14
202 0x46 0x20 0x73 0x0f
203
204 # CHECK: floor.w.s $f6,$f7
205 0x46 0x00 0x39 0x8f
206
207 # CHECK: ins s3,t1,0x6,0x7
208 0x7d 0x33 0x61 0x84
209
210 # CHECK: j 00000530
211 0x08 0x00 0x01 0x4c
212
213 # CHECK: jal 00000530
214 0x0c 0x00 0x01 0x4c
215
216 # CHECK: jalr a2,a3
217 0x00 0xe0 0xf8 0x09
218
219 # CHECK: jr a3
220 0x00 0xe0 0x00 0x08
221
222 # CHECK: lb  a0,9158(a1)
223 0x80 0xa4 0x23 0xc6
224
225 # CHECK: lbu a0,6(a1)
226 0x90 0xa4 0x00 0x06
227
228 # CHECK: ldc1  $f9,9158(a3)
229 0xd4 0xe9 0x23 0xc6
230
231 # CHECK: lh  a0,12(a1)
232 0x84 0xa4 0x00 0x0c
233
234 # CHECK: lh  a0,12(a1)
235 0x84 0xa4 0x00 0x0c
236
237 # CHECK: li  v1,17767
238 0x24 0x03 0x45 0x67
239
240 # CHECK: ll  t1,9158(a3)
241 0xc0 0xe9 0x23 0xc6
242
243 # CHECK: lui a2,0x4567
244 0x3c 0x06 0x45 0x67
245
246 # CHECK: lw  a0,24(a1)
247 0x8c 0xa4 0x00 0x18
248
249 # CHECK: lwc1  $f9,9158(a3)
250 0xc4 0xe9 0x23 0xc6
251
252 # CHECK: madd  a2,a3
253 0x70 0xc7 0x00 0x00
254
255 # CHECK: maddu a2,a3
256 0x70 0xc7 0x00 0x01
257
258 # CHECK: mfc1  a2,$f7
259 0x44 0x06 0x38 0x00
260
261 # CHECK: mfhi  a1
262 0x00 0x00 0x28 0x10
263
264 # CHECK: mflo  a1
265 0x00 0x00 0x28 0x12
266
267 # CHECK: mov.d $f6,$f8
268 0x46 0x20 0x41 0x86
269
270 # CHECK: mov.s $f6,$f7
271 0x46 0x00 0x39 0x86
272
273 # CHECK: move  a2,a1
274 0x00 0xa0 0x30 0x21
275
276 # CHECK: msub  a2,a3
277 0x70 0xc7 0x00 0x04
278
279 # CHECK: msubu a2,a3
280 0x70 0xc7 0x00 0x05
281
282 # CHECK: mtc1  a2,$f7
283 0x44 0x86 0x38 0x00
284
285 # CHECK: mthi  a3
286 0x00 0xe0 0x00 0x11
287
288 # CHECK: mtlo  a3
289 0x00 0xe0 0x00 0x13
290
291 # CHECK: mul.d $f8,$f12,$f14
292 0x46 0x2e 0x62 0x02
293
294 # CHECK: mul.s $f9,$f6,$f7
295 0x46 0x07 0x32 0x42
296
297 # CHECK: mul t1,a2,a3
298 0x70 0xc7 0x48 0x02
299
300 # CHECK: mult  v1,a1
301 0x00 0x65 0x00 0x18
302
303 # CHECK: multu v1,a1
304 0x00 0x65 0x00 0x19
305
306 # CHECK: neg.d $f12,$f14
307 0x46 0x20 0x73 0x07
308
309 # CHECK: neg.s $f6,$f7
310 0x46 0x00 0x39 0x87
311
312 # CHECK: neg v1,a1
313 0x00 0x05 0x18 0x22
314
315 # CHECK: nop
316 0x00 0x00 0x00 0x00
317
318 # CHECK: nor t1,a2,a3
319 0x00 0xc7 0x48 0x27
320
321 # CHECK: not v1,a1
322 0x00 0xa0 0x18 0x27
323
324 # CHECK: or  v1,v1,a1
325 0x00 0x65 0x18 0x25
326
327 # CHECK: ori t1,a2,0x4567
328 0x34 0xc9 0x45 0x67
329
330 # CHECK: rdhwr a2,$29
331 0x7c 0x06 0xe8 0x3b
332
333 # CHECK: ror t1,a2,0x7
334 0x00 0x26 0x49 0xc2
335
336 # CHECK: rorv  t1,a2,a3
337 0x00 0xe6 0x48 0x46
338
339 # CHECK: round.w.d $f6,$f14
340 0x46 0x20 0x73 0x0c
341
342 # CHECK: round.w.s $f6,$f7
343 0x46 0x00 0x39 0x8c
344
345 # CHECK: sb  a0,9158(a1)
346 0xa0 0xa4 0x23 0xc6
347
348 # CHECK: sb  a0,6(a1)
349 0xa0 0xa4 0x00 0x06
350
351 # CHECK: sc  t1,9158(a3)
352 0xe0 0xe9 0x23 0xc6
353
354 # CHECK: sdc1  $f9,9158(a3)
355 0xf4 0xe9 0x23 0xc6
356
357 # CHECK: seb a2,a3
358 0x7c 0x07 0x34 0x20
359
360 # CHECK: seh a2,a3
361 0x7c 0x07 0x36 0x20
362
363 # CHECK: sh  a0,9158(a1)
364 0xa4 0xa4 0x23 0xc6
365
366 # CHECK: sll a0,v1,0x7
367 0x00 0x03 0x21 0xc0
368
369 # CHECK: sllv  v0,v1,a1
370 0x00 0xa3 0x10 0x04
371
372 # CHECK: slt v1,v1,a1
373 0x00 0x65 0x18 0x2a
374
375 # CHECK: slti  v1,v1,103
376 0x28 0x63 0x00 0x67
377
378 # CHECK: sltiu v1,v1,103
379 0x2c 0x63 0x00 0x67
380
381 # CHECK: sltu  v1,v1,a1
382 0x00 0x65 0x18 0x2b
383
384 # CHECK: sqrt.d  $f12,$f14
385 0x46 0x20 0x73 0x04
386
387 # CHECK: sqrt.s  $f6,$f7
388 0x46 0x00 0x39 0x84
389
390 # CHECK: sra a0,v1,0x7
391 0x00 0x03 0x21 0xc3
392
393 # CHECK: sra a0,v1,0x7
394 0x00 0x03 0x21 0xc3
395
396 # CHECK: srav  v0,v1,a1
397 0x00 0xa3 0x10 0x07
398
399 # CHECK: srl a0,v1,0x7
400 0x00 0x03 0x21 0xc2
401
402 # CHECK: srlv  v0,v1,a1
403 0x00 0xa3 0x10 0x06
404
405 # CHECK: sub.d $f8,$f12,$f14
406 0x46 0x2e 0x62 0x01
407
408 # CHECK: sub.s $f9,$f6,$f7
409 0x46 0x07 0x32 0x41
410
411 # CHECK: sub t1,a2,a3
412 0x00 0xc7 0x48 0x22
413
414 # CHECK: subu  a0,v1,a1
415 0x00 0x65 0x20 0x23
416
417 # CHECK: sw  a0,24(a1)
418 0xac 0xa4 0x00 0x18
419
420 # CHECK: swc1  $f9,9158(a3)
421 0xe4 0xe9 0x23 0xc6
422
423 # CHECK: sync  0x7
424 0x00 0x00 0x01 0xcf
425
426 # CHECK: trunc.w.d $f12,$f14
427 0x46 0x20 0x73 0x0d
428
429 # CHECK: trunc.w.s $f6,$f7
430 0x46 0x00 0x39 0x8d
431
432 # CHECK: wsbh  a2,a3
433 0x7c 0x07 0x30 0xa0
434
435 # CHECK: xor v1,v1,a1
436 0x00 0x65 0x18 0x26
437
438 # CHECK: xori  t1,a2,0x4567
439 0x38 0xc9 0x45 0x67