12345678910111213141516171819202122232425262728293031323334 |
- #ifndef _SPARC_BUG_H
- #define _SPARC_BUG_H
- #ifdef CONFIG_BUG
- /* Only use the inline asm until a gcc release that can handle __builtin_trap
- * -rob 2003-06-25
- *
- * gcc-3.3.1 and later will be OK -DaveM
- */
- #if (__GNUC__ > 3) || \
- (__GNUC__ == 3 && __GNUC_MINOR__ > 3) || \
- (__GNUC__ == 3 && __GNUC_MINOR__ == 3 && __GNUC_PATCHLEVEL__ >= 4)
- #define __bug_trap() __builtin_trap()
- #else
- #define __bug_trap() \
- __asm__ __volatile__ ("t 0x5\n\t" : : )
- #endif
- #ifdef CONFIG_DEBUG_BUGVERBOSE
- extern void do_BUG(const char *file, int line);
- #define BUG() do { \
- do_BUG(__FILE__, __LINE__); \
- __bug_trap(); \
- } while (0)
- #else
- #define BUG() __bug_trap()
- #endif
- #define HAVE_ARCH_BUG
- #endif
- #include <asm-generic/bug.h>
- #endif
|