* elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 6503f5c14c4108d0da99d5c9092cbf3f5ca4a5ee..019a05aee0a4aaf0681c7c5e6fff5fecefddbee7 100644 (file)
@@ -1,3 +1,175 @@
+2012-03-01  Alan Modra  <amodra@gmail.com>
+
+       * elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning.
+
+2012-02-27  Alan Modra  <amodra@gmail.com>
+
+       * elf32-sh.c (sh_elf_osec_to_segment): Check for elf flavour bfd
+       before calling elf specific function.
+       (sh_elf_osec_readonly_p): Test for error return from above.
+
+2012-02-27  Alan Modra  <amodra@gmail.com>
+
+       * elf32-spu.c (build_stub): Fix malloc under-allocation.
+
+2012-02-25  Walter Lee  <walt@tilera.com>
+       * reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL,
+       BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD,
+       BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD,
+       BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD,
+       BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD,
+       BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE,
+       BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE,
+       BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO,
+       BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO,
+       BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI,
+       BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI,
+       BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA,
+       BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA,
+       BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE,
+       BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE,
+       BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE,
+       BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE,
+       BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE,
+       BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE,
+       BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD,
+       BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD,
+       BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD,
+       BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD,
+       BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD,
+       BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD,
+       BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD.
+       Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT,
+       BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT,
+       BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT,
+       BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT,
+       BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT,
+       BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT,
+       BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT,
+       BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT,
+       BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD,
+       BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD,
+       BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD,
+       BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD,
+       BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD,
+       BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD,
+       BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD,
+       BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD,
+       BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE,
+       BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE,
+       BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE,
+       BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE,
+       BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE,
+       BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE,
+       BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE,
+       BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE.
+       * elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro
+       relocations.
+       (tilepro_reloc_map): Ditto.
+       (tilepro_info_to_howto_rela): Ditto.
+       (reloc_to_create_func): Ditto.
+       (tilepro_tls_translate_to_le): New.
+       (tilepro_tls_translate_to_ie): New.
+       (tilepro_elf_tls_transition): New.
+       (tilepro_elf_check_relocs): Handle new tls relocations.
+       (tilepro_elf_gc_sweep_hook): Ditto.
+       (allocate_dynrelocs): Ditto.
+       (tilepro_elf_relocate_section): Ditto.
+       (tilepro_replace_insn): New.
+       (insn_mask_X1): New.
+       (insn_mask_X0_no_dest_no_srca): New
+       (insn_mask_X1_no_dest_no_srca): New
+       (insn_mask_Y0_no_dest_no_srca): New
+       (insn_mask_Y1_no_dest_no_srca): New
+       (srca_mask_X0): New
+       (srca_mask_X1): New
+       (insn_tls_le_move_X1): New
+       (insn_tls_le_move_zero_X0X1): New
+       (insn_tls_ie_lw_X1): New
+       (insn_tls_ie_add_X0X1): New
+       (insn_tls_ie_add_Y0Y1): New
+       (insn_tls_gd_add_X0X1): New
+       (insn_tls_gd_add_Y0Y1): New
+       * elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx
+       relocations.
+       (tilegx_reloc_map): Ditto.
+       (tilegx_info_to_howto_rela): Ditto.
+       (reloc_to_create_func): Ditto.
+       (tilegx_elf_link_hash_table): New field disable_le_transition.
+       (tilegx_tls_translate_to_le): New.
+       (tilegx_tls_translate_to_ie): New.
+       (tilegx_elf_tls_transition): New.
+       (tilegx_elf_check_relocs): Handle new tls relocations.
+       (tilegx_elf_gc_sweep_hook): Ditto.
+       (allocate_dynrelocs): Ditto.
+       (tilegx_elf_relocate_section): Ditto.
+       (tilegx_copy_bits): New.
+       (tilegx_replace_insn): New.
+       (insn_mask_X1): New.
+       (insn_mask_X0_no_dest_no_srca): New.
+       (insn_mask_X1_no_dest_no_srca): New.
+       (insn_mask_Y0_no_dest_no_srca): New.
+       (insn_mask_Y1_no_dest_no_srca): New.
+       (insn_mask_X0_no_operand): New.
+       (insn_mask_X1_no_operand): New.
+       (insn_mask_Y0_no_operand): New.
+       (insn_mask_Y1_no_operand): New.
+       (insn_tls_ie_ld_X1): New.
+       (insn_tls_ie_ld4s_X1): New.
+       (insn_tls_ie_add_X0X1): New.
+       (insn_tls_ie_add_Y0Y1): New.
+       (insn_tls_ie_addx_X0X1): New.
+       (insn_tls_ie_addx_Y0Y1): New.
+       (insn_tls_gd_add_X0X1): New.
+       (insn_tls_gd_add_Y0Y1): New.
+       (insn_move_X0X1): New.
+       (insn_move_Y0Y1): New.
+       (insn_add_X0X1): New.
+       (insn_add_Y0Y1): New.
+       (insn_addx_X0X1): New.
+       (insn_addx_Y0Y1): New.
+       * libbfd.h: Regenerate.
+       * bfd-in2.h: Regenerate.
+
+2012-02-25  Walter Lee  <walt@tilera.com>
+
+       * config.bfd (tilegx-*-*): rename little endian vector; add big
+       endian vector.
+       (tilegxbe-*-*): New case.
+       * configure.in (bfd_elf32_tilegx_vec): Rename...
+       (bfd_elf32_tilegx_le_vec): ... to this.
+       (bfd_elf32_tilegx_be_vec): New vector.
+       (bfd_elf64_tilegx_vec): Rename...
+       (bfd_elf64_tilegx_le_vec): ... to this.
+       (bfd_elf64_tilegx_be_vec): New vector.
+       * configure: Regenerate.
+       * elf32-tilegx.c (TARGET_LITTLE_SYM): Rename.
+       (TARGET_LITTLE_NAME): Ditto.
+       (TARGET_BIG_SYM): Define.
+       (TARGET_BIG_NAME): Define.
+       * elf64-tilegx.c (TARGET_LITTLE_SYM): Rename.
+       (TARGET_LITTLE_NAME): Ditto.
+       (TARGET_BIG_SYM): Define.
+       (TARGET_BIG_NAME): Define.
+       * targets.c (bfd_elf32_tilegx_vec): Rename...
+       (bfd_elf32_tilegx_le_vec): ... to this.
+       (bfd_elf32_tilegx_be_vec): Declare.
+       (bfd_elf64_tilegx_vec): Rename...
+       (bfd_elf64_tilegx_le_vec): ... to this.
+       (bfd_elf64_tilegx_be_vec): Declare.
+       (_bfd_target_vector): Add / rename above vectors.
+       * arctures.c (bfd_architecture): Define bfd_mach_tilegx32.
+       * bfd-in2.h: Regenerate.
+       * cpu-tilegx.c (bfd_tilegx32_arch): define.
+       (bfd_tilegx_arch): link to bfd_tilegx32_arch.
+
+2012-02-24  Nick Clifton  <nickc@redhat.com>
+
+       PR ld/13730
+       * reloc.c (bfd_generic_get_relocated_section_contents): Issue an
+       error message instead of aborting, when an outofrange reloc is
+       encountered.
+
 2012-02-23  Iain Sandoe  <idsandoe@googlemail.com>
 
        * mach-o.c (bfd_mach_o_swap_in_non_scattered_reloc): New.
This page took 0.024397 seconds and 4 git commands to generate.