| /tools/perf/util/ |
| A D | addr_location.c | 9 al->thread = NULL; in addr_location__init() 10 al->maps = NULL; in addr_location__init() 11 al->map = NULL; in addr_location__init() 12 al->sym = NULL; in addr_location__init() 13 al->srcline = NULL; in addr_location__init() 14 al->addr = 0; in addr_location__init() 15 al->level = 0; in addr_location__init() 16 al->filtered = 0; in addr_location__init() 17 al->cpumode = 0; in addr_location__init() 18 al->cpu = 0; in addr_location__init() [all …]
|
| A D | event.c | 555 if (al.map && map__load(al.map) >= 0) { in perf_event__fprintf_text_poke() 556 al.addr = map__map_ip(al.map, tp->addr); in perf_event__fprintf_text_poke() 557 al.sym = map__find_symbol(al.map, al.addr); in perf_event__fprintf_text_poke() 687 al->map = maps__find(maps, al->addr); in thread__find_map() 695 al->addr = map__map_ip(al->map, al->addr); in thread__find_map() 724 al->sym = map__find_symbol(al->map, al->addr); in thread__find_symbol() 733 al->sym = map__find_symbol(al->map, al->addr); in thread__find_symbol_fb() 769 dso = al->map ? map__dso(al->map) : NULL; in machine__resolve() 790 al->socket = env->cpu[al->cpu].socket_id; in machine__resolve() 814 al->sym = map__find_symbol(al->map, al->addr); in machine__resolve() [all …]
|
| A D | dlfilter.c | 75 struct addr_location *al = d->al; in get_al() local 79 return al; in get_al() 86 return al ? al->thread : NULL; in get_thread() 103 if (!al) in dlfilter__resolve_ip() 191 d_al_p->priv = memdup(&al, sizeof(al)); in dlfilter__resolve_address() 212 free(al); in dlfilter__al_cleanup() 228 struct addr_location *al = d->al; in dlfilter__insn() local 264 if (!al) in dlfilter__srcline() 309 if (!al) in dlfilter__object_code() 312 if (al->map && ip >= map__start(al->map) && ip < map__end(al->map) && in dlfilter__object_code() [all …]
|
| A D | symbol_fprintf.c | 20 const struct addr_location *al, in __symbol__fprintf_symname_offs() argument 29 if (al && print_offsets) { in __symbol__fprintf_symname_offs() 30 if (al->addr < sym->end) in __symbol__fprintf_symname_offs() 31 offset = al->addr - sym->start; in __symbol__fprintf_symname_offs() 33 offset = al->addr - map__start(al->map) - sym->start; in __symbol__fprintf_symname_offs() 37 } else if (al && unknown_as_addr) in __symbol__fprintf_symname_offs() 38 return fprintf(fp, "[%#" PRIx64 "]", al->addr); in __symbol__fprintf_symname_offs() 44 const struct addr_location *al, in symbol__fprintf_symname_offs() argument 47 return __symbol__fprintf_symname_offs(sym, al, false, true, fp); in symbol__fprintf_symname_offs() 51 const struct addr_location *al, in __symbol__fprintf_symname() argument [all …]
|
| A D | unwind-libdw.c | 56 if (al->map) in __report_module() 57 dso = map__dso(al->map); in __report_module() 72 base = map__start(al->map) - map__pgoff(al->map); in __report_module() 113 struct addr_location al; in report_module() local 130 struct addr_location al; in entry() local 139 e->ms.maps = al.maps; in entry() 140 e->ms.map = al.map; in entry() 141 e->ms.sym = al.sym; in entry() 144 al.sym ? al.sym->name : "''", in entry() 146 al.map ? map__map_ip(al.map, ip) : (u64) 0); in entry() [all …]
|
| A D | annotate.c | 435 return al; in annotated_source__get_line() 492 if (al->cycles && al->cycles->ipc == 0.0) { in annotation__count_and_fill() 531 if (al && al->cycles == NULL) { in annotation__compute_ipc() 532 al->cycles = zalloc(sizeof(*al->cycles)); in annotation__compute_ipc() 570 if (al) { in annotation__compute_ipc() 899 al->line_nr, al->line); in annotation_line__print() 1957 if (al->cycles->ipc == 0.0 && al->cycles->avg == 0) in __annotation_line__write() 1994 if (al->cycles && al->cycles->ipc) in __annotation_line__write() 2002 if (al->cycles && al->cycles->avg) in __annotation_line__write() 2018 al->cycles->avg, al->cycles->min, in __annotation_line__write() [all …]
|
| A D | db-export.c | 181 if (al->map) { in db_ids_from_al() 189 if (!al->sym) { in db_ids_from_al() 190 al->sym = symbol__new(al->addr, 0, 0, 0, "unknown"); in db_ids_from_al() 191 if (al->sym) in db_ids_from_al() 195 if (al->sym) { in db_ids_from_al() 202 *offset = al->addr - al->sym->start; in db_ids_from_al() 255 al.sym = node->ms.sym; in call_path_from_sample() 258 al.addr = node->ip; in call_path_from_sample() 261 if (al.map && !al.sym) in call_path_from_sample() 262 al.sym = dso__find_symbol(map__dso(al.map), al.addr); in call_path_from_sample() [all …]
|
| A D | print_insn.c | 87 struct addr_location al; in print_insn_x86() local 93 addr_location__init(&al); in print_insn_x86() 95 thread__find_symbol(thread, cpumode, op->imm, &al)) { in print_insn_x86() 97 printed += symbol__fprintf_symname_offs(al.sym, &al, fp); in print_insn_x86() 100 addr_location__exit(&al); in print_insn_x86() 103 addr_location__exit(&al); in print_insn_x86() 110 static bool is64bitip(struct machine *machine, struct addr_location *al) in is64bitip() argument 112 const struct dso *dso = al->map ? map__dso(al->map) : NULL; in is64bitip() 156 struct addr_location *al) in sample__fprintf_insn_asm() argument 158 bool is64bit = is64bitip(machine, al); in sample__fprintf_insn_asm() [all …]
|
| A D | data-convert-json.c | 122 u64 ip, struct addr_location *al) in output_sample_callchain_entry() argument 130 if (al && al->sym && al->sym->namelen) { in output_sample_callchain_entry() 131 struct dso *dso = al->map ? map__dso(al->map) : NULL; in output_sample_callchain_entry() 157 struct addr_location al; in process_sample_event() local 161 addr_location__init(&al); in process_sample_event() 162 if (machine__resolve(machine, &al, sample) < 0) { in process_sample_event() 164 addr_location__exit(&al); in process_sample_event() 182 else if (thread__cpu(al.thread) >= 0) in process_sample_event() 222 ok = thread__find_symbol(al.thread, cpumode, ip, &tal); in process_sample_event() 227 output_sample_callchain_entry(tool, sample->ip, &al); in process_sample_event() [all …]
|
| A D | dlfilter.h | 35 struct addr_location *al; member 63 struct addr_location *al, 74 struct addr_location *al, in dlfilter__filter_event() argument 79 return dlfilter__do_filter_event(d, event, sample, evsel, machine, al, addr_al, false); in dlfilter__filter_event() 87 struct addr_location *al, in dlfilter__filter_event_early() argument 92 return dlfilter__do_filter_event(d, event, sample, evsel, machine, al, addr_al, true); in dlfilter__filter_event_early()
|
| A D | debug.c | 337 struct addr_location al; in __dump_stack() local 341 addr_location__init(&al); in __dump_stack() 342 if (thread && thread__find_map(thread, PERF_RECORD_MISC_USER, addr, &al)) { in __dump_stack() 343 al.sym = map__find_symbol(al.map, al.addr); in __dump_stack() 344 if (al.sym) { in __dump_stack() 345 fprintf(file, " #%zd %p in %s ", i, stackdump[i], al.sym->name); in __dump_stack() 352 map__fprintf_srcline(al.map, al.addr, "", file); in __dump_stack() 354 addr_location__exit(&al); in __dump_stack()
|
| A D | evsel_fprintf.c | 209 int sample__fprintf_sym(struct perf_sample *sample, struct addr_location *al, in sample__fprintf_sym() argument 234 printed += __symbol__fprintf_symname_offs(al->sym, al, in sample__fprintf_sym() 238 printed += __symbol__fprintf_symname(al->sym, al, in sample__fprintf_sym() 244 printed += map__fprintf_dsoname_dsoff(al->map, print_dsoff, al->addr, fp); in sample__fprintf_sym() 247 printed += map__fprintf_srcline(al->map, al->addr, "\n ", fp); in sample__fprintf_sym()
|
| A D | hist.c | 816 .map = al->map, in __hists__add_entry() 817 .sym = al->sym, in __hists__add_entry() 821 .cpu = al->cpu, in __hists__add_entry() 823 .ip = al->addr, in __hists__add_entry() 896 .map = al->map, in hists__add_entry_block() 897 .sym = al->sym, in hists__add_entry_block() 1232 .cpu = al->cpu, in iter_add_next_cumulative_entry() 1235 .ip = al->addr, in iter_add_next_cumulative_entry() 1238 .map = al->map, in iter_add_next_cumulative_entry() 1239 .sym = al->sym, in iter_add_next_cumulative_entry() [all …]
|
| A D | addr_location.h | 30 void addr_location__init(struct addr_location *al); 31 void addr_location__exit(struct addr_location *al);
|
| /tools/perf/ui/browsers/ |
| A D | annotate.c | 358 return al; in annotate_browser__find_new_asm_line() 378 it = al; in annotate_browser__find_next_asm_line() 466 al = annotate_browser__find_next_asm_line(browser, al); in annotate_browser__toggle_source() 467 if (!al) { in annotate_browser__toggle_source() 495 struct annotation_line *al = &cursor->al; in annotate_browser__show_full_location() local 626 if (al->line && strstr(al->line, s) != NULL) in annotate_browser__find_string() 627 return al; in annotate_browser__find_string() 639 if (al == NULL) { in __annotate_browser__search() 663 if (al->line && strstr(al->line, s) != NULL) in annotate_browser__find_string_reverse() 664 return al; in annotate_browser__find_string_reverse() [all …]
|
| /tools/perf/dlfilters/ |
| A D | dlfilter-test-api-v2.c | 246 const struct perf_dlfilter_al *al; in check_al() local 248 al = perf_dlfilter_fns.resolve_ip(ctx); in check_al() 249 if (!al) in check_al() 252 CHECK(al->sym && !strcmp("foo", al->sym)); in check_al() 253 CHECK(!al->symoff); in check_al() 275 const struct perf_dlfilter_al *al; in check_address_al() local 277 al = perf_dlfilter_fns.resolve_ip(ctx); in check_address_al() 278 if (!al) in check_address_al() 285 CHECK(address_al.sym && al->sym); in check_address_al() 287 CHECK(address_al.addr == al->addr); in check_address_al() [all …]
|
| A D | dlfilter-test-api-v0.c | 231 const struct perf_dlfilter_al *al; in check_al() local 233 al = perf_dlfilter_fns.resolve_ip(ctx); in check_al() 234 if (!al) in check_al() 237 CHECK(al->sym && !strcmp("foo", al->sym)); in check_al() 238 CHECK(!al->symoff); in check_al() 260 const struct perf_dlfilter_al *al; in check_address_al() local 262 al = perf_dlfilter_fns.resolve_ip(ctx); in check_address_al() 263 if (!al) in check_address_al() 270 CHECK(address_al.sym && al->sym); in check_address_al() 272 CHECK(address_al.addr == al->addr); in check_address_al() [all …]
|
| /tools/perf/arch/powerpc/util/ |
| A D | skip-callchain-idx.c | 244 struct addr_location al; in arch_skip_callchain_idx() local 253 addr_location__init(&al); in arch_skip_callchain_idx() 256 thread__find_symbol(thread, PERF_RECORD_MISC_USER, ip, &al); in arch_skip_callchain_idx() 258 if (al.map) in arch_skip_callchain_idx() 259 dso = map__dso(al.map); in arch_skip_callchain_idx() 263 addr_location__exit(&al); in arch_skip_callchain_idx() 267 rc = check_return_addr(dso, map__start(al.map), ip); in arch_skip_callchain_idx() 270 dso__long_name(dso), al.sym->name, ip, rc); in arch_skip_callchain_idx() 285 addr_location__exit(&al); in arch_skip_callchain_idx()
|
| /tools/perf/tests/ |
| A D | mmap-thread-lookup.c | 190 struct addr_location al; in mmap_events() local 193 addr_location__init(&al); in mmap_events() 199 (unsigned long) (td->map + 1), &al); in mmap_events() 203 if (!al.map) { in mmap_events() 206 addr_location__exit(&al); in mmap_events() 210 pr_debug("map %p, addr %" PRIx64 "\n", al.map, map__start(al.map)); in mmap_events() 211 addr_location__exit(&al); in mmap_events()
|
| A D | hists_link.c | 69 struct addr_location al; in add_hist_entries() local 74 addr_location__init(&al); in add_hist_entries() 89 if (machine__resolve(machine, &al, &sample) < 0) in add_hist_entries() 92 he = hists__add_entry(hists, &al, NULL, in add_hist_entries() 101 fake_common_samples[k].map = map__get(al.map); in add_hist_entries() 102 fake_common_samples[k].sym = al.sym; in add_hist_entries() 112 he = hists__add_entry(hists, &al, NULL, in add_hist_entries() 121 fake_samples[i][k].map = map__get(al.map); in add_hist_entries() 122 fake_samples[i][k].sym = al.sym; in add_hist_entries() 127 addr_location__exit(&al); in add_hist_entries() [all …]
|
| A D | hists_filter.c | 53 struct addr_location al; in add_hist_entries() local 57 addr_location__init(&al); in add_hist_entries() 83 if (machine__resolve(machine, &al, &sample) < 0) in add_hist_entries() 86 al.socket = fake_samples[i].socket; in add_hist_entries() 87 if (hist_entry_iter__add(&iter, &al, in add_hist_entries() 93 fake_samples[i].thread = thread__get(al.thread); in add_hist_entries() 95 fake_samples[i].map = map__get(al.map); in add_hist_entries() 96 fake_samples[i].sym = al.sym; in add_hist_entries() 99 addr_location__exit(&al); in add_hist_entries() 104 addr_location__exit(&al); in add_hist_entries()
|
| A D | code-reading.c | 321 struct addr_location al; in read_object_code() local 334 addr_location__init(&al); in read_object_code() 335 if (!thread__find_map(thread, cpumode, addr, &al) || !map__dso(al.map)) { in read_object_code() 345 dso = map__dso(al.map); in read_object_code() 359 if (addr + len > map__end(al.map)) in read_object_code() 360 len = map__end(al.map) - addr; in read_object_code() 374 al.addr, buf1, len); in read_object_code() 385 if (map__load(al.map)) { in read_object_code() 395 if (state->done[d] == map__start(al.map)) { in read_object_code() 423 objdump_addr = map__rip_2objdump(al.map, al.addr); in read_object_code() [all …]
|
| /tools/perf/ |
| A D | builtin-annotate.c | 156 bi = sample__resolve_bstack(sample, al); in process_branch_stack() 173 struct addr_location *al __maybe_unused, in hist_iter__branch_callback() 197 struct addr_location *al, in process_branch_callback() argument 249 (al->sym == NULL || in evsel__add_sample() 256 if (al->sym != NULL) { in evsel__add_sample() 257 struct dso *dso = map__dso(al->map); in evsel__add_sample() 260 symbol__delete(al->sym); in evsel__add_sample() 291 struct addr_location al; in process_sample_event() local 294 addr_location__init(&al); in process_sample_event() 305 if (!al.filtered && in process_sample_event() [all …]
|
| /tools/perf/ui/gtk/ |
| A D | annotate.c | 42 if (dl->al.offset == (s64) -1) in perf_gtk__get_percent() 47 entry = annotated_source__hist_entry(notes->src, evsel, dl->al.offset); in perf_gtk__get_percent() 73 if (dl->al.offset == (s64) -1) in perf_gtk__get_offset() 76 return scnprintf(buf, size, "%"PRIx64, start + dl->al.offset); in perf_gtk__get_offset() 82 char *line = g_markup_escape_text(dl->al.line, -1); in perf_gtk__get_line() 90 if (dl->al.offset != (s64) -1) in perf_gtk__get_line() 136 list_for_each_entry(pos, ¬es->src->source, al.node) { in perf_gtk__annotate_symbol() 166 list_for_each_entry_safe(pos, n, ¬es->src->source, al.node) { in perf_gtk__annotate_symbol() 167 list_del_init(&pos->al.node); in perf_gtk__annotate_symbol()
|
| /tools/perf/util/scripting-engines/ |
| A D | trace-event-python.c | 383 if (al->addr < sym->end) in get_offset() 386 offset = al->addr - map__start(al->map) - sym->start; in get_offset() 500 struct addr_location al; in python_process_brstack() local 522 addr_location__init(&al); in python_process_brstack() 535 addr_location__exit(&al); in python_process_brstack() 589 struct addr_location al; in python_process_brstacksym() local 598 get_symoff(al.sym, &al, true, bf, sizeof(bf)); in python_process_brstacksym() 604 get_symoff(al.sym, &al, true, bf, sizeof(bf)); in python_process_brstacksym() 783 if (al->map) { in set_sym_in_dict() 799 if (al->sym) { in set_sym_in_dict() [all …]
|