Sat Sep 19 04:23:54 1992 John Gilmore (gnu@cygnus.com) * Makefile.in: Fix bug I introduced in merging Rich's change. * infrun.c (child_create_inferior): Use proceed() rather than doing all the same stuff by hand. Thu Sep 17 17:35:37 1992 K. Richard Pixley (rich@sendai.cygnus.com) * Makefile.in, configure.in: add support for files used only when configured native, that is, when host = target. Wed Sep 16 23:03:23 1992 K. Richard Pixley (rich@sendai.cygnus.com) * tm-sparc.h, xm-sparc.h: externs and macros relating to deferred stores are target dependent and were moved from xm to tm. Sat Sep 19 03:14:37 1992 John Gilmore (gnu@cygnus.com) * Makefile.in (gdb-all.texi): Build in objdir, not $srcdir. * config/decstation.mh: Add MMALLOC_LIB and MMALLOC_DISABLE overrides, to avoid problem in xdr_bytes with malloc(0) => 0. Wed Sep 16 20:04:54 1992 K. Richard Pixley (rich@sendai.cygnus.com) * 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. Fri Sep 18 02:07:39 1992 John Gilmore (gnu@cygnus.com) * 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! 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. Thu Sep 17 03:49:59 1992 John Gilmore (gnu@cygnus.com) * copying.awk, copying.c (show_copying_command, show_warranty_command): Rename from copying_info, warranty_info, to match command function conventions. * 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. Wed Sep 16 21:57:14 1992 Stu Grossman (grossman at cygnus.com) * 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... Wed Sep 16 17:00:07 1992 John Gilmore (gnu@cygnus.com) * 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. Tue Sep 15 01:18:50 1992 John Gilmore (gnu@cygnus.com) 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. * 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. Mon Sep 14 19:20:43 1992 Stu Grossman (grossman at cygnus.com) * 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. * procfs.c (proc_wait): Call print_sys_errmsg() if we get an error from PIOCSWSTOP. * 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. * 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. Fri Sep 11 18:28:28 1992 Roland H. Pesch (pesch@fowanton.cygnus.com) * doc/gdb.texinfo, doc/gdbinv-m.m4.in, doc/gdbinv-s.m4.in: first pass at doc for two new remote targets---29K using UDI, and Tandem ST2000 using STDBUG. * doc/all.m4, doc/none.m4: new m4 switch, _ST2000__ * doc/all.m4: turn on H8/300 stuff for generic manual * doc/gdbinv-s.m4.in: remove text on special procedures to continue after explicit call to breakpoint() in serial stubs. Fri Sep 11 01:34:25 1992 John Gilmore (gnu@sphagnum.cygnus.com) * mipsread.c: Clean up some white space. (parse_symbol): Handle stEnd of stFile. (parse_partial_symbols): Remove old #if 0'd code. Handle stLocal. * mips-xdep.c (REGISTER_PTRACE_ADDR, fetch_inferior_registers, store_inferior_registers): Replace unexplained numbers with manifest constants from a DECstation header file. * xm-mips.h (KERNEL_U_ADDR): Get from . (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. Thu Sep 10 15:26:07 1992 Ken Raeburn (raeburn@cambridge.cygnus.com) * remote-vx.c: Rename realloc for inclusion of rpc/rpc.h, to avoid redeclaration bug on SunOS 4. Wed Sep 9 17:36:53 1992 John Gilmore (gnu@cygnus.com) * 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__. Wed Sep 9 16:50:22 1992 John Gilmore (gnu@cygnus.com) Removed a large number of changes inserted by Per Bothner for C++ support. These will go back in when they've been examined. Tue Sep 8 21:05:18 1992 Stu Grossman (grossman at cygnus.com) * 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. Tue Sep 8 17:24:52 1992 Ken Raeburn (raeburn@cambridge.cygnus.com) * remote-nindy.c (nindy_fetch_registers): Make return type void, to agree with target structure field type. (nindy_store_registers): Ditto. * Makefile (OPCODES): New var, pointing to opcodes library. (CLIBS, CDEPS): Include it. (saber_gdb): Load opcodes library. Tue Sep 8 15:22:06 1992 Stu Grossman (grossman at cygnus.com) * 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... Fri Sep 4 18:53:57 1992 Roland H. Pesch (pesch@fowanton.cygnus.com) * doc/gdb.texinfo: fix shameful error of agreement reported by jimb@occs.cs.oberlin.edu (Jim Blandy) * doc/gdb.texinfo: remove old partial discussion of remote serial protocol (via serial debug stubs) * doc/gdbinv-m.m4.in, doc/gdbinv-s.m4.in: new section discussing use of serial debug stubs Fri Sep 4 00:34:30 1992 Per Bothner (bothner@rtl.cygnus.com) * symfile.h: Declaration of set_demangling_style() moved here from demangle.h (which is now in ../include). * i386-xdep.c: Update comment. Thu Sep 3 13:44:46 1992 K. Richard Pixley (rich@sendai.cygnus.com) * symtab.c (completion_list_add_symbol): restructured to optimize for time. First clip names that cannot match. Then clip any names we've already considered. Drop a redundant strncpy. Drop a redundant malloc and associated free for demangled names. Thu Sep 3 09:17:05 1992 Stu Grossman (grossman at cygnus.com) * 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. Wed Sep 2 20:45:31 1992 Per Bothner (bothner@rtl.cygnus.com) * 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.) Wed Sep 2 13:45:27 1992 John Gilmore (gnu@cygnus.com) * config/rs6000.mh (MH_CFLAGS): Circumvent IBM bug, for files in vx-share/*.c. * xm-rs6000.h (fd_set): Circumvent the rs6000.mh circumvention, for normal GDB source files. * Makefile.in (VERSION): Roll to 4.6.6. * 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. Wed Sep 2 01:18:31 1992 John Gilmore (gnu@cygnus.com) * Makefile.in (VERSION): Roll to 4.6.5. * infrun.c: Lint for recent `handle' changes. * 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.*). Wed Sep 2 00:10:43 1992 John Gilmore (gnu@cygnus.com) * 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. * config/m68k-un.mt, config/m68k-noun.mt, config/sparc-un.mt, config/sparc-noun.mt: New target configs for embedded. * config/sun4os3.{mh,mt}: Remove, never existed in production. * 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. Tue Sep 1 17:31:45 1992 John Gilmore (gnu@cygnus.com) * breakpoint.c (breakpoint_re_set): Avoid setting source symtab (which involves reading in main's symtab) if we have no breakpoints. Mon Aug 31 13:47:45 1992 Fred Fish (fnf@cygnus.com) * 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. Sun Aug 30 21:32:17 1992 Ian Lance Taylor (ian@cygnus.com) * Makefile.in: map "gdb" through program_transform_name when installing. Sun Aug 30 21:18:51 1992 Fred Fish (fnf@cygnus.com) * {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. Sun Aug 30 18:15:17 1992 Per Bothner (bothner@rtl.cygnus.com) * 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. Fri Aug 28 13:13:33 1992 John Gilmore (gnu@cygnus.com) 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 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. * gdbtypes.h (TYPE_ALLOC): Parenthesize result to avoid problems for callers. * vx-share/README, nindy-share/README: New files describing how these directories' code is shared, and with whom. Thu Aug 27 20:04:56 1992 John Gilmore (gnu@cygnus.com) * 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/*. Wed Aug 26 21:10:52 1992 John Gilmore (gnu@cygnus.com) * configure.in (host configurations): Reformat nested cases into easy-to-maintain table. (m68k-altos-*, i386v*): We don't care whether coff encap is used. config/{altosgas.mh, i386v-g.mh, i386v32-g.mh}: Remove. Wed Aug 26 16:02:01 1992 Fred Fish (fnf@cygnus.com) * 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. Mon Aug 24 20:44:38 1992 Stu Grossman (grossman at cygnus.com) * configure.in: Add sparclite as a target. * sparc-stub.c (handle_exception): Flush instruction cache just before returning to the user. (hexToInt): Fix overzealous cleanup. Mon Aug 24 11:57:13 1992 Fred Fish (fnf@cygnus.com) * 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. Sun Aug 23 17:10:07 1992 Fred Fish (fnf@cygnus.com) * 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. Sun Aug 23 11:04:08 1992 Fred Fish (fnf@cygnus.com) * 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. Sat Aug 22 22:33:20 1992 John Gilmore (gnu@cygnus.com) Bug fixes from Andrew Heybey . * tm-mips.h (REGISTER_VIRTUAL_TYPE): Float regs are float type. * mips-tdep.c (mips_print_register): Alloc enough space for two regs. Fri Aug 21 15:17:03 1992 Stu Grossman (grossman at cygnus.com) * 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. Wed Aug 19 10:23:27 1992 Ian Lance Taylor (ian@cygnus.com) * m68k-pinsn.c: handle new operand type 'r', introduced for cas2. * remote-vx.c: redefine malloc to avoid buggy declaration on RS/6000 . xm-rs6000.h: include to define fd_set for on RS/6000. 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. Mon Aug 17 18:29:58 1992 Per Bothner (bothner@rtl.cygnus.com) * m68k-pinsn.c: Minor fix in style of output (don't use range to indicate floating point control registers). Sat Aug 15 02:58:03 1992 John Gilmore (gnu@cygnus.com) * m68k-pinsn.c: Surround extended support with #ifdef HAVE_68881. * infcmd.c (registers_info): Handle multiple register names. Changes inspired by Roland McGrath. Sat Aug 15 02:28:52 1992 Stu Grossman (grossman at cygnus.com) * 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. Fri Aug 14 12:11:25 1992 Fred Fish (fnf@cygnus.com) * 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. Thu Aug 13 11:54:46 1992 John Gilmore (gnu at cygnus.com) * 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, . Wed Aug 12 11:14:58 1992 Fred Fish (fnf@cygnus.com) * 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. Tue Aug 11 02:49:39 1992 John Gilmore (gnu at cygnus.com) * 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). Mon Aug 10 22:27:19 1992 Fred Fish (fnf@cygnus.com) * 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. Sat Aug 8 23:12:22 1992 Fred Fish (fnf@cygnus.com) * 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. Fri Aug 7 11:18:23 1992 Steve Chamberlain (sac@thepub.cygnus.com) * 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. Thu Aug 6 10:56:01 1992 Fred Fish (fnf@cygnus.com) * 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. * 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. Wed Aug 5 01:42:40 1992 John Gilmore (gnu at cygnus.com) * remote-udi.c: Update comments. * remote.c (getpkt): Only force retransmission ten times; after that, assume bug in target code, and handle pkt anyway. Mon Aug 3 17:06:20 1992 Stu Grossman (grossman at cygnus.com) * configure.in: Add support for apollo 68k under BSD environment. * xm-apollo68b.h: New file to support above. Mon Aug 3 00:25:56 1992 Fred Fish (fnf@cygnus.com) * 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. Sat Aug 1 13:32:58 1992 Fred Fish (fnf@cygnus.com) * 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. Mon Jul 27 21:14:44 1992 Fred Fish (fnf@cygnus.com) * Makefile.in (VERSION): Bump to 4.6.2. * Makefile.in (SFILES_MAINDIR): Add stabsread.c * Makefile.in (OBS): Add stabsread.o * Makefile.in (stabsread.o): Add build rule. * stabsread.c, stabsread.h: New files. * buildsym.c: Split out stabs specific support to stabsread.c. * buildsym.h: Split out stabs specific support to stabsread.h. * dbxread.c (stabsread.h): Include * dbxread.c (dbx_new_init): Call stabsread_new_init. * dbxread.c (dbx_psymtab_to_symtab_1): Call stabsread_init. * dbxread.c (read_ofile_symtab): Call end_stabs. * dbxread.c (process_one_symbol): Call end_stabs and start_stabs. * dbxread.c (elfstab_build_psymtabs): Call stabsread_new_init. * dwarfread.c (psymtab_to_symtab_1): Call buildsym_init, add really_free_pendings to cleanups. * elfread.c (elf_new_init): Call stabsread_new_init. * gdbtypes.c: Small changes to maintenance commands. * mipsread.c (stabsread.h): Include. * mipsread.c (psymtab_to_symtab_1): Call end_stabs. * xcoffread.c (stabsread.h): Include. * xcoffread.c (global_stabs): Remove redundant def. * xcoffread.c (read_xcoff_symtab): Call start_stabs and end_stabs. Wed Jul 22 21:39:33 1992 Fred Fish (fnf@cygnus.com) * 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. Wed Jul 22 04:23:03 1992 D. V. Henkel-Wallace (gumby@cygnus.com) * es1800.c: use FREAD|FWRITE rather than _FREAD|_FWRITE. include on USG. (from sef). * depend: es1800 dependency needed here. Mon Jul 20 21:09:53 1992 Fred Fish (fnf@cygnus.com) * 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. Mon Jul 20 11:25:18 1992 D. V. Henkel-Wallace (gumby@cygnus.com) * configure.in: es1800 ok for 68000 too. Sat Jul 18 15:48:58 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com) * configure.in: echo error messages to stderr, not stdout Fri Jul 17 17:07:24 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com) * configure.in: recognize hppa* instead of hppa Fri Jul 17 16:52:04 1992 Stu Grossman (grossman at cygnus.com) * energize.c: Second cut at DynamicLoad message handling. * energize.c: Relativize pathnames in #include statements. * (kernel_dispatch): Better error messages for unknown protocol messages. * (kernel_dispatch): First cut at DynamicLoad message handling. * Makefile.in: Remove -I../readline from all compilations, include a special case for main.o instead. Fri Jul 17 10:14:56 1992 Fred Fish (fnf@cygnus.com) * 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. * 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). Thu Jul 16 13:37:09 1992 Stu Grossman (grossman at cygnus.com) * breakpoint.c (commands_command): Simplify code a bit, remove unnecessary fflush(). * Makefile.in (OTHERS): Add gcc.patch. * partial-stab.h (N_SO): Fix handling of redundant SOs (again...) Thu Jul 16 12:07:40 1992 Fred Fish (fnf@cygnus.com) * dwarfread.c (LCC_PRODUCER): Change to match current NCR lcc producer string. Thu Jul 16 11:40:55 1992 Stu Grossman (grossman at cygnus.com) * WHATS.NEW renamed to NEWS. Wed Jul 15 11:37:31 1992 Fred Fish (fnf@cygnus.com) * 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. Tue Jul 14 23:05:14 1992 Fred Fish (fnf@cygnus.com) * Makefile.in (VERSION): Bump to 4.6.1 (post-release versions). Tue Jul 14 19:26:54 1992 Stu Grossman (grossman at cygnus.com) * Makefile.in, demangle.c: Change default demangling style to gnu. * Makefile.in: Update version to 4.6 !!! * README, WHATS.NEW: Update for 4.6. Tue Jul 14 16:59:46 1992 Ken Raeburn (raeburn@cygnus.com) * i960-tdep.c (frame_args_address): If arg pointer can't be found, use frame address. * buildsym.c (read_struct_type): Don't die on TYPE_CODE_UNDEF nodes as base classes. Tue Jul 14 00:12:30 1992 Stu Grossman (grossman at cygnus.com) * alldeps.mak, depend: Update. * xcoffread.c: Add decl for section_offset to keep prototype happy. * Makefile.in (VERSION): 4.5.9. * 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. Mon Jul 13 19:06:54 1992 Fred Fish (fnf@cygnus.com) * 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. Sat Jul 11 18:23:58 1992 John Gilmore (gnu at cygnus.com) * config/sun4sol2.mh: Remove -xs flag, default INSTALL to cp. Fri Jul 10 13:58:34 1992 Per Bothner (bothner@rtl.cygnus.com) * 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. Fri Jul 10 10:19:52 1992 Fred Fish (fnf@cygnus.com) * 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. Thu Jul 9 19:05:27 1992 Per Bothner (bothner@rtl.cygnus.com) * gdbtypes.c (lookup_struct_elt_type): If the input type is TYPE_CODE_PTR or TYPE_CODE_REF, dereference it to get the target type. Otherwise, 'whatis this.field' wouldn't work, which would be inconsistent, since 'print this.field' works. * buildsym.c (read_struct_type, read_enum_type): Clear TYPE_FLAG_STUB flag. * buildsym.c (cleanup_undefined_types): Don't rely on a flawed "Reasonable test to see if" a type has been defined since it was referred to; now we can just see if the TYPE_FLAG_STUB flag has been cleared. * valprint.c (print_type_base): Emit public/protected/private labels for methods as well as fields. Also, indent these labels 2 spaces instead of 4, for a more conventional "look". * symtab.c (gdb_mangle_name): Undo Fred's change, unless GCC_MANGLE_BUG is defined. Also, handle destructors specially. * gcc.patch: New file. Contains patch for gcc (so people with gdb-2.2.x won't have to wait for a new gcc release). Thu Jul 9 18:44:26 1992 Ken Raeburn (raeburn@cygnus.com) * i960-pinsn.c (mem): Variables reg[123] should point to CONST. (print_addr): Call print_address to show symbolic version as well. * remote-vx.c (vx_kill): Don't look for arguments; they aren't being passed. (vx_read_register): Declare inferior_fp_regs. Delete code for copying "inferior_registers" around; the values are already in var "registers". Use correct size for register set. * remote-vx.c (vx_write_register): Don't try writing FP regs; the target doesn't support it. (vx_read_register): Don't try reading them either. * tm-i960.h (IP_REGNUM): Move to end of non-FP list, since the VxWorks back end reads them in one contiguous set except for this one. (register_names): Change "pc" to "pcw" to avoid confusion printing "$pc". * tm-vx960.h (PC_REGNUM): Use RIP_REGNUM, since that's where we find the PC under VxWorks. Wed Jul 8 21:34:30 1992 Fred Fish (fnf@cygnus.com) * 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. Wed Jul 8 17:23:07 1992 Stu Grossman (grossman at cygnus.com) * Makefile.in (VERSION): Update to 4.5.8. Wed Jul 8 00:11:02 1992 Stu Grossman (grossman at cygnus.com) * 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. Tue Jul 7 09:00:42 1992 Fred Fish (fnf@cygnus.com) * 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. Tue Jul 7 00:20:29 1992 Fred Fish (fnf@cygnus.com) * configure.in: Add m68k-ericsson-*. * remote-es1800.c, tm-es1800.h, config/es1800.mt: New files. Sun Jul 5 17:17:16 1992 Fred Fish (fnf@cygnus.com) * 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. Sun Jul 5 11:03:53 1992 Stu Grossman (grossman at cygnus.com) * energize-patches: Fix minor problems with building energize lib. * 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. Sun Jul 5 09:43:28 1992 Fred Fish (fnf@cygnus.com) * 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. Sun Jul 5 09:46:43 1992 Stu Grossman (grossman at cygnus.com) * 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. Sun Jul 5 03:06:39 1992 John Gilmore (gnu at cygnus.com) * tm-sysv4.h (NAMES_HAVE_UNDERSCORE): SVR4 systems don't. * 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). Sat Jul 4 03:43:38 1992 John Gilmore (gnu at cygnus.com) 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. * symtab.h (struct section_offsets): New structure for keeping a set of offsets, rather than a single one. (struct objfile): Replace addr with section_offsets member. * symfile.h: Add sym_offsets to struct sym_fns. Conforming changes. * gdb-stabs.h: New include file with `symbol type specific' parameters for psymtabs and objfiles. * Makefile.in (HFILES): Add gdb-stabs.h. * buildsym.h (start_psymtab, process_one_symbol): Fix prototypes. * coffread.c: Conforming changes. Fake offset array always 0. * dbxread.c: Conforming changes. (struct dbx_symfile_info): Move to gdb-stabs.h. (start_psymtab): Call elfstab_offset_sections to calculate good offsets for this source file, based on the ELF symbol table info. (read_ofile_symtab): Yank N_CATCH, which is dead. (process_one_symbol, N_CATCH): Yank. (", N_FUN, N_FNAME, N_FN, N_FN_SEQ, N_SO, N_SOL, N_ENTRY): Relocate with SECT_OFF_TEXT. (", N_STSYM, N_LCSYM, N_ROSYM): Grope around in the stab string to distinguish relocatable from absolute symbols. Then, if not absolute, do: (", N_STSYM, N_DSLINE): SECT_OFF_DATA. (", N_LCSYM, N_BSLINE): SECT_OFF_BSS. (", N_ROSYM): SECT_OFF_RODATA. (elfstab_build_psymtabs): Caller has allocated dbx_symfile_info. (dbx_symfile_offsets): Add to translate addr to offset. * dwarfread.c: Conforming changes. Single offset currently used. * elfread.c: Add various complaints about elf/stab stuff. #include gdb-stabs.h. Conforming changes, using a single offset. (elf_symtab_read): Record info from BSF_FILE symbols, and local variables called "Bbss.bss", "Ddata.data", and "Drodata.rodata", for later use in building psymtabs. (elf_symfile_read): Allocate dbx_symfile_info here, to keep the info collected in elf_symtab_read. Cleanup calls free_elfinfo. (free_elfinfo): New fn, frees all chained stab_section_infos in an objfile, and zaps the start-of-chain pointer. (elfstab_offset_sections): New fn, looks in stab_section_info chain to determine section bases to relocate a psymtab's worth of symbols, as they are being read. * mipsread.c: Conforming changes. Stabs-reading will relocate using one offset. MIPS-reading will not relocate at all. * partial-stab.h: Relocate different symbol types using different offsets from section_offsets. * symfile.c: Conforming changes. (find_lowest_section): Unused function to use later to free us from the Tyranny of the Text Section. (syms_from_objfile): Translate absolute arg ADDR to offsets used in all lower layers of symbol reading. Call format-specific sym_offsets function to initialize offsets for high speed symbol reading. (symbol_file_add): Call reinit_frame_cache so callers don't have to. (symbol_file_command, add_symbol_file_command): Callers changed. * symmisc.c (dump_psymtab): Print new relocation parameters. * xcoffread.c: Corresponding changes. * buildsym.c: Tidy innerblock_complaint and blockvector_complaint. * main.c (main): Read the $HOME/.gdbinit file before processing the argv arguments (e.g. reading symbol files or core files). This allows global parameters to be set, which will apply during the symbol reading. The ./.gdbinit is still read after argv processing. * symtab.c (list_symbols): `i variables' shouldn't show enum values. * xcoffexec.c: Clean up quote inside comment. Fri Jul 3 20:18:26 1992 Fred Fish (fnf@cygnus.com) * 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. Fri Jul 3 00:00:49 1992 John Gilmore (gnu at cygnus.com) * 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. Wed Jul 1 00:47:02 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com) * xm-rs6000.h: define MEM_FNS_DECLARED Tue Jun 30 02:25:10 1992 John Gilmore (gnu at cygnus.com) * 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. Mon Jun 29 18:30:57 1992 John Gilmore (gnu at cygnus.com) * 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! * tm-29k.h (BREAKPOINT): Allow it to be overridden with -D. Mon Jun 29 16:30:25 1992 Fred Fish (fnf@cygnus.com) * 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. Sun Jun 28 13:30:22 1992 Fred Fish (fnf@cygnus.com) * 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. Sat Jun 27 12:12:20 1992 Fred Fish (fnf@cygnus.com) * sparc-pinsn.c: Use rather than "string.h", for consistency with all other gdb files. * cadillac.c: Use rather than . * 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. Fri Jun 26 19:03:23 1992 John Gilmore (gnu at cygnus.com) * hppahpux-xdep.c (child_xfer_memory): Avoid PT_WDUSER because it crashes H-PUX. Fri Jun 26 11:09:10 1992 Steve Chamberlain (sac@thepub.cygnus.com) * source.c (print_source_lines): for DOS interoperability; don't print CR (013) as ^M. Thu Jun 25 15:18:42 1992 Stu Grossman (grossman at cygnus.com) * dbxread.c (dbx_symfile_init): Move more code under hp9000s800 conditional. * hppabsd-core.c: Don't include "param.h", include instead. * remote.c (remote_wait): Cast signal to void * to avoid warning from busted HP compiler. * partial-stab.h (N_SO): Rearrange code a little so that all SO stabs cause end_psymtab to be called. * 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. * procfs.c (child_resume): Work around Solaris (on Sparc) lossage where there is no place for nPC in prrun struct. Thu Jun 25 12:06:00 1992 Fred Fish (fnf@cygnus.com) * 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. Thu Jun 25 04:00:10 1992 John Gilmore (gnu at cygnus.com) * 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. * 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 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. Wed Jun 24 12:53:20 1992 John Gilmore (gnu at cygnus.com) * printcmd.c (output_command): Thinko. (x_command): Only set remembered size/format if cmd succeeds. * 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). Wed Jun 24 00:26:56 1992 Stu Grossman (grossman at cygnus.com) * 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. Tue Jun 23 21:46:26 1992 Fred Fish (fnf@cygnus.com) * 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(). * cadillac.c (kernel_dispatch): Make return type void. * cadillac.c (iosig): Signal handlers take one int arg. * valprint.c (val_print_fields): Call fprint_symbol to get automatic C++ demangling for mangled field names. Mon Jun 22 20:18:06 1992 Fred Fish (fnf@cygnus.com) * 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. Mon Jun 22 17:19:02 1992 Per Bothner (bothner@cygnus.com) * 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). Sat Jun 20 19:19:52 1992 John Gilmore (gnu at cygnus.com) 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. * source.c (find_source_lines): Handle large st_size fields. Sat Jun 20 16:28:39 1992 Fred Fish (fnf@cygnus.com) * infcmd.c (jump_command): Use cleanups to avoid memory leaks. * stack.c (return_command): Use cleanups to avoid memory leaks. Fri Jun 19 19:06:41 1992 John Gilmore (gnu at cygnus.com) * 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. Fri Jun 19 15:30:15 1992 Stu Grossman (grossman at cygnus.com) * 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. * 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!). Fri Jun 19 10:28:05 1992 John Gilmore (gnu at cygnus.com) * 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. Thu Jun 18 19:35:22 1992 Fred Fish (fnf@cygnus.com) * 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. Thu Jun 18 18:59:04 1992 John Gilmore (gnu at cygnus.com) * eval.c: Avoid residue-by-zero when evaluating without side effects. (Bug and fix found by Pierre Willard.) Wed Jun 17 13:08:33 1992 Stu Grossman (grossman at cygnus.com) * xm-rs6000.h: Fix decls for malloc, realloc, and free. * xm-rs6000.h: Add decl for strdup(). * tm-rs6000.h: Remove #include of inferior.h. Fixes many compilation errors. * breakpoint.c (enable_command, disable_command): Without args, should only affect normal breakpoints and watchpoints. * m68k-pinsn.c (print_insn_arg): Make register be const. * 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... Wed Jun 17 11:10:40 1992 Fred Fish (fnf@cygnus.com) * partial-stab.h: Convert single rindex use to strrchr. * mipsread.c, dbxread.c: Remove troublesome inclusion of non- standard file, now that the only single use of rindex in the gdb source files is gone. Tue Jun 16 22:17:49 1992 Fred Fish (fnf@cygnus.com) * mipsread.c: Undo ill effects from including , 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. Tue Jun 16 14:15:51 1992 Stu Grossman (grossman at cygnus.com) * mipsread.c: #include for rindex(). Tue Jun 16 09:01:49 1992 Fred Fish (fnf@cygnus.com) * xcoffexec.c (map_vmap): Turn comment into a real C comment. Mon Jun 15 18:41:23 1992 Stu Grossman (grossman at cygnus.com) * dbxread.c (process_one_symbol), partial-stab.h: Ignore extraneous SO stabs from busted C++ compilers. Mon Jun 15 12:21:45 1992 Fred Fish (fnf@cygnus.com) * 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. Mon Jun 15 07:21:00 1992 Fred Fish (fnf@cygnus.com) * 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. Mon Jun 15 01:45:48 1992 John Gilmore (gnu at cygnus.com) * sparc-tdep.c: Clean up slightly for Solaris2. * buildsym.c (define_symbol): Nameless types are now on several platforms; generalize them and un-ifdef them to make Solaris 2 work. Sun Jun 14 10:55:51 1992 John Gilmore (gnu at cygnus.com) * 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. * 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..."). Sat Jun 13 11:16:45 1992 Fred Fish (fnf at cygnus.com) * 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. Sat Jun 13 09:18:46 1992 Michael Tiemann (tiemann@rtl.cygnus.com) * symfile.c (clear_symtab_users_once): Now non-static (for objfiles.c). Fri Jun 12 18:54:40 1992 John Gilmore (gnu at cygnus.com) * arm-pinsn.c, i960-pinsn.c, m68k-pinsn.c, mips-pinsn.c, ns32k-pinsn.c, pyr-pinsn.c, sparc-pinsn.c, tahoe-pinsn.c, vax-pinsn.c: Remove reg_names decl (now in defs.h). Solaris-2 support on SPARC: * dbxread.c: Add symbol_size to struct dbx_symfile_info. Add symbol_size and file offsets to struct symloc. Add static symbol_table_offset, string_table_offset, file_string_table_offset, next_file_string_table_offset, last_function_name. (add_old_header_file): Convert error() to complain()t. (dbx_symfile_read): Get symbol size via the objfile. Also get symbol_table_offset. (dbx_symfile_init): Record symbol size and count via the objfile. (dbx_next_symbol_text): Always add file_string_table_offset when accessing string table. (read_dbx_symtab): Initialize file_string_table_offset to 0. (SET_NAMESTRING): Use the offset. (end_psymtab): Large kludge to determine addresses where source files start and end (for the psymtab header). (psymtab_to_symtab_1): Set file_string_table_offset before reading. Get this, symbol size, and symbol offset, from psymtab. (read_ofile_symtab): Don't back up one symbol for Solaris2. Patch up last_source_start_addr if zero in N_SO. (process_one_symbol): Add variable function_start_offset. ( "", N_FUN, N_LBRAC, N_RBRAC, N_SLINE): Add ifdef for BLOCK_ADDRESS_FUNCTION_RELATIVE. ( "", N_OBJ, N_OPT): Ignore. (elfstab_build_psymtabs): New function to read stabs out of an ELF file. * Makefile.in: Accept $(BISON) even though we really want $(YACC). (gdb): use GLOBAL_CFLAGS when linking, too. * partial-stab.h (N_UNDF): Deal with Sol2 relative stringtab offsets. (N_OBJ, N_OPT): Ignore. ('f', 'F'): Save last function name. * 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. * symfile.h: Prototype elfstab_build_psymtabs. * symfile.c: Add almost-OK debug versions of add_psymbol_*to_list. * xm-sysv4.h: Add to avoid conflicting defns in defs.h. * 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. * configure.in: Solaris config is sparc-sun-solaris2. * config/sun4os5.m[ht]: Rename to config/sun4sol2.m[ht]; new xm, tm. * objfiles.c (free_objfile): Eliminate storage leaks. Contributed by . * symfile.c (symfile_bfd_open): Comment where name is freed. * symmisc.c (extend_psymbol_list): Comment where list is freed. Fri Jun 12 08:24:36 1992 Fred Fish (fnf at cygnus.com) * 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. Thu Jun 11 12:31:50 1992 John Gilmore (gnu at cygnus.com) 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. Thu Jun 11 01:33:40 1992 John Gilmore (gnu at cygnus.com) * 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. Tue Jun 9 17:19:45 1992 Fred Fish (fnf at cygnus.com) * 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. Tue Jun 9 16:29:19 1992 Stu Grossman (grossman at cygnus.com) * 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. Mon Jun 8 23:05:51 1992 Fred Fish (fnf@cygnus.com) * 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. Mon Jun 8 21:59:08 1992 John Gilmore (gnu at cygnus.com) * 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. Mon Jun 8 14:17:42 1992 Stu Grossman (grossman at cygnus.com) * alldeps.mak: Rebuild to account for new files. * config/st2000.mt: Use tm-st2000.h, not tm-68k.h. * tm-st2000.h: New file. * configure.in: Tandem debug monitor (st2000) support. * remote-st2000.c, config/st2000.mt: ditto. Fri Jun 5 11:51:01 1992 John Gilmore (gnu at cygnus.com) * blockframe.c (inside_entry_file, inside_main_func, inside_entry_func): Return 0 if no symbols; avoid crashing. Wed Jun 3 17:48:04 1992 John Gilmore (gnu@cygnus.com) * 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. Mon Jun 1 16:16:12 1992 Michael Tiemann (tiemann@cygnus.com) * remote-vx.c (vx_load_command,add_symbol_stub): Default READNOW parameter in call to `symbol_file_add' to 0. * xm-sun4os4.h (MALLOC_INCOMPATIBLE): Define it. Sun May 31 06:38:27 1992 Michael Tiemann (tiemann@cygnus.com) * configure.in: Handle -m680[01234]0-wrs. Fri May 29 22:16:02 1992 Michael Tiemann (tiemann@rtl.cygnus.com) * m68k-pinsn.c (print_insn_arg): Pass &EXT_FORMAT_68881 to `ieee_extended_to_double'. Wed May 27 09:27:57 1992 John Gilmore (gnu at cygnus.com) * valops.c (value_assign): Lint, by Pierre Willard. Tue May 19 19:38:10 1992 John Gilmore (gnu at cygnus.com) * coredep.c (fetch_core_registers): Remove premature warning, which triggers on DECstation even though all regs are accessible. * m68k-pinsn.c (print_insn_arg): Use new macros to get sign-extension of instruction fields even on unsigned-char hosts. Bug found by Fred J Roeber, fjr@sgfb.ssd.ray.com. 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. Thu May 14 01:16:48 1992 John Gilmore (gnu at cygnus.com) * valarith.c (value_zerop): -0.0 is still zero. * eval.c (evaluate_subexp): Avoid NaN anomalies in float compares. Patches by Paul Eggert . Mon May 18 13:53:51 1992 Stu Grossman (grossman at cygnus.com) * alldeps.mak, depend: re-make to account for ser-*.c. Sun May 17 16:51:20 1992 Fred Fish (fnf@cygnus.com) * 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. Wed May 13 18:28:20 1992 Steve Chamberlain (sac@thepub.cygnus.com) * findvar.c (read_relative_register_raw_bytes): use the raw size of a register to bcopy, rather than the host's sizeof(CORE_ADDR). Tue May 12 17:44:39 1992 Steve Chamberlain (sac@thepub.cygnus.com) 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 not 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. Tue May 12 14:15:48 1992 Stu Grossman (grossman at cygnus.com) * 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. Mon May 11 14:17:18 1992 John Gilmore (gnu at cygnus.com) * README: Add pointer to internals doc, and describe reading info files. * utils.c (print_sys_errmsg): Use stderr. Reported by Pierre Willard. * symtab.c (output_source_filename): Remove old glop for wrapping lines, use wrap_here. Reported by Pierre Willard (pierre@la.tce.com). Thu May 7 11:45:03 1992 John Gilmore (gnu at cygnus.com) * Makefile.in: version.c should depend on Makefile, not Makefile.in. * munch: Add sort -u to avoid duplications. * symtab.c (lookup_symbol): Improve Stu's fix of 22 April. Improved fix by hahn@sunshine.labs.tek.com (Doug Hahn). Mon May 11 13:27:46 1992 Fred Fish (fnf@cygnus.com) * 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. Sat May 9 18:02:17 1992 Fred Fish (fnf at fishpond) * 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. Sat May 9 14:47:28 1992 Stu Grossman (grossman at cygnus.com) * xcoffexec.c (vmap_exec): Don't assume .text and .data are the first two sections. Fri May 8 11:42:15 1992 Per Bothner (bothner@rtl.cygnus.com) * mipsread.c (parse_procedure): Return rather than using uninitialized variable 'b'. Fri May 8 07:48:27 1992 Stu Grossman (grossman at cygnus.com) * 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. Fri May 8 07:48:27 1992 K. Richard Pixley (rich@cygnus.com) * Makefile.in: propogate INSTALL, INSTALL_DATA, INSTALL_PROGRAM on recursions. Thu May 7 10:00:52 1992 Stu Grossman (grossman at cygnus.com) * am29k-pinsn.c: Use new opcode table in "opcode/a29k.h". * am29k-tdep.c: Update to latest code from AMD. (get_saved_register) don't crap out if no frame. * remote-udi.c: Set/clear inferior_pid as appropriate. (udi_open) call target_preopen, don't close fd 0!!!, clean up error handling. Fixup end-of-debugging messages. (udi_fetch_registers) clean up big time, mainly don't multiply register_valid indices by 4, and use proper Offset when reading gr96-gr127. (udi_store_registers) general cleanup. (fetch_register) cleanup, simplify. (regnum_to_srnum) INT_REGNUM->INTE_REGNUM. * tm-29k.h: Upgrade to latest code from AMD. * 29k-share/udi/udip2soc.c: Get rid of useless errmsg_m macro. (UDIConnect) Clean up error processing (like, don't do exit() if execlp fails), make code restartable, make more attractive. (UDIStop) Use SIGINT instead of SIGUSR1, as isstip won't stop otherwise. Wed May 6 14:34:18 1992 Per Bothner (bothner@rtl.cygnus.com) * tm-irix3.h: Re-define CPLUS_MARKER to '.'. * xm-rs6000.h, tm-rs6000.h: Move re-definition of CPLUS_MARKER from former to latter. Wed May 6 14:12:35 1992 Fred Fish (fnf@cygnus.com) * 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. Tue May 5 11:10:27 1992 Fred Fish (fnf@cygnus.com) * 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. Mon May 4 22:26:59 1992 John Gilmore (gnu at cygnus.com) * values.c (set_internalvar): Force evaluation of lazy values. Bug reported by RMS. Sun May 3 15:47:45 1992 Fred Fish (fnf@cygnus.com) * 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. Fri May 1 01:53:26 1992 John Gilmore (gnu at cygnus.com) * utils.c (printchar): Print 0x7F and 0x80-0x9F in \nnn notation even when printing 8-bit characters. * 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. Wed Apr 29 15:26:51 1992 Per Bothner (bothner@rtl.cygnus.com) * cplus-dem.c: Allow nested class names (as in Foo::Bar::method()). Allow the cleaner cfront style of nested class names (Q2_3Foo3Bar as well as Q23Foo3Bar). Make cplus_demangle re-entrant by removing use of global variables. Instead, place all shared variables in a stack-allocated structure, and pass around its address. Fri Apr 24 07:41:19 1992 Stu Grossman (grossman at cygnus.com) * Makefile.in (make-proto-gdb-1): 1st cut at packaging 29k-share/* subdirs... * remote-udi.c (udi_insert/remove_breakpoint): Completely rewrite, only leave out the bugs. * Makefile.in: Add 29k/UDI support. Improve depend. * .Sanitize, alldeps.mak, configure.in, depend: Add 29k/UDI support. * am29k-tdep.c: Update to use new calling conventions, and misc symbol elements. * m68k-pinsn.c (print_insn_arg): Make branch offsets be signed. Thu Apr 23 18:43:17 1992 Fred Fish (fnf@cygnus.com) * tm-29k.h: Set DECR_PC_AFTER_BREAK to 0, as 29ks have nice breakpoint instructions that leave PC pointing at the right place. * core.c (core_open): Call warning() to print warnings. Wed Apr 22 09:55:42 1992 Stu Grossman (grossman at cygnus.com) * 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. Wed Apr 22 09:42:15 1992 Fred Fish (fnf@cygnus.com) * signame.c, signame.h: Remove, replaced by strsignal.c in libiberty. * i960-tdep.c, infrun.c, mach386-xdep.c, procfs.c, sparc-tdep.c, sun386-xdep.c: Remove include of signame.h * Makefile.in (SFILES_MAINDIR): Remove signame.c * Makefile.in (HFILES): Remove signame.h * Makefile.in (OBS): Remove signame.o * defs.h (safe_strerror, safe_strsignal, strerrno, strsigno, errno_max, signo_max, strtoerrno, strtosigno, strsignal, psignal, perror): Add prototypes. * defs.h, xm-apollo68v.h, xm-ultra3.h (SYS_SIGLIST_MISSING): Remove define. * depend: Manually remove signame.[cho] references. * convex-tdep.c (subsig_name): Replace use of sys_siglist with strsignal. * convex-xdep.c (core_file_command): Replace use of sys_siglist with safe_strsignal. * core.c (core_open): Replace use of sys_siglist with safe_strsignal. * core.c (memory_error): Replace use of sys_errlist with safe_strerror. * i960-tdep.c (print_fault): Replace use of sys_siglist with safe_strsignal. * infcmd.c (program_info): Replace use of sys_siglist with safe_strsignal. * infrun.c (signal_stop, signal_print, signal_program): Allocate dynamically based on dynamic determination of number of signals to support. * infrun.c (child_create_inferior): Replace use of sys_errlist with safe_strerror. * infrun.c (wait_for_inferior): Replace use of sys_siglist with safe_strsignal. * infrun.c (sig_print_info): Replace use of sig_abbrev with strsigno and sys_siglist with safe_strsignal. * infrun.c (handle_command): Call signo_max to find number of signals. Replace sig_number with strtosigno and sig_abbrev with strsigno. * infrun.c (signals_info): Replace sig_number with strtosigno. * infrun.c (_initialize_infrun): Call signo_max to find number of signals. Dynamically allocate signal_{stop,print,program}. * procfs.c (errno_table): Remove, now in libiberty/strerror.c. * procfs.c (errnoname): Add function and prototype. * procfs.c (info_proc_siginfo): Call errnoname, replace use of sys_siglist with safe_strsignal. * procfs.c (info_proc_stop, info_proc_signals): Replace use of sys_siglist with safe_strsignal. * procfs.c (info_proc_stop): Call errnoname. * procfs.c (signalname): Replace sig_abbrev with strsigno. * stuff.c (main, get_offset): Replace use of sys_errlist with strerror. * sun386-xdep.c (core_file_command): Replace use of sys_siglist with safe_strsignal. * umax-xdep.c (core_file_command): Replace use of sys_siglist with safe_strsignal. * utils.c (safe_strerror, safe_strsignal): Add functions that call strerror and strsignal respectively, and deal with NULL returns. * utils.c (perror_with_name, print_sys_errmsg): Replace use of sys_errlist with safe_strerror. * valprint.c (val_print): Replace use of sys_errlist with safe_strerror. Tue Apr 21 12:00:47 1992 K. Richard Pixley (rich@cygnus.com) * 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. Fri Apr 17 19:25:57 1992 Fred Fish (fnf@cygnus.com) * gdbtypes.h, c-exp.y, m2-exp.y, mipsread.c, gdbtypes.c: Back out of change on 4/14/92 and remove TYPE_FLAG_FUND_TYPE. It was overkill for the problem it solved. * valprint.c (type_print_base): Remove TYPE_FLAG_FUND_TYPE test and default to simply printing type names as appropriate. * main.c (main): Remove one of the leading newlines from warning_pre_print initialization. * objfiles.c (open_existing_mapped_file): Add function and prototype. * objfiles.c (open_mapped_file): Rewrite to use new function open_existing_mapped_file. Thu Apr 16 23:50:12 1992 John Gilmore (gnu at cygnus.com) * sun3-xdep.c (fetch_core_registers): Lint. * tm-sun3.h: Prototype lint. * value.h: Typo. Thu Apr 16 19:56:50 1992 Fred Fish (fnf@cygnus.com) * dwarfread.c (TARGET_FT_POINTER_SIZE, TARGET_FT_LONG_SIZE): Define using TARGET_PTR_BIT and TARGET_LONG_BIT for now. * objfiles.c: Cast calls to close() with unused returns to void. * objfiles.c (allocate_objfile): Initialize objfile's mmfd, free old objfile's name before updating it. * objfiles.c (free_objfile): Major rewrite for mapped objfiles. * objfiles.h (objfile struct): Add mmfd member. * symfile.c (syms_from_objfile): Move some code to new_symfile_objfile. * symfile.c (new_symfile_objfile): Add new function, common code from syms_from_objfile. * symfile.c (symbol_file_add): Call new_symfile_objfile for both mapped and unmapped symbol files. * symfile.c (symbol_file_command): Print "No symbol file now" message, ala exec_file_command for the exec file. * symfile.h (new_symfile_objfile): Add prototype. * xcoffexec.c (map_vmap): Add call to new_symfile_objfile. * xcoffsolib.c (solib_add): Add call to new_symfile_objfile. Thu Apr 16 18:26:34 1992 Per Bothner (bothner@cygnus.com) * rs6000-pinsn.c: New version from IBM (Metin). * m2-exp.y: Re-write string initializers ("<>" => {'<', '>'}) to avoid warnings from some compilers. Tue Apr 14 22:33:55 1992 Fred Fish (fnf@cygnus.com) * gdbtypes.h (FT_FIXED_DECIMAL, FT_FLOAT_DECIMAL): Add defines. * gdbtypes.h (TYPE_FLAG_FUND_TYPE): Add define for bit in a type's flag word that marks it as a fundamental type. * c-exp.y (_initialize_c_exp): Add TYPE_FLAG_FUND_TYPE bit to flags argument for all calls to init_type(). * m2-exp.y (_initialize_m2_exp): Add TYPE_FLAG_FUND_TYPE bit to flags argument for all calls to init_type(). Also remove dependency on host sizes for ints, floats, etc. * mipsread.c (_initialize_mipsread): Add TYPE_FLAG_FUND_TYPE bit to flags argument for all calls to init_type(). Also remove dependency on host sizes for ints, floats, etc. * gdbtypes.c (lookup_fundamental_type): Add TYPE_FLAG_FUND_TYPE bit to flags argument for all calls to init_type(). Add types FT_FIXED_DECIMAL and FT_FLOAT_DECIMAL. * valprint.c (unsigned_type_table, signed_type_table, float_type_table): Remove. * valprint.c (type_print_base): Test new TYPE_FLAG_FUND_TYPE bit when printing fundamental types, and print the actual name for such types, rather than inventing one. Remove code that invented fundamental type names. * valprint.c (_initialize_valprint): Remove initializations for now removed unsigned_type_table, signed_type_table, and float_type_table. Tue Apr 14 14:30:46 1992 Stu Grossman (grossman at cygnus.com) * remote-vx.c, vx-share/xdr_ptrace.c, vx-share/xdr_ptrace.h, vx-share/xdr_rdb.h: Update for new remote protocol under VxWorks 5.0.2. Mon Apr 13 20:59:21 1992 Fred Fish (fnf@cygnus.com) * dwarfread.c (target_to_host): New function similar to previous swapin function. * dwarfread.c (SWAPIN, swapin): Remove macro and support function. Extensive changes to convert all previous usages to use new target_to_host() function. * dwarfread.c (struct dieinfo): Change types of most integral members to be unsigned. Mon Apr 13 15:59:10 1992 John Gilmore (gnu at cygnus.com) * WHATS.NEW: Revise -mapped doc. Sat Apr 11 23:14:36 1992 John Gilmore (gnu at cygnus.com) * mipsread.c (parse_partial_symbols): Complain when sh->index is too high or when skipping `forwards' moves us backwards. (parse_type): Print mis-guessed tag name in complaint. (parse_external): Eliminate cur_stab and obscure top_stack clobbers. (parse_procedure): Do not attempt to create symbols; just fill in the SYMBOL_VALUE field of a .gdbinfo. symbol if we can find one. (psymtab_to_symtab_1): Split up `stabs' from `native ecoff' code for clarity. Set top_stack before calling parse_external. In stabs, sort symbols before calling parse_procedure. * mipsread.c: Lint. * symmisc.c (std_in, std_out, std_err): Add vars to access std FILE *'s when debugging GDB (e.g. as args to dump_symtab). * Makefile.in: Remove stage* targets. Avoid echo on recursive makes. Eliminate doc/Makefile from tar.Z file if doc/Makefile.in exists. Fri Apr 10 23:47:37 1992 John Gilmore (gnu at cygnus.com) * Makefile.in (VERSION): Set to 4.5.1. * xcoffread.c (NO_TYPEDEFS): Fix typo in commented-out #define. * sparc-tdep.c (supply_gregset, fill_gregset, supply_fpregset, fill_gregset): New functions for SVR4 /proc support. * mipsread.c: Cleanup. Add more complaints for unhandled cases. Remove new symbol types and such to ../include/coff/symconst.h. (parse_symbol): Simplify code for parsing struct/enum/unions. (parse_type): Handle `long long' types. (upgrade_type): Handle `const' qualifier. (parse_partial_symbols): fix indentation, clean a bit. Fri Apr 10 22:41:03 1992 Fred Fish (fnf@cygnus.com) * dwarfread.c (SWAPIN,swapin): New macro and function to call to copy in data from raw read buffers, calling bfd byteswapping routines as appropriate. Use to replace most existing memcpy calls. * dwarfread.c (basicdieinfo, completedieinfo): Add objfile arg. * configure.in: Recognize new ncr3000 config. * config/ncr3000.mh: New config file. Fri Apr 10 08:30:58 1992 Stu Grossman (grossman at cygnus.com) GDB-4.5 release! * README: Update for release. * Makefile.in: Update version to 4.5. * WHATS.NEW: The obvious. * depend: Generate new depend file for this release. * Makefile.in (depend): Fix dependancy generation so that it does not include gcc 'fixincluded' files, which are usually in a system specific location. Thu Apr 9 13:35:00 1992 Per Bothner (bothner@rtl.cygnus.com) Changes from metin@ibmpa.awdpa.ibm.com (Metin G. Ozisik). * buildsym.c (#ifdef RS6000_TARGET): Don't create unnecessary symbols for nameless types. And, handle `R' (register parameter type) for AIX. (an extension to existing stabstring grammar). * rs6000-xdep.c: Fix typo (= should have been ==). Thu Apr 9 12:10:06 1992 Stu Grossman (grossman at cygnus.com) * Makefile.in: version=4.4.88, add xm-vax.h to HFILES. Thu Apr 9 02:29:03 1992 John Gilmore (gnu at cygnus.com) * xm-sun4os5.h (DO_DEFERRED_STORES, CLEAR_DEFERRED_STORES): Zap. * signame.c (SIGWAITING, SIGLWP): Add. Tue Apr 7 16:34:07 1992 Per Bothner (bothner@cygnus.com) * xm-i386mach.h: add decls for errno and strdup(). * breakpoint.c (breakpoint_1): Add (int) casts for enums used in array index context (otherwise, some compilers barf). Tue Apr 7 08:45:46 1992 Stu Grossman (grossman at cygnus.com) * m68k-tdep.c, tm-sun3.h: #ifdef around get_longjmp_target(). Change def of SAVED_PC_AFTER_CALL to call routine to see if we are in a system call, and provide better backtrace if so. * Makefile.in (HFILES): Add xcoffsolib.h. * rs6k-opcode.h: Move to ../include/opcode/rs6k.h. * rs6000-pinsn.c: #include "opcode/rs6k.h" * mipsread.c (read_mips_symtab, read_the_mips_symtab, mipscoff_symfile_read): Convert to BFD to do file I/O. * symfile.c: #include to get proper def if isspace(). * i386-tdep.c (get_longjmp_target): #ifdef GET_LONGJMP_TARGET. Mon Apr 6 17:25:45 1992 Per Bothner (bothner@cygnus.com) * mipsread.c: Create a .gdbinfo pseudo-symbol for each function also when parsing embedded stabs. Mon Apr 6 15:25:03 1992 Stu Grossman (grossman at cygnus.com) * mipsread.c: Fix more declarations. * mipsread.c: Fix many invocations of complain. Use enum type_code where appropriate. * xm-vaxult.h: Add decl for strdup(). * Makefile.in: Add dependancies for xm-vaxbsd.h and xm-vaxult.h for xm-vax.h. Fri Apr 3 17:41:29 1992 Stu Grossman (grossman at cygnus.com) * buildsym.h, dbxread.c, mipsread.c: Add objfile arg to process_one_symbol. Fri Apr 3 12:17:14 1992 Per Bothner (bothner@cygnus.com) * munch: Must pre-pend "_" to "initialize" for SYSV style nm. * tm-rs6000.h, xcoffexec.c, xcoffread.c, xm-rs6000.h: Merge in more patches for rs6000 from Metin Ozisik. * utils.c: Fix typo in comment. Fri Apr 3 11:23:03 1992 Fred Fish (fnf@cygnus.com) * procfs.c (procinfo struct): Add nopass_next_sigstop member. * procfs.c (attach): Set nopass_next_sigstop if attached process is forcibly stopped. * procfs.c (child_resume): Use nopass_next_sigstop to suppress resending SIGSTOP to attached process on first resume. Fri Apr 3 01:37:26 1992 Stu Grossman (grossman at cygnus.com) * Makefile.in (SFILES_MAINDIR): add mipsread.c Thu Apr 2 20:20:54 1992 John Gilmore (gnu at cygnus.com) * Makefile.in (OBS): Compile mipsread.c for all targets now. (VERSION): Bump to 4.4.85. * mipsread.c: Update for new include files. Lint. * tm-irix3.h, tm-mips.h: Use new include files for ECOFF symtab. * config/{bigmips.mt, littlemips.mt, irix3.mt, decstation.mt}: Don't need to bring in mipsread.o specially any more. Thu Apr 2 19:38:31 1992 Stu Grossman (grossman at cygnus.com) * mipsread.c (fixup_sigtramp): Also look for _sigtramp as a real routine (for Irix-4.x). Make many funcs static and void. * mips-tdep.c (mips-frame-chain): Clean up, simplify. * (init_extra_frame_info): Don't trash cached value of frame pointer register. This fixes backtracing through routines that use alloca(). Generally clean up declarations of functions, and use typedefs and macros to reference data structures as appropriate. * tm-irix3.h, tm-mips.h (EXTRA_FRAME_INFO): use proper type for proc_desc element. Thu Apr 2 09:47:11 1992 Fred Fish (fnf@cygnus.com) * values.c (unpack_long): Fix unpacking error for signed chars on hosts where the default character type is unsigned. * procfs.c (pr_flag_table, pr_why_table): Add some entries for newer SVR4 variants. * procfs.c (proc_set_exec_trap): Reorder tests for ioctl's that turn off trace inherit-on-fork flag to favor latest SVR4 method. * procfs.c (mappingflags): Add support for MA_PHYS Thu Apr 2 00:55:56 1992 John Gilmore (gnu at cygnus.com) * buildsym.c (read_struct_type): Avoid coredump when C++ abbreviated type name is messed up. Reported by Joe Buck. FIXME, we need to determine whether GDB or GCC needs to be smarter to correctly locate this type name. * c-exp.y, coffread.c, command.c, command.h, copying.awk, dbxread.c, gdbtypes.c, infcmd.c, inferior.h, infrun.c, m2-exp.y, printcmd.c, remote.c, solib.c, source.c, stack.c, symtab.c, tm-sun4os4.h, tm-sun4os5.h, values.c: Lint. * symfile.c (add_symbol_file_command): Initialize mapped/readnow. Wed Apr 1 11:39:52 1992 Fred Fish (fnf@cygnus.com) * breakpoint.h (bpdisp, bptype): Remove trailing comma. * symtab.h (current_source_symtab): Make extern * symtab.h (current_source_line): Make extern * inferior.h: Move all procfs.c prototypes to one place, add prototype for proc_signal_handling_change. Add prototypes for signal_stop_state, signal_print_state, and signal_pass_state. * inferior.h (stop_soon_quietly): Make extern * inferior.h (attach_flag): Make extern * infrun.c (NOTICE_SIGNAL_HANDLING_CHANGE): Default is null. * infrun.c (signal_stop_state, signal_print_state, signal_pass_state): New functions to query specific signal handling flags. * infrun.c (handle_command): Minor error message change, add NOTICE_SIGNAL_HANDLING_CHANGE. * procfs.c (open_proc_file): Remove iris specific reset of inherit-on-fork flag, moved to proc_set_exec_trap(). * procfs.c (proc_set_exec_trap): Add SVR4 and iris code to reset inherit-on-fork flag, bash comment to GNU form. * procfs.c (proc_base_address, set_proc_siginfo, fetch_core_registers): Conform to code style. * procfs.c (signame.h): Include. * procfs.c (MAX_SYSCALLS, syscall_table[], init_syscalltable(), syscallname(), info_proc_syscalls()): New macros, tables, and functions to organize and report system call information. * procfs.c (saved_fltset, saved_trace, saved_sighold, saved_exitset, saved_entryset): Add to procinfo struct. * procfs.c (struct trans): Add. * procfs.c (pr_flag_table, pr_why_table, faults_table, siginfo_table, errno_table): Tables to translate numeric values to symbolic names and short descriptions. * procfs.c (signalname, info_proc_signals): Add function and prototype. * procfs.c (proc_info): Now info_proc. * procfs.c (proc_info_address_map): Now info_proc_mappings. * procfs.c (info_proc_flags, info_proc_stop, info_proc_siginfo, info_proc_faults, lookupname, lookupdesc, sigcodename, sigcodedesc): New functions. * procfs.c (proc_signal_handling_change): New function to set the trace flags based on the state of gdb's signal handling flags. * procfs.c (inferior_proc_init): Call proc_signal_handling_change and remove code to do PIOCSTRACE ioctl. * procfs.c (attach, detach): Preserve and restore process flags using saved_* fields in procinfo struct. * procfs.c (attach): Call proc_signal_handling_change. * procfs.c (info_proc): Major rework to expand "info proc" cmd. * procfs.c (proc_desc): Update for latest changes. * xm-irix4.h (CREATE_INFERIOR_HOOK): Protect by USE_PROC_FS. * xm-irix4.h (NOTICE_SIGNAL_HANDLING_CHANGE): Add definition. * xm-sysv4.h (NOTICE_SIGNAL_HANDLING_CHANGE): Add definition. Tue Mar 31 18:38:28 1992 Fred Fish (fnf@cygnus.com) * procfs.c (set_proc_siginfo): Add prototype and new function. * procfs.c (detach, child_resume): Call set_proc_siginfo to set up inferior siginfo struct. * elfread.c (elf_symfile_read): Compute the relocation amount by subtracting off the address of the ".text" section. * solib.c: Add pointer to ".text" section to so_list struct. * solib.c (solib_map_sections): Initialize pointer to ".text" section in so_list struct. * solib.c (symbol_add_stub): Pass base address of ".text" section to symbol_file_add, rather than the load address of the shared library. On SunOS they are the same. On SVR4 they are not. Tue Mar 31 17:48:15 1992 Stu Grossman (grossman at cygnus.com) * mipsread.c (parse_procedure): PDR.isym should get pointer to function name, not .gdbinfo. symbol. Tue Mar 31 17:05:04 1992 John Gilmore (gnu at cygnus.com) * breakpoint.c (breakpoint_1): Fix prototype, this time for sure! Tue Mar 31 11:01:06 1992 Stu Grossman (grossman at cygnus.com) * Makefile.in (VERSION): 4.4.8 * procfs.c (open_proc_file): Disable inherit-on-fork flag so that commands in .cshrc/.profile won't get traced. Tue Mar 31 08:11:58 1992 John Gilmore (gnu at cygnus.com) * elfread.c (elf_symtab_read): Use xmalloc, not bfd_xmalloc. * exec.c (build_section_table): Don't abort if no sections. * sparc-tdep.c (single_step): Lint. * utils.c (mrealloc): Handle realloc (0, size) case here. Mon Mar 30 16:50:43 1992 Stu Grossman (grossman at cygnus.com) * Makefile.in (alldeps.mak): Config files are now *.m[ht] as opposed to m[ht]-*! * config/irix4.mh: Don't use coredep.o. It doesn't work with procfs. * mipsread.c (parse_symbol, parse_procedure): Re-do the way that .gdbinfo. symbols are created. Move creation from parse_procedure to parse_symbol, where it is fairly easy to grow the symtab. This also fixes a symtab trashing bug on all mips-based systems. * (got_numargs, lookup_numargs, free_numargs): Delete. Not needed anymore. * tm-mips.h, tm-iris3.h, mips-tdep.c, mipsread.c: Re-do struct mips_extra_func_info, and all the PROC_xxx macros that look at it. Mon Mar 30 14:17:53 1992 Per Bothner (bothner@cygnus.com) * c-exp.y: Add missing return type to yyparse() prototype. Sat Mar 28 22:22:06 1992 John Gilmore (gnu at cygnus.com) Create and use macros for iterating on symtabs, psymtabs, msymbols. * minsyms.c (iterate_over_msymbols): Remove; clunky and slow. * symfile.h, symtab.h (iterate_over_msymbols): Remove prototype * coffread.c (coff_symfile_read): iterate_over_symtabs => ALL_SYMTABS. (patch_opaque_types): Avoid dummy args and result. * objfiles.c (have_partial_symbols, have_full_symbols, have_minimal_symbols): explicit iteration => ALL_OBJFILES; simplify. (iterate_over_objfiles, iterate_over_symtabs, iterate_over_psymtabs): Remove, clunky and slow. * objfiles.h: Replace iterate_over_* prototypes with ALL_SYMTABS, ALL_PSYMTABS, and ALL_MSYMBOLS macros. * symmisc.c (dump_symtab, dump_psymtab, dump_msymbols, dump_objfile): Remove dummy args and results. Move filename comparisons to callers. (printsyms_command, printpsyms_command, printmsyms_command, printobjfiles_command): iterate_over_* => ALL_*. Compare filenames. * symtab.c (lookup_symtab_1, lookup_symtab, lookup_partial_symtab, lookup_symbol, find_main_psymtab, find_pc_symtab, sources_info, list_symbols, make_symbol_completion_list): Replace explicit iteration with ALL_SYMTABS, ALL_PSYMTABS, or ALL_MSYMBOLS. Eliminate Dijkstra flag crap, break out of loops with gotos. (lookup_symtab_1): Protect '/' tests from short filenames. (cplus_mangled_symbol): Move inline into lookup_symbol. * xcoffexec.c (relocate_objfile_msymbols): Remove poor hack. (relocate_minimal_symbol): Move inline to vmap_symtab. (vmap_symtab): Replace iteration with ALL_OBJFILES, iterate_over_msymbols with ALL_MSYMBOLS. Misc cleanup prior to release. * Makefile.in (VERSION): Roll to 4.4.7. (HFILES): Add call-cmds.h. * call-cmds.h: New header for command fns called by other files. * breakpoint.c (watchpoints_info): Remove, same as breakpoints_info. (breakpoint_1): Remove unused type arg. Change callers. * dwarfread.c (dwarf_build_psymtabs): Remove mainline test. * mipsread.c (compare_symtabs, compare_psymtabs): Remove, unused. * mipsread.c: Add prototypes for all static functions. * symmisc.c (dump_symtab_lines, dump_symtabs, dump_last_symtab, dump_blockvector, dump_block, dump_addrchass, dump_namespace, dump_symbol, dump_type, dump_linetable, dump_strtbl): Remove, unused. * xcoffread.c (dump_symtab_lines, dump_symtabs, dump_last_symtab, dump_blockvector, dump_block, dump_addrchass, dump_namespace, dump_symbol, dump_type, dump_linetable, dump_strtbl): Remove 2nd unused copy! * buildsym.c (define_symbol): Handle global register variables (from Pierre Willard). Complain if register numbers are too large. * target.c (nomemory): Now that higher levels examine errno, give EIO. * tm-sparc.h: Don't #include . * sparc-tdep.c (sparc_frame_chain, frame_saved_pc): Remove dependency on . Start to handle cross-byte-order. * language.h: Avoid forward enum declaration. * configure.in, tm-sun4os5.h, xm-sun4os5.h, config/sun4os5.mh, config/sun4os5.mt: New host and target. * defs.h (errno): #include rather than assuming int. From Pierre Willard. * breakpoint.c, breakpoint.h, buildsym.c, coffread.c, cplus-dem.c, dbxread.c, dwarfread.c, elfread.c, infcmd.c, infrun.c, inftarg.c, language.c, main.c, mem-break.c, mips-tdep.c, mipsread.c, partial-stab.h, remote.c, saber.suppress, symfile.c, symtab.c, valops.c, valprint.c, xcoffread.c, c-exp.y, m2-exp.y, blockframe.c, command.c, core.c, exec.c, gdbtypes.h, parse.c, printcmd.c, solib.c, sparc-xdep.c, utils.c, value.h, values.c: Lint. Sat Mar 28 02:43:26 1992 John Gilmore (gnu at cygnus.com) * buildsym.c (read_range_type): Avoid int overflow by using unsigned. * dbxread.c (dbx_symfile_init): Remove bogus `lvalue cast'. * language.h (enum exp_opcode): Avoid forward enum def. * main.c (define_command, user_defined_command): Lint. * mem-break.c, xcoffread.c: Lint. * solib.c: Only #include on SunOS, not SVR4. Sun Mar 29 14:16:22 1992 Per Bothner (bothner@cygnus.com) * Merged in latest RS6000 diffs from Metin G. Ozisik. * xcoffsolib.c, xcoffsolib.h: New files, from Metin. * Various files: Changed #ifdef IBM6000 to IBM6000_HOST or IBM6000_TARGET as (approximately) appropriate. Sat Mar 28 13:00:10 1992 Fred Fish (fnf@cygnus.com) * objfiles.h (OBJF_SYMS): Define flag bit for objfile flags. * symfile.c (symbol_file_add): Use OBJF_SYMS to decide whether or not to try reading symbols from a mapped objfile. Plugs memory leak due to shared libraries generating no psymtabs or symtabs. Fri Mar 27 15:44:55 1992 John Gilmore (gnu at cygnus.com) * buildsym.c (MAX_OF_C_TYPE, MIN_OF_C_TYPE): Unused, remove. * copying.awk: Lint. Make stronger warning at top of copying.c. * elfread.c (elf_symtab_read): Eliminate check of mainline. * gdbtypes.c (smash_to_*): Remove FIXME comments. (lookup_pointer_type): Add FIXME comment. * main.c (set_history_size_command): Disallow negative size. * partial-stab.h: Update copyright. * rs6000-tdep.c (skip_trampoline_code): Better comments. Wed Mar 25 10:45:38 1992 John Gilmore (gnu at cygnus.com) * main.c (set_history_size_command): Negative size is error. (Reported by Peggy Fieland.) Thu Mar 26 17:01:18 1992 Fred Fish (fnf@cygnus.com) * coffread.c (coff_symfile_init): Update comment. * dbxread.c (DBX_SYMFILE_INFO, DBX_TEXT_SECT, DBX_SYMCOUNT, DBX_STRINGTAB, DBX_STRINGTAB_SIZE, DBX_SYMTAB_OFFSET): Define macros to access the dbx specific objfile information. * dbxread.c (symfile_string_table, symfile_string_table_size): Remove these local variables. * dbxread.c (read_ofile_symtab, psymtab_to_symtab_1, read_dbx_symtab): Remove the stringtab and stringtab_size params from the function prototypes, the function definition, and the function calls. These are now available via DBX_STRINGTAB and DBX_STRINGTAB_SIZE using the objfile pointer. * dbxread.c (dbx_symfile_read): Relocate addr before using as an arg to read_dbx_symtab. * dbxread.c (dbx_symfile_read): Remove code that free'd the stringtab and the dbx specific per-objfile private info. * dbxread.c (init_psymbol_list): Remove symbol count from passed args in prototype, function definition, and function calls. It is now available via the DBX_SYMCOUNT macro using the objfile pointer. * dbxread.c (dbx_symfile_read, dbx_symfile_init): Remove the local instance of struct dbx_symfile_info and replace with DBX_* macros. * dbxread.c (dbx_symfile_read): Remove init's of now deleted symfile_string_table and symfile_string_table_size. * dbxread.c (dbx_symfile_finish): Remove now obsolete free of symfile_string_table. * dbxread.c (init_psymbol_list): Use DBX_SYMCOUNT. * dbxread.c (dbx_psymtab_to_symtab): Remove local stringtab and stringtab size variables. Remove all code that used to reread the stringtab. * objfiles.c (allocate_objfile): Move calls to init_malloc() to prior to any calls to mmalloc for the objfile specific heap. * utils.c (init_malloc): Document the requirement that for each heap for which corruption checking is desired, that init_mmalloc must be called prior to any mmalloc calls on the heap. Thu Mar 26 13:20:06 1992 Per Bothner (bothner@cygnus.com) * rs6000-pinsn.c: Make dis-assembly output more like other targets: Don't print instruction in hex before the assembly; use print_address to print out jump destinations. Wed Mar 25 16:52:35 1992 Per Bothner (bothner@cygnus.com) * c-exp.y, gdbtypes.h: Add builtin_type_signed_char. * cplus-dem.c: Support "Sc" meaning "signed char". Wed Mar 25 15:21:44 1992 Stu Grossman (grossman at cygnus.com) * configure.in: fix iris/iris3. Wed Mar 25 14:55:48 1992 Per Bothner (bothner@cygnus.com) * command.c, main.c (various places): Use ctype.h macros (such as isupper(x)), instead of hard-wiring in ASCII-isms (such as (x >= 'A' && x <= 'Z')). (There are still more of these in other files.) * main.c (defined_command): Lower-case the user's new command before entering it. Needed because command lookup is case-insensitive (and also lower-cases). (Based on Metin's earlier patch.) Tue Mar 24 23:27:01 1992 K. Richard Pixley (rich@cygnus.com) * config/irix4.mh: new file. Tue Mar 24 14:17:48 1992 Stu Grossman (grossman@cygnus.com) * infcmd.c (step_1): Call disable_longjmp_breakpoint at the right time. * xm-mips.h: Declare strdup for ultrix. * mipsread.c (fixup_sigtramp): Make sure that current_objfile is setup when calling new_symbol. * mips-tdep.c (mips_frame_chain): Use symfile_objfile instead of current_objfile. Tue Mar 24 13:26:25 1992 Per Bothner (bothner@rtl.cygnus.com) * config/rs6000.mh: Update (for Fred's new mmalloc) flags to disable use of GNU malloc/mmalloc. * munch: Change SYSV rule to allow .text before the label, as well as after, to work for AIX. * gdbtypes.h: Minor clarifiction. Tue Mar 24 07:26:19 1992 Michael Tiemann (tiemann@cygnus.com) * buildsym.c (read_struct_type): Handle cretinous dbx symbol name continuation in yet another place (between method declarations). Mon Mar 23 23:01:41 1992 Stu Grossman (grossman at cygnus.com) * mips-tdep.c: include symfile.h and objfiles.h to fix compilation errors. Mon Mar 23 15:49:14 1992 Per Bothner (bothner@cygnus.com) * valops.c (value_struct_elt_for_reference): Added 'offset' parameter to handle multiple inheritance. * eval.c, value.h: Update accordingly. Fri Mar 20 17:43:27 1992 Fred Fish (fnf@cygnus.com) * objfiles.h: New file * Makefile.in (HFILES): Add objfiles.h * blockframe.c: Remove entry_scope_lowpc, entry_scope_highpc, main_scope_lowpc, main_scope_highpc. * blockframe.c, buildsym.c, coffread.c, dbxread.c, dwarfread.c, elfread.c, gdbtypes.h, minsyms.c, mipsread.c, objfiles.c, solib.c, source.c, symfile.c, symmisc.c, symtab.c, target.c, xcoffexec.c, xcoffread.c, : Include objfiles.h. * tm-29k.h, tm-i386v.h, tm-merlin.h, tm-rs6000.h, tm-sun386.h, tm-symmetry.h, tm-tahoe.h, tm-umax.h, tm-vax.h, m88k-tdep.c, mips-tdep.c (FRAME_CHAIN): Renamed outside_startup_file to inside_entry_file() and logic changed appropriately. * blockframe.c (outside_startup_file): Renamed to inside_entry_file() and logic changed appropriately. * blockframe.c (inside_main_scope): Renamed to inside_main_func() and logic changed to use per-objfile specific fields. * blockframe.c (inside_entry_scope): Renamed to inside_entry_func() and logic changed to use per-objfile specific fields. * blockframe.c, buildsym.h, coffread.c, dwarfread.c, mipsread.c, symfile.c, mips-tdep.c (startup_file_start, startup_file_end): Remove extern decls. * symfile.c, symfile.h (entry_point): Remove extern decl. * coffread.c (coff_symfile_init): Common entry point init code moved to symfiles.c, call init_entry_point_info(). * coffread.c (complete_symtab): Use new per-objfile entry info. * mip-tdep.c (mips_frame_chain): Use new per-objfile entry info. * mipsread.c (parse_partial_symbols): Use new per-objfile entry info. * dbxread.c (read_dbx_symtab): Use new per-objfile entry info. * defs.h (inside_entry_scope, outside_startup_file, inside_main_scope): Prototypes changed for renames to inside_entry_func, inside_entry_file, inside_main_func, respectively. * symfile.c (syms_from_objfile): Common entry point init code moved to init_entry_point_info() and call init_entry_point_info(). * symfile.h (init_entry_point_info): Include prototype. * xcoffread.c (aixcoff_symfile_init): Common entry point init code moved to symfiles.c and call init_entry_point_info(). * dwarfread.c (entry_scope_lowpc, entry_scope_highpc, main_scope_lowpc, main_scope_highpc): Remove extern decls. * dwarfread.c (read_func_scope, read_file_scope): Use new per- objfile entry info. * frame.h (FRAME_CHAIN_VALID): Provide default definition that works for the majority of targets. * tm-68k.h, tm-convex.h, tm-h8300.h, tm-i386v.h, tm-irix3.h, tm-merlin.h, tm-mips.h, tm-pyr.h, tm-rs6000.h, tm-sparc.h, tm-sun386.h, tm-tahoe.h, tm-umax.h, tm-vax.h (FRAME_CHAIN_VALID): Use default definition in frame.h. * frame.h (selected_frame_level): Make decl extern. * objfiles.c, symfile.c (current_objfile): Moved to objfiles.c * objfiles.c, symfile.c (symfile_objfile): Moved to objfiles.c * partial-stab.h: Use new per-objfile entry info. * symfile.h (struct objfile): Removed, moved to objfiles.h. * symfile.h, objfiles.h (allocate_objfile, free_objfile, free_all_objfiles, iterate_over_objfiles, iterate_over_symtabs, iterate_over_psymtabs, have_partial_symbols, have_full_symbols, have_minimal_symbols): Prototypes moved to objfiles.h. * symfile.h, objfiles.h (ALL_OBJFILES, ALL_OBJFILES_SAFE): Macros moved to objfiles.h. * tm-h8300.h, tm-i386v4.h (FRAME_CHAIN_VALID_ALTERNATE): Define. Thu Mar 19 18:49:45 1992 Per Bothner (bothner@cygnus.com) More C++ improvements (pointers to members, qualified names). * c-exp.y: Support exp.type::name and exp->type::name syntaxes. (Unfortunately, doesn't work for static members.) * c-exp.y, eval.c: Make type::~type work better. * eval.c (evaluate_subexp: OP_SCOPE): Replace use of value_static_field by value_struct_elt_for_reference. * eval.c (evaluate_subexp): Merge code for STRUCTOP_MEMBER and STRUCTOP_MPTR; cast arg1 to domain-type of arg2. * eval.c (evaluate_subexp): Remove special case for UNOP_ADDR for OP_SCOPE operand; no point in it now that we use lazy reading of values, and use "reference to member" objects. * gdbtypes.h: Clarify comment. * valops.c: Change value_struct_elt_for_address to return a reference (or variable), rather than a pointer. Change the name to value_struct_elt_for_reference to reflect this. Returning a reference instead of a address provides a generalization, since we can use the routine for both class::name as well as &class::name. Also, recurse to handle multiple inheritance properly. * valprint.c: Moved code to print pointer-to-members to new function point_class_member. This allows a "reference-to-member" to be printed using the same code. * valprint.c (type_print_varspec_prefix): Avoid printing "struct " for domains of class-member types. * valops.c (search_struct_field): Inline code for simplified version of value_static_field (which can then be deleted). * value.h: Rename value_struct_elt_for_address to value_struct_elt_for_reference. Delete value_static_field. * values.c: Remove no longer used function value_static_field. Thu Mar 19 13:54:11 1992 Fred Fish (fnf@cygnus.com) * coffread.c, mipsread.c, xcoffread.c, coffread.c, dbxread.c, elfread.c (coff_symfile_finish): Add function, prototype, and add to the xxxx_sym_fns struct for each file type. Also reformat the xxxx_sym_fns vector to a standard format and add comments. * coffread.c, mipsread.c, xcoffread.c, coffread.c, dbxread.c, elfread.c (xxx_symfile_new_init, xxx_symfile_init, xxx_symfile_read): Pass pointer to struct objfile rather than pointer to sym_fns. Change references inside each function accordingly. Allocate any symbol file specific info in the per-objfile memory region. * dbxread.c (free_and_init_header_files): Break function into free_header_files(), called from dbx_symfile_finish(), and init_header_files(), called from dbx_new_init(). * dbxread.c (dbx_new_init): Move deallocation things to new dbx_symfile_finish function. * elfread.c (elf_new_init): Call buildsym_new_init(). * objfiles.c (free_objfile): Call the appropriate symfile_finish() routine for the objfile before deallocating other stuff. * sparc-tdep.c (get_longjmp_target): Cast target_read_memory arg. * symfile.h: Move struct sym_fns to before struct objfile def. Add sym_finish function pointer and change prototypes of other function pointers to reflect passing struct objfile pointer rather than struct sym_fns pointer. * symfile.c: Remove now obsolete symtab_fns pointer. * symfile.c (symfile_init): Renamed to find_sym_fns, and now only locates the correct sym_fns struct for the given objfile. * symfile.c (syms_from_objfile, symbol_file_add): Restructured for better support of mapped symbol tables. * symfile.c (symbol_file_command): Remove obsolete code using symfile_fns. * symfile.h: Remove duplicate declarations for symfile_objfile, entry_point, and object_files. * target.c (target_info): Compare symfile_objfile to NULL. * xcoffread.c (aixcoff_new_init): Move deallocation stuff to aixcoff_symfile_finish(). Wed Mar 18 18:22:46 1992 Fred Fish (fnf@cygnus.com) * infrun.c (IN_SOLIB_TRAMPOLINE): Add default definition. * infrun.c (wait_for_inferior): Use IN_SOLIB_TRAMPOLINE. * tm-sysv4.h (IN_SOLIB_TRAMPOLINE): Add SVR4 definition. Wed Mar 18 15:51:15 1992 Per Bothner (bothner@cygnus.com) Some improvements to g++ debugging. * symtab.c (list_symbols): demangle before pattern matching. * symtab.c: Other fixes to improve handing of operators. * valprint.c (type_print_base): Fix test for constructor. * values.c (value_static_field): Allow evaluation of CLASS::METHOD, returning a function pointer. Wed Mar 18 08:39:52 1992 Fred Fish (fnf@cygnus.com) * Makefile.in (VERSION): Roll 4.4.6. * exec.c (exec_file_command): Add code to ignore optional args passed in by file_command() for use in symbol_file_command(). * main.c (main): Document -mapped and -readnow in help summary. * objfiles.c (open_mapped_file): Cosmetic change, arg renamed. * objfiles.c (allocate_objfile): Filename arg removed. Changes to get filename from bfd with bfd_get_filename(). Test mapto against 0, not NULL. Use mstrsave() to make copy of filename. * remote-mm.c (mm_load): Symbol_file_add() takes an additional arg. * remote-vx.c (vx_load_command, add_symbol_stub): Symbol_file_add() takes an additional arg. * solib.c (symbol_add_stub): Symbol_file_add() takes an additional arg. * symfile.c (symfile_open): Renamed to symfile_bfd_open and changed to return a bfd not an objfile pointer. * symfile.c (syms_from_objfile): Eliminate local copy of bfd. * symfile.c (symbol_file_add): Takes an additional arg (readnow). Change to eliminate local bfd and use symfile_bfd_open() plus allocate_objfile(). Add code to implement readnow option. * symfile.c (symbol_file_command): Changes to option handling, readnow functionality moved to symbol_file_add(). * symfile.c (symfile_init): Eliminate local copy of bfd. * symfile.c (add_symbol_file_command): Changes to parse mapped and readnow options. * symfile.h (allocate_objfile): Arg removed from prototype. * symtab.h (symbol_file_add): Arg added to prototype. * xcoffexec.c (map_vmap): Allocate_objfile() takes an additional arg. Sat Mar 14 16:38:47 1992 Fred Fish (fnf@cygnus.com) * gmalloc.c, gmalloc.h mcheck.c mmap-alloc.c mmap-sbrk.c mtrace.c, mtrace.awk, state.c, state.h: Removed. * .gdbinit: Add ../malloc, ../libiberty, and ../bfd to list of directories searched for source files. * Makefile.in (GNU_MALLOC, MALLOC_CFLAGS, MALLOCSRC): Removed * Makefile.in (MMALLOC_DIR, MMALLOC_DEP, MMALLOC_LIB, MMALLOC_DISABLE, MMALLOC_CHECK, MMALLOC_CFLAGS): Add * Makefile.in (CFLAGS): Replace MALLOC_CFLAGS with MMALLOC_CFLAGS. * Makefile.in (CLIBS, CDEPS): Add MMALLOC_LIB * Makefile.in (ADD_FILES, ADD_DEPS): Remove GNU_MALLOC. * Makefile.in (SFILES_MAINDIR): Remove stat.c mmap-alloc.c, mmap- sbrk.c * Makefile.in (HFILES): Remove state.h * Makefile.in (POSSLIBS_MAINDIR): Remove MALLOCSRC. * Makefile.in (OBS): Remove state.o mmap-alloc.o mmap-sbrk.o * Makefile.in (saber_gdb): Remove mcheck, mtrace. Add MMALLOC_DIR. * Makefile.in (clean): Remove all object files. * c-exp.y: Define malloc to xmalloc and realloc to xrealloc. * cplus-dem.c: Remove prototypes definitions that are now done in def.h. * dbxread.c (throughout): Change from using per-objfile xmalloc/xrealloc/free functions to xmmalloc/xmrealloc/mfree. * defs.h: Remove prototypes for mmap_* functions. Add prototypes for xmmalloc, xmrealloc, mfree, mmcheck, mmtrace, mmalloc_attach, mmalloc_detach, mmalloc_setkey, msavestring, and mstrsave, nomem. * depend: Remove dependencies for state.o, state.h. * dwarfread.c: Add declaration for warning_pre_print. * dwarfread.c (dwarfwarn): Use warning_pre_print. * dwarfread.c (throughout): Change from using per-objfile xmalloc/xrealloc/free functions to xmmalloc/xmrealloc/mfree. * gdbtypes.c (lookup_fundamental_type): Fix init_type calls to use supplied objfile. * i386-xdep.c (print_387_status): Change to use warning() rather than printfs. * i387-tdep.c (print_387_control_word): Change to use warning() rather than printfs. * infrun.c (wait_for_inferior): Remove unreachable abort() call that some compilers grumble about. * language.c (throughout): Add declaration for warning_pre_print and using warning() instead of printfs. * m2-exp.y: Define malloc to xmalloc and realloc to xrealloc. * main.c (main): Add declaration for warning_pre_print and set it similarly to error_pre_print. Add declarations for mapped_symbol_files and readnow_symbol_files. Add appropriate definitions to long_options[]. * minsyms.c: Trivial fix to comment. * objfiles.c (allocate_objfile): Substantially rewritten for using mapped symbol files. * objfiles.c (throughout): Change from using per-objfile xmalloc/xrealloc/free functions to xmmalloc/xmrealloc/mfree. * objfiles.c (open_mapped_file, mapped_to_address): Add functions. * source.c (throughout): Change from using per-objfile xmalloc/xrealloc/free functions to xmmalloc/xmrealloc/mfree. * source.c (open_source_file): Use mstrsave to save file name in mapped symbol region for objfile. * symfile.c: Remove include for state.h. include to local form. * symfile.c (symbol_file_add_digested): Remove. * symfile.c (symbol_file_add): Substantially rewritten for mapped symbol files. * symfile.h: Remove malloc/xrealloc/xmalloc/xrealloc/free members from objfile structure. Add malloc descriptor pointer (md). * symfile.h (OBJF_DUMPABLE): Changed name to OBJF_MAPPED. * symm-xdep.c (print_fpu_status): Use warning() rather than printfs. * symmisc.c (free_symtab_block): Now takes and uses current objfile pointer. * symmisc.c (throughout): Change from using per-objfile xmalloc/xrealloc/free functions to xmmalloc/xmrealloc/mfree. * symtab.c (cplus_mangled_symbol): Cast return value to avoid Sun compiler grumblings when PTR is char *. * symtab.c (lookup_symbol): Cast return value of iterate_over_ msymbols() to correct pointer type. * utils.c (warning_pre_print): Initialize to "\nwarning: ". * utils.c (fatal, fatal_dump_core): Ensure that the fatal error always starts on a line of it's own. * utils.c (init_malloc, malloc_botch, xmalloc, xrealloc): Rewrite for new mapped malloc package use. * utils.c (mmalloc, mrealloc, mfree): Stubs for configurations that don't want to use the mapped malloc package; pass arguments on to traditional malloc package functions. * utils.c (nomem): Add for fatal virtual memory exhausted aborts. * utils.c (xmmalloc, xmrealloc, xmalloc, xrealloc): Like mmalloc, mrealloc, malloc, and realloc but get fatal error if runs out of memory. * utils.c (msavestring, mstrsave): Save a string in a specific mapped malloc region. * utils.c (print_spaces): Use xmalloc to get the buffer. * xm-amix.h, xm-i386v4.h, xm-sun3os4.h, xm-sun4os4.h: Add defines for MMAP_BASE_ADDRESS and MMAP_INCREMENT. * config/i386v4.mh: Insignificant reorganization. Sat Mar 14 11:44:47 1992 Fred Fish (fnf@cygnus.com) * xcoffread.c: Only enable compilation of debugging functions if IBM6000 is defined. Fails to compile otherwise. Fri Mar 13 15:51:11 1992 K. Richard Pixley (rich@cygnus.com) * Makefile.in: pass MAKEINFO down on info. Fri Mar 13 12:56:36 1992 John Gilmore (gnu at cygnus.com) * mipsread.c (mipscoff_symfile_read): Eliminate a lot of useless code, including an lseek to an uninitialized variable. Reported by Jim Williams . Thu Mar 12 11:56:46 1992 Per Bothner (bothner@cygnus.com) Merged in patches from metin@ibmpa.awdpa.ibm.com (Metin G. Ozisik) (dated Fri, 6 Mar 92 17:51) for the rs6000. * minsyms.c, symfile.c: Changes that may be generally applicable, but are #ifdef IBM6000 for now. * rs6000-xdep.c: Fixed typo in comment. * rs6000-tdep.c: Non-substatial changes. * xoffread.c: The main change here is addition of some debugging functions. * xoffexec.c: More changes. * xcoffread.c: Fixed two too-few-parameters bugs. * solib.h, infrun.c, tm-rs6000.h: Add a PID parameter to SOLIB_CREATE_INFERIOR_HOOK macro. Sun Mar 8 21:17:48 1992 Fred Fish (fnf@cygnus.com) * symfile.h: Add prototype for iterate_over_msymbols(). * symtab.c (cplus_mangled_symbol): Add function. * symtab.c (lookup_symbol): Call cplus_mangled_symbol via iterate_over_msymbols to find demangled C++ symbol. * xcoffexec.c (relocate_minimal_symbol): Return meaningful value to iterate_over_msymbols(). * xcoffexec.c (vmap_symtab): Ignore return from iterate_over_ msymbols(). Fri Mar 6 21:59:34 1992 K. Richard Pixley (rich@cygnus.com) * Makefile.in: added check target. Thu Mar 5 23:56:01 1992 John Gilmore (gnu at cygnus.com) * ecoff.c: Move to ../bfd/coff-msym.c. * config/mt-*mips: Remove ecoff.o from the configuration. * remote.c (): Add newline to initial +. (remote_resume): Mention how to cope with signals. (remote_interrupt): Add debug msg. (remote-wait): Implement new 'T' reply, which includes status, PC, and FP all in a single short message. (putpkt): Add further debugging of packet acks. * mipsread.c (fixup_symtab): Also swap RFD's. (parse_partial_symbols): Avoid bug on unknown symbol types. * Makefile.in (VERSION): Roll to 4.4.5. * mips-tdep.c (heuristic_proc_start): Avoid long delays for remote MIPS by limiting heuristic to 200 byte search. (heuristic_proc_desc): Byte-swapping. (mips_print_register): Cope with failure of read_relative_register_raw_bytes. Byte-swap integers for printing. * mips-pinsn.c (print_insn): Byte-swap instruction. Thu Mar 5 12:32:09 1992 Stu Grossman (grossman at cygnus.com) * config.sub configure.in config/.Sanitize config/mh-irix4 gdb/.Sanitize gdb/configure.in gdb/mips-tdep.c gdb/mipsread.c gdb/procfs.c gdb/signame.h gdb/tm-irix3.h gdb/tm-mips.h gdb/xm-irix4.h gdb/config/.Sanitize gdb/config/mt-irix3 gdb/config/mh-irix4 texinfo/configure.in: Port to SGI Irix-4.x. Wed Mar 4 11:56:42 1992 Fred Fish (fnf@cygnus.com) * defs.h, utils.c: xrealloc takes PTR as first arg. * defs.h: Reword confusing comment about ANSI prototypes. * defs.h: Some minor whitespace changes. * infrun.c (wait_for_inferior): Compare int tmp to int 0, not NULL, which can be (void *). * tm-amix.h, tm-i386v4.h: Add defines for setjmp/longjmp handling. * tm-i386v.h (SP_ARG0): Define * xm-sysv4.h: Back out of change for missing prototypes. * i386-tdep.c (get_longjmp_target): Add function. Wed Mar 4 05:46:11 1992 K. Richard Pixley (rich@rtl.cygnus.com) * Makefile.in: install man page too. Tue Mar 3 15:11:52 1992 Michael Tiemann (tiemann@cygnus.com) * All GDB files that #include defs.h: Removed stdio.h. (defs.h): #include stdio.h. Mon Mar 2 23:00:12 1992 Steve Chamberlain (sac@thepub.cygnus.com) * gdbtypes.c (lookup_pointer_type): initialize the TYPE_LENGTH of a ptype to reflect the setting of TARGET_PTR_BIT. Set the TYPE_FLAGS of a ptype to TYPE_FLAG_UNSIGNED. * tm-h8300.h, h8300-tdep.c, remote-hms.c: personal checkpoint * printcmd.c (print_address): if ADDR_BITS_REMOVE is defined, use it before printing out the hex shape of an address. Sun Mar 1 17:41:09 1992 Per Bothner (bothner@cygnus.com) * rs6000-xdep.c (frame_initial_stack_address): Move code to set frame->cache_fsr into new separate function frame_get_cacahe_fsr. This allows fixing a fatal error. * xcoffexec.c: Turn previously suppressed error message back on, after cleaning up BFD. * breakpoint.c (breakpoint_re_set): Removed (at least for now) printing of blank line, since it cases printing of an extra blank line. Is this intended? It does mess up gdb test suite. * defs.h: Put back declarations of malloc and realloc, but protected by #ifndef MALLOC_INCOMPATIBLE. * objfiles.c: Undo previous change: Use malloc/realloc for objfile malloc/realloc fields (but add a cast). * xcoffexec.c: Suppress an error message (for now). Sat Feb 29 14:43:02 1992 Per Bothner (bothner@cygnus.com) Changes from metin@ibmpa.awdpa.ibm.com (Metin G. Ozisik) [Mail dated Fri, 21 Feb 92 13:14:54 -0800] * buildsym.c: Use smash_to_pointer_type() to handle forward type references. * xcoffread.c: Modifications to C_DECL storage class handling, and introduction of an old smash_to_pointer_type() routine. Changes from metin@ibmpa.awdpa.ibm.com (Metin G. Ozisik) [Mail dated Thu, 20 Feb 92 13:57:16 -0800] * rs6000-xdep.c, rs6000-tdep.c, tm-rs6000.h: function_frame_info() parameters have been modified. Changes from metin@ibmpa.awdpa.ibm.com (Metin G. Ozisik) [Mail dated Thu, 20 Feb 92 10:10:05 -0800] * rs6000-tdep.c: Before Feb 5 92, register_valid[] array was not used, and fetch_inferior_registers() always fetched all the registers resulting valid register values at hand all the time. Pushing a dummy frame did not require validating all register values first. After putting the above mechanism into action, we didn't have valid registers values always ready. Thus, all registers need to be fetched before pushing a dummy frame now. Changes from metin@ibmpa.awdpa.ibm.com (Metin G. Ozisik) [Mail dated Thu, 13 Feb 92 16:22:44 -0800] * rs6000-xdep.c: frame_initial_stack_address() function to calculate the starting address (actual frame address) of a frame. * rs6000-tdep.c: modifications to function_frame_info() to see if function reserves a frame pointer register (alloca register) * tm-rs6000.h: EXTRA_FRAME_INFO, FRAME_ARGS_ADDRESS and FRAME_LOCALS_ADDRESS has been updated to support debugging of functions with alloca() calls. Sun Mar 1 13:13:39 1992 Fred Fish (fnf@cygnus.com) * xm-sysv4.h: Provide definitions/prototypes for host environment functions for which no definitions or prototypes are provided in any currently included gdb or host environment header files. For SVR4, this currently includes malloc and realloc, which cannot be portably prototyped in any gdb include file. Sat Feb 29 14:43:02 1992 Per Bothner (bothner@cygnus.com) * buildsym.h: Remove obsolete variable file_stabs. * Makefile.in: Move place where configure merges in host- and target-dependent fragments later, so the latter can override (say) GNU_MALLOC. * config/mh-rs6000: Use system malloc. Otherwise, I ended up with *two* incompatible versions of malloc (functions in libc would call the malloc in libc). I assume this is a shared library problem. * remote.c: Fix (presumed) typo. * objfiles.c: Use xmalloc/xrealloc instead of malloc/realloc (since the latter are no longer declared). Changes from metin@ibmpa.awdpa.ibm.com (Metin G. Ozisik) [Mail dated Thu, 6 Feb 1992 10:22:02 -0800] * rs6000-xdep.c: Improvements to fetch_inferior_registers() to handle individual registers. * tm-rs6000.h: Fix SAVED_PC_AFTER_CALL macro to handle pc value correctly in case it wasn't cached yet. (A problem showed up after fetching individual registers.) * buildsym.c: Disable type_synonym_name's type name overwriting in cases it is unnecesary. rs6000 portation doesn't use type_synonym_name, and it used to nullify type names * xcoffread.c: to handle g++'s typename abbreviation, fill in a type's name as soon as space for that type is allocated. * xcoffread.c: ignore a section's lineno information if it is not `.text'. (In rs6000 bfd portation integration, skipping over `.pad' sections are ignored since it was in machine independent part of the code. Thus, a problem of fake sections with invalid lineno information arised.) Changes from metin@ibmpa.awdpa.ibm.com (Metin G. Ozisik) [Mail dated Thu, 6 Feb 1992 13:26:22 -0800] * rs6000-tdep.c: make function_frame_info() work whether or not reading from a core file. * tm-rs6000.h: Implementation of FRAME_FIND_SAVED_REGS macro. * infrun.c. main.c, printcmd.c. symtab.c: More changes from IBM for rs6000. Thu Feb 27 22:57:19 1992 Per Bothner (bothner@cygnus.com) * rs6k-opcode.h, tm-rs6000.h, xm-rs6000.h, rs6000-tdep.c, rs6000-xdep.c, xcoffexec.c, xcoffread.c: Merge in changes (mostly from IBM) for RS6000. * breakpoint.c, buildsym.c, infptrace.c, stack.c, symtab.c: More changes from IBM for RS6000. These are in machine- independent code, and probably could do with some cleaning up. The most questionable of these are #ifdef IBM6000. * infrun.c, sparc-tdep.c: Pass a parameter (signal number) to single_step() (for consistency with rs6000 and i860). * utils.c: Allow the 1st arg to xrealloc to be NULL (in which case do malloc). This removes the need for some tests in xcoff code (and perhaps other places?). * coffread.c: Removed variables last_source_file, type_vector, and type_vector_length as these are now defined by buildsym.[ch]. * defs.h: Remove prototypes for malloc and realloc, since these should only be used to implement xmalloc and xrealloc, and they conflict with in AIX - where they return void* even when __STDC__ isn't defined. Sigh. * munch: Recognize *initialize* in data as well as text (AIX uses data). Also, incorporate a patch from Garrett Wollman to make the sed script much more sensible, by only trying to match the name of the initialize_foo function, and not the junk before it. Thu Feb 27 20:07:43 1992 Stu Grossman (grossman at cygnus.com) * breakpoint.c (breakpoint_re_set_one): Don't reset breakpoint unless symbol table indicates that something has changed. Thu Feb 27 11:48:47 1992 John Gilmore (gnu at cygnus.com) * remote.c: Make it work for embedded MIPS. Increase buffer size, and use throughout. Round buffer size up if too many regs. Support baud rate setting and try for an 8-bit path. If interrupted while waiting for target, send a ^C down the wire. Avoid single-byte reads. * tm-mips.h: Add more embedded-system registers to REGISTER_NAMES and NUM_REGS. * mips-xdep.h: Avoid the embedded regs when on Unix. * mipsread.c: Byte-swap the symbol table structures, using routines from ecoff.c, to read a symbol table written in any of the four possible byte orders. * configure.in (mips-big-* target): Same as Sony News. * config/mt-bigmips, config/mt-littlemips: Add ecoff.o. * ecoff.c: New file for symbol swapping routines. Thu Feb 27 09:26:38 1992 Stu Grossman (grossman at cygnus.com) * breakpoint.c (all_breakpoints_info, breakpoint_1): Add 'info all-breakpoints' command. * (get_number): Allow users to enter negative breakpoint numbers. * (breakpoint_1): Reformat display of 'info break' to show new fields. * (create_longjmp_breakpoint, breakpoint_re_set, breakpoint_re_set_one, enable/disable_longjmp_breakpoint), symfile.c (syms_from_objfile): Re-do insertion of longjmp breakpoints. Move all code into breakpoint_re_set, and call that instead of create_longjmp_breakpoint in symfile.c. Thu Feb 27 06:11:05 1992 John Gilmore (gnu at cygnus.com) * breakpoint.h (ALL_BREAKPOINTS_SAFE): Add. * breakpoint.c (breakpoint_re_set): Use ALL_BREAKPOINTS_SAFE. * symtab.c (find_pc_symtab): Handle having no objfiles. * infcmd.c: Fix comment. * objfiles.c (free_all_objfiles): Add. * symfile.h (ALL_OBJFILES, ALL_OBJFILES_SAFE): Add. * symfile.c (symbol_file_command): free all objfiles when specifying a new symbol file. (reread_symbols): Stat the file name, don't fstat the descriptor. Wed Feb 26 18:04:40 1992 K. Richard Pixley (rich@cygnus.com) * Makefile.in, configure.in: removed traces of namesubdir, -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced copyrights to '92, changed some from Cygnus to FSF. Tue Feb 25 19:31:19 1992 Stu Grossman (grossman at cygnus.com) * dbxread.c (end_psymtab): Delete empty psymtabs. * symfile.c (allocate_psymtab): Recycle empty psymtabs. * symfile.h (struct objfile): Add free_psymtabs. Sat Feb 22 02:00:32 1992 John Gilmore (gnu at cygnus.com) * Makefile.in (VERSION): Roll to gdb-4.4.4. * symfile.c (symbol_file_command): strcmp => !strcmp. * breakpoint.h: Move prototypes to follow enum definition they need. * breakpoint.c, infrun.c: Lint. * printcmd.c: Use `enum enable' rather than `enum display_status'. * mipsread.c: First pass at making it compile with the new objfile changes. Probably seriously broken still, but it compiles. FIXME. Sat Feb 22 00:56:39 1992 Stu Grossman (grossman at cygnus.com) * infrun.c, infcmd.c, breakpoint.c, main.c, symfile.c, breakpoint.h, tm-sun4os4.h, tm-sparc.h, sparc-tdep.c, tm-mips.h, mips-tdep.h, tm-sun3.h, tm-68k.h, m68k-tdep.h: Add support for stepping (and nexting) through longjmp(). Also, cleanup breakpoint handling quite a bit by creating explicit breakpoint types instead of using magic breakpoint numbers. Makefile.in: Update version to 4.4.3 Sat Feb 22 00:08:50 1992 John Gilmore (gnu at cygnus.com) * buildsym.c, dwarfread.c, gdbtypes.c, inflow.c, main.c, minsyms.c, printcmd.c, remote.c, saber.suppress: Saberlint. * symmisc.c, xcoffread.c: Move debug functions to symmisc.c. * xm-sun3os4.h, xm-sun4os4.h: Enable HAVE_MMAP. * minsyms.c (install_minimal_symbols): Add bunches to any existing minsyms in the objfile. Avoid extra mallocation by working directly in the obstack. Remove ignored `mainline' parm. * coffread.c, dbxread.c, elfread.c, mipsread.c, solib.c, symtab.h, xcoffread.c: Change all callers. * FIXME: We should be able to eliminate MAINLINE from all the symbol readers now, with a small bit of work. * valops.c, value.h: Lint. * remote-vx.c: Add missing break; statement. Bugfix by Michael Sclafani, . Fri Feb 21 17:29:54 1992 Fred Fish (fnf at cygnus.com) * Makefile.in (VERSION): Update version to 4.4.2 * Makefile.in (SFILES_MAINDIR): Add gdbtypes.c, state.c, objfiles.c, minsyms.c, mmap-alloc.c, mmap-sbrk.c * Makefile.in (HFILES): Add gdbtypes.h, state.h, solib.h * Makefile.in (OBS): Add gdbtypes.o, state.o, objfiles.o, minsyms.o, mmap-alloc.o, mmap-sbrk.o * altos-xdep.c: Minor whitespace change. * am29k-tdep.c (examine_prologue): Convert from misc function vector use to new minimal symbol table use. * arm-xdep.c (fetch_inferior_registers): Document unused argument. * arm-xdep.c (store_inferior_registers): Returns void. * blockframe.c (get_pc_function_start, find_pc_partial_function): Convert from misc function vector use to new minimal symbol table use. Remove find_pc_misc_function(). Ifdef out block_innermost_frame(). * breakpoint.c: Add prototypes for local functions. * breakpoint.c (catch_command_1): Change to static and remove unused local "pc". * breakpoint.c (map_breakpoint_numbers): Prototype arg "function". * breakpoint.h: Change function decls to prototype form. * buildsym.c: Add prototypes for local functions. * buildsym.c: Moved hashname() function here from dbxread.c. * buildsym.c (dbx_lookup_type): Cast args to xrealloc(). * buildsym.c: Remove dbx_create_type(), uses changed to alloc_type(). * buildsym.c (dbx_alloc_type): Change to static. * buildsym.c (finish_block): Add objfile parameter. * buildsym.c (misc): Change symbol_obstack to objfile version. * buildsym.c (make_blockvector): Change to static. * buildsym.c (start_subfile): Use strdup instead of obsavestring. * buildsym.c (compare_line_numbers): Change to static, args are const, cast args when used. * buildsym.c (start_symtab): Inline new_object_header_files() call. * buildsym.c (patch_block_stabs): Moved to this file from xcoffread and made static. Add objfile parameter. * buildsym.c (end_symtab): Simplify code using line table size. Realloc the linetable on the objfile symbol_obstack and copy there. * buildsym.c (scan_file_globals): Convert from misc function vector use to new minimal symbol use. * buildsym.c (define_symbol): Add objfile parameter. Make sure strings get allocated in objfile's symbol_obstack. Convert references to builtin types to lookup_fundamental_type(). * buildsym.c (read_type): Make static, add objfile parameter, convert references to buildin types to lookup_fundamental_type(). * buildsym.c (read_struct_type): Add objfile parameter. * buildsym.c (read_array_type): Make static, add objfile parameter. * buildsym.c (read_enum_type): Make static, add objfile parameter. * buildsym.c (read_huge_number): Make static. * buildsym.c (read_range_type): Make static, add objfile parameter, convert references to buildin types to lookup_fundamental_type (). * buildsym.c (read_args): Make static, add objfile parameter. * buildsym.h: Convert function decl's to prototype form. * c-exp.y: Add prototypes for local functions, convert uses of misc function vector to minimal symbol table. Reformat all builtin type initializations and pass a NULL objfile to init_type() for them. * coffread.c: Change context_stack ref's to coff_context_stack, add local function prototypes. Cast uses of xrealloc arg 1. * coffread.c (coff_alloc_type): Call alloc_type instead of hand- crafting a new type. * coffread.c (add_symbol_to_list): Change to coff_add_symbol_to_list. * coffread.c (finish_block): Change name to coff_finish_block. * coffread.c (make_blockvector): Add and use objfile parameter. * coffread.c (record_line): Change name to coff_record_line. * coffread.c (start_symtab): Change name to coff_start_symtab. * coffread.c (end_symtab): Change name to coff_end_symtab. * coffread.c (record_misc_function): Change name to record_minimal_ symbol and change to minimal symbol table use from misc func tbl. * coffread.c (coff_symfile_read): Convert from misc function vector use to minimal symbol table use. * coffread.c (hashname): Remove; use common version in buildsym.c. * coffread.c (decode_base_type): Change references to builtin types to calls to lookup_fundamental_type(). * coffread.c (read_struct_type): Change name to coff_read_struct_type. * coffread.c (read_enum_type): Change name to coff_read_enum_type. * command.c: Add prototypes for local functions. * command.c (add_cmd): Prototype the 'fun' parameter and use the appropriate member of the function union for that type. * command.c (add_abbrev_cmd): Prototype the 'fun' parameter and ifdef out the function since it isn't currently used. * command.c (add_alias_cmd): Pass correct function type to add_cmd. * command.c (add_prefix_cmd): Prototype the 'fun' parameter. * command.c (add_abbrev_prefix_cmd): Prototype the 'fun' parameter. * command.c (help_cmd): Compare function pointer to NULL. * command.c (help_cmd_list): Compare function pointer to NULL. * command.c (lookup_cmd_1): Use correct member of function union. * command.c (undef_cmd_error): Make static. * command.c (complete_on_cmdlist): Use correct member of func union. * command.c (do_setshow_command): Use correct member of func union. * command.c (shell_escape): Convert rindex use to strrchr. * command.h (COMMAND_H): Define if already included. * command.h (cmd_list_element struct): Change 'function' to a union and prototype args. Prototype completer function. * command.h: Convert decl's to prototype form. * convex-xdep.c (store_inferior_registers): Returns void. * copying.c: Prototype local functions. * coredep.c: Minor whitespace change. * cplus-dem.c: Remove hack to use BSD equivalents of mem* and str*. * cplus-dem.c: Prototype local functions. * dbxread.c (hashname): Remove; moved to buildsym.c. * dbxread.c (free_and_init_header_files): Make static. * dbxread.c: Add prototypes for local functions. * dbxread.c (new_object_header_files): Remove; inlined usages. * dbxread.c (xrealloc usages): Cast args. * dbxread.c (record_misc_function): Change to record_minimal_symbol and change usages accordingly. * dbxread.c (static_psymbols usages): Change to use per-objfile copy. * dbxread.c (xmalloc usages): Use per-objfile copy when appropriate. * dbxread.c (dbx_next_symbol_text): Make static. * dbxread.c (init_psymbol_list): Convert to use per-objfile data. * dbxread.c (init_bincl_list): Add and use objfile parameter. * dbxread.c (free_bincl_list): Add and use objfile parameter. * dbxread.c (compare_psymbols): Remove; use common symfile.c version. * dbxread.c (end_psymtab): Convert to use per-objfile data. * dwarfread.c (DEFUN/EXFUN): Remove all usages. Use PARAMS for prototypes. * dwarfread.c (record_misc_function): Change name to record_minimal_ symbol and use minimal symbol table throughout. * dwarfread.c (compare_psymbols): Remove; use common symtab.c version. * dwarfread.c: Convert all references to builtin types to use the new lookup_fundamental_type function. * dwarfread.c (read_enumeration): Add and use objfile parameter. * elfread.c (DEFUN/EXFUN): Remove all usages. Use PARAMS for proto- types. * elfread.c (record_misc_function): Convert to use record_minimal_ symbol. * elfread.c (elf_symtab_read): Add objfile parameter. * eval.c: Add prototypes for local functions and move some decls around to accomodate prototypes. * expprint.c: Add prototypes for local functions. Change references to misc function vector to minimal symbol table. * findvar.c (read_memory usages): Cast args. * gdbtypes.h: New file, type info from symfile.h and symtab.h. * gmalloc.c: Use NOARGS where prototypes used hardwired void. * gmalloc.c (BLOCKSIZE): Constant to be shifted is unsigned. * gmalloc.h: Use NOARGS where prototypes used hardwired void. * gould-xdep.c: Minor whitespace change. * hp300ux-xdep.c (fetch_inferior_registers): Remove unused regno var. * hp300ux-xdep.c (store_inferior_registers): Returns void. * hp300ux-xdep.c (fetch_core_registers): Takes unused arg reg_addr. * i386-stub.c: Add prototypes, change "volatile" to NORETURN. * i386-tdep.c: Add prototypes for local functions. * i386-tdep.c (codestream_fill, codestream_seek, codestream_read, i386_get_frame_setup, i386_skip_prologue): Explicitly declare params that defaulted to int. * i386-tdep.c (i386_follow_jump, i386_frame_find_saved_regs, i386_push_dummy_frame): Returns void. * i386-xdep.c (i386_register_u_addr): Declare params that default to int and explicitly declare return type as int. * i387-tdep.c: Minor formatting changes. * i960-tdep.c (leafproc_return): Convert from misc function vector use to minimal symbol table use. * infcmd.c: Add prototypes for local functions. * infcmd.c (continue_command, until_next_command, until_command, path_info, path_command): Make static. * infcmd.c (step_1, until_next_command): Convert from misc func vector to minimal symbol table use. * inflow.c: Add prototypes for local functions. * infptrace.c (store_inferior_registers): Returns void, not int. * language.c (_initialize_language): Use proper member of function union. * m2-exp.y: Add prototypes for local functions, convert misc function vector uses to minimal symbol table uses. * m2-exp.y (make_qualname, yyerror): Make static. * m2-exp.y (_initialize_m2_exp): Call init_types with NULL objfile. * m68k-pinsn.c: Add prototypes for local functions. * m68k-pinsn.c (print_insn): Cast args to read_memory. * m68k-pinsn.c (fetch_arg): Make parameter 'code' and int. * m68k-stub.c: Add prototypes. * m88k-pinsn.c (sprint_address): Convert from misc function vector use to minimal symbol table use. * m88k-xdep.c (fetch_inferior_registers): Takes an unused parameter. * m88k-xdep.c (store_inferior_registers): Returns void. * mach386-xdep.c (fetch_inferior_registers): Takes an unused param. * mach386-xdep.c (store_inferior_registers): Returns void. * mach386-xdep.c (fetch_core_registers): Takes an unused parameter. * main.c: Add prototypes for local functions. * main.c (return_to_top_level): Is type NORETURN (volatile). Cast longjmp() result to (NORETURN void). * main.c (catch_errors): Prototype the 'func' parameter. * main.c (disconnect, stop_sig, do_nothin, float_handler): Takes an unused arg. * main.c (execute_command): Call the right member of the func union. * main.c (command_loop_marker, symbol_completion_function, command_loop): Make static. * main.c (command_line_input): Make linelength unsigned, cast arg to command_line_input(). * main.c (add_info, add_com): Prototype the 'fun' parameter. * main.c (initialize_main): Call right member of function union. * mcheck.c (NOARGS): Change hardwired void in prototypes to NOARGS. * mem-break.c: Include symtab.h * mips-xdep.c (fetch_inferior_registers): Takes unused param. * mips-xdep.c (store_inferior_registers): Returns void. * mipsread.c (mipscoff_symfile_read): Change from misc function vector use to minimal symbol table use. * mipsread.c (symbol_obstack usages): Convert all to use per-objfile version. * mipsread.c (make_type): Remove, convert usages to init_type. * mipsread.c (_initialize_mipsread): Call init_type with NULL objfile. * nindy-tdep.c (nindy_frame_chain_valid): Convert from misc function vector use to minimal symbol table use. * parse.c: Add prototypes for local functions. * parse.c (xrealloc usages): Cast args. * parse.c (prefixify_expression, length_of_subexp): Make static. * parser-defs.h (PARSER_DEFS_H): Define when first included. * parser-defs.h: Convert function decls to prototype form. * partial-stab.h: Convert from misc function vector use to new minimal symbol table use. * partial-stab.h (global_psymbols, static_psymbols usages): Reference the per-objfile copies. * printcmd.c: Add prototypes for local functions. Move some struct definitions around to accomodate prototypes. * printcmd.c (decode_format): Make static, change args oformat and osize to int from char. * printcmd.c (print_formatted): Change 'format' and 'size' to int. * printcmd.c (print_scalar_formatted): Change arg 'format' to int. * printcmd.c (print_address_symbolic): Convert from misc function vector use to minimal symbol table use. * printcmd.c (address_info): Convert from misc function vector use to minimal symbol table use. * printcmd.c (delete_display, enable_display, disable_display_command): Make static. * procfs.c (EXFUN/DEFUN): Remove all usages, convert to PARAMS. * procfs.c (fetch_core_registers): Add unused param reg_addr. * pyr-xdep.c (fetch_inferior_registers): Add unused param regno. * pyr-xdep.c (store_inferior_registers): Returns void. * remote-mm.c (mm_load): symbol_file_add return value unused. * remote-nindy.c: Minor format change. * remote-vx.c (vx_load_command): symbol_file_add result unused. * rs6000-xdep.c (fetch_inferior_registers): Add unused param regno. * rs6000-xdep.c (store_inferior_registers): Returns void. * rs6000-xdep.c (fetch_core_registers): add unused param reg_addr * rs6000-xdep.c (aixcoff_relocate_symtab): Convert from misc function vector use to minimal symbol table use. * solib.c: Add prototypes for local functions. * solib.c (solib_add_common_symbols, locate_base): Convert from misc function vector use to minimal symbol table use. * solib.c (EXFUN/DEFUN): Remove all usages, convert to PARAMS. * solib.c (find_solib, shared_library_command): Make static * solib.c (read_memory, write_memory usages): Cast args. * solib.c (special_symbol_handling): Add function * source.c: Add prototypes for local functions. * source.c (select_source_symtab): Convert to scan objfiles. * source.c (open_source_file): Make static. * source.c (xrealloc usages): Cast args. * source.c (source_line_charpos): ifdef out, unused. * source.c (get_filename_and_charpos): Make static. * stack.c: Add prototypes for local functions. * stack.c (print_frame_info, frame_info): Convert from misc function vector use to minimal symbol table use. * symfile.c: Add prototypes for local functions. * symfile.c (compare_symbols): Make args const PTR's. * symfile.c (compare_psymbols, sort_pst_symbols) add. * symfile.c (sort_all_symtab_syms): Scan objfile list. * symfile.c (obsavestring): Add objfile parameter. * symfile.c (init_misc_bunches, prim_record_misc_function, compare_misc_functions, discard_misc_bunches, condense_misc_bunches, sort_misc_function_vector, compact_misc_function_vector): Remove * symfile.c (symbol_file_add_digested): Add function. * symfile.c (symbol_file_add): Returns struct objfile *. * symfile.c (symbol_file_command): Modify for state file use. * symfile.c (symfile_open): Add parameter "dumpable". * symfile.c (allocate_objfile, free_objfile): Moved to objfiles.c * symfile.c (load_command, add_symbol_file_command): Make static. * symfile.c (fill_in_vptr_fieldno): Moved to gdbtypes.c * symfile.c (rindex usages): Converted to strrchr. * symfile.c (allocate_psymtab): New * symfile.c (free_named_symtabs): Ifdef out code that needs to be converted to minimal symbol table usage, but no obvious conversion. * symfile.c (free_all_symtabs): Remove. * symfile.c (_initialize_symfile): Use per-objfile info. * symfile.h: Rework the objfile structure to add per-objfile data objects (psymbol_obstack, symbol_obstack, type_obstack, global_psymbols, static_psymbols, msymbols, minimal_symbol_count, fundamental_types, malloc, realloc, free, xmalloc, xrealloc, etc). Add prototypes to function declarations. * symm-tdep.c (symmetry_extract_return_value): Convert from misc function vector usage to minimal symbol table usage. * symmisc.c (DEV_TTY): Define if not defined. * symmisc.c: Add local function prototypes. * symmisc.c (dump_objfile, dump_msymbols, dump-symtab, print_syms, printpsyms_command, print_objfiles, print_objfiles_command): Rework to use iterate_over_* * symtab.c: Add prototypes for local functions. * symtab.c (lookup_symtab_1): Convert to look through objfiles. * symtab.c (lookup_partial_symtab): Scan through objfiles. * symtab.c (lookup_primitive_typename, lookup_typename, lookup_ unsigned_typename, lookup_struct, lookup_union, lookup_enum, lookup_template_type, lookup_struct_elt_type, lookup_pointer_type, lookup_reference_type, lookup_member_type, allocate_stub_method, check_stub_method, create_array_type, smash_to_member_type,): Moved to gdbtypes.c * symtab.c (lookup_symbol): Some args are const. * symtab.h: All type related defs and structs moved to gdbtypes.h * symtab.h: Convert decls to prototypes. * target.c (noprocess): Make static. * target.h: Change decl's to prototypes. * tm-sunos.h: (CLEAR_SOLIB, SOLIB_ADD, SOLIB_CREATE_INFERIOR_HOOK, DISABLE_UNSETTABLE_BREAK) Moved to solib.h. * utils.c (_initialize_utils): Use correct member of function union. * valarith.c: include gdbtypes.h * valops.c: include gdbtypes.h, add prototypes for local functions. * valops.c (value_push, value_arg_push, find_function_addr): Make static. * valops.c (value_string): Convert from misc function vector use to minimal symbol table use. * valops.c (check_field_in): Make arg const. * valprint.c: Add prototypes for local functions. * valprint.c (print_string): Make static * valprint.c (value_print, val_print_fields, val_print): Make arg int. * values.c: Add prototypes for local functions. * values.c (value_headof): Convert from misc function vector to minimal symbol table. * xcoffexec.c: Add prototypes for local functions. * xcoffexec.c (exec_close, file_command, add_to_section_table): Make static. * xcoffexec.c (relocate_minimal_symbol): Add. * xcoffread.c (patch_block_stabs): Moved to buildsyms.c. * xcoffread.c: Add prototypes for local functions. * xcoffread.c (sort_syms): Convert to scan objfiles. * xcoffread.c (read_xcoff_symtab): Make static. * xcoffread.c (various): Replace references to builtin types with calls to lookup_fundamental_type. Replace references to symbol_obstack and psymbol_obstack with pointers to the per-objfile copies. * xcoffread.c (dump_linetable, dump_type, dump_symbol, dump_namespace, dump_block, dump_blockvector, dump_last_symtab, dump_symtabs): Make static. * xcoffread.c (init_stringtab): Add objfile parameter. * gdbtypes.c: New file * minsyms.c: New file * mmap-alloc.c: New file * mmap-sbrk.c: New file * objfiles.c: New file * state.c: New file * state.h: New file Fri Feb 21 17:29:54 1992 John Gilmore (gnu at cygnus.com) * Check in Fred Fish's changes in these modules. Fred will make ChangeLog entries for all of them. Update VERSION to 4.4.2. Thu Feb 20 18:10:17 1992 Fred Fish (fnf at cygnus.com) * tm-sparc.h, tm-sysv4.h, solib.h: Move shared lib definitions into solib.h. * sparc-pinsn.c, sparc-tdep.c, standalonec, sun3-xdep.c, sun386-xdep.c, symm-xdep.c, target.c, ultra3-xdep.c, utils.c, value.h: Prototypes for static functions; lint. * gdbtypes.h: Empty file to ease transition. Thu Feb 20 16:43:13 1992 Fred Fish (fnf at cygnus.com) * environ.h, expression.h, frame.h, gdbcmd.h, gdbcore.h, inferior.h, language.h, signame.h, target.h, terminal.h, tm-68k.h, tm-i386v.h, tm-sparc.h, tm-sun386.h, tm-symmetry.h, xm-i386v.h, xm-sparc.h: Prototypes for all external functions. Lint. * core.c, exec.c, infrun.c, inftarg.c, language.c, remote.c, signame.c, sparc-xdep.c: Prototypes for all static functions. Lint. * core.c, eval.c, exec.c, inftarg.c, remote-adapt.c, remote-eb.c, remote-hms.c, remote-mm.c, remote-nindy.c, remote-vx.c, remote.c, target.c, target.h, valarith.c, valops.c, value.h, xcoffexec.c: Remove to_call_function and target_call_function, since it always calls the same thing (call_function_by_hand). * core.c, exec.c, solib.c: Rename target_ops sections => to_sections, etc. * infcmd.c, inflow.c, infptrace.c, infrun.c, main.c, target.c, target.h: target_kill takes no args. * language.c (language_info): Scaffolding to allow briefer messages when the current language changes. FIXME. * xm-amix.h, xm-i386v4.h, xm-stratus.h: Define NORETURN to avoid complaints about volatile functions. * xm-sysv4.h (HAVE_MMAP): Define. Thu Feb 20 09:04:18 1992 Fred Fish (fnf at cygnus.com) * defs.h: Include ansidecl.h and PARAMS macro. Use PARAMS to make prototypes for all functions declared here. * cplus-dem.c: Avoid declaring xmalloc and xrealloc. * c-exp.y: Rename SIGNED, OR, and AND to avoid conflict. * environ.c: Include before defs.h. Minor cleanup. * ieee-float.h: Use PARAMS for prototypes; make some params const. * ieee-float.c, valarith.c: Include . Lint. b*=>mem*. * m2-exp.y: Remove unused CONST; Rename OR and AND. * utils.c: Avoid declaring malloc and realloc. Lint. (request_quit): Accept signal-number parameter. Mon Feb 17 07:13:27 1992 Fred Fish (fnf at cygnus.com) * dwarfread.c (process_dies): Add case to handle TAG_pointer_type DIE's. Add new function read_tag_pointer_type() to read them. * dwarfread.c (dwarf_read_array_type, read_subroutine_type): When creating a new user defined type, check to see if a partial type already exists, and if so, bash it to fit. Fri Feb 14 19:00:17 1992 John Gilmore (gnu at cygnus.com) * coffread.c (decode_base_type): Pass long, not union. Fix by Eric Valette, ev@chorus.fr. Thu Feb 13 17:14:28 1992 Fred Fish (fnf at cygnus.com) * elfread.c (elf_symtab_read): Fix code to correctly track changes in bfd for absolute symbols. Thu Feb 13 12:43:29 1992 Stu Grossman (grossman at cygnus.com) * xm-vaxbsd.h: Close off comment. Thu Feb 13 07:45:19 1992 Fred Fish (fnf at cygnus.com) * xm-sysv4.h: Define NEED_POSIX_SETPGID. Fri Feb 7 11:51:12 1992 Per Bothner (bothner at cygnus.com) * mips-tdep.c (mips_print_registers): Print correct register number for double pseudo-registers. Fri Feb 7 07:56:05 1992 John Gilmore (gnu at cygnus.com) * buildsym.c (read_struct_type): Avoid double-bump of parse ptr in the op$::OPERATOR. case. From Steven McCanne, . * exec.c (set_section_name): Pass arg to exec_files_info; only call it if interactive. From Francis Kauth . Thu Feb 6 17:41:32 1992 John Gilmore (gnu at cygnus.com) * main.c (print_gdb_version): Copyright msg: only this year. (cd_command): Avoid changing current_directory on error. Thu Feb 6 15:14:01 1992 Per Bothner (bothner at cygnus.com) * mipsread.c (parse_partial_symbols): Handle dependencies between partial symbol tables (when not doing stabs-in-ecoff). (This used to be handled by parse_fdr, but parse_fdr was incompatible with handling stabs-in-ecoff, so the code was re-written to not use parse_fdr. Unfortunately, the logic to handle dependencies was overlooked.) Thu Feb 6 11:51:39 1992 Steve Chamberlain (sac at rtl.cygnus.com) * coffread.c (read_enum_type): Use the size of a target int when describing enum. * defs.h: added new #define for TARGET_PTR_BIT, defaults to size of target int. * h8300-tdep.c, remote-hms.c, tm-h8300.h: too many changes to count * symtab.c (lookup_reference_type, lookup_ptr_type): use TARGET_PTR_BIT to determine size of a pointer * values.c (unpack_long): when unpacking a REF or a PTR don't assume the size of the type. Wed Feb 5 22:29:59 1992 John Gilmore (gnu at cygnus.com) * mipsread.c (parse_symbol): Avoid clobbering enum pointer when looking at its members. Improve guess between struct and union, only assuming union if multiple members have offsets of zero. Tue Feb 4 18:05:44 1992 Per Bothner (bothner at cygnus.com) * mipsread.c: Use (FP0_REGNUM-32) instead of magic number 6. (This is just for clarity - and one day permitting us to change FP0_REGNUM from 38 to 32, which would make more sense.) * tm-mips.h: Added STAB_REG_TO_REGNUM macro, so that register numbers in stabs-in-ecoff get handled correctly. Sat Feb 1 04:45:10 1992 Stu Grossman (grossman at cygnus.com) * xm-vax.h, xm-vaxult.h, xm-vaxbsd.h, config/mh-vaxult, config/mh-vaxbsd, configure.in: Split up config stuff for Vaxen into BSD and Ultrix. Sat Feb 1 04:39:41 1992 John Gilmore (gnu at cygnus.com) * dbxread.c (dbx_symfile_init): Call malloc, not xmalloc. Sat Feb 1 04:15:41 1992 Stu Grossman (grossman at cygnus.com) * Makefile.in: Increment version to 4.4.1. * main.c (print_gdb_version): Update copyright notice. Sat Feb 1 01:43:11 1992 Per Bothner (bothner at cygnus.com) * mipsread.c: Prepend "struct " to the names of structure types, and similarly for enums and unions. (This used to be done, but got lost in the re-write to "guess" the difference between enum/struct/union.) Also, guess that a tag is an enum if the first member has type btNil. Fri Jan 31 21:45:51 1992 Stu Grossman (grossman at cygnus.com) * xm-vax.h: #ifndef ultrix around #include of endian.h and limits.h (sigh). Fri Jan 31 00:05:01 1992 John Gilmore (gnu at cygnus.com) * Projects: Patching executables is done. * Makefile.in (VERSION): Roll to gdb-4.4. * README, WHATS.NEW: Update for gdb-4.4. * symfile.c (reread_symbols): Whenever we reread one object file's symbols, we must restart the scan, because the object_files chain has been permuted. * exec.c (exec_files_info): Split out into print_section_info. Print BFD filename of each section if it's not the default one. * core.c (core_files_info): Call print_section_info. * xm-vax.h: Include a few system header files whose definitions must precede defs.h. * language.c, language.h: Make some things const. * expression.h, main.c: const spreads like ooze. * mem-break.c (break_insn, break_insn_size): Use unsigned chars, since BREAKPOINT values can be >0x80. Thu Jan 30 17:21:14 1992 Stu Grossman (grossman at cygnus.com) * infrun.c, xm-i386sco.h: SCO needs to use setpgid(). Thu Jan 30 01:04:23 1992 John Gilmore (gnu at cygnus.com) * sparc-pinsn.c: Remove kludge for preferring architectures. Remove #ifdef's for SORT_NEEDED. We need to sort the table, now and forever. Add `add' instruction to the set that get checked for a preceding `sethi' in order to print an absolute address. Corresponding changes in ../include/opcode/sparc.h needed to eliminate garbage instructions. Wed Jan 29 19:24:34 1992 Per Bothner (bothner at cygnus.com) * mipsread.c (parse_partial_symbols): Make sure partial symbols are created for external symbols (as used to be the case). This is a bit of a pain with the mips-coff. It uses a table which points to all of the external symbols belonging to a particular FDR or psymtab. Once we've generated this table, we might as well save it, and then use it in psymtab_to_symtab_1 to find the symbols to pass to parse_external(). * symfile.c, symfile.c: New function start_psymtab_common to share the common parts of allocating a new psymtab for dbxread, mipsread (and later dwarfread). Its code was pulled out from start_psymtab in dbxread.c. * dbxread.c (start_psymtab): Use start_psymtab_common(). * valprint.c (val_print): If there is an error when trying to print a string, check to see if there really is a problem by reading just one character. If that works, assume things are ok. Wed Jan 29 18:58:43 1992 Stu Grossman (grossman at cygnus.com) * sparc-pinsn.c (compare_opcodes): Make it prefer v6, v7, cypress, v8 mnemonics in that order. Tue Jan 28 17:32:13 1992 Per Bothner (bothner at cygnus.com) * sparc-pinsn.c: Put the qsort() back in. Mon Jan 27 18:51:03 1992 John Gilmore (gnu at cygnus.com) * findvar.c (read_register, write_register): Handle machines where REGISTER_TYPE is not the same size as "int". Handle debug symbols in dynamically loaded (relocated) code: * dbxread.c (read_ofile_symtab): Fix up N_CATCH better. Pass offset to process_one_symbol. (process_one_symbol): Take new offset parameter. Add it into appropriate symbol types to relocate symbols to loaded addresses. Handle all possible symbol types, and complain() about types that we don't expect to see. * mipsread.c (psymtab_to_symtab_1): Pass offset of zero to process_one_symbol (FIXME, should pass real offset). Misc bugfixes: * breakpoint.c (resolve_sal_pc): Split out code to resolve a sal's PC value. (set_breakpoint, break_command_1, until_break_command, catch_command_1, breakpoint_re_set_one): Use it. * symtab.h (resolve_sal_pc): Declare. * infcmd.c (jump_command): Use resolve_sal_pc. * source.c (list_command): Shorten "FILE, line N" to "FILE:N". * putenv.c (putenv): Avoid unportably casting pointers to unsigneds. * c-exp.y (yylex): `this' and `template' are only tokens in C++. * xm-convex.h, xm-hp300bsd.h, xm-isi.h, xm-merlin.h, xm-news.h, xm-np1.h, xm-pn.h, xm-pyr.h, xm-rtbsd.h, xm-symmetry.h, xm-umax.h: Remove MISSING_VPRINTF declaration, and superfluous "kgdb" defines. Mon Jan 27 15:46:21 1992 Stu Grossman (grossman at cygnus.com) * dbxread.c (process_one_symbol): Make a first cut at handling symbol tables generated by Sun's acc. (#ifdef'd out, FIXME.) * symtab.c (find_pc_line): Fix stepping into and out of #included files. Mon Jan 27 13:00:55 1992 Stu Grossman (grossman at cygnus.com) * Makefile.in (OPCODES): Remove OPCODES defs and refs. There is no longer any need to copy ../include/opcode/* into gdb. Mon Jan 27 12:30:38 1992 John Gilmore (gnu at cygnus.com) * ChangeLog, ChangeLog-9091: Split ChangeLog at 1992. Sun Jan 26 19:05:40 1992 Per Bothner (bothner at cygnus.com) * valprint.c (type_print_base, type_print_method_args): Print C++ constructor methods without bogus "return type." Sat Jan 25 15:57:59 1992 Fred Fish (fnf at cygnus.com) * infptrace.c (child_xfer_memory): Parameter "target" should be a pointer to a structure, not the entire structure. Fri Jan 24 01:30:27 1992 Fred Fish (fnf at cygnus.com) * depend: Convert the couple of references to ansidecl.h that used the local gdb version to use the ../include version. Thu Jan 23 22:24:43 1992 Fred Fish (fnf at cygnus.com) * procfs.c (child_xfer_memory): Takes pointer to a struct, not entire struct. (inferior_proc_init): Fix non-ANSI version of args. (attach): Call print_sys_errmsg with correct number of args. (mappingflags): Make static, does not need to be global. * i386-tdep.c (i386_frame_num_args): Takes a pointer to a struct not the entire struct itself. * valops.c (value_assign): Cast some args to modify_field() and {read,write}_register_bytes() correctly. * ansidecl.h: Removed, is duplicate of ../include/ansidecl.h * Makefile.in (MALLOCSRC): Removed reference to removed local copy of ansidecl.h. * dwarfread.c (list_in_scope): Needs an initial value, use file scope. Mon Jan 20 19:06:28 1992 Stu Grossman (grossman at cygnus.com) * main.c (main): Make option_index local to keep new getopt happy. main.c, solib.c, Makefile.in: Update copyright notices. Mon Jan 20 08:54:00 1992 Michael Tiemann (tiemann at cygnus.com) * cplus-dem.c (cplus_demangle): Correctly demangle destructors. Sat Jan 18 17:17:45 1992 Stu Grossman (grossman at cygnus.com) * Makefile.in (HFILES): Add partial-stab.h. Sat Jan 18 16:45:01 1992 Fred Fish (fnf at cygnus.com) * config/mh-stratus, config/mt-stratus, tm-stratus.h, xm-stratus.h: New files for stratus. Not complete enough to actually build on the Stratus machine; that awaits copyright assignment for i860 changes. * Makefile.in (USER_CFLAGS): Add macro specifically reserved for getting custom flags into CFLAGS when doing makes. * configure.in: Add config information for stratus. Thu Jan 16 00:51:46 1992 Fred Fish (fnf at cygnus.com) * dbxread.c (process_one_symbol): Pass address of structure to complain(), rather than the whole structure. Wed Jan 15 09:56:16 1992 Fred Fish (fnf at cygnus.com) * solib.c (solib_add_common_symbols): Only compile in when not using SVR4 style shared libraries. Tue Jan 14 22:34:00 1992 Fred Fish (fnf at cygnus.com) * dwarfread.c (locval): Add offreg flag to indicate location values that are computed off a base register. * dwarfread.c (new_symbol): Rework TAG_global_variable and TAG_local_variable cases to account for static variables within function scopes. Tue Jan 14 12:28:52 1992 Stu Grossman (grossman at cygnus.com) * inflow.c: remove #include . Not necessary, and doesn't exist on some systems. * infrun.c (wait_for_inferior!!!!): Prevent gdb from hanging when nexting over recursive function calls. * target.c (target_read_string): Create this routine to read null terminated strings from the target. It deals with running off the end of memory elegantly as well. solib.c (find_solib): Use target_read_string() to avoid problems with running off the end of memory. * inflow.c (child_terminal_info): #ifdef TIOCPGRP around lines that reference pgrp_inferior. Mon Jan 13 14:57:11 1992 Per Bothner (bothner at cygnus.com) * tm-mips.h: Removed BLOCK_ADDRESS_ABSOLUTE, now that mips-tfile has been hacked to act more "traditionally." * dbxread.c: Fixed typo in comment. Sun Jan 12 13:08:36 1992 Per Bothner (bothner at cygnus.com) * mips-tdep.c (mips_skip_prologue): Add some number of 'sw' instructions before 'addiu' adjusts the stack. Fri Jan 10 13:47:06 1992 Fred Fish (fnf at cygnus.com) * dwarfread.c (start_symtab, end_symtab, scopecount, openscope, freescope, buildblock closescope, record_line, add_symbol_to_list, gatherblocks, make_blockvector): Extensive changes to switch to generic symbol table building code in buildsym.c. Remove scope tree structures and functions, symbol table building functions, and lots of other small changes. * dwarfread.c: Add new macros GCC_PRODUCER and STREQN. Remove GCC_COMPILED_FLAG_SYMBOL and GCC2_COMPILED_FLAG_SYMBOL. Tue Jan 7 13:09:57 1992 Stu Grossman (grossman at cygnus.com) * buildsym.c (cleanup_undefined_types): Add support for enums. This fixes the 'GDB internal error. cleanup_undefined_types with bad type' problem. Sun Jan 5 09:47:50 1992 Stu Grossman (grossman at cygnus.com) * dbxread.c: detect gcc2 compilations. Thu Jan 2 15:07:41 1992 John Gilmore (gnu at cygnus.com) * sparc-pinsn.c: Rename bitfields that overlap with macro names in ../include/opcode/sparc.h. Wed Jan 1 04:29:00 1992 Fred Fish (fnf at cygnus.com) * Makefile.in: Change tm-svr4.h to tm-sysv4.h. Change xm-svr4.h to xm-sysv4.h. Split OPCODE_DIR into OPCODE_DIR1 and OPCODE_DIR2 to reflect actual locations of opcode files, so TAGS target will be buildable. * i386-tdep.c: Change an erroneous 'm68k' reference to 'i386'. * i386-tdep.c (supply_fpregset, fill_fpregset): Remove m68k code. * m68k-tdep.c (supply_fpregset, fill_fpregset): Fix array dereferencing to access the correct elements. * valops.c (value_addr): Declare return type of external func value_copy(). * xcoffread.c: Undefine next_symbol_text before redefining it. For older changes see ChangeLog-9091 Local Variables: mode: indented-text left-margin: 8 fill-column: 74 version-control: never End: