Provide an ICmpInst::makeConstantRange to generate a ConstantRange value

from a predicate and an APInt. This is removed from ConstantRange class
so that ConstantRange doesn't have to depend on lib/VMCore.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34760 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer
2007-02-28 22:00:54 +00:00
parent 8782d481a3
commit 3da43849f2
2 changed files with 42 additions and 0 deletions

View File

@ -24,6 +24,8 @@ class BasicBlock;
class ConstantInt;
class PointerType;
class VectorType;
class ConstantRange;
class APInt;
//===----------------------------------------------------------------------===//
// AllocationInst Class
@ -536,6 +538,10 @@ public:
/// @brief Determine if the predicate is signed.
static bool isSignedPredicate(Predicate pred);
/// Initialize a set of values that all satisfy the predicate with C.
/// @brief Make a ConstantRange for a relation with a constant value.
static ConstantRange makeConstantRange(Predicate pred, const APInt &C);
/// Exchange the two operands to this instruction in such a way that it does
/// not modify the semantics of the instruction. The predicate value may be
/// changed to retain the same result if the predicate is order dependent