Commit Graph

19539 Commits

Author SHA1 Message Date
Bob Manson
77f3ac77b5 * lib/gdb.exp: Close connection to remote host if gdb doesn't
initialize.
	(default_gdb_init): New procedure; allow gdb_init to be overridden
 	by a target configuration file.
	(gdb_expect): Pass the timeout to remote_expect.

	* config/dos.exp(dos_wait): Add timeout parameter.

	* lib/remote.exp(remote_expect): Add timeout parameter.
	(remote_wait): Ditto.
	(standard_wait): Ditto. Also give up if the program outputs
	more than 512,000 bytes.

	* config/vxworks.exp: Use timeout parameter instead of setting
	timeout variable.
	* config/dos.exp: Ditto.
	* config/ddb.exp: Ditto.
	* lib/mondfe.exp: Ditto.
	* lib/rlogin.exp: Ditto.
	* lib/telnet.exp: Ditto.
	* config/base68k.exp: Ditto.
	* config/i386-bozo.exp: Ditto.
	* config/gdb-comm.exp: Ditto.
	* config/gdb_stub.exp: Ditto.
	* config/i960.exp: Ditto.
	* config/ddb-ether.exp: Ditto.
	* config/sim.exp: Ditto.

	* lib/g++.exp(g++_init): Use g++_include_flags instead of making
	up the includes ourselves.
1997-06-17 00:08:20 +00:00
Ian Lance Taylor
c1292d9ba9 whitespace tweaks 1997-06-16 23:33:49 +00:00
Ian Lance Taylor
4602e5f401 Mon Jun 16 19:18:21 1997 Geoff Keating <geoffk@ozemail.com.au>
* scripttempl/elfppc.sc: Correct .rela.sdata entries.

	* scripttempl/elfppc.sc: Put the PLT between the small and large
	BSS segments.
	* emulparams/elf32ppc.sh (TEXT_START_ADDR): The ABI says `A
	program base of 0x02000000 is recommended...' because otherwise
	shared libraries are less efficient.  We use 0x01800000 because
	otherwise it's impossible to branch to location 0, for instance if
	you have an undefined weak symbol.
1997-06-16 23:21:18 +00:00
Ian Lance Taylor
24a3e62262 Mon Jun 16 19:12:51 1997 Geoff Keating <geoffk@ozemail.com.au>
* config/tc-ppc.h (tc_fix_adjustable): Don't let the assembler
	calculate relocations to any external symbol, because we might be
	linking a shared object and the symbol might be overriden or moved
	(for instance, moved into a static executable's .bss section).
	(GLOBAL_OFFSET_TABLE_NAME): Delete. This is an i386 wierdness.

	* config/tc-ppc.h (tc_fix_adjustable): GOT-based relocations can't
	be calculated by the assembler.

	* config/tc-ppc.c (md_apply_fix3): Handle @plt or @local branch
	whose destination lies in the same file, by ignoring the @plt or
	@local and aiming the branch at its destination.
1997-06-16 23:17:22 +00:00
Ian Lance Taylor
08a561521f * configure.in: Use mh-ppcpic and mt-ppcpic for powerpc*-* targets. 1997-06-16 23:10:46 +00:00
Ian Lance Taylor
897832ee25 Mon Jun 16 19:06:41 1997 Geoff Keating <geoffk@ozemail.com.au>
* mh-ppcpic: New file.
	* mt-ppcpic: New file.
1997-06-16 23:09:46 +00:00
Ian Lance Taylor
b6eb341bf8 Mon Jun 16 18:56:27 1997 Geoff Keating <geoffk@ozemail.com.au>
* elf32-ppc.c (ppc_elf_relocate_section): Don't emit R_PPC_REL*
 	relocs in shared libraries which refer to local symbols.  Cope
 	with addend when processing a GOT relocation.

	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Only create symbols
	for sections that the linker didn't create.
	(ppc_elf_finish_dynamic_sections): Only try to write out a section
 	symbol if it was created in ppc_elf_size_dynamic_sections.
	(ppc_elf_relocate_section): Complain if we have to generate a reloc
	relative to a section for which we didn't output a symbol.

	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Clean up.  PLT
 	relocs are 'rela' relocs, like everything else.  .rela.plt is not
 	a read-only section, so we don't have to special-case it.

	* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Entries in the
	.rela.bss section are (of course) 'rela' relocs not 'rel' relocs.

	* elf32-ppc.c (ppc_elf_check_relocs): Initialise srelgot.
	(ppc_elf_relocate_section): @got offsets are 4 from start of the
	actual .got section.
	* elflink.c (_bfd_elf_create_got_section): The three reserved
	words start from the symbol '_GLOBAL_OFFSET_TABLE_'.

	* elf32-ppc.c (ppc_elf_size_dynamic_sections): '.rela' is 5
	characters, not 4.

	* elf32-ppc.c (ppc_elf_check_relocs): Use
	_bfd_elf_create_got_section to create the GOT rather than
	ppc_elf_create_linker_section. Create the '.rela.got' section
	ourselves.
	(ppc_elf_finish_dynamic_symbol): Set up GOT relocations when a
	symbol has a GOT entry.
	(ppc_elf_relocate_section): Record when a symbol is used through
	the GOT, and allocate space in the GOT for each such symbol.
	(ppc_elf_adjust_dynamic_symbol): Delete unused .got.plt stuff.
	(ppc_elf_create_linker_section): Delete unused LINKER_SECTION_GOT
	stuff.

	* elf32-ppc.c (ppc_elf_howto_raw): GOT16_HA relocs should be
	treated in a similar way to ADDR16_HA relocs.
	(ppc_elf_relocate_section): PLTREL24 relocs do not get copied into
	shared objects; the linker must deal with them.
	(ppc_elf_create_linker_section): Stop setting
	_GLOBAL_OFFSET_TABLE_ to the wrong value; delete unused
	LINKER_SECTION_PLT stuff.
	(ppc_elf_check_relocs): Delete unused LINKER_SECTION_PLT stuff.
	(ppc_elf_finish_dynamic_sections): Use BFD calls to get GOT
	section, not ELF-specific calls.
	(elf_backend_plt_not_loaded): Set to 1.
	(elf_backend_got_symbol_offset): Set to 4.
	* elf-bfd.h (elf_backend_data): Add 'plt_not_loaded' member
	for when ld.so fills in the PLT; and 'got_symbol_offset' member.
	* elflink.c (_bfd_elf_create_dynamic_sections): Apply
	plt_not_loaded member.
	(_bfd_elf_create_got_section): Apply got_symbol_offset.
	* elfxx-target.h (elf_backend_plt_not_loaded): Set default to
	'loaded'.
	(elf_backend_G_O_T_offset): Set default to 0.
	(elfNN_bed): Set added fields.

	* elf32-ppc.c (ppc_elf_size_dynamic_sections): Was setting
	DT_RELENT in shared objects; should be DT_RELAENT.

	* elf32-ppc.c (ppc_elf_relocate_section): Propagate
	R_PPC_ADDR16_HA relocs to shared objects. Cope with case where
	such a reloc (in a non-shared object) refers to a symbol that's
	not defined.
1997-06-16 23:05:27 +00:00
Ian Lance Taylor
3a0358617e * config/tc-ppc.c (ppc_insert_operand): In 32 bit mode, with a
signed operand, sign extend a 32 bit value to the host size.
Permits dubious usage like
	addi  %r6,%r6,0xfffffeff
to assemble on a 64 bit host as it does on a 32 bit host.
1997-06-16 20:09:35 +00:00
Ian Lance Taylor
e2e4466adb * Makefile.in (CFLAGS): Subsitute from configure script. From
Jeff Makey <jeff@cts.com>.
1997-06-16 19:47:53 +00:00
Ian Lance Taylor
572728c6f9 * configure: Set CFLAGS and CXXFLAGS, and substitute them into
Makefile.  From Jeff Makey <jeff@cts.com>.
	* Makefile.in: Add comment for CFLAGS and CXXFLAGS.
1997-06-16 19:46:12 +00:00
Ian Lance Taylor
a86bf27a92 credit 1997-06-16 19:34:28 +00:00
Ian Lance Taylor
44edf9165f * Makefile.in (CC, CFLAGS): Substitute from configure script. 1997-06-16 19:34:04 +00:00
Ian Lance Taylor
3b66bca3ba * Makefile.am (INCLUDES): Add -DDEBUG.
* Makefile.in: Rebuild.
1997-06-16 19:32:15 +00:00
Ian Lance Taylor
90d7b9b9dd * elf32-i386.c (elf_i386_relocate_section): When generating a
shared library, do the relocation if the input section is not
	allocated in memory.
1997-06-16 19:24:23 +00:00
Ian Lance Taylor
000befdfb4 * Makefile.in (DISTBISONFILES): Remove.
(taz): Don't futz with DISTBISONFILES.  Change BISON to use
	$(DEFAULT_YACC).
1997-06-16 18:55:52 +00:00
Ian Lance Taylor
fdc944a7fb Mon Jun 16 14:42:14 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* elfcode.h (put_signed_word): Define.
	(get_signed_word): Define.
	(elf_swap_reloca_in): Use get_signed_word for the r_addend field.
	(elf_swap_reloca_out): Use put_signed_word for the r_addend
	field.
	* elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Use
	bfd_get_signed_32 to set the r_addend field.
	* elf64-mips.c (mips_elf64_swap_reloca_in): Use
	bfd_h_get_signed_64 to set the r_addend field.
1997-06-16 18:45:30 +00:00
Ian Lance Taylor
c19fbe0f57 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Call
elf_link_assign_sym_version before elf_adjust_dynamic_symbol.
	(elf_fix_symbol_flags): New static function, broken out of
	elf_adjust_dynamic_symbol.
	(elf_adjust_dynamic_symbol): Call elf_fix_symbol_flags.
	(elf_link_assign_sym_version): Likewise.  Permit a symbol to be
	forced local even if NEEDS_PLT is set.  When forcing a symbol to
	be local, clear NEEDS_PLT.
	(elf_link_output_extsym): Remove unused local bed.
1997-06-16 18:41:19 +00:00
Ian Lance Taylor
b04d9d8a19 * gas/m68k/pcrel.d: Update for m68k disassembler changes.
* gas/m68k/operands.d: Likewise.
1997-06-16 18:34:35 +00:00
Ian Lance Taylor
2896b00885 * m68k-dis.c (print_insn_arg): Print case 7.2 using %pc@()
syntax.  From Roman Hodek
	<rnhodek@faui22c.informatik.uni-erlangen.de>.
1997-06-16 18:31:32 +00:00
Ian Lance Taylor
0a185c4899 * i386-dis.c (twobyte_has_modrm): Fix pand. 1997-06-16 18:14:13 +00:00
Ian Lance Taylor
d4dbc0c341 Mon Jun 16 14:10:00 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* i386.h: Fix pand opcode.
1997-06-16 18:11:38 +00:00
Ian Lance Taylor
eedca9daa9 Mon Jun 16 14:08:38 1997 Michael Taylor <mbt@mit.edu>
* i386-dis.c (dis386_twobyte): Fix pand and pandn.
1997-06-16 18:09:28 +00:00
Ian Lance Taylor
b0447a0e80 Mon Jun 16 13:59:18 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* symbols.c (copy_symbol_attributes): Copy BSF_OBJECT flag.
	* config/obj-elf.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Copy size
	expression.

	* config/obj-multi.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Define instead
	of obj_copy_symbol_attributes.
1997-06-16 18:00:10 +00:00
Ian Lance Taylor
a52f90a4c8 * config/tc-i386.c (i386_operand): Use alloca rather than a fixed
buffer size to make a copy of the symbol.
1997-06-16 17:31:46 +00:00
Ian Lance Taylor
f4ae97e1bd Mon Jun 16 12:49:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* ldlang.c (lang_place_undefineds): Add \n in einfo call.
	(lang_size_sections): Likewise.
	* ldlex.l: Likewise.
	* emultempl/aix.em (gld${EMULATION_NAME}_read_file): Likewise.
	* emultempl/mipsecoff.em (gld${EMULATION_NAME}_after_open):
	Likewise.
	(check_sections): Likewise.
	(gld${EMULATION_NAME}_after_allocation): Likewise.
	* emultempl/pe.em (gld_$${EMULATION_NAME}_before_allocation):
	Likewise.
	* mpw-eppcmac.c (gldppcmacos_read_file): Likewise.
	* mpw-idtmips.c (gldmipsidt_after_open): Likewise.
	(check_sections): Likewise.
	(gldmipsidt_after_allocation): Likewise.
1997-06-16 16:56:22 +00:00
Ian Lance Taylor
02fbf07071 Mon Jun 16 12:49:36 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* ldemul.c (ldemul_choose_mode): Remove unused einfo argument.
1997-06-16 16:50:43 +00:00
Ian Lance Taylor
be2c18bd85 * Makefile.in (OBJS): Put @extra_objects@ on the same line as
macro.o.
1997-06-16 16:48:01 +00:00
Ian Lance Taylor
6443441854 * configure.in: Build itl, db, sn, etc., when building for native
cygwin32.

	* Makefile.in (LD): New variable.
	(EXTRA_HOST_FLAGS): Pass down LD.
	($(DO_X)): Likewise.

Mon Jun 16 11:10:35 1997  Philip Blundell  <Philip.Blundell@pobox.com>

	* Makefile.in (INSTALL): Use $(SHELL) when executing install-sh.
1997-06-16 15:13:43 +00:00
Bob Manson
45c795f7c0 * config/monitor.exp(gdb_load): Fix typo in regexp.
Fixes last night's tcl error mesages.
1997-06-14 16:25:14 +00:00
Michael Snyder
90154aff57 * fix earlier checkin error 1997-06-13 22:41:14 +00:00
Michael Snyder
00e40d11f4 Fri Jun 13 13:44:47 1997 Michael Snyder (msnyder@cleaver.cygnus.com)
* config/mips/tm-tx39[l].h, tx39[l].mt: change r3900 target to tx39.
	[also clean up sanitization]
1997-06-13 20:53:34 +00:00
Jeff Law
dd1c7d5f5e * mn10300-tdep.c (mn10300_analyze_prologue): Fix some comments.
Add missing return statements after finding an "add imm{16,32},sp"
        instruction.
        (mn10300_frame_chain): Add in size of our register save area to find
        our caller's frame if our caller does not have a frame pointer.
Fixes some problems debugging optimized code.
1997-06-13 20:19:53 +00:00
David Edelsohn
a6b6627ba2 * symfile.c (generic_load): Check return code of target_write_memory. 1997-06-13 19:56:51 +00:00
Fred Fish
40b647e9e2 * config/i386/nm-linux.h: Enable prototypes that were #ifdef out.
* config/tm-sysv4.h (in_plt_section): Add prototype.

	* maint.c (maintenance_translate_address): Avoid assignment
	inside if, per GNU coding standards.
	* symfile.c (simple_read_overlay_table): Avoid assignments inside if, per
	GNU coding standards.

	* monitor.c (parse_register_dump): Is really a void function.
	Add prototype.
	(monitor_read_memory): Remove unused variable "name".
	(monitor_read_memory): Remove unused variable "regbuf".
	(monitor_open): Remove unused variable "i".
	(get_hex_word): Apparently unused, #if away for now.
	(from_hex): Ditto.

	* i386v4-nat.c (supply_fpregset): Remove unused variable "regi".
	(fill_fpregset): Remove unused variables "regi", "to", "from" and
	"registers".

	* remote-e7000.c (ctype.h): Include.
	(e7000_insert_breakpoint): #if away unused arg used by unused expr.
	* frame.h (generic_get_saved_register): Add prototype.
	(enum lval_type): Add partial forward decl.
	* dsrec.c (make_srec): Remove unused variable "type_code".
	* remote-sim.c (gdbsim_wait): Handle sim_running and sim_polling
	cases by just ignoring them.
	(command.h): Include.

	* java-exp.y (parse_number): Remove unused variable "unsigned_p".
	* java-lang.c (gdbcore.h): Include for prototypes.
	(type_from_class): Remove unused variable "ftype".
	(type_from_class): Remove unused variable "name_length".
	(evaluate_subexp_java): Add default case to handle remaining
	enumerations.
	* java-valprint.c (c-lang.h): Include for prototypes.

	* symfile.c (simple_read_overlay_region_table): #if away
	unused function.
	(simple_free_overlay_region_table): Ditto.
	(overlay_is_mapped): Add default case to switch.
	(simple_read_overlay_region_table): Ditto.
	(simple_read_overlay_region_table): Add prototype.

	* symtab.c (fixup_symbol_section): Remove unused msym variable.
	(fixup_psymbol_section): Ditto.
	(find_pc_sect_symtab): Make distance a CORE_ADDR.

	* utils.c: Add comment about t_addr being either unsigned long or
	unsigned long long.
	(paddr): Change formats to match actual types args are cast to.
	(preg): Ditto.
	(paddr_nz): Ditto.
	(preg_nz): Ditto.
1997-06-13 17:30:24 +00:00
Bob Manson
41547e903b * configure.in (targargs): Strip out any supplied --build argument
before adding our own. Always add --build.
1997-06-13 17:25:00 +00:00
Fred Fish
cf2b165ede * sh-tdep.c (symfile.h): Include.
(gdb_string.h): Include.
	(sh_fix_call_dummy): Ifdef away, currently unused.
	* config/sh/tm-sh.h (pop_frame): Add prototype.
	* config/sh/tm-sh.h (sh_set_processor_type): Add prototype.
1997-06-13 15:22:08 +00:00
Fred Fish
56e327b302 * defs.h (perror_with_name): Is a NORETURN function.
* utils.c (perror_with_name): Is a NORETURN function.
	(error): Is NORETURN independently of ANSI_PROTOTYPES.

	* symtab.c (fixup_symbol_section): Remove prototype.
	* symtab.h: (fixup_symbol_section): Add prototype.
	* m32r-rom.c (report_transfer_performance): Add prototype.
	* sparclet-rom.c: Ditto.
	* dsrec.c: Ditto.

	* c-exp.y (parse_number): Cast args to float* or double* as
	appropriate for conversion format.
	* java-exp.y (parse_number): Ditto.

	* Makefile.in (c-exp.tab.c): Remove #line lines that refer
	to nonexistant y.tab.c file.
	(java-exp.tab.c): Ditto.
	(f-exp.tab.c): Ditto.
	(m2-exp.tab.c): Ditto.
start-sanitize-gdbtk

	* gdbtk.c (gdbtk_init): Make truth value test explicit.
	Remove unused static variable "Gdbtk_Library".
end-sanitize-gdbtk
1997-06-13 14:51:32 +00:00
Bob Manson
adc03ece62 * configure.in (targargs): Pass --build if we're doing
a cross-compile.

Fix problems with the build defaulting to the host value if it isn't
specified.
1997-06-13 04:15:12 +00:00
Bob Manson
59df24f7c2 * gdb.base/funcargs.exp: Remove spurious suppress tests call. 1997-06-13 03:59:40 +00:00
Ian Lance Taylor
8eb693acc4 * dlltool.c (export_type): Add data field.
(def_exports): Add data parameter.  Change all callers.
	(dump_def_info): Print data field.
	(gen_def_file): Likewise.
	(make_one_lib_file): Handle data field by not emitting simple
	label and not emitting anything in SEC_TEXT.
	(dtab): Print data field.
	(process_duplicates): Merge data field.
	* dlltool.h (def_exports): Update declaration.
	* defparse.y (expline): Accept opt_DATA.  Pass it to def_exports.
	(opt_DATA): New non-terminal.
1997-06-12 16:30:55 +00:00
Ian Lance Taylor
7799bb2c27 * write.c (write_object_file): In non BFD_ASSEMBLER code, as we
step through the frags calling cvt_frag_to_fill, switch to
	SEG_DATA when we reach data_frag_root.
PR 12580.
1997-06-12 16:17:53 +00:00
Jeff Law
bb2a6cfbfd * elf32-mn10300.c (elf32_mn10300_link_hash_entry): New structure
for derived elf linker hash table entries.  References to
        elf_link_hash_entry changed appropriately.
        (elf32_mn10300_link_hash_table): New structure for derived elf
        linker hash table.
        (elf32_mn10300_hash_table): Define.
        (elf32_mn10300_link_hash_traverse): Likewise.
        (elf32_mn10300_link_hash_newfunc): New function.
        (elf32_mn10300_link_hash_table_create): Likewise.
        (elf32_mn10300_finish_hash_table_entry): Likewise.
        (mn10300_elf_relax_section): Handle "call" -> "calls", removal
        of prologue code, and call:32->call:16 relaxing.
        (compute_function_info: New function.
        (bfd_elf32_bfd_ilink_hash_table_create): Define.
1997-06-12 04:50:18 +00:00
Fred Fish
79a682fd3e Back out last change, there are too many more to fix them all. 1997-06-12 04:26:37 +00:00
Jeff Law
c370b3cd95 * simops.c: Fix thinko in last change. 1997-06-12 04:14:42 +00:00
Fred Fish
f5d3fb7587 * coffgen.c (_bfd_coff_is_local_label_name): Return proper boolean
(enum) type.
1997-06-12 03:22:46 +00:00
Ian Lance Taylor
a33f735924 * dlltool.h: New file.
* deflex.l: Include dlltool.h and libiberty.h.  Don't declare
	strdup.  Use xstrdup rather than strdup.
	* defparse.y: Include bfd.h, bucomm.h, and dlltool.h.
	* dlltool.c: Include dlltool.h and time.h.  Make a lot of
	variables and functions static.  Make a lot of char * variables
	and parameters const.  Add declarations for static functions.  Do
	some reindenting.  Hide more PowerPC stuff inside DLLTOOL_PPC.
1997-06-11 21:18:10 +00:00
Rob Savoye
f14c4109f8 * configure: Use '|' instead of ":" as the seperator in
sed. Otherwise sed chokes on NT path names with drive
	designators. Also look for "?:*" as the leading characters in an
	absolute pathname.
1997-06-11 20:09:55 +00:00
Ian Lance Taylor
8519ea2120 * elflink.h (elf_link_output_extsym): Call finish_dynamic_symbol
for a symbol which is being forced to be local.
	* elf32-i386.c (elf_i386_relocate_section): Write out the
 	relocation value for a GOT reloc for a symbol which is turning
 	into a local symbol.
	(elf_i386_finish_dynamic_symbol): If a symbol is turning into a
	local symbol, write out a RELATIVE reloc rather than a GLOB_DAT
	reloc.
	* elf32-m68k.c, elf32-sparc.c: Corresponding changes.
1997-06-11 16:59:00 +00:00
Ian Lance Taylor
b4a3d22176 Wed Jun 11 12:05:52 1997 H.J. Lu <hjl@gnu.ai.mit.edu>
* ar.c (bfd_special_undocumented_glue): Add const.
1997-06-11 16:06:29 +00:00
Ian Lance Taylor
6a1878c997 * elf32-i386.c (elf_i386_relocate_section): Get the relocation
value if the symbol is turning into a local symbol.
	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
1997-06-11 04:01:48 +00:00