]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - binutils/ChangeLog
Fix undefined arithmetic operations detected by -fsanitize=undefined when running...
[thirdparty/binutils-gdb.git] / binutils / ChangeLog
index e6fa3c11e5767b37e45b2167cbe9571556b6bdd1..3a42b724de9a51a1b94d6c0c2c2d1491a4ade838 100644 (file)
@@ -1,3 +1,293 @@
+2015-02-26  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * resrc.c (write_rc_messagetable): Tighten check for invalid
+       message lengths.
+
+       * dwarf.c (display_debug_loc): Pacify the undefined behaviour
+       sanitizer by simplifying address difference calculation.
+       (struct Frame_Chunk): Change type of cfa_offset to dwarf_vma in
+       order to avoid arithmetic overflows.
+       (frame_display_row): Cast cfa_offset before printing it.
+       (display_debug_frames): Likewise.
+       Check for an unexpected segment size.
+       Chnage type of 'l' local to dwarf_vma and cast it back to an int
+       when printing.
+       (process_cu_tu_index): Tighten check for an invalid ncols value.
+       * readelf.c (process_corefile_note_segment): Check for
+       inote.descdata extending beyond the end of the section.
+       (process_v850_notes): Likewise.
+
+2015-02-26  Terry Guo  <terry.guo@arm.com>
+
+       * readelf.c (arm_attr_tag_ABI_HardFP_use): Update how we
+       display it.
+
+2015-02-25  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * objcopy.c (init_section_add): New function.
+       (section_add_load_file): New function.
+       (copy_main): Make use of new functions.
+
+2015-02-25  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * od-elf32_avr.c: Add elf32-avr.h include.
+       (OPT_AVRPROP): Define.
+       (options[]): Add 'avr-prop' entry.
+       (elf32_avr_help): Add avr-prop help text.
+       (elf32_avr_dump_avr_prop): New function.
+       (elf32_avr_dump): Add check for avr-prop.
+
+2015-02-24  Nick Clifton  <nickc@redhat.com>
+
+       * readelf.c (get_machine_flags): Remove deprecated V850 machine
+       flags.
+       (get_v850_section_type_name): New function.  Handles V850 special
+       sections.
+       (get_section_type_name): Add support for V850.
+       (get_v850_elf_note_type): New function.  Returns the name of a
+       V850 note.
+       (print_v850_note): New function.  Prints a V850 note.
+       (process_v850_notes): New function.  Prints V850 notes.
+       (process_note_sections): Add support for V850.
+
+2015-02-24  Mike Frysinger  <vapier@gentoo.org>
+
+       PR binutils/17531
+       * readelf.c (process_symbol_table): Declare chained.  Increment it
+       in every loop.  Abort when chained is larger than nchains.  Move
+       error check outside of chain loop.
+
+2015-02-24  Dmitry Antipov  <dantipov@nvidia.com>
+
+       * readelf.c (find_symbol_for_address): Use a binary search to
+       speed up symbol location.  Skip check for function symbol type.
+       (*_unw_aux_info): Add funtab and nfuns fields contains a sorted
+       list of function symbols.
+       (dump_ia64_unwind): Initialise the funtab and nfuns fields and
+       pass them to find_symbol_for_address.
+       (dump_hppa_unwind): Likewise.
+       (arm_print_vma_and_name): Pass funtab to find_symbol_for_address.
+       (dump_arm_unwind): Initialise the funtab and nfuns fields.
+
+2015-02-24  Nick Clifton  <nickc@redhat.com>
+
+       * objdump.c (dump_section): Extend the warning message displayed
+       when a section cannot be loaded.
+
+2015-02-21  Mike Frysinger  <vapier@gentoo.org>
+
+       * readelf.c (process_program_headers): Add newline to warning
+       message.
+
+2015-02-20  Andreas Arnez  <arnez@linux.vnet.ibm.com>
+
+       * readelf.c (get_note_type): Add NT_S390_VXRS_LOW and
+       NT_S390_VXRS_HIGH.
+
+2015-02-13  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dwarf.c (read_leb128): Fix test for shift becoming too large.
+
+       * coffgrok.c (do_define): Add check for type size overflow.
+       * srconv.c (walk_tree_sfile): Check that enough sections are
+       available before parsing.
+       (prescan): Likewise.
+
+       PR binutils/17531
+       * dwarf.c (display_debug_aranges): Add check for an excessive
+       ar_length value.
+       (process_cu_tu_index): Check for a row * columns sum being too
+       large.
+
+2015-02-13  Alan Modra  <amodra@gmail.com>
+
+       * dwarf.c: Formatting, whitespace.
+       (process_debug_info): Style fix.
+
+2015-02-11  Nick Clifton  <nickc@redhat.com>
+
+       * rl78-decode.opc: Add 'a' attribute to instructions that support
+       [HL+0] addressing.
+       * rl78-decode.c: Regenerate.
+       * rl78-dis.c (print_insn_rl78): Display the offset in [HL+0]
+       addresses.
+
+2015-02-11  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * dwarf.c (display_debug_pubnames_worker): Work around compiler
+       bug checking address ranges.
+       (display_debug_frames): Likewise.
+       (display_gdb_index): Likewise.
+       (process_cu_tu_index): Add range check on the ncols value.
+
+2015-02-10  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dwarf.c (eh_addr_size): Use an unsigned type.
+       (size_of_encoded_value): Return an unsigned type.
+       (read_leb128): Break if the shift becomes too big.
+       (process_extended_line_op): Do not read the address if the length
+       is too long.
+       (read_cie): Warn and fail if the pointer size or segment size are
+       too big.
+       * dwarf.h (DWARF2_External_LineInfo): Delete unused and incorrect
+       structure definition.
+       (DWARF2_External_PubNames): Likewise.
+       (DWARF2_External_CompUnit): Likewise.
+       (DWARF2_External_ARange): Likewise.
+       (DWARF2_Internal_LineInfo): Use dwarf_vma type for
+       li_prologue_length.
+       (eh_addr_size): Update prototype.
+
+       PR binutils/17531
+       * dwarf.c (process_debug_info): Zero the debug information array
+       since correct initialisation cannot be relied upon.
+       (process_cu_tu_index): Improve range checks.
+
+       PR binutils/17531
+       * dwarf.c (display_debug_pubnames_worker): Use dwarf_vma type for
+       offset.
+       * readelf.c (dump_relocations): Handle printing offsets which are
+       MIN_INT.
+       (process_corefile_note_segment): Add range check of the namesz
+       field.
+
+2015-02-09  Mark Wielaard  <mjw@redhat.com>
+
+       * dwarf.c (read_and_display_attr_value): Handle DW_LANG_Fortran03
+       and DW_LANG_Fortran08.
+
+2015-02-06  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dwarf.c (display_debug_frames): Fix range checks to work on
+       32-bit binaries complied on a 64-bit host.
+
+       PR binutils/17531
+       * dwarf.c (xcmalloc): Fail if the arguments are too big.
+       (xcrealloc): Likewise.
+       (xcalloc2): Likewise.
+       * readelf.c (process_mips_specific): Fail if an option has an
+       invalid size.
+
+2015-02-05  Alan Modra  <amodra@gmail.com>
+
+       PR binutils/17926
+       * dwarf.c (dwarf_select_sections_by_letters): Don't refer to optarg.
+
+2015-02-04  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * dwarf.c (read_and_display_attr_value): Test for a block length
+       being so long that it wraps around to before the start of the block.
+       (process_debug_info): Test for section_begin wrapping around to
+       before the start of the section.
+       (display_gdb_index): Test for num_cus being so large that the end
+       address wraps around to before the start of the section.
+       (process_cu_tu_index): Test for j being so large that the section
+       index pool wraps around to before the start of the section.
+
+2015-02-03  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * dwarf.c (process_debug_info): Add range check.
+       (display_debug_pubnames_worker): Likewise.
+       (display_gdb_index): Fix range check.
+       (process_cu_tu_index): Add range check.
+       * readelf.c (get_data): Change parameter types from size_t to
+       bfd_size_type.  Add checks for loss of accuracy when casting from
+       bfd_size_type to size_t.
+       (get_dynamic_data): Likewise.
+       (process_section_groups): Limit number of error messages.
+
+2015-02-03  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * objdump.c (display_any_bfd): Fail if archives nest too deeply.
+
+2015-01-28  James Bowman  <james.bowman@ftdichip.com>
+
+       * readelf.c: Add FT32 support.
+
+2015-01-27  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * dlltool.c (identify_search_archive): If the last archive was the
+       same as the current archive, terminate the loop.
+
+       * addr2line.c (slurp_symtab): If the symcount is zero, free the
+       symbol table pointer.
+
+       * rcparse.y: Add checks to avoid integer divide by zero.
+       * rescoff.c (read_coff_rsrc): Add check on the size of the
+       resource section.
+       (read_coff_res_dir): Add check on the nesting level.
+       Check for resource names overrunning the buffer.
+       * resrc.c (write_rc_messagetable): Update formatting.
+       Add check of 'elen' being zero.
+
+2015-01-23  Nick Clifton  <nickc@redhat.com>
+
+       * nlmconv.c (powerpc_mangle_relocs): Fix build errors introduced
+       by recent delta, when compiling on for a 32-bit host.
+
+2015-01-21  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * addr2line.c (main): Call bfd_set_error_program_name.
+       * ar.c (main): Likewise.
+       * coffdump.c (main): Likewise.
+       * cxxfilt.c (main): Likewise.
+       * dlltool.c (main): Likewise.
+       * nlmconv.c (main): Likewise.
+       * nm.c (main): Likewise.
+       * objdump.c (main): Likewise.
+       * size.c (main): Likewise.
+       * srconv.c (main): Likewise.
+       * strings.c (main): Likewise.
+       * sysdump.c (main): Likewise.
+       * windmc.c (main): Likewise.
+       * windres.c (main): Likewise.
+       * objcopy.c (main): Likewise.
+       (copy_relocations_in_section): Check for relocs without associated
+       symbol pointers.
+
+2015-01-21  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
+
+       * MAINTAINERS: Add self to ARM maintainers list.
+
+2015-01-21  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17512
+       * coffgrok.c (do_type): Check that computed ref exists.
+       (doit): Add range checks when computing section for scope.
+
+2015-01-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * dwarf.c (process_debug_info): Properly check abbrev size.
+
+2015-01-12  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/17531
+       * dwarf.c (process_debug_info): Check for abbrev_base being larger
+       than the section size.
+       (process_cu_tu_index): Use xcalloc2 to allocate the CU and TU
+       arrays.
+       (xcalloc2): New function.  Like xcalloc, but checks for overflow.
+       (display_debug_addr): Use xcalloc to allocate the debug_addr_info
+       array.  Check for an address_base that is too large.
+
+       * dwarf.h (xcalloc2): Prototype.
+
+2015-01-12  Alan Modra  <amodra@gmail.com>
+
+       * prdbg.c (print_debugging_info): Don't use void* for function
+       pointer param.
+       * budbg.h (print_debugging_info): Update prototype.
+
 2015-01-08  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/17512