From 48babfa60d3ee1854f33ad93e07abb2b22cf8ab8 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 17 Nov 2003 19:47:21 +0000 Subject: The ConstantPointer class is now gone. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10057 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Constants.h | 59 +++++++++++------------------------------------- 1 file changed, 13 insertions(+), 46 deletions(-) (limited to 'include') diff --git a/include/llvm/Constants.h b/include/llvm/Constants.h index 06f1308..2b8ea6a 100644 --- a/include/llvm/Constants.h +++ b/include/llvm/Constants.h @@ -385,41 +385,14 @@ public: }; //===--------------------------------------------------------------------------- -/// ConstantPointer - Constant Pointer Declarations -/// -/// The ConstantPointer class represents a null pointer of a specific type. For -/// a more specific/useful instance, a subclass of ConstantPointer should be -/// used. -/// -class ConstantPointer : public Constant { - ConstantPointer(const ConstantPointer &); // DO NOT IMPLEMENT -protected: - inline ConstantPointer(const PointerType *T) - : Constant(reinterpret_cast(T)) { } -public: - inline const PointerType *getType() const { - return reinterpret_cast(Value::getType()); - } - - /// isNullValue - Return true if this is the value that would be returned by - /// getNullValue. - virtual bool isNullValue() const { return false; } - - /// Methods for support type inquiry through isa, cast, and dyn_cast: - static inline bool classof(const ConstantPointer *) { return true; } - static bool classof(const Constant *CPV); // defined in Constants.cpp - static inline bool classof(const Value *V) { - return isa(V) && classof(cast(V)); - } -}; - /// ConstantPointerNull - a constant pointer value that points to null /// -class ConstantPointerNull : public ConstantPointer { +class ConstantPointerNull : public Constant { friend struct ConstantCreator; ConstantPointerNull(const ConstantPointerNull &); // DO NOT IMPLEMENT protected: - ConstantPointerNull(const PointerType *T) : ConstantPointer(T) {} + ConstantPointerNull(const PointerType *T) + : Constant(reinterpret_cast(T)) {} public: @@ -434,22 +407,18 @@ public: /// Methods for support type inquiry through isa, cast, and dyn_cast: static inline bool classof(const ConstantPointerNull *) { return true; } - static inline bool classof(const ConstantPointer *P) { - return (P->getNumOperands() == 0 && P->isNullValue()); - } - static inline bool classof(const Constant *CPV) { - return isa(CPV) && classof(cast(CPV)); - } + static bool classof(const Constant *CPV); static inline bool classof(const Value *V) { - return isa(V) && classof(cast(V)); + return isa(V) && classof(cast(V)); } }; +//===--------------------------------------------------------------------------- /// ConstantPointerRef - a constant pointer value that is initialized to /// point to a global value, which lies at a constant, fixed address. /// -class ConstantPointerRef : public ConstantPointer { +class ConstantPointerRef : public Constant { friend class Module; // Modules maintain these references ConstantPointerRef(const ConstantPointerRef &); // DNI! @@ -467,21 +436,19 @@ public: return cast(Operands[0].get()); } + /// isNullValue - Return true if this is the value that would be returned by + /// getNullValue. + virtual bool isNullValue() const { return false; } + virtual void destroyConstant(); virtual void replaceUsesOfWithOnConstant(Value *From, Value *To, bool DisableChecking = false); /// Methods for support type inquiry through isa, cast, and dyn_cast: static inline bool classof(const ConstantPointerRef *) { return true; } - static inline bool classof(const ConstantPointer *CPV) { - // check for a single operand (the target value) - return (CPV->getNumOperands() == 1); - } - static inline bool classof(const Constant *CPV) { - return isa(CPV) && classof(cast(CPV)); - } + static bool classof(const Constant *CPV); static inline bool classof(const Value *V) { - return isa(V) && classof(cast(V)); + return isa(V) && classof(cast(V)); } }; -- cgit v1.1