diff options
author | Amaury de la Vieuville <amaury.dlv@gmail.com> | 2013-06-24 09:14:54 +0000 |
---|---|---|
committer | Amaury de la Vieuville <amaury.dlv@gmail.com> | 2013-06-24 09:14:54 +0000 |
commit | 07c3e159d8fffc8b16bcd52cc395a78007c62910 (patch) | |
tree | c4a316ee04967a2cbfb79ff8c032b00130570d6d /lib/Target/ARM/Disassembler/ARMDisassembler.cpp | |
parent | 98a9b72e8c56dc13a2617de84503a3d78352789c (diff) | |
download | llvm-07c3e159d8fffc8b16bcd52cc395a78007c62910.tar.gz llvm-07c3e159d8fffc8b16bcd52cc395a78007c62910.tar.bz2 llvm-07c3e159d8fffc8b16bcd52cc395a78007c62910.tar.xz |
ARM: rGPR is meant to be unpredictable, not undefined
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184706 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/Disassembler/ARMDisassembler.cpp')
-rw-r--r-- | lib/Target/ARM/Disassembler/ARMDisassembler.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/Target/ARM/Disassembler/ARMDisassembler.cpp b/lib/Target/ARM/Disassembler/ARMDisassembler.cpp index bc874f4b46..6aaf4c06b3 100644 --- a/lib/Target/ARM/Disassembler/ARMDisassembler.cpp +++ b/lib/Target/ARM/Disassembler/ARMDisassembler.cpp @@ -916,8 +916,11 @@ static DecodeStatus DecodetcGPRRegisterClass(MCInst &Inst, unsigned RegNo, static DecodeStatus DecoderGPRRegisterClass(MCInst &Inst, unsigned RegNo, uint64_t Address, const void *Decoder) { - if (RegNo == 13 || RegNo == 15) return MCDisassembler::Fail; - return DecodeGPRRegisterClass(Inst, RegNo, Address, Decoder); + DecodeStatus S = MCDisassembler::Success; + if (RegNo == 13 || RegNo == 15) + S = MCDisassembler::SoftFail; + Check(S, DecodeGPRRegisterClass(Inst, RegNo, Address, Decoder)); + return S; } static const uint16_t SPRDecoderTable[] = { |