* elf32-m68k.c (elf_m68k_check_relocs): Also reference count
R_68K_PCxx and R_68K_xx relocations. Make sure that
ELF_LINK_HASH_NEEDS_PLT is always set for a PLT reloc reference.
(elf_m68k_gc_sweep_hook): Also reference count R_68K_PCxx and
R_68K_xx relocations.
(elf_m68k_adjust_dynamic_symbol): Reset the plt offset of a symbol
that has no plt entry.
(elf_m68k_relocate_section): Ignore the plt offset in a static
link.
* elflink.h (elf_adjust_dynamic_symbol): Reset the plt offset for
an ignored symbol.
(elf_gc_common_finalize_got_offsets): Set the got offsets also in
a static link.
* elf32-m68k.c (R_68K_GNU_VTINHERIT, R_68K_GNU_VTENTRY): New reloc
types.
(howto_table, reloc_map): Add entries for them.
(elf_m68k_check_relocs): Handle them. Implement reference
counting for got and plt entries.
(elf_m68k_gc_mark_hook, elf_m68k_gc_sweep_hook): New functions.
(elf_m68k_adjust_dynamic_symbol): Handle unreferenced plt
symbols.
(rtype_to_howto_rel, elf_info_to_howto_rel): Delete.
(elf_m68k_relocate_section): Handle the new reloc types.
(bfd_elf32_bfd_final_link, elf_backend_gc_mark_hook,
elf_backend_gc_sweep_hook, elf_backend_can_gc_sections): Define.
* elflink.h (elf_link_add_object_symbols): When creating an
indirect reference for symbol versioning also copy the plt
offset.
(elf_fix_symbol_flags): When clearing the ELF_LINK_HASH_NEEDS_PLT
flag also reset the plt offset.
(elf_link_assign_sym_version): Likewise.
(elf_gc_common_finalize_got_offsets): Increment the got offset by
the size of the entry in bytes.
(elf_gc_allocate_got_offsets): Likewise.
Tue Jul 14 11:18:14 1998 Ian Lance Taylor <ian@cygnus.com>
* elflink.h (elf_gc_sections): Return true rather than falling off
the bottom.
a PT_LOAD segment, rather than only setting it once for the entire
file.
* elf.c (_bfd_elf_make_section_from_shdr): When setting the LMA,
rather than ignoring every phdr with a p_paddr of 0, ignore all
the phdrs if they all have a p_paddr of 0.
* elf-m10300.c: Include elf/mn10300.h
(elf_mn10300_mach): New function.
(_bfd_mn10300_elf_final_write_processing): Likewise.
(_bfd_mn10300_elf_object_p): Likewise.
(elf_backendfinal_write_processing): Define.
(elf_backend_object_p): Likewise.
start-sanitize-am33
* archures.c (bfd_mach_am33): Define.
* cpu-m10300.c (bfd_am33_arch): New arch info structure. Link it
into the NEXT field of bfd_mn10300_arch.
end-sanitize-am33
* elf32-ppc.c (ppc_elf_relocate_section): The target of an
R_PPC_LOCAL24PC relocation should be local; if not, print an error
message instead of crashing.
* archures.c (bfd_mach_cpu32): Define.
(bfd_default_scan): Add case for 68060. Fix 68332 case to use
bfd_mach_cpu32.
* cpu-m68k.c (arch_info_struct): Add m68k:cpu32.
* ieee.c: Include <ctype.h>.
(ieee_object_p): Parse out process ID string to make it more
likely to be acceptable for bfd_scan_arch.
* bfd-in2.h: Rebuild.