glsl: atomic counters can be declared as buffer-qualified variables
Signed-off-by: Samuel Iglesias Gonsalvez <siglesias@igalia.com> Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
This commit is contained in:
parent
475d9c32d1
commit
586142658e
|
@ -2789,7 +2789,7 @@ apply_type_qualifier_to_variable(const struct ast_type_qualifier *qual,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (var->type->contains_atomic()) {
|
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) {
|
if (var->data.explicit_binding) {
|
||||||
unsigned *offset =
|
unsigned *offset =
|
||||||
&state->atomic_counter_offsets[var->data.binding];
|
&state->atomic_counter_offsets[var->data.binding];
|
||||||
|
@ -2807,8 +2807,8 @@ apply_type_qualifier_to_variable(const struct ast_type_qualifier *qual,
|
||||||
}
|
}
|
||||||
} else if (var->data.mode != ir_var_function_in) {
|
} else if (var->data.mode != ir_var_function_in) {
|
||||||
_mesa_glsl_error(loc, state, "atomic counters may only be declared as "
|
_mesa_glsl_error(loc, state, "atomic counters may only be declared as "
|
||||||
"function parameters or uniform-qualified "
|
"function parameters, uniform-qualified or "
|
||||||
"global variables");
|
"buffer-qualified global variables");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue