1 //===- MPI.cpp - MPI dialect implementation -------------------------------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #include "mlir/Dialect/MPI/IR/MPI.h" 10 #include "mlir/IR/Builders.h" 11 #include "mlir/IR/BuiltinAttributes.h" 12 #include "mlir/IR/DialectImplementation.h" 13 #include "llvm/ADT/TypeSwitch.h" 14 15 using namespace mlir; 16 using namespace mlir::mpi; 17 18 //===----------------------------------------------------------------------===// 19 /// Tablegen Definitions 20 //===----------------------------------------------------------------------===// 21 22 #include "mlir/Dialect/MPI/IR/MPI.cpp.inc" 23 24 #include "mlir/Dialect/MPI/IR/MPIDialect.cpp.inc" 25 initialize()26void MPIDialect::initialize() { 27 addOperations< 28 #define GET_OP_LIST 29 #include "mlir/Dialect/MPI/IR/MPIOps.cpp.inc" 30 >(); 31 32 addTypes< 33 #define GET_TYPEDEF_LIST 34 #include "mlir/Dialect/MPI/IR/MPITypesGen.cpp.inc" 35 >(); 36 37 addAttributes< 38 #define GET_ATTRDEF_LIST 39 #include "mlir/Dialect/MPI/IR/MPIAttrDefs.cpp.inc" 40 >(); 41 } 42 43 //===----------------------------------------------------------------------===// 44 // TableGen'd dialect, type, and op definitions 45 //===----------------------------------------------------------------------===// 46 47 #define GET_TYPEDEF_CLASSES 48 #include "mlir/Dialect/MPI/IR/MPITypesGen.cpp.inc" 49 50 #include "mlir/Dialect/MPI/IR/MPIEnums.cpp.inc" 51 52 #define GET_ATTRDEF_CLASSES 53 #include "mlir/Dialect/MPI/IR/MPIAttrDefs.cpp.inc" 54