mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-03-04 19:14:01 +00:00
JitArm64: Correctly flush non-dirty immediates
Without this change, non-dirty immediates don't actually get flushed. This can be a problem if we for instance are flushing all registers in order to execute an interpreter fallback. If that interpreter fallback writes to a register that contained a non-dirty immediate, the JIT will keep using the old value instead of loading the updated value.
This commit is contained in:
parent
6b2d801ed7
commit
1b7bd32ac1
@ -232,10 +232,10 @@ void Arm64GPRCache::FlushRegister(size_t index, bool maintain_state, ARM64Reg tm
|
||||
if (allocated_tmp_reg)
|
||||
UnlockRegister(tmp_reg);
|
||||
}
|
||||
|
||||
if (!maintain_state)
|
||||
reg.Flush();
|
||||
}
|
||||
|
||||
if (!maintain_state)
|
||||
reg.Flush();
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user