[mips][microMIPS] MicroMIPS 16-bit unconditional branch instruction B
[oota-llvm.git] / test / MC / Disassembler / Mips / micromips.txt
1 # RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mattr=micromips \
2 # RUN: | FileCheck %s
3
4 # CHECK: add $9, $6, $7
5 0x00 0xe6 0x49 0x10
6
7 # CHECK: addi $9, $6, 17767
8 0x11 0x26 0x45 0x67
9
10 # CHECK: addiu $9, $6, -15001
11 0x31 0x26 0xc5 0x67
12
13 # CHECK: addi $9, $6, 17767
14 0x11 0x26 0x45 0x67
15
16 # CHECK: addiu $9, $6, -15001
17 0x31 0x26 0xc5 0x67
18
19 # CHECK: addiusp -16
20 0x4f 0xf9
21
22 # CHECK: addiusp -1028
23 0x4f 0xff
24
25 # CHECK: addiusp -1032
26 0x4f 0xfd
27
28 # CHECK: addiusp 1024
29 0x4c 0x01
30
31 # CHECK: addiusp 1028
32 0x4c 0x03
33
34 # CHECK: addu $9, $6, $7
35 0x00 0xe6 0x49 0x50
36
37 # CHECK: sub $9, $6, $7
38 0x00 0xe6 0x49 0x90
39
40 # CHECK: subu $4, $3, $5
41 0x00 0xa3 0x21 0xd0
42
43 # CHECK: sub $6, $zero, $7
44 0x00 0xe0 0x31 0x90
45
46 # CHECK: subu $6, $zero, $7
47 0x00 0xe0 0x31 0xd0
48
49 # CHECK: addu $7, $8, $zero
50 0x00 0x08 0x39 0x50
51
52 # CHECK: slt $3, $3, $5
53 0x00 0xa3 0x1b 0x50
54
55 # CHECK: slti $3, $3, 103
56 0x90 0x63 0x00 0x67
57
58 # CHECK: slti $3, $3, 103
59 0x90 0x63 0x00 0x67
60
61 # CHECK: sltiu $3, $3, 103
62 0xb0 0x63 0x00 0x67
63
64 # CHECK: sltu $3, $3, $5
65 0x00 0xa3 0x1b 0x90
66
67 # CHECK: lui $9, 17767
68 0x41 0xa9 0x45 0x67
69
70 # CHECK: and $9, $6, $7
71 0x00 0xe6 0x4a 0x50
72
73 # CHECK: andi $9, $6, 17767
74 0xd1 0x26 0x45 0x67
75
76 # CHECK: andi $9, $6, 17767
77 0xd1 0x26 0x45 0x67
78
79 # CHECK: andi16 $16, $2, 31
80 0x2c 0x29
81
82 # CHECK: or $3, $4, $5
83 0x00 0xa4 0x1a 0x90
84
85 # CHECK: ori $9, $6, 17767
86 0x51 0x26 0x45 0x67
87
88 # CHECK: xor $3, $3, $5
89 0x00 0xa3 0x1b 0x10
90
91 # CHECK: xori $9, $6, 17767
92 0x71 0x26 0x45 0x67
93
94 # CHECK: xori $9, $6, 17767
95 0x71 0x26 0x45 0x67
96
97 # CHECK: nor $9, $6, $7
98 0x00 0xe6 0x4a 0xd0
99
100 # CHECK: not $7, $8
101 0x00 0x08 0x3a 0xd0
102
103 # CHECK: mul $9, $6, $7
104 0x00 0xe6 0x4a 0x10
105
106 # CHECK: mult $9, $7
107 0x00 0xe9 0x8b 0x3c
108
109 # CHECK: multu $9, $7
110 0x00 0xe9 0x9b 0x3c
111
112 # CHECK-EB: div $zero, $9, $7
113 0x00 0xe9 0xab 0x3c
114
115 # CHECK-EB: divu $zero, $9, $7
116 0x00 0xe9 0xbb 0x3c
117
118 # CHECK: sll $4, $3, 7
119 0x00 0x83 0x38 0x00
120
121 # CHECK: sllv $2, $3, $5
122 0x00 0x65 0x10 0x10
123
124 # CHECK: sra $4, $3, 7
125 0x00 0x83 0x38 0x80
126
127 # CHECK: srav $2, $3, $5
128 0x00 0x65 0x10 0x90
129
130 # CHECK: srl $4, $3, 7
131 0x00 0x83 0x38 0x40
132
133 # CHECK: srlv $2, $3, $5
134 0x00 0x65 0x10 0x50
135
136 # CHECK: rotr $9, $6, 7
137 0x01 0x26 0x38 0xc0
138
139 # CHECK: rotrv $9, $6, $7
140 0x00 0xc7 0x48 0xd0
141
142 # CHECK: lb $5, 8($4)
143 0x1c 0xa4 0x00 0x08
144
145 # CHECK: lbu $6, 8($4)
146 0x14 0xc4 0x00 0x08
147
148 # CHECK: lh $2, 8($4)
149 0x3c 0x44 0x00 0x08
150
151 # CHECK: lhu $4, 8($2)
152 0x34 0x82 0x00 0x08
153
154 # CHECK: lw  $6, 4($5)
155 0xfc 0xc5 0x00 0x04
156
157 # CHECK: lw $6, 123($sp)
158 0xfc 0xdd 0x00 0x7b
159
160 # CHECK: sb $5, 8($4)
161 0x18 0xa4 0x00 0x08
162
163 # CHECK: sh  $2, 8($4)
164 0x38 0x44 0x00 0x08
165
166 # CHECK: sw  $5, 4($6)
167 0xf8 0xa6 0x00 0x04
168
169 # CHECK: sw $5, 123($sp)
170 0xf8 0xbd 0x00 0x7b
171
172 # CHECK: lwu $2, 8($4)
173 0x60 0x44 0xe0 0x08
174
175 # CHECK: lwl $4, 16($5)
176 0x60 0x85 0x00 0x10
177
178 # CHECK: lwr $4, 16($5)
179 0x60 0x85 0x10 0x10
180
181 # CHECK: swl $4, 16($5)
182 0x60 0x85 0x80 0x10
183
184 # CHECK: swr $4, 16($5)
185 0x60 0x85 0x90 0x10
186
187 # CHECK: movz $9, $6, $7
188 0x00 0xe6 0x48 0x58
189
190 # CHECK: movn $9, $6, $7
191 0x00 0xe6 0x48 0x18
192
193 # CHECK: movt $9, $6, $fcc0
194 0x55 0x26 0x09 0x7b
195
196 # CHECK: movf $9, $6, $fcc0
197 0x55 0x26 0x01 0x7b
198
199 # CHECK: mthi   $6
200 0x00 0x06 0x2d 0x7c
201
202 # CHECK: mfhi   $6
203 0x00 0x06 0x0d 0x7c
204
205 # CHECK: mtlo   $6
206 0x00 0x06 0x3d 0x7c
207
208 # CHECK: mflo   $6
209 0x00 0x06 0x1d 0x7c
210
211 # CHECK: madd   $4, $5
212 0x00 0xa4 0xcb 0x3c
213
214 # CHECK: maddu  $4, $5
215 0x00 0xa4 0xdb 0x3c
216
217 # CHECK: msub   $4, $5
218 0x00 0xa4 0xeb 0x3c
219
220 # CHECK: msubu  $4, $5
221 0x00 0xa4 0xfb 0x3c
222
223 # CHECK: clz $9, $6
224 0x01 0x26 0x5b 0x3c
225
226 # CHECK: clo $9, $6
227 0x01 0x26 0x4b 0x3c
228
229 # CHECK: seb $9, $6
230 0x01 0x26 0x2b 0x3c
231
232 # CHECK: seh $9, $6
233 0x01 0x26 0x3b 0x3c
234
235 # CHECK: wsbh $9, $6
236 0x01 0x26 0x7b 0x3c
237
238 # CHECK: ext $9, $6, 3, 7
239 0x01 0x26 0x30 0xec
240
241 # CHECK: ins $9, $6, 3, 7
242 0x01 0x26 0x48 0xcc
243
244 # CHECK: j 1328
245 0xd4 0x00 0x02 0x98
246
247 # CHECK: jal 1328
248 0xf4 0x00 0x02 0x98
249
250 # CHECK: jalr $ra, $6
251 0x03 0xe6 0x0f 0x3c
252
253 # CHECK: jr $7
254 0x00 0x07 0x0f 0x3c
255
256 # CHECK: jraddiusp 20
257 0x47 0x05
258
259 # CHECK: beq $9, $6, 1332
260 0x94 0xc9 0x02 0x9a
261
262 # CHECK: bgez $6, 1332
263 0x40 0x46 0x02 0x9a
264
265 # CHECK: bgezal $6, 1332
266 0x40 0x66 0x02 0x9a
267
268 # CHECK: bltzal $6, 1332
269 0x40 0x26 0x02 0x9a
270
271 # CHECK: bgtz $6, 1332
272 0x40 0xc6 0x02 0x9a
273
274 # CHECK: blez $6, 1332
275 0x40 0x86 0x02 0x9a
276
277 # CHECK: bne $9, $6, 1332
278 0xb4 0xc9 0x02 0x9a
279
280 # CHECK: bltz $6, 1332
281 0x40 0x06 0x02 0x9a
282
283 # CHECK: teq $8, $9, 0
284 0x01 0x28 0x00 0x3c
285
286 # CHECK: tge $8, $9, 0
287 0x01 0x28 0x02 0x3c
288
289 # CHECK: tgeu $8, $9, 0
290 0x01 0x28 0x04 0x3c
291
292 # CHECK: tlt $8, $9, 0
293 0x01 0x28 0x08 0x3c
294
295 # CHECK: tltu $8, $9, 0
296 0x01 0x28 0x0a 0x3c
297
298 # CHECK: tne $8, $9, 0
299 0x01 0x28 0x0c 0x3c
300
301 # CHECK: teqi $9, 17767
302 0x41,0xc9,0x45,0x67
303
304 # CHECK: tgei $9, 17767
305 0x41 0x29 0x45 0x67
306
307 # CHECK: tgeiu $9, 17767
308 0x41 0x69 0x45 0x67
309
310 # CHECK: tlti $9, 17767
311 0x41 0x09 0x45 0x67
312
313 # CHECK: tltiu $9, 17767
314 0x41 0x49 0x45 0x67
315
316 # CHECK: tnei $9, 17767
317 0x41 0x89 0x45 0x67
318
319 # CHECK: cache 1, 8($5)
320 0x20 0x25 0x60 0x08
321
322 # CHECK: pref 1, 8($5)
323 0x60 0x25 0x20 0x08
324
325 # CHECK: ssnop
326 0x00 0x00 0x08 0x00
327
328 # CHECK: ehb
329 0x00 0x00 0x18 0x00
330
331 # CHECK: pause
332 0x00 0x00 0x28 0x00
333
334 # CHECK: ll $2, 8($4)
335 0x60 0x44 0x30 0x08
336
337 # CHECK: sc $2, 8($4)
338 0x60 0x44 0xb0 0x08
339
340 # CHECK: lwxs $2, $3($4)
341 0x00 0x64 0x11 0x18
342
343 # CHECK: bgezals $6, 1332
344 0x42 0x66 0x02 0x9a
345
346 # CHECK: bltzals $6, 1332
347 0x42 0x26 0x02 0x9a
348
349 # CHECK: beqzc $9, 1332
350 0x40 0xe9 0x02 0x9a
351
352 # CHECK: bnezc $9, 1332
353 0x40 0xa9 0x02 0x9a
354
355 # CHECK: jals 1328
356 0x74 0x00 0x02 0x98
357
358 # CHECK: jalrs $ra, $6
359 0x03 0xe6 0x4f 0x3c
360
361 # CHECK: lwm32 $16, $17, 8($4)
362 0x20 0x44 0x50 0x08
363
364 # CHECK: swm32 $16, $17, 8($4)
365 0x20 0x44 0xd0 0x08
366
367 # CHECK: swp $16, 8($4)
368 0x22 0x04 0x90 0x08
369
370 # CHECK: lwp $16, 8($4)
371 0x22 0x04 0x10 0x08
372
373 # CHECK: nop
374 0x00 0x00 0x00 0x00
375
376 # CHECK: addu16 $6, $17, $4
377 0x07 0x42
378
379 # CHECK: subu16 $5, $16, $3
380 0x06 0xb1
381
382 # CHECK: and16 $16, $2
383 0x44 0x82
384
385 # CHECK: not16 $17, $3
386 0x44 0x0b
387
388 # CHECK: or16 $16, $4
389 0x44 0xc4
390
391 # CHECK: xor16 $17, $5
392 0x44 0x4d
393
394 # CHECK: sll16 $3, $16, 5
395 0x25 0x8a
396
397 # CHECK: srl16 $4, $17, 6
398 0x26 0x1d
399
400 # CHECK: lbu16 $3, 4($17)
401 0x09 0x94
402
403 # CHECK: lbu16 $3, -1($16)
404 0x09 0x8f
405
406 # CHECK: lhu16 $3, 4($16)
407 0x29 0x82
408
409 # CHECK: lw16 $4, 8($17)
410 0x6a 0x12
411
412 # CHECK: sb16 $3, 4($16)
413 0x89 0x84
414
415 # CHECK: sh16 $4, 8($17)
416 0xaa 0x14
417
418 # CHECK: sw16 $4, 4($17)
419 0xea 0x11
420
421 # CHECK: sw16 $zero, 4($17)
422 0xe8 0x11
423
424 # CHECK: mfhi $9
425 0x46 0x09
426
427 # CHECK: mflo $9
428 0x46 0x49
429
430 # CHECK: move $25, $1
431 0x0f 0x21
432
433 # CHECK: jrc $9
434 0x45 0xa9
435
436 # CHECK: jalr $9
437 0x45 0xc9
438
439 # CHECK: jalrs16 $9
440 0x45 0xe9
441
442 # CHECK: jr16 $9
443 0x45 0x89
444
445 # CHECK: li16 $3, -1
446 0xed 0xff
447
448 # CHECK: li16 $3, 126
449 0xed 0xfe
450
451 # CHECK: addiur1sp $7, 4
452 0x6f 0x83
453
454 # CHECK: addiur2 $6, $7, -1
455 0x6f 0x7e
456
457 # CHECK: addiur2 $6, $7, 12
458 0x6f 0x76
459
460 # CHECK: addius5 $7, -2
461 0x4c 0xfc
462
463 # CHECK: nop
464 0x0c 0x00
465
466 # CHECK: lw $3, 32($sp)
467 0x48 0x68
468
469 # CHECK: sw $4, 124($sp)
470 0xc8 0x9f
471
472 # CHECK: beqz16 $6, 20
473 0x8f 0x0a
474
475 # CHECK: bnez16 $6, 20
476 0xaf 0x0a
477
478 # CHECK: b16 132
479 0xcc 0x42