Refactor the MCContext so that it's an ivar instead of a local which is passed
[oota-llvm.git] / tools / lto / LTOModule.h
index ca08aea90adba0e8f0eee2db1c5ed2bb3fa618f2..63e5e37109150b874767299c694b6800fcb255eb 100644 (file)
@@ -15,8 +15,9 @@
 #define LTO_MODULE_H
 
 #include "llvm/Module.h"
-#include "llvm/ADT/OwningPtr.h"
+#include "llvm/MC/MCContext.h"
 #include "llvm/Target/TargetMachine.h"
+#include "llvm/ADT/OwningPtr.h"
 #include "llvm/ADT/StringMap.h"
 
 #include "llvm-c/lto.h"
@@ -83,11 +84,10 @@ private:
     void                    addPotentialUndefinedSymbol(llvm::GlobalValue* decl, 
                                                         llvm::Mangler &mangler);
     void                    addDefinedFunctionSymbol(llvm::Function* f, 
-                                                        llvm::Mangler &mangler);
+                                                     llvm::Mangler &mangler);
     void                    addDefinedDataSymbol(llvm::GlobalValue* v, 
-                                                        llvm::Mangler &mangler);
-    bool                    addAsmGlobalSymbols(llvm::MCContext &Context,
-                                                std::string &errMsg);
+                                                 llvm::Mangler &mangler);
+    bool                    addAsmGlobalSymbols(std::string &errMsg);
     void                    addAsmGlobalSymbol(const char *,
                                                lto_symbol_attributes scope);
     void                    addAsmGlobalSymbolUndef(const char *);
@@ -118,6 +118,7 @@ private:
     StringSet                               _defines;    
     llvm::StringMap<NameAndAttributes>      _undefines;
     std::vector<const char*>                _asm_undefines;
+    llvm::MCContext                         _context;
 };
 
 #endif // LTO_MODULE_H