+2018-08-22 Rafeal Auler <rafaelauler@gmail.com>
+
+ PR 23560
+ * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Always update the
+ stub's target, since it may have been changed after the layout.
+
+2018-08-21 John Darington <john@darrington.wattle.id.au>
+
+ * elf32-s12z.c (opru18_reloc): New function.
+ (elf_s12z_howto_table): Adjust Howto according to new knowledge.
+
+2018-08-21 mephi42 <mephi42@gmail.com>
+
+ PR binutils/23315
+ * mach-o.c (bfd_mach_o_mangle_symbols): Update n_type even if
+ data is already considered filled.
+
+2018-08-21 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (HOW): Define.
+ (ONES): Delete.
+ (ppc64_elf_howto_raw): Use HOW to initialize entries.
+ * elf32-ppc.c (HOW): Define.
+ (ppc_elf_howto_raw): Use HOW to initialize entries, updating
+ R_PPC_VLE_REL15 and R_PPC_VLE_REL24 to use bitpos=0.
+
+2018-08-21 Alan Modra <amodra@gmail.com>
+
+ * reloc.c (reloc_howto_type): Typedef.
+ (bfd_symbol): Delete forward declaration.
+ (struct reloc_howto_struct): Add "negate" field. Make "size",
+ "bitsize", "rightshift", "bitpos", "complain_on_overflow",
+ "pc_relative", "partial_inplace", and "pcrel_offset" bitfields.
+ Rearrange for better packing. Revise comments.
+ (HOWTO): Map to rearranged reloc_howto_struct.
+ (bfd_get_reloc_size): Delete now unused cases.
+ (read_reloc, write_reloc): Likewise.
+ (apply_reloc, _bfd_relocate_contents): Test howto->negate
+ rather than howto->size < 0 for negated relocation values.
+ * coff-rs6000.c (xcoff_complain_overflow_bitfield_func): Avoid
+ signed/unsigned warning.
+ (xcoff_ppc_relocate_section): Delete "condition is always false"
+ code.
+ * coff64-rs6000.c (xcoff64_ppc_relocate_section): Likewise.
+ * cpu-ns32k.c (do_ns32k_reloc): Adjust to suit reloc_howto_struct
+ changes.
+ * vms-alpha.c (_bfd_vms_write_etir, alpha_vms_slurp_relocs): Use
+ size 16 for ALPHA_R_LINKAGE.
+ (alpha_howto_table <ALPHA_R_LINKAGE>): Set encoded size and
+ bitsize to zero.
+ * bfd-in.h (reloc_howto_type): Delete.
+ * bfd-in2.h: Regenerate.
+
+2018-08-21 Alan Modra <amodra@gmail.com>
+
+ * reloc.c (HOWTO): Revise comment.
+ (NEWHOWTO, HOWTO_PREPARE): Delete.
+ * coff-arm.c (coff_arm_reloc_type_lookup): Replace const struc
+ reloc_howto_struct with reloc_howto_type.
+ * ns32knetbsd.c (MY_bfd_reloc_type_lookup): Likewise.
+ * vms-alpha.c (alpha_vms_bfd_reloc_type_lookup): Likewise.
+ * elf-hppa.h (HOW): Define.
+ (elf_hppa_howto_table): Use it to simplify this table, correcting
+ name of R_PARISC_LTOFF16WF, R_PARISC_LTOFF_FPTR64, and
+ R_PARISC_LTOFF_FPTR16DF.
+ * elf32-mep.c (MEPREL): Use HOWTO.
+ * bfd-in2.h: Regenerate.
+
+2018-08-20 Alan Modra <amodra@gmail.com>
+
+ * mmo.c (valid_mmo_symbol_character_set): Initialize and make
+ array const.
+ (mmo_init): Don't init valid_mmo_symbol_character_set.
+
+2018-08-20 Alan Modra <amodra@gmail.com>
+
+ * rs6000-core.c (CORE_COMMONSZ): Balance parentheses in expression.
+
+2018-08-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/23515
+ * elf-bfd.h (elf_backend_data): Add fixup_gnu_properties.
+ * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Call
+ backend fixup_gnu_properties if it isn't NULL. Discard
+ .note.gnu.property section if all properties have been removed.
+ * elfxx-target.h (elf_backend_fixup_gnu_properties): New.
+ (elfNN_bed): Initialize fixup_gnu_properties.
+ * elfxx-x86.c (_bfd_x86_elf_link_fixup_gnu_properties): New
+ function.
+ * elfxx-x86.h (_bfd_x86_elf_link_fixup_gnu_properties): New
+ prototype.
+ (elf_backend_fixup_gnu_properties): New.
+
+2018-08-16 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c: Correct ppc_stub_long_branch_notoc example.
+ Formatting.
+
+2018-08-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/23494
+ * Makefile.am (BFD32_LIBS): Add elf-properties.lo.
+ (BFD32_LIBS_CFILES): Add elf-properties.c.
+ (BFD32_BACKENDS): Remove elf-properties.lo.
+ (BFD32_BACKENDS_CFILES): Remove elf-properties.c.
+ * configure.ac (elf): Remove elf-properties.lo.
+ * Makefile.in: Regenerated.
+ * configure: Likewise.
+
+2018-08-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/23428
+ * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Don't
+ add X86_ISA_1_NEEDED property only if existing properties won't
+ be removed.
+
+2018-08-11 Alan Modra <amodra@gmail.com>
+
+ * reloc.c (bfd_get_reloc_size): Sort switch.
+ (read_reloc, write_reloc, apply_reloc): New functions.
+ (bfd_perform_relocation, bfd_install_relocation): Use apply_reloc.
+ (_bfd_relocate_contents): Use read_reloc and write_reloc.
+ (_bfd_clear_contents): Likewise.
+
+2018-08-11 John Darrington <john@darrington.wattle.id.au>
+
+ * reloc.c (_bfd_relocate_contents): Handle 3 byte relocs.
+ (_bfd_clear_contents): Likewise.
+ (bfd_perform_relocation): Likewise.
+ (bfd_install_relocation): Likewise.
+
+2018-08-10 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/23499
+ * elflink.c (bfd_elf_record_link_assignment): Always clear
+ h->verinfo.verdef when overriding a dynamic definition.
+
+2018-08-10 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/23494
+ * elf-properties.c (elf_get_gnu_property_section_size): Always
+ use align_size as pr_datasz for GNU_PROPERTY_STACK_SIZE.
+ (elf_write_gnu_properties): Likewise.
+
+2018-08-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/23494
+ * bfd.c (bfd_convert_section_size): Check BFD_DECOMPRESS after
+ calling _bfd_elf_convert_gnu_property_size to convert
+ .note.gnu.property section size.
+ (bfd_convert_section_contents): Check BFD_DECOMPRESS after
+ calling _bfd_elf_convert_gnu_properties to convert
+ .note.gnu.property section.
+ * elf-bfd.h (_bfd_elf_convert_gnu_property_size): New prototype.
+ (_bfd_elf_convert_gnu_properties): Likewise.
+ * elf-properties.c (elf_get_gnu_property_section_size): New
+ function.
+ (elf_write_gnu_properties): Likewise.
+ (_bfd_elf_convert_gnu_property_size): Likewise.
+ (_bfd_elf_convert_gnu_properties): Likewise.
+ (_bfd_elf_link_setup_gnu_properties): Use
+ elf_get_gnu_property_section_size and elf_write_gnu_properties.
+
+2018-08-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/23486
+ * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Remove
+ GNU_PROPERTY_X86_ISA_1_USED if an input file doesn't have it.
+ (_bfd_x86_elf_link_setup_gnu_properties): Adding the
+ GNU_PROPERTY_X86_ISA_1_NEEDED, instead of
+ GNU_PROPERTY_X86_ISA_1_USED, property.
+
+2018-08-07 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (struct map_stub): Delete tls_get_addr_opt_bctrl.
+ Add lr_restore, eh_size and eh_base.
+ (eh_advance, eh_advance_size): New functions.
+ (build_tls_get_addr_stub): Emit EH info for stub.
+ (ppc_build_one_stub): Likewise for _notoc stubs.
+ (ppc_size_one_stub): Size EH info for stub.
+ (group_sections): Init new map_stub fields.
+ (stub_eh_frame_size): Delete.
+ (ppc64_elf_size_stubs): Size EH info for stubs. Set up dummy EH
+ program for stubs.
+ (ppc64_elf_build_stubs): Reinit new map_stub fields. Set FDE
+ offset to stub section here..
+ (ppc64_elf_finish_dynamic_sections): ..rather than here.
+
+2018-08-07 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_relocate_section): Don't skip first
+ instruction of __tls_get_addr_opt stub.
+ (plt_stub_size): Omit ALWAYS_EMIT_R2SAVE condition when
+ dealing with __tls_get_addr_opt stub.
+ (build_tls_get_addr_stub, ppc_size_one_stub): Likewise.
+
+2018-08-06 Claudiu Zissulescu <claziss@synopsys.com>
+
+ * elf32-arc.c (arc_elf_merge_private_bfd_data): Complain about
+ efalgs only when in/out exists.
+ (elf32_arc_section_from_shdr): Don't complain about 0x0c
+ section type. It is mwdt compiler specific.
+
+2018-08-06 Claudiu Zissulescu <claziss@synopsys.com>
+
+ * elf32-arc.c (arc_elf_merge_attributes): Fix merge attributes.
+
+2018-08-06 Claudiu Zissulescu <claziss@synopsys.com>
+
+ * elf32-arc.c (arc_elf_merge_attributes): Handle
+ Tag_ARC_ATR_version.
+
+2018-08-05 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ADDI_R12_R11, ADDI_R12_R12, LIS_R12),
+ (ADDIS_R12_R11, ORIS_R12_R12_0, ORI_R12_R12_0),
+ (SLDI_R12_R12_32, LDX_R12_R11_R12, ADD_R12_R11_R12): Define.
+ (ppc64_elf_howto_raw): Add R_PPC64_REL24_NOTOC entry.
+ (ppc64_elf_reloc_type_lookup): Support R_PPC64_REL24_NOTOC.
+ (ppc_stub_type): Add ppc_stub_long_branch_notoc,
+ ppc_stub_long_branch_both, ppc_stub_plt_branch_notoc,
+ ppc_stub_plt_branch_both, ppc_stub_plt_call_notoc, and
+ ppc_stub_plt_call_both.
+ (is_branch_reloc): Add R_PPC64_REL24_NOTOC.
+ (build_offset, size_offset): New functions.
+ (plt_stub_size): Support plt_call_notoc and plt_call_both.
+ (ppc_build_one_stub, ppc_size_one_stub): Support new stubs.
+ (toc_adjusting_stub_needed): Handle R_PPC64_REL24_NOTOC.
+ (ppc64_elf_size_stubs): Likewise, and new stubs.
+ (ppc64_elf_build_stubs, ppc64_elf_relocate_section): Likewise.
+ * reloc.c: Add BFD_RELOC_PPC64_REL24_NOTOC.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2018-08-05 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc_build_one_stub): Lose "_r2off" in stub symbols.
+
+2018-08-02 Jim Wilson <jimw@sifive.com>
+
+ * elfnn-riscv.c (riscv_elf_create_dynamic_sections): For .tdata.dyn,
+ add SEC_LINKER_CREATED flag.
+
+2018-08-01 Nick Clifton <nickc@redhat.com>
+
+ * coff-rs6000.c (_bfd_xcoff_put_ldsymbol_name): Suppress warnings
+ about potentially truncated strncpy operations.
+ (_bfd_xcoff_put_symbol_name): Likewise.
+
+ * elf32-avr.c (avr_stub_name): Check for a NULL return from
+ bfd_malloc.
+
+2018-08-01 Zenith <zenith432@users.sourceforge.net>
+
+ PR 23460
+ * plugin.c (bfd_plugin_open_input): Close file descriptor if the
+ call to fstat fails.
+ (try_claim): Always close the file descriptor at the end of the
+ function.
+ (try_load_plugin): If a plugin has already been registered, then
+ skip the dlopen and onload steps and go straight to claiming the
+ file. If these is an error, close the plugin.
+
+2018-08-01 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (plt_stub_pad): Delay plt_stub_size call until needed.
+ (ppc_build_one_stub): Don't set stub_offset, instead assert that
+ it is sane. Don't adjust stub_offset for alignment. Adjust size
+ calculation. Use "targ" temp when calculating offsets.
+ (ppc_size_one_stub): Set stub_offset here. Use "targ" temp when
+ calculating offsets. Adjust for alignment before setting
+ tls_get_addr_opt_bctrl.
+
+2018-08-01 Alan Modra <amodra@gmail.com>
+
+ * po/SRC-POTFILES.in: Regenerate.
+
+2018-07-30 Nick Clifton <nickc@redhat.com>
+
+ PR 22706
+ * elf32-sh.c (sh_elf_relocate_section): When processing
+ translation relocs, fail if the relocation offset is too small.
+ Replace BFD_ASSERTs with more helpful error messages.
+
+2018-07-30 Andrew Jenner <andrew@codesourcery.com>
+
+ * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES): Add C-SKY.
+ (BFD32_BACKENDS, BFD_BACKENDS_CFILES): Likewise.
+ * Makefile.in: Regenerated.
+ * archures.c (enum bfd_architecture): Add bfd_arch_csky and
+ related bfd_mach defines.
+ (bfd_csky_arch): Declare.
+ (bfd_archures_list): Add C-SKY.
+ * bfd-in.h (elf32_csky_build_stubs): Declare.
+ (elf32_csky_size_stubs): Declare.
+ (elf32_csky_next_input_section: Declare.
+ (elf32_csky_setup_section_lists): Declare.
+ * bfd-in2.h: Regenerated.
+ * config.bfd: Add C-SKY.
+ * configure.ac: Likewise.
+ * configure: Regenerated.
+ * cpu-csky.c: New file.
+ * elf-bfd.h (enum elf_target_id): Add C-SKY.
+ * elf32-csky.c: New file.
+ * libbfd.h: Regenerated.
+ * reloc.c: Add C-SKY relocations.
+ * targets.c (csky_elf32_be_vec, csky_elf32_le_vec): Declare.
+ (_bfd_target_vector): Add C-SKY target vector entries.
+
+2018-07-27 John Darrington <john@darrington.wattle.id.au>
+
+ * elf32-s12z.c (ELF_TARGET_ID): Don't define.
+
+2018-07-27 John Darrington <john@darrington.wattle.id.au>
+
+ * libbfd.c (bfd_getb24, bfd_getl24): New functions.
+ (bfd_get_24, bfd_put_24): New macros.
+ * bfd-in2.h: Regenerate.
+
+2018-07-27 John Darrington <john@darrington.wattle.id.au>
+
+ * elf32-s12z.c (s12z_elf_set_mach_from_flags): Remove comment.
+
+2018-07-26 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_size_stubs): Use a ppc_stub_long_branch_r2off
+ for calls to symbols with STO_PPC64_LOCAL_MASK bits set to 1.
+
+2018-07-25 Alan Modra <amodra@gmail.com>
+
+ * elf32-ppc.c (ppc_elf_relax_section): Ignore common or undef locals.
+ Avoid trashing toff with added when used as a symbol index.
+ Ignore R_PPC_PLTREL24 addends in unused example code. Avoid
+ creating unnecessary fixups when relocatable.
+
+2018-07-25 Alan Modra <amodra@gmail.com>
+
+ * elf32-arm.c (elf32_arm_nabi_write_core_note): Disable
+ -Wstringop-truncation warning for gcc-8.0 too.
+ * elf32-ppc.c (ppc_elf_write_core_note): Likewise.
+ * elf64-ppc.c (ppc64_elf_write_core_note): Likewise.
+ * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise.
+ * elf32-s390.c (elf_s390_write_core_note): Comment fix.
+ * elf64-s390.c (elf_s390_write_core_note): Likewise.
+
+2018-07-24 Alan Modra <amodra@gmail.com>
+
+ PR 23430
+ * dwarf2.c (dwarf_debug_section_enum): Fix comment typo.
+ * elf.c (bfd_section_from_shdr, elf_sort_sections): Likewise.
+
+2018-07-23 Max Filippov <jcmvbkbc@gmail.com>
+
+ * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Move
+ relocation sections consistency check to always check both
+ .rela.dyn and .rela.plt when they exist. Rearrange variable
+ definition and assignment places.
+
+2018-07-23 Max Filippov <jcmvbkbc@gmail.com>
+
+ * elf32-xtensa.c (shrink_dynamic_reloc_sections): Shrink dynamic
+ relocations section for dynamic undefined weak symbols when
+ linking a shared object.
+
+2018-07-23 Tom Tromey <tom@tromey.com>
+
+ * elf.c (bfd_get_elf_phdrs): Don't call memcpy with size 0.
+
+2018-07-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * elf32-arm.c (elf32_arm_final_link_relocate) <R_ARM_GOT32>: Small
+ cleanup for the case of a global symbol that binds locally. Also
+ install a value in the GOT slot in the case of a local symbol in
+ a non-PIC link.
+
+2018-07-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/23428
+ * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): If the
+ separate code program header is needed, make sure that the first
+ read-only PT_LOAD segment has no code by adding a
+ GNU_PROPERTY_X86_ISA_1_USED note.
+
+2018-07-20 Chenghua Xu <paul.hua.gm@gmail.com>
+ Maciej W. Rozycki <macro@mips.com>
+
+ * elfxx-mips.c (print_mips_ases): Add MMI extension.
+
+2018-07-20 Maciej W. Rozycki <macro@mips.com>
+
+ * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Do not
+ create DT_REL, DT_RELSZ or DT_RELENT dynamic entries if the
+ dynamic relocation section will be discarded from output.
+ (_bfd_mips_elf_finish_dynamic_sections) <DT_RELSZ>: Assert that
+ the dynamic relocation section will be retained in output.
+
+2018-07-18 Maciej W. Rozycki <macro@mips.com>
+
+ * xcofflink.c (xcoff_write_global_symbol): Fix symbol type
+ checks for defined weak symbols.
+
+2018-07-17 Maciej W. Rozycki <macro@mips.com>
+
+ * elf32-nds32.c (nds32_elf_relax_loadstore): Use
+ `bfd_is_abs_symbol' rather than `bfd_is_abs_section' in checking
+ whether the symbol is absolute.
+ (nds32_elf_relax_lo12): Likewise.
+ * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise.
+ (elfNN_aarch64_check_relocs): Likewise.
+ * xcofflink.c (xcoff_need_ldrel_p): Likewise.
+ (bfd_xcoff_import_symbol): Likewise.
+ (xcoff_write_global_symbol): Likewise.
+
2018-07-17 Maciej W. Rozycki <macro@mips.com>
* linker.c (bfd_is_abs_symbol): New macro.