X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=binutils%2FChangeLog;h=a19d488673fdfe81a3ef6538deff7caa1b94cd75;hb=f082820db966c79e47a143da774700055a1fad41;hp=f099467d3fd5484e3e6a737c4a1e8fdd98cc58b2;hpb=0ee3043f58aae078a1ecc54b7be2810cae39a718;p=deliverable%2Fbinutils-gdb.git diff --git a/binutils/ChangeLog b/binutils/ChangeLog index f099467d3f..a19d488673 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,578 @@ +2017-04-23 Alan Modra + + PR 21408 + * dwarf.c (display_debug_lines_decoded): Don't segfault on NULL + file_table. + +2017-04-21 Nick Clifton + + PR binutils/21378 + * readelf.c (print_gnu_build_attribute_name): Check for an + overlarge name field. + +2017-04-13 Nick Clifton + + PR binutils/21379 + * readelf.c (process_dynamic_section): Detect over large section + offsets in the DT_SYMTAB entry. + +2017-04-13 Nick Clifton + + PR binutils/21345 + * readelf.c (process_mips_specific): Catch an unfeasible memory + allocation before it happens and print a suitable error message. + +2017-04-13 Nick Clifton + + * objcopy.c: Add --no-merge-notes option to disable note merging. + Add --[no-]merge-notes option to strip, and enable it by default. + (num_bytes): New function. + (merge_gnu_build_notes): Add code to merge stack size notes. + * binutils.texi: Update strip and objcopy documentation. + * readelf.c (print_gnu_build_attribute_name): Use defined + constants for note types. + +2017-04-10 John Delsignor + + PR binutils/21319 + * dwarf.c (display_gdb_index): Correct test for a corrupt address + table size. + +2017-04-05 Jiong Wang + + * objcopy.c (struct redefine_node): Delete the field "next". + (redefine_sym_list): Deleted. + (redefine_specific_htab): New hash table. + (redefine_specific_reverse_htab): Likewise. + (eq_string_redefnode): New function. + (htab_hash_redefnode): Likewise. + (create_symbol2redef_htab): Likewise. + (add_specific_symbol_node): Likewise. + (create_symbol_htabs): Create redefine_specific_htab and + redefine_specific_reverse_htab. + (lookup_sym_redefinition): Use hash table instead of list. + (redefine_list_append): Likewise, and rename to add_redefine_and_check. + (copy_main): Use redefine_specific_htab instead of redefine_sym_list. + Update comments. + +2017-04-04 H.J. Lu + + * NEWS: Mention support for ELF SHF_GNU_MBIND and + PT_GNU_MBIND_XXX. + * readelf.c (get_segment_type): Handle PT_GNU_MBIND_XXX. + (get_elf_section_flags): Handle SHF_GNU_MBIND. + (process_section_headers): Likewise. + * testsuite/binutils-all/mbind1.s: New file. + * testsuite/binutils-all/objcopy.exp: Run readelf test on + mbind1.s. + +2017-04-03 Nick Clifton + + PR binutils/21345 + * readelf.c (get_program_headers): Check for there being too many + program headers before attempting to allocate space for them. + +2017-04-03 Nick Clifton + + PR binutils/21344 + * readelf.c (process_mips_specific): Check for an out of range GOT + entry before reading the module pointer. + +2017-04-03 Nick Clifton + + PR binutils/21343 + * readelf.c (get_unwind_section_word): Fix snafu checking for + invalid word offsets in ARM unwind information. + +2017-03-31 Pip Cet + + * NEWS: Use "WebAssembly" consistently. + * testsuite/binutils-all/wasm32/wasm32.exp: Fix copyright notice. + +2017-03-30 Pip Cet + + * readelf.c: Add support for wasm32 ELF format WebAssembly files. + (guess_is_rela): Likewise. + (dump_relocations): Likewise. + (is_32bit_abs_reloc): Likewise. + (is_none_reloc_): Likewise. + * NEWS: Mention the new support. + * testsuite/lib/binutils-common.exp (is_elf_format): Mark wasm32 + as ELF target. + (supports_gnu_unique): Mark wasm32 as supporting STB_GNU_UNIQUE. + * testsuite/binutils-all/nm.exp: Mark wasm32 as requiring .size annotations. + * testsuite/binutils-all/wasm32: New directory. + * testsuite/binutils-all/wasm32/create-wasm.d: New file. + * testsuite/binutils-all/wasm32/create-wasm.s: Likewise. + * testsuite/binutils-all/wasm32/custom-section.d: Likewise. + * testsuite/binutils-all/wasm32/custom-section.s: Likewise. + * testsuite/binutils-all/wasm32/invalid-wasm-1.d: Likewise. + * testsuite/binutils-all/wasm32/invalid-wasm-1.s: Likewise. + * testsuite/binutils-all/wasm32/long-sections.d: Likewise. + * testsuite/binutils-all/wasm32/long-sections.s: Likewise. + * testsuite/binutils-all/wasm32/parse-wasm.d: Likewise. + * testsuite/binutils-all/wasm32/parse-wasm.s: Likewise. + * testsuite/binutils-all/wasm32/parse-wasm-2.d: Likewise. + * testsuite/binutils-all/wasm32/parse-wasm-2.s: Likewise. + * testsuite/binutils-all/wasm32/prepared-section.d: Likewise. + * testsuite/binutils-all/wasm32/prepared-section.s: Likewise. + * testsuite/binutils-all/wasm32/wasm32.exp: New file, run tests. + +2017-03-29 Alan Modra + + * doc/binutils.texi (objdump): Document PowerPC -M options. + +2017-03-21 Andi Kleen + + * objdump.c (unwind_inlines): Add. + (option_values): Add OPTION_INLINES. + (show_line): Unwind inlines if requested. + (main): Parse OPTION_INLINES. + (usage): Document --inlines. + * doc/binutils.texi: Document --inlines. + * NEWS: Likewise. + +2017-03-21 Nick Clifton + + * readelf.c (print_gnu_build_attribute_name): Allow stack + protection notes to contain numeric values. Use a colon rather + than a space to separate a string name from its values. Decode + the numeric value of a stack protection note. + * objcopy.c (merge_gnu_build_notes): Allow version notes to + contain extra text after the protocol version number. + +2017-03-20 Mark Wielaard + + * readelf.c (process_program_headers): Move dynamic_addr check + after .dynamic section cross check. + +2017-03-17 Nick Clifton + + * readelf.c (print_gnu_build_attribute_name): Fix off by one error + printing the value for a build note with an ascii name. + +2017-03-16 Nick Clifton + + * readelf.c (print_gnu_build_attribute_name): Add support for + GNU_BUILD_ATTRIBUTE_SHORT_ENUM. + +2017-03-14 Nick Clifton + + * readelf.c (print_gnu_build_attribute_description): Move symbol + printing code to... + (print_symbol_for_build_attribute): New function. ...here. + Add to find the best symbol to associate with an OPEN note. + Add code to cache the symbol table and string table, so that they + are not loaded every time a note is displayed. + * testsuite/binutils-all/note-2-32.s: Add a function symbol. + * testsuite/binutils-all/note-2-64.s: Likewise. + * testsuite/binutils-all/note-2-32.d: Update expected note output. + * testsuite/binutils-all/note-2-64.d: Likewise. + +2017-03-13 Alan Modra + Taeung Song + + * objdump.c (update_source_path): Add abfd param. Add struct + stat var. Pass to try_print_file_open. Warn if source is more + recent than object. + (try_print_file_open, slurp_file): Add struct stat param to + return fstat. + (show_line): Call update_source_path with bfd. + +2017-03-10 Chia-Hao Lo + + PR binutils/21235 + * objdump.c (main): Set do_wide with --wide. + +2017-03-10 Nick Clifton + + * readelf.c (get_machine_name): Rearrange switch table in order of + increasing machine number. Add missing entries. + +2017-03-08 H.J. Lu + + PR binutils/21231 + * readelf.c (decode_x86_isa): Change argument to unsigned int. + (print_gnu_property_note): Retrieve property type and datasz as + 4-byte integer. Consolidate property datasz check. Check + GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER. + * testsuite/binutils-all/i386/pr21231a.d: New file. + * testsuite/binutils-all/i386/pr21231a.s: Likewise. + * testsuite/binutils-all/i386/pr21231b.d: Likewise. + * testsuite/binutils-all/i386/pr21231b.s: Likewise. + * testsuite/binutils-all/x86-64/pr21231a.d: Likewise. + * testsuite/binutils-all/x86-64/pr21231a.s: Likewise. + * testsuite/binutils-all/x86-64/pr21231b.d: Likewise. + * testsuite/binutils-all/x86-64/pr21231b.s: Likewise. + +2017-03-06 Nick Clifton + + * readelf.c (print_gnu_build_attribute_name): Read byte values + from the name string as unsigned bytes. + (process_notes_at): Use memcpy to copy an unterminated name + string. + +2017-03-06 Sam Thursfield + + * configure.ac (AC_CHECK_DECLS): Add asprintf. + * config.in: Regenerate. + * configure: Regenerate. + +2017-03-02 Nick Clifton + + * readelf.c (print_gnu_build_attribute_description): Use global + symbols for OPEN attributes if at all possible. + * objcopy.c (is_merged_note_section): Support build note sections + without the SHF_GNU_BUILD_NOTE section flag set. + +2017-03-02 Jan Kratochvil + + * dwarf.c (debug_displays_assert): New static assertion. + +2017-03-02 Jan Kratochvil + + * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists. + +2017-03-01 Nick Clifton + + * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs. + (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs. + (decode_x86_isa): New function. + (print_gnu_property_note): New function. + (print_gnu_note): Handle GNU_PROPERTY_NOTEs. + (print_gnu_build_attribute_description): New function. + (print_gnu_build_attribute_name): New function. + (process_note): Add support for GNU_BUILD_NOTEs. + * objcopy.c (--merge-notes): New command line option. + (copy_options): Add merge-notes. + (copy_usage): Likewise. + (is_merge_note_section): New function. + (merge_gnu_build_notes): New function. + (copy_object): Merge note sections if asked to do so. + (skip_section): Add skip_copy parameter. Add support for skipping + merged note sections. + (copy_relocations_in_section): Update call to skip_section. + (copy_section): Likewise. + (copy_main): Add support for merge-notes option. + * doc/binutils.texi: Document the new option to objcopy. + * NEWS: Mention the new feature. + * testsuite/binutils-all/note-2-32.d: New test. Checks note + merging on 32-bit targets. + * testsuite/binutils-all/note-2-32.s: New test source file. + * testsuite/binutils-all/note-2-64.d: New test. Like note-2-32.d + but for 64-bit targets. + * testsuite/binutils-all/note-2-64.s: New test source file. + * testsuite/binutils-all/objcopy.exp: Run the new test. + +2017-02-28 Peter Bergner + + * objdump.c (main): Use remove_whitespace_and_extra_commas. + +2017-02-27 Jan Kratochvil + + Fix compilation with GCC 4.4.7. + * dwarf.c (display_loclists_list, display_debug_rnglists_list): + Initialize begin and end. + +2017-02-25 Alan Modra + + * testsuite/binutils-all/dw5.S: Replace .string with .asciz. + Support hpux .comm variant. + * testsuite/binutils-all/readelf.exp: Define HPUX when assembling + dw5 test for hppa64-hpux. + +2017-02-24 Nick Clifton + + * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms, + (do_reloc, do_sections, do_section_groups, do_section_details, + (do_segments, do_unwind, do_using_dynamic, do_header, do_dump, + (do_version, do_histogram, do_debugging, do_arch, do_notes, + (do_archive_index, is_32bit_elf, decompress_dumps): Use + bfd_boolean type. + (parse_args): Treat the do_* variables as booleans. + (print_vma): Return an unsigned int. + (print_symbol): Change width parameter to signed int. + (is_ia64_vms): Change return type to bfd_boolean. + (guess_is_rela): Likewise. + (slurp_rela_relocs): Likewise. + (slurp_rel_relocs): Likewise. + (dump_relocations): Likewise. + (process_file_header): Likewise. + (get_program_headers): Likewise. + (process_program_headers): Likewise. + (process_section_headers): Likewise. + (process_section_groups): Likewise. + (dump_ia64_vms_dynamic_fixups): Likewise. + (dump_ia64_vms_dynamic_relocs): Likewise. + (process_ia64_vms_dynamic_relocs): Likewise. + (process_relocs): Likewise. + (dump_ia64_unwind): Likewise. + (ia64_process_unwind): Likewise. + (dump_hppa_unwind): Likewise. + (slurp_hppa_unwind_table): Likewise. + (hppa_process_unwind): Likewise. + (decode_arm_unwind_bytecode): Likewise. + (decode_tic6x_unwind_bytecode): Likewise. + (decode_arm_unwind): Likewise. + (dump_arm_unwind): Likewise. + (arm_process_unwind): Likewise. + (process_unwind): Likewise. + (get_32bit_dynamic_section): Likewise. + (get_64bit_dynamic_section): Likewise. + (process_dynamic_section): Likewise. + (process_version_sections): Likewise. + (process_symbol_table): Likewise. + (process_syminfo): Likewise. + (apply_relocations): Likewise. + (disassemble_section): Likewise. + (dump_section_as_strings): Likewise. + (dump_section_as_bytes): Likewise. + (load_specific_debug_section): Likewise. + (load_debug_section): Likewise. + (display_debug_section): Likewise. + (process_section_contents): Likewise. + (process_attributes): Likewise. + (process_nds32_specific): Likewise. + (process_gnu_liblist): Likewise. + (print_core_note): Likewise. + (print_gnu_note): Likewise. + (print_v850_note): Likewise. + (process_netbsd_elf_note): Likewise. + (print_stapsdt_note): Likewise. + (print_ia64_vms_note): Likewise. + (process_note): Likewise. + (process_notes_at): Likewise. + (process_corefile_note_segments): Likewise. + (process_v850_notes): Likewise. + (process_note_sections): Likewise. + (process_notes): Likewise. + (process_arch_specific): Likewise. + (get_file_header): Likewise. + (process_object): Likewise. + (process_archive): Likewise. + (process_file): Likewise. + (section_subset): Make static. + (get_mips_reg_size): Return a signed integer. + (process_object): Reverse the logic of the return value. + (process_archive): Likewise. + (process_file): Likewise. + (process_program_headers): Fix snafu - if the program headers are + not available then this is not a cause to fail. + (process_corefile_note_segments): Likewise. + +2017-02-24 Maciej W. Rozycki + + * readelf.c (get_ver_flags): Tidy the formatting of the string + returned + +2017-02-24 Maciej W. Rozycki + + * readelf.c (process_version_sections) : Make + `isum' unsigned. + : Likewise. + +2017-02-24 Maciej W. Rozycki + + * readelf.c (process_version_sections) : Limit + the number of entries processed by the section size. Don't + break out of the loop if `ent.vd_next' is 0. + +2017-02-23 Jan Kratochvil + + * testsuite/binutils-all/dw5.S: New file. + * testsuite/binutils-all/dw5.W: New file. + * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test. + +2017-02-23 Jan Kratochvil + + * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16. + +2017-02-23 Jan Kratochvil + + * dwarf.c (display_debug_macro): Support DWARF-5. Rename + DW_MACRO_GNU_*. + +2017-02-23 Jan Kratochvil + + * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer, + DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert + and DW_OP_reinterpret. + (read_and_display_attr_value): Support DW_AT_call_value, + DW_AT_call_data_value, DW_AT_call_target and + DW_AT_call_target_clobbered. + +2017-02-23 Jan Kratochvil + + * dwarf.c (fetch_indirect_line_string): New function. + (abbrev_attr): New field implicit_const. + (add_abbrev_attr): New parameter implicit_const. + (process_abbrev_section): Support DW_FORM_implicit_const. + (decode_location_expression): Support DW_OP_entry_value. + (read_and_display_attr_value): Add parameter implicit_const. Support + DW_FORM_line_strp and DW_FORM_implicit_const. + (read_and_display_attr): Add parameter implicit_const. + (process_debug_info): Support line_str and DWARF-5. + (read_debug_line_header): Support DWARF-5. + (display_formatted_table): New function. + (display_debug_lines_raw): New parameter file. Support DWARF-5. + (display_debug_lines_decoded): New parameter fileptr. Support DWARF-5. + (display_debug_lines): Pass file parameter. + (display_debug_macro): Update read_and_display_attr_value caller. + (display_debug_abbrev): Support DW_FORM_implicit_const. + (display_loclists_list): New function. + (display_loc_list): Support .debug_loclists. + (display_debug_ranges_list): New function from display_debug_ranges. + (display_debug_rnglists_list): New function. + (display_debug_ranges): Support .debug_rnglists. + (debug_displays): Add .debug_line_str, .debug_loclists and + .debug_rnglists. + * dwarf.h: Include dwarf2.h + (DWARF2_Internal_LineInfo): Add li_offset_size. + (DWARF2_Internal_CompUnit): Add cu_unit_type. + (enum dwarf_section_display_enum): Add line_str. + * readelf.c (process_section_headers): Add rnglists and loclists. + +2017-02-23 Jan Kratochvil + + * dwarf.c (display_block): Add parameter delimiter. + (decode_location_expression): Update display_block callers. + (read_and_display_attr_value): Add parameter delimiter. + (read_and_display_attr, display_debug_macro): Update + read_and_display_attr_value caller. + +2017-02-23 Jan Kratochvil + + * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address + and off. + (display_loc_list_dwo): Use dwarf_vma for offset. + (display_debug_loc): Use dwarf_vma for offset, base_address. + (struct range_entry, range_entry_compar): Use dwarf_vma for + ranges_offset. + (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and + base_address. + +2017-02-23 Nick Clifton + + * readelf.c (display_tag_value): Use an explicit signed type for + the tag parameter. + (display_gnu_attributes): Use an unsigned integer type for + attribute tags. + (display_power_gnu_attribute): Likewise. + (display_s390_gnu_attribute): Likewise. + (display_sparc_hwcaps): Likewise. + (display_sparc_hwcaps2): Likewise. + (display_sparc_gnu_attribute): Likewise. + (display_mips_gnu_attribute): Likewise. + (display_tic6x_attribute): Likewise. + (display_raw_attribute): Likewise. + (process_attributes): Likewise. + (process_arm_specific): Delete redundant function. + (process_power_specific): Likewise. + (process_s390_specific): Likewise. + (process_sparc_specific): Likewise. + (process_tic6x_specific): Likewise. + (process_msp430x_specific): Likewise. + (display_public_gnu_attributes): New function. Displays known + information about an unknown gnu attribute. + (display_generic_attribute): New function. Calls + display_tag_value for non-nul tags. + (process_arch_specific): Call process_attributes even for + architectures not known to specifically support gnu attributes. + +2017-02-22 Jan Kratochvil + + * dwarf.c (decode_location_expression): Display also OP. + +2017-02-22 Maciej W. Rozycki + + * readelf.c (process_version_sections) : Print a + new line between the heading and the first version definition + entry. + +2017-02-20 Nick Clifton + + PR binutils/21156 + * dwarf.c (cu_tu_indexes_read): Move into... + (load_cu_tu_indexes): ... here. Change the variable into + tri-state. Change the function into boolean, returning + false if the indicies could not be loaded. + (find_cu_tu_set): Return NULL if the indicies could not be + loaded. + +2017-02-17 Nick Clifton + + PR binutils/21156 + * readelf.c (find_section_in_set): Test for invalid section + indicies. + +2017-02-17 Nick Clifton + + * readelf.c (get_section_type_name): Add decoding of GNU section + types. + +2017-02-15 Nick Clifton + + * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past + Maintainers section. + +2017-02-14 Nick Clifton + + PR binutils/21159 + * readelf.c (dump_section_as_strings): Reset the start address if + no decompression is perfromed. + (dump_section_as_bytes): Likewise. + +2017-02-14 Nick Clifton + + PR binutils/21158 + * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or + empty symbol name. + +2017-02-14 Nick Clifton + + PR binutils/21157 + * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE + pairs. + (parse_number): Exit early if passed an empty string. + +2017-02-14 Nick Clifton + + PR binutils/21155 + * readelf.c (IN_RANGE): New macro. Tests for an address + offset + being within a given range. + (target_specific_reloc_handling): Use macro to test for underflow + as well as overflow of reloc offset. + +2017-02-13 Nick Clifton + + PR binutils/21150 + * nm.c (file_symbol): Add test of string length before testing + string characters. + +2017-02-13 Nick Clifton + + PR binutils/21135 + * readelf.c (dump_section_as_bytes): Handle the case where + uncompress_section_contents returns false. + (dump_section_as_bytes, load_specific_debug_section): Likewise. + +2017-02-13 Nick Clifton + + PR binutils/21149 + * readelf.c (get_compression_header): Add size parameter. Check + size against sizeof compression header before attempting to + extract the header. + (process_section_headers): Pass size to get_compression_header. + (dump_section_as_strings): Likewise. + (dump_section_as_bytes): Likewise. + (load_specific_debug_section): Likewise. + +2017-02-13 Nick Clifton + + PR binutils/21148 + * readelf.c (process_version_sections): Include size of auxillary + version information when checking for buffer overflow. + 2017-02-13 Nick Clifton PR binutils/21147