From b307d77b61220e99663cb5fe2a513e1ee83fb1d2 Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Sat, 27 Jul 2013 15:05:16 -0700 Subject: [PATCH] Oops, need to still rewind on breakpoint. --- Core/MIPS/x86/Jit.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Core/MIPS/x86/Jit.cpp b/Core/MIPS/x86/Jit.cpp index 0debe24d77..c292416002 100644 --- a/Core/MIPS/x86/Jit.cpp +++ b/Core/MIPS/x86/Jit.cpp @@ -298,7 +298,10 @@ const u8 *Jit::DoJit(u32 em_address, JitBlock *b) // CORE_RUNNING is <= CORE_NEXTFRAME. CMP(32, M((void*)&coreState), Imm32(CORE_NEXTFRAME)); FixupBranch skipCheck = J_CC(CC_LE); - MOV(32, M(&mips_->pc), Imm32(js.compilerPC + 4)); + if (js.afterOp & JitState::AFTER_REWIND_PC_BAD_STATE) + MOV(32, M(&mips_->pc), Imm32(js.compilerPC)); + else + MOV(32, M(&mips_->pc), Imm32(js.compilerPC + 4)); WriteSyscallExit(); SetJumpTarget(skipCheck);