From 5a8ad9230271a5088b0cf582932959214c6b5527 Mon Sep 17 00:00:00 2001 From: skidau Date: Tue, 15 May 2012 09:32:21 +1000 Subject: [PATCH] Changed a JMP that needed to be a far JMP in JITIL. --- Source/Core/Core/Src/PowerPC/Jit64IL/IR_X86.cpp | 2 +- Source/Core/Core/Src/PowerPC/PPCAnalyst.cpp | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/Source/Core/Core/Src/PowerPC/Jit64IL/IR_X86.cpp b/Source/Core/Core/Src/PowerPC/Jit64IL/IR_X86.cpp index 0df155758f..e91291fa90 100644 --- a/Source/Core/Core/Src/PowerPC/Jit64IL/IR_X86.cpp +++ b/Source/Core/Core/Src/PowerPC/Jit64IL/IR_X86.cpp @@ -1388,7 +1388,7 @@ static void DoWriteCode(IRBuilder* ibuild, JitIL* Jit, bool UseProfile, bool Mak Jit->MOV(32, R(ECX), regLocForInst(RI, getOp2(I))); RI.Jit->UnsafeWriteRegToReg(EAX, ECX, 32, 0); } - FixupBranch exit = Jit->J(); + FixupBranch exit = Jit->J(true); Jit->SetJumpTarget(safe); // Safe but slow routine OpArg value = fregLocForInst(RI, getOp1(I)); diff --git a/Source/Core/Core/Src/PowerPC/PPCAnalyst.cpp b/Source/Core/Core/Src/PowerPC/PPCAnalyst.cpp index 433192b23f..ddfec1c328 100644 --- a/Source/Core/Core/Src/PowerPC/PPCAnalyst.cpp +++ b/Source/Core/Core/Src/PowerPC/PPCAnalyst.cpp @@ -559,9 +559,7 @@ u32 Flatten(u32 address, int *realsize, BlockStats *st, BlockRegStats *gpa, } else { - // Critical memory exception occurred (game over) - address = LR; - broken_block = true; + // ISI exception or other critical memory exception occurred (game over) break; } }