[clang] [clang][OpenMP] OpenMP 6.0 updates to restrictions with order/concurrent (PR #125621)

via cfe-commits cfe-commits at lists.llvm.org
Mon Feb 3 19:28:38 PST 2025


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff 13ded6829bf7ca793795c50d47dd2b95482e5cfa deffda7ca37661781f1bae565ac8ae4a8fbba674 --extensions h,cpp -- clang/include/clang/Basic/OpenMPKinds.h clang/lib/Basic/OpenMPKinds.cpp clang/lib/Sema/SemaOpenMP.cpp clang/test/OpenMP/for_order_messages.cpp
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/clang/lib/Basic/OpenMPKinds.cpp b/clang/lib/Basic/OpenMPKinds.cpp
index 8398eabceb..956d92a7e9 100644
--- a/clang/lib/Basic/OpenMPKinds.cpp
+++ b/clang/lib/Basic/OpenMPKinds.cpp
@@ -765,10 +765,10 @@ bool clang::isOpenMPCapturingDirective(OpenMPDirectiveKind DKind) {
   return false;
 }
 
-bool clang::isOpenMPOrderConcurrentNestableDirective(OpenMPDirectiveKind DKind) {
-  return DKind == OMPD_atomic || DKind == OMPD_loop ||
-         DKind == OMPD_simd || DKind == OMPD_parallel ||
-         isOpenMPLoopTransformationDirective(DKind);
+bool clang::isOpenMPOrderConcurrentNestableDirective(
+    OpenMPDirectiveKind DKind) {
+  return DKind == OMPD_atomic || DKind == OMPD_loop || DKind == OMPD_simd ||
+         DKind == OMPD_parallel || isOpenMPLoopTransformationDirective(DKind);
 }
 
 void clang::getOpenMPCaptureRegions(
diff --git a/clang/lib/Sema/SemaOpenMP.cpp b/clang/lib/Sema/SemaOpenMP.cpp
index 3bba93c956..8d8405c696 100644
--- a/clang/lib/Sema/SemaOpenMP.cpp
+++ b/clang/lib/Sema/SemaOpenMP.cpp
@@ -4789,14 +4789,14 @@ static bool checkNestingOfRegions(Sema &SemaRef, const DSAStackTy *Stack,
   OpenMPDirectiveKind EnclosingConstruct = ParentLOC.back();
 
   if (Stack->isParentOrderConcurrent()) {
-    bool InvalidOrderNesting = false; 
+    bool InvalidOrderNesting = false;
     if ((SemaRef.LangOpts.OpenMP == 51 || SemaRef.LangOpts.OpenMP == 52) &&
-        CurrentRegion != OMPD_simd &&
-        CurrentRegion != OMPD_loop && CurrentRegion != OMPD_parallel &&
+        CurrentRegion != OMPD_simd && CurrentRegion != OMPD_loop &&
+        CurrentRegion != OMPD_parallel &&
         !isOpenMPCombinedParallelADirective(CurrentRegion)) {
       InvalidOrderNesting = true;
     } else if (SemaRef.LangOpts.OpenMP >= 60 &&
-        !isOpenMPOrderConcurrentNestableDirective(CurrentRegion)) {
+               !isOpenMPOrderConcurrentNestableDirective(CurrentRegion)) {
       // OpenMP 6.0 [12.3 order Clause, Restrictions]
       // Only regions that correspond to order-concurrent-nestable constructs
       // or order-concurrent-nestable routines may be strictly nested regions

``````````

</details>


https://github.com/llvm/llvm-project/pull/125621


More information about the cfe-commits mailing list