Rename DEBUG to SYMBIAN_DEBUG to avoid conflicts with global DEBUG definition
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index c73ac273c4c469fe6e9bd917b536f3b8106c4615..4dad85f3c98944b84a28d7fd3e81218b9323afa7 100644 (file)
@@ -1,3 +1,281 @@
+2006-05-02  Nick Clifton  <nickc@redhat.com>
+
+       * elf32-sh-symbian.c: Rename local define DEBUG to SYMBIAN_DEBUG
+       in order to avoid conflicts with the global DEBUG define.
+
+2006-05-02  Alan Modra  <amodra@bigpond.net.au>
+
+       * dwarf2.c: Formatting.
+       * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Simplify
+       output section check.
+       * elf32-i370.c: Warning fixes inside #ifdef DEBUG.
+       * elf32-m32c.c: Similarly.
+       * elf32-ppc.c: Similarly.
+       * elf32-v850.c: Similarly.
+       * nlm32-sparc.c: Similarly.
+       * elfcode.h: Similarly.
+       (elf_symbol_flags): Delete.
+       * elflink.c (elf_link_input_bfd): Comment typo.
+
+2006-05-01  DJ Delorie  <dj@redhat.com>
+
+       * bfd-in.h (bfd_hash_table): Add count field.
+       * bfd-in2.h: Regenerate.
+       * hash.c (higher_prime_number): New.
+       (bfd_hash_table_inint_n): Init count field.
+       (bfd_hash_lookup): Grow table as needed.
+
+2006-04-27  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
+
+       PR binutils/2584
+       * tekhex.c (getvalue): Change return type to bfd_boolean and
+       add the new parameter.  Return false if the unexpected character
+       is found.
+       (getsym): Likewise.
+       (first_phase): Change return type to bfd_boolean and return
+       false if the unexpected character is found.  Replace abort
+       with returning false.
+       (pass_over): Change return type to bfd_boolean and the type of
+       the second argument to bfd_boolean (*) (bfd *, int, char *).
+       Return false if FUNC returns false.
+       (tekhex_object_p): Return NULL if pass_over fails.
+
+2006-04-27  Alan Modra  <amodra@bigpond.net.au>
+
+       * coff-rs6000.c (xcoff_write_archive_contents_old): Warning fix.
+
+2006-04-26  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/2593
+       * elf.c (_bfd_elf_new_section_hook): Don't set section ELF type
+       and flags if its BFD flags have been set.
+       (_bfd_elf_init_private_section_data): Don't copy the output ELF
+       section type from input if it has been set to something
+       different.
+
+2006-04-25  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/2467
+       * elf.c (_bfd_elf_close_and_cleanup): Check elf_tdata (abfd)
+       is NULL first.
+
+       * elf32-arm.c (elf32_arm_close_and_cleanup): Check if
+       abfd->sections is NULL.
+       (elf32_arm_bfd_free_cached_info): New.
+       (bfd_elf32_bfd_free_cached_info): Defined.
+
+       * elfxx-target.h (bfd_elfNN_bfd_free_cached_info): Default it
+       to _bfd_free_cached_info.
+
+       * libbfd-in.h (_bfd_free_cached_info): New.
+       * libbfd: Regenerated.
+
+       * opncls.c (_bfd_delete_bfd): Check if abfd->memory is NULL.
+       (_bfd_free_cached_info): New.
+
+2006-04-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf.c (assign_file_positions_except_relocs): Move code setting
+       file position of non-loaded sections..
+       (assign_file_positions_for_segments): ..to here.
+
+2006-04-20  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/2537
+       * elf.c (bfd_section_from_shdr): Allow sections reserved for
+       applications. Issue an error on sections we don't know how
+       to handle.
+
+2006-04-19  Alan Modra  <amodra@bigpond.net.au>
+
+       * Makefile.am: Run "make dep-am".
+       * Makefile.in: Regenerate.
+
+2006-04-19  Alan Modra  <amodra@bigpond.net.au>
+
+       * warning.m4 (--enable-werror): Format help message.
+       (--enable-build-warnings): Likewise.
+       * configure: Regenerate.
+
+2006-04-18  Nick Clifton  <nickc@redhat.com>
+
+       PR 2257
+       * elfcode.h (elf_object_p): Allow files with corrupt e_shstrndx
+       fields to still be handled as ELF files.
+
+2006-04-16  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * po/SRC-POTFILES.in: Regenerated.
+
+2006-04-16  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * configure.in: Update version to 2.17.50.
+       * configure: Regenerated.
+
+2006-04-14  David Heine  <dlheine@tensilica.com>
+
+       * elf32-xtensa.c (build_reloc_opcodes): New.
+       (compute_text_actions): Use it to decode opcodes outside inner loop.
+       (check_section_ebb_pcrels_fit): Add "reloc_opcodes" argument, and if
+       it is set, use it to get the opcodes for relocations.
+       (move_shared_literal): Adjust call to check_section_ebb_pcrels_fit.
+
+2006-04-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/2513
+       * elf32-i386.c (GOT_TLS_MASK): New macro for tls_type.
+       (GOT_TLS_IE_IE): Likewise.
+       (GOT_TLS_IE_GD): Likewise.
+       (GOT_TLS_IE_MASK): Likewise.
+       (elf_i386_check_relocs): For global symbols, set GOT_TLS_IE_GD
+       and GOT_TLS_IE_IE for R_386_TLS_GD and R_386_TLS_IE
+       respectively.
+       (allocate_dynrelocs): If both GOT_TLS_IE_IE and GOT_TLS_IE_GD
+       are set, treat tls_type as GOT_TLS_IE_BOTH.
+       (elf_i386_relocate_section): Likewise.
+
+2006-04-07  Randolph Chung  <tausq@debian.org>
+
+       * elf64-hppa.c (elf64_hppa_grok_prstatus): New function.
+       (elf64_hppa_grok_psinfo): Likewise.
+       (elf_backend_grok_pstatus, elf_backend_grok_psinfo): Define.
+
+2006-04-06  DJ Delorie  <dj@redhat.com>
+
+       * elf32-m32c.c (m32c_elf_relocate_section): Generate a symbol for
+       each plt entry we create.
+
+2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>
+
+       * po/Make-in: Add install-html target.
+       * Makefile.am: Rename docdir to bfddocdir. Add datarootdir, docdir
+       htmldir. Add install-html and install-html-recursive targets.
+       * Makefile.in: Regenerate.
+       * configure.in: AC_SUBST for datarootdir, docdir and htmldir.
+       * configure: Regenerate.
+
+2006-04-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elfxx-ia64.c (elfNN_ia64_relax_section): Skip unneeded passes
+       with the skip_relax_pass_0 and skip_relax_pass_1 bits in the
+       section structure.
+
+2006-04-05  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * elf32-bfin.c (bfinfdpic_relocs_info_hash): Sprinkle casts to
+       eliminate warnings.
+
+2006-04-05  H.J. Lu  <hongjiu.lu@intel.com>
+           James E Wilson  <wilson@specifixinc.com>
+
+       PR ld/2442
+       * elfxx-ia64.c (elfNN_ia64_dyn_sym_info): Remove next.
+       (elfNN_ia64_local_hash_entry): Add count, sorted_count and
+       size.
+       (elfNN_ia64_link_hash_entry): Likewise.
+       (elfNN_ia64_new_elf_hash_entry): Initialize count, sorted_count
+       and size.
+       (elfNN_ia64_hash_copy_indirect): Updated elfNN_ia64_dyn_sym_info
+       processing.
+       (elfNN_ia64_hash_hide_symbol): Likewise.
+       (elfNN_ia64_global_dyn_sym_thunk): Likewise.
+       (elfNN_ia64_local_dyn_sym_thunk): Likewise.
+       (elfNN_ia64_global_dyn_info_free): New function.
+       (elfNN_ia64_local_dyn_info_free): Likewise.
+       (elfNN_ia64_hash_table_free): Free local and global
+       elfNN_ia64_dyn_sym_info.
+       (addend_compare): New function.
+       (sort_dyn_sym_info): Likewise.
+       (get_dyn_sym_info): Updated to use binary search for addend.
+       (elfNN_ia64_check_relocs): Scan relocations to create dynamic
+       relocation arrays first.
+
+2006-04-05  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * elf32-bfin.c (_bfin_create_got_section): Don't generate a _gp
+       symbol.
+
+2006-04-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/2411
+       * elflink.c (check_dynsym): New.
+       (elf_link_output_extsym): Use it.
+       (bfd_elf_final_link): Likewise.
+
+2006-04-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/2404
+       * elflink.c (_bfd_elf_merge_symbol): Skip the default indirect
+       symbol from the dynamic definition with the default version if
+       its type and the type of existing regular definition mismatch.
+
+2006-04-05  Richard Sandiford  <richard@codesourcery.com>
+           Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * config.bfd (sparc-*-vxworks*): New stanza.
+       * configure.in (bfd_elf32_sparc_vxworks_vec): New stanza.
+       (bfd_elf32_sparc_vec, bfd_elf64_sparc_vec): Add elf-vxworks.lo.
+       * configure: Regenerate.
+       * elf32-sparc.c: Include elf-vxworks.h.
+       (elf32_sparc_vxworks_link_hash_table_create: New.
+       (elf32_sparc_vxworks_final_write_processing): New.
+       (TARGET_BIG_SYM): Override for VxWorks.
+       (TARGET_BIG_NAME, ELF_MINPAGESIZE): Likewise.
+       (bfd_elf32_bfd_link_hash_table_create): Likewise.
+       (elf_backend_want_got_plt, elf_backend_plt_readonly): Likewise.
+       (elf_backend_got_header_size, elf_backend_add_symbol_hook): Likewise.
+       (elf_backend_link_output_symbol_hook): Likewise.
+       (elf_backend_emit_relocs): Likewise.
+       (elf_backend_final_write_processing, elf32_bed): Likewise.
+       * elfxx-sparc.c: Include libiberty.h and elf-vxworks.h.
+       (sparc_vxworks_exec_plt0_entry, sparc_vxworks_exec_plt_entry): New.
+       (sparc_vxworks_shared_plt0_entry, sparc_vxworks_shared_plt_entry): New.
+       (_bfd_sparc_elf_link_hash_table_create): Don't initialize
+       build_plt_entry here.
+       (create_got_section): Initialize sgotplt for VxWorks.
+       (_bfd_sparc_elf_create_dynamic_sections): Initialize build_plt_entry,
+       plt_header_size and plt_entry_size, with new VxWorks-specific settings.
+       Call elf_vxworks_create_dynamic_sections for VxWorks.
+       (allocate_dynrelocs): Use plt_header_size and plt_entry_size.
+       Allocate room for .got.plt and .rela.plt.unloaded entries on VxWorks.
+       (_bfd_sparc_elf_size_dynamic_sections): Don't allocate a nop in .plt
+       for VxWorks.  Check for the .got.plt section.
+       (sparc_vxworks_build_plt_entry): New function.
+       (_bfd_sparc_elf_finish_dynamic_symbol): Add handling of VxWorks PLTs.
+       Don't make _GLOBAL_OFFSET_TABLE_ and _PROCEDURE_LINKAGE_TABLE_
+       absolute on VxWorks.
+       (sparc32_finish_dyn): Add special handling for DT_RELASZ
+       and DT_PLTGOT on VxWorks.
+       (sparc_vxworks_finish_exec_plt): New.
+       (sparc_vxworks_finish_shared_plt): New.
+       (_bfd_sparc_elf_finish_dynamic_sections): Call them.
+       Use plt_header_size and plt_entry_size.
+       * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Add is_vxworks,
+       srelplt2, sgotplt, plt_header_size and plt_entry_size fields.
+       * Makefile.am (elfxx-sparc.lo): Depend on elf-vxworks.h.
+       (elf32-sparc.lo): Likewise.
+       * Makefile.in: Regenerate.
+       * targets.c (bfd_elf32_sparc_vxworks_vec): Declare.
+       (_bfd_target_vector): Add a pointer to it.
+
+2006-03-30  Ben Elliston  <bje@au.ibm.com>
+
+       PR ld/2267
+       * elflink.c (elf_fixup_link_order): Ensure `elfsec' is not a
+       special section number that exceeds the number of ELF sections
+       (eg. SHN_MIPS_SCOMMON).
+
+2006-03-27  Richard Sandiford  <richard@codesourcery.com>
+
+       * elfxx-mips.c (mips_got_entry): Add more commentary.
+       (mips_elf_local_got_index): Use the hash table entry to record
+       the GOT index of forced-local symbols.
+       (mips_elf_initialize_tls_index): Rearrange code.  Store the index
+       in either the hash table entry or the mips_got_entry, not both.
+       Add more commentary.
+       (mips_elf_multi_got): Make sure the g->next is nonnull when calling
+       mips_elf_initialize_tls_index.
+
 2006-03-25  Bernd Schmidt  <bernd.schmidt@analog.com>
 
        * elf32-bfin.c (bfd_const_reloc, bfd_oper_reloc, bfin_push_reloc,
        bfin_reloc_type_lookup): Don't support them.
        (bfin_relocate_section): Don't try to handle them.
 
+       * config.bfd (bfin-*-*): Add bfd_elf32_bfinfdpic_vec.
+       * configure.in: Likewise.
+       * configure: Regenerate.
+       * elf32-bfin.c: Include "elf/dwarf2.h" and "hashtab.h".
+       (BFIN_RELOC_MAX): Now 0x21.
+       (bfin_howto_table, bfin_reloc_map): Add FD-PIC relocs.
+       (bfd_elf32_bfinfdpic_vec): Declare.
+       (IS_FDPIC): New macro.
+       (struct bfinfdpic_elf_link_hash_table): New struct.
+       (bfinfdpic_hash_table, bfinfdpic_got_section,
+       bfinfdpic_gotrel_section, bfinfdpic_gotfixup_section,
+       bfinfdpic_plt_setion, bfinfdpic_pltrel_section,
+       bfinfdpic_relocs_info, bfinfdpic_got_initial_offset,
+       bfinfdpic_plt_initial_offset): Accessor macros for it.
+       (BFINFDPIC_SYM_LOCAL, BFINFDPIC_FUNCDESC_LOCAL): New macros.
+       (struct bfinfdpic_relocs_info): New struct.
+       (LZPLT_RESOLVER_EXTRA, LZPLT_NORMAL_SIZE, LZPLT_ENTRIES,
+       BFINFDPIC_LZPLT_BLOCK_SIZE, BFINFDPIC_LZPLT_RESOLV_LOC,
+       DEFAULT_STACK_SIZE): New macros.
+       (bfinfdpic_elf_link_hash_table_create, bfinfdpic_relocs_info_hash,
+       bfinfdpic_relocs_info_eq, bfinfdpics_relocs_info_find,
+       bfinfdpic_relocs_info_for_global, bfinfdpic_relocs_info_for_local,
+       bfinfdpic_pic_merge_early_relocs_info, _bfinfdpic_add_dyn_reloc,
+       _bfinfdpic_add_rofixup, _bfinfdpic_osec_to_segment,
+       _bfinfdpic_osec_readonly_p, bfinfdpic_relocate_section,
+       bfinfdpic_check_relocs, bfinfdpic_gc_sweep_hook,
+       _bfinfdpic_link_omit_section_dynsym, _bfin_create_got_section,
+       elf32_bfinfdpic_create_dynamic_sections, _bfinfdpic_get_fd_entry,
+       _bfinfdpic_compute_got_alloc_data, _bfinfdpic_get_got_entry,
+       _bfinfdpic_assign_got_entries, _bfinfdpic_assign_plt_entries,
+       _bfinfdpic_resolve_final_relocs_info,
+       elf32_bfinfdpic_size_dynamic_sections,
+       elf32_bfinfdpic_always_size_sections,
+       elf32_bfinfdpic_modify_segment_map,
+       _bfinfdpic_count_got_plt_entries,
+       elf32_bfinfdpic_finish_dynamic_sections,
+       elf32_bfinfdpic_adjust_dynamic_symbol,
+       elf32_bfinfdpic_finish_dynamic_symbol,
+       elf32_bfinfdpic_elf_use_relative_eh_frame,
+       elf32_bfinfdpic_elf_encode_eh_address,
+       elf32_bfin_object_p, bfin_elf_copy_private_bfd_data,
+       elf32_bfinfdpic_copy_private_bfd_data,
+       (struct _bfinfdpic_dynamic_got_info,
+       struct _bfinfdpic_dynamic_got_plt_info): New structs.
+       (elf32_bfin_print_private_bfd_data): Print PIC flags.
+       (elf32_bfin_merge_private_bfd_data): Extend to support FD-PIC.
+       (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, elf32_bed,
+       elf_backend_got_header_size, bfd_elf32_bfd_link_hash_table_create,
+       elf_backend_always_size_sectinos, elf_backend_modify_segment_map,
+       bfd_elf32_bfd_copy_private_bfd_data,
+       elf_backend_create_dynamic_sections, elf_backend_adjust_dynamic_symbol,
+       elf_backend_size_dynamic_sections, elf_backend_finish_dynamic_symbol,
+       elf_backend_finish_dynamic_sections, elf_backend_relocate_section,
+       elf_backend_can_make_relative_eh_frame, elf_backend_check_relocs,
+       elf_backend_can_make_ldsa_relative_eh_frame, elf_backend_may_use_rel_p,
+       elf_backend_may_use_rela_p, elf_backend_default_use_rela_p,
+       elf_backend_omit_section_dynsym): Redefine these macros and include
+       "elf32-target.h" again to create the elf32-bfinfdpic target.
+       * reloc.c (BFD_RELOC_BFIN_GOT17M4, BFD_RELOC_BFIN_GOTHI,
+       BFD_RELOC_BFIN_GOTLO, BFD_RELOC_BFIN_FUNCDESC,
+       BFD_RELOC_BFIN_FUNCDESC_GOT17M4, BFD_RELOC_BFIN_FUNCDESC_GOTHI,
+       BFD_RELOC_BFIN_FUNCDESC_GOTLO, BFD_RELOC_BFIN_FUNCDESC_VALUE,
+       BFD_RELOC_BFIN_FUNCDESC_GOTOFF17M4, BFD_RELOC_BFIN_FUNCDESC_GOTOFFHI,
+       BFD_RELOC_BFIN_FUNCDESC_GOTOFFLO, BFD_RELOC_BFIN_GOTOFFHI,
+       BFD_RELOC_BFIN_GOTOFFLO): New.
+       * targets.c (bfd_elf32_bfinfdpic_vec): New bfd_target.
+       (_bfd_target_vector): Add it.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+
 2006-03-25  Richard Sandiford  <richard@codesourcery.com>
 
        * cpu-m68k.c (bfd_m68k_compatible): Treat ISA A+ and ISA B code as
        bfd_get_compatible to set the new bfd architecture.  Rely on it
        to detect incompatibilities.
 
+2006-03-23  Michael Matz  <matz@suse.de>
+
+       * reloc.c: Add BFD_RELOC_X86_64_GOT64, BFD_RELOC_X86_64_GOTPCREL64,
+       BFD_RELOC_X86_64_GOTPC64, BFD_RELOC_X86_64_GOTPLT64,
+       BFD_RELOC_X86_64_PLTOFF64.
+       * bfd-in2.h: Regenerated.
+       * libbfd.h: Regenerated.
+       * elf64-x86-64.c (x86_64_elf_howto_table): Correct comment.
+       Add howtos for above relocs.
+       (x86_64_reloc_map): Add mappings for new relocs.
+       (elf64_x86_64_check_relocs): R_X86_64_GOT64, R_X86_64_GOTPCREL64,
+       R_X86_64_GOTPLT64 need a got entry.  R_X86_64_GOTPLT64 also a PLT
+       entry.  R_X86_64_GOTPC64 needs a .got section.  R_X86_64_PLTOFF64
+       needs a PLT entry.
+       (elf64_x86_64_gc_sweep_hook): Reflect changes from
+       elf64_x86_64_check_relocs for the new relocs.
+       (elf64_x86_64_relocate_section): Handle new relocs.
+
 2006-03-22  Bob Wilson  <bob.wilson@acm.org>
 
        * elf32-xtensa.c (xtensa_read_table_entries): Remove assertion that
 2006-03-11  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR ld/2443
-       * dwarf2.c (concat_filename): Don't issue an error if file is
-       0.
+       * dwarf2.c (concat_filename): Don't issue an error if file is 0.
 
 2006-03-10  Paul Brook  <paul@codesourcery.com>
 
This page took 0.026697 seconds and 4 git commands to generate.