+2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/25490
+ * elflink.c (_bfd_elf_gc_mark_extra_sections): Issue an error
+ for garbage collection on __patchable_function_entries section
+ without linked-to section.
+
+2020-02-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gas/25381
+ * bfd-in2.h: Regenerated.
+ * elflink.c (_bfd_elf_gc_mark_extra_sections): Call mark_hook
+ on section if gc_mark of any of its linked-to sections is set
+ and don't set gc_mark again.
+ * section.c (asection): Add linked_to_symbol_name to map_head
+ union.
+
+2020-02-06 Maciej W. Rozycki <macro@wdc.com>
+
+ * elf32-v850.c (v850_elf_relax_section): Fix the index used for
+ reporting an unrecognized instruction with R_V850_LONGJUMP.
+
+2020-02-05 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc_stub_plt_branch): Match comment with reality.
+
+2020-02-04 Alan Modra <amodra@gmail.com>
+
+ * elf32-ppc.c (ppc_elf_relocate_section): After applying
+ R_PPC_VLE_ADDR20, goto copy_reloc.
+
+2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ * bfd-in2.h: Regenerated.
+ * section.c (SEC_ASSEMBLER_SECTION_ID): Fix a typo in comments.
+
+2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gas/25380
+ * bfd-in2.h: Regenerated.
+ * ecoff.c (bfd_debug_section): Add section_id.
+ * section.c (bfd_section): Add section_id.
+ (SEC_ASSEMBLER_SECTION_ID): New.
+ (BFD_FAKE_SECTION): Add section_id.
+
+2020-02-01 Nick Clifton <nickc@redhat.com>
+
+ * config.bfd: Move the c30-aout and tic30-aout targets onto the
+ obsolete list.
+
+2020-01-31 Sandra Loosemore <sandra@codesourcery.com>
+
+ * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): DW_EH_PE_datarel
+ encodings are relative to the GOT on nios2, too.
+
+2020-01-31 Alan Modra <amodra@gmail.com>
+
+ * Makefile.am (elf32-target.h, elf64-target.h): Don't use a temp
+ file. Use $< and $@ in rules.
+ (elf32-aarch64.c, elf64-aarch64.c): Likewise.
+ (elf32-ia64.c, elf64-ia64.c): Likewise.
+ (elf32-riscv.c, elf64-riscv.c): Likewise.
+ (peigen.c, pepigen.c, pex64igen.c): Likewise.
+ (elf32-aarch64.c, elf64-aarch64.c): Don't emit $srcdir on #line.
+ (elf32-riscv.c, elf64-riscv.c): Likewise, and use $(SED).
+ (elf32-ia64.c, elf64-ia64.c): Do emit #line.
+ (peigen.c, pepigen.c, pex64igen.c): Likewise.
+ * Makefile.in: Regenerate.
+
+2020-01-31 Alan Modra <amodra@gmail.com>
+
+ PR 4110
+ * elf.c (setup_group): Don't clear entire section contents,
+ just the padding after group flags. Release alloc'd memory
+ after a seek or read failure.
+
+2020-01-16 Jon Turney <jon.turney@dronecode.org.uk>
+
+ * peXXigen.c (pe_is_repro): New function.
+ (_bfd_XX_print_private_bfd_data_common): Note timestamp is
+ actually a build hash if PE_IMAGE_DEBUG_TYPE_REPRO is present.
+
+2020-01-16 Jon Turney <jon.turney@dronecode.org.uk>
+
+ * peXXigen.c (debug_type_names): Add names for new debug data type
+ values.
+
+2020-01-16 Jon Turney <jon.turney@dronecode.org.uk>
+
+ * peXXigen.c (pe_print_debugdata): Fix the iteration variable for
+ inner loop. Fix a memory leak.
+
+2020-01-30 Alan Modra <amodra@gmail.com>
+
+ * coffgen.c (coff_real_object_p): Don't clear obj_coff_keep_syms
+ or obj_coff_keep_strings here.
+ (coff_get_normalized_symtab): Free external syms directly.
+ * xcofflink.c (xcoff_link_input_bfd): Restore obj_coff_keep_syms
+ on error exit path.
+
+2020-01-27 Jim Wilson <jimw@sifive.com>
+
+ * cpu-riscv.c (riscv_scan): New.
+ (N): Change bfd_default_scan to riscv_scan.
+
+2020-01-27 Andreas Schwab <schwab@suse.de>
+
+ * Makefile.am (ALL_MACHINES): Remove cpu-plugin.lo.
+ (ALL_MACHINES_CFILES): Remove cpu-plugin.c.
+ * Makefile.in: Regenerate.
+ * cpu-plugin.c: Remove.
+ * archures.c (enum bfd_architecture): Remove bfd_arch_plugin.
+ (bfd_plugin_arch): Remove declaration.
+ * bfd-in2.h: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2020-01-27 H.J. Lu <hongjiu.lu@intel.com>
+ Alan Modra <amodra@gmail.com>
+
+ PR ld/25458
+ * elflink.c (_bfd_elf_gc_mark_rsec): Mark all weak aliases.
+
+2020-01-24 Jim Wilson <jimw@sifive.com>
+
+ * elfxx-riscv.c (riscv_get_prefix_class): Format s case like others.
+ (riscv_parse_prefixed_ext): Fix s extension comment and reword to
+ avoid over long line.
+
+2020-01-24 Nick Clifton <nickc@redhat.com>
+
+ PR 25447
+ * coffgen.c (_bfd_coff_close_and_cleanup): Do not clear the keep
+ syms and keep strings flags as these may have been set in order to
+ prevent a bogus call to free.
+
+2020-01-23 Nick Clifton <nickc@redhat.com>
+
+ * po/fr.po: Updated French translation.
+
+2020-01-23 Alan Modra <amodra@gmail.com>
+
+ PR 25444
+ * elf.c (assign_file_positions_for_load_sections): Avoid divide
+ by zero when p_align is zero.
+
+2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
+
+ * bfd/elfnn-riscv.c (riscv_skip_prefix): New.
+ (riscv_prefix_cmp): Likewise.
+ (riscv_non_std_ext_p): Deleted.
+ (riscv_std_sv_ext_p): Likewise.
+ (riscv_non_std_sv_ext_p): Likewise.
+ (riscv_merge_non_std_and_sv_ext): Rename to...
+ (riscv_merge_multi_letter_ext): and modified to use riscv_prefix_cmp.
+ (riscv_merge_arch_attr_info): Replace 3 calls to
+ riscv_merge_non_std_and_sv_ext with single call to
+ riscv_merge_multi_letter_ext.
+ * bfd/elfxx-riscv.c (riscv_parse_std_ext): Break if we
+ encounter a 'z' prefix.
+ (riscv_get_prefix_class): New function, return prefix class based
+ on first few characters of input string.
+ (riscv_parse_config): New structure to factor out minor differences
+ in extension class parsing behaviour.
+ (riscv_parse_sv_or_non_std_ext): Rename to...
+ (riscv_parse_prefixed_ext): and parameterise with
+ riscv_parse_config.
+ (riscv_std_z_ext_strtab, riscv_std_s_ext_strtab): New.
+ (riscv_multi_letter_ext_valid_p): New.
+ (riscv_ext_x_valid_p, riscv_ext_z_valid_p, riscv_ext_s_valid_p): New.
+ (riscv_parse_subset): Delegate all non-single-letter parsing work
+ to riscv_parse_prefixed_ext.
+ * bfd/elfxx-riscv.h (riscv_isa_ext_class): New type.
+ (riscv_get_prefix_class): Declare.
+
+2020-01-22 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (struct ppc_link_hash_table): Add tga_group.
+ (ppc64_elf_archive_symbol_lookup): Extract __tls_get_addr_opt for
+ __tls_get_addr_desc.
+ (ppc64_elf_size_stubs): Add section for linker generated
+ __tls_get_addr_desc wrapper function. Loop at least once if
+ generating this function.
+ (emit_tga_desc, emit_tga_desc_eh_frame): New functions.
+ (ppc64_elf_build_stubs): Generate __tls_get_addr_desc.
+
+2020-01-22 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.h (struct ppc64_elf_params): Add no_tls_get_addr_regsave.
+ * elf64-ppc.c (struct ppc_link_hash_table): Add tga_desc and
+ tga_desc_fd.
+ (is_tls_get_addr): Match tga_desc and tga_desc_df too.
+ (STDU_R1_0R1, ADDI_R1_R1): Define.
+ (tls_get_addr_prologue, tls_get_addr_epilogue): New functions.
+ (ppc64_elf_tls_setup): Set up tga_desc and tga_desc_fd. Indirect
+ tga_desc_fd to opt_fd, and tga_desc to opt. Set
+ no_tls_get_addr_regsave.
+ (branch_reloc_hash_match): Add hash3 and hash4.
+ (ppc64_elf_tls_optimize): Handle tga_desc_fd and tga_desc too.
+ (ppc64_elf_size_dynamic_sections): Likewise.
+ (ppc64_elf_relocate_section): Likewise.
+ (plt_stub_size, build_plt_stub): Likewise. Size regsave
+ __tls_get_addr stub.
+ (build_tls_get_addr_stub): Build regsave __tls_get_addr stub and
+ eh_frame.
+ (ppc_size_one_stub): Handle tga_desc_fd and tga_desc too. Size
+ eh_frame for regsave __tls_get_addr.
+
+2020-01-22 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_size_stubs): Correct condition under
+ which __tls_get_addr calls will be eliminated.
+
+2020-01-20 Nick Clifton <nickc@redhat.com>
+
+ * po/pt.po: Updates Portuguese translation.
+ * po/ru.po: Updated Russian translation.
+ * po/uk.po: Updated Ukranian translation.
+
+2020-01-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/25416
+ * elf64-x86-64.c (elf_x86_64_check_tls_transition): Support
+ "rex leal x@tlsdesc(%rip), %reg" and "call *x@tlsdesc(%eax)" in
+ X32 mode.
+ (elf_x86_64_relocate_section): In x32 mode, for GDesc -> LE
+ transition, relax "rex leal x@tlsdesc(%rip), %reg" to
+ "rex movl $x@tpoff, %reg", for GDesc -> IE transition, relax
+ "rex leal x@tlsdesc(%rip), %reg" to
+ "rex movl x@gottpoff(%rip), %eax". For both transitions, relax
+ "call *(%eax)" to "nopl (%rax)".
+
+2020-01-20 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (LD_R11_0R3, CMPDI_R11_0, STD_R11_0R1, LD_R11_0R1),
+ (MTLR_R11): Don't define.
+ (LD_R0_0R3, CMPDI_R0_0): Define.
+ (build_tls_get_addr_stub): Don't use r11 in stub.
+
+2020-01-20 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc_elf_hash_entry): New function, use throughout file.
+ (defined_sym_val, is_tls_get_addr): Likewise.
+
+2020-01-18 Nick Clifton <nickc@redhat.com>
+
+ * version.m4 (BFD_VERSION): Set to 2.34.50.
+ * configure: Regenerate.
+ * po/bfd.pot: Regenerate.
+
+2020-01-18 Nick Clifton <nickc@redhat.com>
+
+ Binutils 2.34 branch created.
+
+2020-01-17 Christian Biesinger <cbiesinger@google.com>
+
+ * coff-arm.c: Fix spelling error (seperate).
+ * elfxx-riscv.c (riscv_parse_sv_or_non_std_ext): Fix spelling
+ error (seperate).
+ * sysdep.h (strnlen): Fix spelling error (seperate).
+
+2020-01-15 Lars Brinkhoff <lars@nocrew.org>
+
+ PR 20694
+ * pdp11.c (TARGET_PAGE_SIZE): Set to 8192.
+
+2020-01-15 Alan Modra <amodra@gmail.com>
+
+ PR 25384
+ * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Update comment.
+ (ppc64_elf_adjust_dynamic_symbol): Don't allow .dynbss copies
+ of function symbols unless dot symbols are present. Do warn
+ whenever one is created, regardles of whether a PLT entry is
+ also emitted for the function symbol.
+
+2020-01-14 Alan Modra <amodra@gmail.com>
+
+ * som.c (som_bfd_count_ar_symbols): Error when file position
+ of symbols on chains is not strictly increasing.
+
+2020-01-14 Alan Modra <amodra@gmail.com>
+
+ * vms.h (VMS_DEBUG): Define as 0.
+ * vms-alpha.c (image_write): Move debug output after bounds check.
+ Tidy bounds check.
+ (_bfd_vms_slurp_eihd): Warning fix.
+ (_bfd_vms_slurp_etir): Init variables to avoid bogus warnings.
+
+2020-01-13 Alan Modra <amodra@gmail.com>
+
+ * vms-alpha.c (_bfd_vms_slurp_egsd): Ensure minimum size even
+ for "ignored" records.
+
+2020-01-13 Alan Modra <amodra@gmail.com>
+
+ * wasm-module.c (wasm_scan_name_function_section): Formatting.
+ Delete asect name check. Move asect NULL check to wasm_object_p.
+ Correct bounds check of sizes against end. Replace uses of
+ bfd_zalloc with bfd_alloc, zeroing only necessary bytes. Use
+ just one bfd_release.
+ (wasm_scan): Don't use malloc/strdup for section names,
+ bfd_alloc instead. Simplify code prefixing section name.
+ Formatting. Don't attempt to free memory here..
+ (wasm_object_p): ..do so here.
+
+2020-01-10 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ PR ld/22269
+ * elf32-arm.c (elf32_arm_final_link_relocate): Use
+ UNDEFWEAK_NO_DYNAMIC_RELOC.
+ (allocate_dynrelocs_for_symbol): Likewise.
+
+2020-01-10 Tamar Christina <tamar.christina@arm.com>
+
+ PR 25210
+ * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Remove elfclass.
+
+2020-01-10 Alan Modra <amodra@gmail.com>
+
+ * coff-alpha.c (alpha_ecoff_object_p): Calculate size in bfd_size_type.
+
+2020-01-09 Nick Clifton <nickc@redhat.com>
+
+ PR 25221
+ * bfd.c (bfd_convert_section_contents): Check for a compress
+ header size that is larger than the actual section size.
+
+2020-01-08 Alan Modra <amodra@gmail.com>
+
+ PR 25351
+ * elflink.c (bfd_elf_final_link): Call _bfd_fix_excluded_sec_syms
+ after removing sections.
+
+2020-01-06 Jim Wilson <jimw@sifive.com>
+
+ PR 25205
+ * elfnn-riscv.c (riscv_elf_relocate_section) <R_RISCV_CALL>: Add
+ check for !bfd_link_pic (info).
+ <R_RISCV_CALL_PLT>: Move next to R_RISCV_CALL.
+ <R_RISCV_JAL>: Add comment.
+ (_bfd_riscv_relax_section): For plt.offset check, add check for
+ bfd_link_pic (info). Add comment.
+
+2020-01-06 Alan Modra <amodra@gmail.com>
+
+ * format.c (bfd_check_format_matches): Ignore bfd_error on target
+ match failures. Don't init to bfd_error_wrong_format before
+ calling _bfd_check_format.
+
+2020-01-06 Alan Modra <amodra@gmail.com>
+
+ * vms-alpha.c (_bfd_vms_push, _bfd_vms_pop): Return pass/fail
+ status rather than exiting on stack overflow or underflow.
+ (_bfd_vms_slurp_etir): Adjust to suit.
+
+2020-01-06 Alan Modra <amodra@gmail.com>
+
+ * som.c (som_bfd_fill_in_ar_symbols): Bounds check som_dict index.
+
+2020-01-06 Alan Modra <amodra@gmail.com>
+
+ * mach-o.c (bfd_mach_o_read_dylinker): Don't read past end of
+ command. Check name offset is within command.
+ (bfd_mach_o_read_dylib, bfd_mach_o_read_prebound_dylib),
+ (bfd_mach_o_read_prebind_cksum, bfd_mach_o_read_twolevel_hints),
+ (bfd_mach_o_read_fvmlib, bfd_mach_o_read_dysymtab),
+ (bfd_mach_o_read_symtab, bfd_mach_o_read_uuid),
+ (bfd_mach_o_read_linkedit, bfd_mach_o_read_str),
+ (bfd_mach_o_read_dyld_info, bfd_mach_o_read_version_min),
+ (bfd_mach_o_read_encryption_info, bfd_mach_o_read_source_version),
+ (bfd_mach_o_read_encryption_info_64, bfd_mach_o_read_main),
+ (bfd_mach_o_read_note, bfd_mach_o_read_build_version),
+ (bfd_mach_o_read_segment): Similarly.
+ (bfd_mach_o_read_thread): Properly bound check thread struct.
+ Don't repeat checks on second loop.
+ (bfd_mach_o_read_command): Fail on invalid command length.
+
+2020-01-04 Alan Modra <amodra@gmail.com>
+
+ * format.c (bfd_check_format_matches): Add preserve_match.
+ Save initial bfd state in "preserve", matched bfd state in
+ "preserve_match". Save just the first match. Release
+ bfd_alloc memory. Restore and finish preserved state as
+ appropriate on all function exit paths.
+
+2020-01-04 Alan Modra <amodra@gmail.com>
+
+ * mmo.c (mmo_mkobject): Allocate tdata with bfd_zalloc.
+
+2020-01-04 Alan Modra <amodra@gmail.com>
+
+ * coffgen.c (coff_real_object_p): Free malloc'd memory on target
+ match too.
+
2020-01-03 Nick Clifton <nickc@redhat.com>
PR 25307