/* Macro definitions for GDB for a Sun 4 running Solaris 2
-   Copyright 1989, 1992, 1993 Free Software Foundation, Inc.
+   Copyright 1989, 1992, 1993, 1994 Free Software Foundation, Inc.
 
 This file is part of GDB.
 
 #undef IN_SOLIB_TRAMPOLINE
 #define IN_SOLIB_TRAMPOLINE(pc, name)  in_solib_trampoline((pc), (name))
  
-/* The signal handler trampoline is called sigacthandler in Solaris2.  */
-#define IN_SIGTRAMP(pc, name) ((name) && STREQ ("sigacthandler", name))
+/* There are two different signal handler trampolines in Solaris2.  */
+#define IN_SIGTRAMP(pc, name) \
+  ((name) \
+   && (STREQ ("sigacthandler", name) || STREQ ("ucbsigvechandler", name)))
  
-/* The signal handler gets a pointer to an ucontext as third argument.
-   This is the offset to the saved PC within it.  */  
+/* The signal handler gets a pointer to an ucontext as third argument
+   if it is called from sigacthandler.  This is the offset to the saved
+   PC within it.  sparc_frame_saved_pc knows how to deal with
+   ucbsigvechandler.  */  
 #define SIGCONTEXT_PC_OFFSET 44
 
 #if 0  /* FIXME Setjmp/longjmp are not as well doc'd in SunOS 5.x yet */