llvm-project/llvm/lib/LTO
Jin Xin Ng 22f1273357
[ThinLTO][ELF] Add --thinlto-emit-index-files option
Allows ThinLTO indices to be written to disk on-the-fly/as-part-of “normal” linker execution. Previously ThinLTO indices could be written via --thinlto-index-only but that would cause the linker to exit early. For MLGO specifically, this enables saving the ThinLTO index files without having to restart the linker to collect data only available at later stages (i.e. output of --save-temps) of the linker's execution.

Note, this option does not currently work with:
--thinlto-object-suffix-replace, as this is intended to be used to consume minimized IR bitcode files while --thinlto-emit-index-files is intended to be run together with InProcessThinLTO (which cannot parse minimized IR).
--thinlto-prefix-replace  support is left unimplemented but can be implemented if needed

Differential Revision: https://reviews.llvm.org/D127777
2022-06-23 12:35:42 -07:00
..
CMakeLists.txt [Support][ThinLTO] Move ThinLTO caching to LLVM Support library 2021-10-18 18:57:25 -07:00
LTO.cpp [ThinLTO][ELF] Add --thinlto-emit-index-files option 2022-06-23 12:35:42 -07:00
LTOBackend.cpp [iwyu] Handle regressions in libLLVM header include 2022-04-13 20:53:19 +02:00
LTOCodeGenerator.cpp [config] Remove vestigial LLVM_VERSION_INFO 2022-06-07 11:36:26 -07:00
LTOModule.cpp [llvm] Use = default (NFC) 2022-02-06 22:18:35 -08:00
SummaryBasedOptimizations.cpp Apply clang-tidy fixes for readability-redundant-smartptr-get in SummaryBasedOptimizations.cpp (NFC) 2022-03-28 09:18:31 -07:00
ThinLTOCodeGenerator.cpp [iwyu] Handle regressions in libLLVM header include 2022-04-13 20:53:19 +02:00
UpdateCompilerUsed.cpp