<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Apr 25, 2016 at 6:50 PM, Rafael Espíndola <span dir="ltr"><<a href="mailto:rafael.espindola@gmail.com" target="_blank">rafael.espindola@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">> That all makes sense when we see a definition both in the object files and<br>
> the DSO, but I don't see why it should apply in the case where we only see a<br>
> definition in the DSO.<br>
<br>
</span>Why only for definitions? This is not a very common case and I think<br>
it would make the code a lot simpler.<br></blockquote><div><br></div><div>The whole point of this change is to make sure we don't have references in the dynsym to symbols in unneeded DSOs. This is to avoid the scenario I mentioned in D19464 where we were emitting version requirements for DSOs that weren't in the needed list.</div><div><br></div><div>Filtering the dynsym seemed like the best solution to this problem, as it means we don't end up with unnecessary DSO references in the executable that were created by unneeded sections.</div><div><br></div><div>Thanks,</div><div>-- <br></div></div><div class="gmail_signature"><div dir="ltr">-- <div>Peter</div></div></div>
</div></div>