diff options
-rw-r--r-- | llvm/test/MC/Disassembler/ARM/thumb-tests.txt | 3 | ||||
-rw-r--r-- | llvm/utils/TableGen/ARMDecoderEmitter.cpp | 5 |
2 files changed, 8 insertions, 0 deletions
diff --git a/llvm/test/MC/Disassembler/ARM/thumb-tests.txt b/llvm/test/MC/Disassembler/ARM/thumb-tests.txt index ae28082deca..22b1da792b6 100644 --- a/llvm/test/MC/Disassembler/ARM/thumb-tests.txt +++ b/llvm/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/llvm/utils/TableGen/ARMDecoderEmitter.cpp b/llvm/utils/TableGen/ARMDecoderEmitter.cpp index 914ea0ee940..e48ac1e6788 100644 --- a/llvm/utils/TableGen/ARMDecoderEmitter.cpp +++ b/llvm/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]. |