Mesa (master): glsl: move builtin vector types to glsl_types.cpp

Rob Clark robclark at kemper.freedesktop.org
Fri Oct 16 23:40:25 UTC 2015


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

Author: Rob Clark <robclark at freedesktop.org>
Date:   Sat Oct 10 12:39:57 2015 -0400

glsl: move builtin vector types to glsl_types.cpp

First step at untangling NIR's dependency on glsl_types without bringing
in the dependency on glsl_symbol_table.  The builtin types are now in
glsl_types (which will end up in NIR), but adding them to the symbol-
table stays in builtin_types.cpp (which will not be part of NIR).

Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
Signed-off-by: Rob Clark <robclark at freedesktop.org>

---

 src/glsl/builtin_types.cpp |    4 +---
 src/glsl/glsl_types.cpp    |   14 ++++++++++++++
 2 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/src/glsl/builtin_types.cpp b/src/glsl/builtin_types.cpp
index 0aedbb3..bbdcd19 100644
--- a/src/glsl/builtin_types.cpp
+++ b/src/glsl/builtin_types.cpp
@@ -43,9 +43,7 @@
  * convenience pointers (glsl_type::foo_type).
  * @{
  */
-#define DECL_TYPE(NAME, ...)                                    \
-   const glsl_type glsl_type::_##NAME##_type = glsl_type(__VA_ARGS__, #NAME); \
-   const glsl_type *const glsl_type::NAME##_type = &glsl_type::_##NAME##_type;
+#define DECL_TYPE(NAME, ...)
 
 #define STRUCT_TYPE(NAME)                                       \
    const glsl_type glsl_type::_struct_##NAME##_type =           \
diff --git a/src/glsl/glsl_types.cpp b/src/glsl/glsl_types.cpp
index 2793447..1c66dce 100644
--- a/src/glsl/glsl_types.cpp
+++ b/src/glsl/glsl_types.cpp
@@ -1729,3 +1729,17 @@ glsl_type::coordinate_components() const
 
    return size;
 }
+
+/**
+ * Declarations of type flyweights (glsl_type::_foo_type) and
+ * convenience pointers (glsl_type::foo_type).
+ * @{
+ */
+#define DECL_TYPE(NAME, ...)                                    \
+   const glsl_type glsl_type::_##NAME##_type = glsl_type(__VA_ARGS__, #NAME); \
+   const glsl_type *const glsl_type::NAME##_type = &glsl_type::_##NAME##_type;
+
+#define STRUCT_TYPE(NAME)
+
+#include "builtin_type_macros.h"
+/** @} */




More information about the mesa-commit mailing list