| /freebsd-13.1/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | ConstantRange.h | 297 ConstantRange intersectWith(const ConstantRange &CR, 305 ConstantRange unionWith(const ConstantRange &CR, 359 ConstantRange add(const ConstantRange &Other) const; 371 ConstantRange sub(const ConstantRange &Other) const; 388 ConstantRange smax(const ConstantRange &Other) const; 392 ConstantRange umax(const ConstantRange &Other) const; 396 ConstantRange smin(const ConstantRange &Other) const; 400 ConstantRange umin(const ConstantRange &Other) const; 405 ConstantRange udiv(const ConstantRange &Other) const; 412 ConstantRange sdiv(const ConstantRange &Other) const; [all …]
|
| H A D | GlobalValue.h | 35 class ConstantRange; variable 562 Optional<ConstantRange> getAbsoluteSymbolRange() const;
|
| H A D | ModuleSummaryIndex.h | 587 ConstantRange Offsets{/*BitWidth=*/RangeWidth, /*isFullSet=*/true}; 590 Call(uint64_t ParamNo, ValueInfo Callee, const ConstantRange &Offsets) 599 ConstantRange Use{/*BitWidth=*/RangeWidth, /*isFullSet=*/true}; 607 ParamAccess(uint64_t ParamNo, const ConstantRange &Use)
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/IR/ |
| H A D | ConstantRange.cpp | 47 ConstantRange::ConstantRange(APInt V) in ConstantRange() function in ConstantRange 50 ConstantRange::ConstantRange(APInt L, APInt U) in ConstantRange() function in ConstantRange 444 ConstantRange ConstantRange::difference(const ConstantRange &CR) const { in difference() 468 ConstantRange ConstantRange::intersectWith(const ConstantRange &CR, in intersectWith() 574 ConstantRange ConstantRange::unionWith(const ConstantRange &CR, in unionWith() 927 ConstantRange ConstantRange::addWithNoWrap(const ConstantRange &Other, in addWithNoWrap() 974 ConstantRange ConstantRange::subWithNoWrap(const ConstantRange &Other, in subWithNoWrap() 1135 ConstantRange ConstantRange::sdiv(const ConstantRange &RHS) const { in sdiv() 1220 ConstantRange ConstantRange::urem(const ConstantRange &RHS) const { in urem() 1242 ConstantRange ConstantRange::srem(const ConstantRange &RHS) const { in srem() [all …]
|
| H A D | Metadata.cpp | 984 static bool isContiguous(const ConstantRange &A, const ConstantRange &B) { in isContiguous() 988 static bool canBeMerged(const ConstantRange &A, const ConstantRange &B) { in canBeMerged() 994 ConstantRange NewRange(Low->getValue(), High->getValue()); in tryMergeRange() 998 ConstantRange LastRange(LB, LE); in tryMergeRange() 1000 ConstantRange Union = LastRange.unionWith(NewRange); in tryMergeRange() 1081 ConstantRange Range(EndPoints[0]->getValue(), EndPoints[1]->getValue()); in getMostGenericRange()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | StackSafetyAnalysis.cpp | 72 bool isUnsafe(const ConstantRange &R) { in isUnsafe() 76 ConstantRange addOverflowNever(const ConstantRange &L, const ConstantRange &R) { in addOverflowNever() 82 ConstantRange Result = L.add(R); in addOverflowNever() 87 ConstantRange unionNoWrap(const ConstantRange &L, const ConstantRange &R) { in unionNoWrap() 118 ConstantRange Range; 151 ConstantRange R = ConstantRange::getEmpty(PointerSize); in getStaticAllocaSizeRange() 236 const ConstantRange UnknownRange; 275 ConstantRange 479 const ConstantRange UnknownRange; 513 const ConstantRange &Offsets) const { in getArgumentAccessRange() [all …]
|
| H A D | LazyValueInfo.cpp | 124 ConstantRange Range = in intersect() 417 std::function<ConstantRange(const ConstantRange &, 820 ConstantRange ResultCR = [&]() { in solveBlockValueSelect() 932 std::function<ConstantRange(const ConstantRange &, in solveBlockValueBinaryOpImpl() argument 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() 1071 ConstantRange TrueValues = in getValueFromSimpleICmpCondition() 1144 ConstantRange NWR = ConstantRange::makeExactNoWrapRegion( in getValueFromOverflowCondition() 1382 ConstantRange EdgeVal(CaseValue); in getEdgeValueLocal() [all …]
|
| H A D | ScalarEvolution.cpp | 5862 ConstantRange ScalarEvolution:: 5984 const ConstantRange & 5992 ? ConstantRange::Unsigned : ConstantRange::Signed; in getRangeRef() 6138 ConstantRange::getNonEmpty( in getRangeRef() 6337 ConstantRange SR = in getRangeForAffineAR() 6528 ConstantRange TrueRange = in getRangeViaFactoring() 6530 ConstantRange FalseRange = in getRangeViaFactoring() 8066 ConstantRange CompRange = in computeExitLimitFromICmp() 9659 ConstantRange ExactCR = ConstantRange::makeExactICmpRegion(Pred, RA); in SimplifyICmpOperands() 11457 ConstantRange FoundLHSRange = in isImpliedCondOperandsViaRanges() [all …]
|
| H A D | ValueTracking.cpp | 584 ConstantRange TrueValues = ConstantRange::makeExactICmpRegion(Pred, *C); in cmpExcludesZero() 4694 ConstantRange CR1 = ConstantRange::fromKnownBits(Known, ForSigned); in computeConstantRangeIncludingKnownBits() 4696 ConstantRange::PreferredRangeType RangeType = in computeConstantRangeIncludingKnownBits() 4697 ForSigned ? ConstantRange::Signed : ConstantRange::Unsigned; in computeConstantRangeIncludingKnownBits() 4709 ConstantRange LHSRange = ConstantRange::fromKnownBits(LHSKnown, false); in computeOverflowForUnsignedMul() 4710 ConstantRange RHSRange = ConstantRange::fromKnownBits(RHSKnown, false); in computeOverflowForUnsignedMul() 6493 ConstantRange DomCR = in isImpliedCondMatchingImmOperands() 6495 ConstantRange CR = ConstantRange::makeExactICmpRegion(BPred, C2->getValue()); in isImpliedCondMatchingImmOperands() 6497 ConstantRange Difference = DomCR.difference(CR); in isImpliedCondMatchingImmOperands() 7010 return ConstantRange(*C); in computeConstantRange() [all …]
|
| H A D | Loads.cpp | 464 ConstantRange LoadRange(LoadOffset, in areNonOverlapSameBaseLoadAndStore() 466 ConstantRange StoreRange(StoreOffset, in areNonOverlapSameBaseLoadAndStore()
|
| /freebsd-13.1/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/ |
| H A D | Float2Int.h | 35 void seen(Instruction *I, ConstantRange R); 36 ConstantRange badRange(); 37 ConstantRange unknownRange(); 38 ConstantRange validateRange(ConstantRange R); 45 MapVector<Instruction *, ConstantRange> SeenInsts;
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | Float2Int.cpp | 160 ConstantRange Float2IntPass::badRange() { in badRange() 163 ConstantRange Float2IntPass::unknownRange() { in unknownRange() 166 ConstantRange Float2IntPass::validateRange(ConstantRange R) { in validateRange() 208 auto Input = ConstantRange::getFull(BW); in walkBackwards() 247 std::function<ConstantRange(ArrayRef<ConstantRange>)> Op; in walkForwards() 256 Op = [](ArrayRef<ConstantRange> Ops) { in walkForwards() 267 Op = [I](ArrayRef<ConstantRange> Ops) { in walkForwards() 280 Op = [I](ArrayRef<ConstantRange> Ops) { in walkForwards() 290 Op = [](ArrayRef<ConstantRange> Ops) { in walkForwards() 298 SmallVector<ConstantRange,4> OpRanges; in walkForwards() [all …]
|
| H A D | CorrelatedValuePropagation.cpp | 392 ConstantRange LRange = LVI->getConstantRange(BO->getLHS(), BO); in willNotOverflow() 393 ConstantRange RRange = LVI->getConstantRange(BO->getRHS(), BO); in willNotOverflow() 394 ConstantRange NWRegion = ConstantRange::makeGuaranteedNoWrapRegion( in willNotOverflow() 684 std::array<Optional<ConstantRange>, 2> CRs; in narrowSDivOrSRem() 739 ConstantRange CR = LVI->getConstantRange(Operand, Instr); in processUDivOrURem() 945 ConstantRange LRange = LVI->getConstantRange(LHS, BinOp); in processBinOp() 946 ConstantRange RRange = LVI->getConstantRange(RHS, BinOp); in processBinOp() 951 ConstantRange NUWRange = ConstantRange::makeGuaranteedNoWrapRegion( in processBinOp() 957 ConstantRange NSWRange = ConstantRange::makeGuaranteedNoWrapRegion( in processBinOp() 981 ConstantRange LRange = in processAnd()
|
| H A D | GuardWidening.cpp | 512 ConstantRange CR0 = in widenCondCommon() 513 ConstantRange::makeExactICmpRegion(Pred0, RHS0->getValue()); in widenCondCommon() 514 ConstantRange CR1 = in widenCondCommon() 515 ConstantRange::makeExactICmpRegion(Pred1, RHS1->getValue()); in widenCondCommon()
|
| /freebsd-13.1/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | ValueLattice.h | 88 ConstantRange Range; 102 Range.~ConstantRange(); in destroy() 155 new (&Range) ConstantRange(Other.Range); in ValueLatticeElement() 174 new (&Range) ConstantRange(std::move(Other.Range)); in ValueLatticeElement() 215 static ValueLatticeElement getRange(ConstantRange CR, 270 const ConstantRange &getConstantRange(bool UndefAllowed = true) const { 313 ConstantRange(CI->getValue()), 326 ConstantRange(CI->getValue() + 1, CI->getValue())); in markNotConstant() 348 bool markConstantRange(ConstantRange NewR, 380 new (&Range) ConstantRange(std::move(NewR)); [all …]
|
| H A D | LazyValueInfo.h | 23 class ConstantRange; variable 95 ConstantRange getConstantRange(Value *V, Instruction *CxtI, 106 ConstantRange getConstantRangeOnEdge(Value *V, BasicBlock *FromBB,
|
| H A D | ScalarEvolution.h | 892 ConstantRange getUnsignedRange(const SCEV *S) { 908 ConstantRange getSignedRange(const SCEV *S) { 1578 DenseMap<const SCEV *, ConstantRange> UnsignedRanges; 1581 DenseMap<const SCEV *, ConstantRange> SignedRanges; 1587 const ConstantRange &setRange(const SCEV *S, RangeSignHint Hint, 1588 ConstantRange CR) { 1589 DenseMap<const SCEV *, ConstantRange> &Cache = 1601 const ConstantRange &getRangeRef(const SCEV *S, RangeSignHint Hint); 1605 ConstantRange getRangeForAffineAR(const SCEV *Start, const SCEV *Stop, 1618 ConstantRange getRangeViaFactoring(const SCEV *Start, const SCEV *Stop, [all …]
|
| H A D | ScalarEvolutionExpressions.h | 34 class ConstantRange; variable 416 const SCEV *getNumIterationsInRange(const ConstantRange &Range,
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | SCCPSolver.cpp | 630 const ConstantRange &Range = SCValue.getConstantRange(); in getFeasibleSuccessors() 814 ConstantRange OpRange = OpSt.getConstantRange(); in visitCastInst() 826 ConstantRange Res = in visitCastInst() 999 ConstantRange A = ConstantRange::getFull(I.getType()->getScalarSizeInBits()); in visitBinaryOperator() 1000 ConstantRange B = ConstantRange::getFull(I.getType()->getScalarSizeInBits()); in visitBinaryOperator() 1295 ImposedCR = ConstantRange::makeAllowedICmpRegion( in handleCallResult() 1302 : ConstantRange::getFull( in handleCallResult() 1333 if (ConstantRange::isIntrinsicSupported(II->getIntrinsicID())) { in handleCallResult() 1337 SmallVector<ConstantRange, 2> OpRanges; in handleCallResult() 1347 ConstantRange Result = in handleCallResult() [all …]
|
| H A D | LowerSwitch.cpp | 401 ConstantRange KnownBitsRange = in ProcessSwitchInst() 402 ConstantRange::fromKnownBits(Known, /*IsSigned=*/false); in ProcessSwitchInst() 403 const ConstantRange LVIRange = LVI->getConstantRange(Val, SI); in ProcessSwitchInst() 404 ConstantRange ValRange = KnownBitsRange.intersectWith(LVIRange); in ProcessSwitchInst()
|
| H A D | SimplifyIndVar.cpp | 753 ConstantRange IVRange = SE->getUnsignedRange(SE->getSCEV(IVOperand)); in strengthenRightShift() 993 DenseMap<DefUserPair, ConstantRange> PostIncRangeInfos; 995 Optional<ConstantRange> getPostIncRangeInfo(Value *Def, in getPostIncRangeInfo() 1000 ? Optional<ConstantRange>(None) in getPostIncRangeInfo() 1001 : Optional<ConstantRange>(It->second); in getPostIncRangeInfo() 1007 void updatePostIncRangeInfo(Value *Def, Instruction *UseI, ConstantRange R) { in updatePostIncRangeInfo() 1960 ConstantRange::makeAllowedICmpRegion(P, CmpRHSRange); in calculatePostIncRange()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | SafeStack.cpp | 241 ConstantRange AccessStartRange = SE.getUnsignedRange(Expr); in IsAccessSafe() 242 ConstantRange SizeRange = in IsAccessSafe() 243 ConstantRange(APInt(BitWidth, 0), APInt(BitWidth, AccessSize)); in IsAccessSafe() 244 ConstantRange AccessRange = AccessStartRange.add(SizeRange); in IsAccessSafe() 245 ConstantRange AllocaRange = in IsAccessSafe() 246 ConstantRange(APInt(BitWidth, 0), APInt(BitWidth, AllocaSize)); in IsAccessSafe()
|
| /freebsd-13.1/contrib/llvm-project/llvm/include/llvm/Transforms/IPO/ |
| H A D | Attributor.h | 2405 ConstantRange Assumed; 2408 ConstantRange Known; 2412 Known(ConstantRange::getFull(BitWidth)) {} 2414 IntegerRangeState(const ConstantRange &CR) 2420 return ConstantRange::getFull(BitWidth); 2425 return ConstantRange::getEmpty(BitWidth); 2461 void unionAssumed(const ConstantRange &R) { 2472 void unionKnown(const ConstantRange &R) { 2482 void intersectKnown(const ConstantRange &R) { 3945 virtual ConstantRange [all …]
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Target/X86/ |
| H A D | X86Subtarget.cpp | 131 if (Optional<ConstantRange> CR = GV->getAbsoluteSymbolRange()) { in classifyGlobalReference()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
| H A D | AttributorAttributes.cpp | 7987 ConstantRange getConstantRangeFromSCEV(Attributor &A, in getConstantRangeFromSCEV() 8005 ConstantRange 8052 ConstantRange 8059 ConstantRange LVIR = getConstantRangeFromLVI(A, CtxI); in getKnownConstantRange() 8060 ConstantRange SCEVR = getConstantRangeFromSCEV(A, CtxI); in getKnownConstantRange() 8065 ConstantRange 8076 ConstantRange LVIR = getConstantRangeFromLVI(A, CtxI); in getAssumedConstantRange() 8077 ConstantRange SCEVR = getConstantRangeFromSCEV(A, CtxI); in getAssumedConstantRange() 8114 ConstantRange Known(Lower->getValue(), Upper->getValue()); in isBetterRange() 8216 unionAssumed(ConstantRange(C->getValue())); in initialize() [all …]
|