diff --git a/Source/Core/Core/DSP/DSPCore.cpp b/Source/Core/Core/DSP/DSPCore.cpp index 1582742458..712417ed37 100644 --- a/Source/Core/Core/DSP/DSPCore.cpp +++ b/Source/Core/Core/DSP/DSPCore.cpp @@ -314,28 +314,6 @@ void DSPCore_Step() step_event.Set(); } -void CompileCurrent() -{ - g_dsp_jit->Compile(g_dsp.pc); - - bool retry = true; - - while (retry) - { - retry = false; - for (u16 i = 0x0000; i < 0xffff; ++i) - { - if (!g_dsp_jit->m_unresolved_jumps[i].empty()) - { - u16 addrToCompile = g_dsp_jit->m_unresolved_jumps[i].front(); - g_dsp_jit->Compile(addrToCompile); - if (!g_dsp_jit->m_unresolved_jumps[i].empty()) - retry = true; - } - } - } -} - u16 DSPCore_ReadRegister(size_t reg) { switch (reg) diff --git a/Source/Core/Core/DSP/DSPCore.h b/Source/Core/Core/DSP/DSPCore.h index 0a2bb51159..219838996d 100644 --- a/Source/Core/Core/DSP/DSPCore.h +++ b/Source/Core/Core/DSP/DSPCore.h @@ -354,8 +354,6 @@ void DSPCore_SetExternalInterrupt(bool val); // sets a flag in the pending exception register. void DSPCore_SetException(u8 level); -void CompileCurrent(); - enum DSPCoreState { DSPCORE_STOP = 0, diff --git a/Source/Core/Core/DSP/Jit/DSPEmitter.cpp b/Source/Core/Core/DSP/Jit/DSPEmitter.cpp index 7bb5f43b63..ef73adf24f 100644 --- a/Source/Core/Core/DSP/Jit/DSPEmitter.cpp +++ b/Source/Core/Core/DSP/Jit/DSPEmitter.cpp @@ -352,6 +352,28 @@ void DSPEmitter::Compile(u16 start_addr) JMP(m_return_dispatcher, true); } +static void CompileCurrent() +{ + g_dsp_jit->Compile(g_dsp.pc); + + bool retry = true; + + while (retry) + { + retry = false; + for (u16 i = 0x0000; i < 0xffff; ++i) + { + if (!g_dsp_jit->m_unresolved_jumps[i].empty()) + { + const u16 address_to_compile = g_dsp_jit->m_unresolved_jumps[i].front(); + g_dsp_jit->Compile(address_to_compile); + if (!g_dsp_jit->m_unresolved_jumps[i].empty()) + retry = true; + } + } + } +} + const u8* DSPEmitter::CompileStub() { const u8* entryPoint = AlignCode16();