2001-08-09 H.J. Lu <hjl@gnu.org>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 8ed90d37e204f61715f895e35780ff31b224fb6b..046f0881f7b245661939033f01b881577c5decf6 100644 (file)
@@ -1,3 +1,669 @@
+2001-08-09  H.J. Lu  <hjl@gnu.org>
+
+       * bfd-in.h (bfd_sprintf_vma): New prototype.
+       (bfd_fprintf_vma): Likewise.
+       (bfd_elf_sprintf_vma): Likewise.
+       (bfd_elf_fprintf_vma): Likewise.
+       (bfd_printf_vma): New. Defined with bfd_fprintf_vma.
+       * bfd-in2.h: Regenerated.
+
+       * bfd.c (bfd_sprintf_vma): New. Defined.
+       (bfd_fprintf_vma): Likewise.
+
+       * elf.c (bfd_elf_sprintf_vma): New. Defined.
+       (bfd_elf_fprintf_vma): Likewise.
+
+2001-08-09  Alan Modra  <amodra@bigpond.net.au>
+
+       * coff-rs6000.c: Add missing prototypes.
+       (xcoff_ppc_relocate_section, xcoff_is_lineno_count_overflow,
+       xcoff_is_reloc_count_overflow, xcoff_loader_symbol_offset,
+       xcoff_loader_reloc_offset): Make static.
+       * dwarf1.c: Add missing prototypes.
+       * dwarf2.c: Add missing prototypes.
+       (struct abbrev_info): Move definition.
+       (struct attr_abbrev, ABBREV_HASH_SIZE, ATTR_ALLOC_CHUNK): Likewise.
+       * elf.c: Add missing prototypes.
+       * elf32-gen.c: Likewise.
+       * elf32-i386.c: Likewise.
+       * elf32-ppc.c: Likewise.
+       (ppc_elf_sort_rela): Use PTR instead of "void *".
+       * elflink.h: Add missing prototypes.  Formatting fixes.
+       * merge.c: Add missing prototypes.
+       (last4_eq): Use PTR instead of "void *".
+       (last_eq): Likewise.
+       * syms.c: Add missing prototypes.
+
+2001-08-09  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * bfd.c: Fix formatting.
+       * bfd-in2.h: Regenerate.
+
+2001-08-09  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * elf32-arc.c (R_ARC_B22_PCREL): Change 'partial_inplace' to
+       true (this target uses REL relocations) and 'pcrel_offset' to
+       false (the PC is implied, not stored in the offset).
+
+2001-08-08  Alan Modra  <amodra@bigpond.net.au>
+
+       1999-10-19  Linus Nordberg  <linus@swox.se>
+       * elf-bfd.h (struct elf_backend_data): Add want_got_sym.
+       * elfxx-target.h (elf_backend_want_got_sym): Define.
+       (elfNN_bed): Add elf_backend_want_got_sym.
+       * elflink.c (_bfd_elf_create_got_section): Define
+       _GLOBAL_OFFSET_TABLE_ only if bed->want_got_sym.
+
+2001-08-08  Alexandre Oliva  <aoliva@redhat.com>
+
+       * dwarf2.c (struct dwarf2_debug): Add sec, sec_info_ptr and syms.
+       (find_rela_addend): New function.
+       (parse_comp_unit): Call it to find the abbrev offset addend.
+       (_bfd_dwarf2_find_nearest_line): Initialize and maintain the new
+       members of dwarf2_debug as debugging information is read.
+
+2001-08-07  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * coff-sh.c (sh_coff_reloc_type_lookup): Provide for sh-coff
+       targets as well as sh-pe.
+
+2001-08-03  Ben Harris <bjh21@netbsd.org>
+
+       * elf32-arm.h (elf32_arm_final_link_relocate): Include offset of
+       reloc from start of section when computing value for R_ARM_REL32
+       reloc.
+
+2001-08-03  Alan Modra  <amodra@bigpond.net.au>
+
+       From  H.J. Lu  <hjl@gnu.org>
+       * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Don't
+       keep relocs for undefined syms if there are no dynamic sections in
+       executable.
+       * elf32-hppa.c (allocate_plt_and_got_and_discard_relocs): Likewise.
+
+2001-08-02  Paul Sokolovsky  <paul.sokolovsky@technologist.com>
+
+       * cofflink.c (coff_link_check_ar_symbols): also search for
+       __imp__symbol as well as _symbol.
+       * linker.c (_bfd_generic_link_add_archive_symbols): also
+       search for __imp__symbol as well as _symbol.
+
+2001-08-01  Adam Nemet  <anemet@lnxw.com>
+
+       * elf.c (elf_sort_sections): Return zero only as the last step.
+
+2001-08-01  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * config.bfd (arm-vxworks): Change name of define from VXWORKS to
+       ARM_COFF_BUGFIX.
+       (arm-epoc-pe): Define ARM_COFF_BUGFIX.
+       coff-arm.c (coff_arm_relocate_section): Replace VXWORKS with
+       ARM_COFF_BUGFIX.
+
+2001-07-30  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
+
+       * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Changed return type
+       to match corresponding bfd_coff_backend data member.
+
+2001-07-24  Alan Modra  <amodra@bigpond.net.au>
+
+       * Makefile.am: Update dependencies with "make dep-am".
+       * Makefile.in: Regenerate
+
+2001-07-15  H.J. Lu  <hjl@gnu.org>
+
+       * Makefile.am (po/SRC-POTFILES.in): Use tmp.src instead of tmp.
+       (po/BLD-POTFILES.in): Use tmp.bld instead of tmp.
+       * Makefile.in: Regenerate.
+
+2001-07-11  H.J. Lu  <hjl@gnu.org>
+
+       * elf64-alpha.c (elf64_alpha_check_relocs): Set the ALLOC|LOAD
+       flags when creating the reloc section if the ALLOC flag in the
+       source section is set.
+
+2001-07-11  Steve Ellcey  <sje@cup.hp.com>
+
+       * reloc.c (bfd_reloc_code_type): Add IA64 relocs
+       BFD_RELOC_IA64_LTOFF_FPTR32MSB and BFD_RELOC_IA64_LTOFF_FPTR32LSB
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+       * elfxx-ia64.c (ia64_howto_table): Define how to handle
+       new relocations.
+       (elfNN_ia64_reloc_type_lookup): Handle new relocations.
+       (elfNN_ia64_check_relocs): Likewise.
+       (elfNN_ia64_install_value): Likewise.
+       (elfNN_ia64_relocate_section): Likewise.
+
+2001-07-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * elf32-sparc.c (_bfd_sparc_elf_howto_table): Remove support for
+       R_SPARC_UA64.
+       (elf32_sparc_check_relocs): Likewise.
+       Only create .rela section for alloced sections in shared libraries.
+       (elf32_sparc_relocate_section): Likewise.
+       Remove redundant check.
+       Optimize unaligned reloc usage.
+       * elf64-sparc.c (sparc64_elf_relocate_section): Remove redundant
+       check.
+
+2001-07-11  H.J. Lu  <hjl@gnu.org>
+
+       * elf64-alpha.c (elf64_alpha_check_relocs): Only use the same
+       ALLOC|LOAD flags as the source section for debugging sections
+       when creating the reloc section.
+
+2001-07-05  Jim Wilson  <wilson@redhat.com>
+
+       * linker.c (_bfd_generic_link_add_one_symbol, case BIG): Use
+       the section of the bigger symbol.
+
+       * syms.c (bfd_is_local_label): Return false if BSF_SECTION_SYM.
+
+2001-07-05  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * peicode.h (coff_swap_scnhdr_in): For sections containing
+       uninitialised data, only set their size to s_paddr if this does
+       not reset their size to zero.  MS's latest compilers will set
+       s_paddr to zero.
+
+2001-07-04  H.J. Lu  <hjl@gnu.org>
+
+       * bfd/elf32-mips.c (_bfd_mips_elf_final_write_processing):
+       Handle bfd_mach_mips4400, bfd_mach_mips4600 and
+       bfd_mach_mips5000.
+
+2001-07-03  Mark Elbrecht  <snowball3@softhome.net>
+
+       * bfd.c (bfd_get_sign_extend_vma): Support DJGPP COFF targets.
+
+       * cofflink.c (_bfd_coff_link_input_bfd): Skip section symbols from
+       sections being discarded.
+
+2001-06-30  Alan Modra  <amodra@bigpond.net.au>
+
+       * elfcore.h (elf_core_file_p): Call bfd_section_from_phdr directly
+       instead of _bfd_elfcore_section_from_phdr.
+       * elf-bfd.h (_bfd_elfcore_section_from_phdr): Remove.
+       * elf.c (_bfd_elfcore_section_from_phdr): Remove.
+       (_bfd_elfcore_make_pseudosection): Expedite tail-call.
+       (elfcore_grok_prstatus): Likewise.
+       (elfcore_grok_lwpstatus): Likewise.
+       (bfd_get_elf_phdr_upper_bound): Likewise.
+       (elfcore_make_note_pseudosection): Formatting.
+       (_bfd_elfcore_strndup): Formatting.
+       * elf32-mips.c (mips_elf_sym_is_global): Formatting.
+       (_bfd_elf32_mips_grok_prstatus): Expedite tail-call.
+
+2001-06-29  Daniel Jacobowitz  <drow@mvista.com>
+
+       * elf-bfd.h: Add prototypes for _bfd_elfcore_make_pseudosection
+       and _bfd_elfcore_strndup.
+       (struct elf_backend_data): Add elf_backend_grok_prstatus
+       and elf_backend_grok_psinfo.
+       * elf.c (_bfd_elfcore_make_pseudosection): New function.
+       (elfcore_grok_prstatus): Use it.
+       (elfcore_make_note_pseudosection): Likewise.
+       (elfcore_strndup):  Rename to...
+       (_bfd_elfcore_strndup): Here, and make global.
+       (elfcore_grok_psinfo): Use _bfd_elfcore_strndup.
+       (elfcore_grok_note): Call elf_backend_grok_prstatus
+       and elf_backend_grok_psinfo if available.
+       * elf32-mips.c (_bfd_elf32_mips_grok_prstatus): New function.
+       (_bfd_elf32_mips_grok_psinfo): New function.
+       (elf_backend_grok_prstatus): Define.
+       (elf_backend_grok_psinfo): Define.
+       * elfxx-target.h (elf_backend_grok_prstatus): Default to NULL.
+       (elf_backend_grok_psinfo): Likewise.
+       (elfNN_bed): Include elf_backend_grok_prstatus and
+       elf_backend_grok_psinfo.
+
+2001-06-29  H.J. Lu  <hjl@gnu.org>
+
+       * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Check if
+       hplink->sgot is NULL before filling GOT.  Check if hplink->splt
+       is NULL before filling PLT.
+
+2001-06-29  Alan Modra  <amodra@bigpond.net.au>
+
+       * elflink.h (elf_link_output_extsym): Revert 1999-04-10.
+
+2001-06-27  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-hppa.c (elf32_hppa_check_relocs): Don't make syms dynamic
+       here..
+       (elf32_hppa_adjust_dynamic_symbol): ..nor here..
+       (allocate_plt_and_got_and_discard_relocs): .. instead do so here
+       after gc has run.
+
+       * elf32-hppa.c (RELATIVE_DYNAMIC_RELOCS): Delete.
+       (IS_ABSOLUTE_RELOC): Define.
+       (elf32_hppa_link_hash_entry): Always include reloc_entries field.
+       (hppa_link_hash_newfunc): Always init it.
+       (elf32_hppa_check_relocs): Mark symbols as ELF_LINK_NON_GOT_REF to
+       create COPY relocs only when the reloc is in a read-only section.
+       Instead, allocate space for a dynamic reloc to reference the
+       library symbol directly.  Keep track of space we allocate using
+       relocs_entries.
+       (hppa_discard_copies): Delete, and move code to..
+       (allocate_plt_and_got): ..here.  Rename to
+       allocate_plt_and_got_and_discard_relocs.  Remove unneeded dynamic
+       relocs for non-shared link.
+       (elf32_hppa_size_dynamic_sections): Update calls to above.
+       (elf32_hppa_relocate_section): Write out the dynamic relocs used
+       in lieu of COPY relocs.
+
+       * elf32-i386.c (elf_i386_check_relocs): Don't make syms dynamic
+       here..
+       (elf_i386_adjust_dynamic_symbol): ..nor here..
+       (allocate_plt_and_got_and_discard_relocs): .. instead do so here
+       after gc has run.
+       (elf_i386_size_dynamic_sections): Fix a comment.
+       (elf_i386_relocate_section <R_386_32, R_386_PC32>): Rearrange code
+       involved in writing reloc out.
+
+2001-06-25  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-i386.c (elf_i386_check_relocs <R_386_32, R_386_PC32>):
+       Ensure syms are dynamic if we might be emitting a reloc.
+       (allocate_plt_and_got_and_discard_relocs): Don't discard relocs
+       for undefweak or undefined syms..
+       (elf_i386_relocate_section <R_386_32, R_386_PC32>): .. and emit.
+
+       * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Discard
+       relocs without ELF_LINK_HASH_DEF_DYNAMIC set.
+       (elf_i386_relocate_section <R_386_32, R_386_PC32>): Remove
+       redundant bfd_link_hash_defined, bfd_link_hash_defweak test.
+
+2001-06-24  H.J. Lu  <hjl@gnu.org>
+
+       * cpu-i960.c (scan_960_mach): Don't modify const char *. Use
+       strncasecmp/strcasecmp instead of strncmp/strcmp.
+
+2001-06-23  H.J. Lu  <hjl@gnu.org>
+
+       * elf32-i386.c (elf_i386_relocate_section <R_386_32, R_386_PC32>):
+       Check ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined
+       in the regular object file and treat the weak definition as
+       the normal one.
+
+2001-06-23  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-i386.c (elf_i386_relocate_section <R_386_GOT32>): Tighten
+       unresolved_reloc test to exclude cases where we use "relocation"
+       before setting it to point into the .got.  Reinstate fudge for
+       unresolved relocs in debugging sections.
+
+       * elf32-i386.c (elf_i386_relocate_section): Replace ugly
+       complicated tests for unresolvable relocs with a simple direct
+       scheme using "unresolved_reloc" var.
+
+       * elf32-i386.c (struct elf_i386_pcrel_relocs_copied): Rename to
+       elf_i386_dyn_relocs.  Update comment.
+       (struct elf_i386_link_hash_entry): Rename pcrel_relocs_copied to
+       dyn_relocs.
+       (elf_i386_adjust_dynamic_symbol): Remove a BFD_ASSERT, change
+       others to aborts.
+       (allocate_plt_and_got_and_discard_relocs): Replace BFD_ASSERT with
+       abort.
+       (elf_i386_size_dynamic_sections): Likewise.
+       (elf_i386_finish_dynamic_symbol): Likewise.
+       (elf_i386_finish_dynamic_sections): Likewise.
+       (elf_i386_relocate_section): Likewise.  Tidy R_386_GOT32 and error
+       handling code.
+
+       Avoid creating COPY relocs if possible.
+       * elf32-i386.c (elf_i386_check_relocs): Tweak condition under
+       which .got created.  Mark symbols used by R_386_32 and R_386_PC32
+       relocs as ELF_LINK_NON_GOT_REF to create COPY relocs only when the
+       reloc is in a read-only section.  Instead, allocate space for a
+       dynamic reloc to reference the library symbol directly.  Keep
+       track of space we allocate using pcrel_relocs_copied.
+       (discard_copies): Delete, and move code to ..
+       (allocate_plt_and_got): ..here.  Rename to
+       allocate_plt_and_got_and_discard_relocs.  Remove unneeded dynamic
+       relocs for non-shared link.
+       (elf_i386_size_dynamic_sections): Update calls to above functions.
+       (elf_i386_relocate_section): Write out the dynamic relocs.  Add
+       more ugly logic to avoid "unresolvable relocation" error.  Use
+       htab shortcut in place of elf_hash_table macro.
+       (elf_i386_finish_dynamic_sections): Allow that dynamic .got may
+       not always be created now.
+
+2001-06-20  Bo Thorsen  <bo@suse.co.uk>
+
+       * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix linking of
+       shared libraries.
+
+2001-06-18  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+       * configure.host (mips64-*-linux): Reformat.
+
+2001-06-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Always
+       allocate local .got space.  Use shortcuts from hash table for .got
+       and .plt rather than comparing section names.
+       (elf32_hppa_check_relocs): Use local_plt_refcounts var rather than
+       adjusting index into local_got_refcounts to document what we are
+       really doing.
+       (elf32_hppa_relocate_section): Similarly for local_plt_offsets.
+       Tidy .got and .plt error checking.
+
+2001-06-20  Catherine Moore  <clm@redhat.com>
+
+       * elf-bfd.h (struct elf_backend_data):
+       elf_backend_emit_relocs: New field: Function for emitting
+       relocs.
+       elf_backend_count_relocs: New field: Function for determining
+       the number of relocs to be emitted.
+       * elfxx-target.h: Provide default (NULL) values for
+       elf_backend_emit_relocs and elf_backend_count_relocs.
+       * elflink.h (elf_link_size_reloc_section): Make the hash table
+       big enough to hold the relocs counted by either reloc_count or
+       o->reloc_count.
+       (elf_bfd_final_link) emit_relocs: New boolean, set if relocs
+       should be emitted, either because of a command line option
+       stored in the info structure or because the target provides a
+       special reloc emitting function.
+       If the target provides a reloc counting function use it,
+       unless performing a relocatable link or emitting all relocs.
+       Also set the SEC_RELOC flag on any output section which will
+       contain relocs.
+       (elf_link_input_bfd): emit_relocs: New boolean, set if relocs
+       should be emitted, either because of a command line option
+       stored in the info structure or because the target provides a
+       special reloc emitting function.
+       If the target provides a reloc emitting function, use it,
+       unless performing a relocatable link or emitting all relocs.
+
+2001-06-20  H.J. Lu  <hjl@gnu.org>
+
+       * elf32-i386.c (elf_i386_size_dynamic_sections): Always
+       allocate local .got space.
+
+2001-06-19  Andreas Jaeger  <aj@suse.de>
+
+       * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix creation of
+       dynamic symbols.
+
+2001-06-18  Hans-Peter Nilsson  <hp@axis.com>
+
+       * elflink.h (struct elf_assign_sym_version_info): Remove member
+       export_dynamic.  All users changed to use info member.
+       NAME(bfd_elf,size_dynamic_sections)): Remove parameter
+       export_dynamic, instead use member in parameter info.
+       * bfd-in.h (bfd_elf32_size_dynamic_sections,
+       bfd_elf64_size_dynamic_sections): Update prototype.
+       * bfd-in2.h: Regenerate.
+
+2001-06-18  H.J. Lu  <hjl@gnu.org>
+
+       * elflink.h (elf_info_failed): Add a new field, verdefs.
+       (NAME(bfd_elf,size_dynamic_sections): Pass verdefs to
+       elf_export_symbol.
+       (elf_export_symbol): Check eif->verdefs to decide if a symbol
+       should be exported.
+
+2001-06-17  H.J. Lu  <hjl@gnu.org>
+
+       * elf32-mips.c (mips_elf_link_hash_entry): Add a new field,
+       readonly_reloc, to record if a relocation in the .rel.dyn
+       section is against a read-only section.
+       (mips_elf_link_hash_newfunc): Initialize the readonly_reloc
+       field to false.
+       (_bfd_mips_elf_check_relocs): Record if there is a relocation
+       in the .rel.dyn section against a read-only section by setting
+       DF_TEXTREL or readonly_reloc.
+       (_bfd_mips_elf_copy_indirect_symbol): Copy readonly_reloc if
+       it is true.
+       (_bfd_mips_elf_adjust_dynamic_symbol): Record DF_TEXTREL if
+       there is a relocation in the .rel.dyn section against a
+       read-only section.
+       (_bfd_mips_elf_size_dynamic_sections): Set DT_TEXTREL if
+       DF_TEXTREL is set.
+
+2001-06-12  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * coffcode.h (styp_flags_to_sec_flags): Change to a boolean
+       function.  Move flagword result into parameter list.  Remove
+       comment about setting bfd_error_handler to intercept failure
+       results.
+       * coffgen.c (make_a_section_from_file): Examine result of
+       calling bfd_coff_styp_to_sec_flags and pass a failure back to
+       caller.
+       * ecoff.h (styp_flags_to_sec_flags): Change to a boolean
+       function.  Move flagword result into parameter list.
+       * libcoff.h: Regenerate.
+       * libecoff.h: Regenerate.
+
+2001-06-13  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * aoutx.h (adjust_z_magic): Only pad the tesxt section if the data
+       section is going to follow it.
+
+2001-06-12  Catherine Moore  <clm@redhat.com>
+
+       * elflink.h (elf_gc_propagate_vtable_entries): Replace FILE_ALIGN
+       with the file_align entry from elf_backend_data.
+       (elf_gc_smash_unused_vtentry_relocs): Likewise.
+       (elf_gc_record_vtentry): Likewise.
+
+2001-06-10  Alan Modra  <amodra@bigpond.net.au>
+
+       * elflink.h: Whitespace changes.
+       (elf_link_read_relocs_from_section): Use "unsigned int" iterator
+       rather than "unsigned char".
+       (elf_link_output_relocs): Likewise.
+       (elf_link_input_bfd): Likewise.
+       (elf_reloc_link_order): LIkewise.
+       * elf.c: s/CONST/const/.  Whitespace changes.
+       * elf32-mips.c: Formatting fix.
+
+       * Makefile.am (SOURCE_HFILES): Include xcoff-target.h, remove xcoff.h.
+       * Makefile.in: Regenerate.
+       * po/Make-in: Remove trailing tab.
+
+2001-06-09  Philip Blundell  <philb@gnu.org>
+
+       * elf32-arm.h (elf32_arm_plt0_entry): Correct error in last
+       change.
+       (elf32_arm_plt_entry): Likewise.
+
+2001-06-08  H.J. Lu  <hjl@gnu.org>
+
+       * elf.c (swap_out_syms): Keep names for global section symbols.
+
+2001-06-07  H.J. Lu  <hjl@gnu.org>
+
+       * config.bfd: Put back ecoff for Linux/mips. Firmwares on some
+       MIPS-based machines need it.
+
+2001-06-07  H.J. Lu  <hjl@gnu.org>
+
+       * elf32-mips.c (_bfd_mips_elf_object_p): Set the bad symtab
+       for SGI only.
+
+       * config.bfd: Remove ecoff from Linux/mips.
+
+2001-06-07  Andreas Jaeger  <aj@suse.de>
+
+       * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Add an
+       assertion.
+       (elf64_x86_64_check_relocs): Fix VTENTRY relocation; set an
+       alignment of 8 for .rela sections; handle further relocations.
+
+2001-06-06  Christian Groessler <cpg@aladdin.de>
+
+       * coff-z8k.c: Fix formatting.
+       Fix howtos: howto->size was always 1.
+
+2001-06-05  Thiemo Seufer  <seufer@csv.ica.uni-stuttgart.de>
+
+       * configure.host (mips64*-*-linux*): Define.
+
+2001-06-05  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-i386.c (elf_i386_discard_copies): Rename to
+       discard_copies, and use elf_link_hash_entry arg rather than
+       elf_i386_link_hash_entry.
+       (elf_i386_link_hash_traverse): Delete.
+       (elf_i386_size_dynamic_sections): Adjust call to discard_copies.
+       Tidy sizing of dynamic sections.
+       (elf_i386_check_relocs <R_386_32, R_386_PC32>): Reference count
+       possible .plt entries.
+       (elf_i386_gc_sweep_hook): Likewise.
+       (elf_i386_adjust_dynamic_symbol): Discard .plt entries for
+       everything with plt.refcount <= 0.
+
+       * elf32-i386.c (elf_i386_check_relocs): Don't allocate .got and
+       .relgot space here.
+       (elf_i386_gc_sweep_hook): ..and no need to deallocate here..
+       (elf_i386_adjust_dynamic_symbol): ..and don't allocate .plt and
+       .rel.plt here..
+       (allocate_plt_and_got): ..instead do it all here.  New function.
+       (elf_i386_size_dynamic_sections): Allocate local .got space and
+       call allocate_plt_and_got.  No need to zap .relgot if not dynamic.
+       (bfd_elf32_bfd_final_link): Delete.  (ie. use regular final link
+       rather than gc variety).
+       (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
+       (elf_i386_relocate_section): Use it here and correct handling of
+       R_386_GOT32.  Provide section and offset for "unresolvable
+       relocation" error message.
+       (elf_i386_finish_dynamic_symbol): Correct handling of R_386_GOT32.
+
+       * elf32-i386.c (struct elf_i386_link_hash_table): Add sgot,
+       sgotplt, srelgot, splt, srelplt, sdynbss, srelbss fields.
+       (elf_i386_link_hash_table_create): Init them.
+       (create_got_section): New function.
+       (elf_i386_create_dynamic_sections): New function.
+       (elf_backend_create_dynamic_sections): Set to above.
+       (elf_i386_check_relocs): Use shortcuts from hash table rather than
+       calling bfd_get_section_by_name.
+       (elf_i386_gc_sweep_hook): Likewise.
+       (elf_i386_adjust_dynamic_symbol): Likewise.
+       (elf_i386_size_dynamic_sections): Likewise.
+       (elf_i386_relocate_section): Likewise.
+       (elf_i386_finish_dynamic_sections): Likewise.
+
+       * elf32-hppa.c (allocate_plt_and_got): Skip indirect and warning syms.
+
+2001-06-02  H.J. Lu  <hjl@gnu.org>
+
+       * elf32-hppa.c (elf32_hppa_object_p): Check ELFOSABI_LINUX
+       and ELFOSABI_HPUX.
+       * elf64-hppa.c (elf64_hppa_object_p): Likewise.
+
+2001-06-02  H.J. Lu  <hjl@gnu.org>
+
+       * aout-cris.c (MACHTYPE_OK): New. Defined.
+
+2001-06-02  Hans-Peter Nilsson  <hp@axis.com>
+
+       * section.c (_bfd_strip_section_from_output): Handle NULL
+       output_section.
+
+2001-06-02  H.J. Lu  <hjl@gnu.org>
+
+       * config.bfd (powerpc-*-aix*, powerpc-*-beos*, rs6000-*-*): Add
+       rs6000coff64_vec only if BFD64 is defined.
+       (powerpc64-*-aix*): Enable only if BFD64 is defined.
+
+2001-06-02  H.J. Lu  <hjl@gnu.org>
+
+       * coff-ia64.c (ia64coff_object_p): Rewrite with
+       external_PEI_DOS_hdr and external_PEI_IMAGE_hdr.
+
+2001-06-01  Andreas Jaeger  <aj@suse.de>
+
+       * elf64-x86-64.c (elf64_x86_64_relocate_section): Add PC8
+       relocation, small reformatting.
+
+2001-05-29  Andreas Jaeger  <aj@suse.de>
+
+       * elf64-x86-64.c (elf64_x86_64_check_relocs): Handle R_X86_64_64.
+       (elf64_x86_64_relocate_section): Likewise.
+
+2001-05-30  Alan Modra  <amodra@one.net.au>
+
+       * elf32-hppa.c (elf32_hppa_check_relocs): Don't NEED_PLT for
+       millicode.  Don't allocate .got and .rela.got space here..
+       (elf32_hppa_gc_sweep_hook): ..and no need to deallocate here..
+       (elf32_hppa_adjust_dynamic_symbol): ..and don't allocate .plt and
+       .rela.plt here..
+       (hppa_handle_PIC_calls): ..nor here..
+       (allocate_plt_and_got): ..instead do it all here.  New function.
+       (elf32_hppa_size_dynamic_sections): Allocate local .got space and
+       call allocate_plt_and_got.  No need to zap .got if not dynamic.
+       (elf32_hppa_final_link): Call regular bfd_final_link instead of
+       gc_common_final_link.
+       (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
+       (elf32_hppa_relocate_section): Use it here.
+       (elf32_hppa_finish_dynamic_symbol): Remove superfluous test of
+       dynamic_sections_created.
+       (hppa_type_of_stub): Don't LONG_BRANCH_VIA_PLT if millicode sym.
+
+2001-05-28  Andreas Jaeger  <aj@suse.de>
+
+       * elf64-x86-64.c (elf64_86_64_size_info): Remove, we can use the
+       generic version since we want a hashsize of 4.
+       (elf_backend_size_info): Likewise.
+
+2001-05-28  Thiemo Seufer  <seufer@csv.ica.uni-stuttgart.de>
+
+       * elflink.h (elf_link_size_reloc_section): Use bfd_zmalloc instead of
+       a zeroing loop.
+       (elf_link_output_relocs): Handle MIPS ELF64 relocations correctly.
+       (elf_link_input_bfd): Likewise.
+       (elf_reloc_link_order): Likewise.
+       (elf_finish_pointer_linker_section): Typo. Handle MIPS ELF64
+       relocations correctly.
+
+2001-05-28  Nicolas Pitre <nico@cam.org>
+
+       * elf32-arm.h: fix PLT generation for big endian ARM
+
+2001-05-28  Alan Modra  <amodra@one.net.au>
+
+       * elf32-hppa.c (elf32_hppa_relocate_section): Set up .plt entries
+       for symbols forced local that need plabels.
+       (elf32_hppa_adjust_dynamic_symbol): Don't allocate space in
+       .plt.rela for local syms if non-shared.
+       (hppa_build_one_stub): Mask lsb of plt.offset.
+       (elf32_hppa_finish_dynamic_symbol): Abort if lsb of plt.offset set.
+       (clobber_millicode_symbols): Correct comment.
+       (elf32_hppa_relocate_section): Likewise.
+       (elf32_hppa_finish_dynamic_symbol): Likewise.
+
+2001-05-28  Jeff Sturm  <jsturm@one-point.com>
+
+       * reloc.c: Add BFD_RELOC_SPARC_UA16 and BFD_RELOC_SPARC_UA64.
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+       * elf32-sparc.c: Enable BFD_RELOC_SPARC_UA16, BFD_RELOC_SPARC_UA32
+       and BFD_RELOC_SPARC_UA64 mapping
+       * elf64-sparc.c: Likewise.
+
+2001-05-25  H.J. Lu  <hjl@gnu.org>
+
+       * Makefile.am (BFD32_BACKENDS): Remove coff-pmac.lo.
+       (BFD32_BACKENDS_CFILES): Remove coff-pmac.c.
+       (coff-rs6000.lo): Remove the old dependency.
+       * Makefile.in: Rebuild.
+
+       * configure.in (pmac_xcoff_vec): Replace coff-pmac.lo with
+       coff-rs6000.lo.
+
+2001-05-25  H.J. Lu  <hjl@gnu.org>
+
+       * coff-rs6000.c (rs6000coff_vec): Use rs6000coff_core_p,
+       rs6000coff_core_file_matches_executable_p,
+       rs6000coff_core_file_failing_command and
+       rs6000coff_core_file_failing_signal only if AIX_CORE is
+       defined.
+       (pmac_xcoff_vec): Likewise.
+       * coff64-rs6000.c (rs6000coff64_vec): Likewise.
+
 2001-05-25  Timothy Wall  <twall@redhat.com>
 
        * elfxx-ia64.c (allocate_dynrel_entries): Don't allocate an entry
 
 2001-05-24  Tom Rix <trix@redhat.com>
 
-        * Makefile.am coff-pmac bfd now defined in coff-rs6000.c
+       * Makefile.am coff-pmac bfd now defined in coff-rs6000.c
        xcoff-target.h not used to define rs6000 or ppc bfd.
        * Makefile.in same
 
        linker now supported.  Explictly define the rs6000coff64_vec.
 
        * coffcode.h : (coff_set_arch_mach_hook) xcoff 64 bit support
-       (coff_print_aux) same 
+       (coff_print_aux) same
        (coff_write_object_contents) same
        (coff_slurp_line_table) same
 
 
        * libxcoff.h : New file
 
-       * xcofflink.c : Many changes for xcoff64 support.  Move common 
-       structures to include/coff/xcoff.h.  Move specific structure to 
+       * xcofflink.c : Many changes for xcoff64 support.  Move common
+       structures to include/coff/xcoff.h.  Move specific structure to
        backends coff-rs6000.c and coff64-rs6000.c.   Use new backend
        functions, defined in libxcoff.h, to isolate 32/64 dependencies.
-       
-       (bfd_xcoff_size_dynamic_sections) : special __rtinit symbol for 
+
+       (bfd_xcoff_size_dynamic_sections) : special __rtinit symbol for
        aix4.2+ -binitfini.
 
        (xcoff_build_ldsyms) : handle special __rtinit symbol.
 
        * reloc.c (bfd_reloc_code_real): Add MIPS ELF64 relocations.
        * libbfd.h: Regenerate.
-       * bfd0in2.h: Regenerate.
+       * bfd-in2.h: Regenerate.
 
        * aoutx.h (aout_@var{size}_machine_type): Add MIPS r12k support.
        * archures.c (bfd_mach_mips12000): Define.
 
        * elf-bfd.h (NUM_SHDR_ENTRIES): New macro: compute the number
        of entries in a structured section.
-        * elf.c: Use new macro.
-        * elf32-i386.c: Use new macro.
-        * elf32-mips.c: Use new macro.
-        * elf64-alpha.c: Use new macro.
-        * elf64-sparc.c: Use new macro.
-        * elfcode.h: Use new macro.
-        * elflink.h: Use new macro.
+       * elf.c: Use new macro.
+       * elf32-i386.c: Use new macro.
+       * elf32-mips.c: Use new macro.
+       * elf64-alpha.c: Use new macro.
+       * elf64-sparc.c: Use new macro.
+       * elfcode.h: Use new macro.
+       * elflink.h: Use new macro.
 
 2001-05-23  Nick Clifton  <nickc@cambridge.redhat.com>
 
 2001-05-04  Nick Clifton  <nickc@cambridge.redhat.com>
 
        * elf32-arm.h (elf32_arm_final_link_relocate): Set
-        EF_ARM_HASENTRY if the start address is set.
+       EF_ARM_HASENTRY if the start address is set.
 
 2001-05-03  Nick Clifton  <nickc@cambridge.redhat.com>
 
 
 2001-05-02  Johan Rydberg  <jrydberg@opencores.org>
 
-        * elf32-openrisc.c (openrisc_elf_howto_table): Do not complain
+       * elf32-openrisc.c (openrisc_elf_howto_table): Do not complain
        about overflow in R_OPENRISC_LO_16_IN_INSN and
        R_OPENRISC_HI_16_IN_INSN.Index: bfd/elf32-openrisc.c
 
 2001-03-23  Nick Clifton  <nickc@redhat.com>
 
        * Makefile.am (BUILD_CFILES): New variable: List of C source
-        files created in build directory.
-        (BUILD_HFILES): New variable: List of header files created in
-        build directory.
-        (POTFILES): Delete.
-        (po/POTFILES.in): Replace rule with empty entry.
-        (po/SRC-POTFILES.in): New rule: Create a list of source files
-        in the source directory.
-        (po/BLD-POTFILES.in): New rule: Create a list of source files
-        in the build directory.
-        (MOSTLYCLEAN): Do not delete source files created in build
-        directory.
-        * Makefile.in: Regenerate.
-        * configure.in: Insert SRC-POTFILES.in and BLD-POTFILES.in
-        into po/Makefile.
-        * configure: Regenerate.
-
-        * po/Make-in: Replace occurrences of POTFILES with SRC-POTFILES
-        and BLD_POTFILES.
+       files created in build directory.
+       (BUILD_HFILES): New variable: List of header files created in
+       build directory.
+       (POTFILES): Delete.
+       (po/POTFILES.in): Replace rule with empty entry.
+       (po/SRC-POTFILES.in): New rule: Create a list of source files
+       in the source directory.
+       (po/BLD-POTFILES.in): New rule: Create a list of source files
+       in the build directory.
+       (MOSTLYCLEAN): Do not delete source files created in build
+       directory.
+       * Makefile.in: Regenerate.
+       * configure.in: Insert SRC-POTFILES.in and BLD-POTFILES.in
+       into po/Makefile.
+       * configure: Regenerate.
+
+       * po/Make-in: Replace occurrences of POTFILES with SRC-POTFILES
+       and BLD_POTFILES.
        Add .. to the search path when building bfd.pot.
-        Delete POTFILES when performing distclean.
-        Add comment describing why distclean is broken in maintainer mode.
+       Delete POTFILES when performing distclean.
+       Add comment describing why distclean is broken in maintainer mode.
        * po/POTFILES.in: Delete.
        * po/SRC-POTFILES.in: New file.
        * po/BLD-POTFILES.in: New file.
-        * po/bfd.pot: Regenerate.
+       * po/bfd.pot: Regenerate.
 
 2001-03-22  Hans-Peter Nilsson  <hp@axis.com>
 
        of offset in BLX(1) instruction.
        * coff-arm.c (coff_arm_relocate_section): Clear bit zero of
        offset in BLX(1) instruction.
-        Fix formatting.
+       Fix formatting.
 
 2001-03-06  Nick Clifton  <nickc@redhat.com>
 
 
        * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Tidy
        up, replacing multiple if statements with a switch.
-        (handle_COMDAT): New function.
+       (handle_COMDAT): New function.
 
 2001-02-26  H.J. Lu  <hjl@gnu.org>
 
This page took 0.031672 seconds and 4 git commands to generate.