Commit Graph

13303 Commits

Author SHA1 Message Date
Ken Raeburn f7da4a99d4 fix more compilation bugs 1995-07-12 20:45:57 +00:00
Fred Fish b49f423b73 * Revert all signal changes from Jul 6.
* gdb.base/{sigall.c signals.c}:  Define away signal() and alarm()
	for sh-hms targets, allowing these tests to link, with no other
	changes.  Testing is suppressed by setting "nosignals" in site.exp.
1995-07-12 17:27:40 +00:00
Ian Lance Taylor 395ccfce21 * ldemul.h (ldemul_open_dynamic_archive): Add search parameter to
declaration.
	(ld_emulation_xfer_type): Add search parameter to
	open_dynamic_archive entry point.
	* ldemul.c (ldemul_open_dynamic_archive): Add search parameter.
	* ldfile.c (ldfile_try_open_bfd): Rename from try_open_bfd, and
	make non-static.  Change all callers to use new name.
	(ldfile_open_file_search): Make static.  If entry is dynamic, call
	ldemul_open_dynamic_archive.
	(ldfile_open_file): Don't call ldemul_open_dynamic_archive.
	* ldfile.h (ldfile_open_file_search): Don't declare.
	(ldfile_try_open_bfd): Declare.
	* emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
	Accept search parameter.  Don't search for a library, just look in
	a single place.
	* emultempl/linux.em (gld${EMULATION_NAME}_open_dynamic_archive):
	Likewise.
1995-07-12 15:37:12 +00:00
Ian Lance Taylor e4f35679a9 * objdump.c (dump_section_stabs): Only print each stabs section
once.
	(compare_relocs): Make it clear to gcc that this always returns a
	value.
1995-07-12 14:44:46 +00:00
Ian Lance Taylor d1a917c56a Wed Jul 12 10:40:23 1995 H.J. Lu <hjl@nynexst.com>
* objcopy.c (simple_copy): Preserve errno on failure.
	(smart_rename): Print error mesage if simple_copy fails.
1995-07-12 14:42:08 +00:00
Ken Raeburn 50982f7f9d Initial autoconfiscation; attempting also to remove use of bfd's sysdep.h file. 1995-07-12 05:07:49 +00:00
Ken Raeburn c403ad088b * libelf.h (elf_backend_data): Use unsigned, not unsigned char, for bitfields. 1995-07-12 04:29:47 +00:00
Ian Lance Taylor f55900af7f * elf.c (bfd_section_from_shdr): In case SHT_REL[A], only get the
BFD section for the sh_link section if it is a SYMTAB section.
PR 7392.
1995-07-12 01:23:10 +00:00
Ian Lance Taylor 6c481b58a6 * aoutx.h (NAME(aout,link_add_symbols)): Don't bother to check
that archives hold a.out objects.
	* cf-i386lynx.c (coff_bfd_link_add_symbols): Don't define.
	(lynx_link_add_symbols): Remove.
	* cf-m68klynx.c (coff_bfd_link_add_symbols): Don't define.
	(lynx_link_add_symbols): Remove.
	* elflink.h (elf_bfd_link_add_symbols): Don't bother to check that
	archives hold ELF objects.
1995-07-11 21:22:17 +00:00
Ian Lance Taylor 0e75a8d6da * archive.c (bfd_generic_archive_p): If the archive has a map, and
the target was defaulted, but the first object in the archive can
	not be matched with that target, then return a bad format error.
1995-07-11 21:12:41 +00:00
Ian Lance Taylor 18bf5d5f2f * elf64-sparc.c (elf_sparc_howto_table): Set howto for WDISP16 to
elf64_wdisp16_reloc.
	(elf64_wdisp16_reloc): New static function.
	(elf64_sparc_relocate_section): New static function.
	(elf_backend_relocate_section): Define.
PR 7333.
1995-07-11 20:16:48 +00:00
Ian Lance Taylor cf9fb9f243 * libelf.h (struct elf_size_info): Change type of last argument to
swap_symbol_out from char * to PTR.
	(bfd_elf32_swap_symbol_out): Update declaration.
	(bfd_elf64_swap_symbol_out): Likewise.
	* elfcode.h (elf_swap_symbol_out): Change type of cdst from char *
	to PTR.
	* elf.c (swap_out_syms): Cast to PTR, not char *, when calling
	swap_symbol_out routine.
	* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Likewise.
	(elf_link_output_sym): Likewise.
	(elf_link_output_extsym): Likewise.
	* elf32-sparc.c (elf32_sparc_finish_dynamic_sections): Likewise.
1995-07-11 19:24:46 +00:00
Ian Lance Taylor 6804bd6c4c * doc/c-mips.texi: Document -m4010 and -mno-4010. 1995-07-11 18:32:16 +00:00
Ian Lance Taylor e532b44c23 Tue Jul 11 14:28:55 1995 Jeff Spiegel <jeffs@lsil.com>
* config/tc-mips.c (mips_4010): New static variable.
	(interlocks): New static variable.
	(md_begin): Check for a cpu of "r4010".  Set mips_4010 correctly.
	If mips_4650 or mips_4010, set interlocks.
	(append_insn): Check interlocks, not mips_4650.
	(mips_emit_delays): Likewise.
	(mips_ip): Only permit INSN_4010 instructions if mips_4010.
	(md_longopts): Add "m4010" and "no-m4010".
	(md_parse_option): Accept -mcpu=r4010.  Handle -m4010 and
	-no-m4010.
	(md_show_usage): Document -m4010 and -no-m4010.
1995-07-11 18:30:25 +00:00
Ian Lance Taylor 89abbf9d2c Tue Jul 11 14:23:37 1995 Jeff Spiegel <jeffs@lsil.com>
* mips-opc.c (L1): Define.
	(mips_opcodes): Add R4010 instructions: flushi, flushd, flushid,
	addciu, madd, maddu, ffc, ffs, msub, msubu, selsi, selsr, waiti,
	and wb.

Tue Jul 11 11:49:49 1995  Ian Lance Taylor  <ian@cygnus.com>

	* mips-opc.c (mips_opcodes): For the move pseudo-op, prefer daddu
	if ISA 3 and addu otherwise, replacing or, since some MIPS chips
	have multiple add units but only a single logical unit.
1995-07-11 18:25:27 +00:00
Ian Lance Taylor e5fa3f23e8 * ecoff.c (struct efdr): Add new field fake.
(init_file): Initialize fake.
	(add_file): Add new parameter fake.  Change all callers.
	(ecoff_build_debug): Don't warn about a missing .end for a fake
	file.
PR 6509.
1995-07-11 17:26:08 +00:00
Ian Lance Taylor 6f904fce87 Tue Jul 11 12:29:49 1995 Rick Sladkey <jrs@world.std.com>
* elf.c (_bfd_elf_find_nearest_line): Handle the simple case where
	there is no debugging information.
1995-07-11 16:31:39 +00:00
Ian Lance Taylor 917199fe29 * ldmisc.c (vfinfo): Don't print the line number if it isn't
meaningful.
1995-07-11 16:30:02 +00:00
Ian Lance Taylor 141b9f1bbe * ppc-opc.c (powerpc_operands): Change CR to use a bitsize of 3,
shifted by 18, without any insertion or extraction function.
	(insert_cr, extract_cr): Remove.
1995-07-11 15:52:03 +00:00
Ian Lance Taylor a89d9f5bf1 * ld.h (ld_config_type): Add field warn_constructors.
* ldmain.c (add_to_set): Warn if config.warn_constructors.
	(constructor_callback): Likewise.
	* lexsup.c (parse_args): Handle -warn-constructors.
	* ld.texinfo, ld.1: Document -warn-constructors.
PR 7406.
1995-07-10 22:16:12 +00:00
Ian Lance Taylor c16b92d224 * emultempl/elf32.em (gld${EMULATION_NAME}_check_needed): Don't
get confused by directory names if we searched for the file.
PR 7401.
1995-07-10 22:01:03 +00:00
Ian Lance Taylor 7213def760 Based on patches from H.J. Lu <hjl@nynexst.com>:
* ldlang.h (lang_input_statement_type): Add new field dynamic.
	* ldlang.c (new_afile): Set dynamic from config.dynamic_link.
	* ldfile.c: Include bfdlink.h.
	(ldfile_open_file): Check dynamic field of entry, not global
	dynamic_link field.  Don't do a dynamic search when doing a
	relocateable link.
	* ldmain.c (main): Don't warn about dynamic_link for a
	relocateable link.
	* emultempl/sunos.em (gld${EMULATION_NAME}_find_so): Skip file if
	dynamic is false.
	(gld${EMULATION_NAME}_create_output_section_statements): Always
	loop over input files.
	* Makefile.in: Rebuild dependencies.
1995-07-10 21:16:40 +00:00
Ken Raeburn db8e56dc13 split cpu-specific documentation out to separate files 1995-07-10 20:54:42 +00:00
Ken Raeburn cc02a8a9c6 * read.c (po_hash): Now static. 1995-07-10 20:49:45 +00:00
Ian Lance Taylor fb33961bff Based on patches from H.J. Lu <hjl@nynexst.com>:
* config/tc-i386.c (md_apply_fix3): Rename from md_apply_fix1.
	Accept pointer to value and segment.  Fix OBJ_ELF PCREL case to
	handle global defined symbols correctly.
	(md_apply_fix): Remove both versions.
	* config/tc-i386.h (MD_APPLY_FIX3): Define.
1995-07-10 19:01:21 +00:00
Ian Lance Taylor 9ab8a0e87b * coff-arm.c (PCRELOFFSET): Define if not already defined.
* Makefile.in: Rebuild dependencies.
	(BFD32_BACKENDS): Add coff-arm.o
	(CFILES): Add coff-arm.c, pe-arm.c, pei-arm.c.
1995-07-10 18:24:39 +00:00
Ian Lance Taylor 56fd39e800 * cofflink.c (_bfd_coff_generic_relocate_section): Remove unused
local i.
	* coff-arm.c (coff_arm_rtype_to_howto): Don't declare.
1995-07-10 18:16:25 +00:00
Ian Lance Taylor 921fc2819c * coff-i960.c (coff_i960_relocate): Correct typo: use ! on strcmp,
not on string.
1995-07-10 18:11:13 +00:00
Ian Lance Taylor e336470145 * aoutx.h (NAME(aout,link_hash_table_create)): Allocate hash table
using bfd_alloc, not malloc.
	* cofflink.c (_bfd_coff_link_hash_table_create): Likewise.
	* ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise.
	* i386linux.c (linux_link_hash_table_create): Likewise.
	* linker.c (_bfd_generic_link_hash_table_create): Likewise.
	* sunos.c (sunos_link_hash_table_create): Likewise.
1995-07-10 18:07:17 +00:00
Ian Lance Taylor 84144a8f56 * configure.in: When switching on ${cpu}, use ${cpu}, not
$[target_cpu}, in default case.
	* configure: Rebuild.
1995-07-10 17:48:48 +00:00
Ian Lance Taylor 4551e108a0 * ld.texinfo, ld.1: Document -Bstatic, -Bdynamic, -Bshared, and
-shared.

Mon Jul 10 13:29:43 1995  Eric Youngdale  <eric@aib.com>

	* ldmain.c (main): Set link_info.symbolic to false.
	* lexsup.c (parse_args): Handle -Bsymbolic.
1995-07-10 17:41:13 +00:00
Ian Lance Taylor 951fe66d62 Based on patches from Eric Youngdale <eric@aib.com>:
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): If -Bsymbolic,
	output a DT_SYMBOLIC dynamic entry.
	(elf_adjust_dynamic_symbol): If -Bsymbolic, don't require a PLT
	entry for a locally defined symbol.
	* elf32-i386.c (elf_i386_relocate_section): If -Bsymbolic, do warn
	about undefined symbols, and fill in the GOT entry for a symbol
	defined in a regular object file.
	(elf_i386_finish_dynamic_symbol): If -Bsymbolic, output a RELATIVE
	reloc rather than a GLOB_DAT reloc for a symbol defined in a
	regular object file.
	* elf32-m68k.c (elf_m68k_relocate_section): If -Bsymbolic, do warn
	about undefined symbols, and fill in the GOT entry for a symbol
	defined in a regular object file.
	(elf_m68k_finish_dynamic_symbol): If -Bsymbolic, output a RELATIVE
	reloc rather than a GLOB_DAT reloc for a symbol defined in a
	regular object file.
	* elf32-sparc.c (elf32_sparc_relocate_section): If -Bsymbolic, do
	warn about undefined symbols, and fill in the GOT entry for a
	symbol defined in a regular object file.
	(elf32_sparc_finish_dynamic_symbol): If -Bsymbolic, output a
	RELATIVE reloc rather than a GLOB_DAT reloc for a symbol defined
	in a regular object file.
1995-07-10 17:31:31 +00:00
Ken Raeburn 5b2c2b363d add binary.o, tekhex.o 1995-07-10 15:48:58 +00:00
Ian Lance Taylor 1730bce9a3 Move testsuite ChangeLog entry into testsuite ChangeLog. 1995-07-10 15:18:38 +00:00
Ian Lance Taylor 3219881fcd Remove C comment characters from modified FSF address in expect scripts. 1995-07-10 15:16:41 +00:00
Ian Lance Taylor 10de6952c9 * ld-versados/versados.exp: If a test fails, report it correctly:
don't try to run the next test, and don't report a pass as well as
	a fail.
1995-07-10 15:15:10 +00:00
Ian Lance Taylor d11d1fb673 * config/m68k-coff.mt (SELECT_VECS): Rename from SELECT_VECTORS.
Correct elements to be actual BFD vector names.
1995-07-10 15:12:33 +00:00
Ian Lance Taylor 65d3ae6b72 * Makefile.in (Makefile): Don't depend upon @frags@.
(config.status): Depend upon @frags@.
1995-07-10 15:11:15 +00:00
Ian Lance Taylor 6a4549e788 Remove C comment characters from modified FSF address in expect scripts. 1995-07-10 15:01:16 +00:00
Ian Lance Taylor ed453d2ec4 * write.c (fixup_segment): Call resolve_symbol_value on
sub_symbolP, in case it isn't in the symbol table.
PR 7131.
1995-07-08 17:29:04 +00:00
Ken Raeburn 943fbd5bd5 fsf address update, but not in COPYING files 1995-07-07 22:49:42 +00:00
Ian Lance Taylor c71a604ae1 * read.c (s_lcomm): For .lcomm 1, set align to 0, not 1.
PR 5167.
1995-07-07 22:42:13 +00:00
Kung Hsu d97d5b48ab * elfread.c (elf_symtab_read): Fix a bug ignoring compiler
generated internal labels ($LM...).
1995-07-07 21:44:57 +00:00
Ian Lance Taylor c7e76b5eea * coffgen.c (coff_renumber_symbols): Sort defined symbols that are
neither BSF_FUNCTION not BSF_NOT_AT_END just before undefined
	symbols.
	* coffcode.h (coff_slurp_symbol_table): Set BSF_FUNCTION as well
	as BSF_NOT_AT_END.
PR 5491.
1995-07-07 21:40:56 +00:00
Ken Raeburn 5375150754 clean up new config stuff for mostlyclean, distclean 1995-07-07 21:34:08 +00:00
Ian Lance Taylor ae99a6721f * config/obj-coff.c (coff_frob_symbol): If SF_GET_FUNCTION, set
BSF_FUNCTION.
	(symbol_globalP, symbol_global_lastP): New global variables.
	(yank_symbols): Sort defined global symbols to the end, just
	before the undefined symbols.
	(glue_symbols): Add two arguments, and use them instead of
	referring directly to global variables.
	(crawl_symbols): Call glue_symbols twice, once for defined globals
	and once for undefined.  Add corresponding know calls.
PR 5491.
1995-07-07 21:29:54 +00:00
Ken Raeburn 60fa79065a clean up new config stuff for mostlyclean, distclean 1995-07-07 21:20:34 +00:00
Ian Lance Taylor 6be977fb57 * app.c (do_scrub_next_char): Always accept \v. Don't make it
conditional on BACKSLASH_V.
	* read.c (next_char_of_string): Likewise.
	* config/obj-bout.h (BACKSLASH_V): Don't define.
	* config/tc-mips.h (BACKSLASH_V): Don't define.
PR 5604.
1995-07-07 20:10:27 +00:00
Ian Lance Taylor 5767cfb748 Add SPARC ELF PIC support.
* write.c (fixup_segment): Pass fixP to TC_RELOC_RTSYM_LOC_FIXUP,
	not fixP->fx_r_type.
	* config/tc-sparc.c (sparc_pic_code): New global variable.
	(md_apply_fix): If generating PIC, adjust fx_addnumber for any non
	PC relative reloc.
	(tc_gen_reloc): If generating PIC, adjust various reloc types.
	Remove fx_pcrel assert, since it is no longer true.
	(md_parse_option): Handle -K PIC.
	* config/tc-sparc.h (sparc_pic_code): Declare if OBJ_ELF.
	(TC_RELOC_RTSYM_LOC_FIXUP): Define if OBJ_ELF.
	(tc_fix_adjustable): Don't adjust PC relative relocs if PIC.
	* config/tc-i386.h (TC_RELOC_RTSYM_LOC_FIXUP): Take a fixp, not a
	reloc type.
PR 7131.
1995-07-07 17:03:21 +00:00
Ian Lance Taylor cebf05ad1c * Makefile.in (Makefile): Add dependency on conf.in, so that conf
is rebuilt when conf.in changes.
1995-07-07 15:18:31 +00:00