summaryrefslogtreecommitdiffstats
path: root/lldb/source/Expression/IRInterpreter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Expression/IRInterpreter.cpp')
-rw-r--r--lldb/source/Expression/IRInterpreter.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/lldb/source/Expression/IRInterpreter.cpp b/lldb/source/Expression/IRInterpreter.cpp
index aa0ab5e4587..cbd9e8df0f0 100644
--- a/lldb/source/Expression/IRInterpreter.cpp
+++ b/lldb/source/Expression/IRInterpreter.cpp
@@ -27,8 +27,10 @@
using namespace llvm;
IRInterpreter::IRInterpreter(lldb_private::ClangExpressionDeclMap &decl_map,
- lldb_private::Stream *error_stream) :
- m_decl_map(decl_map)
+ lldb_private::IRMemoryMap &memory_map,
+ lldb_private::Stream *error_stream) :
+ m_decl_map(decl_map),
+ m_memory_map(memory_map)
{
}
@@ -409,6 +411,7 @@ public:
Memory &m_memory;
DataLayout &m_target_data;
lldb_private::ClangExpressionDeclMap &m_decl_map;
+ lldb_private::IRMemoryMap &m_memory_map;
const BasicBlock *m_bb;
BasicBlock::const_iterator m_ii;
BasicBlock::const_iterator m_ie;
@@ -418,10 +421,12 @@ public:
InterpreterStackFrame (DataLayout &target_data,
Memory &memory,
- lldb_private::ClangExpressionDeclMap &decl_map) :
+ lldb_private::ClangExpressionDeclMap &decl_map,
+ lldb_private::IRMemoryMap &memory_map) :
m_memory (memory),
m_target_data (target_data),
- m_decl_map (decl_map)
+ m_decl_map (decl_map),
+ m_memory_map (memory_map)
{
m_byte_order = (target_data.isLittleEndian() ? lldb::eByteOrderLittle : lldb::eByteOrderBig);
m_addr_byte_size = (target_data.getPointerSize(0));
@@ -1125,7 +1130,7 @@ IRInterpreter::runOnFunction (lldb::ClangExpressionVariableSP &result,
}
Memory memory(target_data, m_decl_map, alloc_min, alloc_max);
- InterpreterStackFrame frame(target_data, memory, m_decl_map);
+ InterpreterStackFrame frame(target_data, memory, m_decl_map, m_memory_map);
uint32_t num_insts = 0;
OpenPOWER on IntegriCloud