X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=include%2Fasm-s390%2Fbug.h;h=87689836394442804ce094da6358dd898c272081;hb=a4b47ab9464a8200528fad3101668abdd7379cf9;hp=7ddaa05b98d8406b9988921b5275179083bd8e94;hpb=79072f38909e3d9883317238887460c39ddcc4cb;p=linux-2.6-omap-h63xx.git diff --git a/include/asm-s390/bug.h b/include/asm-s390/bug.h index 7ddaa05b98d..87689836394 100644 --- a/include/asm-s390/bug.h +++ b/include/asm-s390/bug.h @@ -5,9 +5,18 @@ #ifdef CONFIG_BUG +static inline __attribute__((noreturn)) void __do_illegal_op(void) +{ +#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) + __builtin_trap(); +#else + asm volatile(".long 0"); +#endif +} + #define BUG() do { \ printk("kernel BUG at %s:%d!\n", __FILE__, __LINE__); \ - __builtin_trap(); \ + __do_illegal_op(); \ } while (0) #define HAVE_ARCH_BUG