xref: /netbsd/sys/arch/hppa/include/signal.h (revision e24a2ff8)
1*e24a2ff8Schristos /*	$NetBSD: signal.h,v 1.12 2021/10/28 11:25:02 christos Exp $	*/
2f4f0d8a3Sfredette 
3f4f0d8a3Sfredette /*	$OpenBSD: signal.h,v 1.1 1998/06/23 19:45:27 mickey Exp $	*/
4f4f0d8a3Sfredette 
5f4f0d8a3Sfredette /*
6f4f0d8a3Sfredette  * Copyright (c) 1994, The University of Utah and
7f4f0d8a3Sfredette  * the Computer Systems Laboratory at the University of Utah (CSL).
8f4f0d8a3Sfredette  * All rights reserved.
9f4f0d8a3Sfredette  *
10f4f0d8a3Sfredette  * Permission to use, copy, modify and distribute this software is hereby
11f4f0d8a3Sfredette  * granted provided that (1) source code retains these copyright, permission,
12f4f0d8a3Sfredette  * and disclaimer notices, and (2) redistributions including binaries
13f4f0d8a3Sfredette  * reproduce the notices in supporting documentation, and (3) all advertising
14f4f0d8a3Sfredette  * materials mentioning features or use of this software display the following
15f4f0d8a3Sfredette  * acknowledgement: ``This product includes software developed by the
16f4f0d8a3Sfredette  * Computer Systems Laboratory at the University of Utah.''
17f4f0d8a3Sfredette  *
18f4f0d8a3Sfredette  * THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS
19f4f0d8a3Sfredette  * IS" CONDITION.  THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF
20f4f0d8a3Sfredette  * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
21f4f0d8a3Sfredette  *
22f4f0d8a3Sfredette  * CSL requests users of this software to return to csl-dist@cs.utah.edu any
23f4f0d8a3Sfredette  * improvements that they make and grant CSL redistribution rights.
24f4f0d8a3Sfredette  *
25f4f0d8a3Sfredette  * 	Utah $Hdr: signal.h 1.3 94/12/16$
26f4f0d8a3Sfredette  */
27f4f0d8a3Sfredette 
2870060b7cSmatt #ifndef _HPPA_SIGNAL_H__
2970060b7cSmatt #define _HPPA_SIGNAL_H__
3070060b7cSmatt 
31f4f0d8a3Sfredette /*
32f4f0d8a3Sfredette  * Machine-dependent signal definitions
33f4f0d8a3Sfredette  */
34f4f0d8a3Sfredette 
354be7a2dcSbjh21 #include <sys/featuretest.h>
36d743ebbbSchristos #include <sys/sigtypes.h>
374be7a2dcSbjh21 
38f4f0d8a3Sfredette typedef int sig_atomic_t;
39f4f0d8a3Sfredette 
404be7a2dcSbjh21 #if defined(_XOPEN_SOURCE) || defined(_NETBSD_SOURCE)
41f4f0d8a3Sfredette #include <machine/trap.h>	/* codes for SIGILL, SIGFPE */
42f4f0d8a3Sfredette #endif
43f4f0d8a3Sfredette 
441b2a362bSchristos #if defined(_LIBC)
45*e24a2ff8Schristos #define	__HAVE_STRUCT_SIGCONTEXT
461b2a362bSchristos /*
471b2a362bSchristos  * Information pushed on stack when a signal is delivered.
481b2a362bSchristos  * This is used by the kernel to restore state following
491b2a362bSchristos  * execution of the signal handler.  It is also made available
501b2a362bSchristos  * to the handler to allow it to restore state properly if
511b2a362bSchristos  * a non-standard exit is performed.
521b2a362bSchristos  */
531b2a362bSchristos struct	sigcontext {
541b2a362bSchristos 	int	sc_onstack;		/* sigstack state to restore */
551b2a362bSchristos 	int	__sc_mask13;		/* signal mask to restore (old style) */
561b2a362bSchristos 	int	sc_sp;			/* sp to restore */
571b2a362bSchristos 	int	sc_fp;			/* fp to restore */
581b2a362bSchristos 	int	sc_ap;			/* ap to restore */
591b2a362bSchristos 	int	sc_pcsqh;		/* pc space queue (head) to restore */
601b2a362bSchristos 	int	sc_pcoqh;		/* pc offset queue (head) to restore */
611b2a362bSchristos 	int	sc_pcsqt;		/* pc space queue (tail) to restore */
621b2a362bSchristos 	int	sc_pcoqt;		/* pc offset queue (tail) to restore */
631b2a362bSchristos 	int	sc_ps;			/* psl to restore */
641b2a362bSchristos 	sigset_t sc_mask;		/* signal mask to restore (new style) */
651b2a362bSchristos };
661b2a362bSchristos #endif
671b2a362bSchristos 
6870060b7cSmatt #endif /* _HPPA_SIGNAL_H__ */
69