* elflink.c (_bfd_elf_link_create_dynamic_sections): Move from
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 22f055f999fb3c449bbbf4cb7d82e934c60ceebf..2d344b00dfbef91e397035fea45f1434d324cb1a 100644 (file)
@@ -1,3 +1,249 @@
+2003-05-09  Alan Modra  <amodra@bigpond.net.au>
+
+       * elflink.c (_bfd_elf_link_create_dynamic_sections): Move from
+       elflink.h.  Replace LOG_FILE_ALIGN with bed->s->log_file_align.
+       (_bfd_elf_create_dynamic_sections): Use bed->s->log_file_align.
+       (bfd_elf_record_link_assignment): Move from elflink.h.
+       (_bfd_elf_merge_symbol): Likewise.
+       (_bfd_elf_add_default_symbol): Likewise.
+       (_bfd_elf_export_symbol): Likewise.
+       (_bfd_elf_link_find_version_dependencies): Likewise.
+       (_bfd_elf_link_assign_sym_version): Likewise.
+       (_bfd_elf_link_read_relocs): Likewise.
+       (_bfd_elf_link_size_reloc_section): Likewise.
+       (_bfd_elf_fix_symbol_flags): Likewise.
+       (_bfd_elf_adjust_dynamic_symbol): Likewise.
+       (_bfd_elf_link_sec_merge_syms): Likewise.
+       (elf_link_read_relocs_from_section): Likewise.  Use bed->s->sizeof_rel
+       and bed->s->sizeof_rela.
+       (_bfd_elf_link_output_relocs): Likewise.
+       * elf-bfd.h (struct elf_size_info): Rename file_align to
+       log_file_align.
+       (struct elf_info_failed): Move from elflink.h.
+       (struct elf_assign_sym_version_info): Likewise.
+       (struct elf_find_verdep_info): Likewise.
+       (_bfd_elf_create_dynamic_sections): Delete duplicate declaration.
+       (_bfd_elf_merge_symbol, _bfd_elf_add_default_symbol,
+       _bfd_elf_export_symbol, _bfd_elf_link_find_version_dependencies,
+       _bfd_elf_link_assign_sym_version,
+       _bfd_elf_link_create_dynamic_sections, _bfd_elf_link_read_relocs,
+       _bfd_elf_link_size_reloc_section, _bfd_elf_link_output_relocs,
+       _bfd_elf_fix_symbol_flags, _bfd_elf_adjust_dynamic_symbol,
+       _bfd_elf_link_sec_merge_syms): Declare.
+       (bfd_elf32_link_create_dynamic_sections): Don't declare.
+       (_bfd_elf32_link_read_relocs): Likewise.
+       (bfd_elf64_link_create_dynamic_sections): Likewise.
+       (_bfd_elf64_link_read_relocs): Likewise.
+       * elflink.h: Move lots o' stuff elsewhere.
+       * bfd-in.h (bfd_elf32_record_link_assignment): Don't declare.
+       (bfd_elf64_record_link_assignment): Likewise.
+       (bfd_elf_record_link_assignment): Declare.
+       * bfd-in2.h: Regenerate.
+       * elfcode.h (elf_link_create_dynamic_sections): Don't declare.
+       (NAME(_bfd_elf,size_info)): Adjust for log_file_align.
+       * elf.c (_bfd_elf_init_reloc_shdr): Adjust for bed->s->log_file_align.
+       (assign_file_positions_for_segments): Likewise.
+       (assign_file_positions_except_relocs): Likewise.
+       (swap_out_syms, elfcore_write_note): Likewise.
+       * elf-m10200.c: Adjust for changed function names.
+       * elf-m10300.c: Likewise.
+       * elf32-arm.h: Likewise.
+       * elf32-h8300.c: Likewise.
+       * elf32-hppa.c: Likewise.
+       * elf32-ip2k.c: Likewise.
+       * elf32-m32r.c: Likewise.
+       * elf32-m68hc11.c: Likewise.
+       * elf32-m68hc1x.c: Likewise.
+       * elf32-m68k.c: Likewise.
+       * elf32-mips.c: Likewise.
+       * elf32-ppc.c: Likewise.
+       * elf32-sh.c: Likewise.
+       * elf32-v850.c: Likewise.
+       * elf32-xtensa.c: Likewise.
+       * elf64-alpha.c: Likewise.
+       * elf64-hppa.c: Likewise.
+       * elf64-mmix.c: Likewise.
+       * elf64-ppc.c: Likewise.
+       * elf64-sh64.c: Likewise.
+       * elfxx-ia64.c: Likewise.
+       * elfxx-mips.c: Likewise.
+       (MIPS_ELF_LOG_FILE_ALIGN): Use log_file_align.
+       * elf64-alpha.c (alpha_elf_size_info): Adjust for log_file_align.
+       * elf64-hppa.c (hppa64_elf_size_info): Likewise.
+       * elf64-mips.c (mips_elf64_size_info): Likewise.
+       * elf64-s390.c (s390_elf64_size_info): Likewise.
+       * elf64-sparc.c (sparc64_elf_size_info): Likewise.
+
+2003-05-08  H.J. Lu <hongjiu.lu@intel.com>
+
+       * elflink.h (elf_add_default_symbol): After skipping the
+       unversioned symbol, go to non-default one.
+
+2003-05-07  H.J. Lu <hongjiu.lu@intel.com>
+
+       * elfxx-ia64.c (_bfd_elf_link_hash_hide_symbol): Also clear the
+       want_plt field.
+       (elfNN_ia64_relocate_section): Don't do dynamic symbol lookup
+       for symbols with non-default visibility.
+
+2003-05-07  H.J. Lu <hongjiu.lu@intel.com>
+
+       * elflink.h (elf_link_check_versioned_symbol): Also handle the
+       case that a DSO references a hidden symbol which may be
+       satisfied by a versioned symbol in another DSO.
+       (elf_link_output_extsym): Check versioned definition for hidden
+       symbol referenced by a DSO.
+
+2003-05-07  Nick Clifton  <nickc@redhat.com>
+
+       * elf32-xstormy16.c (xstormy16_elf_howto_table): Reset
+       R_XSTORMY16_16 reloc to ignore overflows.
+
+2003-05-06  Alexandre Oliva  <aoliva@redhat.com>
+
+       * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Improve
+       error message for mixing different-endian files.  Check for ABI
+       compatibility of input files with the selected emulation.
+
+2003-05-05  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-i386.c (allocate_dynrelocs): For undef weak syms with
+       non-default visibility, a) don't make them dynamic, b) discard
+       space for dynamic relocs.
+       * elf64-x86-64.c (allocate_dynrelocs): Likewise.
+
+       * elf32-ppc.c (allocate_dynrelocs): For undef weak syms with
+       non-default visibility, a) don't allocate plt entries, b) don't
+       allocate .got relocs, c) discard dyn rel space,
+       (ppc_elf_relocate_section): d) don't generate .got relocs, e)
+       don't generate dynamic relocs.
+       * elf64-ppc.c (allocate_dynrelocs): As above.
+       (ppc64_elf_relocate_section): As above.
+
+2003-05-05  Andreas Jaeger  <aj@suse.de>
+
+       * elf64-x86-64.c (allocate_dynrelocs): Don't allocate dynamic
+       relocation entries for weak undefined symbols with non-default
+       visibility.
+       (elf64_x86_64_relocate_section): Initialize the GOT entries and
+       skip R_386_32/R_386_PC32 for weak undefined symbols with
+       non-default visibility.
+
+2003-05-04  H.J. Lu <hjl@gnu.org>
+
+       * elf32-i386.c (allocate_dynrelocs): Don't allocate dynamic
+       relocation entries for weak undefined symbols with non-default
+       visibility.
+       (elf_i386_relocate_section): Initialize the GOT entries and
+       skip R_386_32/R_386_PC32 for weak undefined symbols with
+       non-default visibility.
+       * elfxx-ia64.c (allocate_fptr): Don't allocate function
+       descriptors for weak undefined symbols with non-default
+       visibility.
+       (allocate_dynrel_entries): Don't allocate relocation entries
+       for symbols resolved to 0.
+       (set_got_entry): Don't install dynamic relocation for weak
+       undefined symbols with non-default visibility.
+       (set_pltoff_entry): Likewise.
+
+       * elflink.h (elf_fix_symbol_flags): Hide weak undefined symbols
+       with non-default visibility.
+       (elf_link_output_extsym): Don't make weak undefined symbols
+       with non-default visibility dynamic.
+
+2003-05-04  H.J. Lu <hjl@gnu.org>
+
+       * elflink.h (elf_merge_symbol): Correctly handle weak definiton.
+
+2003-05-04  H.J. Lu <hjl@gnu.org>
+
+       * elflink.h (elf_merge_symbol): Don't record a hidden/internal
+       symbol dynamic. Check indirection when removing the old
+       definition for symbols with non-default visibility.
+       (elf_add_default_symbol): Skip when told by elf_merge_symbol.
+
+2003-05-02  Nick Clifton  <nickc@redhat.com>
+
+       * elf32-xstormy16.c (xstormy16_elf_howto_table): Make the
+       R_XSTORMY16_8 and R_XSTORMY16_16 relocs detect and complain about
+       unsigned overflow.
+
+2003-05-02  Andreas Jaeger  <aj@suse.de>
+
+       * elf64-x86-64.c (elf_x86_64_copy_indirect_symbol): Don't copy
+       ELF_LINK_NON_GOT_REF for weakdefs when symbol already adjusted.
+       (ELIMINATE_COPY_RELOCS): Define as one.  Use throughout.
+       (elf_x86_64_adjust_dynamic_symbol): For weak symbols, copy
+       ELF_LINK_NON_GOT_REF from weakdef.
+
+2003-05-02  Charles Lepple <clepple@ghz.cc>
+           Nick Clifton <nickc@redhat.com>
+
+       * acinclude.m4: Fix name of --enable-install-libbfd switch.
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+       * Makefile.in: Regenerate.
+
+2003-05-01  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Test whether the
+       weakdef sym has already been adjusted before treating it specially.
+       * elf32-i386.c (elf_i386_copy_indirect_symbol): Don't copy
+       ELF_LINK_NON_GOT_REF for weakdefs when symbol already adjusted.
+       * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
+       (ppc64_elf_check_relocs): Set ELF_LINK_NON_GOT_REF.
+
+2003-04-28  H.J. Lu <hjl@gnu.org>
+
+       * elfxx-ia64.c (elfNN_ia64_relax_section): Relax ldxmov during
+       the relax finalize pass.
+
+       * section.c (struct sec): Add need_finalize_relax and remove
+       flag11.
+       (STD_SECTION): Update struct sec initializer.
+       * bfd-in2.h: Regenerated.
+
+2003-04-28  H.J. Lu <hjl@gnu.org>
+
+       * elflink.h (elf_merge_symbol): Call elf_backend_copy_indirect_symbol
+       to copy any information related to dynamic linking when we flip
+       the indirection.
+
+2003-04-27  H.J. Lu <hjl@gnu.org>
+
+       * elf-bfd.h (ELF_LINK_DYNAMIC_DEF): New.
+       (ELF_LINK_DYNAMIC_WEAK): New.
+
+       * elflink.h (elf_merge_symbol): Add one argument to indicate if
+       a symbol should be skipped. Ignore definitions in dynamic
+       objects for symbols with non-default visibility.
+       (elf_add_default_symbol): Adjusted.
+       (elf_link_add_object_symbols): Check if a symbol should be
+       skipped. Don't merge the visibility field with the one from
+       a dynamic object.
+       (elf_link_check_versioned_symbol): Use undef_bfd.
+       (elf_link_output_extsym): Warn if a forced local symbol is
+       referenced from dynamic objects. Make non-weak undefined symbol
+       with non-default visibility a fatal error.
+
+2003-04-27  Daniel Jacobowitz  <drow@mvista.com>
+
+       * configure.in: Bump version on HEAD to 2.14.90.
+       * configure: Regenerated.
+
+2003-04-26  Stephane Carrez  <stcarrez@nerim.fr>
+
+       PR savannah/3331:
+       * elf32-m68hc11.c (m68hc11_elf_relax_section): Clear prev_insn_group
+       when we couldn't relax something.
+
+2003-04-25  Alan Modra  <amodra@bigpond.net.au>
+
+       * elflink.h (elf_merge_symbol): When we find a regular definition
+       for an indirect symbol, flip the indirection so that the old
+       direct symbol now points to the new definition.
+
 2003-04-24  Roland McGrath  <roland@redhat.com>
 
        * elf.c (bfd_section_from_phdr): Map PT_GNU_EH_FRAME to "eh_frame_hdr".
        * libbfd.h: Regenerate.
        * reloc.c: Add s390 TLS relocations.
 
-2003-01-24  Charles Lepple clepple.ghz.cc
+2003-01-24  Charles Lepple  <clepple@ghz.cc>
 
        * aclocal.m4: Fix name of --enable-install-libbfd switch.
 
This page took 0.029995 seconds and 4 git commands to generate.