eliminate isConstantExpr, changes to isa<Constant> implementation
authorChris Lattner <sabre@nondot.org>
Mon, 19 Jul 2004 00:58:02 +0000 (00:58 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 19 Jul 2004 00:58:02 +0000 (00:58 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14985 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Constant.h

index 7b53fb16fa9156e49435890554004459960ab9e5..301d9a41f91c569bb1052376073fdb5c54edfa13 100644 (file)
@@ -20,7 +20,7 @@ namespace llvm {
 
 class Constant : public User {
 protected:
-  inline Constant(const Type *Ty, ValueTy vty = Value::ConstantVal, 
+  inline Constant(const Type *Ty, ValueTy vty = Value::SimpleConstantVal, 
                  const std::string& Name = "" ) 
   : User(Ty, vty, Name) {}
   ~Constant() {}
@@ -40,11 +40,6 @@ public:
 
   virtual void print(std::ostream &O) const;
 
-  /// isConstantExpr - Return true if this is a ConstantExpr
-  ///
-  virtual bool isConstantExpr() const { return false; }
-
-
   /// destroyConstant - Called if some element of this constant is no longer
   /// valid.  At this point only other constants may be on the use_list for this
   /// constant.  Any constants on our Use list must also be destroy'd.  The
@@ -59,7 +54,9 @@ public:
   static inline bool classof(const Constant *) { return true; }
   static inline bool classof(const GlobalValue *) { return true; }
   static inline bool classof(const Value *V) {
-    return V->getValueType() == Value::ConstantVal ||
+    return V->getValueType() == Value::SimpleConstantVal ||
+           V->getValueType() == Value::ConstantExprVal ||
+           V->getValueType() == Value::ConstantAggregateZeroVal ||
           V->getValueType() == Value::FunctionVal ||
           V->getValueType() == Value::GlobalVariableVal;
   }