From d838cb96a57f00c8a15ceca0b1a25fb786af622f Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Tue, 16 Jun 2020 13:07:02 -0400 Subject: [PATCH] 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 Part-of: --- 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); -- 2.30.2