diff --git a/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp b/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp --- a/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp +++ b/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp @@ -3769,10 +3769,6 @@ switch (use_encoding) { case eEncodingT1: - // Due to the above special case handling! - if (shift_type == SRType_ROR) - return false; - Rd = Bits32(opcode, 2, 0); Rm = Bits32(opcode, 5, 3); setflags = !InITBlock(); @@ -4139,8 +4135,6 @@ // if wback && registers == '0' then R[n] = R[n] - 4*BitCount(registers); if (wback && BitIsClear(registers, n)) { - if (!success) - return false; offset = (addr_byte_size * BitCount(registers)) * -1; context.type = EmulateInstruction::eContextAdjustBaseRegister; @@ -4277,8 +4271,6 @@ // if wback && registers == '0' then R[n] = R[n] - 4*BitCount(registers); if (wback && BitIsClear(registers, n)) { - if (!success) - return false; offset = (addr_byte_size * BitCount(registers)) * -1; context.type = EmulateInstruction::eContextAdjustBaseRegister; @@ -4391,8 +4383,6 @@ // if wback && registers == '0' then R[n] = R[n] + 4*BitCount(registers); if (wback && BitIsClear(registers, n)) { - if (!success) - return false; offset = addr_byte_size * BitCount(registers); context.type = EmulateInstruction::eContextAdjustBaseRegister;