fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git] / include / asm-mips / bug.h
index f1f483d..4d560a5 100644 (file)
@@ -1,20 +1,32 @@
 #ifndef __ASM_BUG_H
 #define __ASM_BUG_H
 
+#include <asm/sgidefs.h>
+
+#ifdef CONFIG_BUG
+
 #include <asm/break.h>
 
 #define BUG()                                                          \
 do {                                                                   \
        __asm__ __volatile__("break %0" : : "i" (BRK_BUG));             \
 } while (0)
-#define BUG_ON(condition) do { if (unlikely((condition)!=0)) BUG(); } while(0)
-#define PAGE_BUG(page) do {  BUG(); } while (0)
-
-#define WARN_ON(condition) do { \
-       if (unlikely((condition)!=0)) { \
-               printk("Badness in %s at %s:%d\n", __FUNCTION__, __FILE__, __LINE__); \
-       dump_stack(); \
-       } \
+
+#define HAVE_ARCH_BUG
+
+#if (_MIPS_ISA > _MIPS_ISA_MIPS1)
+
+#define BUG_ON(condition)                                              \
+do {                                                                   \
+       __asm__ __volatile__("tne $0, %0" : : "r" (condition));         \
 } while (0)
 
+#define HAVE_ARCH_BUG_ON
+
+#endif /* _MIPS_ISA > _MIPS_ISA_MIPS1 */
+
 #endif
+
+#include <asm-generic/bug.h>
+
+#endif /* __ASM_BUG_H */