[llvm] [mlir] [MLIR] Add `InParallelOpInterface` for parallel combining operations (PR #157736)

Han-Chung Wang via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 12 13:41:27 PDT 2025


================
@@ -1911,8 +1911,10 @@ struct FoldTensorCastOfOutputIntoForallOp
     auto terminator = newForallOp.getTerminator();
     for (auto [yieldingOp, outputBlockArg] : llvm::zip(
              terminator.getYieldingOps(), newForallOp.getRegionIterArgs())) {
-      auto insertSliceOp = cast<tensor::ParallelInsertSliceOp>(yieldingOp);
-      insertSliceOp.getDestMutable().assign(outputBlockArg);
+      if (auto inParallelOp =
+              dyn_cast<ParallelCombiningOpInterface>(yieldingOp)) {
+        inParallelOp.getUpdatedDestinations().assign(outputBlockArg);
----------------
hanhanW wrote:

Should we rename it to `parallelOp` or `parallelCombiningOp`?

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


More information about the llvm-commits mailing list