Home | History | Annotate | Download | only in Support

Lines Matching refs:APInt

34     Lower = Upper = APInt::getMaxValue(BitWidth);
36 Lower = Upper = APInt::getMinValue(BitWidth);
41 ConstantRange::ConstantRange(const APInt &V) : Lower(V), Upper(V + 1) {}
43 ConstantRange::ConstantRange(const APInt &L, const APInt &U) :
66 APInt UMax(CR.getUnsignedMax());
69 return ConstantRange(APInt::getMinValue(W), UMax);
72 APInt SMax(CR.getSignedMax());
75 return ConstantRange(APInt::getSignedMinValue(W), SMax);
78 APInt UMax(CR.getUnsignedMax());
81 return ConstantRange(APInt::getMinValue(W), UMax + 1);
84 APInt SMax(CR.getSignedMax());
87 return ConstantRange(APInt::getSignedMinValue(W), SMax + 1);
90 APInt UMin(CR.getUnsignedMin());
93 return ConstantRange(UMin + 1, APInt::getNullValue(W));
96 APInt SMin(CR.getSignedMin());
99 return ConstantRange(SMin + 1, APInt::getSignedMinValue(W));
102 APInt UMin(CR.getUnsignedMin());
105 return ConstantRange(UMin, APInt::getNullValue(W));
108 APInt SMin(CR.getSignedMin());
111 return ConstantRange(SMin, APInt::getSignedMinValue(W));
139 return contains(APInt::getSignedMaxValue(getBitWidth())) &&
140 contains(APInt::getSignedMinValue(getBitWidth()));
145 APInt ConstantRange::getSetSize() const {
147 return APInt(getBitWidth(), 0);
150 return APInt(2, 1);
151 return APInt(2, 2); // Must be full set...
161 APInt ConstantRange::getUnsignedMax() const {
163 return APInt::getMaxValue(getBitWidth());
170 APInt ConstantRange::getUnsignedMin() const {
172 return APInt::getMinValue(getBitWidth());
179 APInt ConstantRange::getSignedMax() const {
180 APInt SignedMax(APInt::getSignedMaxValue(getBitWidth()));
194 APInt ConstantRange::getSignedMin() const {
195 APInt SignedMin(APInt::getSignedMinValue(getBitWidth()));
210 bool ConstantRange::contains(const APInt &V) const {
243 ConstantRange ConstantRange::subtract(const APInt &Val) const {
349 APInt d1 = CR.Lower - Upper, d2 = Lower - CR.Upper;
355 APInt L = Lower, U = Upper;
382 APInt d1 = CR.Lower - Upper, d2 = Lower - CR.Upper;
405 APInt L = Lower, U = Upper;
425 return ConstantRange(APInt(DstTySize,0), APInt(DstTySize,1).shl(SrcTySize));
440 return ConstantRange(APInt::getHighBitsSet(DstTySize,DstTySize-SrcTySize+1),
441 APInt::getLowBitsSet(DstTySize, SrcTySize-1) + 1);
488 APInt Spread_X = getSetSize(), Spread_Y = Other.getSetSize();
489 APInt NewLower = getLower() + Other.getLower();
490 APInt NewUpper = getUpper() + Other.getUpper() - 1;
509 APInt Spread_X = getSetSize(), Spread_Y = Other.getSetSize();
510 APInt NewLower = getLower() - Other.getUpper() + 1;
511 APInt NewUpper = getUpper() - Other.getLower();
535 APInt this_min = getUnsignedMin().zext(getBitWidth() * 2);
536 APInt this_max = getUnsignedMax().zext(getBitWidth() * 2);
537 APInt Other_min = Other.getUnsignedMin().zext(getBitWidth() * 2);
538 APInt Other_max = Other.getUnsignedMax().zext(getBitWidth() * 2);
551 APInt NewL = APIntOps::smax(getSignedMin(), Other.getSignedMin());
552 APInt NewU = APIntOps::smax(getSignedMax(), Other.getSignedMax()) + 1;
564 APInt NewL = APIntOps::umax(getUnsignedMin(), Other.getUnsignedMin());
565 APInt NewU = APIntOps::umax(getUnsignedMax(), Other.getUnsignedMax()) + 1;
578 APInt Lower = getUnsignedMin().udiv(RHS.getUnsignedMax());
580 APInt RHS_umin = RHS.getUnsignedMin();
587 RHS_umin = APInt(getBitWidth(), 1);
590 APInt Upper = getUnsignedMax().udiv(RHS_umin) + 1;
607 APInt umin = APIntOps::umin(Other.getUnsignedMax(), getUnsignedMax());
610 return ConstantRange(APInt::getNullValue(getBitWidth()), umin + 1);
620 APInt umax = APIntOps::umax(getUnsignedMin(), Other.getUnsignedMin());
623 return ConstantRange(umax, APInt::getNullValue(getBitWidth()));
631 APInt min = getUnsignedMin().shl(Other.getUnsignedMin());
632 APInt max = getUnsignedMax().shl(Other.getUnsignedMax());
635 APInt Zeros(getBitWidth(), getUnsignedMax().countLeadingZeros());
648 APInt max = getUnsignedMax().lshr(Other.getUnsignedMin());
649 APInt min = getUnsignedMin().lshr(Other.getUnsignedMax());