MLIR  19.0.0git
Namespaces | Macros | Functions
IntRangeOptimizations.cpp File Reference
#include <utility>
#include "mlir/Dialect/Arith/Transforms/Passes.h"
#include "mlir/Analysis/DataFlow/DeadCodeAnalysis.h"
#include "mlir/Analysis/DataFlow/IntegerRangeAnalysis.h"
#include "mlir/Dialect/Arith/IR/Arith.h"
#include "mlir/Transforms/GreedyPatternRewriteDriver.h"
#include "mlir/Dialect/Arith/Transforms/Passes.h.inc"

Go to the source code of this file.

Namespaces

 mlir
 Include the generated interface declarations.
 
 mlir::arith
 

Macros

#define GEN_PASS_DEF_ARITHINTRANGEOPTS
 

Functions

static bool intersects (const ConstantIntRanges &lhs, const ConstantIntRanges &rhs)
 Returns true if 2 integer ranges have intersection. More...
 
static FailureOr< bool > handleEq (ConstantIntRanges lhs, ConstantIntRanges rhs)
 
static FailureOr< bool > handleNe (ConstantIntRanges lhs, ConstantIntRanges rhs)
 
static FailureOr< bool > handleSlt (ConstantIntRanges lhs, ConstantIntRanges rhs)
 
static FailureOr< bool > handleSle (ConstantIntRanges lhs, ConstantIntRanges rhs)
 
static FailureOr< bool > handleSgt (ConstantIntRanges lhs, ConstantIntRanges rhs)
 
static FailureOr< bool > handleSge (ConstantIntRanges lhs, ConstantIntRanges rhs)
 
static FailureOr< bool > handleUlt (ConstantIntRanges lhs, ConstantIntRanges rhs)
 
static FailureOr< bool > handleUle (ConstantIntRanges lhs, ConstantIntRanges rhs)
 
static FailureOr< bool > handleUgt (ConstantIntRanges lhs, ConstantIntRanges rhs)
 
static FailureOr< bool > handleUge (ConstantIntRanges lhs, ConstantIntRanges rhs)
 

Macro Definition Documentation

◆ GEN_PASS_DEF_ARITHINTRANGEOPTS

#define GEN_PASS_DEF_ARITHINTRANGEOPTS

Definition at line 19 of file IntRangeOptimizations.cpp.

Function Documentation

◆ handleEq()

static FailureOr<bool> handleEq ( ConstantIntRanges  lhs,
ConstantIntRanges  rhs 
)
static

Definition at line 34 of file IntRangeOptimizations.cpp.

References mlir::failure(), and intersects().

◆ handleNe()

static FailureOr<bool> handleNe ( ConstantIntRanges  lhs,
ConstantIntRanges  rhs 
)
static

Definition at line 41 of file IntRangeOptimizations.cpp.

References mlir::failure(), and intersects().

◆ handleSge()

static FailureOr<bool> handleSge ( ConstantIntRanges  lhs,
ConstantIntRanges  rhs 
)
static

Definition at line 72 of file IntRangeOptimizations.cpp.

References handleSle().

◆ handleSgt()

static FailureOr<bool> handleSgt ( ConstantIntRanges  lhs,
ConstantIntRanges  rhs 
)
static

Definition at line 68 of file IntRangeOptimizations.cpp.

References handleSlt().

◆ handleSle()

static FailureOr<bool> handleSle ( ConstantIntRanges  lhs,
ConstantIntRanges  rhs 
)
static

◆ handleSlt()

static FailureOr<bool> handleSlt ( ConstantIntRanges  lhs,
ConstantIntRanges  rhs 
)
static

◆ handleUge()

static FailureOr<bool> handleUge ( ConstantIntRanges  lhs,
ConstantIntRanges  rhs 
)
static

Definition at line 100 of file IntRangeOptimizations.cpp.

References handleUle().

◆ handleUgt()

static FailureOr<bool> handleUgt ( ConstantIntRanges  lhs,
ConstantIntRanges  rhs 
)
static

Definition at line 96 of file IntRangeOptimizations.cpp.

References handleUlt().

◆ handleUle()

static FailureOr<bool> handleUle ( ConstantIntRanges  lhs,
ConstantIntRanges  rhs 
)
static

◆ handleUlt()

static FailureOr<bool> handleUlt ( ConstantIntRanges  lhs,
ConstantIntRanges  rhs 
)
static

◆ intersects()

static bool intersects ( const ConstantIntRanges lhs,
const ConstantIntRanges rhs 
)
static