[SPARC64]: Call do_mathemu on illegal instruction traps too.
[linux-2.6/mini2440.git] / include / asm-s390 / bug.h
blob87689836394442804ce094da6358dd898c272081
1 #ifndef _S390_BUG_H
2 #define _S390_BUG_H
4 #include <linux/kernel.h>
6 #ifdef CONFIG_BUG
8 static inline __attribute__((noreturn)) void __do_illegal_op(void)
10 #if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)
11 __builtin_trap();
12 #else
13 asm volatile(".long 0");
14 #endif
17 #define BUG() do { \
18 printk("kernel BUG at %s:%d!\n", __FILE__, __LINE__); \
19 __do_illegal_op(); \
20 } while (0)
22 #define HAVE_ARCH_BUG
23 #endif
25 #include <asm-generic/bug.h>
27 #endif