Now that ConstantPointerRef is gone, it is the case that all operands of constants

are themselves constants.  This should allow us to reduce a significant amount
of casting in the sourcebase.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15459 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2004-08-04 02:43:00 +00:00
parent 0f42ba6777
commit 13b03586d2

View File

@ -40,6 +40,18 @@ public:
virtual void print(std::ostream &O) const;
// Specialize get/setOperand for Constant's as their operands are always
// constants as well.
Constant *getOperand(unsigned i) {
return static_cast<Constant*>(User::getOperand(i));
}
const Constant *getOperand(unsigned i) const {
return static_cast<const Constant*>(User::getOperand(i));
}
void setOperand(unsigned i, Constant *C) {
User::setOperand(i, C);
}
/// 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