[Interest] Qt 5 LTO build on OS X 10.9 (and earlier)

René J. V. Bertin rjvbertin at gmail.com
Sat Sep 12 15:13:35 CEST 2015

Thiago Macieira wrote:

> Because we're talking about LTCG, which implies the compiler is run at the
> linking stage.

In any case it (clang) doesn't show up in the process list. Also, from what I 
understand clang stores some intermediate LLVM byte-code representation 
(probably the same language-agnostic code that's used by the llvm backend. I'm 
not sure if from there on one can still speak in terms of "invoking the 
compiler" but then that might be splitting hairs.

> It wouldn't show in ld's arguments. But it shows in the g++ arguments that
> will eventually run ld. ltcg.prf adds the compiler flags to QMAKE_LFLAGS.

It also shows in the argument when ld is invoked through clang++ . Still, the 
command doing the heavy lifting is ld, and it seems inefficient if that same 
command doesn't also generate/collect the debug info. There's no noticeable 
delay before or after ld is run (and some link commands are heavy and lengthy 
enough that I'd expect the collection of debug info to take a noticeable time if 
done before or after the optimisation+link operation).
Anyway, I'd better ask about this on an llvm ML.


More information about the Interest mailing list