xref: /openbsd/sys/arch/hppa/include/signal.h (revision 8932bfb7)
1 /*	$OpenBSD: signal.h,v 1.8 2011/03/23 16:54:35 pirofti Exp $	*/
2 
3 /*
4  * Copyright (c) 1994, The University of Utah and
5  * the Computer Systems Laboratory at the University of Utah (CSL).
6  * All rights reserved.
7  *
8  * Permission to use, copy, modify and distribute this software is hereby
9  * granted provided that (1) source code retains these copyright, permission,
10  * and disclaimer notices, and (2) redistributions including binaries
11  * reproduce the notices in supporting documentation, and (3) all advertising
12  * materials mentioning features or use of this software display the following
13  * acknowledgement: ``This product includes software developed by the
14  * Computer Systems Laboratory at the University of Utah.''
15  *
16  * THE UNIVERSITY OF UTAH AND CSL ALLOW FREE USE OF THIS SOFTWARE IN ITS "AS
17  * IS" CONDITION.  THE UNIVERSITY OF UTAH AND CSL DISCLAIM ANY LIABILITY OF
18  * ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
19  *
20  * CSL requests users of this software to return to csl-dist@cs.utah.edu any
21  * improvements that they make and grant CSL redistribution rights.
22  *
23  * 	Utah $Hdr: signal.h 1.3 94/12/16$
24  */
25 
26 #ifndef	_MACHINE_SIGNAL_H_
27 #define	_MACHINE_SIGNAL_H_
28 
29 #include <sys/cdefs.h>
30 
31 /*
32  * Machine-dependent signal definitions
33  */
34 
35 typedef int sig_atomic_t;
36 
37 #if __BSD_VISIBLE
38 #include <machine/trap.h>
39 #endif
40 
41 #if __BSD_VISIBLE || __XPG_VISIBLE >= 420
42 /*
43  * Information pushed on stack when a signal is delivered.
44  * This is used by the kernel to restore state following
45  * execution of the signal handler.  It is also made available
46  * to the handler to allow it to restore state properly if
47  * a non-standard exit is performed.
48  */
49 struct	sigcontext {
50 	unsigned	sc_onstack;	/* sigstack state to restore */
51 	unsigned	sc_mask;	/* signal mask to restore */
52 	unsigned	sc_ps;		/* psl to restore */
53 	unsigned	sc_fp;		/* fp to restore */
54 	unsigned	sc_pcoqh;	/* pc offset queue (head) to restore */
55 	unsigned	sc_pcoqt;	/* pc offset queue (tail) to restore */
56 	unsigned	sc_resv[2];
57 	unsigned	sc_regs[32];
58 	unsigned	sc_fpregs[64];
59 };
60 #endif /* __BSD_VISIBLE || __XPG_VISIBLE >= 420 */
61 #endif  /* !_MACHINE_SIGNAL_H_ */
62