Commit Graph

2837 Commits

Author SHA1 Message Date
Ian Lance Taylor
1ac75f5cdb * config.bfd: Add i[345]86-*-freebsdelf* target; from John Polstra
<jdp@polstra.com>.
1996-04-05 19:28:51 +00:00
Ian Lance Taylor
1a9951a942 * linker.c (link_action): For WARN_ROW/warn, use MWARN, not CYCLE,
to avoid crashing in bfd_hash_replace.
1996-04-05 17:51:28 +00:00
Ian Lance Taylor
f1ac3acb3e * sysdep.h: Use #ifdef, not #if. 1996-04-05 17:29:06 +00:00
Ian Lance Taylor
3f5f565b69 * sysdep.h: Use #ifdef,not #if. 1996-04-05 17:25:03 +00:00
Ian Lance Taylor
eb5f58e0e0 * config.in: Rebuild. 1996-04-05 04:32:47 +00:00
Fred Fish
ab1aa5cd6c * configure.in (mips-sony-bsd*): Fix typo in AC_DEFINE.
(AC_CHECK_HEADERS): Check for sys/time.h
	(AC_HEADER_TIME): Add macro.
	* configure: Rebuild.
	* sysdep.h: Use TIME_WITH_SYS_TIME and HAVE_SYS_TIME_H
	to control what combination of <time> and <sys/time.h>
	get included.
1996-04-05 04:14:36 +00:00
David Edelsohn
d1f74cd2c3 * aoutf1.h (sunos_32_set_arch_mach): Handle M_SPARCLET.
(aout_32_sunos4_write_object_contents): Likewise.
	* aoutx.h (NAME(aout,machine_type)): Handle
	bfd_mach_sparc_{sparclet,sparclite}.
	* archures.c (bfd_mach_sparc_{sparclet,sparclite}): Define.
	(bfd_mach_sparc_v9_p): Update.
	* cpu-sparc.c (arch_info_struct): Add entries for sparclet,sparclite.
	* libaout.h (enum machine_type): Add M_SPARCLET.
	* sunos.c (MACHTYPE_OK): Define.
	* bfd-in2.h: Regenerated.
1996-04-02 21:28:33 +00:00
Ian Lance Taylor
19bfbcbecf * elf-bfd.h (struct elf_link_hash_table): Add hgot field.
* elf.c (_bfd_elf_link_hash_table_init): Initialize hgot field.
	* elflink.c (_bfd_elf_create_got_section): Store the
	_GLOBAL_OFFSET_TABLE_ hash table entry in the hgot field.
	* elf32-sparc.c (elf32_sparc_check_relocs): If the size of the
	global offset table goes over 0x1000, set the value of
	_GLOBAL_OFFSET_TABLE_ to 0x1000 into the section.
	(elf32_sparc_relocate_section): Subtract the offset of
	_GLOBAL_OFFSET_TABLE_ when handling GOT relocations.
PR 9323.
1996-04-02 19:57:33 +00:00
Ian Lance Taylor
1dad72bde5 * elfcode.h: Don't include <string.h>. 1996-04-02 05:36:45 +00:00
Ian Lance Taylor
aad53b0d59 * aoutx.h (aout_link_input_section_std): When reporting an
overflow error, use the name of the symbol in the hash table if
	available.
	(aout_link_input_section_ext): Likewise.
1996-04-01 22:33:05 +00:00
Jeff Law
ca4e2190ce * linker.c (_bfd_generic_link_hash_newfunc): Renamed from
generic_link_hash_newfunc.  All references changed.
        * genlink.h (_bfd_generic_link_hash_newfunc): Declaration
        moved here from libbfd-in.h.
        * libbfd-in.h: Corresponding changes.
        * libbfd.h: Regenerated.
Minor changes suggested by Ian.
1996-04-01 17:50:13 +00:00
Ian Lance Taylor
ce6a773183 * elflink.h (elf_adjust_dynamic_symbol): If a common symbol got
defined in a regular file, set ELF_LINK_HASH_DEF_REGULAR.
1996-04-01 17:42:59 +00:00
Steve Chamberlain
323b430fc4 * peicode.h (coff_swap_aouthdr_out): Delete test for .junk.
* coffcode.h (coff_compute_section_file_positions): Likewise.
	(coff_write_object_contents): Likewise.
1996-03-31 10:01:29 +00:00
Ian Lance Taylor
5a28331f6d * section.c (SEC_LINK_ONCE): Define.
(SEC_LINK_DUPLICATES): Define.
	(SEC_LINK_DUPLICATES_DISCARD): Define.
	(SEC_LINK_DUPLICATES_ONE_ONLY): Define.
	(SEC_LINK_DUPLICATES_SAME_SIZE): Define.
	(SEC_LINK_DUPLICATES_SAME_CONTENTS): Define.
	* bfd-in2.h: Rebuild.
	* coffcode.h (sec_to_styp_flags): If COFF_WITH_PE, turn
	SEC_LINK_ONCE into IMAGE_SCN_LNK_COMDAT.
	(styp_to_sec_flags): If COFF_WITH_PE, turn IMAGE_SCN_LNK_REMOVE
	into SEC_EXCLUDE.  If IMAGE_SCN_LNK_COMDAT is set, set
	SEC_LINK_ONCE, and look through the symbol table for the setting
	for SEC_LINK_DUPLICATES.
	(coff_write_object_contents): If COFF_WITH_PE, if SEC_LINK_ONCE is
	set for a section, find the section symbol in the symbol table,
	and set the aux entry based on SEC_LINK_DUPLICATES.
	* coffgen.c (coff_print_symbol): Add a space before "checksum".
	* coff-arm.c (armcoff_big_vec): If COFF_WITH_PE is defined, add
	SEC_LINK_ONCE and SEC_LINK_DUPLICATES to section_flags.
	* coff-i386.c (i386coff_vec): Likewise.
	* coff-ppc.c (TARGET_LITTLE_SYM, TARGET_BIG_SYM): Likewise.
1996-03-29 21:33:59 +00:00
Ian Lance Taylor
7fc1cd1666 * VERSION: Bump to 2.6.1.
* Makefile.in (stamp-h): Depend upon VERSION.
1996-03-29 18:09:06 +00:00
Jeff Law
9399a257b1 opps. forgot to commit the changelog entries for the function
vector changes.
1996-03-29 06:56:50 +00:00
Jeff Law
39f2796643 * libbfd-in.h (generic_link_hash_newfunc): Add declaration.
* libbfd.h: Rebuilt.
        * linker.c (generic_link_hash_newfunc): No longer static.
        * coffcode.h (coff_bfd_link_hash_create): Allow specific targets
        to override.
        * coff-h8300.c: Add two derived hash tables and their associated
        funtions and #defines for use by the h8300 linker.
        (h8300_reloc16_extra_cases, case R_MEM_INDIRECT): Create entries in
        the function vector as needed.  Place the address of the function
        vector entry in the location specified by the R_MEM_INDIRECT reloc.
        Rewrite the vectors section contents as necessary.
        (h8300_bfd_link_add_symbols): New function for the h8300 linker.
        (coff_bfd_link_add_symbols): Define to use h8300 specific version.
        (coff_bfd_link_hash_table_create): Likewise.

Linker changes for function vectors.  HMSE.
1996-03-29 06:56:02 +00:00
Ian Lance Taylor
506f2bb4a9 * libhppa.h: If gcc 2.7 or higher, declare all the functions with
__attribute__ ((__unused__)) so that -Wall doesn't warn about
	them.
	(hppa_rebuild_insn): Pass pointer to correct type to
	low_sign_unext and dis_assemble_21.
1996-03-28 22:46:06 +00:00
Ian Lance Taylor
f68990e6a2 revert yesterdays change 1996-03-28 19:18:09 +00:00
David Edelsohn
05a84ae164 * config.bfd (sparc64-{sysv4*,solaris2*}): Delete.
Stick with sparc-*-{sysv4*,solaris2*}.
1996-03-28 19:02:45 +00:00
David Edelsohn
1d8eda7ab4 * coffgen.c (coff_bfd_make_debug_symbol): Improve comment.
* coffcode.h (coff_new_section_hook): Ditto.
1996-03-28 03:34:05 +00:00
Ian Lance Taylor
d3e572fefc update copyrights 1996-03-27 23:04:01 +00:00
Ian Lance Taylor
8230f31c92 * peicode.h (coff_swap_aux_in): Swap in extra PE x_scn fields.
(coff_swap_aux_out): Swap out extra PE x_scn fields.
	* coffswap.h (coff_swap_aux_in): Zero out extra PE x_scn fields.
	* coffgen.c (coff_print_symbol): If any of the extra PE x_scn
	fields is non-zero, print them.
1996-03-27 22:53:16 +00:00
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