All of lore.kernel.org
 help / color / mirror / Atom feed
From: Aurelien Jarno <aurelien@aurel32.net>
To: Richard Henderson <rth@twiddle.net>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 1/7] Emit debug_insn for CPU_LOG_TB_OP_OPT as well.
Date: Wed, 26 Sep 2012 00:44:39 +0200	[thread overview]
Message-ID: <20120925224439.GA23819@ohm.aurel32.net> (raw)
In-Reply-To: <1348523753-25083-2-git-send-email-rth@twiddle.net>

On Mon, Sep 24, 2012 at 02:55:47PM -0700, Richard Henderson wrote:
> For all targets that currently call tcg_gen_debug_insn_start,
> add CPU_LOG_TB_OP_OPT to the condition that gates it.
> 
> This is useful for comparing optimization dumps, when the
> pre-optimization dump is merely noise.
> 
> Signed-off-by: Richard Henderson <rth@twiddle.net>
> ---
>  target-alpha/translate.c      | 2 +-
>  target-arm/translate.c        | 2 +-
>  target-cris/translate.c       | 3 ++-
>  target-i386/translate.c       | 3 ++-
>  target-lm32/translate.c       | 2 +-
>  target-microblaze/translate.c | 3 ++-
>  target-mips/translate.c       | 3 ++-
>  target-openrisc/translate.c   | 2 +-
>  target-ppc/translate.c        | 3 ++-
>  target-sh4/translate.c        | 2 +-
>  target-sparc/translate.c      | 3 ++-
>  target-xtensa/translate.c     | 2 +-
>  12 files changed, 18 insertions(+), 12 deletions(-)
> 
> diff --git a/target-alpha/translate.c b/target-alpha/translate.c
> index 4a9011a..4194d6e 100644
> --- a/target-alpha/translate.c
> +++ b/target-alpha/translate.c
> @@ -3421,7 +3421,7 @@ static inline void gen_intermediate_code_internal(CPUAlphaState *env,
>          insn = cpu_ldl_code(env, ctx.pc);
>          num_insns++;
>  
> -	if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP))) {
> +	if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>              tcg_gen_debug_insn_start(ctx.pc);
>          }
>  
> diff --git a/target-arm/translate.c b/target-arm/translate.c
> index f4b447a..5fded49 100644
> --- a/target-arm/translate.c
> +++ b/target-arm/translate.c
> @@ -9816,7 +9816,7 @@ static inline void gen_intermediate_code_internal(CPUARMState *env,
>          if (num_insns + 1 == max_insns && (tb->cflags & CF_LAST_IO))
>              gen_io_start();
>  
> -        if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP))) {
> +        if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>              tcg_gen_debug_insn_start(dc->pc);
>          }
>  
> diff --git a/target-cris/translate.c b/target-cris/translate.c
> index 19144b5..755de65 100644
> --- a/target-cris/translate.c
> +++ b/target-cris/translate.c
> @@ -3074,8 +3074,9 @@ static unsigned int crisv32_decoder(CPUCRISState *env, DisasContext *dc)
>  	int insn_len = 2;
>  	int i;
>  
> -	if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP)))
> +	if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>  		tcg_gen_debug_insn_start(dc->pc);
> +        }
>  
>  	/* Load a halfword onto the instruction register.  */
>          dc->ir = cris_fetch(env, dc, dc->pc, 2, 0);
> diff --git a/target-i386/translate.c b/target-i386/translate.c
> index eb0cabc..323869d 100644
> --- a/target-i386/translate.c
> +++ b/target-i386/translate.c
> @@ -4202,8 +4202,9 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start)
>      target_ulong next_eip, tval;
>      int rex_w, rex_r;
>  
> -    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP)))
> +    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>          tcg_gen_debug_insn_start(pc_start);
> +    }
>      s->pc = pc_start;
>      prefixes = 0;
>      aflag = s->code32;
> diff --git a/target-lm32/translate.c b/target-lm32/translate.c
> index 5f6dcba..77c2866 100644
> --- a/target-lm32/translate.c
> +++ b/target-lm32/translate.c
> @@ -942,7 +942,7 @@ static const DecoderInfo decinfo[] = {
>  
>  static inline void decode(DisasContext *dc, uint32_t ir)
>  {
> -    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP))) {
> +    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>          tcg_gen_debug_insn_start(dc->pc);
>      }
>  
> diff --git a/target-microblaze/translate.c b/target-microblaze/translate.c
> index 9c7d77f..7d864b1 100644
> --- a/target-microblaze/translate.c
> +++ b/target-microblaze/translate.c
> @@ -1664,8 +1664,9 @@ static inline void decode(DisasContext *dc, uint32_t ir)
>  {
>      int i;
>  
> -    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP)))
> +    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>          tcg_gen_debug_insn_start(dc->pc);
> +    }
>  
>      dc->ir = ir;
>      LOG_DIS("%8.8x\t", dc->ir);
> diff --git a/target-mips/translate.c b/target-mips/translate.c
> index fa79d49..454e5cc 100644
> --- a/target-mips/translate.c
> +++ b/target-mips/translate.c
> @@ -12124,8 +12124,9 @@ static void decode_opc (CPUMIPSState *env, DisasContext *ctx, int *is_branch)
>          gen_set_label(l1);
>      }
>  
> -    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP)))
> +    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>          tcg_gen_debug_insn_start(ctx->pc);
> +    }
>  
>      op = MASK_OP_MAJOR(ctx->opcode);
>      rs = (ctx->opcode >> 21) & 0x1f;
> diff --git a/target-openrisc/translate.c b/target-openrisc/translate.c
> index 325ba09..e2cad3a 100644
> --- a/target-openrisc/translate.c
> +++ b/target-openrisc/translate.c
> @@ -1715,7 +1715,7 @@ static inline void gen_intermediate_code_internal(OpenRISCCPU *cpu,
>              gen_opc_icount[k] = num_insns;
>          }
>  
> -        if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP))) {
> +        if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>              tcg_gen_debug_insn_start(dc->pc);
>          }
>  
> diff --git a/target-ppc/translate.c b/target-ppc/translate.c
> index ac915cc..1042268 100644
> --- a/target-ppc/translate.c
> +++ b/target-ppc/translate.c
> @@ -9690,8 +9690,9 @@ static inline void gen_intermediate_code_internal(CPUPPCState *env,
>          LOG_DISAS("translate opcode %08x (%02x %02x %02x) (%s)\n",
>                      ctx.opcode, opc1(ctx.opcode), opc2(ctx.opcode),
>                      opc3(ctx.opcode), little_endian ? "little" : "big");
> -        if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP)))
> +        if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>              tcg_gen_debug_insn_start(ctx.nip);
> +        }
>          ctx.nip += 4;
>          table = env->opcodes;
>          num_insns++;
> diff --git a/target-sh4/translate.c b/target-sh4/translate.c
> index 0fa83ca..9d955eb 100644
> --- a/target-sh4/translate.c
> +++ b/target-sh4/translate.c
> @@ -1924,7 +1924,7 @@ static void decode_opc(DisasContext * ctx)
>  {
>      uint32_t old_flags = ctx->flags;
>  
> -    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP))) {
> +    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>          tcg_gen_debug_insn_start(ctx->pc);
>      }
>  
> diff --git a/target-sparc/translate.c b/target-sparc/translate.c
> index b95f91c..e5ebedf 100644
> --- a/target-sparc/translate.c
> +++ b/target-sparc/translate.c
> @@ -2394,8 +2394,9 @@ static void disas_sparc_insn(DisasContext * dc, unsigned int insn)
>      TCGv_i64 cpu_src1_64, cpu_src2_64, cpu_dst_64;
>      target_long simm;
>  
> -    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP)))
> +    if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>          tcg_gen_debug_insn_start(dc->pc);
> +    }
>  
>      opc = GET_FIELD(insn, 0, 1);
>  
> diff --git a/target-xtensa/translate.c b/target-xtensa/translate.c
> index ba3ffcb..b9acd70 100644
> --- a/target-xtensa/translate.c
> +++ b/target-xtensa/translate.c
> @@ -2923,7 +2923,7 @@ static void gen_intermediate_code_internal(
>              gen_opc_icount[lj] = insn_count;
>          }
>  
> -        if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP))) {
> +        if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP | CPU_LOG_TB_OP_OPT))) {
>              tcg_gen_debug_insn_start(dc.pc);
>          }
>  
> -- 
> 1.7.11.4
> 

Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

  reply	other threads:[~2012-09-25 22:44 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-24 21:55 [Qemu-devel] [PATCH 0/7] Tidy -d op_opt,int,cpu Richard Henderson
2012-09-24 21:55 ` [Qemu-devel] [PATCH 1/7] Emit debug_insn for CPU_LOG_TB_OP_OPT as well Richard Henderson
2012-09-25 22:44   ` Aurelien Jarno [this message]
2012-09-24 21:55 ` [Qemu-devel] [PATCH 2/7] target-m68k: Call tcg_gen_debug_insn_start Richard Henderson
2012-09-25 22:44   ` Aurelien Jarno
2012-09-24 21:55 ` [Qemu-devel] [PATCH 3/7] target-s390x: " Richard Henderson
2012-09-25 22:44   ` Aurelien Jarno
2012-09-24 21:55 ` [Qemu-devel] [PATCH 4/7] target-unicore32: " Richard Henderson
2012-09-25 22:45   ` Aurelien Jarno
2012-09-24 21:55 ` [Qemu-devel] [PATCH 5/7] target-s390x: Use CPU_LOG_INT Richard Henderson
2012-09-25 22:45   ` Aurelien Jarno
2012-09-24 21:55 ` [Qemu-devel] [PATCH 6/7] target-s390x: Avoid double CPU_LOG_TB_CPU Richard Henderson
2012-09-25 22:45   ` Aurelien Jarno
2012-09-24 21:55 ` [Qemu-devel] [PATCH 7/7] target-s390x: Tidy cpu_dump_state Richard Henderson
2012-09-25 22:45   ` Aurelien Jarno
2012-09-25  7:40 ` [Qemu-devel] [PATCH 0/7] Tidy -d op_opt,int,cpu Alexander Graf
2012-09-27 19:47 ` Aurelien Jarno

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120925224439.GA23819@ohm.aurel32.net \
    --to=aurelien@aurel32.net \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.