[PATCH] D48899: [dsymutil] Convert recursion in lookForDIEsToKeep into worklist.
Jonas Devlieghere via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 5 09:20:20 PDT 2018
JDevlieghere marked an inline comment as done.
JDevlieghere added a comment.
In https://reviews.llvm.org/D48899#1153210, @friss wrote:
> This looks like it should work and keep the current semantics. Did you find that this gives identical output as the current algorithm in your testing?
The output is **not always** binary identical. For example for clang we emit more than we did before (i.e. we consider more things incomplete). So far I don't have a good explanation for this...
================
Comment at: llvm/tools/dsymutil/DwarfLinker.cpp:878-880
+ std::vector<DWARFDie> Children(Current.Die.begin(), Current.Die.end());
+ std::reverse(Children.begin(), Children.end());
+ for (auto Child : Children)
----------------
friss wrote:
> Can you use something like make_reverse_iterator to avoid copying the list?
The iterator is a forward iterator (it uses getSibling to advance) so unfortunately not.
https://reviews.llvm.org/D48899
More information about the llvm-commits
mailing list