diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2011-12-07 23:58:57 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2011-12-07 23:58:57 +0000 |
commit | d40e103ea5bca8a223fc8261b3322b9454e9af12 (patch) | |
tree | bbe16ad530387a7351f1e3aba9299f61832e0756 /lib/ExecutionEngine/ExecutionEngine.cpp | |
parent | 0c89f7fda27140445fad2fb70f3d6e616792f262 (diff) |
EngineBuilder: support for custom TargetOptions. Fixes the
ExceptionDemo example.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146108 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/ExecutionEngine/ExecutionEngine.cpp')
-rw-r--r-- | lib/ExecutionEngine/ExecutionEngine.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/ExecutionEngine/ExecutionEngine.cpp b/lib/ExecutionEngine/ExecutionEngine.cpp index d94f546512..26b0584840 100644 --- a/lib/ExecutionEngine/ExecutionEngine.cpp +++ b/lib/ExecutionEngine/ExecutionEngine.cpp @@ -436,8 +436,10 @@ ExecutionEngine *ExecutionEngine::createJIT(Module *M, StringRef MCPU = ""; SmallVector<std::string, 1> MAttrs; + // TODO: permit custom TargetOptions here TargetMachine *TM = - EngineBuilder::selectTarget(M, MArch, MCPU, MAttrs, RM, CMM, OL, ErrorStr); + EngineBuilder::selectTarget(M, MArch, MCPU, MAttrs, TargetOptions(), RM, + CMM, OL, ErrorStr); if (!TM || (ErrorStr && ErrorStr->length() > 0)) return 0; return ExecutionEngine::JITCtor(M, ErrorStr, JMM, OL, GVsWithCode, TM); @@ -466,6 +468,7 @@ ExecutionEngine *EngineBuilder::create() { // try making a JIT. if (WhichEngine & EngineKind::JIT) { if (TargetMachine *TM = EngineBuilder::selectTarget(M, MArch, MCPU, MAttrs, + Options, RelocModel, CMModel, OptLevel, ErrorStr)) { if (UseMCJIT && ExecutionEngine::MCJITCtor) { |