PPU/LLVM: Call fast_stop when function returns and PC corresponds

This commit is contained in:
Vincent Lejeune 2015-12-22 18:12:51 +01:00
parent 743f5f07cb
commit e7df81ade0

View file

@ -591,7 +591,10 @@ u32 ppu_recompiler_llvm::CPUHybridDecoderRecompiler::ExecuteTillReturn(PPUThread
auto entry = ppu_state->PC;
u32 exit = (u32)executable(ppu_state, 0);
if (exit == ExecutionStatus::ExecutionStatusReturn)
{
if (Emu.GetCPUThreadStop() == ppu_state->PC) ppu_state->fast_stop();
return ExecutionStatus::ExecutionStatusReturn;
}
if (exit == ExecutionStatus::ExecutionStatusPropagateException)
return ExecutionStatus::ExecutionStatusPropagateException;
previousInstContigousAndInterp = false;