nir/split_per_member_structs: Use nir_variable_with_modes_safe
authorJason Ekstrand <jason@jlekstrand.net>
Tue, 21 Jul 2020 16:31:00 +0000 (11:31 -0500)
committerMarge Bot <eric+marge@anholt.net>
Wed, 29 Jul 2020 17:38:58 +0000 (17:38 +0000)
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5966>

src/compiler/nir/nir_split_per_member_structs.c

index 478d5fe72c35d9c36b45f2a2be3b3fb2e1fd6c89..16cf1f234836095674dd6cc7236e0a1a153debba 100644 (file)
@@ -104,12 +104,12 @@ split_variable(struct nir_variable *var, nir_shader *shader,
 }
 
 static bool
-split_variables_in_list(struct exec_list *var_list, nir_shader *shader,
+split_variables_in_list(nir_shader *shader, nir_variable_mode mode,
                         struct hash_table *var_to_member_map, void *dead_ctx)
 {
    bool progress = false;
 
-   nir_foreach_variable_safe(var, var_list) {
+   nir_foreach_variable_with_modes_safe(var, shader, mode) {
       if (var->num_members == 0)
          continue;
 
@@ -177,11 +177,11 @@ nir_split_per_member_structs(nir_shader *shader)
    struct hash_table *var_to_member_map =
       _mesa_pointer_hash_table_create(dead_ctx);
 
-   progress |= split_variables_in_list(&shader->inputs, shader,
+   progress |= split_variables_in_list(shader, nir_var_shader_in,
                                        var_to_member_map, dead_ctx);
-   progress |= split_variables_in_list(&shader->outputs, shader,
+   progress |= split_variables_in_list(shader, nir_var_shader_out,
                                        var_to_member_map, dead_ctx);
-   progress |= split_variables_in_list(&shader->system_values, shader,
+   progress |= split_variables_in_list(shader, nir_var_system_value,
                                        var_to_member_map, dead_ctx);
    if (!progress) {
       ralloc_free(dead_ctx);