From 5b5124d9fff8fc005fe9e960736ce7748d1d629a Mon Sep 17 00:00:00 2001 From: JosJuice Date: Wed, 14 Jun 2023 23:27:58 +0200 Subject: [PATCH] JitArm64: Use immediates more in fres routine Not sure why I didn't do this to begin with. Maybe I was under the impression that the most significant bit of a 12-bit immediate was a sign bit. --- Source/Core/Core/PowerPC/JitArm64/JitAsm.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/Source/Core/Core/PowerPC/JitArm64/JitAsm.cpp b/Source/Core/Core/PowerPC/JitArm64/JitAsm.cpp index cfa2965879..96663bfdb3 100644 --- a/Source/Core/Core/PowerPC/JitArm64/JitAsm.cpp +++ b/Source/Core/Core/PowerPC/JitArm64/JitAsm.cpp @@ -287,8 +287,7 @@ void JitArm64::GenerateFres() CMP(ARM64Reg::X2, 895); FixupBranch small_exponent = B(CCFlags::CC_LO); - MOVI2R(ARM64Reg::X4, 1148LL); - CMP(ARM64Reg::X2, ARM64Reg::X4); + CMP(ARM64Reg::X2, 1148); FixupBranch large_exponent = B(CCFlags::CC_HI); UBFX(ARM64Reg::X2, ARM64Reg::X1, 47, 5); // Grab upper part of mantissa @@ -320,8 +319,7 @@ void JitArm64::GenerateFres() RET(); SetJumpTarget(large_exponent); - MOVI2R(ARM64Reg::X4, 0x7FF); - CMP(ARM64Reg::X2, ARM64Reg::X4); + CMP(ARM64Reg::X2, 0x7FF); CSEL(ARM64Reg::X0, ARM64Reg::X0, ARM64Reg::X3, CCFlags::CC_EQ); RET(); }