From 6a11c1a2ede6269e6cf5e005589d0aecd709c724 Mon Sep 17 00:00:00 2001 From: JosJuice Date: Sun, 24 Aug 2025 10:54:25 +0200 Subject: [PATCH] JitArm64: Use ORR for fmr, not INS INS adds a dependency on the value in the destination register, which decreases performance, while offering no benefit to us in this case. (We ask the register cache for LowerPairSingle or LowerPair, so there's nothing meaningful in the second element of the register.) --- Source/Core/Core/PowerPC/JitArm64/JitArm64_FloatingPoint.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Core/Core/PowerPC/JitArm64/JitArm64_FloatingPoint.cpp b/Source/Core/Core/PowerPC/JitArm64/JitArm64_FloatingPoint.cpp index 4f66b947026..78bea591364 100644 --- a/Source/Core/Core/PowerPC/JitArm64/JitArm64_FloatingPoint.cpp +++ b/Source/Core/Core/PowerPC/JitArm64/JitArm64_FloatingPoint.cpp @@ -319,7 +319,7 @@ void JitArm64::fp_logic(UGeckoInstruction inst) m_float_emit.FNEG(reg_encoder(VD), reg_encoder(VB)); break; case 72: - m_float_emit.INS(size, VD, 0, VB, 0); + m_float_emit.ORR(EncodeRegToDouble(VD), EncodeRegToDouble(VB), EncodeRegToDouble(VB)); break; case 136: m_float_emit.FABS(reg_encoder(VD), reg_encoder(VB));