From 13234a8a8aaa748eff27319c9d95ff11f2e165d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timur=20Krist=C3=B3f?= Date: Fri, 13 Dec 2024 07:07:52 +0100 Subject: [PATCH] ac/nir: Only export parameters when they are actually varying. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In AMD terminology, varying outputs are implemented by parameter export instructions on GFX6-10.3 GPUs. Only emit those when actually necessary. Signed-off-by: Timur Kristóf Acked-by: Marek Olšák Reviewed-by: Samuel Pitoiset Part-of: --- src/amd/common/ac_nir.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/amd/common/ac_nir.c b/src/amd/common/ac_nir.c index ccf3ac4ef9e..9c8fbb508d0 100644 --- a/src/amd/common/ac_nir.c +++ b/src/amd/common/ac_nir.c @@ -538,7 +538,7 @@ ac_nir_export_parameters(nir_builder *b, uint32_t write_mask = 0; for (int i = 0; i < 4; i++) { if (out->outputs[slot][i]) - write_mask |= BITFIELD_BIT(i); + write_mask |= (out->infos[slot].as_varying_mask & BITFIELD_BIT(i)); } /* no one set this output slot, we can skip the param export */