|
MLIR 22.0.0git
|
#include "mlir/Analysis/AliasAnalysis.h"#include "mlir/Dialect/Affine/Analysis/AffineAnalysis.h"#include "mlir/Dialect/Affine/IR/AffineOps.h"#include "mlir/IR/OpDefinition.h"#include <optional>Go to the source code of this file.
Classes | |
| struct | mlir::affine::AffineValueExpr |
| struct | mlir::affine::AffineBuilder |
| Helper struct to build simple AffineValueExprs with minimal type inference support. More... | |
Namespaces | |
| namespace | mlir |
| Include the generated interface declarations. | |
| namespace | mlir::func |
| namespace | mlir::memref |
| namespace | mlir::affine |
Typedefs | |
| using | mlir::affine::ReductionLoopMap = DenseMap<Operation *, SmallVector<LoopReduction, 2>> |
Functions | |
| LogicalResult | mlir::affine::affineParallelize (AffineForOp forOp, ArrayRef< LoopReduction > parallelReductions={}, AffineParallelOp *resOp=nullptr) |
| Replaces a parallel affine.for op with a 1-d affine.parallel op. | |
| template<typename EffectType, typename T> | |
| bool | mlir::affine::hasNoInterveningEffect (Operation *start, T memOp, llvm::function_ref< bool(Value, Value)> mayAlias) |
| Hoists out affine.if/else to as high as possible, i.e., past all invariant affine.fors/parallel's. | |