From a989ca8c8f353484ccd79c4fb1c26b6f9aec66ea Mon Sep 17 00:00:00 2001 From: Benjamin Cheng Date: Sun, 3 May 2026 10:29:10 -0400 Subject: [PATCH] mesa/st: run the lower_opcodes pass for draw shaders Fixes: 5eb0136a3c5 ("mesa/st: when creating draw shader variants, use the base nir and skip driver opts") Closes: https://gitlab.freedesktop.org/mesa/mesa/-/work_items/15304 Signed-off-by: Benjamin Cheng Reviewed-by: Georg Lehmann Part-of: --- src/mesa/state_tracker/st_program.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c index 545cebb34ee..e582b060046 100644 --- a/src/mesa/state_tracker/st_program.c +++ b/src/mesa/state_tracker/st_program.c @@ -815,6 +815,9 @@ st_create_common_variant(struct st_context *st, state.ir.nir = get_nir_shader(st, prog, key->is_draw_shader); const nir_shader_compiler_options *options = state.ir.nir->options; + if (key->is_draw_shader) + NIR_PASS(_, state.ir.nir, draw_nir_lower_opcodes); + if (key->clamp_color) { NIR_PASS(_, state.ir.nir, nir_lower_clamp_color_outputs); }