mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-09 10:34:58 -06:00
accel/tcg: Introduce translator_io_start
New wrapper around gen_io_start which takes care of the USE_ICOUNT check, as well as marking the DisasContext to end the TB. Remove exec/gen-icount.h. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
5623423359
commit
dfd1b81274
33 changed files with 117 additions and 269 deletions
|
@ -80,8 +80,6 @@ static TCGv cpu_reserve_val2;
|
|||
static TCGv cpu_fpscr;
|
||||
static TCGv_i32 cpu_access_type;
|
||||
|
||||
#include "exec/gen-icount.h"
|
||||
|
||||
void ppc_translate_init(void)
|
||||
{
|
||||
int i;
|
||||
|
@ -300,16 +298,7 @@ static void gen_exception_nip(DisasContext *ctx, uint32_t excp,
|
|||
|
||||
static void gen_icount_io_start(DisasContext *ctx)
|
||||
{
|
||||
if (tb_cflags(ctx->base.tb) & CF_USE_ICOUNT) {
|
||||
gen_io_start();
|
||||
/*
|
||||
* An I/O instruction must be last in the TB.
|
||||
* Chain to the next TB, and let the code from gen_tb_start
|
||||
* decide if we need to return to the main loop.
|
||||
* Doing this first also allows this value to be overridden.
|
||||
*/
|
||||
ctx->base.is_jmp = DISAS_TOO_MANY;
|
||||
}
|
||||
translator_io_start(&ctx->base);
|
||||
}
|
||||
|
||||
#if !defined(CONFIG_USER_ONLY)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue