X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=bfd%2FChangeLog;h=c01b8de78214d6b610eab6848ca60ba97d9d0d6c;hb=e3e71e27a4e81ec1472b900eafec1ebcf583f20e;hp=bf8f14b391a842158ab91a56bcee44b4a111458d;hpb=433817dddee6fed37aa16714f124cbb359d530ee;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/ChangeLog b/bfd/ChangeLog index bf8f14b391..c01b8de782 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,238 @@ +2005-05-19 Zack Weinberg + + * Makefile.am: Have 'all' depend on 'info'. + * Makefile.in: Regenerate. + +2005-05-19 Alan Modra + + * elf-bfd.h (struct elf_link_hash_table): Delete init_refcount and + init_offset. Add init_got_refcount, init_plt_refcount, + init_got_offset and init_plt_offset. + * elf.c (_bfd_elf_link_hash_newfunc): Adjust for above change. + (_bfd_elf_link_hash_hide_symbol): Likewise. + (_bfd_elf_link_hash_table_init): Likewise. + * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise. + * elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise. + * elflink.c (_bfd_elf_adjust_dynamic_symbol): Likewise. + (bfd_elf_size_dynamic_sections): Likewise. + * elf32-ppc.c (GLINK_PLTRESOLVE): Now 16 insns. + (LWZU_0_X_12, LWZ_0_4_30, LWZ_0_X_12, LWZ_11_X_11, LWZ_11_X_30, + LWZ_12_4_12, LWZ_12_8_30, LWZ_12_X_12, SUB_11_11_30): Delete. + (ADDIS_12_12, BCL_20_31, LWZU_0_12, LWZ_0_12, LWZ_11_11, LWZ_11_30, + LWZ_12_12, MFLR_0, MFLR_12, MTLR_0, SUB_11_11_12): Define. + (struct plt_entry): New. + (ppc_elf_link_hash_table_create): Set new init_plt fields. + (ppc_elf_copy_indirect_symbol): Handle merge of plt plist. Don't + use _bfd_elf_link_hash_copy_indirect. + (update_plt_info, find_plt_ent): New functions. + (ppc_elf_check_relocs): Handle R_PPC_PLTREL24 with non-zero addend + and adjust for use of plt list rather than refcount. + (ppc_elf_gc_sweep_hook): Likewise. + (ppc_elf_tls_optimize): Likewise. + (ppc_elf_adjust_dynamic_symbol): Likewise. + (allocate_dynrelocs): Likewise. + (ppc_elf_relax_section): Likewise. + (ppc_elf_relocate_section): Likewise. Adjust R_PPC_PLTREL24 addends + when performing a relocatable link. + (ppc_elf_finish_dynamic_symbol): Likewise. Write .glink stubs here.. + (ppc_elf_finish_dynamic_sections): ..rather than here. Use new + pic resolver stub. + +2005-05-19 Alan Modra + + * elf.c (assign_file_positions_for_segments): Use maximum of + maxpagesize and section alignment when adjusting initial + segment offset and section offsets. + +2005-05-18 Zack Weinberg + + * elf32-arm.c: Make all #ifndef OLD_ARM_ABI blocks + unconditional. + +2005-05-18 H.J. Lu + + * elf.c (group_signature): Undo the last change. Check if the + symbol table section is correct. + +2005-05-17 Zack Weinberg + + * elf32-arm.c: Wherever possible, use official reloc names + from AAELF. + (elf32_arm_howto_table, elf32_arm_tls_gd32_howto) + (elf32_arm_tls_ldo32_howto, elf32_arm_tls_ldm32_howto) + (elf32_arm_tls_le32_howto, elf32_arm_tls_ie32_howto) + (elf32_arm_vtinherit_howto, elf32_arm_vtentry_howto) + (elf32_arm_pc11_howto, elf32_arm_thm_pc9_howto, elf32_arm_got_prel) + (elf32_arm_r_howto): Replace with elf32_arm_howto_table_1, + elf32_arm_howto_table_2, and elf32_arm_howto_table_3. + Add many new relocations from AAELF. + (elf32_arm_howto_from_type): Update to match. + (elf32_arm_reloc_map): Add entries for R_ARM_THM_JUMP24, + R_ARM_THM_JUMP11, R_ARM_THM_JUMP19, R_ARM_THM_JUMP8, + R_ARM_THM_JUMP6, R_ARM_GNU_VTINHERIT, and R_ARM_GNU_VTENTRY. + (elf32_arm_reloc_type_lookup): Use elf32_arm_howto_from_type. + (elf32_arm_final_link_relocate): Add support for + R_ARM_THM_JUMP24, R_ARM_THM_JUMP19, R_ARM_THM_JUMP6. Remove + case entries redundant with default. + + * reloc.c: Reorganize ARM relocations. Add Thumb + assembler-internal relocations BFD_RELOC_ARM_T32_OFFSET_U8, + BFD_RELOC_ARM_T32_OFFSET_IMM, BFD_RELOC_ARM_T32_IMMEDIATE. + Add visible relocations BFD_RELOC_THUMB_PCREL_BRANCH7, + BFD_RELOC_THUMB_BRANCH20, BFD_RELOC_THUMB_BRANCH25. + Delete unused relocations BFD_RELOC_ARM_GOT12, BFD_RELOC_ARM_COPY. + * bfd-in2.h, libbfd.h: Regenerate. + +2005-05-17 Daniel Jacobowitz + + * elf.c (_bfd_elf_write_object_contents): Check for non-NULL + elf_shstrtab. + * format.c (bfd_check_format_matches): Set output_has_begun + for both_direction. + * section.c (bfd_set_section_contents): Use bfd_write_p. Remove + special case for both_direction. + +2005-05-17 Nick Clifton + + * elf.c (group_signature): Check for a group section which is + actually a (corrupt) symbol table section in disguise and prevent + an infinite loop from occurring. + +2005-05-17 H.J. Lu + + * elfxx-ia64.c (elfNN_ia64_relax_brl): Undo the change made on + 2005-02-16. + +2005-05-17 H.J. Lu + + * elfxx-ia64.c (elfNN_ia64_relax_br): Keep the original + predicate on slot 0 only if slot 0 isn't br. + +2005-05-17 H.J. Lu + + PR 797 + * elf32-i386.c (elf_i386_size_dynamic_sections): Also remove + empty sdynbss section. + * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise. + +2005-05-17 Tavis Ormandy + + * elf.c (bfd_section_from_shdr): Add sanity check when parsing + dynamic sections. + +2005-05-17 Alan Modra + + * elf32-ppc.c (LIS_11. LIS_12): Define. + (LWZU_0_X_12, LWZ_0_X_12, LWZ_12_4_12, LWZ_12_X_12): Define. + (ppc_elf_finish_dynamic_sections): Provide non-pic plt call stub + for --data-plt when building non-pie executables. + +2005-05-17 Nick Clifton + + * elf32-arm.c (elf32_arm_final_link_relocate): Gracefully handle + the situation where a symbols's section is not known but a section + relative R_ARM_RELATIVE reloc has to be generated for the Symbian + OS. + + * elf32-v850.c (v850_elf_relocate_section): Move code to test for + the presence of a symbol table to just before the symbol table is + actually used. + +2005-05-16 H.J. Lu + + PR 834 + * elfxx-ia64.c (elfNN_ia64_relax_br): New. + (elfNN_ia64_relax_section): Use it. + +2005-05-14 Mark Kettenis + + * elflink.c (bfd_elf_size_dynamic_sections): Use lbasename instead + of basename. + +2005-05-14 Alan Modra + + * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set DT_PPC_GOT, + not DT_PPC_GLINK. + (ppc_elf_finish_dynamic_sections): Likewise. + +2005-05-13 Fred Fish + + * libbfd-in.h: Fix a comment typo, 'neaderst' -> 'nearest' + * libbfd.h: Rebuilt. + +2005-05-13 Bob Wilson + + * elf32-xtensa.c (xtensa_get_property_section_name): Add missing + periods in linkonce_kind values. + +2005-05-12 H.J. Lu + + * elf32-i386.c (elf_i386_relocate_section): Allow R_386_GOTOFF + against protected function when building executable. + +2005-05-12 Alan Modra + + * elf32-ppc.c (LWZU_0_X_11): Delete. + (B, LWZ_11_X_11, LWZ_11_X_30, MTCTR_11): Define. + (ppc_elf_select_plt_layout): Set .got flags too. Formatting. + (ppc_elf_size_dynamic_sections): Allocate space for .glink branch + table. + (ppc_elf_finish_dynamic_symbol): Point .plt entries into the branch + table. + (ppc_elf_finish_dynamic_sections): Adjust DT_PPC_GLINK value. + Generate .glink branch table and updated stubs. + +2005-05-11 Alan Modra + + * reloc.c (BFD_RELOC_HI16_PCREL): Define. + (BFD_RELOC_HI16_S_PCREL, BFD_RELOC_LO16_PCREL): Define. + * elf32-ppc.c (GLINK_PLTRESOLVE, GLINK_ENTRY_SIZE): Define. + (CROR_151515, CROR_313131): Delete. + (ADDIS_11_11, ADDI_11_11, SUB_11_11_30, ADD_0_11_11, ADD_11_0_11, + LWZ_0_4_30, MTCTR_0, LWZ_12_8_30, BCTR, ADDIS_11_30, + LWZU_0_X_11): Define. + (ppc_elf_howto_raw): Add R_PPC_REL16, R_PPC_REL16_LO, R_PPC_REL16_HI + and R_PPC_REL16_HA entries. + (ppc_elf_reloc_type_lookup): Convert new bfd reloc types. + (ppc_elf_addr16_ha_reloc): Also handle R_PPC_REL16_HA. + (struct ppc_elf_link_hash_table): Add glink, glink_pltresolve, + new_plt, and old_plt. + (ppc_elf_create_dynamic_sections): Create .glink section. + (ppc_elf_check_relocs): Set new_plt and old_plt. + (ppc_elf_select_plt_layout): New function. + (ppc_elf_tls_setup): Set plt output section elf type and flags. + (allocate_got): Handle differences between old and new got layout. + (allocate_dynrelocs): Likewise for plt. + (ppc_elf_size_dynamic_sections): Likewise. Allocate memory for + .glink. Don't allocate memory for old bss .plt. Emit DT_PPC_GLINK. + (ppc_elf_relax_section): Rename ppc_info to htab. Handle .glink + destination of R_PPC_PLTREL24 relocs. + (ppc_elf_relocate_section): Handle new relocs and changed destination + of R_PPC_PLTREL24. + (ppc_elf_finish_dynamic_symbol): Init new style plt and handle + differences in layout. + (ppc_elf_finish_dynamic_sections): Set DT_PPC_GLINK value. Don't + put a blrl in new got. Write glink contents. + * elf32-ppc.h (ppc_elf_select_plt_layout): Declare. + * libbfd.h: Regenerate. + * bfd-in2.h: Regenerate. + +2005-05-11 Andreas Schwab + + * elf32-i386.c (elf_i386_finish_dynamic_sections): Fix signedness + warning. + +2005-05-10 H.J. Lu + + * elf.c (_bfd_elf_make_section_from_shdr): Only check debug + section if SEC_ALLOC isn't set. + +2005-05-09 Kelley Cook + + * configure.in: Replace AC_COMPILE_CHECK_SIZEOF with AC_CHECK_SIZEOF. + * acinclude.m4: Don't sinclude accross.m4. + * config.in, configure, Makefile.in, doc/Makefile.in: Regenerate. + 2005-05-09 Alan Modra * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_dotsym. @@ -129,7 +364,7 @@ (allocate_dynrelocs): Allocate space for static PLT relocations. (elf_i386_size_dynamic_sections): Save shortcuts to PLT and GOT symbols. Give PLT symbols function type. Don't strip PLT sections - if we have exported symbols from them. + if we have exported symbols from them. (elf_i386_finish_dynamic_symbol): Fill in VxWorks PLT static relocation section. Don't mark _GLOBAL_OFFSET_TABLE_ as absolute on VxWorks. @@ -817,7 +1052,7 @@ * coffcode.h (STRING_SIZE_SIZE): Updated to match libcoff-in.h. 2005-04-11 Nick Clifton - + * aout-target.h: Convert to ISO C. * aoutf1.h: Convert to ISO C. * aoutx.h: Convert to ISO C. @@ -901,7 +1136,7 @@ 2005-04-04 H.J. Lu * elf.c (bfd_elf_set_group_contents): Ignore linker created - group section. + group section. (assign_section_numbers): Accept link_info. Check SHT_GROUP sections for relocatable files only. Remove the linker created group sections. @@ -1016,8 +1251,7 @@ * configure.in: Check for ffs decl and alphabetize. * config.in: Regenerate. * configure: Regenerate. - * sysdep.h [NEED_DECLARATION_FFS] (ffs): Prototype and - alphabetize. + * sysdep.h [NEED_DECLARATION_FFS] (ffs): Prototype and alphabetize. 2005-03-29 Fred Fish