Lines Matching refs:sp_die

172 				     Dwarf_Op *fb_ops, Dwarf_Die *sp_die,  in convert_variable_location()  argument
192 ret = dwarf_entrypc(sp_die, &tmp); in convert_variable_location()
204 ret = dwarf_highpc(sp_die, &tmp); in convert_variable_location()
532 &pf->sp_die, pf->tvar); in convert_variable()
595 static int convert_to_trace_point(Dwarf_Die *sp_die, Dwfl_Module *mod, in convert_to_trace_point() argument
605 if (dwarf_entrypc(sp_die, &eaddr) != 0) { in convert_to_trace_point()
607 dwarf_diename(sp_die)); in convert_to_trace_point()
610 if (dwarf_highpc(sp_die, &highaddr) != 0) { in convert_to_trace_point()
612 dwarf_diename(sp_die)); in convert_to_trace_point()
617 dwarf_diename(sp_die)); in convert_to_trace_point()
621 symbol = dwarf_diename(sp_die); in convert_to_trace_point()
667 if (!die_find_realfunc(&pf->cu_die, pf->addr, &pf->sp_die)) { in call_probe_finder()
668 if (die_find_tailfunc(&pf->cu_die, pf->addr, &pf->sp_die)) { in call_probe_finder()
670 dwarf_diename(&pf->sp_die)); in call_probe_finder()
679 memcpy(&pf->sp_die, sc_die, sizeof(Dwarf_Die)); in call_probe_finder()
682 dwarf_attr(&pf->sp_die, DW_AT_frame_base, &fb_attr); in call_probe_finder()
866 static int find_probe_point_lazy(Dwarf_Die *sp_die, struct probe_finder *pf) in find_probe_point_lazy() argument
889 return die_walk_lines(sp_die, probe_point_lazy_walker, pf); in find_probe_point_lazy()
926 static int probe_point_search_cb(Dwarf_Die *sp_die, void *data) in probe_point_search_cb() argument
933 if (!die_is_func_def(sp_die) || in probe_point_search_cb()
934 !die_match_name(sp_die, pp->function)) in probe_point_search_cb()
938 if (pp->file && strtailcmp(pp->file, dwarf_decl_file(sp_die))) in probe_point_search_cb()
941 pr_debug("Matched function: %s\n", dwarf_diename(sp_die)); in probe_point_search_cb()
942 pf->fname = dwarf_decl_file(sp_die); in probe_point_search_cb()
944 dwarf_decl_line(sp_die, &pf->lno); in probe_point_search_cb()
947 } else if (die_is_func_instance(sp_die)) { in probe_point_search_cb()
949 dwarf_entrypc(sp_die, &pf->addr); in probe_point_search_cb()
952 param->retval = find_probe_point_lazy(sp_die, pf); in probe_point_search_cb()
956 param->retval = call_probe_finder(sp_die, pf); in probe_point_search_cb()
960 param->retval = die_walk_instances(sp_die, in probe_point_search_cb()
988 Dwarf_Die *sp_die; member
996 if (dwarf_offdie(dbg, gl->die_offset, param->sp_die)) { in pubname_search_cb()
997 if (dwarf_tag(param->sp_die) != DW_TAG_subprogram) in pubname_search_cb()
1000 if (die_match_name(param->sp_die, param->function)) { in pubname_search_cb()
1005 strtailcmp(param->file, dwarf_decl_file(param->sp_die))) in pubname_search_cb()
1058 .sp_die = &pf->sp_die, in debuginfo__find_probes()
1068 ret = probe_point_search_cb(&pf->sp_die, &probe_param); in debuginfo__find_probes()
1129 vf->pf->fb_ops, &pf->sp_die, in copy_variables_cb()
1198 ret = convert_to_trace_point(&pf->sp_die, tf->mod, pf->addr, in add_probe_trace_event()
1291 af->pf.fb_ops, &af->pf.sp_die, in collect_variables_cb()
1315 ret2 = die_get_var_range(&af->pf.sp_die, in collect_variables_cb()
1352 ret = convert_to_trace_point(&pf->sp_die, af->mod, pf->addr, in add_available_vars()
1599 static int find_line_range_by_line(Dwarf_Die *sp_die, struct line_finder *lf) in find_line_range_by_line() argument
1603 ret = die_walk_lines(sp_die ?: &lf->cu_die, line_range_walk_cb, lf); in find_line_range_by_line()
1631 static int line_range_search_cb(Dwarf_Die *sp_die, void *data) in line_range_search_cb() argument
1638 if (lr->file && strtailcmp(lr->file, dwarf_decl_file(sp_die))) in line_range_search_cb()
1641 if (die_is_func_def(sp_die) && in line_range_search_cb()
1642 die_match_name(sp_die, lr->function)) { in line_range_search_cb()
1643 lf->fname = dwarf_decl_file(sp_die); in line_range_search_cb()
1644 dwarf_decl_line(sp_die, &lr->offset); in line_range_search_cb()
1655 if (!die_is_func_instance(sp_die)) in line_range_search_cb()
1656 param->retval = die_walk_instances(sp_die, in line_range_search_cb()
1659 param->retval = find_line_range_by_line(sp_die, lf); in line_range_search_cb()
1685 .cu_die = &lf.cu_die, .sp_die = &lf.sp_die, .found = 0}; in debuginfo__find_line_range()
1692 line_range_search_cb(&lf.sp_die, &line_range_param); in debuginfo__find_line_range()