/freebsd-12-stable/contrib/llvm-project/llvm/include/llvm/Analysis/ |
H A D | LazyBranchProbabilityInfo.h | 11 // computed when the analysis pass is executed but rather when the BPI results 31 /// rather when the BPI results is explicitly requested by the analysis client. 44 /// 3. The computed BPI should be requested with 52 /// Wraps a BPI to allow lazy computation of the branch probabilities. 54 /// A pass that only conditionally uses BPI can uncondtionally require the 55 /// analysis without paying for the overhead if BPI doesn't end up being used. 62 /// Retrieve the BPI with the branch probabilities computed. 66 BPI.calculate(*F, *LI, TLI); 69 return BPI; 77 BranchProbabilityInfo BPI; member in class:llvm::LazyBranchProbabilityInfoPass::LazyBranchProbabilityInfo [all...] |
H A D | BranchProbabilityInfo.h | 153 BranchProbabilityInfo *BPI; member in class:llvm::BranchProbabilityInfo::final 156 assert(BPI != nullptr); 157 BPI->eraseBlock(cast<BasicBlock>(getValPtr())); 158 BPI->Handles.erase(*this); 162 BasicBlockCallbackVH(const Value *V, BranchProbabilityInfo *BPI = nullptr) 163 : CallbackVH(const_cast<Value *>(V)), BPI(BPI) {} 217 /// Run the analysis pass over a function and produce BPI. 234 BranchProbabilityInfo BPI; member in class:llvm::BranchProbabilityInfoWrapperPass 241 BranchProbabilityInfo &getBPI() { return BPI; } [all...] |
H A D | BlockFrequencyInfo.h | 44 BlockFrequencyInfo(const Function &F, const BranchProbabilityInfo &BPI, 92 void calculate(const Function &F, const BranchProbabilityInfo &BPI,
|
H A D | BlockFrequencyInfoImpl.h | 853 const BranchProbabilityInfoT *BPI = nullptr; member in class:llvm::BlockFrequencyInfoImpl 963 void calculate(const FunctionT &F, const BranchProbabilityInfoT &BPI, 996 const BranchProbabilityInfoT &getBPI() const { return *BPI; } 1021 const BranchProbabilityInfoT &BPI, 1024 this->BPI = &BPI; 1326 getWeightFromBranchProb(BPI->getEdgeProbability(BB, SI)))) 1445 const BranchProbabilityInfoT *BPI, 1448 if (!BPI) 1451 BranchProbability BP = BPI 1020 calculate(const FunctionT &F, const BranchProbabilityInfoT &BPI, const LoopInfoT &LI) argument 1443 getEdgeAttributes(NodeRef Node, EdgeIter EI, const BlockFrequencyInfoT *BFI, const BranchProbabilityInfoT *BPI, unsigned HotPercentThreshold = 0) argument [all...] |
/freebsd-12-stable/contrib/llvm-project/llvm/lib/ExecutionEngine/Orc/ |
H A D | SpeculateAnalyses.cpp | 152 const BranchProbabilityInfo *BPI, 187 if (BPI->isEdgeHot(*PIt, AtBB) && !PredSkipNodes.count(*PIt)) 188 traverseToEntryBlock(*PIt, CallerBlocks, BackEdgesInfo, BPI, 195 const BranchProbabilityInfo *BPI, 226 if (BPI->isEdgeHot(AtBB, *PIt) && !SuccSkipNodes.count(*PIt)) 227 traverseToExitBlock(*PIt, CallerBlocks, BackEdgesInfo, BPI, 261 BranchProbabilityInfo *BPI = local 269 traverseToEntryBlock(I.first, CallerBlocks, BackEdgesInfo, BPI, 271 traverseToExitBlock(I.first, CallerBlocks, BackEdgesInfo, BPI, 149 traverseToEntryBlock(const BasicBlock *AtBB, const BlockListTy &CallerBlocks, const BackEdgesInfoTy &BackEdgesInfo, const BranchProbabilityInfo *BPI, VisitedBlocksInfoTy &VisitedBlocks) argument 192 traverseToExitBlock(const BasicBlock *AtBB, const BlockListTy &CallerBlocks, const BackEdgesInfoTy &BackEdgesInfo, const BranchProbabilityInfo *BPI, VisitedBlocksInfoTy &VisitedBlocks) argument
|
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | OptimizationRemarkEmitter.cpp | 39 BranchProbabilityInfo BPI; local 40 BPI.calculate(*F, LI); 43 OwnedBFI = std::make_unique<BlockFrequencyInfo>(*F, BPI, LI);
|
H A D | BlockFrequencyInfo.cpp | 155 const BranchProbabilityInfo &BPI, 157 calculate(F, BPI, LI); 185 const BranchProbabilityInfo &BPI, 189 BFI->calculate(F, BPI, LI); 320 BranchProbabilityInfo &BPI = local 323 BFI.calculate(F, BPI, LI); 154 BlockFrequencyInfo(const Function &F, const BranchProbabilityInfo &BPI, const LoopInfo &LI) argument 184 calculate(const Function &F, const BranchProbabilityInfo &BPI, const LoopInfo &LI) argument
|
H A D | BranchProbabilityInfo.cpp | 993 LLVM_DEBUG(dbgs() << "BPI: SCC " << SccNum << ":"); 1057 BPI.calculate(F, LI, &TLI); 1061 void BranchProbabilityInfoWrapperPass::releaseMemory() { BPI.releaseMemory(); } 1065 BPI.print(OS); 1071 BranchProbabilityInfo BPI; local 1072 BPI.calculate(F, AM.getResult<LoopAnalysis>(F), &AM.getResult<TargetLibraryAnalysis>(F)); 1073 return BPI; 1078 OS << "Printing analysis results of BPI for function "
|
/freebsd-12-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
H A D | CodeExtractor.h | 92 BranchProbabilityInfo *BPI; member in class:llvm::CodeExtractor 121 BranchProbabilityInfo *BPI = nullptr, 132 BranchProbabilityInfo *BPI = nullptr, 224 BranchProbabilityInfo *BPI);
|
H A D | BasicBlockUtils.h | 360 // If BPI and BFI aren't non-null, BPI/BFI will be updated accordingly. 362 BranchProbabilityInfo *BPI = nullptr,
|
/freebsd-12-stable/contrib/llvm-project/llvm/tools/llvm-mca/Views/ |
H A D | BottleneckAnalysis.cpp | 308 if (!SeenStallCycles || !BPI.PressureIncreaseCycles) 459 SeenStallCycles(false), BPI() {} 580 ++BPI.PressureIncreaseCycles; 582 ++BPI.RegisterDependencyCycles; 584 ++BPI.MemoryDependencyCycles; 586 ++BPI.DataDependencyCycles; 588 ++BPI.ResourcePressureCycles; 595 if (!SeenStallCycles || !BPI.PressureIncreaseCycles) { 601 (double)BPI.PressureIncreaseCycles * 100 / TotalCycles; 603 (double)BPI [all...] |
H A D | BottleneckAnalysis.h | 313 BackPressureInfo BPI; member in class:llvm::mca::BottleneckAnalysis
|
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/ |
H A D | CFGMST.h | 136 if (BPI != nullptr) 137 Weight = BPI->getEdgeProbability(&*BB, TargetBB).scale(scaleFactor); 271 BranchProbabilityInfo *BPI; member in class:llvm::CFGMST 277 : F(Func), BPI(BPI_), BFI(BFI_) {
|
H A D | PGOInstrumentation.cpp | 570 bool CreateGlobalVar = false, BranchProbabilityInfo *BPI = nullptr, 573 ValueSites(IPVK_Last + 1), SIVisitor(Func), MST(F, BPI, BFI) { 805 Function &F, Module *M, BranchProbabilityInfo *BPI, BlockFrequencyInfo *BFI, 810 SplitIndirectBrCriticalEdges(F, BPI, BFI); 812 FuncPGOInstrumentation<PGOEdge, BBInfo> FuncInfo(F, ComdatMembers, true, BPI, 958 BranchProbabilityInfo *BPI, BlockFrequencyInfo *BFIin, 961 FuncInfo(Func, ComdatMembers, false, BPI, BFIin, IsCS), 1475 auto *BPI = LookupBPI(F); local 1477 instrumentOneFunc(F, &M, BPI, BFI, ComdatMembers, IsCS); 1568 auto *BPI local 804 instrumentOneFunc( Function &F, Module *M, BranchProbabilityInfo *BPI, BlockFrequencyInfo *BFI, std::unordered_multimap<Comdat *, GlobalValue *> &ComdatMembers, bool IsCS) argument 956 PGOUseFunc(Function &Func, Module *Modu, std::unordered_multimap<Comdat *, GlobalValue *> &ComdatMembers, BranchProbabilityInfo *BPI, BlockFrequencyInfo *BFIin, ProfileSummaryInfo *PSI, bool IsCS) argument [all...] |
H A D | InstrProfiling.cpp | 451 std::unique_ptr<BranchProbabilityInfo> BPI; local 452 BPI.reset(new BranchProbabilityInfo(*F, LI, &GetTLI(*F))); 453 BFI.reset(new BlockFrequencyInfo(*F, *BPI, LI));
|
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | BreakCriticalEdges.cpp | 358 BranchProbabilityInfo *BPI, 376 bool ShouldUpdateAnalysis = BPI && BFI; 393 // Copy the BFI/BPI from Target to BodyBlock. 396 BPI->setEdgeProbability(BodyBlock, I, 397 BPI->getEdgeProbability(Target, I)); 419 BPI->getEdgeProbability(Src, DirectSucc); 426 BPI->eraseBlock(Target); 357 SplitIndirectBrCriticalEdges(Function &F, BranchProbabilityInfo *BPI, BlockFrequencyInfo *BFI) argument
|
H A D | CodeExtractor.cpp | 246 BranchProbabilityInfo *BPI, AssumptionCache *AC, 250 BPI(BPI), AC(AC), AllowVarArgs(AllowVarArgs), 256 BranchProbabilityInfo *BPI, AssumptionCache *AC, 259 BPI(BPI), AC(AC), AllowVarArgs(false), 1343 BranchProbabilityInfo *BPI) { 1361 BPI->setEdgeProbability(CodeReplacer, i, BranchProbability::getZero()); 1378 BPI->setEdgeProbability(CodeReplacer, Weight.TargetNode.Index, BP); 1399 assert(BPI 244 CodeExtractor(ArrayRef<BasicBlock *> BBs, DominatorTree *DT, bool AggregateArgs, BlockFrequencyInfo *BFI, BranchProbabilityInfo *BPI, AssumptionCache *AC, bool AllowVarArgs, bool AllowAlloca, std::string Suffix) argument 254 CodeExtractor(DominatorTree &DT, Loop &L, bool AggregateArgs, BlockFrequencyInfo *BFI, BranchProbabilityInfo *BPI, AssumptionCache *AC, std::string Suffix) argument 1340 calculateNewCallTerminatorWeights( BasicBlock *CodeReplacer, DenseMap<BasicBlock *, BlockFrequency> &ExitWeights, BranchProbabilityInfo *BPI) argument [all...] |
/freebsd-12-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/ |
H A D | JumpThreading.h | 83 std::unique_ptr<BranchProbabilityInfo> BPI; member in class:llvm::JumpThreadingPass 107 BPI.reset();
|
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | LoopPredication.cpp | 257 BranchProbabilityInfo *BPI; member in class:__anon5671::LoopPredication 305 // within the loop. We identify such unprofitable loops through BPI. 313 BranchProbabilityInfo *BPI) 314 : AA(AA), DT(DT), SE(SE), LI(LI), BPI(BPI) {}; 336 BranchProbabilityInfo &BPI = variable 339 LoopPredication LP(AA, DT, SE, LI, &BPI); 364 auto *BPI = FAM.getCachedResult<BranchProbabilityAnalysis>(*F); local 365 LoopPredication LP(&AR.AA, &AR.DT, &AR.SE, &AR.LI, BPI); 913 if (SkipProfitabilityChecks || !BPI) 311 LoopPredication(AliasAnalysis *AA, DominatorTree *DT, ScalarEvolution *SE, LoopInfo *LI, BranchProbabilityInfo *BPI) argument [all...] |
H A D | InductiveRangeCheckElimination.cpp | 226 BranchProbabilityInfo *BPI, 232 BranchProbabilityInfo *BPI; member in class:__anon5649::InductiveRangeCheckElimination 238 BranchProbabilityInfo *BPI, DominatorTree &DT, 240 : SE(SE), BPI(BPI), DT(DT), LI(LI) {} 393 BranchInst *BI, Loop *L, ScalarEvolution &SE, BranchProbabilityInfo *BPI, 400 if (!SkipProfitabilityChecks && BPI && 401 BPI->getEdgeProbability(BI->getParent(), (unsigned)0) < LikelyTaken) 492 BranchProbabilityInfo *BPI, 738 BranchProbabilityInfo *BPI, Loo 237 InductiveRangeCheckElimination(ScalarEvolution &SE, BranchProbabilityInfo *BPI, DominatorTree &DT, LoopInfo &LI) argument 392 extractRangeChecksFromBranch( BranchInst *BI, Loop *L, ScalarEvolution &SE, BranchProbabilityInfo *BPI, SmallVectorImpl<InductiveRangeCheck> &Checks) argument 737 parseLoopStructure(ScalarEvolution &SE, BranchProbabilityInfo *BPI, Loop &L, const char *&FailureReason) argument 1756 auto *BPI = FAM.getCachedResult<BranchProbabilityAnalysis>(*F); local 1774 BranchProbabilityInfo &BPI = local [all...] |
H A D | JumpThreading.cpp | 308 std::unique_ptr<BranchProbabilityInfo> BPI; local 311 BPI.reset(new BranchProbabilityInfo(F, LI, TLI)); 312 BFI.reset(new BlockFrequencyInfo(F, *BPI, LI)); 316 std::move(BFI), std::move(BPI)); 335 std::unique_ptr<BranchProbabilityInfo> BPI; local 338 BPI.reset(new BranchProbabilityInfo(F, LI, &TLI)); 339 BFI.reset(new BlockFrequencyInfo(F, *BPI, LI)); 343 std::move(BFI), std::move(BPI)); 365 BPI.reset(); 367 // successful jump threading, which requires both BPI an [all...] |
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
H A D | PartialInlining.cpp | 399 BranchProbabilityInfo BPI(*F, LI); 403 ScopedBFI.reset(new BlockFrequencyInfo(*F, BPI, LI)); 491 BranchProbability SuccProb = BPI.getEdgeProbability(thisBB, *SI); 939 BranchProbabilityInfo BPI(*Caller, LI); 940 TempBFI.reset(new BlockFrequencyInfo(*Caller, BPI, LI)); 1123 BranchProbabilityInfo BPI(*ClonedFunc, LI); 1124 ClonedFuncBFI.reset(new BlockFrequencyInfo(*ClonedFunc, BPI, LI)); 1135 ClonedFuncBFI.get(), &BPI, 1198 BranchProbabilityInfo BPI(*ClonedFunc, LI); 1199 ClonedFuncBFI.reset(new BlockFrequencyInfo(*ClonedFunc, BPI, L [all...] |
/freebsd-12-stable/contrib/llvm-project/clang/lib/Basic/Targets/ |
H A D | AArch64.cpp | 113 BranchProtectionInfo &BPI, 119 BPI.SignReturnAddr = 126 BPI.SignKey = CodeGenOptions::SignReturnAddressKeyValue::AKey; 128 BPI.SignKey = CodeGenOptions::SignReturnAddressKeyValue::BKey; 130 BPI.BranchTargetEnforcement = PBP.BranchTargetEnforcement; 112 validateBranchProtection(StringRef Spec, BranchProtectionInfo &BPI, StringRef &Err) const argument
|
/freebsd-12-stable/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
H A D | FunctionLoweringInfo.h | 59 BranchProbabilityInfo *BPI; member in class:llvm::FunctionLoweringInfo
|
/freebsd-12-stable/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/ |
H A D | IRTranslator.cpp | 413 if (!FuncInfo.BPI) { 427 if (!FuncInfo.BPI) { 428 // If BPI is not available, set the default probability as 1 / N, where N is 433 return FuncInfo.BPI->getEdgeProbability(SrcBB, DstBB); 440 BranchProbabilityInfo *BPI = FuncInfo.BPI; local 448 BPI ? BPI->getEdgeProbability(SI.getParent(), I.getSuccessorIndex()) 2270 FuncInfo.BPI = nullptr;
|