mirror of https://github.com/PCSX2/pcsx2.git
EE REC: Prevent crash when DI instruction is in branch delay slot
This commit is contained in:
parent
a782e03ebf
commit
54f47572af
|
@ -117,6 +117,7 @@ void recDI()
|
||||||
// Fixes booting issues in the following games:
|
// Fixes booting issues in the following games:
|
||||||
// Jak X, Namco 50th anniversary, Spongebob the Movie, Spongebob Battle for Bikini Bottom,
|
// Jak X, Namco 50th anniversary, Spongebob the Movie, Spongebob Battle for Bikini Bottom,
|
||||||
// The Incredibles, The Incredibles rize of the underminer, Soukou kihei armodyne, Garfield Saving Arlene, Tales of Fandom Vol. 2.
|
// The Incredibles, The Incredibles rize of the underminer, Soukou kihei armodyne, Garfield Saving Arlene, Tales of Fandom Vol. 2.
|
||||||
|
if(!g_recompilingDelaySlot)
|
||||||
recompileNextInstruction(0); // DI execution is delayed by one instruction
|
recompileNextInstruction(0); // DI execution is delayed by one instruction
|
||||||
|
|
||||||
xMOV(eax, ptr[&cpuRegs.CP0.n.Status]);
|
xMOV(eax, ptr[&cpuRegs.CP0.n.Status]);
|
||||||
|
|
|
@ -61,6 +61,7 @@ extern u32 s_nBlockCycles; // cycles of current block recompiling
|
||||||
// Used to clear recompiled code blocks during memory/dma write operations.
|
// Used to clear recompiled code blocks during memory/dma write operations.
|
||||||
u32 recClearMem(u32 pc);
|
u32 recClearMem(u32 pc);
|
||||||
u32 REC_CLEARM( u32 mem );
|
u32 REC_CLEARM( u32 mem );
|
||||||
|
extern bool g_recompilingDelaySlot;
|
||||||
|
|
||||||
// used when processing branches
|
// used when processing branches
|
||||||
void SaveBranchState();
|
void SaveBranchState();
|
||||||
|
|
Loading…
Reference in New Issue