|
| bool | mlir::isZeroInteger (OpFoldResult v) |
| | Return true if v is an IntegerAttr with value 0.
|
| bool | mlir::isOneInteger (OpFoldResult v) |
| | Return true if v is an IntegerAttr with value 1.
|
| std::tuple< SmallVector< OpFoldResult >, SmallVector< OpFoldResult >, SmallVector< OpFoldResult > > | mlir::getOffsetsSizesAndStrides (ArrayRef< Range > ranges) |
| | Given an array of Range values, return a tuple of (offset vector, sizes vector, and strides vector) formed by separating out the individual elements of each range.
|
| void | mlir::dispatchIndexOpFoldResult (OpFoldResult ofr, SmallVectorImpl< Value > &dynamicVec, SmallVectorImpl< int64_t > &staticVec) |
| | Helper function to dispatch an OpFoldResult into staticVec if: a) it is an IntegerAttr In other cases, the OpFoldResult is dispached to the dynamicVec.
|
| void | mlir::dispatchIndexOpFoldResults (ArrayRef< OpFoldResult > ofrs, SmallVectorImpl< Value > &dynamicVec, SmallVectorImpl< int64_t > &staticVec) |
| | Helper function to dispatch multiple OpFoldResults according to the behavior of dispatchIndexOpFoldResult(OpFoldResult ofr for a single OpFoldResult.
|
| std::pair< int64_t, OpFoldResult > | mlir::getSimplifiedOfrAndStaticSizePair (OpFoldResult ofr, Builder &b) |
| | Given OpFoldResult representing dim size value (*), generates a pair of sizes:
|
| template<typename IntTy> |
| SmallVector< IntTy > | mlir::extractFromIntegerArrayAttr (Attribute attr) |
| | Extract integer values from the assumed ArrayAttr of IntegerAttr.
|
| OpFoldResult | mlir::getAsOpFoldResult (Value val) |
| | Given a value, try to extract a constant Attribute.
|
| SmallVector< OpFoldResult > | mlir::getAsOpFoldResult (ValueRange values) |
| | Given an array of values, try to extract a constant Attribute from each value.
|
| SmallVector< OpFoldResult > | mlir::getAsOpFoldResult (ArrayAttr arrayAttr) |
| | Convert arrayAttr to a vector of OpFoldResult.
|
| OpFoldResult | mlir::getAsIndexOpFoldResult (MLIRContext *ctx, int64_t val) |
| | Convert int64_t to integer attributes of index type and return them as OpFoldResult.
|
| SmallVector< OpFoldResult > | mlir::getAsIndexOpFoldResult (MLIRContext *ctx, ArrayRef< int64_t > values) |
| std::optional< std::pair< APInt, bool > > | mlir::getConstantAPIntValue (OpFoldResult ofr) |
| | If ofr is a constant integer or an IntegerAttr, return the integer.
|
| std::optional< int64_t > | mlir::getConstantIntValue (OpFoldResult ofr) |
| | If ofr is a constant integer or an IntegerAttr, return the integer.
|
| std::optional< SmallVector< int64_t > > | mlir::getConstantIntValues (ArrayRef< OpFoldResult > ofrs) |
| | If all ofrs are constant integers or IntegerAttrs, return the integers.
|
| bool | mlir::isConstantIntValue (OpFoldResult ofr, int64_t value) |
| | Return true if ofr is constant integer equal to value.
|
| bool | mlir::areAllConstantIntValue (ArrayRef< OpFoldResult > ofrs, int64_t value) |
| | Return true if all of ofrs are constant integers equal to value.
|
| bool | mlir::areConstantIntValues (ArrayRef< OpFoldResult > ofrs, ArrayRef< int64_t > values) |
| | Return true if all of ofrs are constant integers equal to the corresponding value in values.
|
| bool | mlir::isEqualConstantIntOrValue (OpFoldResult ofr1, OpFoldResult ofr2) |
| | Return true if ofr1 and ofr2 are the same integer constant attribute values or the same SSA value.
|
| bool | mlir::isEqualConstantIntOrValueArray (ArrayRef< OpFoldResult > ofrs1, ArrayRef< OpFoldResult > ofrs2) |
| SmallVector< OpFoldResult > | mlir::getMixedValues (ArrayRef< int64_t > staticValues, ValueRange dynamicValues, MLIRContext *context) |
| | Return a vector of OpFoldResults with the same size a staticValues, but all elements for which ShapedType::isDynamic is true, will be replaced by dynamicValues.
|
| SmallVector< OpFoldResult > | mlir::getMixedValues (ArrayRef< int64_t > staticValues, ValueRange dynamicValues, Builder &b) |
| std::pair< SmallVector< int64_t >, SmallVector< Value > > | mlir::decomposeMixedValues (ArrayRef< OpFoldResult > mixedValues) |
| | Decompose a vector of mixed static or dynamic values into the corresponding pair of arrays.
|
| SmallVector< Value > | mlir::getValuesSortedByKey (ArrayRef< Attribute > keys, ArrayRef< Value > values, llvm::function_ref< bool(Attribute, Attribute)> compare) |
| | Helper to sort values according to matching keys.
|
| SmallVector< OpFoldResult > | mlir::getValuesSortedByKey (ArrayRef< Attribute > keys, ArrayRef< OpFoldResult > values, llvm::function_ref< bool(Attribute, Attribute)> compare) |
| SmallVector< int64_t > | mlir::getValuesSortedByKey (ArrayRef< Attribute > keys, ArrayRef< int64_t > values, llvm::function_ref< bool(Attribute, Attribute)> compare) |
| bool | mlir::hasValidSizesOffsets (SmallVector< int64_t > sizesOrOffsets) |
| | Helper function to check whether the passed in sizes or offsets are valid.
|
| bool | mlir::hasValidStrides (SmallVector< int64_t > strides) |
| | Helper function to check whether the passed in strides are valid.
|
| LogicalResult | mlir::foldDynamicIndexList (SmallVectorImpl< OpFoldResult > &ofrs, bool onlyNonNegative=false, bool onlyNonZero=false) |
| | Returns "success" when any of the elements in ofrs is a constant value.
|
| LogicalResult | mlir::foldDynamicOffsetSizeList (SmallVectorImpl< OpFoldResult > &offsetsOrSizes) |
| | Returns "success" when any of the elements in offsetsOrSizes is a constant value.
|
| LogicalResult | mlir::foldDynamicStrideList (SmallVectorImpl< OpFoldResult > &strides) |
| | Returns "success" when any of the elements in strides is a constant value.
|
| std::optional< APInt > | mlir::constantTripCount (OpFoldResult lb, OpFoldResult ub, OpFoldResult step, bool isSigned, llvm::function_ref< std::optional< llvm::APSInt >(Value, Value, bool)> computeUbMinusLb) |
| | Return the number of iterations for a loop with a lower bound lb, upper bound ub and step step.
|