+2019-10-07 Alan Modra <amodra@gmail.com>
+
+ * elf32-ppc.c (nomark_tls_get_addr): Rename from has_tls_get_addr_call
+ throughout.
+ * elf64-ppc.c (nomark_tls_get_addr): Likewise.
+
+2019-10-04 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_check_relocs): Move initialisation of vars.
+ (ppc64_elf_tls_optimize): Correct is_local condition.
+ (allocate_got): Don't reserve dynamic relocations for any of the
+ tls got relocs in PIEs when the symbol is local.
+ (allocate_dynrelocs): Correct validity test for local sym using
+ tlsld_got slot.
+ (ppc64_elf_size_dynamic_sections): Don't reserve dynamic relocations
+ for any of the tls got relocs in PIEs.
+ (ppc64_elf_layout_multitoc): Likewise.
+ (ppc64_elf_relocate_section): Correct validity test for local sym
+ using tlsld_got slot. Don't emit dynamic relocations for any of
+ the tls got relocs in PIEs when the symbol is local.
+ * elf32-ppc.c (ppc_elf_tls_optimize): Correct is_local condition.
+ (got_relocs_needed): Delete.
+ (allocate_dynrelocs): Correct validity test for local sym using
+ tlsld_got slot. Don't reserve dynamic relocations for any of the
+ tls got relocs in PIEs when the symbol is local.
+ (ppc_elf_size_dynamic_sections): Don't reserve dynamic relocations
+ for any of the tls got relocs in PIEs.
+ (ppc_elf_relocate_section): Correct validity test for local sym
+ using tlsld_got slot. Don't emit dynamic relocations for any of
+ the tls got relocs in PIEs when the symbol is local.
+
+2019-10-04 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ PR ld/22263
+ PR ld/25056
+ * elf32-arm.c (elf32_arm_tls_transition): Use bfd_link_dll instead of
+ bfd_link_pic for TLS checks.
+ (elf32_arm_final_link_relocate): Likewise.
+ (allocate_dynrelocs_for_symbol): Likewise.
+
+2019-10-04 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ PR ld/25062
+ * elf32-arm.c (elf32_arm_final_link_relocate): Sign extend data.
+
+2019-09-30 Nick Alcock <nick.alcock@oracle.com>
+
+ * elf-bfd.h (bfd_section_is_ctf): New inline function.
+ * elf.c (special_sections_c): Add ".ctf".
+ (assign_file_positions_for_non_load_sections): Note that
+ compressed debugging sections etc are not assigned here. Treat
+ CTF sections like SEC_ELF_COMPRESS sections when is_linker_output:
+ sh_offset -1.
+ (assign_file_positions_except_relocs): Likewise.
+ (find_section_in_list): Note that debugging and CTF sections, as
+ well as reloc sections, are assigned later.
+ (_bfd_elf_assign_file_positions_for_non_load): CTF sections get
+ their size and contents updated.
+ (_bfd_elf_set_section_contents): Skip CTF sections: unlike
+ compressed sections, they have no uncompressed content to copy at
+ this stage.
+ * elflink.c (elf_link_swap_symbols_out): Call the examine_strtab
+ callback right before the strtab is written out.
+ (bfd_elf_final_link): Don't cache the section contents of CTF
+ sections: they are not populated yet. Call the emit_ctf callback
+ right at the end, after all the symbols and strings are flushed
+ out.
+
+2019-07-13 Nick Alcock <nick.alcock@oracle.com>
+
+ * elf-strtab.c (_bfd_elf_strtab_len): New.
+ (_bfd_elf_strtab_str): Likewise.
+ * bfd-elf.h: Declare them.
+
+2019-07-13 Nick Alcock <nick.alcock@oracle.com>
+
+ * elf-bfd.h (bfd_elf_get_str_section): Add.
+ * elf.c (bfd_elf_get_str_section): No longer static.
+
+2019-09-26 Alan Modra <amodra@gmail.com>
+
+ PR 24262
+ * Makefile.am (AM_CPPFLAGS): Add -DLIBDIR.
+ * plugin.c (load_plugin): Search both ${libdir}/bfd-plugins and
+ ${bindir}/../lib/bfd-plugins if different.
+ * Makefile.in: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_check_relocs): Use bfd_link_executable
+ in choosing between different actions for shared library and
+ non-shared library cases. Delete ELIMINATE_COPY_RELOCS test.
+ (dec_dynrel_count): Likewise. Account for ifunc special case.
+ (ppc64_elf_adjust_dynamic_symbol): Copy relocs are for executables,
+ not non-pic.
+ (allocate_dynrelocs): Comment fixes. Delete ELIMINATE_COPY_RELOCS
+ test.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * Makefile.am (SOURCE_HFILES): Add many missing .h files.
+ * Makefile.in: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h (bfd_symbol, bfd_section_already_linked),
+ (bfd_elf_version_tree): Delete forward declarations.
+ Move other forward decls and remaining elf function decl later.
+ (bfd_section_already_linked_table_init),
+ (bfd_section_already_linked_table_free),
+ (_bfd_handle_already_linked, _bfd_nearby_section),
+ (_bfd_fix_excluded_sec_syms): Move to bfdlink.h.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move ecoff function declarations..
+ * ecoff-bfd.h: ..to here, new file.
+ * ecoff.c: Include ecoff-bfd.h.
+ * ecofflink.c: Likewise.
+ * elf64-alpha.c: Likewise.
+ * elfxx-mips.c: Likewise.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h (enum notice_asneeded_action): Move to bfdlink.h.
+ Move most other elf declarations..
+ * elf-bfd.h: ..to here.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move m68k function declaration..
+ * cpu-m68k.h: ..to here, new file..
+ * elf32-m68k.h: ..and here, new file.
+ * elf32-m68k.c: Include cpu-m68k.h and elf32-m68k.h.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move bfin function declaration..
+ * elf32-bfin.h: ..to here, new file.
+ * elf32-bfin.c: Include elf32-bfin.h.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move cr16 function declaration..
+ * elf32-cr16.h: ..to here, new file.
+ * elf32-cr16.c: Include elf32-cr16.h.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h (bfd_sunos_get_needed_list),
+ (bfd_sunos_record_link_assignment),
+ (bfd_sunos_size_dynamic_sections),
+ (bfd_i386linux_size_dynamic_sections),
+ (bfd_sparclinux_size_dynamic_sections): Delete obsolete decls.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move xcoff function declarations..
+ * xcofflink.h: ..to here, new file.
+ * xcofflink.c: Include xcofflink.h.
+ * coff-rs6000.c (bfd_xcoff_ar_archive_set_magic): Delete unused func.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Delete coff forward refs and move coff declaration..
+ * coff-bfd.h: ..to here.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move arm declaraions..
+ * cpu-arm.h: ..to here, new file..
+ * coff-arm.h: ..and here, new file..
+ * elf32-arm.h: ..and here, new file.
+ * cpu-arm.c: Include cpu-arm.h.
+ * coff-arm.c: Include cpu-arm.h and coff-arm.h.
+ * elf32-arm.c: Include cpu-arm.h and elf32-arm.h.
+ * pe-arm.c: Move function rename defines later.
+ * pe-arm-wince.c: Likewise and include sysdep.h and bfd.h early.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move tic6x function declaration..
+ * elf32-tic6x.h: ..to here.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move aarch64 declarations and defines..
+ * cpu-aarch64.h: ..to here, new file..
+ * elfxx-aarch64.h: ..and here.
+ * cpu-aarch64.c: Include cpu-aarch64.h.
+ * elfnn-aarch64.c: Likewise.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Delete ticoff function declarations.
+ * coff-tic54x.c (bfd_ticoff_set_section_load_page),
+ (bfd_ticoff_get_section_load_page): Make static.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move h8300 function declaration to..
+ * cpu-h8300.h: ..here, new file.
+ * cpu-h8300.c: Include cpu-h8300.h.
+ * elf32-h8300.c: Likewise.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move ia64 function declarations..
+ * elfxx-ia64.h: ..to here.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move v850 function declarations..
+ * elf32-v850.h: ..to here, new file.
+ * elf32-v850.c: Include elf32-v850.h.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move mips function declaration to..
+ * elfxx-mips.h: ..here.
+ * bfd-in2.h: Regenerate.
+
+2019-09-23 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h: Move csky function declarations to..
+ * elf32-csky.h: ..here, new file.
+ * elf32-csky.c: Include elf32-csky.h.
+ * bfd-in2.h: Regenerate.
+
+2019-09-20 Nelson Chu <nelson.chu@sifive.com>
+
+ * elfnn-riscv.c (riscv_pcgp_hi_reloc): Add new field undefined_weak.
+ (riscv_record_pcgp_hi_reloc): New parameter undefined_weak.
+ Set undefined_weak field from it.
+ (relax_func_t): New parameter undefined_weak.
+ (_bfd_riscv_relax_call): New ignored parameter undefined_weak.
+ (_bfd_riscv_relax_tls_le): Likewise.
+ (_bfd_riscv_relax_align): Likewise.
+ (_bfd_riscv_relax_delete): Likewise.
+ (_bfd_riscv_relax_lui): New parameter undefined_weak. If true,
+ allow relaxing. For LO12* relocs, set rs1 to x0 when undefined_weak.
+ (_bfd_riscv_relax_pc): New parameter undefined_weak. For LO12* relocs,
+ set undefined_weak from hi_reloc. If true, allow relaxing. For LO12*
+ relocs, set rs1 to x0 when undefined_weak and change to non-pcrel
+ reloc.
+ (_bfd_riscv_relax_section): New local undefined_weak. Set for
+ undef weak relocs that can be relaxed. Pass to relax_func call.
+
+2019-09-20 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h (bfd_section_name, bfd_section_size, bfd_section_vma),
+ (bfd_section_lma, bfd_section_alignment, bfd_section_flags),
+ (bfd_section_userdata, bfd_is_com_section, discarded_section),
+ (bfd_get_section_limit_octets, bfd_get_section_limit): Delete macros.
+ * bfd.c (bfd_get_section_limit_octets, bfd_get_section_limit),
+ (bfd_section_list_remove, bfd_section_list_append),
+ (bfd_section_list_prepend, bfd_section_list_insert_after),
+ (bfd_section_list_insert_before, bfd_section_removed_from_list):
+ New inline functions.
+ * section.c (bfd_is_und_section, bfd_is_abs_section),
+ (bfd_is_ind_section, bfd_is_const_section, bfd_section_list_remove),
+ (bfd_section_list_append, bfd_section_list_prepend),
+ (bfd_section_list_insert_after, bfd_section_list_insert_before),
+ (bfd_section_removed_from_list): Delete macros.
+ (bfd_section_name, bfd_section_size, bfd_section_vma),
+ (bfd_section_lma, bfd_section_alignment, bfd_section_flags),
+ (bfd_section_userdata, bfd_is_com_section, bfd_is_und_section),
+ (bfd_is_abs_section, bfd_is_ind_section, bfd_is_const_section),
+ (discarded_section): New inline functions.
+ * bfd-in2.h: Regenerate.
+
+2019-09-20 Alan Modra <amodra@gmail.com>
+
+ * bfd-in.h (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
+ (bfd_asymbol_bfd, bfd_asymbol_flavour, bfd_set_asymbol_name): Delete.
+ * bfd.c (bfd_asymbol_section, bfd_asymbol_value, bfd_asymbol_name),
+ (bfd_asymbol_bfd, bfd_set_asymbol_name): New inline functions.
+ * targets.c (bfd_asymbol_flavour): Likewise.
+ * bfd-in2.h: Regenerate.
+
2019-09-20 Alan Modra <amodra@gmail.com>
* archive.c (bfd_generic_archive_p): Use bfd_set_thin_archive.