summaryrefslogtreecommitdiffstats
path: root/src/glsl/ir_clone.cpp
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2013-01-21 21:51:15 -0500
committerIan Romanick <ian.d.romanick@intel.com>2013-01-25 09:07:34 -0500
commit7a7b44b329c8090969587d1dab23721d47f82e4a (patch)
treee15923406c8513af904911c4eeee92a5ec210fd1 /src/glsl/ir_clone.cpp
parent13be1f4a103802ed936f2374d72b2f6979dafd58 (diff)
downloadexternal_mesa3d-7a7b44b329c8090969587d1dab23721d47f82e4a.zip
external_mesa3d-7a7b44b329c8090969587d1dab23721d47f82e4a.tar.gz
external_mesa3d-7a7b44b329c8090969587d1dab23721d47f82e4a.tar.bz2
glsl: Add ir_variable::interface_type field
For variables that are in an interface block or are an instance of an interface block, this is the GLSL_TYPE_INTERFACE type for that block. Convert the ir_variable::is_in_uniform_block method added in the previous commit to use this field instead of ir_variable::uniform_block. v2: Fix the place-holder comment on ir_variable::interface_type. Suggested by Paul Berry. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Carl Worth <cworth@cworth.org> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Diffstat (limited to 'src/glsl/ir_clone.cpp')
-rw-r--r--src/glsl/ir_clone.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/glsl/ir_clone.cpp b/src/glsl/ir_clone.cpp
index 3e22f2d..c221a96 100644
--- a/src/glsl/ir_clone.cpp
+++ b/src/glsl/ir_clone.cpp
@@ -77,6 +77,8 @@ ir_variable::clone(void *mem_ctx, struct hash_table *ht) const
var->constant_initializer =
this->constant_initializer->clone(mem_ctx, ht);
+ var->interface_type = this->interface_type;
+
if (ht) {
hash_table_insert(ht, var, (void *)const_cast<ir_variable *>(this));
}