+2020-06-03 Stephen Casner <casner@acm.org>
+
+ Copy several years of fixes from bfd/aoutx.h to bfd/pdp11.c.
+
+ * pdp11.c (some_aout_object_p): 4c1534c7a2a - Don't set EXEC_P for
+ files with relocs.
+ (aout_get_external_symbols): 6b8f0fd579d - Return if count is zero.
+ 0301ce1486b PR 22306 - Handle stringsize of zero, and error for any
+ other size that doesn't qcover the header word.
+ bf82069dce1 PR 23056 - Allocate an extra byte at the end of the
+ string table, and zero it.
+ (translate_symbol_table): 0d329c0a83a PR 22887 - Print an error
+ message and set bfd_error on finding an invalid name string offset.
+ (add_to_stringtab): INLINE -> inline
+ (pdp11_aout_swap_reloc_in): 116acb2c268 PR 22887 - Correct r_index
+ bound check.
+ (squirt_out_relocs): e2996cc315d PR 20921 - Check for and report
+ any relocs that could not be recognised.
+ 92744f05809 PR 20929 - Check for relocs without an associated symbol.
+ (find_nearest_line): 808346fcfcf PR 23055 - Check that the symbol
+ name exists and is long enough, before attempting to see if it is
+ for a .o file.
+ c3864421222 - Correct case for N_SO being the last symbol.
+ 50455f1ab29 PR 20891 - Handle the case where the main file name
+ and the directory name are both empty.
+ e82ab856bb4 PR 20892 - Handle the case where function name is empty.
+ (aout_link_add_symbols): e517df3dbf7 PR 19629 - Check for out of
+ range string table offsets.
+ 531336e3a0b PR 20909 - Fix off-by-one error in check for an
+ illegal string offset.
+ (aout_link_includes_newfunc): Add comment.
+ (pdp11_aout_link_input_section): ad756e3f9e6 - Return with an error
+ on unexpected relocation type rather than ASSERT.
+
+2020-06-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/26066
+ * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Call
+ _bfd_elf_maybe_set_textrel to set DF_TEXTREL.
+
+2020-06-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/26066
+ * elf32-nios2.c (nios2_elf32_check_relocs): Skip non-loaded,
+ non-alloced sections.
+
+2020-06-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-frv.c (elf32_frv_relocate_section): Don't generate
+ dynamic relocations for non SEC_ALLOC sections.
+
+2020-06-03 Gunther Nikl <gnikl@justmail.de>
+
+ * aout64.c (BMAGIC, QMAGIC): Do not define.
+ * aoutx.h (N_IS_BMAGIC, N_SET_QMAGIC): New defines.
+ (NAME (aout, some_aout_object_p)): Use N_IS_QMAGIC and N_IS_BMAGIC
+ to check the file format.
+ (adjust_z_magic): Use N_SET_QMAGIC to set file format.
+ * i386aout.c (NO_WRITE_HEADER_KLUDGE): Delete define.
+ * libaout.h (NO_WRITE_HEADER_KLUDGE): Do not define.
+
+2020-06-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-arc.c (elf_arc_relocate_section): Don't generate dynamic
+ relocations for non SEC_ALLOC sections.
+
+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 26069
+ * 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
2020-05-19 Gunther Nikl <gnikl@justmail.de>
PR 26005
- * elf.c (bfd_section_from_shdr): Replace bfd_malloc + memset with
- bfd_zmalloc to allocate memory for the sections_being_created array.
+ * 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>