Lines Matching refs:abfd
137 bfd *abfd; member
156 static int slurp_symtab(bfd *abfd, struct a2l_data *a2l) in slurp_symtab() argument
163 if ((bfd_get_file_flags(abfd) & HAS_SYMS) == 0) in slurp_symtab()
164 return bfd_error(bfd_get_filename(abfd)); in slurp_symtab()
166 storage = bfd_get_symtab_upper_bound(abfd); in slurp_symtab()
168 storage = bfd_get_dynamic_symtab_upper_bound(abfd); in slurp_symtab()
172 return bfd_error(bfd_get_filename(abfd)); in slurp_symtab()
176 symcount = bfd_canonicalize_dynamic_symtab(abfd, syms); in slurp_symtab()
178 symcount = bfd_canonicalize_symtab(abfd, syms); in slurp_symtab()
182 return bfd_error(bfd_get_filename(abfd)); in slurp_symtab()
189 static void find_address_in_section(bfd *abfd, asection *section, void *data) in find_address_in_section() argument
198 if ((bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0) in find_address_in_section()
202 vma = bfd_get_section_vma(abfd, section); in find_address_in_section()
208 a2l->found = bfd_find_nearest_line(abfd, section, a2l->syms, pc - vma, in find_address_in_section()
218 bfd *abfd; in addr2line_init() local
221 abfd = bfd_openr(path, NULL); in addr2line_init()
222 if (abfd == NULL) in addr2line_init()
225 if (!bfd_check_format(abfd, bfd_object)) in addr2line_init()
232 a2l->abfd = abfd; in addr2line_init()
237 if (slurp_symtab(abfd, a2l)) in addr2line_init()
247 bfd_close(abfd); in addr2line_init()
253 if (a2l->abfd) in addr2line_cleanup()
254 bfd_close(a2l->abfd); in addr2line_cleanup()
297 bfd_map_over_sections(a2l->abfd, find_address_in_section, a2l); in addr2line()
308 while (bfd_find_inliner_info(a2l->abfd, &a2l->filename, in addr2line()