Merge remote branch 'nouveau/for-airlied' of ../drm-nouveau-next into drm-linus
[pandora-kernel.git] / tools / perf / util / include / asm / bug.h
1 #ifndef _PERF_ASM_GENERIC_BUG_H
2 #define _PERF_ASM_GENERIC_BUG_H
3
4 #define __WARN_printf(arg...)   do { fprintf(stderr, arg); } while (0)
5
6 #define WARN(condition, format...) ({           \
7         int __ret_warn_on = !!(condition);      \
8         if (unlikely(__ret_warn_on))            \
9                 __WARN_printf(format);          \
10         unlikely(__ret_warn_on);                \
11 })
12
13 #define WARN_ONCE(condition, format...) ({      \
14         static int __warned;                    \
15         int __ret_warn_once = !!(condition);    \
16                                                 \
17         if (unlikely(__ret_warn_once))          \
18                 if (WARN(!__warned, format))    \
19                         __warned = 1;           \
20         unlikely(__ret_warn_once);              \
21 })
22 #endif