Mesa (master): pan/mdg: Defer nir_fuse_io_16 until after opts

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Jul 2 19:11:40 UTC 2020


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

Author: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Date:   Tue Jun 16 13:07:02 2020 -0400

pan/mdg: Defer nir_fuse_io_16 until after opts

Sometimes DCE/etc can opt out things that would force 32-bit, so this is
worthwhile.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5513>

---

 src/panfrost/midgard/midgard_compile.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/panfrost/midgard/midgard_compile.c b/src/panfrost/midgard/midgard_compile.c
index 117ee757162..f9198288ba8 100644
--- a/src/panfrost/midgard/midgard_compile.c
+++ b/src/panfrost/midgard/midgard_compile.c
@@ -473,9 +473,6 @@ optimise_nir(nir_shader *nir, unsigned quirks, bool is_blend)
 
         NIR_PASS(progress, nir, midgard_nir_lower_algebraic_early);
 
-        if (!is_blend)
-                NIR_PASS(progress, nir, nir_fuse_io_16);
-
         do {
                 progress = false;
 
@@ -522,6 +519,10 @@ optimise_nir(nir_shader *nir, unsigned quirks, bool is_blend)
                 NIR_PASS(progress, nir, nir_opt_vectorize);
         } while (progress);
 
+        /* Run after opts so it can hit more */
+        if (!is_blend)
+                NIR_PASS(progress, nir, nir_fuse_io_16);
+
         /* Must be run at the end to prevent creation of fsin/fcos ops */
         NIR_PASS(progress, nir, midgard_nir_scale_trig);
 



More information about the mesa-commit mailing list