Annotation of sys/arch/amd64/include/signal.h, Revision 1.1.1.1
1.1 nbrk 1: /* $OpenBSD: signal.h,v 1.5 2006/01/08 14:20:17 millert Exp $ */
2: /* $NetBSD: signal.h,v 1.2 2003/04/28 23:16:17 bjh21 Exp $ */
3:
4: /*
5: * Copyright (c) 1982, 1986, 1989, 1991 Regents of the University of California.
6: * All rights reserved.
7: *
8: * Redistribution and use in source and binary forms, with or without
9: * modification, are permitted provided that the following conditions
10: * are met:
11: * 1. Redistributions of source code must retain the above copyright
12: * notice, this list of conditions and the following disclaimer.
13: * 2. Redistributions in binary form must reproduce the above copyright
14: * notice, this list of conditions and the following disclaimer in the
15: * documentation and/or other materials provided with the distribution.
16: * 3. Neither the name of the University nor the names of its contributors
17: * may be used to endorse or promote products derived from this software
18: * without specific prior written permission.
19: *
20: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30: * SUCH DAMAGE.
31: *
32: * @(#)signal.h 7.16 (Berkeley) 3/17/91
33: */
34:
35: #ifndef _AMD64_SIGNAL_H_
36: #define _AMD64_SIGNAL_H_
37:
38: #include <sys/cdefs.h>
39:
40: typedef int sig_atomic_t;
41:
42: #if __BSD_VISIBLE
43: #include <machine/trap.h>
44: #endif
45:
46: #if __BSD_VISIBLE || __XPG_VISIBLE >= 420
47: /*
48: * Information pushed on stack when a signal is delivered.
49: * This is used by the kernel to restore state following
50: * execution of the signal handler. It is also made available
51: * to the handler to allow it to restore state properly if
52: * a non-standard exit is performed.
53: */
54: struct sigcontext {
55: /* plain match trapframe */
56: long sc_rdi;
57: long sc_rsi;
58: long sc_rdx;
59: long sc_rcx;
60: long sc_r8;
61: long sc_r9;
62: long sc_r10;
63: long sc_r11;
64: long sc_r12;
65: long sc_r13;
66: long sc_r14;
67: long sc_r15;
68: long sc_rbp;
69: long sc_rbx;
70: long sc_rax;
71: long sc_gs;
72: long sc_fs;
73: long sc_es;
74: long sc_ds;
75: long sc_trapno;
76: long sc_err;
77: long sc_rip;
78: long sc_cs;
79: long sc_rflags;
80: long sc_rsp;
81: long sc_ss;
82:
83: struct fxsave64 *sc_fpstate;
84: int sc_onstack;
85: int sc_mask;
86: };
87: #endif /* __BSD_VISIBLE || __XPG_VISIBLE >= 420 */
88: #endif /* !_AMD64_SIGNAL_H_ */
CVSweb