|
MLIR
22.0.0git
|
#include "mlir/IR/Visitors.h"#include "mlir/Support/LLVM.h"#include "llvm/ADT/DenseMapInfo.h"#include "llvm/ADT/Hashing.h"#include "llvm/ADT/SmallVector.h"#include "llvm/Support/Casting.h"#include <type_traits>Go to the source code of this file.
Classes | |
| class | mlir::AffineExpr |
| Base type for affine expression. More... | |
| class | mlir::AffineBinaryOpExpr |
| Affine binary operation expression. More... | |
| class | mlir::AffineDimExpr |
| A dimensional identifier appearing in an affine expression. More... | |
| class | mlir::AffineSymbolExpr |
| A symbolic identifier appearing in an affine expression. More... | |
| class | mlir::AffineConstantExpr |
| An integer constant appearing in affine expression. More... | |
| struct | llvm::DenseMapInfo< mlir::AffineExpr > |
| struct | llvm::CastInfo< To, From, std::enable_if_t< std::is_same_v< mlir::AffineExpr, std::remove_const_t< From > >||std::is_base_of_v< mlir::AffineExpr, From > > > |
| Add support for llvm style casts. More... | |
Namespaces | |
| mlir | |
| Include the generated interface declarations. | |
| mlir::detail | |
| AttrTypeReplacer. | |
| llvm | |
| The OpAsmOpInterface, see OpAsmInterface.td for more details. | |
Enumerations | |
| enum class | mlir::AffineExprKind { mlir::Add , mlir::Mul , mlir::Mod , mlir::FloorDiv , mlir::CeilDiv , mlir::LAST_AFFINE_BINARY_OP = CeilDiv , mlir::Constant , mlir::DimId , mlir::SymbolId } |
Functions | |
| inline ::llvm::hash_code | mlir::hash_value (AffineExpr arg) |
| Make AffineExpr hashable. More... | |
| AffineExpr | mlir::operator+ (int64_t val, AffineExpr expr) |
| AffineExpr | mlir::operator* (int64_t val, AffineExpr expr) |
| AffineExpr | mlir::operator- (int64_t val, AffineExpr expr) |
| AffineExpr | mlir::getAffineDimExpr (unsigned position, MLIRContext *context) |
| These free functions allow clients of the API to not use classes in detail. More... | |
| AffineExpr | mlir::getAffineSymbolExpr (unsigned position, MLIRContext *context) |
| AffineExpr | mlir::getAffineConstantExpr (int64_t constant, MLIRContext *context) |
| SmallVector< AffineExpr > | mlir::getAffineConstantExprs (ArrayRef< int64_t > constants, MLIRContext *context) |
| AffineExpr | mlir::getAffineBinaryOpExpr (AffineExprKind kind, AffineExpr lhs, AffineExpr rhs) |
| AffineExpr | mlir::getAffineExprFromFlatForm (ArrayRef< int64_t > flatExprs, unsigned numDims, unsigned numSymbols, ArrayRef< AffineExpr > localExprs, MLIRContext *context) |
| Constructs an affine expression from a flat ArrayRef. More... | |
| raw_ostream & | mlir::operator<< (raw_ostream &os, AffineExpr expr) |
| AffineExpr | mlir::simplifyAffineExpr (AffineExpr expr, unsigned numDims, unsigned numSymbols) |
| Simplify an affine expression by flattening and some amount of simple analysis. More... | |
| template<int N> | |
| void | mlir::detail::bindDims (MLIRContext *ctx) |
| template<int N, typename AffineExprTy , typename... AffineExprTy2> | |
| void | mlir::detail::bindDims (MLIRContext *ctx, AffineExprTy &e, AffineExprTy2 &...exprs) |
| template<int N> | |
| void | mlir::detail::bindSymbols (MLIRContext *ctx) |
| template<int N, typename AffineExprTy , typename... AffineExprTy2> | |
| void | mlir::detail::bindSymbols (MLIRContext *ctx, AffineExprTy &e, AffineExprTy2 &...exprs) |
| template<typename... AffineExprTy> | |
| void | mlir::bindDims (MLIRContext *ctx, AffineExprTy &...exprs) |
| Bind a list of AffineExpr references to DimExpr at positions: [0 . More... | |
| template<typename AffineExprTy > | |
| void | mlir::bindDimsList (MLIRContext *ctx, MutableArrayRef< AffineExprTy > exprs) |
| template<typename... AffineExprTy> | |
| void | mlir::bindSymbols (MLIRContext *ctx, AffineExprTy &...exprs) |
| Bind a list of AffineExpr references to SymbolExpr at positions: [0 . More... | |
| template<typename AffineExprTy > | |
| void | mlir::bindSymbolsList (MLIRContext *ctx, MutableArrayRef< AffineExprTy > exprs) |
| std::optional< int64_t > | mlir::getBoundForAffineExpr (AffineExpr expr, unsigned numDims, unsigned numSymbols, ArrayRef< std::optional< int64_t >> constLowerBounds, ArrayRef< std::optional< int64_t >> constUpperBounds, bool isUpper) |
Get a lower or upper (depending on isUpper) bound for expr while using the constant lower and upper bounds for its inputs provided in constLowerBounds and constUpperBounds. More... | |