Commit graph

11167 commits

Author SHA1 Message Date
Jeff Law
7e9825f0b7 * gas/hppa/reloc/r_no_relocbug.s: New test.
* gas/hppa/reloc/reloc.exp: Run it.

	* gas/hppa/reloc/reloc.exp (do_function_reloc_bug): Update
	expected output.
1994-09-13 04:22:49 +00:00
Jeff Law
c7ca67cb67 * som.c (som_reloc_skip): Correct off-by-one error for 4-byte
R_NO_RELOCATION fixups.
	(bfd_section_from_som_symbol): Return the absolute section if the
	symbol isn't contained in any section in the output file.
	(som_slurp_symbol_table): ST_PRI_PROG and ST_SEC_PROG symbols are
	not function symbols (they are magic code labels which *can* be the
	targets of cross space branches).  $START$ is not a section symbol.
1994-09-13 04:06:07 +00:00
Ken Raeburn
c570d36139 PIC enhancements just checked in (based on work of Paul Kranenburg and Eric
Youngdale).

New debugging code for .gdbinit.  "this file generated..." msg in config.h.
1994-09-13 02:20:55 +00:00
Ken Raeburn
f0b37b4ad6 * tc-i386.c (TC_RELOC): New macro.
(struct _i386_insn): New field disp_reloc.
(GOT_symbol): New variable.
(operand_special_chars): Added square-brackets and at-sign.
(reloc) [BFD_ASSEMBLER]: Added new argument OTHER; if it is not NO_RELOC, just
return it.
(reloc) [! BFD_ASSEMBLER]: Add third argument to dummy macro.
(BFD_RELOC_386_PLT32, _GOT32, _GOTOFF) [! BFD_ASSEMBLER]: More dummy macros.
(tc_i386_fix_adjustable): New function.  Returns zero if symbol in fixup is not
local, to prevent relocations against externals from being dropped.
(md_assemble): Initialize disp_reloc field to NO_RELOC.  Pass disp_reloc field
to reloc() function, and use TC_RELOC to generate value to pass to fix_new_exp.
(md_assemble): Change 32-bit reloc against GOT_symbol into a GOTPC reloc.
(i386_operand): Initialize disp_reloc field to NO_RELOC.  Handle @GOTOFF, @PLT,
@GOT operands.  For GOTOFF relocations with local symbols, force generation of
the section symbol.
(md_estimate_size_before_relax): If GOT_symbol exists, decide we're generating
PIC code, and convert relocations against undefined symbols from PCREL to
PLT32.
(md_apply_fix_1) [OBJ_ELF]: Fix up values for dynamic-linking relocs.
(md_undefined_symbol): Notice GLOBAL_OFFSET_TABLE_NAME and set and return
GOT_symbol if it matches.
(F, MAP): Move macro definitions outside function.
(tc_gen_reloc): Only switch on size and pcrel if code wasn't already supplied
as PLT32. GOT32, GOTOFF, or GOTPC.  Convert BFD_RELOC_32 using GOT_symbol into
GOTPC.

* tc-i386.h (TC_RELOC, tc_fix_adjustable, TC_RELOC_GLOBAL_OFFSET_TABLE,
TC_RELOC_RTSYM_LOC_FIXUP): New macros.
(NEED_FX_R_TYPE): Define.
(LOCAL_LABEL): Accept ".X" prefix too.
(GLOBAL_OFFSET_TABLE_NAME): Default to "_GLOBAL_OFFSET_TABLE_".
1994-09-13 02:15:23 +00:00
Ken Raeburn
d9d6f09465 * write.c (fixup_segment): Test TC_RELOC_RTSYM_LOC_FIXUP on fixup before
processing same-section pcrel relocations.
(TC_RELOC_RTSYM_LOC_FIXUP): Default to 1.
1994-09-13 02:11:25 +00:00
Ken Raeburn
d90f530be0 * expr.c (make_expr_symbol): If operator is O_symbol and X_add_number is zero,
just return the symbol.  If operator is O_constant, resolve the symbol's value
before returning.
(operand): Permit use of "[]" for grouping.
(clean_up_expression): For difference of two symbols in the same frag, add the
difference of their offsets into X_add_number.
(expr): Reduce difference of two symbols in same frag to their difference.
1994-09-13 02:10:43 +00:00
Ken Raeburn
1e84ff7ed4 * Makefile.in (config-stamp): Add a "this file generated by make" message to
config.h.
1994-09-13 01:51:26 +00:00
Ken Raeburn
dacf29ea1f * .gdbinit (pe, ps): Define new commands.
* symbols.c (indent_level): New static variable.
(indent, print_expr_1, print_symbol_value_1, print_symbol_value, print_expr):
New functions.
1994-09-13 01:50:02 +00:00
Stan Shebs
2ff6b38acb Merge supposedly (but not really) GM-specific bits into general MPW config 1994-09-13 00:50:38 +00:00
Stan Shebs
177941a1c9 Merge in former supposed GM-specific bits 1994-09-13 00:20:31 +00:00
Stan Shebs
2b51073813 Remove supposedly (but not really) GM-specific bits 1994-09-13 00:18:55 +00:00
Stan Shebs
97e3526ee7 * mpw-make.in (ALL_CFLAGS): Add definition of HAVE_STDARG_H,
include of ::libiberty:.
	(config.h): Ifdef contents on GAS_VERSION.
	config/ho-mpw.h: Remove redefinitions of true and false.
1994-09-13 00:14:18 +00:00
Stan Shebs
5e766076dc * mpw-make.in (ctor.c): Remove references.
* hosts/mpw.h [BFD_TRUE_FALSE]: Remove macro redefinitions of true
	and false.
1994-09-12 23:54:12 +00:00
Stan Shebs
f1a6367558 * mpw-configure (host_canonical): Set.
(mpw-xconfig.in): No longer use.
	(target_cpu): Always add to makefiles.
	(ARCHDEFS, EMUL): Add to makefile only if nonempty.
	(TM_FILE, XM_FILE, NM_FILE): No longer add to makefile.
	(mpw-mh-mpw): Look for in srcdir and srcroot.
	Use sed instead of mpw-edit-prefix to edit prefix definitions.
1994-09-12 23:49:00 +00:00
Ian Lance Taylor
1779d515da * config/obj-elf.c (obj_elf_type): Rewrite to accept syntax
reportedly to be used on Irix 6.
1994-09-12 22:36:08 +00:00
Ian Lance Taylor
3c9832f89f * elfcode.h (swap_out_syms): Set the type of an undefined symbol
to STT_FUNC if the BSF_FUNCTION flag is set.
1994-09-12 22:16:27 +00:00
Ian Lance Taylor
c1444ec48f * config/tc-mips.c (md_pseudo_table): Handle .globl and .global.
(s_mips_globl): New static function; needed for Irix 5 support.
	* ecoff.c (ecoff_build_symbols): If BSF_FUNCTION is set for an
	external symbol with no type, set the type to st_Proc rather than
	st_Global.  Don't set the index of an external st_Proc or
	st_StaticProc symbol unless it is also a local symbol.
1994-09-12 22:11:18 +00:00
Ian Lance Taylor
1b434ced73 * read.c (read_a_source_file): The second argument to as_where is
unsigned int *, not int *.
1994-09-12 21:52:43 +00:00
Ian Lance Taylor
2fd87dbc90 * config/m68klynx.mh: New file. 1994-09-12 21:06:35 +00:00
Ian Lance Taylor
2a89559527 * cofflink.c (coff_link_input_bfd): If r_symndx is -1, don't
change it.
	(_bfd_coff_generic_relocate_section): If r_symndx is -1, it is an
	absolute reloc.  Don't dump core using r_symndx as an array index.
	* cf-m68klynx.c (coff_bfd_link_add_symbols): Define.
	(lynx_link_add_symbols): New static function (copy of function in
	coff-i386.c).
	(coff_m68k_lynxrtype_to_howto): sym argument may be NULL.
	* coff-i386.c (coff_i386_rtype_to_howto): Likewise.
	* coff-a29k.c (coff_a29k_relocate_section): Handle an r_symndx
	value of -1, meaning an absolute reloc.
1994-09-12 21:01:19 +00:00
Ian Lance Taylor
3cd942de1e * ctor.c: Remove; obsolete.
* Makefile.in: Rebuild dependencies.
	(BFD_LIBS): Remove ctor.o.
	(CFILES): Remove ctor.c.
	* libbfd.h: Rebuild.
1994-09-12 15:47:52 +00:00
Jeff Law
27ebd9525d * elf32-hppa.c (elf32_hppa_relocate_section): If there was a link
error of some sort (for example, undefined symbols), then do not
	apply any relocs, just notify the user of the errors.
	(elf32_hppa_backend_begin_write_processing): Do not build a symbol
	extension section for an executable (it's useless).
	(elf32_hppa_link_output_symbol_hook): Do nothing if there was a
	link error of some sort (for example, undefined symbols).
	(elf32_hppa_read_symext_info): Kludge.  Turn off SEC_HAS_CONTENTS
	for all the input symbol extension sections to keep the generic
	BFD code happy.  Temporarily turn it on to read the contents of
	the symbol extension section.
1994-09-12 08:07:13 +00:00
Jeff Law
cb2af5cfec * emultempl/hppaelf.em: Add newlines to the error messages. 1994-09-12 07:51:14 +00:00
Jeff Law
30cbfbe219 * config/pa/tm-hppa.h (REGISTER_NAMES): Use r26-r23 for arg0-arg3. 1994-09-12 04:36:54 +00:00
Jeff Law
da233e6ed3 * hppa-dis.c (reg_names): Use r26-r23 for arg0-arg3. 1994-09-12 04:33:24 +00:00
Jeff Law
29f1ccee6d Revert last change (never should have been checked in to begin with). 1994-09-12 04:06:07 +00:00
Jeff Law
95bc714ee8 * config/hppaosf.mh (RANLIB): Do not set.
* config/hppabsd.mh (RANLIB): Likewise.
1994-09-12 04:04:09 +00:00
Ian Lance Taylor
5b89e1a00c Get the new COFF linker code working for i386-lynx.
* cf-i386lynx.c: Remove #if 0 code.
	(i386_lynxos_coff_object_p): Remove unused function.
	(coff_bfd_link_add_symbols): Define.
	(lynx_link_add_symbols): New static function.
	* coffcode.h (coff_bfd_link_hash_table_create): If
	coff_relocate_section is defined, only define this if not already
	defined.
	(coff_bfd_link_add_symbols, coff_bfd_final_link): Likewise.

	* linker.c (_bfd_generic_final_link): Handle
	bfd_indirect_link_order explicitly, rather than via
	_bfd_default_link_order.
	(set_symbol_from_hash): New static function, broken out of
	_bfd_generic_link_write_global_symbol.
	(_bfd_generic_link_write_global_symbol): Symbol setting code moved
	to set_symbol_from_hash; call it.
	(default_indirect_link_order): Add generic_linker argument.
	Change all callers.  If false, set the generic symbols based on
	the hash table entries.
1994-09-12 02:57:23 +00:00
Ian Lance Taylor
7b63ff7683 * config/i386lynx.mh: New file.
* scripttempl/i386lynx.sc: Don't put .ctors and .dtors in .text
	unless CONSTRUCTING.
1994-09-12 02:42:49 +00:00
Peter Schauer
54d478cdba * irix5-nat.c, osfsolib.c, solib.c (solib_add): Simplify last
change by replacing `symbols_added' with `so_last'.
	* mdebugread.c (parse_external, parse_partial_symbols):  Ignore
	global common symbols, they will be resolved by the runtime loader.
	* mdebugread.c (parse_symbol, parse_partial_symbols, cross_ref):
	Handle scSCommon like scCommon symbols.
1994-09-11 11:43:40 +00:00
Ian Lance Taylor
dd37f21531 * emulparams/elf32mipb.sh (TEMPLATE_NAME): Define as elf32.
(GENERATE_SHLIB_SCRIPT): Define as yes.
	(DYNAMIC_LINK): Define as false.
	* emultempl/elf32.em (gld${EMULATION_NAME}_before_parse):
	Initialize config.dynamic_link to DYNAMIC_LINK if it is defined.
	(gld${EMULATION_NAME}_place_orphan): Reset stat_ptr at end.
	* Makefile.in (eelf32mipb.c): Depend upon elf32.em rather than
	generic.em.
1994-09-10 20:04:17 +00:00
Peter Schauer
8918bce035 * Update copyright message to include 1993, 1994. 1994-09-10 10:10:05 +00:00
Peter Schauer
26a859ec83 * corelow.c (add_solib_stub): Copy to_sections changes from
core_ops to current_target after adding the shared libraries.
	* partial-stab.h (N_EXCL), dbxread.c (add_old_header_file,
	find_corresponding_bincl_psymtab):  Change `repeated header not seen'
	error to a complaint, simplify complaint.
	* procfs.c (signalname, errnoname):  Make `name' const.
	* symfile.c (reread_symbols):  Use filename from old BFD to
	reopen the objfile.
	* values.c (record_latest_value):  Don't record value in the
	history chain until we are sure there won't be an error.
1994-09-10 08:50:10 +00:00
J.T. Conklin
b35be51092 * nlm/Makefile.in: remove MMALLOC, READLINE, TERMCAP, and other cruft. 1994-09-09 23:22:41 +00:00
Rob Savoye
7497d923d5 Add XDEPFILE = ser-tcp.o 1994-09-09 23:00:02 +00:00
J.T. Conklin
ec7cac3887 * config/i386/gdbserve.mt: New file, defs for i386 nlm stub. 1994-09-09 22:55:36 +00:00
Rob Savoye
cc5702bddd GDB support for HP-PRO. 1994-09-09 22:44:13 +00:00
Ian Lance Taylor
67ff4a5616 * coffgen.c (coff_get_symtab): Reindented. Removed commented out
call to bfd_constructor_entry.
1994-09-09 20:38:37 +00:00
Ken Raeburn
ba08215a8c keep arm files 1994-09-09 18:51:10 +00:00
Ken Raeburn
6c3bc2b8f6 keep arm files 1994-09-09 18:35:11 +00:00
Ken Raeburn
353acf312b forgot an entry for makefile dependency changes 1994-09-09 18:34:25 +00:00
Ken Raeburn
f661ed29a8 keep arm dir 1994-09-09 18:34:24 +00:00
Ian Lance Taylor
bd23b552ef Convert m68k COFF to use new COFF backend linker.
* coff-m68k.c (coff_relocate_section): Define.
	* cf-m68klynx.c (coff_rtype_to_howto): Define.
	(coff_m68k_lynx_rtype_to_howto): New static function.
	* configure.in (m68kcoff_vec): Build cofflink.o.
	(m68kcoffun_vec, m68klynx_coff_vec): Likewise.
1994-09-09 15:54:45 +00:00
Kung Hsu
326d16cac7 Modified Files:
ChangeLog read.h read.c ecoff.h ecoff.c

        * read.h : ditto.
        * read.c (read_a_source_file): if no file when inst is read, set
        generate_asm_lineno to true.
        * ecoff.h : change name to generate_asm_lineno and add function
        ecoff_no_current_file.
        * ecoff.c : change name to generate_asm_lineno.
        * ecoff.c (ecoff_generate_asm_lineno) : new function, to generate
        ecoff style line for asm file.
1994-09-09 01:05:28 +00:00
Kung Hsu
ad14517d3c Modified Files:
obj-ecoff.h obj-elf.h

        * config/obj-ecoff.h : Change names to  OBJ_GENERATE_ASM_LINENO,
        and generate_asm_lineno.
        * config/obj-elf.h : ditto.
1994-09-09 01:02:48 +00:00
Steve Chamberlain
6156ad2f66 * config/i386/xm-go32.h (GDBINIT_FILENAME): Set to gdb.ini.
(more work here to come)
1994-09-09 00:44:01 +00:00
Steve Chamberlain
e4483b9901 * config/sh/tm-sh.h (EXTRA_FRAME_INFO): Add f_offset and leaf_function
fields.
1994-09-09 00:43:50 +00:00
Steve Chamberlain
1c22bde24e * config/h8500/tm-h8500.h (target_write_pc, TARGET_WRITE_PC):
Handle extra arg.
1994-09-09 00:43:30 +00:00
Steve Chamberlain
c4deed18c0 Thu Sep 8 17:14:43 1994 Steve Chamberlain (sac@jonny.cygnus.com)
* remote.c (fromhex): Make error more explicit.
	(read_frame): Don't print bad checksum information unless
	remote_debugging.  Don't use repeat count unless it's > 0.
	* remote-e7000.c (expect): When echoing, ignore multiple newlines.
	(e7000_insert_breakpoint, e7000_remove_breakpoint, target_ops): Optionally
	cope with BC style breakpoints.
	(e7000_command):  After command send directly to the E7000 mark
	registers as changed.
	(why_stop, e7000_wait: Understand BC style stop condition.
	* sh-tdep.c (sh_skip_prologue):  Understand more complicated
	sequences.  (frame_find_saved_regs): Likewise.
	* config/h8500/tm-h8500.h (target_write_pc, TARGET_WRITE_PC):
	Handle extra arg.
	* config/i386/xm-go32.h (GDBINIT_FILENAME): Set to gdb.ini.
	(more work here to come)
	* config/sh/tm-sh.h (EXTRA_FRAME_INFO): Add f_offset and leaf_function
	fields.
1994-09-09 00:35:09 +00:00
Ian Lance Taylor
eb4fd16f4d * config/obj-coff.c (size_section): Do an fprintf to stderr rather
than a printf.
	(fixup_segment): Use as_bad_where rather than as_bad.
1994-09-08 23:46:00 +00:00