Annotation of sys/arch/sparc64/include/signal.h, Revision 1.1
1.1 ! nbrk 1: /* $OpenBSD: signal.h,v 1.8 2006/01/08 14:20:17 millert Exp $ */
! 2: /* $NetBSD: signal.h,v 1.10 2001/05/09 19:50:49 kleink Exp $ */
! 3:
! 4: /*
! 5: * Copyright (c) 1992, 1993
! 6: * The Regents of the University of California. All rights reserved.
! 7: *
! 8: * This software was developed by the Computer Systems Engineering group
! 9: * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
! 10: * contributed to Berkeley.
! 11: *
! 12: * All advertising materials mentioning features or use of this software
! 13: * must display the following acknowledgement:
! 14: * This product includes software developed by the University of
! 15: * California, Lawrence Berkeley Laboratory.
! 16: *
! 17: * Redistribution and use in source and binary forms, with or without
! 18: * modification, are permitted provided that the following conditions
! 19: * are met:
! 20: * 1. Redistributions of source code must retain the above copyright
! 21: * notice, this list of conditions and the following disclaimer.
! 22: * 2. Redistributions in binary form must reproduce the above copyright
! 23: * notice, this list of conditions and the following disclaimer in the
! 24: * documentation and/or other materials provided with the distribution.
! 25: * 3. Neither the name of the University nor the names of its contributors
! 26: * may be used to endorse or promote products derived from this software
! 27: * without specific prior written permission.
! 28: *
! 29: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
! 30: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
! 31: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
! 32: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
! 33: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
! 34: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
! 35: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
! 36: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
! 37: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
! 38: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
! 39: * SUCH DAMAGE.
! 40: *
! 41: * @(#)signal.h 8.1 (Berkeley) 6/11/93
! 42: */
! 43:
! 44: #ifndef _SPARC64_SIGNAL_H_
! 45: #define _SPARC64_SIGNAL_H_
! 46:
! 47: #ifndef _LOCORE
! 48: #include <sys/cdefs.h>
! 49:
! 50: typedef int sig_atomic_t;
! 51:
! 52: #if __BSD_VISIBLE || __XPG_VISIBLE >= 420
! 53: /*
! 54: * Information pushed on stack when a signal is delivered.
! 55: * This is used by the kernel to restore state following
! 56: * execution of the signal handler. It is also made available
! 57: * to the handler to allow it to restore state properly if
! 58: * a non-standard exit is performed.
! 59: *
! 60: * All machines must have an sc_onstack and sc_mask.
! 61: */
! 62: struct sigcontext {
! 63: int sc_onstack; /* sigstack state to restore */
! 64: int __sc_mask13; /* signal mask to restore (old style) */
! 65: /* begin machine dependent portion */
! 66: long sc_sp; /* %sp to restore */
! 67: long sc_pc; /* pc to restore */
! 68: long sc_npc; /* npc to restore */
! 69: long sc_tstate; /* tstate to restore */
! 70: long sc_g1; /* %g1 to restore */
! 71: long sc_o0; /* %o0 to restore */
! 72: int sc_mask; /* signal mask to restore (new style) */
! 73: };
! 74: #endif /* __BSD_VISIBLE || __XPG_VISIBLE >= 420 */
! 75: #endif /* _LOCORE */
! 76:
! 77: #if defined(_LOCORE) || __BSD_VISIBLE
! 78: /*
! 79: * `Code' arguments to signal handlers. The names, and the funny numbering.
! 80: * are defined so as to match up with what SunOS uses; I have no idea why
! 81: * they did the numbers that way, except maybe to match up with the 68881.
! 82: */
! 83: #define FPE_INTOVF_TRAP 0x01 /* integer overflow */
! 84: #define FPE_INTDIV_TRAP 0x14 /* integer divide by zero */
! 85: #define FPE_FLTINEX_TRAP 0xc4 /* inexact */
! 86: #define FPE_FLTDIV_TRAP 0xc8 /* divide by zero */
! 87: #define FPE_FLTUND_TRAP 0xcc /* underflow */
! 88: #define FPE_FLTOPERR_TRAP 0xd0 /* operand error */
! 89: #define FPE_FLTOVF_TRAP 0xd4 /* overflow */
! 90: #endif
! 91:
! 92: #endif /* !_SPARC64_SIGNAL_H_ */
CVSweb