+2014-12-22 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/17512
+ * archive.c (do_slurp_bsd_armap): Return if the parsed_size is
+ zero.
+ (bfd_slurp_armap): Zero terminate the name.
+ (bfd_generic_stat_arch_elt): If there is no header, fail.
+ * elf32-arc.c (arc_info_to_howto_rel): Replace BFD_ASSERT with
+ error message.
+ * elf32-avr.c (avr_info_to_howto_rela): Likewise.
+ * elf32-cr16c.c (elf_cr16c_info_to_howto_rel): Likewise.
+ * elf32-cris.c (cris_info_to_howto_rela): Likewise.
+ * elf32-d10v.c (d10v_info_to_howto_rel): Likewise.
+ * elf32-d30v.c (d30v_info_to_howto_rel): Likewise.
+ * elf32-dlx.c (dlx_rtype_to_howto): Likewise.
+ * elf32-epiphany.c (epiphany_info_to_howto_rela): Likewise.
+ * elf32-fr30.c (fr30_info_to_howto_rela): Likewise.
+ * elf32-frv.c (frv_info_to_howto_rela): Likewise.
+ * elf32-i960.c (elf32_i960_info_to_howto_rel): Likewise.
+ * elf32-ip2k.c (ip2k_info_to_howto_rela): Likewise.
+ * elf32-iq2000.c (iq2000_info_to_howto_rela): Likewise.
+ * elf32-lm32.c (lm32_info_to_howto_rela): Likewise.
+ * elf32-m32c.c (m32c_info_to_howto_rela): Likewise.
+ * elf32-m32r.c (m32r_info_to_howto_rel): Likewise.
+ * elf32-m68hc11.c (m68hc11_info_to_howto_rel): Likewise.
+ * elf32-m68hc12.c (m68hc11_info_to_howto_rel): Likewise.
+ * elf32-mep.c (mep_info_to_howto_rela): Likewise.
+ * elf32-metag.c (metag_info_to_howto_rela): Likewise.
+ * elf32-moxie.c (moxie_info_to_howto_rela): Likewise.
+ * elf32-msp430.c (msp430_info_to_howto_rela): Likewise.
+ * elf32-mt.c (mt_info_to_howto_rela): Likewise.
+ * elf32-nds32.c (nds32_info_to_howto_rel): Likewise.
+ * elf32-or1k.c (or1k_info_to_howto_rela): Likewise.
+ * elf32-rl78.c (rl78_info_to_howto_rela): Likewise.
+ * elf32-rx.c (rx_info_to_howto_rela): Likewise.
+ * elf32-v850.c (v850_elf_info_to_howto_rel): Likewise.
+ * elf32-visium.c (visium_info_to_howto_rela): Likewise.
+ * elf32-xgate.c (xgate_info_to_howto_rel): Likewise.
+ * elf32-xtensa.c (elf_xtensa_info_to_howto_rela): Likewise.
+ * elf64-mmix.c (mmix_info_to_howto_rela): Likewise.
+ * elf64-x86-64.c (elf_x86_64_reloc_type_lookup): Likewise.
+ * elfnn-aarch64.c (elfNN_aarch64_bfd_reloc_from_type): Likewise.
+ * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Add range
+ checking of reloc symbol index.
+ * mach-o.c (bfd_mach_o_canonicalize_one_reloc): If no symbols have
+ been provided then set the reloc's symbol to undefined.
+ * reloc.c (bfd_generic_get_relocated_section_contents): Add range
+ checking of the reloc to be applied.
+ * versados.c (process_otr): Add more range checks.
+ (versados_canonicalize_reloc): If the section is unknown, set the
+ symbol to undefined.
+ * vms-alpha.c (_bfd_vms_slurp_eisd): Add range checks.
+ (alpha_vms_object_p): Likewise.
+
+2014-12-18 Richard Henderson <rth@redhat.com>
+
+ * elf32-ppc.c (ELF_COMMONPAGESIZE): Set to 64k.
+ * elf64-ppc.c (ELF_COMMONPAGESIZE): Likewise.
+
+2014-12-16 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/17512
+ * format.c (bfd_check_format_matches): Check for a matching vector
+ before using match priorities.
+ * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Fix off-by-one
+ errors with previous delta.
+
+2014-12-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/17713
+ * elflink.c (_bfd_elf_gc_mark_rsec): Check corrupt input.
+
+2014-12-13 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/17689
+ * elf64-x86-64.c (elf_x86_64_link_hash_entry): Add needs_copy.
+ Change has_bnd_reloc to bit field.
+ (elf_x86_64_link_hash_newfunc): Initialize needs_copy and
+ has_bnd_reloc to 0.
+ (elf_x86_64_check_relocs): Set has_bnd_reloc to 1 instead
+ of TRUE.
+ (elf_x86_64_adjust_dynamic_symbol): Copy needs_copy from the
+ real definition to a weak symbol.
+ (elf_x86_64_allocate_dynrelocs): Also check needs_copy of a
+ weak symbol for PIE when discarding space for relocs against
+ symbols which turn out to need copy relocs.
+ (elf_x86_64_relocate_section): Also check needs_copy of a
+ weak symbol for PIE with copy reloc.
+
+2014-12-12 Alan Modra <amodra@gmail.com>
+
+ PR 15228
+ * elflink.c (_bfd_elf_adjust_dynamic_copy): Call bfd_set_error.
+
+2014-12-12 Alan Modra <amodra@gmail.com>
+
+ PR 15228
+ * elflink.c (_bfd_elf_adjust_dynamic_copy): Add "info" param.
+ Error on copy relocs against protected symbols.
+ (elf_merge_st_other): Set h->protected_def.
+ * elf-bfd.h (struct elf_link_hash_entry): Add "protected_def".
+ (_bfd_elf_adjust_dynamic_copy): Update prototype.
+ * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Update
+ _bfd_elf_adjust_dynamic_copy call.
+ * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
+ * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
+ * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
+ * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
+ * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
+ * elf32-metag.c (elf_metag_adjust_dynamic_symbol): Likewise.
+ * elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
+ * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise.
+ * elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise.
+ * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
+ * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
+ * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
+ * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
+ * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
+ * elfnn-aarch64.c (elfNN_aarch64_adjust_dynamic_symbol): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
+ * elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise.
+
+2014-12-11 Keith Seitz <keiths@redhat.com>
+
+ * elf.c (elf_parse_notes): Define convenience macro
+ GROKER_ELEMENT to add elements to 'grokers' array.
+ Add 'len' element to 'grokers'.
+ Use grokers.len instead of sizeof in string
+ comparisons.
+
+2014-12-10 Alan Modra <amodra@gmail.com>
+
+ * Makefile.am (BFD32_LIBS, BFD32_LIBS_CFILES): Remove dwarf2
+ and coffgen. Add coff-bfd. Sort.
+ (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Add coffgen and dwarf2.
+ * bfd-in.h (bfd_coff_get_syment, bfd_coff_get_auxent): Delete.
+ (struct coff_comdat_info, bfd_coff_get_comdat_section): Delete.
+ * coffgen.c (coff_symbol_from): Move to coff-bfd.h as macro,
+ without unused param. Update uses.
+ (bfd_coff_get_comdat_section): Move to coff-bfd.h as macro.
+ (bfd_coff_get_syment, bfd_coff_get_auxent): Move to coff-bfd.c.
+ * libcoff-in.h: #include "coff-bfd.h".
+ (struct coff_section_tdata, coff_section_data): Move to coff-bfd.h.
+ (coff_symbol_from): Delete.
+ * coff-bfd.c: New file.
+ * coff-bfd.h: New file.
+ * coff-i386.c: Update coff_symbol_from occurrences.
+ * coff-i960.c: Likewise.
+ * coff-m68k.c: Likewise.
+ * coff-sh.c: Likewise.
+ * coff-x86_64.c: Likewise.
+ * coffcode.h: Likewise.
+ * pe-mips.c: Likewise.
+ * configure.ac (elf): Add dwarf2.lo.
+ (coffgen, coff, ecoff, xcoff): Define. Use when mapping bfd
+ target vectors to .o files. Add dwarf2 for mach-o targets.
+ Fix the sh target FIXME.
+ * po/SRC-POTFILES.in: Regenerate.
+ * Makefile.in: Regenerate.
+ * configure: Regenerate.
+ * bfd-in2.h: Regenerate.
+ * libcoff.h: Regenerate.
+
+2014-12-10 Alan Modra <amodra@gmail.com>
+
+ PR 17541
+ * dwarf2.c (struct comp_unit): Add "lang".
+ (non_mangled): New function.
+ (struct funcinfo): Add "is_linkage". Reorder for better packing.
+ Make "name" a const char*.
+ (lookup_address_in_function_table): Delete functionname_ptr param.
+ (find_abstract_instance_name): Add is_linkage param. Set if we
+ have DW_AT_linkage_name or non_mangled DW_AT_name.
+ (scan_unit_for_symbols): Similarly set func->is_linkage.
+ (parse_comp_unit): Stash DW_AT_language.
+ (comp_unit_find_nearest_line): Replace functionname_ptr param
+ with function_ptr param.
+ (_bfd_dwarf2_find_nearest_line): Adjust above calls. Set
+ functionname_ptr from function->name. Call _bfd_elf_find_function
+ to retrieve symbol for function if not linkage name.
+ (_bfd_elf_find_function): Add bfd_target_elf_flavour test, moved from..
+ * elf.c (elf_find_function): ..here.
+ (_bfd_elf_find_nearest_line): Adjust calls.
+ * elf-bfd.h (_bfd_elf_find_function): Declare.
+
+2014-12-10 Alan Modra <amodra@gmail.com>
+
+ * dwarf2.c (read_address): Check bfd_target_elf_flavour before
+ calling get_elf_backend_data.
+ (_bfd_dwarf2_find_nearest_line): Fix parens.
+
+2014-12-10 Alan Modra <amodra@gmail.com>
+
+ PR 17666
+ * elf-bfd.h (struct elf_backend_data): Add sort_relocs_p.
+ * elfxx-target.h (elf_backend_sort_relocs_p): Define.
+ (elfNN_bed): Init new field.
+ * elflink.c (elf_link_adjust_relocs): Conditionally sort.
+ (bfd_elf_final_link): Control sorting of relocs.
+ * elfxx-mips.c (_bfd_mips_elf_sort_relocs_p): New function.
+ * elfxx-mips.h (_bfd_mips_elf_sort_relocs_p): Declare.
+ * elf32-mips.c (elf_backend_sort_relocs_p): Define.
+ * elf64-mips.c (elf_backend_sort_relocs_p): Define.
+
+2014-12-09 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/17512
+ * archive64.c (bfd_elf64_archive_slurp_armap): Add range checks.
+ * libbfd.c (safe_read_leb128): New function.
+ * libbfd-in.h (safe_read_leb128): Add prototype.
+ * libbfd.h: Regenerate.
+ * elf-attrs.c (_bfd_elf_parse_attributes): Use safe_read_leb128.
+ Check for an over-long subsection length.
+ * elf.c (elf_parse_notes): Check that the namedata is long enough
+ for the string comparison that is about to be performed.
+ (elf_read_notes): Zero-terminate the note buffer.
+
+2014-12-09 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (sort_r_offset): Delete.
+ (ppc64_elf_edit_opd): Don't sort input relocs.
+
+2014-12-06 Eric Botcazou <ebotcazou@adacore.com>
+
+ * config.bfd: Add Visium support.
+ * configure.ac: Likewise.
+ * configure: Regenerate.
+ * Makefile.am (ALL_MACHINES): Add cpu-visium.lo.
+ (ALL_MACHINES_CFILES): Add cpu-visium.c.
+ (BFD32_BACKENDS): Add elf32-visium.lo.
+ (BFD32_BACKENDS_CFILES): Add elf32-visium.c.
+ * Makefile.in: Regenerate.
+ * archures.c (DESCRIPTION): Add Visium support.
+ (bfd_visium_arch): Declare.
+ (bfd_archures_list): Add bfd_visium_arch.
+ * reloc.c: Add Visium relocations.
+ * targets.c (visium_elf32_vec): Declare.
+ (_bfd_target_vector): Add visium_elf32_vec.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Likewise.
+ * cpu-visium.c: New file.
+ * elf32-visium.c: Likewise.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2014-12-05 Steve Ellcey <sellcey@mips.com>
+
+ * ecoff.c (_bfd_ecoff_slurp_symbol_table): Add cast.
+
+2014-12-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (bfd_elf32_get_synthetic_symtab): New.
+
+2014-12-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/17677
+ * elf-bfd.h (_bfd_elf_ifunc_get_synthetic_symtab): New prototype.
+ * elf-ifunc.c (_bfd_elf_ifunc_get_synthetic_symtab): New
+ function.
+ * elf32-i386.c (elf_i386_plt_sym_val): Removed.
+ (elf_backend_plt_sym_val): Likewise.
+ (elf_i386_get_plt_sym_val): New.
+ (elf_i386_get_synthetic_symtab): Likewise.
+ (bfd_elf32_get_synthetic_symtab): Likewise.
+ * elf64-x86-64.c (elf_x86_64_plt_sym_val): Removed.
+ (elf_x86_64_plt_sym_val_offset_plt_bnd): Likewise.
+ (elf_backend_plt_sym_val): Likewise.
+ (elf_x86_64_get_plt_sym_val): New.
+ (elf_x86_64_get_synthetic_symtab): Use
+ _bfd_elf_ifunc_get_synthetic_symtab.
+ (bfd_elf64_get_synthetic_symtab): Don't undefine for NaCl.
+
+2014-12-04 Alan Modra <amodra@gmail.com>
+
+ PR 17666
+ * elflink.c: Include bfd_stdint.h.
+ (cmp_ext32l_r_offset, cmp_ext32b_r_offset,
+ cmp_ext64l_r_offset, cmp_ext64b_r_offset): New functions.
+ (elf_link_adjust_relocs): Sort relocs. Free rel hashes after
+ sorting invalidates.
+
+2014-12-03 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/17512
+ * compress.c (bfd_get_full_section_contents): Fail if there are no
+ section contents available when the compress_status is
+ COMPRESS_SECTION_DONE.
+ * libbfd.c (bfd_malloc): Refuse to allocate a negative size.
+ (bfd_malloc2): Use bfd_malloc.
+ (bfd_realloc): Refuse to reallocate a negative size.
+ (bfd_realloc2): Use bfd_realloc.
+ (bfd_realloc_or_free): Use bfd_realloc.
+ (bfd_zmalloc): Use bfd_malloc.
+ (bfd_zmalloc): Use bfd_malloc2.
+ * opncls.c (bfd_alloc): Refuse to allocate a negative size.
+
+2014-12-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Reformat.
+
+2014-12-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_relocate_section): Check
+ info->executable for symbols which need copy relocs.
+
+2014-12-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Revert the last
+ change.
+ (elf_x86_64_adjust_dynamic_symbol): Don't check !info->shared
+ with ELIMINATE_COPY_RELOCS.
+ (elf_x86_64_allocate_dynrelocs): For PIE, discard space for
+ relocs against symbols which turn out to need copy relocs.
+
+2014-12-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Always
+ allow copy relocs for building executables.
+ (elf_x86_64_check_relocs): Allow copy relocs for non-GOT
+ pc-relative relocation in shared object.
+ (elf_x86_64_adjust_dynamic_symbol): Allocate copy relocs for
+ PIE.
+ (elf_x86_64_relocate_section): Don't copy a pc-relative
+ relocation into the output file if the symbol needs copy reloc.
+
+2014-12-02 Andrew Bennett <andrew.bennett@imgtec.com>
+
+ * elfxx-mips.c (mips_elf_calculate_relocation): Only check for
+ overflow on non-weak undefined symbols.
+
+2014-12-02 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (OPD_NDX): Define. Use throughout for sizing/indexing
+ _opd_sec_data array, halving required memory.
+ (sort_r_offset): New function.
+ (ppc64_elf_edit_opd): Sort incoming relocs. Accept .opd
+ sections with a mix of 16 and 24 byte OPD entries. Don't
+ attempt to honour --non-overlapping-opd for .opd sections with
+ unexpected relocs. Simplify opd entry size calculations by
+ first finding the reloc for the next entry. Make edit loop
+ handle one opd entry per iteration, with an inner loop
+ handling relocs per entry.
+
+2014-12-01 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/17512
+ * archive.c (do_slurp_coff_armap): Add range checks to prevent
+ running off the end of the string table.
+ * compress.c (bfd_get_full_section_contents): Return a NULL
+ pointer for zero sized sections. Do not attempt to copy a buffer
+ onto itself.
+ * elf-attrs.c (_bfd_elf_parse_attributes): Check for an empty
+ header. Add range checks to avoid running off the end of the
+ section.
+ * elf.c (bfd_elf_get_str_section): Seek before allocating so that
+ if the seek fails, no memory is allocated.
+ (bfd_elf_string_from_elf_section): Do not allocate a string from a
+ non string section. It only leads to trouble later on.
+ (_bfd_elf_print_private_bfd_data): Check for there being too
+ little external dynamic data.
+ (bfd_section_from_shdr): Replace assertion with a failure mode.
+ (bfd_section_from_shdr): When walking a loaded group section use
+ the internal structure size, not the external size. Check for the
+ group section being empty.
+ * elf32-i386.c (elf_i386_rtype_to_howto): Replace assertion with a
+ failure mode.
+ * elfcode.h (elf_slurp_reloc_table): Likewise.
+ * reloc.c (bfd_perform_relocation): Avoid seg-fault if the howto
+ parameter is NULL.
+
+2014-11-30 Alan Modra <amodra@gmail.com>
+
+ PR 16452, 16457
+ * elflink.c (_bfd_elf_link_find_version_dependencies): Exclude
+ symbols from libraries that won't be listed in DT_NEEDED.
+ (elf_link_output_extsym): Don't output verdefs for such symbols.
+
+2014-11-28 Alan Modra <amodra@gmail.com>
+
+ * elf.c (_bfd_elf_slurp_version_tables): Exit loops when vn_next/
+ vna_next/vd_next/vda_next is zero. Correct counts.
+
+2014-11-27 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/17512
+ * ecoff.c (_bfd_ecoff_slurp_symbol_table): Warn about and correct
+ a discrepancy between the isymMax and ifdMax values in the
+ symbolic header.
+ * elf.c (_bfd_elf_print_private_bfd_data): Fix the range check
+ scanning the external dynamic entries.
+
+2014-11-26 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/17512
+ * coff-h8300.c (rtype2howto): Replace abort with returning a NULL
+ value.
+ * coff-h8500.c (rtype2howto): Likewise.
+ * coff-tic30.c (rtype2howto): Likewise.
+ * coff-z80.c (rtype2howto): Likewise.
+ * coff-z8k.c (rtype2howto): Likewise.
+ * coff-ia64.c (RTYPE2HOWTO): Always return a valid howto.
+ * coff-m68k.c (m68k_rtype2howto): Return a NULL howto if none
+ could be found.
+ * coff-mcore.c (RTYPE2HOWTO): Add range checking.
+ * coff-w65.c (rtype2howto): Likewise.
+ * coff-we32k.c (RTYPE2HOWTO): Likewise.
+ * pe-mips.c (RTYPE2HOWTO): Likewise.
+ * coff-x86_64.c (coff_amd64_reloc): Likewise. Replace abort with
+ an error return.
+ * coffcode.h (coff_slurp_reloc_table): Allow the rel parameter to
+ be unused.
+ * coffgen.c (make_a_section_from_file): Check the length of a
+ section name before testing to see if it is a debug section name.
+ (coff_object_p): Zero out any uninitialised bytes in the opt
+ header.
+ * ecoff.c (_bfd_ecoff_slurp_symbolic_info): Test for the raw
+ source being empty when there are values to be processed.
+ (_bfd_ecoff_slurp_symbol_table): Add range check.
+ * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Likewise.
+ (bfd_mach_o_mangle_sections): Move test for too many sections to
+ before the allocation of the section table.
+ (bfd_mach_o_read_symtab_strtab): If the read fails, free the
+ memory and nullify the symbol pointer.
+ * reloc.c (bfd_generic_get_relocated_section_contents): Add
+ handling of a bfd_reloc_notsupported return value.
+ * versados.c (EDATA): Add range checking.
+ (get_record): Likewise.
+ (process_otr): Check for contents being available before updating
+ them.
+ (versados_canonicalize_reloc): Add range check.
+
+2014-11-26 Alan Modra <amodra@gmail.com>
+
+ * elf.c (_bfd_elf_slurp_version_tables): Delay allocation of
+ internal verref buffer. Error for zero sh_info. Print errors.
+ Check for zero vd_ndx. Use bfd_zalloc for vd_auxptr buffer.
+
+2014-11-25 H.J. Lu <hongjiu.lu@intel.com>
+
+ * targets.c (BFD_JUMP_TABLE_SYMBOLS): Use
+ NAME##_get_symbol_version_string.
+ (bfd_get_symbol_version_string): New.
+ * aout-adobe.c (aout_32_get_symbol_version_string): Define using
+ _bfd_nosymbols define.
+ * aout-target.h (MY_get_symbol_version_string): Likewise.
+ * aout-tic30.c (MY_get_symbol_version_string): Likewise.
+ * binary.c (binary_get_symbol_version_string): Likewise.
+ * bout.c (aout_32_get_symbol_version_string): Likewise.
+ * coff-rs6000.c (_bfd_xcoff_get_symbol_version_string): Likewise.
+ * i386msdos.c (msdos_get_symbol_version_string): Likewise.
+ * i386os9k.c (aout_32_get_symbol_version_string): Likewise.
+ * ieee.c (ieee_get_symbol_version_string): Likewise.
+ * ihex.c (ihex_get_symbol_version_string): Likewise.
+ * libecoff.h (_bfd_ecoff_get_symbol_version_string): Likewise.
+ * mach-o-target.c (bfd_mach_o_get_symbol_version_string): Likewise.
+ * mmo.c (mmo_get_symbol_version_string): Likewise.
+ * nlm-target.h (nlm_get_symbol_version_string): Likewise.
+ * oasys.c (oasys_get_symbol_version_string): Likewise.
+ * pef.c (bfd_pef_get_symbol_version_string): Likewise.
+ * plugin.c (bfd_plugin_get_symbol_version_string): Likewise.
+ * ppcboot.c (ppcboot_get_symbol_version_string): Likewise.
+ * som.c (som_get_symbol_version_string): Likewise.
+ * srec.c (srec_get_symbol_version_string): Likewise.
+ * tekhex.c (tekhex_get_symbol_version_string): Likewise.
+ * versados.c (versados_get_symbol_version_string): Likewise.
+ * vms-alpha.c (alpha_vms_get_symbol_version_string): Likewise.
+ * xsym.c (bfd_sym_get_symbol_version_string): Likewise.
+
+ * coff64-rs6000.c (rs6000_xcoff64_vec): Use
+ coff_get_symbol_version_string.
+ (rs6000_xcoff64_aix_vec): Likewise.
+
+ * elf-bfd.h (bfd_elf_get_symbol_version_string): Renamed to ...
+ (_bfd_elf_get_symbol_version_string): This.
+ * elf.c: Likewise.
+ (bfd_elf_print_symbol): Updated.
+ * elfxx-target.h (bfd_elfNN_get_symbol_version_string): Define.
+
+ * libbfd-in.h (_bfd_nosymbols_get_symbol_version_string): Define.
+ * libcoff-in.h (coff_get_symbol_version_string): Likewise.
+ * bfd-in2.h: Regenerated.
+ * libbfd.h: Likewise.
+ * libcoff.h: Likewise.
+
+2014-11-25 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/16496
+ * elf-bfd.h (bfd_elf_get_symbol_version_string): New.
+ * elf.c (bfd_elf_get_symbol_version_string): New. Extracted
+ from bfd_elf_print_symbol.
+ (bfd_elf_print_symbol): Use it.
+
+2014-11-25 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_got_plt_entry): New.
+ (elf_i386_pic_got_plt_entry): Likewise.
+ (elf_i386_link_hash_entry): Add plt_got.
+ (elf_i386_link_hash_table): Likewise.
+ (elf_i386_link_hash_newfunc): Initialize plt_got.offset to -1.
+ (elf_i386_get_local_sym_hash): Likewise.
+ (elf_i386_check_relocs): Create the GOT PLT if there are both
+ PLT and GOT references when the regular PLT is used.
+ (elf_i386_allocate_dynrelocs): Use the GOT PLT if there are
+ both PLT and GOT references unless pointer equality is needed.
+ (elf_i386_relocate_section): Also check the GOT PLT when
+ resolving R_386_PLT32.
+ (elf_i386_finish_dynamic_symbol): Use the GOT PLT if it is
+ available.
+
+ * elf64-x86-64.c (elf_x86_64_link_hash_entry): Add plt_got.
+ (elf_x86_64_link_hash_table): Likewise.
+ (elf_x86_64_link_hash_newfunc): Initialize plt_got.offset to -1.
+ (elf_x86_64_get_local_sym_hash): Likewise.
+ (elf_x86_64_check_relocs): Create the GOT PLT if there are both
+ PLT and GOT references when the regular PLT is used.
+ (elf_x86_64_allocate_dynrelocs): Use the GOT PLT if there are
+ both PLT and GOT references unless pointer equality is needed.
+ (elf_x86_64_relocate_section): Also check the GOT PLT when
+ resolving R_X86_64_PLT32.
+ (elf_x86_64_finish_dynamic_symbol): Use the GOT PLT if it is
+ available.
+
+2014-11-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ * configure: Regenerated.
+
+2014-11-24 Tejas Belagod <tejas.belagod@arm.com>
+
+ * elfnn-aarch64.c (elf_aarch64_compare_mapping): New.
+ (erratum_835769_scan): Sort map list.
+
+2014-11-24 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (plt_stub_pad): Correct.
+
+2014-11-23 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Assert size of
+ elf_x86_64_bnd_plt2_entry and elf_x86_64_legacy_plt2_entry.
+ (elf_x86_64_allocate_dynrelocs): Don't assert size of
+ elf_x86_64_bnd_plt2_entry and elf_x86_64_legacy_plt2_entry.
+
+2014-11-22 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Check
+ branch displacement overflow in PLT entry.
+
2014-11-21 Nick Clifton <nickc@redhat.com>
PR binutils/17512