diff options
author | Jim Kingdon <jkingdon@engr.sgi.com> | 1994-01-04 21:53:53 +0000 |
---|---|---|
committer | Jim Kingdon <jkingdon@engr.sgi.com> | 1994-01-04 21:53:53 +0000 |
commit | 67ac97591175936a06cc1ef1df228746edcdb545 (patch) | |
tree | eb6068254e2992c5aa83741da1e59bb1af9562f4 /gdb/hppa-tdep.c | |
parent | e14316e7fe96be0212669a9a4d60608707f66c90 (diff) | |
download | gdb-67ac97591175936a06cc1ef1df228746edcdb545.zip gdb-67ac97591175936a06cc1ef1df228746edcdb545.tar.gz gdb-67ac97591175936a06cc1ef1df228746edcdb545.tar.bz2 |
* target.h: Add enum target_waitkind, enum target_signal, and
struct target_waitstatus. Change status argument to target_wait to
be struct target_waitstatus * instead of int *.
* target.h, infrun.c, all targets: Change type of signal arguments
to resume(), proceed(), and target_resume() from int to enum
target_signal.
* All targets (*_wait, *_resume): Change accordingly.
* infcmd.c (program_info, signal_command), throughout infrun.c,
* fork-child.c, solib.c, hppa-tdep.c, osfsolib.c: Use this stuff.
* convex-xdep.c, convex-tdep.c: Add FIXME's (getting the Convex
signal code stuff right with the new signals would be non-trivial).
* inferior.h (stop_signal): Make it enum target_signal not int.
* target.c, target.h (target_signal_to_string, target_signal_to_name,
target_signal_from_name): New functions.
* inftarg.c, target.h (target_signal_to_host, target_signal_from_host,
store_waitstatus): New functions.
* procfs.c (procfs_notice_signals): Use them.
* i960-tdep.c (i960_fault_to_signal): New function, to replace
print_fault.
* config/i960/tm-i960.h: Don't define PRINT_RANDOM_SIGNAL.
Diffstat (limited to 'gdb/hppa-tdep.c')
-rw-r--r-- | gdb/hppa-tdep.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c index e8e01e1..5e6f0b3 100644 --- a/gdb/hppa-tdep.c +++ b/gdb/hppa-tdep.c @@ -864,7 +864,7 @@ restore_pc_queue (fsr) CORE_ADDR pc = read_pc (); CORE_ADDR new_pc = read_memory_integer (fsr->regs[PCOQ_HEAD_REGNUM], 4); int pid; - WAITTYPE w; + struct target_waitstatus w; int insn_count; /* Advance past break instruction in the call dummy. */ @@ -894,14 +894,15 @@ restore_pc_queue (fsr) any other choice? Is there *any* way to do this stuff with ptrace() or some equivalent?). */ resume (1, 0); - target_wait(inferior_pid, &w); + target_wait (inferior_pid, &w); - if (!WIFSTOPPED (w)) + if (w.kind == TARGET_WAITKIND_SIGNALLED) { - stop_signal = WTERMSIG (w); + stop_signal = w.value.sig; terminal_ours_for_output (); - printf_unfiltered ("\nProgram terminated with signal %d, %s\n", - stop_signal, safe_strsignal (stop_signal)); + printf_unfiltered ("\nProgram terminated with signal %s, %s.\n", + target_signal_to_name (stop_signal), + target_signal_to_string (stop_signal)); gdb_flush (gdb_stdout); return 0; } |