[PATCH] D58391: [TailCallElim] Add tailcall elimination pass to LTO Pipelines

Teresa Johnson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Feb 24 08:53:01 PST 2019


tejohnson added a comment.

In D58391#1403188 <https://reviews.llvm.org/D58391#1403188>, @efriedma wrote:

> What's the general state of the LTO pipeline at this point?  PassManagerBuilder::addLTOOptimizationPasses is adding passes in a really weird order (in particular, the placement of the inliner is really strange).  Has anyone looked at it recently?  Would it be worth killing it off in favor of the ThinLTO pipeline just so we don't have to maintain it?


The reason they don't use the same pipeline is that it would be too expensive for regular LTO mode which is serial. ThinLTO can use a more aggressive post-link pipeline due to the parallelism. Mehdi did some measurements a couple years ago and found that using the ThinLTO pipeline for regular LTO increases the compile time in that mode significantly.

Regarding this patch, the change seems reasonable but I suppose any new addition to the regular LTO pipeline needs to consider the compile time vs performance tradeoff. If this patch is not too expensive then IMO it is fine to add.


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D58391/new/

https://reviews.llvm.org/D58391





More information about the llvm-commits mailing list