+2018-06-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/23146
+ * bfd-in.h: Include "diagnostics.h".
+ * bfd-in2.h: Regenerated.
+ * elf32-arm.c (elf32_arm_nabi_write_core_note): Use
+ DIAGNOSTIC_PUSH, DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION and
+ DIAGNOSTIC_POP to silence GCC 8.1 warnings with
+ -Wstringop-truncation.
+ * elf32-ppc.c (ppc_elf_write_core_note): Likewse.
+ * elf32-s390.c (elf_s390_write_core_note): Likewse.
+ * elf64-ppc.c (ppc64_elf_write_core_note): Likewse.
+ * elf64-s390.c (elf_s390_write_core_note): Likewse.
+ * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewse.
+
+2018-06-03 Jim Wilson <jimw@sifive.com>
+
+ PR ld/23244
+ * elfnn-riscv.c (riscv_elf_relocate_section) <R_RISCV_CALL>: Check
+ for and handle an undefined weak with no PLT.
+
+ PR ld/22756
+ * elfnn-riscv.c (riscv_relax_delete_bytes): Add versioned_hidden check
+ to code that ignores duplicate symbols.
+
+2018-06-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ * version.m4: Bump version to 2.30.52
+ * configure: Regenerated.
+
+2018-06-01 Alan Modra <amodra@gmail.com>
+
+ * bfd.c (_bfd_error_handler): Arrange for this function to be
+ declared in bfd-in2.h.
+ * libbfd-in.h (_bfd_error_handler): Don't declare.
+ * libbfd.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2018-05-30 Amaan Cheval <amaan.cheval@gmail.com>
+
+ * config.bfd (x86_64-*-*): Add pei-x86-64 target to x86_64-*-rtems*
+ This is needed to generate UEFI application image files from ELFs.
+
+2018-05-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_lazy_plt): Add plt_tlsdesc_entry,
+ plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset,
+ plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and
+ plt_tlsdesc_got2_insn_end for TLSDESC entry.
+ (elf_i386_lazy_ibt_plt): Likewise.
+ (elf_i386_nacl_plt): Likewise.
+ * elf64-x86-64.c (tlsdesc_plt_entry): Moved and renamed to ...
+ (elf_x86_64_tlsdesc_plt_entry): This.
+ (elf_x86_64_lazy_plt): Add plt_tlsdesc_entry,
+ plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset,
+ plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and
+ plt_tlsdesc_got2_insn_end for TLSDESC entry.
+ (elf_x86_64_lazy_bnd_plt): Likewise.
+ (elf_x86_64_lazy_ibt_plt): Likewise.
+ (elf_x32_lazy_ibt_plt): Likewise.
+ (elf_x86_64_nacl_plt): Likewise.
+ (elf_x86_64_finish_dynamic_sections): Use plt_tlsdesc_entry,
+ plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset,
+ plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and
+ plt_tlsdesc_got2_insn_end to update TLSDESC entry.
+ * elfxx-x86.h (elf_x86_lazy_plt_layout): Update comments.
+ Add plt_tlsdesc_entry, plt_tlsdesc_entry_size,
+ plt_tlsdesc_got1_offset, plt_tlsdesc_got2_offset,
+ plt_tlsdesc_got1_insn_end and plt_tlsdesc_got2_insn_end.
+ (elf_x86_non_lazy_plt_layout): Update comments.
+ (elf_x86_plt_layout): Likewise.
+
+2018-05-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/23238
+ * elf-s390-common.c (elf_s390_add_symbol_hook): Removed.
+ * elf32-arc.c (elf_arc_add_symbol_hook): Likewise.
+ (elf_backend_add_symbol_hook): Likewise.
+ * elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise.
+ (elf_backend_add_symbol_hook): Likewise.
+ * elf32-s390.c (elf_backend_add_symbol_hook): Likewise.
+ * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
+ (elf_backend_add_symbol_hook): Likewise.
+ * elf64-s390.c (elf_backend_add_symbol_hook): Likewise.
+ * elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise.
+ * elfxx-aarch64.h (_bfd_aarch64_elf_add_symbol_hook): Likewise.
+ (elf_backend_add_symbol_hook): Likewise.
+ * elf32-arm.c (elf32_arm_add_symbol_hook): Remove STT_GNU_IFUNC
+ handling.
+ * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
+ * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
+ * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
+ * elflink.c (elf_link_add_object_symbols): Set
+ elf_gnu_symbol_ifunc for STT_GNU_IFUNC symbols.
+
+2018-05-26 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/23194
+ * elf-bfd.h (_bfd_elf_link_hide_sym_by_version): New.
+ * elflink.c (_bfd_elf_link_hide_versioned_symbol): New function.
+ Extracted from _bfd_elf_link_assign_sym_version.
+ (_bfd_elf_link_hide_sym_by_version): New function.
+ (_bfd_elf_link_assign_sym_version): Use
+ _bfd_elf_link_hide_versioned_symbol.
+ * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Call
+ _bfd_elf_link_hide_sym_by_version instead of
+ bfd_hide_sym_by_version. Don't check unversioned symbol.
+
+2018-05-25 Alan Modra <amodra@gmail.com>
+
+ * Makefile.in: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2018-05-25 Alan Modra <amodra@gmail.com>
+
+ * configure.ac (bfd_cv_hidden): Run test with -Werror in CFLAGS.
+ * configure: Regenerate.
+
+2018-05-23 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-ppc.c (ppc64_elf_write_core_note): Add ATTRIBUTE_NONSTRING
+ to data.
+
+2018-05-22 Alan Modra <amodra@gmail.com>
+
+ PR 23207
+ * elf32-hppa.c (hppa_get_stub_entry): Return NULL when link_sec
+ is NULL.
+ (elf32_hppa_size_stubs): Only create stubs for load, alloc, code
+ sections.
+ (final_link_relocate): Revert last change.
+
+2018-05-22 Alan Modra <amodra@gmail.com>
+
+ PR 23207
+ * elf32-hppa.c (final_link_relocate): Don't look for plt call
+ stubs in non-alloc sections.
+
+2018-05-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/23201
+ * aout-target.h (MY_bfd_link_hide_symbol): New.
+ * aout-tic30.c (MY_bfd_link_hide_symbol): Likewise.
+ * binary.c (binary_bfd_link_hide_symbol): Likewise.
+ * coff-alpha.c (_bfd_ecoff_bfd_link_hide_symbol): Likewise.
+ * coff-mips.c (_bfd_ecoff_bfd_link_hide_symbol): Likewise.
+ * coff-rs6000.c (_bfd_xcoff_bfd_link_hide_symbol): Likewise.
+ * coffcode.h (coff_bfd_link_hide_symbol): Likewise.
+ * elf-bfd.h (_bfd_elf_link_hide_symbol): Likewise.
+ * elfxx-target.h (bfd_elfNN_bfd_link_hide_symbol): Likewise.
+ * i386msdos.c (msdos_bfd_link_hide_symbol): Likewise.
+ * ihex.c (ihex_bfd_link_hide_symbol): Likewise.
+ * libbfd-in.h (_bfd_nolink_bfd_link_hide_symbol): Likewise.
+ * linker.c (_bfd_generic_link_hide_symbol): Likewise.
+ (bfd_link_hide_symbol): Likewise.
+ * mach-o-target.c (bfd_mach_o_bfd_link_hide_symbol): Likewise.
+ * mmo.c (mmo_bfd_link_hide_symbol): Likewise.
+ * pef.c (bfd_pef_bfd_link_hide_symbol): Likewise.
+ * plugin.c (bfd_plugin_bfd_link_hide_symbol): Likewise.
+ * ppcboot.c (ppcboot_bfd_link_hide_symbol): Likewise.
+ * som.c (som_bfd_link_hide_symbol): Likewise.
+ * srec.c (srec_bfd_link_hide_symbol): Likewise.
+ * tekhex.c (tekhex_bfd_link_hide_symbol): Likewise.
+ * vms-alpha.c (vms_bfd_link_hide_symbol): Likewise.
+ (alpha_vms_bfd_link_hide_symbol): Likewise.
+ * xsym.c (bfd_sym_bfd_link_hide_symbol): Likewise.
+ * coff64-rs6000.c (rs6000_xcoff64_vec): Add
+ _bfd_generic_link_hide_symbol.
+ (rs6000_xcoff64_aix_vec): Likewise.
+ * elflink.c (bfd_elf_record_link_assignment): Don't make forced
+ local symbol dynamic.
+ (_bfd_elf_link_hide_symbol): New function.
+ * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't
+ check root.ldscript_def.
+ * targets.c (bfd_target): Add _bfd_link_hide_symbol.
+ (BFD_JUMP_TABLE_LINK): Add NAME##_bfd_link_hide_symbol.
+ * bfd-in2.h: Regenerated.
+ * libbfd.h: Likewise.
+
2018-05-21 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/23199