aboutsummaryrefslogtreecommitdiff
path: root/include/asm-parisc
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-parisc')
-rw-r--r--include/asm-parisc/bug.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/include/asm-parisc/bug.h b/include/asm-parisc/bug.h
index 8dd199f5d6d7..cfe39a2547aa 100644
--- a/include/asm-parisc/bug.h
+++ b/include/asm-parisc/bug.h
@@ -43,6 +43,7 @@
} while(0)
#endif
+#ifdef CONFIG_DEBUG_BUGVERBOSE
#define __WARN() \
do { \
asm volatile("\n" \
@@ -56,6 +57,20 @@
"i" (BUGFLAG_WARNING), \
"i" (sizeof(struct bug_entry)) ); \
} while(0)
+#else
+#define __WARN() \
+ do { \
+ asm volatile("\n" \
+ "1:\t" PARISC_BUG_BREAK_ASM "\n" \
+ "\t.pushsection __bug_table,\"a\"\n" \
+ "2:\t" ASM_ULONG_INSN " 1b\n" \
+ "\t.short %c0\n" \
+ "\t.org 2b+%c1\n" \
+ "\t.popsection" \
+ : : "i" (BUGFLAG_WARNING), \
+ "i" (sizeof(struct bug_entry)) ); \
+ } while(0)
+#endif
#define WARN_ON(x) ({ \