From 023e3554e97f5730fca20ad94026c772d63ae5e5 Mon Sep 17 00:00:00 2001 From: Georg Lehmann Date: Tue, 17 Mar 2026 22:50:48 +0100 Subject: [PATCH] ir3: set progress for nir_opt_large_constants I guess the original intention was that ir3_nir_lower_load_constant will always make progress if nir_opt_large_constants made progress, but this is not the case with the small constant arrays optimizations. Reviewed-by: Emma Anholt Reviewed-by: Alyssa Rosenzweig Part-of: --- src/freedreno/ir3/ir3_nir.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/freedreno/ir3/ir3_nir.c b/src/freedreno/ir3/ir3_nir.c index 333b1e6bb9c..1102a8b98b7 100644 --- a/src/freedreno/ir3/ir3_nir.c +++ b/src/freedreno/ir3/ir3_nir.c @@ -1497,8 +1497,8 @@ ir3_nir_lower_variant(struct ir3_shader_variant *so, * straddling loads. Align everything to vec4 to avoid that, though we * could theoretically do better. */ - OPT(s, nir_opt_large_constants, glsl_get_vec4_size_align_bytes, - 32 /* bytes */); + progress |= OPT(s, nir_opt_large_constants, glsl_get_vec4_size_align_bytes, + 32 /* bytes */); progress |= OPT(s, ir3_nir_lower_load_constant, so); /* Lower large temporaries to scratch, which in Qualcomm terms is private