+2010-02-23 Andrew Zabolotny <anpaza@mail.ru>
+
+ PR binutils/11297
+ * elf32-avr.c (elf_avr_howto_table): Add R_AVR_8.
+ (avr_reloc_map): Map BFD_RELOC_8 to R_AVR_8.
+
+2010-02-22 Alan Modra <amodra@gmail.com>
+
+ * reloc.c (bfd_check_overflow): When forming addrmask, shift
+ fieldmask left by rightshift.
+ (_bfd_relocate_contents): Likewise. Use rightshift addrmask in all
+ overflow checks.
+
+2010-02-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf64_x86_64_add_symbol_hook): Don't check
+ STT_GNU_IFUNC on large common symbol.
+
+2010-02-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-i386.c (elf_i386_add_symbol_hook): Don't set
+ has_ifunc_symbols if the symbol comes from a shared library.
+ * 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 (elf64_x86_64_add_symbol_hook): Likewise.
+
+2010-02-19 Alan Modra <amodra@gmail.com>
+
+ * elf.c (_bfd_elf_fixup_group_sections): New function, split out from..
+ (_bfd_elf_copy_private_header_data): ..here.
+ * elflink.c (_bfd_elf_size_group_sections): New function.
+ (bfd_elf_size_dynamic_sections): Call it.
+ * elf-bfd.h (_bfd_elf_size_group_sections): Declare.
+ (_bfd_elf_fixup_group_sections): Declare.
+
+2010-02-18 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
+
+ * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add support for
+ merging Tag_DIV_use, Tag_MPextension_use, and
+ Tag_MPextension_use_legacy tags.
+
+2010-02-18 Alan Modra <amodra@gmail.com>
+
+ * elf.c (bfd_elf_set_group_contents): Revert accidental 2009-01-15
+ commit. Don't write zeros for removed group members.
+ (_bfd_elf_copy_private_header_data): Adjust size of group section
+ when group members are removed by objcopy.
+
+2010-02-15 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ PR binutils/11280
+ * configure.host (*-*-solaris2.11): Add host define to select
+ valid default code page for windres/windmc on solaris.
+
+2010-02-15 Nick Clifton <nickc@redhat.com>
+
+ * po/vi.po: Updated Vietnamese translation.
+
+2010-02-12 Daniel Gutson <dgutson@codesourcery.com>
+
+ * elf32-arm.c (elf32_arm_output_arch_local_syms): add
+ missing mapping symbol to data only sections.
+
+2010-02-11 David S. Miller <davem@davemloft.net>
+
+ * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): For R_SPARC_GOTDATA_OP_HIX22
+ and R_SPARC_GOTDATA_OP_LOX10, only bump the GOT refcount for global
+ symbols.
+ (_bfd_sparc_elf_gc_sweep_hook): Likewise only decrement the GOT count for
+ these relocs on global symbols.
+ (gdopoff): New.
+ (_bfd_sparc_elf_relocate_section): Perform GOTDATA optimizations on
+ local symbol references which are not STT_GNU_IFUNC. Handle
+ relocation of them like R_SPARC_HIX22 and R_SPARC_LOX10 respectively,
+ and deal with negative vs. non-negative values properly.
+
+2010-02-09 Tristan Gingold <gingold@adacore.com>
+
+ * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Adjust addend for
+ non-external relocation.
+
+2010-02-09 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (merge_got_entries): Move earlier in file.
+ (allocate_dynrelocs): Merge got entries here if not doing multi-toc.
+ (ppc64_elf_size_dynamic_sections): Similarly merge tlsld_got.
+ (ppc64_elf_layout_multitoc): Don't resize if we have already
+ merged got entries.
+
+2010-02-09 Michael Holzheu <holzheu@de.ibm.com>
+
+ * elf-bfd.h (elfcore_write_s390_timer, elfcore_write_s390_todcmp,
+ elfcore_write_s390_todpreg, elfcore_write_s390_ctrs,
+ elfcore_write_s390_prefix): New.
+ * elf.c (elfcore_write_s390_timer, elfcore_write_s390_todcmp,
+ elfcore_write_s390_todpreg, elfcore_write_s390_ctrs,
+ elfcore_write_s390_prefix): New.
+ (elfcore_grok_note): Handle NT_S390_TIMER, NT_S390_TODCMP,
+ NT_S390_TODPREG, NT_S390_CTRS and NT_S390_PREFIX.
+ (elfcore_write_register_note): Handle .reg-s390-timer,
+ .reg-s390-todcmp, .reg-s390-todpreg, .reg-s390-ctrs,
+ .reg-s390-prefix section.
+
+2010-02-09 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (struct got_entry): Make tls_type and is_indirect
+ unsigned char. Update variables and code using them throughout file.
+ (struct ppc_link_hash_entry): Likewise for tls_mask.
+
+ * elf64-ppc.c (ppc64_elf_layout_multitoc): Don't merge local got ents.
+
+ * elf64-ppc.c (has_small_toc_reloc): Don't define.
+ (makes_toc_func_call, call_check_in_progress): Shuffle flags.
+ (struct ppc64_elf_obj_tdata): Add has_small_toc_reloc. Update
+ code setting the flag.
+ (ppc64_elf_next_toc_section): Group big-toc sections in
+ 0x80008000 chunks.
+
+2010-02-08 David S. Miller <davem@davemloft.net>
+
+ * elfxx-sparc.h (struct _bfd_sparc_elf_link_hash_table): Remove sgot,
+ srelgot, splt, srelplt, and sgotplt members in favor of generic copies.
+
+ * elfxx-sparc.c (create_got_section): Delete.
+ (_bfd_sparc_elf_create_dynamic_sections): Don't call, the dynamic
+ section creator does that work for us. Use ->elf.foo instead of
+ ->foo where applicable.
+ (_bfd_sparc_elf_check_relocs): Use ->elf.foo instead of ->foo
+ where applicable.
+ (allocate_dynrelocs): Likewise.
+ (_bfd_sparc_elf_size_dynamic_sections): Likewise.
+ (_bfd_sparc_elf_relocate_section): Likewise.
+ (sparc_vxworks_build_plt_entry): Likewise.
+ (_bfd_sparc_elf_finish_dynamic_symbol): Likewise.
+ (sparc_finish_dyn): Likewise.
+ (sparc_vxworks_finish_exec_plt): Likewise.
+ (sparc_vxworks_finish_shared_plt): Likewise.
+ (_bfd_sparc_elf_finish_dynamic_sections): Likewise.
+
+ * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Use the SYMBOL_*
+ macros for visibilty and locality checks.
+ (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
+ (allocate_dynrelocs): Likewise.
+ (_bfd_sparc_elf_relocate_section): Likewise.
+ (_bfd_sparc_elf_finish_dynamic_symbol):Likewise.
+
+ * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Remove set
+ but never used local var 'dynobj'.
+
+ * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Handle
+ nocopyreloc.
+
+ * reloc.c (BFD_RELOC_SPARC_JMP_IREL): New.
+ (BFD_RELOC_SPARC_IRELATIVE): Likewise.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
+ * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Add loc_hash_table
+ and loc_hash_memory.
+ (_bfd_sparc_elf_link_hash_table_free): Declare.
+ * elf32-sparc.c (elf32_sparc_add_symbol_hook): New.
+ (elf_backend_add_symbol_hook, elf_backend_post_process_headers,
+ bfd_elf32_bfd_link_hash_table_free): Define.
+ * elf64-sparc.c (elf64_sparc_add_symbol_hook): Set
+ has_ifunc_symbols if STT_GNU_IFUNC.
+ (bfd_elf64_bfd_link_hash_table_free): Define.
+ (elf_backend_post_process_headers): Define always.
+ * elfxx-sparc.c (sparc_jmp_irel_howto, sparc_irelative_howto): New.
+ (sparc_reloc_map): Add entries for new IFUNC relocs.
+ (_bfd_sparc_elf_reloc_type_lookup): Handle new IFUNC relocs.
+ (_bfd_sparc_elf_info_to_howto_ptr): Likewise.
+ (elf_sparc_local_htab_hash, elf_sparc_local_htab_eq,
+ elf_sparc_get_local_sym_hash): New.
+ (_bfd_sparc_elf_create_dynamic_sections): Move PLT ops initialization
+ from here...
+ (_bfd_sparc_elf_link_hash_table_create): ... to here. Allocate
+ local hash table.
+ (_bfd_sparc_elf_link_hash_table_free): New.
+ (create_ifunc_sections): New.
+ (_bfd_sparc_elf_check_relocs): Unconditionally assign htab->elf.dynobj
+ and call create_ifunc_sections(). For local STT_GNU_IFUNC symbols
+ cons up a fake local hash table entry for it. Unconditionally add
+ a PLT refcount for STT_GNU_IFUNC symbols when h->def_regular. Count
+ dyn relocs for ifunc.
+ (_bfd_sparc_elf_adjust_dynamic_symbol): Handle ifunc.
+ (allocate_dynrelocs): Unconditionally emit a PLT entry when
+ STT_GNU_IFUNC and h->def_regular. Count GOT dyn relocs for ifunc.
+ (allocate_local_dynrelocs): New function.
+ (_bfd_sparc_elf_size_dynamic_sections): Invoke it over the local hash
+ table. Emit dynamic relocs to irelplt when not shared. Treat iplt
+ like splt.
+ (_bfd_sparc_elf_relocate_section): Handle ifunc relocations by hand.
+ (_bfd_sparc_elf_finish_dynamic_symbol): Adjust for non-dynamic ifunc
+ plt in iplt/irelplt.
+
2010-02-08 Richard Sandiford <r.sandiford@uk.ibm.com>
* xcofflink.c (_bfd_xcoff_bfd_final_link): When calculating