perf annotate: Rename symbol__annotate() to symbol__disassemble()
This function will not annotate anything, it will just disassembly the given map->dso and symbol. It currently does this by parsing the output of 'objdump --disassemble', but this could conceivably be done using a library or an offshot of the kernel's instruction decoder (arch/x86/lib/inat.c), etc. Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Wang Nan <wangnan0@huawei.com> Link: http://lkml.kernel.org/n/tip-2xpfl4bfnrd6x584b390qok7@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Родитель
ce92834407
Коммит
5cb725a972
|
@ -128,7 +128,7 @@ static int perf_top__parse_source(struct perf_top *top, struct hist_entry *he)
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
err = symbol__annotate(sym, map, 0);
|
err = symbol__disassemble(sym, map, 0);
|
||||||
if (err == 0) {
|
if (err == 0) {
|
||||||
out_assign:
|
out_assign:
|
||||||
top->sym_filter_entry = he;
|
top->sym_filter_entry = he;
|
||||||
|
|
|
@ -1050,7 +1050,7 @@ int symbol__tui_annotate(struct symbol *sym, struct map *map,
|
||||||
(nr_pcnt - 1);
|
(nr_pcnt - 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (symbol__annotate(sym, map, sizeof_bdl) < 0) {
|
if (symbol__disassemble(sym, map, sizeof_bdl) < 0) {
|
||||||
ui__error("%s", ui_helpline__last_msg);
|
ui__error("%s", ui_helpline__last_msg);
|
||||||
goto out_free_offsets;
|
goto out_free_offsets;
|
||||||
}
|
}
|
||||||
|
|
|
@ -166,7 +166,7 @@ static int symbol__gtk_annotate(struct symbol *sym, struct map *map,
|
||||||
if (map->dso->annotate_warned)
|
if (map->dso->annotate_warned)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (symbol__annotate(sym, map, 0) < 0) {
|
if (symbol__disassemble(sym, map, 0) < 0) {
|
||||||
ui__error("%s", ui_helpline__current);
|
ui__error("%s", ui_helpline__current);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1123,7 +1123,7 @@ static void delete_last_nop(struct symbol *sym)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int symbol__annotate(struct symbol *sym, struct map *map, size_t privsize)
|
int symbol__disassemble(struct symbol *sym, struct map *map, size_t privsize)
|
||||||
{
|
{
|
||||||
struct dso *dso = map->dso;
|
struct dso *dso = map->dso;
|
||||||
char *filename = dso__build_id_filename(dso, NULL, 0);
|
char *filename = dso__build_id_filename(dso, NULL, 0);
|
||||||
|
@ -1694,7 +1694,7 @@ int symbol__tty_annotate(struct symbol *sym, struct map *map,
|
||||||
struct rb_root source_line = RB_ROOT;
|
struct rb_root source_line = RB_ROOT;
|
||||||
u64 len;
|
u64 len;
|
||||||
|
|
||||||
if (symbol__annotate(sym, map, 0) < 0)
|
if (symbol__disassemble(sym, map, 0) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
len = symbol__size(sym);
|
len = symbol__size(sym);
|
||||||
|
|
|
@ -155,7 +155,7 @@ int hist_entry__inc_addr_samples(struct hist_entry *he, int evidx, u64 addr);
|
||||||
int symbol__alloc_hist(struct symbol *sym);
|
int symbol__alloc_hist(struct symbol *sym);
|
||||||
void symbol__annotate_zero_histograms(struct symbol *sym);
|
void symbol__annotate_zero_histograms(struct symbol *sym);
|
||||||
|
|
||||||
int symbol__annotate(struct symbol *sym, struct map *map, size_t privsize);
|
int symbol__disassemble(struct symbol *sym, struct map *map, size_t privsize);
|
||||||
|
|
||||||
int symbol__annotate_init(struct map *map, struct symbol *sym);
|
int symbol__annotate_init(struct map *map, struct symbol *sym);
|
||||||
int symbol__annotate_printf(struct symbol *sym, struct map *map,
|
int symbol__annotate_printf(struct symbol *sym, struct map *map,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче