/external/llvm-project/mlir/include/mlir/IR/ |
D | AffineMap.h | 37 class AffineMap { 41 constexpr AffineMap() : map(nullptr) {} in AffineMap() function 42 explicit AffineMap(ImplType *map) : map(map) {} in AffineMap() function 45 static AffineMap get(MLIRContext *context); 49 static AffineMap get(unsigned dimCount, unsigned symbolCount, 54 static AffineMap get(unsigned dimCount, unsigned symbolCount, 59 static AffineMap get(unsigned dimCount, unsigned symbolCount, 63 static AffineMap getConstantMap(int64_t val, MLIRContext *context); 66 static AffineMap getMultiDimIdentityMap(unsigned numDims, 71 static AffineMap getMinorIdentityMap(unsigned dims, unsigned results, [all …]
|
D | Builders.h | 43 class AffineMap; variable 135 ArrayAttr getAffineMapArrayAttr(ArrayRef<AffineMap> values); 152 AffineMap getEmptyAffineMap(); 155 AffineMap getConstantAffineMap(int64_t val); 157 AffineMap getDimIdentityMap(); 159 AffineMap getMultiDimIdentityMap(unsigned rank); 161 AffineMap getSymbolIdentityMap(); 165 AffineMap getSingleDimShiftAffineMap(int64_t shift); 171 AffineMap getShiftedAffineMap(AffineMap map, int64_t shift);
|
/external/llvm-project/mlir/lib/IR/ |
D | AffineMap.cpp | 94 AffineMap AffineMap::getConstantMap(int64_t val, MLIRContext *context) { in getConstantMap() 101 AffineMap AffineMap::getMinorIdentityMap(unsigned dims, unsigned results, in getMinorIdentityMap() 104 auto id = AffineMap::getMultiDimIdentityMap(dims, context); in getMinorIdentityMap() 105 return AffineMap::get(dims, 0, id.getResults().take_back(results), context); in getMinorIdentityMap() 108 bool AffineMap::isMinorIdentity() const { in isMinorIdentity() 114 AffineMap AffineMap::getPermutationMap(ArrayRef<unsigned> permutation, in getPermutationMap() 122 auto permutationMap = AffineMap::get(*m + 1, 0, affExprs, context); in getPermutationMap() 143 static SmallVector<AffineMap, 4> 150 SmallVector<AffineMap, 4> maps; in inferFromExprList() 153 maps.push_back(AffineMap::get(/*dimCount=*/maxDim + 1, in inferFromExprList() [all …]
|
D | Builders.cpp | 270 ArrayAttr Builder::getAffineMapArrayAttr(ArrayRef<AffineMap> values) { in getAffineMapArrayAttr() 272 values, [](AffineMap v) -> Attribute { return AffineMapAttr::get(v); })); in getAffineMapArrayAttr() 309 AffineMap Builder::getEmptyAffineMap() { return AffineMap::get(context); } in getEmptyAffineMap() 311 AffineMap Builder::getConstantAffineMap(int64_t val) { in getConstantAffineMap() 312 return AffineMap::get(/*dimCount=*/0, /*symbolCount=*/0, in getConstantAffineMap() 316 AffineMap Builder::getDimIdentityMap() { in getDimIdentityMap() 317 return AffineMap::get(/*dimCount=*/1, /*symbolCount=*/0, getAffineDimExpr(0)); in getDimIdentityMap() 320 AffineMap Builder::getMultiDimIdentityMap(unsigned rank) { in getMultiDimIdentityMap() 325 return AffineMap::get(/*dimCount=*/rank, /*symbolCount=*/0, dimExprs, in getMultiDimIdentityMap() 329 AffineMap Builder::getSymbolIdentityMap() { in getSymbolIdentityMap() [all …]
|
D | MLIRContext.cpp | 151 struct AffineMapKeyInfo : DenseMapInfo<AffineMap> { 155 using DenseMapInfo<AffineMap>::isEqual; 157 static unsigned getHashValue(const AffineMap &key) { in getHashValue() 168 static bool isEqual(const KeyTy &lhs, AffineMap rhs) { in isEqual() 284 using AffineMapSet = DenseSet<AffineMap, AffineMapKeyInfo>; 855 AffineMap AffineMap::getImpl(unsigned dimCount, unsigned symbolCount, in getImpl() 872 return AffineMap(res); in getImpl() 876 AffineMap AffineMap::get(MLIRContext *context) { in get() 880 AffineMap AffineMap::get(unsigned dimCount, unsigned symbolCount, in get() 885 AffineMap AffineMap::get(unsigned dimCount, unsigned symbolCount, in get() [all …]
|
/external/llvm-project/mlir/include/mlir/Dialect/Affine/IR/ |
D | AffineOps.h | 90 AffineMap srcMap, ValueRange srcIndices, Value destMemRef, 91 AffineMap dstMap, ValueRange destIndices, Value tagMemRef, 92 AffineMap tagMap, ValueRange tagIndices, Value numElements, 108 AffineMap getSrcMap() { return getSrcMapAttr().getValue(); } in getSrcMap() 147 AffineMap getDstMap() { return getDstMapAttr().getValue(); } in getDstMap() 176 AffineMap getTagMap() { return getTagMapAttr().getValue(); } in getTagMap() 279 AffineMap tagMap, ValueRange tagIndices, Value numElements); 290 AffineMap getTagMap() { return getTagMapAttr().getValue(); } in getTagMap() 351 void canonicalizeMapAndOperands(AffineMap *map, 362 AffineApplyOp makeComposedAffineApply(OpBuilder &b, Location loc, AffineMap map, [all …]
|
D | AffineValueMap.h | 39 AffineValueMap(AffineMap map, ValueRange operands, ValueRange results = {}); 44 void reset(AffineMap map, ValueRange operands, ValueRange results = {}); 75 AffineMap getAffineMap() const;
|
/external/llvm-project/mlir/test/mlir-linalg-ods-gen/ |
D | test-linalg-ods-gen.tc | 14 // IMPL: AffineMap::get(2, 0, {d0, d1}, context), 15 // IMPL-NEXT: AffineMap::get(2, 0, {d1}, context), 16 // IMPL-NEXT: AffineMap::get(2, 0, {d0}, context) }); 39 // IMPL: AffineMap::get(3, 0, {d0, d2}, context), 40 // IMPL-NEXT: AffineMap::get(3, 0, {d2, d1}, context), 41 // IMPL-NEXT: AffineMap::get(3, 0, {d0, d1}, context) }); 64 // IMPL: AffineMap::get(4, 0, {d0, d1, d3}, context), 65 // IMPL-NEXT: AffineMap::get(4, 0, {d3, d2}, context), 66 // IMPL-NEXT: AffineMap::get(4, 0, {d0, d1, d2}, context) });
|
/external/llvm-project/mlir/lib/Dialect/Linalg/Transforms/ |
D | FusionOnTensors.cpp | 43 AffineMap consumerIndexMap = consumer.getIndexingMap(consumerIdx); in areTensorOpsFusable() 49 AffineMap producerResultIndexMap = producer.getOutputIndexingMap(0); in areTensorOpsFusable() 57 LinalgOp producer, AffineMap fusedConsumerArgIndexMap, in getIndexingMapOfProducerOperandsInFusedOp() 65 AffineMap producerResultIndexMap = producer.getOutputIndexingMap(0); in getIndexingMapOfProducerOperandsInFusedOp() 69 AffineMap invProducerResultIndexMap = in getIndexingMapOfProducerOperandsInFusedOp() 75 AffineMap argMap = producer.getInputIndexingMap(argNum); in getIndexingMapOfProducerOperandsInFusedOp() 79 AffineMap t1 = argMap.compose(invProducerResultIndexMap); in getIndexingMapOfProducerOperandsInFusedOp() 83 AffineMap indexingMap = t1.compose(fusedConsumerArgIndexMap); in getIndexingMapOfProducerOperandsInFusedOp() 93 AffineMap consumerToProducerLoopsMap, in generateFusedTensorOpRegion() 249 AffineMap consumerResultIndexMap = consumer.getInputIndexingMap(consumerIdx); in fuseTensorOpsImpl() [all …]
|
D | DropUnitDims.cpp | 100 ArrayRef<AffineMap> indexingMaps, in replaceUnitDims() 124 SmallVector<AffineMap, 4> newIndexingMaps; in replaceUnitDims() 126 for (AffineMap operandMap : indexingMaps) { in replaceUnitDims() 143 [](AffineMap map) -> Attribute { return AffineMapAttr::get(map); })), in replaceUnitDims() 181 SmallVector<AffineMap, 4> indexingMaps = op.getIndexingMaps(); in matchAndRewrite() 188 AffineMap invertedMap = inversePermutation(concatAffineMaps(indexingMaps)); in matchAndRewrite() 232 AffineMap indexMap; 247 static UnitExtentReplacementInfo replaceUnitExtents(AffineMap indexMap, in replaceUnitExtents() 276 reassociationMaps.push_back(AffineMapAttr::get(AffineMap::get( in replaceUnitExtents() 283 AffineMap::get(indexMap.getNumDims(), indexMap.getNumSymbols(), in replaceUnitExtents() [all …]
|
D | Fusion.cpp | 60 static void inferShapeComponents(AffineMap permutationMap, in inferShapeComponents() 99 AffineMap map = op.getIndexingMap(shapedOperandIdx); in cloneWithLoopRanges() 263 AffineMap producerMap = producer.getOutputIndexingMap(producerIdx); in fuse() 532 static AffineMap pruneReductionDimsFromMap(ArrayRef<Attribute> iteratorTypes, in pruneReductionDimsFromMap() 533 AffineMap map) { in pruneReductionDimsFromMap() 548 static Optional<AffineMap> getConsumerLoopToProducerLoopMap( in getConsumerLoopToProducerLoopMap() 551 AffineMap producerIndexingMap = in getConsumerLoopToProducerLoopMap() 554 AffineMap consumerIndexingMap = in getConsumerLoopToProducerLoopMap() 557 AffineMap prunedProducerIndexingMap = pruneReductionDimsFromMap( in getConsumerLoopToProducerLoopMap() 577 AffineMap invProducerIndexMap = inversePermutation(prunedProducerIndexingMap); in getConsumerLoopToProducerLoopMap() [all …]
|
D | Interchange.cpp | 51 AffineMap::getPermutationMap(interchangeVector, op->getContext()))) in interchangeGenericLinalgOpPrecondition() 63 AffineMap::getPermutationMap(interchangeVector, context)); in interchange() 68 AffineMap m = indexingMaps[i].cast<AffineMapAttr>().getValue(); in interchange()
|
/external/llvm-project/mlir/lib/Dialect/Affine/Transforms/ |
D | AffineLoopNormalize.cpp | 24 AffineMap lbMap = op.lowerBoundsMap(); in normalizeAffineParallel() 57 auto map = AffineMap::get(/*dimCount=*/nDims + 1, in normalizeAffineParallel() 74 auto newLowerMap = AffineMap::get( in normalizeAffineParallel() 77 auto newUpperMap = AffineMap::get(ranges.getNumDims(), ranges.getNumSymbols(), in normalizeAffineParallel() 113 AffineMap origLbMap = lb.getMap(); in normalizeAffineFor() 114 AffineMap origUbMap = ub.getMap(); in normalizeAffineFor() 151 AffineMap newUbMap = in normalizeAffineFor() 152 AffineMap::get(origLbMap.getNumDims() + origUbMap.getNumDims(), in normalizeAffineFor() 175 AffineMap ivMap = AffineMap::get(origLbMap.getNumDims() + 1, in normalizeAffineFor()
|
/external/llvm-project/mlir/lib/CAPI/IR/ |
D | AffineMap.cpp | 37 return wrap(AffineMap::get(unwrap(ctx))); in mlirAffineMapEmptyGet() 42 return wrap(AffineMap::get(dimCount, symbolCount, unwrap(ctx))); in mlirAffineMapGet() 46 return wrap(AffineMap::getConstantMap(val, unwrap(ctx))); in mlirAffineMapConstantGet() 51 return wrap(AffineMap::getMultiDimIdentityMap(numDims, unwrap(ctx))); in mlirAffineMapMultiDimIdentityGet() 56 return wrap(AffineMap::getMinorIdentityMap(dims, results, unwrap(ctx))); in mlirAffineMapMinorIdentityGet() 61 return wrap(AffineMap::getPermutationMap( in mlirAffineMapPermutationGet()
|
/external/llvm-project/mlir/include/mlir/Transforms/ |
D | Utils.h | 71 AffineMap indexRemap = AffineMap(), ArrayRef<Value> extraOperands = {}, 83 AffineMap indexRemap = AffineMap(),
|
/external/llvm-project/mlir/include/mlir/Dialect/Utils/ |
D | StructuredOpsUtils.h | 31 auto mapA = AffineMapAttr::get(AffineMap::get(3, 0, {m, k}, context)); in isRowMajorMatmul() 32 auto mapB = AffineMapAttr::get(AffineMap::get(3, 0, {k, n}, context)); in isRowMajorMatmul() 33 auto mapC = AffineMapAttr::get(AffineMap::get(3, 0, {m, n}, context)); in isRowMajorMatmul() 42 auto mapA = AffineMapAttr::get(AffineMap::get(3, 0, {k, n}, context)); in isColumnMajorMatmul() 43 auto mapB = AffineMapAttr::get(AffineMap::get(3, 0, {m, k}, context)); in isColumnMajorMatmul() 44 auto mapC = AffineMapAttr::get(AffineMap::get(3, 0, {n, m}, context)); in isColumnMajorMatmul()
|
/external/llvm-project/mlir/include/mlir/Dialect/GPU/ |
D | ParallelLoopMapper.h | 25 class AffineMap; variable 52 AffineMap map, 53 AffineMap bound);
|
/external/llvm-project/mlir/lib/Parser/ |
D | AffineParser.cpp | 53 AffineMap parseAffineMapRange(unsigned numDims, unsigned numSymbols); 54 ParseResult parseAffineMapOrIntegerSetInline(AffineMap &map, IntegerSet &set); 56 ParseResult parseAffineMapOfSSAIds(AffineMap &map, 513 ParseResult AffineParser::parseAffineMapOrIntegerSetInline(AffineMap &map, in parseAffineMapOrIntegerSetInline() 544 AffineParser::parseAffineMapOfSSAIds(AffineMap &map, in parseAffineMapOfSSAIds() 577 map = AffineMap::get(numDimOperands, dimsAndSymbols.size() - numDimOperands, in parseAffineMapOfSSAIds() 588 AffineMap AffineParser::parseAffineMapRange(unsigned numDims, in parseAffineMapRange() 605 return AffineMap(); in parseAffineMapRange() 608 return AffineMap::get(numDims, numSymbols, exprs, getContext()); in parseAffineMapRange() 695 ParseResult Parser::parseAffineMapOrIntegerSetReference(AffineMap &map, in parseAffineMapOrIntegerSetReference() [all …]
|
/external/llvm-project/mlir/include/mlir/Analysis/ |
D | AffineStructures.h | 25 class AffineMap; variable 243 LogicalResult addLowerOrUpperBound(unsigned pos, AffineMap boundMap, 269 SmallVectorImpl<AffineMap> *lbMaps, 270 SmallVectorImpl<AffineMap> *ubMaps); 279 ArrayRef<AffineMap> lbMaps, 280 ArrayRef<AffineMap> ubMaps, 356 LogicalResult composeMatchingMap(AffineMap other); 528 std::pair<AffineMap, AffineMap> 693 getFlattenedAffineExprs(AffineMap map,
|
D | Utils.h | 66 SmallVector<AffineMap, 4> lbs; 68 SmallVector<AffineMap, 4> ubs; 244 void getLowerAndUpperBound(unsigned pos, AffineMap &lbMap, 245 AffineMap &ubMap) const;
|
/external/llvm-project/mlir/lib/Dialect/Affine/IR/ |
D | AffineOps.cpp | 461 AffineMap AffineApplyNormalizer::renumber(const AffineApplyNormalizer &other) { in renumber() 508 static AffineMap promoteComposedSymbolsAsDims(AffineMap map, in promoteComposedSymbolsAsDims() 540 AffineMap newMap = map.replaceDimsAndSymbols( in promoteComposedSymbolsAsDims() 577 AffineApplyNormalizer::AffineApplyNormalizer(AffineMap map, in AffineApplyNormalizer() 633 AffineMap affineApplyMap = affineApply.getAffineMap(); in AffineApplyNormalizer() 675 AffineMap::get(numDims, numSymbols, auxiliaryExprs, map.getContext()); in AffineApplyNormalizer() 690 void AffineApplyNormalizer::normalize(AffineMap *otherMap, in normalize() 704 static void composeAffineMapAndOperands(AffineMap *map, in composeAffineMapAndOperands() 715 void mlir::fullyComposeAffineMapAndOperands(AffineMap *map, in fullyComposeAffineMapAndOperands() 725 AffineMap map, in makeComposedAffineApply() [all …]
|
D | AffineValueMap.cpp | 14 AffineValueMap::AffineValueMap(AffineMap map, ValueRange operands, in AffineValueMap() 19 void AffineValueMap::reset(AffineMap map, ValueRange operands, in reset() 55 AffineMap::get(normalizer.getNumDims(), normalizer.getNumSymbols(), in difference() 101 AffineMap AffineValueMap::getAffineMap() const { return map.getAffineMap(); } in getAffineMap()
|
/external/llvm-project/mlir/include/mlir/Dialect/Linalg/IR/ |
D | LinalgOps.h | 48 AffineMap map, ValueRange values); 102 AffineMap extractOrIdentityMap(Optional<AffineMap> maybeMap, unsigned rank,
|
/external/llvm-project/mlir/include/mlir/Dialect/Vector/ |
D | VectorUtils.h | 21 class AffineMap; variable 153 AffineMap 160 AffineMap getTransferMinorIdentityMap(MemRefType memRefType,
|
/external/llvm-project/mlir/lib/Dialect/Linalg/IR/ |
D | LinalgOps.cpp | 36 AffineMap map, in createFoldedComposedAffineApply() 45 AffineMap map, in applyMapToValues() 54 AffineMap map = AffineMap::get(numDims, numSym, expr); in applyMapToValues() 72 AffineMap map = getLoopsToShapesMap(); in createLoopRanges() 156 ArrayRef<AffineMap> indexingMaps, ArrayRef<StringRef> iteratorTypes, in build() 181 ValueRange outputBuffers, ArrayRef<AffineMap> indexingMaps, in build() 190 ValueRange outputBuffers, ArrayRef<AffineMap> indexingMaps, in build() 201 ArrayRef<AffineMap> indexingMaps, ArrayRef<StringRef> iteratorTypes, in build() 211 ArrayRef<AffineMap> indexingMaps, ArrayRef<StringRef> iteratorTypes, in build() 240 ValueRange outputBuffers, ArrayRef<AffineMap> indexingMaps, in build() [all …]
|