Merge pull request #12464 from JosJuice/jit-isi-membase
Jit: Reload RMEM/MEM_REG on ISI exception
This commit is contained in:
commit
6e3a2324a4
|
@ -221,6 +221,9 @@ void Jit64AsmRoutineManager::Generate()
|
|||
ABI_CallFunction(JitTrampoline);
|
||||
ABI_PopRegistersAndAdjustStack({}, 0);
|
||||
|
||||
// If jitting triggered an ISI exception, MSR.DR may have changed
|
||||
MOV(64, R(RMEM), PPCSTATE(mem_ptr));
|
||||
|
||||
JMP(dispatcher_no_check, Jump::Near);
|
||||
|
||||
SetJumpTarget(bail);
|
||||
|
|
|
@ -177,7 +177,12 @@ void JitArm64::GenerateAsm()
|
|||
// Call JIT
|
||||
ResetStack();
|
||||
ABI_CallFunction(&JitTrampoline, this, DISPATCHER_PC);
|
||||
|
||||
LDR(IndexType::Unsigned, DISPATCHER_PC, PPC_REG, PPCSTATE_OFF(pc));
|
||||
|
||||
// If jitting triggered an ISI exception, MSR.DR may have changed
|
||||
EmitUpdateMembase();
|
||||
|
||||
B(dispatcher_no_check);
|
||||
|
||||
SetJumpTarget(bail);
|
||||
|
|
Loading…
Reference in New Issue