xref: /llvm-project/mlir/lib/Dialect/Polynomial/IR/PolynomialDialect.cpp (revision 145176dc0c93566ce4aef721044d49ab8ba50f87)
1 //===- PolynomialDialect.cpp - Polynomial dialect ---------------*- C++ -*-===//
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/Polynomial/IR/Polynomial.h"
10 
11 #include "mlir/Dialect/Arith/IR/Arith.h"
12 #include "mlir/Dialect/Polynomial/IR/PolynomialAttributes.h"
13 #include "mlir/Dialect/Polynomial/IR/PolynomialOps.h"
14 #include "mlir/Dialect/Polynomial/IR/PolynomialTypes.h"
15 #include "mlir/IR/Builders.h"
16 #include "mlir/IR/BuiltinOps.h"
17 #include "mlir/IR/BuiltinTypes.h"
18 #include "mlir/IR/Dialect.h"
19 #include "mlir/IR/PatternMatch.h"
20 #include "mlir/Interfaces/InferTypeOpInterface.h"
21 #include "mlir/Support/LogicalResult.h"
22 #include "llvm/ADT/APInt.h"
23 #include "llvm/ADT/TypeSwitch.h"
24 
25 using namespace mlir;
26 using namespace mlir::polynomial;
27 
28 #include "mlir/Dialect/Polynomial/IR/PolynomialDialect.cpp.inc"
29 
30 #define GET_ATTRDEF_CLASSES
31 #include "mlir/Dialect/Polynomial/IR/PolynomialAttributes.cpp.inc"
32 #define GET_TYPEDEF_CLASSES
33 #include "mlir/Dialect/Polynomial/IR/PolynomialTypes.cpp.inc"
34 #define GET_OP_CLASSES
35 #include "mlir/Dialect/Polynomial/IR/Polynomial.cpp.inc"
36 
37 void PolynomialDialect::initialize() {
38   addAttributes<
39 #define GET_ATTRDEF_LIST
40 #include "mlir/Dialect/Polynomial/IR/PolynomialAttributes.cpp.inc"
41       >();
42   addTypes<
43 #define GET_TYPEDEF_LIST
44 #include "mlir/Dialect/Polynomial/IR/PolynomialTypes.cpp.inc"
45       >();
46   addOperations<
47 #define GET_OP_LIST
48 #include "mlir/Dialect/Polynomial/IR/Polynomial.cpp.inc"
49       >();
50 }
51