|
MLIR 22.0.0git
|
#include "mlir/Dialect/Affine/Passes.h"#include "mlir/Dialect/Affine/IR/AffineOps.h"#include "mlir/Dialect/Affine/Transforms/Transforms.h"#include "mlir/IR/PatternMatch.h"#include "mlir/Interfaces/FunctionInterfaces.h"#include "mlir/Interfaces/ValueBoundsOpInterface.h"#include "mlir/Transforms/GreedyPatternRewriteDriver.h"#include "llvm/ADT/IntEqClasses.h"#include "llvm/Support/DebugLog.h"#include "llvm/Support/InterleavedRange.h"#include "mlir/Dialect/Affine/Passes.h.inc"Go to the source code of this file.
Classes | |
| class | mlir::affine::impl::SimplifyAffineMinMaxPassBase< DerivedT > |
| struct | SimplifyAffineMinMaxPass |
| Creates a simplification pass for affine min/max/apply. More... | |
Namespaces | |
| namespace | mlir |
| Include the generated interface declarations. | |
| namespace | mlir::affine |
| namespace | mlir::affine::impl |
Macros | |
| #define | DEBUG_TYPE "affine-min-max" |
| #define | GEN_PASS_DEF_SIMPLIFYAFFINEMINMAXPASS |
Functions | |
| template<typename AffineOp> | |
| static bool | simplifyAffineMinMaxOp (RewriterBase &rewriter, AffineOp affineOp) |
| Simplifies an affine min/max operation by proving there's a lower or upper bound. | |
| std::unique_ptr<::mlir::Pass > | mlir::affine::impl::createSimplifyAffineMinMaxPass () |
| std::unique_ptr<::mlir::Pass > | mlir::affine::createSimplifyAffineMinMaxPass () |
| #define DEBUG_TYPE "affine-min-max" |
Definition at line 25 of file SimplifyAffineMinMax.cpp.
| #define GEN_PASS_DEF_SIMPLIFYAFFINEMINMAXPASS |
Definition at line 229 of file SimplifyAffineMinMax.cpp.
|
static |
Simplifies an affine min/max operation by proving there's a lower or upper bound.
Definition at line 33 of file SimplifyAffineMinMax.cpp.
References mlir::AffineMap::get(), mlir::Builder::getContext(), mlir::AffineMap::getNumDims(), mlir::AffineMap::getNumResults(), mlir::AffineMap::getNumSymbols(), mlir::RewriterBase::modifyOpInPlace(), and mlir::ValueBoundsConstraintSet::strongCompare().
Referenced by mlir::affine::simplifyAffineMaxOp(), and mlir::affine::simplifyAffineMinOp().