[PATCH V2 15/22] perf tools: Add member to struct dso for an instruction cache

Adrian Hunter
2014-11-20T13:28:33Z

Add a member to struct dso that can be used by Instruction
Trace implementations to hold a cache for decoded instructions.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
---
tools/perf/util/dso.c | 2 ++
tools/perf/util/dso.h | 3 +++
2 files changed, 5 insertions(+)

diff --git a/tools/perf/util/dso.c b/tools/perf/util/dso.c
index 45be944..73e28ca 100644
--- a/tools/perf/util/dso.c
+++ b/tools/perf/util/dso.c
@@ -4,6 +4,7 @@
#include "symbol.h"
#include "dso.h"
#include "machine.h"
+#include "itrace.h"
#include "util.h"
#include "debug.h"

@@ -914,6 +915,7 @@ void dso__delete(struct dso *dso)
}

dso__data_close(dso);
+ itrace_cache__free(dso->itrace_cache);
dso_cache__free(&dso->data.cache);
dso__free_a2l(dso);
zfree(&dso->symsrc_filename);
diff --git a/tools/perf/util/dso.h b/tools/perf/util/dso.h
index 3782c82..c27c8fc 100644
--- a/tools/perf/util/dso.h
+++ b/tools/perf/util/dso.h
@@ -101,6 +101,8 @@ struct dsos {
struct rb_root root; /* rbtree root sorted by long name */
};

+struct itrace_cache;
+
struct dso {
struct list_head node;
struct rb_node rb_node; /* rbtree node sorted by long name */
@@ -130,6 +132,7 @@ struct dso {
u16 long_name_len;
u16 short_name_len;
void *dwfl; /* DWARF debug info */
+ struct itrace_cache *itrace_cache;

/* dso data file */
struct {
--
1.9.1