summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
diff options
context:
space:
mode:
authorAmaury de la Vieuville <amaury.dlv@gmail.com>2013-06-24 09:11:45 +0000
committerAmaury de la Vieuville <amaury.dlv@gmail.com>2013-06-24 09:11:45 +0000
commit2f0ac8d961cc791ffa59ca101c4687498ac27ff8 (patch)
treec0b77605f1671e4c3b3e5b8d2da2ef09edbb1e37 /llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
parent4b6c076da3a2542bf84661f6d4429749deb44379 (diff)
downloadbcm5719-llvm-2f0ac8d961cc791ffa59ca101c4687498ac27ff8.tar.gz
bcm5719-llvm-2f0ac8d961cc791ffa59ca101c4687498ac27ff8.zip
ARM: fix IT decoding
mask == 0 -> UNPRED llvm-svn: 184702
Diffstat (limited to 'llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp')
-rw-r--r--llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp b/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
index 186bc9c0ea4..bc874f4b46a 100644
--- a/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
+++ b/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
@@ -4667,10 +4667,8 @@ static DecodeStatus DecodeIT(MCInst &Inst, unsigned Insn,
S = MCDisassembler::SoftFail;
}
- if (mask == 0x0) {
- mask |= 0x8;
- S = MCDisassembler::SoftFail;
- }
+ if (mask == 0x0)
+ return MCDisassembler::Fail;
Inst.addOperand(MCOperand::CreateImm(pred));
Inst.addOperand(MCOperand::CreateImm(mask));
OpenPOWER on IntegriCloud