/netbsd-current/external/apache2/llvm/dist/llvm/include/llvm/IR/ |
H A D | ConstantRange.h | 1 //===- ConstantRange.h - Represent a range ----------------------*- C++ -*-===// 26 // Note that ConstantRange can be used to represent either signed or 47 class LLVM_NODISCARD ConstantRange { class in namespace:llvm 51 ConstantRange getEmpty() const { 52 return ConstantRange(getBitWidth(), false); 56 ConstantRange getFull() const { 57 return ConstantRange(getBitWidth(), true); 62 explicit ConstantRange(uint32_t BitWidth, bool isFullSet); 65 ConstantRange(APInt Value); 70 ConstantRange(APIn [all...] |
H A D | GlobalValue.h | 35 class ConstantRange; 562 Optional<ConstantRange> getAbsoluteSymbolRange() const;
|
H A D | ModuleSummaryIndex.h | 26 #include "llvm/IR/ConstantRange.h" 585 ConstantRange Offsets{/*BitWidth=*/RangeWidth, /*isFullSet=*/true}; 588 Call(uint64_t ParamNo, ValueInfo Callee, const ConstantRange &Offsets) 597 ConstantRange Use{/*BitWidth=*/RangeWidth, /*isFullSet=*/true}; 605 ParamAccess(uint64_t ParamNo, const ConstantRange &Use)
|
/netbsd-current/external/apache2/llvm/dist/llvm/lib/IR/ |
H A D | ConstantRange.cpp | 1 //===- ConstantRange.cpp - ConstantRange implementation -------------------===// 25 #include "llvm/IR/ConstantRange.h" 43 ConstantRange::ConstantRange(uint32_t BitWidth, bool Full) function in class:ConstantRange 47 ConstantRange::ConstantRange(APInt V) function in class:ConstantRange 50 ConstantRange::ConstantRange(APInt L, APInt U) function in class:ConstantRange 53 "ConstantRange wit [all...] |
H A D | Metadata.cpp | 33 #include "llvm/IR/ConstantRange.h" 978 static bool isContiguous(const ConstantRange &A, const ConstantRange &B) { 982 static bool canBeMerged(const ConstantRange &A, const ConstantRange &B) { 988 ConstantRange NewRange(Low->getValue(), High->getValue()); 992 ConstantRange LastRange(LB, LE); 994 ConstantRange Union = LastRange.unionWith(NewRange); 1075 ConstantRange Range(EndPoints[0]->getValue(), EndPoints[1]->getValue());
|
/netbsd-current/external/apache2/llvm/dist/llvm/include/llvm/Transforms/Scalar/ |
H A D | Float2Int.h | 20 #include "llvm/IR/ConstantRange.h" 35 void seen(Instruction *I, ConstantRange R); 36 ConstantRange badRange(); 37 ConstantRange unknownRange(); 38 ConstantRange validateRange(ConstantRange R); 45 MapVector<Instruction *, ConstantRange> SeenInsts;
|
/netbsd-current/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/ |
H A D | Float2Int.cpp | 149 void Float2IntPass::seen(Instruction *I, ConstantRange R) { 159 ConstantRange Float2IntPass::badRange() { 160 return ConstantRange::getFull(MaxIntegerBW + 1); 162 ConstantRange Float2IntPass::unknownRange() { 163 return ConstantRange::getEmpty(MaxIntegerBW + 1); 165 ConstantRange Float2IntPass::validateRange(ConstantRange R) { 207 auto Input = ConstantRange::getFull(BW); 246 std::function<ConstantRange(ArrayRef<ConstantRange>)> O [all...] |
H A D | CorrelatedValuePropagation.cpp | 26 #include "llvm/IR/ConstantRange.h" 392 ConstantRange LRange = LVI->getConstantRange(BO->getLHS(), BO); 393 ConstantRange RRange = LVI->getConstantRange(BO->getRHS(), BO); 394 ConstantRange NWRegion = ConstantRange::makeGuaranteedNoWrapRegion( 684 std::array<Optional<ConstantRange>, 2> CRs; 739 ConstantRange CR = LVI->getConstantRange(Operand, Instr); 945 ConstantRange LRange = LVI->getConstantRange(LHS, BinOp); 946 ConstantRange RRange = LVI->getConstantRange(RHS, BinOp); 951 ConstantRange NUWRang [all...] |
H A D | GuardWidening.cpp | 51 #include "llvm/IR/ConstantRange.h" 512 ConstantRange CR0 = 513 ConstantRange::makeExactICmpRegion(Pred0, RHS0->getValue()); 514 ConstantRange CR1 = 515 ConstantRange::makeExactICmpRegion(Pred1, RHS1->getValue());
|
/netbsd-current/external/apache2/llvm/dist/llvm/lib/Analysis/ |
H A D | StackSafetyAnalysis.cpp | 19 #include "llvm/IR/ConstantRange.h" 72 bool isUnsafe(const ConstantRange &R) { 76 ConstantRange addOverflowNever(const ConstantRange &L, const ConstantRange &R) { 80 ConstantRange::OverflowResult::NeverOverflows) 81 return ConstantRange::getFull(L.getBitWidth()); 82 ConstantRange Result = L.add(R); 87 ConstantRange unionNoWrap(const ConstantRange [all...] |
H A D | LazyValueInfo.cpp | 26 #include "llvm/IR/ConstantRange.h" 124 ConstantRange Range = 413 Optional<ConstantRange> getRangeFor(Value *V, Instruction *CxtI, 417 std::function<ConstantRange(const ConstantRange &, 418 const ConstantRange &)> OpFn); 811 const ConstantRange &TrueCR = TrueVal.getConstantRange(); 812 const ConstantRange &FalseCR = FalseVal.getConstantRange(); 820 ConstantRange ResultCR = [&]() { 849 ConstantRange Zer [all...] |
H A D | ValueTracking.cpp | 39 #include "llvm/IR/ConstantRange.h" 466 ConstantRange Range(Lower->getValue(), Upper->getValue()); 578 // All other predicates - rely on generic ConstantRange handling. 583 ConstantRange TrueValues = ConstantRange::makeExactICmpRegion(Pred, *C); 2195 ConstantRange Range(Lower->getValue(), Upper->getValue()); 4630 /// Convert ConstantRange OverflowResult into ValueTracking OverflowResult. 4631 static OverflowResult mapOverflowResult(ConstantRange::OverflowResult OR) { 4633 case ConstantRange::OverflowResult::MayOverflow: 4635 case ConstantRange [all...] |
H A D | ScalarEvolution.cpp | 91 #include "llvm/IR/ConstantRange.h" 1603 ConstantRange CR = getUnsignedRange(X); 1910 ConstantRange CR = getSignedRange(X); 2290 auto NSWRegion = ConstantRange::makeGuaranteedNoWrapRegion( 2298 auto NUWRegion = ConstantRange::makeGuaranteedNoWrapRegion( 4436 ConstantRange AddRecRange = getSignedRange(AR); 4437 ConstantRange IncRange = getSignedRange(AR->getStepRecurrence(*this)); 4439 auto NSWRegion = ConstantRange::makeGuaranteedNoWrapRegion( 4446 ConstantRange AddRecRange = getUnsignedRange(AR); 4447 ConstantRange IncRang [all...] |
H A D | Loads.cpp | 464 ConstantRange LoadRange(LoadOffset, 466 ConstantRange StoreRange(StoreOffset,
|
/netbsd-current/external/apache2/llvm/dist/llvm/include/llvm/Analysis/ |
H A D | ValueLattice.h | 12 #include "llvm/IR/ConstantRange.h" 88 ConstantRange Range; 102 Range.~ConstantRange(); 155 new (&Range) ConstantRange(Other.Range); 174 new (&Range) ConstantRange(std::move(Other.Range)); 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())); 348 bool markConstantRange(ConstantRange New [all...] |
H A D | LazyValueInfo.h | 23 class ConstantRange; 92 /// Return the ConstantRange constraint that is known to hold for the 95 ConstantRange getConstantRange(Value *V, Instruction *CxtI, 106 ConstantRange getConstantRangeOnEdge(Value *V, BasicBlock *FromBB,
|
H A D | ScalarEvolution.h | 34 #include "llvm/IR/ConstantRange.h" 851 ConstantRange getUnsignedRange(const SCEV *S) { 867 ConstantRange getSignedRange(const SCEV *S) { 1529 DenseMap<const SCEV *, ConstantRange> UnsignedRanges; 1532 DenseMap<const SCEV *, ConstantRange> SignedRanges; 1538 const ConstantRange &setRange(const SCEV *S, RangeSignHint Hint, 1539 ConstantRange CR) { 1540 DenseMap<const SCEV *, ConstantRange> &Cache = 1552 const ConstantRange &getRangeRef(const SCEV *S, RangeSignHint Hint); 1556 ConstantRange getRangeForAffineA [all...] |
/netbsd-current/external/apache2/llvm/lib/libLLVMIR/ |
H A D | Makefile | 20 ConstantRange.cpp \
|
/netbsd-current/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/ |
H A D | SCCPSolver.cpp | 600 const ConstantRange &Range = SCValue.getConstantRange(); 784 ConstantRange OpRange = OpSt.getConstantRange(); 796 ConstantRange Res = 969 ConstantRange A = ConstantRange::getFull(I.getType()->getScalarSizeInBits()); 970 ConstantRange B = ConstantRange::getFull(I.getType()->getScalarSizeInBits()); 976 ConstantRange R = A.binaryOp(cast<BinaryOperator>(&I)->getOpcode(), B); 1261 ConstantRange::getFull(DL.getTypeSizeInBits(CopyOf->getType())); 1265 ImposedCR = ConstantRange [all...] |
H A D | LowerSwitch.cpp | 25 #include "llvm/IR/ConstantRange.h" 401 ConstantRange KnownBitsRange = 402 ConstantRange::fromKnownBits(Known, /*IsSigned=*/false); 403 const ConstantRange LVIRange = LVI->getConstantRange(Val, SI); 404 ConstantRange ValRange = KnownBitsRange.intersectWith(LVIRange);
|
H A D | SimplifyIndVar.cpp | 798 ConstantRange IVRange = SE->getUnsignedRange(SE->getSCEV(IVOperand)); 1036 // a ConstantRange representing possible values of the def at the given 1038 DenseMap<DefUserPair, ConstantRange> PostIncRangeInfos; 1040 Optional<ConstantRange> getPostIncRangeInfo(Value *Def, 1045 ? Optional<ConstantRange>(None) 1046 : Optional<ConstantRange>(It->second); 1052 void updatePostIncRangeInfo(Value *Def, Instruction *UseI, ConstantRange R) { 2005 ConstantRange::makeAllowedICmpRegion(P, CmpRHSRange);
|
/netbsd-current/external/apache2/llvm/dist/llvm/include/llvm/Transforms/IPO/ |
H A D | Attributor.h | 114 #include "llvm/IR/ConstantRange.h" 2096 ConstantRange Assumed; 2099 ConstantRange Known; 2102 : BitWidth(BitWidth), Assumed(ConstantRange::getEmpty(BitWidth)), 2103 Known(ConstantRange::getFull(BitWidth)) {} 2105 IntegerRangeState(const ConstantRange &CR) 2110 static ConstantRange getWorstState(uint32_t BitWidth) { 2111 return ConstantRange::getFull(BitWidth); 2115 static ConstantRange getBestState(uint32_t BitWidth) { 2116 return ConstantRange [all...] |
/netbsd-current/external/apache2/llvm/dist/llvm/lib/CodeGen/ |
H A D | SafeStack.cpp | 38 #include "llvm/IR/ConstantRange.h" 241 ConstantRange AccessStartRange = SE.getUnsignedRange(Expr); 242 ConstantRange SizeRange = 243 ConstantRange(APInt(BitWidth, 0), APInt(BitWidth, AccessSize)); 244 ConstantRange AccessRange = AccessStartRange.add(SizeRange); 245 ConstantRange AllocaRange = 246 ConstantRange(APInt(BitWidth, 0), APInt(BitWidth, AllocaSize));
|
/netbsd-current/external/apache2/llvm/dist/llvm/lib/Target/X86/ |
H A D | X86Subtarget.cpp | 25 #include "llvm/IR/ConstantRange.h" 131 if (Optional<ConstantRange> CR = GV->getAbsoluteSymbolRange()) {
|
/netbsd-current/external/apache2/llvm/dist/llvm/lib/Transforms/IPO/ |
H A D | AttributorAttributes.cpp | 375 ConstantRange Range = UseAssumed ? ValueConstantRangeAA.getAssumed() 7025 ConstantRange getConstantRangeFromSCEV(Attributor &A, 7043 ConstantRange 7060 ConstantRange 7066 ConstantRange LVIR = getConstantRangeFromLVI(A, CtxI); 7067 ConstantRange SCEVR = getConstantRangeFromSCEV(A, CtxI); 7072 ConstantRange 7083 ConstantRange LVIR = getConstantRangeFromLVI(A, CtxI); 7084 ConstantRange SCEVR = getConstantRangeFromSCEV(A, CtxI); 7100 const ConstantRange [all...] |