[core/arm/dynarmic] fix ICache invalidate on KPageTable

Signed-off-by: lizzie <lizzie@eden-emu.dev>
This commit is contained in:
lizzie
2026-08-31 17:12:45 +00:00
parent b7f0f98519
commit be790d08f3
2 changed files with 5 additions and 1 deletions
+3 -1
View File
@@ -420,11 +420,13 @@ void ArmDynarmic32::SignalInterrupt(Kernel::KThread* thread) {
}
void ArmDynarmic32::ClearInstructionCache() {
m_cb->last_code_addr = u64(-1);
m_jit->ClearCache();
}
void ArmDynarmic32::InvalidateCacheRange(u64 addr, std::size_t size) {
m_jit->InvalidateCacheRange(static_cast<u32>(addr), size);
m_cb->last_code_addr = u64(-1);
m_jit->InvalidateCacheRange(u32(addr), size);
}
} // namespace Core
@@ -447,10 +447,12 @@ void ArmDynarmic64::SignalInterrupt(Kernel::KThread* thread) {
}
void ArmDynarmic64::ClearInstructionCache() {
m_cb->last_code_addr = u64(-1);
m_jit->ClearCache();
}
void ArmDynarmic64::InvalidateCacheRange(u64 addr, std::size_t size) {
m_cb->last_code_addr = u64(-1);
m_jit->InvalidateCacheRange(addr, size);
}