Home
last modified time | relevance | path

Searched refs:srcForOp (Results 1 – 4 of 4) sorted by relevance

/llvm-project/mlir/lib/Dialect/Affine/Utils/
H A DLoopFusionUtils.cpp134 static Operation *getFusedLoopNestInsertionPoint(AffineForOp srcForOp, in getFusedLoopNestInsertionPoint() argument
136 bool isSrcForOpBeforeDstForOp = srcForOp->isBeforeInBlock(dstForOp); in getFusedLoopNestInsertionPoint()
137 auto forOpA = isSrcForOpBeforeDstForOp ? srcForOp : dstForOp; in getFusedLoopNestInsertionPoint()
138 auto forOpB = isSrcForOpBeforeDstForOp ? dstForOp : srcForOp; in getFusedLoopNestInsertionPoint()
249 FusionResult mlir::affine::canFuseLoops(AffineForOp srcForOp, in canFuseLoops() argument
260 auto *block = srcForOp->getBlock(); in canFuseLoops()
268 if (!getFusedLoopNestInsertionPoint(srcForOp, dstForOp)) { in canFuseLoops()
274 bool isSrcForOpBeforeDstForOp = srcForOp->isBeforeInBlock(dstForOp); in canFuseLoops()
276 auto forOpA = isSrcForOpBeforeDstForOp ? srcForOp : dstForOp; in canFuseLoops()
277 auto forOpB = isSrcForOpBeforeDstForOp ? dstForOp : srcForOp; in canFuseLoops()
[all …]
H A DLoopUtils.cpp177 unsigned offset, AffineForOp srcForOp, OpBuilder b) { in generateShiftedLoop()
178 auto lbOperands = srcForOp.getLowerBoundOperands(); in generateShiftedLoop()
179 auto ubOperands = srcForOp.getUpperBoundOperands(); in generateShiftedLoop()
185 b.create<AffineForOp>(srcForOp.getLoc(), lbOperands, lbMap, ubOperands, in generateShiftedLoop()
186 ubMap, srcForOp.getStepAsInt()); in generateShiftedLoop()
188 auto srcIV = srcForOp.getInductionVar(); in generateShiftedLoop()
202 srcForOp.getLoc(), in generateShiftedLoop()
204 -static_cast<int64_t>(srcForOp.getStepAsInt() * shift)), in generateShiftedLoop()
174 generateShiftedLoop(AffineMap lbMap,AffineMap ubMap,const std::vector<std::pair<uint64_t,ArrayRef<Operation * >>> & opGroupQueue,unsigned offset,AffineForOp srcForOp,OpBuilder b) generateShiftedLoop() argument
/llvm-project/mlir/include/mlir/Dialect/Affine/
H A DLoopFusionUtils.h110 canFuseLoops(AffineForOp srcForOp, AffineForOp dstForOp, unsigned dstLoopDepth,
118 void fuseLoops(AffineForOp srcForOp, AffineForOp dstForOp,
152 bool getFusionComputeCost(AffineForOp srcForOp, LoopNestStats &srcStats,
/llvm-project/mlir/test/lib/Dialect/Affine/
H A DTestLoopFusion.cpp62 static bool testDependenceCheck(AffineForOp srcForOp, AffineForOp dstForOp, in testDependenceCheck() argument
68 affine::canFuseLoops(srcForOp, dstForOp, d, &sliceUnion); in testDependenceCheck()
70 srcForOp->emitRemark("block-level dependence preventing" in testDependenceCheck()