summaryrefslogtreecommitdiff
path: root/tools/opt/PassPrinters.h
diff options
context:
space:
mode:
Diffstat (limited to 'tools/opt/PassPrinters.h')
-rw-r--r--tools/opt/PassPrinters.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/tools/opt/PassPrinters.h b/tools/opt/PassPrinters.h
new file mode 100644
index 0000000000..cf46ef9e36
--- /dev/null
+++ b/tools/opt/PassPrinters.h
@@ -0,0 +1,47 @@
+//===- PassPrinters.h - Utilities to print analysis info for passes -------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+///
+/// \file
+/// \brief Utilities to print analysis info for various kinds of passes.
+///
+//===----------------------------------------------------------------------===//
+#ifndef LLVM_TOOLS_OPT_PASSPRINTERS_H
+#define LLVM_TOOLS_OPT_PASSPRINTERS_H
+
+namespace llvm {
+
+class BasicBlockPass;
+class CallGraphSCCPass;
+class FunctionPass;
+class ModulePass;
+class LoopPass;
+class PassInfo;
+class RegionPass;
+class raw_ostream;
+
+FunctionPass *createFunctionPassPrinter(const PassInfo *PI, raw_ostream &out,
+ bool Quiet);
+
+CallGraphSCCPass *createCallGraphPassPrinter(const PassInfo *PI,
+ raw_ostream &out, bool Quiet);
+
+ModulePass *createModulePassPrinter(const PassInfo *PI, raw_ostream &out,
+ bool Quiet);
+
+LoopPass *createLoopPassPrinter(const PassInfo *PI, raw_ostream &out,
+ bool Quiet);
+
+RegionPass *createRegionPassPrinter(const PassInfo *PI, raw_ostream &out,
+ bool Quiet);
+
+BasicBlockPass *createBasicBlockPassPrinter(const PassInfo *PI,
+ raw_ostream &out, bool Quiet);
+}
+
+#endif // LLVM_TOOLS_OPT_PASSPRINTERS_H