An even better unbreakage...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32617 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/LiveInterval.cpp b/lib/CodeGen/LiveInterval.cpp
index e2a3bba..78c874c 100644
--- a/lib/CodeGen/LiveInterval.cpp
+++ b/lib/CodeGen/LiveInterval.cpp
@@ -24,6 +24,7 @@
#include "llvm/Target/MRegisterInfo.h"
#include <algorithm>
#include <map>
+#include <ostream>
using namespace llvm;
// An example for liveAt():
@@ -509,3 +510,9 @@
void LiveInterval::dump() const {
cerr << *this << "\n";
}
+
+
+OStream& llvm::operator<<(OStream& os, const LiveRange &LR) {
+ if (os.stream()) *os.stream() << LR;
+ return os;
+}
diff --git a/lib/CodeGen/MachineBasicBlock.cpp b/lib/CodeGen/MachineBasicBlock.cpp
index a626f4f..39b142a 100644
--- a/lib/CodeGen/MachineBasicBlock.cpp
+++ b/lib/CodeGen/MachineBasicBlock.cpp
@@ -31,6 +31,11 @@
return OS;
}
+OStream& llvm::operator<<(OStream &OS, const MachineBasicBlock &MBB) {
+ if (OS.stream()) *OS.stream() << MBB;
+ return OS;
+}
+
// MBBs start out as #-1. When a MBB is added to a MachineFunction, it
// gets the next available unique MBB number. If it is removed from a
// MachineFunction, it goes back to being #-1.
diff --git a/lib/CodeGen/MachineInstr.cpp b/lib/CodeGen/MachineInstr.cpp
index 716b40f..a684425 100644
--- a/lib/CodeGen/MachineInstr.cpp
+++ b/lib/CodeGen/MachineInstr.cpp
@@ -18,6 +18,7 @@
#include "llvm/Target/MRegisterInfo.h"
#include "llvm/Support/LeakDetector.h"
#include "llvm/Support/Streams.h"
+#include <ostream>
using namespace llvm;
/// MachineInstr ctor - This constructor creates a dummy MachineInstr with
@@ -363,3 +364,14 @@
return OS;
}
+
+OStream& llvm::operator<<(OStream& os, const MachineInstr& minstr) {
+ if (os.stream()) *os.stream() << minstr;
+ return os;
+}
+
+OStream& llvm::operator<<(OStream& os, const MachineOperand& mop) {
+ if (os.stream()) *os.stream() << mop;
+ return os;
+}
+