Checkin of new Analysis result printing header
authorChris Lattner <sabre@nondot.org>
Tue, 3 Jul 2001 05:37:26 +0000 (05:37 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 3 Jul 2001 05:37:26 +0000 (05:37 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Analysis/Writer.h [new file with mode: 0644]

diff --git a/include/llvm/Analysis/Writer.h b/include/llvm/Analysis/Writer.h
new file mode 100644 (file)
index 0000000..4d66838
--- /dev/null
@@ -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