================
@@ -9820,7 +9822,8 @@ void CGOpenMPRuntime::adjustTargetSpecificDataForLambdas(
 
 void CGOpenMPRuntime::processRequiresDirective(const OMPRequiresDecl *D) {
   for (const OMPClause *Clause : D->clauselists()) {
-    if (Clause->getClauseKind() == OMPC_unified_shared_memory) {
+    if (Clause->getClauseKind() == OMPC_unified_shared_memory ||
+        Clause->getClauseKind() == OMPC_self_maps) {
----------------
dreachem wrote:

A self map (e.g., `map(self: x)`) by itself doesn't require unified shared 
memory. However, a `requires self_maps` directive does imply the 
`unified_shared_memory` requirement according to the spec. I suppose we could 
have said that USM is not implied and make them orthogonal properties, but 
that's not the direction we ended up taking with the requirement. 

https://github.com/llvm/llvm-project/pull/134131
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to