diff options
Diffstat (limited to 'include/llvm/iOther.h')
-rw-r--r-- | include/llvm/iOther.h | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/include/llvm/iOther.h b/include/llvm/iOther.h index cba4196..de1532d 100644 --- a/include/llvm/iOther.h +++ b/include/llvm/iOther.h @@ -12,74 +12,6 @@ #include "llvm/Method.h" //===----------------------------------------------------------------------===// -// PHINode Class -//===----------------------------------------------------------------------===// - -// PHINode - The PHINode class is used to represent the magical mystical PHI -// node, that can not exist in nature, but can be synthesized in a computer -// scientist's overactive imagination. -// -class PHINode : public Instruction { - PHINode(const PHINode &PN); -public: - PHINode(const Type *Ty, const string &Name = ""); - - virtual Instruction *clone() const { return new PHINode(*this); } - virtual const char *getOpcodeName() const { return "phi"; } - - // getNumIncomingValues - Return the number of incoming edges the PHI node has - inline unsigned getNumIncomingValues() const { return Operands.size()/2; } - - // getIncomingValue - Return incoming value #x - inline const Value *getIncomingValue(unsigned i) const { - return Operands[i*2]; - } - inline Value *getIncomingValue(unsigned i) { - return Operands[i*2]; - } - inline void setIncomingValue(unsigned i, Value *V) { - Operands[i*2] = V; - } - - // getIncomingBlock - Return incoming basic block #x - inline const BasicBlock *getIncomingBlock(unsigned i) const { - return cast<const BasicBlock>(Operands[i*2+1]); - } - inline BasicBlock *getIncomingBlock(unsigned i) { - return cast<BasicBlock>(Operands[i*2+1]); - } - inline void setIncomingBlock(unsigned i, BasicBlock *BB) { - Operands[i*2+1] = BB; - } - - // addIncoming - Add an incoming value to the end of the PHI list - void addIncoming(Value *D, BasicBlock *BB); - - // removeIncomingValue - Remove an incoming value. This is useful if a - // predecessor basic block is deleted. The value removed is returned. - Value *removeIncomingValue(const BasicBlock *BB); - - // getBasicBlockIndex - Return the first index of the specified basic - // block in the value list for this PHI. Returns -1 if no instance. - // - int getBasicBlockIndex(const BasicBlock *BB) const { - for (unsigned i = 0; i < Operands.size()/2; ++i) - if (getIncomingBlock(i) == BB) return i; - return -1; - } - - // Methods for support type inquiry through isa, cast, and dyn_cast: - static inline bool classof(const PHINode *) { return true; } - static inline bool classof(const Instruction *I) { - return I->getOpcode() == Instruction::PHINode; - } - static inline bool classof(const Value *V) { - return isa<Instruction>(V) && classof(cast<Instruction>(V)); - } -}; - - -//===----------------------------------------------------------------------===// // CastInst Class //===----------------------------------------------------------------------===// |