From d9b4867e2ae9d9cfed178a4406644c4f48438665 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Mon, 6 Jan 2025 13:56:40 -0500 Subject: [PATCH] nir/lower_robust_access: fix robustness with atomic swap this was missed in the original v3d pass, and then the common code port inherited the bug. (so strictly this fix "should" be backported even farther back but it won't apply before the Fixes here, and I don't think we do LTS that far back anyway). in theory this should fix a corner case with robustness on the gl (but not vulkan, at least for apple) drivers on broadcom & apple. Fixes: f0fb8d05e30 ("nir: Add nir_lower_robust_access pass") Signed-off-by: Alyssa Rosenzweig Reviewed-by: Lionel Landwerlin Reviewed-by: Iago Toral Quiroga Part-of: --- src/compiler/nir/nir_lower_robust_access.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/compiler/nir/nir_lower_robust_access.c b/src/compiler/nir/nir_lower_robust_access.c index 9bdc9447183..9ac71ad0e2a 100644 --- a/src/compiler/nir/nir_lower_robust_access.c +++ b/src/compiler/nir/nir_lower_robust_access.c @@ -191,6 +191,7 @@ lower(nir_builder *b, nir_intrinsic_instr *intr, void *_opts) lower_buffer_store(b, intr); return true; case nir_intrinsic_ssbo_atomic: + case nir_intrinsic_ssbo_atomic_swap: lower_buffer_atomic(b, intr); return true;