I'm introducing a new machine model to simultaneously allow simple
[oota-llvm.git] / include / llvm / MC / MCObjectWriter.h
index d267e6d0dfae9bd50db235e183a6770964facd11..6e44e6ceffa37d59c6e04d90361fa00bbc2dcfdd 100644 (file)
@@ -10,7 +10,6 @@
 #ifndef LLVM_MC_MCOBJECTWRITER_H
 #define LLVM_MC_MCOBJECTWRITER_H
 
-#include "llvm/ADT/Triple.h"
 #include "llvm/Support/raw_ostream.h"
 #include "llvm/Support/DataTypes.h"
 #include <cassert>
@@ -20,11 +19,9 @@ class MCAsmLayout;
 class MCAssembler;
 class MCFixup;
 class MCFragment;
-class MCSymbol;
 class MCSymbolData;
 class MCSymbolRefExpr;
 class MCValue;
-class raw_ostream;
 
 /// MCObjectWriter - Defines the object file and target independent interfaces
 /// used by the assembler backend to write native file format object files.
@@ -96,7 +93,7 @@ public:
                                          const MCSymbolData &DataA,
                                          const MCFragment &FB,
                                          bool InSet,
-                                         bool IsPCRel) const = 0;
+                                         bool IsPCRel) const;
 
 
   /// Write the object file.
@@ -188,11 +185,10 @@ public:
   /// Utility function to encode a SLEB128 value.
   static void EncodeSLEB128(int64_t Value, raw_ostream &OS);
   /// Utility function to encode a ULEB128 value.
-  static void EncodeULEB128(uint64_t Value, raw_ostream &OS);
+  static void EncodeULEB128(uint64_t Value, raw_ostream &OS,
+                            unsigned Padding = 0);
 };
 
-MCObjectWriter *createWinCOFFObjectWriter(raw_ostream &OS, bool is64Bit);
-
 } // End llvm namespace
 
 #endif