From 870ae9e6edaf9a55fc8801345bfe16dd16a4e71e Mon Sep 17 00:00:00 2001 From: "J.T. Conklin" Date: Tue, 25 Oct 1994 16:55:44 +0000 Subject: [PATCH] * config/i386/tm-nbsd.h: Enable longjmp support. --- gdb/ChangeLog | 4 ++++ gdb/config/i386/tm-nbsd.h | 15 ++++++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index e905147e7c5..a916c6cf461 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +Tue Oct 25 09:53:04 1994 J.T. Conklin (jtc@phishhead.cygnus.com) + + * config/i386/tm-nbsd.h: Enable longjmp support. + Sat Oct 22 03:41:13 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) * valarith.c (value_binop): Take care of ANSI `value preserving' diff --git a/gdb/config/i386/tm-nbsd.h b/gdb/config/i386/tm-nbsd.h index 7cb2b870f8c..8772b89bd49 100644 --- a/gdb/config/i386/tm-nbsd.h +++ b/gdb/config/i386/tm-nbsd.h @@ -1,4 +1,4 @@ -/* Macro definitions for Sparc running under NetBSD. +/* Macro definitions for i386 running under NetBSD. Copyright 1994 Free Software Foundation, Inc. This file is part of GDB. @@ -23,4 +23,17 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "i386/tm-i386bsd.h" #include "tm-nbsd.h" +#define JB_ELEMENT_SIZE sizeof(int) /* jmp_buf[_JBLEN] is array of ints */ +#define JB_PC 0 /* Setjmp()'s return PC saved here */ + +/* Figure out where the longjmp will land. Slurp the args out of the stack. + We expect the first arg to be a pointer to the jmp_buf structure from which + we extract the pc (JB_PC) that we will land at. The pc is copied into ADDR. + This routine returns true on success */ + +extern int +get_longjmp_target PARAMS ((CORE_ADDR *)); + +#define GET_LONGJMP_TARGET(ADDR) get_longjmp_target(ADDR) + #endif /* TM_NBSD_H */ -- 2.30.2