]> Git Repo - binutils.git/blobdiff - bfd/ChangeLog
* elf32-ppc.c (ppc_elf_select_plt_layout): Force bss-plt when
[binutils.git] / bfd / ChangeLog
index 0e52185159ab5d746b92cd825a76da3ae0a4acb7..d3ec83004349f2cadd9d46dba497cad43bd57af0 100644 (file)
@@ -1,5 +1,277 @@
+2011-08-14  Alan Modra  <[email protected]>
+
+       * elf32-ppc.c (ppc_elf_select_plt_layout): Force bss-plt when
+       shared and call to _mcount will go via plt.
+
+2011-08-14  Alan Modra  <[email protected]>
+
+       * elf64-ppc.c: Prefix all einfo error strings with "%P: ".
+       * elf32-ppc.c: Likewise.
+       (ppc_elf_select_plt_layout): Use einfo rather than info to report
+       forced bss-plt.
+
+2011-08-12  H.J. Lu  <[email protected]>
+
+       PR ld/13082
+       * elf64-x86-64.c (x86_64_elf_howto_table): Add R_X86_64_RELATIVE64.
+       (elf_x86_64_relocate_section): Treat R_X86_64_64 like R_X86_64_32
+       and zero-extend it to 64bit if addend is zero for x32.  Generate
+       R_X86_64_RELATIVE64 for x32.
+
+2011-08-09  Matthew Gretton-Dann  <[email protected]>
+
+       * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
+       * bfd-in2.h (bfd_elf32_arm_set_target_relocs): Likewise.
+       * elf32-arm.c (elf32_arm_link_hash_table): New field.
+       (elf232_arm_link_hash_table_create): Initialise new field.
+       (check_use_blx): Change test depending on fix_arm1176.
+       (bfd_elf32_arm_set_target_relocs): Set fix_arm1176 from
+       command line options.
+
+2011-08-08  Tristan Gingold  <[email protected]>
+
+       * mach-o.c (struct mach_o_segment_name_xlat): Add comments.
+       (segsec_names_xlat): Reorder elements.
+       (bfd_mach_o_read_section_32): Fix typo.
+       (bfd_mach_o_read_section_64): Fix typo.
+
+2011-08-08  Tristan Gingold  <[email protected]>
+
+       * mach-o.h (BFD_MACH_O_SEGNAME_SIZE): New macro.
+       (BFD_MACH_O_SECTNAME_SIZE): Ditto.
+       (bfd_mach_o_section): Use them.  Add next field.
+       (bfd_mach_o_segment_command): Replace sections array by
+       sect_head and sect_tail.
+       (bfd_mach_o_get_mach_o_section): New macro.
+       (bfd_mach_o_lookup_section): Remove.
+       (bfd_mach_o_new_section_hook): New function.
+       * mach-o.c (bfd_mach_o_normalize_section_name): Use strncmp
+       instead of strcmp.
+       (bfd_mach_o_convert_section_name_to_bfd): Replaces section
+       parameter with segname and sectname parameters.  Adjust.
+       (bfd_mach_o_append_section_to_segment): New function.  Use a
+       linked list for Mach-O sections.
+       (bfd_mach_o_write_segment_32): Adjust.
+       (bfd_mach_o_write_segment_64): Ditto.
+       (bfd_mach_o_build_commands): Fix comment.  Adjust.
+       (bfd_mach_o_flatten_sections): Adjust.
+       (bfd_mach_o_print_section_map): Adjust.
+       (bfd_mach_o_set_section_flags_from_bfd): Ditto.
+       (bfd_mach_o_new_section_hook): New function.
+       (bfd_mach_o_init_section_from_mach_o): Ditto.
+       (bfd_mach_o_read_section_32): Remove section parameter.
+       Return a section instead.
+       (bfd_mach_o_read_section_64): Ditto.
+       (bfd_mach_o_read_section): Ditto.
+       (bfd_mach_o_make_bfd_section): Adjust.
+       (bfd_mach_o_read_segment): Adjust for new profile of
+       bfd_mach_o_read_section.
+       (bfd_mach_o_lookup_section): Remove.
+       * mach-o-target.c (bfd_mach_o_new_section_hook): Remove.
+
+2011-08-08  Tristan Gingold  <[email protected]>
+
+       * mach-o.h (bfd_mach_o_version_min_command): New structure.
+       (bfd_mach_o_load_command): Add version_min.
+       (mach_o_data_struct): Fix comment.
+       * mach-o.c (bfd_mach_o_read_version_min): New function.
+       (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_FUNCTION_STARTS,
+       BFD_MACH_O_LC_VERSION_MIN_MACOSX and
+       BFD_MACH_O_LC_VERSION_MIN_IPHONEOS.
+       (bfd_mach_o_get_name_or_null): New function.
+       (bfd_mach_o_get_name): Use the above new one.
+       (bfd_mach_o_load_command_name): Add the above new commands.
+       (bfd_mach_o_bfd_print_private_bfd_data): Display numerically
+       unknown commands.  Handle BFD_MACH_O_LC_FUNCTION_STARTS,
+       BFD_MACH_O_LC_VERSION_MIN_MACOSX and
+       BFD_MACH_O_LC_VERSION_MIN_IPHONEOS.
+
+2011-08-08  Tristan Gingold  <[email protected]>
+
+       * mach-o.h: Move size macros to external.h
+       Move reloc macros to reloc.h and x86-64.h.
+       * mach-o-i386.c: Includes mach-o/reloc.h
+       * mach-o-x86-64.c: Ditto and includes mach-o/x86-64.h
+       * mach-o.c: Add includes.
+       (bfd_mach_o_write_header): Use structure from external.h to convert.
+       (bfd_mach_o_write_thread): Ditto.
+       (bfd_mach_o_write_relocs): Ditto.
+       (bfd_mach_o_write_section_32): Ditto.
+       (bfd_mach_o_write_section_64): Ditto.
+       (bfd_mach_o_write_segment_32): Ditto.
+       (bfd_mach_o_write_segment_64): Ditto.
+       (bfd_mach_o_write_symtab): Ditto.
+       (bfd_mach_o_write_contents): Ditto.
+       (bfd_mach_o_read_header): Ditto.
+       (bfd_mach_o_read_section_32): Ditto.
+       (bfd_mach_o_read_section_64): Ditto.
+       (bfd_mach_o_read_symtab_symbol): Ditto.
+       (bfd_mach_o_read_dylinker): Ditto.
+       (bfd_mach_o_read_dylib): Ditto.
+       (bfd_mach_o_read_dysymtab): Ditto.
+       (bfd_mach_o_read_symtab): Ditto.
+       (bfd_mach_o_read_linkedit): Ditto.
+       (bfd_mach_o_read_str): Ditto.
+       (bfd_mach_o_read_dyld_info): Ditto.
+       (bfd_mach_o_read_segment): Ditto.
+       (bfd_mach_o_read_command): Ditto.
+       (bfd_mach_o_archive_p): Ditto.
+       (bfd_mach_o_canonicalize_one_reloc): Ditto. Change the BUF parameter.
+       (bfd_mach_o_canonicalize_relocs): Adjust to call the above function.
+       (bfd_mach_o_read_dysymtab_symbol): Rename BUF variable.
+       (bfd_mach_o_read_uuid): Remove useless cast.  Use a macro instead
+       of an hard-coded value.
+
+2011-08-08  Tristan Gingold  <[email protected]>
+
+       * mach-o-x86-64.c (bfd_mach_o_x86_64_mkobject): Fix cut-and-past typos.
+       (bfd_mach_o_x86_64_swap_reloc_out): Handle BFD_RELOC_32_PCREL,
+       BFD_RELOC_MACH_O_X86_64_SUBTRACTOR64 and
+       BFD_RELOC_MACH_O_X86_64_GOT_LOAD.  Share common code.
+
+2011-08-08  Tristan Gingold  <[email protected]>
+
+       * mach-o.c (bfd_mach_o_normalize_section_name): New function.
+       (bfd_mach_o_convert_section_name_to_bfd): Use it.
+       (bfd_mach_o_get_section_type_from_name): New function.
+       (bfd_mach_o_get_section_attribute_from_name): Ditto.
+       * mach-o.h (bfd_mach_o_section): Move bfdsection field at the end.
+       Add comments.  Add prototypes for the above new functions.
+
+2011-08-05  Mark Kettenis  <[email protected]>
+
+       * netbsd-core.c (netbsd_core_vec): Init match_priority field.
+
+2011-08-05  Alan Modra  <[email protected]>
+
+       * elf64-ppc.c (maybe_strip_output): New function.
+       (ppc64_elf_size_stubs): Use it to strip .branch_lt and .eh_frame.
+
+2011-08-05  Alan Modra  <[email protected]>
+
+       PR ld/12762
+       * elflink.c (_bfd_elf_section_already_linked): Return matched
+       status.  Remove COFF comdat section handling.
+       * linker.c (_bfd_generic_section_already_linked): Return matched
+       status.  Don't set SEC_GROUP in l_flags for plugin entries.
+       (bfd_section_already_linked): Update prototype.
+       * targets.c (_section_already_linked): Likewise.
+       * elf-bfd.h (_bfd_elf_section_already_linked): Likewise.
+       * libbfd-in.h (_bfd_generic_section_already_linked): Likewise.
+       (_bfd_nolink_section_already_linked): Update.
+       * libbfd.h: Regenerate.
+       * bfd-in2.h: Regenerate.
+
+2011-08-05  Alan Modra  <[email protected]>
+
+       * elf32-ppc.c: Include dwarf2.h.
+       (struct ppc_elf_link_hash_table): Add glink_eh_frame.
+       (ppc_elf_create_glink): Create .eh_frame section.
+       (glink_eh_frame_cie): New array.
+       (ppc_elf_size_dynamic_sections): Size glink_eh_frame.
+       (ppc_elf_finish_dynamic_sections): Write glink_eh_frame.
+
+2011-08-04  Tristan Gingold  <[email protected]>
+
+       * vms-alpha.c (_bfd_vms_write_eeom): Round vms_linkage_index.
+       (_bfd_vms_write_etir): Initialize vms_linkage_index to 0.
+
+2011-08-03  Tristan Gingold  <[email protected]>
+
+       * mach-o.c (bfd_mach_o_canonicalize_symtab): Handle no symbols case.
+       (bfd_mach_o_read_symtab_symbols): Return if no symbols.
+
+2011-08-02  Maciej W. Rozycki  <[email protected]>
+
+       * elfxx-mips.c (check_4byte_branch): Remove function.
+       (check_relocated_bzc): New function.
+       (_bfd_mips_elf_relax_section): Permit the relaxation of LUI
+       instructions that immediately follow a compact branch
+       instruction.
+
+2011-08-02  Alan Modra  <[email protected]>
+
+       * elf64-ppc.c (build_plt_stub): Correct emitted relocs when no
+       plt_static_chain.
+       (ppc_build_one_stub): Adjust get_relocs call to suit..
+       (ppc_size_one_stub): ..and reloc sizing.  Correct plt size corner case.
+
+2011-08-01  H.J. Lu  <[email protected]>
+
+       PR ld/13048
+       * archures.c (bfd_mach_i386_intel_syntax): New.
+       (bfd_mach_i386_i8086): Updated.
+       (bfd_mach_i386_i386): Likewise.
+       (bfd_mach_x86_64): Likewise.
+       (bfd_mach_x64_32): Likewise.
+       (bfd_mach_i386_i386_intel_syntax): Likewise.
+       (bfd_mach_x86_64_intel_syntax): Likewise.
+       (bfd_mach_x64_32_intel_syntax): Likewise.
+       (bfd_mach_l1om): Likewise.
+       (bfd_mach_l1om_intel_syntax): Likewise.
+       (bfd_mach_k1om): Likewise.
+       (bfd_mach_k1om_intel_syntax): Likewise.
+
+       * bfd-in2.h: Regenerated.
+
+       * cpu-i386.c (bfd_i386_compatible): Check mach instead of
+       bits_per_address.
+       (bfd_x64_32_arch_intel_syntax): Set bits_per_address to 64.
+       (bfd_x64_32_arch): Likewise.
+
+       * elf64-x86-64.c: Include "libiberty.h".
+       (x86_64_elf_howto_table): Append x32 R_X86_64_32.
+       (elf_x86_64_rtype_to_howto): Support x32 R_X86_64_32.
+       (elf_x86_64_reloc_type_lookup): Likewise.
+       (elf_x86_64_reloc_name_lookup): Likewise.
+       (elf_x86_64_relocate_section): Likewise.
+       (elf_x86_64_check_relocs): Allow R_X86_64_64 relocations for x32.
+
+2011-07-29  Maciej W. Rozycki  <[email protected]>
+
+       * elfxx-mips.c (check_br32): Fix return type.
+
+2011-07-29  Maciej W. Rozycki  <[email protected]>
+
+       * elfxx-mips.c (bz_insn_16): Correct opcode mask.
+
+2011-07-29  Maciej W. Rozycki  <[email protected]>
+
+       * elfxx-mips.c: Adjust comments throughout.
+       (mips_elf_relax_delete_bytes): Reshape code.
+       (_bfd_mips_elf_relax_section): Remove check for
+       R_MICROMIPS_GPREL16 relocations.  Reshape code.
+
 2011-07-28  Roland McGrath  <[email protected]>
 
+       * elf32-i386.c (NACL_PLT_ENTRY_SIZE, NACLMASK): New macros.
+       (elf_i386_nacl_plt0_entry): New variable.
+       (elf_i386_plt_entry): New variable.
+       (elf_i386_nacl_pic_plt0_entry): New variable.
+       (elf_i386_nacl_pic_plt_entry): New variable.
+       (elf_i386_nacl_plt, elf_i386_nacl_arch_bed): New variables.
+       (elf_backend_arch_data): New macro setting for elf_i386_nacl_vec stanza.
+       (elf_backend_plt_alignment): Likewise.
+
+       * config.bfd: Handle i[3-7]86-*-nacl*.
+       * elf32-i386.c (bfd_elf32_i386_nacl_vec): New backend vector stanza.
+       * targets.c: Support bfd_elf32_i386_nacl_vec.
+       * configure.in: Likewise.
+       * configure: Regenerated.
+
+       * elf32-i386.c (struct elf_i386_plt_layout): New type.
+       (GET_PLT_ENTRY_SIZE): New macro.
+       (elf_i386_plt): New variable.
+       (struct elf_i386_backend_data): New member `plt'.
+       (elf_i386_arch_bed): Add initializer for it.
+       (elf_i386_vxworks_arch_bed): Likewise.
+       (elf_i386_allocate_dynrelocs): Use GET_PLT_ENTRY_SIZE.
+       (elf_i386_plt_sym_val): Likewise.
+       (elf_i386_relocate_section): Likewise.
+       (elf_i386_finish_dynamic_symbol): Likewise.
+       Also use other elf_i386_plt_layout members for PLT details.
+       (elf_i386_finish_dynamic_sections): Likewise.
+
        * elf32-i386.c (struct elf_i386_backend_data): New type.
        (get_elf_i386_backend_data): New macro.
        (elf_i386_arch_bed): New variable.
 
 2011-07-26  Alan Modra  <[email protected]>
 
-       * elf32-ppc.c: Include dwarf2.h.
-       (struct ppc_elf_link_hash_table): Add glink_eh_frame.
-       (ppc_elf_create_glink): Create .eh_frame section.
-       (glink_eh_frame_cie): New array.
-       (ppc_elf_size_dynamic_sections): Size glink_eh_frame.
-       (ppc_elf_finish_dynamic_sections): Write glink_eh_frame.
-       * elf64-ppc.c: Include dwarg2.h.
+       * elf64-ppc.c: Include dwarf2.h.
        (struct ppc_link_hash_table): Add glink_eh_frame.
        (create_linkage_sections): Create .eh_frame section.
        (ppc64_elf_size_dynamic_sections): Arrange to drop unneeded
This page took 0.029288 seconds and 4 git commands to generate.