<div dir="ltr">Awesome!<br><br>What are the new semantics? That this ABI stability guarantee is provided by hiding the functions in each user so they can't be deduplicated with anotehr user's copy? (what about other copies that are from the same build? I guess even those won't get coalesced/collapsed together? Would that be useful to support?)<br><br>I assume this doesn't change the defaults, but does it make it any easier for users who don't need the ABI stability guarantee? (or was it already easy/no change here?)<br><br><div class="gmail_quote"><div dir="ltr">On Mon, Oct 29, 2018 at 2:41 PM Louis Dionne via cfe-dev <<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Folks,<br>
<br>
Today, I pushed a change that disables the use of always_inline for visibility purposes in libc++. The change was reviewed as <a href="https://reviews.llvm.org/D52405" rel="noreferrer" target="_blank">https://reviews.llvm.org/D52405</a>. This patch is the culminating point of several discussions about libc++'s visibility annotations.<br>
<br>
This change should have a positive impact on code size for almost any application using the libc++ headers. For example, Eric Fiselier reported a 7% improvement in size for the Chrome binary after applying this patch. We are still in the process of gathering more data like this, but we expect similar gains to be possible in other applications. The debugging experience should also be much improved as we don't inline every function into its caller.<br>
<br>
However, one word of caution: even though we were very careful not to break the ABI or any of libc++'s users ABI, this patch changes things that have been in place in libc++ for a long time. It is possible that we uncover problems with it, although we hope that won't be the case. If you start seeing problems you think are caused by this change, please notify me right away so we can take a look.<br>
<br>
I'll post updates here as we're able to publish more data and observations about the results of this patch.<br>
<br>
Thanks,<br>
Louis<br>
<br>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
</blockquote></div></div>