Mesa (master): nir: use common deref has indirect code in scratch lowering.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Jul 31 22:32:28 UTC 2019


Module: Mesa
Branch: master
Commit: 7ad6ec80d96f9dd3311f7897fc1001f5afcb2f51
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7ad6ec80d96f9dd3311f7897fc1001f5afcb2f51

Author: Dave Airlie <airlied at redhat.com>
Date:   Wed Jul 31 14:05:49 2019 +1000

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 <jason at jlekstrand.net>

---

 src/compiler/nir/nir_lower_scratch.c | 16 +---------------
 1 file changed, 1 insertion(+), 15 deletions(-)

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);




More information about the mesa-commit mailing list