Home | History | Annotate | Download | only in Core

Lines Matching defs:To

27 /// A Range represents the closed range [from, to].  The caller must
28 /// guarantee that from <= to. Note that Range is immutable, so as not
29 /// to subvert RangeSet's immutability.
34 Range(const llvm::APSInt &from, const llvm::APSInt &to)
35 : std::pair<const llvm::APSInt*, const llvm::APSInt*>(&from, &to) {
36 assert(from <= to);
44 const llvm::APSInt &To() const {
48 return &From() == &To() ? &From() : nullptr;
53 ID.AddPointer(&To());
63 // be used to speed up some of the operations in RangeSet.
75 PrimRangeSet ranges; // no need to make const, since it is an
77 // to work.
89 /// Construct a new RangeSet representing '{ [from, to] }'.
90 RangeSet(Factory &F, const llvm::APSInt &from, const llvm::APSInt &to)
91 : ranges(F.add(F.getEmptySet(), Range(from, to))) {}
97 /// getConcreteValue - If a symbol is contrained to equal a specific integer
118 // These correspond to each of the conditions below.
120 if (i->To() < Lower) {
133 newRanges = F.add(newRanges, Range(BV.getValue(Lower), i->To()));
233 // modular arithmetic, corresponding to the common treatment of C integer
235 // range is taken to wrap around. This is equivalent to taking the
268 os << '[' << i->From().toString(10) << ", " << i->To().toString(10)
396 // Special case: references are known to be non-zero.
413 // do not have to worry about overflow; RangeSet::Intersect can handle such a