Lines Matching refs:Candidate
584 auto &Candidate = Candidates[CalleeIndexIter->second]; in computeVTableInfos() local
588 Candidate.VTableGUIDAndCounts[VTableVal] = V.Count; in computeVTableInfos()
589 Candidate.AddressPoints.push_back( in computeVTableInfos()
719 for (const auto &Candidate : Candidates) { in tryToPromoteWithVTableCmp() local
720 for (auto &[GUID, Count] : Candidate.VTableGUIDAndCounts) in tryToPromoteWithVTableCmp()
728 CB, VPtr, Candidate.TargetFunction, Candidate.AddressPoints, in tryToPromoteWithVTableCmp()
729 createBranchWeights(CB.getContext(), Candidate.Count, in tryToPromoteWithVTableCmp()
730 TotalFuncCount - Candidate.Count)); in tryToPromoteWithVTableCmp()
737 const auto &VTableGUIDAndCounts = Candidate.VTableGUIDAndCounts; in tryToPromoteWithVTableCmp()
739 << ore::NV("DirectCallee", Candidate.TargetFunction) in tryToPromoteWithVTableCmp()
740 << " with count " << ore::NV("Count", Candidate.Count) in tryToPromoteWithVTableCmp()
762 PromotedFuncCount.push_back(Candidate.Count); in tryToPromoteWithVTableCmp()
764 assert(TotalFuncCount >= Candidate.Count && in tryToPromoteWithVTableCmp()
770 TotalFuncCount -= std::min(TotalFuncCount, Candidate.Count); in tryToPromoteWithVTableCmp()
848 auto &Candidate = Candidates[I]; in isProfitableToCompareVTables() local
849 auto &VTableGUIDAndCounts = Candidate.VTableGUIDAndCounts; in isProfitableToCompareVTables()
852 << Candidate.Count << ", VTableCounts:"); in isProfitableToCompareVTables()
863 if (CandidateVTableCount < Candidate.Count * ICPVTablePercentageThreshold) { in isProfitableToCompareVTables()
865 dbgs() << " function count " << Candidate.Count in isProfitableToCompareVTables()
871 RemainingVTableCount -= Candidate.Count; in isProfitableToCompareVTables()
883 if ((int)Candidate.AddressPoints.size() > MaxNumVTable) { in isProfitableToCompareVTables()
885 << Candidate.AddressPoints.size() in isProfitableToCompareVTables()