nir/scheduler: Move nir_scheduler to its own header
[mesa.git] / src / compiler / glsl / gl_nir_lower_atomics.c
index 293730966fdca584b6fbac11e8b4fd11308d2a1d..60642e7130a670b5075634a459dabe42f5507bf3 100644 (file)
@@ -53,8 +53,12 @@ lower_deref_instr(nir_builder *b, nir_intrinsic_instr *instr,
       op = nir_intrinsic_atomic_counter_inc;
       break;
 
-   case nir_intrinsic_atomic_counter_dec_deref:
-      op = nir_intrinsic_atomic_counter_dec;
+   case nir_intrinsic_atomic_counter_pre_dec_deref:
+      op = nir_intrinsic_atomic_counter_pre_dec;
+      break;
+
+   case nir_intrinsic_atomic_counter_post_dec_deref:
+      op = nir_intrinsic_atomic_counter_post_dec;
       break;
 
    case nir_intrinsic_atomic_counter_add_deref:
@@ -97,8 +101,8 @@ lower_deref_instr(nir_builder *b, nir_intrinsic_instr *instr,
    nir_variable *var = nir_deref_instr_get_variable(deref);
 
    if (var->data.mode != nir_var_uniform &&
-       var->data.mode != nir_var_shader_storage &&
-       var->data.mode != nir_var_shared)
+       var->data.mode != nir_var_mem_ssbo &&
+       var->data.mode != nir_var_mem_shared)
       return false; /* atomics passed as function arguments can't be lowered */
 
    const unsigned uniform_loc = var->data.location;