blob: 9c0b2a1073945e317f6d47324be8339386522d51 [file] [log] [blame]
# RUN: llvm-mc --disassemble %s -triple=sparc-unknown-linux | FileCheck %s
# CHECK: add %g0, %g0, %g0
0x80 0x00 0x00 0x00
# CHECK: add %g1, %g2, %g3
0x86 0x00 0x40 0x02
# CHECK: add %o0, %o1, %l0
0xa0 0x02 0x00 0x09
# CHECK: add %o0, 10, %l0
0xa0 0x02 0x20 0x0a
# CHECK: addcc %g1, %g2, %g3
0x86 0x80 0x40 0x02
# CHECK: addxcc %g1, %g2, %g3
0x86 0xc0 0x40 0x02
# CHECK: udiv %g1, %g2, %g3
0x86 0x70 0x40 0x02
# CHECK: sdiv %g1, %g2, %g3
0x86 0x78 0x40 0x02
# CHECK: and %g1, %g2, %g3
0x86 0x08 0x40 0x02
# CHECK: andn %g1, %g2, %g3
0x86 0x28 0x40 0x02
# CHECK: or %g1, %g2, %g3
0x86 0x10 0x40 0x02
# CHECK: orn %g1, %g2, %g3
0x86 0x30 0x40 0x02
# CHECK: xor %g1, %g2, %g3
0x86 0x18 0x40 0x02
# CHECK: xnor %g1, %g2, %g3
0x86 0x38 0x40 0x02
# CHECK: umul %g1, %g2, %g3
0x86 0x50 0x40 0x02
# CHECK: smul %g1, %g2, %g3
0x86 0x58 0x40 0x02
# CHECK: nop
0x01 0x00 0x00 0x00
# CHECK: sethi 10, %l0
0x21 0x00 0x00 0x0a
# CHECK: sll %g1, %g2, %g3
0x87 0x28 0x40 0x02
# CHECK: sll %g1, 31, %g3
0x87 0x28 0x60 0x1f
# CHECK: srl %g1, %g2, %g3
0x87 0x30 0x40 0x02
# CHECK: srl %g1, 31, %g3
0x87 0x30 0x60 0x1f
# CHECK: sra %g1, %g2, %g3
0x87 0x38 0x40 0x02
# CHECK: sra %g1, 31, %g3
0x87 0x38 0x60 0x1f
# CHECK: sub %g1, %g2, %g3
0x86 0x20 0x40 0x02
# CHECK: subcc %g1, %g2, %g3
0x86 0xa0 0x40 0x02
# CHECK: subxcc %g1, %g2, %g3
0x86 0xe0 0x40 0x02
# CHECK: ba 4194303
0x10 0xbf 0xff 0xff
# CHECK: bne 4194303
0x12 0xbf 0xff 0xff
# CHECK: be 4194303
0x02 0xbf 0xff 0xff
# CHECK: bg 4194303
0x14 0xbf 0xff 0xff
# CHECK: ble 4194303
0x04 0xbf 0xff 0xff
# CHECK: bge 4194303
0x16 0xbf 0xff 0xff
# CHECK: bl 4194303
0x06 0xbf 0xff 0xff
# CHECK: bgu 4194303
0x18 0xbf 0xff 0xff
# CHECK: bleu 4194303
0x08 0xbf 0xff 0xff
# CHECK: bcc 4194303
0x1a 0xbf 0xff 0xff
# CHECK: bcs 4194303
0x0a 0xbf 0xff 0xff
# CHECK: bpos 4194303
0x1c 0xbf 0xff 0xff
# CHECK: bneg 4194303
0x0c 0xbf 0xff 0xff
# CHECK: bvc 4194303
0x1e 0xbf 0xff 0xff
# CHECK: bvs 4194303
0x0e 0xbf 0xff 0xff
# CHECK: fbu 4194303
0x0f 0xbf 0xff 0xff
# CHECK: fbg 4194303
0x0d 0xbf 0xff 0xff
# CHECK: fbug 4194303
0x0b 0xbf 0xff 0xff
# CHECK: fbl 4194303
0x09 0xbf 0xff 0xff
# CHECK: fbul 4194303
0x07 0xbf 0xff 0xff
# CHECK: fblg 4194303
0x05 0xbf 0xff 0xff
# CHECK: fbne 4194303
0x03 0xbf 0xff 0xff
# CHECK: fbe 4194303
0x13 0xbf 0xff 0xff
# CHECK: fbue 4194303
0x15 0xbf 0xff 0xff
# CHECK: fbge 4194303
0x17 0xbf 0xff 0xff
# CHECK: fbuge 4194303
0x19 0xbf 0xff 0xff
# CHECK: fble 4194303
0x1b 0xbf 0xff 0xff
# CHECK: fbule 4194303
0x1d 0xbf 0xff 0xff
# CHECK: fbo 4194303
0x1f 0xbf 0xff 0xff
# CHECK: cba 4194303
0x11 0xff 0xff 0xff
# CHECK: cbn 4194303
0x01 0xff 0xff 0xff
# CHECK: cb3 4194303
0x0f 0xff 0xff 0xff
# CHECK: cb2 4194303
0x0d 0xff 0xff 0xff
# CHECK: cb23 4194303
0x0b 0xff 0xff 0xff
# CHECK: cb1 4194303
0x09 0xff 0xff 0xff
# CHECK: cb13 4194303
0x07 0xff 0xff 0xff
# CHECK: cb12 4194303
0x05 0xff 0xff 0xff
# CHECK: cb123 4194303
0x03 0xff 0xff 0xff
# CHECK: cb03 4194303
0x15 0xff 0xff 0xff
# CHECK: cb02 4194303
0x17 0xff 0xff 0xff
# CHECK: cb023 4194303
0x19 0xff 0xff 0xff
# CHECK: cb01 4194303
0x1b 0xff 0xff 0xff
# CHECK: cb013 4194303
0x1d 0xff 0xff 0xff
# CHECK: cb012 4194303
0x1f 0xff 0xff 0xff
# CHECK: restore
0x81 0xe8 0x00 0x00
# CHECK: call 16
0x40 0x00 0x00 0x04
# CHECK: add %g1, -10, %g2
0x84 0x00 0x7f 0xf6
# CHECK: save %sp, -196, %sp
0x9d 0xe3 0xbf 0x3c
# CHECK: cmp %g1, -2
0x80 0xa0 0x7f 0xfe
# CHECK: unimp 12
0x00 0x00 0x00 0x0c
# CHECK: jmp %g1+12
0x81 0xc0 0x60 0x0c
# CHECK: retl
0x81 0xc3 0xe0 0x08
# CHECK: ret
0x81 0xc7 0xe0 0x08
# CHECK: rett %i7+8
0x81 0xcf 0xe0 0x08
# CHECK: stbar
0x81 0x43 0xc0 0x00
# CHECK: ta %i5
0x91 0xd0 0x00 0x1d
# CHECK: ta 82
0x91 0xd0 0x20 0x52
# CHECK: ta %g1 + %i2
0x91 0xd0 0x40 0x1a
# CHECK: ta %i5 + 41
0x91 0xd7 0x60 0x29
# CHECK: tn %i5
0x81 0xd0 0x00 0x1d
# CHECK: tne 82
0x93 0xd0 0x20 0x52
# CHECK: te %g1 + %i2
0x83 0xd0 0x40 0x1a
# CHECK: tg %i5 + 41
0x95 0xd7 0x60 0x29
# CHECK: tle %i5
0x85 0xd0 0x00 0x1d
# CHECK: tge 82
0x97 0xd0 0x20 0x52
# CHECK: tl %g1 + %i2
0x87 0xd0 0x40 0x1a
# CHECK: tgu %i5 + 41
0x99 0xd7 0x60 0x29
# CHECK: tleu %i5
0x89 0xd0 0x00 0x1d
# CHECK: tcc 82
0x9b 0xd0 0x20 0x52
# CHECK: tcs %g1 + %i2
0x8b 0xd0 0x40 0x1a
# CHECK: tpos %i5 + 41
0x9d 0xd7 0x60 0x29
# CHECK: tneg %i5
0x8d 0xd0 0x00 0x1d
# CHECK: tvc 82
0x9f 0xd0 0x20 0x52
# CHECK: tvs %g1 + %i2
0x8f 0xd0 0x40 0x1a