From a5a40de3cc15bb1b83835a58993838be217cb00d Mon Sep 17 00:00:00 2001 From: JosJuice Date: Wed, 29 May 2024 22:14:25 +0200 Subject: [PATCH] Jit: Don't skip incrementing numLoadStoreInst/numFloatingPointInst This was technically wrong, but it only affected merged dcbt+dcbst, and I doubt any games care about it. --- Source/Core/Core/PowerPC/Jit64/Jit.cpp | 12 ++++++------ Source/Core/Core/PowerPC/JitArm64/Jit.cpp | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Source/Core/Core/PowerPC/Jit64/Jit.cpp b/Source/Core/Core/PowerPC/Jit64/Jit.cpp index 6ee3c46720..d9fd7cec81 100644 --- a/Source/Core/Core/PowerPC/Jit64/Jit.cpp +++ b/Source/Core/Core/PowerPC/Jit64/Jit.cpp @@ -1166,15 +1166,15 @@ bool Jit64::DoJit(u32 em_address, JitBlock* b, u32 nextPC) gpr.Commit(); fpr.Commit(); - - if (opinfo->flags & FL_LOADSTORE) - ++js.numLoadStoreInst; - - if (opinfo->flags & FL_USE_FPU) - ++js.numFloatingPointInst; } } + if (opinfo->flags & FL_LOADSTORE) + ++js.numLoadStoreInst; + + if (opinfo->flags & FL_USE_FPU) + ++js.numFloatingPointInst; + js.fpr_is_store_safe = op.fprIsStoreSafeAfterInst; // If we have a register that will never be used again, discard or flush it. diff --git a/Source/Core/Core/PowerPC/JitArm64/Jit.cpp b/Source/Core/Core/PowerPC/JitArm64/Jit.cpp index 4e92b516e5..90bb81195e 100644 --- a/Source/Core/Core/PowerPC/JitArm64/Jit.cpp +++ b/Source/Core/Core/PowerPC/JitArm64/Jit.cpp @@ -1351,15 +1351,15 @@ bool JitArm64::DoJit(u32 em_address, JitBlock* b, u32 nextPC) } CompileInstruction(op); - - if (opinfo->flags & FL_LOADSTORE) - ++js.numLoadStoreInst; - - if (opinfo->flags & FL_USE_FPU) - ++js.numFloatingPointInst; } } + if (opinfo->flags & FL_LOADSTORE) + ++js.numLoadStoreInst; + + if (opinfo->flags & FL_USE_FPU) + ++js.numFloatingPointInst; + js.fpr_is_store_safe = op.fprIsStoreSafeAfterInst; if (!CanMergeNextInstructions(1) || js.op[1].opinfo->type != ::OpType::Integer)