Home
last modified time | relevance | path

Searched refs:loopOp (Results 1 – 13 of 13) sorted by relevance

/llvm-project-15.0.7/mlir/lib/Conversion/SCFToSPIRV/
H A DSCFToSPIRV.cpp171 loopOp.addEntryAndMergeBlock(); in matchAndRewrite()
177 loopOp.body().getBlocks().insert(getBlockIt(loopOp.body(), 1), header); in matchAndRewrite()
211 auto *mergeBlock = loopOp.getMergeBlock(); in matchAndRewrite()
220 Block *continueBlock = loopOp.getContinueBlock(); in matchAndRewrite()
343 loopOp.addEntryAndMergeBlock(); in matchAndRewrite()
350 Block &entryBlock = *loopOp.getEntryBlock(); in matchAndRewrite()
353 Block &mergeBlock = *loopOp.getMergeBlock(); in matchAndRewrite()
370 rewriter.inlineRegionBefore(beforeRegion, loopOp.body(), in matchAndRewrite()
374 rewriter.inlineRegionBefore(afterRegion, loopOp.body(), in matchAndRewrite()
398 rewriter.setInsertionPoint(loopOp); in matchAndRewrite()
[all …]
/llvm-project-15.0.7/mlir/lib/Target/SPIRV/Serialization/
H A DSerializeOps.cpp418 LogicalResult Serializer::processLoopOp(spirv::LoopOp loopOp) { in processLoopOp() argument
422 auto &body = loopOp.body(); in processLoopOp()
426 auto *headerBlock = loopOp.getHeaderBlock(); in processLoopOp()
427 auto *continueBlock = loopOp.getContinueBlock(); in processLoopOp()
428 auto *mergeBlock = loopOp.getMergeBlock(); in processLoopOp()
432 auto loc = loopOp.getLoc(); in processLoopOp()
454 {mergeID, continueID, static_cast<uint32_t>(loopOp.loop_control())}); in processLoopOp()
H A DSerializer.cpp36 if (auto loopOp = dyn_cast<spirv::LoopOp>(op)) in getStructuredControlFlowOpMergeBlock() local
37 return loopOp.getMergeBlock(); in getStructuredControlFlowOpMergeBlock()
48 if (auto loopOp = dyn_cast<spirv::LoopOp>(block->getParentOp())) { in getPhiIncomingBlock() local
51 Operation *op = loopOp.getOperation(); in getPhiIncomingBlock()
57 return loopOp->getBlock(); in getPhiIncomingBlock()
H A DSerializer.h259 LogicalResult processLoopOp(spirv::LoopOp loopOp);
/llvm-project-15.0.7/mlir/lib/Dialect/Linalg/Transforms/
H A DLoops.cpp171 for (Operation *loopOp : loopOps) { in replaceIndexOpsByInductionVariables()
172 llvm::TypeSwitch<Operation *>(loopOp) in replaceIndexOpsByInductionVariables()
189 LoopLikeOpInterface loopOp = loopOps.back(); in replaceIndexOpsByInductionVariables() local
191 llvm::make_early_inc_range(loopOp.getLoopBody().getOps<IndexOp>())) in replaceIndexOpsByInductionVariables()
H A DTransforms.cpp328 for (auto loopOp : loops) { in peelLoops() local
330 loopResults = peelLoop(rewriter, loopOp); in peelLoops()
342 Operation *loopOp = res.loops[loop]; in peelTiledLinalgOp() local
343 loopResults = peelLoop(rewriter, loopOp); in peelTiledLinalgOp()
346 if (res.tensorResults.size() == loopOp->getNumResults() && in peelTiledLinalgOp()
348 loopOp->getResults().begin())) in peelTiledLinalgOp()
/llvm-project-15.0.7/mlir/lib/Dialect/SCF/Transforms/
H A DTileUsingInterface.cpp348 auto loopOp = dyn_cast<scf::ForOp>(blockArg.getOwner()->getParentOp()); in getFusableProducer() local
349 if (!loopOp) in getFusableProducer()
351 v = loopOp.getOpOperandForRegionIterArg(blockArg).get(); in getFusableProducer()
/llvm-project-15.0.7/mlir/lib/Conversion/SPIRVToLLVM/
H A DSPIRVToLLVM.cpp1046 matchAndRewrite(spirv::LoopOp loopOp, OpAdaptor adaptor, in matchAndRewrite() argument
1049 if (loopOp.loop_control() != spirv::LoopControl::None) in matchAndRewrite()
1052 Location loc = loopOp.getLoc(); in matchAndRewrite()
1057 auto position = Block::iterator(loopOp); in matchAndRewrite()
1062 Block *entryBlock = loopOp.getEntryBlock(); in matchAndRewrite()
1067 Block *headerBlock = loopOp.getHeaderBlock(); in matchAndRewrite()
1073 Block *mergeBlock = loopOp.getMergeBlock(); in matchAndRewrite()
1079 rewriter.inlineRegionBefore(loopOp.body(), endBlock); in matchAndRewrite()
1080 rewriter.replaceOp(loopOp, endBlock->getArguments()); in matchAndRewrite()
/llvm-project-15.0.7/mlir/lib/Conversion/SCFToGPU/
H A DSCFToGPU.cpp529 auto loopOp = rewriter.create<scf::ForOp>( in processParallelLoop() local
533 newIndex = loopOp.getInductionVar(); in processParallelLoop()
534 rewriter.setInsertionPointToStart(loopOp.getBody()); in processParallelLoop()
/llvm-project-15.0.7/flang/lib/Lower/
H A DOpenACC.cpp304 auto loopOp = createRegionOp<mlir::acc::LoopOp, mlir::acc::YieldOp>( in createLoopOp() local
307 loopOp->setAttr(mlir::acc::LoopOp::getExecutionMappingAttrName(), in createLoopOp()
318 loopOp->setAttr(mlir::acc::LoopOp::getCollapseAttrName(), in createLoopOp()
322 loopOp->setAttr(mlir::acc::LoopOp::getSeqAttrName(), in createLoopOp()
326 loopOp->setAttr(mlir::acc::LoopOp::getIndependentAttrName(), in createLoopOp()
329 loopOp->setAttr(mlir::acc::LoopOp::getAutoAttrName(), in createLoopOp()
333 return loopOp; in createLoopOp()
/llvm-project-15.0.7/flang/lib/Optimizer/Transforms/
H A DAffinePromotion.cpp89 for (auto loopOp : loopOperation.getOps<fir::DoLoopOp>()) { in analyzeBody() local
91 .try_emplace(loopOp, loopOp, functionAnalysis) in analyzeBody()
/llvm-project-15.0.7/mlir/lib/Target/SPIRV/Deserialization/
H A DDeserializer.cpp1680 auto loopOp = builder.create<spirv::LoopOp>(location, control); in createLoopOp() local
1681 loopOp.addEntryAndMergeBlock(); in createLoopOp()
1683 return loopOp; in createLoopOp()
1705 if (auto loopOp = createLoopOp(control)) in structurize() local
1706 op = loopOp.getOperation(); in structurize()
/llvm-project-15.0.7/mlir/lib/Dialect/Affine/Utils/
H A DLoopUtils.cpp2743 SmallVector<Operation *, 1> loopOp{loop.getOperation()}; in createFullTiles() local
2744 (void)getIndexSet(loopOp, &cst); in createFullTiles()