Lines Matching refs:sp_die

171 				     Dwarf_Op *fb_ops, Dwarf_Die *sp_die,  in convert_variable_location()  argument
206 ret = dwarf_entrypc(sp_die, &tmp); in convert_variable_location()
218 ret = dwarf_highpc(sp_die, &tmp); in convert_variable_location()
569 &pf->sp_die, pf->machine, pf->tvar); in convert_variable()
635 static int convert_to_trace_point(Dwarf_Die *sp_die, Dwfl_Module *mod, in convert_to_trace_point() argument
645 if (!dwarf_haspc(sp_die, paddr)) { in convert_to_trace_point()
647 dwarf_diename(sp_die)); in convert_to_trace_point()
651 if (dwarf_entrypc(sp_die, &eaddr) == 0) { in convert_to_trace_point()
653 symbol = dwarf_diename(sp_die); in convert_to_trace_point()
701 if (!die_find_realfunc(&pf->cu_die, pf->addr, &pf->sp_die)) { in call_probe_finder()
702 if (die_find_tailfunc(&pf->cu_die, pf->addr, &pf->sp_die)) { in call_probe_finder()
704 dwarf_diename(&pf->sp_die)); in call_probe_finder()
713 memcpy(&pf->sp_die, sc_die, sizeof(Dwarf_Die)); in call_probe_finder()
716 dwarf_attr(&pf->sp_die, DW_AT_frame_base, &fb_attr); in call_probe_finder()
953 static int find_probe_point_lazy(Dwarf_Die *sp_die, struct probe_finder *pf) in find_probe_point_lazy() argument
982 return die_walk_lines(sp_die, probe_point_lazy_walker, pf); in find_probe_point_lazy()
985 static void skip_prologue(Dwarf_Die *sp_die, struct probe_finder *pf) in skip_prologue() argument
1014 die_skip_prologue(sp_die, &pf->cu_die, &pf->addr); in skip_prologue()
1056 static int probe_point_search_cb(Dwarf_Die *sp_die, void *data) in probe_point_search_cb() argument
1063 if (!die_is_func_def(sp_die) || in probe_point_search_cb()
1064 !die_match_name(sp_die, pp->function)) in probe_point_search_cb()
1068 if (pp->file && strtailcmp(pp->file, dwarf_decl_file(sp_die))) in probe_point_search_cb()
1071 pr_debug("Matched function: %s [%lx]\n", dwarf_diename(sp_die), in probe_point_search_cb()
1072 (unsigned long)dwarf_dieoffset(sp_die)); in probe_point_search_cb()
1073 pf->fname = dwarf_decl_file(sp_die); in probe_point_search_cb()
1075 dwarf_decl_line(sp_die, &pf->lno); in probe_point_search_cb()
1078 } else if (die_is_func_instance(sp_die)) { in probe_point_search_cb()
1080 die_entrypc(sp_die, &pf->addr); in probe_point_search_cb()
1084 dwarf_diename(sp_die)); in probe_point_search_cb()
1088 param->retval = find_probe_point_lazy(sp_die, pf); in probe_point_search_cb()
1090 skip_prologue(sp_die, pf); in probe_point_search_cb()
1093 param->retval = call_probe_finder(sp_die, pf); in probe_point_search_cb()
1097 param->retval = die_walk_instances(sp_die, in probe_point_search_cb()
1125 Dwarf_Die *sp_die; member
1133 if (dwarf_offdie(dbg, gl->die_offset, param->sp_die)) { in pubname_search_cb()
1134 if (dwarf_tag(param->sp_die) != DW_TAG_subprogram) in pubname_search_cb()
1137 if (die_match_name(param->sp_die, param->function)) { in pubname_search_cb()
1142 strtailcmp(param->file, dwarf_decl_file(param->sp_die))) in pubname_search_cb()
1173 .sp_die = &pf->sp_die, in debuginfo__find_probe_location()
1183 ret = probe_point_search_cb(&pf->sp_die, &probe_param); in debuginfo__find_probe_location()
1281 vf->pf->fb_ops, &pf->sp_die, in copy_variables_cb()
1369 ret = convert_to_trace_point(&pf->sp_die, tf->mod, pf->addr, in add_probe_trace_event()
1510 af->pf.fb_ops, &af->pf.sp_die, in collect_variables_cb()
1535 ret2 = die_get_var_range(&af->pf.sp_die, in collect_variables_cb()
1596 ret = convert_to_trace_point(&pf->sp_die, af->mod, pf->addr, in add_available_vars()
1849 static int find_line_range_by_line(Dwarf_Die *sp_die, struct line_finder *lf) in find_line_range_by_line() argument
1853 ret = die_walk_lines(sp_die ?: &lf->cu_die, line_range_walk_cb, lf); in find_line_range_by_line()
1881 static int line_range_search_cb(Dwarf_Die *sp_die, void *data) in line_range_search_cb() argument
1888 if (lr->file && strtailcmp(lr->file, dwarf_decl_file(sp_die))) in line_range_search_cb()
1891 if (die_match_name(sp_die, lr->function) && die_is_func_def(sp_die)) { in line_range_search_cb()
1892 lf->fname = dwarf_decl_file(sp_die); in line_range_search_cb()
1893 dwarf_decl_line(sp_die, &lr->offset); in line_range_search_cb()
1904 if (!die_is_func_instance(sp_die)) in line_range_search_cb()
1905 param->retval = die_walk_instances(sp_die, in line_range_search_cb()
1908 param->retval = find_line_range_by_line(sp_die, lf); in line_range_search_cb()
1934 .cu_die = &lf.cu_die, .sp_die = &lf.sp_die, .found = 0}; in debuginfo__find_line_range()
1941 line_range_search_cb(&lf.sp_die, &line_range_param); in debuginfo__find_line_range()