35 #ifndef LTO_CODE_GENERATOR_H
36 #define LTO_CODE_GENERATOR_H
52 class TargetLibraryInfo;
74 void setCpu(
const char *mCpu) { MCpu = mCpu; }
105 bool disableGVNLoadPRE,
106 std::string &errMsg);
114 const void *
compile(
size_t *length,
117 bool disableGVNLoadPRE,
118 std::string &errMsg);
121 void initializeLTOPasses();
126 bool disableGVNLoadPRE,
127 std::string &errMsg);
128 void applyScopeRestrictions();
131 std::vector<const char*> &MustPreserveList,
134 bool determineTarget(std::string &errMsg);
141 bool EmitDwarfDebugInfo;
142 bool ScopeRestrictionsDone;
144 StringSet MustPreserveSymbols;
145 StringSet AsmUndefinedRefs;
147 std::vector<char *> CodegenOptions;
149 std::string NativeObjectPath;
153 #endif // LTO_CODE_GENERATOR_H
void setTargetOptions(llvm::TargetOptions options)
bool writeMergedModules(const char *path, std::string &errMsg)
void addMustPreserveSymbol(const char *sym)
void parseCodeGenDebugOptions()
void setCodeGenDebugOptions(const char *opts)
void setDebugInfo(lto_debug_model)
bool compile_to_file(const char **name, bool disableOpt, bool disableInline, bool disableGVNLoadPRE, std::string &errMsg)
const void * compile(size_t *length, bool disableOpt, bool disableInline, bool disableGVNLoadPRE, std::string &errMsg)
void setCpu(const char *mCpu)
void setCodePICModel(lto_codegen_model)
static const char * getVersionString()
bool addModule(struct LTOModule *, std::string &errMsg)