summaryrefslogtreecommitdiffstats
path: root/lldb/source/Expression/ClangExpressionParser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Expression/ClangExpressionParser.cpp')
-rw-r--r--lldb/source/Expression/ClangExpressionParser.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/lldb/source/Expression/ClangExpressionParser.cpp b/lldb/source/Expression/ClangExpressionParser.cpp
index 94c1c013421..d0f276c211c 100644
--- a/lldb/source/Expression/ClangExpressionParser.cpp
+++ b/lldb/source/Expression/ClangExpressionParser.cpp
@@ -467,13 +467,19 @@ ClangExpressionParser::MakeJIT (lldb::addr_t &func_addr,
std::string error_string;
+ llvm::Reloc::Model relocation_model = llvm::TargetMachine::getRelocationModel();
+
+ llvm::TargetMachine::setRelocationModel(llvm::Reloc::PIC_);
+
m_execution_engine.reset(llvm::ExecutionEngine::createJIT (module,
&error_string,
m_jit_mm,
- CodeGenOpt::Default,
+ CodeGenOpt::Less,
true,
CodeModel::Small));
+ llvm::TargetMachine::setRelocationModel(relocation_model);
+
if (!m_execution_engine.get())
{
err.SetErrorToGenericError();
OpenPOWER on IntegriCloud