Update LLVM to rust-llvm-2015-01-30

This commit is contained in:
Björn Steinbrink
2015-01-30 19:25:07 +01:00
parent 682f867bbf
commit 602e508db0
7 changed files with 268 additions and 203 deletions

View File

@@ -82,21 +82,24 @@ extern "C" LLVMExecutionEngineRef LLVMBuildExecutionEngine(
InitializeNativeTargetAsmPrinter();
InitializeNativeTargetAsmParser();
std::unique_ptr<Module> m(unwrap(mod));
RustJITMemoryManager *mm = unwrap(mref);
std::string error_str;
TargetOptions options;
options.JITEmitDebugInfo = true;
options.NoFramePointerElim = true;
ExecutionEngine *ee = EngineBuilder(std::move(m))
.setEngineKind(EngineKind::JIT)
.setErrorStr(&error_str)
.setMCJITMemoryManager(mm)
.setTargetOptions(options)
.create();
ExecutionEngine *ee =
#if LLVM_VERSION_MINOR <= 5
EngineBuilder(unwrap(mod))
.setMCJITMemoryManager(unwrap(mref))
#else
EngineBuilder(std::unique_ptr<Module>(unwrap(mod)))
.setMCJITMemoryManager(std::unique_ptr<RustJITMemoryManager>(unwrap(mref)))
#endif
.setEngineKind(EngineKind::JIT)
.setErrorStr(&error_str)
.setTargetOptions(options)
.create();
if (!ee)
LLVMRustSetLastError(error_str.c_str());