9 #ifndef MLIR_DIALECT_LINALG_IR_LINALG_H
10 #define MLIR_DIALECT_LINALG_IR_LINALG_H
63 MLIRContext *context);
68 MLIRContext *context);
71 SmallVector<AffineExpr, 4>
concat(ArrayRef<AffineExpr> a,
72 ArrayRef<AffineExpr> b);
81 #include "mlir/Dialect/Linalg/IR/LinalgOpsDialect.h.inc"
87 #include "mlir/Dialect/Linalg/IR/LinalgOpsEnums.h.inc"
93 #define GET_ATTRDEF_CLASSES
94 #include "mlir/Dialect/Linalg/IR/LinalgOpsAttrDefs.h.inc"
106 #define GET_OP_CLASSES
107 #include "mlir/Dialect/Linalg/IR/LinalgOps.h.inc"
109 #define GET_OP_CLASSES
110 #include "mlir/Dialect/Linalg/IR/LinalgStructuredOps.h.inc"
SmallVector< AffineExpr, 4 > concat(ArrayRef< AffineExpr > a, ArrayRef< AffineExpr > b)
Return the vector that is the concatenation of a and b.
std::string generateLibraryCallName(Operation *op)
Returns the name mangled library call name to disambiguate between different overloads at the C level...
AffineMap extractOrIdentityMap(std::optional< AffineMap > maybeMap, unsigned rank, MLIRContext *context)
Returns maybeMap.get() if maybeMap is set, otherwise returns the symbol-less identity map of rank.
SmallVector< AffineExpr, 4 > makeAffineDimExprs(unsigned num, unsigned &startIdx, MLIRContext *context)
Returns num AffineDimExpr dimensions at positions [startIdx, startIdx + num) and increments startIdx ...
Include the generated interface declarations.