Lines Matching refs:FoundRHS

11667   const SCEV *FoundRHS = getSCEV(ICI->getOperand(1));  in isImpliedCond()  local
11669 return isImpliedCond(Pred, LHS, RHS, FoundPred, FoundLHS, FoundRHS, CtxI); in isImpliedCond()
11675 const SCEV *FoundLHS, const SCEV *FoundRHS, in isImpliedCond() argument
11684 !FoundRHS->getType()->isPointerTy()) { in isImpliedCond()
11692 isKnownViaNonRecursiveReasoning(ICmpInst::ICMP_ULE, FoundRHS, in isImpliedCond()
11695 const SCEV *TruncFoundRHS = getTruncateExpr(FoundRHS, NarrowType); in isImpliedCond()
11713 if (FoundLHS->getType()->isPointerTy() || FoundRHS->getType()->isPointerTy()) in isImpliedCond()
11717 FoundRHS = getSignExtendExpr(FoundRHS, LHS->getType()); in isImpliedCond()
11720 FoundRHS = getZeroExtendExpr(FoundRHS, LHS->getType()); in isImpliedCond()
11724 FoundRHS, CtxI); in isImpliedCond()
11729 ICmpInst::Predicate FoundPred, const SCEV *FoundLHS, const SCEV *FoundRHS, in isImpliedCondBalancedTypes() argument
11739 if (SimplifyICmpOperands(FoundPred, FoundLHS, FoundRHS)) in isImpliedCondBalancedTypes()
11740 if (FoundLHS == FoundRHS) in isImpliedCondBalancedTypes()
11744 if (LHS == FoundRHS || RHS == FoundLHS) { in isImpliedCondBalancedTypes()
11746 std::swap(FoundLHS, FoundRHS); in isImpliedCondBalancedTypes()
11756 return isImpliedCondOperands(Pred, LHS, RHS, FoundLHS, FoundRHS, CtxI); in isImpliedCondBalancedTypes()
11771 return isImpliedCondOperands(FoundPred, RHS, LHS, FoundLHS, FoundRHS, in isImpliedCondBalancedTypes()
11773 if (!isa<SCEVConstant>(FoundRHS) && !isa<SCEVAddRecExpr>(FoundLHS)) in isImpliedCondBalancedTypes()
11774 return isImpliedCondOperands(Pred, LHS, RHS, FoundRHS, FoundLHS, CtxI); in isImpliedCondBalancedTypes()
11781 FoundLHS, FoundRHS, CtxI)) in isImpliedCondBalancedTypes()
11785 !FoundRHS->getType()->isPointerTy() && in isImpliedCondBalancedTypes()
11787 getNotSCEV(FoundRHS), CtxI)) in isImpliedCondBalancedTypes()
11802 if ((isKnownNonNegative(FoundLHS) && isKnownNonNegative(FoundRHS)) || in isImpliedCondBalancedTypes()
11803 (isKnownNegative(FoundLHS) && isKnownNegative(FoundRHS))) in isImpliedCondBalancedTypes()
11804 return isImpliedCondOperands(Pred, LHS, RHS, FoundLHS, FoundRHS, CtxI); in isImpliedCondBalancedTypes()
11809 *CanonicalFoundLHS = FoundLHS, *CanonicalFoundRHS = FoundRHS; in isImpliedCondBalancedTypes()
11839 (isa<SCEVConstant>(FoundLHS) || isa<SCEVConstant>(FoundRHS))) { in isImpliedCondBalancedTypes()
11846 V = FoundRHS; in isImpliedCondBalancedTypes()
11848 C = cast<SCEVConstant>(FoundRHS); in isImpliedCondBalancedTypes()
11917 if (isImpliedCondOperands(Pred, LHS, RHS, FoundLHS, FoundRHS, CtxI)) in isImpliedCondBalancedTypes()
11921 if (isImpliedCondOperands(FoundPred, LHS, RHS, FoundLHS, FoundRHS, CtxI)) in isImpliedCondBalancedTypes()
11924 if (isImpliedCondOperandsViaRanges(Pred, LHS, RHS, FoundPred, FoundLHS, FoundRHS)) in isImpliedCondBalancedTypes()
12005 const SCEV *FoundLHS, const SCEV *FoundRHS, const Instruction *CtxI) { in isImpliedCondOperandsViaAddRecStart() argument
12029 if (!isAvailableAtLoopEntry(FoundRHS, AR->getLoop())) in isImpliedCondOperandsViaAddRecStart()
12031 return isImpliedCondOperands(Pred, LHS, RHS, AR->getStart(), FoundRHS); in isImpliedCondOperandsViaAddRecStart()
12034 if (auto *AR = dyn_cast<SCEVAddRecExpr>(FoundRHS)) { in isImpliedCondOperandsViaAddRecStart()
12050 const SCEV *FoundLHS, const SCEV *FoundRHS) { in isImpliedCondOperandsViaNoOverflow() argument
12103 std::optional<APInt> RDiff = computeConstantDifference(RHS, FoundRHS); in isImpliedCondOperandsViaNoOverflow()
12120 return isAvailableAtLoopEntry(FoundRHS, L) && in isImpliedCondOperandsViaNoOverflow()
12121 isLoopEntryGuardedByCond(L, Pred, FoundRHS, in isImpliedCondOperandsViaNoOverflow()
12128 const SCEV *FoundRHS, unsigned Depth) { in isImpliedViaMerge() argument
12173 std::swap(FoundLHS, FoundRHS); in isImpliedViaMerge()
12184 isImpliedCondOperandsViaRanges(Pred, S1, S2, Pred, FoundLHS, FoundRHS) || in isImpliedViaMerge()
12185 isImpliedViaOperations(Pred, S1, S2, FoundLHS, FoundRHS, Depth); in isImpliedViaMerge()
12243 const SCEV *FoundRHS) { in isImpliedCondOperandsViaShift() argument
12246 if (RHS == FoundRHS) { in isImpliedCondOperandsViaShift()
12248 std::swap(FoundLHS, FoundRHS); in isImpliedCondOperandsViaShift()
12254 auto *SUFoundRHS = dyn_cast<SCEVUnknown>(FoundRHS); in isImpliedCondOperandsViaShift()
12284 const SCEV *FoundRHS, in isImpliedCondOperands() argument
12286 if (isImpliedCondOperandsViaRanges(Pred, LHS, RHS, Pred, FoundLHS, FoundRHS)) in isImpliedCondOperands()
12289 if (isImpliedCondOperandsViaNoOverflow(Pred, LHS, RHS, FoundLHS, FoundRHS)) in isImpliedCondOperands()
12292 if (isImpliedCondOperandsViaShift(Pred, LHS, RHS, FoundLHS, FoundRHS)) in isImpliedCondOperands()
12295 if (isImpliedCondOperandsViaAddRecStart(Pred, LHS, RHS, FoundLHS, FoundRHS, in isImpliedCondOperands()
12300 FoundLHS, FoundRHS); in isImpliedCondOperands()
12383 const SCEV *FoundRHS, in isImpliedViaOperations() argument
12389 getTypeSizeInBits(FoundRHS->getType()) && in isImpliedViaOperations()
12399 std::swap(FoundLHS, FoundRHS); in isImpliedViaOperations()
12407 if (isKnownNonNegative(FoundLHS) && isKnownNonNegative(FoundRHS)) { in isImpliedViaOperations()
12413 FoundRHS) && in isImpliedViaOperations()
12415 FoundRHS)) in isImpliedViaOperations()
12440 FoundRHS, Depth + 1); in isImpliedViaOperations()
12501 auto *FRHSTy = FoundRHS->getType(); in isImpliedViaOperations()
12513 auto *FoundRHSExt = getNoopOrSignExtend(FoundRHS, WTy); in isImpliedViaOperations()
12542 if (isImpliedViaMerge(Pred, OrigLHS, RHS, OrigFoundLHS, FoundRHS, Depth + 1)) in isImpliedViaOperations()
12594 const SCEV *FoundRHS) { in isImpliedCondOperandsHelper() argument
12599 if (HasSameValue(LHS, FoundLHS) && HasSameValue(RHS, FoundRHS)) in isImpliedCondOperandsHelper()
12605 isKnownViaNonRecursiveReasoning(ICmpInst::ICMP_SGE, RHS, FoundRHS)) in isImpliedCondOperandsHelper()
12611 isKnownViaNonRecursiveReasoning(ICmpInst::ICMP_SLE, RHS, FoundRHS)) in isImpliedCondOperandsHelper()
12617 isKnownViaNonRecursiveReasoning(ICmpInst::ICMP_UGE, RHS, FoundRHS)) in isImpliedCondOperandsHelper()
12623 isKnownViaNonRecursiveReasoning(ICmpInst::ICMP_ULE, RHS, FoundRHS)) in isImpliedCondOperandsHelper()
12629 if (isImpliedViaOperations(Pred, LHS, RHS, FoundLHS, FoundRHS)) in isImpliedCondOperandsHelper()
12640 const SCEV *FoundRHS) { in isImpliedCondOperandsViaRanges() argument
12641 if (!isa<SCEVConstant>(RHS) || !isa<SCEVConstant>(FoundRHS)) in isImpliedCondOperandsViaRanges()
12650 const APInt &ConstFoundRHS = cast<SCEVConstant>(FoundRHS)->getAPInt(); in isImpliedCondOperandsViaRanges()