From 9429f47d83164446d62b490dcfd7a6d2faac7cad Mon Sep 17 00:00:00 2001 From: Venkatraman Govindaraju Date: Mon, 6 Jan 2014 08:08:58 +0000 Subject: [Sparc] Add initial implementation of disassembler for sparc git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198591 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/MC/Disassembler/Sparc/lit.local.cfg | 4 ++ test/MC/Disassembler/Sparc/sparc.txt | 82 ++++++++++++++++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 test/MC/Disassembler/Sparc/lit.local.cfg create mode 100644 test/MC/Disassembler/Sparc/sparc.txt (limited to 'test/MC') diff --git a/test/MC/Disassembler/Sparc/lit.local.cfg b/test/MC/Disassembler/Sparc/lit.local.cfg new file mode 100644 index 0000000000..4d344fa91a --- /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.txt b/test/MC/Disassembler/Sparc/sparc.txt new file mode 100644 index 0000000000..451a871393 --- /dev/null +++ b/test/MC/Disassembler/Sparc/sparc.txt @@ -0,0 +1,82 @@ +# 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 -- cgit v1.2.3