From 5b42c7aa25b826747318824340ff229a60670b42 Mon Sep 17 00:00:00 2001 From: Tamas Berghammer Date: Fri, 26 Feb 2016 14:21:10 +0000 Subject: Add support for DW_OP_push_object_address in dwarf expressions Additionally fix the type of some dwarf expression where we had a confusion between scalar and load address types after a dereference. Differential revision: http://reviews.llvm.org/D17604 llvm-svn: 262014 --- lldb/source/Target/StackFrame.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'lldb/source/Target/StackFrame.cpp') diff --git a/lldb/source/Target/StackFrame.cpp b/lldb/source/Target/StackFrame.cpp index 8a7356d3c9c..1d1a68fd334 100644 --- a/lldb/source/Target/StackFrame.cpp +++ b/lldb/source/Target/StackFrame.cpp @@ -1221,8 +1221,15 @@ StackFrame::GetFrameBaseValue (Scalar &frame_base, Error *error_ptr) if (m_sc.function->GetFrameBaseExpression().IsLocationList()) loclist_base_addr = m_sc.function->GetAddressRange().GetBaseAddress().GetLoadAddress (exe_ctx.GetTargetPtr()); - if (!m_sc.function->GetFrameBaseExpression().Evaluate(&exe_ctx, nullptr, nullptr, nullptr, loclist_base_addr, - nullptr, expr_value, &m_frame_base_error)) + if (m_sc.function->GetFrameBaseExpression().Evaluate(&exe_ctx, + nullptr, + nullptr, + nullptr, + loclist_base_addr, + nullptr, + nullptr, + expr_value, + &m_frame_base_error) == false) { // We should really have an error if evaluate returns, but in case // we don't, lets set the error to something at least. -- cgit v1.2.3