From 72f18bbcffe3a57fc8f23c2f4e5aa5779eec0425 Mon Sep 17 00:00:00 2001 From: Kevin Enderby Date: Wed, 11 Apr 2012 22:40:17 +0000 Subject: Fixed a case of ARM disassembly getting an assert on a bad encoding of a VST instruction. llvm-svn: 154544 --- llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'llvm/lib/Target/ARM') diff --git a/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp b/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp index e1d63fac906..05e3cedbdf5 100644 --- a/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp +++ b/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp @@ -2410,6 +2410,8 @@ static DecodeStatus DecodeVSTInstruction(MCInst &Inst, unsigned Insn, case ARM::VST2b8wb_register: case ARM::VST2b16wb_register: case ARM::VST2b32wb_register: + if (Rm == 0xF) + return MCDisassembler::Fail; Inst.addOperand(MCOperand::CreateImm(0)); break; case ARM::VST3d8_UPD: -- cgit v1.2.3