From 4aa88f8d04afcba35a1486e2661e5a29170694bf Mon Sep 17 00:00:00 2001 From: Krzysztof Parzyszek Date: Sat, 26 Apr 2025 07:58:29 -0500 Subject: [PATCH] [flang][OpenMP] Mark atomic clauses as unique The current implementation of the ATOMIC construct handles these clauses individually, and this change does not have an observable effect. At the same time these clauses are unique as per the OpenMP spec, and this patch reflects that in the OMP.td file. --- llvm/include/llvm/Frontend/OpenMP/OMP.td | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/llvm/include/llvm/Frontend/OpenMP/OMP.td b/llvm/include/llvm/Frontend/OpenMP/OMP.td index eff6d57995d2b..cdfd3e3223fa8 100644 --- a/llvm/include/llvm/Frontend/OpenMP/OMP.td +++ b/llvm/include/llvm/Frontend/OpenMP/OMP.td @@ -602,22 +602,20 @@ def OMP_Assume : Directive<"assume"> { ]; } def OMP_Atomic : Directive<"atomic"> { - let allowedClauses = [ - VersionedClause, - VersionedClause, - VersionedClause, - VersionedClause, - VersionedClause, - ]; let allowedOnceClauses = [ VersionedClause, VersionedClause, + VersionedClause, + VersionedClause, VersionedClause, VersionedClause, + VersionedClause, VersionedClause, VersionedClause, VersionedClause, + VersionedClause, VersionedClause, + VersionedClause, ]; let association = AS_Block; let category = CA_Executable; @@ -668,7 +666,7 @@ def OMP_CancellationPoint : Directive<"cancellation point"> { let category = CA_Executable; } def OMP_Critical : Directive<"critical"> { - let allowedClauses = [ + let allowedOnceClauses = [ VersionedClause, ]; let association = AS_Block;