2 /* From: NetBSD: signal.h,v 1.3 1997/04/06 08:47:43 cgd Exp */
5 * Copyright (c) 1994, 1995 Carnegie-Mellon University.
8 * Author: Chris G. Demetriou
10 * Permission to use, copy, modify and distribute this software and
11 * its documentation is hereby granted, provided that both the copyright
12 * notice and this permission notice appear in all copies of the
13 * software, derivative works or modified versions, and any portions
14 * thereof, and that both notices appear in supporting documentation.
16 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
17 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
18 * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
20 * Carnegie Mellon requests users of this software to return to
22 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
23 * School of Computer Science
24 * Carnegie Mellon University
25 * Pittsburgh PA 15213-3890
27 * any improvements or extensions that they make and grant Carnegie the
28 * rights to redistribute these changes.
31 #ifndef _MACHINE_SIGNAL_H_
32 #define _MACHINE_SIGNAL_H_
34 typedef long sig_atomic_t;
38 #ifndef _IA64_FPREG_DEFINED
41 unsigned long fpr_bits[2];
42 } __attribute__ ((aligned (16)));
44 #define _IA64_FPREG_DEFINED
49 * Information pushed on stack when a signal is delivered.
50 * This is used by the kernel to restore state following
51 * execution of the signal handler. It is also made available
52 * to the handler to allow it to restore state properly if
53 * a non-standard exit is performed.
55 * Note that sc_regs[] and sc_fpregs[]+sc_fpcr are inline
56 * representations of 'struct reg' and 'struct fpreg', respectively.
58 typedef unsigned int osigset_t;
59 struct osigcontext {};
62 * The sequence of the fields should match those in
63 * mcontext_t. Keep them in sync!
66 sigset_t sc_mask; /* signal mask to restore */
67 unsigned long sc_onstack;
68 unsigned long sc_flags;
74 unsigned long sc_ar_rsc;
75 unsigned long sc_ar_bsp;
76 unsigned long sc_ar_rnat;
77 unsigned long sc_ar_ccv;
78 unsigned long sc_ar_unat;
79 unsigned long sc_ar_fpsr;
80 unsigned long sc_ar_pfs;
82 unsigned long sc_br[8];
83 unsigned long sc_gr[32];
84 struct ia64_fpreg sc_fr[128];
87 #endif /* !_ANSI_SOURCE */
88 #endif /* !_MACHINE_SIGNAL_H_*/