bfd, include, ld, binutils, libctf: CTF should use the dynstr/sym
[binutils-gdb.git] / bfd / ChangeLog
index c3342ca0966f2c5ffcb291d0aa0ff8f13ed70ca2..b2553a651663c65d6deeccb91cb69bec3fe710e8 100644 (file)
@@ -1,3 +1,729 @@
+2020-11-20  Nick Alcock  <nick.alcock@oracle.com>
+
+       * elflink.c (elf_finalize_dynstr): Call examine_strtab after
+       dynstr finalization.
+       (elf_link_swap_symbols_out): Don't call it here.  Call
+       ctf_new_symbol before swap_symbol_out.
+       (elf_link_output_extsym): Call ctf_new_dynsym before
+       swap_symbol_out.
+       (bfd_elf_final_link): Likewise.
+       * elf.c (swap_out_syms): Pass in bfd_link_info.  Call
+       ctf_new_symbol before swap_symbol_out.
+       (_bfd_elf_compute_section_file_positions): Adjust.
+
+2020-11-19  Nick Clifton  <nickc@redhat.com>
+
+       PR 26918
+       * elf64-s390.c (elf_s390_finish_dynamic_sections): Check for the
+       existance of an sgot output section before setting the
+       sh_entsize.
+
+2020-11-18  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
+       H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf-bfd.h (enum elf_gnu_osabi): Add elf_gnu_osabi_retain.
+       (struct elf_obj_tdata): Increase has_gnu_osabi to 4 bits.
+       * elf.c (_bfd_elf_make_section_from_shdr): Set elf_gnu_osabi_retain
+       for SHF_GNU_RETAIN.
+       (_bfd_elf_final_write_processing): Report if SHF_GNU_RETAIN is
+       not supported by the OSABI.
+       Adjust error messages.
+       * elflink.c (elf_link_input_bfd): Copy enabled has_gnu_osabi bits from
+       input BFD to output BFD.
+       (bfd_elf_gc_sections): gc_mark the section if SHF_GNU_RETAIN is set.
+
+2020-11-16  Przemyslaw Wirkus  <przemyslaw.wirkus@arm.com>
+
+       * cpu-arm.c (processors): Add Cortex-A78C.
+
+2020-11-11  Tom Tromey  <tromey@adacore.com>
+
+       * archive.c (getuid, getgid): Move...
+       * sysdep.h (getuid, getgid): ...here.
+
+2020-11-09  Alan Modra  <amodra@gmail.com>
+
+       * vms-alpha.c (alpha_vms_write_exec): Write 16 bits to eihd.alias.
+
+2020-11-09  Alan Modra  <amodra@gmail.com>
+
+       * archive.c (bfd_ar_hdr_from_filesystem): Use bfd_set_input_error
+       when stat of archive member fails.
+       * coff-rs6000.c (xcoff_write_archive_contents_old),
+       (xcoff_write_archive_contents_big): Likewise, and handle in-memory
+       bfd.
+
+2020-11-03  Alan Modra  <amodra@gmail.com>
+
+       * elf.c (bfd_section_from_shdr): Free sections_being_created.
+       Use bfd_zmalloc.
+
+2020-11-02  Alan Modra  <amodra@gmail.com>
+
+       PR 15146
+       PR 26314
+       PR 26530
+       PR 26806
+       * elflink.c (elf_link_add_object_symbols): Don't set def/ref flags
+       for plugin syms.  Do allow plugin syms to mark as-needed libs.
+
+2020-10-30  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR gas/26703
+       * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Generate
+       GNU_PROPERTY_X86_ISA_1_BASELINE for -z x86-64-baseline.
+
+2020-10-29  Nick Clifton  <nickc@redhat.com>
+
+       PR 26809
+       * elf.c (_bfd_elf_slurp_secondary_reloc_section): Use the correct
+       sized reloc reading function.
+       (_bfd_elf_write_secondary_reloc_section): Use the correct sized
+       reloc writing function.
+
+2020-10-28  Nick Clifton  <nickc@redhat.com>
+
+       PR 26774
+       * srec.c (srec_write_symbols): Do not emit symbols in sections
+       that have been removed from the output.
+
+2020-10-27  Nick Clifton  <nickc@redhat.com>
+
+       * elf64-hppa.c (elf_hppa_final_link_relocate): Check that the
+       symbol's section is being output before adding its offset to the
+       addend when processing R_PARISC_SECREL32.
+
+2020-10-25  Alan Modra  <amodra@gmail.com>
+
+       * vms-misc.c (_bfd_vms_save_counted_string): Count length byte
+       towards maxlen.
+
+2020-10-20  Dr. David Alan Gilbert  <dgilbert@redhat.com>
+
+       * po/es.po: Fix printf format.
+
+2020-10-16  Nelson Chu  <nelson.chu@sifive.com>
+
+       * elfnn-riscv.c (riscv_elf_link_hash_table): Add last_iplt_index.
+       (riscv_elf_size_dynamic_sections): Initialize the last_iplt_index.
+       (riscv_elf_relocate_section): Use riscv_elf_append_rela.
+       (riscv_elf_finish_dynamic_symbol): If the use_elf_append_rela is
+       false, then we should add the dynamic relocs from the last of
+       the .rela.iplt, and don't use the riscv_elf_append_rela to add.
+
+2020-10-16  Nelson Chu  <nelson.chu@sifive.com>
+
+       * elfnn-riscv.c: Include "objalloc.h" since we need objalloc_alloc.
+       (riscv_elf_link_hash_table): Add loc_hash_table and loc_hash_memory
+       for local STT_GNU_IFUNC symbols.
+       (riscv_elf_got_plt_val): Removed.
+       (riscv_elf_local_htab_hash, riscv_elf_local_htab_eq): New functions.
+       Use to compare local hash entries.
+       (riscv_elf_get_local_sym_hash): New function.  Find a hash entry for
+       local symbol, and create a new one if needed.
+       (riscv_elf_link_hash_table_free): New function.  Destroy an riscv
+       elf linker hash table.
+       (riscv_elf_link_hash_table_create): Create hash table for local ifunc.
+       (riscv_elf_check_relocs): Create a fake global symbol to track the
+       local ifunc symbol.  Add support to check and handle the relocations
+       reference to ifunc symbols.
+       (allocate_dynrelocs): Let allocate_ifunc_dynrelocs and
+       allocate_local_ifunc_dynrelocs to handle the ifunc symbols if they
+       are defined and referenced in a non-shared object.
+       (allocate_ifunc_dynrelocs): New function.  Allocate space in .plt,
+       .got and associated reloc sections for ifunc dynamic relocs.
+       (allocate_local_ifunc_dynrelocs): Likewise, but for local ifunc
+       dynamic relocs.
+       (riscv_elf_relocate_section): Add support to handle the relocation
+       referenced to ifunc symbols.
+       (riscv_elf_size_dynamic_sections): Updated.
+       (riscv_elf_adjust_dynamic_symbol): Updated.
+       (riscv_elf_finish_dynamic_symbol): Finish up the ifunc handling,
+       including fill the PLT and GOT entries for ifunc symbols.
+       (riscv_elf_finish_local_dynamic_symbol): New function.  Called by
+       riscv_elf_finish_dynamic_symbol to handle the local ifunc symbols.
+       (_bfd_riscv_relax_section): Don't do the relaxation for ifunc.
+       * elfxx-riscv.c: Add R_RISCV_IRELATIVE.
+       * configure.ac: Link elf-ifunc.lo to use the generic ifunc support.
+       * configure: Regenerated.
+
+2020-10-16  Alan Modra  <amodra@gmail.com>
+
+       * elf32-arc.c (replace_func): Correct return type.
+       (get_replace_function): Use a replace_func function pointer rather
+       than void*.  Update associated ARC_RELOC_HOWTO define.
+
+2020-10-16  Alan Modra  <amodra@gmail.com>
+
+       * elf32-cr16.c: Formatting.
+       (cr16_elf_final_link_relocate): Sign extend rather than clumsy
+       "add or subtract" of offset value.  Simplify range checks.  Move
+       common code out of "if" branches.  Don't refetch insn fields
+       needlessly.
+
+2020-10-16  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (ppc64_elf_relocate_section): Tighten sanity check
+       on R_PPC64_GOT_LO_DS and R_PPC64_GOT_HA instructions.
+
+2020-10-09  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (write_plt_relocs_for_local_syms): Don't do local
+       entry offset optimisation.
+
+2020-10-09  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR gas/26703
+       * elf-linker-x86.h (elf_linker_x86_params): Add isa_level.
+       * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Merge
+       GNU_PROPERTY_X86_ISA_1_V[234].
+       (_bfd_x86_elf_link_setup_gnu_properties): Generate
+       GNU_PROPERTY_X86_ISA_1_V[234] for -z x86-64-v[234].
+
+2020-10-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/26711
+       * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Merge -z ibt
+       and -z shstk only with GNU_PROPERTY_X86_FEATURE_1_AND.
+
+2020-10-06  Brandon Bergren  <bdragon@FreeBSD.org>
+
+       * config.bfd: Add powerpc64le-*-freebsd*.
+       * configure.ac: Add powerpc_elf64_fbsd_le_vec.
+       * elf64-ppc.c (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Define for
+       freebsd.
+       * targets.c (powerpc_elf64_fbsd_le_vec): Declare.
+       (_bfd_target_vector): Add it.
+       * configure: Regenerate.
+
+2020-10-05  Kamil Rytarowski  <n54@gmx.com>
+
+       * config.bfd (aarch64-*-netbsd*, aarch64_be-*-netbsd*): Add target.
+
+2020-10-05  Nick Clifton  <nickc@redhat.com>
+
+       PR 26253
+       * elf.c (_bfd_elf_setup_sections): Do not complain about an
+       sh_link value of zero when the SLF_LINK_ORDER flag is set.
+       (assign_section_numbers): Likewise.
+
+2020-10-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR 26681
+       * elflink.c (bfd_elf_gc_sections): Do not arbitrarily keep note
+       sections which are linked to another section.
+
+2020-09-30  Przemyslaw Wirkus  <przemyslaw.wirkus@arm.com>
+
+       * cpu-arm.c: Add cortex-a78 and cortex-a78ae.
+
+2020-09-28  Przemyslaw Wirkus  <przemyslaw.wirkus@arm.com>
+
+       * cpu-arm.c: (processors) Add Cortex-X1.
+
+2020-09-28  Alan Modra  <amodra@gmail.com>
+
+       PR 26656
+       * elf64-ppc.c (ppc_build_one_stub, ppc_size_one_stub): Check for
+       NULL stub_entry->h before calling is_tls_get_addr.
+
+2020-09-26  Alan Modra  <amodra@gmail.com>
+
+       * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Depend on has_plt_localentry0.
+       (LD_R0_0R11, ADD_R11_R0_R11): Define.
+       (ppc64_elf_tls_setup): Disable params->plt_localentry0 when power10
+       code detected.
+       (ppc64_elf_size_stubs): Update __glink_PLTresolve eh_frame.
+       (ppc64_elf_build_stubs): Move r2 save to start of __glink_PLTresolve,
+       and only emit for has_plt_localentry0.  Don't use r2 in the stub.
+
+2020-09-24  Alan Modra  <amodra@gmail.com>
+
+       PR 26656
+       * elf64-ppc.c (plt_stub_size): Add "odd" param.  Use it with
+       size_power10_offset rather than calculating from start of stub.
+       Add size for notoc tls_get_addr_opt stub.
+       (plt_stub_pad): Add "odd" param, pass to plt_stub_size.
+       (build_tls_get_addr_head, build_tls_get_addr_tail): New functions.
+       (build_tls_get_addr_stub): Delete.
+       (ppc_build_one_stub): Use a temp for htab->params->stub_bfd.
+       Emit notoc tls_get_addr_opt stub.  Move eh_frame code to
+       suit.  Adjust code to use bfd_tls_get_addr_head/tail in place
+       of build_tls_get_addr_stub.
+       (ppc_size_one_stub): Size notoc tls_get_addr_opt stub.
+       Adjust plt_stub_size and plt_stub_pad calls.  Correct "odd"
+       when padding stub.  Size eh_frame for notoc stub too.
+       Correct lr_restore value.
+       (ppc64_elf_relocate_section): Don't skip over first insn of
+       notoc tls_get_addr_opt stub.
+
+2020-09-24  Alan Modra  <amodra@gmail.com>
+
+       PR 26655
+       * elf64-ppc.c (ppc64_elf_func_desc_adjust): Rename to..
+       (ppc64_elf_edit): Call params->edit.
+       (ppc64_elf_tls_setup): Don't call _bfd_elf_tls_setup.  Return a
+       bfd_boolean.
+       * elf64-ppc.h (struct ppc64_elf_params): Add "edit".
+       (ppc64_elf_tls_setup): Update declaration.
+
+2020-09-21  Alan Modra  <amodra@gmail.com>
+
+       PR 26569
+       * elfxx-riscv.c (howto_table): Correct size and bitsize of
+       R_RISCV_RVC_BRANCH, R_RISCV_RVC_JUMP, and R_RISCV_RVC_LUI.
+       Correct size for R_RISCV_TLS_DTPMOD32, R_RISCV_TLS_DTPREL32,
+       R_RISCV_CALL, and R_RISCV_CALL_PLT.  Make R_RISCV_TPREL_ADD and
+       R_RISCV_ALIGN like R_RISCV_NONE.  Correct dst_mask many relocs.
+
+2020-09-17  Mikael Pettersson  <mikpelinux@gmail.com>
+
+       PR ld/18808
+       * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Skip IFUNC
+       relocations in debug sections, change abort to _bfd_error_handler.
+
+2020-09-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/26583
+       * config.bfd (targ64_selvecs, targ_selvecs): Add x86_64_pe_vec
+       to x86_64_pei_vec.
+       * reloc.c: Include "coff/internal.h".
+       (bfd_perform_relocation): Adjust relocation for PE/x86-64 inputs.
+
+2020-09-16  Alan Modra  <amodra@gmail.com>
+
+       * elf-bfd.h (elf_symbol_from): Remove unused ABFD parameter.
+       * elf.c (ignore_section_sym, _bfd_elf_copy_private_symbol_data),
+       (swap_out_syms): Adjust elf_symbol_from invocation.
+
+2020-09-16  Alan Modra  <amodra@gmail.com>
+
+       PR 26623
+       * elf-bfd.h (elf_symbol_from): Exclude synthetic symbols.
+
+2020-09-15  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * coff-x86_64.c (howto_table): Display PE relocation names.
+
+2020-09-15  Hans-Peter Nilsson  <hp@axis.com>
+
+       PR ld/26589
+       * elf32-cris.c (cris_elf_check_relocs): Add missing NULL check
+       on argument before calling UNDEFWEAK_NO_DYNAMIC_RELOC.
+
+2020-09-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/26391
+       * elflink.c (elf_final_link_info): Add local_hash_table.
+       (local_hash_entry): New.
+       (local_hash_newfunc): Likewise.
+       (elf_link_output_symstrtab): Append ".COUNT" to duplicated local
+       symbols.
+       (bfd_elf_final_link): Initialize and free local_hash_table for
+       "-z unique-symbol".
+
+2020-09-10  Siddhesh Poyarekar  <siddesh.poyarekar@arm.com>
+
+       * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Revert
+       changes in 7e05773767820b441b23a16628b55c98cb1aef46.  Set
+       error for undefined symbol in BFD_RELOC_AARCH64_BRANCH19 and
+       BFD_RELOC_AARCH64_TSTBR14 relocations.
+
+2020-09-09  Nick Clifton  <nickc@redhat.com>
+
+       * cofflink.c (coff_link_check_archive_element): Move the check for
+       coff type input to the start of the function.
+
+2020-09-09  Alan Modra  <amodra@gmail.com>
+
+       * libbfd-in.h (_bfd_write_unsigned_leb128): Declare.
+       * libbfd.h: Regenerate.
+
+2020-09-08  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
+           Kuan-Lin Chen  <kuanlinchentw@gmail.com>
+
+       * bfd-in2.h (bfd_reloc_code_real): Add
+       BFD_RELOC_MSP430_{SET,SUB}_ULEB128.
+       * elf32-msp430.c (msp430_elf_ignore_reloc): New.
+       (elf_msp430_howto_table): Add R_MSP430{,X}_GNU_{SET,SUB}_ULEB128.
+       (msp430_reloc_map): Add R_MSP430_GNU_{SET,SUB}_ULEB128.
+       (msp430x_reloc_map): Add R_MSP430X_GNU_{SET,SUB}_ULEB128.
+       (write_uleb128): New.
+       (msp430_final_link_relocate): Handle R_MSP430{,X}_GNU_{SET,SUB}_ULEB128.
+       * libbfd.c (_bfd_write_unsigned_leb128): New.
+       * libbfd.h (_bfd_write_unsigned_leb128): New prototype.
+       Add BFD_RELOC_MSP430_{SET,SUB}_ULEB128.
+       * reloc.c: Document BFD_RELOC_MSP430_{SET,SUB}_ULEB128.
+
+2020-09-08  Alex Coplan  <alex.coplan@arm.com>
+
+       * archures.c (bfd_mach_aarch64_8R): New.
+       * bfd-in2.h: Regenerate.
+       * cpu-aarch64.c (bfd_aarch64_arch_v8_r): New.
+       (bfd_aarch64_arch_ilp32): Update tail pointer.
+
+2020-09-08  Alan Modra  <amodra@gmail.com>
+
+       PR 13250
+       PR 26580
+       * elflink.c (_bfd_elf_merge_symbol): Make "override" a bfd**.
+       Return oldbfd in override when old common should override new
+       common.
+       (_bfd_elf_add_default_symbol): Adjust to suit.
+       (elf_link_add_object_symbols): Likewise.  Pass "override" to
+       _bfd_generic_link_add_one_symbol.  Save and restore common u.c.p
+       field for --as-needed shared libraries.  Revert pr13250 changes.
+
+2020-09-08  Nick Clifton  <nickc@redhat.com>
+
+       * plugin.c (bfd_plugin_canonicalize_symtab): Handle the case of an
+       unrecognized symbol type in a weak definition.
+
+2020-09-04  Alan Modra  <amodra@gmail.com>
+
+       PR 26574
+       * elfcode.h (elf_object_p): Sanity check section header offset.
+       * elf.c (_bfd_elf_slurp_secondary_reloc_section): Sanity check
+       sh_entsize.
+
+2020-09-04  Alan Modra  <amodra@gmail.com>
+
+       PR 15146
+       PR 26314
+       PR 26530
+       * elflink.c (elf_link_add_object_symbols): Do set def_regular
+       and ref_regular for IR symbols.  Don't clear dynsym, allowing
+       IR symbols to load --as-needed shared libraries, but prevent
+       IR symbols from becoming dynamic.
+
+2020-09-03  Nick Clifton  <nickc@redhat.com>
+
+       PR 26521
+       * elf.c (_bfd_elf_write_secondary_reloc_section): Check for
+       secondary reloc sections with a zero sh_entsize field.
+
+2020-09-03  Nelson Chu  <nelson.chu@sifive.com>
+
+       * elfnn-riscv.c (riscv_i_or_e_p): Minor cleanup for warnings/errors.
+       (riscv_merge_std_ext): Likewise.
+       (riscv_merge_arch_attr_info): Likewise.
+       (riscv_merge_attributes): Likewise and fix comment typos.
+
+2020-09-03  Nelson Chu  <nelson.chu@sifive.com>
+
+       * elfnn-riscv.c (riscv_version_mismatch): Change the return type
+       from void to bfd_boolean.  Report warnings rather than errors
+       when the ISA versions are mis-matched.  Afterwards, remember to
+       update the output ISA versions to the newest ones.
+       (riscv_merge_std_ext): Allow to link objects with different
+       standard ISA versions.  Try to add output ISA versions to
+       merged_subsets first.
+       (riscv_merge_multi_letter_ext): Likewise.  But for standard additional
+       ISA and non-standard ISA versions.
+
+2020-09-03  Kito Cheng  <kito.cheng@sifive.com>
+
+       * elfnn-riscv.c (riscv_merge_std_ext): Fix to report the correct
+       error message when the versions of extension are mis-matched.
+       * elfxx-riscv.c (riscv_parse_subset): Don't issue the error when
+       the string is empty.
+
+2020-09-03  Alan Modra  <amodra@gmail.com>
+
+       * xcofflink.c (xcoff_get_archive_info): Allocate xcoff_archive_info
+       on the output bfd objalloc memory.
+
+2020-09-02  Alan Modra  <amodra@gmail.com>
+
+       * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Correct type
+       of constant shifted left.
+
+2020-09-02  Alan Modra  <amodra@gmail.com>
+
+       * elf32-pru.c (pru_elf32_do_ldi32_relocate): Use an unsigned
+       type for "relocation".
+
+2020-09-01  Alan Modra  <amodra@gmail.com>
+
+       * reloc.c (N_ONES): Handle N=0.
+       * elf32-arm.c (elf32_arm_howto_table_1): Set complain_overflow_dont
+       for R_ARM_TLS_DESCSEQ and R_ARM_THM_TLS_DESCSEQ.
+
+2020-09-01  Alan Modra  <amodra@gmail.com>
+
+       PR 26429
+       * elf32-arm.c (elf32_arm_allocate_local_sym_info): Allocate arrays
+       in descending order of alignment.
+
+2020-09-01  Alan Modra  <amodra@gmail.com>
+
+       PR 26423
+       * elf32-arm.c (calculate_group_reloc_mask): Use 3u in shift.
+
+2020-08-31  Alan Modra  <amodra@gmail.com>
+
+       PR 26493
+       * elfnn-riscv.c (riscv_make_plt_header): Cast PLT_HEADER_SIZE to
+       unsigned when using with RISCV_ITYPE.
+       (_bfd_riscv_relax_call): Use an unsigned foff.
+
+2020-08-31  Alan Modra  <amodra@gmail.com>
+
+       PR 26476
+       PR 26477
+       * elfxx-mips.c (CRINFO_CTYPE, CRINFO_RTYPE, CRINFO_DIST2TO),
+       (CRINFO_RELVADDR): Make unsigned.
+       (mips_elf_nullify_got_load): Use unsigned constant when shifting
+       into sign bit.
+
+2020-08-31  Alan Modra  <amodra@gmail.com>
+
+       PR 26466
+       * mep-relocs.pl (emit_apply): Handle HI16S adjustment.  Use "u"
+       variable and rewrite signed overflow check.
+       * elf32-mep.c: Regenerate.
+       (mep_final_link_relocate): Delete "s".
+
+2020-08-31  Alan Modra  <amodra@gmail.com>
+
+       PR 26461
+       * elfxx-ia64.c (ia64_elf_install_value): Make expressions unsigned
+       that might shift values into sign bit.
+
+2020-08-31  Alan Modra  <amodra@gmail.com>
+
+       PR 26445
+       * elf32-csky.c (csky_relocate_contents): Make relocation a bfd_vma,
+       and similarly for variables dealing with overflow.
+
+2020-08-31  Alan Modra  <amodra@gmail.com>
+
+       PR 26442
+       * elf32-crx.c (crx_elf_final_link_relocate): Calculate reloc_bits
+       without undefined behaviour.  Tidy excess casts.
+
+2020-08-31  Alan Modra  <amodra@gmail.com>
+
+       * elf-m10300.c (mn10300_elf_relax_delete_bytes): Calculate
+       alignment from reloc addend after reloc type R_MN10300_ALIGN is
+       found.
+
+2020-08-30  Alan Modra  <amodra@gmail.com>
+
+       PR 26435
+       PR 26436
+       * elf32-cr16.c (cr16_elf_final_link_relocate): Calculate reloc_bits
+       without undefined behaviour.
+
+2020-08-29  Nick Clifton  <nickc@redhat.com>
+
+       PR 26520
+       * dwarf2.c (scan_unit_for_symbols): Add member entries to the
+       variable table.
+
+2020-08-29  Alan Modra  <amodra@gmail.com>
+
+       PR 26459
+       * elfnn-ia64.c (get_dyn_sym_info): Don't bsearch or look at last
+       element when count is zero.  bfd_realloc when shrinking.
+
+2020-08-28  Alan Modra  <amodra@gmail.com>
+
+       PR 26418
+       * ecofflink.c (bfd_ecoff_write_accumulated_debug): Don't write
+       zero size buffers.
+
+2020-08-28  Alan Modra  <amodra@gmail.com>
+
+       PR 26418
+       * ecofflink.c (WRITE): Really don't write zero size chunks.
+
+2020-08-28  Tuckker  <tuckkern+sourceware@gmail.com>
+
+       PR 26543
+       * linker.c (bfd_generic_define_common_symbol): Force the alignment
+       to 1 if the section has now alignment requirement.
+
+2020-08-28  Cooper Qu  <cooper.qu@linux.alibaba.com>
+
+       * elf32-csky.c (csky_archs): Fix arch names.
+       (csky_find_arch_with_name): New.
+       (elf32_csky_merge_attributes): New.
+       (csky_elf_merge_private_bfd_data): Add process of merge
+       attribute section.
+       (elf32_csky_obj_attrs_arg_type): New.
+       (elf32_csky_obj_attrs_handle_unknown): New.
+       (elf_backend_obj_attrs_vendor): Define.
+       (elf_backend_obj_attrs_section): Define.
+       (elf_backend_obj_attrs_arg_type): Define.
+       (elf_backend_obj_attrs_section_type): Define.
+
+2020-08-28  Nick Clifton  <nickc@redhat.com>
+
+       PR19011
+       * cofflink.c (_bfd_coff_generic_relocate_section): Provide a value
+       for undefined symbols which will not generate extra warning
+       messages about truncated relocs.
+
+2020-08-28  Nelson Chu  <nelson.chu@sifive.com>
+
+       * elfnn-riscv.c (riscv_elf_check_relocs): Treat R_RISCV_CALL
+       and R_RISCV_CALL_PLT as the same in the riscv_elf_check_relocs.
+       (riscv_elf_relocate_section): Remove the R_RISCV_CALL for the
+       unresolved reloc checks.
+
+2020-08-27  John David Anglin  <danglin@gcc.gnu.org>
+
+       PR 26356
+       * som.c (som_bfd_copy_private_section_data): Issue error when a
+       subspace is specified without its containing space.
+
+2020-08-27  Alan Modra  <amodra@gmail.com>
+
+       PR 26469
+       * elflink.c: Include limits.h.
+       (CHAR_BIT): Provide fallback define.
+       (set_symbol_value): Correct complex reloc comment.
+       (undefined_reference): Set bfd_error.
+       (BINARY_OP_HEAD, BINARY_OP_TAIL): Split out from..
+       (BINARY_OP): ..this.
+       (eval_symbol): Limit shifts.  Force unsigned for left shift.
+       Catch divide by zero.
+       * configure.ac (AC_CHECK_HEADERS): Combine, sort and add limits.h.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+
+2020-08-27  Alan Modra  <amodra@gmail.com>
+
+       PR 26462
+       * reloc.c (bfd_check_overflow): Return early if zero bitsize.
+
+2020-08-27  Alan Modra  <amodra@gmail.com>
+
+       * elf32-arm.c (elf32_arm_final_link_relocate): Don't segfault
+       on sym_sec not being output.
+
+2020-08-27  Alan Modra  <amodra@gmail.com>
+
+       PR 26416
+       * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Correct "dynamic".
+
+2020-08-26  Nick Clifton  <nickc@redhat.com>
+
+       PR 26433
+       * elf32-avr.c (avr_final_link_relocate):  Fix undefined shift
+       behaviour.
+       (avr_elf32_load_records_from_section): Use bfd_get_16 and
+       bfd_get_32 to load values from potentially unaligned pointers.
+
+       PR 26416
+       * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Test for and
+       ignore local symbols.
+       (elf64_alpha_relax_got_load): Do not check for local dynamic
+       symbols.
+       (OP_LDA, OP_LDAH, OP_LDQ, OP_BR, OP_BSR): Use unsigned constant
+       values.
+       (INSN_A) Cast the A parameter to unsigned.
+       (INSN_AB): Define in terms of INSN_A.
+       (INSN_ABC): Likewise.
+       (INSN_ABO): Likewise.
+       (INSN_AD): Likewise.
+
+       PR 26411
+       * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Use an
+       unsigned long constant when creating a mask to test for alignment
+       issues.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       PR 26507
+       * elf32-xtensa.c (find_removed_literal): Don't bsearch empty map.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       PR 26506
+       * elf32-xtensa.c (elf_xtensa_combine_prop_entries): Return early
+       when section is empty.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       PR 26498
+       * elf32-spu.c (find_function_stack_adjust): Use unsigned vars to
+       avoid UB left shift.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       PR 26484
+       PR 26485
+       PR 26486
+       PR 26487
+       PR 26488
+       PR 26490
+       * elf64-ppc.c (is_tls_get_addr): Avoid UB &h->elf when h is NULL.
+       (ppc64_elf_tls_setup): Likewise.
+       (branch_reloc_hash_match): Likewise.
+       (build_plt_stub): Likewise.
+       (ppc64_elf_relocate_section): Likewise.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       PR 26478
+       * mmo.c (mmo_write_symbols_and_terminator): Don't memcpy empty table.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       PR 26475
+       * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Check
+       sstubs->contents != NULL.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       PR 26453
+       * som.c (som_prep_for_fixups): Return early when no symbols.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       PR 26418
+       * ecofflink.c (WRITE): Don't write size 0 chunks.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       * bfdio.c (bfd_get_file_size): Don't segv on NULL adata.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       PR 26415
+       * vms-misc.c (vms_time_t_to_vms_time): Don't use unsigned short vars.
+
+2020-08-26  David Faust  <david.faust@oracle.com>
+
+       * archures.c (bfd_mach_xbpf): Define.
+       * bfd-in2.h: Regenerate.
+       * cpu-bpf.c (bfd_xbpf_arch) New.
+       (bfd_bpf_arch) Update next in list field to point to xbpf arch.
+
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+       * archures.c (bfd_mach_ck860): Define.
+
+2020-08-25  Mark Wielaard  <mark@klomp.org>
+
+       *  dwarf2.c (struct dwarf2_debug_file): Add dwarf_rnglists_buffer
+       and dwarf_rnglists_size fields.
+       (dwarf_debug_sections): Add debug_rnglists.
+       (dwarf_debug_section_enum): Likewise.
+       (read_debug_rnglists): New function.
+       (read_rangelist): New function to call either read_ranges or
+       read_rnglists. Rename original function to...
+       (read_ranges): ...this.
+       (read_rnglists): New function.
+
+2020-08-25  Alan Modra  <amodra@gmail.com>
+
+       PR 26505
+       * elf32-xstormy16.c (xstormy16_elf_relax_section): Check
+       is_elf_hash_table before accessing elf fields.
+
 2020-08-25  Alan Modra  <amodra@gmail.com>
 
        PR 26482