Ian Lance Taylor
28c16b5525
* elflink.h (elf_bfd_final_link): Don't output initial dummy
...
symbol or section symbols if stripping all symbols and this is not
a relocateable link. Don't output the symbol string table if
there are no symbols.
(elf_link_flush_output_syms): Don't do anything if there are no
symbols to flush.
1996-01-31 21:22:02 +00:00
Ian Lance Taylor
d19df9b51f
Wed Jan 31 12:55:49 1996 Richard Henderson <rth@tamu.edu>
...
* coff-aux.c: New file.
* hosts/m68kaux.h: New file.
* config.bfd (m68*-apple-aux*): New target.
* configure.in (m68*-apple-aux*): New native host.
(m68kaux_coff_vec): New vector.
* configure: Rebuild.
* targets.c (m68kaux_coff_vec): Declare.
* coffcode.h (bfd_coff_backend_data): Add field
_bfd_coff_link_add_one_symbol.
(bfd_coff_link_add_one_symbol): Define.
(compare_arelent_ptr): New static function if TARG_AUX.
(coff_write_relocs): If TARG_AUX, sort the relocs.
(coff_write_object_contents): Set A/UX aouthdr magic number.
(coff_link_add_one_symbol): Define if not defined.
(bfd_coff_std_swap_table): Initialize new field.
* libcoff.h: Rebuild.
* cofflink.c (coff_link_add_symbols): Call
bfd_coff_link_add_one_symbol rather than
_bfd_generic_link_add_one_symbol.
* coff-m68k.c (COFF_PAGE_SIZE): Don't define if already defined.
* coff-alpha.c (alpha_ecoff_backend_data): Initialize new field.
* coff-mips.c (mips_ecoff_backend_data): Likewise.
* Makefile.in: Rebuild dependencies.
(BFD32_BACKENDS): Add coff-aux.o.
(BFD32_BACKENDS_CFILES): Add coff-aux.c.
1996-01-31 18:17:12 +00:00
Ian Lance Taylor
a796aafdd7
Wed Jan 31 11:37:46 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
...
* elf32-m68k.c (elf_m68k_relocate_section): Fix R_68K_GOT*
relocation; ignore addend with R_68K_{GOT,PLT}*O relocation.
1996-01-31 16:38:20 +00:00
Ian Lance Taylor
66761e5994
* Makefile.in (do_maintainer_clean): Remove $(srcdir)/bfd-in2.h,
...
$(srcdir)/libbfd.h and $(srcdir)/libcoff.h.
(maintainer-clean): Warn about deleting special files.
(bfd-in2.h, libbfd.h, libcoff.h): New targets.
1996-01-30 18:49:10 +00:00
Ian Lance Taylor
cf5138e388
* elf32-hppa.c (elf32_hppa_relocate_section): Handle indirect and
...
warning symbols correctly.
* elf32-i386.c (elf_i386_relocate_section): Likewise.
* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
* elf32-mips.c (mips_elf_relocate_section): Likewise.
* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
1996-01-30 18:18:17 +00:00
Ian Lance Taylor
a8763553e4
* syms.c (_bfd_stab_section_find_nearest_line): Add casts to avoid
...
warnings.
1996-01-30 17:09:29 +00:00
Ian Lance Taylor
eb5bc1f397
From Basim Kadhim <kadhim@spock.cs.colorado.edu>:
...
* ecoff.c (struct extsym_info): Define.
(_bfd_ecoff_bfd_final_link): Pass a pointer to struct extsym_info
to ecoff_link_write_external.
(ecoff_link_write_external): Accept a struct extsym_info pointer.
Strip symbols when appropriate.
1996-01-30 00:01:44 +00:00
Ian Lance Taylor
052b35d2e7
Based on patches from Ronald F. Guilmette <rfg@monkeys.com>:
...
* syms.c (BSF_OBJECT): Define.
(bfd_print_symbol_vandf): Print 'O' for BSF_OBJECT.
* bfd-in2.h: Rebuild.
* elfcode.h (elf_slurp_symbol_table): Set BSF_OBJECT for an
STT_OBJECT symbol.
* elf.c (swap_out_syms): Only set type to STT_OBJECT if BSF_OBJECT
is set.
1996-01-29 22:04:32 +00:00
Ian Lance Taylor
53787b2316
* elf32-i386.c (elf_i386_relocate_section): If -Bsymbolic, when
...
copying relocs into a shared object, treat a defined global symbol
as a local symbol.
* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
* elf32-mips.c (mips_elf_relocate_section): Likewise.
* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1996-01-29 20:01:29 +00:00
Kim Knuttila
bdd2e7f179
Fixed exported names, removed a bad define
1996-01-29 19:31:34 +00:00
Ian Lance Taylor
d2bb6c7900
* elflink.h (elf_link_add_object_symbols): Only set weakdef to a
...
real defined symbol, not to a weak defined symbol.
1996-01-29 18:09:20 +00:00
Kim Knuttila
13d1a4dda9
Removed a ppc hack from cofflink, promoted some types to libcoff-in.h
1996-01-29 17:44:41 +00:00
Ian Lance Taylor
86aac8eabe
* syms.c: Include "bfdlink.h".
...
(struct stab_find_info): Define.
(_bfd_stab_section_find_nearest_line): New function.
* libbfd-in.h (_bfd_stab_section_find_nearest_line): Declare.
* libbfd.h: Rebuild.
* elf-bfd.h (struct elf_obj_tdata): Add line_info field.
* elf.c (_bfd_elf_find_nearest_line): Try calling
_bfd_stab_section_find_nearest_line before searching the ELF
symbol table. Find the closest STT_FUNC symbol, not the last one.
* libcoff-in.h (coff_data_type): Add line_info field.
* libcoff.h: Rebuild.
* coffgen.c (coff_find_nearest_line): Try calling
_bfd_stab_section_find_nearest_line before searching the COFF
symbol table.
* Makefile.in: Rebuild dependencies.
1996-01-26 23:42:58 +00:00
Ian Lance Taylor
f0a97077c8
* libcoff-in.h (struct xcoff_tdata): Remove toc_section and
...
entry_section fields. Add sntoc and snentry fields.
* libcoff.h: Rebuild.
* coffcode.h (coff_mkobject_hook): Initialize sntoc and snentry,
not toc_section and entry_section (the COFF file does not have any
sections at this point).
(coff_write_object_contents): Set o_snentry and o_sntoc from
snentry and sntoc rather than entry_section and toc_section.
* coff-rs6000.c (xcoff_copy_private_bfd_data): Copy sntoc and
snentry, not toc_section and entry_section.
* xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't set
entry_section from hentry.
(xcoff_link_input_bfd): If a defined symbol has XCOFF_ENTRY set,
set snentyr.
(xcoff_link_input_bfd): Set sntoc, not toc_section.
(xcoff_write_global_symbol): Get toc_section from sntoc, rather
than using toc_section directly.
1996-01-25 22:51:06 +00:00
Michael Meissner
c1e65e244c
Make eabi error messages include symbol name if it is an external symbol
1996-01-25 22:35:51 +00:00
Ian Lance Taylor
9b4598d0a8
* archures.c: Add missing `.' in enum bfd_architecture.
...
* bfd-in2.h: Rebuild.
1996-01-25 20:05:29 +00:00
Ian Lance Taylor
43d36aad03
* config.bfd (i[345]86-*-sco*elf*): Use bfd_elf32_i386_vec. From
...
Robert Lipe <robertl@arnet.com>.
1996-01-25 17:18:42 +00:00
Michael Meissner
eb82bc605f
Add more eabi relocations
1996-01-25 17:15:24 +00:00
Michael Meissner
9d621c7d32
Fix typo in eabl relocations
1996-01-25 01:46:57 +00:00
David Edelsohn
72c513bc76
* config.bfd (sparc64-*-{sysv4*,solaris2*}): Comment out
...
bfd_elf64_sparc_vec support.
1996-01-24 19:19:22 +00:00
David Edelsohn
75c9ddc9c5
* elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Delete checking
...
of flags, only flags used are controlled by mach number. Bump up
output file mach number to highest of input file mach numbers.
(elf32_sparc_object_p): Watch for EF_SPARC_SUN_US1.
(elf32_sparc_final_write_processing): Set EF_SPARC_SUN_US1 if v8plusa.
Also, delete v8plus sanitization.
1996-01-24 18:45:50 +00:00
Ian Lance Taylor
4a3d3b42bd
* coffcode.h (coff_new_section_hook): Don't try to align the
...
.stabstr section.
1996-01-23 22:27:47 +00:00
Michael Meissner
d8fd85ada3
Implement R_PPC_EMB_{SDA21,RELSDA} relocations
1996-01-23 20:11:13 +00:00
Michael Meissner
3cbe19d280
Do not complain if some objects have the embedded bit set and others do not.
1996-01-23 19:35:11 +00:00
Ian Lance Taylor
5eb83edeab
* coffcode.h (coff_set_section_contents): Fix the handling of the
...
.lib section to work even if the entire section contents are
written at once. From Gvran Uddeborg <gvran@uddeborg.pp.se> and
Robert Lipe <robertl@arnet.com>.
1996-01-23 19:26:01 +00:00
David Edelsohn
049f3d4c75
* bfd-in2.h: Regenerated.
1996-01-23 00:44:17 +00:00
Michael Meissner
05f927dd46
Make 64k .sdata and .sdata2 sections work; fix typos
1996-01-22 23:55:25 +00:00
David Edelsohn
768b8ade69
(sparc_compatible): New function.
1996-01-22 21:06:43 +00:00
David Edelsohn
5a5bac6471
* elflink.h (elf_finish_pointer_linker_section): Fix typo.
1996-01-22 18:17:16 +00:00
David Edelsohn
d3366d234d
* elf64-sparc.c (sparc64_elf_object_p): bfd_mach_sparc64 renamed to
...
bfd_mach_sparc_v9.
1996-01-22 17:18:05 +00:00
David Edelsohn
5bc513b4fb
* archures.c (bfd_mach_sparc_v9): Renamed from bfd_mach_sparc64.
...
start-sanitize-v8plus
(bfd_mach_sparc_{v8plus,v8plusa}): Define.
end-sanitize-v8plus
(bfd_mach_sparc_v9a): Define.
* bfd-in2.h: Regenerated.
* aoutx.h (aout,machine_type): bfd_mach_sparc64 renamed to
bfd_mach_sparc_v9.
* config.bfd (sparc64-*-sysv4*,sparc64-*-solaris2*): Set targ_defvec
to bfd_elf32_sparc_vec.
* cpu-sparc.c (arch_info_struct): Renamed from sparc_arch_info.
start-sanitize-v8plus
Add v8plus{,a} support.
end-sanitize-v8plus
Add v9a support.
start-sanitize-v8plus
* elf32-sparc.h: #include "elf/sparc.h".
(elf32_sparc_set_private_flags, elf32_sparc_copy_private_bfd_data,
elf32_sparc_merge_private_bfd_data, elf32_sparc_object_p,
elf32_sparc_final_write_processing): New functions.
(bfd_elf32_bfd_set_private_flags, bfd_elf32_bfd_copy_private_bfd_data,
bfd_elf32_bfd_merge_private_bfd_data, elf_backend_object_p,
elf_backend_final_write_processing): Define.
end-sanitize-v8plus
1996-01-22 17:15:49 +00:00
Michael Meissner
3b3753b874
snapshot of eabi relocation support.
1996-01-22 16:43:35 +00:00
David Edelsohn
065822fc3d
Oops. Forgot sanitization.
1996-01-20 17:05:56 +00:00
David Edelsohn
6b3eb07e98
* elf32-sparc.c (ELF_MACHINE_ALT1): Define.
1996-01-20 16:53:44 +00:00
Kim Knuttila
e7894f6b5d
Numerous PowerPC PE fixes
1996-01-19 00:16:31 +00:00
Ian Lance Taylor
80b99ca092
* elfcore.h: Include <signal.h> before <sys/procfs.h>.
...
PR 8807.
1996-01-18 22:42:41 +00:00
Ian Lance Taylor
df96df4caf
* cpu-powerpc.c (arch_info_struct): Change last entry to not point
...
back to first.
(bfd_powerpc_arch): Point at first entry in arch_info_struct.
1996-01-17 17:48:30 +00:00
Ian Lance Taylor
d49ddb8575
* elf.c (assign_file_positions_for_segments): Don't increment file
...
offset for a segment which contains no loadable sections.
1996-01-16 20:53:04 +00:00
Michael Meissner
4500a1128e
Add new PPC relocations
1996-01-15 22:50:07 +00:00
Ian Lance Taylor
20ab764e38
* aoutx.h (howto_table_ext): Fix RELOC_BASE10 and RELOC_BASE22
...
entries.
1996-01-15 22:37:16 +00:00
Ian Lance Taylor
0a4ffa2dc4
* sunos.c (sunos_scan_ext_relocs): Don't fail assert if
...
info->shared.
1996-01-15 22:00:38 +00:00
Ian Lance Taylor
45ca3195d5
* coffgen.c (coff_find_nearest_line): Don't try to cache
...
information in sections that are not owned by a BFD. From Richard
Henderson <richard@atheist.tamu.edu>.
1996-01-15 20:47:32 +00:00
Ian Lance Taylor
252239f877
* elf32-mips.c: Numerous changes to dynamic linking code, mostly
...
from Kazumoto Kojima <kkojima@info.kanagawa-u.ac.jp>.
* elflink.h (elf_link_output_extsym): Remove special check for
_rld_new_interface.
1996-01-15 20:25:53 +00:00
Michael Meissner
bd2d10c006
Redo unknown reloc support. Do not allow symbols in .sdata/.sbss to satify a TOC16 relocation. Begin support R_PPC_SDA{2,}REL relocation.
1996-01-15 02:41:58 +00:00
Michael Meissner
1c3a295b13
Warn about relocations we do not yet support
1996-01-13 14:40:50 +00:00
Ian Lance Taylor
14899eb7f2
* elf.c (assign_file_positions_for_segments): If a segment
...
contains no sections, don't mark it as readable.
1996-01-12 22:47:04 +00:00
Ian Lance Taylor
98bb57ad8e
* elf-bfd.h (_bfd_elf_section_from_bfd_section): Declare.
...
* elfcode.h (_bfd_elf_section_from_bfd_section): Don't declare.
1996-01-12 20:48:14 +00:00
Michael Meissner
57081126b6
Add PowerPC support for SHF_EXCLUDE, SHT_ORDERED
1996-01-12 20:31:05 +00:00
Ian Lance Taylor
02fcd12620
* elf.c (_bfd_elf_print_private_bfd_data): Dump contents of
...
dynamic section, if there is one.
* elf-bfd.h (struct elf_size_info): Add swap_dyn_in field.
(bfd_elf32_swap_dyn_in): Change type of second parameter to PTR.
(bfd_elf64_swap_dyn_in): Likewise.
* elfcode.h (elf_swap_dyn_in): Change type of second parameter to
PTR.
(NAME(_bfd_elf,size_info)): Initialize swap_dyn_in field.
1996-01-12 19:13:49 +00:00
Ian Lance Taylor
3c38b3df0c
* elf32-i386.c (elf_i386_size_dynamic_sections): Don't create a
...
DT_TEXTREL entry because of .rel.plt. From Martin Pirker
<pirker@eiunix.tuwien.ac.at>.
1996-01-12 19:00:18 +00:00