This is an archive of the discontinued LLVM Phabricator instance.

[Docs] Add Documentation on (Thin)LTO + PGO Build Configs
ClosedPublic

Authored by aidengrossman on Nov 12 2022, 5:26 PM.

Details

Summary

This patch adds documentation on the AdvancedBuilds page on how to do
PGO builds with (Thin)LTO with the currently undocumented (as far as I
can tell) PGO_INSTRUMENT_LTO option in the Clang PGO caches.

Diff Detail

Event Timeline

aidengrossman created this revision.Nov 12 2022, 5:26 PM
Herald added a project: Restricted Project. · View Herald TranscriptNov 12 2022, 5:26 PM
aidengrossman requested review of this revision.Nov 12 2022, 5:26 PM
Herald added a project: Restricted Project. · View Herald TranscriptNov 12 2022, 5:26 PM

Just adds some more documentation on a (at least what I assume would be) a decently common build configuration since the documentation on the specific flags in these caches is somewhat sparse. Also sets the stage for documenting a PGO/(Thin)LTO/BOLT optimized build, which also takes advantage of these flags as well.

sylvestre.ledru accepted this revision.Nov 13 2022, 12:55 AM

much better, thanks

btw, maybe explains what "cmake cache" means. it is used a bunch in this doc without defining it :)

This revision is now accepted and ready to land.Nov 13 2022, 12:55 AM

Added documentation on what a CMake cache is, along with where to
find them in the monorepo.

This revision was landed with ongoing or failed builds.Nov 13 2022, 10:58 PM
This revision was automatically updated to reflect the committed changes.
llvm/docs/AdvancedBuilds.rst
22

Perfect, merci!