From: Aditya Vidyadhar Kamath Date: Mon, 20 Nov 2023 10:13:49 +0000 (-0600) Subject: Fix gdb.bas/sigall.exp testcase in AIX. X-Git-Tag: binutils-2_42~898 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a68722065fd544995137677fb0e57c392ef00e0e;p=thirdparty%2Fbinutils-gdb.git Fix gdb.bas/sigall.exp testcase in AIX. In AIX, we are not able to see the message of a signal recieved if a debugee recieves a signal. This is a patch to fix the signal handling done incorrectly in AIX. We remove the status that represent program recieving a signal and allow host_status_to_waitstatus to handle it for us. --- diff --git a/gdb/rs6000-aix-nat.c b/gdb/rs6000-aix-nat.c index b7a34e0bf5f..771fef407a7 100644 --- a/gdb/rs6000-aix-nat.c +++ b/gdb/rs6000-aix-nat.c @@ -918,11 +918,8 @@ rs6000_nat_target::wait (ptid_t ptid, struct target_waitstatus *ourstatus, /* stop after load" status. */ if (status == 0x57c) ourstatus->set_loaded (); - /* 0x7f is signal 0. 0x17f and 0x137f are status returned - if we follow parent, a switch is made to a child post parent - execution and child continues its execution [user switches - to child and presses continue]. */ - else if (status == 0x7f || status == 0x17f || status == 0x137f) + /* 0x7f is signal 0. */ + else if (status == 0x7f) ourstatus->set_spurious (); /* A normal waitstatus. Let the usual macros deal with it. */ else