Re: [lldb-dev] LLDB + UE4 on Android

2016-03-11 Thread Pavel Labath via lldb-dev
So, from the error message it looks like lldb is getting confused by the debug information inside the executable. I don't have any special hints for debugging that, I think the usual process of attaching the debugger, examining the backtrace, and seeing what data is triggering the assert would work

Re: [lldb-dev] DWARFASTParserClang and DW_TAG_typedef for anonymous structs

2016-03-11 Thread Luke Drummond via lldb-dev
I forgot to CC the list earlier. Apologies. Forwarded Message Subject: Re: [lldb-dev] DWARFASTParserClang and DW_TAG_typedef for anonymous structs Date: Fri, 11 Mar 2016 11:55:50 + From: Luke Drummond To: Greg Clayton Hi Greg On 10/03/16 22:26, Greg Clayton wrote: Pl

[lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Zachary Turner via lldb-dev
I'm trying to implement this function for PDB. There are two overloads: uint32_t FindGlobalVariables (const ConstString &name, const CompilerDeclContext *parent_decl_ctx, bool append, uint32_t max_matches, VariableList& variables) uint32_t FindGlobalVariables(const RegularExpression& regex, bool

Re: [lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Zachary Turner via lldb-dev
Also why does the lldb_private::Variable() class take a DWARFExpression to its constructor? Seems like this is wrong in the face of non-DWARF debug information. On Fri, Mar 11, 2016 at 11:02 AM Zachary Turner wrote: > I'm trying to implement this function for PDB. There are two overloads: > >

Re: [lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Greg Clayton via lldb-dev
> On Mar 11, 2016, at 11:02 AM, Zachary Turner via lldb-dev > wrote: > > I'm trying to implement this function for PDB. There are two overloads: > > uint32_t > FindGlobalVariables (const ConstString &name, const CompilerDeclContext > *parent_decl_ctx, bool append, uint32_t max_matches, Varia

Re: [lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Jim Ingham via lldb-dev
lldb uses DWARF expressions internally as a convenient language to represent locations of values. We had to pick some representation, and the DWARF expression was powerful enough for our purposes, meant we didn't have to reinvent something that already existed, and had the added benefit that if

Re: [lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Zachary Turner via lldb-dev
Can we abstract this somehow? Converting all my debug info to DWARF seems like a non-starter, as it doesn't look like you can just do it partially, you have to go all the way (just based on glancing at the DWARFExpression header file) On Fri, Mar 11, 2016 at 11:38 AM Jim Ingham wrote: > lldb us

Re: [lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Greg Clayton via lldb-dev
> > Also why does the lldb_private::Variable() class take a DWARFExpression to > its constructor? Seems like this is wrong in the face of non-DWARF debug > information. They are powerful enough to handle any variable location. More powerful than any other format I have seen. You have two choi

Re: [lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Greg Clayton via lldb-dev
See my other email. You can abstract this, but it doesn't seem worth it unless PDB has some really powerful way to express variable locations? > On Mar 11, 2016, at 11:39 AM, Zachary Turner via lldb-dev > wrote: > > Can we abstract this somehow? Converting all my debug info to DWARF seems >

Re: [lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Zachary Turner via lldb-dev
The only "spec" is the API that allows you to access the info. There's no spec of the bit format. This is probably all you are actually looking for though: The problem isn't necessarily that one is more pwoerful than the other, it's just t

Re: [lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Greg Clayton via lldb-dev
Feel free to abstract if you need to. The page you sent me to has _very_ simple locations that would convert to DWARF expressions very easily. Probably less that a hundred lines of code. If you need to abstract, making a lldb_private::Location class that DWARFExpression would implement the need

Re: [lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Zachary Turner via lldb-dev
How large of a change do you think it would be to abstract out the location information for the variable? As far as I can tell, our uses of this DWARFExpression on Variables are very limited: 1. In ValueObjectVariable::UpdateValue and ClangExpressionDeclMap::GetVariableValue, if the location is a

Re: [lldb-dev] SymbolFile::FindGlobalVariables

2016-03-11 Thread Greg Clayton via lldb-dev
> On Mar 11, 2016, at 1:02 PM, Zachary Turner wrote: > > How large of a change do you think it would be to abstract out the location > information for the variable? As far as I can tell, our uses of this > DWARFExpression on Variables are very limited: > > 1. In ValueObjectVariable::UpdateVa