xref: /xv6-public/traps.h (revision a4c03dea)
1*a4c03deaSrtm // system defined:
2*a4c03deaSrtm #define T_DIVIDE     0		// divide error
3*a4c03deaSrtm #define T_DEBUG      1		// debug exception
4*a4c03deaSrtm #define T_NMI        2		// non-maskable interrupt
5*a4c03deaSrtm #define T_BRKPT      3		// breakpoint
6*a4c03deaSrtm #define T_OFLOW      4		// overflow
7*a4c03deaSrtm #define T_BOUND      5		// bounds check
8*a4c03deaSrtm #define T_ILLOP      6		// illegal opcode
9*a4c03deaSrtm #define T_DEVICE     7		// device not available
10*a4c03deaSrtm #define T_DBLFLT     8		// double fault
11*a4c03deaSrtm /* #define T_COPROC  9 */	// reserved (not generated by recent processors)
12*a4c03deaSrtm #define T_TSS       10		// invalid task switch segment
13*a4c03deaSrtm #define T_SEGNP     11		// segment not present
14*a4c03deaSrtm #define T_STACK     12		// stack exception
15*a4c03deaSrtm #define T_GPFLT     13		// genernal protection fault
16*a4c03deaSrtm #define T_PGFLT     14		// page fault
17*a4c03deaSrtm /* #define T_RES    15 */	// reserved
18*a4c03deaSrtm #define T_FPERR     16		// floating point error
19*a4c03deaSrtm #define T_ALIGN     17		// aligment check
20*a4c03deaSrtm #define T_MCHK      18		// machine check
21*a4c03deaSrtm #define T_SIMDERR   19		// SIMD floating point error
22*a4c03deaSrtm 
23*a4c03deaSrtm // These are arbitrarily chosen, but with care not to overlap
24*a4c03deaSrtm // processor defined exceptions or interrupt vectors.
25*a4c03deaSrtm #define T_SYSCALL   48		// system call
26*a4c03deaSrtm #define T_DEFAULT   500		// catchall
27