+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
+ * elf64-ppc.c (ppc64_elf_build_stubs): Use asprintf to form
+ statistics message.
+
+2020-03-26 Nick Clifton <nickc@redhat.com>
+
+ * cofflink.c (bfd_coff_get_internal_extra_pe_aouthdr): Delete.
+ * libbfd-in.h (bfd_coff_get_internal_extra_pe_aouthdr): Remove
+ prototype.
+ * libbfd.h: Regenerate.
+
+2020-03-26 Alan Modra <amodra@gmail.com>
+
+ * i386msdos.c (msdos_object_p): Catch -1 return from bfd_bread.
+
+2020-03-26 Alan Modra <amodra@gmail.com>
+
+ * vms-alpha.c (dst_define_location): Limit size of dst_ptr_offsets
+ array.
+ (_bfd_vms_slurp_object_records): Rename "err" to "ok".
+
+2020-03-25 Nick Clifton <nickc@redhat.com>
+
+ * cofflink.c (bfd_coff_get_internal_extra_pe_aouthdr): New
+ function.
+ * libbfd-in.h (bfd_coff_get_internal_extra_pe_aouthdr): Prototype.
+ * libbfd.h: Regenerate.
+
+2020-03-25 Shahab Vahedi <shahab@synopsys.com>
+
+ * elf32-arc.c (PRINT_DEBUG_RELOC_INFO_BEFORE): Use the
+ correct field name in the output string.
+
+2020-03-25 Alan Modra <amodra@gmail.com>
+
+ PR 25662
+ * elf.c (assign_file_positions_for_load_sections): Adjust offset
+ for SHT_NOBITS section if first in segment.
+
+2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/25708
+ * elf-bfd.h (_bfd_elf_get_symbol_version_name): Renamed to ...
+ (_bfd_elf_get_symbol_version_string): This.
+ * elf.c (_bfd_elf_get_symbol_version_name): Renamed to ...
+ (_bfd_elf_get_symbol_version_string): This.
+ (bfd_elf_print_symbol): Pass TRUE to
+ _bfd_elf_get_symbol_version_string.
+ * libbfd-in.h (_bfd_nosymbols_get_symbol_version_string): Add a
+ bfd_boolean argument.
+ * syms.c (_bfd_nosymbols_get_symbol_version_string): Likewise.
+ * targets.c (_bfd_get_symbol_version_string): Likewise.
+ (bfd_get_symbol_version_string): Likewise.
+ * bfd-in2.h: Regenerated.
+
+2020-03-24 Nick Clifton <nickc@redhat.com>
+ Jaydeep Chauhan <jaydeepchauhan1494@gmail.com>
+
+ PR 25713
+ * bfdio.c (_bfd_real_fopen): Add code to handle long filenames on
+ Win32 systems.
+
+2020-03-24 Nick Clifton <nickc@redhat.com>
+
+ PR 25681
+ * elf.c (_bfd_elf_map_sections_to_segments): When looking for a
+ segment to use for PT_GNU_RELRO, ignore empty sections in a
+ segment's current list.
+
+2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/25717
+ * elf-bfd.h (elf_obj_tdata): Change num_group to unsigned int.
+
+2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/25708
+ * elf-bfd.h (_bfd_elf_get_symbol_version_name): New.
+ * elf.c (_bfd_elf_get_symbol_version_name): New function. Based
+ on the previous _bfd_elf_get_symbol_version_string.
+ (_bfd_elf_get_symbol_version_string): Use it.
+
+2020-03-24 Alan Modra <amodra@gmail.com>
+
+ * archive.c (_bfd_generic_read_ar_hdr_mag): Sanity check extended
+ name size. Use bfd_malloc rather than bfd_zmalloc, clearing just
+ struct areltdata.
+
+2020-03-23 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+ * elflink.c (_bfd_elf_tls_setup): Mention .tdata in comment.
+
+2020-03-23 Alan Modra <amodra@gmail.com>
+
+ * ecoff.c (_bfd_ecoff_slurp_armap): Sanity check parsed_size and
+ symbol count. Allocate an extra byte to ensure name strings
+ are terminated. Sanity check name offsets. Release memory on
+ error return.
+
+2020-03-23 Alan Modra <amodra@gmail.com>
+
+ * i386msdos.c (msdos_object_p): Don't access e_lfanew when that
+ field hasn't been read. Remove unnecessary casts.
+
+2020-03-22 Alan Modra <amodra@gmail.com>
+
+ * coff64-rs6000.c (xcoff64_slurp_armap): Ensure size is large
+ enough to read number of symbols.
+
+2020-03-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * configure.ac (HAVE_EXECUTABLE_SUFFIX): Removed.
+ (EXECUTABLE_SUFFIX): Likewise.
+ * config.in: Regenerated.
+ * configure: Likewise.
+ * plugin.c (bfd_plugin_close_and_cleanup): Defined as
+ _bfd_generic_close_and_cleanup.
+ (plugin_list_entry): Remove resolution_file, resolution_option,
+ real_bfd, real_nsyms, real_syms, lto_nsyms, lto_syms, gcc,
+ lto_wrapper, gcc_env and initialized,
+ (need_lto_wrapper_p): Removed.
+ (get_lto_wrapper): Likewise.
+ (setup_lto_wrapper_env): Likewise.
+ (register_all_symbols_read): Likewise.
+ (egister_cleanup): Likewise.
+ (get_symbols): Likewise.
+ (add_input_file): Likewise.
+ (bfd_plugin_set_program_name): Remove need_lto_wrapper.
+ (add_symbols): Updated.
+ (try_claim): Likewise.
+ (try_load_plugin): Likewise.
+ (bfd_plugin_canonicalize_symtab): Likewise.
+ * plugin.h (bfd_plugin_set_program_name): Remove int argument.
+ (plugin_data_struct): Remove real_bfd, real_nsyms and real_syms.
+
+2020-03-19 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/25640
+ * plugin.c (plugin_list_entry): Add has_symbol_type.
+ (add_symbols_v2): New function.
+ (bfd_plugin_open_input): Don't invoke LTO wrapper if LTO plugin
+ provides symbol type.
+ (try_load_plugin): Add LDPT_ADD_SYMBOLS_V2.
+ (bfd_plugin_canonicalize_symtab): Use LTO plugin symbol type if
+ available.
+
+2020-03-20 Alan Modra <amodra@gmail.com>
+
+ * coff-rs6000.c (_bfd_xcoff_slurp_armap): Ensure size is large
+ enough to read number of symbols.
+
+2020-03-20 Alan Modra <amodra@gmail.com>
+
+ * elf.c (_bfd_elf_setup_sections): Don't test known non-NULL
+ backend functions for NULL before calling.
+ (copy_special_section_fields, _bfd_elf_copy_private_bfd_data),
+ (bfd_section_from_shdr, assign_section_numbers): Likewise.
+ * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): Likewise.
+ * elfnn-ia64.c (ignore_errors): New function.
+ (elf_backend_link_order_error_handler): Redefine as ignore_errors.
+
+2020-03-19 Nick Clifton <nickc@redhat.com>
+
+ PR 25676
+ * dwarf2.c (struct varinfo): Add unit_offset field to record the
+ location of the varinfo in the unit's debug info data. Change the
+ type of the stack field to a boolean.
+ (lookup_var_by_offset): New function. Returns the varinfo
+ structure for the variable described at the given offset in the
+ unit's debug info.
+ (scan_unit_for_symbols): Add support for variables which have the
+ DW_AT_specification attribute.
+
+2020-03-19 Nick Clifton <nickc@redhat.com>
+
+ PR 25699
+ * elf.c (bfd_elf_set_group_contents): Replace assertion with an
+ error return.
+
+2020-03-19 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+ * elfxx-riscv.c (riscv_parse_subset): Don't use C99.
+
+2020-03-18 Nick Clifton <nickc@redhat.com>
+
+ PR 25673
+ * elf.c (_bfd_elf_write_secondary_reloc_section): Fix illegal
+ memory access when processing a corrupt secondary reloc section.
+
+2020-03-18 Christophe Lyon <christophe.lyon@linaro.org>
+
+ * elf32-arm.c (arm_build_one_stub): Emit a fatal error message
+ instead of calling abort.
+ * elf32-csky.c (csky_build_one_stub): Likewise.
+ * elf32-hppa.c (hppa_build_one_stub): Likewise.
+ * elf32-m68hc11.c (m68hc11_elf_build_one_stub): Likewise.
+ * elf32-m68hc12.c (m68hc12_elf_build_one_stub): Likewise.
+ * elf32-metag.c (metag_build_one_stub): Likewise.
+ * elf32-nios2.c (nios2_build_one_stub): Likewise.
+ * elf64-ppc.c (ppc_build_one_stub): Likewise.
+ (ppc_size_one_stub): Likewise.
+ * elfnn-aarch64.c (aarch64_build_one_stub): Likewise.
+
+2020-03-17 Nick Clifton <nickc@redhat.com>
+
+ PR 25688
+ * elf.c (_bfd_elf_copy_special_section_fields): Replace assertions
+ with error messages.
+
+2020-03-17 Nick Clifton <nickc@redhat.com>
+
+ PR 25687
+ * elf.c (_bfd_elf_slurp_secondary_reloc_section): Remove redundant
+ free. Add free on another failure path.
+
+2020-03-16 Alan Modra <amodra@gmail.com>
+
+ PR 25675
+ * elf.c (elf_sort_segments): Don't call bfd_octets_per_byte unless
+ we have a non-zero section count. Do lma comparison in octets.
+
+2020-03-16 Alan Modra <amodra@gmail.com>
+
+ * vms-alpha.c (dst_restore_location): Validate index into
+ dst_ptr_offsets array before accessing. Return status.
+ (dst_retrieve_location): Similarly, making "loc" parameter a
+ pointer to return value.
+ (_bfd_vms_slurp_etir): Update calls to above functions.
+
+2020-03-14 Kamil Rytarowski <n54@gmx.com>
+
+ * configure.ac: Include netbsd-core.lo for all NetBSD arm and mips
+ targets.
+ * configure: Regenerated.
+
+2020-03-14 Alan Modra <amodra@gmail.com>
+
+ * section.c (BFD_FAKE_SECTIONS): Formatting.
+ * bfd-in2.h: Regenerate.
+
+2020-03-13 Kamil Rytarowski <n54@gmx.com>
+
+ * elf.c (elfcore_grok_netbsd_note): Add support for
+ NT_NETBSDCORE_LWPSTATUS notes.
+
+2020-03-13 Christophe Lyon <christophe.lyon@linaro.org>
+
+ * bfd-in2.h: Regenerate.
+ * section.c (asection): Add already_assigned field.
+ (BFD_FAKE_SECTION): Add default initializer for it.
+ * ecoff.c (bfd_debug_section): Initialize already_assigned field.
+ * elf32-arm.c (arm_build_one_stub): Add support for
+ non_contiguous_regions.
+ * elf32-csky.c (csky_build_one_stub): Likewise.
+ * elf32-hppa.c (hppa_build_one_stub): Likewise.
+ * elf32-m68hc11.c (m68hc11_elf_build_one_stub): Likewise.
+ * elf32-m68hc12.c (m68hc12_elf_build_one_stub): Likewise.
+ * elf32-metag.c (metag_build_one_stub): Likewise.
+ * elf32-nios2.c (nios2_build_one_stub): Likewise.
+ * elf64-ppc.c (ppc_build_one_stub): Likewise.
+ (ppc_size_one_stub): Likewise.
+ * elfnn-aarch64.c (aarch64_build_one_stub): Likewise.
+ * elflink.c (elf_link_input_bfd): Likewise.
+
2020-03-13 H.J. Lu <hongjiu.lu@intel.com>
PR ld/24920