Adds support for stepping in the ARMv7 JIT.
This commit is contained in:
parent
080883ad9e
commit
77da164fe2
|
@ -106,6 +106,18 @@ void JitArmAsmRoutineManager::Generate()
|
||||||
// IMPORTANT - We jump on negative, not carry!!!
|
// IMPORTANT - We jump on negative, not carry!!!
|
||||||
FixupBranch bail = B_CC(CC_MI);
|
FixupBranch bail = B_CC(CC_MI);
|
||||||
|
|
||||||
|
FixupBranch dbg_exit;
|
||||||
|
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bEnableDebugging)
|
||||||
|
{
|
||||||
|
MOVI2R(R0, (u32)PowerPC::GetStatePtr());
|
||||||
|
LDR(R0, R0);
|
||||||
|
TST(R0, PowerPC::CPU_STEPPING);
|
||||||
|
FixupBranch not_stepping = B_CC(CC_EQ);
|
||||||
|
// XXX: Check for breakpoints
|
||||||
|
dbg_exit = B();
|
||||||
|
SetJumpTarget(not_stepping);
|
||||||
|
}
|
||||||
|
|
||||||
SetJumpTarget(skipToRealDispatcher);
|
SetJumpTarget(skipToRealDispatcher);
|
||||||
dispatcherNoCheck = GetCodePtr();
|
dispatcherNoCheck = GetCodePtr();
|
||||||
|
|
||||||
|
@ -163,6 +175,8 @@ void JitArmAsmRoutineManager::Generate()
|
||||||
B(dispatcher);
|
B(dispatcher);
|
||||||
|
|
||||||
SetJumpTarget(Exit);
|
SetJumpTarget(Exit);
|
||||||
|
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bEnableDebugging)
|
||||||
|
SetJumpTarget(dbg_exit);
|
||||||
|
|
||||||
ADD(_SP, _SP, 4);
|
ADD(_SP, _SP, 4);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue