[Mesa-dev] [PATCH v2 60/82] glsl: atomic counters can be declared as buffer-qualified variables

Iago Toral Quiroga itoral at igalia.com
Wed Jun 3 00:01:50 PDT 2015


From: Kristian Høgsberg <krh at bitplanet.net>

---
 src/glsl/ast_to_hir.cpp | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp
index d6097ba..77d8b9e 100644
--- a/src/glsl/ast_to_hir.cpp
+++ b/src/glsl/ast_to_hir.cpp
@@ -2764,7 +2764,7 @@ apply_type_qualifier_to_variable(const struct ast_type_qualifier *qual,
    }
 
    if (var->type->contains_atomic()) {
-      if (var->data.mode == ir_var_uniform) {
+      if (var->data.mode == ir_var_uniform || var->data.mode == ir_var_shader_storage) {
          if (var->data.explicit_binding) {
             unsigned *offset =
                &state->atomic_counter_offsets[var->data.binding];
@@ -2782,8 +2782,8 @@ apply_type_qualifier_to_variable(const struct ast_type_qualifier *qual,
          }
       } else if (var->data.mode != ir_var_function_in) {
          _mesa_glsl_error(loc, state, "atomic counters may only be declared as "
-                          "function parameters or uniform-qualified "
-                          "global variables");
+                          "function parameters, uniform-qualified or "
+                          "buffer-qualified global variables");
       }
    }
 
-- 
1.9.1



More information about the mesa-dev mailing list