Commit graph

1119 commits

Author SHA1 Message Date
Ian Lance Taylor
cdb1cc9214 Tue Nov 17 11:17:06 1992 Ian Lance Taylor (ian@cygnus.com)
* tm-rs6000.h (BELIEVE_PCC_PROMOTION): Define, since AIX cc gets
	it right.
	(aix_framedata): added nosavedpc field.
	(SAVED_PC_AFTER_CALL): Don't try to optimize; just call
	read_register.
	(FRAMELESS_FUNCTION_INVOCATION): Pass second argument of 0.
	(FRAME_SAVED_PC): If PC not saved, use SAVED_PC_AFTER_CALL.
	* rs6000-tdep.c (skip_prologue): Handle gcc generated stfd
	instructions as function_frame_info does.  Expand special case of
	st r31,-4(r1) to be st r31,NUM(r1), since gcc can generate offsets
	other than -4.
	(pop_frame): Add 4 rather than sizeof (int) to avoid host
	dependence.
	(function_frame_info): Set frameless if the function has no frame,
	and set nosavedpc if the PC was not saved.  Handle gcc generated
	stfd 31,-4(31); st 31, -12(31) correctly.
	(frameless_function_invocation): New second argument pcsaved; if 0
	return whether the function has a frame, if 1 return whether the
	function saved PC.
	(frame_initial_stack_address): Correct typo: cache registers for
	callee_fi, not for fi, (avoids reading garbage memory locations).
1992-11-17 21:46:17 +00:00
Stu Grossman
b638ca912c * symtab.c (find_pc_line): Improve code per gnu's suggestions.
Improve comments as well.
1992-11-16 23:59:37 +00:00
Fred Fish
19cfe25d90 First cut at sanitizing away the chill stuff. 1992-11-16 19:25:35 +00:00
Fred Fish
45a655b0b6 * Makefile.in (VERSION): Bump to 4.7.2
* symtab.c (find_pc_symtab):  Fix return of random value
	to caller.
1992-11-15 20:26:35 +00:00
Fred Fish
e58de8a230 * Makefile.in (SFILES_MAINDIR): Add ch-exp.y.
* Makefile.in (YYFILES):  Add ch-exp.tab.c.
	* Makefile.in (YYOBJ):  Add ch-exp.tab.o.
	* Makefile.in (saber_gdb):  Add unload of ch-exp.y and load
	of ch-exp.tab.c.
	* Makefile.in (distclean):  Add target ch-exp.tab.c.
	* Makefile.in (realclean):  Add rm of ch-exp.tab.c.
	* Makefile.in (c-exp.tab.c, m2-exp.tab.c):  Add dependency on
	Makefile since it contains sed patterns used in generation.
	Add sed pattern to also delete #include of any malloc.h.
	* Makefile.in (ch-exp.tab.o, ch-exp.tab.c):  New targets.
	* ch-exp.y:  New expression parser, for GNU-Chill.
	* c-exp.y, expr.c, expression.h, language.c, m2-exp.y,
	parser-defs.h, valarith.c, valops.c, value.h:  Remap macros and
	function names to conform to K&R terminology with respect to
	logical and bitwise operators:
	UNOP_ZEROP => UNOP_LOGICAL_NOT
	UNOP_LOGNOT => UNOP_COMPLEMENT
	BINOP_LOGAND => BINOP_BITWISE_AND
	BINOP_LOGXOR => BINOP_BITWISE_XOR
	BINOP_LOGIOR => BINOP_BITWISE_IOR
	BINOP_AND => BINOP_LOGICAL_AND
	BINOP_OR => BINOP_LOGICAL_OR
	PREC_OR => PREC_LOGICAL_OR
	PREC_AND => PREC_LOGICAL_AND
	PREC_LOGIOR => PREC_BITWISE_IOR
	PREC_LOGXOR => PREC_BITWISE_XOR
	PREC_LOGAND => PREC_BITWISE_AND
	value_zerop() => value_logical_not()
	value_lognot() => value_complement()
	* c-exp.y (c_op_print_tab):  Add explicit empty terminator.
	* m2-exp.y (m2_op_print_tab):  Add explicit empty terminator.
	* defs.h (enum language):  Add language_chill.
	* dwarfread.c (set_cu_language):  Add LANG_CHILL case and make
	LANG_MODULA2 a recognized language.
	* eval.c (evaluate_subexp):  Add OP_BOOL case.
	* expprint.c (print_subexp):  Add OP_BOOL case.
	* gdbtypes.h (enum_typecode):  Note TYPE_CODE_BOOL used for
	Chill as well as Modula-2.
	* gdbtypes.y (builtin_type_chill_bool, builtin_type_chill_long,
	builtin_type_chill_ulong, builtin_type_chill_real):  Add.
	* i387-tdep.c (sys/dir.h):  Remove, appears to be unnecessary
	and is nonexistant in some SVR4 based systems.
	* language.c (DEFAULT_ALLOCSIZE):  Change from 3 => 4.
	* language.c (set_language_command):  Add chill.
	* language.c (binop_result_type, integral_type, character_type,
	boolean_type, structured_type, value_true, binop_type_check):
	Add language_chill cases.
	* language.h (_LANG_chill):  Define.
	* m2-exp.y (number_sign, modblock):  Make static, #ifdef out
	unused modblock.
	* m2-exp.y (ANDAND):  Rename to LOGICAL_AND.
	* source.c (source_info):  Fix minor nits, print "1 line" rather
	than "1 lines", and "language is <lang>".
	* symfile.c (deduce_language_from_filename):  Recognize the
	filename extensions ".chill", ".c186", and ".c286" for Chill.
	* valarith.c (value_binop):  Handle TYPE_CODE_BOOL as well
	as TYPE_CODE_INT and TYPE_CODE_FLOAT.
	* valprint.c (val_print):  Print TYPE_CODE_BOOL type values as
	"TRUE" or "FALSE".
	* valprint.c (typedef_print):  Add case for language_chill.
	* values.c (value_from_longest):  Handle TYPE_CODE_BOOL.
1992-11-15 17:28:02 +00:00
Stu Grossman
c1878f8788 * infcmd.c (step_over_calls): Improve comments.
* symtab.c (find_pc_psymtab):  Clean up a bit.
* (find_pc_symtab):  Fix comments, clean up code.
* (find_pc_line):  General cleanups, efficiency improvements.
Also, don't return garbage when some line info exists, but there
was no good match.
1992-11-14 04:33:21 +00:00
Stu Grossman
b6113cc408 * Makefile.in: Remove dependancies for 29k-share/dfe/yank.o and
29k-share/dfe/mini2udi.o.
* config/a29k-udi.mt:  Remove yank.o and mini2udi.o.
* alldeps.mak, depend:  Update to deal with removal of
aforementioned files.
* remote-udi.c:  Major cleanups.  Clean up udi_open and drop
requirement for useless 'program' argument.  Clean up
udi_create_inferior, and udi_load to call common download()
routine.  Create download routine to load remote hosts directly
(with the help of BFD) so that we don't need yank.c and
mini2udi.c.
Fix udi_detach to call UDIDisconnect with
the right arguments.  Clean up udi_resume, don't assign tip_error
twice.  Clean up udi_wait, straighten out status codes.  Make
udi_kill really work.
1992-11-12 01:15:06 +00:00
John Gilmore
59c84bd8d5 Fix problems noticed by Allan Steel, <allan@maths.su.oz.au>,
when debugging a program with 100 shared libraries.

* solib.c (solib_map_sections):  Always close the BFD we open.
Free all malloc'd storage we allocate, too, including error cases.
(struct so_list):  Remove unused so_bfd member.
(clear_solib):  Don't bother closing so_bfd.

* symfile.c (symfile_bfd_open):  Mark newly opened BFD as
cacheable.  `So many symbol files, so little file descriptors.'
1992-11-06 11:05:08 +00:00
John Gilmore
8a96d79b70 * m68k-stub.c: Remove ansidecl.h and the few uses of it.
Stubs should stand alone as much as possible.

* source.c (show_directories):  Avoid printf_filtered length prob
pointed out by Jonathan Stone.

* i960-pinsn.c (MEM_MAX, MEM_SIZ):  Set upper limit properly to
avoid accesses beyond end of table.  Fix by Lee W. Cooprider,
<Lee_Cooprider@vos.stratus.com>.
1992-11-06 09:21:13 +00:00
Fred Fish
402dca80e7 * {ser-bsd.c, ser-termios.c} (serial_close): Pass address of
struct, not struct itself.
	* serial.h (serial_restore):  Fix prototype, takes pointer not
	struct.
1992-11-06 01:35:57 +00:00
Stu Grossman
2352d20bd7 * Makefile.in (depend): Add nm.h to the list of things to fixup.
* depend:  Redo, to fixup nm.h problems with *-tab.c files.
1992-11-06 01:13:34 +00:00
Stu Grossman
e7ae70e927 Re-install UDI comments. 1992-11-05 23:40:02 +00:00
John Gilmore
042bf84cf7 * i386-stub.c: Remove ansidecl.h and the few uses of it.
Stubs should stand alone as much as possible.
1992-11-05 08:40:38 +00:00
John Gilmore
61f55ca303 * README: Add remote-es1800.c and remote-st2000.c to table.
* go32-nat.c:  Remove, there is no native go32 support.
* go32-xdep.c:  Remove unused fork, fvork, wait, execlp, kill_inferior.
* infcmd.c (run_command):  Avoid long calls to printf_filtered.
Bug fix courtesy of Alexander Klaiber.
1992-11-05 08:26:15 +00:00
Stu Grossman
1549918a3f * inflow.c (pass_signal, set_sigint_trap, clear_sigint_trap): Add
new routines to deal with sending SIGINTs to attached processes
when the user interrupts the controlling GDB.
* inftarg.c (child_wait), procfs.c (procfs_wait):  Add calls to
the aforementioned routines when waiting for the attached process.
1992-11-05 03:54:01 +00:00
Stu Grossman
740b7efa43 * elfread.c, mipsread.c: Include <string.h>.
* i386-stub.c:  Include "ansidecl.h" to deal with prototypes.
* serial.h:  Add prototype for serial_restore().
1992-11-04 23:31:52 +00:00
Ian Lance Taylor
a521e93a8e Wed Nov 4 11:13:25 1992 Ian Lance Taylor (ian@cygnus.com)
* minsyms.c (lookup_minimal_symbol_by_pc): subtract 1, not 2, from
	minimal_symbol_count, because the NULL symbol is not included in
	the count.  This prevented this function from finding the last
	symbol in the table.
1992-11-04 19:45:42 +00:00
Ian Lance Taylor
b1fbbed48e Tue Nov 3 11:29:17 1992 Ian Lance Taylor (ian@cygnus.com)
* dbxread.c (process_one_symbol): if not defined
	(BLOCK_ADDRESS_FUNCTION_RELATIVE), set function_start_offset at
	the start of the function, not just after N_FUN.
1992-11-03 19:52:43 +00:00
Fred Fish
e35843d476 * Makefile.in (c-exp.tab.c, m2-exp.tab.c): Add sed patterns to
remap all malloc's to xmalloc's and all realloc's to xrealloc's.
	* c-exp.y, m2-exp.y:  Add comment about how malloc/realloc are
	  remapped to xmalloc/xrealloc, use only malloc/realloc in grammer
	  file.  Remove preprocessor defines that previously did remapping.
1992-10-31 00:35:08 +00:00
K. Richard Pixley
b1de302a44 hp300 native support 1992-10-28 07:08:52 +00:00
K. Richard Pixley
7aae0974c2 vax native support 1992-10-28 05:31:14 +00:00
K. Richard Pixley
124a6fc037 add new nm files to HFILES 1992-10-28 03:05:29 +00:00
K. Richard Pixley
5c9bbfe62c apollo native support 1992-10-28 02:58:11 +00:00
K. Richard Pixley
851fffcf4e include nm.h in defs.h 1992-10-28 02:32:59 +00:00
Stu Grossman
bccaecc63b * Makefile.in (VERSION): 4.7.1 post release! 1992-10-23 13:17:47 +00:00
Stu Grossman
451df68019 * config/hppahpux.mh (NATDEPFILES): Add hppah-nat.o. 1992-10-23 11:50:37 +00:00
John Gilmore
c50c519792 * Makefile.in (VERSION): gdb-4.7 release.
* README:  Update for gdb-4.7.
1992-10-23 07:53:03 +00:00
Stu Grossman
ee22c7f05e * sparc-tdep.c: include nm.h (for now) so that we get USE_PROC_FS
when necessary.
1992-10-23 03:54:11 +00:00
Stu Grossman
db5b1f90ef * alldeps.mak, depend: Update. 1992-10-22 18:25:32 +00:00
John Gilmore
fef84cc41a * partial-stab.h ('f', 'F'): Don't reference pst->textlow if pst
is null.
* tm-sun4sol2.h (PROLOGUE_FIRSTLINE_OVERLAP):  Remove -- it
causes problems in setting breakpoint in the right place in
functions with `float' args which are passed as doubles.
* xm-vaxbsd.h (MEM_FNS_DECLARED):  Avoid erroneous redecl's.
* config/rs6000.mh (NATDEPFILES):  Add corelow.o.
1992-10-22 11:23:54 +00:00
Stu Grossman
603900c746 * Makefile.in (HFILES): Add nm-i386sco.h.
* dwarfread.c:  include <sys/types.h> for SCO.
* infptrace.c:  Don't include ptrace.h under SCO.
* config/i386sco.mh:  Use -D_POSIX_SOURCE instead of -posix for
gcc.
* config/i386v.mt:  Add exec.o to TDEPFILES.
1992-10-22 08:07:12 +00:00
Stu Grossman
3496b74562 * i386v-nat.c: Remove space from front of #endif.
* irix4-nat.c:  Remove externs of registers[], include inferior.h
	instead.
	* mips-nat.c:  Explicitly initialize zerobuf to 0!
	* mips-tdep.c (init_extra_frame_info):  Undo John's last change.
	Always setup fci->frame, even if it's non-zero.  Too many places
	depend upon this behavior (and I have to get a release out the
	door)!
	* mipsread.c (parse_partial_symbols, psymtab_to_symtab_1):  Set
	processing_gcc_compilation if we find the embedded stabs marker.
	This fixes several bugs with finding the location of short or char
	function parameters passed on the stack.
1992-10-22 02:26:04 +00:00
K. Richard Pixley
99ef5653ef sun4sol2 native stuff 1992-10-22 02:00:07 +00:00
John Gilmore
0a2a48a217 * coredep.c: Include "nm.h" to get REGISTER_U_ADDR. 1992-10-21 21:11:39 +00:00
John Gilmore
e4db3f3e06 * Makefile.in (VERSION): Tick to 4.6.9.
* mipsread.c (UNSAFE_DATA_ADDR):  Remove MIPS-host-specific
definition, replace with portable one.
* remote-nindy.c:  Lint.
(nindy_wait):  Return type is int, result is inferior_pid.
* symmisc.c (dump_psymtab):  Only print section_offsets if set.
(initialize_symmisc):  Remove empty function.
* tm-spc-noun.h, tm-sun4os4.h, tm-sun4sol2.h (STACK_END_ADDRESS):
Remove obsolete, misspelled macro.
* doc/gdbint.texinfo:  Document obsolete STACK_END_ADDR.
(all @node commands):  Use new form to avoid nitpicking errors.
* doc/gdbint.texinfo:  Document host/native/target split.
1992-10-21 10:52:09 +00:00
Stu Grossman
e0e9107774 * mips-nat.c (zerobuf): Get rid of const to avoid gcc warnings. 1992-10-21 07:50:26 +00:00
Stu Grossman
ce5489d223 * xm-mips.h (offsetof): Don't define this if __STDC__. 1992-10-21 07:15:39 +00:00
K. Richard Pixley
3fcb902156 umax native support 1992-10-21 05:12:16 +00:00
K. Richard Pixley
ca0487229b hppa native support 1992-10-21 04:57:35 +00:00
Stu Grossman
2675499b51 * mips-nat.c: Straighten out include files. Work around
conflicting defs of JB_xxx syms in <setjmp.h> and <machine/pcb.h>
	for Ultrix-4.2.
1992-10-20 07:03:38 +00:00
Stu Grossman
56fc16c70b * mips-nat.c (fetch_core_registers, register_addr): Copy from
coredep.c, but zero out FP_REGNUM & ZERO_REGNUM so that stack
	backtraces from core files work.
	* config/decstation.mh, config/irix3.mh:  Remove coredep.o.
	Functions are now defined in mips-nat.c.
1992-10-20 05:47:47 +00:00
Stu Grossman
3ec5a74b0d * remote-hms.c: Disable all uses of serial_nextbaudrate and
serial_default_name().
1992-10-20 00:16:37 +00:00
Stu Grossman
5a6242dddd * remote-hms.c, ser-go32.c, serial.h: Change from
serial_timedreadchar() to new serial_readchar().
1992-10-19 23:40:36 +00:00
Stu Grossman
d95eb93075 * Makefile.in (HFILES): Fixup list of nm-*.h files. Add missing ones. 1992-10-19 22:12:50 +00:00
Per Bothner
10a297b791 * c-exp.y: Moved handling of 'const' and 'volatile' from
<type> to <typebase>.  This removes 2 conflicts.
1992-10-19 19:46:05 +00:00
Fred Fish
e6efef9f07 * breakpoint.c (breakpoint_re_set_one): Don't delete watchpoints
from breakpoint table when reseting breakpoints.
1992-10-18 07:38:59 +00:00
Fred Fish
4d0eabff25 Native support cleanup and corefile fixes for i386 SVR4 systems.
* i386-tdep.c (supply_gregset, fill_gregset, supply_fpregset,
	  fill_fpregset): Moved to i386v4-nat.c
	* i386v4-nat.c, nm-i386v4.h, :  New files.
	* i386sol2.mh, i386v4.mh, ncr3000.mh (NAT_FILE):  Use nm-i386v4.h.
	* i386sol2.mh, i386v4.mh, ncr3000.mh (NATDEPFILES):  Add corelow.o,
	  change i386v-nat.o to i386v4-nat.o.
1992-10-17 08:07:14 +00:00
K. Richard Pixley
c36989aa95 misc 386 configs updated 1992-10-17 00:07:04 +00:00
K. Richard Pixley
f1a353db99 i386bsd cleanup 1992-10-16 23:49:43 +00:00
K. Richard Pixley
c7c9407366 i386v host/target/native separation 1992-10-16 23:39:34 +00:00
K. Richard Pixley
e24cb83d47 linux host/target/native separation 1992-10-16 23:11:13 +00:00
K. Richard Pixley
61bbb1c2cf sun386 host/target/native separation 1992-10-16 23:03:27 +00:00
K. Richard Pixley
a113beac21 i386mach host/target/native separation 1992-10-16 22:57:36 +00:00
K. Richard Pixley
d9548d448c go32 host/target/native separation 1992-10-16 22:49:35 +00:00
K. Richard Pixley
e367cb3b50 added nm-m88k.h to HFILES 1992-10-16 20:56:05 +00:00
K. Richard Pixley
173a4f1bda m88k native support 1992-10-16 20:53:46 +00:00
John Gilmore
f4cc0e9b3c * i386b-nat.c: Comment changes.
* nm-i386bsd.h, xm-i386bsd.h:  Split native dependent pieces out
into new nm-file.
* config/i386bsd.mh (NAT_FILE):  Point to new nm-file.
1992-10-16 11:37:58 +00:00
John Gilmore
2268d61946 Avoid longjmp()-catching compilation errors in cross-ports.
* doc/gdbint.texinfo:  Update GET_LONGJMP_TARGET, L_SET doc.
* irix4-nat.c, mips-nat.c (JB_ELEMENT_SIZE, get_longjmp_target):
Move from mips-tdep.c and tm-{irix3,mips}.h.
* mips-nat.c:  Remove a bunch of code that was ifdef'd out of
native MIPS ports.
* nm-irix3.h, nm-mips.h (GET_LONGJMP_TARGET):  Move from tm-irix3.h
and tm-mips.h.

* ultra3-nat.c (register_addr):  Move from ultra3-xdep.c.
(fetch_core_registers):  Fix bfd_seek arguments.
1992-10-16 10:47:34 +00:00
John Gilmore
d5a66a8d05 Make core files work again on most hosts. 1992-10-16 10:14:47 +00:00
John Gilmore
62aa17e322 * config/decstation.mh, news.mh (NATDEPFILES): Add corelow.o.
* config/delta88.mt, m88k.mt (TDEPFILES):  Remove coredep.o, it's
native dependent.
1992-10-16 10:04:46 +00:00
K. Richard Pixley
6bf98ac01d ultra3 split 1992-10-16 06:05:36 +00:00
K. Richard Pixley
b396595a9c add MEM_FNS_DECLARED 1992-10-16 04:55:14 +00:00
John Gilmore
327f7197b0 * Makefile.in (VERSION): Roll to 4.6.8.
(OBS):  Put version.o first, so Makefile rebuild happens early.

* command.h:  Publicize prototype for not_just_help_class_command.
* command.c:  Remove proto.
* maint.c:  Mark "mt" as an abbrev, to avoid duplicated help
output.  Move "maint info" from class info to class maintenance,
and improve text.
* infrun.c:  Move "stop" to class_obscure, and give it a
function so it will not be seen as a global help topic.  FIXME,
it should be possible to set these attributes independently.

* core.c (core_command):  Make nicer error message for no core support.
1992-10-15 13:42:10 +00:00
John Gilmore
d5931d797d Lint around file_ptr's (bfd's off_t's) and bfd_seek.
* dbxread.c (read_dbx_symtab):  Use L_SET as bfd_seek arg.
(elfstab_build_psymtabs):  staboffset and stabstroffset args are
file_ptr's.
* dwarfread.c (struct dwfinfo):  Convert dbfoff, lnfoff to file_ptr.
(scan_compilation_units):  Punt unused filename arg.  dbfoff,
lnoffset, and curlnoffset are file_ptr's now.
(dwarf_build_psymtabs):  Drop desc and filename args; use
objfile.  dbfoff and lnoffset are file_ptr's now.
(read_ofile_symtab):  foffset is now file_ptr.  Use L_SET in bfd_seek.
* elfread.c (struct elfinfo):  dboffset and lnoffset are file_ptr's.
(elf_symfile_read):  Skip desc and filename args to
dwarf_build_psymtabs.  Pass file_ptr's to elfstab_build_psymtabs.
* gdb-stabs.h:  Use file_ptr rather than off_t.
* mipsread.c (fixup_symtab): f_ptr is a file_ptr.  Re-enable
compile-time debug check that someone turned off as "unused".
(read_the_mips_symtab):  st_filptr is a file_ptr.  Fix bfd_seek call.
* symfile.h:  Update dwarf_build_psymtabs and
elfstab_build_psymtabs prototypes.
* xcoffread.c (init_stringtab, init_lineno, xcoff_symfile_read):
Use file_ptr offsets.  bfd_seeks use L_SET.
1992-10-15 13:40:40 +00:00
Stu Grossman
dac4929a6d * mips-tdep.c, mipsread.c, tm-mips.h: Get rid of ".gdbinfo."
symbol.  #define MIPS_EFI_SYMBOL_NAME instead.  Use different
value so that demangler won't be invoked.  This greatly speeds up
stepping.
* mips-tdep.c (mips_pop_frame):  Rewrite handling of
linked_proc_info so that it properly deallocates the appropriate
item after it is done with it instead of before.
* Don't pass bogus frame pointer to create_new_frame().  Just
leave it as zero so that lower level code will figure out the
correct value.
1992-10-15 08:36:30 +00:00
K. Richard Pixley
7536558918 sony news native support 1992-10-15 06:47:31 +00:00
K. Richard Pixley
170d4f55ba remove redundant include of sys/time.h. 1992-10-15 06:38:03 +00:00
K. Richard Pixley
a6b98cb90a include ctype.h 1992-10-15 01:57:45 +00:00
John Gilmore
849d81e59f * config/news1000.mt: No longer needed, same as news.mt. 1992-10-13 08:30:26 +00:00
John Gilmore
358ca35ea4 Convert m68k entries to m68* entries to handle
all the various m68xxx hosts and targets.
1992-10-13 08:28:45 +00:00
K. Richard Pixley
601f15702e remove duplicate inftarg.o 1992-10-10 01:58:10 +00:00
Stu Grossman
47b7176b22 * Makefile.in (HFILES): Add all nm-irix3.h, nm-irix4.h,
nm-sun2.h, nm-mips.h.
1992-10-10 00:32:07 +00:00
Stu Grossman
3032863605 * config/irix3.mh (NATDEPFILES): nat-mips.o => mips-nat.o. 1992-10-09 23:11:25 +00:00
Stu Grossman
a109657412 * Makefile.in (alldeps.mak): Add = sign after NATDEPFILES. 1992-10-09 23:01:11 +00:00
Stu Grossman
89f1a7df70 * config/bigmips.mh config/littlemips.mh: Remove mips-xdep.o.
Also add nm-irix3.h to .Sanitize, and remove references to .Sanitize from
ChangeLog.
1992-10-09 21:23:43 +00:00
Ian Lance Taylor
b5ddc1014c Fri Oct 9 08:41:11 1992 Ian Lance Taylor (ian@cygnus.com)
* xm-hppah.h: if __STDC__ is not defined, define
	HPPA_COMPILER_BUG.
	symtab.c (decode_line_1): avoid a bug in the HP9000/700 native
	compiler; see the comment in the file.

Here's the comment from the file:
  /* FIXME: The native HP 9000/700 compiler has a bug which appears
     when optimizing this file with target i960-vxworks.  I haven't
     been able to construct a simple test case.  The problem is that
     in the second call to SKIP_PROLOGUE below, the compiler somehow
     does not realize that the statement val = find_pc_line (...) will
     change the values of the fields of val.  It extracts the elements
     into registers at the top of the block, and does not update the
     registers after the call to find_pc_line.  You can check this by
     inserting a printf at the end of find_pc_line to show what values
     it is returning for val.pc and val.end and another printf after
     the call to see what values the function actually got (remember,
     this is compiling with cc -O, with this patch removed).  You can
     also examine the assembly listing: search for the second call to
     skip_prologue; the LDO statement before the next call to
     find_pc_line loads the address of the structure which
     find_pc_line will return; if there is a LDW just before the LDO,
     which fetches an element of the structure, then the compiler
     still has the bug.  */
1992-10-09 15:49:16 +00:00
John Gilmore
0e35d2f37e First cut at support for all BSD variants on 386. 1992-10-09 11:55:05 +00:00
K. Richard Pixley
56e8942230 Sun2 native support (untested).
* xm-sun2.h (ATTACH_DETACH, FETCH_INFERIOR_REGISTERS,
  REGISTER_U_ADDR): removed to nm-sun2.h.
* nm-sun2.h: new file.
* config/sun2os[34].mh (XDEPFILES): infptrace.o inftarg.o
  fork-child.o sun3-xdep.o removed.
  (NAT_FILE, NATDEPFILES): new macros.
1992-10-09 08:20:47 +00:00
K. Richard Pixley
a70dc8981b Mips native support. Decstation and iris4 have been tested.
Iris3 has not.

* mips-tdep.c (supply_gregset, fill_gregset, supply_fpregset,
  fill_fpregset): removed to irix4-nat.c
* mips-xdep.c: removed.
* irix4-nat.c, mips-nat.c, nm-irix3.h, nm-irix4.h, nm-mips.h: new
  files.
* procfs.c: include nm.h.
* xm-irix3.h (U_REGS_OFFSET, FETCH_INFERIOR_REGISTERS): removed.
* xm-irix4.h: bump copyright.
(U_REGS_OFFSET, FETCH_INFERIOR_REGISTERS, USE_PROC_FS,
PROC_NAME_FMT): removed.
* xm-mips.h (FETCH_INFERIOR_REGISTERS): removed.
* config/irix4.mh (XDEPFILES): removed procfs.o fork-child.o.
(NAT_FILE, NATDEPFILES): new macros for native support.
(CC): supply default compiler switches.
* config/irix3.mh (XDEPFILES): removed infptrace.o inftarg.o fork-child.o coredep.o.
(NAT_FILE, NATDEPFILES): new macros for native support.  Note that
irix3 is untested.
* config/decstation.mh (XDEPFILES): removed infptrace.o inftarg.o
  fork-child.o mips-xdep.o coredep.o.
  (NAT_FILE, NATDEPFILES): new macros for native support.
1992-10-09 07:59:37 +00:00
K. Richard Pixley
55ec69fb42 * config/rs6000.mh (XDEPFILES): removed fork-child.o.
(NATDEPFILES): added fork-child.o
* config/sun3os3.mh (XDEPFILES): removed fork-child.o.
(NATDEPFILES): added fork-child.o
* config/sun3os4.mh (XDEPFILES): removed fork-child.o.
(NATDEPFILES): added fork-child.o
1992-10-09 07:22:15 +00:00
John Gilmore
01ae50eb0e * infcmd.c (path_info): Avoid 250-char limit on printf_filtered,
by using puts_filtered instead.
1992-10-09 06:20:26 +00:00
Ken Raeburn
0256270d64 * remote-nindy.c (nindy_load): Replacement version from Steve
Chamberlain, doesn't require forking to run "strip" or "sx".
1992-10-09 04:51:32 +00:00
Stu Grossman
e6c6137281 * Makefile.in (HFILES): Add nm-*.h files. 1992-10-09 01:29:17 +00:00
K. Richard Pixley
dd6f869584 * config/sun4os4.mh (XDEPFILES): fork-child.o removed.
(NATDEPFILES): added fork-child.o.
1992-10-09 00:06:15 +00:00
K. Richard Pixley
968720bf25 * doc/gdbint.texinfo: document a few more macros, create new
section for native macros.
1992-10-08 23:29:35 +00:00
Stu Grossman
5413338bff * Makefile.in alldeps.mak depend: Rip out 29k/udi pending
resolution of copyright issues.
1992-10-08 20:54:37 +00:00
Stu Grossman
0da7012441 * Makefile.in (setup-to-dist): Remove -norecursion so that doc
subdir gets configured.

Bad John, bad...
1992-10-08 03:11:46 +00:00
Ken Raeburn
6a1f93f6a2 * Makefile.in (nindy.o): Define "STRIP" as pathname of strip program.
* nindy-share/nindy.c (coffstrip): Use that pathname, instead of searching for
a "bfd_strip" program.  Also, fixed up arguments passed to that program.

* tm-nindy960.h (ADDITIONAL_OPTIONS): Use "-ser" rather than "-r", which is now
used for something else.  Rewrite description of associated parameters to match
how gdb does it now.
(ADDITIONAL_OPTION_HELP): Fix message accordingly.

* m68k-pinsn.c (print_insn_arg): Handle new "`" operand type.
1992-10-08 02:09:28 +00:00
K. Richard Pixley
3950a34e45 NOTICE_SIGNAL_HANDLING_CHANGE macro added to the target vector as
to_notice_signals.

* inferior.h (proc_signal_handling_change): prototype removed.
* infrun.c (NOTICE_SIGNAL_HANDLING_CHANGE): default removed.
(handle_command): now calls target_notice_signals.
* procfs.c (proc_signal_handling_change): renamed to
  procfs_notice_signals.  Now static.  Add prototype.  All callers
  changed.
* target.h (struct target_ops): new field, to_notice_signals.
(target_notice_signals): new macro to cover new field.
* target.c (cleanup_target): default to_notice_signals to ignore.
* corelow.c (core_ops),
exec.c (exec_ops),
inftarg.c (child_ops),
procfs.c (procfs_ops),
remote-adapt.c (adapt-ops),
remote-eb.c (eb_ops),
remote-es1800.c (es1800_ops, es1800_child_ops),
remote-hms.c (hms_ops),
remote-mm.c (mm_ops),
remote-nindy.c (nindy_ops),
remote-st2000.c (st2000_ops),
remote-udi.c (udi_ops),
remote-vx.c (vx_ops, vx_run_ops),
remote.c (remote_ops),
target.c (dummy_target),
xcoffexec.c (exec_ops): added static initializer for
to_notice_signals.
* xm-irix4.h, xm-sysv4.h (NOTICE_SIGNAL_HANDLING_CHANGE): removed.
1992-10-06 22:54:57 +00:00
John Gilmore
06e4d12d79 * main.c (define_command): Add forgotten initializer. 1992-10-06 19:14:18 +00:00
John Gilmore
b5af69c336 * language.c, language.h: Move saved_language out to global
expected_language.  Set expected_language when user expectation
changes.
* language.c (language_info):  Don't print type/range checking gub.
* main.c (main):  Set expected language.
(execute_command):  Check against expected language.
* symfile.c (set_initial_language):  Set expected language.
1992-10-06 09:33:15 +00:00
John Gilmore
48ab6c0e1d Solaris-x86 early trial 1992-10-06 09:29:24 +00:00
John Gilmore
94603999f9 A bunch of changes mostly to improve debugging of C++ programs.
Specifically, the calling of inferiors methods is improved.

	* value.h:  New macros METHOD_PTR_IS_VIRTUAL,
	METHOD_PTR_FROM_VOFFSET, METHOD_PTR_TO_VOFFSET to partially
	hide the implementation details of pointer-to-method objects.
	How to tell if the pointer points to a virtual method is
	still very dependent on the particular compiler, but this
	should make it easier to find the places to change.
	* eval.c (evaluate_subexp [case OP_FUNCALL]), valprint.c
	(val_print [case TYPE_CODE_PTR]):  Use the new METHOD_PTR_*
	macros, instead of a hard-wired-in code that incorrectly
	assumed a no-longerused representation of pointer-to-method
	values.  And otherwise fix the relevant bit-rotted code.

	* valprint.c (type_print_base [case TYPE_CODE_STRUCT]):
	If there are both fields and methods, put a space between.

	* stabsread.c (read_struct_type):  Fix bug in handling of
	GNU C++ anonymous type (indicated by CPLUS_MARKER followed
	by '_').  (It used to prematurely exit the loop reading in
	the fields, so it would think it should start reading
	methods while still in the fields.  This could crash gdb
	given a gcc that can emit nested type information.)

	* valops.c (search_struct_method):  Pass 'this' value by
	reference instead of by value.  This provides a more
	consistent interface through a recursive search where the
	"bottom" functions may need to adjust offsets (due to multiple
	inheritance).
	* valops.c, value.h, values.c:  Pass extra parameters to
	value_fn_field and value_virtual_fn_field so we can
	correctly adjust offset for multiple inheritance.
	* eval.c (evaluate_subexp [case OP_FUNCALL]):  Simplify
	virtual function calls by using value_virtual_fn_field().
	* values.c: New function baseclass_offset, derived from
	baseclass_addr (which perhaps can be made obsolete?).
	It returns an offset rather than an address.  This is a
	cleaner interface since it doesn't mess around allocating
	new values.
	* valops.c (search_struct_method):  Use baseclass_offset
	rather than baseclass_addr.
1992-10-06 09:22:43 +00:00
Stu Grossman
aa1dea489b * Makefile.in: Re-install 29K/UDI stuff.
* remote-udi.c (udi_resume):  Clean up.
* (udi_wait):  Rewrite, leave out bugs.
* Add debugging code to print out all register fetches and stores.
* Straighten out target_ops.
* tm-29k.h (DUMMY_FRAME_RSIZE):  Pad out to doubleword.
1992-10-05 23:19:59 +00:00
Ian Lance Taylor
5d5a9c3ccb Mon Oct 5 09:46:44 1992 Ian Lance Taylor (ian@cygnus.com)
* remote-udi.c (udi_create_inferior): run with no arguments should
	not pass the program name as an argument, since the UDI code
	already handles that.
	(udi_load): get the symbols from prog_name, not arg_string (the
	load command should really use arg_string as the program name, not
	prog_name, but at least the run command works now).
1992-10-05 21:03:18 +00:00
Ian Lance Taylor
9191286471 Mon Oct 5 09:46:44 1992 Ian Lance Taylor (ian@cygnus.com)
* munch: HP9000/300 nm puts an etra space between T and symbol
	name.
1992-10-05 20:57:33 +00:00
Ian Lance Taylor
e661aaae1d Mon Oct 5 09:46:44 1992 Ian Lance Taylor (ian@cygnus.com)
* config/irix4.mh: added -lsun to XM_CLIBS to get RPC functions
	needed for vxworks targets.
1992-10-05 16:49:13 +00:00
John Gilmore
34517ebc85 Changes to make 29k function calls work better at Adobe.
* am29k-tdep.c (_initialize_29k):  Make it possible for the
user to set and query the address where function calls into the
inferior write a small scratch routine.  `set call_scratch_address'
* inferior.h (PC_IN_CALL_DUMMY):  Fix fencepost error.
* remote.c (remote_prepare_to_store): Only fetch regs if they are
not already cached validly.
1992-10-03 05:28:42 +00:00
K. Richard Pixley
ef6f3a8b1f Rs6000 native support.
* infptrace.c: remove #ifdef USG from around include ptrace.h.
  machines without this header should not be compiling this file.
* nm-rs6000.h, rs6000-nat.c: new files for native support.
* rs6000-tdep.c: do not include sys/ptrace.h or sys/reg.h.
* rs6000-xdep.c: removed.  all code now in rs6000-nat.c.
* xm-rs6000.h: do not include ptrace.h.
  (ATTACH_DETACH, FETCH_INFERIOR_REGISTERS): moved to nm-rs6000.h.
* config/rs6000.mh (XDEPFILES): removed rs6000-xdep.o.
  infptrace.o and inftarg.o move to NATDEPFIES.
  (NAT_FILE, NATDEPFILES): new macro for native support.
1992-10-02 05:50:17 +00:00
K. Richard Pixley
93282e6139 Sun3 native support.
* config/sun3os3.mh, config/sun3os4.mh (NAT_FILE, NATDEPFILES):
  new macros for native support.
  (XDEPFILES): moved infptrace.o and inftarg.o to NATDEPFILES,
  removed sun3-xdep.o.
* xm-sun3.h (ATTACH_DETACH, FETCH_INFERIOR_REGISTERS): moved to
  nm-sun3.h.
* sun3-xdep.c: removed.  All code is now in sun3-nat.c.
* sun3-nat.c, nm-sun3.h: new files for native support.
1992-10-01 22:44:25 +00:00
John Gilmore
a65841d768 Add `command hooks' and a hook for inferior program stopping.
* command.h (struct cmd_list_element):  Remove unused `aux'
field.  Add new `hook', `hookee', and `cmd_pointer' fields.
* command.c (add_cmd):  Initialize new fields, elim old.
(add_alias_cmd):  Clone new fields.
(delete_cmd):  Un-hook hookee if we're deleting hook.
(help_cmd):  Tell user the command is hooked, if it is.
(lookup_cmd_1):  Abbreviations return the original command
instead of themselves, so that hooks on the original cmd will be
run.
* defs.h (enum command_class):  Add class_pseudo and comments.
* gdbcmd.h (execute_user_command):  Add prototype.
* infrun.c (normal_stop):  If the stop command is hooked,
run the hook whenever we stop.
(hook_stop_stub):  Stub for catch_errors.
(_initialize_infrun):  Set up pseudo "stop" command.
* main.c (execute_user_command):  Code extracted from execute_command.
(execute_command):  If hooked, run the hook before the command.
(define_command):  If defining a new hook, check the command it
is hooking, and warn if none.  Install the hook.
* source.c (_initialize_source):  "l" is an abbrev for "list".
* doc/gdb.texinfo:  Document command hooks.

* Makefile.in (VERSION):  Roll to 4.6.7.
* config/sun4os4.mh:  Remove dup inftarg.o from NATDEPFILES.
* infrun.c (breakpoints_inserted):  Make it static again.
* tm-symmetry.h (FLOAT_INFO):  #if 0 it for cross-ptrace abuse.
1992-10-01 09:57:36 +00:00
K. Richard Pixley
9c14e78d73 missed a ChangeLog entry 1992-09-30 22:40:17 +00:00
K. Richard Pixley
dfc8261766 Native file renaming.
* nat-sparc.c -> sparc-nat.c
* nat-sun4os4.h -> nm-sun4os4.h
* nat-trash.h -> nm-trash.h
* configure.in: link to nm.h rather than nat.h.
* infptrace.c: include nm.h rather than nat.h.
1992-09-30 22:39:02 +00:00
K. Richard Pixley
c9c2341230 Host/target/native split for sun4.
* Makefile.in (TSOBS): removed corelow.o.
* infptrace.c: included nat.h.
* nat-trash.h: temporary header file.  This should be removed once
  all hosts have the native/host/target split.
* configure.in: add a symlink from nat-trash.h to nat.h if no
  other nat file exists for this configuration.
* sparc-tdep.c: no longer include sys/ptrace.h.
* sparc-xdep.c: removed.  contents have been moved to nat-sparc.c.
* xm-sparc.h (ATTACH_DETACH, FETCH_INFERIOR_REGISTERS): moved to
  nat-sun4os4.h.
* nat-sparc.c, nat-sun4os4.h: new files for sun4 native support.
* config/sun4os4.mh (XDEPFILES): moved infptrace.o and inftarg.o
  to NATDEPFILES.  removed sparc-xdep.o.
  (NATDEPFILES, NAT_FILE): new macros for native support.
1992-09-30 02:03:24 +00:00
K. Richard Pixley
df9b3bfc4c Break the direct connection from core_file_command to any
particular type of core file support.

* target.h (find_core_target): new prototype.
* target.c (find_core_target): new function.  Walks the target
  list looking for the core target.
* core.c (core_file_command): replace calls to core_detach and
  core_open with find_core_target and direct calls.
1992-09-29 21:51:16 +00:00
Ian Lance Taylor
be891e75a3 Tue Sep 29 10:19:00 1992 Ian Lance Taylor (ian@cygnus.com)
* xm-hp300hpux.h: define MEM_FNS_DECLARED; include <sys/ptrace.h>
	for infptrace.c.
	config/hp300hpux.mh: ALLOCA1 was not defined.
1992-09-29 17:43:35 +00:00
Stu Grossman
597dc86b1b * breakpoint.c, exec.c, language.c, main.c, printcmd.c, symfile.c,
target.c, valprint.c:  Use unfiltered forms of f/printf, et. al.
until we can figure out a better way to do paging.
1992-09-29 05:07:30 +00:00
John Gilmore
e0ba1d1427 * findvar.c (supply_register): Add CLEAN_UP_REGISTER_VALUE hook.
* tm-hppa.h (CLEAN_UP_REGISTER_VALUE):  Use it.
* hppa-coredep.c:  Remove, now that we use the hook.
* config/hppab.mh, config/hppah.mh:  Use standard coredep.o.
* hppab-xdep.c, hppah-xdep.c:  Remove custom code, use hook.

* dbxread.c, partial-stab.h:  Replace all #ifdef hp9000s800's with
GDB_TARGET_IS_HPPA's.  This is a SERIOUS KLUDGE.  The code needs to all
be ripped out and reimplemented right (see elfread.c).
* tm-hppa.h (GDB_TARGET_IS_HPPA):  Define.
1992-09-26 10:24:26 +00:00
John Gilmore
3fbdd5366e Make the /proc support a target-struct in its own right.
* inferior.h (proc_wait, inferior_proc_init, proc_set_exec_trap):
No longer global functions.
(fork_inferior):  New global function from fork-child.c.
* inftarg.c (child_wait):  Remove USE_PROC_FS conditional.
(ptrace_me, ptrace_him):  New stub functions for fork_inferior().
(child_create_inferior):  Moved to fork-child.c as fork_inferior.
(child_create_inferior):  New tiny function that calls fork_inferior.
* fork-child.c:  New file, containing fork_inferior, which is
built from slight mods to inftarg.c's child_create_inferior.

* procfs.c (procfs_ops):  Add target vector.
(attach):  Rename as static do_attach.
(procfs_create_inferior):  New tiny function that calls fork_inferior.
(child_xfer_memory):  Rename to static procfs_xfer_memory.
(store_inferior_registers):  Rename to static procfs_store_registers.
(inferior_proc_init):  Rename to static procfs_init_inferior.
(procfs_attach, procfs_detach, procfs_prepare_to_store,
procfs_files_info, procfs_open, procfs_mourn_inferior,
procfs_can_run):  Slightly mangled copies of the corresponding
child_XXX routines from inftarg.c.
(proc_wait):  Renamed to static procfs_wait.
(child_resume):  Rename to static procfs_resume.
(fetch_inferior_registers):  Rename to static procfs_fetch_registers.
(initialize_proc_fs):  Rename to initialize_procfs.  Set up
procfs_ops, too.
* xm-irix4.h, xm-sysv4.h (CREATE_INFERIOR_HOOK):  No longer needed.
1992-09-26 09:06:30 +00:00
John Gilmore
b3d4dd73c3 * Makefile.in: Remove inftarg.[co], since it is now included via
config/*.mh files.
* config/*.mh:  Add inftarg.o and fork-child.o to all *.mh that
reference infptrace.o.  Add fork-child.o to all *.mh that
reference procfs.o.
1992-09-26 08:06:45 +00:00
John Gilmore
a5a7c719fc Lint 1992-09-26 05:34:14 +00:00
John Gilmore
836e343b01 Split non-target-dependent code out of target_attach routines.
* target.h:  Comments on target_attach args and results.
* infcmd.c (attach_command): Check for existing execution, call
target_attach, set up terminal status and wait_for_inferior, wait
for the attach status, and do normal_stop.
* inftarg.c (child_attach):  Remove target independent stuff.
* remote-adapt.c (adapt_attach):  Ditto.
* remote-mm.c (mm_attach):  Ditto.
* remote-udi.c (udi_attach):  Ditto.
* remote-vx.c (vx_attach):  Ditto.

Cleanup.

* remote-hms.c (hms_attach):  Remove completely, it was useless.
* remote-mm.c, remote-hms.c, remote-udi.c, remote-adapt.c:  Remove
commented-out start_remote calls.
* remote-hms.c, remote-adapt.c, remote-mm.c, remote-udi.c: Remove
DENTER and DEXIT macros and their calls.  Use a real debugger --
like gdb -- to see what functions are being called when.
1992-09-26 05:20:24 +00:00
John Gilmore
3aa6856ae8 * infrun.c, inftarg.c, inferior.h: Comment and lint cleanups. 1992-09-26 01:49:18 +00:00
Stu Grossman
1aed676612 * tm-sparc.h, dbxread.c (read_ofile_symtab): Install Jim Wilson's
fix to differentiate between gcc1 & gcc2 compiled files so that we
can debug calls that pass structs as args correctly.
* symmisc.c (dump_symtab):  If block was compiled with gcc, say
so, and what version.
1992-09-25 22:59:27 +00:00
Stu Grossman
b869d3f47f * remote.c (remote_wait): Make regs be char to avoid picayune
ANSI compiler warnings.

* energize.h:  Move all external struct decls to inside of
__STDC__, add prototype for energize_shell_wait().
* energize.c (getpty):  Clean up, make us really get a controlling
terminal.
* (energize_initialize):  Disable SIGIO prior to setting up for
I/O interrupts.  Move setsid(), et. al. to getpty().
* (energize_shell_wait):  New routine to wait for things started
via the shell command, uses wait() instead of /dev/proc.
* Also, add prototype for execute_command_1().
1992-09-25 22:23:54 +00:00
K. Richard Pixley
310cc57043 * inftarg.c (child_create_inferior, child_attach,
child_mourn_inferior): collect unix child process stratum
	  functions which live below the target vector into this file to
	  facilitate host/target/native split.  Also, make them static.
	* inflow.c (child_mourn_inferior): removed.
	* infrun.c (child_create_inferior, child_attach): removed.
	  (resume): becomes global so that functions below the
	  target vector can find it.
	* inferior.h (resume): add prototype.
	  (child_mourn_inferior, child_create_inferior, child_attach):
	  remove prototypes.
1992-09-25 19:19:08 +00:00
K. Richard Pixley
050d45c5ea * xcoffexec.c (exec_ops): child_attach and child_create_inferior
replaced with find_default_attach and
	  find_default_create_inferior.
1992-09-25 19:11:25 +00:00
K. Richard Pixley
8afd6ca547 Separate core functions along target vector in preparation for
native support.  Functions above vector now live in core.c.  Those
        below in corelow.c.

	* core.c (solib_add_stub, core_close, core_open, core_detach,
	  get_core_registers, core_files_info, core_ops): moved to corelow.c
	  (_initialize_core): removed addition of core_ops target.
	* corelow.c: new file.
	(solib_add_stub, core_close, core_open, core_detach,
	get_core_registers, core_files_info, core_ops): moved from core.c
	(_initialize_corelow): new function.
	* gdbcore.h (core_open, core_detach): added prototypes.
	(core_ops): add forward declaration.
	* Makefile.in (SFILES_MAINDIR): add core.c
	(OBS): add core.o
	(TSOBS): change core.o to corelow.o
1992-09-25 17:03:55 +00:00
Stu Grossman
cdfab26752 * m68k-tdep.c (m68k_saved_pc_after_call): Use 'GDB_TARGET_IS_SUN3'
instead of 'sun' predefined symbol so that trap analysis code is
enabled only when the TARGET is a sun3.
1992-09-23 18:19:19 +00:00
Ken Raeburn
5e9a7f0077 fix repeated ext_format_i960 local decls so sun4 cc accepts it 1992-09-22 21:55:21 +00:00
John Gilmore
ebeccdf0b8 * mips-pinsn.c (print_insn_arg, case 'B'): Disassemble `break'
instruction's argument.  Patch from jonathan@cs.stanford.edu
(Jonathan Stone).
1992-09-22 07:46:14 +00:00
John Gilmore
5ee4e16ca7 Break the thread of control that implies that a unix child
process will be the default target.

* target.c (find_default_run_target, find_default_attach,
find_default_create_inferior, return_zero):  new functions.
(cleanup_target):  Make return_zero the default for to_can_run.

* exec.c (exec_ops), core.c (core_ops):  Replace child_attach and
child_create_inferior references with find_default_XXX instead.

* target.h (struct target_ops): new field, to_can_run.
(find_default_attach, find_default_create_inferior):  new prototypes.
(target_can_run): new macro.

* Also added a zero (default) to_can_run element to all static
struct target_ops initializations throughout GDB, except:
* inftarg.c (child_ops): Use new child_can_run() to enable child runs.

* infrun.c (child_create_inferior):  Clean up error handling when
no exec file is specified.
(child_attach):  Don't require exec file.
1992-09-22 07:23:35 +00:00
John Gilmore
b28d361723 Remove kill_inferior_fast, in favor of target_kill, which goes
through the target vector.

* inferior.h (kill_inferior_fast): remove declaration.

* main.c (disconnect): call quit_cover using catch_errors rather
than calling kill_inferior_fast directly.  New way goes through
the target vector, handles attached processes, and writes
command history if appropriate.
(quit_cover): new function, wrapper for quit_command.

* convex-xdep.c, go32-xdep.c, hppabsd-xdep.c, hppahpux-xdep.c,
infptrace.c, procfs.c:  Removed all instances of kill_inferior_fast,
inlining them into the local kill_inferior when needed.
1992-09-22 05:23:57 +00:00
John Gilmore
6b50c5c242 * infrun.c (_initialize_infrun): Alias i handle' == i signals'.
* stabsread.c (read_struct_type): Simplify complicated expression
for dumb DECstation compiler.
1992-09-22 02:33:11 +00:00
Ian Lance Taylor
8f61b5e451 Patches from WRS:
Mon Sep 21 14:54:35 1992  Ian Lance Taylor  (ian@cygnus.com)

	* m68k-pinsn (print_insn_arg, fetch_arg): added support for
	operands to memory management instructions, from WRS.
1992-09-21 22:36:04 +00:00
Fred Fish
538280d81e * main.c (main): Back out previous language setting changes.
Replace with simple default to C before processing any init
	files.  There MUST be a language set, even in the absence of
	init files or executables, or expression parsing fails.
1992-09-20 15:45:52 +00:00
Fred Fish
d75710b02c * main.c (main): Move code that sets initial language to
symfile.c.  Fixup places where command files are processed to
	be consistent in setting a default language if none has been
	previously set.
	* symfile.c (set_initial_language):  Add code moved from
	main() that sets an initial default language when a new
	symbol file is read.
	* symfile.c (symbol_file_command):  Call set_initial_language.
	* symtab.c (find_main_psymtab):  Add FIXME comment.
1992-09-19 16:55:34 +00:00
John Gilmore
5f1c39efa2 * rs6000-tdep.c (push_dummy_frame, pop_dummy_frame): replace
calls to {fetch|store}_inferior_registers with calls to
target_{fetch|store}_registers, for remote-target independence.
1992-09-19 12:08:23 +00:00
John Gilmore
f7fe7196c2 * configure.in: removed target_dependent line.
* remote-mm.c (mm_attach): change printf to error to prevent
fallthrough bug.
* remote-udi.c (udi_attach): change printf to error to prevent
fallthrough bug.
1992-09-19 11:55:20 +00:00
John Gilmore
45413b27d2 comment changes 1992-09-19 11:47:19 +00:00
John Gilmore
dd9da95a1a Left out ChangeLog, oops 1992-09-19 11:45:20 +00:00
John Gilmore
d40309c72a * Makefile.in, configure.in: add support for files used only when
configured native, that is, when host == target.
1992-09-19 11:09:01 +00:00
John Gilmore
a4afec9ade * tm-sparc.h, xm-sparc.h: externs and macros relating to deferred
stores are target dependent and were moved from xm to tm.
1992-09-19 10:56:01 +00:00
John Gilmore
8c0950668f * Makefile.in (gdb-all.texi): Build in objdir, not $srcdir. 1992-09-19 10:47:09 +00:00
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
Fred Fish
dac9734e58 * coffread.c (decode_type): Call alloc_type to alloc new
types.
	* stabsread.c (read_array_type, read_range_type, define_symbol):
	Call alloc_type to alloc new types.
	* stabsread.c (define_symbol):  Move dbl_valu symbol field data
	from type_obstack to symbol_obstack.
	* stabsread.c (define_symbol):  Move typedef_sym from type_obstack
	to symbol_obstack.
	* gdbtypes.h (TYPE_ALLOC):  New macro to allocate space for data
	associated with a type, using the same mechanism as was used to
	allocate space for the type structure itself.
	* coffread.c (patch_type, coff_read_struct_type,
	coff_read_enum_type):  Use TYPE_ALLOC.
	* dwarfread.c (struct_type):  Use TYPE_ALLOC.
	* gdbtypes.c (create_array_type, check_stub_method,
	allocate_cplus_struct_type):  Use TYPE_ALLOC.
	* mipsread.c (parse_symbol, parse_type):  Use TYPE_ALLOC.
	* stabsread.c (read_struct_type, read_array_type, read_enum_type,
	read_range_type):  Use TYPE_ALLOC.
1992-08-24 00:13:11 +00:00
Fred Fish
ca8820f938 * breakpoint.c (breakpoint_re_set): Select a default source
symtab if one is not currently selected.
	* utils.c (query):  Call wrap_here before building the output
	query string, to turn off wrapping and flush any buffered output.
	Otherwise our query may end up in the wrap buffer and never be
	seen by the user.
	* eval.c (evaluate_subexp):  Report error when attempting to
	evaluate subscript for types without a target type, rather
	than dumping core by using the NULL pointer.
	* symfile.c (symbol_file_command):  Forget current_source_symtab
	and current_source_line when discarding symbol table.
1992-08-23 18:09:19 +00:00
John Gilmore
42e8b6588e Bug fixes from Andrew Heybey <ath@lcs.mit.edu>.
* tm-mips.h (REGISTER_VIRTUAL_TYPE):  Float regs are float type.
* mips-tdep.c (mips_print_register):  Alloc enough space for two regs.
1992-08-23 05:36:09 +00:00
Stu Grossman
39a131782f * remote.c (remote_open): Fix baud rate setting to make -b flag
work.  (remote_wait):  Change 'T' message parser to deal with new
improved format which allows stub to send an arbitrary bunch of
registers.
* sparc-stub.c:  General cleanups.  (trap_low, handle_exception):
make all this re-entrant by storing all state on the stack.  Clean
up memory error trapping.  (computeSignal, set_debug_traps):
make it all table driven.  Make a start at a baud rate setting command.
1992-08-21 22:35:35 +00:00
Ian Lance Taylor
664cf43813 This is for PR 628.
Wed Aug 19 10:23:27 1992  Ian Lance Taylor  (ian@cygnus.com)

	* m68k-pinsn.c: handle new operand type 'r', introduced for cas2.
1992-08-19 18:28:48 +00:00
Ian Lance Taylor
0d6d92c707 Wed Aug 19 10:23:27 1992 Ian Lance Taylor (ian@cygnus.com)
* remote-vx.c: redefine malloc to avoid buggy declaration on
	RS/6000 <rpc/types.h>.
	xm-rs6000.h: include <sys/select.h> to define fd_set for
	<rpc/svc.h> on RS/6000.
1992-08-19 17:26:47 +00:00
Ian Lance Taylor
4bbefa86e2 Moved in from p3:
Tue Aug 18 14:48:24 1992  Ian Lance Taylor  (ian@cygnus.com)

 	* Makefile.in: added FLAGS_TO_PASS variable, and passed it to
	recursive invocations of make.  Always create installation
	directories.
1992-08-18 21:59:16 +00:00
Per Bothner
d6b38bfb24 * m68k-pinsn.c: Minor fix in style of output (don't use
range to indicate floating point control registers).
1992-08-18 01:35:31 +00:00
John Gilmore
67c9f54cb9 Surround extended support with #ifdef HAVE_68881. 1992-08-15 11:06:41 +00:00
John Gilmore
e893a126fb * infcmd.c (registers_info): Handle multiple register names.
Changes inspired by Roland McGrath.
1992-08-15 10:00:10 +00:00
Stu Grossman
4ecee2f9f1 * sparc-stub.c: New file. Mix it with your SPARClite
application, and it will speak GDB remote protocol!
* remote.c (remote_wait):  Change 'T' (expedited reply) message to
deal with arbitrary registers.  Needed for sparc-stub,
1992-08-15 09:34:25 +00:00
Fred Fish
3dc755fb81 * cplus-dem.c (cplus_markers): Add table for gnu style and
use throughout, in place of compile time constant CPLUS_MARKER.
	* cplus-dem.c (ARM_VTABLE_STRING, ARM_VTABLE_STRLEN):  Add.
	* cplus-dem.c (cfront_special):  New function, as suggested
	by pfieland@stratus.com.
	* cplus-dem.c (forget_types):  New function.
	* cplus-dem.c (cplus_demangle):  Call gnu_special, moved from
	demangle_prefix().
	* cplus-dem.c (mop_up):  Call forget_types().
	* cplus-dem.c (AUTO_DEMANGLING, GNU_DEMANGLING, LUCID_DEMANGLING):
	Use throughout, instead of checking current_demangling_style.
	* cplus-dem.c (demangle_signature):  When finding an explicit
	start of function args, forget all remembered types for
	lucid/cfront style demangling.
	* cplus-dem.c (demangle_prefix):  In a sequence of two or more
	underbar characters, use last pair as the delimiter.  Hoist
	gnu_special() call up to cplus_demangle().  Call cfront_special()
	when appropriate.
	* cplus-dem.c (cplus_special):  Fix virtual table name demangling
	for inherited classes.
	* cplus-dem.c (demangle_args):  Document quirks of numbered
	references to previously seen types.
	* dbxread.c (read_ofile_symtab, process_one_symbol):
	Use AUTO_DEMANGLING rather than explicitly checking
	current_demangling_style.
	* demangle.h:  Add some comments.
	* demangle.h (AUTO_DEMANGLING, GNU_DEMANGLING, LUCID_DEMANGLING,
	CFRONT_DEMANGLING):  New macros.
	* dwarfread.c (LCC_PRODUCER):  Remove trailing space, which is
	not found in the actual producer string produced by lcc.
	* dwarfread.c (handle_producer):  Use AUTO_DEMANGLING rather
	than explicitly checking current_demangling_style.
1992-08-14 19:14:15 +00:00
John Gilmore
4e8ea7a6e8 * breakpoint.c (enable_longjmp_breakpoint,
disable_longjmp_breakpoint, set_longjmp_resume_breakpoint):
Check for duplicate breakpoints at the same address.  Bug report
and preliminary fix from Dave Morrison, <drmorris@us.oracle.com>.
1992-08-13 19:02:32 +00:00
Fred Fish
7b5d965008 * buildsym.c (end_symtab): Document that end_symtab can return
NULL under non-error conditions.
 	* dwarfread.c (read_file_scope):  Guard against dereferencing NULL
 	returned from end_symtab for empty compilation units.
1992-08-12 18:17:48 +00:00
John Gilmore
6872cfda60 Changes to make MIPS x 29K compile.
* am29k-tdep.c:  Lint from DECstation compiler.
* mem-break.c:  Restore test of BREAKPOINT size that Fred removed.
As the man page says, "Sometimes you just can't get lint to shut
up".  That doesn't mean you should blow away the code it won't
shut up about.
* mips-xdep.c:  Revise stubbing-out of code until Rich cleans
it up over the next few weeks.  Make mips x 29k build.
* tm-29k.h (CALL_DUMMY):  Make it work on cross-endian hosts.
(FIX_CALL_DUMMY):  Comment in the patching of the breakpoint,
but leave it as a comment because the breakpoint instruction
is not easily accessible at this moment (it's static, and if
we define one here, it goes into every file compiled).
1992-08-11 09:54:24 +00:00
Fred Fish
a679650f37 * Makefile.in (VERSION): Bump to 4.6.3.
* dwarfread.c (scan_partial_symbols):  Skip over DIE's within
	function scopes when building partial symbol tables.
	* objfiles.c (open_existing_mapped_file):  Make it clear in
	warning message that out of date mapped files are ignored.
	* symtab.c (lookup_symtab_1, lookup_symbol):  Print compilation
	unit source file name in error message.
1992-08-11 05:29:41 +00:00
Fred Fish
50055e94a1 * dwarfread.c (struct dieinfo): Add has_at_byte_size.
* dwarfread.c (struct_type):  In absence of AT_byte_size for
	bitfield, use size of object of member's type for the size of
	the anonymous object containing the bit field.
	* dwarfread.c (completedieinfo):  Set has_at_byte_size when
	an AT_byte_size attribute is seen.
	* mipsread.c (psymtab_to_symtab_1):  Fix misspelled cast to
	union aux_ext (was aux_ent).
	* i386-pinsn.c (print_insn):  Cast 2'nd arg to read_memory from
	unsigned char* to char*, for Lucid compiler.
	* i386-tdep.c (codestream_fill):  Fix cast of 2'nd arg to read_memory
	to be correct type (from unsigned char* to char*).
	* valprint.c (type_print_derivation_info):  Minor tweak to placement
	of commas in derived class printing.
	* xcoffread.c (builtin_type):  Fix misspelling in fatal message.
1992-08-09 06:14:59 +00:00
Steve Chamberlain
f6492282df * xm-go32.h: Define LSEEK_NOT_LINEAR
* serial.c (find_source_lines): if LSEEK_NOT_LINEAR is defined
	then work out the lseek positions of newlines by running through
	the file and `tell'ing.  This makes source file listing work on
	OS's where the relationship between physical position in file and
	canonical position is indeterminate, eg VMS and DOS.
1992-08-07 18:22:54 +00:00
Fred Fish
c02a37ea00 * stabsread.c: Ensure that all members of all allocated structures
are initialized to known state to avoid hard to find bugs with gdb
	using fields containing random data.
1992-08-06 21:44:36 +00:00
Fred Fish
3416d90bd6 * buildsym.c (start_subfile): Compact dirname initialization.
* buildsym.c (patch_subfile_names):  New function.
	* buildsym.c (end_symtab):  Make copy of dirname on symbol obstack.
	* buildsym.c (end_symtab):  Free all malloc'd subfile fields.
	* buildsym.h (patch_subfile_names):  Add prototype.
	* dbxread.c (process_one_symbol):  Call patch_subfile_names.
1992-08-06 19:59:46 +00:00
Fred Fish
8275e802a7 * buildsym.c (end_symtab): Make copy of dirname on symbol obstack. 1992-08-06 17:58:26 +00:00
John Gilmore
15ee4caab2 Update comments. It doesn't do MiniMON, it does UDI! 1992-08-05 17:49:48 +00:00
John Gilmore
38094c6033 * remote.c (getpkt): Only force retransmission ten times;
after that, assume bug in target code, and handle pkt anyway.
1992-08-05 08:46:44 +00:00
Stu Grossman
d0d0f75ef1 * configure.in: Add support for apollo 68k under BSD environment.
* xm-apollo68b.h:  New file to support above.
1992-08-04 00:09:14 +00:00
Fred Fish
9e4667f601 * configure.in: Recognize i486 host cpu.
* valprint.c (type_print_derivation_info):  Print derivation info
	in same form as class declarations in source.
	* valprint.c (type_print_varspec_suffix):  Split arg printing
	code out to type_print_args function.
1992-08-03 07:28:46 +00:00
Fred Fish
cd46ffad4e * dwarfread.c (struct dieinfo): Remove obsolete at_visibility,
at_import, at_frame_base.
	* dwarfread.c (completedieinfo):  Remove cases for obsolete
	AT_visibility, AT_import, and AT_frame_base attributes.
	* breakpoint.h (BREAKPOINT_MAX):  Increase from 10 to 16 for
	i860, which can keep up to 4 shadow breakpoints.
	* tm-stratus.h (USG):  Define.
	* tm-stratus.h (TARGET_BYTE_ORDER):  Define to BIG_ENDIAN.
	* xm-stratus.h (HOST_BYTE_ORDER):  Define to BIG_ENDIAN.
	* xm-stratus.h (xm-sysv4.h):  Include, name changed from xm-svr4.h.
	* xm-stratus.h (NO_JOB_CONTROL):  Remove define.
	* config/stratus.mt (TDEPFILES):  Include files available from
	stratus that are not yet in release pending receipt of paperwork
	at FSF.
	* buildsym.c (finish_block):  Minor code format change.
	* gdbtypes.h (struct field):  Add to comments.
	* gdbtypes.h (virtual_field_bits):  Add to comments.
	* objfiles.c (allocate_objfile):  Change obstack interface to
	match FSF merging efforts.
1992-08-01 20:40:59 +00:00
David Henkel-Wallace
ddce75e075 Support OSE. 1992-07-23 18:57:29 +00:00
Fred Fish
d78086038e * lmode_inferior_valid, lmode_ours_valid: New static vars.
* inflow.c (terminal_init_inferior, terminal_inferior,
	terminal_ours_1, initialize_inflow):  Record and use state
	of lmode_inferior_valid and lmode_ours_valid.
1992-07-23 04:41:40 +00:00
Fred Fish
c0f1085b5a * buildsym.c (read_struct_type): Initialize structs allocated
with alloca, to avoid using random values from stack later on.
	* defs.h (fprintf_filtered):  Add prototype.
	* gdbtypes.c (check_stub_method):  Fix misleading comments.
	* gdbtypes.c (print_arg_types, dump_fn_fieldlists):  New maint
	support functions.
	* gdbtypes.c (print_cplus_stuff, recursive_dump_type):  Many
	small changes to maint support functions.
	* gdbtypes.h (cplus_struct_type):  Reorganize member ordering
	for some fields and expand comments.
	* objfiles.c (allocate_objfile):  Use new obstack_alloc_arg
	macro and track change to obstack_full_begin macro.
	* utils.c (fprintfi_filtered):  New function.
	* valprint.c (type_print_base):  Fixup field printing to not
	print extraneous lines and not print bogus "no data fields"
	messages for C++ classes with no data members.  Also use new
	fprintfi_filtered function.
1992-07-21 04:14:34 +00:00
Stu Grossman
b5fee91eae * energize.c: Second cut at DynamicLoad message handling. 1992-07-18 00:29:40 +00:00
Stu Grossman
509c1804ca * energize.c: Relativize pathnames in #include statements.
* (kernel_dispatch):  Better error messages for unknown protocol
messages.
* (kernel_dispatch):  First cut at DynamicLoad message handling.
1992-07-18 00:00:24 +00:00
Stu Grossman
f8e32b6ee5 * Makefile.in: Remove -I../readline from all compilations,
include a special case for main.o instead.
1992-07-17 23:53:49 +00:00
Fred Fish
51a9d78c44 * eval.c (evaluate_subexp): Ask lookup_struct_elt_type to call
error if it fails to find a member type, rather than return NULL
	and trigger a coredump.
	* symtab.c (lookup_symbol, lookup_demangled_block_symbol,
	lookup_demangled_partial_symbol,):  Ask demangle_and_match to
	match on complete demanglings, including argument lists for member
	functions, rather than just accepting the first demangling that
	matches the class and function name.
1992-07-17 18:52:05 +00:00
Fred Fish
d4902ab0a7 * dwarfread.c (read_file_scope): Pass contents of AT_comp_dir
to start_symtab as the directory name.
	* dwarfread.c (completedieinfo):  Strip off any leading hostname
	portion of the AT_comp_dir attribute string.  Gdb doesn't know
	what to do with them (FIXME).
1992-07-17 17:16:26 +00:00
Stu Grossman
cb48d8069c * breakpoint.c (commands_command): Simplify code a bit, remove
unnecessary fflush().
1992-07-16 23:22:57 +00:00
Stu Grossman
cdaa27e9ae * Makefile.in (OTHERS): Add gcc.patch.
* partial-stab.h (N_SO):  Fix handling of redundant SOs (again...)
1992-07-16 20:40:36 +00:00
Fred Fish
345e9ab8dc Change LCC_PRODUCER string to match current NCR lcc AT_producer. Update
energize-patches to work when configured with -srcdir=.
1992-07-16 19:12:49 +00:00
Stu Grossman
3ddcdc596c * WHATS.NEW renamed to NEWS. 1992-07-16 18:41:46 +00:00
Fred Fish
d23639b2ec * dbxread.c, dwarfread.c: Re-enable experimental code to
automatically select demangling style.
	* demangle.c (DEFAULT_DEMANGLING_STYLE):  Rename from simply
	DEMANGLING_STYLE, to make more descriptive.  Revert back to
	"auto" as default.  Comment use.
	* Makefile.in (DEMANGLING_STYLE, DEMANGLE_OPTS):  Remove.
	* Makefile.in (${DEMANGLER}.o) Remove target and special
	compilation rule.
1992-07-15 19:33:21 +00:00
Fred Fish
5e85287ea2 To avoid confusion, start off post release development versions at 4.6.1,
so the only 4.6 gdb executables are those built from the actual 4.6 release.
1992-07-15 06:11:24 +00:00
Stu Grossman
d1fbc20dc3 * Makefile.in, demangle.c: Change default demangling style to
gnu.
* Makefile.in:  Update version to 4.6 !!!
* README, WHATS.NEW:  Update for 4.6.
1992-07-15 02:30:30 +00:00
Ken Raeburn
7b8ca0a03f Use frame address if arg pointer isn't available. 1992-07-14 22:07:47 +00:00
Ken Raeburn
7e94a17bcd Don't crash on TYPE_CODE_UNDEF nodes as base classes (generated by
compiler bug?).
1992-07-14 21:22:05 +00:00
Stu Grossman
930acbe575 * xcoffread.c: Add decl for section_offset to keep prototype happy. 1992-07-14 21:11:54 +00:00
Stu Grossman
67ba524fe0 * Makefile.in (VERSION): 4.5.9. 1992-07-14 07:37:03 +00:00
Stu Grossman
efcc6e0653 * xm-hp300bsd.h: Add decl for strdup().
* mips-tdep.c (heuristic_proc_desc):  Fill in proc start addr in
PDR.  Cleanup a few things, fix compilation warnings.
1992-07-14 07:35:48 +00:00
Fred Fish
2dbde378c4 * Makefile.in (DEMANGLING_STYLE): New define to set default
demangling style for C++.  Defaults to "auto".
	* Makefile.in (DEMANGLE_OPTS):  Use DEMANGLING_STYLE.
	* Makefile.in (SFILES_MAINDIR):  Add demangle.c
	* Makefile.in (OBS):  Add demangle.o
	* cplus-dem.c (GNU_DEMANGLING, ARM_DEMANGLING, LUCID_DEMANGLING):
	Remove compile time decisions about demangling style and replace
	with runtime decisions using current_demangling_style.
	* cplus-dem.c (main):  Expand code included during building of
	standalone demangler to recognize demangling style options.
	* dbxread.c (demangle.h):  Include.
	* dbxread.c (read_ofile_symtab, process_one_symbol):  Set GNU C++
	demangling style if processing g++ code and current demangling style
	is auto (Note: this feature currently disabled.)
	* demangle.c:  New file, generic demangling control.
	* demangle.h (demangling_styles):  New enumeration to select one
	of several demangling styles.  Also define string names for each
	style.
	* demangle.h (set_demangling_style):  Add prototype.
	* dwarfread.c (demangle.h):  Include.
	* dwarfread.c (GPLUS_PRODUCER, LCC_PRODUCER, CFRONT_PRODUCER):
	New producer string prefixes to recognize.
	* dwarfread.c (handle_producer):  Consolidate actions for specific
	producers.  Set demangling style based on producer string if
	current style is auto.  (Note: this feature currently disabled.)
	* config/ncr3000.mt (DEMANGLE_OPTS):  Remove.
1992-07-14 02:13:12 +00:00
John Gilmore
49f3be18e1 * config/sun4sol2.mh: Remove -xs flag, default INSTALL to cp. 1992-07-13 10:36:39 +00:00
Per Bothner
a252e71520 * gdbtypes.c, gdbtypes.h: New function lookup_signed_typename.
* c-exp.y:  Call lookup_signed_typename() after seeing
	"signed".  This handles "signed char" correctly.
	* c-exp.y:  Recognize (but ignore) 'const' and 'volatile'
	keywords before a type specifier.
1992-07-10 23:30:40 +00:00
Fred Fish
311592ff50 * command.c (lookup_cmd_1): Clarify descriptive comments.
* gdbcmd.h (maintenanceprintlist):  Add declaration.
	* main.c (maintenanceprintlist):  Add definition.
	* main.c (gdb_completer_command_word_break_characters):  Add.
	* main.c (symbol_completion_function):  Switch completer word
	break character sets dynamically, based on whether completion is
	being done on commands or on something else.
	* main.c (initialize_cmd_lists):  Init maintenanceprintlist.
	* maint.c:  Include demangle.h.
	* maint.c (maintenance_demangle):  New function.
	* maint.c (maintenance_print_command):  New function.
	* maint.c (_initialize_maint_cmds):  Reorganize some commands
	under new maintenance print subcommand.
1992-07-10 17:22:35 +00:00
Per Bothner
5c5b5d4b0e Various fixes to improve C++ debugging. See ChangeLog. 1992-07-10 03:56:17 +00:00
Ken Raeburn
7eec00ed56 print symbolic version of addresses as well as hex 1992-07-10 00:33:05 +00:00
Ken Raeburn
c5f5b482da Fixed some bugs in handling vxworks960 -- not reading registers right,
trying to use FP regs (not supported by target), botching IP.
1992-07-09 23:48:29 +00:00
Fred Fish
8050a57b2c * dwarfread.c (alloc_utype, decode_subscr_data): Call alloc_type
to create new blank types, instead of handcrafting them.
	* defs.h (printfi_filtered):  Add prototype.
	* utils.c (printfi_filtered):  New function.
	* gdbtypes.c (recursive_dump_type):  Use printfi_filtered to
	to simplify the code.  Other cleanups.
	* gdbtypes.c (check_stub_method):  Demangle using DMGL_ANSI.
	* gdbtypes.h (struct cplus_struct_type):  Add comments describing
	use of various fields.
	* gdbtypes.c (print_bit_vector, print_cplus_stuff):  New functions.
	* c-exp.y (%token):  Add CLASS as a token for C++, add grammar
	production that currently treats it exactly the same as STRUCT.
	* c-exp.y (yylex):  Recognize "class" as token CLASS.
	* symtab.c (gdb_mangle_name):  Rewrite to match current g++ stabs.
	* symtab.c (decode_line_1):  Fix to pass quoted args on down to
	general symbol handling code.  Call cplus_mangle_opname with
	DMGL_ANSI.
	* symtab.c (decode_line_2):  Print demangled function names in
	breakpoint menus, instead of just file and line number.
	* symtab.c (name_match):  Call cplus_demangle with DMGL_ANSI.
	* valprint.c (type_print_base):  Print "class" for C++ classes,
	rather than "struct".  Print section labels for public, protected
	and private members of C++ classes.
	* values.c:  Include demangle.h.
	* values.c (value_headof):  Call cplus_demangle with DMGL_ANSI.
1992-07-09 04:40:39 +00:00
Stu Grossman
e17e8e0e03 * Makefile.in (VERSION): Update to 4.5.8. 1992-07-09 00:24:24 +00:00
Stu Grossman
784fd92b3d * dbxread.c (dbx_symfile_init): Init stab_section_info to NULL to
prevent crashes when examining cross-targets.
* dbxread.c (process_one_symbol):  Include directory name when
calling start_subfile for SOL & BINCL symbols.  This allows gdb to
find include files, and yacc/lex sources when the cwd doesn't match
that in which the object was compiled.
* objfiles.h (ALL_MSYMBOLS):  Don't seg fault when there are no
msymbols.
* symtab.c (lookup_symtab_1):  Rewrite.  It now handles include
files.
1992-07-08 08:00:30 +00:00
Fred Fish
2e9309df58 * maint.c (maintenance_command, maintenance_info_command):
Install with allow_unknown as 0 and call help_list to show
	list of possibilities when no subcommand is specified.
1992-07-07 16:00:30 +00:00
Fred Fish
498f1df044 * configure.in: Add m68k-ericsson-*.
* remote-es1800.c, tm-es1800.h, config/es1800.mt:  New files.
1992-07-07 07:22:56 +00:00
Fred Fish
0239d9b328 * maint.c: New file.
* Makefile.in (SFILES_MAINDIR):  Add new file maint.c.
	* Makefile.in (OBS):  Add new file maint.o.
	* defs.h (command_class):  Add class_maintenance.
	* defs.h (MAINTENANCE_CMDS):  Default to including maintenance
	commands.  Allow for them (and other nonessential parts of gdb)
	to be selectively left out under special circumstances.
	* gdbtypes.c (recursive_dump_type):  New function; supports
	maintenance print-type command.
	* gdbtypes.h (recursive_dump_type, maintenance_print_type):
	Add prototypes.
	* main.c (maintenancelist, maintenanceinfolist):  Add maintenance
	command lists.
	* main.c (initialize_cmd_lists):  Eliminate unnecessary casts on
	initializers.  Add initializations for setprintlist, showprintlist,
	setchecklist, showchecklist, maintenancelist, and maintenanceinfolist.
	* printcmd.c (maintenance_print_type):  New maintenance cmd.
	* valprint.c (setprintlist, showprintlist):  Move to main.c, as
	implied by comment that all cmd lists are owned by main.c.
	* infcmd.c (unsetlist):  Move to main.c, as implied by comment
	that all cmd lists are owned by main.c.
	* language.c (setchecklist, showchecklist):  Move to main.c, as
	implied by comment that all cmd lists are owned by main.c
	* breakpoint.c (enablelist, enablebreaklist, disablelist, cmdlist,
	deletelist):  Remove redundant declarations (also in gdbcmd.h).
	* symmisc.c (printsyms_command):  Now maintenance_print_symbols.
	* symmisc.c (printmsyms_command):  Now maintenance_print_msymbols.
	* symmisc.c (printpsyms_command):  Now maintenance_print_psymbols.
	* symmisc.c (printobjfiles_command):  Now maintenance_print_objfiles.
	* symtab.h (maintenance_print_symbols, maintenance_print_psymbols,
	maintenance_print_msymbols, maintenance_print_objfiles):
	Add prototypes.
	* symmisc.c (printsyms_command, printpsyms_command,
	printmsyms_command, printobjfiles_command):  Removed from
	_initialize_symmisc.
	* main.c (dump_me_command):  Moved to maint.c and renamed to
	maintenance_dump_me.
	* breakpoint.c (all_breakpoints_info):  Rename to
	maintenance_info_breakpoints.
	* breakpoint.c (_initialize_breakpoint):  Convert add_info of
	all_breakpoints_info to add maintenance_info_breakpoints to the
	maintenanceinfolist instead.
	main.c (initialize_main):  Set up maintenance class commands.
1992-07-06 00:22:57 +00:00
Stu Grossman
6a701ae205 * energize-patches: Fix minor problems with building energize lib.
(Also all energize.h to .Sanitize).
1992-07-05 19:09:38 +00:00
Stu Grossman
2bfe2c53db * energize-patches: Change names of all cadillac procedure calls
to be energize procedure calls.  Simplify many hooks by moving
tests energize.c.  Configure energize, and build it automatically now.
1992-07-05 18:07:52 +00:00
Fred Fish
91fef76b2a * Makefile.in (VERSION): Bump to 4.5.7.
* cplus-dem.c (demangle_args):  Validate index for previously
	seen type to guard against bogus values from malformed manglings.
	* valops.c (value_struct_elt_for_reference):  Guard against
	blindly using NULL return value from lookup_symbol.
1992-07-05 17:21:13 +00:00
Stu Grossman
264ad0728b * cadillac.c, cadillac-patches: Rename to energize.c and
energize-patches.  Change all routines and variables named
'cadillac*' to 'energize*'.  Create new file called energize.h to
hold all interface declarations.

* deblib/connection/*:  Move all of this stuff into energize/, but
delete unneeded files.
1992-07-05 17:07:54 +00:00
John Gilmore
23053b80b1 SVR4 names don't have underscores, according to the ABI. 1992-07-05 11:29:16 +00:00
John Gilmore
ec8ceca3f3 * buildsym.c (finish_block): Fix thinko `inner block' complaints.
* dbxread.c (process_one_symbol):  Parse N_OPT "gcc2_compiled.".
* procfs.c (proc_set_exec_trap): Set run-on-last-close flag on
child processes, to avoid dead ones "hanging around" after GDB exits.
(attach): Always stop the process if it needs it.  Set RLC flag
when attaching running processes, so it will continue if we detach
it, quit, or are killed.
(detach):  Clear faults and set RLC flag to make process run
when we close it.
(open_proc_file):  New `mode' argument for O_RDONLY or O_RDWR.
Callers changed.
(info_proc):  Open process O_RDONLY, so we can see any process,
even those controlled by debuggers.
* tm-sun4sol2.h (SUN_FIXED_LBRAC_BUG):  They did (in Sol 2).
1992-07-05 10:26:53 +00:00
David D. Zuhn
37e2f5cb8d > * xm-rs6000.h: define MEM_FNS_DECLARED 1992-07-04 14:17:13 +00:00
John Gilmore
2670f34d21 Relocate symbols using an array of section_offsets, rather than a
single `addr' or `offset'.  This makes Solaris-2 support work, and
permits better VxWorks (and maybe xcoff) support later.  See ChangeLog.
1992-07-04 13:59:03 +00:00
Fred Fish
4ed3a9ea66 * breakpoint.c, buildsym.c, c-exp.y, coffread.c, command.c,
core.c, cplus-dem.c, dbxread.c, dwarfread.c, elfread.c, environ.c,
	eval.c, findvar.c, gdbtypes.c, hppabsd-tdep.c, hppahpux-tdep.c,
	i386-tdep.c, ieee-float.c, infcmd.c, inflow.c, infptrace.c,
	infrun.c, m2-exp.y, mipsread.c, objfiles.c, parse.c, procfs.c,
	putenv.c, remote-mm.c, remote-vx.c, solib.c, sparc-tdep.c,
	sparc-xdep.c, stack.c, symfile.c, symtab.c, symtab.h, target.c,
	tm-i386v.h, tm-sparc.h, utils.c, valarith.c, valops.c, valprint.c,
	values.c, xcoffread.c:
	Remove "(void)" casts from function calls where the return value
	is ignored, in accordance with GNU coding standards.
1992-07-04 03:22:08 +00:00
John Gilmore
4c7c6bab1f * dbxread.c (process_one_symbol): Ignore N_MAIN, N_ENDM for Solaris.
* partial-stab.h:  Ignore N_ENDM.
* elfread.c (elf_symtab_read):  Ignore symbols that don't have a
CODE or DATA section attachment.  This eliminates a lot of random
values from shared libraries, which screw up the ordinary symbols
in the address ranges they happen to overlap.
* buildsym.c (define_symbol):  Eliminate special tests
for function types; move into "function" cases in switch statement.
(define_symbol: 'f', 'F', 'P'):  Process all parameter types
in case they define new type numbers.  But ignore them (FIXME).
('k', 'B'):  Ignore const and volatile if we see them (FIXME).
(read_sun_builtin_type):  Add commentary.
1992-07-03 07:08:31 +00:00
John Gilmore
43a16f2688 Make cross compilation work better.
* tm-mips.h (GDB_TARGET_IS_MIPS):  Define for mips-xdep.c.
(READ_MIPS_FORMAT, COFF_FORMAT):  Remove, unused now.
* mips-xdep.c:  Remove most include files (unused, caused errs).
(fetch_core_registers):  Use right parameters in dummy fn.
1992-06-30 09:27:41 +00:00
John Gilmore
0f552c5fc6 * buildsym.c (scan_file_globals): Beware the null file.
Fix from Jim Williams.

* stack.c (return_command):  Evaluate expression *before* popping
off the stack frames!  Fix inspired by Jim Williams.
(up_silently_command, down_silently_command):  No sel frame is error.

* defs.h (memcpy, memset):  Conditionalize decls on
#ifndef MEM_FNS_DECLARED, since DECstation differs.
(alloca):  Break out the STDC and non-STDC alloca cases, to make
it work on old preprocessors as well as "picky ANSI" ones.
* xm-mips.h (memcpy, memset):  Declare, and set MEM_FNS_DECLARED.

* mips-tdep.c (heuristic_proc_start):  Zero arg produces zero.
* utils.c (fputs_demangled):  Rename SLOP since DECstation system
header files define it!
1992-06-30 08:53:28 +00:00
John Gilmore
c47793da96 Allow BREAKPOINT to be overridden by -D (for Adobe). 1992-06-30 01:34:18 +00:00
Fred Fish
51b57ded88 * dbxread.c, i386-pinsn.c, i386-tdep.c, regex.c, solib.c, symmisc.c,
symtab.h, tm-i386v4.h, valprint.c, values.c:  Lint.
	* breakpoint.c, c-exp.y, coffread.c, command.c, environ.c, eval.c,
	findvar.c, infcmd.c, infptrace.c, infrun.c, m2-exp.y, parse.c,
	putenv.c, solib.c, sparc-xdep.c, symtab.c, tm-i386v.h, tm-sparc.h,
	utils.c, valarith.c, valops.c, valprint.c, values.c:
	Replace bcopy() use with memcpy(), which is more standard and can
	take advantage of gcc's builtin functions for increased performance.
	* breakpoint.c, buildsym.c, coffread.c, dbxread.c, i386-tdep.c,
	ieee-float.c, infcmd.c, sparc-tdep.c, stack.c, symtab.c, symtab.h,
	target.c, values.c:
	Replace bzero() use with memset(), which is more standard and can
	take advantage of gcc's builtin functions for increased performance.
	* i386-tdep.c, main.c, valprint.c:
	Replace bcmp() use with memcmp(), which is more standard and can
	take advantage of gcc's builtin functions for increased performance.
1992-06-29 23:34:38 +00:00
Fred Fish
22fd4704bc * remote.c (remote_wait): Fix cast on signal() call.
* defs.h (alloca):  More diddling with alloca.  Have to ensure
	that it has a prototype, so that if alloca is defined as a macro
	that takes an arg, the definition is seen as a use of a macro
	that takes an arg, to satisfy picky ANSI preprocessors.
1992-06-28 20:31:11 +00:00
Fred Fish
74fb91be98 * sparc-pinsn.c: Use <string.h> rather than "string.h", for
consistency with all other gdb files.
	* cadillac.c:  Use <string.h> rather than <strings.h>.
	* cadillac.c (kernel_dispatch):  Convert rindex usage to strrchr.
	* Makefile.in (MAKE):  Remove definition for consistency with
	other Makefile.in files and to fix problem with recursive makes.
1992-06-27 19:16:47 +00:00
John Gilmore
3a1e7a62b5 Avoid PT_WDUSER because it crashes H-PUX. 1992-06-27 02:28:05 +00:00
Steve Chamberlain
b951b38d00 * source.c (print_source_lines): for DOS interoperability; don't
print CR (013) as ^M.
1992-06-26 18:12:17 +00:00
Stu Grossman
bf18ac8007 * dbxread.c (dbx_symfile_init): Move more code under hp9000s800
conditional.
* hppabsd-core.c:  Don't include "param.h", include <sys/param.h>
instead.
* remote.c (remote_wait):  Cast signal to void * to avoid warning
from busted HP compiler.
1992-06-25 23:02:57 +00:00
Stu Grossman
cf79373a10 * partial-stab.h (N_SO): Rearrange code a little so that all SO
stabs cause end_psymtab to be called.
1992-06-25 22:46:04 +00:00
Stu Grossman
50a11e4933 * buildsym.c (read_sun_builtin_type): Handle new FCS Sun CC
compiler feature of putting 'c' into basic type descriptors for
all forms of char.
1992-06-25 22:35:09 +00:00
Stu Grossman
99fd9e3ee6 * procfs.c (child_resume): Work around Solaris (on Sparc) lossage
where there is no place for nPC in prrun struct.
1992-06-25 22:22:40 +00:00
Fred Fish
50e0dc4198 * mipsread.c: Pass NULL name pointer to init_type, not 0.
* gdbtypes.c (init_type):  Use copy of typename on type_obstack.
	* dwarfread.c (enum_type):  Save enum names on type_obstack.
	* dwarfread.c (struct_type):  Save member name on type_obstack.
	* symtab.c (_initialize_symtab):  Fix misspelling.
	* regex.c (store_jump, insert_jump):  Return void.
1992-06-25 19:10:49 +00:00
John Gilmore
debd34438d * defs.h (PARAMS): Move to ../include/ansidecl.h.
(alloca):  Declare return type on SPARC, since Sun doesn't.
(*_BYTE_ORDER):  Improve comment:  *must* be defined.
1992-06-25 11:50:31 +00:00
John Gilmore
5140562f37 * tm-hppa.h: New file, architectural definition of HP PA.
* tm-hppabsd.h, tm-hppahpux.h:  Shrink to deltas from tm-hppa.h.

* am29k-pinsn.c, am29k-tdep.c, copying.awk, copying.c,
hppa-coredep.c, hppa-pinsn.c, hppabsd-core.c, hppabsd-tdep.c,
hppabsd-xdep.c, hppahpux-tdep.c, hppahpux-xdep.c, remote-udi.c,
ser-go32.c, xcoffsolib.c:  Remove <stdio.h> which is already in
"defs.h".

* hppa-coredep.c, hppa-pinsn.c, hppabsd-core.c, hppabsd-tdep.c,
hppabsd-xdep.c, hppahpux-tdep.c, hppahpux-xdep.c, xcoffsolib.c,
xcoffsolib.h, xm-go32.h, xm-hppabsd.h, xm-hppahpux.h:  Copyrights.
1992-06-25 11:15:47 +00:00
John Gilmore
4d38b5a85a * printcmd.c (output_command): Thinko.
(x_command):  Only set remembered size/format if cmd succeeds.
1992-06-25 10:58:53 +00:00
John Gilmore
fef9f55c2b * dbxread.c (read_ofile_symtab): Remove N_CATCH special case,
since it is no longer used and burns time for every symbol read.
(process_one_symbol):  Treat N_CATCH like default (complain).
1992-06-24 19:58:57 +00:00
Stu Grossman
369172bbb3 * partial-stab.h (case N_TEXT): Fix fencepost error when
detecting start of new symbol info after reading symtab for a
module with a zero length TEXT segment.
(Note that this fixes the BNR problem with printing vxWorksVersion.  That ought
to make Ken happy).
1992-06-24 07:31:55 +00:00
Fred Fish
b4cc55b533 * valprint.c (val_print_fields): Call fprint_symbol to get
automatic C++ demangling for mangled field names.
1992-06-24 06:24:51 +00:00
Fred Fish
f54e9fd84f * cadillac.c (kernel_dispatch): Make return type void.
* cadillac.c (iosig):  Signal handlers take one int arg.
1992-06-24 05:52:01 +00:00
Fred Fish
e676a15f0b * Makefile.in (VERSION): Bump to 4.5.6.
* coffread.c (coff_end_symtab):  Cast 2nd arg of complain() to
	correct type.
	* defs.h (NORETURN):  Define away for Lucid compiler.
	* remote.c (remote_timer, remote_interrupt):  Signal handlers
	take one int arg.
	* ser-termios.c (serial_write, serial_close):  Return whatever
	value the write/close call returns, rather than falling off end.
	* inferior.h (PTRACE_ARG3_TYPE):  Third arg to ptrace is int on
	more systems than it is "char *".  Define PTRACE_ARG3_TYPE to
	default to int.
	* infptrace.c, hppabsd-xdep.c, hppahpux-xdep.c, i386-xdep.c,
	inferior.h (call_ptrace):  Use PTRACE_ARG3_TYPE to declare type
	of third arg.
	* a68v-xdep.c, arm-xdep.c, convex-xdep.c, hp300ux-xdep.c, infrun.c,
	m88k-xdep.c, mach386-xdep.c, mips-xdep.c, os68k-xdep.c, pyr-tdep.c,
	pyr-xdep.c, rs6000-xdep.c, sparc-xdep.c, sun3-xdep.c, sun386-xdep.c,
	symm-xdep.c, ultra3-xdep.c:  Use PTRACE_ARG3_TYPE to cast ptrace
	argument 3.
	* sparc-xdep.c, a68v-xdep.c (fetch_inferior_registers,
	store_inferior_registers): Supply missing fourth argument to
	ptrace().
1992-06-24 04:49:48 +00:00
Fred Fish
0efe20a642 * command.c (add_abbrev_prefix_cmd): Fix misspelling in comment.
* dwarfread.c (enum_type):  Fix misspelling in comment.
	* valprint.c (val_print_fields, cplus_val_print):  Minor
	adjustment to printing of C++ class structures to more closely
	match format for printing C structures, with and without setting
	pretty print.
1992-06-23 03:33:47 +00:00
Per Bothner
e37a6e9c8a * infrun.c (wait_for_inferior): Don't test for SIGEMT
(which is not a Posix signal) if it isn't defined.
	* tm-linux.h, xm-linux.h, config/linux.m[ht], configure.in:
	New port to Linux (a free Unix clone for 386 machines).
1992-06-23 00:25:11 +00:00
John Gilmore
28df0c3e2d (find_source_lines): Handle large st_size fields. 1992-06-21 03:09:18 +00:00
John Gilmore
f70be3e45a COFF changes for dealing better with EPI 29K C compiler output.
* coffread.c (record_minimal_symbol):  Pass the minsym type to it.
Callers changed.
(coff_end_symtab):  Sort blocks if needed.  Complain if misordered.
(read_coff_symtab):  Move patch_opaque_types call from
coff_symfile_read.  Restrict it to symtabs from this objfile.
(process_coff_symbol: C_TPDEF):  Don't put ordinary foward
references on opaque type chain; just let coff_lookup_type handle 'em.
(decode_type):  Complain about tagndx values on
non-struct/union/enum types, which the EPI compiler tends to produce.

* symtab.c (list_symbols):  Make minimal symbol variable-finding work.

* tm-68k.h (FIX_CALL_DUMMY): Avoid alignment and byte order
dependency.

* elfread.c (elf_symfile_read):  Update bfd_elf_find_section
usage to match new prototype.  Include libbfd.h to get prototype.
1992-06-21 02:20:30 +00:00
Fred Fish
b4fde6fa65 * infcmd.c (jump_command): Use cleanups to avoid memory leaks.
* stack.c (return_command):  Use cleanups to avoid memory leaks.
1992-06-20 23:30:33 +00:00
John Gilmore
e95bfbf19c * remote-adapt.c, remote-eb.c, remote-mm.c: Lint. Fix
INT_REGNUM to INTE_REGNUM.
* tm-29k.h (SDB_REG_TO_REGNUM):  Add for EPI 29K C compiler.
1992-06-20 03:42:14 +00:00
Stu Grossman
7da1e27dd4 * configure.in, dbxread.c, hppa-coredep.c, hppa-pinsn.c,
hppabsd-core.c, hppabsd-tdep.c, hppabsd-xdep.c, hppahpux-tdep.c,
hppahpux-xdep.c, munch, partial-stab.h, tm-hppabsd.h,
tm-hppahpux.h, xm-hppabsd.h, xm-hppahpux.h:  HPPA merge.
1992-06-19 22:43:49 +00:00
Stu Grossman
9aa448333d * Makefile.in (c-exp.tab.c, m2-exp.tab.c): Filter out bogus extern
declarations of malloc/realloc/free that are inserted by some
versions of yacc.
* m2-exp.y:  Prevent conflicts with TRUE and FALSE tokens by
#undeffing them.
* xm-rs6000.h:  Declare malloc/realloc/free appropriately.  Yet
another decl of strdup (this really ought to come from libiberty.h!).
1992-06-19 22:39:44 +00:00
John Gilmore
8f86a4e465 * remote.c (getpkt): Error if input exceeds buffer size.
(_initialize_remote):  `set remotedebug' enables packet trace.

* dbxread.c (process_one_symbol:N_FUN):  GCC now produces relative
N_SLINE's, etc, just like Sun cc on Solaris2.

* am29k-tdep.c (read_register_stack, write_register_stack):
Change RSTACK_HIGH_ADDR to rstack_high_address, a user-settable
variable.  Add `set' and `show' commands for it.
* doc/gdb.texinfo:  Document it.

* eval.c:  Avoid residue-by-zero when evaluating without side effects.
(Bug and fix found by Pierre Willard.)

* sparc-tdep.c:  Clean up slightly for Solaris2.
1992-06-19 21:09:54 +00:00
Fred Fish
4341615d92 * valprint.c (type_print_1): Plug memory leak. Print all
C++ syms as demangled, not just functions.
 	* buildsym.c (read_range_type):  When we find a signed char
 	type, do a lookup of signed char, not plain char.  Plain char's
 	still get looked up as plain char's elsewhere.
1992-06-19 02:43:22 +00:00
Stu Grossman
7634ebc804 * xm-rs6000.h: Fix decls for malloc, realloc, and free. 1992-06-18 00:10:11 +00:00
Stu Grossman
826f73d0cf * xm-rs6000.h: Add decl for strdup(). 1992-06-17 23:56:30 +00:00
Stu Grossman
65c36045d3 * xm-rs6000.h: Remove #include of inferior.h. Fixes many
compilation errors.
1992-06-17 23:44:37 +00:00
Stu Grossman
423e96646b * breakpoint.c (enable_command, disable_command): Without args,
should only affect normal breakpoints and watchpoints.
1992-06-17 21:53:28 +00:00
Stu Grossman
427d778c2c * xcoffexec.c: Remove ' from comment.
* xm-sun3os4.h:  Define MALLOC_INCOMPATIBLE to avoid conflicts
with decls of malloc in c-exp.tab.c (as produced by yacc).
There's got to be a better way to do this...
1992-06-17 20:15:03 +00:00
Fred Fish
323227fefa * partial-stab.h: Convert single rindex use to strrchr.
* mipsread.c, dbxread.c:  Remove troublesome inclusion of non-
	standard <strings.h> file, now that the only single use of
	rindex in the gdb source files is gone.
1992-06-17 18:14:22 +00:00
Fred Fish
fa0bcaa3a5 * mipsread.c: Undo ill effects from including <strings.h>,
which #defines index to be strchr.  Unfortunately, index is
	a member of a symbol table structure that can't be changed.
	* mipsread.c:  tm-mips.h includes coff/symconst.h and coff/sym.h,
	remove redundant #include's.
1992-06-17 05:23:00 +00:00
Stu Grossman
b303297ad8 * mipsread.c: #include <strings.h> for rindex(). 1992-06-16 21:17:43 +00:00
Fred Fish
d1140eb5e3 * xcoffexec.c (map_vmap): Turn comment into a real C comment. 1992-06-16 16:03:54 +00:00
Stu Grossman
c72af08913 * dbxread.c (process_one_symbol), partial-stab.h: Ignore
extraneous SO stabs from busted C++ compilers.
1992-06-16 01:43:35 +00:00
Fred Fish
4c07f28d77 * Makefile.in (VERSION): Bump to 4.5.5.
* symtab.c (decode_line_1):  Until C++ support stabilizes, when
	C++ lookups fail, print possibly helpful hint about completion.
	* cplus-dem.c (demangle_signature):  Fix ARM style demangling
	for static data members.
	* dbxread.c (dbx_psymtab_to_symtab_1):  Fix prototype.
	* config/ncr3000.mh (INSTALL):  Don't use /usr/ucb/install,
	it's broken on ncr3000's.
1992-06-15 19:25:13 +00:00
Fred Fish
1c92ca6f3b * dwarfread.c (decode_modified_type): Change type of first arg.
Change 'modifier' to char from unsigned char.  Cast single use
that needs to be unsigned char.
* symtab.h (SYMBOL_BASEREG_VALID):  Explain disabling.
* utils.c (strdup_demangled):  Add function.
* defs.h (strdup_demangled):  Add prototype.
* stack.c (return_command):  Demangle C++ function names for query.
* infcmd.c (jump_command):  Demangle C++ function names for query.
* cplus-dem.c (consume_count):  New function and prototype.
* cplus-dem.c (demangle_class, gnu_special, demangle_func_type,
do_type):  Replace conversion code with consume_count().
* cplus-dem.c (gnu_special):  Fix demangled of static members.
* source.c (list_command):  Print demangled function names
when appropriate.  Fix supplied by Peter Schauer.
1992-06-15 14:26:57 +00:00
John Gilmore
d69bba12b8 * infcmd.c: Fix typo (reported by Rob Savoye).
* xm-sun4sol2.h (gregset_t):  Thinko in register set definition.
* symtab.h:  Disable SYMBOL_BASEREG_VALID until it works.
* dbxread.c (dbx_psymtab_to_symtab_1):  Renamed from
psymtab_to_symtab_1.  Use current psymtab's sym_offset and symbol_size,
rather than the one for the first file in the dependency chain.
1992-06-15 08:42:09 +00:00
John Gilmore
bcbf95597c * dbxread.c (end_psymtab): Only reset texthigh if it's not already
set.  Don't reset our own texthigh, or dependency-only pst's, in
scanning all the rest of the psymtabs.
(process_one_symbol):  Fix comments around N_OBJ, N_OPT, N_UNDF.

* buildsym.h (N_UNDF):  Improve comments.
(N_LSYM, etc):  Skip types without names (":T(0,3)=sfoob...").
1992-06-14 18:10:10 +00:00
Fred Fish
252f6c65f2 * symtab.h (struct symbol): Add aux_value union for preserving
an additional per-symbol value.
* symtab.h (SYMBOL_BASEREG, SYMBOL_BASEREG_VALID):  Add defines.
* frame.h (FRAME_GET_BASEREG_VALUE):  Provide default definition.
* findvar.c (read_var_value):  Use SYMBOL_BASEREG if valid.
* printcmd.c (address_info):  Use SYMBOL_BASEREG if valid.
* symmisc.c (print_symbol):  Use SYMBOL_BASEREG if valid.
1992-06-13 18:20:44 +00:00
Michael Tiemann
a6b46ad4de Make `clear_symtab_users_once' non-static so objfiles can be linked. 1992-06-13 16:20:04 +00:00
John Gilmore
346168a2c6 * elfread.c (record_minimal_symbol_and_info): Kludged to put
extra info in the minimal symbol.
(elf_symtab_read):  The extra info is the size of an ELF object,
which was kludged to us in the `udata' field of the BFD symbol.
Gag me with a crowbar...
(elf_symfile_read):  Keep track of both the absolute load address,
and the offset between load addr and symbols.  Handle STABS as
well as DWARF sections, passing the absolute load address to
elfstab_build_psymtabs.

* objfiles.c (free_objfile):  Eliminate storage leaks.  Contributed
by <Peter.Schauer@regent.e-technik.tu-muenchen.dbp.de>.
* symfile.c (symfile_bfd_open):  Comment where name is freed.
* symmisc.c (extend_psymbol_list):  Comment where list is freed.
1992-06-13 07:24:30 +00:00
John Gilmore
93297ea028 * buildsym.h: Add processing_acc_compilation flag.
* buildsym.c (read_sun_builtin_type, read_sun_floating_type):  New.
(define_symbol):  Skip arg types in function entries.  Resolve
overloaded 'P' which acc uses for prototypes of functions called
by this file.
(read_type: 'b', 'r'):  Handle Solaris2 builtin types.

* minsyms.c (prim_record_minimal_symbol_and_info):  Hack to
save size of ELF symbols.  FIXME.
* tm-sun4os5.h:  Rename to tm-sun4sol2.h.  Update defines for Sol2.
* xm-sun4os5.h:  Rename to xm-sun4sol2.h.  Hack more defines.

* config/sun4os5.m[ht]:  Rename to config/sun4sol2.m[ht]; new xm, tm.
1992-06-13 02:18:44 +00:00
John Gilmore
bf2e5f6b82 * configure.in: Solaris config is sparc-sun-solaris2.
* config/sun4os5.m[ht]:  Rename to config/sun4sol2.m[ht].
1992-06-13 01:56:41 +00:00
Fred Fish
6b53bf346d * expprint.c (print_subexp): Add missing ']'.
* defs.h (reg_names):  Fix declaration to match that in infcmd.c
	* stack.c (reg_names):  Delete redundant (and inconsistent) decl.
	* WHATS.NEW:  Point out improved C++ function name handling.
	* gdbtypes.c (lookup_fundamental_type):  For now, use the same
	type names for both implicitly and explicitly signed integral
	types.  See comment in the source code.
1992-06-12 20:51:42 +00:00
John Gilmore
28de880c48 Two `long long' fixes from Robert R. Henry (rrh@dino.tera.com):
* defs.h (longest_to_int):  Avoid void arm of ?: in error case.
* expprint.c (print_subexp):  Fix printing of register names.
1992-06-11 19:34:56 +00:00
John Gilmore
1304f099bc Small changes from Solaris port. The big stuff is not all working yet.
* inferior.h (register_valid):  Declare.
* remote-udi.c, rs6000-xdep.c, sparc-xdep.c, tm-rs6000.h:  Remove decl.
* objfiles.h (ALL_OBJFILE_{SYMTABS,PSYMTABS,MSYMBOLS}):  Add
macros for traversing the data structures in a single objfile.
* tm-m88k.h, tm-sparc.h (REGISTER_NAMES):  Remove extra semicolon.
* tm-i960.h (REGISTER_NAMES):  Cosmetic change.
* infcmd.c:  Lint.
1992-06-11 08:43:29 +00:00
Fred Fish
36ce1b6469 * c-exp.y, m2-exp.y: Move remapping defines for malloc and
realloc.  Add remapping defines for {yyss, yyssp, yyvs, yyvsp}.
	* config/{amix.mh, i386v4.mh, ncr3000.mh, stratus.mh,
	sun4os5.mh}:  Add definition for INSTALL using /usr/ucb/install.
1992-06-10 02:05:20 +00:00
Stu Grossman
55488e9ea6 * depend: rebuild to account for remote-st2000.c.
* remote-st2000.c:  Almost works now.
* tm-st2000.h:  Need to turn on HAVE_68881, else things won't compile.
1992-06-09 23:31:53 +00:00
Fred Fish
d630b6150e * c-exp.y (yylex): Recognize single-quoted strings that specify
tokens with embedded whitespace, such as C++ demangled names.
	* defs.h (demangle_and_match, strcmp_iw, skip_quoted):  Prototypes.
	* main.c (gdb_completer_quote_characters):  Add global variable.
	* main.c (symbol_completion_function):  Total rewrite for C++
	demangled name handling.
	* main.c (skip_quoted):  New function.
	* main.c (main):  Set rl_completer_quote_characters.
	* symmisc.c (dump_symtab):  Print source language for symtab.
	* symtab.c (expensive_mangler):  Add prototype and function.
	* symtab.c (completion_list_add_symbol):  Total rewrite for new
	C++ demangled name handling.
	* symtab.c (lookup_symbol): Check for demangled C++ symbol first,
	other changes for demangled C++ symbol handling.
	* symtab.c (lookup_demangled_block_symbol):  Use demangle_and_match.
	* symtab.c (lookup_demangled_partial_symbol):  Use demangle_and_match.
	* symtab.c (decode_line_1):  Recognize C++ demangled names on input.
	* symtab.c (completion_list_add_symbol):  Total rewrite for new
	C++ demangled name handling.
	* symtab.c (expensive_mangler):  New function.
	* utils.c (strcmp_iw, demangle_and_match):  New functions.
	* xcoffread.c (aixcoff_symfile_read):  Fix prototype.
1992-06-09 06:09:33 +00:00
John Gilmore
d9915ebc47 * Makefile.in: Roll VERSION to 4.5.4.
* Makefile.in, config/*.mh, config/*.mt:  Rename TM_CFLAGS
to MT_CFLAGS, XM_CFLAGS to MH_CFLAGS to match file names.
* config/sun4os5.mh:  Add MH_CFLAGS=-xs to save debug info.
1992-06-09 05:10:15 +00:00
Stu Grossman
88cc9a3621 * configure.in: Tandem debug monitor (st2000) support.
* remote-st2000.c, config/st2000.mt:  ditto.
1992-06-08 21:21:59 +00:00
John Gilmore
6f8db23aef * blockframe.c (inside_entry_file, inside_main_func,
inside_entry_func):  Return 0 if no symbols; avoid crashing.
1992-06-05 18:52:27 +00:00
John Gilmore
2795260c9e * xcoffread.c (read_xcoff_symtab): Set c_sclass from n_sclass
without masking, since it is signed and will later be compared
against signed quantities.  The right fix is probably to make
it all unsigned, but this is a small, safe fix for this release.
FIXME -- make the real change sometime soon.

(Imported from progressive.)
1992-06-04 05:23:08 +00:00
Michael Tiemann
fb44a8f557 Pass the correct number of parameters to `symbol_file_add'. 1992-06-01 23:19:09 +00:00
Michael Tiemann
a748555bbb Define MALLOC_INCOMPATIBLE so we can compile files which include <malloc.h> 1992-06-01 23:17:21 +00:00
Michael Tiemann
48079d66da Fix lint found by GCC. 1992-05-30 05:19:54 +00:00
John Gilmore
cb61478811 Lint 1992-05-27 16:29:03 +00:00
John Gilmore
6ad6ef422c 88K changes inspired by Ted Lemon (uunet!lupine!mellon)
* tm-m88k.h, tm-umax.h:  Avoid sizeof() in REGISTER_xxx macros,
since they define the target, not the host.
* m88k-pinsn.c:  Fix typo.

Patches by Paul Eggert <eggert@twinsun.com>.
* valarith.c (value_zerop):  -0.0 is still zero.
* eval.c (evaluate_subexp):  Avoid NaN anomalies in float compares.
1992-05-20 06:03:50 +00:00
Fred Fish
6c316cfd66 * inflow.c (new_tty): Temporarily ignore SIGTTOU when
disconnecting from controlling terminal, to avoid gdb hanging
	on SVR4.  Fixes bug reported by Oliver Okrongli.
	* procfs.c (PROC_NAME_FMT):  Change format to match default used
	by system, as suggested by Oliver Okrongli.
	* tm-68k.h (FRAME_FIND_SAVED_REGS):  Apply missing parentheses
	bug fix from Brent Townshend (bst%tt@cam.ORG).
	* c-exp.y (nonempty_typelist):  Fix memory overrun bug reported
	by turlais@rechser.total.fr.
	* dwarfread.c (decode_subscr_data):  Fix bug in calculation of
	length of non-zero lowerbound arrays.  Bug fix from Peggy Fieland.
	* objfiles.h (unlink_objfile):  Add prototype.
	* objfiles.c (unlink_objfile):  Add function.
	* objfiles.c (free_objfile):  Call unlink_objfile.
	* objfiles.c (allocate_objfile):  Call unlink_objfile on newly
	remapped objfiles.  Bug reported by hahn@sunshine.labs.tek.com.
	Also, discard old possibly bogus sf struct.
	* symfile.c (symbol_file_add):  Call init_entry_point_info() and
	find_sym_fns() for remapped symbol files, in case of any changes
	since the last mapping.
1992-05-17 23:54:32 +00:00
Steve Chamberlain
ae0ea72ee2 Changes to support GDB running on DOS using GO32 and H8 support
* defs.h: if xm.h doesn't define FOPEN_RB, include "fopen-same.h",
	allowing hosts with different text and binary file formats to
	work.
	* coffread.c (read_coff_symtab): changed calling convention and
	operation - now it opens its own file with FOPEN_RB rather than
	duping and fdopening the provided handle.
	* dbxread.c, cplus-dem.c: #include mangling.
	* exec.c: If O_BINARY isn't defined, set it to 0, call openp for
	binary files oring in the right bit.
	* utils.c, terminal.h, inflow.c: hackery because dos doesn't have terminals.
	* remote-hms.c: cleanup to use the new remote serial stuff
	* serial.h, ser-termios.c, ser-go32.c: newfiles to provide host
	independent remote terminal I/O.
	* remote.c: if DONT_USE_REMOTE is defined, then don't use it.
	* source.c (openp): fix off by one problem removing / - can now
	open a source file in the root directory with DOS.
	* values.c (value_as_pointer): remove bogus address bits from
	long. (unpack_long): unpack into unsigned long/short if pointer.
1992-05-13 01:12:18 +00:00
Stu Grossman
bcf2e6ab49 * infrun.c (child_attach): Don't allow gdb to attach to itself.
It gets permanently stuck in many OSes.
* breakpoint.c, infcmd.c, infrun.c, utils.c:  Change many printfs
to printf_filtered.
* breakpoint.c: Improve	help text for info breakpoints.
1992-05-12 21:32:52 +00:00
Stu Grossman
84c8f62dc0 * infrun.c (child_attach): Don't allow gdb to attach to itself.
It gets permanently stuck in many OSes.
* breakpoint.c, infcmd.c, infrun.c:  Change many printfs to printf_filtered.
* breakpoint.c: Improve	help text for info breakpoints.
1992-05-12 21:27:03 +00:00
Stu Grossman
70d47e6605 * breakpoint.c, infcmd.c: Change many printfs to printf_filtered.
* breakpoint.c: Improve	help text for info breakpoints.
1992-05-12 21:20:34 +00:00
Stu Grossman
0defac0294 * breakpoint.c: Change many printfs to printf_filtered. Improve
help text for info breakpoints.
1992-05-12 21:17:19 +00:00
Fred Fish
7fd31a8480 * cplus-dem.c (demangle_signature): Recognize misplaced '_' to
avoid infinite loops while demangling bogus mangled names.
	* valprint.c (type_print_base):  Minor fix for GNU style guide
	conformance.
1992-05-11 20:32:03 +00:00
Fred Fish
f9b5584c8e * Makefile.in (VERSION): Bump to 4.5.3
* Makefile.in (DEMANGLE_OPTS):  Remove obsolete -Dnounderscore
	* Makefile.in (demangle):  New target to create standalone
	demangler with same code and options as internal demangler.
	* cplus-dem.c:  Massive restructuring, rewriting, cleanups, etc
	to support ARM style and Lucid style demangling, improve
	maintainability, fix several demangling bugs.  More changes
	to follow.
	* defs.h (strstr):  Add ANSI compatible prototype.
	* valprint.c (type_print_1):  Demangle using ansi option.
	* config/ncr3000.mt (DEMANGLE_OPTS):  Remove -Dnounderscore.
1992-05-10 01:43:04 +00:00
Stu Grossman
1e939db157 * xcoffexec.c (vmap_exec): Don't assume .text and .data are the
first two sections.
1992-05-09 21:49:28 +00:00
Per Bothner
d5e885834b * mipsread.c (parse_procedure): Return rather than using
uninitialized variable 'b'.
1992-05-08 18:43:50 +00:00
Stu Grossman
aa94235541 * Makefile.in, remote-udi.c, remote-vx.c, 29k-share/dfe/mini2udi.c,
29k-share/dfe/yank.c, vx-share/xdr_ptrace.c, vx-share/xdr_regs.c:
Remove -I29k-share, -Ivx-share from Makefile.in.  Make #includes
relative to each source file.
1992-05-08 15:49:48 +00:00
K. Richard Pixley
9b98dea2e7 propogate INSTALL, INSTALL_DATA, INSTALL_PROGRAM on recursions 1992-05-08 14:49:44 +00:00
Per Bothner
ba2c9027ca * tm-irix3.h: Re-define CPLUS_MARKER to '.'.
* xm-rs6000.h, tm-rs6000.h:  Move re-definition of CPLUS_MARKER
	from former to latter.
1992-05-06 21:37:51 +00:00
Fred Fish
55b3ef9a57 * cplus-dem.c (do_args): Handle void args the same as others.
* objfiles.c (free_objfile):  Only try to unmap files when
	reusable objfiles are supported.
	* valprint.c (type_print_varspec_suffix):  Add parameter that
	specifies if C++ demangling included function arguments.  Use
	it to suppress printing extra pair of ()'s.
	* valprint.c (type_print_1):  Fix problem with printing demangled
	C++ function types where demangled type includes the function
	args.
1992-05-06 21:16:11 +00:00
Fred Fish
8f793aa541 * Makefile.in (DEMANGLER): Define and default to cplus-dem.
Allows selection of C++ demangler to be a configuration option
	until multiple demanglers are supported.
	* demangle.h:  New include file for extended demangler support.
	* breakpoint.c, gdbtypes.c, printcmd.c, stack.c, symtab.c,
	utils.c, valprint.c:  Include "demangle.h" and change all calls
	to cplus_demangle() or fputs_demangled() to use individual
	demangling options.
	* valprint.c (type_print_1):  Change options to cplus_demangle
	to print demangled function args.  Still broken, but now less so.
	* cplus-dem.c:  Include demangle.h, reorganize and update some
	comments to reflect reality.
	* cplus-dem.c (cplus_demangle, cplus_mangle_opname):  Change
	second arg from fixed integer to bit based multiple options.
	* cplus-dem.c (optable):  Reformat and replace ansi members with
	bit based options.
	* cplus-dem.c (do_type):  Fix bug with parsing missing return type.
1992-05-05 18:16:23 +00:00
John Gilmore
6fab5bef69 * values.c (set_internalvar): Force evaluation of lazy values.
Bug reported by RMS.
1992-05-05 05:31:21 +00:00
Fred Fish
4db8e515c4 * Makefile.in (VERSION): Bump to 4.5.2.
* Makefile.in (DEMANGLE_OPTS):  Add, default to -Dnounderscore.
	* configure.in:  Simplify ncr3000 gdb_host logic, add gdb_target.
	* dwarfread.c (struct_type):  Apply fix from Peggy Fieland for
	proper handling of bit fields.
	* gdbtypes.h (struct type):  Clarify use of field.bitpos.
	* symtab.h:  Fix couple of misspellings in comments.
	* value.h (struct value):  Clarify use of bitpos.
	* value.h (unpack_field_as_long):  Change prototype, returns
	LONGEST.
	* values.c (unpack_field_as_long):  Change return type to LONGEST,
	sign extend unpacked fields that are signed, other rewriting.
	* config/ncr3000.mt:  New target config file.
1992-05-03 23:05:07 +00:00
John Gilmore
7e7e2d40c1 One more try... 1992-05-01 09:53:13 +00:00
John Gilmore
fcdb113e57 * utils.c (printchar): Print 0x7F and 0x80-0x9F in \nnn notation
even when printing 8-bit characters.
1992-05-01 09:39:30 +00:00
John Gilmore
ea1549b346 * gdbtypes.c (make_{reference,pointer,function}_type): New
functions which handle overwriting of forward-referenced types
for stabs file reading.
(lookup_{reference,pointer,function}_type):  These just call
the make_*_type functions with a null storage alloc parameter.
* gdbtypes.h (make_{reference,pointer,function}_type):  Declare.
* xcoffread.c (smash_to_pointer_type):  Remove, no longer used.

* buildsym.c (dbx_lookup_type):  Zero result for (-1,-1) arg.
(dbx_alloc_type):  Make it easier to understand.  No funct change.
(define_symbol: 't'):  Don't put the typedef name into the name of
the struct, union, or enum.  Bugfix.
(read_type: '*', '&', 'f'):  Add comments.  Use make_XXX_type
routines to properly handle overwriting preallocated types so that
forward references will work.
(read_enum_type):  Force enum values to file scope, due to bug in
Sun compiler output.  FIXME, fix later.

Remove unused header_file_prev_index mechanism.  It was already
obsolete in gdb-3.5.  These comments appeared in 3.5:
  /* This code was used before I knew about the instance codes.
     My first hypothesis is that it is not necessary now
     that instance codes are handled.  */
* dbxread.c (add_new_header_file):  Remove header_file_prev_index.
* buildsym.h:  Remove it and prev_index that saves it.
* buildsym.c (push_subfile, pop_subfile, start_symtab):  Remove it.

* solib.c (special_symbol_handling):  When called from core files,
must set up debug_addr.  Don't print error messages, just return.
* symmisc.c (print_symbol):  Less ascii diarrhea for enums, please.
1992-05-01 09:14:43 +00:00
Per Bothner
f536aa3956 Various fixes to cplus_demangle(); see ChangeLog. 1992-04-29 22:32:12 +00:00
Stu Grossman
9e91f617eb * Makefile.in (make-proto-gdb-1): 1st cut at packaging
29k-share/* subdirs...
1992-04-24 21:41:53 +00:00
Stu Grossman
54847287d9 * remote-udi.c (udi_insert/remove_breakpoint): Completely
rewrite, only leave out the bugs.
1992-04-24 21:39:01 +00:00
Stu Grossman
0857b46a9c * Makefile.in: Add 29k/UDI support. Improve depend.
* .Sanitize, alldeps.mak, configure.in, depend:  Add 29k/UDI support.
1992-04-24 15:01:45 +00:00
Stu Grossman
07df483123 * am29k-tdep.c: Update to use new calling conventions, and misc
symbol elements.
1992-04-24 14:52:26 +00:00
Stu Grossman
72b1aa3096 * m68k-pinsn.c (print_insn_arg): Make branch offsets be signed. 1992-04-24 14:45:53 +00:00
Stu Grossman
66a8a9b4d2 * tm-29k.h: Set DECR_PC_AFTER_BREAK to 0, as 29ks have nice
breakpoint instructions that leave PC pointing at the right place.
1992-04-24 06:32:59 +00:00
Fred Fish
c8094777b6 Call warning() to print warnings, which deals properly with leading and
trailing newlines, as well as presenting a consistent prefix for warnings
(IE "warning: ").
1992-04-24 01:45:47 +00:00
Stu Grossman
35a258406b * symtab.c (lookup_symbol): Need to check if msymbol->name is
NULL, as ALL_MSYMBOLS will never return a NULL msymbol pointer.
This prevents a crash when trying to lookup the value of a
non-existent symbol.
1992-04-22 17:01:22 +00:00
Fred Fish
4ace50a510 Remove now obsolete signame.c and signame.h; functionality is handled by
libiberty/strsignal.c.  Widespread changes to use libiberty/strerror.c
functions for errno manipulations and libiberty/strsignal.c for signo
(signals) manipulations.
1992-04-22 16:46:47 +00:00
K. Richard Pixley
6e6bf7f2ca Makefile.in: rework CFLAGS so that they can be set from the command
line to make.  CFLAGS -> INTERNAL_CFLAGS.  USER_CFLAGS -> CFLAGS.
Remove MINUS_G.  Default CFLAGS to -g.  Pass CFLAGS on recusions.
1992-04-21 19:43:05 +00:00
John Gilmore
b0c8c72688 * sun3-xdep.c (fetch_core_registers): Lint.
* tm-sun3.h:  Prototype lint.
* value.h:  Typo.
1992-04-17 06:58:05 +00:00