Moved isIntegral to the Type system

Renamed equals(char) to equalsInt(char).  Made it a const memfunc


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@240 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2001-07-21 19:02:43 +00:00
parent e6b9529b48
commit f98e88f745

View File

@@ -68,6 +68,7 @@ class ConstPoolBool : public ConstPoolVal {
bool Val; bool Val;
ConstPoolBool(const ConstPoolBool &CP); ConstPoolBool(const ConstPoolBool &CP);
public: public:
ConstPoolBool(const Type *Ty, bool V, const string &Name = "");
ConstPoolBool(bool V, const string &Name = ""); ConstPoolBool(bool V, const string &Name = "");
virtual string getStrValue() const; virtual string getStrValue() const;
@@ -101,20 +102,15 @@ public:
virtual bool equals(const ConstPoolVal *V) const; virtual bool equals(const ConstPoolVal *V) const;
// equals - Provide a helper method that can be used to determine if the // equalsInt - Provide a helper method that can be used to determine if the
// constant contained within is equal to a constant. This only works for very // constant contained within is equal to a constant. This only works for very
// small values, because this is all that can be represented with all types. // small values, because this is all that can be represented with all types.
// //
bool equals(unsigned char V) { bool equalsInt(unsigned char V) const {
assert(V <= 127 && "equals: Can only be used with very small constants!"); assert(V <= 127 && "equals: Can only be used with very small constants!");
return Val.Unsigned == V; return Val.Unsigned == V;
} }
// isIntegral - Equivalent to isSigned() || isUnsigned, but with only a single
// virtual function invocation.
//
virtual bool isIntegral() const { return 1; }
// ConstPoolInt::get static method: return a constant pool int with the // ConstPoolInt::get static method: return a constant pool int with the
// specified value. as above, we work only with very small values here. // specified value. as above, we work only with very small values here.
// //