From defe7162f557e6b43919f074e211d57875600e47 Mon Sep 17 00:00:00 2001 From: Sintendo Date: Sat, 6 Mar 2021 22:28:40 +0100 Subject: [PATCH] Jit64: divwx - Simplify divisor == -1 case Suggested by @MerryMage. Thanks! Co-authored-by: merry --- Source/Core/Core/PowerPC/Jit64/Jit_Integer.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Source/Core/Core/PowerPC/Jit64/Jit_Integer.cpp b/Source/Core/Core/PowerPC/Jit64/Jit_Integer.cpp index 1db3836dab..c6b6ba6ddc 100644 --- a/Source/Core/Core/PowerPC/Jit64/Jit_Integer.cpp +++ b/Source/Core/Core/PowerPC/Jit64/Jit_Integer.cpp @@ -1445,8 +1445,8 @@ void Jit64::divwx(UGeckoInstruction inst) if (d != a) MOV(32, Rd, Ra); - CMP(32, Rd, Imm32(0x80000000)); - const FixupBranch normal = J_CC(CC_NE); + NEG(32, Rd); + const FixupBranch normal = J_CC(CC_NO); MOV(32, Rd, Imm32(0xFFFFFFFF)); if (inst.OE) @@ -1454,7 +1454,6 @@ void Jit64::divwx(UGeckoInstruction inst) const FixupBranch done = J(); SetJumpTarget(normal); - NEG(32, Rd); if (inst.OE) GenerateConstantOverflow(false);