From 190f838ea4a10b1f5c365f959849c5663dc55a5e Mon Sep 17 00:00:00 2001 From: nmzik Date: Wed, 7 Oct 2026 21:25:53 +0400 Subject: [PATCH] shader: preserve workgroup bounds for scalar image descriptor tables --- src/graphics/shader/recompiler/ir/passes/ResourceTracking.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/graphics/shader/recompiler/ir/passes/ResourceTracking.cpp b/src/graphics/shader/recompiler/ir/passes/ResourceTracking.cpp index c6f4b17f1..59804cf18 100644 --- a/src/graphics/shader/recompiler/ir/passes/ResourceTracking.cpp +++ b/src/graphics/shader/recompiler/ir/passes/ResourceTracking.cpp @@ -1731,7 +1731,7 @@ private: indirect.table_immediate = table_immediate; indirect.table_stride = table_stride; indirect.workgroup_axis = WorkgroupAxis(key); - if (indirect.workgroup_axis != UINT32_MAX && table_source.dword_count == 2u) { + if (indirect.workgroup_axis != UINT32_MAX && !plan.table_indexed) { // The descriptor also supplies dimensions to shader arithmetic. Keep its reads; // only the image handle is projected onto the bounded workgroup key. plan.retain_reads = true;