qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v11 13/29] target/i386: [tcg] Port to generic tr


From: Emilio G. Cota
Subject: Re: [Qemu-devel] [PATCH v11 13/29] target/i386: [tcg] Port to generic translation framework
Date: Thu, 29 Jun 2017 21:11:54 -0400
User-agent: Mutt/1.5.24 (2015-08-30)

On Wed, Jun 28, 2017 at 16:09:06 +0300, Lluís Vilanova wrote:
> Signed-off-by: Lluís Vilanova <address@hidden>
> ---

Reviewed-by: Emilio G. Cota <address@hidden>
Tested-by: Emilio G. Cota <address@hidden>

BTW have you tested icount mode?

Minor nits below.

>  target/i386/translate.c |  120 
> +++++++----------------------------------------
>  1 file changed, 18 insertions(+), 102 deletions(-)
> 
> diff --git a/target/i386/translate.c b/target/i386/translate.c
> index 3950fe95a4..295be26a95 100644
> --- a/target/i386/translate.c
> +++ b/target/i386/translate.c
(snip)
> @@ -8544,111 +8548,23 @@ static void i386_trblock_disas_log(const 
> DisasContextBase *dcbase,
>  
>  }
>  
> +static const TranslatorOps i386_trblock_ops = {
> +    .init_disas_context = i386_trblock_init_disas_context,
> +    .init_globals = i386_trblock_init_globals,
> +    .tb_start = i386_trblock_tb_start,
> +    .insn_start = i386_trblock_insn_start,
> +    .breakpoint_check = i386_trblock_breakpoint_check,
> +    .translate_insn = i386_trblock_translate_insn,
> +    .tb_stop = i386_trblock_tb_stop,
> +    .disas_log = i386_trblock_disas_log,
> +};

I like hard tabs here, which make things visually easier, e.g.:

> +static const TranslatorOps i386_trblock_ops = {
> +    .init_disas_context      = i386_trblock_init_disas_context,
> +    .init_globals            = i386_trblock_init_globals,

Don't know whether checkpatch likes it, but I do, and I see some
examples in the code base.

>  /* generate intermediate code for basic block 'tb'.  */
>  void gen_intermediate_code(CPUState *cpu, TranslationBlock *tb)
>  {
(snip)
> +    DisasContext dc1;
>  
> -    tb->size = dc->base.pc_next - dc->base.pc_first;
> -    tb->icount = num_insns;
> +    translate_block(&i386_trblock_ops, &dc1.base, cpu, tb);
>  }

I'd just call it dc, then.

                E.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]