This revision was automatically updated to reflect the committed changes.
Closed by commit rL333878: AppleDWARFIndex: Get function method-ness directly
from debug info (authored by labath, committed by ).
Herald added a subscriber: llvm-commits.
Repository:
rL LLVM
clayborg accepted this revision.
clayborg added a comment.
I can't think of a better name, looks good. Thanks for taking the time, this
will be great.
https://reviews.llvm.org/D47470
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
labath added a comment.
ps: the specificationsAndAbstractOrigins sounded like too big of a mouthful.
I've invented the name "elaborating dies" for that.
https://reviews.llvm.org/D47470
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
labath updated this revision to Diff 149423.
labath marked an inline comment as done.
labath added a comment.
I have a feeling we are starting to over-engineer this. Visiting referenced dies
sounds like a useful utility in general, though I think most of the users will
be content with just
clayborg added a comment.
After seeing this, it might be nice to put the recursion that follows the
DW_AT_specification and DW_AT_abstract_origin and avoids infinite recursion
into a DWARFDIE function that takes a callback:
typedef bool (*DIECallback)(DWARFDIE );
void
clayborg accepted this revision.
clayborg added a comment.
Very nice
https://reviews.llvm.org/D47470
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
labath marked 4 inline comments as done.
labath added inline comments.
Comment at: source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp:222
+return true;
+ return GetReferencedDIE(DW_AT_specification)
+ .GetParent()
JDevlieghere wrote:
> labath wrote:
> >
JDevlieghere added inline comments.
Comment at: source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp:222
+return true;
+ return GetReferencedDIE(DW_AT_specification)
+ .GetParent()
labath wrote:
> clayborg wrote:
> > labath wrote:
> > > clayborg wrote:
> > > >
labath marked 4 inline comments as done.
labath added inline comments.
Comment at: source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.cpp:153
+return true;
+ bool looking_for_methods = name_type_mask & eFunctionNameTypeMethod;
+ return looking_for_methods == die.IsMethod();
labath updated this revision to Diff 149253.
labath added a comment.
Implement recursive search in IsMethod()
https://reviews.llvm.org/D47470
Files:
lit/SymbolFile/DWARF/find-method-local-struct.cpp
source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.cpp
clayborg added a comment.
So my previous code suggestion might not work as we would want to recurse
through the specification or abstract origin chain.
https://reviews.llvm.org/D47470
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
clayborg added inline comments.
Comment at: source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp:222
+return true;
+ return GetReferencedDIE(DW_AT_specification)
+ .GetParent()
labath wrote:
> clayborg wrote:
> > I can never remember when a
labath added inline comments.
Comment at: source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp:222
+return true;
+ return GetReferencedDIE(DW_AT_specification)
+ .GetParent()
clayborg wrote:
> I can never remember when a DW_AT_abstract_origin might be used.
clayborg added inline comments.
Comment at: source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.cpp:153
+return true;
+ bool looking_for_methods = name_type_mask & eFunctionNameTypeMethod;
+ return looking_for_methods == die.IsMethod();
move up to line 150 and
JDevlieghere accepted this revision.
JDevlieghere added a comment.
This revision is now accepted and ready to land.
Thanks Pavel, LGTM.
https://reviews.llvm.org/D47470
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
labath created this revision.
labath added reviewers: clayborg, JDevlieghere.
Herald added a subscriber: aprantl.
When searching for methods only, we need to do extra work to make sure
the functions we get from the apple tables are indeed methods.
Previously we were resolving the DIE into a
16 matches
Mail list logo