mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
9bce9489e7
This change introduces an LLD switch --thinlto-single-module to allow compiling only a part of the input modules. This is specifically enables: 1. Fast investigating/debugging modules of interest without spending time on compiling unrelated modules. 2. Compiler debug dump with -mllvm -debug-only= for specific modules. It will be useful for large applications which has 1K+ input modules for thinLTO. The switch can be combined with `--lto-obj-path=` or `--lto-emit-asm` to obtain intermediate object files or assembly files. So far the module name matching is implemented as a fuzzy name lookup where the modules with name containing the switch value are compiled. E.g, Command: ld.lld main.o thin.a --thinlto-single-module=thin.a --lto-obj-path=single.o log: [ThinLTO] Selecting thin.a(thin1.o at 168) to compile [ThinLTO] Selecting thin.a(thin2.o at 228) to compile Command: ld.lld main.o thin.a --thinlto-single-module=thin1.o --lto-obj-path=single.o log: [ThinLTO] Selecting thin.a(thin1.o at 168) to compile Differential Revision: https://reviews.llvm.org/D80406 |
||
---|---|---|
.. | ||
Caching.cpp | ||
CMakeLists.txt | ||
LLVMBuild.txt | ||
LTO.cpp | ||
LTOBackend.cpp | ||
LTOCodeGenerator.cpp | ||
LTOModule.cpp | ||
SummaryBasedOptimizations.cpp | ||
ThinLTOCodeGenerator.cpp | ||
UpdateCompilerUsed.cpp |