Lines Matching refs:ChecksToHoist
186 SmallVectorImpl<Value *> &ChecksToHoist,
220 std::optional<Value *> mergeChecks(SmallVectorImpl<Value *> &ChecksToHoist,
226 Value *hoistChecks(SmallVectorImpl<Value *> &ChecksToHoist,
295 bool isWideningCondProfitable(SmallVectorImpl<Value *> &ChecksToHoist, in isWideningCondProfitable() argument
297 return mergeChecks(ChecksToHoist, ChecksToWiden, /*InsertPt=*/nullptr) in isWideningCondProfitable()
302 void widenGuard(SmallVectorImpl<Value *> &ChecksToHoist, in widenGuard() argument
306 auto MergedCheck = mergeChecks(ChecksToHoist, ChecksToWiden, InsertPt); in widenGuard()
308 : hoistChecks(ChecksToHoist, in widenGuard()
378 SmallVector<Value *> ChecksToHoist; in eliminateInstrViaWidening() local
379 parseWidenableGuard(Instr, ChecksToHoist); in eliminateInstrViaWidening()
383 if (ChecksToHoist.empty() || in eliminateInstrViaWidening()
384 (ChecksToHoist.size() == 1 && isa<ConstantInt>(ChecksToHoist.front()))) in eliminateInstrViaWidening()
426 ChecksToHoist, CandidateChecks); in eliminateInstrViaWidening()
449 widenGuard(ChecksToHoist, ChecksToWiden, BestSoFar); in eliminateInstrViaWidening()
459 Instruction *WideningPoint, SmallVectorImpl<Value *> &ChecksToHoist, in computeWideningScore() argument
475 if (!canBeHoistedTo(ChecksToHoist, WideningPoint)) in computeWideningScore()
491 if (isWideningCondProfitable(ChecksToHoist, ChecksToWiden)) in computeWideningScore()
716 GuardWideningImpl::mergeChecks(SmallVectorImpl<Value *> &ChecksToHoist, in mergeChecks() argument
729 if (ChecksToWiden.size() == 1 && ChecksToHoist.size() == 1 && in mergeChecks()
732 match(ChecksToHoist.front(), in mergeChecks()
764 parseRangeChecks(ChecksToHoist, Checks) && in mergeChecks()
787 Value *GuardWideningImpl::hoistChecks(SmallVectorImpl<Value *> &ChecksToHoist, in hoistChecks() argument
790 assert(!ChecksToHoist.empty()); in hoistChecks()
792 makeAvailableAt(ChecksToHoist, InsertPt); in hoistChecks()
794 Value *Result = Builder.CreateAnd(ChecksToHoist); in hoistChecks()