X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=include%2Fllvm%2FValue.h;h=6d4d7cc74ac9bea27ed04d14d7e59f6f12fef077;hb=95df6b3603e228cea714be21997fec82cb03011e;hp=2bcac08a952e000d832f8b359d9ad65c9150c2cf;hpb=0b12ecf6ff6b5d3a144178257b6206f0c4788792;p=oota-llvm.git diff --git a/include/llvm/Value.h b/include/llvm/Value.h index 2bcac08a952..6d4d7cc74ac 100644 --- a/include/llvm/Value.h +++ b/include/llvm/Value.h @@ -8,7 +8,6 @@ //===----------------------------------------------------------------------===// // // This file declares the Value class. -// This file also defines the Use<> template for users of value. // //===----------------------------------------------------------------------===// @@ -18,7 +17,7 @@ #include "llvm/AbstractTypeUser.h" #include "llvm/Use.h" #include "llvm/Support/Casting.h" -#include "llvm/Support/Streams.h" +#include #include namespace llvm { @@ -162,6 +161,8 @@ public: /// bool hasNUsesOrMore(unsigned N) const; + bool isUsedInBasicBlock(BasicBlock *BB) const; + /// getNumUses - This method computes the number of uses of this Value. This /// is a linear time operation. Use hasOneUse, hasNUses, or hasMoreThanNUses /// to check for specific values. @@ -225,6 +226,9 @@ public: /// casts from the specified value, returning the original uncasted value. /// Note that the returned value is guaranteed to have pointer type. Value *stripPointerCasts(); + const Value *stripPointerCasts() const { + return const_cast(this)->stripPointerCasts(); + } }; inline std::ostream &operator<<(std::ostream &OS, const Value &V) { @@ -232,10 +236,9 @@ inline std::ostream &operator<<(std::ostream &OS, const Value &V) { return OS; } -void Use::init(Value *v, User *user) { - Val = v; - U = user; - if (Val) Val->addUse(*this); +void Use::init(Value *V, User *) { + Val = V; + if (V) V->addUse(*this); } void Use::set(Value *V) {