xref: /linux/arch/alpha/include/asm/bug.h (revision 0d3b051adbb72ed81956447d0d1e54d5943ee6f5)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _ALPHA_BUG_H
3 #define _ALPHA_BUG_H
4 
5 #include <linux/linkage.h>
6 
7 #ifdef CONFIG_BUG
8 #include <asm/pal.h>
9 
10 /* ??? Would be nice to use .gprel32 here, but we can't be sure that the
11    function loaded the GP, so this could fail in modules.  */
12 #define BUG()	do {							\
13 	__asm__ __volatile__(						\
14 		"call_pal %0  # bugchk\n\t"				\
15 		".long %1\n\t.8byte %2"					\
16 		: : "i"(PAL_bugchk), "i"(__LINE__), "i"(__FILE__));	\
17 	unreachable();							\
18   } while (0)
19 
20 #define HAVE_ARCH_BUG
21 #endif
22 
23 #include <asm-generic/bug.h>
24 
25 #endif
26