[PATCH] D123235: [OpenMP] atomic compare fail : Parser & AST support
    Alexey Bataev via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Thu Nov 16 12:53:11 PST 2023
    
    
  
ABataev added inline comments.
================
Comment at: clang/include/clang/AST/OpenMPClause.h:2516
 
+extern bool checkFailParameter(OpenMPClauseKind FailParameter);
+/// This represents 'fail' clause in the '#pragma omp atomic'
----------------
No way for extern functions. Declare in include/clang/Basic/OpenMPKinds.h
================
Comment at: clang/include/clang/AST/OpenMPClause.h:2544-2545
+
+    if (!checkFailParameter(FailParameter))
+      llvm_unreachable("Invalid fail clause parameter");
+  }
----------------
================
Comment at: clang/lib/Sema/SemaOpenMP.cpp:17707-17714
+bool clang::checkFailParameter(OpenMPClauseKind FailParameter) {
+  if (FailParameter == llvm::omp::OMPC_acquire ||
+      FailParameter == llvm::omp::OMPC_relaxed ||
+      FailParameter == llvm::omp::OMPC_seq_cst)
+    return true;
+
+  return false;
----------------
Move it to lib/Basic/OpenMPKinds.cpp
================
Comment at: clang/lib/Sema/SemaOpenMP.cpp:17721
+
+  if (!clang::checkFailParameter(Parameter)) {
+    Diag(KindLoc, diag::err_omp_atomic_fail_wrong_or_no_clauses);
----------------
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D123235/new/
https://reviews.llvm.org/D123235
    
    
More information about the llvm-commits
mailing list