mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-21 09:49:01 +00:00
DSPEmitter: Fix infinite loop when an exception is present at the start of a block
This commit is contained in:
parent
bfb1eff30e
commit
dd76c0d1a0
1 changed files with 2 additions and 1 deletions
|
@ -243,6 +243,8 @@ void DSPEmitter::Compile(u16 start_addr)
|
|||
auto& analyzer = m_dsp_core.DSPState().GetAnalyzer();
|
||||
while (m_compile_pc < start_addr + MAX_BLOCK_SIZE)
|
||||
{
|
||||
m_block_size[start_addr]++;
|
||||
|
||||
if (analyzer.IsCheckExceptions(m_compile_pc))
|
||||
checkExceptions(m_block_size[start_addr]);
|
||||
|
||||
|
@ -251,7 +253,6 @@ void DSPEmitter::Compile(u16 start_addr)
|
|||
|
||||
EmitInstruction(inst);
|
||||
|
||||
m_block_size[start_addr]++;
|
||||
m_compile_pc += opcode->size;
|
||||
|
||||
// If the block was trying to link into itself, remove the link
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue