Add and use Type::subtypes. NFC.
[oota-llvm.git] / lib / Bitcode / Writer / BitcodeWriterPass.cpp
index 91e115cba6cc44915a9edbaa904ce77af50cdaf0..4167f6da509ab67c2ddd07e56ffa2578ea9200b5 100644 (file)
@@ -1,4 +1,4 @@
-//===--- Bitcode/Writer/BitcodeWriterPass.cpp - Bitcode Writer ------------===//
+//===- BitcodeWriterPass.cpp - Bitcode writing pass -----------------------===//
 //
 //                     The LLVM Compiler Infrastructure
 //
 //
 //===----------------------------------------------------------------------===//
 
+#include "llvm/Bitcode/BitcodeWriterPass.h"
 #include "llvm/Bitcode/ReaderWriter.h"
+#include "llvm/IR/Module.h"
+#include "llvm/IR/PassManager.h"
 #include "llvm/Pass.h"
 using namespace llvm;
 
+PreservedAnalyses BitcodeWriterPass::run(Module *M) {
+  WriteBitcodeToFile(M, OS);
+  return PreservedAnalyses::all();
+}
+
 namespace {
   class WriteBitcodePass : public ModulePass {
     raw_ostream &OS; // raw_ostream to print on
@@ -22,10 +30,10 @@ namespace {
     static char ID; // Pass identification, replacement for typeid
     explicit WriteBitcodePass(raw_ostream &o)
       : ModulePass(ID), OS(o) {}
-    
-    const char *getPassName() const { return "Bitcode Writer"; }
-    
-    bool runOnModule(Module &M) {
+
+    const char *getPassName() const override { return "Bitcode Writer"; }
+
+    bool runOnModule(Module &M) override {
       WriteBitcodeToFile(&M, OS);
       return false;
     }
@@ -34,8 +42,6 @@ namespace {
 
 char WriteBitcodePass::ID = 0;
 
-/// createBitcodeWriterPass - Create and return a pass that writes the module
-/// to the specified ostream.
 ModulePass *llvm::createBitcodeWriterPass(raw_ostream &Str) {
   return new WriteBitcodePass(Str);
 }