xref: /linux/arch/loongarch/include/asm/exception.h (revision e7d759f31ca295d589f7420719c311870bb3166f)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef __ASM_EXCEPTION_H
4 #define __ASM_EXCEPTION_H
5 
6 #include <asm/ptrace.h>
7 #include <linux/kprobes.h>
8 
9 void show_registers(struct pt_regs *regs);
10 
11 asmlinkage void cache_parity_error(void);
12 asmlinkage void noinstr do_ade(struct pt_regs *regs);
13 asmlinkage void noinstr do_ale(struct pt_regs *regs);
14 asmlinkage void noinstr do_bce(struct pt_regs *regs);
15 asmlinkage void noinstr do_bp(struct pt_regs *regs);
16 asmlinkage void noinstr do_ri(struct pt_regs *regs);
17 asmlinkage void noinstr do_fpu(struct pt_regs *regs);
18 asmlinkage void noinstr do_fpe(struct pt_regs *regs, unsigned long fcsr);
19 asmlinkage void noinstr do_lsx(struct pt_regs *regs);
20 asmlinkage void noinstr do_lasx(struct pt_regs *regs);
21 asmlinkage void noinstr do_lbt(struct pt_regs *regs);
22 asmlinkage void noinstr do_watch(struct pt_regs *regs);
23 asmlinkage void noinstr do_syscall(struct pt_regs *regs);
24 asmlinkage void noinstr do_reserved(struct pt_regs *regs);
25 asmlinkage void noinstr do_vint(struct pt_regs *regs, unsigned long sp);
26 asmlinkage void __kprobes do_page_fault(struct pt_regs *regs,
27 				unsigned long write, unsigned long address);
28 
29 asmlinkage void handle_ade(void);
30 asmlinkage void handle_ale(void);
31 asmlinkage void handle_bce(void);
32 asmlinkage void handle_sys(void);
33 asmlinkage void handle_bp(void);
34 asmlinkage void handle_ri(void);
35 asmlinkage void handle_fpu(void);
36 asmlinkage void handle_fpe(void);
37 asmlinkage void handle_lsx(void);
38 asmlinkage void handle_lasx(void);
39 asmlinkage void handle_lbt(void);
40 asmlinkage void handle_watch(void);
41 asmlinkage void handle_reserved(void);
42 asmlinkage void handle_vint(void);
43 asmlinkage void noinstr handle_loongarch_irq(struct pt_regs *regs);
44 
45 #endif	/* __ASM_EXCEPTION_H */
46