+2011-10-10 Nick Clifton <nickc@redhat.com>
+
+ * po/es.po: Updated Spanish translation.
+ * po/fi.po: Updated Finnish translation.
+ * po/fr.po: Updated French translation.
+ * po/ru.po: Updated Russian translation.
+
+2011-10-10 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_howto_table): Add R_PPC64_TOCSAVE entry.
+ (struct ppc_link_hash_table): Add tocsave_htab.
+ (struct tocsave_entry): New.
+ (tocsave_htab_hash, tocsave_htab_eq, tocsave_find): New functions.
+ (ppc64_elf_link_hash_table_create): Create tocsave_htab..
+ (ppc64_elf_link_hash_table_free): ..and delete it.
+ (build_plt_stub): Always put STD_R2_40R1 first.
+ (ppc64_elf_size_stubs): Check for R_PPC64_TOCSAVE following reloc
+ on plt call. If present add prologue nop location to tocsave_htab.
+ (ppc64_elf_relocate_section): Convert prologue nop to std. Skip
+ first insn of plt call stub when R_PPC64_TOCSAVE present.
+
+2011-10-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/13250
+ * elflink.c (elf_link_add_object_symbols): Preserve the maximum
+ alignment and size for common symbols.
+
+2011-10-08 Alan Modra <amodra@gmail.com>
+
+ PR ld/13229
+ PR ld/13244
+ * elflink.c (elf_link_add_object_symbols): Don't make IR symbols
+ dynamic.
+
+2011-10-08 Alan Modra <amodra@gmail.com>
+
+ PR ld/13229
+ * elflink.c (elf_link_output_extsym): Strip defined plugin symbols
+ even when strip_discarded is false.
+
+2011-10-05 Kai Tietz <ktietz@redhat.com>
+
+ * coffgen.c (coff_write_alien_symbol): Don't write
+ symbol for discarded sections, if strip_discarded isn't
+ explicit set to false.
+ (coff_write_native_symbol): Likewise.
+
+2011-10-05 DJ Delorie <dj@redhat.com>
+ Nick Clifton <nickc@redhat.com>
+
+ * elf32-rx.c: Add support for PID mode.
+ (rx_elf_relocate_section): Add checks for unsafe PID relocations.
+ Include addend in R_RX_SYM relocations.
+
+2011-09-30 Tristan Gingold <gingold@adacore.com>
+
+ * dwarf2.c (struct dwarf2_debug): Add field debug_sections.
+ (read_section): Add sec argument. Adjust the code to get section
+ names from it.
+ (read_indirect_string): Adjust call to read_section.
+ (read_abbrevs): Ditto.
+ (decode_line_info): Ditto.
+ (read_debug_ranges): Ditto.
+ (DWARF2_DEBUG_INFO, DWARF2_COMPRESSED_DEBUG_INFO): Remove.
+ (find_debug_info): Add debug_sections parameter. Use it instead
+ the above macros.
+ (place_sections): Get section names from stash.
+ (find_line): Add debug_sections argument. Initialize
+ debug_sections field of stash from it.
+ Adjust calls to find_debug_info.
+ (_bfd_dwarf2_find_nearest_line): Add debug_sections argument.
+ Adjust call to find_line.
+ (_bfd_dwarf2_find_line): Adjust call to find_line.
+ * libcoff-in.h (struct dwarf_debug_section): New declaration.
+ (coff_find_nearest_line_with_names): Likewise.
+ * libcoff.h: Regenerate.
+ * libbfd-in.h (struct dwarf_debug_section): Move declaration.
+ (dwarf_debug_sections): Likewise.
+ (_bfd_dwarf2_find_nearest_line): Add debug_sections argument.
+ * libbfd.h: Regenerate.
+ * elf.c (_bfd_elf_find_nearest_line): Adjust call to
+ _bfd_dwarf2_find_nearest_line.
+ * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Ditto.
+ * elf64-alpha.c (elf64_alpha_find_nearest_line): Ditto.
+ * elf32-arm.c (elf32_arm_find_nearest_line): Ditto.
+ * coffgen.c (coff_find_nearest_line_with_names): New function.
+ (coff_find_nearest_line): Calls coff_find_nearest_line_with_names.
+ * coff-rs6000.c (xcoff_debug_sections): New constant.
+ (xcoff_find_nearest_line): New function.
+ (rs6000coff_vec): Use xcoff_find_nearest_line.
+ (pmac_xcoff_vec): Ditto.
+
+2011-09-30 Alan Modra <amodra@gmail.com>
+
+ PR ld/13235
+ * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add ha_relocs_not_using_r2.
+ (ppc64_elf_edit_toc): Check HA relocs.
+ (ha_reloc_match): Delete function.
+ (ppc64_elf_relocate_section): Remove delayed HA nop optimization.
+ Instead do it and low part optimization based on
+ ha_relocs_not_using_r2.
+
+2011-09-29 Alan Modra <amodra@gmail.com>
+
+ PR ld/13233
+ * elflink.c (_bfd_elf_gc_mark_extra_sections): Mark single member
+ debug and special section groups.
+
+2011-09-29 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/13195
+ * elflink.c (_bfd_elf_merge_symbol): Don't set dynamic_def when
+ clearing def_dynamic.
+ (elf_link_add_object_symbols): Likewise. Set dynamic_def when
+ setting def_dynamic.
+ (bfd_elf_gc_mark_dynamic_ref_symbol): Check if a symbol is
+ versioned.
+
+2011-09-27 Kai Tietz <ktietz@redhat.com>
+
+ * coffcode.h (sec_to_styp_flags): Handle
+ SEC_LINK_DUPLICATES_SAME_CONTENTS, and
+ SEC_LINK_DUPLICATES_SAME_SIZE.
+
+2011-09-22 Tristan Gingold <gingold@adacore.com>
+
+ * configure.in: Bump version to 2.22.51
+ * configure: Regenerate.
+
+2011-09-21 David S. Miller <davem@davemloft.net>
+
+ * elfxx-sparc.c (_bfd_sparc_elf_merge_private_bfd_data): New.
+ * elfxx-sparc.h: Declare it.
+ * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Call it.
+ * elf64-sparc.c (elf64_sparc_merge_private_bfd_data): Likewise.
+
+2011-09-21 Tristan Gingold <gingold@adacore.com>
+
+ * mach-o.c (bfd_mach_o_convert_section_name_to_bfd): Add comment.
+ Deals with size limited strings.
+ (bfd_mach_o_build_commands): Initialize more fields.
+
+2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/13177
+ * elflink.c (elf_gc_sweep_symbol): Also hide symbols without PLT
+ nor GOT references.
+
+2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/12975
+ * bfd-in.h (bfd_elf_size_dynamic_sections): Remove pointer
+ to struct bfd_elf_version_tree.
+
+ * elflink.c (elf_info_failed): Remove verdefs.
+ (_bfd_elf_export_symbol): Updated.
+ _bfd_elf_link_assign_sym_version): Likewise.
+ (bfd_elf_size_dynamic_sections): Remove pointer to struct
+ bfd_elf_version_tree. Updated.
+ (bfd_elf_gc_mark_dynamic_ref_symbol): Check if a symbol is hidden
+ by linker script.
+
+ * linker.c (bfd_hide_sym_by_version): New.
+
+ * bfd-in2.h: Regenerated.
+
+2011-09-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/13178
+ * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Use .got.plt
+ if there are no GOT relocations.
+
+2011-09-09 Kai Tietz <ktietz@redhat.com>
+
+ * peicode.h (pe_ILF_build_a_bfd): Don't remove leading underscore
+ for targets without symbol_leading_char.
+
+2011-09-08 Bernd Jendrissek <bernd.jendrissek@gmail.com>
+
+ * bfdwin.c (bfd_get_file_window): Fix memory leak.
+
+2011-09-07 Alan Modra <amodra@gmail.com>
+
+ PR ld/13131
+ * bfd/elf64-ppc.c (adjust_toc_syms): Ensure ppc64_elf_howto_table
+ is initialized.
+
+2011-09-06 Alan Modra <amodra@gmail.com>
+
+ PR ld/13131
+ * elf64-ppc.c (adjust_toc_syms): Delete redundant code.
+ (ppc64_elf_edit_toc): Fix style nit. Report some details
+ on linker failure due to reference in debug or non-alloc
+ sections to optimized away toc entry, and don't abort.
+
+2011-09-01 Christophe Lyon <christophe.lyon@st.com>
+
+ * elf32-arm.c (elf32_arm_output_arch_local_syms): Skip excluded
+ sections.
+
+2011-08-26 Nick Clifton <nickc@redhat.com>
+
+ * po/es.po: Updated Spanish translation.
+
+2011-08-19 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_edit_toc): Ignore can_optimize bit if
+ we haven't seen expected -mcmodel=medium/large code relocs.
+
+2011-08-18 Tristan Gingold <gingold@adacore.com>
+
+ * mach-o.c (bfd_mach_o_read_segment): Initialize list.
+
+2011-08-17 Tristan Gingold <gingold@adacore.com>
+
+ * mach-o.c (bfd_mach_o_write_section_32): Fix typo.
+
+2011-08-17 Alan Modra <amodra@gmail.com>
+
+ PR ld/12762
+ * bfd-in.h (struct bfd_section_already_linked): Forward declare.
+ (_bfd_handle_already_linked): Declare.
+ * coff-alpha.c (_bfd_ecoff_section_already_linked): Define as
+ _bfd_coff_section_already_linked.
+ * coff-mips.c (_bfd_ecoff_section_already_linked): Likewise.
+ * coffcode.h (coff_section_already_linked): Likewise.
+ * cofflink.c (coff_link_add_symbols): Revert 2011-07-09 changes.
+ * elf-bfd.h: Likewise.
+ * libbfd-in.h: Likewise.
+ * targets.c: Likewise.
+ * linker.c (bfd_section_already_linked): Likewise.
+ (bfd_section_already_linked_table_lookup): Likewise.
+ (bfd_section_already_linked_table_insert): Likewise.
+ (_bfd_generic_section_already_linked): Likewise. Call
+ _bfd_handle_already_linked.
+ (_bfd_handle_already_linked): New function, split out from..
+ * elflink.c (_bfd_elf_section_already_linked): ..here. Revert
+ 2011-07-09 changes. Avoid unnecessary strcmp when matching
+ already_linked_list entries. Match plugin linkonce section.
+ (section_signature): Delete.
+ * coffgen.c (_bfd_coff_section_already_linked): New function.
+ * libcoff-in.h (_bfd_coff_section_already_linked): Declare.
+ * libbfd.h: Regenerate.
+ * libcoff.h: Regenerate.
+ * bfd-in2.h: Regenerate.
+
+2011-08-14 Alan Modra <amodra@gmail.com>
+
+ * elf32-ppc.c (ppc_elf_select_plt_layout): Force bss-plt when
+ shared and call to _mcount will go via plt.
+
+2011-08-14 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c: Prefix all einfo error strings with "%P: ".
+ * elf32-ppc.c: Likewise.
+ (ppc_elf_select_plt_layout): Use einfo rather than info to report
+ forced bss-plt.
+
+2011-08-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/13082
+ * elf64-x86-64.c (x86_64_elf_howto_table): Add R_X86_64_RELATIVE64.
+ (elf_x86_64_relocate_section): Treat R_X86_64_64 like R_X86_64_32
+ and zero-extend it to 64bit if addend is zero for x32. Generate
+ R_X86_64_RELATIVE64 for x32.
+