diff options
author | Johnny Chen <johnny.chen@apple.com> | 2011-03-25 00:17:42 +0000 |
---|---|---|
committer | Johnny Chen <johnny.chen@apple.com> | 2011-03-25 00:17:42 +0000 |
commit | ef74e9ab409bd75c3679caae72bf233aa1faae49 (patch) | |
tree | 404aad36d6d79c5aedcc34bf221c11f65e4acee0 | |
parent | 8c13335c9ad8b558e548e81a5adbd958f1e04753 (diff) |
delegate the disassembly of t2ADR to the more generic t2ADDri12/t2SUBri12 instructions, and add a test case for that.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128249 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | test/MC/Disassembler/ARM/thumb-tests.txt | 3 | ||||
-rw-r--r-- | utils/TableGen/ARMDecoderEmitter.cpp | 5 |
2 files changed, 8 insertions, 0 deletions
diff --git a/test/MC/Disassembler/ARM/thumb-tests.txt b/test/MC/Disassembler/ARM/thumb-tests.txt index ae28082dec..22b1da792b 100644 --- a/test/MC/Disassembler/ARM/thumb-tests.txt +++ b/test/MC/Disassembler/ARM/thumb-tests.txt @@ -148,3 +148,6 @@ # CHECK: ldmia r5!, {r0, r1, r2, r3, r4} 0x1f 0xcd + +# CHECK: addw r0, pc, #1050 +0x0f 0xf2 0x1a 0x40 diff --git a/utils/TableGen/ARMDecoderEmitter.cpp b/utils/TableGen/ARMDecoderEmitter.cpp index 914ea0ee94..e48ac1e678 100644 --- a/utils/TableGen/ARMDecoderEmitter.cpp +++ b/utils/TableGen/ARMDecoderEmitter.cpp @@ -1632,6 +1632,11 @@ ARMDEBackend::populateInstruction(const CodeGenInstruction &CGI, if (Name == "tADR") return false; + // Delegate t2ADR disassembly to the more generic t2ADDri12/t2SUBri12 + // instructions. + if (Name == "t2ADR") + return false; + // Ignore tADDrSP, tADDspr, and tPICADD, prefer the generic tADDhirr. // Ignore t2SUBrSPs, prefer the t2SUB[S]r[r|s]. // Ignore t2ADDrSPs, prefer the t2ADD[S]r[r|s]. |