|
bool | mlir::affine::isTopLevelValue (Value value) |
| A utility function to check if a value is defined at the top level of an op with trait AffineScope or is a region argument for such an op. More...
|
|
bool | mlir::affine::isTopLevelValue (Value value, Region *region) |
| A utility function to check if a value is defined at the top level of region or is an argument of region . More...
|
|
Region * | mlir::affine::getAffineScope (Operation *op) |
| Returns the closest region enclosing op that is held by an operation with trait AffineScope ; nullptr if there is no such region. More...
|
|
bool | mlir::affine::isValidDim (Value value) |
| Returns true if the given Value can be used as a dimension id in the region of the closest surrounding op that has the trait AffineScope . More...
|
|
bool | mlir::affine::isValidDim (Value value, Region *region) |
| Returns true if the given Value can be used as a dimension id in region , i.e., for all its uses in region . More...
|
|
bool | mlir::affine::isValidSymbol (Value value) |
| Returns true if the given value can be used as a symbol in the region of the closest surrounding op that has the trait AffineScope . More...
|
|
bool | mlir::affine::isValidSymbol (Value value, Region *region) |
| Returns true if the given Value can be used as a symbol for region , i.e., for all its uses in region . More...
|
|
ParseResult | mlir::affine::parseDimAndSymbolList (OpAsmParser &parser, SmallVectorImpl< Value > &operands, unsigned &numDims) |
| Parses dimension and symbol list. More...
|
|
void | mlir::affine::canonicalizeMapAndOperands (AffineMap *map, SmallVectorImpl< Value > *operands) |
| Modifies both map and operands in-place so as to: More...
|
|
void | mlir::affine::canonicalizeSetAndOperands (IntegerSet *set, SmallVectorImpl< Value > *operands) |
| Canonicalizes an integer set the same way canonicalizeMapAndOperands does for affine maps. More...
|
|
AffineApplyOp | mlir::affine::makeComposedAffineApply (OpBuilder &b, Location loc, AffineMap map, ArrayRef< OpFoldResult > operands) |
| Returns a composed AffineApplyOp by composing map and operands with other AffineApplyOps supplying those operands. More...
|
|
AffineApplyOp | mlir::affine::makeComposedAffineApply (OpBuilder &b, Location loc, AffineExpr e, ArrayRef< OpFoldResult > operands) |
|
OpFoldResult | mlir::affine::makeComposedFoldedAffineApply (OpBuilder &b, Location loc, AffineMap map, ArrayRef< OpFoldResult > operands) |
| Constructs an AffineApplyOp that applies map to operands after composing the map with the maps of any other AffineApplyOp supplying the operands, then immediately attempts to fold it. More...
|
|
OpFoldResult | mlir::affine::makeComposedFoldedAffineApply (OpBuilder &b, Location loc, AffineExpr expr, ArrayRef< OpFoldResult > operands) |
| Variant of makeComposedFoldedAffineApply that applies to an expression. More...
|
|
SmallVector< OpFoldResult > | mlir::affine::makeComposedFoldedMultiResultAffineApply (OpBuilder &b, Location loc, AffineMap map, ArrayRef< OpFoldResult > operands) |
| Variant of makeComposedFoldedAffineApply suitable for multi-result maps. More...
|
|
AffineMinOp | mlir::affine::makeComposedAffineMin (OpBuilder &b, Location loc, AffineMap map, ArrayRef< OpFoldResult > operands) |
| Returns an AffineMinOp obtained by composing map and operands with AffineApplyOps supplying those operands. More...
|
|
OpFoldResult | mlir::affine::makeComposedFoldedAffineMin (OpBuilder &b, Location loc, AffineMap map, ArrayRef< OpFoldResult > operands) |
| Constructs an AffineMinOp that computes a minimum across the results of applying map to operands , then immediately attempts to fold it. More...
|
|
OpFoldResult | mlir::affine::makeComposedFoldedAffineMax (OpBuilder &b, Location loc, AffineMap map, ArrayRef< OpFoldResult > operands) |
| Constructs an AffineMinOp that computes a maximum across the results of applying map to operands , then immediately attempts to fold it. More...
|
|
void | mlir::affine::fullyComposeAffineMapAndOperands (AffineMap *map, SmallVectorImpl< Value > *operands) |
| Given an affine map map and its input operands , this method composes into map , maps of AffineApplyOps whose results are the values in operands , iteratively until no more of operands are the result of an AffineApplyOp. More...
|
|
bool | mlir::affine::isAffineForInductionVar (Value val) |
| Returns true if the provided value is the induction variable of an AffineForOp. More...
|
|
bool | mlir::affine::isAffineParallelInductionVar (Value val) |
| Returns true if val is the induction variable of an AffineParallelOp. More...
|
|
bool | mlir::affine::isAffineInductionVar (Value val) |
| Returns true if the provided value is the induction variable of an AffineForOp or AffineParallelOp. More...
|
|
AffineForOp | mlir::affine::getForInductionVarOwner (Value val) |
| Returns the loop parent of an induction variable. More...
|
|
AffineParallelOp | mlir::affine::getAffineParallelInductionVarOwner (Value val) |
| Returns true if the provided value is among the induction variables of an AffineParallelOp. More...
|
|
void | mlir::affine::extractForInductionVars (ArrayRef< AffineForOp > forInsts, SmallVectorImpl< Value > *ivs) |
| Extracts the induction variables from a list of AffineForOps and places them in the output argument ivs . More...
|
|
void | mlir::affine::extractInductionVars (ArrayRef< Operation * > affineOps, SmallVectorImpl< Value > &ivs) |
| Extracts the induction variables from a list of either AffineForOp or AffineParallelOp and places them in the output argument ivs . More...
|
|
void | mlir::affine::buildAffineLoopNest (OpBuilder &builder, Location loc, ArrayRef< int64_t > lbs, ArrayRef< int64_t > ubs, ArrayRef< int64_t > steps, function_ref< void(OpBuilder &, Location, ValueRange)> bodyBuilderFn=nullptr) |
| Builds a perfect nest of affine.for loops, i.e., each loop except the innermost one contains only another loop and a terminator. More...
|
|
void | mlir::affine::buildAffineLoopNest (OpBuilder &builder, Location loc, ValueRange lbs, ValueRange ubs, ArrayRef< int64_t > steps, function_ref< void(OpBuilder &, Location, ValueRange)> bodyBuilderFn=nullptr) |
|