<div dir="ltr">Congratulations!</div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Nov 13, 2014 at 10:40 AM, Nico Weber <span dir="ltr"><<a href="mailto:thakis@chromium.org" target="_blank">thakis@chromium.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi,</div><div><br></div><div>As of Chrome m38, which shipped to stable a bit over a month ago, we are using clang as our production compiler for Linux – meaning that the bits we ship to users on Linux are now created by clang. It's now also our default host compiler for Chrome/Android builds (the target compiler is still gcc). We used to use gcc 4.6 before. Maybe this is interesting to others, hence this (somewhat belated) announcement.</div><div><br></div><div>We're using the same model we use on OS X: We use a pinned clang revision without any changes (these days, we sometimes cherrypick a few newer versions every now and then) that we update to ~trunk every few weeks.</div><div><div><br></div><div>The switch went off without larger problems, except one: The linux binaries that clang produces by default don't run on older 32-bit debians, an issue that we didn't find until our stable release. This is due to clang making assumptions about alignment that aren't true on 32-bit in practice. We worked around this and got an updated stable out relatively quickly, but producing broken 32-bit binaries by default is a great opportunity for improvement :-) I filed <a href="http://llvm.org/PR21414" target="_blank">http://llvm.org/PR21414</a> for this.</div><div><br></div></div><div>With the switch to clang, binary size dropped about 8% while performance mostly stayed the same. Startup time improved a bit, some microbenchmarks got faster, others got slower (I debugged the biggest slowdown, that turned out to be a benchmark bug). If you're interested <a href="https://chromeperf.appspot.com/group_report?rev=282246" target="_blank">https://chromeperf.appspot.com/group_report?rev=282246</a> has details, ignore all rows that aren't for "linux-release" or "chromium-rel-linux". page_cycler.tough_layout_cases for example got 2.5% faster, which is nice.</div><div><br></div><div>Thanks everyone for all your work building such a great compiler!<span class="HOEnZb"><font color="#888888"><br></font></span></div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Nico</div></font></span></div>
<br>_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
<br></blockquote></div><br></div>