Age | Commit message (Collapse) | Author | Files | Lines |
|
* readelf.c: Remove duplicate declaration of variable do_wide.
* dwarf.h: Add export of do_wide.
* hist.h: Move declaration of histograms and num_histograms
variables from here to...
* hist.c: ...here.
|
|
|
|
Support unordered .debug_info references to .debug_ranges.
* dwarf.c (struct range_entry, range_entry_compar): New.
(display_debug_ranges): Remove variables last_offset, first, j,
seen_first_offset, use_debug_info and next. New variables
range_entries and range_entry_fill. Create the sorted copy
range_entries. Remove the FIXME error on detected unordered references.
* dwarf.h (debug_info <range_lists>): New comment.
binutils/testsuite/
* binutils-all/objcopy.exp (testranges): New test.
* binutils-all/testranges.d, binutils-all/testranges.s: New files.
|
|
* objdump.c (dump_dwarf_section): Handle .eh_frame like other dwarf
sections.
* dwarf.h (struct dwarf_section_display): Remove eh_frame field.
* dwarf.c (debug_displays): Adjust for removed field.
|
|
* NEWS: Mention feature match between objdump and readelf for dumping
dwarf info.
* doc/binutils.texi (objdump): Document -W/--dwarf improvments to
objdump.
* objdump.c (usage): Update documentation for -W/--dwarf.
(enum option_values): Add OPTION_DWARF.
(long_options): --dwarf can accept arguments.
(dump_dwarf_section): Also check enabled field.
(main): Option -W can accept arguments, code moved to
dwarf.c and call dwarf_select_sections_all instead.
* readelf.c (process_section_headers): Remove do_debug_lines_decoded.
(parse_args): Move code to...
* dwarf.c (dwarf_select_sections_by_letters,
dwarf_select_sections_by_names): : ...here (new functions).
(do_debug_lines_decoded): Remove and replaced by ...
(FLAG_DEBUG_LINES_RAW, FLAG_DEBUG_LINES_DECODED): ... new macros.
(display_debug_lines): Adjust for previous change.
(dwarf_select_sections_all): New function.
(debug_displays): Add initializer for enabled field.
* dwarf.h (do_debug_lines_decoded): Remove.
Add prototypes for the new functions.
(struct dwarf_section_display): Add enabled field.
|
|
* Makefile.am (BFD32_LIBS): Add compress.lo.
(BFD32_LIBS_CFILES): Add compress.c.
(BFD_H_FILES): Likewise.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* config.in: Add HAVE_ZLIB_H
* configure.in: Add test for libz and zlib.h
* configure: Regenerate.
* dwarf2.c (read_section): New function.
(read_indirect_string): Call new function read_section.
(read_abbrevs): Likewise.
(decode_line_info): Likewise.
(read_debug_ranges): Likewise.
(find_line): Call new function read_section when just one
.zdebug_info section is found, otherwise read and compress
multiple sections.
(_bfd_dwarf2_cleanup_debug_info): Free sec_info_ptr.
* elf.c (_bfd_elf_make_section_from_shdr): Add zdebug prefix.
(special_sections_z): New struct.
(special_sections): Refer to special_sections_z.
* elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Recognize
sections named .zdebug_*.
(_bfd_mips_elf_fake_sections): Likewise.
* compress.c: New file.
(bfd_uncompress_section_contents): New function.
bfd/doc/
* Makefile.am (BFD_H_DEP): Add ../compress.c.
* Makefile.in: Regenerate.
binutils/
* config.in: Add HAVE_ZLIB_H
* configure.in: Add test for libz and zlib.h
* configure: Regenerate.
* dwarf.c (debug_displays): Add .zdebug_* strings.
* dwarf.h (struct dwarf_section): Add fields uncompressed_namd
and compressed_name.
* objdump.c (load_debug_section): Call
bfd_uncompress_section_contents when loading a compressed
section.
(dump_dwarf_section): Recognize compressed section name.
(mach_o_dwarf_sections): Rename as
mach_o_uncompressed_dwarf_sections.
(mach_o_compressed_dwarf_sections): New variable.
(generic_dwarf_section): Rename as
generic_uncompressed_dwarf_sections.
(generic_compressed_dwarf_sections): New variable.
(check_mach_o_dwarf): Save and restore
mach_o_compressed_dwarf_sections.
* readelf.c: Add #include for config.h and zlib.h
(process_section_headers): Recognize compressed section name.
(uncompress_section_contents): New function.
(load_debug_section): Call uncompress_section_contents when
loading a compressed section.
(display_debug_section): Recognize compressed section name.
binutils/testsuite:
* binutils-all/objdump.exp: Add test for objdump -s on a file
with a compressed debug section. Add test for objdump -W on a
file that contains a compressed debug section.
* binutils-all/readelf.exp: Call readelf_compressed_wa_test.
(readelf_compressed_wa_test): New function.
* binutils-all/dw2-compressed.S: New file.
* binutils-all/objdump.W: New file.
* binutils-all/objdump.s: New file.
* binutils-all/readelf.wa: New file.
|
|
display_debug_lines_raw.
(display_debug_lines_decoded): New function. Displays the
interpreted contents of a .debug_line section.
(display_debug_lines): New function: Selects either a raw dump or
a decoded dump (or both) as requested by the user.
* dwarf.h (do_debug_lines_decoded): New extern.
* readelf.c: Add support for -wL or --debug-dump=decodedline
option to display the decoded contents of a .debug_line section.
* doc/binutils.texi: Document the new option.
* NEWS: Mention the new feature.
|
|
2008-01-28 H.J. Lu <hongjiu.lu@intel.com>
* dwarf.c: Include "elf/common.h".
(eh_addr_size): Changed to int.
(dwarf_regnames_i386): New.
(dwarf_regnames_x86_64): Likewise.
(dwarf_regnames): Likewise.
(dwarf_regnames_count): Likewise.
(init_dwarf_regnames): Likewise.
(regname): Likewise.
(frame_display_row): Properly support different address size.
Call regname to get register name.
(display_debug_frames): Call regname to get register name.
Display DW_CFA_def_cfa_register as DW_CFA_def_cfa_register
instead of DW_CFA_def_cfa_reg.
* dwarf.h (init_dwarf_regnames): New.
* objdump.c: Include "elf-bfd.h".
(dump_dwarf): Call init_dwarf_regnames on ELF input.
* readelf.c (guess_is_rela): Change argument to int.
(parse_args): Remove the undocumented upper case options for
-wX.
(process_file_header): Call init_dwarf_regnames if
do_dwarf_register is true.
gas/testsuite/
2008-01-28 H.J. Lu <hongjiu.lu@intel.com>
* gas/cfi/cfi-alpha-1.d: Replace DW_CFA_def_cfa_reg with
DW_CFA_def_cfa_register.
* gas/cfi/cfi-alpha-3.d: Likewise.
* gas/cfi/cfi-hppa-1.d: Likewise.
* gas/cfi/cfi-i386.d: Likewise.
* gas/cfi/cfi-m68k.d: Likewise.
* gas/cfi/cfi-mips-1.d: Likewise.
* gas/cfi/cfi-sh-1.d: Likewise.
* gas/cfi/cfi-sparc-1.d: Likewise.
* gas/cfi/cfi-sparc64-1.d: Likewise.
* gas/cfi/cfi-x86_64.d: Likewise.
* gas/cfi/cfi-common-1.d: Updated for i386/x86-64 register
names.
* gas/cfi/cfi-common-2.d: Likewise.
* gas/cfi/cfi-common-5.d: Likewise.
* gas/cfi/cfi-i386.d: Likewise.
* gas/cfi/cfi-x86_64.d: Likewise.
ld/testsuite/
2008-01-28 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/eh1.d: Replace DW_CFA_def_cfa_reg with
DW_CFA_def_cfa_register. Updated for i386/x86-64 register
names.
* ld-elf/eh2.d: Likewise.
* ld-elf/eh3.d: Likewise.
* ld-elf/eh4.d: Likewise.
* ld-elf/eh5.d: Likewise.
|
|
(display_debug_frames): Remove check in is_relocatable.
* dwarf.h (is_relocatable): Remove declaration.
* objdump.c (is_relocatable): New static definition.
* readelf.c (dump_relocations): Make the function void.
(is_32bit_abs_reloc): Add support for x86, Arc, Arm, D10V, Dlx, OR32 and Score.
(is_32bit_pcrel_reloc): Add support for x86 and Arm.
(is_16bit_abs_reloc): Add support for D10V.
(debug_apply_rela_addends): Rename to debug_apply_relocations.
Add code to support rel relocations.
(load_debug_section): Fix call to debug_apply_relocations.
(get_file_header): Remove setting of is_relocatable.
* gas/cfi/cfi-common-6.d: Allow for possible relocation of the .debug.eh_frame section.
|
|
|
|
Many files: Include sysdep.h before bfd.h.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
binutils/
* bucumm.h: Split off host dependencies to..
* sysdep.h: ..here.
Many files: Include sysdep.h. Remove duplicate headers and reorder.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
ld/
Many files: Include sysdep.h first. Remove duplicate headers.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
opcodes/
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
* ns32k-dis.c: Include sysdep.h first.
|
|
* Makefile.am (CFILES): Add dwarf.c.
(readelf_SOURCES): Likewise.
* Makefile.in: Regenerated.
* dwarf.c: New file.
* dwarf.h. Likewise.
* readelf.c: Include "dwarf.h" instead of "bfd.h".
(do_debug_info): Remove the static definition.
(do_debug_abbrevs): Likewise.
(do_debug_lines): Likewise.
(do_debug_pubnames): Likewise.
(do_debug_aranges): Likewise.
(do_debug_ranges): Likewise.
(do_debug_frames): Likewise.
(do_debug_frames_interp): Likewise.
(do_debug_macinfo): Likewise.
(do_debug_str): Likewise.
(do_debug_loc): Likewise.
(is_relocatable): Likewise.
(have_frame_base): Likewise.
(need_base_address): Likewise.
(eh_addr_size): Likewise.
(error): Likewise.
(warn): Likewise.
(cmalloc): Likewise.
(xcmalloc): Likewise.
(xcrealloc): Likewise.
(dwarf_section): Removed.
(byte_get_little_endian): Likewise.
(byte_get_signed): Likewise.
(byte_get_big_endian): Likewise.
(read_leb128): Likewise.
(State_Machine_Registers): Likewise.
(state_machine_regs): Likewise.
(reset_state_machine): Likewise.
(process_extended_line_op): Likewise.
(debug_str_section): Likewise.
(fetch_indirect_string): Likewise.
(debug_abbrev_section): Likewise.
(abbrev_attr): Likewise.
(first_abbrev): Likewise.
(last_abbrev): Likewise.
(free_abbrevs): Likewise.
(add_abbrev_attr): Likewise.
(process_abbrev_section): Likewise.
(get_TAG_name): Likewise.
(get_FORM_name): Likewise.
(display_block): Likewise.
(decode_location_expression): Likewise.
(debug_info): Likewise.
(debug_information): Likewise.
(num_debug_info_entries): Likewise.
(last_pointer_size): Likewise.
(warned_about_missing_comp_units): Likewise.
(read_and_display_attr_value): Likewise.
(get_AT_name): Likewise.
(read_and_display_attr): Likewise.
(process_debug_info): Likewise.
(get_pointer_size_and_offset_of_comp_unit): Likewise.
(get_debug_info): Likewise.
(display_debug_lines): Likewise.
(display_debug_pubnames): Likewise.
(display_debug_macinfo): Likewise.
(display_debug_abbrev): Likewise.
(display_debug_loc): Likewise.
(display_debug_str): Likewise.
(display_debug_aranges): Likewise.
(display_debug_ranges): Likewise.
(Frame_Chunk): Likewise.
(DW_CFA_unreferenced): Likewise.
(frame_need_space): Likewise.
(frame_display_row): Likewise.
(size_of_encoded_value): Likewise.
(get_encoded_value): Likewise.
(GET): Likewise.
(LEB): Likewise.
(SLEB): Likewise.
(display_debug_frames): Likewise.
(display_debug_not_supported): Likewise.
(debug_displays): Likewise.
(load_debug_section): Updated.
(free_debug_section): Likewise.
(display_debug_section): Likewise.
(process_object): Call free_debug_memory to free debug memory.
|