blob: 8f79de19eb9405f67cd19389da24ebdac1ad25dc [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef _I386_BUG_H
2#define _I386_BUG_H
3
4#include <linux/config.h>
5
6/*
7 * Tell the user there is some problem.
8 * The offending file and line are encoded after the "officially
9 * undefined" opcode for parsing in the trap handler.
10 */
11
Matt Mackallc8538a72005-05-01 08:59:01 -070012#ifdef CONFIG_BUG
13#define HAVE_ARCH_BUG
Linus Torvalds1da177e2005-04-16 15:20:36 -070014#ifdef CONFIG_DEBUG_BUGVERBOSE
15#define BUG() \
16 __asm__ __volatile__( "ud2\n" \
17 "\t.word %c0\n" \
18 "\t.long %c1\n" \
19 : : "i" (__LINE__), "i" (__FILE__))
20#else
21#define BUG() __asm__ __volatile__("ud2\n")
22#endif
Matt Mackallc8538a72005-05-01 08:59:01 -070023#endif
Linus Torvalds1da177e2005-04-16 15:20:36 -070024
Linus Torvalds1da177e2005-04-16 15:20:36 -070025#include <asm-generic/bug.h>
Linus Torvalds1da177e2005-04-16 15:20:36 -070026#endif