Mesa (master): swr/rast: add SWR_STATIC_ASSERT() macro

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Apr 30 19:56:01 UTC 2019


Module: Mesa
Branch: master
Commit: 9d01f4d63137a87a55604409137df57fd0ca48b1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9d01f4d63137a87a55604409137df57fd0ca48b1

Author: Alok Hota <alok.hota at intel.com>
Date:   Wed Jun 20 12:16:36 2018 -0500

swr/rast: add SWR_STATIC_ASSERT() macro

Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com>

---

 src/gallium/drivers/swr/rasterizer/common/swr_assert.h | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/swr/rasterizer/common/swr_assert.h b/src/gallium/drivers/swr/rasterizer/common/swr_assert.h
index d74b7981255..7e90e21e12f 100644
--- a/src/gallium/drivers/swr/rasterizer/common/swr_assert.h
+++ b/src/gallium/drivers/swr/rasterizer/common/swr_assert.h
@@ -192,7 +192,11 @@ void SwrTrace(
 #define SWR_INVALID(...)                                                                       \
     _SWR_INVALID_CONCAT(_SWR_INVALID_, _SWR_INVALID_VARGS(_SWR_INVALID_VARGS_0 __VA_ARGS__())) \
     (__VA_ARGS__)
-#endif
+
+#define SWR_STATIC_ASSERT(expression, ...) \
+    static_assert((expression), "Failed:\n    " #expression "\n    " __VA_ARGS__);
+
+#endif // SWR_ENABLE_REL_ASSERTS
 
 #endif // C++
 
@@ -226,6 +230,9 @@ static bool SwrSizeofWorkaround(T)
 #define SWR_REL_TRACE(_fmtstr, ...) \
     _SWR_MACRO_START(void)(0);      \
     _SWR_MACRO_END
+#define SWR_STATIC_ASSERT(e, ...)                           \
+    _SWR_MACRO_START(void)  sizeof(SwrSizeofWorkaround(e)); \
+    _SWR_MACRO_END
 #endif
 
 #if defined(_MSC_VER)




More information about the mesa-commit mailing list