From 233f246bdf88ad81cfbccbcef033d02f98e81be9 Mon Sep 17 00:00:00 2001 From: Gert Wollny Date: Thu, 21 Jul 2022 13:36:49 +0200 Subject: [PATCH] r600/sfn: lower undef to zero It's what the backend would do anyway, so let's do it in nir and give the optimizer some chance to profit from possible improvements. Fixes a bad shader with "The Raven Remastered" Signed-off-by: Gert Wollny Part-of: --- src/gallium/drivers/r600/sfn/sfn_nir.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/r600/sfn/sfn_nir.cpp b/src/gallium/drivers/r600/sfn/sfn_nir.cpp index 8f813c22831..8c878849b21 100644 --- a/src/gallium/drivers/r600/sfn/sfn_nir.cpp +++ b/src/gallium/drivers/r600/sfn/sfn_nir.cpp @@ -659,6 +659,7 @@ int r600_shader_from_nir(struct r600_context *rctx, NIR_PASS_V(sel->nir, nir_lower_idiv, &idiv_options); NIR_PASS_V(sel->nir, r600_nir_lower_trigen); NIR_PASS_V(sel->nir, nir_lower_phis_to_scalar, false); + NIR_PASS_V(sel->nir, nir_lower_undef_to_zero); if (lower_64bit) NIR_PASS_V(sel->nir, nir_lower_int64);