[all-commits] [llvm/llvm-project] e235fc: [BOLT] Only link and initialize supported targets ...
Nikita Popov via All-commits
all-commits at lists.llvm.org
Tue Feb 18 00:18:13 PST 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: e235fcb582eec5f58c905b66f96d0732d17b875e
https://github.com/llvm/llvm-project/commit/e235fcb582eec5f58c905b66f96d0732d17b875e
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-02-18 (Tue, 18 Feb 2025)
Changed paths:
M bolt/CMakeLists.txt
A bolt/include/bolt/Core/TargetConfig.def.in
M bolt/tools/binary-analysis/CMakeLists.txt
M bolt/tools/binary-analysis/binary-analysis.cpp
M bolt/tools/driver/CMakeLists.txt
M bolt/tools/driver/llvm-bolt.cpp
M bolt/tools/heatmap/CMakeLists.txt
M bolt/tools/heatmap/heatmap.cpp
M bolt/tools/llvm-bolt-fuzzer/CMakeLists.txt
M bolt/tools/llvm-bolt-fuzzer/llvm-bolt-fuzzer.cpp
M bolt/unittests/Core/BinaryContext.cpp
M bolt/unittests/Core/CMakeLists.txt
M bolt/unittests/Core/MCPlusBuilder.cpp
M bolt/unittests/Core/MemoryMaps.cpp
Log Message:
-----------
[BOLT] Only link and initialize supported targets (#127509)
Bolt currently links and initializes all LLVM targets. This
substantially increases the binary size, and link time if LTO is used.
Instead, only link the targets specified by BOLT_TARGETS_TO_BUILD. We
also have to only initialize those targets, so generate a
TargetConfig.def file with the necessary information. The way the
initialization is done mirrors what llvm-exegesis does.
This reduces llvm-bolt size from 137MB to 78MB for me.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list