xref: /csrg-svn/sys/vax/include/trap.h (revision 31831)
123277Smckusick /*
229199Smckusick  * Copyright (c) 1982, 1986 Regents of the University of California.
323277Smckusick  * All rights reserved.  The Berkeley software License Agreement
423277Smckusick  * specifies the terms and conditions for redistribution.
523277Smckusick  *
6*31831Skarels  *	@(#)trap.h	7.3 (Berkeley) 07/11/87
723277Smckusick  */
875Sbill 
975Sbill /*
1075Sbill  * Trap type values
11*31831Skarels  * also known in trap.c for name strings
1275Sbill  */
1375Sbill 
148981Sroot #define	T_RESADFLT	0		/* reserved addressing fault */
158981Sroot #define	T_PRIVINFLT	1		/* privileged instruction fault */
168981Sroot #define	T_RESOPFLT	2		/* reserved operand fault */
17*31831Skarels /* definitions for <sys/signal.h> */
18*31831Skarels #define	    ILL_RESAD_FAULT	T_RESADFLT
19*31831Skarels #define	    ILL_PRIVIN_FAULT	T_PRIVINFLT
20*31831Skarels #define	    ILL_RESOP_FAULT	T_RESOPFLT
21*31831Skarels /* CHME, CHMS, CHMU are not yet given back to users reasonably */
228981Sroot #define	T_BPTFLT	3		/* bpt instruction fault */
238981Sroot #define	T_XFCFLT	4		/* xfc instruction fault */
248981Sroot #define	T_SYSCALL	5		/* chmk instruction (syscall trap) */
258981Sroot #define	T_ARITHTRAP	6		/* arithmetic trap */
268981Sroot #define	T_ASTFLT	7		/* software level 2 trap (ast deliv) */
278981Sroot #define	T_SEGFLT	8		/* segmentation fault */
288981Sroot #define	T_PROTFLT	9		/* protection fault */
298981Sroot #define	T_TRCTRAP	10		/* trace trap */
308981Sroot #define	T_COMPATFLT	11		/* compatibility mode fault */
318981Sroot #define	T_PAGEFLT	12		/* page fault */
328981Sroot #define	T_TABLEFLT	13		/* page table fault */
3330543Skarels #define	T_KDBTRAP	14		/* kernel debugger trap */
34*31831Skarels 
35*31831Skarels /* codes for SIGFPE/ARITHTRAP */
36*31831Skarels #define	    FPE_INTOVF_TRAP	0x1	/* integer overflow */
37*31831Skarels #define	    FPE_INTDIV_TRAP	0x2	/* integer divide by zero */
38*31831Skarels #define	    FPE_FLTOVF_TRAP	0x3	/* floating overflow */
39*31831Skarels #define	    FPE_FLTDIV_TRAP	0x4	/* floating/decimal divide by zero */
40*31831Skarels #define	    FPE_FLTUND_TRAP	0x5	/* floating underflow */
41*31831Skarels #define	    FPE_DECOVF_TRAP	0x6	/* decimal overflow */
42*31831Skarels #define	    FPE_SUBRNG_TRAP	0x7	/* subscript out of range */
43*31831Skarels #define	    FPE_FLTOVF_FAULT	0x8	/* floating overflow fault */
44*31831Skarels #define	    FPE_FLTDIV_FAULT	0x9	/* divide by zero floating fault */
45*31831Skarels #define	    FPE_FLTUND_FAULT	0xa	/* floating underflow fault */
46