From 235f6c24457e95861ce105cc8b01f7ab7caacdb9 Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Thu, 29 Jan 2015 01:52:15 -0600 Subject: [PATCH] [AArch64] Don't flush VFP register to stack when not needed. --- .../Core/PowerPC/JitArm64/JitArm64_LoadStoreFloating.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Source/Core/Core/PowerPC/JitArm64/JitArm64_LoadStoreFloating.cpp b/Source/Core/Core/PowerPC/JitArm64/JitArm64_LoadStoreFloating.cpp index e8cb2502bb..392854b7f5 100644 --- a/Source/Core/Core/PowerPC/JitArm64/JitArm64_LoadStoreFloating.cpp +++ b/Source/Core/Core/PowerPC/JitArm64/JitArm64_LoadStoreFloating.cpp @@ -176,11 +176,10 @@ void JitArm64::lfXX(UGeckoInstruction inst) BitSet32 regs_in_use = gpr.GetCallerSavedUsed(); BitSet32 fprs_in_use = fpr.GetCallerSavedUsed(); - BitSet32 fpr_ignore_mask(0); regs_in_use[W0] = 0; regs_in_use[W30] = 0; fprs_in_use[0] = 0; // Q0 - fpr_ignore_mask[VD - Q0] = 1; + fprs_in_use[VD - Q0] = 0; if (is_immediate && Memory::IsRAMAddress(imm_addr)) { @@ -196,7 +195,7 @@ void JitArm64::lfXX(UGeckoInstruction inst) SConfig::GetInstance().m_LocalCoreStartupParameter.bFastmem, SConfig::GetInstance().m_LocalCoreStartupParameter.bFastmem, VD, XA); - m_float_emit.ABI_PopRegisters(fprs_in_use, fpr_ignore_mask); + m_float_emit.ABI_PopRegisters(fprs_in_use); ABI_PopRegisters(regs_in_use); }