| # RUN: llvm-mc -triple=arc -disassemble %s | FileCheck %s | |
| # CHECK: abs_s %r0, %r1 | |
| 0x31 0x78 | |
| # CHECK: add_s %r0, %r1, %r2 | |
| 0x58 0x61 | |
| # CHECK: add_s %r0, %r0, %fp | |
| 0x63 0x70 | |
| # CHECK: add_s %fp, %fp, -1 | |
| 0x67 0x77 | |
| # CHECK: add_s %fp, %fp, 6 | |
| 0x67 0x76 | |
| # CHECK: add_s %r0, %r0, 287454020 | |
| 0xc3 0x70 0x22 0x11 0x44 0x33 | |
| # CHECK: add_s 0, 287454020, 4 | |
| 0xc7 0x74 0x22 0x11 0x44 0x33 | |
| # CHECK: add_s %r0, %sp, 64 | |
| 0x90 0xc0 | |
| # CHECK: add_s %r0, %r0, 64 | |
| 0x40 0xe0 | |
| # CHECK: add_s %r0, %r1, 7 | |
| 0x07 0x69 | |
| # CHECK: add_s %sp, %sp, 64 | |
| 0xb0 0xc0 | |
| # CHECK: add_s %r0, %gp, -4 | |
| 0xff 0xcf | |
| # CHECK: add_s %r0, %r1, 4 | |
| 0x0c 0x49 | |
| # CHECK: add_s %r1, %r0, 4 | |
| 0x8c 0x48 | |
| # CHECK: add1_s %r0, %r0, %r1 | |
| 0x34 0x78 | |
| # CHECK: add2_s %r0, %r0, %r1 | |
| 0x35 0x78 | |
| # CHECK: add3_s %r0, %r0, %r1 | |
| 0x36 0x78 | |
| # CHECK: and_s %r0, %r0, %r1 | |
| 0x24 0x78 | |
| # CHECK: asl_s %r0, %r1 | |
| 0x3b 0x78 | |
| # CHECK: asl_s %r1, %r0, 4 | |
| 0x34 0x68 | |
| # CHECK: asl_s %r0, %r0, %r1 | |
| 0x38 0x78 | |
| # CHECK: asl_s %r0, %r0, 16 | |
| 0x10 0xb8 | |
| # CHECK: asr_s %r0, %r1 | |
| 0x3c 0x78 | |
| # CHECK: asr_s %r1, %r0, 4 | |
| 0x3c 0x68 | |
| # CHECK: asr_s %r0, %r0, %r1 | |
| 0x3a 0x78 | |
| # CHECK: asr_s %r0, %r0, 16 | |
| 0x50 0xb8 | |
| # CHECK: b_s 256 | |
| 0x80 0xf0 | |
| # CHECK: b_s -4 | |
| 0xfe 0xf1 | |
| # CHECK: beq_s -4 | |
| 0xfe 0xf3 | |
| # CHECK: bne_s -4 | |
| 0xfe 0xf5 | |
| # CHECK: bgt_s -4 | |
| 0x3e 0xf6 | |
| # CHECK: bge_s -4 | |
| 0x7e 0xf6 | |
| # CHECK: blt_s -4 | |
| 0xbe 0xf6 | |
| # CHECK: ble_s -4 | |
| 0xfe 0xf6 | |
| # CHECK: bhi_s -4 | |
| 0x3e 0xf7 | |
| # CHECK: bhs_s -4 | |
| 0x7e 0xf7 | |
| # CHECK: blo_s -4 | |
| 0xbe 0xf7 | |
| # CHECK: bls_s -4 | |
| 0xfe 0xf7 | |
| # CHECK: bclr_s %r0, %r0, 24 | |
| 0xb8 0xb8 | |
| # CHECK: bic_s %r0, %r0, %r1 | |
| 0x26 0x78 | |
| # CHECK: bl_s -256 | |
| 0xc0 0xff | |
| # CHECK: bmsk_s %r0, %r0, 24 | |
| 0xd8 0xb8 | |
| # CHECK: brne_s %r0, 0, -128 | |
| 0xc0 0xe8 | |
| # CHECK: breq_s %r0, 0, -128 | |
| 0x40 0xe8 | |
| # CHECK: brk_s | |
| 0xff 0x7f | |
| # CHECK: bset_s %r0, %r0, 24 | |
| 0x98 0xb8 | |
| # CHECK: btst_s %r0, 24 | |
| 0xf8 0xb8 | |
| # CHECK: cmp_s %r0, %sp | |
| 0x93 0x70 | |
| # CHECK: cmp_s %sp, -1 | |
| 0x97 0x77 | |
| # CHECK: cmp_s %r2, 64 | |
| 0xc0 0xe2 | |
| # CHECK: ei_s 512 | |
| 0x00 0x5e | |
| # CHECK: enter_s 16 | |
| 0xe0 0xc1 | |
| # CHECK: extb_s %r0, %r1 | |
| 0x2f 0x78 | |
| # CHECK: exth_s %r0, %r1 | |
| 0x30 0x78 | |
| # CHECK: j_s [%r0] | |
| 0x00 0x78 | |
| # CHECK: j_s [%blink] | |
| 0xe0 0x7e | |
| # CHECK: j_s.d [%r0] | |
| 0x20 0x78 | |
| # CHECK: j_s.d [%blink] | |
| 0xe0 0x7f | |
| # CHECK: jeq_s [%blink] | |
| 0xe0 0x7c | |
| # CHECK: jne_s [%blink] | |
| 0xe0 0x7d | |
| # CHECK: jl_s [%r0] | |
| 0x40 0x78 | |
| # CHECK: jl_s.d [%r0] | |
| 0x60 0x78 | |
| # CHECK: jli_s 512 | |
| 0x00 0x5a | |
| # CHECK: ld_s %r0, [%r1, %r2] | |
| 0x40 0x61 | |
| # CHECK: ld_s %r0, [%sp, 64] | |
| 0x10 0xc0 | |
| # CHECK: ld_s %r0, [%pcl, 512] | |
| 0x80 0xd0 | |
| # CHECK: ld_s %r1, [%r0, 64] | |
| 0x30 0x80 | |
| # CHECK: ld_s %r0, [%gp, -1024] | |
| 0x00 0xc9 | |
| # CHECK: ldb_s %r0, [%r1, %r2] | |
| 0x48 0x61 | |
| # CHECK: ldb_s %r0, [%sp, 64] | |
| 0x30 0xc0 | |
| # CHECK: ldb_s %r1, [%r0, 16] | |
| 0x30 0x88 | |
| # CHECK: ldb_s %r0, [%gp, -256] | |
| 0x00 0xcb | |
| # CHECK: ldh_s %r0, [%r1, %r2] | |
| 0x50 0x61 | |
| # CHECK: ldh_s %r1, [%r0, 32] | |
| 0x30 0x90 | |
| # CHECK: ldh_s %r0, [%gp, -512] | |
| 0x00 0xcd | |
| # CHECK: ldh_s.x %r1, [%r0, 32] | |
| 0x30 0x98 | |
| # CHECK: ld_s %r0, [%r17, 8] | |
| 0x36 0x40 | |
| # CHECK: ld_s %r1, [%r17, 8] | |
| 0x36 0x41 | |
| # CHECK: ld_s %r2, [%r17, 8] | |
| 0x36 0x42 | |
| # CHECK: ld_s %r3, [%r17, 8] | |
| 0x36 0x43 | |
| # CHECK: ld_s.as %r0, [%r1, %r2] | |
| 0x40 0x49 | |
| # CHECK: ld_s %r1, [%gp, -1024] | |
| 0x00 0x54 | |
| # CHECK: ldi_s %r0, [64] | |
| 0x88 0x50 | |
| # CHECK: leave_s 16 | |
| 0xc0 0xc1 | |
| # CHECK: lsr_s %r0, %r1 | |
| 0x3d 0x78 | |
| # CHECK: lsr_s %r0, %r0, %r1 | |
| 0x39 0x78 | |
| # CHECK: lsr_s %r0, %r0, 16 | |
| 0x30 0xb8 | |
| # CHECK: mov_s %r17, -1 | |
| 0x2e 0x77 | |
| # CHECK: mov_s 0, 5 | |
| 0xcf 0x75 | |
| # CHECK: mov_s.ne %r0, %r17 | |
| 0x3e 0x70 | |
| # CHECK: mov_s.ne %r0, 1024 | |
| 0xdf 0x70 0x00 0x00 0x00 0x04 | |
| # CHECK: mov_s %r0, 128 | |
| 0x80 0xd8 | |
| # CHECK: mov_s %r16, %r17 | |
| 0x32 0x40 | |
| # CHECK: mov_s %r16, 1024 | |
| 0xd3 0x40 0x00 0x00 0x00 0x04 | |
| # CHECK: mov_s 0, %r17 | |
| 0x3a 0x46 | |
| # CHECK: mov_s 0, 1024 | |
| 0xdb 0x46 0x00 0x00 0x00 0x04 | |
| # CHECK: mpy_s %r0, %r0, %r1 | |
| 0x2c 0x78 | |
| # CHECK: mpyuw_s %r0, %r0, %r1 | |
| 0x2a 0x78 | |
| # CHECK: mpyw_s %r0, %r0, %r1 | |
| 0x29 0x78 | |
| # CHECK: neg_s %r0, %r1 | |
| 0x33 0x78 | |
| # CHECK: nop_s | |
| 0xe0 0x78 | |
| # CHECK: not_s %r0, %r1 | |
| 0x32 0x78 | |
| # CHECK: or_s %r0, %r0, %r1 | |
| 0x25 0x78 | |
| # CHECK: pop_s %r0 | |
| 0xe1 0xc0 | |
| # CHECK: pop_s %blink | |
| 0xd1 0xc0 | |
| # CHECK: push_s %r0 | |
| 0xc1 0xc0 | |
| # CHECK: push_s %blink | |
| 0xf1 0xc0 | |
| # CHECK: sexb_s %r0, %r1 | |
| 0x2d 0x78 | |
| # CHECK: sexh_s %r0, %r1 | |
| 0x2e 0x78 | |
| # CHECK: st_s %r0, [%sp, 64] | |
| 0x50 0xc0 | |
| # CHECK: st_s %r1, [%r0, 64] | |
| 0x30 0xa0 | |
| # CHECK: st_s %r0, [%gp, -1024] | |
| 0x10 0x54 | |
| # CHECK: stb_s %r0, [%sp, 64] | |
| 0x70 0xc0 | |
| # CHECK: stb_s %r1, [%r0, 16] | |
| 0x30 0xa8 | |
| # CHECK: sth_s %r1, [%r0, 32] | |
| 0x30 0xb0 | |
| # CHECK: sub_s %r1, %r0, 4 | |
| 0x2c 0x68 | |
| # CHECK: sub_s.ne %r0, %r0, %r0 | |
| 0xc0 0x78 | |
| # CHECK: sub_s %r0, %r0, %r1 | |
| 0x22 0x78 | |
| # CHECK: sub_s %r0, %r0, 16 | |
| 0x70 0xb8 | |
| # CHECK: sub_s %sp, %sp, 64 | |
| 0xb0 0xc1 | |
| # CHECK: sub_s %r0, %r1, %r2 | |
| 0x50 0x49 | |
| # CHECK: swi_s | |
| 0xe0 0x7a | |
| # CHECK: trap_s 32 | |
| 0x1e 0x7c | |
| # CHECK: tst_s %r0, %r1 | |
| 0x2b 0x78 | |
| # CHECK: unimp_s | |
| 0xe0 0x79 | |
| # CHECK: xor_s %r0, %r0, %r1 | |
| 0x27 0x78 |