| /llvm-project-15.0.7/mlir/lib/Dialect/Linalg/Utils/ |
| H A D | Utils.cpp | 492 /*iteratorTypes=*/iteratorTypes, in makeMemRefCopyOp() 502 ArrayRef<Attribute> iteratorTypes, in doit() argument 562 ArrayRef<Attribute> iteratorTypes, in doit() argument 618 assert(lbs.size() == iteratorTypes.size()); 622 if (iteratorTypes.empty()) { 628 unsigned nLoops = iteratorTypes.size(); 727 ArrayRef<Attribute> iteratorTypes, in doit() argument 736 assert(iteratorTypes.size() >= loopRanges.size() && in doit() 738 iteratorTypes = iteratorTypes.take_front(loopRanges.size()); in doit() 740 unsigned numLoops = iteratorTypes.size(); in doit() [all …]
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Utils/ |
| H A D | StructuredOpsUtils.h | 109 inline unsigned getNumIterators(StringRef name, ArrayAttr iteratorTypes) { in getNumIterators() argument 113 return llvm::count_if(iteratorTypes, [name](Attribute a) { in getNumIterators() 118 inline unsigned getNumIterators(ArrayAttr iteratorTypes) { in getNumIterators() argument 121 res += getNumIterators(n, iteratorTypes); in getNumIterators()
|
| /llvm-project-15.0.7/mlir/lib/Conversion/VectorToGPU/ |
| H A D | NvGpuSupport.cpp | 292 auto iteratorTypes = op.getIteratorTypes().getValue(); in matchAndRewrite() local 294 if (iteratorTypes.size() != 3) in matchAndRewrite() 296 if (!(isParallelIterator(iteratorTypes[0]) && in matchAndRewrite() 297 isParallelIterator(iteratorTypes[1]) && in matchAndRewrite() 298 isReductionIterator(iteratorTypes[2]))) in matchAndRewrite()
|
| H A D | VectorToGPU.cpp | 72 auto iteratorTypes = contract.getIteratorTypes().getValue(); in contractSupportsMMAMatrixType() local 73 if (!(isParallelIterator(iteratorTypes[0]) && in contractSupportsMMAMatrixType() 74 isParallelIterator(iteratorTypes[1]) && in contractSupportsMMAMatrixType() 75 isReductionIterator(iteratorTypes[2]))) in contractSupportsMMAMatrixType() 293 auto iteratorTypes = op.getIteratorTypes().getValue(); in matchAndRewrite() local 295 if (!(isParallelIterator(iteratorTypes[0]) && in matchAndRewrite() 296 isParallelIterator(iteratorTypes[1]) && in matchAndRewrite() 297 isReductionIterator(iteratorTypes[2]))) in matchAndRewrite()
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Linalg/IR/ |
| H A D | LinalgStructuredOps.td | 170 "ArrayAttr":$iteratorTypes, "StringAttr":$doc, 176 "ArrayRef<StringRef>":$iteratorTypes, "StringRef":$doc, 181 "ArrayRef<AffineMap>":$indexingMaps, "ArrayRef<StringRef>":$iteratorTypes, 187 "ArrayRef<StringRef>":$iteratorTypes, 191 "ArrayRef<AffineMap>":$indexingMaps, "ArrayRef<StringRef>":$iteratorTypes,
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Linalg/Transforms/ |
| H A D | ElementwiseToLinalg.cpp | 90 SmallVector<StringRef, 6> iteratorTypes(rank, in matchAndRewrite() local 98 /*iteratorTypes=*/iteratorTypes, in matchAndRewrite()
|
| H A D | ElementwiseOpFusion.cpp | 775 SmallVector<StringRef> iteratorTypes(expansionInfo.getExpandedOpNumDims(), in fuseWithReshapeByExpansion() local 782 expandedOpIndexingMaps, iteratorTypes); in fuseWithReshapeByExpansion() 1027 auto iteratorTypes = genericOp.iterator_types().getValue(); in getCollapsableIterationSpaceDims() local 1047 Attribute startIteratorType = iteratorTypes[foldedIterationSpaceDims[0]]; in getCollapsableIterationSpaceDims() 1052 return iteratorTypes[dim] != startIteratorType; in getCollapsableIterationSpaceDims() 1200 getCollapsedOpIteratorTypes(ArrayRef<Attribute> iteratorTypes, in getCollapsedOpIteratorTypes() argument 1211 iteratorTypes[foldedIterDims[0]].cast<StringAttr>().getValue()); in getCollapsedOpIteratorTypes() 1350 SmallVector<StringRef> iteratorTypes = getCollapsedOpIteratorTypes( in collapseGenericOpIterationDims() local 1383 iteratorTypes, [](OpBuilder &builder, Location loc, ValueRange args) {}); in collapseGenericOpIterationDims()
|
| H A D | SplitReduction.cpp | 387 SmallVector<StringRef> iteratorTypes = in splitReductionByScaling() local 389 iteratorTypes.insert(iteratorTypes.begin() + reductionDimPos, in splitReductionByScaling() 393 newOutputs, newMaps, iteratorTypes); in splitReductionByScaling()
|
| H A D | Loops.cpp | 212 auto iteratorTypes = llvm::to_vector<4>(linalgOp.iterator_types().getValue()); in linalgOpToLoopsImpl() local 216 rewriter, linalgOp.getLoc(), loopRanges, linalgOp, iteratorTypes, in linalgOpToLoopsImpl()
|
| H A D | Tiling.cpp | 409 SmallVector<Attribute, 4> iteratorTypes; in tileLinalgOpImpl() local 413 iteratorTypes.push_back(attr.value()); in tileLinalgOpImpl() 438 applyPermutationToVector(iteratorTypes, permutation); in tileLinalgOpImpl() 477 GenerateLoopNest<LoopTy>::doit(b, op.getLoc(), loopRanges, op, iteratorTypes, in tileLinalgOpImpl()
|
| H A D | DropUnitDims.cpp | 188 ArrayAttr iteratorTypes = genericOp.iterator_types(); in matchAndRewrite() local 208 for (const auto &attr : llvm::enumerate(iteratorTypes)) { in matchAndRewrite()
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Vector/Transforms/ |
| H A D | VectorTransforms.cpp | 58 for (const auto &it : llvm::enumerate(iteratorTypes)) { in adjustIter() 989 SmallVector<StringRef> iteratorTypes; in matchAndRewrite() local 1003 rewriter.getStrArrayAttr(iteratorTypes)); in matchAndRewrite() 1365 if (!isParallelIterator(iteratorTypes[0]) || in matchAndRewrite() 1366 !isParallelIterator(iteratorTypes[1]) || in matchAndRewrite() 1367 !isReductionIterator(iteratorTypes[2])) in matchAndRewrite() 1667 if (isParallelIterator(iteratorTypes[0]) && in matchAndRewrite() 1668 isParallelIterator(iteratorTypes[1]) && in matchAndRewrite() 1669 isReductionIterator(iteratorTypes[2])) { in matchAndRewrite() 1700 } else if (isParallelIterator(iteratorTypes[0]) && in matchAndRewrite() [all …]
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Tensor/IR/ |
| H A D | TensorTilingInterfaceImpl.cpp | 39 SmallVector<StringRef> iteratorTypes(padOp.getResultType().getRank(), in getLoopIteratorTypes() local 41 return iteratorTypes; in getLoopIteratorTypes()
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Linalg/IR/ |
| H A D | LinalgOps.cpp | 671 ArrayAttr iteratorTypes, StringAttr doc, StringAttr libraryCall, in build() argument 675 iteratorTypes, doc, libraryCall); in build() 699 ArrayRef<StringRef> iteratorTypes, StringRef doc, StringRef libraryCall, in build() argument 704 builder.getStrArrayAttr(iteratorTypes), in build() 713 ArrayRef<StringRef> iteratorTypes, StringRef doc, StringRef libraryCall, in build() argument 717 iteratorTypes, doc, libraryCall, bodyBuild, attributes); in build() 723 ArrayRef<StringRef> iteratorTypes, in build() argument 726 build(builder, result, inputs, outputs, indexingMaps, iteratorTypes, in build() 734 ArrayRef<StringRef> iteratorTypes, in build() argument 738 iteratorTypes, in build()
|
| /llvm-project-15.0.7/mlir/tools/mlir-linalg-ods-gen/ |
| H A D | mlir-linalg-ods-yaml-gen.cpp | 124 SmallVector<LinalgIteratorTypeDef> iteratorTypes; member 171 io.mapRequired("iterator_types", info.iteratorTypes); in mapping() 799 bool isRankPolymorphic = opConfig.structuredOp->iteratorTypes.empty(); in generateNamedGenericOpDefns() 805 llvm::interleaveComma(opConfig.structuredOp->iteratorTypes, ss, in generateNamedGenericOpDefns()
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Linalg/Utils/ |
| H A D | Utils.h | 482 LinalgOp linalgOp, ArrayRef<Attribute> iteratorTypes,
|
| /llvm-project-15.0.7/mlir/lib/Conversion/TosaToLinalg/ |
| H A D | TosaToLinalg.cpp | 828 SmallVector<StringRef, 4> iteratorTypes; in reduceMatchAndRewriteHelper() local 832 iteratorTypes.push_back(axis == i ? getReductionIteratorTypeName() in reduceMatchAndRewriteHelper() 841 loc, reduceTy, input, filledTensor, maps, iteratorTypes, in reduceMatchAndRewriteHelper() 1985 SmallVector<StringRef, 4> iteratorTypes; in matchAndRewrite() local 1986 iteratorTypes.resize(inputTy.getRank(), getParallelIteratorTypeName()); in matchAndRewrite() 1987 iteratorTypes[axis] = getReductionIteratorTypeName(); in matchAndRewrite() 2001 ValueRange({filledTensorIdx, filledTensorMax}), maps, iteratorTypes, in matchAndRewrite()
|
| /llvm-project-15.0.7/mlir/lib/Dialect/SparseTensor/Transforms/ |
| H A D | Sparsification.cpp | 336 auto iteratorTypes = op.iterator_types().getValue(); in isAdmissableTensorExp() local 337 unsigned numLoops = iteratorTypes.size(); in isAdmissableTensorExp() 355 if (isReductionIterator(iteratorTypes[topSort[i]])) in isAdmissableTensorExp() 1197 auto iteratorTypes = op.iterator_types().getValue(); in genFor() local 1198 bool isReduction = isReductionIterator(iteratorTypes[idx]); in genFor()
|
| /llvm-project-15.0.7/mlir/lib/Dialect/Vector/IR/ |
| H A D | VectorOps.cpp | 526 ArrayRef<StringRef> iteratorTypes) { in build() argument 533 builder.getStrArrayAttr(iteratorTypes)); in build() 539 ArrayAttr iteratorTypes) { in build() argument 540 build(builder, result, lhs, rhs, acc, indexingMaps, iteratorTypes, in build() 547 ArrayAttr iteratorTypes, CombiningKind kind) { in build() argument 551 result.addAttribute(::mlir::getIteratorTypesAttrName(), iteratorTypes); in build() 815 getDimMap(ArrayRef<AffineMap> indexingMaps, ArrayAttr iteratorTypes, in getDimMap() argument 818 for (const auto &it : llvm::enumerate(iteratorTypes)) { in getDimMap()
|
| /llvm-project-15.0.7/mlir/include/mlir/Dialect/Vector/IR/ |
| H A D | VectorOps.td | 207 "ArrayAttr":$indexingMaps, "ArrayAttr":$iteratorTypes)>, 210 "ArrayRef<StringRef>":$iteratorTypes)>, 212 "ArrayAttr":$indexingMaps, "ArrayAttr":$iteratorTypes,
|