+2016-05-18 Alan Modra <amodra@gmail.com>
+
+ * elf32-arm.c (elf32_arm_size_stubs): Free or cache local syms
+ for each BFD. Don't goto error_ret_free_local from outside loop.
+
+2016-05-17 Maciej W. Rozycki <macro@imgtec.com>
+
+ * elf-s390-common.c (elf_s390_add_symbol_hook): Remove
+ STB_GNU_UNIQUE handling.
+ * elf32-arc.c (elf_arc_add_symbol_hook): Likewise.
+ * elf32-arm.c (elf32_arm_add_symbol_hook): Likewise.
+ * elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise.
+ * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise.
+ * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise.
+ * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise.
+ * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise.
+ * elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise.
+ * elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Likewise.
+ * elf32-i386.c (elf_i386_add_symbol_hook): Remove function.
+ (elf_backend_add_symbol_hook): Remove macro.
+ * elflink.c (elf_link_add_object_symbols): Set `has_gnu_symbols'
+ for STB_GNU_UNIQUE symbols.
+
+2016-05-16 Maciej W. Rozycki <macro@imgtec.com>
+
+ * elf32-v850.c (v850_elf_copy_notes): New function, factored out
+ from...
+ (v850_elf_copy_private_bfd_data): ... here. Call the new
+ function and `_bfd_elf_copy_private_bfd_data'.
+
+2016-05-13 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/20093
+ * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Don't convert
+ GOTPCREL relocation against large section.
+
+2016-05-13 Alan Modra <amodra@gmail.com>
+
+ * elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_sections): Use
+ linker dynamic sections in calculating size and address of
+ dynamic tags rather than using output sections. Remove asserts.
+ * elf32-arm.c (elf32_arm_finish_dynamic_sections): Likewise.
+ * elf32-cr16.c (_bfd_cr16_elf_finish_dynamic_sections): Likewise.
+ * elf32-cris.c (elf_cris_finish_dynamic_sections): Likewise.
+ * elf32-i370.c (i370_elf_finish_dynamic_sections): Likewise.
+ * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Likewise.
+ * elf32-m32r.c (m32r_elf_finish_dynamic_sections): Likewise.
+ * elf32-m68k.c (elf_m68k_finish_dynamic_sections): Likewise.
+ * elf32-metag.c (elf_metag_finish_dynamic_sections): Likewise.
+ * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Likewise.
+ * elf32-nds32.c (nds32_elf_finish_dynamic_sections): Likewise.
+ * elf32-nios2.c (nios2_elf32_finish_dynamic_sections): Likewise.
+ * elf32-or1k.c (or1k_elf_finish_dynamic_sections): Likewise.
+ * elf32-s390.c (elf_s390_finish_dynamic_sections): Likewise.
+ * elf32-score.c (s3_bfd_score_elf_finish_dynamic_sections): Likewise.
+ * elf32-score7.c (s7_bfd_score_elf_finish_dynamic_sections): Likewise.
+ * elf32-vax.c (elf_vax_finish_dynamic_sections): Likewise.
+ * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Likewise.
+ * elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Likewise.
+ * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise.
+ * elf64-sh64.c (sh64_elf64_finish_dynamic_sections): Likewise.
+ * elflink.c (bfd_elf_final_link): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Likewise.
+ * elfxx-sparc.c (sparc_finish_dyn): Likewise. Adjust error message.
+ * elf32-arc.c (GET_SYMBOL_OR_SECTION): Remove ASSERT arg and
+ don't set doit. Look up dynobj section.
+ (elf_arc_finish_dynamic_sections): Adjust GET_SYMBOL_OR_SECTION
+ invocation and dynamic tag vma calculation. Don't test
+ boolean var == TRUE.
+ * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections): Fix
+ DT_JMPREL calc.
+
+2016-05-13 Alan Modra <amodra@gmail.com>
+
+ * elflink.c (elf_link_sort_relocs): Wrap overlong lines. Fix
+ octets_per_byte. Put dynamic .rela.plt last in link orders.
+ Assign output_offset for reloc sections rather than writing
+ sorted relocs from block corresponding to output_offset.
+
+2016-05-12 Alan Modra <amodra@gmail.com>
+
+ * elf-bfd.h (elf_reloc_type_class): Put reloc_class_plt last.
+
+2016-05-11 Andrew Bennett <andrew.bennett@imgtec.com>
+
+ * elfxx-mips.c (print_mips_ases): Add DSPR3.
+
+2016-05-11 Alan Modra <amodra@gmail.com>
+
+ * elf32-hppa.c (elf32_hppa_init_stub_bfd): New function.
+ (elf32_hppa_check_relocs): Don't set dynobj.
+ (elf32_hppa_size_stubs): Test !SEC_LINKER_CREATED for stub sections.
+ (elf32_hppa_build_stubs): Likewise.
+ * elf32-hppa.h (elf32_hppa_init_stub_bfd): Declare.
+
+2016-05-11 Alan Modra <amodra@gmail.com>
+
+ PR 20060
+ * elf64-ppc.c (ppc64_elf_tls_setup): Clear forced_local.
+ * elf32-ppc.c (ppc_elf_tls_setup): Likewise.
+
+2016-05-10 Jiong Wang <jiong.wang@arm.com>
+
+ * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Remove redundant
+ aarch64_tls_transition check.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (enum elf32_arm_stub_type): New max_stub_type
+ enumerator.
+ (arm_stub_sym_claimed): New function.
+ (elf32_arm_create_stub): Use veneered symbol name and section if
+ veneer needs to claim its symbol, and keep logic unchanged otherwise.
+ (arm_stub_claim_sym): New function.
+ (arm_map_one_stub): Call arm_stub_claim_sym if veneer needs to claim
+ veneered symbol, otherwise create local symbol as before.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (elf32_arm_size_stubs): Use new macros
+ ARM_GET_SYM_BRANCH_TYPE and ARM_SET_SYM_BRANCH_TYPE to respectively get
+ and set branch type of a symbol.
+ (bfd_elf32_arm_process_before_allocation): Likewise.
+ (elf32_arm_relocate_section): Likewise and fix identation along the
+ way.
+ (allocate_dynrelocs_for_symbol): Likewise.
+ (elf32_arm_finish_dynamic_symbol): Likewise.
+ (elf32_arm_swap_symbol_in): Likewise.
+ (elf32_arm_swap_symbol_out): Likewise.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * bfd-in.h (elf32_arm_size_stubs): Add an output section parameter.
+ * bfd-in2.h: Regenerated.
+ * elf32-arm.c (struct elf32_arm_link_hash_table): Add an output section
+ parameter to add_stub_section callback.
+ (elf32_arm_create_or_find_stub_sec): Get output section from link_sec
+ and pass it down to add_stub_section.
+ (elf32_arm_add_stub): Set section to stub_sec if NULL before using it
+ for error message.
+ (elf32_arm_size_stubs): Add output section parameter to
+ add_stub_section function pointer parameter.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (elf32_arm_create_stub): New function.
+ (elf32_arm_size_stubs): Use elf32_arm_create_stub for stub creation.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (enum elf32_arm_stub_type): Delete
+ arm_stub_a8_veneer_lwm enumerator.
+ (arm_stub_a8_veneer_lwm): New unsigned constant to replace
+ aforementioned enumerator.
+ (struct elf32_arm_stub_hash_entry): Delete target_addend
+ field and add source_value.
+ (struct a8_erratum_fix): Delete addend field and add target_offset.
+ (stub_hash_newfunc): Initialize source_value field amd remove
+ initialization for target_addend.
+ (arm_build_one_stub): Stop special casing Thumb relocations: promote
+ the else to being always executed, moving the
+ arm_stub_a8_veneer_b_cond specific code in it. Remove
+ stub_entry->target_addend from points_to computation.
+ (cortex_a8_erratum_scan): Store in a8_erratum_fix structure the offset
+ to target symbol from start of section rather than the offset from the
+ stub address.
+ (elf32_arm_size_stubs): Set stub_entry's source_value and target_value
+ fields from struct a8_erratum_fix's offset and target_offset
+ respectively.
+ (make_branch_to_a8_stub): Rename target variable to loc. Compute
+ veneered_insn_loc and loc using stub_entry's source_value.
+
+2016-05-10 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ (elf32_arm_merge_eabi_attributes): Add merging logic for
+ Tag_DSP_extension.
+
+2016-05-10 Pip Cet <pipcet@gmail.com>
+
+ PR ld/20059
+ * elfxx-target.h (bfd_elfNN_bfd_copy_link_hash_symbol_type):
+ Define as _bfd_generic_copy_link_hash_symbol_type when using
+ generic hash table.
+
+2016-05-09 Nick Clifton <nickc@redhat.com>
+
+ PR binutils/20063
+ * elf.c (bfd_elf_get_elf_syms): Check for out of range sh_link
+ field before accessing sections array.
+
+2016-05-09 Christophe Monat <christophe.monat@st.com>
+
+ PR ld/20030
+ * elf32-arm.c (is_thumb2_vldm): Account for T1 (DP) encoding.
+ (stm32l4xx_need_create_replacing_stub): Rename ambiguous nb_regs
+ to nb_words.
+ (create_instruction_vldmia): Add is_dp to disambiguate SP/DP
+ encoding.
+ (create_instruction_vldmdb): Likewise.
+ (stm32l4xx_create_replacing_stub_vldm): is_dp detects DP encoding,
+ uses it to re-encode.
+
+2016-05-09 Nick Clifton <nickc@redhat.com>
+
+ PR 19938
+ * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Revert accidental
+ commit.
+
+2016-05-09 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_init_stub_bfd): Remove redundant NULL check.
+
+2016-05-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/17550
+ * elf-bfd.h (elf_link_hash_entry): Update comments for indx,
+ documenting that indx == -3 if symbol is defined in a discarded
+ section.
+ * elflink.c (elf_link_add_object_symbols): Set indx to -3 if
+ symbol is defined in a discarded section.
+ (elf_link_output_extsym): Strip a global symbol defined in a
+ discarded section.
+
+2016-05-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_backend_add_symbol_hook): Defined for Intel
+ MCU.
+
+2016-05-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_convert_load): Extract the GOT load
+ conversion to ...
+ (elf_i386_convert_load_reloc): This. New function.
+ * elf64-x86-64.c (elf_x86_64_convert_load): Extract the GOT load
+ conversion to ...
+ (elf_x86_64_convert_load_reloc): This. New function.
+
+2016-05-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_check_tls_transition): Remove abfd.
+ Don't check if contents == NULL.
+ (elf_i386_tls_transition): Add from_relocate_section. Check
+ from_relocate_section instead of contents != NULL. Update
+ elf_i386_check_tls_transition call.
+ (elf_i386_check_relocs): Cache the section contents if
+ keep_memory is FALSE. Pass FALSE as from_relocate_section to
+ elf_i386_tls_transition.
+ (elf_i386_relocate_section): Pass TRUE as from_relocate_section
+ to elf_i386_tls_transition.
+ (elf_backend_caches_rawsize): New.
+ * elf64-x86-64.c (elf_x86_64_check_tls_transition): Don't check
+ if contents == NULL.
+ (elf_x86_64_tls_transition): Add from_relocate_section. Check
+ from_relocate_section instead of contents != NULL.
+ (elf_x86_64_check_relocs): Cache the section contents if
+ keep_memory is FALSE. Pass FALSE as from_relocate_section to
+ elf_x86_64_tls_transition.
+ (elf_x86_64_relocate_section): Pass TRUE as from_relocate_section
+ to elf_x86_64_tls_transition.
+ (elf_backend_caches_rawsize): New.
+
+2016-05-03 Maciej W. Rozycki <macro@imgtec.com>
+
+ PR 10549
+ * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Handle
+ STB_GNU_UNIQUE.
+
+2016-05-03 Jiong Wang <jiong.wang@arm.com>
+
+ * bfd-in.h (bfd_elf64_aarch64_set_options): Update prototype.
+ * bfd-in2.h (bfd_elf64_aarch64_set_options): Likewise.
+ * elfnn-aarch64.c (bfd_elfNN_aarch64_set_options): Initialize
+ no_apply_dynamic_relocs.
+ (elfNN_aarch64_final_link_relocate): Apply absolute relocations even though
+ dynamic relocations generated.
+
+2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_size_dynamic_sections): Move interp
+ setting to ...
+ (elf_i386_create_dynamic_sections): Here.
+ * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Move
+ interp setting to ...
+ (elf_x86_64_create_dynamic_sections): Here.
+
+2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take GOT_RELOC
+ and replace (EH)->has_got_reloc with GOT_RELOC.
+ (elf_i386_fixup_symbol): Pass has_got_reloc to
+ UNDEFINED_WEAK_RESOLVED_TO_ZERO.
+ (elf_i386_allocate_dynrelocs): Likewise.
+ (elf_i386_relocate_section): Likewise.
+ (elf_i386_finish_dynamic_symbol): Likewise.
+ (elf_i386_convert_load): Pass TRUE to
+ UNDEFINED_WEAK_RESOLVED_TO_ZERO.
+ * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Take
+ GOT_RELOC and replace (EH)->has_got_reloc with GOT_RELOC.
+ (elf_x86_64_fixup_symbol): Pass has_got_reloc to
+ UNDEFINED_WEAK_RESOLVED_TO_ZERO.
+ (elf_x86_64_allocate_dynrelocs): Likewise.
+ (elf_x86_64_relocate_section): Likewise.
+ (elf_x86_64_finish_dynamic_symbol): Likewise.
+ (elf_x86_64_convert_load): Pass TRUE to
+ UNDEFINED_WEAK_RESOLVED_TO_ZERO.
+
+2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (check_relocs_failed): New.
+ (elf_i386_check_relocs): Set check_relocs_failed on error.
+ (elf_i386_relocate_section): Skip if check_relocs failed.
+
+2016-04-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Set
+ check_relocs_failed on error.
+
+2016-04-29 Nick Clifton <nickc@redhat.com>
+
+ PR 19938
+ * elf-bfd.h (struct elf_backend_data): Rename
+ elf_backend_set_special_section_info_and_link to
+ elf_backend_copy_special_section_fields.
+ * elfxx-target.h: Likewise.
+ * elf.c (section_match): Ignore the SHF_INFO_LINK flag when
+ comparing section flags.
+ (copy_special_section_fields): New function.
+ (_bfd_elf_copy_private_bfd_data): Copy the EI_ABIVERSION field.
+ Perform two scans over special sections. The first one looks for
+ a direct mapping between the output section and an input section.
+ The second scan looks for a possible match based upon section
+ characteristics.
+ * elf32-arm.c (elf32_arm_copy_special_section_fields): New
+ function. Handle setting the sh_link field of SHT_ARM_EXIDX
+ sections.
+ * elf32-i386.c (elf32_i386_set_special_info_link): Rename to
+ elf32_i386_copy_solaris_special_section_fields.
+ * elf32-sparc.c (elf32_sparc_set_special_section_info_link):
+ Rename to elf32_sparc_copy_solaris_special_section_fields.
+ * elf64-x86-64.c (elf64_x86_64_set_special_info_link): Rename to
+ elf64_x86_64_copy_solaris_special_section_fields.
+
+2016-04-28 Nick Clifton <nickc@redhat.com>
+
+ * po/zh_CN.po: Updated Chinese (simplified) translation.
+
+2016-04-27 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/20006
+ * elf64-x86-64.c (elf_x86_64_convert_load): Skip debug sections
+ when estimating distances between output sections.
+
+2016-04-27 Alan Modra <amodra@gmail.com>
+
+ * elflink.c (_bfd_elf_is_start_stop): New function.
+ (_bfd_elf_gc_mark_rsec): Use it.
+ * elf-bfd.h (_bfd_elf_is_start_stop): Declare.
+
+2016-04-26 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
+
+ * elf32-rx.c (rx_set_section_contents): Avoid arithmetic on void *.
+ * mmo.c (mmo_get_section_contents): Likewise.
+ (mmo_set_section_contents): Likewise.
+
+2016-04-26 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (elf_link_hash_table): Update comments for
+ dynsymcount.
+ * elflink.c (_bfd_elf_link_renumber_dynsyms): Always count for
+ the unused NULL entry at the head of dynamic symbol table.
+ (bfd_elf_size_dynsym_hash_dynstr): Remove dynsymcount != 0
+ checks.
+
+2016-04-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (_bfd_elf_link_create_dynstrtab): Exclude linker
+ created file from dynobj.
+
+2016-04-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (_bfd_elf_link_create_dynstrtab): Set dynobj to a
+ normal input file if possible.
+
+2016-04-21 Nick Clifton <nickc@redhat.com>
+
+ * aout-adobe.c: Use _bfd_generic_link_check_relocs.
+ * aout-target.h: Likewise.
+ * aout-tic30.c: Likewise.
+ * binary.c: Likewise.
+ * bout.c: Likewise.
+ * coff-alpha.c: Likewise.
+ * coff-rs6000.c: Likewise.
+ * coff64-rs6000.c: Likewise.
+ * coffcode.h: Likewise.
+ * i386msdos.c: Likewise.
+ * i386os9k.c: Likewise.
+ * ieee.c: Likewise.
+ * ihex.c: Likewise.
+ * libbfd-in.h: Likewise.
+ * libecoff.h: Likewise.
+ * mach-o-target.c: Likewise.
+ * mmo.c: Likewise.
+ * nlm-target.h: Likewise.
+ * oasys.c: Likewise.
+ * pef.c: Likewise.
+ * plugin.c: Likewise.
+ * ppcboot.c: Likewise.
+ * som.c: Likewise.
+ * srec.c: Likewise.
+ * tekhex.c: Likewise.
+ * versados.c: Likewise.
+ * vms-alpha.c: Likewise.
+ * xsym.c: Likewise.
+ * elfxx-target.h: Use _bfd_elf_link_check_relocs.
+ * linker.c (bfd_link_check_relocs): New function.
+ (_bfd_generic_link_check_relocs): New function.
+ * targets.c (BFD_JUMP_TABLE_LINK): Add initialization of
+ _bfd_link_check_relocs field.
+ (struct bfd_target)L Add _bfd_link_check_relocs field.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_gc_sweep_hook): Removed.
+ (elf_backend_gc_sweep_hook): Likewise.
+ * elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise.
+ (elf_backend_gc_sweep_hook): Likewise.
+
+2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elflink.c (_bfd_elf_link_check_relocs): Don't check relocations
+ in excluded sections
+
+2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19969
+ * elf64-x86-64.c (check_relocs_failed): New.
+ (elf_x86_64_need_pic): Moved before elf_x86_64_check_relocs.
+ Support relocation agaist local symbol. Set check_relocs_failed.
+ (elf_x86_64_check_relocs): Use elf_x86_64_need_pic. Check
+ R_X86_64_32 relocation overflow.
+ (elf_x86_64_relocate_section): Skip if check_relocs failed.
+ Update one elf_x86_64_need_pic and remove one elf_x86_64_need_pic.
+
+2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_check_relocs): Call
+ _bfd_elf_create_ifunc_sections only for STT_GNU_IFUNC symbol.
+ * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
+
+2016-04-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf-bfd.h (_bfd_elf_link_check_relocs): New.
+ * elflink.c (_bfd_elf_link_check_relocs): New function.
+ (elf_link_add_object_symbols): Call _bfd_elf_link_check_relocs
+ if check_relocs_after_open_input is FALSE.
+
+2016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
+
+ * cache.c: Update old style function definitions.
+ * elf32-m68k.c: Likewise.
+ * elf64-mmix.c: Likewise.
+ * stab-syms.c: Likewise.
+
+2016-04-20 Trevor Saunders <tbsaunde+binutils@tbsaunde.org>
+
+ * elf32-arm.c (put_thumb2_insn): Change argument type to bfd_byte *.
+
+2016-04-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * Makefile.in: Regenerated with automake 1.11.6.
+ * aclocal.m4: Likewise.
+ * doc/Makefile.in: Likewise.
+
+2016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * reloc.c: Add BFD_RELOC_ARC_NPS_CMEM16 entry.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+ * elf32-arc.c: Add 'opcode/arc.h' include.
+ (struct arc_relocation_data): Add symbol_name.
+ (arc_special_overflow_checks): New function.
+ (arc_do_relocation): Use arc_special_overflow_checks, reindent as
+ required, add an extra comment.
+ (elf_arc_relocate_section): Setup symbol_name in reloc_data.
+
+2016-04-14 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * elf32-arc.c (tls_got_entries): Add 'TLS_GOT_' prefix to all
+ entries.
+ (elf_arc_relocate_section): Update enum uses.
+ (elf_arc_check_relocs): Likewise.
+ (elf_arc_finish_dynamic_symbol): Likewise.
+
+2016-04-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf.c (_bfd_elf_copy_private_bfd_data): Replace "link" with
+ "sh_link".
+
+2016-04-14 Nick Clifton <nickc@redhat.com>
+
+ PR target/19938
+ * elf-bbfd.h (struct elf_backend_data): New field:
+ elf_strtab_flags.
+ New field: elf_backend_set_special_section_info_and_link
+ * elfxx-target.h (elf_backend_strtab_flags): Define if not already
+ defined.
+ (elf_backend_set_special_section_info_and_link): Define if not
+ already defined.
+ (elfNN_bed): Use elf_backend_set_special_section_info_and_link and
+ elf_backend_strtab_flags macros to initialise fields in structure.
+ * elf.c (_bfd_elf_make_section_from_shdr): Check for SHF_STRINGS
+ being set even if SHF_MERGE is not set.
+ (elf_fake_sections): Likewise.
+ (section_match): New function. Matches two ELF sections based
+ upon fixed characteristics.
+ (find_link): New function. Locates a section in a BFD that
+ matches a section in a different BFD.
+ (_bfd_elf_copy_private_bfd_data): Copy the sh_info and sh_link
+ fields of reserved sections.
+ (bfd_elf_compute_section_file_positions): Set the flags for the
+ .shstrtab section based upon the elf_strtab_flags field in the
+ elf_backend_data structure.
+ (swap_out_syms): Likewise for the .strtab section.
+ * elflink.c (bfd_elf_final_link): Set the flags for the
+ .strtab section based upon the elf_strtab_flags field in the
+ elf_backend_data structure.
+ * elf32-i386.c (elf32_i386_set_special_info_link): New function.
+ (elf_backend_strtab_flags): Set to SHF_STRINGS for Solaris
+ targets.
+ (elf_backend_set_special_section_info_and_link): Define for
+ Solaris targets.
+ * elf32-sparc.c: Likewise.
+ * elf64-x86-64.c: Likewise.
+
+2016-04-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/19939
+ * elf-bfd.h (_bfd_elf_allocate_ifunc_dyn_relocs): Add a pointer
+ to bfd_boolean.
+ * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Updated.
+ Set *readonly_dynrelocs_against_ifunc_p to TRUE if dynamic reloc
+ applies to read-only section.
+ * elf32-i386.c (elf_i386_link_hash_table): Add
+ readonly_dynrelocs_against_ifunc.
+ (elf_i386_allocate_dynrelocs): Updated.
+ (elf_i386_size_dynamic_sections): Issue an error for read-only
+ segment with dynamic IFUNC relocations only if
+ readonly_dynrelocs_against_ifunc is TRUE.
+ * elf64-x86-64.c (elf_x86_64_link_hash_table): Add
+ readonly_dynrelocs_against_ifunc.
+ (elf_x86_64_allocate_dynrelocs): Updated.
+ (elf_x86_64_size_dynamic_sections): Issue an error for read-only
+ segment with dynamic IFUNC relocations only if
+ readonly_dynrelocs_against_ifunc is TRUE.
+ * elfnn-aarch64.c (elfNN_aarch64_allocate_ifunc_dynrelocs):
+ Updated.
+
+2016-04-06 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * elf32-arm.c (elf32_arm_size_stubs): Move error_ret_free_local to be
+ a fall through from error_ret_free_internal. Free local_syms in
+ error_ret_free_local if allocated from bfd_elf_get_elf_syms ().
+
+2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (plt_do_relocs_for_symbol): Changed.
+ (relocate_plt_for_entry): Likewise.
+
+2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (elf_arc_check_relocs): Changed
+
+2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (name_for_global_symbol): Changed assert.
+ (get_replace_function): Created.:
+ (struct arc_relocation_data): Changed to signed types.
+ (defines S, L, P, PDATA): Casted to signed type.
+ (defines SECTSTART, _SDA_BASE_, TLS_REL): Likewise.
+ (PRINT_DEBUG_RELOC_INFO_BEFORE): Changed.
+ (arc_do_relocation): Changed.
+
+2016-04-05 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (name_for_global_symbol): Added assert to check for
+ symbol index.
+ (elf_arc_relocate_section): Added and changed asserts, validating
+ the synamic symbol index.
+ (elf_arc_finish_dynamic_symbol): Do not fill the dynamic
+ relocation if symbol has dynindx set to -1.
+
+2016-04-05 Maciej W. Rozycki <macro@imgtec.com>
+
+ * elflink.c (elf_link_add_object_symbols): Always turn hidden
+ and internal symbols which have a dynamic index into local
+ ones.
+
+2016-04-04 Nick Clifton <nickc@redhat.com>
+
+ PR 19872
+ * dwarf2.c (parse_comp_unit): Skip warning about unrecognised
+ version number if the version is zero.
+
+2016-04-01 Alan Modra <amodra@gmail.com>
+
+ PR 19886
+ * elflink.c (on_needed_list): Recursively check needed status.
+ (elf_link_add_object_symbols): Adjust.
+
+2016-03-30 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
+
+ * elf32-avr.c (avr_elf32_load_records_from_section): Free
+ internal_relocs only if they aren't cached.
+
+2016-03-29 Nick Clifton <nickc@redhat.com>
+
+ PR 17334
+ * elf32-bfin.c (elf32_bfinfdpic_finish_dynamic_sections): Relax
+ assertion on the size of the got section to allow it to be bigger
+ than the number of relocs.
+
+2016-03-29 Toni Spets <toni.spets@iki.fi>
+
+ PR 19878
+ * coffcode.h (coff_write_object_contents): Revert accidental
+ 2014-11-10 change.
+
+2016-03-22 Alan Modra <amodra@gmail.com>
+
+ PR 19850
+ * dwarf2.c (read_attribute_value): Skip info_ptr check for
+ DW_FORM_flag_present.
+
+2016-03-22 Nick Clifton <nickc@redhat.com>
+
+ * cpu-v850_rh850.c (arch_info_struct): Restore v850-rh850 as an
+ architecture name for backwards compatibility.
+
+ * peXXigen.c (_bfd_XXi_write_codeview_record): Fix possible
+ unbounded stack use.
+
+ * warning.m4 (GCC_WARN_CFLAGS): Only add -Wstack-usage if using a
+ sufficiently recent version of GCC.
+ * configure: Regenerate.
+
+2016-03-22 Alan Modra <amodra@gmail.com>
+
+ PR 19851
+ * plugin.c (try_load_plugin): Avoid -Wstack-usage warning.
+
+2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * archures.c (bfd_mach_arc_nps400): Define.
+ * bfd-in2.h: Regenerate.
+ * cpu-arc.c (arch_info_struct): New entry for nps400, renumber
+ some existing entries to make space.
+ * elf32-arc.c (arc_elf_object_p): Add nps400 case.
+ (arc_elf_final_write_processing): Likewise.
+
+2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * elf32-arc.c (arc_elf_print_private_bfd_data): Remove use of
+ EF_ARC_CPU_GENERIC.
+ (arc_elf_final_write_processing): Don't bother setting cpu field
+ in e_flags, this will have been set elsewhere.
+
2016-03-21 Andrew Burgess <andrew.burgess@embecosm.com>
* elf32-arc.c (arc_elf_final_write_processing): Switch to using