aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tools/perf/util/symbol.c14
-rw-r--r--tools/perf/util/symbol.h1
2 files changed, 15 insertions, 0 deletions
diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
index 1a367734e016..a08e1cbcbbbd 100644
--- a/tools/perf/util/symbol.c
+++ b/tools/perf/util/symbol.c
@@ -388,6 +388,20 @@ size_t dso__fprintf_buildid(struct dso *self, FILE *fp)
388 return fprintf(fp, "%s", sbuild_id); 388 return fprintf(fp, "%s", sbuild_id);
389} 389}
390 390
391size_t dso__fprintf_symbols_by_name(struct dso *self, enum map_type type, FILE *fp)
392{
393 size_t ret = 0;
394 struct rb_node *nd;
395 struct symbol_name_rb_node *pos;
396
397 for (nd = rb_first(&self->symbol_names[type]); nd; nd = rb_next(nd)) {
398 pos = rb_entry(nd, struct symbol_name_rb_node, rb_node);
399 fprintf(fp, "%s\n", pos->sym.name);
400 }
401
402 return ret;
403}
404
391size_t dso__fprintf(struct dso *self, enum map_type type, FILE *fp) 405size_t dso__fprintf(struct dso *self, enum map_type type, FILE *fp)
392{ 406{
393 struct rb_node *nd; 407 struct rb_node *nd;
diff --git a/tools/perf/util/symbol.h b/tools/perf/util/symbol.h
index b7a8da4af5a0..0a2c460b6d81 100644
--- a/tools/perf/util/symbol.h
+++ b/tools/perf/util/symbol.h
@@ -181,6 +181,7 @@ size_t machines__fprintf_dsos(struct rb_root *self, FILE *fp);
181size_t machines__fprintf_dsos_buildid(struct rb_root *self, FILE *fp, bool with_hits); 181size_t machines__fprintf_dsos_buildid(struct rb_root *self, FILE *fp, bool with_hits);
182 182
183size_t dso__fprintf_buildid(struct dso *self, FILE *fp); 183size_t dso__fprintf_buildid(struct dso *self, FILE *fp);
184size_t dso__fprintf_symbols_by_name(struct dso *self, enum map_type type, FILE *fp);
184size_t dso__fprintf(struct dso *self, enum map_type type, FILE *fp); 185size_t dso__fprintf(struct dso *self, enum map_type type, FILE *fp);
185 186
186enum dso_origin { 187enum dso_origin {