Home
last modified time | relevance | path

Searched refs:mergeBlock (Results 1 – 8 of 8) sorted by relevance

/llvm-project-15.0.7/mlir/lib/Conversion/SCFToSPIRV/
H A DSCFToSPIRV.cpp211 auto *mergeBlock = loopOp.getMergeBlock(); in matchAndRewrite() local
216 loc, cmpOp, body, ArrayRef<Value>(), mergeBlock, ArrayRef<Value>()); in matchAndRewrite()
254 auto *mergeBlock = in matchAndRewrite() local
266 rewriter.create<spirv::BranchOp>(loc, mergeBlock); in matchAndRewrite()
267 rewriter.inlineRegionBefore(thenRegion, mergeBlock); in matchAndRewrite()
269 auto *elseBlock = mergeBlock; in matchAndRewrite()
276 rewriter.create<spirv::BranchOp>(loc, mergeBlock); in matchAndRewrite()
277 rewriter.inlineRegionBefore(elseRegion, mergeBlock); in matchAndRewrite()
353 Block &mergeBlock = *loopOp.getMergeBlock(); in matchAndRewrite() local
415 cond, conditionVal, &afterBlock, condArgs, &mergeBlock, llvm::None); in matchAndRewrite()
/llvm-project-15.0.7/mlir/lib/Dialect/SPIRV/IR/
H A DSPIRVCanonicalization.cpp321 auto *mergeBlock = selectionOp.getMergeBlock(); in matchAndRewrite() local
323 if (failed(canCanonicalizeSelection(trueBlock, falseBlock, mergeBlock))) in matchAndRewrite()
351 Block *mergeBlock) const;
376 Block *trueBlock, Block *falseBlock, Block *mergeBlock) const { in canCanonicalizeSelection()
412 if ((trueBrBranchOp->getSuccessor(0) != mergeBlock) || in canCanonicalizeSelection()
413 (falseBrBranchOp->getSuccessor(0) != mergeBlock)) { in canCanonicalizeSelection()
H A DSPIRVOps.cpp3098 auto *mergeBlock = new Block(); in addEntryAndMergeBlock() local
3099 body().push_back(mergeBlock); in addEntryAndMergeBlock()
3100 OpBuilder builder = OpBuilder::atBlockEnd(mergeBlock); in addEntryAndMergeBlock()
3428 auto *mergeBlock = new Block(); in addMergeBlock() local
3429 body().push_back(mergeBlock); in addMergeBlock()
3430 OpBuilder builder = OpBuilder::atBlockEnd(mergeBlock); in addMergeBlock()
3443 Block *mergeBlock = selectionOp.getMergeBlock(); in createIfThen() local
3449 thenBlock = builder.createBlock(mergeBlock); in createIfThen()
3451 builder.create<spirv::BranchOp>(loc, mergeBlock); in createIfThen()
3460 /*trueArguments=*/ArrayRef<Value>(), mergeBlock, in createIfThen()
/llvm-project-15.0.7/mlir/lib/Target/SPIRV/Deserialization/
H A DDeserializer.cpp1649 Block *mergeBlock; member in __anon3e18fa6b0211::ControlFlowStructurizer
1665 OpBuilder builder(&mergeBlock->front()); in createSelectionOp()
1677 OpBuilder builder(&mergeBlock->front()); in createLoopOp()
1696 if (successor != mergeBlock) in collectBlocksInConstruct()
1718 mapper.map(mergeBlock, &body.back()); in structurize()
1784 headerBlock->replaceAllUsesWith(mergeBlock); in structurize()
1793 if (!mergeBlock->args_empty()) { in structurize()
1808 blockArgs = {mergeBlock->args_begin(), mergeBlock->args_end()}; in structurize()
2000 auto *mergeBlock = mergeInfo.mergeBlock; in structurizeControlFlow() local
2002 if (!mergeBlock->args_empty()) in structurizeControlFlow()
[all …]
H A DDeserializer.h38 Block *mergeBlock; member
44 : mergeBlock(nullptr), continueBlock(nullptr), loc(location), in BlockMergeInfo()
48 : mergeBlock(m), continueBlock(c), loc(location), control(control) {} in mergeBlock() function
/llvm-project-15.0.7/mlir/lib/Target/SPIRV/Serialization/
H A DSerializeOps.cpp371 auto *mergeBlock = selectionOp.getMergeBlock(); in processSelectionOp() local
373 auto mergeID = getBlockID(mergeBlock); in processSelectionOp()
404 /*skipHeader=*/true, /*skipBlocks=*/{mergeBlock}))) in processSelectionOp()
413 LLVM_DEBUG(printBlock(mergeBlock, llvm::dbgs())); in processSelectionOp()
428 auto *mergeBlock = loopOp.getMergeBlock(); in processLoopOp() local
431 auto mergeID = getBlockID(mergeBlock); in processLoopOp()
465 /*skipHeader=*/true, /*skipBlocks=*/{continueBlock, mergeBlock}))) in processLoopOp()
478 LLVM_DEBUG(printBlock(mergeBlock, llvm::dbgs())); in processLoopOp()
/llvm-project-15.0.7/mlir/lib/Transforms/Utils/
H A DRegionUtils.cpp484 Block *leaderBlock = leaderData.block, *mergeBlock = blockData.block; in addToCluster() local
485 if (leaderBlock->getArgumentTypes() != mergeBlock->getArgumentTypes()) in addToCluster()
514 bool rhsIsInBlock = rhsOperand.getParentBlock() == mergeBlock; in addToCluster()
534 !isValidSuccessorArg(mergeBlock, rhsOperand)) in addToCluster()
553 if (rhsIt->isUsedOutsideOfBlock(mergeBlock) || in addToCluster()
599 for (Block *mergeBlock : blocksToMerge) in merge()
600 blockIterators.push_back(mergeBlock->begin()); in merge()
/llvm-project-15.0.7/mlir/lib/Conversion/SPIRVToLLVM/
H A DSPIRVToLLVM.cpp1073 Block *mergeBlock = loopOp.getMergeBlock(); in matchAndRewrite() local
1074 Operation *terminator = mergeBlock->getTerminator(); in matchAndRewrite()
1076 rewriter.setInsertionPointToEnd(mergeBlock); in matchAndRewrite()
1132 auto *mergeBlock = op.getMergeBlock(); in matchAndRewrite() local
1133 Operation *terminator = mergeBlock->getTerminator(); in matchAndRewrite()
1135 rewriter.setInsertionPointToEnd(mergeBlock); in matchAndRewrite()