aboutsummaryrefslogtreecommitdiff
path: root/src/ARMJIT_x64/ARMJIT_Compiler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ARMJIT_x64/ARMJIT_Compiler.cpp')
-rw-r--r--src/ARMJIT_x64/ARMJIT_Compiler.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/ARMJIT_x64/ARMJIT_Compiler.cpp b/src/ARMJIT_x64/ARMJIT_Compiler.cpp
index cc4ad80..1eb5a2a 100644
--- a/src/ARMJIT_x64/ARMJIT_Compiler.cpp
+++ b/src/ARMJIT_x64/ARMJIT_Compiler.cpp
@@ -98,7 +98,9 @@ void Compiler::A_Comp_MRS()
MOV(32, rd, R(RSCRATCH3));
}
else
+ {
MOV(32, rd, R(RCPSR));
+ }
}
void UpdateModeTrampoline(ARM* arm, u32 oldmode, u32 newmode)
@@ -703,7 +705,9 @@ JitBlockEntry Compiler::CompileBlock(ARM* cpu, bool thumb, FetchedInstr instrs[]
ABI_CallFunction(InterpretTHUMB[CurInstr.Info.Kind]);
}
else
+ {
(this->*comp)();
+ }
}
else
{
@@ -724,7 +728,7 @@ JitBlockEntry Compiler::CompileBlock(ARM* cpu, bool thumb, FetchedInstr instrs[]
}
else
{
- IrregularCycles = false;
+ IrregularCycles = comp == NULL;
FixupBranch skipExecute;
if (cond < 0xE)
@@ -737,7 +741,9 @@ JitBlockEntry Compiler::CompileBlock(ARM* cpu, bool thumb, FetchedInstr instrs[]
ABI_CallFunction(InterpretARM[CurInstr.Info.Kind]);
}
else
+ {
(this->*comp)();
+ }
Comp_SpecialBranchBehaviour(true);
@@ -755,7 +761,9 @@ JitBlockEntry Compiler::CompileBlock(ARM* cpu, bool thumb, FetchedInstr instrs[]
SetJumpTarget(skipFailed);
}
else
+ {
SetJumpTarget(skipExecute);
+ }
}
}