diff options
author | Stephen Hines <srhines@google.com> | 2014-04-23 16:57:46 -0700 |
---|---|---|
committer | Stephen Hines <srhines@google.com> | 2014-04-24 15:53:16 -0700 |
commit | 36b56886974eae4f9c5ebc96befd3e7bfe5de338 (patch) | |
tree | e6cfb69fbbd937f450eeb83bfb83b9da3b01275a /test/MC/Disassembler/Sparc | |
parent | 69a8640022b04415ae9fac62f8ab090601d8f889 (diff) | |
download | external_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.zip external_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.tar.gz external_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.tar.bz2 |
Update to LLVM 3.5a.
Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
Diffstat (limited to 'test/MC/Disassembler/Sparc')
-rw-r--r-- | test/MC/Disassembler/Sparc/lit.local.cfg | 4 | ||||
-rw-r--r-- | test/MC/Disassembler/Sparc/sparc-fp.txt | 148 | ||||
-rw-r--r-- | test/MC/Disassembler/Sparc/sparc-mem.txt | 163 | ||||
-rw-r--r-- | test/MC/Disassembler/Sparc/sparc.txt | 202 |
4 files changed, 517 insertions, 0 deletions
diff --git a/test/MC/Disassembler/Sparc/lit.local.cfg b/test/MC/Disassembler/Sparc/lit.local.cfg new file mode 100644 index 0000000..4d344fa --- /dev/null +++ b/test/MC/Disassembler/Sparc/lit.local.cfg @@ -0,0 +1,4 @@ +targets = set(config.root.targets_to_build.split()) +if not 'Sparc' in targets: + config.unsupported = True + diff --git a/test/MC/Disassembler/Sparc/sparc-fp.txt b/test/MC/Disassembler/Sparc/sparc-fp.txt new file mode 100644 index 0000000..b279da8 --- /dev/null +++ b/test/MC/Disassembler/Sparc/sparc-fp.txt @@ -0,0 +1,148 @@ +# RUN: llvm-mc --disassemble %s -triple=sparc64-linux-gnu | FileCheck %s + + +# CHECK: fitos %f0, %f4 +0x89 0xa0 0x18 0x80 + +# CHECK: fitod %f0, %f4 +0x89 0xa0 0x19 0x00 + +# CHECK: fitoq %f0, %f4 +0x89 0xa0 0x19 0x80 + +# CHECK: fstoi %f0, %f4 +0x89 0xa0 0x1a 0x20 + +# CHECK: fdtoi %f0, %f4 +0x89 0xa0 0x1a 0x40 + +# CHECK: fqtoi %f0, %f4 +0x89 0xa0 0x1a 0x60 + +# CHECK: fstod %f0, %f4 +0x89 0xa0 0x19 0x20 +# CHECK: fstoq %f0, %f4 +0x89 0xa0 0x19 0xa0 + +# CHECK: fdtos %f0, %f4 +0x89 0xa0 0x18 0xc0 + +# CHECK: fdtoq %f0, %f4 +0x89 0xa0 0x19 0xc0 + +# CHECK: fqtos %f0, %f4 +0x89 0xa0 0x18 0xe0 + +# CHECK: fqtod %f0, %f4 +0x89 0xa0 0x19 0x60 + +# CHECK: fmovs %f0, %f4 +0x89 0xa0 0x00 0x20 + +# CHECK: fmovd %f0, %f4 +0x89 0xa0 0x00 0x40 + +# CHECK: fmovq %f0, %f4 +0x89 0xa0 0x00 0x60 + +# CHECK: fnegs %f0, %f4 +0x89 0xa0 0x00 0xa0 + +# CHECK: fnegd %f0, %f4 +0x89 0xa0 0x00 0xc0 + +# CHECK: fnegq %f0, %f4 +0x89 0xa0 0x00 0xe0 + +# CHECK: fabss %f0, %f4 +0x89 0xa0 0x01 0x20 + +# CHECK: fabsd %f0, %f4 +0x89 0xa0 0x01 0x40 + +# CHECK: fabsq %f0, %f4 +0x89 0xa0 0x01 0x60 + +# CHECK: fsqrts %f0, %f4 +0x89 0xa0 0x05 0x20 + +# CHECK: fsqrtd %f0, %f4 +0x89 0xa0 0x05 0x40 + +# CHECK: fsqrtq %f0, %f4 +0x89 0xa0 0x05 0x60 + +# CHECK: fadds %f0, %f4, %f8 +0x91 0xa0 0x08 0x24 + +# CHECK: faddd %f0, %f4, %f8 +0x91 0xa0 0x08 0x44 + +# CHECK: faddq %f0, %f4, %f8 +0x91 0xa0 0x08 0x64 + +# CHECK: faddd %f32, %f34, %f62 +0xbf 0xa0 0x48 0x43 + +# CHECK: faddq %f32, %f36, %f60 +0xbb 0xa0 0x48 0x65 + +# CHECK: fsubs %f0, %f4, %f8 +0x91 0xa0 0x08 0xa4 + +# CHECK: fsubd %f0, %f4, %f8 +0x91 0xa0 0x08 0xc4 + +# CHECK: fsubq %f0, %f4, %f8 +0x91 0xa0 0x08 0xe4 + +# CHECK: fmuls %f0, %f4, %f8 +0x91 0xa0 0x09 0x24 + +# CHECK: fmuld %f0, %f4, %f8 +0x91 0xa0 0x09 0x44 + +# CHECK: fmulq %f0, %f4, %f8 +0x91 0xa0 0x09 0x64 + +# CHECK: fsmuld %f0, %f4, %f8 +0x91 0xa0 0x0d 0x24 + +# CHECK: fdmulq %f0, %f4, %f8 +0x91 0xa0 0x0d 0xc4 + +# CHECK: fdivs %f0, %f4, %f8 +0x91 0xa0 0x09 0xa4 + +# CHECK: fdivd %f0, %f4, %f8 +0x91 0xa0 0x09 0xc4 + +# CHECK: fdivq %f0, %f4, %f8 +0x91 0xa0 0x09 0xe4 + +# CHECK: fcmps %fcc0, %f0, %f4 +0x81 0xa8 0x0a 0x24 + +# CHECK: fcmpd %fcc0, %f0, %f4 +0x81 0xa8 0x0a 0x44 + +# CHECK: fcmpq %fcc0, %f0, %f4 +0x81 0xa8 0x0a 0x64 + +# CHECK: fxtos %f0, %f4 +0x89 0xa0 0x10 0x80 + +# CHECK: fxtod %f0, %f4 +0x89 0xa0 0x11 0x00 + +# CHECK: fxtoq %f0, %f4 +0x89 0xa0 0x11 0x80 + +# CHECK: fstox %f0, %f4 +0x89 0xa0 0x10 0x20 + +# CHECK: fdtox %f0, %f4 +0x89 0xa0 0x10 0x40 + +# CHECK: fqtox %f0, %f4 +0x89 0xa0 0x10 0x60 diff --git a/test/MC/Disassembler/Sparc/sparc-mem.txt b/test/MC/Disassembler/Sparc/sparc-mem.txt new file mode 100644 index 0000000..6ad4be1 --- /dev/null +++ b/test/MC/Disassembler/Sparc/sparc-mem.txt @@ -0,0 +1,163 @@ +# RUN: llvm-mc --disassemble %s -triple=sparcv9-unknown-linux | FileCheck %s + +# CHECK: ldsb [%i0+%l6], %o2 +0xd4 0x4e 0x00 0x16 + +# CHECK: ldsb [%i0+32], %o2 +0xd4 0x4e 0x20 0x20 + +# CHECK: ldsb [%g1], %o4 +0xd8 0x48 0x60 0x00 + +# CHECK: ldsh [%i0+%l6], %o2 +0xd4 0x56 0x00 0x16 + +# CHECK: ldsh [%i0+32], %o2 +0xd4 0x56 0x20 0x20 + +# CHECK: ldsh [%g1], %o4 +0xd8 0x50 0x60 0x00 + +# CHECK: ldub [%i0+%l6], %o2 +0xd4 0x0e 0x00 0x16 + +# CHECK: ldub [%i0+32], %o2 +0xd4 0x0e 0x20 0x20 + +# CHECK: ldub [%g1], %o2 +0xd4 0x08 0x60 0x00 + +# CHECK: lduh [%i0+%l6], %o2 +0xd4 0x16 0x00 0x16 + +# CHECK: lduh [%i0+32], %o2 +0xd4 0x16 0x20 0x20 + +# CHECK: lduh [%g1], %o2 +0xd4 0x10 0x60 0x00 + +# CHECK: ld [%i0+%l6], %o2 +0xd4 0x06 0x00 0x16 + +# CHECK: ld [%i0+32], %o2 +0xd4 0x06 0x20 0x20 + +# CHECK: ld [%g1], %o2 +0xd4 0x00 0x60 0x00 + +# CHECK: ld [%i0+%l6], %f2 +0xc5 0x06 0x00 0x16 + +# CHECK: ld [%i0+32], %f2 +0xc5 0x06 0x20 0x20 + +# CHECK: ld [%g1], %f2 +0xc5 0x00 0x60 0x00 + +# CHECK: ldd [%i0+%l6], %f2 +0xc5 0x1e 0x00 0x16 + +# CHECK: ldd [%i0+32], %f2 +0xc5 0x1e 0x20 0x20 + +# CHECK: ldd [%g1], %f2 +0xc5 0x18 0x60 0x00 + +# CHECK: ldq [%i0+%l6], %f4 +0xc9 0x16 0x00 0x16 + +# CHECK: ldq [%i0+32], %f4 +0xc9 0x16 0x20 0x20 + +# CHECK: ldq [%g1], %f4 +0xc9 0x10 0x60 0x00 + +# CHECK: ldx [%i0+%l6], %o2 +0xd4 0x5e 0x00 0x16 + +# CHECK: ldx [%i0+32], %o2 +0xd4 0x5e 0x20 0x20 + +# CHECK: ldx [%g1], %o2 +0xd4 0x58 0x60 0x00 + +# CHECK: ldsw [%i0+%l6], %o2 +0xd4 0x46 0x00 0x16 + +# CHECK: ldsw [%i0+32], %o2 +0xd4 0x46 0x20 0x20 + +# CHECK: ldsw [%g1], %o2 +0xd4 0x40 0x60 0x00 + +# CHECK: stb %o2, [%i0+%l6] +0xd4 0x2e 0x00 0x16 + +# CHECK: stb %o2, [%i0+32] +0xd4 0x2e 0x20 0x20 + +# CHECK: stb %o2, [%g1] +0xd4 0x28 0x60 0x00 + +# CHECK: sth %o2, [%i0+%l6] +0xd4 0x36 0x00 0x16 + +# CHECK: sth %o2, [%i0+32] +0xd4 0x36 0x20 0x20 + +# CHECK: sth %o2, [%g1] +0xd4 0x30 0x60 0x00 + +# CHECK: st %o2, [%i0+%l6] +0xd4 0x26 0x00 0x16 + +# CHECK: st %o2, [%i0+32] +0xd4 0x26 0x20 0x20 + +# CHECK: st %o2, [%g1] +0xd4 0x20 0x60 0x00 + +# CHECK: st %f2, [%i0+%l6] +0xc5 0x26 0x00 0x16 + +# CHECK: st %f2, [%i0+32] +0xc5 0x26 0x20 0x20 + +# CHECK: st %f2, [%g1] +0xc5 0x20 0x60 0x00 + +# CHECK: std %f2, [%i0+%l6] +0xc5 0x3e 0x00 0x16 + +# CHECK: std %f2, [%i0+32] +0xc5 0x3e 0x20 0x20 + +# CHECK: std %f2, [%g1] +0xc5 0x38 0x60 0x00 + +# CHECK: stq %f4, [%i0+%l6] +0xc9 0x36 0x00 0x16 + +# CHECK: stq %f4, [%i0+32] +0xc9 0x36 0x20 0x20 + +# CHECK: stq %f4, [%g1] +0xc9 0x30 0x60 0x00 + +# CHECK: stx %o2, [%i0+%l6] +0xd4 0x76 0x00 0x16 + +# CHECK: stx %o2, [%i0+32] +0xd4 0x76 0x20 0x20 + +# CHECK: stx %o2, [%g1] +0xd4 0x70 0x60 0x00 + +# CHECK: swap [%i0+%l6], %o2 +0xd4 0x7e 0x00 0x16 + +# CHECK: swap [%i0+32], %o2 +0xd4 0x7e 0x20 0x20 + +# CHECK: swap [%g1], %o2 +0xd4 0x78 0x60 0x00 diff --git a/test/MC/Disassembler/Sparc/sparc.txt b/test/MC/Disassembler/Sparc/sparc.txt new file mode 100644 index 0000000..a942024 --- /dev/null +++ b/test/MC/Disassembler/Sparc/sparc.txt @@ -0,0 +1,202 @@ +# 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: 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: wr %g1, -2, %y +0x81 0x80 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 |