From: Dave Airlie Date: Wed, 31 Jul 2019 04:05:49 +0000 (+1000) Subject: nir: use common deref has indirect code in scratch lowering. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7ad6ec80d96f9dd3311f7897fc1001f5afcb2f51;p=mesa.git nir: use common deref has indirect code in scratch lowering. This doesn't seem to need it's own copy here. Reviewed-by: Jason Ekstrand --- diff --git a/src/compiler/nir/nir_lower_scratch.c b/src/compiler/nir/nir_lower_scratch.c index df0d3f43124..aacc2ddca08 100644 --- a/src/compiler/nir/nir_lower_scratch.c +++ b/src/compiler/nir/nir_lower_scratch.c @@ -34,20 +34,6 @@ #include "nir_builder.h" #include "nir_deref.h" -static bool -deref_has_indirect(nir_deref_instr *deref) -{ - while (deref->deref_type != nir_deref_type_var) { - if (deref->deref_type == nir_deref_type_array && - nir_src_as_const_value(deref->arr.index) == NULL) - return true; - - deref = nir_deref_instr_parent(deref); - } - - return false; -} - static void lower_load_store(nir_builder *b, nir_intrinsic_instr *intrin, @@ -128,7 +114,7 @@ nir_lower_vars_to_scratch(nir_shader *shader, if (!(deref->mode & modes)) continue; - if (!deref_has_indirect(nir_src_as_deref(intrin->src[0]))) + if (!nir_deref_instr_has_indirect(nir_src_as_deref(intrin->src[0]))) continue; nir_variable *var = nir_deref_instr_get_variable(deref);