From 8ab40f517fa5620e9b44f1f352e3e66b0e5b7b34 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Wed, 15 Sep 2021 11:51:42 -0500 Subject: [PATCH] aco: Split var_mem_image barrier handling from global/ssbo Reviewed-by: Rhys Perry Part-of: --- src/amd/compiler/aco_instruction_selection.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/amd/compiler/aco_instruction_selection.cpp b/src/amd/compiler/aco_instruction_selection.cpp index a7572e534eb..fe66ae7603c 100644 --- a/src/amd/compiler/aco_instruction_selection.cpp +++ b/src/amd/compiler/aco_instruction_selection.cpp @@ -7080,8 +7080,10 @@ emit_scoped_barrier(isel_context* ctx, nir_intrinsic_instr* instr) ctx->stage.hw == HWStage::CS || ctx->stage.hw == HWStage::HS || ctx->stage.hw == HWStage::NGG; unsigned nir_storage = nir_intrinsic_memory_modes(instr); - if (nir_storage & (nir_var_mem_ssbo | nir_var_mem_global | nir_var_mem_image)) - storage |= storage_buffer | storage_image; // TODO: split this when NIR gets nir_var_mem_image + if (nir_storage & (nir_var_mem_ssbo | nir_var_mem_global)) + storage |= storage_buffer; + if (nir_storage & nir_var_mem_image) + storage |= storage_image; if (shared_storage_used && (nir_storage & nir_var_mem_shared)) storage |= storage_shared;