[Lldb-commits] [lldb] r145437 - in /lldb/trunk: include/lldb/Expression/ClangExpressionDeclMap.h source/Expression/ClangExpressionDeclMap.cpp
Sean Callanan
scallanan at apple.com
Tue Nov 29 14:03:22 PST 2011
Author: spyffe
Date: Tue Nov 29 16:03:21 2011
New Revision: 145437
URL: http://llvm.org/viewvc/llvm-project?rev=145437&view=rev
Log:
Modified ClangExpressionDeclMap to use existing
ValueObjects when creating variables referring to
live data rather than constructing
ValueObjectConstResults.
Modified:
lldb/trunk/include/lldb/Expression/ClangExpressionDeclMap.h
lldb/trunk/source/Expression/ClangExpressionDeclMap.cpp
Modified: lldb/trunk/include/lldb/Expression/ClangExpressionDeclMap.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Expression/ClangExpressionDeclMap.h?rev=145437&r1=145436&r2=145437&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Expression/ClangExpressionDeclMap.h (original)
+++ lldb/trunk/include/lldb/Expression/ClangExpressionDeclMap.h Tue Nov 29 16:03:21 2011
@@ -909,10 +909,14 @@
///
/// @param[in] var
/// The LLDB Variable that needs a Decl.
+ ///
+ /// @param[in] valobj
+ /// The LLDB ValueObject for that variable.
//------------------------------------------------------------------
void
AddOneVariable (NameSearchContext &context,
lldb::VariableSP var,
+ lldb::ValueObjectSP valobj,
unsigned int current_id);
//------------------------------------------------------------------
Modified: lldb/trunk/source/Expression/ClangExpressionDeclMap.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/ClangExpressionDeclMap.cpp?rev=145437&r1=145436&r2=145437&view=diff
==============================================================================
--- lldb/trunk/source/Expression/ClangExpressionDeclMap.cpp (original)
+++ lldb/trunk/source/Expression/ClangExpressionDeclMap.cpp Tue Nov 29 16:03:21 2011
@@ -2507,7 +2507,7 @@
// If we found a variable in scope, no need to pull up function names
if (err.Success() && var != NULL)
{
- AddOneVariable(context, var, current_id);
+ AddOneVariable(context, var, valobj, current_id);
context.m_found.variable = true;
return;
}
@@ -2522,7 +2522,8 @@
if (var)
{
- AddOneVariable(context, var, current_id);
+ valobj = frame->TrackGlobalVariable(var, eNoDynamicValues);
+ AddOneVariable(context, var, valobj, current_id);
context.m_found.variable = true;
}
}
@@ -2728,7 +2729,7 @@
}
void
-ClangExpressionDeclMap::AddOneVariable (NameSearchContext &context, VariableSP var, unsigned int current_id)
+ClangExpressionDeclMap::AddOneVariable (NameSearchContext &context, VariableSP var, ValueObjectSP valobj, unsigned int current_id)
{
assert (m_parser_vars.get());
@@ -2757,11 +2758,8 @@
std::string decl_name(context.m_decl_name.getAsString());
ConstString entity_name(decl_name.c_str());
- ClangExpressionVariableSP entity(m_found_entities.CreateVariable (m_parser_vars->m_exe_ctx->GetBestExecutionContextScope (),
- entity_name,
- ut,
- m_parser_vars->m_target_info.byte_order,
- m_parser_vars->m_target_info.address_byte_size));
+ ClangExpressionVariableSP entity(m_found_entities.CreateVariable (valobj));
+
assert (entity.get());
entity->EnableParserVars();
entity->m_parser_vars->m_parser_type = pt;
More information about the lldb-commits
mailing list