2011-12-19 Chung-Lin Tang <cltang@codesourcery.com>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 9e995a1f72d80113503fa43117fb49a59dddebea..b651abec4e8597d9def6714152118fa929171b63 100644 (file)
@@ -1,3 +1,98 @@
+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
This page took 0.026454 seconds and 4 git commands to generate.