]> 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 131925a31920f601488cef28d5a8a2fe214d474c..3a42b724de9a51a1b94d6c0c2c2d1491a4ade838 100644 (file)
-2014-11-24  Mark Wielaard  <mjw@redhat.com>
+2015-02-26  Nick Clifton  <nickc@redhat.com>
 
-       * dwarf.c (read_and_display_attr_value): Handle DW_LANG_C11,
-       DW_LANG_C_plus_plus_11 and DW_LANG_C_plus_plus_14.
+       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>
 
-2014-11-26  Nick Clifton  <nickc@redhat.com>
+       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.
 
-       PR binutils/17512
-       * dwarf.c (display_block): Do nothing if the block starts after
-       the end of the buffer.
-       (read_and_display_attr_value): Add range checks.
-       (struct Frame_Chunk): Make the ncols and ra fields unsigned.
-       (frame_need_space): Test for an ncols of zero.
-       (read_cie): Fail if the augmentation data extends off the end of
-       the buffer.
-       (display_debug_frames): Add checks for read_cie failing.  Add
-       range checks.
+2015-02-24  Dmitry Antipov  <dantipov@nvidia.com>
 
-2014-11-25  H.J. Lu  <hongjiu.lu@intel.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.
 
-       * objdump.c (objdump_print_symname): Replace
-       bfd_elf_get_symbol_version_string with
-       bfd_get_symbol_version_string.
+2015-02-24  Nick Clifton  <nickc@redhat.com>
 
-2014-11-25  H.J. Lu  <hongjiu.lu@intel.com>
+       * objdump.c (dump_section): Extend the warning message displayed
+       when a section cannot be loaded.
 
-       PR binutils/16496
-       * objdump.c (objdump_print_symname): Call
-       bfd_elf_get_symbol_version_string to get ELF symbol version
-       string.  Append version string if needed.
+2015-02-21  Mike Frysinger  <vapier@gentoo.org>
 
-       * readelf.c (versioned_symbol_info): New enum.
-       (get_symbol_version_string): New.  Extracted from
-       process_symbol_table.
-       (dump_relocations): Add a new argument to indicate if dynamic
-       symbol table is used.  Use get_symbol_version_string to get
-       symbol version string for dynamic symbol.  Append version string
-       if needed.
-       (process_relocs): Updated dump_relocations call.
-       (process_symbol_table): Use get_symbol_version_string.
+       * readelf.c (process_program_headers): Add newline to warning
+       message.
 
-2014-11-24  H.J. Lu  <hongjiu.lu@intel.com>
+2015-02-20  Andreas Arnez  <arnez@linux.vnet.ibm.com>
 
-       * configure: Regenerated.
+       * readelf.c (get_note_type): Add NT_S390_VXRS_LOW and
+       NT_S390_VXRS_HIGH.
 
-2014-11-21  Nick Clifton  <nickc@redhat.com>
+2015-02-13  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/17512
-       * dwarf.c (get_encoded_value): Check for an encoded size of 0.
-       (display_debug_lines_raw): Check for an invalid line range value.
-       (display_debug_frames): Check for corrupt augmentation data.
+       * dwarf.c (read_leb128): Fix test for shift becoming too large.
 
-2014-11-21  Nick Clifton  <nickc@redhat.com>
+       * 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
-       * readelf.c (process_version_sections): Prevent an infinite loop
-       processing corrupt version need data.
-       (process_corefile_note_segment): Handle corrupt notes.
-
-2014-11-21  Terry Guo  <terry.guo@arm.com>
-
-       * readelf.c (arm_attr_tag_FP_arch): Extended to support FPv5.
+       * 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.
 
-2014-11-19  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
+2015-02-13  Alan Modra  <amodra@gmail.com>
 
-       * dwarf.c (process_extended_line_op): Fix signedness warning.
+       * dwarf.c: Formatting, whitespace.
+       (process_debug_info): Style fix.
 
-2014-11-18  Nick Clifton  <nickc@redhat.com>
+2015-02-11  Nick Clifton  <nickc@redhat.com>
 
-       PR binutuls/17605
-       * bucomm.c (print_arelt_descr): Check for ctime returning NULL.
+       * 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.
 
-2014-11-18  Nick Clifton  <nickc@redhat.com>
-
-       PR binutils/17512
-       * dwarf.c (get_encoded_value): Warn and return if the encoded
-       value is more than 64-bits long.
-       (SAFE_BYTE_GET): Do not attempt to read more than 64-bits.
-       (process_extended_line_op): Add more range checks.
-       (decode_location_expression): Use the return value from
-       display_block.  Add more range checks.
-       (read_debug_line_header): Add range check.
-       (display_debug_lines_raw): Add range checks.
-       (display_debug_frames): Silently skip multiple zero terminators.
-       Add range checks.
-       (process_cu_tu_index): Check for non-existant or empty sections.
-       Use SAFE_BYTE_GET instead of byte_get.
-
-2014-11-18  Nick Clifton  <nickc@redhat.com>
+2015-02-11  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/17531
-       * readelf.c (get_unwind_section_word): Skip reloc processing if
-       there are no relocs associated with the section.
-       (decode_tic6x_unwind_bytecode): Warn and return if the stack
-       pointer adjustment falls off the end of the buffer.
+       * 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.
 
-2014-11-14  Nick Clifton  <nickc@redhat.com>
+2015-02-10  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/17512
-       * dwarf.c (get_encoded_value): Add an 'end' parameter.  Change the
-       'data' parameter to a double pointer and return the updated value.
-       (decode_location_expression): Update call to get_encoded_value.
-       (frame_need_space): Handle the case where one or both of the
-       mallocs fails.
-       (read_cie): Initialise the cie pointer, even if the read fails.
-       (display_debug_frames): Warn if the calculated block_end is before
-       the start of the block.  Break the loop if the CIE could not be
-       read.  Update call to get_encoded_value.  Warn if the read CFA
-       expressions are too big.
-
-2014-11-13  Nick Clifton  <nickc@redhat.com>
+       * 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
-       * readelf.c (process_version_sections): If the read of the version
-       def information fails, make sure that the external verdef data is
-       not used.
-       (get_dynamic_data): Do not attempt to allocate memory for more
-       dynamic data than there is in the file.  If the read fails, free
-       the allocated buffer.
-       (process_symbol_table): Do not print dynamic information if we
-       were unable to read the dynamic symbol table.
-       (print_gnu_note): Do not print the note if the descsz is too
-       small.
-
-2014-11-12  Nick Clifton  <nickc@redhat.com>
-
-       PR binutils/17512
-       * dwarf.c (read_and_display_attr_value): Check that we do not read
-       past end.
-       (display_debug_pubnames_worker): Add range checks.
-       (process_debug_info): Check for invalid pointer sizes.
-       (display_loc_list): Likewise.
-       (display_loc_list_dwo): Likewise.
-       (display_debug_ranges): Likewise.
-       (display_debug_aranges): Check for invalid address size.
-       (read_cie): Add range checks.  Replace call strchr with while loop.
-       * objdump.c (dump_dwarf): Replace abort with a warning message.
-       (print_section_stabs): Improve range checks.
-       * rdcoff.c (coff_get_slot): Use long for indx parameter type.
-       Add check for an excesively large index.
-       * rddbg.c (read_section_stabs_debugging_info): Zero terminate the
-       string table.  Avoid walking off the end of the stabs data.
-       * stabs.c (parse_stab_string): Add check for a NULL name.
-
-2014-11-11  Nick Clifton  <nickc@redhat.com>
+       * 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
-       * binutils/readelf.c (dynamic_nent): Change type to size_t.
-       (slurp_rela_relocs): Use size_t type for nrelas.
-       (slurp_rel_relocs): Likewise.
-       (get_program_headers): Improve out of memory error message.
-       (get_32bit_section_headers): Likewise.
-       (get_32bit_section_headers): Likewise.
-       (get_64bit_section_headers): Likewise.
-       (get_32bit_elf_symbols): Likewise.
-       (get_64bit_elf_symbols): Likewise.
-       (process_section_groups): Likewise.
-       (get_32bit_dynamic_section): Likewise.
-       (get_64bit_dynamic_section): Likewise.
-       (process_dynamic_section): Likewise.
-       (process_version_sections): Likewise.
-       (get_symbol_index_type): Likewise.
-       (process_mips_specific): Likewise.
-       (process_corefile_note_segment): Likewise.
-       (process_version_sections): Use size_t type for total.
-       (get_dynamic_data): Change type of number parameter to size_t.
-       Improve out of memory error messages.
-       (process_symbol_table): Change type of nbuckets and nchains to
-       size_t.  Skip processing of sections headers if there are none.
-       Improve out of memory error messages.
-
-2014-11-11  Nick Clifton  <nickc@redhat.com>
-
-       * po/fr.po: Updated French translation.
-
-2014-11-11  Nick Clifton  <nickc@redhat.com>
+       * 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.
 
-       PR binutils/17531
-       * readelf.c (display_arm_attribute): Avoid reading off the end of
-       the buffer when processing a Tag_nodefaults.
+2015-02-09  Mark Wielaard  <mjw@redhat.com>
 
-2014-11-10  Nick Clifton  <nickc@redhat.com>
+       * dwarf.c (read_and_display_attr_value): Handle DW_LANG_Fortran03
+       and DW_LANG_Fortran08.
 
-       PR binutils/17531
-       * (ia64_process_unwind): Replace assertion with an error message.
-       Add range checking for group section indicies.
-       (hppa_process_unwind): Replace assertion with an error message.
-       (process_syminfo): Likewise.
-       (decode_arm_unwind_bytecode): Add range checking.
-       (dump_section_as_strings): Add more string range checking.
-       (display_tag_value): Likewise.
-       (display_arm_attribute): Likewise.
-       (display_gnu_attribute): Likewise.
-       (display_tic6x_attribute): Likewise.
-       (display_msp430x_attribute): Likewise.
+2015-02-06  Nick Clifton  <nickc@redhat.com>
 
-2014-11-10  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/17552
-       * (copy_archive): Clean up temporary files even if an error
-       occurs.
+       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.
 
-2014-11-07  H.J. Lu  <hongjiu.lu@intel.com>
+2015-02-05  Alan Modra  <amodra@gmail.com>
 
-       * readelf.c (process_dynamic_section): Cast time value to unsigned
-       long to print.
+       PR binutils/17926
+       * dwarf.c (dwarf_select_sections_by_letters): Don't refer to optarg.
 
-2014-11-07  Nick Clifton  <nickc@redhat.com>
+2015-02-04  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/17531
-       * readelf.c (get_data): Avoid allocating memory when we know that
-       the read will fail.
-       (find_section_by_type): New function.
-       (get_unwind_section_word): Check for invalid symbol indicies.
-       Check for invalid reloc types.
-       (get_32bit_dynamic_section): Add range checks.
-       (get_64bit_dynamic_section): Add range checks.
-       (process_dynamic_section): Check for a corrupt time value.
-       (process_symbol_table): Add range checks.
-       (dump_section_as_strings): Add string length range checks.
-       (display_tag_value): Likewise.
-       (display_arm_attribute): Likewise.
-       (display_gnu_attribute): Likewise.
-       (display_tic6x_attribute): Likewise.
-       (display_msp430x_attribute): Likewise.
-       (process_mips_specific): Add range check.
-
-2014-11-06  Nick Clifton  <nickc@redhat.com>
-
-       PR binutils/17552, binutils/17533
-       * bucomm.c (is_valid_archive_path): New function.  Returns false
-       for absolute pathnames and pathnames that include /../.
-       * bucomm.h (is_valid_archive_path): Add prototype.
-       * ar.c (extract_file): Use new function to check for valid
-       pathnames when extracting files from an archive.
-       * objcopy.c (copy_archive): Likewise.
-       * doc/binutils.texi: Update documentation to mention the
-       limitation on pathname of archive members.
-
-2014-11-05  Nick Clifton  <nickc@redhat.com>
+       * 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.
 
-       PR binutils/17531
-       * readelf.c (printable_section_name): New function.
-       (printable_section_name_from_index): New function.
-       (dump_relocations): Use new function.
-       (process_program_headers, get_32bit_elf_symbols,
-       (get_64bit_elf_symbols, process_section_headers,
-       (process_section_groups, process_relocs, ia64_process_unwind,
-       (hppa_process_unwind, get_unwind_section_word, decode_arm_unwind,
-       (arm_process_unwind, process_version_sections,
-       (process_symbol_table, apply_relocations, get_section_contents,
-       (dump_section_as_strings, dump_section_as_bytes,
-       (display_debug_section, process_attributes, process_mips_specific,
-       (process_mips_specific process_gnu_liblist): Likewise.
-       (get_unwind_section_word): Check for a missing symbol table.
-       Replace aborts with error messages.
-       (arm_process_unwind): Check for a missing string table.
-       (process_attributes): Check for an attribute length that is too
-       small.
-       (process_mips_specific): Check for a corrupt GOT symbol offset.
-
-2014-11-05  Nick Clifton  <nickc@redhat.com>
-
-       PR binutils/17533
-       * bucomm.c (is_valid_archive_path): New function.
-       * bucomm.h (is_valid_archive_path): Prototype it.
-       * ar.c (extract_file): Call is_valid_archive_path to verify a
-       member filename before extracting it.
-       * objcopy.c (copy_archive): Likewise.
-
-2014-11-05  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
-
-       * readelf.c (process_mips_specific): Fix format string warning.
-
-2014-11-04  Matthew Fortune  <matthew.fortune@imgtec.com>
-
-       * readelf.c (process_mips_specific): Rename index to idx.
-
-2014-11-04  Nick Clifton  <nickc@redhat.com>
+2015-02-03  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/17531
-       * readelf.c (get_data): If the reason parameter is null, do not
-       print any error messages.
-       (get_32bit_section_headers): Verify section header entry size
-       before reading in the section headers.
-       (get_64bit_section_headers): Likewise.
-       (process_section_headers): Pass FALSE to get_section_headers.
-       (get_file_header): Pass TRUE to get_section_headers.
-       (process_dynamic_section): Change an assert to an error message.
-       (process_symbol_table): Handle corrupt histograms.
-
-       (get_32bit_program_headers): Verify program header entry size
-       before reading in the program headers.
-       (get_64bit_program_headers): Likewise.
-       (get_unwind_section_word): Do nothing if no section was provided.
-       Fail if the offset is outside of the section.
-       (print_dynamic_symbol): Catch out of range symbol indicies.
-       (process_mips_specific): Likewise.
-       (process_attributes): Make sure that there is enough space left in
-       the section before attempting to read the length of the next
-       attribute.
-
-2014-11-03  Nick Clifton  <nickc@redhat.com>
+       * 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 (slurp_symtab): Fail gracefully if the table could not
-       be read.
-       (dump_relocs_in_section): Likewise.
-
-2014-11-03  Nick Clifton  <nickc@redhat.com>
-
-       * po/fi.po: Updated Finnish translation.
-       * po/sv.po: Updated Swedish translation.
+       * objdump.c (display_any_bfd): Fail if archives nest too deeply.
 
-2014-11-01  Hans-Peter Nilsson  <hp@axis.com>
+2015-01-28  James Bowman  <james.bowman@ftdichip.com>
 
-       * readelf.c (get_32bit_elf_symbols): Cast error
-       parameters of bfd_size_type with the %lx format to
-       unsigned long.
+       * readelf.c: Add FT32 support.
 
-2014-10-31  Andrew Pinski  <apinski@cavium.com>
-           Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
-
-       * readelf.c (print_mips_isa_ext): Print the value of Octeon3.
-
-2014-10-31  Iain Buclaw  <ibuclaw@gdcproject.org>
-
-       * cxxfilt.c (main): Add case for dlang_demangling style.
-
-2014-10-31  Nick Clifton  <nickc@redhat.com>
+2015-01-27  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/17512
-       * readelf.c (process_program_headers): Avoid memory exhaustion due
-       to corrupt values in a dynamis segment header.
-       (get_32bit_elf_symbols): Do not attempt to read an over-large
-       section.
-       (get_64bit_elf_symbols): Likewise.
-
-2014-10-31  Nick Clifton  <nickc@redhat.com>
-
-       * strings.c: Add new command line option --data to only scan the
-       initialized, loadable data secions of binaries.  Choose the
-       default behaviour of --all or --data based upon a configure
-       option.
-       * doc/binutils.texi (strings): Update documentation.  Include
-       description  of why the --data option might be unsafe.
-       * configure.ac: Add new option --disable-default-strings-all which
-       restores the old behaviour of strings using --data by default.  If
-       the option is not used make strings use --all by default.
-       * NEWS: Mention the new behaviour of strings.
-       * configure: Regenerate.
-       * config.in: Regenerate.
-
-2014-10-30  Nick Clifton  <nickc@redhat.com>
-
-       * readelf.c (CHECK_ENTSIZE_VALUES): Rewrite error message so that
-       there is a single string for translation.
-       (dynamic_section_mips_val): Likewise.
-
-2014-10-29  Nick Clifton  <nickc@redhat.com>
-
-       * po/bg.po: Updated Bulgarian translation.
-       * po/sr.po: New Serbian translation.
-       * po/sv.po: Updated Swedish translation.
-
-2014-10-22  Matthew Fortune  <matthew.fortune@imgtec.com>
-
-       * readelf.c (print_mips_ases): Print unknown ASEs.
-       (print_mips_isa_ext): Print the value of an unknown extension.
-
-2014-10-15  Tristan Gingold  <gingold@adacore.com>
-
-       * configure: Regenerate.
-
-2014-10-14  Tristan Gingold  <gingold@adacore.com>
-
-       * NEWS: Add marker for 2.25.
+       * dlltool.c (identify_search_archive): If the last archive was the
+       same as the current archive, terminate the loop.
 
-2014-10-14  Alan Modra  <amodra@gmail.com>
+       * addr2line.c (slurp_symtab): If the symcount is zero, free the
+       symbol table pointer.
 
-       PR 17453
-       * dwarf.c (read_leb128): Avoid signed overflow.
-       (read_debug_line_header): Likewise.
+       * 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.
 
-2014-10-14  Alan Modra  <amodra@gmail.com>
+2015-01-23  Nick Clifton  <nickc@redhat.com>
 
-       PR 17453
-       * readelf.c (process_program_headers): Correct fscanf format used
-       for interpreter.
+       * nlmconv.c (powerpc_mangle_relocs): Fix build errors introduced
+       by recent delta, when compiling on for a 32-bit host.
 
-2014-10-09  Jose E. Marchesi  <jose.marchesi@oracle.com>
+2015-01-21  Nick Clifton  <nickc@redhat.com>
 
-       * readelf.c (display_sparc_hwcaps2): New function.
-       (display_sparc_gnu_attribute): Call `display_sparc_hwcaps2' when
-       handling `Tag_GNU_Sparc_HWCAPS2' attributes.
-
-2014-09-22  Alan Modra  <amodra@gmail.com>
-
-       PR 16563
-       * dwarf.c (GET): Remove semicolon.
-       (read_cie): New function, extracted from..
-       (display_debug_frames): ..here.  Correctly handle signed offset
-       from FDE to CIE in .eh_frame.  Decode forward referenced CIEs too.
-
-2014-09-16  Nick Clifton  <nickc@redhat.com>
-
-       * readelf.c (display_arm_attribute): Use unsigned int type for
-       tag, val and type variables.
-
-2014-09-16  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
-
-       * readelf.c (decode_NDS32_machine_flags): Display ABI2 FP+.
-
-2014-09-15  Andrew Bennett  <andrew.bennett@imgtec.com>
-           Matthew Fortune  <matthew.fortune@imgtec.com>
-
-       * readelf.c (get_machine_flags): Add support for mips32r6 and
-       mips64r6.
-
-2014-09-01  Jon TURNEY  <jon.turney@dronecode.org.uk>
-
-       * objcopy.c (is_nondebug_keep_contents_section): Change
-       '.build-id' to '.buildid'.
-
-2014-08-22  Richard Henderson  <rth@redhat.com>
-
-       * dwarf.h (init_dwarf_regnames_aarch64): Declare.
-       * dwarf.c (dwarf_regnames_aarch64): New.
-       (init_dwarf_regnames_aarch64): New.
-       (init_dwarf_regnames): Call it.
-       * objdump.c (dump_dwarf): Likewise.
-
-2014-08-19  Alan Modra  <amodra@gmail.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>
 
-       * configure: Regenerate.
+       PR binutils/17512
+       * coffgrok.c (do_type): Check that computed ref exists.
+       (doit): Add range checks when computing section for scope.
 
-2014-08-14  Alan Modra  <amodra@gmail.com>
+2015-01-12  H.J. Lu  <hongjiu.lu@intel.com>
 
-       * configure.ac: Move ACX_LARGEFILE after LT_INIT.
-       * config.in: Regenerate.
-       * configure: Regenerate.
+       * dwarf.c (process_debug_info): Properly check abbrev size.
 
-2014-07-29  Matthew Fortune  <matthew.fortune@imgtec.com>
+2015-01-12  Nick Clifton  <nickc@redhat.com>
 
-       * readelf.c (get_mips_segment_type): Display name for PT_MIPS_ABIFLAGS.
-       (get_mips_section_type_name): Display name for SHT_MIPS_ABIFLAGS.
-       (display_mips_gnu_attribute): Abstracted fp abi printing to...
-       (print_mips_fp_abi_value): New static function. Handle new FP ABIs.
-       (print_mips_ases, print_mips_isa_ext): New static functions.
-       (get_mips_reg_size): Likewise.
-       (process_mips_specific): Display abiflags data.
+       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.
 
-2014-07-28  Alan Modra  <amodra@gmail.com>
+       * dwarf.h (xcalloc2): Prototype.
 
-       PR 13227
-       * nm.c (filter_symbols): Warn on __gnu_lto_slim.
+2015-01-12  Alan Modra  <amodra@gmail.com>
 
-2014-07-07  Nick Clifton  <nickc@redhat.com>
+       * prdbg.c (print_debugging_info): Don't use void* for function
+       pointer param.
+       * budbg.h (print_debugging_info): Update prototype.
 
-       * readelf.c (get_symbol_type): Revert accidental change to
-       detection of thumb function symbols.
+2015-01-08  Nick Clifton  <nickc@redhat.com>
 
-2014-07-04  Alan Modra  <amodra@gmail.com>
+       PR binutils/17512
+       * ojcopy.c (copy_object): Free the symbol table if no symbols
+       could be loaded.
+       (copy_file): Use bfd_close_all_done to close files that could not
+       be copied.
 
-       * configure.ac: Rename from configure.in.
-       * Makefile.in: Regenerate.
-       * config.in: Regenerate.
-       * doc/Makefile.in: Regenerate.
+       * sysdump.c (getINT): Fail if reading off the end of the buffer.
+       Replace call to abort with a call to fatal.
+       (getCHARS): Prevetn reading off the end of the buffer.
 
-2014-07-04  Alan Modra  <amodra@gmail.com>
+       * nlmconv.c (i386_mangle_relocs): Skip relocs without an
+       associated symbol.
+       (powerpc_mangle_relocs): Skip unrecognised relocs.  Check address
+       range before applying a reloc.
 
-       * configure.in: Include bfd/version.m4.
-       (AC_INIT, AM_INIT_AUTOMAKE): Use modern form.
-       (BFD_VERSION): Delete.
-       * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Remove bfd/configure.in.
-       * configure: Regenerate.
-       * Makefile.in: Regenerate.
-       * doc/Makefile.in: Regenerate.
+2015-01-07  Nick Clifton  <nickc@redhat.com>
 
-2014-07-03  Tristan Gingold  <gingold@adacore.com>
+       PR binutils/17512
+       * dlltool.c (scan_obj_file): Break loop if the last archive
+       displayed matches the current archive.
 
-       * doc/binutils.texi: Clarify addr2line output.
+       * objdump.c (display_any_bfd): Add a depth limit to nested archive
+       display in order to avoid infinite loops.
+       * srconv.c: Replace calls to abort with calls to fatal with an
+       error message.
 
-2014-07-01  Alan Modra  <amodra@gmail.com>
+2015-01-06  Nick Clifton  <nickc@redhat.com>
 
-       * objdump.c (dump_bfd_header): Don't print HAS_LOAD_PAGE.
+       PR binutils/17512
+       * coffdump.c (dump_coff_section): Check for a symbol being
+       available before printing its name.
+       (main): Check the return value from coff_grok.
+       * coffgrok.c: Reformat and tidy.
+       Add range checks to most functions.
+       (coff_grok): Return NULL if the input bfd is not in a COFF
+       format.
+       * coffgrok.h: Reformat and tidy.
+       (struct coff_section): Change the nrelocs field to unsigned.
+       * srconv.c (main): Check the return value from coff_grok.
+
+2015-01-05  Nick Clifton  <nickc@redhat.com>
 
-2014-06-26  Erik Akermann  <kurterikackermann@gmail.com>
+       PR binutils/17512
+       * nm.c (print_symbol): Add 'is_synthetic' parameter.  Use it to
+       help initialize the info.elfinfo field.
+       (print_size_symbols): Add 'synth_count' parameter.  Use it to set
+       the is_synthetic parameter when calling print_symbol.
+       (print_symbols): Likewise.
+       (display_rel_file): Pass synth_count to printing function.
+       (display_archive): Break loop if the last archive displayed
+       matches the current archive.
+       * size.c (display_archive): Likewise.
+
+2015-01-05  Nick Clifton  <nickc@redhat.com>
 
-       * strings.c: Add -w/--include-all-whitespace option to include any
-       whitespace character in the displayed strings.
-       * NEWS: Mention the new feature.
-       * doc/binutils.texi (strings): Document the new command line
+       PR binutils/17531
+       * dwarf.c (alloc_num_debug_info_entries): New variable.
+       (process_debug_info): Set it.  Use it to avoid displaying
+       attributes for which there is no info.
+       (display_debug_abbrev): Check that the debug_info_entry index is
+       valid before using it.
+       (display_loc_list_dwo): Likewise.
+       (process_cu_tu_index): Add range check for an overlarge dw_sect
+       value.
+       (free_debug_memory): Reset alloc_num_debug_info_entries.
+       * readelf.c (slurp_ia64_unwind_table): Warn if the reloc could not
+       be indentified.
+       (dynamic_section_mips_val): Warn if the timestamp is invalid.
+       (print_mips_got_entry): Add a data_end parameter.  Warn if a read
+       would go beyond the end of the data, and return an error value.
+       (process_mips_specific): Do not read options from beyond the end
+       of the section.
+       Correct code to display optional data at the end of an option.
+       Warn if there are too many GOT symbols.
+       Update calls to print_mips_got_entry, and handle error returns.
+
+2015-01-05  Daniel Klauer  <daniel.c.klauer@web.de>
+
+       PR binutils/17489
+       * doc/binutils.texi (dlltool): Correct description of --kill-at
        option.
 
-2014-06-26  Nick Clifton  <nickc@redhat.com>
-
-       * readelf.c (process_note_sections): If there are no note sections
-       try processing note segments instead.
-
-2014-06-17  Anton Lavrentiwev  <lavr@ncbi.nim.nih.gov>
-
-       PR binutils/16923
-       * rcparse.y (fixedverinfo): Prevent large version numbers from
-       corrupting other values.
-
-2014-06-09  Romain Chastenet  <romain.chastenet@free.fr>
-
-       PR binutils/16252
-       * dwarf.c (display_debug_frames): Remember the state of the
-       cfa_offset, cfa_reg, ra and cfa_exp field
-
-2014-06-05  Joel Brobecker  <brobecker@adacore.com>
-
-       * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add dependency on
-       bfd's development.sh.
-       * Makefile.in, configure: Regenerate.
-
-2014-05-16  Jon Turney  <jon.turney@dronecode.org.uk>
-
-       * objcopy.c (is_nondebug_keep_contents_section): New function.
-       (setup_section): Use it.
-
-2014-05-16  Kaushik Phata  <Kaushik.Phatak@kpit.com>
-
-       * readelf.c (get_machine_flags): Handle RL78 64-bit doubles flag.
-
-2014-05-02  Alan Modra  <amodra@gmail.com>
-
-       * emul_aix.c: Update bfd target vector naming.
-       * testsuite/binutils-all/objcopy.exp: Likewise.
-
-2014-04-24  Christian Svensson  <blue@cmd.nu>
-
-       * MAINTAINERS: Add myself and Stefan as OR1K maintainers.
-
-2014-04-23  Andrew Bennett  <andrew.bennett@imgtec.com>
-
-       * doc/binutils.texi: Document the disassemble MIPS XPA instructions
-       command line option.
-
-2014-04-22  Christian Svensson  <blue@cmd.nu>
-
-       * readelf.c: Remove openrisc and or32 support.  Add support for or1k.
-
-2014-04-18  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (dump_section_map): Adjust as load commands
-       are now chained.
-       (dump_load_command, dump_section_content): Likewise.
-
-2014-04-16  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (OPT_DYLD_INFO): New macro.
-       (options): Add entry for dyld_info.
-       (mach_o_help): Likewise.
-       (load_and_dump, dump_dyld_info_rebase, dump_dyld_info_bind)
-       (dump_dyld_info_export_1, dump_dyld_info_export): New functions.
-       (bfd_mach_o_dyld_rebase_type_name): New array.
-       (export_info_data): New struct.
-       (dump_dyld_info): Add verbose argument.  Dump rebase, bind and
-       exports data.
-       (dump_load_command): Adjust dump_dyld_info call.
-       (mach_o_dump): Handle dyld_info.
-
-2014-04-16  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (dump_header): Display sizeofcmds in decimal too.
-       (dump_segment): Reformat output.
-       (dump_dyld_info): Also display end offsets.
-       (dump_load_command): Add IDX argument, display commands size
-       and offset, reformat display.
-       (dump_load_commands): Adjust for added argument.
-
-2014-04-07  Alan Modra  <amodra@gmail.com>
-
-       PR binutils/16811
-       * objcopy.c (copy_object): Error if no sections.
-
-2014-04-03  Markus Trippelsdorf  <markus@trippelsdorf.de>
-
-       PR binutils/14698
-       ar.c: Set plugin_target early if plugins are supported.
-       nm.c: Likewise.
-
-2014-04-03  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (printf_uint64): New function.
-       (dump_load_command, dump_obj_compact_unwind): Use it.
-       (dump_exe_compact_unwind): Display personality functions.
-
-2014-04-02  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (OPT_TWOLEVEL_HINTS): New macro.
-       (options): Add entry for twolevel_hints.
-       (dump_data_in_code): Fix error message.
-       (dump_twolevel_hints): New function.
-       (dump_load_command): Handle prebound dylib, prebind cksum
-       and twolevel hints.
-       (mach_o_dump): Handle twolevel hints.
-
-2014-04-01  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (OPT_DATA_IN_CODE): New macro.
-       (options): Add entry for data in code.
-       (mach_o_help): Ditto.
-       (data_in_code_kind_name): New array.
-       (dump_data_in_code): New function.
-       (dump_load_command): Handle data in code.
-       (mach_o_dump): Ditto.
-       (dump_header): Display a terminal newline.
-
-2014-03-27  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (dump_load_command): Display value for
-       BFD_MACH_O_LC_DYLD_ENVIRONMENT.  Handle BFD_MACH_O_LC_DATA_IN_CODE
-       and BFD_MACH_O_LC_DYLIB_CODE_SIGN_DRS.
-
-2014-03-27  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (OPT_FUNCTION_STARTS): New macro.
-       (options): Add entry for function_starts.
-       (mach_o_help): Ditto.
-       (disp_segment_prot): New function.
-       (dump_section_map): Call disp_segment_prot.
-       (dump_function_starts): New function.
-       (dump_obj_compact_unwind): Fix ouput indentation.
-       (dump_exe_compact_unwind): Fix ouput indentation.
-       (mach_o_dump): Handle function_starts.
-
-2014-03-26  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (bfd_mach_o_cpu_name): Add BFD_MACH_O_CPU_TYPE_ARM64.
-
-2014-03-24  Tristan Gingold  <gingold@adacore.com>
-
-       * objdump.c (load_specific_debug_section): Set address of section.
-
-2014-03-24  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (dump_unwind_encoding_x86): Set the factor.
-       (dump_exe_compact_unwind): Change the condition.  Improve
-       indentation.
-
-2014-03-20  Nick Clifton  <nickc@redhat.com>
-
-       * readelf.c (process_version_sections): Fix off-by-one error in
-       previous delta.
-
-2014-03-19  Nick Clifton  <nickc@redhat.com>
-
-       PR binutils/16723
-       * readelf.c (process_version_sections): Prevent an infinite loop
-       when the vn_next field is zero but there are still entries to be
-       processed.
-
-2014-03-17  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (dump_section_header): Renames of dump_section.
-       (dump_segment): Adjust after renaming.
-       (OPT_COMPACT_UNWIND): Define.
-       (options): Add compact unwind.
-       (mach_o_help): Document compact_unwind.
-       (unwind_x86_64_regs, unwind_x86_regs): New arrays.
-       (dump_unwind_encoding_x86, dump_unwind_encoding)
-       (dump_obj_compact_unwind, dump_exe_compact_unwind)
-       (dump_section_content): New functions.
-       (mach_o_dump): Handle compact unwind.
-
-2014-03-17  Tristan Gingold  <gingold@adacore.com>
-
-       * od-macho.c (dump_load_command): Handle lazy load dylib.
-
-2014-03-14  Anthony Green  <green@moxielogic.com>
-
-       * objcopy.c (copy_object): Check fwrite return code.
-
-2014-03-14  Meador Inge  <meadori@codesourcery.com>
-
-       * dwarf.c (strnlen): Move prototype ...
-       * sysdep.h (strnlen): ... to here.
-
-2014-03-12  Nick Clifton  <nickc@redhat.com>
-
-       PR binutils/16652
-       * doc/binutils.texi (ar cmdline): Move --plugin command line
-       option to after the command option.
-
-2014-03-12  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>
-
-       PR binutils/16567
-       * deflex.l: Add noinput and nounput options.
-
-2014-03-12  Alan Modra  <amodra@gmail.com>
-
-       * Makefile.in: Regenerate.
-       * doc/Makefile.in: Regenerate.
-
-2014-03-06  Nick Clifton  <nickc@redhat.com>
-
-       PR binutils/16664
-       * readelf.c (process_attributes): Add checks for corrupt
-       attribute section names.
-
-2014-03-05  Alan Modra  <amodra@gmail.com>
-
-       Update copyright years.
-
-2014-03-03  Alan Modra  <amodra@gmail.com>
-
-       * README: Add "Copyright Notices" paragraph.
-
-2014-02-11  Cary Coutant  <ccoutant@google.com>
-
-       * binutils/dwarf.c (read_and_display_attr_value): Don't warn
-       for zero-length attribute value.
-
-2014-02-10  Alan Modra  <amodra@gmail.com>
-
-       * po/binutils.pot: Regenerate.
-
-2014-02-06  Andrew Pinski  <apinski@cavium.com>
-
-       * readelf.c  (get_machine_flags): Handle E_MIPS_MACH_OCTEON3 case.
-
-2014-02-06  Cary Coutant  <ccoutant@google.com>
-
-       PR binutils/16444
-       * readelf.c (print_gnu_note): Add support for NT_GNU_GOLD_VERSION.
-
-2014-01-08  H.J. Lu  <hongjiu.lu@intel.com>
-
-       * version.c (print_version): Update copyright year to 2014.
-
-2014-01-07  Tom Tromey  <tromey@redhat.com>
+2015-01-01  Alan Modra  <amodra@gmail.com>
 
-       * bucomm.c (fatal, non_fatal): Replace obsolete VA_* macros with
-       stdarg macros.
-       * dlltool.c (inform): Replace obsolete VA_* macros with stdarg
-       macros.
-       * dllwrap.c (inform, warn): Replace obsolete VA_* macros with
-       stdarg macros.
+       * version.c (print_version): Just print current year.
 
-2014-01-07  Tom Tromey  <tromey@redhat.com>
+2015-01-01  Alan Modra  <amodra@gmail.com>
 
-       * coffgrok.h (coff_ofile): Don't use PARAMS.
-       * nlmheader.y (strerror): Don't use PARAMS.
+       Update year range in copyright notice of all files.
 
-For older changes see ChangeLog-2013
+For older changes see ChangeLog-2014
 \f
-Copyright (C) 2014 Free Software Foundation, Inc.
+Copyright (C) 2015 Free Software Foundation, Inc.
 
 Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright