Commit Graph

2814 Commits

Author SHA1 Message Date
Ian Lance Taylor ff0e4a9341 Remove SEC_LINKER_MARK, and add a linker_mark bitfield to the asection
structure instead.
1996-03-27 22:23:18 +00:00
Ian Lance Taylor 9addd1d4fd * coff-ppc.c (ppc_record_toc_entry): Put inside COFF_IMAGE_WITH_PE
ifdef.  Remove unused variables.
	(ppc_record_data_in_toc_entry): Ifdef out.  Removed unused
	variables.
	(ppc_mark_symbol_as_glue): Put inside COFF_IMAGE_WITH_PE ifdef.
	(get_symbol_value): Ifdef out.
	(pe_ppc_reloc): Ifdef out.  Remove unused variables.
	(coff_ppc_relocate_section): Remove unused variables.  Make
	fprintf strings and argument types correspond.  Put before_addr in
	DEBUG_RELOC ifdef.
	(ppc_reflo_reloc): Ifdef out.
	(ppc_addr32nb_reloc): Ifdef out.
	(ppc_coff_rtype2howto): Make fprintf strings and argument types
	correspond.
	(coff_ppc_rtype_to_howto): Likewise.
	(ppc_coff_swap_sym_in_hook): Remove unused variables.
1996-03-27 20:50:53 +00:00
Ian Lance Taylor 187783e019 * peicode.h (pe_print_idata): Move otherwise unused variables into
the #ifdef where they are used.  Always return a value.
	(pe_print_edata): Change fprintf strings and add cast to make
	fprintf strings correspond to actual types.  Always return a
	value.
	(pe_print_pdata): Removed unused variable addr_value.  Always
	return a value.
	(pe_print_reloc): Remove unused variable onaline.  Make fprintf
	strings and arguments correspond.  Always return a value.
1996-03-27 20:29:15 +00:00
Ian Lance Taylor 1680791e64 * libhppa.h: Define HINLINE rather than INLINE. Define it to
extern inline if using gcc and to static INLINE otherwise.  Change
	all functions from static INLINE to HINLINE.
1996-03-27 20:08:04 +00:00
Ian Lance Taylor c877bdf1a5 * ns32k.h: New file.
* cpu-ns32k.h: Include ns32k.h.  Rename externally visible
	functions to start with _bfd_.
	* aout-ns32k.c: Include ns32k.h.  Change references to renamed
	functions in cpu-ns32k.h.
	* Makefile.in: Rebuild dependencies.
	(HFILES): Add ns32k.h.
1996-03-27 19:57:34 +00:00
Ian Lance Taylor 7ec49f9133 * section.c (SEC_LINKER_MARK): Define.
* bfd-in2.h: Rebuild.
	* aoutx.h (NAME(aout,final_link)): Mark sections included in the
	link.
	(aout_link_input_bfd): Don't link unmarked sections.
	* cofflink.c (_bfd_coff_final_link): Mark sections included in the
	link.
	(_bfd_coff_link_input_bfd): Don't link unmarked sections.
	* coff-ppc.c (ppc_bfd_coff_final_link): Mark sections included in
	the link.
	* elflink.h (elf_bfd_final_link): Mark sections included in the
	link.
	(elf_link_input_bfd): Don't link unmarked sections.
	* xcofflink.c (_bfd_xcoff_bfd_final_link): Mark sections included
	in the link.
	(xcoff_link_input_bfd): Don't link unmarked sections.
1996-03-27 19:21:19 +00:00
Ian Lance Taylor 919cf4b52c * coffswap.h (coff_swap_scnhdr_out): Include section name in
overflow error messages.
1996-03-27 15:44:18 +00:00
Ian Lance Taylor fd681dcdaf * bfd.c (_bfd_default_error_handler): If _bfd_error_program_name
is not set, print "BFD: " before the error message.
1996-03-26 23:00:56 +00:00
Ian Lance Taylor 986cf3b852 * configure.in: Use AC_CHECK_TOOL to find ar and ranlib. From
Miles Bader <miles@gnu.ai.mit.edu>.
	* configure: Rebuild.
1996-03-26 20:47:22 +00:00
Ian Lance Taylor c3dffbd7cd * xcofflink.c (xcoff_link_input_bfd): Fix scan for C_BINCL/C_EINCL
symbols.
1996-03-22 19:59:20 +00:00
Ian Lance Taylor 3998d526b9 * config.bfd: Add ieee_vec to targ_selvecs for i960 targets and
m68k-aout, m68k-coff, and m68k-elf targets.
1996-03-22 17:21:03 +00:00
Ian Lance Taylor e4d27380de Fri Mar 22 11:33:44 1996 Martin Anantharaman <martin@goofy.imech.uni-duisburg.de>
* ieee.c: Changed #ifdef KEEPMINUSPCININST to #if KEEPMINUSPCININST.
	(ieee_generic_stat_arch_elt): Restructured to prevent
	ieee_object_p from being called repeatedly.
1996-03-22 16:46:34 +00:00
Steve Chamberlain 51776a11a6 * coffcode.h (coff_write_object_contents): Allocate
buffers large enough for any FILEHDR or AOUTHDR.
1996-03-22 00:32:05 +00:00
Michael Meissner 9e4ebb1b3a Warn if the .pdata section is not a multiple of 20 bytes 1996-03-21 20:00:30 +00:00
Ian Lance Taylor 9e7427a439 * coffcode.h (coff_compute_section_file_positions): If not
producing a final executable, don't consider sofar when aligning
	the section to the correct size.
1996-03-21 18:56:12 +00:00
Ian Lance Taylor e7f9ba4fa1 * elf32-mips.c (mips_elf_gprel32_reloc): Initialize gp if
output_bfd is not NULL.
1996-03-18 18:12:36 +00:00
David Edelsohn 34c4d647ed * coffgen.c (coff_get_normalized_symtab): Call bfd_zalloc instead
of bfd_alloc (fixes fix_line not being initialized).
	Delete zeroing of fix_{value,tag,end,scnlen} fields.
1996-03-15 01:12:57 +00:00
Jeff Law 57289b5c5d * coffcode.h: Allow specific backends to override the
bfd_link_add_symbols routine.
Not used yet, but it will be soon for hmse.
1996-03-14 23:17:50 +00:00
Jeff Law 4e05424729 * coff-h8300.c: Include genlink.h.
(howto_table): Add R_MEM_INDIRECT.
        (rtype2howto): Support R_MEM_INDIRECT.
        (h8300_reloc16_extra_cases): Handle R_MEM_INDIRECT like R_RELBYTE
        for now.
hmse
1996-03-14 23:06:51 +00:00
Ian Lance Taylor 8881b321e0 * linker.c (bfd_wrapped_link_hash_lookup): New function.
(_bfd_generic_link_add_one_symbol): Remove BFD_ASSERT on hash
	table string.  Use bfd_wrapped_link_hash_lookup.
	(_bfd_generic_link_write_global_symbol): Remove BFD_ASSERT on hash
	table string.
	* aoutx.h (aout_link_write_symbols): Use the name from the hash
	table, if any, when writing out symbols.
	(aout_link_input_section_std): Use the name from the hash table,
	if any, when reporting undefined symbols.
	(aout_link_input_section_ext): Likewise.
	(aout_link_reloc_link_order): Use bfd_wrapped_link_hash_lookup.
	* bout.c (get_value): Likewise.
	* cofflink.c (_bfd_coff_reloc_link_order): Likewise.
	* ecoff.c (ecoff_reloc_link_order): Likewise.
	* elflink.h (elf_link_add_object_symbols): Likewise.
	(elf_reloc_link_order): Likewise.
	* linker.c (_bfd_generic_link_output_symbols): Likewise.
	(_bfd_generic_reloc_link_order): Likewise.
	(default_indirect_link_order): Likewise.
	* reloc16.c (bfd_coff_reloc16_get_value): Likewise.
	* sunos.c (sunos_add_one_symbol): Likewise.
	* xcofflink.c (xcoff_link_add_symbols): Likewise.
	(bfd_xcoff_link_count_reloc): Likewise.
	(xcoff_reloc_link_order): Likewise.
1996-03-12 23:14:58 +00:00
Ian Lance Taylor a10d3dec45 Tue Mar 12 12:41:17 1996 David Mosberger-Tang <davidm@koala.azstarnet.com>
* coff-alpha.c (alpha_relocate_section): Use
	info->callbacks_warning, rather than _bfd_error_handler, for
	"multiple gp" warning.
1996-03-12 17:42:19 +00:00
Ian Lance Taylor ea2488ad2e * configure: Rebuild with autoconf 2.8. 1996-03-12 17:22:07 +00:00
Ian Lance Taylor c189fdfb8e * stab-syms.c (__define_stab_duplicate): Define.
(bfd_get_stab_name): Rename from aout_stab_name.  Rewrite to use a
	switch.
	* bfd-in.h (bfd_get_stab_name): Declare.
	* bfd-in2.h: Rebuild.
	* Makefile.in: Rebuild dependencies.
	(BFD_LIBS): Add stab-syms.o.
	(BFD_LIBS_CFILES): Add stab-syms.c.
	(BFD32_BACKENDS): Remove stab-syms.o.
	(BFD32_BACKENDS_CFILES): Remove stab-syms.c.
	* configure.in: Don't list stab-syms.o in bfd_backends.
	* configure: Rebuild.
	* libaout.h (aout_stab_name): Don't declare.
	* aoutx.h (NAME(aout,get_symbol_info)): Call bfd_get_stab_name,
	not aout_stab_name.
1996-03-11 17:33:43 +00:00
Ian Lance Taylor 8f218e05fc * configure.in: Don't set SHLIB or SHLINK to an empty string,
since they appear as targets in Makefile.in.
	* configure: Rebuild.
1996-03-05 20:52:52 +00:00
Ian Lance Taylor c5bde1ef85 * sunos.c (sunos_scan_ext_relocs): If not making a shared library,
don't fiddle with a symbol which is not defined anywhere.
1996-03-05 17:03:18 +00:00
Ian Lance Taylor 4e59f52302 * xcofflink.c (xcoff_mark): Treat undefined imported symbols as
though they are defined in a shared library.
	(xcoff_build_ldsyms): Likewise.
1996-03-05 01:01:11 +00:00
Ian Lance Taylor ea2504d592 * coffgen.c (coff_find_nearest_line): Don't look at the line
numbers for the section if section->lineno is NULL.
1996-03-04 23:42:12 +00:00
Ian Lance Taylor cb84f0284f * elf.c (_bfd_elf_symbol_from_bfd_symbol): Print a useful error
message rather than calling BFD_ASSERT.
	* elfcode.h (write_relocs): Check return value of
	_bfd_elf_symbol_from_bfd_symbol.
1996-03-04 17:50:38 +00:00
Michael Meissner 6e036cf7f6 When putting common items in .sdata, make sure SEC_LOAD flag is cleared 1996-03-01 14:47:46 +00:00
Jeff Law d08435de5e * libhppa.h (hppa_reloc_field_selector_type): Add R_HPPA_NLSEL
and R_HPPA_NLRSEL.
        (e_nsel, e_nlsel, e_nlrsel): Undefine.  Add to
        hppa_reloc_field_selector_type_alt.
        (hppa_field_adjust): Handle e_nlsel, e_nlrsel.  Fix e_nsel handling.
        * som.c (hppa_som_gen_reloc_type): Handle N', NL' NLR' field
        selectors.
        (som_write_fixups): Finish handling of R_N0SEL and R_N1SEL.
More hpux10 crud.
1996-02-28 18:27:51 +00:00
Ian Lance Taylor 0960941513 * elf.c (assign_file_positions_for_segments): Adjust the segment
memory size for the alignment of a SEC_ALLOC section, not just a
	SEC_LOAD section.
1996-02-28 16:01:04 +00:00
Ian Lance Taylor 55626bf086 Tue Feb 27 14:17:31 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* m68klinux.c: New file.
	* hosts/m68klinux.h: New file.
	* config.bfd (m68*-*-linuxaout*, m68*-*-linux*): New targets.
	* configure.in (m68*-*-linux*): New native host.
	(m68klinux_vec): New vector.
	* configure: Rebuild.
	* targets.c (m68klinux_vec): Declare.
	* i386linux.c (bfd_i386linux_size_dynamic_sections): Renamed from
	bfd_linux_size_dynmic_sections to avoid clash with m68klinux.c.
	* bfd-in.h (bfd_i386linux_size_dynamic_sections): Rename
	declaration from bfd_linux_size_dynamic_sections.
	(bfd_m68klinux_size_dynamic_sections): Declare.
	* bfd-in2.h: Rebuild.
	* Makefile.in: Rebuild dependencies.
	(BFD32_BACKENDS): Add m68klinux.o.
	(BFD32_BACKENDS_CFILES): Add m68klinux.c.
1996-02-27 19:31:29 +00:00
Jeff Law 6c7b309055 * libhppa.h (pa_arch): Add pa20.
(hppa_reloc_field_selector_type): Add R_HPPA_NSEL.
        (e_nsel): Undefine.  Add to hppa_reloc_field_selector_type_alt.
        (hppa_field_adjust): Handle e_nsel.
        * som.c: Provide default definitions for many new relocs found only
        in hpux10 include files.
        (som_fixup_formats): Add several new relocs from hpux10.
        (som_hppa_howto_table): Add hpux10 relocs.
        (som_write_fixups): Handle R_N0SEL and R_N1SEL hpux10 relocs.
Quick stab at handling some of the new hpux10 features.
1996-02-27 18:50:42 +00:00
Ian Lance Taylor 8835846954 * cofflink.c (_bfd_coff_link_input_bfd): When merging, skip names
starting with '$' the way we skip names starting with '.'.  When
	updating x_endndx, don't be fooled by an index which has been
	merged.
PR 9024.
1996-02-26 22:27:30 +00:00
Stan Shebs 14fd46168d * mpw-make.sed: Edit out recent shared library support, and
rules to rebuild .h files using doc/chew.
1996-02-26 20:59:24 +00:00
Ian Lance Taylor 3d9f042ca8 Mon Feb 26 14:48:39 1996 David Mosberger-Tang <davidm@AZStarNet.com>
* ecoff.c (ecoff_compute_section_file_positions): Adjust the file
	size even of sections with no contents.
1996-02-26 19:54:58 +00:00
Ian Lance Taylor bdec62283a * cofflink.c (_bfd_coff_link_input_bfd): Don't try to optimize a
struct/union/enum type with no elements.
PR 9024.
1996-02-26 19:01:53 +00:00
Ian Lance Taylor 15f4406cf8 * bfd.c (bfd_errmsg): Handle a NULL return from strerror. 1996-02-24 23:58:44 +00:00
Ian Lance Taylor c843513316 * archive.c (bfd_generic_archive_p): If the first file in the
archive can not be recognized as an object, don't assume that this
	is the wrong format.
PR 9082.
1996-02-24 20:45:20 +00:00
Ian Lance Taylor 053ae1d77a * elf.c (bfd_elf_set_dt_needed_name): Don't do anything if the
format is not bfd_object.
	(bfd_elf_get_dt_soname): Likewise.
1996-02-24 20:03:55 +00:00
Ian Lance Taylor ea74d97907 * coff-sh.c (sh_relax_delete_bytes): Correct range of R_SH_USES
reloc.
PR 9043.
1996-02-21 18:59:56 +00:00
Ian Lance Taylor fe6fc35fdb * sunos.c (SUNOS_CONSTRUCTOR): Define.
(sunos_add_one_symbol): Don't let a symbol from a dynamic object
	override a constructor symbol.  Set SUNOS_CONSTRUCTOR when
	appropriate.
1996-02-21 02:51:02 +00:00
J.T. Conklin 871a3f3b24 * bfd.c (tdata): Add netbsd_core_data.
* bfd-in2.h: Regenerated.
1996-02-21 00:29:38 +00:00
Fred Fish d378530148 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
Remove duplicate definition of gp.
1996-02-20 16:31:32 +00:00
Ian Lance Taylor 81bdcecf63 * coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Don't
assume that we can set the GP value and then get the same value,
	since it won't be true if the output file is neither ELF nor
	ECOFF.
	* coff-mips.c (mips_adjust_reloc_in): Don't bother to use
	_bfd_get_gp_value here.
	(mips_gprel_reloc): Don't assume we can set and get the GP value.
	* elf32-mips.c (mips_elf_hi16_reloc): Get gp value from
	mips_elf_final_gp.
	(mips_elf_lo16_reloc): Likewise.
	(mips_elf_final_gp): Add pgp parameter.  Set it to the GP value.
	Don't require that the BFD be ELF.
	(mips_elf_gprel16_reloc): Get gp value from mips_elf_final_gp.
	(mips_elf_gprel32_reloc): Likewise.
	(mips_elf_relocate_section): Don't assume we can set and get the
	GP value.
	(mips_elf_finish_dynamic_symbol): Don't bother to use
	_bfd_get_gp_value here.

	* elf32-mips.c (mips_elf_create_procedure_table): Initialize sv.
	Don't change epdr between malloc and free.  Be careful not to free
	NULL pointers.  Zero out the first RPDR.
1996-02-19 21:12:48 +00:00
Ian Lance Taylor 7b61165adc * configure.host: On Linux, only pass -rpath option if $(libdir)
is neither /lib nor /usr/lib.  From Alan Modra
	<alan@mullet.Levels.UniSA.Edu.Au>.
1996-02-19 17:45:28 +00:00
Ian Lance Taylor 60a49e7f8a * elf-bfd.h (struct elf_obj_tdata): Rename dt_needed_name to
dt_name.
	(elf_dt_name): Rename from elf_dt_needed_name.
	* elf.c (bfd_elf_set_dt_needed_name): Use elf_dt_name, not
	elf_dt_needed_name.
	(bfd_elf_get_dt_soname): New function.
	* elflink.h (elf_link_add_object_symbols): Use elf_dt_name, not
	elf_dt_needed_name.  Save the SONAME back in elf_dt_name.
	* bfd-in.h (bfd_elf_get_dt_soname): Declare.
	* bfd-in2.h: Rebuild.
1996-02-19 17:41:04 +00:00
David Edelsohn b268e26104 * elf32-sparc.c (elf32_sparc_reloc_type_lookup): Renamed from
_bfd_sparc_elf_reloc_type_lookup.
	(bfd_elf32_bfd_reloc_type_lookup): Update.
	* elf64-sparc.c (SPARC64_OLD_RELOCS): Define.
	(sparc64_elf_howto_table): Define.
	(sparc_reloc_map): Define.
	(sparc64_elf_reloc_type_lookup): New function.
	(sparc_elf_wdisp16_reloc): New function.
	(elf_info_to_howto): Use sparc64_elf_howto_table.
	(sparc64_elf_relocate_section): Likewise.
	(bfd_elf64_bfd_reloc_type_lookup): Update.
1996-02-19 10:58:20 +00:00
Ian Lance Taylor 9e2ef09802 * configure.host: Check for 'do not mix' from native linker before
trying to use -rpath.
1996-02-18 20:06:40 +00:00
Ian Lance Taylor cba3f8a9be * bfd.c (_bfd_get_gp_value): New function.
(_bfd_set_gp_value): New function.
	* libbfd-in.h (_bfd_get_gp_value): Declare.
	(_bfd_set_gp_value): Declare.
	* libbfd.h: Rebuild.
	* coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
	_bfd_get_gp_value and _bfd_set_gp_value rather than referring
	directly to the fields in the tdata information.
	(alpha_relocate_section): Likewise.
	* coff-mips.c (mips_adjust_reloc_in): Likewise.
	(mips_gprel_reloc): Likewise.
	(mips_relocate_section): Likewise.
	* elf32-mips.c (mips_elf_hi16_reloc): Likewise.
	(mips_elf_lo16_reloc): Likewise.
	(mips_elf_final_gp): Likewise.
	(mips_elf_gprel16_reloc): Likewise.
	(mips_elf_gprel32_reloc): Likewise.
	(mips_elf_relocate_section): Likewise.
	(mips_elf_finish_dynamic_symbol): Likewise.
PR 8449.
1996-02-16 19:29:01 +00:00