[PATCH 1/3] perf annotate-data: Fix missing constant copy
From: Namhyung Kim
Date: Wed Aug 21 2024 - 02:54:33 EST
I found it missed to copy the immediate constant when it moves the
register value. This could result in a wrong type inference since the
address for the per-cpu variable would be 0 always.
Fixes: eb9190afaed6 ("perf annotate-data: Handle ADD instructions")
Signed-off-by: Namhyung Kim <namhyung@xxxxxxxxxx>
---
tools/perf/arch/x86/annotate/instructions.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/perf/arch/x86/annotate/instructions.c b/tools/perf/arch/x86/annotate/instructions.c
index 7b7d462c6c6b..88b5bcf2116f 100644
--- a/tools/perf/arch/x86/annotate/instructions.c
+++ b/tools/perf/arch/x86/annotate/instructions.c
@@ -382,6 +382,7 @@ static void update_insn_state_x86(struct type_state *state,
tsr->type = state->regs[src->reg1].type;
tsr->kind = state->regs[src->reg1].kind;
+ tsr->imm_value = state->regs[src->reg1].imm_value;
tsr->ok = true;
pr_debug_dtp("mov [%x] reg%d -> reg%d",
--
2.46.0.184.g6999bdac58-goog