Lines Matching refs:ConstantRange
79 #include "llvm/Support/ConstantRange.h"
930 ConstantRange CR = getUnsignedRange(X);
1196 ConstantRange CR = getSignedRange(X);
3275 ConstantRange
3278 DenseMap<const SCEV *, ConstantRange>::iterator I = UnsignedRanges.find(S);
3283 return setUnsignedRange(C, ConstantRange(C->getValue()->getValue()));
3286 ConstantRange ConservativeResult(BitWidth, /*isFullSet=*/true);
3293 ConstantRange(APInt::getMinValue(BitWidth),
3297 ConstantRange X = getUnsignedRange(Add->getOperand(0));
3304 ConstantRange X = getUnsignedRange(Mul->getOperand(0));
3311 ConstantRange X = getUnsignedRange(SMax->getOperand(0));
3318 ConstantRange X = getUnsignedRange(UMax->getOperand(0));
3325 ConstantRange X = getUnsignedRange(UDiv->getLHS());
3326 ConstantRange Y = getUnsignedRange(UDiv->getRHS());
3331 ConstantRange X = getUnsignedRange(ZExt->getOperand());
3337 ConstantRange X = getUnsignedRange(SExt->getOperand());
3343 ConstantRange X = getUnsignedRange(Trunc->getOperand());
3356 ConstantRange(C->getValue()->getValue(), APInt(BitWidth, 0)));
3369 ConstantRange StartRange = getUnsignedRange(Start);
3370 ConstantRange StepRange = getSignedRange(Step);
3371 ConstantRange MaxBECountRange = getUnsignedRange(MaxBECount);
3372 ConstantRange EndRange =
3375 // Check for overflow. This must be done with ConstantRange arithmetic
3378 ConstantRange ExtStartRange = StartRange.zextOrTrunc(BitWidth*2+1);
3379 ConstantRange ExtStepRange = StepRange.sextOrTrunc(BitWidth*2+1);
3380 ConstantRange ExtMaxBECountRange =
3382 ConstantRange ExtEndRange = EndRange.zextOrTrunc(BitWidth*2+1);
3394 ConservativeResult.intersectWith(ConstantRange(Min, Max+1)));
3408 ConservativeResult.intersectWith(ConstantRange(Ones, ~Zeros + 1)));
3416 ConstantRange
3419 DenseMap<const SCEV *, ConstantRange>::iterator I = SignedRanges.find(S);
3424 return setSignedRange(C, ConstantRange(C->getValue()->getValue()));
3427 ConstantRange ConservativeResult(BitWidth, /*isFullSet=*/true);
3434 ConstantRange(APInt::getSignedMinValue(BitWidth),
3438 ConstantRange X = getSignedRange(Add->getOperand(0));
3445 ConstantRange X = getSignedRange(Mul->getOperand(0));
3452 ConstantRange X = getSignedRange(SMax->getOperand(0));
3459 ConstantRange X = getSignedRange(UMax->getOperand(0));
3466 ConstantRange X = getSignedRange(UDiv->getLHS());
3467 ConstantRange Y = getSignedRange(UDiv->getRHS());
3472 ConstantRange X = getSignedRange(ZExt->getOperand());
3478 ConstantRange X = getSignedRange(SExt->getOperand());
3484 ConstantRange X = getSignedRange(Trunc->getOperand());
3501 ConstantRange(APInt(BitWidth, 0),
3505 ConstantRange(APInt::getSignedMinValue(BitWidth),
3520 ConstantRange StartRange = getSignedRange(Start);
3521 ConstantRange StepRange = getSignedRange(Step);
3522 ConstantRange MaxBECountRange = getUnsignedRange(MaxBECount);
3523 ConstantRange EndRange =
3526 // Check for overflow. This must be done with ConstantRange arithmetic
3529 ConstantRange ExtStartRange = StartRange.sextOrTrunc(BitWidth*2+1);
3530 ConstantRange ExtStepRange = StepRange.sextOrTrunc(BitWidth*2+1);
3531 ConstantRange ExtMaxBECountRange =
3533 ConstantRange ExtEndRange = EndRange.sextOrTrunc(BitWidth*2+1);
3545 ConservativeResult.intersectWith(ConstantRange(Min, Max+1)));
3560 ConstantRange(APInt::getSignedMinValue(BitWidth).ashr(NS - 1),
4514 ConstantRange CompRange(
5499 ConstantRange CR = getUnsignedRange(Start);
5920 ConstantRange LHSRange = getSignedRange(LHS);
5921 ConstantRange RHSRange = getSignedRange(RHS);
5932 ConstantRange LHSRange = getSignedRange(LHS);
5933 ConstantRange RHSRange = getSignedRange(RHS);
5944 ConstantRange LHSRange = getUnsignedRange(LHS);
5945 ConstantRange RHSRange = getUnsignedRange(RHS);
5956 ConstantRange LHSRange = getUnsignedRange(LHS);
5957 ConstantRange RHSRange = getUnsignedRange(RHS);
6368 const SCEV *SCEVAddRecExpr::getNumIterationsInRange(ConstantRange Range,