freebsd-dev/contrib/elftoolchain/libdwarf
Mark Johnston ab69795fcd libdwarf: Use the cached strtab pointer when reading string attributes.
Previously we would perform a linear search of the DWARF section
list for ".debug_str".  However, libdwarf always caches a pointer to
the strtab image in its debug descriptor.  Using it gives a modest
performance improvement when iterating over the attributes of each
DIE.

Reviewed by:	emaste
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D20759
2019-06-26 16:38:30 +00:00
..
_libdwarf.h Update ELF Tool Chain to upstream rev 3400 2016-02-12 20:54:02 +00:00
dwarf_abbrev.c
dwarf_add_arange.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_comp_dir.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_const_value_string.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_dataref.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_flag.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_location_expr.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_name.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_producer.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_ref_address.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_reference.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_signed_const.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_string.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_AT_targ_address.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_die_to_debug.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_directory_decl.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_expr_addr.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_expr_gen.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_fde_inst.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_file_decl.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_frame_cie.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_frame_fde.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_funcname.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_line_entry.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_pubname.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_typename.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_varname.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_add_weakname.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_arange.c
dwarf_attr.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_attr.c
dwarf_attrlist.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_attroffset.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_attrval_signed.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_attrval.c Update ELF Tool Chain to upstream r3520 2017-04-17 23:56:48 +00:00
dwarf_child.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_cu.c
dwarf_dealloc.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_dealloc.c
dwarf_def_macro.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_die_abbrev_code.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_die_link.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_die.c
dwarf_diename.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_dieoffset.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_dump.c Add DW_LANG_* definitions from DWARF 4 and 5. 2018-06-09 14:50:38 +00:00
dwarf_end_macro_file.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_errmsg.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_errmsg.c
dwarf_errno.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_expand_frame_instructions.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_expr_current_offset.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_expr_into_block.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_fde_cfa_offset.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_find_macro_value_start.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_finish.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_finish.c
dwarf_form.c
dwarf_formaddr.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_formblock.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_formexprloc.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_formflag.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_formref.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_formsig8.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_formstring.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_formudata.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_frame.c
dwarf_funcs.m4
dwarf_get_abbrev_children_flag.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_abbrev_code.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_abbrev_entry.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_abbrev_tag.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_abbrev.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_address_size.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_arange_info.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_arange.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_aranges.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_AT_name.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_cie_index.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_cie_info.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_cie_of_fde.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_cu_die_offset.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_die_infotypes_flag.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_elf.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_fde_at_pc.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_fde_info_for_all_regs3.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_fde_info_for_all_regs.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_fde_info_for_cfa_reg3.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_fde_info_for_reg3.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_fde_info_for_reg.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_fde_instr_bytes.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_fde_list.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_fde_n.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_fde_range.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_form_class.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_funcs.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_globals.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_loclist_entry.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_macro_details.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_pubtypes.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_ranges.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_relocation_info_count.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_relocation_info.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_section_bytes.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_section_max_offsets.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_str.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_types.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_vars.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_get_weaks.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_hasattr.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_hasform.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_highpc.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_init.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_init.c
dwarf_lineno.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_lineno.c
dwarf_lne_end_sequence.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_lne_set_address.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_loclist_from_expr.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_loclist.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_loclist.c
dwarf_macinfo.c
dwarf_nametbl.m4
dwarf_new_die.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_new_expr.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_new_fde.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_next_cu_header.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_next_types_section.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_object_init.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_pro_arange.c
dwarf_pro_attr.c
dwarf_pro_die.c
dwarf_pro_expr.c
dwarf_pro_finish.c
dwarf_pro_frame.c
dwarf_pro_funcs.m4
dwarf_pro_init.c
dwarf_pro_lineno.c
dwarf_pro_macinfo.c
dwarf_pro_nametbl.m4
dwarf_pro_pubnames.m4
dwarf_pro_reloc.c
dwarf_pro_sections.c
dwarf_pro_types.m4
dwarf_pro_vars.m4
dwarf_pro_weaks.m4
dwarf_producer_init.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_producer_set_isa.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_pubnames.m4
dwarf_pubtypes.m4
dwarf_ranges.c
dwarf_reloc.c
dwarf_reset_section_bytes.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_sections.c Update to ELF Tool Chain r3250 2015-10-09 17:46:05 +00:00
dwarf_set_frame_cfa_value.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_set_reloc_application.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_seterrarg.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_seterror.c
dwarf_srcfiles.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_srclines.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_start_macro_file.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_str.c Update ELF Tool Chain to upstream rev 3400 2016-02-12 20:54:02 +00:00
dwarf_tag.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_transform_to_disk_form.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_types.m4
dwarf_undef_macro.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_vars.m4
dwarf_vendor_ext.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf_weaks.m4
dwarf_whatattr.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf.3 Update to ELF Tool Chain r3668 2019-01-10 14:35:23 +00:00
dwarf.h Add DW_LANG_* definitions from DWARF 4 and 5. 2018-06-09 14:50:38 +00:00
libdwarf_abbrev.c Update to ELF Tool Chain r3475 2016-05-20 17:24:34 +00:00
libdwarf_arange.c
libdwarf_attr.c libdwarf: Use the cached strtab pointer when reading string attributes. 2019-06-26 16:38:30 +00:00
libdwarf_die.c
libdwarf_elf_access.c
libdwarf_elf_init.c Update to ELF Tool Chain r3475 2016-05-20 17:24:34 +00:00
libdwarf_error.c
libdwarf_frame.c Update ELF Tool Chain to r3614 2018-04-27 13:59:24 +00:00
libdwarf_info.c
libdwarf_init.c
libdwarf_lineno.c Prepend DW_AT_comp_dir to relative line number directory table entries. 2019-03-27 19:32:21 +00:00
libdwarf_loc.c
libdwarf_loclist.c
libdwarf_macinfo.c
libdwarf_nametbl.c
libdwarf_ranges.c
libdwarf_reloc.c Add missing powerpc64 relocation support to libdwarf 2019-05-29 02:02:56 +00:00
libdwarf_rw.c Update ELF Tool Chain to upstream rev 3400 2016-02-12 20:54:02 +00:00
libdwarf_sections.c
libdwarf_str.c
libdwarf.c
libdwarf.h Update ELF Tool Chain to r3614 2018-04-27 13:59:24 +00:00
Makefile Update ELF Tool Chain to r3614 2018-04-27 13:59:24 +00:00
os.NetBSD.mk Update ELF Tool Chain to upstream rev 3400 2016-02-12 20:54:02 +00:00
Version.map