[PATCH] D146776: [llvm] Preliminary fat-lto-objects support

Teresa Johnson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 26 08:25:18 PDT 2023


tejohnson added a comment.

In D146776#4297327 <https://reviews.llvm.org/D146776#4297327>, @paulkirth wrote:

> @tejohnson Do you have any thoughts here regarding the pipeline or other shortcomings this approach may have?

Sorry for missing the earlier ping. I have some concerns about invoking just the ThinLTO prelink pipeline + the module optimization pipeline. Specifically, afaict this only invokes the module simplification pipeline once, with Phase == ThinLTOPreLink. If you search through buildModuleSimplificationPipeline for Phase, you will see there are certain things we only do if we are in the post link phase, or if we are not in the pre-link phase. We will miss out on some optimizations if we never invoke this again with a post link phase. For example, with SamplePGO, we only do indirect call promotion in the post link phase. We will miss out on ICP completely by never setting up the module simplification pipeline again with a post link phase. There are other examples, and additional ones if you look down into the inliner pipeline setups invoked from here and passed the phase.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D146776



More information about the llvm-commits mailing list