Patchwork target-arm: Log instruction start in TCG code

login
register
mail settings
Submitter Peter Maydell
Date Jan. 18, 2011, 1:08 p.m.
Message ID <1295356120-27039-1-git-send-email-peter.maydell@linaro.org>
Download mbox | patch
Permalink /patch/79298/
State New
Headers show

Comments

Peter Maydell - Jan. 18, 2011, 1:08 p.m.
Add support for logging the start of instructions in TCG
code debug dumps for ARM targets.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
 target-arm/translate.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)
Edgar Iglesias - Jan. 18, 2011, 2:27 p.m.
On Tue, Jan 18, 2011 at 01:08:40PM +0000, Peter Maydell wrote:
> Add support for logging the start of instructions in TCG
> code debug dumps for ARM targets.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

Applied, thanks.


> ---
>  target-arm/translate.c |    4 ++++
>  1 files changed, 4 insertions(+), 0 deletions(-)
> 
> diff --git a/target-arm/translate.c b/target-arm/translate.c
> index 907d73a..c60cd18 100644
> --- a/target-arm/translate.c
> +++ b/target-arm/translate.c
> @@ -9199,6 +9199,10 @@ static inline void gen_intermediate_code_internal(CPUState *env,
>          if (num_insns + 1 == max_insns && (tb->cflags & CF_LAST_IO))
>              gen_io_start();
>  
> +        if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP))) {
> +            tcg_gen_debug_insn_start(dc->pc);
> +        }
> +
>          if (dc->thumb) {
>              disas_thumb_insn(env, dc);
>              if (dc->condexec_mask) {
> -- 
> 1.7.1
> 
>

Patch

diff --git a/target-arm/translate.c b/target-arm/translate.c
index 907d73a..c60cd18 100644
--- a/target-arm/translate.c
+++ b/target-arm/translate.c
@@ -9199,6 +9199,10 @@  static inline void gen_intermediate_code_internal(CPUState *env,
         if (num_insns + 1 == max_insns && (tb->cflags & CF_LAST_IO))
             gen_io_start();
 
+        if (unlikely(qemu_loglevel_mask(CPU_LOG_TB_OP))) {
+            tcg_gen_debug_insn_start(dc->pc);
+        }
+
         if (dc->thumb) {
             disas_thumb_insn(env, dc);
             if (dc->condexec_mask) {