interrupts, timer, keyboard, segments, lots of kernel code
[bootcensus] / src / intrtab.h
1 #ifdef ASM
2 /* included from intr_asm.S */
3 #define INTR_ENTRY_EC(n, name)          ientry_err n, name
4 #define INTR_ENTRY_NOEC(n, name)        ientry_noerr n, name
5 #else
6 /* included from intr.c inside init_intr() */
7 #define INTR_ENTRY_EC(n, name)          \
8         void intr_entry_##name(void);   \
9         set_intr_entry(n, intr_entry_##name);
10 #define INTR_ENTRY_NOEC(n, name)        INTR_ENTRY_EC(n, name)
11 #endif  /* ASM */
12
13 /* faults/traps/aborts (plus NMI) */
14 INTR_ENTRY_NOEC(0, div)
15 INTR_ENTRY_NOEC(1, debug)
16 INTR_ENTRY_NOEC(2, nmi)
17 INTR_ENTRY_NOEC(3, bp)
18 INTR_ENTRY_NOEC(4, overflow)
19 INTR_ENTRY_NOEC(5, bound)
20 INTR_ENTRY_NOEC(6, ill)
21 INTR_ENTRY_NOEC(7, nodev)
22 INTR_ENTRY_EC(8, dfault)
23 INTR_ENTRY_NOEC(9, copseg)
24 INTR_ENTRY_EC(10, tss)
25 INTR_ENTRY_EC(11, segpres)
26 INTR_ENTRY_EC(12, stack)
27 INTR_ENTRY_EC(13, prot)
28 INTR_ENTRY_EC(14, page)
29 INTR_ENTRY_NOEC(15, reserved)
30 INTR_ENTRY_NOEC(16, fpu)
31 INTR_ENTRY_EC(17, align)
32 INTR_ENTRY_NOEC(18, mce)
33 INTR_ENTRY_NOEC(19, sse)
34 /* redirected IRQs */
35 INTR_ENTRY_NOEC(32, irq0)
36 INTR_ENTRY_NOEC(33, irq1)
37 INTR_ENTRY_NOEC(34, irq2)
38 INTR_ENTRY_NOEC(35, irq3)
39 INTR_ENTRY_NOEC(36, irq4)
40 INTR_ENTRY_NOEC(37, irq5)
41 INTR_ENTRY_NOEC(38, irq6)
42 INTR_ENTRY_NOEC(39, irq7)
43 INTR_ENTRY_NOEC(40, irq8)
44 INTR_ENTRY_NOEC(41, irq9)
45 INTR_ENTRY_NOEC(42, irq10)
46 INTR_ENTRY_NOEC(43, irq11)
47 INTR_ENTRY_NOEC(44, irq12)
48 INTR_ENTRY_NOEC(45, irq13)
49 INTR_ENTRY_NOEC(46, irq14)
50 INTR_ENTRY_NOEC(47, irq15)
51 /* system call interrupt */
52 INTR_ENTRY_NOEC(128, syscall)
53 /* default interrupt */
54 INTR_ENTRY_NOEC(255, default)