<div dir="ltr"><div dir="ltr">On Tue, Nov 26, 2019 at 10:46 AM Keane, Erich via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">





<div lang="EN-US">
<div class="gmail-m_7928059279607585771WordSection1">
<p class="MsoNormal">I believe it is pretty clear that the stock ld linker is basically unusable for our project without a sizable amount of hardware.  I’ve typically found that using gold or lld fixes this problem entirely.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Perhaps we need to start having CMake detect the presence of lld and use that if possible, else check for ‘gold’ and use it if possible, and only THEN fall back on ld.</p></div></div></blockquote><div><br></div><div>+1, we should probably emit a warning if we have to fall back to ld.bfd. It's basically non-functional for large C++ apps.<br></div><div>  </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_7928059279607585771WordSection1"><p class="MsoNormal"><u></u></p>
<p class="MsoNormal">Additionally, it is pretty rare for someone to need to debug TableGen (at least in my experience), and if they DO need it, they would know enough to know how to change the cmake variable.  I think we should have a serious discussion about
 making LLVM_OPTIMIZED_TABLEGEN=true be default.</p></div></div></blockquote><div><br></div><div>If you are doing a release build already (my workflow), this represents a lot of additional overhead: second cmake config step, separate ninja subbuild. But if you are doing a debug build, it's clearly better, and there is no easy alternative. What do you think about enabling it for multi-config generators and single-config debug builds, so single-config release builds are not affected? I'd be in favor.</div></div></div>