Home
last modified time | relevance | path

Searched refs:BBs (Results 1 – 25 of 39) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DInstIterator.h37 BB_t *BBs; // BasicBlocksType variable
54 : BBs(II.BBs), BB(II.BB), BI(II.BI) {} in InstIterator()
58 : BBs(II.BBs), BB(II.BB), BI(II.BI) {} in InstIterator()
61 : BBs(&m.getBasicBlockList()), BB(BBs->begin()) { // begin ctor in InstIterator()
62 if (BB != BBs->end()) { in InstIterator()
69 : BBs(&m.getBasicBlockList()), BB(BBs->end()) { // end ctor in InstIterator()
80 return BB == y.BB && (BB == BBs->end() || BI == y.BI);
96 while (BB == BBs->end() || BI == BB->begin()) {
107 inline bool atEnd() const { return BB == BBs->end(); } in atEnd()
115 if (BB == BBs->end()) break; in advanceToNextBB()
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DStructuralHash.cpp89 // walking the BBs in depth first order and comparing each instruction in in StructuralHash()
110 SmallVector<const BasicBlock *, 8> BBs;
116 BBs.push_back(&F.getEntryBlock());
117 VisitedBBs.insert(BBs[0]);
118 while (!BBs.empty()) {
119 const BasicBlock *BB = BBs.pop_back_val();
122 // opcodes into BBs wouldn't affect the hash, only the order of the
130 BBs.push_back(Succ);
40 SmallVector<const BasicBlock *, 8> BBs; update() local
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DIndirectBrExpandPass.cpp133 SmallVector<BasicBlock *, 4> BBs; in runImpl() local
162 int BBIndex = BBs.size() + 1; in runImpl()
163 BBs.push_back(&BB); in runImpl()
175 if (BBs.empty()) { in runImpl()
259 auto *SI = SwitchInst::Create(SwitchValue, BBs[0], BBs.size(), SwitchBB); in runImpl()
262 for (int i : llvm::seq<int>(1, BBs.size())) in runImpl()
263 SI->addCase(ConstantInt::get(CommonITy, i + 1), BBs[i]); in runImpl()
269 Updates.reserve(Updates.size() + BBs.size()); in runImpl()
270 for (BasicBlock *BB : BBs) { in runImpl()
H A DWasmEHPrepare.cpp175 static void eraseDeadBBsAndChildren(const Container &BBs) { in eraseDeadBBsAndChildren() argument
176 SmallVector<BasicBlock *, 8> WL(BBs.begin(), BBs.end()); in eraseDeadBBsAndChildren()
H A DMachineCSE.cpp909 SmallVector<MachineDomTreeNode *, 32> BBs; in PerformSimplePRE() local
913 BBs.push_back(DT->getRootNode()); in PerformSimplePRE()
915 auto Node = BBs.pop_back_val(); in PerformSimplePRE()
916 append_range(BBs, Node->children()); in PerformSimplePRE()
921 } while (!BBs.empty()); in PerformSimplePRE()
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Instrumentation/
H A DBlockCoverageInference.h78 static std::string getBlockNames(ArrayRef<const BasicBlock *> BBs);
79 static std::string getBlockNames(BlockSet BBs) { in getBlockNames() argument
80 return getBlockNames(ArrayRef<const BasicBlock *>(BBs.begin(), BBs.end())); in getBlockNames()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DSimplifyCFGPass.cpp87 performBlockTailMerging(Function &F, ArrayRef<BasicBlock *> BBs, in performBlockTailMerging() argument
93 if (BBs.size() < 2) in performBlockTailMerging()
97 Updates->reserve(Updates->size() + BBs.size()); in performBlockTailMerging()
102 auto *Term = BBs[0]->getTerminator(); in performBlockTailMerging()
107 F.getContext(), Twine("common.") + Term->getOpcodeName(), &F, BBs[0]); in performBlockTailMerging()
112 /*NumReservedValues=*/BBs.size(), in performBlockTailMerging()
128 for (BasicBlock *BB : BBs) { in performBlockTailMerging()
216 for (ArrayRef<BasicBlock *> BBs : make_second_range(Structure)) in tailMergeBlocksWithSimilarFunctionTerminators()
217 Changed |= performBlockTailMerging(F, BBs, DTU ? &Updates : nullptr); in tailMergeBlocksWithSimilarFunctionTerminators()
H A DConstantHoisting.cpp218 SetVector<BasicBlock *> &BBs) { in findBestInsertionSet() argument
219 assert(!BBs.count(Entry) && "Assume Entry is not in BBs"); in findBestInsertionSet()
226 for (auto *BB : BBs) { in findBestInsertionSet()
245 } while (!BBs.count(Node)); in findBestInsertionSet()
278 bool NodeInBBs = BBs.count(Node); in findBestInsertionSet()
284 BBs.clear(); in findBestInsertionSet()
287 BBs.insert(Entry); in findBestInsertionSet()
289 BBs.insert(InsertPts.begin(), InsertPts.end()); in findBestInsertionSet()
324 SetVector<BasicBlock *> BBs; in findConstantInsertionPoint() local
328 BBs.insert(MatInsertPt->getParent()); in findConstantInsertionPoint()
[all …]
H A DLoopSink.cpp23 // InsertBBs = BBs that uses I
25 // DomBBs = BBs in InsertBBs that are dominated by BB
65 /// Return adjusted total frequency of \p BBs.
73 /// Freq(BBs) = sum(50, 49) = 99
74 /// Even if Freq(BBs) < Freq(Preheader), we will not sink from Preheade to
75 /// BBs as the difference is too small to justify the code size increase.
76 /// To model this, The adjusted Freq(BBs) will be:
77 /// AdjustedFreq(BBs) = 99 / SinkFrequencyPercentThreshold%
78 static BlockFrequency adjustedSumFreq(SmallPtrSetImpl<BasicBlock *> &BBs,
81 for (BasicBlock *B : BBs) in adjustedSumFreq()
80 adjustedSumFreq(SmallPtrSetImpl<BasicBlock * > & BBs,BlockFrequencyInfo & BFI) adjustedSumFreq() argument
177 SmallPtrSet<BasicBlock *, 2> BBs; sinkInstruction() local
[all...]
H A DPlaceSafepoints.cpp664 DenseSet<BasicBlock *> BBs; // new BBs + insertee in InsertSafepointPoll() local
675 scanInlinedCode(&*Start, &*After, Calls, BBs); in InsertSafepointPoll()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/IPO/
H A DBlockExtractor.cpp156 for (auto &BBs : GroupsOfBlocks) { in runOnModule() local
158 for (BasicBlock *BB : BBs) { in runOnModule()
171 CodeExtractorAnalysisCache CEAC(*BBs[0]->getParent()); in runOnModule()
174 LLVM_DEBUG(dbgs() << "Extracted group '" << (*BBs.begin())->getName() in runOnModule()
178 << (*BBs.begin())->getName() << "'\n"); in runOnModule()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/
H A DBlockCoverageInference.cpp356 BlockCoverageInference::getBlockNames(ArrayRef<const BasicBlock *> BBs) { in getBlockNames() argument
360 if (!BBs.empty()) { in getBlockNames()
361 OS << BBs.front()->getName(); in getBlockNames()
362 BBs = BBs.drop_front(); in getBlockNames()
364 for (auto *BB : BBs) in getBlockNames()
/freebsd/contrib/llvm-project/llvm/tools/bugpoint/
H A DCrashDebugger.cpp406 void simpleSimplifyCfg(Function &F, SmallVectorImpl<BasicBlock *> &BBs) { in simpleSimplifyCfg() argument
410 for (auto *BB : BBs) { in simpleSimplifyCfg()
467 bool ReduceCrashingBlocks::TestBlocks(std::vector<const BasicBlock *> &BBs) { in TestBlocks() argument
474 for (unsigned i = 0, e = BBs.size(); i != e; ++i) in TestBlocks()
475 Blocks.insert(cast<BasicBlock>(VMap[BBs[i]])); in TestBlocks()
482 outs() << " " << BBs[i]->getName(); in TestBlocks()
537 BBs.clear(); in TestBlocks()
543 BBs.push_back(cast<BasicBlock>(V)); in TestBlocks()
580 std::vector<const BasicBlock *> &BBs) { in TestBlocks() argument
587 for (const auto *BB : BBs) in TestBlocks()
[all …]
H A DMiscompilation.cpp479 Expected<bool> TestFuncs(const std::vector<BasicBlock *> &BBs);
487 ReduceMiscompiledBlocks::TestFuncs(const std::vector<BasicBlock *> &BBs) { in TestFuncs() argument
491 if (!BBs.empty()) { in TestFuncs()
492 outs() << "but these " << BBs.size() << " blocks are extracted: "; in TestFuncs()
493 for (unsigned i = 0, e = BBs.size() < 10 ? BBs.size() : 10; i != e; ++i) in TestFuncs()
494 outs() << BBs[i]->getName() << " "; in TestFuncs()
495 if (BBs.size() > 10) in TestFuncs()
512 for (unsigned i = 0, e = BBs.size(); i != e; ++i) { in TestFuncs()
513 BasicBlock *BB = cast<BasicBlock>(VMap[BBs[i]]); in TestFuncs()
H A DExtractFunction.cpp371 BugDriver::extractMappedBlocksFromModule(const std::vector<BasicBlock *> &BBs, in extractMappedBlocksFromModule() argument
388 if (!llvm::is_contained(BBs, &BB)) in extractMappedBlocksFromModule()
392 for (BasicBlock *BB : BBs) { in extractMappedBlocksFromModule()
H A DBugDriver.h195 /// only detail is that M is actually a module cloned from the one the BBs are
200 extractMappedBlocksFromModule(const std::vector<BasicBlock *> &BBs,
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DDependenceGraphBuilder.h44 const BasicBlockListType &BBs) in AbstractDependenceGraphBuilder() argument
45 : Graph(G), DI(D), BBList(BBs) {} in AbstractDependenceGraphBuilder()
H A DDominanceFrontierImpl.h136 const SetVector<BlockT *> &BBs = I->second; in print()
138 for (const BlockT *BB : BBs) { in print()
137 const std::set<BlockT *> &BBs = I->second; print() local
H A DRegionInfoImpl.h120 // BBs that are not part of any loop are element of the Loop in contains()
870 RegionInfoBase<Tr>::getCommonRegion(SmallVectorImpl<BlockT *> &BBs) const { in getCommonRegion()
871 RegionT *ret = getRegionFor(BBs.back()); in getCommonRegion()
872 BBs.pop_back(); in getCommonRegion()
874 for (BlockT *BB : BBs)
887 getCommonRegion(SmallVectorImpl<BlockT * > & BBs) getCommonRegion() argument
/freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/Orc/
H A DSpeculateAnalyses.cpp27 SmallVector<const BasicBlock *, 8> BBs; in findBBwithCalls()
38 BBs.emplace_back(&BB); in findBBwithCalls()
40 return BBs; in findBBwithCalls()
28 SmallVector<const BasicBlock *, 8> BBs; findBBwithCalls() local
/freebsd/contrib/llvm-project/llvm/tools/llvm-extract/
H A Dllvm-extract.cpp355 std::vector<BasicBlock *> BBs; in main() local
368 BBs.push_back(&*Res); in main()
370 GroupOfBBs.push_back(BBs); in main()
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DBasicBlockUtils.h45 /// Replace contents of every block in \p BBs with single unreachable
49 void detachDeadBlocks(ArrayRef <BasicBlock *> BBs,
58 /// no predecessors that are not being deleted themselves. \p BBs must have no
63 void DeleteDeadBlocks(ArrayRef <BasicBlock *> BBs,
H A DCodeExtractor.h138 CodeExtractor(ArrayRef<BasicBlock *> BBs, DominatorTree *DT = nullptr,
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DBasicBlockUtils.cpp63 ArrayRef<BasicBlock *> BBs, in detachDeadBlocks() argument
66 for (auto *BB : BBs) { in detachDeadBlocks()
101 void llvm::DeleteDeadBlocks(ArrayRef <BasicBlock *> BBs, DomTreeUpdater *DTU, in DeleteDeadBlocks() argument
105 SmallPtrSet<BasicBlock *, 4> Dead(BBs.begin(), BBs.end()); in DeleteDeadBlocks()
106 assert(Dead.size() == BBs.size() && "Duplicating blocks?"); in DeleteDeadBlocks()
113 detachDeadBlocks(BBs, DTU ? &Updates : nullptr, KeepOneInputPHIs); in DeleteDeadBlocks()
118 for (BasicBlock *BB : BBs) in DeleteDeadBlocks()
/freebsd/contrib/llvm-project/llvm/lib/Target/WebAssembly/
H A DWebAssemblyLowerEmscriptenEHSjLj.cpp1379 std::vector<BasicBlock *> BBs; in handleLongjmpableCallsForEmscriptenSjLj() local
1381 BBs.push_back(&BB); in handleLongjmpableCallsForEmscriptenSjLj()
1384 for (unsigned I = 0; I < BBs.size(); I++) { in handleLongjmpableCallsForEmscriptenSjLj()
1385 BasicBlock *BB = BBs[I]; in handleLongjmpableCallsForEmscriptenSjLj()
1532 BBs.push_back(Tail); in handleLongjmpableCallsForEmscriptenSjLj()

12