|
llvm::Optional< llvm::SmallDenseSet< unsigned > > | mlir::computeRankReductionMask (ArrayRef< int64_t > originalShape, ArrayRef< int64_t > reducedShape) |
| Given an originalShape and a reducedShape assumed to be a subset of originalShape with some 1 entries erased, return the set of indices that specifies which of the entries of originalShape are dropped to obtain reducedShape . More...
|
|
SliceVerificationResult | mlir::isRankReducedType (ShapedType originalType, ShapedType candidateReducedType) |
| Check if originalType can be rank reduced to candidateReducedType type by dropping some dimensions with static size 1 . More...
|
|
LogicalResult | mlir::getStridesAndOffset (MemRefType t, SmallVectorImpl< int64_t > &strides, int64_t &offset) |
| Returns the strides of the MemRef if the layout map is in strided form. More...
|
|
LogicalResult | mlir::getStridesAndOffset (MemRefType t, SmallVectorImpl< AffineExpr > &strides, AffineExpr &offset) |
|
AffineMap | mlir::makeStridedLinearLayoutMap (ArrayRef< int64_t > strides, int64_t offset, MLIRContext *context) |
| Given a list of strides (in which MemRefType::getDynamicStrideOrOffset() represents a dynamic value), return the single result AffineMap which represents the linearized strided layout map. More...
|
|
MemRefType | mlir::canonicalizeStridedLayout (MemRefType t) |
| Return a version of t with identity layout if it can be determined statically that the layout is the canonical contiguous strided layout. More...
|
|
MemRefType | mlir::eraseStridedLayout (MemRefType t) |
| Return a version of t with a layout that has all dynamic offset and strides. More...
|
|
AffineExpr | mlir::makeCanonicalStridedLayoutExpr (ArrayRef< int64_t > sizes, ArrayRef< AffineExpr > exprs, MLIRContext *context) |
| Given MemRef sizes that are either static or dynamic, returns the canonical "contiguous" strides AffineExpr. More...
|
|
AffineExpr | mlir::makeCanonicalStridedLayoutExpr (ArrayRef< int64_t > sizes, MLIRContext *context) |
| Return the result of makeCanonicalStrudedLayoutExpr for the common case where exprs is {d0, d1, .., d_(sizes.size()-1)}. More...
|
|
bool | mlir::isStrided (MemRefType t) |
| Return true if the layout for t is compatible with strided semantics. More...
|
|
AffineMap | mlir::getStridedLinearLayoutMap (MemRefType t) |
| Return the layout map in strided linear layout AffineMap form. More...
|
|
bool | mlir::isStaticShapeAndContiguousRowMajor (MemRefType memrefType) |
| Helper determining if a memref is static-shape and contiguous-row-major layout, while still allowing for an arbitrary offset (any static or dynamic value). More...
|
|