MLIR  21.0.0git
Classes | Namespaces | Macros | Functions
SimplifyAffineMinMax.cpp File Reference
#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/Debug.h"
#include "llvm/Support/InterleavedRange.h"
#include "mlir/Dialect/Affine/Passes.h.inc"

Go to the source code of this file.

Classes

struct  SimplifyAffineMinMaxPass
 Creates a simplification pass for affine min/max/apply. More...
 

Namespaces

 mlir
 Include the generated interface declarations.
 
 mlir::affine
 

Macros

#define DEBUG_TYPE   "affine-min-max"
 
#define DBGS()   (llvm::dbgs() << "[" DEBUG_TYPE << "]: ")
 
#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. More...
 

Macro Definition Documentation

◆ DBGS

#define DBGS ( )    (llvm::dbgs() << "[" DEBUG_TYPE << "]: ")

Definition at line 26 of file SimplifyAffineMinMax.cpp.

◆ DEBUG_TYPE

#define DEBUG_TYPE   "affine-min-max"

Definition at line 25 of file SimplifyAffineMinMax.cpp.

◆ GEN_PASS_DEF_SIMPLIFYAFFINEMINMAXPASS

#define GEN_PASS_DEF_SIMPLIFYAFFINEMINMAXPASS

Definition at line 242 of file SimplifyAffineMinMax.cpp.

Function Documentation

◆ simplifyAffineMinMaxOp()

template<typename AffineOp >
static bool simplifyAffineMinMaxOp ( RewriterBase rewriter,
AffineOp  affineOp 
)
static