[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 1/7] trace: Add event "guest_bbl_before"
From: |
Richard Henderson |
Subject: |
Re: [Qemu-devel] [PATCH 1/7] trace: Add event "guest_bbl_before" |
Date: |
Wed, 13 Sep 2017 09:59:09 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 |
On 09/10/2017 09:15 AM, Lluís Vilanova wrote:
> Signed-off-by: Lluís Vilanova <address@hidden>
> ---
> accel/tcg/translator.c | 6 ++++++
> trace-events | 11 +++++++++++
> 2 files changed, 17 insertions(+)
>
> diff --git a/accel/tcg/translator.c b/accel/tcg/translator.c
> index afa3af478a..91b3b0da32 100644
> --- a/accel/tcg/translator.c
> +++ b/accel/tcg/translator.c
> @@ -13,6 +13,7 @@
> #include "cpu.h"
> #include "tcg/tcg.h"
> #include "tcg/tcg-op.h"
> +#include "trace-tcg.h"
> #include "exec/exec-all.h"
> #include "exec/gen-icount.h"
> #include "exec/log.h"
> @@ -91,6 +92,11 @@ void translator_loop(const TranslatorOps *ops,
> DisasContextBase *db,
> }
> }
>
> + /* Tracing before */
> + if (db->num_insns == 1) {
> + trace_guest_bbl_before_tcg(cpu, tcg_ctx.tcg_env, db->pc_first);
> + }
Why not place this before the loop, so that you don't
have to check num_insns == 1?
> +vcpu tcg guest_bbl_before(uint64_t vaddr) "vaddr=0x%016"PRIx64,
> "vaddr=0x%016"PRIx64
You're really going to print both ENV and PC tagged with "vaddr"?
That just seems confusing.
Also, terminology. A "basic block" ("bb" by preference, not "bbl"), has a
specific meaning (https://en.wikipedia.org/wiki/Basic_block). What we're
generating here is a TranslationBlock (which may consist of many basic blocks),
and oft contracted within the source as "tb".
r~