| # 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 |