mirror of
https://github.com/melonDS-emu/melonDS.git
synced 2024-11-14 21:37:42 -07:00
jit: correct cycle counting for thumb shift by reg
This commit is contained in:
parent
2f6b46fd4f
commit
ea98a44e1e
@ -456,7 +456,10 @@ void Compiler::T_Comp_ALU()
|
||||
|
||||
u32 op = (CurrentInstr.Instr >> 6) & 0xF;
|
||||
|
||||
Comp_AddCycles_C();
|
||||
if ((op >= 0x2 && op < 0x4) || op == 0x7)
|
||||
Comp_AddCycles_CI(1);
|
||||
else
|
||||
Comp_AddCycles_C();
|
||||
|
||||
switch (op)
|
||||
{
|
||||
@ -471,7 +474,7 @@ void Compiler::T_Comp_ALU()
|
||||
case 0x4:
|
||||
case 0x7:
|
||||
{
|
||||
int shiftOp = op == 7 ? 3 : op - 0x2;
|
||||
int shiftOp = op == 0x7 ? 3 : op - 0x2;
|
||||
bool carryUsed;
|
||||
OpArg shifted = Comp_RegShiftReg(shiftOp, rs, rd, true, carryUsed);
|
||||
TEST(32, shifted, shifted);
|
||||
|
0
src/ARMJIT_x64/ARMJIT_LoadStore.cpp
Normal file
0
src/ARMJIT_x64/ARMJIT_LoadStore.cpp
Normal file
Loading…
Reference in New Issue
Block a user