From 7f7dbf68f40436fb06492bc55c30b61fb436b9bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 21 Nov 2025 12:52:15 -0500 Subject: [PATCH] radeonsi: call si_nir_mark_divergent_texture_non_uniform later it doesn't have to be called in finalize_nir Acked-by: Pierre-Eric Pelloux-Prayer Part-of: --- src/gallium/drivers/radeonsi/si_shader.c | 2 ++ src/gallium/drivers/radeonsi/si_shader_nir.c | 2 -- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index 1d0f1bde5b6..6e8132aa303 100644 --- a/src/gallium/drivers/radeonsi/si_shader.c +++ b/src/gallium/drivers/radeonsi/si_shader.c @@ -812,6 +812,8 @@ static void run_pre_link_optimization_passes(struct si_nir_shader_ctx *ctx) /* Lower all other indirect indexing to if-else ladders or scratch. */ progress |= ac_nir_lower_indirect_derefs(nir, sel->screen->info.gfx_level); + NIR_PASS(_, nir, si_nir_mark_divergent_texture_non_uniform); + if (progress) si_nir_opts(shader->selector->screen, nir, false); } diff --git a/src/gallium/drivers/radeonsi/si_shader_nir.c b/src/gallium/drivers/radeonsi/si_shader_nir.c index c9d268e7073..1a5c651e59b 100644 --- a/src/gallium/drivers/radeonsi/si_shader_nir.c +++ b/src/gallium/drivers/radeonsi/si_shader_nir.c @@ -435,6 +435,4 @@ void si_finalize_nir(struct pipe_screen *screen, struct nir_shader *nir, NIR_PASS(progress, nir, nir_opt_large_constants, glsl_get_natural_size_align_bytes, 16); if (progress) si_nir_opts(sscreen, nir, false); - - NIR_PASS(_, nir, si_nir_mark_divergent_texture_non_uniform); }