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@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5513>
This commit is contained in:
Alyssa Rosenzweig 2020-06-16 13:07:02 -04:00
parent 78df3b0375
commit d838cb96a5

View file

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