[SystemZ] Add test missing from r186148
[oota-llvm.git] / include / llvm / Assembly / PrintModulePass.h
index 7f5acf418b7a633aa394c18b594e06b9288067be..02b9bd9be505dc66a58ae9f36bf310b4d0baa36a 100644 (file)
 #ifndef LLVM_ASSEMBLY_PRINTMODULEPASS_H
 #define LLVM_ASSEMBLY_PRINTMODULEPASS_H
 
-#include "llvm/Support/Streams.h"
 #include <string>
 
 namespace llvm {
   class FunctionPass;
   class ModulePass;
+  class BasicBlockPass;
+  class raw_ostream;
   
   /// createPrintModulePass - Create and return a pass that writes the
-  /// module to the specified OStream.
-  ModulePass *createPrintModulePass(llvm::OStream *OS, bool DeleteStream=false);
+  /// module to the specified raw_ostream.
+  ModulePass *createPrintModulePass(raw_ostream *OS,
+                                    bool DeleteStream=false,
+                                    const std::string &Banner = "");
   
   /// createPrintFunctionPass - Create and return a pass that prints
-  /// functions to the specified OStream as they are processed.
+  /// functions to the specified raw_ostream as they are processed.
   FunctionPass *createPrintFunctionPass(const std::string &Banner,
-                                        llvm::OStream *OS, 
+                                        raw_ostream *OS, 
                                         bool DeleteStream=false);  
 
+  /// createPrintBasicBlockPass - Create and return a pass that writes the
+  /// BB to the specified raw_ostream.
+  BasicBlockPass *createPrintBasicBlockPass(raw_ostream *OS,
+                                            bool DeleteStream=false,
+                                            const std::string &Banner = "");
 } // End llvm namespace
 
 #endif