Commit Graph

1337 Commits

Author SHA1 Message Date
Jeff Law 9ea5de84ab * som.c (som_object_setup): More heruistics to detect the
braindamaged HP OSF1 linker.
	(setup_sections): Don't forget to free subspace_sections if we get
	an error.
	(som_slurp_string_table): Allocate strings on this bfd's obstack
	rather than directly out of the heap.
	(som_slurp_symbol_table): Likewise for the saved copy of the
	canonical symbols.
	(som_slurp_reloc_table): Likewise for the saved copy of the
	canonical relocations.  Free the native relocations when we're
	done with them.
1995-02-01 08:35:40 +00:00
David Edelsohn ef6fb95dea * libelf.h (struct elf_obj_tdata): New member program_header_size.
* elfcode.h (get_program_header_size): New parameters sorted_hdrs,
	count, and maxpagesize.  All callers updated.
	If sorted_hdrs is non-NULL, use it to compute the number of segments.
	Save result in case called again.
	(assign_file_positions_except_relocs): Sort headers before calling
	get_program_header_size.
1995-02-01 05:56:53 +00:00
Ian Lance Taylor 5945db2997 * elfcode.h (map_program_segments): Add sorted_hdrs parameter.
Search through it rather than through unsorted section headers.
	(assign_file_positions_except_relocs): Pass sorted_hdrs to
	map_program_segments.
1995-01-31 20:55:25 +00:00
Ken Raeburn 3e46110757 * ecoff.c (_bfd_ecoff_find_nearest_line): Fix problems in range checking.
Expect argument OFFSET to be section-relative.  From David Mosberger-Tang,
davidm@piston.cs.arizona.edu.
1995-01-31 03:57:31 +00:00
Jeff Law 8bc3e02c9d * som.c (compare_subspaces): New function to sort subspaces by
their location in the object file.
	(setup_sections): When computing the index for each subspace,
	handle case where setup_sections reads the subspaces in a
	different order that they appear in the object file.
	(som_is_space): Also examine the output section for the containing
	section.
	(som_is_subspace, som_is_container): Likewise.
	(som_begin_writing): Don't prepare or write fixups here.  When
	writing the symbol strings, use the unsorted symbol table.
	(som_write_object_contents): Don't write the symbol table here.
	(som_finish_writing): Prepare and write the fixups here.  Likewise
	for the symbol table.
	(som_bfd_derive_misc_symbol_info): Undefined symbols always have
	type SS_UNSAT regardless of BSF_EXPORT.
	(som_set_reloc_info): Unpack and attach argument location
	information for R_PCREL_CALL and R_ABS_CALL relocations.
1995-01-29 06:37:35 +00:00
Jeff Law fede999213 * som.c (som_object_setup): New heuristic to determine if the
entry and flags fields are switched in the exec header.
1995-01-28 19:50:52 +00:00
Ian Lance Taylor cd9dba7b37 * elfcode.h (elf_link_add_object_symbols): Use *sym_hash instead
of h if we might not be doing an ELF link.
1995-01-28 05:17:04 +00:00
Ian Lance Taylor cea133af7f * elf32-mips.c (mips_elf_final_link): If the size of an input
.reginfo section is zero, force it to the correct size, since the
	linker emulation code may have clobbered it.
1995-01-27 21:27:33 +00:00
Ian Lance Taylor 6977046f0f * elfcode.h (elf_sort_hdrs): Correct SHF_ALLOC test.
(assign_file_positions_except_relocs): Free sorted_hdrs.
1995-01-27 21:24:28 +00:00
Steve Chamberlain 7896128dfa * srec.c (srec_set_section_contents): Fix off by
one end address calculation.
1995-01-27 16:41:11 +00:00
Ian Lance Taylor 4b412ed189 * elfcode.h (elf_link_add_object_symbols): Only examine weakdef if
we are using an ELF hash table.
1995-01-26 21:48:14 +00:00
Steve Chamberlain 61a914c923 * config.bfd: (m68*-est-coff): New configuration. 1995-01-26 17:37:31 +00:00
Ian Lance Taylor e83e94effd * aoutx.h (NAME(aout,some_aout_object_p)): Always set EXEC_P if
the start address is in the .text section, even if STAT_FOR_EXEC
	is set.  Just use STAT_FOR_EXEC as an additional test.
1995-01-26 16:43:54 +00:00
Michael Meissner c6d729b375 Add new relocs for PowerPC Elf support.
Add eabi support.
1995-01-26 16:31:24 +00:00
Ian Lance Taylor e079cfe890 * coff-sh.c (CALC_ADDEND): Don't define.
(coff_sh_relocate_section): Remove.
	(coff_relocate_section): Use _bfd_coff_generic_relocate_section.
1995-01-26 04:27:50 +00:00
Ian Lance Taylor 16fe8950ad * elf32-mips.c (mips_elf_output_extsym): Set the value of the
ECOFF symbol from the hash table entry.
1995-01-24 19:27:35 +00:00
Steve Chamberlain c525c3afcb Mon Jan 23 14:53:35 1995 Steve Chamberlain <sac@splat>
* coff-sh.c (coff_sh_relocate_section):  Don't subtract
	vma twice.
1995-01-23 22:57:30 +00:00
Ian Lance Taylor 6e3acf74d0 * coff-sh.c (sh_reloc): Don't ignore the previous contents of an
R_SH_IMM32 reloc.
PR 6215.
1995-01-23 22:32:18 +00:00
Ian Lance Taylor 6e7f3f077b x 1995-01-23 19:01:41 +00:00
Ian Lance Taylor 123bfaa5ec * opncls.c (bfd_openstreamr): Call bfd_cache_init. 1995-01-23 18:35:07 +00:00
Ian Lance Taylor 04dc16b76b * sunos.c (sunos_add_one_symbol): Only set the sunos specific
fields if we are doing a sunos link.
1995-01-20 16:57:34 +00:00
Ian Lance Taylor d01a0278a0 * bfd-in.h (bfd_byte, reloc_howto_type): Define here, not...
* reloc.c (bfd_byte, reloc_howto_type): here.
	* Changed all occurrences of ``const struct reloc_howto_struct''
	to be ``reloc_howto_type'' instead.
	* bfd-in2.h, libbfd.h, libcoff.h: Rebuilt.
Avoids problems with the native Irix 5 compiler.
1995-01-17 21:16:53 +00:00
Ian Lance Taylor 8a51b06cf6 * opncls.c (bfd_openstreamr): New function.
* bfd-in2.h: Rebuilt.
1995-01-17 19:26:56 +00:00
Ian Lance Taylor 6a5848cd10 * elf32-mips.c (enum reloc_type): Define new relocs used on Irix.
(elf_mips_howto_table): Add entries for new relocs.
	(mips_elf_section_from_shdr): Handle SHT_MIPS_MSYM,
	SHT_MIPS_DWARF, and SHT_MIPS_EVENTS.
	(mips_elf_fake_sections): Handle sections named .msym, .debug_*
	and .MIPS.events.*.
1995-01-17 15:55:55 +00:00
Steve Chamberlain c21b376fc6 * archures.c, Makefile.in, targets.c, bfd-in2.h, coffcode.h,
config.bfd, configure.in, config/w65.mt: Initial support for the W65.
1995-01-16 05:39:06 +00:00
Steve Chamberlain 9560e662d0 Sun Jan 15 13:57:45 1995 Steve Chamberlain <sac@splat>
* opncls.c (bfd_fdopenr): Configure for WIN32.
1995-01-15 22:04:02 +00:00
Ken Raeburn c3fcc07805 Makefile changes for arc, rce, diststuff.
Const fixes and hex_value changes to various files.
1995-01-12 21:46:17 +00:00
Peter Schauer b69fe36371 * hosts/symmetry.h: Redefine `shared' to enable compilation
with the native Dynix cc compiler.
	* i386dynix.c:  Include aoutx.h instead of using routines
	from aout32.c.
1995-01-12 18:33:52 +00:00
Ken Raeburn 9c84b228d8 Forgot an entry in last checkin:
* ecoff.c (ecoff_type_to_string): Local variable `buffer1' doesn't
	need to be static.
1995-01-12 02:44:45 +00:00
Ken Raeburn 82b1edf7b9 Change "reloc_howto_type" typedef to be "const", since all uses of it are (or
should be) anyways.
1995-01-12 02:41:04 +00:00
Ian Lance Taylor 788d94361f * sunos.c (sunos_add_one_symbol): Don't core dump if a multiple
definition of an absolute symbol is encountered.
1995-01-11 19:42:28 +00:00
Ian Lance Taylor 040c913e18 * linker.c (_bfd_generic_link_add_one_symbol): Ignore
redefinitions of an absolute symbol to the same value.
PR 6159.
1995-01-11 19:38:06 +00:00
Ian Lance Taylor f78b396350 * elfcode.h (elf_link_add_object_symbols): It's reasonable for no
flags to be set, so don't insist otherwise.
1995-01-09 20:52:59 +00:00
Ian Lance Taylor 42cf6d7950 * elfcode.h (elf_slurp_symbol_table): Don't set BSF_GLOBAL for an
undefined or common symbol.
	(elf_link_add_object_symbols): Likewise.
1995-01-06 21:50:28 +00:00
Jeff Law eb57c77670 * som.c (bfd_section_from_som_symbol): Only return sections which
correspond to subspaces.
1995-01-05 00:34:07 +00:00
Jeff Law 1b56797098 * som.c (som_begin_writing): Don't forget to bump the
total_subspaces when writing the unloadable subspaces.
1995-01-04 21:15:42 +00:00
Jeff Law c3a1888801 * som.c (som_write_fixups): Use SEC_HAS_CONTENTS to identify
bss-like sections.
	(som_get_section_contents): Likewise.
	(som_set_section_contents): Likewise.
1994-12-29 03:56:20 +00:00
Ken Raeburn 8675437ee1 coffgen.c changes checked in last tuesday -- forgot to check in the log entry 1994-12-27 21:41:33 +00:00
Jeff Law 5faa346b63 * som.c (setup_sections): Turn off SEC_HAS_CONTENTS for bss-like
sections.
1994-12-27 21:05:10 +00:00
Ian Lance Taylor f10d31aa32 * i386linux.c (linux_add_one_symbol): Don't do anything Linux
specific if this is not a Linux hash table.  From Eric Youngdale
	<eric@aib.com>.
1994-12-21 00:46:03 +00:00
Ian Lance Taylor 182b9e9f52 Patches from kkojima@mix.or.jp (Kazumoto Kojima):
* mipsbsd.c (mips_howto_table_ext): Change sizes of memory relocs
	apply to from two bytes to four bytes.
	* MY(reloc_howto_type_lookup): Handle BFD_RELOC_CTOR.
1994-12-21 00:36:26 +00:00
Ken Raeburn 85200ebce9 * elfcode.h (assign_file_positions_except_relocs): In assertion, force all
values to the same type.
1994-12-20 20:31:36 +00:00
Steve Chamberlain e7d9ee909c * coff-h8300.c (howto_table): All relocs get a special function.
(special): Never do anything when linking -r.
1994-12-20 19:13:55 +00:00
Ian Lance Taylor 9b09a01580 * elf32-i386.c (elf_i386_relocate_section): Correct and expand the
list of cases for which relocation need not be computed.
	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1994-12-20 19:07:11 +00:00
Jeff Law 5874427fb9 * elf32-hppa.c (elf32_hppa_read_symext_info): Delete do_locals and
do_globals arguments, always read symbol extension information for
	globals and locals.  All callers changed.
	(elf32_hppa_size_stubs): Rework to only read symbol extension
	information once for each input bfd.  Another 10% improvement in
	linker performance.
1994-12-20 06:17:09 +00:00
Ian Lance Taylor 963747b358 * elfcode.h (elf_section_from_bfd_section): Check
bfd_is_abs_section, etc., only after checking for the section in
	the BFD and after calling the backend routine.
1994-12-16 17:30:08 +00:00
Ian Lance Taylor 2f19e36d97 * elfcode.h (elf_map_symbols): Only use section symbols whose
value is the start of the section, checking output_offset when
	using output_section.  When creating a new symbol, set the value
	to 0, since BFD symbol values are section relative.
1994-12-15 04:41:39 +00:00
Ian Lance Taylor f5202354c3 * elfcode.h (elf_map_symbols): Only use section symbols whose
value is the start of the section.
1994-12-15 01:23:40 +00:00
Ian Lance Taylor 1088e1483c * cpu-z8k.c (arch_info_struct): Make z8002 the default
architecture.
1994-12-13 18:33:05 +00:00
Ian Lance Taylor a0020ea1a4 * aoutx.h (NAME(aout,link_add_symbols)): Similar change if the
first object is not an a.out object.
1994-12-09 22:18:49 +00:00