@@ -3769,10 +3769,6 @@ bool EmulateInstructionARM::EmulateShiftImm(const uint32_t opcode,
3769
3769
3770
3770
switch (use_encoding) {
3771
3771
case eEncodingT1:
3772
- // Due to the above special case handling!
3773
- if (shift_type == SRType_ROR)
3774
- return false ;
3775
-
3776
3772
Rd = Bits32 (opcode, 2 , 0 );
3777
3773
Rm = Bits32 (opcode, 5 , 3 );
3778
3774
setflags = !InITBlock ();
@@ -4139,8 +4135,6 @@ bool EmulateInstructionARM::EmulateLDMDA(const uint32_t opcode,
4139
4135
4140
4136
// if wback && registers<n> == '0' then R[n] = R[n] - 4*BitCount(registers);
4141
4137
if (wback && BitIsClear (registers, n)) {
4142
- if (!success)
4143
- return false ;
4144
4138
4145
4139
offset = (addr_byte_size * BitCount (registers)) * -1 ;
4146
4140
context.type = EmulateInstruction::eContextAdjustBaseRegister;
@@ -4277,8 +4271,6 @@ bool EmulateInstructionARM::EmulateLDMDB(const uint32_t opcode,
4277
4271
4278
4272
// if wback && registers<n> == '0' then R[n] = R[n] - 4*BitCount(registers);
4279
4273
if (wback && BitIsClear (registers, n)) {
4280
- if (!success)
4281
- return false ;
4282
4274
4283
4275
offset = (addr_byte_size * BitCount (registers)) * -1 ;
4284
4276
context.type = EmulateInstruction::eContextAdjustBaseRegister;
@@ -4391,8 +4383,6 @@ bool EmulateInstructionARM::EmulateLDMIB(const uint32_t opcode,
4391
4383
4392
4384
// if wback && registers<n> == '0' then R[n] = R[n] + 4*BitCount(registers);
4393
4385
if (wback && BitIsClear (registers, n)) {
4394
- if (!success)
4395
- return false ;
4396
4386
4397
4387
offset = addr_byte_size * BitCount (registers);
4398
4388
context.type = EmulateInstruction::eContextAdjustBaseRegister;
0 commit comments