diff --git a/src/compiler/nir/nir_lower_vars_to_ssa.c b/src/compiler/nir/nir_lower_vars_to_ssa.c index 30870e6e35c..3f03f3c6f20 100644 --- a/src/compiler/nir/nir_lower_vars_to_ssa.c +++ b/src/compiler/nir/nir_lower_vars_to_ssa.c @@ -224,7 +224,7 @@ get_deref_node(nir_deref_instr *deref, struct lower_variables_state *state) /* This pass only works on local variables. Just ignore any derefs with * a non-local mode. */ - if (deref->mode != nir_var_function_temp) + if (!nir_deref_mode_must_be(deref, nir_var_function_temp)) return NULL; struct deref_node *node = get_deref_node_recur(deref, state); @@ -555,7 +555,7 @@ rename_variables(struct lower_variables_state *state) switch (intrin->intrinsic) { case nir_intrinsic_load_deref: { nir_deref_instr *deref = nir_src_as_deref(intrin->src[0]); - if (deref->mode != nir_var_function_temp) + if (!nir_deref_mode_must_be(deref, nir_var_function_temp)) continue; struct deref_node *node = get_deref_node(deref, state); @@ -608,7 +608,7 @@ rename_variables(struct lower_variables_state *state) case nir_intrinsic_store_deref: { nir_deref_instr *deref = nir_src_as_deref(intrin->src[0]); - if (deref->mode != nir_var_function_temp) + if (!nir_deref_mode_must_be(deref, nir_var_function_temp)) continue; struct deref_node *node = get_deref_node(deref, state);