X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=bfd%2FChangeLog;h=3e958a994bb900336fe12cd2b878e8e3a7407d40;hb=fa8f86ff3b8e5b29e3b217abeaa33a747052c43e;hp=1120111a8b1ced59be39f5e59b7c5b55fbca8d62;hpb=b8674692ae6dc6be8d235e2a4cef7f13402f2322;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 1120111a8b..3e958a994b 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,299 @@ +2009-07-10 Tom Tromey + + * Makefile.am (dwarf2.lo): Use dwarf2.h, not elf/dwarf2.h. + (elf-eh-frame.lo): Likewise. + (elf32-bfin.lo): Likewise. + (elf32-frv.lo): Likewise. + (elf32-xc16x.lo): Likewise. + * Makefile.in: Rebuild. + * dwarf2.c: Included dwarf.h, not elf/dwarf2.h. + * elf-eh-frame.c: Likewise. + * elf32-bfin.c: Likewise. + * elf32-frv.c: Likewise. + * elf32-xc16x.c: Likewise. + +2009-07-10 Julian Brown + + * elf32-arm.c (arm_build_one_stub): Use the hash entry of the + symbol a stub entry is derived from, not the entry for the stub + itself, in call to elf32_arm_final_link_relocate. + +2009-07-10 H.J. Lu + + * elf.c (_bfd_elf_get_synthetic_symtab): Remove leading zeros + when reporting addends. + +2009-07-10 Alan Modra + + * elf32-spu.c (spu_elf_size_stubs): Do set up soft-icache manager + data even when no stubs. + (spu_elf_place_overlay_data, spu_elf_build_stubs): Adjust. + +2009-07-10 Alan Modra + + * elf32-ppc.c (ppc_elf_howto_raw): Add R_PPC_IRELATIVE. + (ppc_elf_get_synthetic_symtab): Report addend. + (PLT_IFUNC): Define. + (struct ppc_elf_link_hash_table): Add iplt and reliplt. + (ppc_elf_create_glink): New function. + (ppc_elf_create_dynamic_sections): Use it. + (ppc_elf_add_symbol_hook): Set has_ifunc_symbols. + (update_local_sym_info): Allocate space for local_plt array. + Don't bump local_got_refcounts for PLT_IFUNC. Return local_plt + entry pointer. + (is_branch_reloc): New function. + (ppc_elf_check_relocs): Handle STT_GNU_IFUNC symbols. + (ppc_elf_gc_sweep_hook): Likewise. + (ppc_elf_adjust_dynamic_symbol): Likewise. + (allocate_dynrelocs): Likewise. + (ppc_elf_size_dynamic_sections): Likewise. + (ppc_elf_relocate_section): Likewise. + (branch_reloc_hash_match): Use is_branch_reloc. + (ppc_elf_tls_optimize): Adjust for local_plt. + (write_glink_stub): New function, extracted from.. + (ppc_elf_finish_dynamic_symbol): ..here. Handle STT_GNU_IFUNC. + (ppc_elf_finish_dynamic_sections): Only write plt resolver and + branch table when dynamic. + (elf_backend_post_process_headers): Define. + * elf64-ppc.c (elf_backend_post_process_headers): Define. + (ppc64_elf_howto_raw): Add R_PPC64_IRELATIVE. + (ppc64_elf_get_synthetic_symtab): Report addend. + (struct ppc_stub_hash_entry): Add plt_ent. + (PLT_IFUNC): Define. + (struct ppc_link_hash_table): Add iplt and reliplt. + (create_linkage_sections): Make .iplt and .rela.iplt sections. + (ppc64_elf_add_symbol_hook): Set has_ifunc_symbols. + (update_local_sym_info): Allocate space for local_plt array. + Don't bump local_got_ents for PLT_IFUNC. Return local_plt + entry pointer. + (update_plt_info): Pass pointer to plt_entry rather than sym hash, + and don't change hash flags here. + (is_branch_reloc): New function. + (ppc64_elf_check_relocs): Handle STT_GNU_IFUNC. + (ppc64_elf_gc_sweep_hook): Likewise. + (ppc64_elf_adjust_dynamic_symbol): Likewise. + (allocate_dynrelocs): Likewise. + (ppc64_elf_size_dynamic_sections): Likewise. + (ppc_build_one_stub, ppc_size_one_stub): Likewise. + (ppc64_elf_size_stubs): Likewise. + (ppc64_elf_relocate_section): Likewise. + (get_sym_h): Adjust for local_plt. + (branch_reloc_hash_match): Use is_branch_reloc. + (ppc_type_of_stub): Pass plt_entry pointer and handle ifunc. + (ppc64_elf_toc): Ignore SEC_EXCLUDE sections. + +2009-07-10 Alan Modra + + * elf.c (_bfd_elf_get_synthetic_symtab): Report addends. + +2009-07-10 Alan Modra + + * elf-bfd.h (struct elf_link_hash_entry): Clarify ref_regular + and ref_regular_nonweak comment. + * elflink.c (elf_link_output_extsym): Special case ifunc syms + when def_regular, not ref_regular. + (elf_link_add_object_symbols): Don't set needs_plt on ifunc syms,.. + * elf32-i386.c (elf_i386_check_relocs): ..set it here instead.. + * elf64-x86-64.c (elf64_x86_64_check_relocs): ..and here. + +2009-07-09 Alan Modra + + * elf32-spu.c (mark_functions_via_relocs): Init broken_cycle field + of malloc'd struct call_info. + (pasted_function): Likewise, priority too. + +2009-07-07 Alan Modra + + * elf32-spu.c (spu_elf_auto_overlay): Take into account section + alignment when packing sections into overlays. + +2009-07-03 Cary Coutant + + * dwarf2.c (decode_line_info): Ignore DW_LNE_set_discriminator. + +2009-07-03 Dave Korn + + * coffcode.h (sec_to_styp_flags): Partially revert (functional + changes only) earlier patch:- + + 2009-06-25 Kai Tietz + + * coffcode.h (sec_to_styp_flags): Set discardable for .reloc and + give .debug and .reloc data characteristics. + (DOT_RELOC): New define for .reloc section string. + (coff_write_object_contents): Use DOT_RELOC instead of string. + +2009-07-02 Tom Tromey + + * aoutx.h (aout_get_external_symbols): Declare 'amt' locally. + * bfdwin.c (bfd_free_window): Cast to unsigned long. + +2009-07-01 Nick Clifton + + * elf-m10300.c: Remove trailing white space. + * reloc.c: Likewise. + +2009-07-01 Douglas B Rupp + + * bfd.m4 (BFD_HAVE_TIME_TYPE_MEMBER, + BFD_HAVE_SYS_STAT_TYPE_MEMBER): New config functions. + * configure.in: Use them. + * configure: Regenerate. + * config.in: Regnerate. + * vmsutil.c: Include sysdep.h, remove ansidecl.h. + #define _BSD_SOURCE. Add comments. + (vms_file_stats_name): Calculate creation date based on available + runtime data. Return 1 for version instead of 0. + +2009-07-01 Nick Clifton + + PR 10072 + * elf32-arm.c (elf32_arm_final_link_relocate): Add code to handle + to R_ARM_THM_PC8 relocation. + +2009-06-29 Nick Clifton + + * elf-m10300.c (mn10300_elf_relax_section): Allow for the + different uses of the relocations addend when a symbol is in a + merged section. + +2009-06-27 H.J. Lu + + PR ld/10337 + * elf.c (bfd_section_from_shdr): Don't change sh_link for + SHT_REL/SHT_RELA sections on executable nor shared library. + Treat SHT_REL/SHT_RELA sections with sh_link set to SHN_UNDEF + as a normal section. + +2009-06-25 Nick Clifton + + * elf-m10300.c (mn10300_elf_relax_section): Handle non-section + symbols with SEC_MERGE flag. + +2009-06-25 Kai Tietz + + * coffcode.h (sec_to_styp_flags): Set discardable for .reloc and + give .debug and .reloc data characteristics. + (DOT_RELOC): New define for .reloc section string. + (coff_write_object_contents): Use DOT_RELOC instead of string. + +2009-06-25 Tristan Gingold + + * mach-o-target.c (bfd_mach_o_get_dynamic_symtab_upper_bound) + (bfd_mach_o_canonicalize_dynamic_symtab) + (bfd_mach_o_get_synthetic_symtab): Defines. + (TARGET_NAME_BACKEND): Add bfd_mach_o_print_thread entry. + (TARGET_NAME): Use Mach-O specific functions for dynamic. + + * mach-o-i386.c (bfd_mach_o_i386_swap_reloc_in): Fix howto indexes + for scattered relocations. + (bfd_mach_o_i386_print_thread): New function. + (bfd_mach_o_print_thread): Define. + + * mach-o.c (text_section_names_xlat): Add an entry for __const. + (bfd_mach_o_canonicalize_one_reloc, bfd_mach_o_canonicalize_relocs): + New functions extracted from ... + (bfd_mach_o_canonicalize_reloc): ... This. Simplified. + (bfd_mach_o_get_dynamic_reloc_upper_bound): New function. + (bfd_mach_o_canonicalize_dynamic_reloc): New function. + (bfd_mach_o_i386_flavour_string): Adjusted after enum renaming. + (bfd_mach_o_ppc_flavour_string): Reindentation. Add 64 bits cases. + (bfd_mach_o_scan_read_dylinker): Do not create a section anymore. + Set name_str field. + (bfd_mach_o_scan_read_dylib): Ditto. + (bfd_mach_o_scan_read_thread): Set mdata at declaration. Add comments, + reindent. + (bfd_mach_o_scan_read_dysymtab): Set mdata at declaration. Correctly + decode isym and flags on little endian targets. Set dysymtab field. + (bfd_mach_o_scan_start_address): Adjust for enum names. + (bfd_mach_o_lookup_section): Do not look for segments anymore. + (bfd_mach_o_print_section): Display bfd section name. + (bfd_mach_o_print_segment): Display none if no name. + (bfd_mach_o_print_dysymtab): Display next index for local, external + and undefined symbols. + (bfd_mach_o_bfd_print_private_bfd_data): Adjust code by using name_str. + Display dylinker name. Display thread and unixthread commands content. + (bfd_mach_o_print_thread): New macro. + + * mach-o.h (bfd_mach_o_mach_header_magic): Align numbers. + (bfd_mach_o_ppc_thread_flavour): Ditto. + (bfd_mach_o_i386_thread_flavour): Ditto. + (BFD_MACH_O_PPC_THREAD_STATE_NONE): New enum. + (BFD_MACH_O_x86_THREAD_STATE_NONE): Replaces + BFD_MACH_O_THREAD_STATE_NONE. + (bfd_mach_o_segment_command): Remove segment field. + (bfd_mach_o_thread_flavour): Field offset is now unsigned long. + (bfd_mach_o_dylinker_command): Remove section field, add name_str. + (bfd_mach_o_prebound_dylib_command): Ditto. + (bfd_mach_o_dylib_command): Ditto. + (bfd_mach_o_prebound_dylib_command): Remove section field. + (mach_o_data_struct): Add dysymtab field. + (bfd_mach_o_backend_data): Add _bfd_mach_o_print_thread field. + (bfd_mach_o_get_reloc_upper_bound, bfd_mach_o_canonicalize_reloc) + (bfd_mach_o_build_commands): Remove parameter names and attributes. + (bfd_mach_o_get_dynamic_reloc_upper_bound) + (bfd_mach_o_canonicalize_dynamic_reloc): New prototypes. + +2009-06-25 Rafael Avila de Espindola + + * plugin.c (load_plugin): Use stat and S_ISREG instead of the d_type + field of struct dirent. + +2009-06-23 Tristan Gingold + + * vms.c (vms_get_synthetic_symtab): Remove duplicate definition + of this macro. Fix indentation. + +2009-06-22 Christophe Lyon + + * elf32-arm.c (elf32_arm_size_stubs): Use PLT address as + destination for defined dynamic symbols when deciding whether to + insert a stub or not. + (allocate_dynrelocs): Make sure functions are not marked as Thumb + when actually accessed through a PLT, even when generating a + shared lib. + +2009-06-22 Tristan Gingold + + * mach-o.c (bfd_mach_o_canonicalize_reloc): Append a sentinel to + the relocs array. + +2009-06-22 Alan Modra + + * elf32-ppc.c (ppc_elf_check_relocs): Handle R_PPC_RELAX* in switch. + * elf32-v850.c (v850_elf_relocate_section): Warning fix. + +2009-06-22 Alan Modra + + * elf64-ppc.c (ppc64_elf_edit_opd): Avoid gcc warning. + +2009-06-19 H.J. Lu + + * elflink.c (elf_link_add_object_symbols): Avoid warning + from -Wjump-misses-init in gcc 4.5.0. + +2009-06-19 H.J. Lu + + * elf32-i386.c (elf_i386_check_relocs): Properly check local + symbol on error. + * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise. + +2009-06-19 H.J. Lu + + * elf32-i386.c (elf_i386_tls_transition): Add a parameter, + r_symndx. Report local symbol name on error. + (elf_i386_check_relocs): Updated. Report local symbol name on + error. + (elf_i386_gc_sweep_hook): Updated. + (elf_i386_relocate_section): Likewise. + + * elf64-x86-64.c (elf64_x86_64_tls_transition): Add a parameter, + r_symndx. Report local symbol name on error. + (elf64_x86_64_check_relocs): Updated. Report local symbol name + on error. + (elf64_x86_64_gc_sweep_hook): Updated. + (elf64_x86_64_relocate_section): Likewise. + 2009-06-19 Tristan Gingold * mach-o.c (bfd_mach_o_print_private_header): Fix format character.