summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/compiler.h
diff options
context:
space:
mode:
authorMatt Turner <[email protected]>2014-06-29 19:12:04 -0700
committerMatt Turner <[email protected]>2014-07-01 08:55:52 -0700
commita3d10c2c304c65e37a940edbbc84f37e5cf88f33 (patch)
tree790babf96d52b777ba2663927b985c447ed78b72 /src/mesa/main/compiler.h
parente65844023492c1ebc12c3fd299fe614164fe32a2 (diff)
mesa: Make unreachable macro take a string argument.
To aid in debugging. Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src/mesa/main/compiler.h')
-rw-r--r--src/mesa/main/compiler.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/mesa/main/compiler.h b/src/mesa/main/compiler.h
index 60069172434..79d8740e590 100644
--- a/src/mesa/main/compiler.h
+++ b/src/mesa/main/compiler.h
@@ -253,15 +253,23 @@ static INLINE GLuint CPU_TO_LE32(GLuint x)
* function" warnings.
*/
#if __GNUC__ >= 4 && __GNUC_MINOR__ >= 5
-#define unreachable() __builtin_unreachable()
+#define unreachable(str) \
+do { \
+ assert(!str); \
+ __builtin_unreachable(); \
+} while (0)
#elif (defined(__clang__) && defined(__has_builtin))
# if __has_builtin(__builtin_unreachable)
-# define unreachable() __builtin_unreachable()
+# define unreachable(str) \
+do { \
+ assert(!str); \
+ __builtin_unreachable(); \
+} while (0)
# endif
#endif
#ifndef unreachable
-#define unreachable()
+#define unreachable(str)
#endif
/*