Changed option name from inline-threshold to basic-inline-threshold because
[oota-llvm.git] / lib / CodeGen / ELFWriter.h
index e64a9c946b6db354e5be7b162b2746f03ce6b321..31aa05a9c4a5bda100e985c47cd6ff093ade193a 100644 (file)
@@ -2,8 +2,8 @@
 //
 //                     The LLVM Compiler Infrastructure
 //
-// This file was developed by Chris Lattner and is distributed under the
-// University of Illinois Open Source License. See LICENSE.TXT for details.
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
 //
 //===----------------------------------------------------------------------===//
 //
 
 #include "llvm/CodeGen/MachineFunctionPass.h"
 #include <list>
+#include <map>
 
 namespace llvm {
   class GlobalVariable;
   class Mangler;
   class MachineCodeEmitter;
   class ELFCodeEmitter;
+  class raw_ostream;
 
   /// ELFWriter - This class implements the common target-independent code for
   /// writing ELF files.  Targets should derive a class from this to
@@ -30,11 +32,13 @@ namespace llvm {
   class ELFWriter : public MachineFunctionPass {
     friend class ELFCodeEmitter;
   public:
+    static char ID;
+
     MachineCodeEmitter &getMachineCodeEmitter() const {
       return *(MachineCodeEmitter*)MCE;
     }
 
-    ELFWriter(std::ostream &O, TargetMachine &TM);
+    ELFWriter(raw_ostream &O, TargetMachine &TM);
     ~ELFWriter();
 
     typedef std::vector<unsigned char> DataBuffer;
@@ -42,7 +46,7 @@ namespace llvm {
   protected:
     /// Output stream to send the resultant object file to.
     ///
-    std::ostream &O;
+    raw_ostream &O;
 
     /// Target machine description.
     ///
@@ -88,7 +92,7 @@ namespace llvm {
 
   private:
     // The buffer we accumulate the file header into.  Note that this should be
-    // changed into something much more efficient later (and the bytecode writer
+    // changed into something much more efficient later (and the bitcode writer
     // as well!).
     DataBuffer FileHeader;