<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi Praveen,<div class=""><br class=""></div><div class="">Thanks for the tip, but Xcode seems to spend all the time running tablegen "custom shell scripts", one by one at a time, not linking. Linking is actually very fast, possibly less than a second. The “scripts” that take longer are  “AArch64CommonTableGen" and “AMDGPUCommonTableGen”.  As said this is on LLVM 9.0. </div><div class=""><br class=""></div><div class="">However, on LLVM 7.0.1, the same process takes just 5-6 seconds in total, with individual “scripts” taking significantly less than 1 second each. There must be some difference between LLVM 9.0 and LLVM 7.0 that might cause this (?)</div><div class=""><br class=""></div><div class="">John</div><div class=""><br class=""></div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 30 Jun 2019, at 11:17, Praveen Velliengiri <<a href="mailto:praveenvelliengiri@gmail.com" class="">praveenvelliengiri@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div class=""><strong class=""><br class=""></strong></div><div class="">cmake <strong class="">BUILD_SHARED_LIBS</strong> option, it builds llvm as .so not as .a. It will use less memory during linking so you can increase the link threads and your build time will be lesser. <br class=""></div><div class="">Check this in : <a href="https://llvm.org/docs/CMake.html" class="">https://llvm.org/docs/CMake.html</a> <br class=""></div><div class=""><br class=""><strong class=""></strong></div><div class=""><strong class=""></strong></div></div><br class=""><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, 30 Jun 2019 at 14:42, Joan Lluch <<a href="mailto:joan.lluch@icloud.com" class="">joan.lluch@icloud.com</a>> wrote:<br class=""></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="overflow-wrap: break-word;" class="">Hi Praveen,<div class=""><br class=""></div><div class="">Please, can you elaborate on this?. What do do mean by “building as shared objects”.</div><div class=""><br class=""></div><div class="">Thanks,</div><div class=""><br class=""></div><div class="">John</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""><div class=""><blockquote type="cite" class=""><div class="">On 30 Jun 2019, at 07:32, Praveen Velliengiri <<a href="mailto:praveenvelliengiri@gmail.com" target="_blank" class="">praveenvelliengiri@gmail.com</a>> wrote:</div><br class="gmail-m_2619246657945187350Apple-interchange-newline"><div class=""><div dir="auto" class="">Maybe try building llvm as a shared objects.. </div><div class="gmail_extra"><br class=""><div class="gmail_quote">On Jun 30, 2019 1:30 AM, "Joan Lluch via llvm-dev" <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank" class="">llvm-dev@lists.llvm.org</a>> wrote:<br type="attribution" class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="overflow-wrap: break-word;" class="">Hi Florian,<div class=""><br class=""></div><div class="">Ok, I ran this:</div><div class=""><br class=""></div><div class=""><div style="margin:0px;font-size:10px;line-height:normal;font-family:Monaco;background-color:rgb(255,255,255)" class=""><span style="font-variant-ligatures:no-common-ligatures" class="">cmake -S LLVM -DCMAKE_INSTALL_PREFIX=INSTALL -DLLVM_OPTIMIZED_TABLEGEN=On -G Xcode</span></div></div><div style="margin:0px;font-size:10px;line-height:normal;font-family:Monaco;background-color:rgb(255,255,255)" class=""><br class=""></div><div class=""><div class="">Compiled it again from clean, and the situation is worse than before. Incremental builds take an incredible amount of time stuck in running Tablegen scripts for all targets. Now this happens both in Release and Debug configurations. Just before this, at least Release compiled fine, but that’s no longer the case. </div><div class=""><br class=""></div><div class="">Any other suggestions?  What could actually cause this? </div><div class=""><br class=""></div><div class="">Thanks</div><div class="">John</div><div class=""> <br class=""><br class=""><br class=""><blockquote type="cite" class=""><div class="">On 29 Jun 2019, at 19:37, Florian Hahn <<a href="mailto:florian_hahn@apple.com" target="_blank" class="">florian_hahn@apple.com</a>> wrote:</div><br class=""><div class=""><div class="">Hi,<br class=""><br class=""><blockquote type="cite" class="">On Jun 29, 2019, at 18:26, Joan Lluch via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank" class="">llvm-dev@lists.llvm.org</a>> wrote:<br class=""><br class="">Hi all,<br class=""><br class="">On LLVM version 7.0.1, incremental builds are very fast for both Release and Debug. I’m compiling with Xcode<br class=""><br class="">I recently downloaded LLVM 9.0 from the LLVM-mirror Github repository and found that Incremental "Debug” builds take a ridiculously long time due to Tablegen taking ages (literally more than 10 minutes) to generate files. This makes it totally unusable for debug purposes. However, incremental ‘Release’ builds only take a few seconds.<br class=""><br class="">Why is that?. Any suggestions?.<br class=""></blockquote><br class=""><br class=""><br class="">You could give setting LLVM_OPTIMIZED_TABLEGEN a try (<a href="https://llvm.org/docs/CMake.html" target="_blank" class="">https://llvm.org/docs/CMake.html</a>).<br class=""><br class="">Cheers,<br class="">Florian</div></div></blockquote></div><br class=""></div></div><br class="">_______________________________________________<br class="">
LLVM Developers mailing list<br class="">
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank" class="">llvm-dev@lists.llvm.org</a><br class="">
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank" class="">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br class="">
<br class=""></blockquote></div></div>
</div></blockquote></div><br class=""></div></div></blockquote></div>
</div></blockquote></div><br class=""></div></body></html>