If you have the binary and the function that this is happening in and can share 
the binary that contains debug info and also share which file and function and 
variable is causing the issue, I might be able to tell you why this is 
happening.

Greg

> On Sep 18, 2017, at 1:23 PM, Greg Clayton <clayb...@gmail.com> wrote:
> 
> A DW_TAG_subprogram's usually has a DW_AT_frame_base DWARF expression that 
> describes where the frame is. That evaluates to something and doesn't require 
> any type. I am guessing you now have a variable that is relative to that 
> frame base and that variable's type is not valid. This can be due to many 
> reasons, most likely is the compiler may have redacted your type when trying 
> to save space. Can you confirm this is what is happening?
> 
> 
>> On Sep 18, 2017, at 12:25 PM, Leonardo Bianconi via lldb-dev 
>> <lldb-dev@lists.llvm.org> wrote:
>> 
>> Hi all!
>> 
>> I'm facing an issue with a value of 
>> lldb_private::Value::eValueTypeLoadAddress type, which cannot be loaded from 
>> memory because the compiler type was not filled.
>> That happens obtaining the fame base, which is based on 
>> "DW_OP_call_frame_cfa" case (DWARFExpression.cpp:2825).
>> After obtain the base frame, when resolving the value (Value.cpp:612), as 
>> the compiler type is invalid, the value is not read from memory, and the 
>> frame base keep as its address.
>> 
>> How can I solve this issue?
>> I looked in many files, and couldn't find how to fill the compiler type in 
>> the "DWARFExpression::Evaluate" method.
>> 
>> 
>> Thanks,
>> Leonardo Bianconi.
>> _______________________________________________
>> lldb-dev mailing list
>> lldb-dev@lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
> 

_______________________________________________
lldb-dev mailing list
lldb-dev@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev

Reply via email to