4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License, Version 1.0 only
6 * (the "License"). You may not use this file except in compliance
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 * or http://www.opensolaris.org/os/licensing.
11 * See the License for the specific language governing permissions
12 * and limitations under the License.
14 * When distributing Covered Code, include this CDDL HEADER in each
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 * If applicable, add the following below this CDDL HEADER, with the
17 * fields enclosed by brackets "[]" replaced with your own identifying
18 * information: Portions Copyright [yyyy] [name of copyright owner]
23 * Copyright 2003 Sun Microsystems, Inc. All rights reserved.
24 * Use is subject to license terms.
27 /* Copyright (c) 1988 AT&T */
28 /* All Rights Reserved */
31 #ifndef _SYS_MACHSIG_H
32 #define _SYS_MACHSIG_H
34 #include <sys/feature_tests.h>
41 * machsig.h is the machine dependent portion of siginfo.h (and is
42 * included by siginfo.h). A version of machsig.h should exist for
43 * each architecture. The codes for SIGILL, SIGFPU, SIGSEGV and SIGBUS
44 * are in this file. The codes for SIGTRAP, SIGCLD(SIGCHLD), and
45 * SIGPOLL are architecture independent and may be found in siginfo.h.
48 #if !defined(_POSIX_C_SOURCE) || defined(_XPG4_2) || defined(__EXTENSIONS__)
50 #if !defined(_XPG4_2) || defined(__EXTENSIONS__)
51 #include <vm/faultcode.h>
57 #define ILL_ILLOPC 1 /* illegal opcode */
58 #define ILL_ILLOPN 2 /* illegal operand */
59 #define ILL_ILLADR 3 /* illegal addressing mode */
60 #define ILL_ILLTRP 4 /* illegal trap */
61 #define ILL_PRVOPC 5 /* privileged opcode */
62 #define ILL_PRVREG 6 /* privileged register */
63 #define ILL_COPROC 7 /* co-processor */
64 #define ILL_BADSTK 8 /* bad stack */
65 #if !defined(_XPG4_2) || defined(__EXTENSIONS__)
73 #if !defined(_XPG4_2) || defined(__EXTENSIONS__)
74 #define EMT_CPCOVF 1 /* CPU performance counter overflow */
82 #define FPE_INTDIV 1 /* integer divide by zero */
83 #define FPE_INTOVF 2 /* integer overflow */
84 #define FPE_FLTDIV 3 /* floating point divide by zero */
85 #define FPE_FLTOVF 4 /* floating point overflow */
86 #define FPE_FLTUND 5 /* floating point underflow */
87 #define FPE_FLTRES 6 /* floating point inexact result */
88 #define FPE_FLTINV 7 /* invalid floating point operation */
89 #define FPE_FLTSUB 8 /* subscript out of range */
90 #define FPE_FLTDEN 9 /* floating point denormalize */
91 #if !defined(_XPG4_2) || defined(__EXTENSIONS__)
96 * SIGSEGV signal codes
99 #define SEGV_MAPERR 1 /* address not mapped to object */
100 #define SEGV_ACCERR 2 /* invalid permissions */
101 #if !defined(_XPG4_2) || defined(__EXTENSIONS__)
106 * SIGBUS signal codes
109 #define BUS_ADRALN 1 /* invalid address alignment */
110 #define BUS_ADRERR 2 /* non-existent physical address */
111 #ifndef BUS_OBJERR /* also defined in ucbinclude/sys/signal.h */
112 #define BUS_OBJERR 3 /* object specific hardware error */
114 #if !defined(_XPG4_2) || defined(__EXTENSIONS__)
118 #endif /* !defined(_POSIX_C_SOURCE) || defined(_XPG4_2) ... */
124 #endif /* _SYS_MACHSIG_H */