diff --git a/rpcs3/Emu/Cell/PPULLVMRecompiler.cpp b/rpcs3/Emu/Cell/PPULLVMRecompiler.cpp index 9507cc43d1..fe9a8f26f6 100644 --- a/rpcs3/Emu/Cell/PPULLVMRecompiler.cpp +++ b/rpcs3/Emu/Cell/PPULLVMRecompiler.cpp @@ -6033,6 +6033,8 @@ u32 ppu_recompiler_llvm::ExecutionEngine::ExecuteTillReturn(PPUThread * ppu_stat switch (branch_type) { case BranchType::Return: execution_engine->m_tracer.Trace(Tracer::TraceType::Return, 0, 0); + if (Emu.GetCPUThreadStop() == ppu_state->PC) + ppu_state->FastStop(); terminate = true; break; case BranchType::FunctionCall: