Lines Matching refs:ConstantRange
124 ConstantRange Range = in intersect()
413 Optional<ConstantRange> getRangeFor(Value *V, Instruction *CxtI,
417 std::function<ConstantRange(const ConstantRange &,
418 const ConstantRange &)> OpFn);
811 const ConstantRange &TrueCR = TrueVal.getConstantRange(); in solveBlockValueSelect()
812 const ConstantRange &FalseCR = FalseVal.getConstantRange(); in solveBlockValueSelect()
820 ConstantRange ResultCR = [&]() { in solveBlockValueSelect()
849 ConstantRange Zero(APInt::getNullValue(TrueCR.getBitWidth())); in solveBlockValueSelect()
873 Optional<ConstantRange> LazyValueInfoImpl::getRangeFor(Value *V, in getRangeFor()
886 return ConstantRange::getFull(OperandBitWidth); in getRangeFor()
915 Optional<ConstantRange> LHSRes = getRangeFor(CI->getOperand(0), CI, BB); in solveBlockValueCast()
919 const ConstantRange &LHSRange = LHSRes.getValue(); in solveBlockValueCast()
932 std::function<ConstantRange(const ConstantRange &, in solveBlockValueBinaryOpImpl() argument
933 const ConstantRange &)> OpFn) { in solveBlockValueBinaryOpImpl()
938 Optional<ConstantRange> LHSRes = getRangeFor(I->getOperand(0), I, BB); in solveBlockValueBinaryOpImpl()
939 Optional<ConstantRange> RHSRes = getRangeFor(I->getOperand(1), I, BB); in solveBlockValueBinaryOpImpl()
944 const ConstantRange &LHSRange = LHSRes.getValue(); in solveBlockValueBinaryOpImpl()
945 const ConstantRange &RHSRange = RHSRes.getValue(); in solveBlockValueBinaryOpImpl()
969 [BO, NoWrapKind](const ConstantRange &CR1, const ConstantRange &CR2) { in solveBlockValueBinaryOp()
975 BO, BB, [BO](const ConstantRange &CR1, const ConstantRange &CR2) { in solveBlockValueBinaryOp()
984 WO, BB, [WO](const ConstantRange &CR1, const ConstantRange &CR2) { in solveBlockValueOverflowIntrinsic()
991 if (!ConstantRange::isIntrinsicSupported(II->getIntrinsicID())) { in solveBlockValueIntrinsic()
997 SmallVector<ConstantRange, 2> OpRanges; in solveBlockValueIntrinsic()
999 Optional<ConstantRange> Range = getRangeFor(Op, II, BB); in solveBlockValueIntrinsic()
1006 ConstantRange::intrinsic(II->getIntrinsicID(), OpRanges)); in solveBlockValueIntrinsic()
1063 ConstantRange RHSRange(RHS->getType()->getIntegerBitWidth(), in getValueFromSimpleICmpCondition()
1066 RHSRange = ConstantRange(CI->getValue()); in getValueFromSimpleICmpCondition()
1071 ConstantRange TrueValues = in getValueFromSimpleICmpCondition()
1072 ConstantRange::makeAllowedICmpRegion(Pred, RHSRange); in getValueFromSimpleICmpCondition()
1116 ConstantRange::fromKnownBits(Known, /*IsSigned*/ false)); in getValueFromICmpCondition()
1123 return ValueLatticeElement::getRange(ConstantRange::getNonEmpty( in getValueFromICmpCondition()
1144 ConstantRange NWR = ConstantRange::makeExactNoWrapRegion( in getValueFromOverflowCondition()
1265 return ValueLatticeElement::getRange(ConstantRange(C->getValue())); in constantFoldUser()
1276 return ValueLatticeElement::getRange(ConstantRange(C->getValue())); in constantFoldUser()
1280 return ValueLatticeElement::getRange(ConstantRange(OpConstVal)); in constantFoldUser()
1378 ConstantRange EdgesVals(BitWidth, DefaultCase/*isFullSet*/); in getEdgeValueLocal()
1382 ConstantRange EdgeVal(CaseValue); in getEdgeValueLocal()
1595 const ConstantRange &CR = Result.getConstantRange(); in getConstant()
1602 ConstantRange LazyValueInfo::getConstantRange(Value *V, Instruction *CxtI, in getConstantRange()
1610 return ConstantRange::getEmpty(Width); in getConstantRange()
1617 return ConstantRange::getFull(Width); in getConstantRange()
1632 const ConstantRange &CR = Result.getConstantRange(); in getConstantOnEdge()
1639 ConstantRange LazyValueInfo::getConstantRangeOnEdge(Value *V, in getConstantRangeOnEdge()
1649 return ConstantRange::getEmpty(Width); in getConstantRangeOnEdge()
1656 return ConstantRange::getFull(Width); in getConstantRangeOnEdge()
1675 const ConstantRange &CR = Val.getConstantRange(); in getPredicateResult()
1690 ConstantRange TrueValues = ConstantRange::makeExactICmpRegion( in getPredicateResult()