[llvm] r256302 - Disable use list order on the gold plugin.

David Blaikie via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 12 15:48:05 PST 2016


On Tue, Jan 12, 2016 at 2:48 PM, Duncan P. N. Exon Smith <
dexonsmith at apple.com> wrote:

>
> > On 2016-Jan-12, at 14:06, David Blaikie <dblaikie at gmail.com> wrote:
> >
> >
> >
> > On Tue, Dec 22, 2015 at 3:45 PM, Rafael Espindola via llvm-commits <
> llvm-commits at lists.llvm.org> wrote:
> > Author: rafael
> > Date: Tue Dec 22 17:45:49 2015
> > New Revision: 256302
> >
> > URL: http://llvm.org/viewvc/llvm-project?rev=256302&view=rev
> > Log:
> > Disable use list order on the gold plugin.
> >
> > Duncan - I thought in the end the use-list preservetion ended up as
> opt-in and only the LLVM dev tools (llc, opt, etc) were opting in to
> use-list preservation. Did I misunderstand/mis-recall how that all went?
> Did this case just get missed? Are there any other cases we should double
> check?
>
> Either I or someone else must have assumed that saveBCFile() was only
> used when trying to reproduce problems in LTO -- i.e., a non-production
> workflow, where reproducibility is most important.
>
> That might even be a valid assumption, but Rafael doesn't think it's
> worth the extra time?
>

Right, seems I might've just assumed since Rafael was worrying about the
perf that it was for some kind of production use - but based on Mehdi's
comment that's not necessarily true.

I'll leave it to you guys to hack out & I'll go back to lurking/reading the
thread.


>
> > It turns out that his is *really* slow. With this change the link of
> > clang with plugin-opt=emit-llvm goes from 41 to 26 seconds.
>
> Rafael, are you saying the full LTO optimization pipeline only takes 26
> seconds on clang!?  (What am I missing?)
>
> > We can add an option to enable it again if needed.
> >
> > Modified:
> >     llvm/trunk/tools/gold/gold-plugin.cpp
> >
> > Modified: llvm/trunk/tools/gold/gold-plugin.cpp
> > URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/gold/gold-plugin.cpp?rev=256302&r1=256301&r2=256302&view=diff
> >
> ==============================================================================
> > --- llvm/trunk/tools/gold/gold-plugin.cpp (original)
> > +++ llvm/trunk/tools/gold/gold-plugin.cpp Tue Dec 22 17:45:49 2015
> > @@ -756,7 +756,7 @@ static void saveBCFile(StringRef Path, M
> >    raw_fd_ostream OS(Path, EC, sys::fs::OpenFlags::F_None);
> >    if (EC)
> >      message(LDPL_FATAL, "Failed to write the output file.");
> > -  WriteBitcodeToFile(&M, OS, /* ShouldPreserveUseListOrder */ true);
> > +  WriteBitcodeToFile(&M, OS, /* ShouldPreserveUseListOrder */ false);
> >  }
> >
> >  static void codegen(std::unique_ptr<Module> M) {
> >
> >
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at lists.llvm.org
> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160112/74d9aa2f/attachment.html>


More information about the llvm-commits mailing list