diff options
author | Roberto Agostino Vitillo <ravitillo@lbl.gov> | 2012-02-09 23:21:01 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2012-03-09 08:26:04 +0100 |
commit | b5387528f31d98acedf06e930554b563d87e2383 (patch) | |
tree | 0a8fff59cc7d1392d7adfbbc0f9beacc9ca6d20b /tools/perf/util/symbol.h | |
parent | d010b3326cf06b3406cdd88af16dcf4e4b6fec2e (diff) | |
download | lwn-b5387528f31d98acedf06e930554b563d87e2383.tar.gz lwn-b5387528f31d98acedf06e930554b563d87e2383.zip |
perf tools: Add code to support PERF_SAMPLE_BRANCH_STACK
This patch adds:
- ability to parse samples with PERF_SAMPLE_BRANCH_STACK
- sort on branches (dso_from, symbol_from, dso_to, symbol_to, mispredict)
- build histograms on branches
Signed-off-by: Roberto Agostino Vitillo <ravitillo@lbl.gov>
Signed-off-by: Stephane Eranian <eranian@google.com>
Cc: peterz@infradead.org
Cc: acme@redhat.com
Cc: robert.richter@amd.com
Cc: ming.m.lin@intel.com
Cc: andi@firstfloor.org
Cc: asharma@fb.com
Cc: vweaver1@eecs.utk.edu
Cc: khandual@linux.vnet.ibm.com
Cc: dsahern@gmail.com
Link: http://lkml.kernel.org/r/1328826068-11713-12-git-send-email-eranian@google.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'tools/perf/util/symbol.h')
-rw-r--r-- | tools/perf/util/symbol.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/perf/util/symbol.h b/tools/perf/util/symbol.h index 2a683d4fc918..5866ce6b9c02 100644 --- a/tools/perf/util/symbol.h +++ b/tools/perf/util/symbol.h @@ -5,6 +5,7 @@ #include <stdbool.h> #include <stdint.h> #include "map.h" +#include "../perf.h" #include <linux/list.h> #include <linux/rbtree.h> #include <stdio.h> @@ -120,6 +121,18 @@ struct map_symbol { bool has_children; }; +struct addr_map_symbol { + struct map *map; + struct symbol *sym; + u64 addr; +}; + +struct branch_info { + struct addr_map_symbol from; + struct addr_map_symbol to; + struct branch_flags flags; +}; + struct addr_location { struct thread *thread; struct map *map; |