From 8340d0b6595567375e80466fdcd277d5e190ed98 Mon Sep 17 00:00:00 2001 From: Jay Foad Date: Mon, 11 Apr 2011 09:48:55 +0000 Subject: [PATCH] Fix or remove code which seemed to think that the operand of a Constant was always a User. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129272 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Constant.h | 13 ------------- lib/Bitcode/Writer/ValueEnumerator.cpp | 2 +- 2 files changed, 1 insertion(+), 14 deletions(-) diff --git a/include/llvm/Constant.h b/include/llvm/Constant.h index 38045fc0c1d..5f32ce0ac5e 100644 --- a/include/llvm/Constant.h +++ b/include/llvm/Constant.h @@ -47,10 +47,6 @@ protected: : User(ty, vty, Ops, NumOps) {} void destroyConstantImpl(); - - void setOperand(unsigned i, Value *V) { - User::setOperand(i, V); - } public: /// isNullValue - Return true if this is the value that would be returned by /// getNullValue. @@ -90,15 +86,6 @@ public: /// FIXME: This really should not be in VMCore. PossibleRelocationsTy getRelocationInfo() const; - // Specialize get/setOperand for Users as their operands are always - // constants or BasicBlocks as well. - User *getOperand(unsigned i) { - return static_cast(User::getOperand(i)); - } - const User *getOperand(unsigned i) const { - return static_cast(User::getOperand(i)); - } - /// getVectorElements - This method, which is only valid on constant of vector /// type, returns the elements of the vector in the specified smallvector. /// This handles breaking down a vector undef into undef elements, etc. For diff --git a/lib/Bitcode/Writer/ValueEnumerator.cpp b/lib/Bitcode/Writer/ValueEnumerator.cpp index 05078caf5fa..54404cd03aa 100644 --- a/lib/Bitcode/Writer/ValueEnumerator.cpp +++ b/lib/Bitcode/Writer/ValueEnumerator.cpp @@ -423,7 +423,7 @@ void ValueEnumerator::EnumerateOperandType(const Value *V) { // This constant may have operands, make sure to enumerate the types in // them. for (unsigned i = 0, e = C->getNumOperands(); i != e; ++i) { - const User *Op = C->getOperand(i); + const Value *Op = C->getOperand(i); // Don't enumerate basic blocks here, this happens as operands to // blockaddress. -- 2.34.1