[flang] [llvm] Adding parsing support for omp loop, target loop directives (PR #93517)

Michael Klemm via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 5 01:18:09 PDT 2024


================
@@ -2232,6 +2232,35 @@ def OMP_teams_loop : Directive<"teams loop"> {
   ];
   let leafConstructs = [OMP_Teams, OMP_loop];
 }
+def OMP_target_loop : Directive<"target loop"> {
+  let allowedClauses = [
+    VersionedClause<OMPC_Allocate>,
+    VersionedClause<OMPC_Depend>,
+    VersionedClause<OMPC_FirstPrivate>,
+    VersionedClause<OMPC_IsDevicePtr>,
+    VersionedClause<OMPC_HasDeviceAddr, 51>,
+    VersionedClause<OMPC_LastPrivate>,
+    VersionedClause<OMPC_Map>,
+    VersionedClause<OMPC_Private>,
+    VersionedClause<OMPC_Reduction>,
+    VersionedClause<OMPC_UsesAllocators, 50>,
+    VersionedClause<OMPC_OMPX_Attribute>,
+    VersionedClause<OMPC_InReduction, 50>,
----------------
mjklemm wrote:

Are `InReduction` and `Allocate` coming in due to the `target` construct?  `loop` does not support these on its own.

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


More information about the llvm-commits mailing list