summaryrefslogtreecommitdiffstats
path: root/src/glsl/ir_clone.cpp
diff options
context:
space:
mode:
authorFrancisco Jerez <currojerez@riseup.net>2013-10-20 12:35:47 -0700
committerFrancisco Jerez <currojerez@riseup.net>2013-10-29 12:40:55 -0700
commit26db3b933f7fbc81d6c2bead2a8b0479a3691424 (patch)
tree217193e3025d3946565e809793508ad797497279 /src/glsl/ir_clone.cpp
parent0bed1ab73bc8a673b4d7d590d9d39b76fd8bf797 (diff)
downloadexternal_mesa3d-26db3b933f7fbc81d6c2bead2a8b0479a3691424.zip
external_mesa3d-26db3b933f7fbc81d6c2bead2a8b0479a3691424.tar.gz
external_mesa3d-26db3b933f7fbc81d6c2bead2a8b0479a3691424.tar.bz2
glsl: Add new atomic_uint built-in GLSL type.
v2: Fix GLSL version in which the type became available. Add contains_atomic() convenience method. Split off atomic counter comparison error checking to a separate patch that will handle all opaque types. Include new ir_variable fields for atomic types. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Diffstat (limited to 'src/glsl/ir_clone.cpp')
-rw-r--r--src/glsl/ir_clone.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/glsl/ir_clone.cpp b/src/glsl/ir_clone.cpp
index 105f906..b0f173a 100644
--- a/src/glsl/ir_clone.cpp
+++ b/src/glsl/ir_clone.cpp
@@ -57,6 +57,8 @@ ir_variable::clone(void *mem_ctx, struct hash_table *ht) const
var->location = this->location;
var->index = this->index;
var->binding = this->binding;
+ var->atomic.buffer_index = this->atomic.buffer_index;
+ var->atomic.offset = this->atomic.offset;
var->warn_extension = this->warn_extension;
var->origin_upper_left = this->origin_upper_left;
var->pixel_center_integer = this->pixel_center_integer;
@@ -395,6 +397,7 @@ ir_constant::clone(void *mem_ctx, struct hash_table *ht) const
}
case GLSL_TYPE_SAMPLER:
+ case GLSL_TYPE_ATOMIC_UINT:
case GLSL_TYPE_VOID:
case GLSL_TYPE_ERROR:
case GLSL_TYPE_INTERFACE: