nir: Add a lowering pass to split 64bit phis
[mesa.git] / src / compiler / nir / nir_opt_access.c
index e2a6b8f274775fc12090d076c51223fffe34d6a4..d428e29f6ea24fa22940f9f83f3a89b6148ce4d9 100644 (file)
@@ -120,6 +120,7 @@ gather_intrinsic(struct access_state *state, nir_intrinsic_instr *instr)
 
       _mesa_set_add(state->vars_written, var);
       state->buffers_written = true;
+      break;
 
    case nir_intrinsic_memory_barrier:
       state->buffer_barriers = true;
@@ -134,7 +135,7 @@ gather_intrinsic(struct access_state *state, nir_intrinsic_instr *instr)
       state->image_barriers = true;
       break;
 
-   case nir_intrinsic_scoped_memory_barrier:
+   case nir_intrinsic_scoped_barrier:
       /* TODO: Could be more granular if we had nir_var_mem_image. */
       if (nir_intrinsic_memory_modes(instr) & (nir_var_mem_ubo |
                                                nir_var_mem_ssbo |
@@ -321,7 +322,9 @@ nir_opt_access(nir_shader *shader)
       }
    }
 
-   nir_foreach_variable(var, &shader->uniforms)
+   nir_foreach_variable_with_modes(var, shader, nir_var_uniform |
+                                                nir_var_mem_ubo |
+                                                nir_var_mem_ssbo)
       var_progress |= process_variable(&state, var);
 
    nir_foreach_function(func, shader) {