[llvm-dev] RFC: LTO should use -disable-llvm-verifier
David Blaikie via llvm-dev
llvm-dev at lists.llvm.org
Mon Aug 31 07:58:44 PDT 2015
On Sun, Aug 30, 2015 at 1:03 PM, Sean Silva via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> On Sat, Aug 29, 2015 at 3:03 PM, Duncan P. N. Exon Smith via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>> The verifier takes ~5% of link time when using LTO. I think we
>> should add a `-disable-llvm-verifier` option to the LTO plugins, and
>> change the clang driver to pass the option through in release builds.
>> In asserts builds, the clang driver would not pass the option.
>> This would match the way the driver passes -disable-llvm-verifier to
>> Everyone on board?
> I would prefer to keep it on by default; in the cc1 case we know that the
> input was immediately produced by clang (so we have a pretty high
> confidence that it is correct), which is not the case in LTO.
> The verifier should be pretty much the cheapest of all passes. If it is
> taking 5%, then that means that we can be running a max of 20 passes,
Not quite sure I understand this conclusion - not all passes take similar
execution time (& especially not on larger inputs where they scale
differently, etc), right?
> which seems off (especially considering that some passes should be
> *enormously* more expensive, like codegen). Is 5% a number you measured in
> a profiler or an empirical difference when running with/without
> -disable-llvm-verifier? Do you have a breakdown of where that 5% is coming
> from? Is the number consistent across different programs (e.g. of different
> -- Sean Silva
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev