+2011-12-19 Chung-Lin Tang <cltang@codesourcery.com>
+
+ * reloc.c (BFD_RELOC_MIPS16_TLS_GD,BFD_RELOC_MIPS16_TLS_LDM,
+ BFD_RELOC_MIPS16_TLS_DTPREL_HI16,BFD_RELOC_MIPS16_TLS_DTPREL_LO16,
+ BFD_RELOC_MIPS16_TLS_GOTTPREL,BFD_RELOC_MIPS16_TLS_TPREL_HI16,
+ BFD_RELOC_MIPS16_TLS_TPREL_LO16): New relocations for MIPS16 TLS.
+ * bfd-in2.h (bfd_reloc_code_real): Regenerate.
+ * libbfd.h (bfd_reloc_code_real_names): Regenerate.
+ * elf32-mips.c (elf_mips16_howto_table_rel): Add R_MIPS16_TLS_*
+ entries.
+ (mips16_reloc_map): Add BFD_RELOC_MIPS16_TLS_* to R_MIPS16_TLS_*
+ mappings.
+ * elfn32-mips.c (elf_mips16_howto_table_rel,
+ elf_mips16_howto_table_rela): Add R_MIPS16_TLS_* entries.
+ (mips16_reloc_map): Add BFD_RELOC_MIPS16_TLS_* to R_MIPS16_TLS_*
+ mappings.
+ * elf64-mips.c (mips16_elf64_howto_table_rel,
+ mips16_elf64_howto_table_rela): Add R_MIPS16_TLS_* entries.
+ (mips16_reloc_map): Add BFD_RELOC_MIPS16_TLS_* to R_MIPS16_TLS_*
+ mappings.
+ * elfxx-mips.c (TLS_RELOC_P,mips16_reloc_p,
+ _bfd_mips_elf_check_relocs): Add cases for R_MIPS16_TLS_* relocations.
+ (tls_gd_reloc_p): Add R_MIPS16_TLS_GD case.
+ (tls_ldm_reloc_p): Add R_MIPS16_TLS_LDM case.
+ (tls_gottprel_reloc_p): Add R_MIPS16_TLS_GOTTPREL case.
+ (mips_elf_calculate_relocation): Add cases for R_MIPS16_TLS_*,
+ R_MIPS_TLS_DTPREL32/64, and R_MIPS_TLS_TPREL32/64 relocations.
+
+2011-12-19 Chung-Lin Tang <cltang@codesourcery.com>
+ Catherine Moore <clm@codesourcery.com>
+ Sandra Loosemore <sandra@codesourcery.com>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * elfxx-mips.c (mips_elf_local_pic_function_p): Return true when
+ H is a MIPS16 function with a kept 32-bit stub. Update comments.
+ (mips_elf_get_la25_target): New function.
+ (mips_elf_add_la25_intro): Change to use mips_elf_get_la25_target().
+ (mips_elf_add_la25_stub): Move compute of use_trampoline_p down,
+ change to use mips_elf_get_la25_target().
+ (mips_elf_relocation_needs_la25_stub): Add target_is_16_bit_code_p
+ parameter, add switch case for R_MIPS16_26.
+ (mips_elf_calculate_relocation): Redirect relocation to point to the
+ LA25 stub if it exists, instead of the MIPS16 stub. Update arguments
+ of call to mips_elf_relocation_needs_la25_stub(), don't use la25 stub
+ for mips16->mips16 calls.
+ (_bfd_mips_elf_check_relocs): Update arguments of call to
+ mips_elf_relocation_needs_la25_stub().
+ (mips_elf_create_la25_stub): Change to use mips_elf_get_la25_target().
+
+2011-12-16 Shinichiro Hamaji <shinichiro.hamaji@gmail.com>
+
+ * mach-o-i386.c (TARGET_PRIORITY): Define as 0 (top priority)
+ * mach-o-target.c (TARGET_NAME): Use TARGET_PRIORITY
+ * mach-o-x86-64.c (TARGET_PRIORITY): Define as 0 (top priority)
+ * mach-o.c (bfd_mach_o_header_p): Remove special handling for
+ mach-o-i386.
+ (TARGET_PRIORITY) Set 1 for mach-o-be and mach-o-le, and set 0 for
+ mach-o-fat.
+
+2011-12-15 Kevin Buettner <kevinb@redhat.com>
+
+ * elf32-am33lin.c (elf32_am33lin_grok_prstatus): Add case
+ to correspond to a smaller ELF_NGREG defined by the kernel.
+
+2011-12-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (ELF32_DYNAMIC_INTERPRETER): Set to
+ "/lib/ldx32.so.1".
+
+2011-12-15 Iain Sandoe <iains@gcc.gnu.org>
+
+ * mach-o.c (bfd_mach_o_mkobject_init): Initialize dyn_reloc_cache.
+ (bfd_mach_o_close_and_cleanup): Only cleanup Mach-O private data
+ for object files.
+
+2011-12-15 Shinichiro Hamaji <shinichiro.hamaji@gmail.com>
+
+ * mach-o.c (bfd_mach_o_canonicalize_reloc): Update relocation
+ table only when there isn't the cahce.
+ (bfd_mach_o_get_dynamic_reloc_upper_bound): Need one more space
+ for a pointer for the watchdog.
+ (bfd_mach_o_canonicalize_dynamic_reloc): Utilize cache like
+ bfd_mach_o_canonicalize_reloc.
+ (bfd_mach_o_close_and_cleanup): Call bfd_mach_o_free_cached_info.
+ (bfd_mach_o_free_cached_info): Free up cache data.
+ * mach-o.h (reloc_cache): A place to store cache of dynamic relocs.
+ (bfd_mach_o_free_cached_info): Add declaration.
+
+2011-12-15 Iain Sandoe <iains@gcc.gnu.org>
+
+ * mach-o-target.c (bfd_mach_o_bfd_set_private_flags): Use
+ bfd_mach_o_bfd_set_private_flags.
+ * mach-o.c (bfd_mach_o_bfd_set_private_flags): New.
+ * mach-o.h (bfd_mach_o_bfd_set_private_flags): Declare.
+
2011-12-14 Nick Clifton <nickc@redhat.com>
PR ld/12451
* elfcode.h (elf_checksum_contents): Read in the section's
- contents if they are not already available.
+ contents if they are not already available, and the section
+ actually has some contents.
+
* compress.c (bfd_get_full_section_contents): Use zmalloc to
allocate the buffers so that excess bytes are guaranteed to be
zero.