mirror of
https://github.com/stenzek/duckstation.git
synced 2025-06-09 12:57:19 +00:00
CPU/Recompiler: Only truncate block for future writes
If we overwrite an instruction that has already executed, it should invalidate the block next time.
This commit is contained in:
parent
e507fdcb1f
commit
cdcf05a878
@ -1707,7 +1707,7 @@ void CPU::Recompiler::Recompiler::CompileLoadStoreTemplate(
|
||||
{
|
||||
// Get rid of physical aliases.
|
||||
const u32 phys_spec_addr = VirtualAddressToPhysical(spec_addr.value());
|
||||
if (phys_spec_addr >= VirtualAddressToPhysical(m_block->pc) &&
|
||||
if (phys_spec_addr >= VirtualAddressToPhysical(m_compiler_pc) &&
|
||||
phys_spec_addr < VirtualAddressToPhysical(m_block->pc + (m_block->size * sizeof(Instruction))))
|
||||
{
|
||||
WARNING_LOG("Instruction {:08X} speculatively writes to {:08X} inside block {:08X}-{:08X}. Truncating block.",
|
||||
|
Loading…
x
Reference in New Issue
Block a user