Home
last modified time | relevance | path

Searched refs:BB (Results 1 – 25 of 778) sorted by relevance

12345678910>>...32

/freebsd/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/
H A DBlockCoverageInference.cpp57 for (auto &BB : F) { in BlockCoverageInference() local
80 for (auto &BB : F) { in getInstrumentedBlocksHash() local
112 for (auto &BB : F) in findDependencies() local
113 if (succ_empty(&BB)) in findDependencies()
135 for (auto &BB : F) { in findDependencies() local
176 for (auto &BB : F) { in findDependencies() local
206 for (auto &BB : F) { in findDependencies() local
210 Path.insert(&BB); in findDependencies()
342 for (auto &BB : F) { in dump() local
343 OS << (shouldInstrumentBlock(BB) ? "* " : " ") << BB.getName() << "\n"; in dump()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/Mips/
H A DMips16ISelLowering.cpp511 return BB; in emitSel16()
567 return BB; in emitSel16()
574 return BB; in emitSelT16()
631 return BB; in emitSelT16()
640 return BB; in emitSeliT16()
697 return BB; in emitSeliT16()
706 return BB; in emitFEXT_T8I816_ins()
716 return BB; in emitFEXT_T8I816_ins()
739 return BB; in emitFEXT_T8I8I16_ins()
767 return BB; in emitFEXT_CCRX16_ins()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DInstructionPrecedenceTracking.cpp40 const BasicBlock *BB) { in getFirstSpecialInstruction() argument
47 validate(BB); in getFirstSpecialInstruction()
51 fill(BB); in getFirstSpecialInstruction()
54 return FirstSpecialInsts[BB]; in getFirstSpecialInstruction()
58 const BasicBlock *BB) { in hasSpecialInstructions() argument
70 FirstSpecialInsts.erase(BB); in fill()
71 for (const auto &I : *BB) { in fill()
112 FirstSpecialInsts.erase(BB); in insertInstructionTo()
116 auto *BB = Inst->getParent(); in removeInstruction() local
118 if (FirstSpecialInsts.count(BB) && FirstSpecialInsts[BB] == Inst) in removeInstruction()
[all …]
H A DCFG.cpp37 if (succ_empty(BB)) in FindFunctionBackedges()
44 Visited.insert(BB); in FindFunctionBackedges()
45 VisitStack.push_back(std::make_pair(BB, succ_begin(BB))); in FindFunctionBackedges()
46 InStack.insert(BB); in FindFunctionBackedges()
54 BB = *I++; in FindFunctionBackedges()
60 if (InStack.count(BB)) in FindFunctionBackedges()
66 InStack.insert(BB); in FindFunctionBackedges()
67 VisitStack.push_back(std::make_pair(BB, succ_begin(BB))); in FindFunctionBackedges()
166 if (BB == StopBB) in isPotentiallyReachableFromMany()
198 Worklist.append(succ_begin(BB), succ_end(BB)); in isPotentiallyReachableFromMany()
[all …]
H A DBranchProbabilityInfo.cpp231 for (const auto *BB : Scc) { in SccInfo() local
233 SccNums[BB] = SccNum; in SccInfo()
241 auto SccIt = SccNums.find(BB); in getSCCNum()
252 if (isSCCHeader(BB, SccNum)) in getSccEnterBlocks()
318 : BB(BB) { in LoopBlock()
319 LD.first = LI.getLoopFor(BB); in LoopBlock()
444 setEdgeProbability(BB, BP); in calcMetadataWeights()
508 setEdgeProbability(BB, BP); in calcMetadataWeights()
786 return hasNoReturn(BB) in getInitialEstimatedBlockWeight()
798 for (const auto &I : *BB) in getInitialEstimatedBlockWeight()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DADCE.cpp103 BasicBlock *BB = nullptr; member
131 bool isLive(BasicBlock *BB) { return BlockInfo[BB].Live; } in isLive() argument
170 void markLive(BasicBlock *BB) { markLive(BlockInfo[BB]); } in markLive() argument
230 for (auto &BB : F) { in initialize() local
231 NumInsts += BB.size(); in initialize()
233 Info.BB = &BB; in initialize()
271 void completed(BasicBlock *BB) { (*this)[BB] = false; } in initialize() argument
404 markLive(BB); in markLive()
647 makeUnconditional(BB, PreferredSucc->BB); in updateDeadRegions()
683 for (auto &BB : F) { in computeReversePostOrder() local
[all …]
H A DJumpThreading.cpp318 for (auto &BB : *F) in runImpl()
343 if (&BB == &F->getEntryBlock() || DTU->isBBPendingDeletion(&BB)) in runImpl()
759 if (PN && PN->getParent() == BB && !LoopHeaders.contains(BB)) { in computeValueKnownInPredecessorsImpl()
964 (pred_empty(BB) && BB != &BB->getParent()->getEntryBlock())) in processBlock()
1907 SinglePred == BB || hasAddressTakenAndUsed(BB)) in maybeMergeBasicBlockIntoOnlyPred()
2250 TTI, BB, BB->getTerminator(), BBDupThreshold); in maybethreadThroughTwoBasicBlocks()
2367 TTI, BB, BB->getTerminator(), BBDupThreshold); in tryThreadEdge()
2413 BB->getParent(), BB); in threadEdge()
2641 TTI, BB, BB->getTerminator(), BBDupThreshold); in duplicateCondBranchOnPHIIntoPred()
2773 BB->getParent(), BB); in unfoldSelectInstr()
[all …]
H A DLoopSimplifyCFG.cpp85 Current->removeBlockFromLoop(BB); in removeBlockFromLoops()
93 for (BasicBlock *BB : BBs) { in getInnermostLoopFor()
94 Loop *BBL = LI.getLoopFor(BB); in getInnermostLoopFor()
191 BasicBlock *BB = *I; in hasIrreducibleCFG() local
223 BasicBlock *BB = *I; in analyze() local
299 BasicBlock *BB = *I; in analyze() local
300 if (BlockIsInLoop(BB)) in analyze()
366 for (auto &PN : BB->phis()) in handleDeadExits()
448 if (LI.isLoopHeader(BB)) { in deleteDeadLoopBlocks()
466 LI.removeBlock(BB); in deleteDeadLoopBlocks()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DMachineSSAUpdater.cpp76 getAvailableVals(AV)[BB] = V; in AddAvailableValue()
88 if (BB->empty()) in LookForIdenticalPHI()
152 if (!HasValueForBlock(BB)) in GetValueInMiddleOfBlock()
156 if (BB->pred_empty()) { in GetValueInMiddleOfBlock()
162 BB, BB->getFirstTerminator(), in GetValueInMiddleOfBlock()
199 MachineBasicBlock::iterator Loc = BB->empty() ? BB->end() : BB->begin(); in GetValueInMiddleOfBlock()
259 static BlkSucc_iterator BlkSucc_begin(BlkT *BB) { return BB->succ_begin(); } in BlkSucc_begin() argument
260 static BlkSucc_iterator BlkSucc_end(BlkT *BB) { return BB->succ_end(); } in BlkSucc_end() argument
304 BB, BB->getFirstNonPHI(), in GetUndefVal()
314 MachineBasicBlock::iterator Loc = BB->empty() ? BB->end() : BB->begin(); in CreateEmptyPHI()
[all …]
H A DUnreachableBlockElim.cpp111 for (MachineBasicBlock &BB : F) { in runOnMachineFunction()
113 if (!Reachable.count(&BB)) { in runOnMachineFunction()
114 DeadBlocks.push_back(&BB); in runOnMachineFunction()
117 if (MLI) MLI->removeBlock(&BB); in runOnMachineFunction()
118 if (MDT && MDT->getNode(&BB)) MDT->eraseNode(&BB); in runOnMachineFunction()
120 while (!BB.succ_empty()) { in runOnMachineFunction()
133 BB.removeSuccessor(BB.succ_begin()); in runOnMachineFunction()
141 for (auto &I : BB->instrs()) in runOnMachineFunction()
145 BB->eraseFromParent(); in runOnMachineFunction()
149 for (MachineBasicBlock &BB : F) { in runOnMachineFunction()
[all …]
H A DWasmEHPrepare.cpp178 if (!pred_empty(BB)) in eraseDeadBBsAndChildren()
180 WL.append(succ_begin(BB), succ_end(BB)); in eraseDeadBBsAndChildren()
181 DeleteDeadBlock(BB); in eraseDeadBBsAndChildren()
211 BB->erase(std::next(BasicBlock::iterator(ThrowI)), BB->end()); in prepareThrows()
212 IRB.SetInsertPoint(BB); in prepareThrows()
226 for (BasicBlock &BB : F) { in prepareEHPads()
227 if (!BB.isEHPad()) in prepareEHPads()
296 prepareEHPad(BB, false); in prepareEHPads()
307 IRB.SetInsertPoint(BB, BB->getFirstInsertionPt()); in prepareEHPad()
385 for (const auto &BB : *F) { in calculateWasmEHInfo()
[all …]
H A DIfConversion.cpp671 if (TrueBBI.BB == FalseBBI.BB) in ValidTriangle()
938 TrueBBICalc.BB = TrueBBI.BB; in ValidForkedDiamond()
939 FalseBBICalc.BB = FalseBBI.BB; in ValidForkedDiamond()
966 if (TrueBBI.BB == FalseBBI.BB) in ValidDiamond()
1002 TrueBBICalc.BB = TrueBBI.BB; in ValidDiamond()
1003 FalseBBICalc.BB = FalseBBI.BB; in ValidDiamond()
1229 BBI.BB = BB; in AnalyzeBlock()
1247 if (BBI.TrueBB == BB || BBI.FalseBB == BB) { in AnalyzeBlock()
2056 BBI.BB->removeSuccessor(TrueBBI.BB); in IfConvertDiamond()
2057 BBI.BB->removeSuccessor(FalseBBI.BB, true); in IfConvertDiamond()
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DCFG.h110 inline pred_iterator pred_begin(BasicBlock *BB) { return pred_iterator(BB); } in pred_begin() argument
119 return pred_begin(BB) == pred_end(BB); in pred_empty()
124 return std::distance(pred_begin(BB), pred_end(BB)); in pred_size()
127 return pred_range(pred_begin(BB), pred_end(BB)); in predecessors()
130 return const_pred_range(pred_begin(BB), pred_end(BB)); in predecessors()
281 return succ_begin(BB) == succ_end(BB); in succ_empty()
284 return std::distance(succ_begin(BB), succ_end(BB)); in succ_size()
287 return succ_range(succ_begin(BB), succ_end(BB)); in successors()
290 return const_succ_range(succ_begin(BB), succ_end(BB)); in successors()
304 static NodeRef getEntryNode(BasicBlock *BB) { return BB; }
[all …]
H A DInstIterator.h54 : BBs(II.BBs), BB(II.BB), BI(II.BI) {} in InstIterator()
58 : BBs(II.BBs), BB(II.BB), BI(II.BI) {} in InstIterator()
62 if (BB != BBs->end()) { in InstIterator()
63 BI = BB->begin(); in InstIterator()
80 return BB == y.BB && (BB == BBs->end() || BI == y.BI);
96 while (BB == BBs->end() || BI == BB->begin()) {
97 --BB;
98 BI = BB->end();
113 while (BI == BB->end()) { in advanceToNextBB()
114 ++BB; in advanceToNextBB()
[all …]
H A DPredIteratorCache.h42 BasicBlock **GetPreds(BasicBlock *BB) { in GetPreds() argument
43 BasicBlock **&Entry = BlockToPredsMap[BB]; in GetPreds()
47 SmallVector<BasicBlock *, 32> PredCache(predecessors(BB)); in GetPreds()
50 BlockToPredCountMap[BB] = PredCache.size() - 1; in GetPreds()
57 unsigned GetNumPreds(BasicBlock *BB) const { in GetNumPreds() argument
58 auto Result = BlockToPredCountMap.find(BB); in GetNumPreds()
61 return BlockToPredCountMap[BB] = pred_size(BB); in GetNumPreds()
65 size_t size(BasicBlock *BB) const { return GetNumPreds(BB); } in size() argument
66 ArrayRef<BasicBlock *> get(BasicBlock *BB) { in get() argument
67 return ArrayRef(GetPreds(BB), GetNumPreds(BB)); in get()
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DEHUtils.h26 auto GetStatus = [&](BlockT *BB) { in computeEHOnlyBlocks()
27 if (Statuses.contains(BB)) in computeEHOnlyBlocks()
28 return Statuses[BB]; in computeEHOnlyBlocks()
56 for (auto &BB : F) { in computeEHOnlyBlocks()
57 if (BB.isEHPad()) { in computeEHOnlyBlocks()
58 AddSuccesors(&BB); in computeEHOnlyBlocks()
59 Statuses[&BB] = EH; in computeEHOnlyBlocks()
65 auto *BB = *WorkList.begin(); in computeEHOnlyBlocks() local
66 WorkList.erase(BB); in computeEHOnlyBlocks()
77 AddSuccesors(BB); in computeEHOnlyBlocks()
[all …]
H A DInstructionPrecedenceTracking.h37 void fill(const BasicBlock *BB);
43 void validate(const BasicBlock *BB) const;
58 bool hasSpecialInstructions(const BasicBlock *BB);
103 const Instruction *getFirstICFI(const BasicBlock *BB) { in getFirstICFI() argument
104 return getFirstSpecialInstruction(BB); in getFirstICFI()
109 bool hasICF(const BasicBlock *BB) { in hasICF() argument
110 return hasSpecialInstructions(BB); in hasICF()
125 const Instruction *getFirstMemoryWrite(const BasicBlock *BB) { in getFirstMemoryWrite() argument
126 return getFirstSpecialInstruction(BB); in getFirstMemoryWrite()
131 bool mayWriteToMemory(const BasicBlock *BB) { in mayWriteToMemory() argument
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlanHCFGBuilder.cpp87 Loop *LoopForBB = LI->getLoopFor(BB); in setVPBBPredsFromBB()
112 return L && BB == L->getHeader(); in isHeaderBB()
118 Loop *LoopOfBB = LI->getLoopFor(BB); in setRegionPredsFromBB()
183 StringRef Name = isHeaderBB(BB, TheLoop) ? "vector.body" : BB->getName(); in getOrCreateVPBB()
186 BB2VPBB[BB] = VPBB; in getOrCreateVPBB()
189 Loop *LoopOfBB = LI->getLoopFor(BB); in getOrCreateVPBB()
194 if (!isHeaderBB(BB, LoopOfBB)) { in getOrCreateVPBB()
371 for (BasicBlock *BB : RPO) { in buildPlainCFG()
379 if (!isHeaderBB(BB, LoopForBB)) { in buildPlainCFG()
380 setVPBBPredsFromBB(VPBB, BB); in buildPlainCFG()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUUnifyDivergentExitNodes.cpp163 for (BasicBlock *BB : ReturningBlocks) { in unifyReturnBlockSet()
167 PN->addIncoming(BB->getTerminator()->getOperand(0), BB); in unifyReturnBlockSet()
170 BB->getTerminator()->eraseFromParent(); in unifyReturnBlockSet()
171 BranchInst::Create(NewRetBlock, BB); in unifyReturnBlockSet()
179 for (BasicBlock *BB : ReturningBlocks) { in unifyReturnBlockSet()
216 PDT.roots(), [&](auto BB) { return !isUniformlyReached(UA, *BB); }); in run() argument
218 for (BasicBlock *BB : PDT.roots()) { in run()
219 if (isa<ReturnInst>(BB->getTerminator())) { in run()
221 ReturningBlocks.push_back(BB); in run()
224 UnreachableBlocks.push_back(BB); in run()
[all …]
H A DSIAnnotateControlFlow.cpp67 bool isTopOfStack(BasicBlock *BB);
75 bool hasKill(const BasicBlock *BB);
189 for (const Instruction &I : *BB) { in hasKill()
312 assert(Stack.back().first == BB); in closeControlFlow()
314 if (L && L->getHeader() == BB) { in closeControlFlow()
327 BB = SplitBlockPredecessors(BB, Preds, "endcf.split", DT, LI, nullptr, in closeControlFlow()
360 BasicBlock *BB = *I; in runOnFunction() local
364 if (isTopOfStack(BB)) in runOnFunction()
371 if (isTopOfStack(BB)) in runOnFunction()
379 if (isTopOfStack(BB)) { in runOnFunction()
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/
H A DJumpThreading.h114 bool processBlock(BasicBlock *BB);
115 bool maybeMergeBasicBlockIntoOnlyPred(BasicBlock *BB);
116 void updateSSA(BasicBlock *BB, BasicBlock *NewBB,
122 bool tryThreadEdge(BasicBlock *BB,
135 computeValueKnownInPredecessors(Value *V, BasicBlock *BB,
149 bool processThreadableEdges(Value *Cond, BasicBlock *BB,
155 bool processImpliedCondition(BasicBlock *BB);
162 bool tryToUnfoldSelect(SwitchInst *SI, BasicBlock *BB);
163 bool tryToUnfoldSelectInCurrBB(BasicBlock *BB);
165 bool processGuards(BasicBlock *BB);
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DBasicBlockUtils.cpp66 for (auto *BB : BBs) { in detachDeadBlocks() local
88 new UnreachableInst(BB->getContext(), BB); in detachDeadBlocks()
107 for (auto *BB : Dead) in DeleteDeadBlocks() local
283 PredBB->splice(PTI->getIterator(), BB, BB->begin(), STI->getIterator()); in MergeBlockIntoPredecessor()
312 new UnreachableInst(BB->getContext(), BB); in MergeBlockIntoPredecessor()
740 BB = BB->getUniqueSuccessor(); in IsBlockFollowedByDeoptOrUnreachable()
785 return SplitBlock(BB, BB->getTerminator(), DT, LI, MSSAU, BBName); in SplitEdge()
849 if (P == BB) in ehAwareSplitEdge()
1338 BB->getContext(), BB->getName() + Suffix, BB->getParent(), BB); in SplitBlockPredecessorsImpl()
1680 *PBB = BB; in SplitBlockAndInsertIfThenElse()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DSafepointIRVerifier.cpp87 for (const_pred_iterator PredIt(BB), End(BB, true); PredIt != End; ++PredIt) { in hasLiveIncomingEdge()
101 return DeadBlocks.count(BB); in isDeadBlock()
116 for (const_pred_iterator PredIt(BB), End(BB, true); PredIt != End; ++PredIt) { in hasLiveIncomingEdges()
131 DeadBlocks.insert(&BB); in processFunction()
162 NewDead.push_back(BB); in addDeadBlock()
192 addDeadBlock(BB); in addDeadEdge()
488 bool isMapped(const BasicBlock *BB) const { return BlockMap.contains(BB); } in isMapped()
553 BlockMap[&BB] = BBS; in GCPtrTracker()
570 return BlockMap.lookup(BB); in getBasicBlockState()
628 for (const_pred_iterator PredIt(BB), End(BB, true); PredIt != End; ++PredIt) { in recalculateBBsStates()
[all …]
/freebsd/contrib/llvm-project/llvm/tools/llvm-stress/
H A Dllvm-stress.cpp160 : BB(Block), PT(PT), Ran(R), Context(BB->getContext()) { in Modifier()
323 BasicBlock *BB; member
339 : Modifier(BB, PT, R) {} in LoadModifier()
352 : Modifier(BB, PT, R) {} in StoreModifier()
371 : Modifier(BB, PT, R) {} in BinModifier()
415 : Modifier(BB, PT, R) {} in ConstModifier()
466 : Modifier(BB, PT, R) {} in AllocaModifier()
478 : Modifier(BB, PT, R) {} in ExtractElementModifier()
492 : Modifier(BB, PT, R) {} in ShuffModifier()
524 : Modifier(BB, PT, R) {} in InsertElementModifier()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/IPO/
H A DHotColdSplitting.cpp103 if (!succ_empty(&BB)) in blockEndsInUnreachable()
105 if (BB.empty()) in blockEndsInUnreachable()
139 if (BB.isEHPad() || isa<ResumeInst>(BB.getTerminator())) in unlikelyExecuted()
144 for (Instruction &I : BB) in unlikelyExecuted()
171 if (BB.hasAddressTaken() || BB.isEHPad()) in mayExtractBlock()
224 if (ColdBlocks.count(BB)) in isBasicBlockCold()
302 if (succ_empty(BB)) { in getOutliningPenalty()
603 BB == SuggestedEntryPoint || DT.dominates(SuggestedEntryPoint, BB); in takeSingleEntrySubRegion()
605 NextEntryPoint = BB; in takeSingleEntrySubRegion()
666 BB->dump(); in outlineColdRegions()
[all …]

12345678910>>...32