[Mlir-commits] [mlir] [mlir][mesh, mpi] Lower allreduce (PR #144060)
Christian Ulmann
llvmlistbot at llvm.org
Mon Jun 16 04:20:32 PDT 2025
================
@@ -207,17 +207,27 @@ createCollectiveProcessGroupSize(MeshOp mesh, ArrayRef<MeshAxis> axes,
builder.getIndexType()));
}
-TypedValue<IndexType> createProcessLinearIndex(StringRef mesh,
- ArrayRef<MeshAxis> meshAxes,
- ImplicitLocOpBuilder &builder) {
- ResultRange processInGroupMultiIndex =
- builder.create<ProcessMultiIndexOp>(mesh, meshAxes).getResults();
+TypedValue<IndexType>
+createProcessLinearIndex(StringRef mesh, ValueRange processInGroupMultiIndex,
+ ArrayRef<MeshAxis> meshAxes,
+ ImplicitLocOpBuilder &builder) {
Operation::result_range processGroupShape =
builder.create<MeshShapeOp>(mesh, meshAxes).getResult();
OpFoldResult processInGroupLinearIndex = affine::linearizeIndex(
llvm::to_vector_of<OpFoldResult>(processInGroupMultiIndex),
llvm::to_vector_of<OpFoldResult>(processGroupShape), builder);
- return cast<TypedValue<IndexType>>(cast<Value>(processInGroupLinearIndex));
+ Value res = dyn_cast<Value>(processInGroupLinearIndex);
----------------
Dinistro wrote:
```suggestion
auto res = dyn_cast<Value>(processInGroupLinearIndex);
```
https://github.com/llvm/llvm-project/pull/144060
More information about the Mlir-commits
mailing list