/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | SizeOpts.cpp | 54 BlockFrequencyInfo &BFI) { 55 return PSI->isFunctionColdInCallGraph(F, BFI); 60 BlockFrequencyInfo &BFI) { 61 return PSI->isFunctionHotInCallGraphNthPercentile(CutOff, F, BFI); 65 BlockFrequencyInfo *BFI) { 66 return PSI->isColdBlock(BB, BFI); 71 BlockFrequencyInfo *BFI) { 72 return PSI->isHotBlockNthPercentile(CutOff, BB, BFI); 78 BlockFrequencyInfo *BFI, 80 return shouldFuncOptimizeForSizeImpl<BasicBlockBFIAdapter>(F, PSI, BFI, 52 isFunctionColdInCallGraph(const Function *F, ProfileSummaryInfo *PSI, BlockFrequencyInfo &BFI) argument 57 isFunctionHotInCallGraphNthPercentile(int CutOff, const Function *F, ProfileSummaryInfo *PSI, BlockFrequencyInfo &BFI) argument 63 isColdBlock(const BasicBlock *BB, ProfileSummaryInfo *PSI, BlockFrequencyInfo *BFI) argument 68 isHotBlockNthPercentile(int CutOff, const BasicBlock *BB, ProfileSummaryInfo *PSI, BlockFrequencyInfo *BFI) argument 77 shouldOptimizeForSize(const Function *F, ProfileSummaryInfo *PSI, BlockFrequencyInfo *BFI, PGSOQueryType QueryType) argument 84 shouldOptimizeForSize(const BasicBlock *BB, ProfileSummaryInfo *PSI, BlockFrequencyInfo *BFI, PGSOQueryType QueryType) argument [all...] |
H A D | BreakCriticalEdges.cpp | 359 BlockFrequencyInfo *BFI) { 376 bool ShouldUpdateAnalysis = BPI && BFI; 393 // Copy the BFI/BPI from Target to BodyBlock. 398 BFI->setBlockFreq(BodyBlock, BFI->getBlockFreq(Target).getFrequency()); 418 BlockFreqForDirectSucc += BFI->getBlockFreq(Src) * 422 BFI->setBlockFreq(DirectSucc, BlockFreqForDirectSucc.getFrequency()); 424 BFI->getBlockFreq(Target) - BlockFreqForDirectSucc; 425 BFI->setBlockFreq(Target, NewBlockFreqForTarget.getFrequency()); 357 SplitIndirectBrCriticalEdges(Function &F, BranchProbabilityInfo *BPI, BlockFrequencyInfo *BFI) argument
|
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | BlockFrequencyInfo.cpp | 144 const BlockFrequencyInfo *BFI) { 145 return BFIDOTGTraitsBase::getEdgeAttributes(Node, EI, BFI, BFI->getBPI(), 161 : BFI(std::move(Arg.BFI)) {} 165 BFI = std::move(RHS.BFI); 170 // defined at the first ODR-use which is the BFI member in the 187 if (!BFI) 188 BFI 143 getEdgeAttributes(const BasicBlock *Node, EdgeIter EI, const BlockFrequencyInfo *BFI) argument 330 BlockFrequencyInfo BFI; local [all...] |
H A D | OptimizationRemarkEmitter.cpp | 10 // that by using this service passes become dependent on BFI as well. BFI is 26 : F(F), BFI(nullptr) { 42 // Finally compute BFI. 44 BFI = OwnedBFI.get(); 51 // a fresh view of BFI if it was constructed with one. 52 if (BFI && Inv.invalidate<BlockFrequencyAnalysis>(F, PA)) 60 if (!BFI) 63 return BFI->getBlockProfileCount(cast<BasicBlock>(V)); 94 BlockFrequencyInfo *BFI; local 116 BlockFrequencyInfo *BFI; local [all...] |
H A D | ProfileSummaryInfo.cpp | 106 BlockFrequencyInfo *BFI, 122 if (BFI) 123 return BFI->getBlockProfileCount(Inst->getParent(), AllowSynthetic); 146 BlockFrequencyInfo &BFI) { 164 if (isHotBlock(&BB, &BFI)) 175 BlockFrequencyInfo &BFI) { 193 if (!isColdBlock(&BB, &BFI)) 200 int PercentileCutoff, const Function *F, BlockFrequencyInfo &BFI) { 218 if (isHotBlockNthPercentile(PercentileCutoff, &BB, &BFI)) 319 bool ProfileSummaryInfo::isHotBlock(const BasicBlock *BB, BlockFrequencyInfo *BFI) { argument 105 getProfileCount(const Instruction *Inst, BlockFrequencyInfo *BFI, bool AllowSynthetic) argument 145 isFunctionHotInCallGraph(const Function *F, BlockFrequencyInfo &BFI) argument 174 isFunctionColdInCallGraph(const Function *F, BlockFrequencyInfo &BFI) argument 199 isFunctionHotInCallGraphNthPercentile( int PercentileCutoff, const Function *F, BlockFrequencyInfo &BFI) argument 324 isColdBlock(const BasicBlock *BB, BlockFrequencyInfo *BFI) argument 330 isHotBlockNthPercentile(int PercentileCutoff, const BasicBlock *BB, BlockFrequencyInfo *BFI) argument 337 isHotCallSite(const CallSite &CS, BlockFrequencyInfo *BFI) argument 343 isColdCallSite(const CallSite &CS, BlockFrequencyInfo *BFI) argument [all...] |
H A D | BlockFrequencyInfoImpl.cpp | 282 static void cleanup(BlockFrequencyInfoImplBase &BFI) { argument 283 std::vector<FrequencyData> SavedFreqs(std::move(BFI.Freqs)); 284 SparseBitVector<> SavedIsIrrLoopHeader(std::move(BFI.IsIrrLoopHeader)); 285 BFI.clear(); 286 BFI.Freqs = std::move(SavedFreqs); 287 BFI.IsIrrLoopHeader = std::move(SavedIsIrrLoopHeader); 413 static void debugAssign(const BlockFrequencyInfoImplBase &BFI, argument 420 dbgs() << " to " << BFI.getBlockName(T); 460 static void convertFloatingToInteger(BlockFrequencyInfoImplBase &BFI, argument 486 for (size_t Index = 0; Index < BFI 499 unwrapLoop(BlockFrequencyInfoImplBase &BFI, LoopData &Loop) argument 682 findIrreducibleHeaders( const BlockFrequencyInfoImplBase &BFI, const IrreducibleGraph &G, const std::vector<const IrreducibleGraph::IrrNode *> &SCC, LoopData::NodeList &Headers, LoopData::NodeList &Others) argument 751 createIrreducibleLoop( BlockFrequencyInfoImplBase &BFI, const IrreducibleGraph &G, LoopData *OuterLoop, std::list<LoopData>::iterator Insert, const std::vector<const IrreducibleGraph::IrrNode *> &SCC) argument [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
H A D | SizeOpts.h | 43 BFIT *BFI, PGSOQueryType QueryType) { 45 if (!PSI || !BFI || !PSI->hasProfileSummary()) 59 return AdapterT::isFunctionColdInCallGraph(F, PSI, *BFI); 63 F, PSI, *BFI); 68 BFIT *BFI, PGSOQueryType QueryType) { 70 if (!PSI || !BFI || !PSI->hasProfileSummary()) 84 return AdapterT::isColdBlock(BB, PSI, BFI); 88 BB, PSI, BFI); 94 BlockFrequencyInfo *BFI, 100 BlockFrequencyInfo *BFI, 42 shouldFuncOptimizeForSizeImpl(const FuncT *F, ProfileSummaryInfo *PSI, BFIT *BFI, PGSOQueryType QueryType) argument 67 shouldOptimizeForSizeImpl(const BlockT *BB, ProfileSummaryInfo *PSI, BFIT *BFI, PGSOQueryType QueryType) argument [all...] |
H A D | CodeExtractor.h | 91 BlockFrequencyInfo *BFI; member in class:llvm::CodeExtractor 120 bool AggregateArgs = false, BlockFrequencyInfo *BFI = nullptr, 131 BlockFrequencyInfo *BFI = nullptr,
|
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Analysis/ |
H A D | OptimizationRemarkEmitter.h | 10 // that by using this service passes become dependent on BFI as well. BFI is 39 OptimizationRemarkEmitter(const Function *F, BlockFrequencyInfo *BFI) argument 40 : F(F), BFI(BFI) {} 50 /// operation since BFI and all its required analyses are computed. This is 56 : F(Arg.F), BFI(Arg.BFI) {} 60 BFI = RHS.BFI; 102 BlockFrequencyInfo *BFI; member in class:llvm::OptimizationRemarkEmitter [all...] |
H A D | ProfileSummaryInfo.h | 42 // units. This would require making this depend on BFI. 104 BlockFrequencyInfo *BFI, 113 bool isFunctionHotInCallGraph(const Function *F, BlockFrequencyInfo &BFI); 117 bool isFunctionColdInCallGraph(const Function *F, BlockFrequencyInfo &BFI); 122 BlockFrequencyInfo &BFI); 131 bool isHotBlock(const BasicBlock *BB, BlockFrequencyInfo *BFI); 133 bool isColdBlock(const BasicBlock *BB, BlockFrequencyInfo *BFI); 137 const BasicBlock *BB, BlockFrequencyInfo *BFI); 139 bool isHotCallSite(const CallSite &CS, BlockFrequencyInfo *BFI); 141 bool isColdCallSite(const CallSite &CS, BlockFrequencyInfo *BFI); [all...] |
H A D | LazyBlockFrequencyInfo.h | 11 // the analysis pass is executed but rather when the BFI result is explicitly 29 /// Wraps a BFI to allow lazy computation of the block frequencies. 31 /// A pass that only conditionally uses BFI can uncondtionally require the 32 /// analysis without paying for the overhead if BFI doesn't end up being used. 48 /// Retrieve the BFI with the block frequencies computed. 52 BFI.calculate( 56 return BFI; 64 BFI.releaseMemory(); 70 BlockFrequencyInfoT BFI; member in class:llvm::LazyBlockFrequencyInfo 80 /// rather when the BFI resul [all...] |
H A D | BlockFrequencyInfo.h | 40 std::unique_ptr<ImplType> BFI; 119 /// Run the analysis pass over a function and produce BFI. 136 BlockFrequencyInfo BFI; member in class:llvm::BlockFrequencyInfoWrapperPass 144 BlockFrequencyInfo &getBFI() { return BFI; } 145 const BlockFrequencyInfo &getBFI() const { return BFI; }
|
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | LoopSink.cpp | 84 BlockFrequencyInfo &BFI) { 87 T += BFI.getBlockFreq(B); 123 DominatorTree &DT, BlockFrequencyInfo &BFI) { 146 if (adjustedSumFreq(BBsDominatedByColdestBB, BFI) > 147 BFI.getBlockFreq(ColdestBB)) { 165 if (adjustedSumFreq(BBsToSinkInto, BFI) > 166 BFI.getBlockFreq(L.getLoopPreheader())) 179 BlockFrequencyInfo &BFI) { 201 findBBsToSinkInto(L, BBs, ColdLoopBBs, DT, BFI); 254 BlockFrequencyInfo &BFI, 83 adjustedSumFreq(SmallPtrSetImpl<BasicBlock *> &BBs, BlockFrequencyInfo &BFI) argument 121 findBBsToSinkInto(const Loop &L, const SmallPtrSetImpl<BasicBlock *> &UseBBs, const SmallVectorImpl<BasicBlock *> &ColdLoopBBs, DominatorTree &DT, BlockFrequencyInfo &BFI) argument 175 sinkInstruction(Loop &L, Instruction &I, const SmallVectorImpl<BasicBlock *> &ColdLoopBBs, const SmallDenseMap<BasicBlock *, int, 16> &LoopBlockNumber, LoopInfo &LI, DominatorTree &DT, BlockFrequencyInfo &BFI) argument 252 sinkLoopInvariantInstructions(Loop &L, AAResults &AA, LoopInfo &LI, DominatorTree &DT, BlockFrequencyInfo &BFI, ScalarEvolution *SE) argument 322 BlockFrequencyInfo &BFI = FAM.getResult<BlockFrequencyAnalysis>(F); local [all...] |
H A D | LoopLoadElimination.cpp | 167 DominatorTree *DT, BlockFrequencyInfo *BFI, 169 : L(L), LI(LI), LAI(LAI), DT(DT), BFI(BFI), PSI(PSI), PSE(LAI.getPSE()) {} 548 llvm::shouldOptimizeForSize(HeaderBB, PSI, BFI, 593 BlockFrequencyInfo *BFI; 602 BlockFrequencyInfo *BFI, ProfileSummaryInfo *PSI, 621 LoadEliminationForLoop LEL(L, &LI, GetLAI(*L), &DT, BFI, PSI); 647 auto *BFI = (PSI && PSI->hasProfileSummary()) ? 653 F, LI, DT, BFI, PSI, 702 auto *BFI [all...] |
H A D | ConstantHoisting.cpp | 206 static void findBestInsertionSet(DominatorTree &DT, BlockFrequencyInfo &BFI, argument 276 if (InsertPtsFreq > BFI.getBlockFreq(Node) || 277 (InsertPtsFreq == BFI.getBlockFreq(Node) && InsertPts.size() > 1)) 297 (InsertPtsFreq > BFI.getBlockFreq(Node) || 298 (InsertPtsFreq == BFI.getBlockFreq(Node) && InsertPts.size() > 1)))) { 300 ParentPtsFreq += BFI.getBlockFreq(Node); 324 if (BFI) { 325 findBestInsertionSet(*DT, *BFI, Entry, BBs); 561 llvm::shouldOptimizeForSize(Entry->getParent(), PSI, BFI, 933 DominatorTree &DT, BlockFrequencyInfo *BFI, 932 runImpl(Function &Fn, TargetTransformInfo &TTI, DominatorTree &DT, BlockFrequencyInfo *BFI, BasicBlock &Entry, ProfileSummaryInfo *PSI) argument 975 auto BFI = ConstHoistWithBlockFrequency local [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
H A D | MachineSizeOpts.h | 28 const MachineBlockFrequencyInfo *BFI,
|
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/ |
H A D | PGOMemOPSizeOpt.cpp | 138 MemOPSizeOpt(Function &Func, BlockFrequencyInfo &BFI, argument 140 : Func(Func), BFI(BFI), ORE(ORE), DT(DT), Changed(false) { 174 BlockFrequencyInfo &BFI; member in class:__anon2641::MemOPSizeOpt 246 auto BBEdgeCount = BFI.getBlockProfileCount(MI->getParent()); 341 auto OrigBBFreq = BFI.getBlockFreq(BB); 349 BFI.setBlockFreq(MergeBB, OrigBBFreq.getFrequency()); 415 static bool PGOMemOPSizeOptImpl(Function &F, BlockFrequencyInfo &BFI, argument 423 MemOPSizeOpt MemOPSizeOpt(F, BFI, ORE, DT); 429 BlockFrequencyInfo &BFI local 442 auto &BFI = FAM.getResult<BlockFrequencyAnalysis>(F); local [all...] |
H A D | CGProfile.cpp | 43 auto &BFI = FAM.getResult<BlockFrequencyAnalysis>(F); local 44 if (BFI.getEntryFreq() == 0) 48 Optional<uint64_t> BBCount = BFI.getBlockProfileCount(&BB);
|
H A D | CFGMST.h | 102 uint64_t EntryWeight = (BFI != nullptr ? BFI->getEntryFreq() : 2); 123 (BFI != nullptr ? BFI->getBlockFreq(&*BB).getFrequency() : 2); 272 BlockFrequencyInfo *BFI; member in class:llvm::CFGMST 277 : F(Func), BPI(BPI_), BFI(BFI_) {
|
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
H A D | SyntheticCountsPropagation.cpp | 116 auto &BFI = FAM.getResult<BlockFrequencyAnalysis>(*Caller); 121 Scaled64 EntryFreq(BFI.getEntryFreq(), 0); 122 Scaled64 BBCount(BFI.getBlockFreq(CSBB).getFrequency(), 0);
|
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/IPO/ |
H A D | HotColdSplitting.h | 49 DominatorTree &DT, BlockFrequencyInfo *BFI,
|
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/ |
H A D | ConstantHoisting.h | 130 BlockFrequencyInfo *BFI, BasicBlock &Entry, 151 BlockFrequencyInfo *BFI; member in class:llvm::ConstantHoistingPass
|
H A D | JumpThreading.h | 82 std::unique_ptr<BlockFrequencyInfo> BFI; member in class:llvm::JumpThreadingPass 106 BFI.reset();
|
/freebsd-11-stable/contrib/llvm-project/llvm/lib/ExecutionEngine/Orc/ |
H A D | SpeculateAnalyses.cpp | 102 auto &BFI = FAM.getResult<BlockFrequencyAnalysis>(F); 105 BBFreqs.push_back({I, BFI.getBlockFreq(I).getFrequency()}); 245 auto &BFI = FAM.getResult<BlockFrequencyAnalysis>(F); local 250 BBFreqs.push_back({I, BFI.getBlockFreq(I).getFrequency()});
|
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Vectorize/ |
H A D | LoopVectorize.h | 137 BlockFrequencyInfo *BFI; member in struct:llvm::LoopVectorizePass
|