aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/CodeGen/LiveIntervalAnalysis.h
diff options
context:
space:
mode:
authorDavid Greene <greened@obbligato.org>2009-08-03 21:55:09 +0000
committerDavid Greene <greened@obbligato.org>2009-08-03 21:55:09 +0000
commitb5257664795d49ada0d4669fe8ed1cd49c04fbf3 (patch)
treefd2c7e1b494e4829cff1bb3dfac8e2552d795fe1 /include/llvm/CodeGen/LiveIntervalAnalysis.h
parent11e9657eeb76dff6baaab1cbac0b1fb7e1abb439 (diff)
downloadexternal_llvm-b5257664795d49ada0d4669fe8ed1cd49c04fbf3.zip
external_llvm-b5257664795d49ada0d4669fe8ed1cd49c04fbf3.tar.gz
external_llvm-b5257664795d49ada0d4669fe8ed1cd49c04fbf3.tar.bz2
Re-apply LiveInterval index dumping patch, with fixes suggested by Bill
and others. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78003 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen/LiveIntervalAnalysis.h')
-rw-r--r--include/llvm/CodeGen/LiveIntervalAnalysis.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/LiveIntervalAnalysis.h b/include/llvm/CodeGen/LiveIntervalAnalysis.h
index 32bf67b..aa5f0ff 100644
--- a/include/llvm/CodeGen/LiveIntervalAnalysis.h
+++ b/include/llvm/CodeGen/LiveIntervalAnalysis.h
@@ -538,6 +538,37 @@ namespace llvm {
void printRegName(unsigned reg) const;
};
+ /// IntervalPrefixPrinter - Print live interval indices before each
+ /// instruction.
+ class IntervalPrefixPrinter : public PrefixPrinter {
+ private:
+ const LiveIntervals &liinfo;
+
+ public:
+ IntervalPrefixPrinter(const LiveIntervals &lii)
+ : liinfo(lii) {};
+
+ // We need null implementations of the other virtual functions to
+ // avoid warnings about hidden virtual functions.
+
+ raw_ostream &operator()(raw_ostream &out,
+ const MachineBasicBlock &instr) const {
+ return out;
+ }
+
+ raw_ostream &operator()(raw_ostream &out,
+ const MachineInstr &instr) const;
+
+ std::ostream &operator()(std::ostream &out,
+ const MachineBasicBlock &instr) const {
+ return out;
+ }
+
+ std::ostream &operator()(std::ostream &out,
+ const MachineInstr &instr) const {
+ return out;
+ }
+ };
} // End llvm namespace
#endif