summaryrefslogtreecommitdiffstats
path: root/lldb/source/Expression/ClangExpressionParser.cpp
diff options
context:
space:
mode:
authorSean Callanan <scallanan@apple.com>2010-10-26 00:31:56 +0000
committerSean Callanan <scallanan@apple.com>2010-10-26 00:31:56 +0000
commitbe3a1b14dc45898aca1b9a85a86849614e82aa87 (patch)
treebb5c1350bbeea06c13d921b7f75486c21b970f4c /lldb/source/Expression/ClangExpressionParser.cpp
parent40d871fa245b288b7933c03df4c3605a418827a9 (diff)
downloadbcm5719-llvm-be3a1b14dc45898aca1b9a85a86849614e82aa87.tar.gz
bcm5719-llvm-be3a1b14dc45898aca1b9a85a86849614e82aa87.zip
Fixed a problem where function calls on i386 weren't
being generated correctly. Also added a messy way to single-step through expressions that I will improve soon. llvm-svn: 117342
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