[Mlir-commits] [clang] [mlir] [OpenACC][CIR] Implement 'gang' lowering for 'loop' (PR #138968)

Bruno Cardoso Lopes llvmlistbot at llvm.org
Thu May 8 11:59:02 PDT 2025


================
@@ -424,6 +436,42 @@ class OpenACCClauseCIREmitter final
       return clauseNotImplemented(clause);
     }
   }
+
+  void VisitGangClause(const OpenACCGangClause &clause) {
+    if constexpr (isOneOfTypes<OpTy, mlir::acc::LoopOp>) {
+      if (clause.getNumExprs() == 0) {
+        operation.addEmptyGang(builder.getContext(), lastDeviceTypeValues);
+      } else {
+        llvm::SmallVector<mlir::Value> values;
+        llvm::SmallVector<mlir::acc::GangArgType> argTypes;
+        for (unsigned I = 0; I < clause.getNumExprs(); ++I) {
----------------
bcardosolopes wrote:

`llvm::enumarate` perhaps?

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


More information about the Mlir-commits mailing list