}
/* uniform as "atomic counter uniform" */
- if (ptr->mode == vtn_variable_mode_uniform) {
+ if (ptr->mode == vtn_variable_mode_atomic_counter) {
nir_deref_instr *deref = vtn_pointer_to_deref(b, ptr);
nir_intrinsic_op op = get_uniform_nir_atomic_op(b, opcode);
atomic = nir_intrinsic_instr_create(b->nb.shader, op);
vtn_variable_mode_function,
vtn_variable_mode_private,
vtn_variable_mode_uniform,
+ vtn_variable_mode_atomic_counter,
vtn_variable_mode_ubo,
vtn_variable_mode_ssbo,
vtn_variable_mode_phys_ssbo,
nir_mode = nir_var_mem_shared;
break;
case SpvStorageClassAtomicCounter:
- mode = vtn_variable_mode_uniform;
+ mode = vtn_variable_mode_atomic_counter;
nir_mode = nir_var_uniform;
break;
case SpvStorageClassCrossWorkgroup:
case vtn_variable_mode_private:
case vtn_variable_mode_uniform:
+ case vtn_variable_mode_atomic_counter:
case vtn_variable_mode_input:
case vtn_variable_mode_output:
case vtn_variable_mode_image:
case vtn_variable_mode_function:
case vtn_variable_mode_private:
case vtn_variable_mode_uniform:
+ case vtn_variable_mode_atomic_counter:
/* For these, we create the variable normally */
var->var = rzalloc(b->shader, nir_variable);
var->var->name = ralloc_strdup(var->var, val->name);
- if (storage_class == SpvStorageClassAtomicCounter) {
+ if (var->mode == vtn_variable_mode_atomic_counter) {
/* Need to tweak the nir type here as at vtn_handle_type we don't
* have the access to storage_class, that is the one that points us
* that is an atomic uint.