| /freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | FlattenCFG.cpp | 149 BranchInst *PBI = dyn_cast<BranchInst>(Pred->getTerminator()); in FlattenParallelAndOr() 221 BranchInst *BPS = dyn_cast<BranchInst>(PS->getTerminator()); in FlattenParallelAndOr() 235 BranchInst *PBI1 = dyn_cast<BranchInst>(PS1->getTerminator()); in FlattenParallelAndOr() 236 BranchInst *PBI2 = dyn_cast<BranchInst>(PS2->getTerminator()); in FlattenParallelAndOr() 252 auto *BI = cast<BranchInst>(CurrBlock->getTerminator()); in FlattenParallelAndOr() 279 BranchInst *PBI = cast<BranchInst>(FirstCondBlock->getTerminator()); in FlattenParallelAndOr() 289 PBI = cast<BranchInst>(FirstCondBlock->getTerminator()); in FlattenParallelAndOr() 415 BranchInst *DomBI2 = GetIfCondition(BB, IfTrue2, IfFalse2); in MergeIfRegion() 427 BranchInst *DomBI1 = GetIfCondition(SecondEntryBlock, IfTrue1, IfFalse1); in MergeIfRegion() 488 BranchInst *PBI = cast<BranchInst>(FirstEntryBlock->getTerminator()); in MergeIfRegion()
|
| H A D | LoopRotationUtils.cpp | 215 BranchInst *BI = dyn_cast<BranchInst>(Header->getTerminator()); in profitableToRotateLoopExitingLatch() 241 BranchInst *BI = dyn_cast<BranchInst>(Latch->getTerminator()); in canRotateDeoptimizingLatchExit() 276 static void updateBranchWeights(BranchInst &PreHeaderBI, BranchInst &LoopBI, in updateBranchWeights() 416 BranchInst *BI = dyn_cast<BranchInst>(OrigHeader->getTerminator()); in rotateLoop() 815 BranchInst *PHBI = cast<BranchInst>(OrigPreheader->getTerminator()); in rotateLoop() 861 BranchInst *NewBI = BranchInst::Create(NewHeader, PHBI); in rotateLoop() 991 BranchInst *Jmp = dyn_cast<BranchInst>(Latch->getTerminator()); in simplifyLoopLatch() 999 BranchInst *BI = dyn_cast<BranchInst>(LastExit->getTerminator()); in simplifyLoopLatch()
|
| H A D | LoopUnrollAndJam.cpp | 297 BranchInst *BI = dyn_cast<BranchInst>(LatchBlock->getTerminator()); in UnrollAndJamLoop() 486 BranchInst *ForeTerm = in UnrollAndJamLoop() 487 cast<BranchInst>(ForeBlocksLast.back()->getTerminator()); in UnrollAndJamLoop() 504 BranchInst *ForeTerm = in UnrollAndJamLoop() 511 BranchInst *SubTerm = in UnrollAndJamLoop() 523 BranchInst *SubTerm = in UnrollAndJamLoop() 525 BranchInst::Create(SubLoopBlocksFirst[It], SubTerm); in UnrollAndJamLoop() 536 BranchInst *AftTerm = cast<BranchInst>(AftBlocksLast.back()->getTerminator()); in UnrollAndJamLoop() 538 BranchInst::Create(LoopExit, AftTerm); in UnrollAndJamLoop() 551 BranchInst *AftTerm = in UnrollAndJamLoop() [all …]
|
| H A D | MatrixUtils.cpp | 36 BranchInst::Create(Body, Header); in CreateLoop() 37 BranchInst::Create(Latch, Body); in CreateLoop() 45 BranchInst::Create(Header, Exit, Cond, Latch); in CreateLoop() 48 BranchInst *PreheaderBr = cast<BranchInst>(Preheader->getTerminator()); in CreateLoop()
|
| H A D | GuardUtils.cpp | 39 auto *CheckBI = cast<BranchInst>(CheckBB->getTerminator()); in makeGuardControlFlowExplicit() 82 void llvm::widenWidenableBranch(BranchInst *WidenableBR, Value *NewCond) { in widenWidenableBranch() 108 void llvm::setWidenableBranchCond(BranchInst *WidenableBR, Value *NewCond) { in setWidenableBranchCond()
|
| H A D | BasicBlockUtils.cpp | 206 BranchInst *PredBB_BI; in MergeBlockIntoPredecessor() 212 BranchInst *BB_JmpI = dyn_cast<BranchInst>(BB->getTerminator()); in MergeBlockIntoPredecessor() 1341 BranchInst *BI = BranchInst::Create(BB, NewBB); in SplitBlockPredecessorsImpl() 1439 BranchInst *BI1 = BranchInst::Create(OrigBB, NewBB1); in SplitLandingPadPredecessorsImpl() 1480 BranchInst *BI2 = BranchInst::Create(OrigBB, NewBB2); in SplitLandingPadPredecessorsImpl() 1675 (void)BranchInst::Create(Tail, BB); in SplitBlockAndInsertIfThenElse() 1688 BranchInst *HeadNewTerm = in SplitBlockAndInsertIfThenElse() 1815 BranchInst *Pred1Br = dyn_cast<BranchInst>(Pred1->getTerminator()); in GetIfCondition() 1816 BranchInst *Pred2Br = dyn_cast<BranchInst>(Pred2->getTerminator()); in GetIfCondition() 1868 BranchInst *BI = dyn_cast<BranchInst>(CommonPred->getTerminator()); in GetIfCondition() [all …]
|
| H A D | SimplifyCFG.cpp | 440 BranchInst *BI = dyn_cast<BranchInst>(PBB->getTerminator()); in dominatesMergePoint() 760 } else if (BranchInst *BI = dyn_cast<BranchInst>(TI)) { in EraseTerminatorAndDCECond() 781 } else if (BranchInst *BI = dyn_cast<BranchInst>(TI)) in isValueEqualityComparison() 811 BranchInst *BI = cast<BranchInst>(TI); in GetValueEqualityComparisonCases() 1077 if (BranchInst *BI = dyn_cast<BranchInst>(TI)) { in GetBranchWeights() 3376 BranchInst *EdgeBI = cast<BranchInst>(EdgeBB->getTerminator()); in FoldCondBranchOnValueKnownInPredecessorImpl() 3625 static bool extractPredSuccWeights(BranchInst *PBI, BranchInst *BI, in extractPredSuccWeights() 4152 static bool mergeConditionalStores(BranchInst *PBI, BranchInst *QBI, in mergeConditionalStores() 5663 BranchInst *Branch = dyn_cast<BranchInst>(BB->getTerminator()); in FindPHIForConditionForwarding() 7149 BranchInst *BI2 = dyn_cast<BranchInst>(I); in TryToMergeLandingPad() [all …]
|
| H A D | UnifyFunctionExitNodes.cpp | 40 BranchInst::Create(UnreachableBlock, BB); in unifyUnreachableBlocks() 82 BranchInst::Create(NewRetBlock, BB); in unifyReturnBlocks()
|
| /freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | DomConditionCache.h | 29 class BranchInst; variable 34 using AffectedValuesMap = DenseMap<Value *, SmallVector<BranchInst *, 1>>; 39 void registerBranch(BranchInst *BI); 45 ArrayRef<BranchInst *> conditionsFor(const Value *V) const { in conditionsFor() 48 return ArrayRef<BranchInst *>(); in conditionsFor()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | SIAnnotateControlFlow.cpp | 65 bool isUniform(BranchInst *T); 79 bool openIf(BranchInst *Term); 81 bool insertElse(BranchInst *Term); 85 BranchInst *Term); 87 bool handleLoop(BranchInst *Term); 149 bool SIAnnotateControlFlow::isUniform(BranchInst *T) { in isUniform() 206 bool SIAnnotateControlFlow::openIf(BranchInst *Term) { in openIf() 220 bool SIAnnotateControlFlow::insertElse(BranchInst *Term) { in insertElse() 236 Value *Cond, PHINode *Broken, llvm::Loop *L, BranchInst *Term) { in handleLoopCondition() 271 bool SIAnnotateControlFlow::handleLoop(BranchInst *Term) { in handleLoop() [all …]
|
| H A D | AMDGPUUnifyDivergentExitNodes.cpp | 171 BranchInst::Create(NewRetBlock, BB); in unifyReturnBlockSet() 195 !isa<BranchInst>(PDT.getRoot()->getTerminator()))) in run() 225 } else if (BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator())) { in run() 241 BranchInst::Create(LoopHeaderBB, DummyReturnBB, BoolTrue, BB); in run() 262 BranchInst::Create(TransitionBB, DummyReturnBB, BoolTrue, BB); in run() 283 BranchInst::Create(UnreachableBlock, BB); in run()
|
| /freebsd-14.2/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
| H A D | GuardUtils.h | 17 class BranchInst; variable 35 void widenWidenableBranch(BranchInst *WidenableBR, Value *NewCond); 40 void setWidenableBranchCond(BranchInst *WidenableBR, Value *Cond);
|
| H A D | LoopConstrainer.h | 19 class BranchInst; variable 42 BranchInst *LatchBr = nullptr; 70 Result.LatchBr = cast<BranchInst>(Map(LatchBr)); in map()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AArch64/ |
| H A D | AArch64LoopIdiomTransform.cpp | 398 BranchInst *PHBranch = cast<BranchInst>(Preheader->getTerminator()); in expandFindMismatch() 487 BranchInst *MinItCheckBr = in expandFindMismatch() 533 BranchInst *CombinedPageCmpCmpBr = BranchInst::Create( in expandFindMismatch() 567 BranchInst *JumpToSVELoop = BranchInst::Create(SVELoopStartBlock); in expandFindMismatch() 598 BranchInst *SVEEarlyExit = BranchInst::Create( in expandFindMismatch() 620 BranchInst *SVELoopBranchBack = in expandFindMismatch() 648 Builder.Insert(BranchInst::Create(EndBlock)); in expandFindMismatch() 654 Builder.Insert(BranchInst::Create(LoopStartBlock)); in expandFindMismatch() 679 BranchInst *MatchCmpBr = BranchInst::Create(LoopIncBlock, EndBlock, MatchCmp); in expandFindMismatch() 692 BranchInst *IVCmpBr = BranchInst::Create(EndBlock, LoopStartBlock, IVCmp); in expandFindMismatch() [all …]
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | LowerExpectIntrinsic.cpp | 196 auto GetDomConditional = [&](unsigned i) -> BranchInst * { in handlePhiDef() 198 BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator()); in handlePhiDef() 204 BI = dyn_cast<BranchInst>(BB->getTerminator()); in handlePhiDef() 229 BranchInst *BI = GetDomConditional(i); in handlePhiDef() 355 static bool handleBranchExpect(BranchInst &BI) { in handleBranchExpect() 359 return handleBrSelExpect<BranchInst>(BI); in handleBranchExpect() 367 if (BranchInst *BI = dyn_cast<BranchInst>(BB.getTerminator())) { in lowerExpectIntrinsic()
|
| H A D | JumpThreading.cpp | 150 BranchInst *CondBr = dyn_cast<BranchInst>(BB->getTerminator()); in updatePredecessorProfileMetadata() 173 BranchInst *PredBr = dyn_cast<BranchInst>(PredBB->getTerminator()); in updatePredecessorProfileMetadata() 209 BranchInst *PredBr = dyn_cast<BranchInst>(PredBB->getTerminator()); in updatePredecessorProfileMetadata() 988 if (BranchInst *BI = dyn_cast<BranchInst>(Terminator)) { in processBlock() 1205 BranchInst *UncondBI = BranchInst::Create(KeepSucc, BI); in processImpliedCondition() 2149 BranchInst *CondBr = dyn_cast<BranchInst>(BB->getTerminator()); in maybethreadThroughTwoBasicBlocks() 2282 BranchInst *CondBr = cast<BranchInst>(BB->getTerminator()); in threadThroughTwoBasicBlocks() 2430 BranchInst *NewBI = BranchInst::Create(SuccBB, NewBB); in threadEdge() 2732 BranchInst *BBBranch = cast<BranchInst>(BB->getTerminator()); in duplicateCondBranchOnPHIIntoPred() 2771 BranchInst *PredTerm = cast<BranchInst>(Pred->getTerminator()); in unfoldSelectInstr() [all …]
|
| H A D | LoopBoundSplit.cpp | 31 BranchInst *BI = nullptr; 160 const BranchInst *BI) { in isProcessableCondBI() 206 BranchInst *ExitingBI = dyn_cast<BranchInst>(ExitingBB->getTerminator()); in canSplitLoopBound() 223 static bool isProfitableToTransform(const Loop &L, const BranchInst *BI) { in isProfitableToTransform() 243 static BranchInst *findSplitCandidate(const Loop &L, ScalarEvolution &SE, in findSplitCandidate() 251 auto *BI = dyn_cast<BranchInst>(BB->getTerminator()); in findSplitCandidate() 422 BranchInst *ClonedSplitCandidateBI = in splitLoopBound() 423 cast<BranchInst>(VMap[SplitCandidateCond.BI]); in splitLoopBound()
|
| H A D | IndVarSimplify.cpp | 240 !isa<BranchInst>(Compare->user_back())) in handleFloatingPointIV() 243 BranchInst *TheBr = cast<BranchInst>(Compare->user_back()); in handleFloatingPointIV() 457 if (auto *BI = dyn_cast<BranchInst>(TermInst)) { in rewriteFirstIterationLoopExitValues() 691 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in isLoopExitTestBasedOn() 710 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in needsLFTR() 996 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in linearFunctionTestReplace() 1181 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in createFoldedExitCond() 1190 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in foldExit() 1247 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in createInvariantCond() 1562 BranchInst *BI = dyn_cast<BranchInst>(ExitingBB->getTerminator()); in optimizeLoopExits() [all …]
|
| H A D | StructurizeCFG.cpp | 79 using BranchVector = SmallVector<BranchInst *, 8>; 274 Value *buildCondition(BranchInst *Term, unsigned Idx, bool Invert); 443 BranchInst *Term = cast<BranchInst>(BB->getTerminator()); in analyzeLoops() 452 Value *StructurizeCFG::buildCondition(BranchInst *Term, unsigned Idx, in buildCondition() 479 BranchInst *Term = cast<BranchInst>(P->getTerminator()); in gatherPredicates() 564 for (BranchInst *Term : Conds) { in insertConditions() 841 BranchInst *Br = BranchInst::Create(NewExit, BB); in changeExit() 958 BranchInst *Br = BranchInst::Create(Entry, Next, BoolPoison, Flow); in wireFlow() 999 BranchInst *Br = BranchInst::Create(Next, LoopStart, BoolPoison, LoopEnd); in handleLoops() 1073 auto Br = dyn_cast<BranchInst>(E->getEntry()->getTerminator()); in hasOnlyUniformBranches() [all …]
|
| H A D | LoopInterchange.cpp | 557 BranchInst *OuterLoopHeaderBI = in tightlyNested() 558 dyn_cast<BranchInst>(OuterLoopHeader->getTerminator()); in tightlyNested() 632 BranchInst *InnerLoopLatchBI = in isLoopStructureUnderstood() 633 dyn_cast<BranchInst>(InnerLoopLatch->getTerminator()); in isLoopStructureUnderstood() 777 !isa<BranchInst>(InnerLoopLatch->getTerminator()) || in currentLimitations() 1573 BranchInst *OuterLoopLatchBI = in adjustLoopBranches() 1575 BranchInst *InnerLoopLatchBI = in adjustLoopBranches() 1577 BranchInst *OuterLoopHeaderBI = in adjustLoopBranches() 1579 BranchInst *InnerLoopHeaderBI = in adjustLoopBranches() 1587 BranchInst *InnerLoopLatchPredecessorBI = in adjustLoopBranches() [all …]
|
| H A D | LowerConstantIntrinsics.cpp | 68 BranchInst *BI = dyn_cast_or_null<BranchInst>(VH); in replaceConditionalBranchesOnConstant() 89 BranchInst::Create(Target, Source); in replaceConditionalBranchesOnConstant()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | GuardUtils.cpp | 36 BasicBlock *DeoptBB = cast<BranchInst>(U)->getSuccessor(1); in isGuardAsWidenableBranch() 72 auto *BI = dyn_cast<BranchInst>(U); in parseWidenableBranch() 142 : cast<BranchInst>(U)->getCondition(); in parseWidenableGuard() 152 auto *BI = dyn_cast<BranchInst>(U); in extractWidenableCondition()
|
| H A D | LoopNestAnalysis.cpp | 57 const BranchInst *BI = dyn_cast<BranchInst>(Latch->getTerminator()); in getOuterLoopLatchCmp() 72 BranchInst *InnerGuard = InnerLoop.getLoopGuardBranch(); in getInnerLoopGuardCmp() 90 isSafeToSpeculativelyExecute(&I) || isa<PHINode>(I) || isa<BranchInst>(I); in checkSafeInstruction() 367 const BranchInst *BI = dyn_cast<BranchInst>(SingleSucc.getTerminator()); in checkLoopsStructure()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/Target/NVPTX/ |
| H A D | NVPTXImageOptimizer.cpp | 151 if (BranchInst *BI = dyn_cast<BranchInst>(U)) { in replaceWith() 160 BranchInst::Create(Dest, BI); in replaceWith()
|
| /freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | ExpandMemCmp.cpp | 392 BranchInst *CmpBr = in emitLoadCompareByteBlock() 393 BranchInst::Create(EndBlock, LoadCmpBlocks[BlockIndex + 1], Cmp); in emitLoadCompareByteBlock() 401 BranchInst *CmpBr = BranchInst::Create(EndBlock); in emitLoadCompareByteBlock() 490 BranchInst *CmpBr = BranchInst::Create(ResBlock.BB, NextBB, Cmp); in emitLoadCompareBlockMultipleLoads() 554 BranchInst *CmpBr = BranchInst::Create(NextBB, ResBlock.BB, Cmp); in emitLoadCompareBlock() 580 BranchInst *NewBr = BranchInst::Create(EndBlock); in emitMemCmpResultBlock() 597 BranchInst *NewBr = BranchInst::Create(EndBlock); in emitMemCmpResultBlock()
|