xref: /csrg-svn/sys/vax/include/trap.h (revision 49436)
1*49436Sbostic /*-
2*49436Sbostic  * Copyright (c) 1982, 1986 The Regents of the University of California.
3*49436Sbostic  * All rights reserved.
423277Smckusick  *
5*49436Sbostic  * %sccs.include.proprietary.c%
6*49436Sbostic  *
7*49436Sbostic  *	@(#)trap.h	7.4 (Berkeley) 05/08/91
823277Smckusick  */
975Sbill 
1075Sbill /*
1175Sbill  * Trap type values
1231831Skarels  * also known in trap.c for name strings
1375Sbill  */
1475Sbill 
158981Sroot #define	T_RESADFLT	0		/* reserved addressing fault */
168981Sroot #define	T_PRIVINFLT	1		/* privileged instruction fault */
178981Sroot #define	T_RESOPFLT	2		/* reserved operand fault */
1831831Skarels /* definitions for <sys/signal.h> */
1931831Skarels #define	    ILL_RESAD_FAULT	T_RESADFLT
2031831Skarels #define	    ILL_PRIVIN_FAULT	T_PRIVINFLT
2131831Skarels #define	    ILL_RESOP_FAULT	T_RESOPFLT
2231831Skarels /* CHME, CHMS, CHMU are not yet given back to users reasonably */
238981Sroot #define	T_BPTFLT	3		/* bpt instruction fault */
248981Sroot #define	T_XFCFLT	4		/* xfc instruction fault */
258981Sroot #define	T_SYSCALL	5		/* chmk instruction (syscall trap) */
268981Sroot #define	T_ARITHTRAP	6		/* arithmetic trap */
278981Sroot #define	T_ASTFLT	7		/* software level 2 trap (ast deliv) */
288981Sroot #define	T_SEGFLT	8		/* segmentation fault */
298981Sroot #define	T_PROTFLT	9		/* protection fault */
308981Sroot #define	T_TRCTRAP	10		/* trace trap */
318981Sroot #define	T_COMPATFLT	11		/* compatibility mode fault */
328981Sroot #define	T_PAGEFLT	12		/* page fault */
338981Sroot #define	T_TABLEFLT	13		/* page table fault */
3430543Skarels #define	T_KDBTRAP	14		/* kernel debugger trap */
3531831Skarels 
3631831Skarels /* codes for SIGFPE/ARITHTRAP */
3731831Skarels #define	    FPE_INTOVF_TRAP	0x1	/* integer overflow */
3831831Skarels #define	    FPE_INTDIV_TRAP	0x2	/* integer divide by zero */
3931831Skarels #define	    FPE_FLTOVF_TRAP	0x3	/* floating overflow */
4031831Skarels #define	    FPE_FLTDIV_TRAP	0x4	/* floating/decimal divide by zero */
4131831Skarels #define	    FPE_FLTUND_TRAP	0x5	/* floating underflow */
4231831Skarels #define	    FPE_DECOVF_TRAP	0x6	/* decimal overflow */
4331831Skarels #define	    FPE_SUBRNG_TRAP	0x7	/* subscript out of range */
4431831Skarels #define	    FPE_FLTOVF_FAULT	0x8	/* floating overflow fault */
4531831Skarels #define	    FPE_FLTDIV_FAULT	0x9	/* divide by zero floating fault */
4631831Skarels #define	    FPE_FLTUND_FAULT	0xa	/* floating underflow fault */
47