Lines Matching refs:ConstantRange
43 class ConstantRange {
52 explicit ConstantRange(uint32_t BitWidth, bool isFullSet = true);
56 ConstantRange(APIntMoveTy Value);
61 ConstantRange(APIntMoveTy Lower, APIntMoveTy Upper);
71 static ConstantRange makeAllowedICmpRegion(CmpInst::Predicate Pred,
72 const ConstantRange &Other);
82 static ConstantRange makeSatisfyingICmpRegion(CmpInst::Predicate Pred,
83 const ConstantRange &Other);
92 static ConstantRange makeExactICmpRegion(CmpInst::Predicate Pred,
113 static ConstantRange makeGuaranteedNoWrapRegion(Instruction::BinaryOps BinOp,
114 const ConstantRange &Other,
159 bool contains(const ConstantRange &CR) const;
195 bool operator==(const ConstantRange &CR) const {
198 bool operator!=(const ConstantRange &CR) const {
203 ConstantRange subtract(const APInt &CI) const;
207 ConstantRange difference(const ConstantRange &CR) const;
216 ConstantRange intersectWith(const ConstantRange &CR) const;
224 ConstantRange unionWith(const ConstantRange &CR) const;
230 ConstantRange zeroExtend(uint32_t BitWidth) const;
236 ConstantRange signExtend(uint32_t BitWidth) const;
242 ConstantRange truncate(uint32_t BitWidth) const;
246 ConstantRange zextOrTrunc(uint32_t BitWidth) const;
250 ConstantRange sextOrTrunc(uint32_t BitWidth) const;
254 ConstantRange add(const ConstantRange &Other) const;
258 ConstantRange sub(const ConstantRange &Other) const;
263 ConstantRange multiply(const ConstantRange &Other) const;
267 ConstantRange smax(const ConstantRange &Other) const;
271 ConstantRange umax(const ConstantRange &Other) const;
275 ConstantRange smin(const ConstantRange &Other) const;
279 ConstantRange umin(const ConstantRange &Other) const;
284 ConstantRange udiv(const ConstantRange &Other) const;
288 ConstantRange binaryAnd(const ConstantRange &Other) const;
292 ConstantRange binaryOr(const ConstantRange &Other) const;
297 ConstantRange shl(const ConstantRange &Other) const;
301 ConstantRange lshr(const ConstantRange &Other) const;
305 ConstantRange inverse() const;
316 inline raw_ostream &operator<<(raw_ostream &OS, const ConstantRange &CR) {