[PATCH] D29609: [dsymutil] Follow dependencies during ODR uniquing

Alexander Shaposhnikov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 1 16:14:20 PST 2017


alexshap added a comment.

Oh, no problem, sorry about disturbing you.

> I looked at this over the weekend and I must say I don't really like it. 
> I don't like that it's going to walk a lot more DIEs when it's not needed. 
> I'd rather gather the information that a typedef is describing an incomplete type and not mark it as canonical

i was thinking about this, for what it's worth:

1. when DIEInfo is marked as Walked we don't visit again (while processing CurrentUnit),

but yeah, the total number of visits increases

2. the same issue arises on more complicated cases - when the chain of references (via attributes) is longer then that in my simple test case.

However if you know how to fix this using a better approach - i am open to it and would really appreciate any suggestions /details here.
Having that said - with the current approach - the total performance has regressed smth around 1-2 % - that looks expected.

Many thanks for looking into this.


Repository:
  rL LLVM

https://reviews.llvm.org/D29609





More information about the llvm-commits mailing list