diff options
-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]. |