summaryrefslogtreecommitdiff
path: root/tools/lto/LTOCodeGenerator.h
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2012-03-31 11:10:35 +0000
committerBill Wendling <isanbard@gmail.com>2012-03-31 11:10:35 +0000
commitab53bc76fd0f4863c9bdccf666fe8eed3d6bf702 (patch)
tree602293ba5e75ceb5c247767da3a14f865b17381d /tools/lto/LTOCodeGenerator.h
parent1955c9cf46f64513d1f0034573ca00b6b396fabe (diff)
downloadllvm-ab53bc76fd0f4863c9bdccf666fe8eed3d6bf702.tar.gz
llvm-ab53bc76fd0f4863c9bdccf666fe8eed3d6bf702.tar.bz2
llvm-ab53bc76fd0f4863c9bdccf666fe8eed3d6bf702.tar.xz
Cleanup whitespace and trim some of the #includes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153807 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/lto/LTOCodeGenerator.h')
-rw-r--r--tools/lto/LTOCodeGenerator.h97
1 files changed, 50 insertions, 47 deletions
diff --git a/tools/lto/LTOCodeGenerator.h b/tools/lto/LTOCodeGenerator.h
index 83ad9987ed..1b3bc0936b 100644
--- a/tools/lto/LTOCodeGenerator.h
+++ b/tools/lto/LTOCodeGenerator.h
@@ -4,71 +4,74 @@
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
-//
+//
//===----------------------------------------------------------------------===//
//
-// This file declares the LTOCodeGenerator class.
+// This file declares the LTOCodeGenerator class.
//
//===----------------------------------------------------------------------===//
-
#ifndef LTO_CODE_GENERATOR_H
#define LTO_CODE_GENERATOR_H
#include "llvm/Linker.h"
-#include "llvm/LLVMContext.h"
#include "llvm/ADT/StringMap.h"
-#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/SmallPtrSet.h"
-
+#include "llvm-c/lto.h"
#include <string>
+namespace llvm {
+ class LLVMContext;
+ class GlobalValue;
+ class Mangler;
+ class MemoryBuffer;
+ class TargetMachine;
+ class raw_ostream;
+}
-//
-// C++ class which implements the opaque lto_code_gen_t
-//
-
+//===----------------------------------------------------------------------===//
+/// LTOCodeGenerator - C++ class which implements the opaque lto_code_gen_t
+/// type.
+///
struct LTOCodeGenerator {
- static const char* getVersionString();
-
- LTOCodeGenerator();
- ~LTOCodeGenerator();
-
- bool addModule(struct LTOModule*, std::string& errMsg);
- bool setDebugInfo(lto_debug_model, std::string& errMsg);
- bool setCodePICModel(lto_codegen_model, std::string& errMsg);
- void setCpu(const char *cpu);
- void addMustPreserveSymbol(const char* sym);
- bool writeMergedModules(const char* path,
- std::string& errMsg);
- bool compile_to_file(const char** name, std::string& errMsg);
- const void* compile(size_t* length, std::string& errMsg);
- void setCodeGenDebugOptions(const char *opts);
+ static const char *getVersionString();
+
+ LTOCodeGenerator();
+ ~LTOCodeGenerator();
+
+ bool addModule(struct LTOModule*, std::string &errMsg);
+ bool setDebugInfo(lto_debug_model, std::string &errMsg);
+ bool setCodePICModel(lto_codegen_model, std::string &errMsg);
+ void setCpu(const char *cpu);
+ void addMustPreserveSymbol(const char *sym);
+ bool writeMergedModules(const char *path, std::string &errMsg);
+ bool compile_to_file(const char **name, std::string &errMsg);
+ const void *compile(size_t *length, std::string &errMsg);
+ void setCodeGenDebugOptions(const char *opts);
+
private:
- bool generateObjectFile(llvm::raw_ostream& out,
- std::string& errMsg);
- void applyScopeRestrictions();
- void applyRestriction(llvm::GlobalValue &GV,
- std::vector<const char*> &mustPreserveList,
+ bool generateObjectFile(llvm::raw_ostream &out, std::string &errMsg);
+ void applyScopeRestrictions();
+ void applyRestriction(llvm::GlobalValue &GV,
+ std::vector<const char*> &mustPreserveList,
llvm::SmallPtrSet<llvm::GlobalValue*, 8> &asmUsed,
- llvm::Mangler &mangler);
- bool determineTarget(std::string& errMsg);
-
- typedef llvm::StringMap<uint8_t> StringSet;
+ llvm::Mangler &mangler);
+ bool determineTarget(std::string &errMsg);
+
+ typedef llvm::StringMap<uint8_t> StringSet;
- llvm::LLVMContext& _context;
- llvm::Linker _linker;
- llvm::TargetMachine* _target;
- bool _emitDwarfDebugInfo;
- bool _scopeRestrictionsDone;
- lto_codegen_model _codeModel;
- StringSet _mustPreserveSymbols;
- StringSet _asmUndefinedRefs;
- llvm::MemoryBuffer* _nativeObjectFile;
- std::vector<char*> _codegenOptions;
- std::string _mCpu;
- std::string _nativeObjectPath;
+ llvm::LLVMContext& _context;
+ llvm::Linker _linker;
+ llvm::TargetMachine* _target;
+ bool _emitDwarfDebugInfo;
+ bool _scopeRestrictionsDone;
+ lto_codegen_model _codeModel;
+ StringSet _mustPreserveSymbols;
+ StringSet _asmUndefinedRefs;
+ llvm::MemoryBuffer* _nativeObjectFile;
+ std::vector<char*> _codegenOptions;
+ std::string _mCpu;
+ std::string _nativeObjectPath;
};
#endif // LTO_CODE_GENERATOR_H
-