Lines Matching refs:DTU

242   DomTreeUpdater *DTU;  member in __anonee21a60b0111::SimplifyCFGOpt
289 SimplifyCFGOpt(const TargetTransformInfo &TTI, DomTreeUpdater *DTU, in SimplifyCFGOpt() argument
292 : TTI(TTI), DTU(DTU), DL(DL), LoopHeaders(LoopHeaders), Options(Opts) { in SimplifyCFGOpt()
293 assert((!DTU || !DTU->hasPostDomTree()) && in SimplifyCFGOpt()
945 if (DTU) in SimplifyEqualityComparisonWithOnlyPredecessor()
946 DTU->applyUpdates( in SimplifyEqualityComparisonWithOnlyPredecessor()
965 if (DTU) in SimplifyEqualityComparisonWithOnlyPredecessor()
970 if (DTU) in SimplifyEqualityComparisonWithOnlyPredecessor()
975 if (DTU) { in SimplifyEqualityComparisonWithOnlyPredecessor()
980 DTU->applyUpdates(Updates); in SimplifyEqualityComparisonWithOnlyPredecessor()
1033 if (DTU) { in SimplifyEqualityComparisonWithOnlyPredecessor()
1038 DTU->applyUpdates(Updates); in SimplifyEqualityComparisonWithOnlyPredecessor()
1233 if (DTU && PredDefault != BB) in PerformValueComparisonIntoPredecessorFolding()
1310 if (DTU) { in PerformValueComparisonIntoPredecessorFolding()
1320 if (DTU && !SuccsOfPred.contains(NewSuccessor.first)) in PerformValueComparisonIntoPredecessorFolding()
1360 if (DTU) in PerformValueComparisonIntoPredecessorFolding()
1367 if (DTU) { in PerformValueComparisonIntoPredecessorFolding()
1373 DTU->applyUpdates(Updates); in PerformValueComparisonIntoPredecessorFolding()
1409 if (!SplitBlockPredecessors(Succ, TI->getParent(), ".fold.split", DTU)) in FoldValueComparisonIntoPredecessors()
1893 if (DTU) in hoistSuccIdenticalTerminatorToSwitchOrIf()
1897 if (DTU) in hoistSuccIdenticalTerminatorToSwitchOrIf()
1902 if (DTU) in hoistSuccIdenticalTerminatorToSwitchOrIf()
1903 DTU->applyUpdates(Updates); in hoistSuccIdenticalTerminatorToSwitchOrIf()
2237 DomTreeUpdater *DTU) { in SinkCommonCodeFromPredecessors() argument
2440 if (!SplitBlockPredecessors(BB, UnconditionalPreds, ".sink.split", DTU)) in SinkCommonCodeFromPredecessors()
2622 DomTreeUpdater *DTU) { in MergeCompatibleInvokesImpl() argument
2626 if (DTU) in MergeCompatibleInvokesImpl()
2663 if (DTU) { in MergeCompatibleInvokesImpl()
2742 if (DTU) in MergeCompatibleInvokesImpl()
2743 DTU->applyUpdates(Updates); in MergeCompatibleInvokesImpl()
2766 static bool MergeCompatibleInvokes(BasicBlock *BB, DomTreeUpdater *DTU) { in MergeCompatibleInvokes() argument
2789 MergeCompatibleInvokesImpl(Invokes, DTU); in MergeCompatibleInvokes()
3305 FoldCondBranchOnValueKnownInPredecessorImpl(BranchInst *BI, DomTreeUpdater *DTU, in FoldCondBranchOnValueKnownInPredecessorImpl() argument
3364 BasicBlock *EdgeBB = SplitBlockPredecessors(BB, PredBBs, ".critedge", DTU); in FoldCondBranchOnValueKnownInPredecessorImpl()
3442 if (DTU) { in FoldCondBranchOnValueKnownInPredecessorImpl()
3446 DTU->applyUpdates(Updates); in FoldCondBranchOnValueKnownInPredecessorImpl()
3453 MergeBlockIntoPredecessor(EdgeBB, DTU); in FoldCondBranchOnValueKnownInPredecessorImpl()
3463 DomTreeUpdater *DTU, in FoldCondBranchOnValueKnownInPredecessor() argument
3470 Result = FoldCondBranchOnValueKnownInPredecessorImpl(BI, DTU, DL, AC); in FoldCondBranchOnValueKnownInPredecessor()
3479 DomTreeUpdater *DTU, const DataLayout &DL, in FoldTwoEntryPHINode() argument
3663 if (DTU) { in FoldTwoEntryPHINode()
3670 if (DTU) in FoldTwoEntryPHINode()
3671 DTU->applyUpdates(Updates); in FoldTwoEntryPHINode()
3756 DomTreeUpdater *DTU, in performBranchToCommonDestFolding() argument
3834 if (DTU) in performBranchToCommonDestFolding()
3835 DTU->applyUpdates({{DominatorTree::Insert, PredBlock, UniqueSucc}, in performBranchToCommonDestFolding()
3878 bool llvm::FoldBranchToCommonDest(BranchInst *BI, DomTreeUpdater *DTU, in FoldBranchToCommonDest() argument
3998 return performBranchToCommonDestFolding(BI, PBI, DTU, MSSAU, TTI); in FoldBranchToCommonDest()
4075 DomTreeUpdater *DTU, const DataLayout &DL, const TargetTransformInfo &TTI) { in mergeConditionalStoreToAddress() argument
4169 SplitBlockPredecessors(PostBB, {QFB, TruePred}, "condstore.split", DTU); in mergeConditionalStoreToAddress()
4203 /*BranchWeights=*/nullptr, DTU); in mergeConditionalStoreToAddress()
4221 DomTreeUpdater *DTU, const DataLayout &DL, in mergeConditionalStores() argument
4325 InvertPCond, InvertQCond, DTU, DL, TTI); in mergeConditionalStores()
4333 DomTreeUpdater *DTU) { in tryWidenCondBranchToCondBranch() argument
4364 if (DTU) in tryWidenCondBranchToCondBranch()
4365 DTU->applyUpdates( in tryWidenCondBranchToCondBranch()
4376 if (DTU) in tryWidenCondBranchToCondBranch()
4377 DTU->applyUpdates( in tryWidenCondBranchToCondBranch()
4390 DomTreeUpdater *DTU, in SimplifyCondBranchToCondBranch() argument
4416 if (tryWidenCondBranchToCondBranch(PBI, BI, DTU)) in SimplifyCondBranchToCondBranch()
4422 if (MergeCondStores && mergeConditionalStores(PBI, BI, DTU, DL, TTI)) in SimplifyCondBranchToCondBranch()
4505 if (DTU) in SimplifyCondBranchToCondBranch()
4534 if (DTU) { in SimplifyCondBranchToCondBranch()
4538 DTU->applyUpdates(Updates); in SimplifyCondBranchToCondBranch()
4682 if (DTU) { in SimplifyTerminatorOnSelect()
4687 DTU->applyUpdates(Updates); in SimplifyTerminatorOnSelect()
4859 if (DTU) in tryToSimplifyUncondBranchWithICmpInIt()
4868 if (DTU) { in tryToSimplifyUncondBranchWithICmpInIt()
4870 DTU->applyUpdates(Updates); in tryToSimplifyUncondBranchWithICmpInIt()
4938 BasicBlock *NewBB = SplitBlock(BB, BI, DTU, /*LI=*/nullptr, in SimplifyBranchOnICmpChain()
4962 if (DTU) in SimplifyBranchOnICmpChain()
5000 if (DTU) in SimplifyBranchOnICmpChain()
5001 DTU->applyUpdates(Updates); in SimplifyBranchOnICmpChain()
5087 removeUnwindEdge(Pred, DTU); in simplifyCommonResume()
5098 if (DTU) in simplifyCommonResume()
5099 DTU->applyUpdates({{DominatorTree::Delete, TrivialBB, BB}}); in simplifyCommonResume()
5104 DeleteDeadBlock(BB, DTU); in simplifyCommonResume()
5123 removeUnwindEdge(Pred, DTU); in simplifySingleResume()
5128 DeleteDeadBlock(BB, DTU); in simplifySingleResume()
5132 static bool removeEmptyCleanup(CleanupReturnInst *RI, DomTreeUpdater *DTU) { in removeEmptyCleanup() argument
5224 if (DTU) { in removeEmptyCleanup()
5225 DTU->applyUpdates(Updates); in removeEmptyCleanup()
5228 removeUnwindEdge(PredBB, DTU); in removeEmptyCleanup()
5234 if (DTU) { in removeEmptyCleanup()
5241 if (DTU) in removeEmptyCleanup()
5242 DTU->applyUpdates(Updates); in removeEmptyCleanup()
5244 DeleteDeadBlock(BB, DTU); in removeEmptyCleanup()
5292 if (removeEmptyCleanup(RI, DTU)) in simplifyCleanupReturn()
5378 if (DTU) in simplifyUnreachable()
5393 if (DTU && SI->getDefaultDest() != BB) in simplifyUnreachable()
5397 if (DTU) { in simplifyUnreachable()
5398 DTU->applyUpdates(Updates); in simplifyUnreachable()
5401 auto *CI = cast<CallInst>(removeUnwindEdge(TI->getParent(), DTU)); in simplifyUnreachable()
5408 if (DTU) { in simplifyUnreachable()
5409 DTU->applyUpdates(Updates); in simplifyUnreachable()
5412 removeUnwindEdge(TI->getParent(), DTU); in simplifyUnreachable()
5427 if (DTU) in simplifyUnreachable()
5433 if (DTU) { in simplifyUnreachable()
5445 if (DTU) { in simplifyUnreachable()
5446 DTU->applyUpdates(Updates); in simplifyUnreachable()
5451 removeUnwindEdge(EHPred, DTU); in simplifyUnreachable()
5462 if (DTU) in simplifyUnreachable()
5470 if (DTU) in simplifyUnreachable()
5471 DTU->applyUpdates(Updates); in simplifyUnreachable()
5475 DeleteDeadBlock(BB, DTU); in simplifyUnreachable()
5494 DomTreeUpdater *DTU, in createUnreachableSwitchDefault() argument
5506 if (DTU) { in createUnreachableSwitchDefault()
5512 DTU->applyUpdates(Updates); in createUnreachableSwitchDefault()
5633 createUnreachableSwitchDefault(SI, DTU); in TurnSwitchRangeIntoICmp()
5640 if (!HasDefault && DTU) in TurnSwitchRangeIntoICmp()
5641 DTU->applyUpdates({{DominatorTree::Delete, BB, UnreachableDefault}}); in TurnSwitchRangeIntoICmp()
5648 static bool eliminateDeadSwitchCases(SwitchInst *SI, DomTreeUpdater *DTU, in eliminateDeadSwitchCases() argument
5666 if (DTU) { in eliminateDeadSwitchCases()
5675 if (DTU) in eliminateDeadSwitchCases()
5695 createUnreachableSwitchDefault(SI, DTU); in eliminateDeadSwitchCases()
5715 createUnreachableSwitchDefault(SI, DTU, /*RemoveOrigDefaultBlock*/ false); in eliminateDeadSwitchCases()
5734 if (DTU) { in eliminateDeadSwitchCases()
5739 DTU->applyUpdates(Updates); in eliminateDeadSwitchCases()
6133 DomTreeUpdater *DTU) { in removeSwitchAfterSelectFold() argument
6139 if (DTU && !is_contained(predecessors(DestBB), SelectBB)) in removeSwitchAfterSelectFold()
6156 if (DTU && RemovedSuccessors.insert(Succ).second) in removeSwitchAfterSelectFold()
6160 if (DTU) in removeSwitchAfterSelectFold()
6161 DTU->applyUpdates(Updates); in removeSwitchAfterSelectFold()
6168 DomTreeUpdater *DTU, const DataLayout &DL, in trySwitchToSelect() argument
6187 removeSwitchAfterSelectFold(SI, PHI, SelectValue, Builder, DTU); in trySwitchToSelect()
6644 DomTreeUpdater *DTU, const DataLayout &DL, in SwitchToLookupTable() argument
6832 if (DTU) in SwitchToLookupTable()
6841 if (DTU) in SwitchToLookupTable()
6880 if (DTU) { in SwitchToLookupTable()
6893 if (DTU) in SwitchToLookupTable()
6923 if (DTU) in SwitchToLookupTable()
6934 if (DTU && RemovedSuccessors.insert(Succ).second) in SwitchToLookupTable()
6939 if (DTU) in SwitchToLookupTable()
6940 DTU->applyUpdates(Updates); in SwitchToLookupTable()
7138 if (eliminateDeadSwitchCases(SI, DTU, Options.AC, DL)) in simplifySwitch()
7141 if (trySwitchToSelect(SI, Builder, DTU, DL, TTI)) in simplifySwitch()
7153 SwitchToLookupTable(SI, Builder, DTU, DL, TTI)) in simplifySwitch()
7189 if (DTU) { in simplifyIndirectBr()
7194 DTU->applyUpdates(Updates); in simplifyIndirectBr()
7240 BasicBlock *BB, DomTreeUpdater *DTU) { in TryToMergeLandingPad() argument
7271 if (DTU) { in TryToMergeLandingPad()
7286 if (DTU) in TryToMergeLandingPad()
7293 if (DTU) in TryToMergeLandingPad()
7294 DTU->applyUpdates(Updates); in TryToMergeLandingPad()
7323 !NeedCanonicalLoop && TryToSimplifyUncondBranchFromEmptyBlock(BB, DTU)) in simplifyUncondBranch()
7342 if (I->isTerminator() && TryToMergeLandingPad(LPad, BI, BB, DTU)) in simplifyUncondBranch()
7351 FoldBranchToCommonDest(BI, DTU, /*MSSAU=*/nullptr, &TTI, in simplifyUncondBranch()
7388 static bool mergeNestedCondBranch(BranchInst *BI, DomTreeUpdater *DTU) { in mergeNestedCondBranch() argument
7423 if (DTU) { in mergeNestedCondBranch()
7430 DTU->applyUpdates(Updates); in mergeNestedCondBranch()
7511 FoldBranchToCommonDest(BI, DTU, /*MSSAU=*/nullptr, &TTI, in simplifyCondBranch()
7546 if (FoldCondBranchOnValueKnownInPredecessor(BI, DTU, DL, Options.AC)) in simplifyCondBranch()
7553 if (SimplifyCondBranchToCondBranch(PBI, BI, DTU, DL, TTI)) in simplifyCondBranch()
7561 if (mergeConditionalStores(PBI, BI, DTU, DL, TTI)) in simplifyCondBranch()
7565 if (mergeNestedCondBranch(BI, DTU)) in simplifyCondBranch()
7709 DomTreeUpdater *DTU, in removeUndefIntroducingPredecessor() argument
7738 if (DTU) in removeUndefIntroducingPredecessor()
7739 DTU->applyUpdates({{DominatorTree::Delete, Predecessor, BB}}); in removeUndefIntroducingPredecessor()
7759 if (DTU) in removeUndefIntroducingPredecessor()
7760 DTU->applyUpdates( in removeUndefIntroducingPredecessor()
7781 DeleteDeadBlock(BB, DTU); in simplifyOnce()
7788 /*TLI=*/nullptr, DTU); in simplifyOnce()
7794 if (removeUndefIntroducingPredecessor(BB, DTU, Options.AC)) in simplifyOnce()
7800 if (MergeBlockIntoPredecessor(BB, DTU)) in simplifyOnce()
7804 if (SinkCommonCodeFromPredecessors(BB, DTU) || in simplifyOnce()
7805 MergeCompatibleInvokes(BB, DTU)) { in simplifyOnce()
7822 if (FoldTwoEntryPHINode(PN, TTI, DTU, DL, in simplifyOnce()
7869 DomTreeUpdater *DTU, const SimplifyCFGOptions &Options, in simplifyCFG() argument
7871 return SimplifyCFGOpt(TTI, DTU, BB->getDataLayout(), LoopHeaders, in simplifyCFG()