summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authormitaclaw <140017135+mitaclaw@users.noreply.github.com>2023-12-30 23:44:27 -0800
committermitaclaw <140017135+mitaclaw@users.noreply.github.com>2023-12-30 23:44:27 -0800
commit01e534a681b5ed308fa8fbbc46ccbea3b0589686 (patch)
tree61acd33b9990332240a6dd72798582ea44ba19db /Source/Core
parent559ea0593cb157f99e0ff5dc223acf6d2736d17d (diff)
Fix Logic Inefficiency in Arm64GPRCache::FlushRegisters
This was introduced in 6a9f565ac4ddc65b2fdbf2293282ddd432ba89ae.
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/PowerPC/JitArm64/JitArm64_RegCache.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/Source/Core/Core/PowerPC/JitArm64/JitArm64_RegCache.cpp b/Source/Core/Core/PowerPC/JitArm64/JitArm64_RegCache.cpp
index 8538f2c040..cd270880f9 100644
--- a/Source/Core/Core/PowerPC/JitArm64/JitArm64_RegCache.cpp
+++ b/Source/Core/Core/PowerPC/JitArm64/JitArm64_RegCache.cpp
@@ -243,8 +243,9 @@ void Arm64GPRCache::FlushRegister(size_t index, bool maintain_state, ARM64Reg tm
void Arm64GPRCache::FlushRegisters(BitSet32 regs, bool maintain_state, ARM64Reg tmp_reg)
{
- for (int i : regs)
+ for (auto iter = regs.begin(); iter != regs.end(); ++iter)
{
+ const int i = *iter;
ASSERT_MSG(DYNA_REC, m_guest_registers[GUEST_GPR_OFFSET + i].GetType() != RegType::Discarded,
"Attempted to flush discarded register");
@@ -269,7 +270,7 @@ void Arm64GPRCache::FlushRegisters(BitSet32 regs, bool maintain_state, ARM64Reg
reg1.Flush();
reg2.Flush();
}
- ++i;
+ ++iter;
continue;
}
}