Commit graph

685 commits

Author SHA1 Message Date
John Gilmore
2e384b3b50 * config/decstation.mh: Add MMALLOC_LIB and MMALLOC_DISABLE
overrides, to avoid problem in xdr_bytes with malloc(0) => 0.
1992-09-19 10:21:04 +00:00
John Gilmore
dcc8abceed * target.h (struct target_ops): removed to_convert_to_virtual and
to_convert_from_virtual elements.  Initializations removed from
all static initializations.
(target_convert_to_virtual, target_convert_from_virtual):
removed.
(host_convert_to_virtual, host_convert_from_virtual):  Removed
forward declarations.
* target.c (cleanup_target): removed default assignments for
to_convert_to_virtual and to_convert_from_virtual.
* inftarg.c (host_convert_to_virtual, host_convert_from_virtual):
removed.
* findvar.c (value_of_register, value_from_register):
target_convert_to_virtual inlined.
* infcmd.c (do_registers_info):  target_convert_to_virtual inlined.
* valops.c (value_assign):  target_convert_from_virtual inlined.
1992-09-18 09:53:47 +00:00
John Gilmore
c35475f9be * main.c (gdb_readline): Avoid printf_filtered, which sets char
position wrong if used for the prompt.
* utils.c (puts_filtered):  Comment:  NOT a puts() replacement!
1992-09-18 09:21:44 +00:00
John Gilmore
2886f8b253 Support for accessing arbitrary MIPS stack frames in memory.
* blockframe.c (get_prev_frame_info):  If INIT_FRAME_PC_FIRST is
set, run it before INIT_EXTRA_FRAME_INFO.
* stack.c (frame_info):  If PRINT_EXTRA_FRAME_INFO defined, call it.

* mips-tdep.c (init_extra_frame_info): Only clobber the `frame'
(FP) value in the frame_info struct if it is zero (as from top of
execution stack).
(setup_arbitrary_frame):  Implement FRAME_SPECIFICATION_DYADIC.

* mips-xdep.c (fetch_inferior_registers):  ZERO_REGNUM always
comes back as zero.  So does FP_REGNUM, as a trigger for
init_extra_frame_info.

* tm-mips.h (INIT_FRAME_PC_FIRST):  Kludge, FIXME, defined to get
the program counter set before INIT_EXTRA_FRAME_INFO is run.
(INIT_FRAME_PC):  Defined to null.
(PRINT_EXTRA_FRAME_INFO): print frame pointer location via symtab.
(FRAME_SPECIFICATION_DYADIC):  Ask for two args in frame command.
Briefly explain MIPS stacks in GDB.
1992-09-18 09:20:15 +00:00
John Gilmore
6bb40269a0 * tm-rs6000.h (AIX_BUGGY_PTRACE_CALL): Zap, we think we fixed it.
Rich and I believe the "real problem" was that both single_step
and target_resume were issuing PT_CONTINUE calls.  This would
cause the second PT_CONTINUE to sometimes fail because the process
was already running.
* infptrace.c (child_resume):  Remove AIX_BUGGY_PTRACE_CALL kludge.
1992-09-18 08:09:25 +00:00
John Gilmore
997cc2c0a3 Preliminary cleanup for splitting host/native/target.
* infptrace.c (child_resume):  Don't deal with NO_SINGLE_STEP
here; it is dealt with at a gdb-target-independent level.
* rs6000-tdep.c (single_step):  Don't call ptrace, we are a
high toned routine.  Fix return type to void.
1992-09-18 07:40:15 +00:00
John Gilmore
22473f727a * Makefile.in (update-depend, update-alldeps): Split out of
setup-to-dist, for convenience in rebuilding the depend and
alldeps.mak files.
(assorted):  Update to catch straggler files when building gdb.tar.Z
1992-09-18 07:06:38 +00:00
John Gilmore
cb1d36fc73 * copying.awk, copying.c (show_copying_command,
show_warranty_command):  Rename from copying_info, warranty_info,
to match command function conventions.
1992-09-17 11:02:44 +00:00
John Gilmore
d974236f80 * utils.c (prompt_for_continue): Reinitialize more-counts
before printing anything, and again afterward.  Fix comments.
(vfprintf_filtered):  Eliminate static buffer; use auto buffer,
or alloca() if needed.

* rs6000-xdep.c:  Use correct conditional (IBM6000_TARGET) to
detect native versus cross-host.
1992-09-17 10:58:53 +00:00
Stu Grossman
f499253491 * m68k-tdep.c (sun3_saved_pc_after_call): Only do trap check for
Suns.  Rename to m68k_saved_pc_after_call.
* tm-68k-noun.h, tm-sun3.h (SAVED_PC_AFTER_CALL):  Use
m68k_saved... instead of sun3_saved...
1992-09-17 05:01:51 +00:00
Stu Grossman
0055617716 * energize.c (pty_to_kernel): Must check for EAGAIN as
termination condition.
(full_filename):  Don't prepend dirname if filename begins with /.
(breakpoint_notify, kernel_dispatch):  Deal with DynamicLoad
messages properly!!
(getpty (NCR)):  Lotsa bug fixes...
(kernel_dispatch (case StopRType)):  Use kill() instead of
killpg() so we can deal with losing systems...
(wait_for_events):  Work around NCR select() lossage.  It doesn't
zero out readfds when select() returns zero.
(energize_initialize):  Use I_SETSIG to get SIGIO interrupts.  Use
getcwd() instead of getwd() (NCR getwd() seg faults).
(energize_wait):  Use sigaction() for NCR.  Their version of signal()
is unreliable by default.
1992-09-15 07:12:52 +00:00
Stu Grossman
34da36088e * procfs.c (proc_wait): Call print_sys_errmsg() if we get an
error from PIOCSWSTOP.
1992-09-15 06:42:19 +00:00
Stu Grossman
a8e033f2a2 * breakpoint.c, core.c, exec.c, language.c, main.c, printcmd.c,
symfile.c, target.c, valprint.c:  Use _filtered form of *printf.
defs.h, utils.c:  Make vfprintf_filtered global.
1992-09-15 06:27:18 +00:00
Stu Grossman
b36e3a9b49 Oops! Retract last change. Didn't mean to pollute things with energize just
yet!
1992-09-15 05:11:52 +00:00
Stu Grossman
3e3b0eb9d9 * utils.c (query): Remove test for energize from top. Now
handled in input_from_terminal_p().
1992-09-15 05:04:08 +00:00
Stu Grossman
5ca812d4fe * energize.c (send_location): New routine to consolidate all
places where we must notify kernel of where the given pc is.
(cplus_demangle):  Put single-quotes around demangled names.
(energize_call_command):  Call send_location() after doing up,
down, and frame commands.
1992-09-15 04:50:46 +00:00
Roland Pesch
d1d1ab12ab ...plus c'est la meme chose. 1992-09-12 05:28:20 +00:00
Roland Pesch
549ff1003e *** empty log message *** 1992-09-12 01:29:46 +00:00
John Gilmore
57a9bb5fb4 * mipsread.c: Clean up some white space.
(parse_symbol):  Handle stEnd of stFile.
(parse_partial_symbols):  Remove old #if 0'd code.  Handle stLocal.
1992-09-11 11:18:30 +00:00
John Gilmore
3de61d8c53 * xm-mips.h (KERNEL_U_ADDR): Get from <machine/param.h>.
(REGISTER_U_ADDR):  Fix up for Ultrix 4.2.
* tm-tahoe.h, xm-tahoe.h (KERNEL_U_ADDR):  Move macro to xm-tahoe.h.
* stack.c (_initialize_stack):  "dow" should be a valid abbreviation
for "down".  Suggested by Richard Stallman.
1992-09-11 09:11:11 +00:00
Ken Raeburn
73386fffdb from p3: remote-vx.c: hide name realloc for inclusion of rpc/rpc.h 1992-09-10 19:48:53 +00:00
John Gilmore
4ddd278ffa * i386-stub.c, sparc-stub.c (getpacket): Actually check checksums.
* m68k-stub.c:  Remove a few extraneous ANSI-isms.
* remote-nindy.c (nindy_prepare_to_store):  Only fetch regs if
they aren't already there.
* remote-vx.c (vx_prepare_to_store):  Ditto.
* xcoffread.c:  Surround forward struct defns with #ifdef __STDC__.
1992-09-10 19:18:05 +00:00
John Gilmore
2640f7e138 Removed a large number of changes inserted by Per Bothner
for C++ support.  These will go back in when they've been
examined.
1992-09-10 00:07:06 +00:00
Stu Grossman
ed3f6049b4 * serial.h: Fix prototye for serial_raw().
* ser-bsd.c, ser-termios.c:  Fix args for serial_open() &
serial_write() to match prototypes.
* remote-st2000.c (get_reg_name):  Make *p be const.
1992-09-09 04:09:56 +00:00
Ken Raeburn
120f867e06 nindy bug fixes (function types) and opcode library inclusion 1992-09-08 22:57:22 +00:00
Stu Grossman
a090e7063a * a68v-xdep.c (store_inferior_registers): declare as void.
* infptrace.c:  HP/Apollos have ptrace.h in the wrong place.
* remote-st2000.c:  Massive changes to use new serial package.
Also added 'connect' command to transparantly connect to serial
port.
* ser-termios.c:  Big cleanup, use nicer coding conventions.
* ser-bsd.c:  New module, serial stuff for BSD systems.
* serial.h:  Define struct ttystate properly using HAVE_TERMIO.
* xm-apollo68b.h:  #define PTRACE_IN_WRONG_PLACE...
1992-09-08 22:51:31 +00:00
Roland Pesch
4468ccfb4b changes, what else? 1992-09-05 02:04:57 +00:00
K. Richard Pixley
8005788cd1 tab completion optimization 1992-09-04 21:03:18 +00:00
Per Bothner
35fcebce93 A ton of changes to improve C++ debugging. See ChangeLog. 1992-09-04 07:37:18 +00:00
Stu Grossman
6c7e40b4ab * a68v-xdep.c (store_inferior_registers): Define as type void.
* configure.in:  Add host m68k-apollo*-bsd*.
* demangle.c (struct demanglers):  Use enum instead of constant
value to keep braindamaged HP/Apollo compiler happy.
1992-09-03 16:26:03 +00:00
Per Bothner
546014f750 * utils.c (strcmp_iw): Add a hack to allow "FOO(ARGS)" to
match "FOO".  This allows 'break Foo' to work when Foo is
	a mangled C++ function.  (See comment before function.)
1992-09-03 05:03:47 +00:00
John Gilmore
82eabd43a8 * config/rs6000.mh (MH_CFLAGS): Circumvent IBM <rpc/rpc.h> bug,
for files in vx-share/*.c.
* xm-rs6000.h (fd_set):  Circumvent the rs6000.mh circumvention,
for normal GDB source files.
1992-09-03 00:55:04 +00:00
John Gilmore
6d7bfa9a44 Roll VERSION to 4.6.6. 1992-09-02 20:53:39 +00:00
John Gilmore
6131a42a8d * tm-vx68.h, tm-es1800.h: Use tm-68k.h rather than tm-sun3.h.
* tm-sun3.h:  Remove STACK_END_ADDR, no longer used.
* tm-sun3os4.h:  Update comments.
* xm-delta88.h:  Remove STACK_END_ADDR.
1992-09-02 20:50:31 +00:00
John Gilmore
6aef3bdeb6 Roll VERSION to 4.6.5 for the P3 release. 1992-09-02 08:54:04 +00:00
John Gilmore
b52373a2b1 * ser-termios.c, ser-go32.c: Remove DEFUN crap, clean up.
* serial.h (EXFUN):  Remove all uses, convert to PARAMS.
* config/sun4os4.mh:  Include ser-termios.o.  FIXME, all .mh files
should include a ser-XXX.o module.

* dbxread.c (elfstab_build_psymtabs):  Remove DEFUN crap.
* defs.h, i960-pinsn.c, remote-hms.c:  Replace CONST with simple const.

* configure.in:  Map unrecognized sun 68k's, sun sparcs, into
known suns in configure.in, rather than mapping them to unique
config files that happen to duplicate other config files.
* config/sun3.{mh,mt}:  Remove (use identical sun3os4.*).
* config/sun4.{mh,mt}:  Remove (use identical sun4os4.*).
1992-09-02 08:51:17 +00:00
John Gilmore
ebb3a1e550 * configure.in (*-*-sunos*): Use trailing * to match all
sub-variants of SunOS, e.g. sunos4* to match sunos4.1.1.
(sparc-*-sunos3):  Remove host & target.  Sunos3 never shipped
in production on Sun-4.
({a29k,i[34]86,i960}-*-elf):  Add targets, equivalent to coff.
(m68k-*-{aout,coff,elf}):  Add targets, w/new config and tm files.
(sparc-*-{aout,coff,elf}):  Add targets, w/new config and tm files.

* tm-68k-un.h, tm-68k-noun.h, tm-spc-un.h, tm-spc-noun.h:  New
target definitions for embedded with and without underlines on
identifiers.  FIXME -- this ought to be known by BFD instead.

* tm-sparc.h, tm-sun2.h, tm-sun3.h:  Delete NAMES_HAVE_UNDERSCORE:
not a parameter of the CPU, but of the development environment.
* tm-es1800.h, tm-sunos.h, tm-vx68.h:  Add NAMES_HAVE_UNDERSCORE.
1992-09-02 08:03:42 +00:00
John Gilmore
ea678717a4 * breakpoint.c (breakpoint_re_set): Avoid setting source symtab
(which involves reading in main's symtab) if we have no breakpoints.
1992-09-02 02:31:52 +00:00
Ian Lance Taylor
b68b44fac8 Brought forward from p3:
Sun Aug 30 21:32:17 1992  Ian Lance Taylor  (ian@cygnus.com)

	* Makefile.in: map "gdb" through program_transform_name when
	installing.
1992-09-01 01:16:25 +00:00
Fred Fish
95ff889ecd * dwarfread.c (cu_language): New local variable to record
language for current compilation unit being processed.
	* dwarfread.c (set_cu_language):  New local function to decode
	and record language for current compilation unit being processed.
	* dwarfread.c (synthesize_typedef):  Add local function to
	synthesize a typedef for C++ classes, structs, unions, and
	enumerations.
	* dwarfread.c (read_structure_scope):  Synthesize typedefs
	for C++ classes, structs and unions.
	* dwarfread.c (read_enumeration):  Synthesize typedefs for
	C++ enumerations.
	* dwarfread.c (read_file_scope):   Call set_cu_language to
	record language for current compilation unit.  After symtab
	is built, save this recorded language.
	* dwarfread.c (process_dies, add_partial_symbol, struct_type,
	scan_partial_symbols, new_symbol):  Recognize TAG_class_type.
	* dwarfread.c (add_partial_symbol):  Synthesize partial symbol
	typedefs for C++ classes, structs, unions, and enumerations.
	* dwarfread.c (scan_compilation_units):  Call set_cu_language
	to record language for current compilation unit.
	* dwarfread.c (scan_partial_symbols):  Call add_enum_psymbol here
	for TAG_enumeration_types, rather than in add_partial_symbol.
	* dwarfread.c (add_partial_symbol):  Combine TAG_enumeration_type
	case with class, struct, and union type cases, now that they are
	the same.  Remove tests for non-NULL name attributes, now done
	by callers.
	* gdbtypes.h (TYPE_CODE_CLASS):  Add type for C++ classes, but
	treat as alias for TYPE_CODE_STRUCT for now.
1992-08-31 20:50:45 +00:00
Fred Fish
3877a2192c * {i386-tdep.c, m68k-tdep.c, mips-tdep.c, sparc-tdep.c}
(supply_gregset, fill_gregset, supply_fpregset, fill_fpregset):
	Use "regi" for local indexing through register numbers, reserving
	"regno" for the name of a specific register passed as an input
	parameter.  Fix bug propagated through all versions that sometimes
	used regno as an index when it should have been regi, thus using
	-1 as an index in some cases.
1992-08-31 04:22:46 +00:00
Per Bothner
3402b1cff2 * cplus-dem.c, demangle.h: Moved to ../libiberty and ../include,
respectively, so same demangler can be used by other programs.
	* Makefile.in:  Remove demangler stuff.
	* Makefile.in (depend):  Pass -I../readline (needed for main.c).
	* demangle.c (_initialize_demangler):  Tell demangler which
	CPLUS_MARKER to assume.
1992-08-31 01:23:24 +00:00
John Gilmore
9b280a7f53 RS/6000 portability changes (for hosting cross-debuggers).
* breakpoint.c (fixup_breakpoints):  Re-kludge to IBM6000_TARGET.
* buildsym.c, rs6000-xdep.c, rs6000-tdep.c, tm-rs6000.h,
xcoffexec.c, xcoffread.c:  Rename aixcoff to xcoff everywhere.
* printcmd.c (print_frame_args):  Remove an RS/6000 dependency.
* stabsread.c (define_symbol):  Remove RS/6000 dependencies.
* tm-rs6000.h (ATTACH_DETACH):  Remove: host-dependent.
(PTRACE_ATTACH, PTRACE_DETACH):  Remove: host-dep.
(NO_SINGLE_STEP):  Add, target-dependent.
(loadinfotextindex):  Lowercase, remove "aix_".
* xm-rs6000.h:  Add <sys/ptrace.h> for infptrace.c.
(NO_SINGLE_STEP):  Remove, target-dependent.
* xcoffexec.c (vmap_symtab):  Cleanup #if 0'd code.
* xcoffread.c:  Only build file if RS/6000 native GDB.
(build_function_symbol):  Remove #if 0'd code.
* rs6000-tdep.c:  Cleanup.  Add static fn protos.
Use CORE_ADDR for addresses throughout.  Make void fns void.
(pop_dummy_frame):  Add FIXME about bogosity of design here.
(rs6000_struct_return_address):  Ditto.
(frameless_function_invocation, frame_get_cache_fsr,
frame_initial_stack_address, xcoff_relocate_symtab,
xcoff_init_loadinfo, free_loadinfo, xcoff_add_toc_to_loadinfo,
add_text_to_loadinfo, find_toc_address):  Move from xdep file.
Use CORE_ADDRs.  Change identifiers to lowercase.

* rs6000-xdep.c:  Make whole file conditional on native RS/6000,
supplying dummy routines if non-native.  Add prototype for
static exec_one_dummy_insn.  Move a mess of functions to
rs6000-tdep.c (as above).  Remove #if 0'd code.

* config/rs6000.mh (XDEPFILES):  Move xcoffexec.o to target side.
(XM_CLIBS):  Add -lm to circumvent AIX 3.2 libc ldexp bug.
* config/rs6000.mt (TDEPFILES):  Adopt xcoffexec.o.
1992-08-29 00:32:58 +00:00
John Gilmore
d6776adba2 * vx-share/README, nindy-share/README: New files describing
how these directories' code is shared, and with whom.
(also 29k-share)
1992-08-28 20:16:45 +00:00
John Gilmore
ef131e1315 * configure.in (target configurations): Reformat into table.
Remove unsupp. Amigados host and target.  Ditto Mach 386 target.

* tm-altosgas.h, tm-i386v-g.h:  Remove ancient coff encap configs.
* config/{altosgas.mt, i386v-g.mt, i386v32-g.mt}:  Ditto.
* config/{i386sco.mt,i386v32.mt}:  Remove; identical to i386v.mt.
* config/{go32.mt,i960.mt}:  Remove; they only printed error msgs.
* config/nindy960.mt:  Remove useless MT_CFLAGS setting.
* config/i386aout.mt:  Use tm-i386v.h, not tm-i386v-g.h.

* Makefile.in (config-check):  Add command to check whether
configure.in is consistent with config/*.
1992-08-28 04:58:27 +00:00
John Gilmore
b1aa08e25f Remove -gas variants; GDB doesn't care. Cross-check with config/*.mh
to make sure all .mh files are represented and vice verse.
1992-08-28 02:00:26 +00:00
John Gilmore
19758e9ed7 * configure.in (host configurations): Reformat nested cases into
easy-to-maintain table.
(altos-*-gas):  Use -gas flag instead of OS "gas".
1992-08-27 04:15:42 +00:00
Fred Fish
38e9ed495c * cplus-dem.c: Reorder args to most local functions to make them
follow the consistent pattern of struct work_stuff pointer first,
	followed by pointer into string being demangled, followed by
	pointer to the string where the result is being stored, followed
	by other args.  Also generally replace most variables of name
	"type" with "mangled" for consistency.  They all pointed to the
	same string but half were one name and half the other.
	* cplus-dem.c (LONGERNAMES):  Remove #ifndef's.
	* cplus-dem.c (demangle_qualified):  Rewrite to clean up and allow
	use whenever a qualified name is being demangled.
	* cplus-dem.c (do_type):  Qualified names are treated similarly
	to fundamental types, not as modifiers of fundamental types.
1992-08-26 23:05:55 +00:00
Stu Grossman
ee97d6736c * sparc-stub.c (handle_exception): Flush instruction cache just
before returning to the user.  (hexToInt):  Fix overzealous cleanup.
1992-08-25 03:47:53 +00:00
Fred Fish
93220abe64 * infrun.c (handle_command): Rewrite to allow multiple signal
numbers, signal number ranges, and to recognize "all" to mean all
	signals except those used by the debugger.
	* infrun.c (SET_SIGS, UNSET_SIGS):  Macros used in handle_command
	to set or reset actions for specific signals.
1992-08-24 19:00:24 +00:00