summaryrefslogtreecommitdiffstats
path: root/tools/perf/util/intel-pt-decoder/intel-pt-decoder.h
diff options
context:
space:
mode:
authorAndi Kleen2016-10-07 15:42:26 +0200
committerArnaldo Carvalho de Melo2016-10-24 15:31:32 +0200
commitfaaa87680b25d9ec91a308d4c957f5b9305c7b59 (patch)
treee95dcf6e9a7de1be184512674152bbc4263adb90 /tools/perf/util/intel-pt-decoder/intel-pt-decoder.h
parentperf intel-pt/bts: Tidy instruction buffer size usage (diff)
downloadkernel-qcow2-linux-faaa87680b25d9ec91a308d4c957f5b9305c7b59.tar.gz
kernel-qcow2-linux-faaa87680b25d9ec91a308d4c957f5b9305c7b59.tar.xz
kernel-qcow2-linux-faaa87680b25d9ec91a308d4c957f5b9305c7b59.zip
perf intel-pt/bts: Report instruction bytes and length in sample
Change Intel PT and BTS to pass up the length and the instruction bytes of the decoded or sampled instruction in the perf sample. The decoder already knows this information, we just need to pass it up. Since it is only a couple of movs it is not very expensive. Handle instruction cache too. Make sure ilen is always initialized. Used in the next patch. [Adrian: re-base on top (and adjust for) instruction buffer size tidy-up] [Adrian: add BTS support and adjust commit message accordingly] Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Link: http://lkml.kernel.org/r/1475847747-30994-3-git-send-email-adrian.hunter@intel.com Signed-off-by: Andi Kleen <ak@linux.intel.com> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/intel-pt-decoder/intel-pt-decoder.h')
-rw-r--r--tools/perf/util/intel-pt-decoder/intel-pt-decoder.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.h b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.h
index 89399985fa4d..e90619a43c0c 100644
--- a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.h
+++ b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.h
@@ -66,6 +66,7 @@ struct intel_pt_state {
uint32_t flags;
enum intel_pt_insn_op insn_op;
int insn_len;
+ char insn[INTEL_PT_INSN_BUF_SZ];
};
struct intel_pt_insn;