eliminate some extraneous methods in SDNode
[oota-llvm.git] / include / llvm / CodeGen / MachineInstr.h
index daa3974ae408a24f3688891873566d39999072f0..ad2ccdf8ca14adc40ef72e4018707d69b78b6862 100644 (file)
@@ -76,6 +76,10 @@ private:
   int offset;
 
   MachineOperand() {}
+
+  void print(std::ostream &os) const;
+  void print(std::ostream *os) const { if (os) print(*os); }
+
 public:
   MachineOperand(const MachineOperand &M) {
     *this = M;
@@ -285,11 +289,10 @@ public:
     IsDead = false;
   }
 
-  friend OStream& operator<<(OStream& os, const MachineOperand& mop) {
-    if (os.stream()) *os.stream() << mop;
+  friend std::ostream& operator<<(std::ostream& os, const MachineOperand& mop) {
+    mop.print(os);
     return os;
   }
-  friend std::ostream& operator<<(std::ostream& os, const MachineOperand& mop);
 
   friend class MachineInstr;
 };
@@ -397,16 +400,17 @@ public:
   //
   // Debugging support
   //
-  void print(OStream &OS, const TargetMachine *TM) const {
-    if (OS.stream()) print(*OS.stream(), TM);
+  void print(std::ostream *OS, const TargetMachine *TM) const {
+    if (OS) print(*OS, TM);
   }
   void print(std::ostream &OS, const TargetMachine *TM) const;
+  void print(std::ostream &OS) const;
+  void print(std::ostream *OS) const { if (OS) print(*OS); }
   void dump() const;
-  friend OStream& operator<<(OStream& os, const MachineInstr& minstr){
-    if (os.stream()) *os.stream() << minstr;
+  friend std::ostream& operator<<(std::ostream& os, const MachineInstr& minstr){
+    minstr.print(os);
     return os;
   }
-  friend std::ostream& operator<<(std::ostream& os, const MachineInstr& minstr);
 
   //===--------------------------------------------------------------------===//
   // Accessors to add operands when building up machine instructions.