Lines Matching refs:loops
612 void mlir::coalesceLoops(MutableArrayRef<scf::ForOp> loops) { in coalesceLoops() argument
613 if (loops.size() < 2) in coalesceLoops()
616 scf::ForOp innermost = loops.back(); in coalesceLoops()
617 scf::ForOp outermost = loops.front(); in coalesceLoops()
621 for (auto loop : loops) in coalesceLoops()
629 for (auto loop : loops.drop_front()) in coalesceLoops()
645 for (unsigned i = 0, e = loops.size(); i < e; ++i) { in coalesceLoops()
646 unsigned idx = loops.size() - i - 1; in coalesceLoops()
649 loops[idx + 1].getUpperBound()); in coalesceLoops()
653 loc, previous, loops[idx].getUpperBound()); in coalesceLoops()
654 replaceAllUsesInRegionWith(loops[idx].getInductionVar(), iv, in coalesceLoops()
655 loops.back().getRegion()); in coalesceLoops()
660 scf::ForOp second = loops[1]; in coalesceLoops()
669 scf::ParallelOp loops, ArrayRef<std::vector<unsigned>> combinedDimensions) { in collapseParallelLoops() argument
670 OpBuilder outsideBuilder(loops); in collapseParallelLoops()
671 Location loc = loops.getLoc(); in collapseParallelLoops()
681 for (unsigned i = 0, e = loops.getNumLoops(); i < e; ++i) { in collapseParallelLoops()
682 OpBuilder insideLoopBuilder = OpBuilder::atBlockBegin(loops.getBody()); in collapseParallelLoops()
685 loops.getLowerBound()[i], loops.getUpperBound()[i], in collapseParallelLoops()
686 loops.getStep()[i], loops.getBody()->getArgument(i)); in collapseParallelLoops()
727 replaceAllUsesInRegionWith(loops.getBody()->getArgument(idx), iv, in collapseParallelLoops()
728 loops.getRegion()); in collapseParallelLoops()
738 replaceAllUsesInRegionWith(loops.getBody()->getArgument(idx), in collapseParallelLoops()
739 previous, loops.getRegion()); in collapseParallelLoops()
744 loops.getBody()->back().erase(); in collapseParallelLoops()
747 loops.getBody()->getOperations()); in collapseParallelLoops()
748 loops.erase(); in collapseParallelLoops()
901 for (auto loops : tile(forOps, sizes, ArrayRef<scf::ForOp>(target))) { in tile() local
902 assert(loops.size() == 1); in tile()
903 res.push_back(loops[0]); in tile()