aboutsummaryrefslogtreecommitdiff
path: root/src/ARMJIT_x64/ARMJIT_Compiler.cpp
diff options
context:
space:
mode:
authorRSDuck <RSDuck@users.noreply.github.com>2021-07-24 17:07:08 +0200
committerRSDuck <RSDuck@users.noreply.github.com>2021-07-24 17:07:08 +0200
commit9ee2017443a159abfb93c31f5f2884cb4f264a45 (patch)
treec6d0b3a7bb47eb0872861a8f97f643b4bbcbf6ae /src/ARMJIT_x64/ARMJIT_Compiler.cpp
parent6944fdbe781cd30da109eb47dea86158ec1f8ebf (diff)
don't add constant cycles if they're 0
Diffstat (limited to 'src/ARMJIT_x64/ARMJIT_Compiler.cpp')
-rw-r--r--src/ARMJIT_x64/ARMJIT_Compiler.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/ARMJIT_x64/ARMJIT_Compiler.cpp b/src/ARMJIT_x64/ARMJIT_Compiler.cpp
index 5e01077..8178684 100644
--- a/src/ARMJIT_x64/ARMJIT_Compiler.cpp
+++ b/src/ARMJIT_x64/ARMJIT_Compiler.cpp
@@ -680,7 +680,8 @@ void Compiler::Comp_SpecialBranchBehaviour(bool taken)
{
RegCache.PrepareExit();
- ADD(32, MDisp(RCPU, offsetof(ARM, Cycles)), Imm32(ConstantCycles));
+ if (ConstantCycles)
+ ADD(32, MDisp(RCPU, offsetof(ARM, Cycles)), Imm32(ConstantCycles));
JMP((u8*)&ARM_Ret, true);
}
}
@@ -841,7 +842,8 @@ JitBlockEntry Compiler::CompileBlock(ARM* cpu, bool thumb, FetchedInstr instrs[]
RegCache.Flush();
- ADD(32, MDisp(RCPU, offsetof(ARM, Cycles)), Imm32(ConstantCycles));
+ if (ConstantCycles)
+ ADD(32, MDisp(RCPU, offsetof(ARM, Cycles)), Imm32(ConstantCycles));
JMP((u8*)ARM_Ret, true);
#ifdef JIT_PROFILING_ENABLED