| /llvm-project-15.0.7/mlir/lib/Conversion/SCFToSPIRV/ |
| H A D | SCFToSPIRV.cpp | 211 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 D | SPIRVCanonicalization.cpp | 321 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 D | SPIRVOps.cpp | 3098 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 D | Deserializer.cpp | 1649 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 D | Deserializer.h | 38 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 D | SerializeOps.cpp | 371 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 D | RegionUtils.cpp | 484 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 D | SPIRVToLLVM.cpp | 1073 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()
|