From 5de2b77d04e3562af27558e70b4592a34a33be6d Mon Sep 17 00:00:00 2001 From: Stenzek Date: Thu, 30 Apr 2026 23:40:22 +1000 Subject: [PATCH] CPU/CodeCache: Fix redundant begin/end code write --- src/core/cpu_code_cache.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/core/cpu_code_cache.cpp b/src/core/cpu_code_cache.cpp index 0b85a6c27..e1f85c82c 100644 --- a/src/core/cpu_code_cache.cpp +++ b/src/core/cpu_code_cache.cpp @@ -377,7 +377,7 @@ CPU::CodeCache::Block* CPU::CodeCache::CreateBlock(u32 pc, const BlockInstructio // retain from old block const u32 frame_number = System::GetFrameNumber(); - u32 recompile_frame = System::GetFrameNumber(); + u32 recompile_frame = frame_number; u8 recompile_count = 0; const u32 idx = (pc & 0xFFFF) >> 2; @@ -1347,15 +1347,11 @@ void CPU::CodeCache::CompileOrRevalidateBlock(u32 start_pc) void CPU::CodeCache::DiscardAndRecompileBlock(u32 start_pc) { - MemMap::BeginCodeWrite(); - DEV_LOG("Discard block {:08X} with manual protection", start_pc); Block* block = LookupBlock(start_pc); DebugAssert(block && block->state == BlockState::Valid); InvalidateBlock(block, BlockState::NeedsRecompile); CompileOrRevalidateBlock(start_pc); - - MemMap::EndCodeWrite(); } const void* CPU::CodeCache::CreateBlockLink(Block* block, void* code, u32 newpc)