From 6974e5479ce35720c9898558fcfd45434669c451 Mon Sep 17 00:00:00 2001 From: Rhys Perry Date: Fri, 31 Mar 2023 13:59:59 +0100 Subject: [PATCH] aco: fix nir_var_shader_out barriers for task shaders MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit These will be used in a future commit. Signed-off-by: Rhys Perry Reviewed-by: Timur Kristóf Cc: mesa-stable Part-of: --- src/amd/compiler/aco_instruction_selection.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/amd/compiler/aco_instruction_selection.cpp b/src/amd/compiler/aco_instruction_selection.cpp index d11257b627e..1cd3c423b4c 100644 --- a/src/amd/compiler/aco_instruction_selection.cpp +++ b/src/amd/compiler/aco_instruction_selection.cpp @@ -7242,7 +7242,8 @@ emit_scoped_barrier(isel_context* ctx, nir_intrinsic_instr* instr) storage_allowed |= storage_task_payload; /* Allow VMEM output for all stages that can have outputs. */ - if (ctx->stage.hw != HWStage::CS && ctx->stage.hw != HWStage::FS) + if ((ctx->stage.hw != HWStage::CS && ctx->stage.hw != HWStage::FS) || + ctx->stage.has(SWStage::TS)) storage_allowed |= storage_vmem_output; /* Workgroup barriers can hang merged shaders that can potentially have 0 threads in either half.