Home
last modified time | relevance | path

Searched refs:BranchInst (Results 1 – 25 of 191) sorted by relevance

12345678

/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DFlattenCFG.cpp149 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 DLoopRotationUtils.cpp215 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 DLoopUnrollAndJam.cpp297 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 DMatrixUtils.cpp36 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 DGuardUtils.cpp39 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 DBasicBlockUtils.cpp206 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 DSimplifyCFG.cpp440 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 DUnifyFunctionExitNodes.cpp40 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 DDomConditionCache.h29 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 DSIAnnotateControlFlow.cpp65 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 DAMDGPUUnifyDivergentExitNodes.cpp171 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 DGuardUtils.h17 class BranchInst; variable
35 void widenWidenableBranch(BranchInst *WidenableBR, Value *NewCond);
40 void setWidenableBranchCond(BranchInst *WidenableBR, Value *Cond);
H A DLoopConstrainer.h19 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 DAArch64LoopIdiomTransform.cpp398 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 DLowerExpectIntrinsic.cpp196 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 DJumpThreading.cpp150 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 DLoopBoundSplit.cpp31 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 DIndVarSimplify.cpp240 !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 DStructurizeCFG.cpp79 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 DLoopInterchange.cpp557 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 DLowerConstantIntrinsics.cpp68 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 DGuardUtils.cpp36 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 DLoopNestAnalysis.cpp57 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 DNVPTXImageOptimizer.cpp151 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 DExpandMemCmp.cpp392 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()

12345678