From 1124587495fdfce2fa30ddeb8d36c845eb968233 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 4 Jul 2025 13:15:45 -0400 Subject: [PATCH] glsl: don't lower inputs to temps unconditionally It's done later in nir_lower_io_passes only for shader stages not supporting indirect access. Reviewed-by: Alyssa Rosenzweig Part-of: --- src/compiler/glsl/gl_nir_linker.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/compiler/glsl/gl_nir_linker.c b/src/compiler/glsl/gl_nir_linker.c index 6ecc6ac30e6..861349ff211 100644 --- a/src/compiler/glsl/gl_nir_linker.c +++ b/src/compiler/glsl/gl_nir_linker.c @@ -1327,9 +1327,7 @@ preprocess_shader(const struct gl_constants *consts, NIR_PASS(_, nir, gl_nir_zero_initialize_clip_distance); NIR_PASS(_, nir, nir_lower_io_vars_to_temporaries, - nir_shader_get_entrypoint(nir), true, - nir->info.stage == MESA_SHADER_VERTEX || - nir->info.stage == MESA_SHADER_GEOMETRY); + nir_shader_get_entrypoint(nir), true, false); NIR_PASS(_, nir, nir_lower_global_vars_to_local); NIR_PASS(_, nir, nir_split_var_copies);