diff options
| author | Björn Steinbrink <bsteinbr@gmail.com> | 2015-01-30 19:25:07 +0100 |
|---|---|---|
| committer | Björn Steinbrink <bsteinbr@gmail.com> | 2015-02-01 20:00:35 +0100 |
| commit | 602e508db0fd3566ef59a6a4833b68c3a55ddc79 (patch) | |
| tree | 6b36732e509b31b7c7b9d044d358da45f79ae2c0 /src/rustllvm/ExecutionEngineWrapper.cpp | |
| parent | 682f867bbfff97e3aef55bdf228d279e45f25cd9 (diff) | |
| download | rust-602e508db0fd3566ef59a6a4833b68c3a55ddc79.tar.gz rust-602e508db0fd3566ef59a6a4833b68c3a55ddc79.zip | |
Update LLVM to rust-llvm-2015-01-30
Diffstat (limited to 'src/rustllvm/ExecutionEngineWrapper.cpp')
| -rw-r--r-- | src/rustllvm/ExecutionEngineWrapper.cpp | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/src/rustllvm/ExecutionEngineWrapper.cpp b/src/rustllvm/ExecutionEngineWrapper.cpp index d37cf9d12a5..8ca81ab3d68 100644 --- a/src/rustllvm/ExecutionEngineWrapper.cpp +++ b/src/rustllvm/ExecutionEngineWrapper.cpp @@ -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()); |
