/linux-4.4.14/tools/perf/util/ |
H A D | dwarf-aux.c | 27 * @cu_die: A DIE(dwarf information entry) of CU(compilation Unit) 30 * Find the real(long) path of @fname in @cu_die. 32 const char *cu_find_realpath(Dwarf_Die *cu_die, const char *fname) cu_find_realpath() argument 42 ret = dwarf_getsrcfiles(cu_die, &files, &nfiles); cu_find_realpath() 58 * @cu_die: a CU DIE 60 * Get the path of compilation directory of given @cu_die. 64 const char *cu_get_comp_dir(Dwarf_Die *cu_die) cu_get_comp_dir() argument 67 if (dwarf_attr(cu_die, DW_AT_comp_dir, &attr) == NULL) cu_get_comp_dir() 74 * @cu_die: a CU DIE 79 * Find a line number and file name for @addr in @cu_die. 81 int cu_find_lineinfo(Dwarf_Die *cu_die, unsigned long addr, cu_find_lineinfo() argument 87 line = dwarf_getsrc_die(cu_die, (Dwarf_Addr)addr); cu_find_lineinfo() 103 * @cu_die: A CU DIE 108 * Walk on function DIEs at given @addr in @cu_die. Passed DIEs 111 int cu_walk_functions_at(Dwarf_Die *cu_die, Dwarf_Addr addr, cu_walk_functions_at() argument 119 for (sc_die = die_find_realfunc(cu_die, addr, &die_mem); cu_walk_functions_at() 376 Dwarf_Die cu_die; die_get_call_file() local 381 if (idx < 0 || !dwarf_diecu(in_die, &cu_die, NULL, NULL) || die_get_call_file() 382 dwarf_getsrcfiles(&cu_die, &files, NULL) != 0) die_get_call_file() 453 * @cu_die: a CU DIE which including @addr 460 Dwarf_Die *die_find_tailfunc(Dwarf_Die *cu_die, Dwarf_Addr addr, die_find_tailfunc() argument 467 if (!dwarf_getfuncs(cu_die, __die_search_func_tail_cb, &ad, 0)) die_find_tailfunc() 492 * @cu_die: a CU DIE which including @addr 499 Dwarf_Die *die_find_realfunc(Dwarf_Die *cu_die, Dwarf_Addr addr, die_find_realfunc() argument 506 if (!dwarf_getfuncs(cu_die, __die_search_func_cb, &ad, 0)) die_find_realfunc() 623 Dwarf_Die cu_die; die_walk_instances() local 632 if (dwarf_diecu(or_die, &cu_die, NULL, NULL) == NULL) die_walk_instances() 635 die_find_child(&cu_die, __die_walk_instances_cb, &iwp, &die_mem); die_walk_instances() 740 Dwarf_Die die_mem, *cu_die; die_walk_lines() local 745 cu_die = dwarf_diecu(rt_die, &die_mem, NULL, NULL); die_walk_lines() 749 cu_die = rt_die; die_walk_lines() 750 if (!cu_die) { die_walk_lines() 756 if (dwarf_getsrclines(cu_die, &lines, &nlines) != 0) { die_walk_lines() 773 if (rt_die != cu_die) { die_walk_lines() 800 if (rt_die != cu_die) die_walk_lines() 812 dwarf_getfuncs(cu_die, __die_walk_culines_cb, ¶m, 0); die_walk_lines()
|
H A D | dwarf-aux.h | 28 extern const char *cu_find_realpath(Dwarf_Die *cu_die, const char *fname); 31 extern const char *cu_get_comp_dir(Dwarf_Die *cu_die); 38 extern int cu_walk_functions_at(Dwarf_Die *cu_die, Dwarf_Addr addr, 85 extern Dwarf_Die *die_find_realfunc(Dwarf_Die *cu_die, Dwarf_Addr addr, 89 Dwarf_Die *die_find_tailfunc(Dwarf_Die *cu_die, Dwarf_Addr addr,
|
H A D | probe-finder.h | 73 Dwarf_Die cu_die; /* Current CU */ member in struct:probe_finder 109 Dwarf_Die cu_die; /* Current CU */ member in struct:line_finder
|
H A D | probe-finder.c | 581 if (!die_find_variable_at(&pf->cu_die, pf->pvar->var, find_variable() 667 if (!die_find_realfunc(&pf->cu_die, pf->addr, &pf->sp_die)) { call_probe_finder() 668 if (die_find_tailfunc(&pf->cu_die, pf->addr, &pf->sp_die)) { call_probe_finder() 761 cu_walk_functions_at(&pf->cu_die, pf->addr, find_best_scope_cb, &fsp); find_best_scope() 792 return die_walk_lines(&pf->cu_die, probe_point_line_walker, pf); find_probe_point_by_line() 874 comp_dir = cu_get_comp_dir(&pf->cu_die); find_probe_point_lazy() 980 dwarf_getfuncs(&pf->cu_die, probe_point_search_cb, &_param, 0); find_probe_point_by_func() 987 Dwarf_Die *cu_die; member in struct:pubname_callback_param 1001 if (!dwarf_offdie(dbg, gl->cu_offset, param->cu_die)) pubname_search_cb() 1057 .cu_die = &pf->cu_die, debuginfo__find_probes() 1077 diep = dwarf_offdie(dbg->dbg, off + cuhl, &pf->cu_die); debuginfo__find_probes() 1083 pf->fname = cu_find_realpath(&pf->cu_die, pp->file); debuginfo__find_probes() 1091 ret = find_probe_point_lazy(&pf->cu_die, pf); debuginfo__find_probes() 1372 die_find_child(&pf->cu_die, collect_variables_cb, (void *)af, &die_mem); add_available_vars() 1603 ret = die_walk_lines(sp_die ?: &lf->cu_die, line_range_walk_cb, lf); find_line_range_by_line() 1668 dwarf_getfuncs(&lf->cu_die, line_range_search_cb, ¶m, 0); find_line_range_by_func() 1685 .cu_die = &lf.cu_die, .sp_die = &lf.sp_die, .found = 0}; debuginfo__find_line_range() 1705 diep = dwarf_offdie(dbg->dbg, off + cuhl, &lf.cu_die); debuginfo__find_line_range() 1711 lf.fname = cu_find_realpath(&lf.cu_die, lr->file); debuginfo__find_line_range() 1730 comp_dir = cu_get_comp_dir(&lf.cu_die); debuginfo__find_line_range()
|