aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/llvm/Analysis/Writer.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/include/llvm/Analysis/Writer.h b/include/llvm/Analysis/Writer.h
new file mode 100644
index 0000000..4d66838
--- /dev/null
+++ b/include/llvm/Analysis/Writer.h
@@ -0,0 +1,49 @@
+//===-- llvm/Analysis/Writer.h - Printer for Analysis routines ---*- C++ -*--=//
+//
+// This library provides routines to print out various analysis results to
+// an output stream.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLVM_ANALYSIS_WRITER_H
+#define LLVM_ANALYSIS_WRITER_H
+
+#include "llvm/Assembly/Writer.h"
+
+namespace cfg {
+
+ // This library provides support for printing out Intervals.
+ class Interval;
+ void WriteToOutput(const Interval *I, ostream &o);
+ inline ostream &operator <<(ostream &o, const Interval *I) {
+ WriteToOutput(I, o); return o;
+ }
+
+ // Stuff for printing out Dominator data structures...
+ class DominatorSet;
+ class ImmediateDominators;
+ class DominatorTree;
+ class DominanceFrontier;
+
+ void WriteToOutput(const DominatorSet &, ostream &o);
+ inline ostream &operator <<(ostream &o, const DominatorSet &DS) {
+ WriteToOutput(DS, o); return o;
+ }
+
+ void WriteToOutput(const ImmediateDominators &, ostream &o);
+ inline ostream &operator <<(ostream &o, const ImmediateDominators &ID) {
+ WriteToOutput(ID, o); return o;
+ }
+
+ void WriteToOutput(const DominatorTree &, ostream &o);
+ inline ostream &operator <<(ostream &o, const DominatorTree &DT) {
+ WriteToOutput(DT, o); return o;
+ }
+
+ void WriteToOutput(const DominanceFrontier &, ostream &o);
+ inline ostream &operator <<(ostream &o, const DominanceFrontier &DF) {
+ WriteToOutput(DF, o); return o;
+ }
+} // End namespace CFG
+
+#endif