accel/tcg: Handle gdb singlestep in cpu_tb_exec
Currently the change in cpu_tb_exec is masked by the debug exception being raised by the translators. But this allows us to remove that code. Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
6587b0c133
commit
c9460d75c5
@ -383,6 +383,17 @@ cpu_tb_exec(CPUState *cpu, TranslationBlock *itb, int *tb_exit)
|
|||||||
cc->set_pc(cpu, last_tb->pc);
|
cc->set_pc(cpu, last_tb->pc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If gdb single-step, and we haven't raised another exception,
|
||||||
|
* raise a debug exception. Single-step with another exception
|
||||||
|
* is handled in cpu_handle_exception.
|
||||||
|
*/
|
||||||
|
if (unlikely(cpu->singlestep_enabled) && cpu->exception_index == -1) {
|
||||||
|
cpu->exception_index = EXCP_DEBUG;
|
||||||
|
cpu_loop_exit(cpu);
|
||||||
|
}
|
||||||
|
|
||||||
return last_tb;
|
return last_tb;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user