diff options
Diffstat (limited to 'mlir/lib/Transforms')
| -rw-r--r-- | mlir/lib/Transforms/DmaGeneration.cpp | 5 | ||||
| -rw-r--r-- | mlir/lib/Transforms/LoopFusion.cpp | 7 | ||||
| -rw-r--r-- | mlir/lib/Transforms/LoopTiling.cpp | 4 | ||||
| -rw-r--r-- | mlir/lib/Transforms/LoopUnrollAndJam.cpp | 2 | ||||
| -rw-r--r-- | mlir/lib/Transforms/MaterializeVectors.cpp | 4 | ||||
| -rw-r--r-- | mlir/lib/Transforms/PipelineDataTransfer.cpp | 2 | ||||
| -rw-r--r-- | mlir/lib/Transforms/Utils/LoopUtils.cpp | 12 | ||||
| -rw-r--r-- | mlir/lib/Transforms/Utils/Utils.cpp | 7 |
8 files changed, 19 insertions, 24 deletions
diff --git a/mlir/lib/Transforms/DmaGeneration.cpp b/mlir/lib/Transforms/DmaGeneration.cpp index 6452346a6d1..143662763ae 100644 --- a/mlir/lib/Transforms/DmaGeneration.cpp +++ b/mlir/lib/Transforms/DmaGeneration.cpp @@ -326,7 +326,7 @@ bool DmaGeneration::generateDma(const MemRefRegion ®ion, Block *block, // The coordinate for the start location is just the lower bound along the // corresponding dimension on the memory region (stored in 'offset'). auto map = top.getAffineMap( - cst->getNumDimIds() + cst->getNumSymbolIds() - rank, 0, offset, {}); + cst->getNumDimIds() + cst->getNumSymbolIds() - rank, 0, offset); memIndices.push_back(b->create<AffineApplyOp>(loc, map, regionSymbols)); } // The fast buffer is DMAed into at location zero; addressing is relative. @@ -438,8 +438,7 @@ bool DmaGeneration::generateDma(const MemRefRegion ®ion, Block *block, auto dimExpr = b->getAffineDimExpr(regionSymbols.size() + i); remapExprs.push_back(dimExpr - offsets[i]); } - auto indexRemap = - b->getAffineMap(regionSymbols.size() + rank, 0, remapExprs, {}); + auto indexRemap = b->getAffineMap(regionSymbols.size() + rank, 0, remapExprs); // Record the begin since it may be invalidated by memref replacement. Block::iterator prev; diff --git a/mlir/lib/Transforms/LoopFusion.cpp b/mlir/lib/Transforms/LoopFusion.cpp index 7eb2c7289c0..b7b69fa54fe 100644 --- a/mlir/lib/Transforms/LoopFusion.cpp +++ b/mlir/lib/Transforms/LoopFusion.cpp @@ -1096,10 +1096,9 @@ static Value *createPrivateMemRef(AffineForOp forOp, Operation *srcStoreOpInst, simplifyAffineExpr(dimExpr - offsets[i], outerIVs.size() + rank, 0); remapExprs.push_back(remapExpr); } - auto indexRemap = - zeroOffsetCount == rank - ? AffineMap() - : b.getAffineMap(outerIVs.size() + rank, 0, remapExprs, {}); + auto indexRemap = zeroOffsetCount == rank + ? AffineMap() + : b.getAffineMap(outerIVs.size() + rank, 0, remapExprs); // Replace all users of 'oldMemRef' with 'newMemRef'. bool ret = replaceAllMemRefUsesWith(oldMemRef, newMemRef, {}, indexRemap, diff --git a/mlir/lib/Transforms/LoopTiling.cpp b/mlir/lib/Transforms/LoopTiling.cpp index 28e13d89ada..5233081b5f1 100644 --- a/mlir/lib/Transforms/LoopTiling.cpp +++ b/mlir/lib/Transforms/LoopTiling.cpp @@ -168,12 +168,12 @@ constructTiledIndexSetHyperRect(MutableArrayRef<AffineForOp> origLoops, boundExprs.append(origUbMap.getResults().begin(), origUbMap.getResults().end()); auto ubMap = b.getAffineMap(origUbMap.getNumDims() + 1, - origUbMap.getNumSymbols(), boundExprs, {}); + origUbMap.getNumSymbols(), boundExprs); newLoops[width + i].setUpperBound(/*operands=*/ubOperands, ubMap); } else { // No need of the min expression. auto dim = b.getAffineDimExpr(0); - auto ubMap = b.getAffineMap(1, 0, dim + tileSizes[i], {}); + auto ubMap = b.getAffineMap(1, 0, dim + tileSizes[i]); newLoops[width + i].setUpperBound(newLoops[i].getInductionVar(), ubMap); } } diff --git a/mlir/lib/Transforms/LoopUnrollAndJam.cpp b/mlir/lib/Transforms/LoopUnrollAndJam.cpp index 609b42455f5..731464bd7c1 100644 --- a/mlir/lib/Transforms/LoopUnrollAndJam.cpp +++ b/mlir/lib/Transforms/LoopUnrollAndJam.cpp @@ -223,7 +223,7 @@ LogicalResult mlir::loopUnrollJamByFactor(AffineForOp forOp, if (!forOpIV->use_empty()) { // iv' = iv + i, i = 1 to unrollJamFactor-1. auto d0 = builder.getAffineDimExpr(0); - auto bumpMap = builder.getAffineMap(1, 0, {d0 + i * step}, {}); + auto bumpMap = builder.getAffineMap(1, 0, {d0 + i * step}); auto ivUnroll = builder.create<AffineApplyOp>(forInst->getLoc(), bumpMap, forOpIV); operandMapping.map(forOpIV, ivUnroll); diff --git a/mlir/lib/Transforms/MaterializeVectors.cpp b/mlir/lib/Transforms/MaterializeVectors.cpp index 8094ff2f986..80e080f8fa6 100644 --- a/mlir/lib/Transforms/MaterializeVectors.cpp +++ b/mlir/lib/Transforms/MaterializeVectors.cpp @@ -373,7 +373,7 @@ reindexAffineIndices(FuncBuilder *b, VectorType hwVectorType, SmallVector<mlir::Value *, 8> res; res.reserve(affineExprs.size()); for (auto expr : affineExprs) { - auto map = AffineMap::get(numIndices, 0, expr, {}); + auto map = AffineMap::get(numIndices, 0, expr); res.push_back(makeComposedAffineApply(b, b->getInsertionPoint()->getLoc(), map, memrefIndices)); } @@ -470,7 +470,7 @@ static AffineMap projectedPermutationMap(VectorTransferOpTy transfer, if (keep.empty()) { return permutationMap; } - auto projectionMap = AffineMap::get(optionalRatio->size(), 0, keep, {}); + auto projectionMap = AffineMap::get(optionalRatio->size(), 0, keep); LLVM_DEBUG(projectionMap.print(dbgs() << "\nprojectionMap: ")); return simplifyAffineMap(projectionMap.compose(permutationMap)); } diff --git a/mlir/lib/Transforms/PipelineDataTransfer.cpp b/mlir/lib/Transforms/PipelineDataTransfer.cpp index c9e1dcefcf6..de8038c931c 100644 --- a/mlir/lib/Transforms/PipelineDataTransfer.cpp +++ b/mlir/lib/Transforms/PipelineDataTransfer.cpp @@ -112,7 +112,7 @@ static bool doubleBuffer(Value *oldMemRef, AffineForOp forOp) { auto d0 = bInner.getAffineDimExpr(0); int64_t step = forOp.getStep(); auto modTwoMap = bInner.getAffineMap(/*dimCount=*/1, /*symbolCount=*/0, - {d0.floorDiv(step) % 2}, {}); + {d0.floorDiv(step) % 2}); auto ivModTwoOp = bInner.create<AffineApplyOp>(forOp.getLoc(), modTwoMap, forOp.getInductionVar()); diff --git a/mlir/lib/Transforms/Utils/LoopUtils.cpp b/mlir/lib/Transforms/Utils/LoopUtils.cpp index 47ee626f811..d5bdcea2c55 100644 --- a/mlir/lib/Transforms/Utils/LoopUtils.cpp +++ b/mlir/lib/Transforms/Utils/LoopUtils.cpp @@ -80,9 +80,8 @@ void mlir::getCleanupLoopLowerBound(AffineForOp forOp, unsigned unrollFactor, for (unsigned i = 0, e = tripCountMap.getNumResults(); i < e; i++) { auto tripCountExpr = tripCountMap.getResult(i); bumpExprs[i] = (tripCountExpr - tripCountExpr % unrollFactor) * step; - auto bumpMap = - b->getAffineMap(tripCountMap.getNumDims(), tripCountMap.getNumSymbols(), - bumpExprs[i], {}); + auto bumpMap = b->getAffineMap(tripCountMap.getNumDims(), + tripCountMap.getNumSymbols(), bumpExprs[i]); bumpValues[i] = b->create<AffineApplyOp>(forOp.getLoc(), bumpMap, tripCountOperands); } @@ -94,7 +93,7 @@ void mlir::getCleanupLoopLowerBound(AffineForOp forOp, unsigned unrollFactor, operands->clear(); operands->push_back(lb); operands->append(bumpValues.begin(), bumpValues.end()); - *map = b->getAffineMap(1 + tripCountMap.getNumResults(), 0, newUbExprs, {}); + *map = b->getAffineMap(1 + tripCountMap.getNumResults(), 0, newUbExprs); // Simplify the map + operands. fullyComposeAffineMapAndOperands(map, operands); *map = simplifyAffineMap(*map); @@ -465,7 +464,7 @@ LogicalResult mlir::loopUnrollByFactor(AffineForOp forOp, if (!forOpIV->use_empty()) { // iv' = iv + 1/2/3...unrollFactor-1; auto d0 = builder.getAffineDimExpr(0); - auto bumpMap = builder.getAffineMap(1, 0, {d0 + i * step}, {}); + auto bumpMap = builder.getAffineMap(1, 0, {d0 + i * step}); auto ivUnroll = builder.create<AffineApplyOp>(forOp.getLoc(), bumpMap, forOpIV); operandMap.map(forOpIV, ivUnroll); @@ -654,8 +653,7 @@ static void augmentMapAndBounds(FuncBuilder *b, Value *iv, AffineMap *map, auto bounds = llvm::to_vector<4>(map->getResults()); bounds.push_back(b->getAffineDimExpr(map->getNumDims()) + offset); operands->insert(operands->begin() + map->getNumDims(), iv); - *map = - b->getAffineMap(map->getNumDims() + 1, map->getNumSymbols(), bounds, {}); + *map = b->getAffineMap(map->getNumDims() + 1, map->getNumSymbols(), bounds); canonicalizeMapAndOperands(map, operands); } diff --git a/mlir/lib/Transforms/Utils/Utils.cpp b/mlir/lib/Transforms/Utils/Utils.cpp index e6ecd8e45fa..13e5b2f2f08 100644 --- a/mlir/lib/Transforms/Utils/Utils.cpp +++ b/mlir/lib/Transforms/Utils/Utils.cpp @@ -146,9 +146,8 @@ bool mlir::replaceAllMemRefUsesWith(Value *oldMemRef, Value *newMemRef, // Remapped indices. for (auto resultExpr : indexRemap.getResults()) { - auto singleResMap = - builder.getAffineMap(indexRemap.getNumDims(), - indexRemap.getNumSymbols(), resultExpr, {}); + auto singleResMap = builder.getAffineMap( + indexRemap.getNumDims(), indexRemap.getNumSymbols(), resultExpr); auto afOp = builder.create<AffineApplyOp>(opInst->getLoc(), singleResMap, remapOperands); state.operands.push_back(afOp); @@ -259,7 +258,7 @@ void mlir::createAffineComputationSlice( sliceOps->reserve(composedMap.getNumResults()); for (auto resultExpr : composedMap.getResults()) { auto singleResMap = builder.getAffineMap( - composedMap.getNumDims(), composedMap.getNumSymbols(), resultExpr, {}); + composedMap.getNumDims(), composedMap.getNumSymbols(), resultExpr); sliceOps->push_back(builder.create<AffineApplyOp>( opInst->getLoc(), singleResMap, composedOpOperands)); } |

