1 #ifndef _ALPHA_BUG_H 2 #define _ALPHA_BUG_H 3 4 #include <linux/linkage.h> 5 6 #ifdef CONFIG_BUG 7 #include <asm/pal.h> 8 9 /* ??? Would be nice to use .gprel32 here, but we can't be sure that the 10 function loaded the GP, so this could fail in modules. */ 11 static inline void ATTRIB_NORET __BUG(const char *file, int line) 12 { 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 for ( ; ; ) 18 ; 19 } 20 21 #define BUG() __BUG(__FILE__, __LINE__) 22 23 #define HAVE_ARCH_BUG 24 #endif 25 26 #include <asm-generic/bug.h> 27 28 #endif 29