home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / src / linux-headers-2.6.17-6 / include / asm-sparc / bug.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-08-11  |  747 b   |  35 lines

  1. #ifndef _SPARC_BUG_H
  2. #define _SPARC_BUG_H
  3.  
  4. #ifdef CONFIG_BUG
  5. /* Only use the inline asm until a gcc release that can handle __builtin_trap
  6.  * -rob 2003-06-25
  7.  *
  8.  * gcc-3.3.1 and later will be OK -DaveM
  9.  */
  10. #if (__GNUC__ > 3) || \
  11.     (__GNUC__ == 3 && __GNUC_MINOR__ > 3) || \
  12.     (__GNUC__ == 3 && __GNUC_MINOR__ == 3 && __GNUC_PATCHLEVEL__ >= 4)
  13. #define __bug_trap()        __builtin_trap()
  14. #else
  15. #define __bug_trap()                    \
  16.     __asm__ __volatile__ ("t 0x5\n\t" : : )
  17. #endif
  18.  
  19. #ifdef CONFIG_DEBUG_BUGVERBOSE
  20. extern void do_BUG(const char *file, int line);
  21. #define BUG() do {                    \
  22.     do_BUG(__FILE__, __LINE__);            \
  23.     __bug_trap();                \
  24. } while (0)
  25. #else
  26. #define BUG()        __bug_trap()
  27. #endif
  28.  
  29. #define HAVE_ARCH_BUG
  30. #endif
  31.  
  32. #include <asm-generic/bug.h>
  33.  
  34. #endif
  35.