From d94b00ec3606b63547f1b4f4cb8ab718f82de74a Mon Sep 17 00:00:00 2001 From: JosJuice Date: Sun, 7 Jan 2024 22:59:51 +0100 Subject: [PATCH] JitArm64: Remove unnecessary locking of W0 in psq_stXX It seems like I made a mistake in 166bd87f70. Locking W0 when jo.memcheck is true is only necessary for load instructions, not store instructions. --- .../Core/Core/PowerPC/JitArm64/JitArm64_LoadStorePaired.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/Core/Core/PowerPC/JitArm64/JitArm64_LoadStorePaired.cpp b/Source/Core/Core/PowerPC/JitArm64/JitArm64_LoadStorePaired.cpp index 52bb74658c..4a2c2d3aae 100644 --- a/Source/Core/Core/PowerPC/JitArm64/JitArm64_LoadStorePaired.cpp +++ b/Source/Core/Core/PowerPC/JitArm64/JitArm64_LoadStorePaired.cpp @@ -204,7 +204,7 @@ void JitArm64::psq_stXX(UGeckoInstruction inst) } gpr.Lock(ARM64Reg::W1, ARM64Reg::W2, ARM64Reg::W30); - if (!js.assumeNoPairedQuantize || jo.memcheck || !jo.fastmem) + if (!js.assumeNoPairedQuantize || !jo.fastmem) gpr.Lock(ARM64Reg::W0); if (!js.assumeNoPairedQuantize && !jo.fastmem) gpr.Lock(ARM64Reg::W3); @@ -283,7 +283,7 @@ void JitArm64::psq_stXX(UGeckoInstruction inst) gpr.Unlock(ARM64Reg::W1, ARM64Reg::W2, ARM64Reg::W30); fpr.Unlock(ARM64Reg::Q0); - if (!js.assumeNoPairedQuantize || jo.memcheck || !jo.fastmem) + if (!js.assumeNoPairedQuantize || !jo.fastmem) gpr.Unlock(ARM64Reg::W0); if (!js.assumeNoPairedQuantize && !jo.fastmem) gpr.Unlock(ARM64Reg::W3);