125b3c049e70834cf33790a28643ab058b507b35cBen Cheng2012-01-31 Mark Wielaard <mjw@redhat.com> 225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formudata.c (dwarf_formudata): Handle DW_FORM_sec_offset. 425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 525b3c049e70834cf33790a28643ab058b507b35cBen Cheng2011-11-31 Mark Wielaard <mjw@redhat.com> 625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (known-dwarf.h): Run gawk on config/known-dwarf.awk. 825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2011-07-14 Mark Wielaard <mjw@redhat.com> 1025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 1125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h (dwarf_offdie): Fix documentation to mention .debug_info. 1225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 1325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2011-05-16 Jakub Jelinek <jakub@redhat.com> 1425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 1525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h (DW_OP_GNU_const_type, DW_OP_GNU_regval_type, 1625b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_OP_GNU_deref_type, DW_OP_GNU_convert, DW_OP_GNU_reinterpret): 1725b3c049e70834cf33790a28643ab058b507b35cBen Cheng New. 1825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 1925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2011-04-26 Mark Wielaard <mjw@redhat.com> 2025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 2125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_child (dwarf_child): Sanity check end of section against 2225b3c049e70834cf33790a28643ab058b507b35cBen Cheng cu_data () of die->cu. 2325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 2425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2011-03-22 Mark Wielaard <mjw@redhat.com> 2525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 2625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add DW_TAG_GNU_call_site, 2725b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_TAG_GNU_call_site_parameter, 2825b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_AT_GNU_call_site_value, 2925b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_AT_GNU_call_site_data_value, 3025b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_AT_GNU_call_site_target, 3125b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_AT_GNU_call_site_target_clobbered, 3225b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_AT_GNU_tail_call, 3325b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_AT_GNU_all_tail_call_sites, 3425b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_AT_GNU_all_call_sites, 3525b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_AT_GNU_all_source_call_sites, 3625b3c049e70834cf33790a28643ab058b507b35cBen Cheng and DW_OP_GNU_entry_value. 3725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 3825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2011-03-10 Petr Machata <pmachata@redhat.com> 3925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 4025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw/dwarf_tag.c (__libdw_findabbrev): Reject requests for 4125b3c049e70834cf33790a28643ab058b507b35cBen Cheng abbreviation with code 0. 4225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 4325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2011-03-09 Petr Machata <pmachata@redhat.com> 4425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 4525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw/dwarf_child.c (dwarf_child): Check for section overrun. 4625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 4725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2011-02-23 Roland McGrath <roland@redhat.com> 4825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 4925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf) [USE_ZLIB]: New member sectiondata_gzip_mask. 5025b3c049e70834cf33790a28643ab058b507b35cBen Cheng Declare __libdw_free_zdata. 5125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_end.c [USE_ZLIB] (__libdw_free_zdata): New function. 5225b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_end): Call it. 5325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 5425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin_elf.c (valid_p): Likewise. 5525b3c049e70834cf33790a28643ab058b507b35cBen Cheng (check_section, scngrp_read): Likewise. 5625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (check_section) [USE_ZLIB]: Grok .z* flavors of sections. 5725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 5825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-10-13 Roland McGrath <roland@redhat.com> 5925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 6025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add DW_LANG_Go. 6125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 6225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-10-05 Roland McGrath <roland@redhat.com> 6325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 6425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges.c: Use malloc rather than alloca, 6525b3c049e70834cf33790a28643ab058b507b35cBen Cheng since the total number of elements can be quite huge. 6625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 6725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-07-26 Roland McGrath <roland@redhat.com> 6825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 6925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation_implicit_pointer.c: New file. 7025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 7125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.149): New set. 7225b3c049e70834cf33790a28643ab058b507b35cBen Cheng Add dwarf_getlocation_implicit_pointer. 7325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare it. 7425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 7525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_offdie.c (do_offdie): Renamed to __libdw_offdie, made global. 7625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_offdie, dwarf_offdie_types): Update callers. 7725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Declare it. 7825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 7925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add DW_OP_GNU_implicit_pointer. 8025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (__libdw_intern_expression): Handle it. 8125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 8225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-08-24 Roland McGrath <roland@redhat.com> 8325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 8425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.149): New set. Add dwfl_dwarf_line. 8525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 8625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-07-27 Roland McGrath <roland@redhat.com> 8725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 8825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref_die.c: Fix sig8 hash insertion. 8925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 9025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-06-23 Roland McGrath <roland@redhat.com> 9125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 9225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.c (dwarf_cfi_validate_fde): Function removed. 9325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Remove it. 9425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Likewise. 9525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 9625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-06-22 Roland McGrath <roland@redhat.com> 9725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 9825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (check_constant_offset): data[48] are constant. 9925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 10025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Fix signed comparison warning in extended 10125b3c049e70834cf33790a28643ab058b507b35cBen Cheng opcode parsing. 10225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 10325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-06-21 Roland McGrath <roland@redhat.com> 10425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 10525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add DW_TAG_GNU_* constants. 10625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 10725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * memory-access.h (get_sleb128_rest_return): Fix sign extension for 10825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 10-byte case. 10925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 11025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-06-20 Roland McGrath <roland@redhat.com> 11125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 11225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_findcu.c (__libdw_findcu): Take new flag argument, 11325b3c049e70834cf33790a28643ab058b507b35cBen Cheng to search TUs instead of CUs. 11425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Update decl. 11525b3c049e70834cf33790a28643ab058b507b35cBen Cheng (struct Dwarf): New member tu_tree. 11625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_end.c (dwarf_end): Clean up tu_tree. 11725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_offdie.c (do_offdie): New function, broken out of ... 11825b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_offdie): ... here. 11925b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_offdie_types): New function. 12025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare it. 12125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.148): Add it. 12225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 12325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (CUDIE): Use cu_data. 12425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formblock.c: Likewise. 12525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref_die.c: Likewise. 12625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_diecu.c: Use CUDIE macro. 12725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formaddr.c: Use cu_sec_idx. 12825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 12925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-06-16 Roland McGrath <roland@redhat.com> 13025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 13125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref_die.c: Use dwarf_offdie only for DW_FORM_ref_addr, so 13225b3c049e70834cf33790a28643ab058b507b35cBen Cheng we don't repeat a CU lookup we've already done. Handle 13325b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_FORM_ref_sig8 using sig8_hash table and __libdw_intern_next_unit. 13425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 13525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_findcu.c (__libdw_intern_next_unit): New function, 13625b3c049e70834cf33790a28643ab058b507b35cBen Cheng broken out of ... 13725b3c049e70834cf33790a28643ab058b507b35cBen Cheng (__libdw_findcu): ... here. Call it. 13825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Declare it. 13925b3c049e70834cf33790a28643ab058b507b35cBen Cheng (struct Dwarf): New member next_tu_offset. 14025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 14125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_sig8_hash.c: New file. 14225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_sig8_hash.h: New file. 14325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES, noinst_HEADERS): Add them. 14425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_abbrev_hash.c: Include dwarf_sig8_hash.h before 14525b3c049e70834cf33790a28643ab058b507b35cBen Cheng defining NO_UNDEF. 14625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf): New member sig8_hash. 14725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin_elf.c: Call Dwarf_Sig8_Hash_init on it. 14825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_end.c: Call Dwarf_Sig8_Hash_free on it. 14925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 15025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_nextcu.c (dwarf_next_unit): New function, broken out of ... 15125b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_nextcu): ... here. Call it. 15225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare it. 15325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add INTDECL. 15425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_findcu.c (__libdw_findcu): Use it instead of dwarf_nextcu. 15525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.148): New set, add dwarf_next_unit. 15625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 15725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (cu_sec_idx, cu_data): New functions. 15825b3c049e70834cf33790a28643ab058b507b35cBen Cheng Use .debug_types when CU is a TU. 15925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_cuoffset.c: Use that instead of assuming IDX_debug_info. 16025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_siblingof.c: Likewise. 16125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formstring.c: Likewise. 16225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formudata.c (__libdw_formptr, dwarf_formudata): Likewise. 16325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (dwarf_getlocation): Likewise. 16425b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_getlocation_addr): Likewise. 16525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 16625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf_CU): Add new members type_offset, type_sig8. 16725b3c049e70834cf33790a28643ab058b507b35cBen Cheng (DIE_OFFSET_FROM_CU_OFFSET): Take flag argument; if true, compute 16825b3c049e70834cf33790a28643ab058b507b35cBen Cheng .debug_types header size instead of .debug_info header size. 16925b3c049e70834cf33790a28643ab058b507b35cBen Cheng (CUDIE): Use it. 17025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_diecu.c: Update caller. 17125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges.c: Likewise. 17225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_nextcu.c: Likewise. 17325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_findcu.c (__libdw_findcu): Initialize new members. 17425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 17525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * fde.c (fde_by_offset): Renamed to ... 17625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (__libdw_fde_by_offset): ... this, made global and internal_function. 17725b3c049e70834cf33790a28643ab058b507b35cBen Cheng Don't take ADDRESS argument. 17825b3c049e70834cf33790a28643ab058b507b35cBen Cheng (__libdw_find_fde): Update caller. Do address sanity check here. 17925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.h: Declare __libdw_fde_by_offset. 18025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.c (dwarf_cfi_validate_fde): New function. 18125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare it. 18225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.148): Add it. 18325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 18425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cie.c (intern_new_cie): Canonicalize DW_EH_PE_absptr FDE encoding to 18525b3c049e70834cf33790a28643ab058b507b35cBen Cheng either DW_EH_PE_udata8 or DW_EH_PE_udata4. 18625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 18725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * encoded-value.h (read_encoded_value): Handle DW_EH_PE_indirect. 18825b3c049e70834cf33790a28643ab058b507b35cBen Cheng Don't assume DW_EH_PE_aligned refers to native address size. 18925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 19025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.c (execute_cfi): Barf on CIE initial instructions changing the 19125b3c049e70834cf33790a28643ab058b507b35cBen Cheng address. 19225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 19325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-06-17 Roland McGrath <roland@redhat.com> 19425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 19525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf_Line_s): Add members isa, discriminator, and 19625b3c049e70834cf33790a28643ab058b507b35cBen Cheng op_index. 19725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c (dwarf_getsrclines): Move NEW_FILE macro guts 19825b3c049e70834cf33790a28643ab058b507b35cBen Cheng into an inner inline function. Set new fields. Check all fields for 19925b3c049e70834cf33790a28643ab058b507b35cBen Cheng overflow when setting. 20025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lineisa.c: New file. 20125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_linediscriminator.c: New file. 20225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lineop_index.c: New file. 20325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add them. 20425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.148): Add them. 20525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare them. 20625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 20725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-06-16 Roland McGrath <roland@redhat.com> 20825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 20925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_next_cfi.c: Fix version 4 return_address_register decoding. 21025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 21125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * fde.c (fde_by_offset): Renamed to ... 21225b3c049e70834cf33790a28643ab058b507b35cBen Cheng (__libdw_fde_by_offset): ... this, made global and internal_function. 21325b3c049e70834cf33790a28643ab058b507b35cBen Cheng Don't take ADDRESS argument. 21425b3c049e70834cf33790a28643ab058b507b35cBen Cheng (__libdw_find_fde): Update caller. Do address sanity check here. 21525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.h: Declare __libdw_fde_by_offset. 21625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.c (dwarf_cfi_validate_fde): New function. 21725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare it. 21825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.148): Add it. 21925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 22025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cie.c (intern_new_cie): Canonicalize DW_EH_PE_absptr FDE encoding to 22125b3c049e70834cf33790a28643ab058b507b35cBen Cheng either DW_EH_PE_udata8 or DW_EH_PE_udata4. 22225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 22325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * encoded-value.h (read_encoded_value): Handle DW_EH_PE_indirect. 22425b3c049e70834cf33790a28643ab058b507b35cBen Cheng Don't assume DW_EH_PE_aligned refers to native address size. 22525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 22625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.c (execute_cfi): Barf on CIE initial instructions changing the 22725b3c049e70834cf33790a28643ab058b507b35cBen Cheng address. 22825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 22925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-06-15 Roland McGrath <roland@redhat.com> 23025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 23125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref.c (__libdw_formref): Diagnose DW_FORM_ref_sig8 like 23225b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_FORM_ref_addr. 23325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref_die.c (dwarf_formref_die): Diagnose it the same way 23425b3c049e70834cf33790a28643ab058b507b35cBen Cheng here, since we don't support it yet. 23525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 23625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_next_cfi.c: Handle version 4 format. 23725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 23825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Handle version 4 format. 23925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 24025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-06-01 Roland McGrath <roland@redhat.com> 24125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 24225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Remove unused IDX_debug_*names, add IDX_debug_types. 24325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin_elf.c (dwarf_scnnames): Likewise. 24425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 24525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (CIE_VERSION): Remove unused macro. 24625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 24725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Fix version field test. 24825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (DWARF_VERSION): Remove useless macro. 24925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 25025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formudata.c (__libdw_formptr): Fix DW_FORM_sec_offset handling. 25125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 25225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formblock.c (dwarf_formblock): Handle DW_FORM_exprloc. 25325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 25425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_findcu.c (__libdw_findcu): Accept version 4. 25525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 25625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-05-31 Mark Wielaard <mjw@redhat.com> 25725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 25825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.h (dwarf_cfi_cie_p): Move definition from here, to .. 25925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h (dwarf_cfi_cie_p): ... here. 26025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 26125b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-05-31 Mark Wielaard <mjw@redhat.com> 26225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 26325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Fix DW_LANG_Python constant. 26425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 26525b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-05-28 Eduardo Santiago <santiago@redhat.com> 26625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 26725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (dwarf_getlocation): Do attr_ok check first 26825b3c049e70834cf33790a28643ab058b507b35cBen Cheng thing. 26925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 27025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-05-27 Roland McGrath <roland@redhat.com> 27125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 27225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add DW_AT_enum_class, DW_AT_linkage_name, 27325b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_TAG_template_alias, DW_LANG_Python, DW_LNE_set_discriminator. 27425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 27525b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-05-08 Roland McGrath <roland@redhat.com> 27625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 27725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (__libdw_intern_expression): Take new argument 27825b3c049e70834cf33790a28643ab058b507b35cBen Cheng REF_SIZE. Use that to handle DW_OP_call_ref correctly. 27925b3c049e70834cf33790a28643ab058b507b35cBen Cheng (getlocation): Update caller. 28025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_cfa.c (dwarf_frame_cfa): Likewise. 28125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_register.c (dwarf_frame_register): Likewise. 28225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Update decl. 28325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 28425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-04-26 Roland McGrath <roland@redhat.com> 28525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 28625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.h (struct Dwarf_Frame_s): Add cfa_invalid alternative in cfa_rule. 28725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.c (execute_cfi): Set that instead of doing cfi_assert for 28825b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_CFA_def_cfa_{offset*,register} when a non-offset rule is in force. 28925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_cfa.c (dwarf_frame_cfa): Handle cfa_invalid. 29025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 29125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (__libdw_intern_expression): Take new arg CFAP. 29225b3c049e70834cf33790a28643ab058b507b35cBen Cheng Prepend DW_OP_call_frame_cfa if true. 29325b3c049e70834cf33790a28643ab058b507b35cBen Cheng (getlocation): Update caller. 29425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_cfa.c (dwarf_frame_cfa): Likewise. 29525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_register.c (dwarf_frame_register): Likewise. 29625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Update decl. 29725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 29825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-04-22 Roland McGrath <roland@redhat.com> 29925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 30025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.c (execute_cfi): Never return without cleanup. 30125b3c049e70834cf33790a28643ab058b507b35cBen Cheng Free FS on failure. 30225b3c049e70834cf33790a28643ab058b507b35cBen Cheng (cie_cache_initial_state): Adjust caller to expect that free. 30325b3c049e70834cf33790a28643ab058b507b35cBen Cheng (__libdw_frame_at_address): Likewise. 30425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 30525b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-03-10 Roland McGrath <roland@redhat.com> 30625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 30725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.146): New set. Add dwfl_core_file_report. 30825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 30925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-02-15 Roland McGrath <roland@redhat.com> 31025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 31125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am: Use config/eu.am for common stuff. 31225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 31325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-02-02 Mark Wielaard <mjw@redhat.com> 31425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 31525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * fde.c (intern_fde): Fix length check for sized_augmentation_data. 31625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 31725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-01-07 Roland McGrath <roland@redhat.com> 31825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 31925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getcfi_elf.c (getcfi_phdr): Use elf_getphdrnum. 32025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 32125b3c049e70834cf33790a28643ab058b507b35cBen Cheng2010-01-05 Roland McGrath <roland@redhat.com> 32225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 32325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_aggregate_size.c: New file. 32425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 32525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare it. 32625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add INTDECL. 32725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.144): New set. Add dwarf_aggregate_size. 32825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 32925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_srclang.c: Add INTDEF. 33025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add INTDECL. 33125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 33225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add some more DW_AT_GNU_* types from gcc. 33325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 33425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add DW_AT_GNU_vector, DW_AT_GNU_template_name. 33525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 33625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-11-21 Roland McGrath <roland@redhat.com> 33725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 33825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (check_constant_offset): Return 1 for all 33925b3c049e70834cf33790a28643ab058b507b35cBen Cheng non-constant forms. 34025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 34125b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-10-15 Roland McGrath <roland@redhat.com> 34225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 34325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_form.c (__libdw_form_val_len): Grok DW_FORM_sec_offset, 34425b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_FORM_exprloc, DW_FORM_flag_present, and DW_FORM_ref_sig8. 34525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 34625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-09-17 Roland McGrath <roland@redhat.com> 34725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 34825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (dwarf_getlocation_implicit_value): Make OP 34925b3c049e70834cf33790a28643ab058b507b35cBen Cheng argument a pointer to const. 35025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Update decl. 35125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 35225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-09-10 Roland McGrath <roland@redhat.com> 35325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 35425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (store_implicit_value): New function. 35525b3c049e70834cf33790a28643ab058b507b35cBen Cheng (__libdw_intern_expression): Use it, handle DW_OP_implicit_value. 35625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_getlocation_implicit_value): New function. 35725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare it. 35825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.143): Add it. 35925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 36025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-09-09 Mark Wielaard <mjw@redhat.com> 36125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 36225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getcfi.c (dwarf_getcfi): Clear cfi->ebl. 36325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 36425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-08-21 Josh Stone <jistone@redhat.com> 36525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 36625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_hasattr_integrate.c: Integrate DW_AT_specification too. 36725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 36825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-08-10 Roland McGrath <roland@redhat.com> 36925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 37025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getscopevar.c: Use dwarf_diename. 37125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 37225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-08-09 Roland McGrath <roland@redhat.com> 37325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 37425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.143): New version set, 37525b3c049e70834cf33790a28643ab058b507b35cBen Cheng inherits from ELFUTILS_0.142. 37625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_arrayorder.c: Use OLD_VERSION and NEW_VERSION to define an 37725b3c049e70834cf33790a28643ab058b507b35cBen Cheng alias in the ELFUTILS_0.122 version set and the default in the new set. 37825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_srclang.c: Likewise. 37925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_decl_file.c: Likewise. 38025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_decl_line.c: Likewise. 38125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_decl_column.c: Likewise. 38225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_bytesize.c: Likewise. 38325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_bitsize.c: Likewise. 38425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_bitoffset.c: Likewise. 38525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 38625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-08-07 Roland McGrath <roland@redhat.com> 38725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 38825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_arrayorder.c: Use dwarf_attr_integrate. 38925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_srclang.c: Likewise. 39025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_decl_file.c: Likewise. 39125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_decl_line.c (__libdw_attr_intval): Likewise. 39225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_bytesize.c: Likewise. 39325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_bitsize.c: Likewise. 39425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_bitoffset.c: Likewise. 39525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 39625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-07-22 Roland McGrath <roland@redhat.com> 39725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 39825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_cfa.c: Change calling convention. 39925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Update decl. 40025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 40125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_register.c: Change calling/return-value convention for 40225b3c049e70834cf33790a28643ab058b507b35cBen Cheng value-only results and undefined/same_value. 40325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Update decl. 40425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 40525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (__libdw_intern_expression): Take new bool 40625b3c049e70834cf33790a28643ab058b507b35cBen Cheng argument, append DW_OP_stack_value if set. Don't take NOPS argument, 40725b3c049e70834cf33790a28643ab058b507b35cBen Cheng return that value instead. 40825b3c049e70834cf33790a28643ab058b507b35cBen Cheng (getlocation): Update caller. 40925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_cfa.c: Likewise. 41025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Update decl. 41125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 41225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-07-21 Roland McGrath <roland@redhat.com> 41325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 41425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_file.c: Ignore a CU that just has no DW_AT_stmt_list. 41525b3c049e70834cf33790a28643ab058b507b35cBen Cheng Fix loop iteration after skipping a bogus or useless CU. 41625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 41725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_entry_breakpoints.c: Handle 0 dwarf_errno () as harmless 41825b3c049e70834cf33790a28643ab058b507b35cBen Cheng absence, not DWARF_E_NO_DEBUG_LINE. 41925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 42025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-07-20 Roland McGrath <roland@redhat.com> 42125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 42225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (__libdw_intern_expression): 42325b3c049e70834cf33790a28643ab058b507b35cBen Cheng Handle DW_OP_stack_value. 42425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 42525b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-07-16 Roland McGrath <roland@redhat.com> 42625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 42725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formudata.c (__libdw_formptr): Handle DW_FORM_sec_offset, 42825b3c049e70834cf33790a28643ab058b507b35cBen Cheng reject others when CU's version > 3. 42925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 43025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formflag.c: Handle DW_FORM_flag_present. 43125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 43225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add DW_OP_{implicit,stack}_value from DWARF 4 draft. 43325b3c049e70834cf33790a28643ab058b507b35cBen Cheng Also DW_TAG_type_unit and DW_TAG_rvalue_reference_type. 43425b3c049e70834cf33790a28643ab058b507b35cBen Cheng Also DW_AT_signature, DW_AT_main_subprogram, DW_AT_data_bit_offset, 43525b3c049e70834cf33790a28643ab058b507b35cBen Cheng and DW_AT_const_expr. 43625b3c049e70834cf33790a28643ab058b507b35cBen Cheng Also DW_FORM_sec_offset, DW_FORM_exprloc, DW_FORM_flag_present, 43725b3c049e70834cf33790a28643ab058b507b35cBen Cheng and DW_FORM_ref_sig8. 43825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 43925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-07-15 Roland McGrath <roland@redhat.com> 44025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 44125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c: Grok DW_OP_form_tls_address, 44225b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_OP_GNU_push_tls_address, and DW_OP_bit_piece. 44325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 44425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-07-13 Roland McGrath <roland@redhat.com> 44525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 44625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c: Grok DW_OP_call_frame_cfa. 44725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 44825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-07-08 Roland McGrath <roland@redhat.com> 44925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 45025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.142): Add dwfl_module_dwarf_cfi, 45125b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwfl_module_eh_cfi. 45225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 45325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf): Add member `cfi'. 45425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_end.c (dwarf_end): Call __libdw_destroy_frame_cache on it. 45525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getcfi.c: New file. 45625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getcfi_elf.c: New file. 45725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_cfi_end.c: New file. 45825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_cfi_addrframe.c: New file. 45925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_cfa.c: New file. 46025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_register.c: New file. 46125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_frame_return_address_register.c: New file. 46225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add them. 46325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * unwind.h: Declare those functions. 46425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.142): Export them. 46525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 46625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (__libdw_intern_expression): New function, 46725b3c049e70834cf33790a28643ab058b507b35cBen Cheng broken out of ... 46825b3c049e70834cf33790a28643ab058b507b35cBen Cheng (getlocation): ... here, call it. 46925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Declare it. 47025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 47125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cie.c: New file. 47225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * fde.c: New file. 47325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * frame-cache.c: New file. 47425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.c: New file. 47525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * cfi.h: New file. 47625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * encoded-value.h: New file. 47725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES, noinst_HEADERS): Add them. 47825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add DWARF_E_INVALID_CFI to errors enum. 47925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c (errmsgs): Add element for it. 48025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 48125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_next_cfi.c: New file. 48225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 48325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h (Dwarf_CIE, Dwarf_FDE, Dwarf_CIE_Entry): New types. 48425b3c049e70834cf33790a28643ab058b507b35cBen Cheng Declare dwarf_next_cfi. 48525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.142): New set, inherits from ELFUTILS_0.136. 48625b3c049e70834cf33790a28643ab058b507b35cBen Cheng Add dwarf_next_cfi. 48725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 48825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * memory-access.h [! ALLOW_UNALIGNED] 48925b3c049e70834cf33790a28643ab058b507b35cBen Cheng (read_2ubyte_unaligned): Renamed to ... 49025b3c049e70834cf33790a28643ab058b507b35cBen Cheng (read_2ubyte_unaligned_1): ... this. Take bool rather than Dwarf *. 49125b3c049e70834cf33790a28643ab058b507b35cBen Cheng (read_2ubyte_unaligned): Define as macro passing dbg->other_byte_order. 49225b3c049e70834cf33790a28643ab058b507b35cBen Cheng (read_2sbyte_unaligned): Likewise. 49325b3c049e70834cf33790a28643ab058b507b35cBen Cheng (read_4ubyte_unaligned): Likewise. 49425b3c049e70834cf33790a28643ab058b507b35cBen Cheng (read_4sbyte_unaligned): Likewise. 49525b3c049e70834cf33790a28643ab058b507b35cBen Cheng (read_8ubyte_unaligned): Likewise. 49625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (read_8sbyte_unaligned): Likewise. 49725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 49825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (IDX_eh_frame): Remove it. 49925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin_elf.c (dwarf_scnnames): Remove its element. 50025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 50125b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-07-08 Roland McGrath <roland@redhat.com> 50225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 50325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf_Line_s): Reorder members to pack better. 50425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 50525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (check_constant_offset): New function. 50625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_getlocation, dwarf_getlocation_addr): Call it to 50725b3c049e70834cf33790a28643ab058b507b35cBen Cheng handle DW_AT_data_member_location of data[48] as constant offset. 50825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 50925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-06-18 Roland McGrath <roland@redhat.com> 51025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 51125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (__libdw_read_address_inc): Constify. 51225b3c049e70834cf33790a28643ab058b507b35cBen Cheng (__libdw_read_offset_inc): Likewise. 51325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges.c: Likewise. 51425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c: Likewise. 51525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Likewise. 51625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_nextcu.c: Likewise. 51725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 51825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-05-05 Petr Machata <pmachata@redhat.com> 51925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 52025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (__libdw_formptr): Declare new function. 52125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formudata.c: Implement it here. 52225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (dwarf_getlocation_addr): 52325b3c049e70834cf33790a28643ab058b507b35cBen Cheng Call it instead of hand-rolled offset handling code. 52425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c (dwarf_getsrclines): Likewise. 52525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_ranges.c (dwarf_ranges): Likewise. 52625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 52725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-05-04 Petr Machata <pmachata@redhat.com> 52825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 52925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (__libdw_read_begin_end_pair_inc): Declare new function. 53025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_ranges.c: Implement it here. 53125b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_ranges): Call it. 53225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (dwarf_getlocation_addr): Call it also here. 53325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 53425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-04-23 Petr Machata <pmachata@redhat.com> 53525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 53625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formaddr.c (dwarf_formaddr): Call __libdw_read_* instead 53725b3c049e70834cf33790a28643ab058b507b35cBen Cheng of read_*ubyte_unaligned. 53825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref_die.c (dwarf_formref_die): Likewise. 53925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formstring.c (dwarf_formstring): Likewise. 54025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formudate.c (dwarf_formudata): Likewise. 54125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges.c (dwarf_getaranges): Likewise. 54225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (dwarf_getlocation_addr): Likewise. 54325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getpubnames.c (get_offsets): Likewise. 54425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_nextcu.c (dwarf_nextcu): Likewise. 54525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 54625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-04-23 Petr Machata <pmachata@redhat.com> 54725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 54825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (__libdw_read_addr_inc, __libdw_read_off_inc, 54925b3c049e70834cf33790a28643ab058b507b35cBen Cheng __libdw_read_addr, __libdw_read_off): Add four new internal 55025b3c049e70834cf33790a28643ab058b507b35cBen Cheng functions. 55125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 55225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-05-07 Roland McGrath <roland@redhat.com> 55325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 55425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getmacros.c (dwarf_getmacros): Use absolute section offset in 55525b3c049e70834cf33790a28643ab058b507b35cBen Cheng return value and OFFSET argument, not CU-relative. Only fetch the 55625b3c049e70834cf33790a28643ab058b507b35cBen Cheng attribute data when called with OFFSET of 0. 55725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 55825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-05-07 Petr Machata <pmachata@redhat.com> 55925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 56025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getmacros.c (dwarf_getmacros): Take into account offset in 56125b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_AT_macro_info attribute of CU DIE. 56225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 56325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-04-15 Roland McGrath <roland@redhat.com> 56425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 56525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h (DW_CIE_ID): Removed. 56625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (DW_CIE_ID_32, DW_CIE_ID_64): New constants replace it. 56725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 56825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-04-01 Roland McGrath <roland@redhat.com> 56925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 57025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add DW_CFA_GNU_negative_offset_extended. 57125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 57225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-01-28 Roland McGrath <roland@redhat.com> 57325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 57425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf_Line_s): Move out of struct Dwarf_Lines_s 57525b3c049e70834cf33790a28643ab058b507b35cBen Cheng defn so C++ doesn't scope the name to not match the Dwarf_Line typedef. 57625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 57725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf_Files_s): Replace dbg field with cu field. 57825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 57925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-01-26 Roland McGrath <roland@redhat.com> 58025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 58125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_ranges.c: Return 0 when no ranges or *_pc attrs at all. 58225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 58325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-01-25 Roland McGrath <roland@redhat.com> 58425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 58525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getattrs.c: Correctly skip attribute values when restarting. 58625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 58725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-01-23 Roland McGrath <roland@redhat.com> 58825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 58925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am ($(srcdir)/known-dwarf.h): Target renamed back. 59025b3c049e70834cf33790a28643ab058b507b35cBen Cheng Put these rules under if MAINTAINER_MODE. 59125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 59225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-01-22 Roland McGrath <roland@redhat.com> 59325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 59425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add DW_OP_GNU_encoded_addr. 59525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 59625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-01-21 Roland McGrath <roland@redhat.com> 59725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 59825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (CLEANFILES): Renamed to ... 59925b3c049e70834cf33790a28643ab058b507b35cBen Cheng (MOSTLYCLEANFILES): ... here. 60025b3c049e70834cf33790a28643ab058b507b35cBen Cheng (CLEANFILES): New variable, add known-dwarf.h. 60125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 60225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-01-17 Roland McGrath <roland@redhat.com> 60325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 60425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (known-dwarf.h): Target renamed, not in $(srcdir). 60525b3c049e70834cf33790a28643ab058b507b35cBen Cheng Make it unconditional. 60625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (BUILT_SOURCES): Updated. 60725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 60825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add description comments for DW_LANG_* values. 60925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 61025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am [MAINTAINER_MODE] 61125b3c049e70834cf33790a28643ab058b507b35cBen Cheng ($(srcdir)/known-dwarf.h): New target. 61225b3c049e70834cf33790a28643ab058b507b35cBen Cheng (BUILT_SOURCES): Add it. 61325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 61425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add DW_OP_GNU_push_tls_address, DW_OP_GNU_uninit. 61525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 61625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-01-10 Ulrich Drepper <drepper@redhat.com> 61725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 61825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c: Always use __thread. Remove all !USE_TLS code. 61925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 62025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-01-08 Roland McGrath <roland@redhat.com> 62125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 62225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw.so): Don't depend on $(zip_LIBS), just link it in. 62325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 62425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2008-01-06 Roland McGrath <roland@redhat.com> 62525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 62625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf_Abbrev): Change type of 'has_children' to bool. 62725b3c049e70834cf33790a28643ab058b507b35cBen Cheng Reorder members. 62825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_haschildren.c: Return -1 for error case, not 0. 62925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 63025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw.so): Link in $(zip_LIBS). 63125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 63225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2009-01-06 Ulrich Drepper <drepper@redhat.com> 63325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 63425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add definition for unwind and call frame information. 63525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 63625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * memory-access.h: Define read_ubyte_unaligned, read_sbyte_unaligned, 63725b3c049e70834cf33790a28643ab058b507b35cBen Cheng read_ubyte_unaligned_inc, and read_sbyte_unaligned_inc. 63825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 63925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2008-08-15 Roland McGrath <roland@redhat.com> 64025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 64125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.136): New version set, inherits from 64225b3c049e70834cf33790a28643ab058b507b35cBen Cheng ELFUTILS_0.130. Add dwfl_addrsegment, dwfl_report_segment. 64325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 64425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2008-01-21 Ulrich Drepper <drepper@redhat.com> 64525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 64625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_child.c: Minor optimizations. 64725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getattrs.c: Likewise. 64825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getpubnames.c: Likewise. 64925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_siblingof.c: Likewise. 65025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_tag.c: Likewise. 65125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 65225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2008-01-18 Ulrich Drepper <drepper@redhat.com> 65325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 65425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c (dwarf_getsrclines): Don't require exact match 65525b3c049e70834cf33790a28643ab058b507b35cBen Cheng of DWARF_VERSION comparison, just fail if the file's version is newer. 65625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 65725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2008-01-17 Nick Clifton <nickc@redhat.com> 65825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 65925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h (DWARF3_LENGTH_MIN_ESCAPE_CODE): New define. 66025b3c049e70834cf33790a28643ab058b507b35cBen Cheng (DWARF3_LENGTH_MAX_ESCAPE_CODE): New define. 66125b3c049e70834cf33790a28643ab058b507b35cBen Cheng (DWARF3_LENGTH_64_BIT): New define. 66225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges (dwarf_getaranges): Use the new definitions. 66325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getpubnames: Include dwarf.h. 66425b3c049e70834cf33790a28643ab058b507b35cBen Cheng (get_offsets): Use the new definitions. 66525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c (dwarf_getsrclines): Use the new defintions. 66625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_nextcu.c: Include dwarf.h. Correct comment. 66725b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_nextcu): Use the new definitions. 66825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 66925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (DIE_OFFSET_FROM_CU_OFFSET): New macro. 67025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_diecu.c (dwarf_diecu): Use the new macro. 67125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges (dwarf_getaranges): Use the new macro. 67225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_nextcu.c (dwarf_nextcu): Use the new macro. 67325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 67425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getpubnames (get_offsets): Replace assertion with test and 67525b3c049e70834cf33790a28643ab058b507b35cBen Cheng error return. 67625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 67725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_entry_breakpoints.c (dwarf_entry_breakpoints): Use CUDIE. 67825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 67925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_siblingof (dwarf_siblingof): Detect a NULL return pointer. 68025b3c049e70834cf33790a28643ab058b507b35cBen Cheng Set the address in the return structure to the address of the next 68125b3c049e70834cf33790a28643ab058b507b35cBen Cheng non-sibling die, if there is no sibling and the return pointer is 68225b3c049e70834cf33790a28643ab058b507b35cBen Cheng not the same as the die pointer. 68325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Expand the description of the dwarf_siblingof prototype. 68425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 68525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_child.c: Fix typo in comment. 68625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 68725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (DWARF_VERSION): Change to 3. 68825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 68925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref.c (__libdw_formref.c): Handle attributes which do 69025b3c049e70834cf33790a28643ab058b507b35cBen Cheng not have a initialised valp pointer. 69125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 69225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getattrs.c (dwarf_getattrs): Return 1 rather than 0 when 69325b3c049e70834cf33790a28643ab058b507b35cBen Cheng the end of the attributes is reached. When the callback fails, 69425b3c049e70834cf33790a28643ab058b507b35cBen Cheng return the address of the failing attribute, not the address of 69525b3c049e70834cf33790a28643ab058b507b35cBen Cheng its successor. 69625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Expand the description of the dwarf_getattrs prototype. 69725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 69825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_child.c (__libdw_find_attr): Use the new definition. 69925b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_child): Likewise. 70025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_tag.c (__libdw_findabbrev): Likewise. 70125b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_tag): Likewise. 70225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 70325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2008-01-08 Roland McGrath <roland@redhat.com> 70425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 70525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (euinclude): Variable removed. 70625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (pkginclude_HEADERS): Set this instead of euinclude_HEADERS. 70725b3c049e70834cf33790a28643ab058b507b35cBen Cheng (libdw.so): Pass -Wl,--enable-new-dtags,-rpath,$(pkglibdir). 70825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 70925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-10-17 Roland McGrath <roland@redhat.com> 71025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 71125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h (__deprecated_attribute__): New macro. 71225b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_formref): Mark it deprecated. 71325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref.c (__libdw_formref): New function, broken out of ... 71425b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_formref): ... here. Call it. Remove INTDEF. 71525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Remove INTDECL. 71625b3c049e70834cf33790a28643ab058b507b35cBen Cheng Declare __libdw_formref. 71725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_siblingof.c (dwarf_siblingof): Call __libdw_formref instead. 71825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref_die.c: Likewise. Handle DW_FORM_ref_addr here. 71925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 72025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_form.c (__libdw_form_val_len): Fix DW_FORM_ref_addr result, 72125b3c049e70834cf33790a28643ab058b507b35cBen Cheng needs to check CU->version. 72225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 72325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf_CU): New member `version'. 72425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_findcu.c (__libdw_findcu): Initialize it. 72525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 72625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_child.c: Return 1 for null entry as first child. 72725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 72825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-10-05 Roland McGrath <roland@redhat.com> 72925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 73025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin_elf.c (check_section): Punt on SHT_NOBITS sections. 73125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 73225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h (__extern_inline): Rename to __libdw_extern_inline. 73325b3c049e70834cf33790a28643ab058b507b35cBen Cheng [__OPTIMIZE__] (dwarf_whatattr, dwarf_whatform): Update uses. 73425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 73525b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-10-03 Roland McGrath <roland@redhat.com> 73625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 73725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.130: Add dwfl_build_id_find_elf 73825b3c049e70834cf33790a28643ab058b507b35cBen Cheng and dwfl_build_id_find_debuginfo. 73925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 74025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.130): New version set, inherits from 74125b3c049e70834cf33790a28643ab058b507b35cBen Cheng ELFUTILS_0.127. Add dwfl_module_build_id, dwfl_module_report_build_id. 74225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 74325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-10-02 Roland McGrath <roland@redhat.com> 74425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 74525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_visit_scopes.c (classify_die): Return walk for class_type and 74625b3c049e70834cf33790a28643ab058b507b35cBen Cheng structure_type. 74725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 74825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-08-07 Roland McGrath <roland@redhat.com> 74925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 75025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getscopes.c (pc_match): Swallow dwarf_haspc error return when 75125b3c049e70834cf33790a28643ab058b507b35cBen Cheng error code is DWARF_E_NOERROR (0). 75225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 75325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getscopes.c (pc_record): Always bail early if DIE->prune. 75425b3c049e70834cf33790a28643ab058b507b35cBen Cheng Fix typo in __libdw_visit_scopes argument. 75525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 75625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getscopes.c (pc_match): Check dwarf_haspc error return, 75725b3c049e70834cf33790a28643ab058b507b35cBen Cheng swallow DWARF_E_NO_DEBUG_RANGES but not other errors. 75825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 75925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-07-03 Roland McGrath <roland@redhat.com> 76025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 76125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h (__extern_inline): New macro. 76225b3c049e70834cf33790a28643ab058b507b35cBen Cheng [__OPTIMIZE__] (dwarf_whatattr, dwarf_whatform): Use it. 76325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 76425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-04-16 Roland McGrath <roland@redhat.com> 76525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 76625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.127): Add dwfl_module_address_section. 76725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 76825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-04-05 Roland McGrath <roland@redhat.com> 76925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 77025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrcdirs.c: New file. 77125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 77225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_getsrcdirs. 77325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.127): Add it. 77425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 77525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf_Files_s): New member ndirs. 77625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c (dwarf_getsrclines): Don't clobber NDIRLIST to 77725b3c049e70834cf33790a28643ab058b507b35cBen Cheng zero before we use it to check for DWARF_E_INVALID_DIR_IDX. 77825b3c049e70834cf33790a28643ab058b507b35cBen Cheng Save DIRARRAY in the Dwarf_Files. 77925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 78025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_ranges.c (dwarf_ranges): Don't sign-extend 32-bit BEGIN 78125b3c049e70834cf33790a28643ab058b507b35cBen Cheng address to check for all-ones base address entry. Check directly. 78225b3c049e70834cf33790a28643ab058b507b35cBen Cheng Reported by Sébastien Dugué <sebastien.dugue@bull.net>. 78325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 78425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-03-25 Roland McGrath <roland@redhat.com> 78525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 78625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin_elf.c (check_section): Return Dwarf * instead of void. 78725b3c049e70834cf33790a28643ab058b507b35cBen Cheng Return NULL when freeing RESULT on error. 78825b3c049e70834cf33790a28643ab058b507b35cBen Cheng (global_read, scngrp_read): Check return value from check_section, 78925b3c049e70834cf33790a28643ab058b507b35cBen Cheng break out of loop after it has freed RESULT. 79025b3c049e70834cf33790a28643ab058b507b35cBen Cheng (valid_p): Handle null argument. 79125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 79225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-03-12 Roland McGrath <roland@redhat.com> 79325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 79425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.127): Add dwfl_report_begin_add. 79525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 79625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-03-04 Roland McGrath <roland@redhat.com> 79725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 79825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.127): New version set, inherits from 79925b3c049e70834cf33790a28643ab058b507b35cBen Cheng ELFUTILS_0.126. Add dwfl_module_addrsym. 80025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 80125b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-02-10 Roland McGrath <roland@redhat.com> 80225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 80325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h (DW_OP_fbreg): Comment fix. 80425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 80525b3c049e70834cf33790a28643ab058b507b35cBen Cheng2007-02-03 Roland McGrath <roland@redhat.com> 80625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 80725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getelf.c (dwarf_getelf): Renamed from dwarf_get_elf. 80825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map (ELFUTILS_0.126): New version set, inherits from 80925b3c049e70834cf33790a28643ab058b507b35cBen Cheng ELFUTILS_0.122. Move dwarf_getelf there; it was never truly 81025b3c049e70834cf33790a28643ab058b507b35cBen Cheng exported in the past. 81125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 81225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2006-12-17 Roland McGrath <roland@redhat.com> 81325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 81425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (dwarf_getlocation_addr): Use zero as base 81525b3c049e70834cf33790a28643ab058b507b35cBen Cheng address when the CU is missing attributes due to buggy GCC. 81625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 81725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2006-08-29 Roland McGrath <roland@redhat.com> 81825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 81925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (CLEANFILES): Add libdw.so.$(VERSION). 82025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 82125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h (dwarf_diecu): Add __nonnull_attribute__. 82225b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_child): Don't list arg 1 in __nonnull_attribute__. 82325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 82425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_alloc.c (__libdw_allocate): Take new ALIGN argument, make sure 82525b3c049e70834cf33790a28643ab058b507b35cBen Cheng result is aligned. Adjust NEWP->remaining here for this allocation. 82625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Update decl. 82725b3c049e70834cf33790a28643ab058b507b35cBen Cheng (libdw_alloc): Update caller. 82825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 82925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2006-07-12 Ulrich Drepper <drepper@redhat.com> 83025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 83125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_child.c: Adjust for internal_function_def removal. 83225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getabbrev.c: Likewise. 83325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_tag.c: Likewise. 83425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_form.c: Likewise. 83525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * memory-access.c: Likewise. 83625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 83725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2006-06-28 Roland McGrath <roland@redhat.com> 83825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 83925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Export dwfl_linecu, dwfl_line_comp_dir. 84025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 84125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Bump to 0.122; export dwfl_module_getsymtab and 84225b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwfl_module_getsym. 84325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 84425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2006-05-27 Ulrich Drepper <drepper@redhat.com> 84525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 84625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Add extern "C". 84725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 84825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2006-05-22 Ulrich Drepper <drepper@redhat.com> 84925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 85025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges.c (dwarf_getaranges): Handle files without 85125b3c049e70834cf33790a28643ab058b507b35cBen Cheng aranges information. 85225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 85325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2006-05-21 Ulrich Drepper <drepper@redhat.com> 85425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 85525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Add nonnull attributes to dwarf_tag, dwarf_getattrs, 85625b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_haschildren. 85725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 85825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2006-02-28 Roland McGrath <roland@redhat.com> 85925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 86025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add missing DW_ATE_*, DW_TAG_*, DW_LANG_*, DW_CFA_*, 86125b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_OP_* values, to match DWARF 3.0. Add new DW_DS_*, DW_END_* 86225b3c049e70834cf33790a28643ab058b507b35cBen Cheng values from DWARF 3.0. 86325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 86425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2006-02-22 Roland McGrath <roland@redhat.com> 86525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 86625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Bump to 0.120; export dwfl_version. 86725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 86825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-12-22 Roland McGrath <roland@redhat.com> 86925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 87025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Bump to 0.119; export dwfl_linux_proc_maps_report. 87125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 87225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-12-12 Roland McGrath <roland@redhat.com> 87325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 87425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_ranges.c: Copy CU base address-finding code from 87525b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_getlocation. 87625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 87725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-12-09 Roland McGrath <roland@redhat.com> 87825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 87925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (dwarf_getlocation_addr): Add some unlikelys. 88025b3c049e70834cf33790a28643ab058b507b35cBen Cheng Delay CU base lookup until it's needed. 88125b3c049e70834cf33790a28643ab058b507b35cBen Cheng If CU base lookup fails with no error, flag invalid DWARF. 88225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 88325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-11-25 Roland McGrath <roland@redhat.com> 88425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 88525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Bump to 0.118; export dwfl_module_register_names. 88625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 88725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-11-15 Roland McGrath <roland@redhat.com> 88825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 88925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am [BUILD_STATIC] (AM_CFLAGS): Add -fpic. 89025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 89125b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-11-13 Roland McGrath <roland@redhat.com> 89225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 89325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Bump to 0.117; export dwfl_module_return_value_location. 89425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 89525b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-10-27 Roland McGrath <roland@redhat.com> 89625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 89725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_entry_breakpoints.c (search_range): Fix binary search code; 89825b3c049e70834cf33790a28643ab058b507b35cBen Cheng don't match end_sequence markers. 89925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 90025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c (compare_lines): Sort end_sequence markers 90125b3c049e70834cf33790a28643ab058b507b35cBen Cheng before normal records at the same address. 90225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_die.c (dwarf_getsrc_die): Don't match an end_sequence 90325b3c049e70834cf33790a28643ab058b507b35cBen Cheng marker. 90425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 90525b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-10-26 Roland McGrath <roland@redhat.com> 90625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 90725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getfuncs.c (dwarf_getfuncs): Use Dwarf_Die, not Dwarf_Func. 90825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_file.c: Renamed to ... 90925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_decl_file.c: ... here. 91025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_col.c: Renamed to ... 91125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_decl_column.c: ... here. 91225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_line.c: Renamed to ... 91325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_decl_line.c: ... here. 91425b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_func_line): Renamed to ... 91525b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_decl_line): ... this. Take a Dwarf_Die * argument. 91625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (__libdw_func_intval): Renamed __libdw_attr_intval. 91725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_name.c: File removed. 91825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_lowpc.c: File removed. 91925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_highpc.c: File removed. 92025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_entrypc.c: File removed. 92125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_die.c: File removed. 92225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Updated. 92325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Update decls. 92425b3c049e70834cf33790a28643ab058b507b35cBen Cheng (Dwarf_Func): Type removed. 92525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Update decls. 92625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (struct Dwarf_Func_s): Type removed. 92725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Updated. 92825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 92925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (CUDIE): New macro. 93025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c (dwarf_getlocation_addr): Use it. 93125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getscopes_die.c (dwarf_getscopes_die): Likewise. 93225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_ranges.c (dwarf_ranges): Likewise. 93325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 93425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c: Renamed to ... 93525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getlocation.c: ... here. 93625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (getloclist): Renamed to getlocation. 93725b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_getloclist): Renamed to dwarf_getlocation. 93825b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_addrloclists): Renamed to dwarf_getlocation_addr. 93925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Updated. 94025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h (dwarf_getloclist): Renamed to dwarf_getlocation. 94125b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_addrloclists): Renamed dwarf_getlocation_addr. 94225b3c049e70834cf33790a28643ab058b507b35cBen Cheng (Dwarf_Loc): Renamed Dwarf_Op. 94325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct loc_s): Update use. 94425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Update map. 94525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 94625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_entry_breakpoints.c: Use the second line record within the 94725b3c049e70834cf33790a28643ab058b507b35cBen Cheng function, regardless of its source location data. 94825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 94925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-10-25 Roland McGrath <roland@redhat.com> 95025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 95125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_entry_breakpoints.c: Fall back to entrypc for contiguous too. 95225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 95325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwarf_entrypc, dwarf_entry_breakpoints. 95425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 95525b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-10-14 Roland McGrath <roland@redhat.com> 95625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 95725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_diecu.c (dwarf_diecu): New file. 95825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 95925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_diecu. 96025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Export it. 96125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 96225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Bump to 0.116; export dwarf_ranges. 96325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 96425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-09-20 Roland McGrath <roland@redhat.com> 96525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 96625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_haspc.c: Use dwarf_ranges. 96725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_entry_breakpoints.c: Likewise. 96825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 96925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_ranges.c: New file. 97025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 97125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_ranges. 97225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add INTDECL. 97325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 97425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-09-14 Roland McGrath <roland@redhat.com> 97525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 97625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_entry_breakpoints.c (dwarf_entry_breakpoints): Fix braino in 97725b3c049e70834cf33790a28643ab058b507b35cBen Cheng prologue_end marker scanning loop. 97825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 97925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-09-11 Roland McGrath <roland@redhat.com> 98025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 98125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Comment typo fix. 98225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 98325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-09-07 Roland McGrath <roland@redhat.com> 98425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 98525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_entry_breakpoints.c: New file. 98625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 98725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_entry_breakpoints. 98825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 98925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_entrypc.c: New file. 99025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 99125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_entrypc. 99225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add INTDECL. 99325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 99425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-08-28 Ulrich Drepper <drepper@redhat.com> 99525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 99625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am: Use $(LINK) not $(CC) when creating DSO. 99725b3c049e70834cf33790a28643ab058b507b35cBen Cheng (%.os): Use COMPILE.os. 99825b3c049e70834cf33790a28643ab058b507b35cBen Cheng (COMPILE.os): Filter out gconv options. 99925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 100025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-08-27 Roland McGrath <roland@redhat.com> 100125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 100225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getscopes.c (dwarf_getscopes): Rewritten using 100325b3c049e70834cf33790a28643ab058b507b35cBen Cheng __libdw_visit_scopes. 100425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 100525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getscopes_die.c: New file. 100625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 100725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_getscopes_die. 100825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Bump to 0.115 and add it. 100925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 101025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_visit_scopes.c (__libdw_visit_scopes): Pass a struct 101125b3c049e70834cf33790a28643ab058b507b35cBen Cheng containing a DIE and its parent pointer, instead of just Dwarf_Die. 101225b3c049e70834cf33790a28643ab058b507b35cBen Cheng Take two functions for both preorder and postorder visitors. 101325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Update decl. 101425b3c049e70834cf33790a28643ab058b507b35cBen Cheng (struct Dwarf_Die_Chain): New type. 101525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_inline.c: Update uses. 101625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 101725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_diename.c (dwarf_diename): Use dwarf_attr_integrate. 101825b3c049e70834cf33790a28643ab058b507b35cBen Cheng Add INTDEF. 101925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add INTDECL. 102025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_name.c (dwarf_func_name): Use dwarf_diename. 102125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 102225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-08-23 Roland McGrath <roland@redhat.com> 102325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 102425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_attr_integrate.c (dwarf_attr_integrate): Treat 102525b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_AT_specification the same as DW_AT_abstract_origin. 102625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 102725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-08-20 Roland McGrath <roland@redhat.com> 102825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 102925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwfl_cumodule, remove dwfl_linecu. 103025b3c049e70834cf33790a28643ab058b507b35cBen Cheng Add dwfl_linux_kernel_report_offline, dwfl_offline_section_address, 103125b3c049e70834cf33790a28643ab058b507b35cBen Cheng and dwfl_report_offline. 103225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 103325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-08-19 Roland McGrath <roland@redhat.com> 103425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 103525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Bump version to ELFUTILS_0.114 for libdwfl changes. 103625b3c049e70834cf33790a28643ab058b507b35cBen Cheng Add dwfl_module_relocate_address, dwfl_module_relocations, 103725b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwfl_module_relocation_info. 103825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 103925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-08-18 Roland McGrath <roland@redhat.com> 104025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 104125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getscopes.c (dwarf_getscopes): Include the CU itself as 104225b3c049e70834cf33790a28643ab058b507b35cBen Cheng outermost scope in the results. 104325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 104425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-08-15 Roland McGrath <roland@redhat.com> 104525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 104625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_inline.c: New file. 104725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 104825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_func_inline, dwarf_func_inline_instances. 104925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add them. 105025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 105125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_die.c: New file. 105225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 105325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_func_die. 105425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add it. Bump version to ELFUTILS_0.114. 105525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 105625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-08-10 Ulrich Drepper <drepper@redhat.com> 105725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 105825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c (dwarf_getsrclines): Correct fallout of renaming 105925b3c049e70834cf33790a28643ab058b507b35cBen Cheng of DW_LNS_set_epilog_begin. 106025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 106125b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-08-09 Roland McGrath <roland@redhat.com> 106225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 106325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h (DW_LNS_set_epilog_begin): Renamed DW_LNS_set_epilogue_begin. 106425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 106525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_end.c: Add INTDEF. 106625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c (dwarf_errmsg): Likewise. 106725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (dwarf_end, dwarf_errmsg): Add INTDECLs. 106825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 106925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-08-01 Roland McGrath <roland@redhat.com> 107025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 107125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges.c (dwarf_getaranges): Check for bogus offset. 107225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getabbrev.c (__libdw_getabbrev): Likewise. 107325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 107425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-07-28 Ulrich Drepper <drepper@redhat.com> 107525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 107625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw.so): No need to link with libeu.a anymore. 107725b3c049e70834cf33790a28643ab058b507b35cBen Cheng (libdw_a_LIBADD): Add all files from libdwfl.a. 107825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 107925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-07-27 Roland McGrath <roland@redhat.com> 108025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 108125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw.so): Link ../libdwfl/libdwfl_pic.a in, 108225b3c049e70834cf33790a28643ab058b507b35cBen Cheng along with ../libebl/libebl.a and ../lib/libeu.a; 108325b3c049e70834cf33790a28643ab058b507b35cBen Cheng depend on ../libelf/libelf.so. 108425b3c049e70834cf33790a28643ab058b507b35cBen Cheng (libdw_so_LDADD): New variable. 108525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwfl_* symbols formerly in ../libdwfl/libdwfl.map. 108625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 108725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Define an empty base version and move all symbols to 108825b3c049e70834cf33790a28643ab058b507b35cBen Cheng version ELFUTILS_0.111; don't define ELFUTILS_1.0 at all yet. 108925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 109025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-07-23 Ulrich Drepper <drepper@redhat.com> 109125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 109225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c: Add internal alias for dwarf_errno. 109325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Declare __dwarf_errno_internal. 109425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c: Use INTDEF for dwarf_errno. 109525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 109625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c [USE_TLS]: Actually use __thread in definition of 109725b3c049e70834cf33790a28643ab058b507b35cBen Cheng global_error. 109825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 109925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-06-01 Roland McGrath <roland@redhat.com> 110025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 110125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges.c (dwarf_getaranges): Sort result array. 110225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getarange_addr.c (dwarf_getarange_addr): Use binary search. 110325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 110425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-06-08 Roland McGrath <roland@redhat.com> 110525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 110625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * memory-access.h (get_uleb128_step, get_uleb128): Remove casts. 110725b3c049e70834cf33790a28643ab058b507b35cBen Cheng (get_sleb128_step, get_sleb128): Likewise. 110825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getattrs.c (dwarf_getattrs): Add consts. 110925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c (getloclist): Likewise. 111025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formblock.c (dwarf_formblock): Likewise. 111125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c (dwarf_getsrclines): Likewise. 111225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getabbrevattr.c (dwarf_getabbrevattr): Likewise. 111325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref.c (dwarf_formref): Likewise. 111425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formsdata.c (dwarf_formsdata): Likewise. 111525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formudata.c (dwarf_formudata): Likewise. 111625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_haschildren.c (dwarf_haschildren): Likewise. 111725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_child.c (__libdw_find_attr, __libdw_find_attr): Likewise. 111825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_tag.c (dwarf_tag): Likewise. 111925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getabbrev.c (__libdw_getabbrev): Likewise. 112025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * memory-access.c (__libdw_get_uleb128, __libdw_get_sleb128): Likewise. 112125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_form.c (__libdw_form_val_len): Likewise. 112225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Update decl. 112325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 112425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-06-04 Roland McGrath <roland@redhat.com> 112525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 112625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * memory-access.h (get_uleb128_rest_return): New macro. 112725b3c049e70834cf33790a28643ab058b507b35cBen Cheng [! IS_LIBDW] (__libdw_get_uleb128): New static, defined using it. 112825b3c049e70834cf33790a28643ab058b507b35cBen Cheng (get_sleb128_rest_return): New macro. 112925b3c049e70834cf33790a28643ab058b507b35cBen Cheng [! IS_LIBDW] (__libdw_get_sleb128): New static, defined using it. 113025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * memory-access.c: New file. 113125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 113225b3c049e70834cf33790a28643ab058b507b35cBen Cheng (DEFS): Add -DIS_LIBDW. 113325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 113425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-05-31 Roland McGrath <roland@redhat.com> 113525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 113625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to 113725b3c049e70834cf33790a28643ab058b507b35cBen Cheng formref offset. 113825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 113925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-05-30 Roland McGrath <roland@redhat.com> 114025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 114125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c (dwarf_addrloclists): Use DW_AT_entry_pc for base 114225b3c049e70834cf33790a28643ab058b507b35cBen Cheng address if DW_AT_low_pc is missing. Not to spec, but GCC generates it. 114325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 114425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c (dwarf_addrloclists): Don't sign-extend 4-byte 114525b3c049e70834cf33790a28643ab058b507b35cBen Cheng BEGIN value. Instead, match base address entries separately for 114625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 32/64 size cases. 114725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 114825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-05-28 Roland McGrath <roland@redhat.com> 114925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 115025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c (dwarf_addrloclists): Fix decoding to advance 115125b3c049e70834cf33790a28643ab058b507b35cBen Cheng past location expression contents. 115225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 115325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-05-23 Roland McGrath <roland@redhat.com> 115425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 115525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Comment typo fix. 115625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 115725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_haspc.c (dwarf_haspc): Fix CU DIE address calculation. 115825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c (dwarf_addrloclists): Likewise. 115925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 116025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-05-22 Ulrich Drepper <drepper@redhat.com> 116125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 116225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Only use INTDECL for alias prototypes. 116325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 116425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-05-19 Roland McGrath <roland@redhat.com> 116525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 116625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c (attr_ok): Permit DW_AT_static_link too. 116725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 116825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getscopevar.c: New file. 116925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 117025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_getscopevar. 117125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 117225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrcfiles.c: Add INTDEF. 117325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_haschildren.c: Likewise. 117425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (dwarf_getsrcfiles, dwarf_haschildren): Add INTDECL. 117525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 117625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getscopes.c: New file. 117725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 117825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_getscopes. 117925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add it. 118025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 118125b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-05-18 Roland McGrath <roland@redhat.com> 118225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 118325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (IDX_debug_ranges): New enum constant. 118425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin_elf.c (dwarf_scnnames): Add it for ".debug_ranges". 118525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (DWARF_E_NO_DEBUG_RANGES): New enum constant. 118625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c (errmsgs): Add it. 118725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_haspc.c: New file. 118825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_haspc. 118925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add it. 119025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add INTDECL. 119125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 119225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_attr_integrate.c: New file. 119325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_hasattr_integrate.c: New file. 119425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add them. 119525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_attr_integrate, dwarf_hasattr_integrate. 119625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add them. 119725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 119825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_hasattr.c: Add INTDEF. 119925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add INTDECL for it. 120025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 120125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref_die.c: New file. 120225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add it. 120325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h (dwarf_formref_die): Declare it. 120425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (dwarf_formref_die): Add INTDECL. 120525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add it. 120625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 120725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c (attr_ok, getloclist): New functions, broken out 120825b3c049e70834cf33790a28643ab058b507b35cBen Cheng of ... 120925b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_getloclist): ... here. Call them. 121025b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_addrloclists): New function. 121125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare it. 121225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add it. 121325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 121425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getmacros.c (dwarf_getmacros): Don't bail at 121525b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_MACINFO_end_file. Recognize type 0 as terminator. 121625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 121725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-05-05 Roland McGrath <roland@redhat.com> 121825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 121925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_die.c (dwarf_getsrc_die): Use binary search. 122025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 122125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c (dwarf_getsrclines): Sort result array, since 122225b3c049e70834cf33790a28643ab058b507b35cBen Cheng the line program does not produce all entries in ascending order. 122325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 122425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-04-25 Ulrich Drepper <drepper@redhat.com> 122525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 122625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_file.c (dwarf_getsrc_file): Handle multiple 122725b3c049e70834cf33790a28643ab058b507b35cBen Cheng occurences (e.g., inlines) better. 122825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 122925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-04-24 Ulrich Drepper <drepper@redhat.com> 123025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 123125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h (DWARF_END_ABBREV): Define. 123225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getabbrev.c (__libdw_getabbrev): Return DWARF_END_ABBREV if 123325b3c049e70834cf33790a28643ab058b507b35cBen Cheng end is reached. 123425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_offabbrev.c (dwarf_offabbrev): Return -1 on error, 1 if end 123525b3c049e70834cf33790a28643ab058b507b35cBen Cheng of records reached. 123625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_tag.c (__libdw_findabbrev): Also recognize DWARF_END_ABBREV 123725b3c049e70834cf33790a28643ab058b507b35cBen Cheng as error of __libdw_getabbrev. 123825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 123925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-04-04 Ulrich Drepper <drepper@redhat.com> 124025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 124125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_file.c (dwarf_getsrc_file): Minor optimization. 124225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 124325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_file.c (dwarf_getsrc_file): Always pass number of 124425b3c049e70834cf33790a28643ab058b507b35cBen Cheng results back to caller. 124525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 124625b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-04-04 Roland McGrath <roland@redhat.com> 124725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 124825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_file.c (dwarf_getsrc_file): Use size_t for CUHL. 124925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 125025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_line.c (__libdw_func_intval): Use internal_function in 125125b3c049e70834cf33790a28643ab058b507b35cBen Cheng defn. 125225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 125325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-04-04 Ulrich Drepper <drepper@redhat.com> 125425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 125525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_file.c (dwarf_getsrc_file): Use INTUSE. 125625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 125725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_file.c: New file. 125825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_getsrc_file.c. 125925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_getsrc_file. 126025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwarf_getsrc_file. 126125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 126225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-04-02 Ulrich Drepper <drepper@redhat.com> 126325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 126425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_entrypc.c: New file. 126525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_col.c: New file. 126625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_line.c: New file. 126725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_file.c: New file. 126825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Add prototypes for new functions. 126925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwarf_func_entrypc, dwarf_func_col, dwarf_func_line, 127025b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_func_file. 127125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_func_entrypc.c, 127225b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_func_col.c, dwarf_func_line.c, dwarf_func_file.c. 127325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf_Func_s): Add cudie element. 127425b3c049e70834cf33790a28643ab058b507b35cBen Cheng Declare __libdw_func_intval and __dwarf_formsdata_internal. 127525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getfuncs.c: Also fill in cudie in Dwarf_Func object. 127625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formsdata.c: Use INTUSE and INTDEF to avoid PLTs. 127725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 127825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf.h: Add some DWARF3 definitions. 127925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 128025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-04-01 Ulrich Drepper <drepper@redhat.com> 128125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 128225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getfuncs.c: New file. 128325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_highpc.c: New file. 128425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_lowpc.c: New file. 128525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_func_name.c: New file. 128625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_getfuncs.c, 128725b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_func_highpc.c, dwarf_func_lowpc.c, and dwarf_func_name.c. 128825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwarf_getfuncs, dwarf_func_highpc, dwarf_func_lowpc, 128925b3c049e70834cf33790a28643ab058b507b35cBen Cheng and dwarf_func_name. 129025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Add prototypes for new functions. 129125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_child.c: Use INTUSE and INTDEF to avoid PLTs. 129225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_siblingof.c: Likewise. 129325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_dieoffset.c: Likewise. 129425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_highpc.c: Likewise. 129525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lowpc.c: Likewise. 129625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add prototypes for internal functions. 129725b3c049e70834cf33790a28643ab058b507b35cBen Cheng Define Dwarf_Func_s structure. 129825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 129925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-03-29 Ulrich Drepper <drepper@redhat.com> 130025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 130125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Add padding in Dwarf_die. 130225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 130325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_arrayorder.c: Use INTUSE and INTDEF to avoid PLTs. 130425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_attr.c: Likewise. 130525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin.c: Likewise. 130625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin_elf.c: Likewise. 130725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_bitoffset.c: Likewise. 130825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_bitsize.c: Likewise. 130925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_bytesize.c: Likewise. 131025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_diename.c: Likewise. 131125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formaddr.c: Likewise. 131225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formblock.c: Likewise. 131325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formref.c: Likewise. 131425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formstring.c: Likewise. 131525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formudata.c: Likewise. 131625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getarange_addr.c: Likewise. 131725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getarangeinfo.c: Likewise. 131825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges.c: Likewise. 131925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c: Likewise. 132025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getmacros.c: Likewise. 132125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_die.c: Likewise. 132225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrcfiles.c: Likewise. 132325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Likewise. 132425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_highpc.c: Likewise. 132525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lowpc.c: Likewise. 132625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_nextcu.c: Likewise. 132725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_offdie.c: Likewise. 132825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_siblingof.c: Likewise. 132925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_srclang.c: Likewise. 133025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_tag.c: Likewise. 133125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_findcu.c: Likewise. 133225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add prototypes for internal functions. 133325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 133425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_addrdie.c: New file. 133525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_macro_opcode.c: New file. 133625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_macro_param1.c: New file. 133725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_macro_param2.c: New file. 133825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Add declarations. Move Dwarf_Macro definition to libdwP.h. 133925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Remove Dwarf_Macro definition. 134025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_addrdie.c, 134125b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_macro_opcode.c, dwarf_macro_param1.c, and dwarf_macro_param2.c. 134225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add entries for new functions. 134325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 134425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-03-21 Ulrich Drepper <drepper@redhat.com> 134525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 134625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Handle broken gcc < 4. 134725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 134825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-02-15 Ulrich Drepper <drepper@redhat.com> 134925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 135025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. 135125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 135225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin_elf.c: Fix warnings. 135325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_dieoffset.c: Likewise. 135425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_end.c: Likewise. 135525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c: Likewise. 135625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getpubnames.c: Likewise. 135725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 135825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add new error values. 135925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c: Support new error values. 136025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getpubnames.c: Check parameter value. 136125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 136225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-02-05 Ulrich Drepper <drepper@redhat.com> 136325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 136425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am: Check for text relocations in constructed DSO. 136525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 136625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am [MUDFLAP] (AM_CFLAGS): Add -fmudflap. 136725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 136825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2005-02-04 Ulrich Drepper <drepper@redhat.com> 136925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 137025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_siblingof.c (dwarf_siblingof): Add some buffer boundary 137125b3c049e70834cf33790a28643ab058b507b35cBen Cheng checks to not read over buffer boundaries for ill-formed DWARF data. 137225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 137325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-09-25 Ulrich Drepper <drepper@redhat.com> 137425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 137525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_child.c: Make compile with gcc 4.0. 137625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c: Likewise. 137725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formblock.c: Likewise. 137825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getabbrev.c: Likewise. 137925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getattrs.c: Likewise. 138025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Likewise. 138125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_tag.c: Likewise. 138225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_form.c: Likewise. 138325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 138425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-20 Ulrich Drepper <drepper@redhat.com> 138525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 138625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am: Support building with mudflap. 138725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 138825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c: Fix warnings gcc 3.4 spits out. 138925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Likewise. 139025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_memory-access.h: Likewise. 139125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 139225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-19 Ulrich Drepper <drepper@redhat.com> 139325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 139425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrcfiles.c: Third parameter can be NULL. 139525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 139625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Define Dwarf_macro. Declare dwarf_getmacros. 139725b3c049e70834cf33790a28643ab058b507b35cBen Cheng Third parameter of dwarf_getsrcfiles can be NULL. 139825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 139925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwarf_getmacros. 140025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_getmacros. 140125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getmacros.c: New file. 140225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 140325b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-18 Ulrich Drepper <drepper@redhat.com> 140425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 140525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Second parameter of dwarf_getaranges can be NULL. 140625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 140725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_nextcu.c: Return -1 if dwarf parameter is NULL. 140825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 140925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: 141025b3c049e70834cf33790a28643ab058b507b35cBen Cheng Use read_2ubyte_unaligned_inc instead of _inc-less variant. 141125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 141225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges.c: Allow naranges parameter to be NULL. 141325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 141425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (_): Use elfutils domain. 141525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 141625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c (dwarf_getsrclines): Add more branch prediction. 141725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 141825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Fix typo in comment. 141925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 142025b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-17 Ulrich Drepper <drepper@redhat.com> 142125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 142225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am: Support building with mudflap. 142325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 142425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-16 Ulrich Drepper <drepper@redhat.com> 142525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 142625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * memory-access.h: Add lots of const in case a pointer passed is const. 142725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 142825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formflag.c: New file. 142925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getattrs.c: New file. 143025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c: Add new error value. 143125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Add prototypes for new functions. Adjust prototype for 143225b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_getpubnames. 143325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add new functions. 143425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getpubnames.c: Change type of return value and fourth parameter 143525b3c049e70834cf33790a28643ab058b507b35cBen Cheng to ptrdiff_t. 143625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add new error value. 143725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_getattrs.c and 143825b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_formflag.c. 143925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 144025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getpubnames.c (dwarf_getpubnames): Just fail if dbg is NULL. 144125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 144225b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-12 Ulrich Drepper <drepper@redhat.com> 144325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 144425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getarange_addr.c: New file 144525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getarangeinfo.c: New file. 144625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getaranges.c: New file. 144725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_onerange.c: New file. 144825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare new functions. Define Dwarf_Arange and 144925b3c049e70834cf33790a28643ab058b507b35cBen Cheng Dwarf_Aranges. 145025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add new functions. 145125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add new errors. Add aranges member to struct Dwarf. 145225b3c049e70834cf33790a28643ab058b507b35cBen Cheng Define Dwarf_Aranges_s and Dwarf_Arange_s. 145325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_getaranges.c, 145425b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_onearange.c, dwarf_getarangeinfo.c, dwarf_getarange_addr.c. 145525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c: Add new message. 145625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 145725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-11 Ulrich Drepper <drepper@redhat.com> 145825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 145925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_lineaddr.c, dwarf_linecol.c, 146025b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_linebeginstatement.c, dwarf_lineendsequence.c, dwarf_lineblock.c, 146125b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_lineprologueend.c, dwarf_lineepiloguebegin.c, dwarf_onesrcline.c. 146225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c: Add another message. 146325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_die.c: Adjust for Dwarf_Files and Dwarf_Lines 146425b3c049e70834cf33790a28643ab058b507b35cBen Cheng introduction. 146525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_filesrc.c: Likewise. 146625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrcfiles.c: Likewise. 146725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Likewise. 146825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lineaddr.c: New file. 146925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_linebeginstatement.c: New file. 147025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lineblock.c: New file. 147125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_linecol.c: New file. 147225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lineendsequence.c: New file. 147325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lineepiloguebegin.c: New file. 147425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lineno.c: New file. 147525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lineprologueend.c: New file. 147625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_onesrcline.c: New file. 147725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lineno.c: Change interface to store result in object pointed 147825b3c049e70834cf33790a28643ab058b507b35cBen Cheng to by second parameter. 147925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Add prototypes for new functions. Change dwarf_lineno 148025b3c049e70834cf33790a28643ab058b507b35cBen Cheng prototype. Define Dwarf_Files and Dwarf_Lines. 148125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add new functions. 148225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Define Dwarf_Files_s and Dwarf_Lines_s. 148325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_findcu.c: Don't initialize nlines field. 148425b3c049e70834cf33790a28643ab058b507b35cBen Cheng 148525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_siblingof: Little optimization. 148625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 148725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin.c: Remember that the ELF descriptor must be closed. 148825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_end.c: Close ELF descriptor if free_elf is set. 148925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf): Add free_elf field. 149025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 149125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_getstring.c and 149225b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_offabbrev.c. 149325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getstring.c: New file. 149425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_offabbrev.c: New file. 149525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwarf_getstring and dwarf_offabbrev. 149625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getabbrev.c (__libdw_getabbrev): Add new dbg and result 149725b3c049e70834cf33790a28643ab058b507b35cBen Cheng parameters. Don't allocate memory if not necessary and don't lookup 149825b3c049e70834cf33790a28643ab058b507b35cBen Cheng previous results if no CU given. 149925b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_getabbrev): Adjust call to __libdw_getabbrev. 150025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_tag.c: Adjust call to __libdw_getabbrev. 150125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare dwarf_offabbrev and dwarf_getstring. 150225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Change prototype for __libdw_getabbrev. 150325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 150425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getabbrevattr.c: Add offsetp parameter. Fill in before 150525b3c049e70834cf33790a28643ab058b507b35cBen Cheng returning if this is wanted. 150625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 150725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-09 Ulrich Drepper <drepper@redhat.com> 150825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 150925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_nextcu.c: Add new parameter offset_sizep. Initialize it 151025b3c049e70834cf33790a28643ab058b507b35cBen Cheng with offset_size value. 151125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Adjust dwarf_nextcu prototype. 151225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h (struct Dwarf_CU): Add offset_size member. 151325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_findcu.c: Adjust dwarf_nextcu call. Initialize offset_size 151425b3c049e70834cf33790a28643ab058b507b35cBen Cheng member of new CU struct. 151525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formstring.c: Depend on offset_size not address_size for 151625b3c049e70834cf33790a28643ab058b507b35cBen Cheng DW_FORM_strp handling. 151725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_form.c: Likewise for DW_FORM_strp and DW_FORM_ref_addr. 151825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 151925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_tag.c (__libdw_findabbrev): Return correct value for 152025b3c049e70834cf33790a28643ab058b507b35cBen Cheng failing lookup. 152125b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_tag): Correctly recognize failed lookup. 152225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 152325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_end.c (cu_free): Call tdestroy for locs member. Use new 152425b3c049e70834cf33790a28643ab058b507b35cBen Cheng function noop_free. 152525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c: Add message for DWARF_E_NO_BLOCK. 152625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_formblock.c: New file. 152725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c: Rewrite to handle a single block. 152825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Define Dwarf_Block. Rename Dwarf_Loc members. Remove 152925b3c049e70834cf33790a28643ab058b507b35cBen Cheng Dwarf_Locdesc definition. Declare dwarf_formblock. Remove 153025b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_getloclistent declaration. 153125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwarf_formblock, remove dwarf_getloclistent. 153225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Define struct loc_s and DWARF_E_NO_BLOCK. 153325b3c049e70834cf33790a28643ab058b507b35cBen Cheng Add locs member to struct Dwarf_CU. 153425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_fundcu.c: Initialize locs member of new CU. 153525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_formblock.c. 153625b3c049e70834cf33790a28643ab058b507b35cBen Cheng Remove dwarf_getloclistent.c. 153725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 153825b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-07 Ulrich Drepper <drepper@redhat.com> 153925b3c049e70834cf33790a28643ab058b507b35cBen Cheng 154025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Use __nonnull__ attribute only for gcc >= 3.3. 154125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Likewise. 154225b3c049e70834cf33790a28643ab058b507b35cBen Cheng 154325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclist.c: New file. 154425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getloclistent.c: New file. 154525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Define Dwarf_Loc and Dwarf_Locdesc. 154625b3c049e70834cf33790a28643ab058b507b35cBen Cheng Declare dwarf_getloclistent and dwarf_getloclist. 154725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwarf_getloclistent and dwarf_getloclist. 154825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Define DWARF_E_NO_LOCLIST. 154925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_getloclistent.c and 155025b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_getloclist.c. 155125b3c049e70834cf33790a28643ab058b507b35cBen Cheng 155225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c: More error messages. 155325b3c049e70834cf33790a28643ab058b507b35cBen Cheng 155425b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-06 Ulrich Drepper <drepper@redhat.com> 155525b3c049e70834cf33790a28643ab058b507b35cBen Cheng 155625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Remove debugging support. 155725b3c049e70834cf33790a28643ab058b507b35cBen Cheng 155825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrcfiles.c: New file. 155925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_filesrc.c: New file. 156025b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Declare these functions. Define Dwarf_File. 156125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.c: Adjust Dwarf_File_s definition. 156225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add these functions. 156325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (libdw_a_SOURCES): Add dwarf_getsrcfiles.c and 156425b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_filesrc.c. 156525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: Initialize cu->files. 156625b3c049e70834cf33790a28643ab058b507b35cBen Cheng 156725b3c049e70834cf33790a28643ab058b507b35cBen Cheng2004-01-05 Ulrich Drepper <drepper@redhat.com> 156825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 156925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Add more nonnull function attributes. 157025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 157125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_begin_elf.c (dwarf_begin_elf): Don't initialize mem_tail->next. 157225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_end.c (cu_free): New function. 157325b3c049e70834cf33790a28643ab058b507b35cBen Cheng (dwarf_end): Also free CU tree. Correct freeing of memory blocks. 157425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_error.c (errmsgs): Add new messages. 157525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrc_die.c: New file. 157625b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_getsrclines.c: New file. 157725b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_lineno.c: New file. 157825b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_linesrc.c: New file. 157925b3c049e70834cf33790a28643ab058b507b35cBen Cheng * dwarf_nextcu.c (dwarf_nextcu): Use read_*byte_unaligned_inc 158025b3c049e70834cf33790a28643ab058b507b35cBen Cheng instead of the *_inc-less variants. 158125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.h: Define Dwarf_Line. Add some function attributes. Declare 158225b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_getsrclines, dwarf_getsrc_die, dwarf_lineno, and dwarf_linesrc. 158325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw.map: Add dwarf_getsrclines, dwarf_getsrc_die, dwarf_lineno, 158425b3c049e70834cf33790a28643ab058b507b35cBen Cheng and dwarf_linesrc. 158525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdwP.h: Add more error codes. 158625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (struct Dwarf): Remove mem_tail.next member. 158725b3c049e70834cf33790a28643ab058b507b35cBen Cheng (Dwarf_File): Define type. 158825b3c049e70834cf33790a28643ab058b507b35cBen Cheng (struct Dwarf_Line_s): Define type. 158925b3c049e70834cf33790a28643ab058b507b35cBen Cheng (struct Dwarf_CU): Add lines and nlines members. 159025b3c049e70834cf33790a28643ab058b507b35cBen Cheng (libdw_alloc): Define local variable _tail and use it. 159125b3c049e70834cf33790a28643ab058b507b35cBen Cheng Add some function attributes. 159225b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_alloc.c (__libdw_allocate): Don't initialize next member. 159325b3c049e70834cf33790a28643ab058b507b35cBen Cheng * libdw_findcu.c (__libdw_findcu): Initialize lines and nlines members. 159425b3c049e70834cf33790a28643ab058b507b35cBen Cheng * memory-access.h: Add unlikely for the endian conversion paths. 159525b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Makefile.am (AM_CFLAGS): Add -std parameter. 159625b3c049e70834cf33790a28643ab058b507b35cBen Cheng (libdw_a_SOURCES): Add dwarf_getsrclines, dwarf_getsrc_die, 159725b3c049e70834cf33790a28643ab058b507b35cBen Cheng dwarf_lineno, and dwarf_linesrc. 159825b3c049e70834cf33790a28643ab058b507b35cBen Cheng 159925b3c049e70834cf33790a28643ab058b507b35cBen Cheng2003-08-11 Ulrich Drepper <drepper@redhat.com> 160025b3c049e70834cf33790a28643ab058b507b35cBen Cheng 160125b3c049e70834cf33790a28643ab058b507b35cBen Cheng * Moved to CVS archive. 1602