]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - bfd/ChangeLog
ELF: Consolidate maybe_set_textrel
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
index d17767fd7a90bc086531064c9a056e57f85559a1..d215113495f33d77a9b1795b2fb734b1507b75ed 100644 (file)
@@ -1,3 +1,964 @@
+2020-06-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf-bfd.h (_bfd_elf_maybe_set_textrel): New
+       * elf32-arm.c (maybe_set_textrel): Removed.
+       (elf32_arm_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-csky.c (maybe_set_textrel): Removed.
+       (csky_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-hppa.c (maybe_set_textrel): Removed.
+       (elf32_hppa_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-lm32.c (maybe_set_textrel): Removed.
+       (lm32_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-m32r.c (maybe_set_textrel): Removed.
+       (m32r_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-metag.c (maybe_set_textrel): Removed.
+       (elf_metag_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-nds32.c (maybe_set_textrel): Removed.
+       (nds32_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-or1k.c (maybe_set_textrel): Removed.
+       (or1k_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-ppc.c (maybe_set_textrel): Removed.
+       (ppc_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-s390.c (maybe_set_textrel): Removed.
+       (elf_s390_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-sh.c (maybe_set_textrel): Removed.
+       (sh_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-tic6x.c (maybe_set_textrel): Removed.
+       (elf32_tic6x_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf32-tilepro.c (maybe_set_textrel): Removed.
+       (tilepro_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf64-ppc.c (maybe_set_textrel): Removed.
+       (ppc64_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elf64-s390.c (maybe_set_textrel): Removed.
+       (elf_s390_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elfnn-aarch64.c (maybe_set_textrel): Removed.
+       (elfNN_aarch64_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elfnn-riscv.c (maybe_set_textrel): Removed.
+       (riscv_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elfxx-sparc.c (maybe_set_textrel): Removed.
+       (_bfd_sparc_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elfxx-tilegx.c (maybe_set_textrel): Removed.
+       (tilegx_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elfxx-x86.c (maybe_set_textrel): Removed.
+       (_bfd_x86_elf_size_dynamic_sections): Replace maybe_set_textrel
+       with _bfd_elf_maybe_set_textrel.
+       * elflink.c (_bfd_elf_maybe_set_textrel): New.
+
+2020-06-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/26067
+       * elf32-arm.c (elf32_arm_copy_indirect_symbol): Don't copy
+       dyn_relocs.
+       * elf32-csky.c (csky_elf_copy_indirect_symbol): Likewise.
+       * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise.
+       * elf32-metag.c (elf_metag_copy_indirect_symbol): Likewise.
+       * elf32-microblaze.c (microblaze_elf_copy_indirect_symbol):
+       Likewise.
+       * elf32-nds32.c (nds32_elf_copy_indirect_symbol): Likewise.
+       * elf32-nios2.c (nios2_elf32_copy_indirect_symbol): Likewise.
+       * elf32-or1k.c (or1k_elf_copy_indirect_symbol): Likewise.
+       * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise.
+       * elf32-sh.c (sh_elf_copy_indirect_symbol): Likewise.
+       * elf32-tilepro.c (tilepro_elf_copy_indirect_symbol): Likewise.
+       * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise.
+       * elfnn-aarch64.c (elfNN_aarch64_copy_indirect_symbol): Likewise.
+       * elfnn-riscv.c (riscv_elf_copy_indirect_symbol): Likewise.
+       * elfxx-sparc.c (_bfd_sparc_elf_copy_indirect_symbol): Likewise.
+       * elfxx-tilegx.c (tilegx_elf_copy_indirect_symbol): Likewise.
+       * elfxx-x86.c (_bfd_x86_elf_copy_indirect_symbol): Likewise.
+       * elf32-lm32.c (lm32_elf_copy_indirect_symbol): Removed.
+       (elf_backend_copy_indirect_symbol): Likewise.
+       * elf32-m32r.c (m32r_elf_copy_indirect_symbol): Removed.
+       (elf_backend_copy_indirect_symbol): Likewise.
+       * elflink.c (_bfd_elf_link_hash_copy_indirect): Copy dyn_relocs.
+
+2020-06-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/26067
+       * elf-bfd.h (_bfd_elf_readonly_dynrelocs): New.
+       * elf32-arm.c (readonly_dynrelocs): Removed.
+       (maybe_set_textrel): Replace readonly_dynrelocs with
+       _bfd_elf_readonly_dynrelocs.
+       * elf32-csky.c (readonly_dynrelocs): Removed.
+       (maybe_set_textrel): Replace readonly_dynrelocs with
+       _bfd_elf_readonly_dynrelocs.
+       *  elf32-hppa.c(readonly_dynrelocs): Removed.
+       (alias_readonly_dynrelocs): Replace readonly_dynrelocs with
+       _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elf32-lm32.c (readonly_dynrelocs): Removed.
+       (lm32_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elf32-m32r.c (readonly_dynrelocs): Removed.
+       (m32r_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elf32-metag.c (readonly_dynrelocs): Removed.
+       (elf_metag_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elf32-microblaze.c (readonly_dynrelocs): Removed.
+       (microblaze_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       * elf32-nds32.c (readonly_dynrelocs): Removed.
+       (nds32_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elf32-or1k.c (readonly_dynrelocs): Removed.
+       (or1k_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       * elf32-ppc.c (readonly_dynrelocs): Removed.
+       (alias_readonly_dynrelocs): Replace readonly_dynrelocs with
+       _bfd_elf_readonly_dynrelocs.
+       (ppc_elf_adjust_dynamic_symbol): Likewise.
+       (maybe_set_textrel): Likewise.
+       * elf32-s390.c (readonly_dynrelocs): Removed.
+       (elf_s390_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elf32-sh.c (readonly_dynrelocs): Removed.
+       (sh_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs with
+       _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elf32-tic6x.c (readonly_dynrelocs): Removed.
+       (maybe_set_textrel): Replace readonly_dynrelocs with
+       _bfd_elf_readonly_dynrelocs.
+       * elf32-tilepro.c (readonly_dynrelocs): Removed.
+       (tilepro_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elf64-ppc.c (readonly_dynrelocs): Removed.
+       (alias_readonly_dynrelocs): Replace readonly_dynrelocs with
+       _bfd_elf_readonly_dynrelocs.
+       (ppc64_elf_adjust_dynamic_symbol): Likewise.
+       (maybe_set_textrel): Likewise.
+       * elf64-s390.c (readonly_dynrelocs): Removed.
+       (elf_s390_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elflink.c (_bfd_elf_readonly_dynrelocs): New.
+       * elfnn-aarch64.c (readonly_dynrelocs): Removed.
+       (maybe_set_textrel): Replace readonly_dynrelocs with
+       _bfd_elf_readonly_dynrelocs.
+       * elfnn-riscv.c (readonly_dynrelocs): Removed.
+       (riscv_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elfxx-sparc.c (readonly_dynrelocs): Removed.
+       (_bfd_sparc_elf_adjust_dynamic_symbol): Replace
+       readonly_dynrelocs with _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elfxx-tilegx.c (readonly_dynrelocs): Removed.
+       (tilegx_elf_adjust_dynamic_symbol): Replace readonly_dynrelocs
+       with _bfd_elf_readonly_dynrelocs.
+       (maybe_set_textrel): Likewise.
+       * elfxx-x86.c (readonly_dynrelocs): Removed.
+       (maybe_set_textrel): Replace readonly_dynrelocs with
+       _bfd_elf_readonly_dynrelocs.
+       (_bfd_x86_elf_adjust_dynamic_symbol): Likewise.
+
+2020-06-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Silence
+       -fsanitize=undefined.
+
+2020-06-03  Alan Modra  <amodra@gmail.com>
+
+       PR 26069
+       PR 18758
+       * peicode.h (pe_ILF_make_a_section): Align data for compilers
+       other than gcc.
+       (pe_ILF_build_a_bfd): Likewise.
+
+2020-06-03  Alan Modra  <amodra@gmail.com>
+
+       PR 26029
+       * elf.c (_bfd_elf_close_and_cleanup): Free elf_shstrtab for
+       core files as well as objects.
+
+2020-06-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/26067
+       * elf-bfd.h (elf_link_hash_entry): Add dyn_relocs after size.
+       * elf-s390-common.c (s390_elf_allocate_ifunc_dyn_relocs):
+       Updated.
+       * elf32-arc.c (elf_arc_link_hash_entry): Remove dyn_relocs.
+       (elf_arc_link_hash_newfunc): Updated.
+       * elf32-arm.c (elf32_arm_link_hash_entry): Remove dyn_relocs.
+       (elf32_arm_link_hash_newfunc): Updated.
+       (elf32_arm_copy_indirect_symbol): Likewise.
+       (elf32_arm_check_relocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs_for_symbol): Likewise.
+       * elf32-csky.c (csky_elf_link_hash_entry): Remove dyn_relocs.
+       (csky_elf_link_hash_newfunc): Updated.
+       (csky_allocate_dynrelocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (csky_elf_copy_indirect_symbol): Likewise.
+       * elf32-hppa.c (elf32_hppa_link_hash_entry): Remove dyn_relocs.
+       (hppa_link_hash_newfunc): Updated.
+       (elf32_hppa_copy_indirect_symbol): Likewise.
+       (elf32_hppa_hide_symbol): Likewise.
+       (elf32_hppa_adjust_dynamic_symbol): Likewise.
+       (allocate_dynrelocs): Likewise.
+       (elf32_hppa_relocate_section): Likewise.
+       * elf32-i386.c (elf_i386_check_relocs): Likewise.
+       * elf32-lm32.c (elf_lm32_link_hash_entry): Removed.
+       (lm32_elf_link_hash_newfunc): Likewise.
+       (lm32_elf_link_hash_table_create): Updated.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       (lm32_elf_copy_indirect_symbol): Likewise.
+       * elf32-m32r.c (elf_m32r_link_hash_entry): Removed.
+       (m32r_elf_link_hash_newfunc): Likewise.
+       (m32r_elf_link_hash_table_create): Updated.
+       (m32r_elf_copy_indirect_symbol): Likewise.
+       (allocate_dynrelocs): Likewise.
+       * elf32-metag.c (elf_metag_link_hash_entry): Remove dyn_relocs.
+       (metag_link_hash_newfunc): Updated.
+       (elf_metag_copy_indirect_symbol): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       * elf32-microblaze.c (elf32_mb_link_hash_entry): Remove
+       dyn_relocs.
+       (link_hash_newfunc): Updated.
+       (microblaze_elf_check_relocs): Likewise.
+       (microblaze_elf_copy_indirect_symbol): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       * elf32-nds32.c (elf_nds32_link_hash_entry): Remove dyn_relocs.
+       (nds32_elf_link_hash_newfunc): Updated.
+       (nds32_elf_copy_indirect_symbol): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       (nds32_elf_check_relocs): Likewise.
+       * elf32-nios2.c (elf32_nios2_link_hash_entry): Remove dyn_relocs.
+       (link_hash_newfunc): Updated.
+       (nios2_elf32_copy_indirect_symbol): Likewise.
+       (nios2_elf32_check_relocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       * elf32-or1k.c (elf_or1k_link_hash_entry): Remove dyn_relocs.
+       (or1k_elf_link_hash_newfunc): Updated.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       (or1k_elf_copy_indirect_symbol): Likewise.
+       * elf32-ppc.c (ppc_elf_link_hash_entry): Remove dyn_relocs.
+       (ppc_elf_link_hash_newfunc): Updated.
+       (ppc_elf_copy_indirect_symbol): Likewise.
+       (ppc_elf_check_relocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (ppc_elf_adjust_dynamic_symbol): Likewise.
+       (allocate_dynrelocs): Likewise.
+       (ppc_elf_relocate_section): Likewise.
+       * elf32-s390.c (elf_s390_link_hash_entry): Remove dyn_relocs.
+       (link_hash_newfunc): Updated.
+       (elf_s390_copy_indirect_symbol): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (elf_s390_adjust_dynamic_symbol): Likewise.
+       (allocate_dynrelocs): Likewise.
+       * elf32-sh.c (elf_sh_link_hash_entry): Remove dyn_relocs.
+       (sh_elf_link_hash_newfunc): Updated.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       (sh_elf_copy_indirect_symbol): Likewise.
+       (sh_elf_check_relocs): Likewise.
+       * elf32-tic6x.c (elf32_tic6x_link_hash_entry): Removed.
+       (elf32_tic6x_link_hash_newfunc): Likewise.
+       (elf32_tic6x_link_hash_table_create): Updated.
+       (readonly_dynrelocs): Likewise.
+       (elf32_tic6x_check_relocs): Likewise.
+       (elf32_tic6x_allocate_dynrelocs): Likewise.
+       * elf32-tilepro.c (tilepro_elf_link_hash_entry): Remove
+       dyn_relocs.
+       (link_hash_newfunc): Updated.
+       (tilepro_elf_copy_indirect_symbol): Likewise.
+       (tilepro_elf_check_relocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       * elf64-ppc.c (ppc_link_hash_entry): Remove dyn_relocs.
+       (ppc64_elf_copy_indirect_symbol): Updated.
+       (ppc64_elf_check_relocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (ppc64_elf_adjust_dynamic_symbol): Likewise.
+       (dec_dynrel_count): Likewise.
+       (allocate_dynrelocs): Likewise.
+       (ppc64_elf_relocate_section): Likewise.
+       * elf64-s390.c (elf_s390_link_hash_entry): Remove dyn_relocs.
+       (link_hash_newfunc): Updated.
+       (elf_s390_copy_indirect_symbol): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+       * elfnn-aarch64.c (elf_aarch64_link_hash_entry): Remove
+       dyn_relocs.
+       (elfNN_aarch64_link_hash_newfunc): Updated.
+       (elfNN_aarch64_copy_indirect_symbol): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (need_copy_relocation_p): Likewise.
+       (elfNN_aarch64_allocate_dynrelocs): Likewise.
+       (elfNN_aarch64_allocate_ifunc_dynrelocs): Likewise.
+       * elfnn-riscv.c (riscv_elf_link_hash_entry): Remove dyn_relocs.
+       (link_hash_newfunc): Updated.
+       (riscv_elf_copy_indirect_symbol): Likewise.
+       (riscv_elf_check_relocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       * elfxx-sparc.c (_bfd_sparc_elf_link_hash_entry): Remove
+       dyn_relocs.
+       (link_hash_newfunc): Updated.
+       (_bfd_sparc_elf_copy_indirect_symbol): Likewise.
+       (_bfd_sparc_elf_check_relocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       * elfxx-tilegx.c (tilegx_elf_link_hash_entry): Remove dyn_relocs.
+       (link_hash_newfunc): Updated.
+       (tilegx_elf_copy_indirect_symbol): Likewise.
+       (tilegx_elf_check_relocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (allocate_dynrelocs): Likewise.
+       * elfxx-x86.c (elf_x86_allocate_dynrelocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       (_bfd_x86_elf_copy_indirect_symbol): Likewise.
+       * elfxx-x86.h (elf_x86_link_hash_entry): Remove dyn_relocs.
+
+2020-06-01  Alan Modra  <amodra@gmail.com>
+
+       * vms-alpha.c (_bfd_vms_slurp_etir): Check bound for the current
+       command against cmd_length, not the end of record.  For
+       ETIR__C_STO_IMMR check size against cmd_length, mask repeat count
+       to 32-bits and break out on zero size.  Add ETIR__C_STC_LP_PSB
+       cmd_length test.
+
+2020-05-28  David Faust  <david.faust@oracle.com>
+
+       * elf64-bpf.c (bpf_elf_relocate_section): Fix handling of
+       R_BPF_INSN_{32,64} relocations.
+
+2020-05-28  Stephen Casner  <casner@acm.org>
+
+       * pdp11.c: Implement BRD_RELOC_32 to relocate the low 16 bits of
+       addreses in .long (used in testsuites) and .stab values.
+
+2020-05-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/22909
+       * elflink.c (bfd_elf_final_link): Use bfd_link_textrel_check.
+       Check bfd_link_dll when issue a DT_TEXTREL warning.
+       * elfxx-x86.c (maybe_set_textrel): Likewise.
+       (_bfd_x86_elf_size_dynamic_sections): Likewise.
+
+2020-05-26  Nick Clifton  <nickc@redhat.com>
+
+       * plugin.c (try_load_plugin): Extend error message when a plugin
+       fails to open.
+
+2020-05-23  Alan Modra  <amodra@gmail.com>
+
+       * bfdio.c (bfd_get_file_size): Don't segfault on NULL arch_header.
+
+2020-05-22  Alan Modra  <amodra@gmail.com>
+
+       PR 25882
+       * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Don't init FP
+       attributes from shared libraries, and do not return an error if
+       they don't match.
+
+2020-05-21  Alan Modra  <amodra@gmail.com>
+
+       PR 25993
+       * opncls.c (_bfd_free_cached_info): Keep a copy of the bfd
+       filename.
+       (_bfd_delete_bfd): Free the copy.
+       (_bfd_new_bfd): Free nbfd->memory on error.
+
+2020-05-21  Alan Modra  <amodra@gmail.com>
+
+       * aoutx.h: Replace "if (x) free (x)" with "free (x)" throughout.
+       * archive.c, * bfd.c, * bfdio.c, * coff-alpha.c, * coff-ppc.c,
+       * coff-sh.c, * coff-stgo32.c, * coffcode.h, * coffgen.c,
+       * cofflink.c, * cpu-arm.c, * doc/chew.c, * dwarf2.c, * ecoff.c,
+       * ecofflink.c, * elf-eh-frame.c, * elf-m10200.c, * elf-m10300.c,
+       * elf-strtab.c, * elf.c, * elf32-arc.c, * elf32-arm.c,
+       * elf32-avr.c, * elf32-bfin.c, * elf32-cr16.c, * elf32-crx.c,
+       * elf32-epiphany.c, * elf32-ft32.c, * elf32-h8300.c,
+       * elf32-ip2k.c, * elf32-m32c.c, * elf32-m68hc11.c,
+       * elf32-m68k.c, * elf32-microblaze.c, * elf32-msp430.c,
+       * elf32-nds32.c, * elf32-nios2.c, * elf32-ppc.c, * elf32-pru.c,
+       * elf32-rl78.c, * elf32-rx.c, * elf32-sh.c, * elf32-spu.c,
+       * elf32-v850.c, * elf32-xtensa.c, * elf64-alpha.c,
+       * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mips.c
+       * elf64-mmix.c, * elf64-ppc.c, * elf64-sparc.c, * elfcode.h,
+       * elflink.c, * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-mips.c,
+       * elfxx-x86.c, * format.c, * ihex.c, * libbfd.c, * linker.c,
+       * mmo.c, * opncls.c, * pdp11.c, * peXXigen.c, * pef.c,
+       * peicode.h, * simple.c, * som.c, * srec.c, * stabs.c, * syms.c,
+       * targets.c, * vms-lib.c, * xcofflink.c, * xtensa-isa.c: Likewise.
+
+2020-05-20  Nelson Chu  <nelson.chu@sifive.com>
+
+       * elfxx-riscv.h (riscv_parse_subset_t): Add new callback function
+       get_default_version.  It is used to find the default version for
+       the specific extension.
+       * elfxx-riscv.c (riscv_parsing_subset_version): Remove the parameters
+       default_major_version and default_minor_version.  Add new bfd_boolean
+       parameter *use_default_version.  Set it to TRUE if we need to call
+       the callback rps->get_default_version to find the default version.
+       (riscv_parse_std_ext): Call rps->get_default_version if we fail to find
+       the default version in riscv_parsing_subset_version, and then call
+       riscv_add_subset to add the subset into subset list.
+       (riscv_parse_prefixed_ext): Likewise.
+       (riscv_std_z_ext_strtab): Support Zicsr extensions.
+       * elfnn-riscv.c (riscv_merge_std_ext): Use strcasecmp to compare the
+       strings rather than characters.
+       riscv_merge_arch_attr_info): The callback function get_default_version
+       is only needed for assembler, so set it to NULL int the linker.
+       * elfxx-riscv.c (riscv_estimate_digit): Remove the static.
+       * elfxx-riscv.h: Updated.
+
+2020-05-20  Alan Modra  <amodra@gmail.com>
+
+       PR 25993
+       * archive.c (_bfd_get_elt_at_filepos): Don't strdup filename,
+       use bfd_set_filename.
+       * elfcode.h (_bfd_elf_bfd_from_remote_memory): Likewise.
+       * mach-o.c (bfd_mach_o_fat_member_init): Likewise.
+       * opncls.c (bfd_fopen, bfd_openstreamr, bfd_openr_iovec, bfd_openw),
+       (bfd_create): Likewise.
+       (_bfd_delete_bfd): Don't free filename.
+       (bfd_set_filename): Copy filename param to bfd_alloc'd memory,
+       return pointer to the copy or NULL on alloc fail.
+       * vms-lib.c (_bfd_vms_lib_get_module): Free newname and test
+       result of bfd_set_filename.
+       * bfd-in2.h: Regenerate.
+
+2020-05-20  Alan Modra  <amodra@gmail.com>
+
+       PR 26011
+       * elf.c (_bfd_elf_get_reloc_upper_bound): Sanity check reloc
+       section size against file size.
+       (_bfd_elf_get_dynamic_reloc_upper_bound): Likewise.
+
+2020-05-19  Gunther Nikl  <gnikl@justmail.de>
+
+       PR 26005
+       * elf.c (bfd_section_from_shdr): Replace bfd_zmalloc with bfd_malloc
+       and memset when allocating memory for the sections_being_created
+       array.
+
+2020-05-19  Stafford Horne  <shorne@gmail.com>
+
+       * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Rename srela
+       to relgot.
+       (or1k_elf_relocate_section): Access srelgot via
+       htab->root.srelgot.  Add assertions for srelgot->contents.
+       Introduce local variable for srelgot to not reuse global
+       sreloc.
+       (or1k_elf_relocate_section): Fixup dynamic symbol detection.
+       (or1k_set_got_and_rela_sizes): New function.
+       (or1k_initial_exec_offset): New function.
+       (TLS_GD, TLS_IE, TLS_LD, TLS_LE): Redefine macros as masks.
+       (or1k_elf_relocate_section): Allow for TLS to handle multiple
+       model access.
+       (or1k_elf_check_relocs): Use OR to set TLS access.
+       (allocate_dynrelocs): Use or1k_set_got_and_rela_sizes to set
+       sizes.
+       (or1k_elf_size_dynamic_sections): Use
+       or1k_set_got_and_rela_sizes to set sizes.
+       (or1k_elf_relocate_section): Fixup PCREL relocation calculation.
+       (TCB_SIZE): New macro.
+       (tpoff): Use TCB_SIZE and alignment to calculate offset.
+       (allocate_dynrelocs, readonly_dynrelocs, or1k_elf_check_relocs)
+       (or1k_elf_size_dynamic_sections): Rename p to sec_relocs.
+       (allocate_dynrelocs): Rename s to splt or sgot based on usage.
+       (tpoff): Add dynamic boolean argument.
+       (or1k_elf_relocate_section): Pass dynamic flag to tpoff.
+
+2020-05-19  Siddhesh Poyarekar  <siddesh.poyarekar@arm.com>
+
+       * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Club
+       BFD_RELOC_AARCH64_BRANCH19 and BFD_RELOC_AARCH64_TSTBR14
+       cases with BFD_RELOC_AARCH64_JUMP26.
+       (elfNN_aarch64_check_relocs): Likewise.
+
+2020-05-19  Alan Modra  <amodra@gmail.com>
+
+       * aix5ppc-core.c (xcoff64_core_file_matches_executable_p): Use
+       bfd_get_filename rather than accessing bfd->filename directly.
+       * aout-target.h (MY (object_p)): Likewise.
+       * aoutx.h (aout_find_nearest_line, aout_link_write_symbols): Likewise.
+       * archive.c (find_nested_archive, _bfd_generic_read_ar_hdr_mag),
+       (_bfd_construct_extended_name_table, _bfd_bsd44_write_ar_hdr),
+       (_bfd_archive_bsd44_construct_extended_name_table),
+       (_bfd_write_archive_contents, _bfd_compute_and_write_armap),
+       (_bfd_bsd_write_armap): Likewise.
+       * bfd.c (bfd_errmsg, _bfd_doprnt): Likewise.
+       * cache.c (bfd_open_file): Likewise.
+       * ecoff.c (_bfd_ecoff_write_armap): Likewise.
+       * ecofflink.c (bfd_ecoff_debug_accumulate_other): Likewise.
+       * elf32-bfin.c (bfinfdpic_relocate_section): Likewise.
+       * elf32-frv.c (elf32_frv_relocate_section): Likewise.
+       * elf32-hppa.c (elf32_hppa_final_link): Likewise.
+       * elf32-nds32.c (nds32_elf_output_symbol_hook),
+       (patch_tls_desc_to_ie): Likewise.
+       * elf32-spu.c (sort_bfds, print_one_overlay_section),
+       (spu_elf_auto_overlay): Likewise.
+       * elf64-hppa.c (elf_hppa_final_link): Likewise.
+       * elf64-ia64-vms.c (elf64_ia64_size_dynamic_sections): Likewise.
+       * elfcore.h (elf_core_file_matches_executable_p): Likewise.
+       * elflink.c (bfd_elf_size_dynamic_sections),
+       (elf_link_input_bfd): Likewise.
+       * linker.c (_bfd_generic_link_output_symbols): Likewise.
+       * mach-o.c (bfd_mach_o_follow_dsym),
+       (bfd_mach_o_close_and_cleanup): Likewise.
+       * opncls.c (_bfd_delete_bfd, _maybe_make_executable),
+       (find_separate_debug_file, get_build_id_name): Likewise.
+       * pdp11.c (aout_find_nearest_line, aout_link_write_symbols): Likewise.
+       * plugin.c (bfd_plugin_open_input): Likewise.
+       * rs6000-core.c (rs6000coff_core_file_matches_executable_p): Likewise.
+       * som.c (som_write_armap): Likewise.
+       * srec.c (srec_write_record, srec_write_symbols): Likewise.
+       * vms-lib.c (_bfd_vms_lib_get_imagelib_file),
+       (_bfd_vms_lib_write_archive_contents): Likewise.
+       * xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise.
+
+2020-05-19  Alan Modra  <amodra@gmail.com>
+
+       PR 25713
+       * bfdio.c (_bfd_real_fopen): Typo fix.
+
+2020-05-18  Nick Clifton  <nickc@redhat.com>
+
+       PR 26005
+       * elf.c (bfd_section_from_shdr): Use bfd_malloc to allocate memory
+       for the sections_being_created array.
+
+2020-05-18  Alan Modra  <amodra@gmail.com>
+
+       * ecoff.c (ecoff_slurp_reloc_table): Malloc external_relocs so
+       they can be freed without also freeing internal_relocs.
+
+2020-05-18  Jaydeep Chauhan  <jaydeepchauhan1494@gmail.com>
+
+       PR 25713
+       * bfdio.c (_bfd_real_fopen): Convert UNIX style sirectory
+       separators into DOS style when creating a WIN32 fullpath.
+
+2020-05-14  Nelson Chu  <nelson.chu@sifive.com>
+
+       * elfnn-riscv.c (elfNN_riscv_mkobject):  New function.  We need this
+       to initialize RISC-V tdata.
+
+2020-05-12  Gunther Nikl  <gnikl@justmail.de>
+
+       * aoutx.h (NAME (aout, swap_std_reloc_out)): Reject an unsupported
+       relocation size.
+
+2020-05-11  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (xlate_pcrel_opt): Handle lxvp and stxvp.
+
+2020-05-11  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c: Rename powerxx to power10 throughout.
+
+2020-05-11  Alan Modra  <amodra@gmail.com>
+
+       PR 25961
+       * coffgen.c (coff_get_normalized_symtab): Check that buffer
+       contains required number of auxents before processing any auxent.
+       * coffswap.h (coff_swap_aux_in <C_FILE>): Only swap in extended
+       file name from auxents for PE.
+
+2020-05-04  Gunther Nikl  <gnikl@justmail.de>
+
+       * aout-cris.c (DEFAULT_ARCH): Delete define.
+       (MY_set_arch_mach): Likewise.
+       (SET_ARCH_MACH): Use bfd_set_arch_mach with an explicit architecture
+       of bfd_arch_cris.
+       (swap_ext_reloc_in): Add casts to r_index extraction. Mask valid bits
+       of r_type before the shift.
+
+2020-05-04  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       PR ld/25665
+       * elfnn-aarch64.c (group_sections): Copy implementation from
+       elf32-arm.c.
+
+2020-05-01  Alan Modra  <amodra@gmail.com>
+
+       PR 25900
+       * elfnn-riscv.c (_bfd_riscv_relax_section): Check root.type before
+       accessing root.u.def of symbols.  Also check root.u.def.section
+       is non-NULL.  Reverse tests so as to make the logic positive.
+
+2020-05-01  Alan Modra  <amodra@gmail.com>
+
+       PR 25882
+       * elf32-tic6x.c (elf32_tic6x_merge_attributes): Don't transfer
+       Tag_ABI_PIC or Tag_ABI_PID from dynamic objects to the output.
+
+2020-05-01  Alan Modra  <amodra@gmail.com>
+
+       PR 25882
+       * elf32-bfin.c (elf32_bfin_merge_private_bfd_data): Add FIXME.
+       * elf32-frv.c (frv_elf_merge_private_bfd_data): Likewise.
+       * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise.
+       * elf32-nds32.c (nds32_elf_merge_private_bfd_data): Likewise.
+       * elf32-score.c (s3_elf32_score_merge_private_bfd_data): Likewise.
+       * elf32-score7.c (s7_elf32_score_merge_private_bfd_data): Likewise.
+       * elf32-sh.c (sh_elf_merge_private_data): Likewise.
+       * elf32-tic6x.c (elf32_tic6x_merge_attributes): Likewise.
+       * elf64-ia64-vms.c (elf64_ia64_merge_private_bfd_data): Likewise.
+       * elfnn-ia64.c (elfNN_ia64_merge_private_bfd_data): Likewise.
+
+2020-05-01  Alan Modra  <amodra@gmail.com>
+
+       PR 25882
+       * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Ignore e_flags
+       from shared libraries.
+
+2020-04-29  Max Filippov  <jcmvbkbc@gmail.com>
+
+       * elf32-xtensa.c (relax_section): Don't negate diff_value for
+       XTENSA_NDIFF relocations. Don't add sign bits whe diff_value
+       equals 0. Report overflow when the result has negative sign but
+       all significant bits are zero.
+
+2020-04-29  Gunther Nikl  <gnikl@justmail.de>
+
+       * aoutx.h (swap_std_reloc_out): Special case 64 bit relocations.
+       (aout_link_reloc_link_order): Likewise. Make r_length an unsigned.
+
+2020-04-28  Alan Modra  <amodra@gmail.com>
+
+       * vms-alpha.c (_bfd_vms_slurp_etir): Correct divide by zero check.
+       Emit warning message.
+
+2020-04-27  Tamar Christina  <tamar.christina@arm.com>
+
+       * coff-i386.c (COFF_WITH_PE_BIGOBJ): New.
+       * coff-x86_64.c (COFF_WITH_PE_BIGOBJ): New.
+       * config.bfd (targ_selvecs): Rename x86_64_pe_be_vec
+       to x86_64_pe_big_vec as it not a big-endian format.
+       (vec i386_pe_big_vec): New.
+       * configure.ac: Likewise.
+       * targets.c: Likewise.
+       * configure: Regenerate.
+       * pe-i386.c (TARGET_SYM_BIG, TARGET_NAME_BIG,
+       COFF_WITH_PE_BIGOBJ): New.
+       * pe-x86_64.c (TARGET_SYM_BIG, TARGET_NAME_BIG):
+       New.
+       (x86_64_pe_be_vec): Moved.
+
+2020-04-23  Anton Kolesov  <anton.kolesov@synopsys.com>
+
+       * elf-bfd.h (elfcore_write_arc_v2): Add prototype.
+       * elf.c (elfcore_grok_arc_v2): New function.
+       (elfcore_grok_note): Call the new function to handle the corresponding
+       note.
+       (elfcore_write_arc_v2): New function.
+       (elfcore_write_register_note): Call the new function to handle the
+       corresponding pseudo-sections.
+
+2020-04-22  Max Filippov  <jcmvbkbc@gmail.com>
+
+       PR ld/25861
+       * bfd-in2.h: Regenerated.
+       * elf32-xtensa.c (elf_howto_table): New entries for
+       R_XTENSA_PDIFF{8,16,32} and R_XTENSA_NDIFF{8,16,32}.
+       (elf_xtensa_reloc_type_lookup, elf_xtensa_do_reloc)
+       (relax_section): Add cases for R_XTENSA_PDIFF{8,16,32} and
+       R_XTENSA_NDIFF{8,16,32}.
+       * libbfd.h (bfd_reloc_code_real_names): Add names for
+       BFD_RELOC_XTENSA_PDIFF{8,16,32} and
+       BFD_RELOC_XTENSA_NDIFF{8,16,32}.
+       * reloc.c: Add documentation for BFD_RELOC_XTENSA_PDIFF{8,16,32}
+       and BFD_RELOC_XTENSA_NDIFF{8,16,32}.
+
+2020-04-21  Tamar Christina  <tamar.christina@arm.com>
+
+       PR binutils/24753
+       * compress.c (bfd_get_full_section_contents): Exclude sections with no
+       content.
+
+2020-04-21  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/25849
+       * elf-bfd.h (elf_backend_data): Add
+       elf_backend_strip_zero_sized_dynamic_sections.
+       (_bfd_elf_strip_zero_sized_dynamic_sections): New prototype.
+       * elf64-alpha.c (elf_backend_strip_zero_sized_dynamic_sections):
+       New macro.
+       * elflink.c (_bfd_elf_strip_zero_sized_dynamic_sections): New
+       function.
+       * elfxx-target.h (elf_backend_strip_zero_sized_dynamic_sections):
+       New macro.
+       (elfNN_bed): Add elf_backend_strip_zero_sized_dynamic_sections.
+
+2020-04-21  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf64-alpha.c (alpha_elf_reloc_entry): Replace reltext with
+       sec.
+       (elf64_alpha_check_relocs): Set sec instead of reltext.  Warn
+       DT_TEXTREL with -M.
+       (elf64_alpha_calc_dynrel_sizes): Warn DT_TEXTREL with -M.
+
+2020-04-21  Nick Clifton  <nickc@redhat.com>
+
+       * po/sr.po: Updated Serbian translation.
+
+2020-04-21  Alan Modra  <amodra@gmail.com>
+
+       * elf32-sh.c (sh_elf_relocate_section): Remove STO_SH5_ISA32
+       processing.
+
+2020-04-20  Stephen Casner  <casner@acm.org>
+
+       * pdp11.c (N_STAB): Modify value to avoid conflict with N_EXT
+       causing globals from linker script to be treated as debug symbols.
+       (translate_symbol_table): Don't sign-extend symbol values from 16
+       to 64 bits in nm output.
+
+2020-04-20  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc64_elf_size_stubs): Strip relbrlt too.
+
+2020-04-18  Alan Modra  <amodra@gmail.com>
+
+       * section.c (bfd_is_const_section): Correct test for special
+       sections.
+       * bfd-in2.h: Regenerate.
+
+2020-04-17  Alan Modra  <amodra@gmail.com>
+
+       PR 25842
+       * elf.c (_bfd_elf_get_symbol_version_string): Don't segfault on
+       NULL nodename.
+
+2020-04-16  Nick Clifton  <nickc@redhat.com>
+
+       PR 25803
+       * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Replace an
+       abort with a more helpful error message.
+
+2020-04-16  Alan Modra  <amodra@gmail.com>
+
+       PR 25827
+       * dwarf2.c (scan_unit_for_symbols): Wrap overlong lines.  Don't
+       strdup(0).
+
+2020-04-15  Fangrui Song <maskray@google.com>
+
+       PR binutils/24613
+       * coff-rs6000.c (xcoff_ppc_relocate_section): Change RM_GENERATE_ERROR
+       to RM_DIAGNOSE plus a check of warn_unresolved_syms.
+       * coff64-rs6000.c (xcoff_ppc_relocate_section): Likewise.
+       * elf-bfd.h (_bfd_elf_large_com_section): Likewise.
+       * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
+       * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
+       * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
+       * elf32-sh.c (sh_elf_relocate_section): Likewise.
+       * elf32-spu.c (spu_elf_relocate_section): Likewise.
+       * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
+       * elflink.c (elf_link_output_extsym): Likewise.
+       * elfxx-mips.c (mips_elf_calculate_relocation): Likewise.
+
+2020-04-15  Alan Modra  <amodra@gmail.com>
+
+       PR 25823
+       * peXXigen.c (_bfd_XXi_swap_sym_in <C_SECTION>): Don't use a
+       pointer into strings that may be freed for section name, always
+       allocate a new string.
+
+2020-04-14  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
+            Jan W. Jagersma  <jwjagersma@gmail.com>
+
+       * coff-go32.c (COFF_GO32, IMAGE_SCN_LNK_NRELOC_OVFL)
+       (coff_SWAP_scnhdr_in, coff_SWAP_scnhdr_out): Define.
+       (_bfd_go32_swap_scnhdr_in, _bfd_go32_swap_scnhdr_out)
+       (_bfd_go32_mkobject): New functions.
+       * coff-stgo32.c (IMAGE_SCN_LNK_NRELOC_OVFL)
+       (coff_SWAP_scnhdr_in, coff_SWAP_scnhdr_out): Define.
+       (go32exe_mkobject): Call _bfd_go32_mkobject.
+       * coffcode.h (COFF_WITH_EXTENDED_RELOC_COUNTER): Define.
+       (coff_set_alignment_hook): Define function for COFF_GO32_EXE
+       and COFF_GO32.
+       (coff_write_relocs): Enable extended reloc counter code if
+       COFF_WITH_EXTENDED_RELOC_COUNTER is defined.  Test for obj_go32.
+       (coff_write_object_contents): Likewise.  Pad section headers
+       for COFF_GO32 and COFF_GO32EXE.  Use bfd_coff_swap_scnhdr_out
+       instead of coff_swap_scnhdr_out.
+       * cofflink.c (_bfd_coff_final_link): Test also for obj_go32 to
+       enable extended reloc counter.
+       * coffswap.h: (coff_swap_scnhdr_in, coff_swap_scnhdr_out):
+       Declare with ATTRIBUTE_UNUSED.
+       * libcoff-in.h: (struct coff_tdata): New field go32.
+       (obj_go32): Define.
+       * libcoff.h: Regenerate.
+
+2020-04-14  Fangrui Song  <maskray@google.com>
+
+       PR gas/25768
+       * elf.c (assign_section_numbers): Always set .stab sh_entsize to
+       12.
+
+2020-04-14  Stephen Casner  <casner@acm.org>
+
+       PR ld/25677
+       * pdp11.c: Add implementation of --imagic option.
+       (adjust_o_magic): Fix objcopy --extract-symbol test.
+       * libaout.h (enum aout_magic): Add i_magic.
+
+2020-04-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+           Nick Clifton  <nickc@redhat.com>
+
+       * elf32-sparc.c (sparc_final_write_processing): Fix whitespace.
+       <0>: Ignore.
+       <default>: Error rather than abort.
+
+2020-04-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/25767
+       * elf.c (_bfd_elf_fixup_group_sections): Remove zero-sized
+       relocation section from section group.
+
+2020-04-02  Jan W. Jagersma  <jwjagersma@gmail.com>
+
+       * bfdio.c (bfd_bread, bfd_tell, bfd_seek, bfd_mmap): Always add
+       bfd->origin to file offset.
+       * bfdwin.c (bfd_get_file_window): Likewise.
+       * bfd.c: Clarify the use of the bfd->origin field.
+       * bfd-in2.h: Regenerate.
+       * coff-i386.c: Don't include go32exe.h. Allow overriding
+       coff_write_object_contents via COFF_WRITE_CONTENTS.
+       * coff-stgo32.c (go32exe_cleanup, go32exe_mkobject)
+       (go32exe_write_object_contents): New functions.
+       (go32exe_temp_stub, go32exe_temp_stub_size): New static globals.
+       (COFF_WRITE_CONTENTS, GO32EXE_DEFAULT_STUB_SIZE): Define.
+       (create_go32_stub): Remove check for 2k size limit.  Read stub
+       from go32exe_temp_stub if present.
+       (go32_stubbed_coff_bfd_copy_private_bfd_data): Allocate and
+       copy variable-length stub.
+       (go32_check_format): Read stub to go32exe_temp_stub, set
+       origin, return go32exe_cleanup.
+       (adjust_filehdr_in_post, adjust_filehdr_out_pre)
+       (adjust_filehdr_out_post, adjust_scnhdr_in_post)
+       (adjust_scnhdr_out_pre, adjust_scnhdr_out_post)
+       (adjust_aux_in_post, adjust_aux_out_pre, adjust_aux_out_post):
+       Remove functions and their associated #defines.
+       * coffcode.h (coff_mkobject_hook): Remove stub copying code.
+       * libcoff-in.h: (struct coff_tdata): New field stub_size.
+       Rename field go32stub to stub.
+       * libcoff.h: Regenerate.
+       * coff-stgo32.c (go32_check_format): Rename to...
+       (go32exe_check_format): ...this.
+       (go32_stubbed_coff_bfd_copy_private_bfd_data): Rename to...
+       (go32exe_copy_private_bfd_data): ...this.
+       (stub_bytes): Rename to...
+       (go32exe_default_stub): ...this.
+       (create_go32_stub): Rename to...
+       (go32exe_create_stub): ...this.
+       * coff-stgo32.c (go32exe_copy_private_bfd_data): Avoid realloc
+       when possible.
+
+2020-04-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/25749
+       PR ld/25754
+       * elf32-i386.c (elf_i386_convert_load_reloc): Convert load
+       relocation to R_386_32 for relocation against non-preemptible
+       absolute symbol.
+       (elf_i386_check_relocs): Call _bfd_elf_x86_valid_reloc_p.  Don't
+       allocate dynamic relocation for non-preemptible absolute symbol.
+       (elf_i386_relocate_section): Pass sec to
+       GENERATE_DYNAMIC_RELOCATION_P.
+       * elf64-x86-64.c (R_X86_64_converted_reloc_bit): Moved.
+       (elf_x86_64_convert_load_reloc): Covert load relocation to
+       R_X86_64_32S or R_X86_64_32 for relocation against non-preemptible
+       absolute symbol.  Don't convert to R_X86_64_32S nor R_X86_64_32
+       for non-preemptible absolute symbol if they overflow.
+       (elf_x86_64_check_relocs): Call _bfd_elf_x86_valid_reloc_p.  Set
+       tls_type for GOT slot to GOT_ABS for non-preemptible absolute
+       symbol.  Don't allocate dynamic relocation for non-preemptible
+       absolute symbol.
+       (elf_x86_64_relocate_section): Don't generate relative relocation
+       for GOTPCREL relocations aganst local absolute symbol.  Pass sec
+       to GENERATE_DYNAMIC_RELOCATION_P.
+       * elfxx-x86.c (elf_x86_allocate_dynrelocs): No dynamic relocation
+       against non-preemptible absolute symbol.
+       (_bfd_elf_x86_valid_reloc_p): New function.
+       (_bfd_x86_elf_size_dynamic_sections): No dynamic relocation for
+       GOT_ABS GOT slot.
+       * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Add an SEC
+       argument.  Don't generate dynamic relocation against
+       non-preemptible absolute symbol.
+       (ABS_SYMBOL_P): New.
+       (GENERATE_RELATIVE_RELOC_P): Don't generate relative relocation
+       against non-preemptible absolute symbol.
+       (GOT_ABS): New.
+       (R_X86_64_converted_reloc_bit): New.  Moved from elf64-x86-64.c.
+       (_bfd_elf_x86_valid_reloc_p): New.
+
+2020-04-01  Tamar Christina  <tamar.christina@arm.com>
+
+       PR ld/16017
+       * elf32-arm.c (elf32_arm_populate_plt_entry): Set LSB of the PLT0
+       address in the GOT if in thumb only mode.
+
+2020-04-01  Tamar Christina  <tamar.christina@arm.com>
+
+       * elf32-arm.c (elf32_thumb2_plt_entry): Fix PC-rel offset.
+
+2020-04-01  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * mmo.c (mmo_scan): Create .text section only when needed, not
+       from the start.
+
+2020-03-31  Alan Modra  <amodra@gmail.com>
+
+       * coff-alpha.c (alpha_ecoff_get_elt_at_filepos): Correct bfd_bread
+       return value check.
+
+2020-03-31  Alan Modra  <amodra@gmail.com>
+
+       * vms-alpha.c (image_write): Check bounds for sections without
+       contents too.  Error on non-zero write to section without
+       contents.
+       (_bfd_vms_slurp_etir): Check return of image_write* functions.
+
+2020-03-31  Alan Modra  <amodra@gmail.com>
+
+       * tekhex.c (pass_over): Check is_eof before reading buffer.
+
+2020-03-30  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/pr25662
+       * libcoff-in.h (struct pe_tdata): Rename the insert_timestamp
+       field to timestamp and make it an integer.
+       * libcoff.h: Regenerate.
+       * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Test the timestamp
+       field in the pe_data structure rather than the insert_timestamp
+       field.
+
 2020-03-30  Alan Modra  <amodra@gmail.com>
 
        PR 25745