Lines Matching refs:Best

3409   std::optional<NonTrivialUnswitchCandidate> Best;  in findBestNonTrivialUnswitchCandidate()  local
3436 if (!Best || CandidateCost < Best->Cost) { in findBestNonTrivialUnswitchCandidate()
3437 Best = Candidate; in findBestNonTrivialUnswitchCandidate()
3438 Best->Cost = CandidateCost; in findBestNonTrivialUnswitchCandidate()
3441 assert(Best && "Must be!"); in findBestNonTrivialUnswitchCandidate()
3442 return *Best; in findBestNonTrivialUnswitchCandidate()
3495 NonTrivialUnswitchCandidate Best = findBestNonTrivialUnswitchCandidate( in unswitchBestCondition() local
3498 assert(Best.TI && "Failed to find loop unswitch candidate"); in unswitchBestCondition()
3499 assert(Best.Cost && "Failed to compute cost"); in unswitchBestCondition()
3501 if (*Best.Cost >= UnswitchThreshold) { in unswitchBestCondition()
3502 LLVM_DEBUG(dbgs() << "Cannot unswitch, lowest cost found: " << *Best.Cost in unswitchBestCondition()
3508 if (Best.hasPendingInjection()) { in unswitchBestCondition()
3509 Best = injectPendingInvariantConditions(Best, L, DT, LI, AC, MSSAU); in unswitchBestCondition()
3512 assert(!Best.hasPendingInjection() && in unswitchBestCondition()
3515 if (Best.TI != PartialIVCondBranch) in unswitchBestCondition()
3519 if (auto *SI = dyn_cast<SelectInst>(Best.TI)) { in unswitchBestCondition()
3526 Best.TI = turnSelectIntoBranch(SI, DT, LI, MSSAU, &AC); in unswitchBestCondition()
3529 if (isGuard(Best.TI)) in unswitchBestCondition()
3530 Best.TI = in unswitchBestCondition()
3531 turnGuardIntoBranch(cast<IntrinsicInst>(Best.TI), L, DT, LI, MSSAU); in unswitchBestCondition()
3532 InsertFreeze = shouldInsertFreeze(L, *Best.TI, DT, AC); in unswitchBestCondition()
3535 LLVM_DEBUG(dbgs() << " Unswitching non-trivial (cost = " << Best.Cost in unswitchBestCondition()
3536 << ") terminator: " << *Best.TI << "\n"); in unswitchBestCondition()
3537 unswitchNontrivialInvariants(L, *Best.TI, Best.Invariants, PartialIVInfo, DT, in unswitchBestCondition()