Commit graph

3433 commits

Author SHA1 Message Date
Fred Fish
3d9f68c05e * gdbtk.c (get_register): Support for printing raw formats.
* gdbtk.tcl: Add hint for using debug_interface.
	(center_window, add_breakpoint_frame, delete_breakpoint_frame):
	Enclose arg in braces for consistency.
	(create_registers_window, populate_reg_window, update_registers):
	Major rewrite to support displaying multiple formats in the register window.
	(init_reg_info): New function.
	(recompute_reg_display_list):  Reset reg_display_list, start
	register display lines at line 2.
PR 9457
1996-06-21 17:03:22 +00:00
David Edelsohn
1a7b4b7ced * configure.in: Revise sol-thread.o test.
* configure: Regenerated.

	* source.c (find_source_lines): Reassign size to result of read.
1996-06-20 21:21:27 +00:00
Fred Fish
3f8eefba65 * gdbtk.tcl (gdbtk_tcl_readline_begin): Handle backspace to
avoid backing up over prompt.  At every input, make sure insert
	point is at least after command start, handle control-u to delete
	current input line.
	(tclsh): Handle backspace to avoid backing up over prompt.  Handle
	control-u to delete current input line.
1996-06-20 15:50:37 +00:00
Geoffrey Noer
b613bfbf2c Changes to gdbtk configury so cygwin32 hosts (in addition to go32)
are configured without gdbtk
1996-06-20 00:29:38 +00:00
Jeff Law
5499f9a17c * somsolib.c (som_solib_create_inferior_hook): Handle tracking
of shl_load calls for hpux10.
Just something that needed fixing.
1996-06-16 22:22:51 +00:00
Fred Fish
9d11165670 From Michael Snyder <Michael_Snyder@next.com>:
* bcache.c (print_bcache_statistics): Avoid divide-by-zero
	exception if one or more objfile has no symbols, such as when
	a dynamic library has been stripped.
1996-06-12 03:10:51 +00:00
Fred Fish
f023ce5c80 * config/sparc/{xm-sun4sol2.h,xm-sun4os4.h} (MMAP_BASE_ADDRESS):
Change from 0xE0000000 to 0xC0000000.
PR 9792
1996-06-11 00:35:19 +00:00
Jackie Smith Cashion
911026aa8b Wed Jun 5 01:52:57 1996 James G. Smith <jsmith@cygnus.co.uk>
* configure.in (configdirs): Force 4100 builds to use 4300 GDB
  	target.
	* configure: Rebuild.

	* config/mips/vr4300el.mt (SIM_OBS): Include simulator in
 	little-endian builds.
1996-06-05 15:11:10 +00:00
Jeff Law
f4c952e475 * inftarg.c (child_thread_alive): Protect declaration with
#ifndef CHILD_THREAD_ALIVE.
Fixes net buglet.
1996-06-03 17:59:03 +00:00
Jeff Law
093c1a2f74 * source.c (find_source_lines): Check the time on the symtab's bfd if
it exists, else check the time on the exec_bfd.
Fixes net buglet reported by Michael Snyder @ NeXT.
1996-06-03 17:49:28 +00:00
Mark Alexander
f6decc18d9 * dsrec.c (make_srec): Fix calculation of address size
to allow addresses less than 0x100.
1996-05-30 16:58:48 +00:00
Wilfried Moser
3db21ca5cd * ch-exp.c (ch_lex): In case of LOC_TYPEDEF call calculate_array_length. 1996-05-30 11:26:24 +00:00
Geoffrey Noer
3308a10725 Removed EINVAL reference in remote-mips.c, and put a hardcoded 22 in its
place which reflects what the boards return.
1996-05-28 23:20:12 +00:00
Tom Tromey
e44d14910c * configure: Regenerated.
* aclocal.m4 (CY_AC_PATH_TCLH): Don't use AC_TRY_RUN.
        (CY_AC_PATH_TKH): Don't use AC_TRY_RUN.
1996-05-28 20:34:21 +00:00
Fred Fish
9391c9977e Changes from: David Mosberger-Tang <davidm@azstarnet.com>
* NEWS:  Add Alpha Linux as a new native configuration.

	* mdebugread.c (parse_symbol): When we find a malloc() symbol with
 	return type VOID, assume no debugging info is available for that
 	object file and patch the return value into VOID *.  Otherwise,
	operations requiring an implicit call to malloc() will fail.

	* infrun.c (wait_for_inferior): The criterion to detect entering a
 	sigtramp handler is now: (a) the current pc is inside a sigtramp
 	handler, (b) the previous pc is not in a sigtramp handler, and (c)
 	the current stack pointer is "inner" than the old one.  Condition
	(c) is new to avoid mistaking a return from a signal handler into
 	sigtramp as a new sigtramp invocation.

	* dcache.c (struct dcache_block): Declare addr as CORE_ADDR.  An
 	int may not be big enough to hold an address.
	(dcache_hit): Ditto.
	(dcache_peek_byte): Fix indentation.

	* configure.in (alpha-*-linux*): Add target.
	* configure: Rebuild

	* config/alpha/tm-alpha.h (PROC_DESC_IS_DYN_SIGTRAMP): New macro.
	(SET_PROC_DESC_IS_DYN_SIGTRAMP): Ditto.
	(DYNAMIC_SIGTRAMP_OFFSET): Ditto.
	(SIGCONTEXT_ADDR): Ditto.
	(FRAME_PAST_SIGTRAMP_FRAME): Ditto.

	* config/alpha/alpha-linux.mh: New file.
	* config/alpha/alpha-linux.mt: Ditto.
	* config/alpha/nm-linux.h: Ditto.
	* config/alpha/tm-alphalinux.h: Ditto.
	* config/alpha/xm-alphalinux.h: Ditto.
	* config/alpha/xm-alphaosf.h: Renamed from xm-alpha.h.
	* config/alpha/alpha-osf1.mh (XM_FILE): Change from xm-alpha.h to
 	xm-alphaosf.h.
	* config/alpha/alpha-osf2.mh: Ditto.

	* blockframe.c (find_pc_partial_function): Pass PC to
 	SIGTRAMP_START and SIGTRAMP_END macros for the benefit of systems
 	that detect sigtramp code via designated code sequences (as is the
 	case for Linux/Alpha, for example).

	* config/i386/tm-i386bsd.h: Change SIGTRAMP_START and SIGTRAMP_END
	to ignore new PC argument.
	* config/m68k/tm-hp300bsd.h: Ditto.
	* config/vax/tm-vax.h: Ditto.

	* alpha-tdep.c (alpha_linux_sigtramp_offset): New function.
	(alpha_osf_skip_sigtramp_frame): Ditto.
	(push_sigtramp_desc): Ditto.
	(alpha_find_saved_regs): Use SIGCONTEXT_ADDR macro to extract
 	sigcontext address from frame.
	(alpha_saved_pc_after_call): When in sigtramp, use
 	alpha_frame_saved_pc() instead of read-register().
	(after_prologue): When inside a dynamically generated sigtramp
 	function, there is no prologue, so return address of first
 	instruction.
	(alpha_in_prologue): Fix typo in comment.
	(find_proc_desc): Use macro DYNAMIC_SIGTRAMP_OFFSET to determine
 	whether we're inside a dynamicaly generated sigtramp function.  If
 	so, create and push and appropriate procedure descriptor.
	(alpha_frame_chain): Use macro FRAME_PAST_SIGTRAMP_FRAME to obtain
 	the frame past a sigtramp frame (if the current frame is indeed a
 	sigtramp function).
	(init_extra_frame_info): Don't read next frame register off of
 	stack-pointer when inside a dynamiccaly generated sigtramp.
	(alpha_pop_frame): Also unlink and destroy procedure descriptors
 	created for dynamically generated sigtramp functions.

	* alpha-nat.c: When compiling under Linux, include <asm/reg.h> and
 	<alpha/ptrace.h> instead of <machine/reg.h>
1996-05-26 21:41:40 +00:00
Jeff Law
31778db0db * h8300-tdep.c (IS_PUSH): Refine.
(IS_MOVE_FP, IS_MOV_SP_FP): Accept H8/300H varaints.
        (IS_SUB4_SP, IS_SUBL_SP): New macros.
        (h8300_skip_prologue): Handle H8/300H prologue code sequences.
        (examine_prologue): Handle addresses from 0x010000 to 0xffffff
        when in H8/300H mode.  Get the return pointer's address correctly
        for the H8/300H.  Handle H8/300H prolouge code sequences.
Avoiding major breakage on the H8/300H, and on the eval board.  Jeez, did
anyone even try to debug H8/300H code with gdb in the past?!?
1996-05-23 21:35:09 +00:00
Jeff Law
52f74d48c9 * symfile.c (generic_load): Print the starting address
of the file just loaded.
For informational purposes.
1996-05-23 21:15:15 +00:00
Stan Shebs
e7600d8eb5 * mpw-make.sed: Edit @THREAD_DB_OBS@ out of makefile. 1996-05-23 19:12:45 +00:00
Mark Alexander
c92f31c6e5 * dsrec.c (load_srec): Add WAITACK parameter, for machines
like EST visionICE that send back an ACK after each S-record.
	* monitor.c (monitor_wait_srec_ack): New function.
	(monitor_load): Pass monitor_wait_srec_ack to load_srec
	if the monitor's MO_SREC_ACK flag is set.
	* monitor.h: Define MO_SREC_ACK flag.
	* remote-est.c (est_cmds): Add MO_SREC_ACK flag.
	* sh3-rom.c (sh3_load): Accomodate change in load_srec prototype.
	* srec.h: Add WAITACK parameter to load_srec prototype.
1996-05-21 06:09:23 +00:00
Rob Savoye
6a4bfd8350 * config/sparc/sparclite.mt: Add the sparc simulator. 1996-05-20 03:25:57 +00:00
Fred Fish
41756e56ee * defs.h (read_command_lines, query_hook): Update prototypes.
(readline_begin_hook, readline_hook, readline_end_hook): Declare.
	* breakpoint.c (commands_command): Build message in temporary buffer
	and pass that, as well as tty control flag, to read_command_lines.
	* top.c (readline_begin_hook, readline_hook, readline_end_hook):
	Define here.
	(command_loop): Check for non-NULL instream before looping.
	(command_line_input): Use readline_hook when appropriate, to get
	user input from a GUI window.
	(read_next_line): Also build prompt if getting user input from a GUI.
	(recurse_read_control_structure): Fix typo in comment.
	(read_command_lines): Use passed in prompt and tty flag to decide how
	to build message.  Use readline_begin_hook when appropriate, to set
	up a GUI interaction window.  Just return head, whether NULL or not,
	after using readline_end_hook to complete GUI interaction.
	(define_command, document_command): Build message in a temporary
	buffer and pass it to read_command_lines, along with tty flag.
	* gdbtk.c (gdbtk_readline_begin, gdbtk_readline, gdbtk_readline_end):
	New functions.
	(tk_command_loop): Set instream to NULL to enable Tk user interaction.
	(gdbtk_init): Set readline_begin_hook, readline_hook,
	and readline_end_hook.
	* gdbtk.tcl (gdbtk_tcl_readline_begin, gdbtk_tcl_readline,
	gdbtk_tcl_readline_end): New functions.
	(tclsh): Pack scroll bar on right side of window, not left.
PR 9385
1996-05-20 02:05:55 +00:00
Peter Schauer
f0c56658fa * blockframe.c (frameless_look_for_prologue):
Add FUNCTION_START_OFFSET only if func_start is non-zero.
	* minsyms.c (lookup_minimal_symbol_by_pc):  Return NULL if
	pc is not in a known section.
	* stack.c (print_frame_info):  Remove check for fi->pc in known
	section, now handled by lookup_minimal_symbol_by_pc.
1996-05-18 09:53:12 +00:00
Fred Fish
81ae689aa3 * gdbtk.tcl (create_command_window): Change a misspelled "get"
to the intended "cget".
	(delete_line): Fix so it deletes the current line at the
	insertion cursor.
1996-05-18 00:24:41 +00:00
Stan Shebs
6a4547c0d7 * sh-stub.c: New file, was config/sh/stub.c. 1996-05-17 20:41:56 +00:00
Fred Fish
5bac2b50e2 * gdbtk.tcl (gdb_prompt): Set this early on.
(create_command_window): Use gdb_prompt rather than "(gdb) ".
	(gdbtk_tcl_preloop): Proc executed just prior to Tk main loop.
	(tclsh): If an evaluation window already exists, just bring it
	to the front instead of trying to create another.
	* gdbtk.c (tk_command_loop): New function.
	(gdbtk_init): Call tk_command_loop rather than Tk_MainLoop.
1996-05-17 02:36:13 +00:00
Fred Fish
954a4a2ab1 * gdbtk.tcl (evaluate_tcl_command, tclsh): New functions that
implement a tcl evaluation window for gdbtk maintainers to use.
1996-05-16 23:39:15 +00:00
Tom Tromey
f4e769dc02 * gdbtk.tcl (files_command): Correctly insert list of files into
listbox widget.
1996-05-16 18:05:26 +00:00
Tom Tromey
76e641bdd5 * gdbtk.tcl (files_command): listbox command no longer accepts
-geometry.
1996-05-16 17:47:16 +00:00
Jeff Law
ecebd69348 * top.c (read_next_line): Fix thinkos. From Don Seeley.
Net buglet.
1996-05-16 04:49:12 +00:00
Stan Shebs
b8f3d4c6b0 * gdbtk.tcl (create_command_window): If command window's buffer
is disabled, don't execute any of the key bindings.
1996-05-16 00:31:40 +00:00
Jeff Law
6bafbdfbf6 * coffread.c (coff_symtab_read): Handle C_LABEL symbols like
C_STAT symbols.
        * h8300-tdep.c (h8300_pop_frame): Reset $sp and $pc correctly.
        Flush cached frames just before exiting.
        * remote-sim.c (gdbsim_resume): Complain if the program isn't
        being run.
        * config/h8300/tm-h8300.h (BELIEVE_PCC_PROMOTION): Define.
Fix some bugs exposed by the testsuite.  HMSE.
1996-05-15 14:28:34 +00:00
Stu Grossman
9b33e492d6 * procfs.c (procfs_thread_alive procfs_stop): Make static.
* (procfs_pid_to_str):  New routine to print out thread id's in an
	intelligible manner.
	* sol-thread.c (sol_thread_fetch_registers):  Re-order manner in
	which supply_register is called to fix bug with writing writing
	individual regs.
	* config/sparc/tm-sun4sol2.h:  Define default for
	target_pid_to_str in case host lacks libthread_db.
1996-05-15 01:09:57 +00:00
Stu Grossman
47ef0da56a * Makefile.in config.in configure configure.in
config/sparc/nm-sun4sol2.h config/sparc/sun4sol2.mh
	config/sparc/tm-sun4sol2.h:  Use autoconf to config Solaris thread
	and pthread support, since pre-2.5 systems don't come with
	libthread_db.so.1.

	* procfs.c (info_proc):  Use int instead of id_t.  Old versions of
	Irix don't see to define this.
1996-05-14 07:02:56 +00:00
Fred Fish
572977a552 * gdbtk.c (tk_command): Catch case where no argument is given
since this will cause the tcl interpreter to dump core.
1996-05-14 02:11:53 +00:00
Jeff Law
24ecc17a04 * top.c (execute_control_command, case while_control): Allow
a while command to be interrupted.
Fixes net bug.
1996-05-13 23:53:54 +00:00
Stu Grossman
a50cedad0e * sol-thread.c: More cleanup, add comments.
* (sol_thread_resume):  Prevent people from trying to step
	inactive threads.
	* (sol_thread_wait sol_thread_fetch_registers
	sol_thread_store_registers):  Remove unnecessary check for
	sol_thread_active.  These routines won't get called unless threads
	are active.
1996-05-13 23:22:32 +00:00
Stan Shebs
05535e79e9 SH3-E support from Allan Tajii <atajii@hmsi.com>:
* sh-tdep.c (sh_reg_names, sh3_reg_names): Add empty names for
	float registers.
	(sh3e_reg_names): New register name array.
	(sh_processor_type_table): Add sh3e processor type.
	* config/sh/tm-sh.h (REGISTER_VIRTUAL_TYPE): Fix test.
	(REGISTER_NAMES, NUM_REGS, NUM_REALREGS, etc): Adjust for
	full set of registers.
	* remote-e7000.c (want_sh3, want_sh3_nopc): New globals.
	(e7000_fetch_registers, e7000_wait): Use them.
	* sh3-rom.c (sh3_regnames): Add float registers.
	(sh3e_cmds, sh3e_ops): New globals.
	(sh3e_open): New function.
	(_initialize_sh3_rom): Rename from _initialize_sh3, set up
	sh3e target vector.

	* gdbwin.c (reg_order) [TARGET_SH]: Update for SH3-E.
	* initfake.c: Call _initialize_sh3_rom instead of _initialize_sh3.
1996-05-13 18:34:09 +00:00
Stu Grossman
934741a174 * sol-thread.c: Cleanup. gcc -Wall fixes. Add prototypes.
Print out messages instead of codes for thread_db errors.  Make
	access macros for thread and lwp manipulation.  Make cleanups to
	fixup inferior_pid in case of errors.
1996-05-10 23:05:01 +00:00
Fred Fish
31ed312c11 * aclocal.m4: Remove unused definition of AC_C_CROSS.
* configure.in: Add powerpcle-*-solaris* host and target config
	so April 30th change does not get lost next time configure is
	rebuilt.
1996-05-10 02:06:36 +00:00
Stu Grossman
fdfa331511 * Makefile.in, breakpoint.c, corelow.c, fork-child.c, inflow.c,
infrun.c, mac-nat.c, procfs.c, remote.c, sol-thread.c, thread.c,
	win32-nat.c, config/nm-lynx.h:  Rename thread.h to gdbthread.h to
	avoid conflict with Solaris /usr/include/thread.h.
1996-05-09 21:24:20 +00:00
Rob Savoye
7574859fba * abug-rom.c: Config file for the older style ABug monitor thatg
runs on the mvme13x boards.
	* config/m68k/monitor.mt: Add abug support for m68k croos
	debugging.
1996-05-09 18:39:15 +00:00
Fred Fish
2ae2f07883 * infcmd.c (do_registers_info): Always print the raw floating
point value's bytes in big endian order, so the the leftmost bit
	is the most significant.
PR-9540
1996-05-09 04:20:43 +00:00
Fred Fish
3f37b69612 * breakpoint.c (clear_momentary_breakpoints): Remove dead code
that is referenced nowhere else.
	(set_breakpoint): Ditto.
	(do_enable_breakpoint): Created from enable_once_breakpoint
	with a couple of changes.
	(enable_breakpoint): Call do_enable_breakpoint with an appropriate
	bpdisp enum value to set disposition of breakpoint.
	(enable_once_breakpoint): Ditto.
	(enable_delete_breakpoint): Ditto.
	* breakpoint.h (clear_momentary_breakpoints): Remove prototype.
	* symtab.c (find_pc_line): Improve comments.
	* gdbtk.c: Fix a couple of misspellings.
	* xcoffread.c: Ditto.
1996-05-08 23:34:34 +00:00
Stan Shebs
37316b52ef * target.c (debug_to_xfer_memory): Insert line breaks when
dumping the memory block.
1996-05-08 01:41:13 +00:00
Stu Grossman
8fc2b4170d * fork-child.c (fork_inferior), inferior.h: init_trace_fun now
returns a possibly modified pid.
	* inftarg.c (ptrace_him):  Now returns pid;
	* m3-nat.c (m3_trace_him):  Now returns pid;
	* infcmd.c (run_command):  Minor cleanup.
	* infrun.c (wait_for_inferior):  Add another check for one_stepped
	near where we read the pc to avoid erroneously setting
	random_signal for multi-threaded support.
	* procfs.c:  Add support for Solaris LWPs.  Remove def of
	LOSING_POLL.  Many cleanups...  Several workarounds for Solaris
	lossage.  System call entry and exit are now handled by
	dynamically registered handlers.
	* (syscallname):  Don't barf when handed an unknown syscall
	number.
	* (info_proc_syscalls):  Ditto.
	* sol-thread.c:  New file.  Implements Solaris thread support.
	* symfile.c (symbol_file_add):  Add call to target_new_objfile to
	notify target-dependent code about new symbol tables.
	* (clear_symtab_users):  Call target_new_objfile to notify it of
	the removal of all symbol tables.
	* target.c (push_target):  Make sure that to_close is non-zero
	before calling it.
	* target.h (target_new_objfile):  Provide default.
	* config/alpha/nm-osf2.h:  Define LOSING_POLL because this version
	of OSF can't hack using poll with /proc.
	* config/sparc/nm-sun4sol2.h (target_new_objfile):  Define to be
	sol-thread-new-objfile.
	* config/sparc/sun4sol2.mh:  Add sol-thread.o to NATDEFFILES, and
	add libthread_db.so.1 to NAT_CLIBS.
	* config/sparc/tm-sun4sol2.h:  Define PIDGET, TIDGET, and
	target_pid_to_str.
1996-05-06 21:27:37 +00:00
Michael Meissner
8678180e14 Do not do XCOFF hoooks for ELF systems 1996-05-06 11:56:56 +00:00
Stan Shebs
9e9cf82258 * gdbtk.tcl (debug_interface): New global, use to aid debugging.
(insert_breakpoint_tag, delete_breakpoint_tag): Fix range.
	(file_popup_menu): Delete, never used.
	(listing_window_popup): Rename from listing_window_button_1,
	remove breakpoint toggling code.
	(toggle_breakpoint): New procedure.
	(create_file_win): Bind popup menu to button 2, toggle breakpoints
 	with button 1 in breakpoint area, add display of tagged areas if
 	debugging on.
1996-05-03 02:28:13 +00:00
Jeff Law
e51481f967 * From Peter Schauer:
* breakpoint.h (enum bpdisp):  Add del_at_next_stop.
        * breakpoint.c (insert_breakpoints, watchpoint_check,
        bpstat_stop_status):  Avoid bad references to memory freed via
        delete_breakpoint on watchpoints going out of scope.
        Do not delete these watchpoints, disable them and change their
        disposition to del_at_next_stop instead.
        (breakpoint_auto_delete):  Delete all breakpoints whose disposition
        is del_at_next_stop.
        (breakpoint_init_inferior):  Use switch to avoid reference to
        already deleted breakpoint.
Fixes dangling pointer problems with watchpoints.
1996-05-02 18:43:28 +00:00
Fred Fish
062cb0d30d * Makefile.in (rs6000-nat.o): Dependant on xcoffsolib.h.
* config/rs6000/rs6000.mh (NATDEPFILES): Move xcoffread.o ...
	* config/rs6000/rs6000.mt (TDEPFILES): ... to here
	* xcoffsolib.c (xcoff_relocate_symtab_hook): Define and initialize.
	(solib_info): Call xcoff_relocate_symtab via the hook.
	(sharedlibrary_command): Ditto.
	* xcoffread.c: Remove all FAKING_RS6000 comments and defines.
	(xcoff_add_toc_to_loadinfo_hook): Define and initialize here.
	(xcoff_init_loadinfo_hook): Define and initialize here.
	(scan_xcoff_symtab): Call xcoff_add_toc_to_loadinfo via the hook.
	(xcoff_initial_scan): Call xcoff_init_loadinfo via the hook.
	* xcoffsolib.h (xcoff_relocate_symtab_hook): Declare extern func.
	* rs6000-tdep.c (_initialize_rs6000_tdep): Add initializations
	of xcoff_add_toc_to_loadinfo_hook and xcoff_init_loadinfo_hook.
	* rs6000-nat.c (_initialize_core_rs6000): Add initialization
	of xcoff_relocate_symtab_hook.
1996-05-02 01:32:41 +00:00
Michael Meissner
fe8d28cfc1 Add bieginning of Solaris/PowerPC support 1996-04-30 17:23:41 +00:00