Ugh, the old sparc backend attaches MachineCodeForInstruction annotations on
[oota-llvm.git] / include / llvm / iPHINode.h
index eba5a735542c2391dff74f371151c143d371c02f..8899dd95ded6c478f7fe00a877fa34344392007f 100644 (file)
@@ -1,4 +1,11 @@
-//===-- llvm/iPHINode.h - PHI instruction definition -------------*- C++ -*--=//
+//===-- llvm/iPHINode.h - PHI instruction definition ------------*- C++ -*-===//
+// 
+//                     The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// 
+//===----------------------------------------------------------------------===//
 //
 // This file defines the PHINode class.
 //
@@ -8,6 +15,9 @@
 #define LLVM_IPHINODE_H
 
 #include "llvm/Instruction.h"
+
+namespace llvm {
+
 class BasicBlock;
 
 //===----------------------------------------------------------------------===//
@@ -23,16 +33,17 @@ class PHINode : public Instruction {
 public:
   PHINode(const Type *Ty, const std::string &Name = "",
           Instruction *InsertBefore = 0)
-    : Instruction(Ty, Instruction::PHINode, Name, InsertBefore) {
+    : Instruction(Ty, Instruction::PHI, Name, InsertBefore) {
   }
 
   virtual Instruction *clone() const { return new PHINode(*this); }
 
-  /// getNumIncomingValues - Return the number of incoming edges the PHI node
-  /// has
+  /// getNumIncomingValues - Return the number of incoming edges
+  ///
   unsigned getNumIncomingValues() const { return Operands.size()/2; }
 
   /// getIncomingValue - Return incoming value #x
+  ///
   Value *getIncomingValue(unsigned i) const {
     assert(i*2 < Operands.size() && "Invalid value number!");
     return Operands[i*2];
@@ -46,24 +57,26 @@ public:
   }
 
   /// getIncomingBlock - Return incoming basic block #x
+  ///
   BasicBlock *getIncomingBlock(unsigned i) const { 
     assert(i*2+1 < Operands.size() && "Invalid value number!");
-    return (BasicBlock*)Operands[i*2+1].get();
+    return reinterpret_cast<BasicBlock*>(Operands[i*2+1].get());
   }
   void setIncomingBlock(unsigned i, BasicBlock *BB) {
     assert(i*2+1 < Operands.size() && "Invalid value number!");
-    Operands[i*2+1] = (Value*)BB;
+    Operands[i*2+1] = reinterpret_cast<Value*>(BB);
   }
   unsigned getOperandNumForIncomingBlock(unsigned i) {
     return i*2+1;
   }
 
   /// addIncoming - Add an incoming value to the end of the PHI list
+  ///
   void addIncoming(Value *D, BasicBlock *BB) {
     assert(getType() == D->getType() &&
            "All operands to PHI node must be the same type as the PHI node!");
     Operands.push_back(Use(D, this));
-    Operands.push_back(Use((Value*)BB, this));
+    Operands.push_back(Use(reinterpret_cast<Value*>(BB), this));
   }
   
   /// removeIncomingValue - Remove an incoming value.  This is useful if a
@@ -98,11 +111,13 @@ public:
   /// 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
+    return I->getOpcode() == Instruction::PHI; 
   }
   static inline bool classof(const Value *V) {
     return isa<Instruction>(V) && classof(cast<Instruction>(V));
   }
 };
 
+} // End llvm namespace
+
 #endif