[Mlir-commits] [mlir] [mlir][mpi] Lowering MPI_Allreduce (PR #133133)
Sergio Sánchez Ramírez
llvmlistbot at llvm.org
Thu Mar 27 08:52:29 PDT 2025
================
@@ -205,15 +291,74 @@ class OMPIImplTraits : public MPIImplTraits {
auto context = rewriter.getContext();
// get external opaque struct pointer type
- auto commStructT =
+ auto typeStructT =
LLVM::LLVMStructType::getOpaque("ompi_predefined_datatype_t", context);
// make sure global op definition exists
- getOrDefineExternalStruct(loc, rewriter, mtype, commStructT);
+ getOrDefineExternalStruct(loc, rewriter, mtype, typeStructT);
// get address of symbol
return rewriter.create<LLVM::AddressOfOp>(
loc, LLVM::LLVMPointerType::get(context),
SymbolRefAttr::get(context, mtype));
}
+
+ Value getMPIOp(const Location loc, ConversionPatternRewriter &rewriter,
+ mpi::MPI_OpClassEnum opAttr) override {
+ StringRef op;
+ switch (opAttr) {
+ case mpi::MPI_OpClassEnum::MPI_OP_NULL:
+ op = "ompi_mpi_no_op";
----------------
mofeing wrote:
aren't these the symbols of OpenMPI?
https://github.com/llvm/llvm-project/pull/133133
More information about the Mlir-commits
mailing list