aboutsummaryrefslogtreecommitdiff
path: root/gdb/config
diff options
context:
space:
mode:
authorJim Kingdon <jkingdon@engr.sgi.com>1994-02-01 22:17:29 +0000
committerJim Kingdon <jkingdon@engr.sgi.com>1994-02-01 22:17:29 +0000
commit7bec77b47df60bd8242a51b3661c78eb596d40e8 (patch)
tree3aac1e6619d9021640c544899527fa624b54e125 /gdb/config
parent8afd05c039bd01e263ee1c96dd80213d8dffd971 (diff)
downloadgdb-7bec77b47df60bd8242a51b3661c78eb596d40e8.zip
gdb-7bec77b47df60bd8242a51b3661c78eb596d40e8.tar.gz
gdb-7bec77b47df60bd8242a51b3661c78eb596d40e8.tar.bz2
* config/m88k/{tm-delta88.h,tm-delta88v4.h}, m88k-tdep.c:
Define IN_SIGTRAMP and backtrace correctly through signal handlers.
Diffstat (limited to 'gdb/config')
-rw-r--r--gdb/config/m88k/tm-delta88.h4
-rw-r--r--gdb/config/m88k/tm-delta88v4.h4
2 files changed, 8 insertions, 0 deletions
diff --git a/gdb/config/m88k/tm-delta88.h b/gdb/config/m88k/tm-delta88.h
index 7ca46dd..f0c4d29 100644
--- a/gdb/config/m88k/tm-delta88.h
+++ b/gdb/config/m88k/tm-delta88.h
@@ -20,3 +20,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#include "m88k/tm-m88k.h"
#define DELTA88
+
+#define IN_SIGTRAMP(pc, name) ((name) && STREQ ("_sigcode", (name)))
+#define SIGTRAMP_FRAME_FIXUP(frame) (frame) += 0x20
+#define SIGTRAMP_SP_FIXUP(sp) (sp) = read_memory_integer((sp), 4)
diff --git a/gdb/config/m88k/tm-delta88v4.h b/gdb/config/m88k/tm-delta88v4.h
index 129b842..78c9e2d 100644
--- a/gdb/config/m88k/tm-delta88v4.h
+++ b/gdb/config/m88k/tm-delta88v4.h
@@ -24,3 +24,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
/* If we don't define this, backtraces go on forever. */
#define FRAME_CHAIN_VALID_ALTERNATE 1
+
+#define IN_SIGTRAMP(pc, name) ((name) && (STREQ ("signalhandler", (name)) \
+ || STREQ("sigacthandler", (name))))
+#define SIGTRAMP_SP_FIXUP(sp) (sp) = read_memory_integer((sp)+0xcd8, 4)