]> git.ipfire.org Git - thirdparty/bind9.git/commit
Add named-lto option to meson build to named with LTO
authorAlessio Podda <alessio@isc.org>
Thu, 17 Jul 2025 04:51:36 +0000 (06:51 +0200)
committerOndřej Surý <ondrej@isc.org>
Wed, 24 Sep 2025 11:19:37 +0000 (13:19 +0200)
commitd45a3920866e45a6093b0fbca3e232a3cda775ef
tree7115b883455abb345946572cb45fc75b5373810c
parent6e7aec2cb7de4bb5584f7cc80aa5454ad7dbf93d
Add named-lto option to meson build to named with LTO

Enabling LTO yields substantial performance gains on both authoritative
and resolver benchmarks.
But since LTO defers many optimization passes to link time, enabling LTO
across the board would cause an increase in compilation time, as passes
that would be run only once would need to be run for each executable.

As a compromise, this commit adds a named-lto build option, that
compiles the individual object files with the -ffat-lto-object option
and then enables LTO only for the named executable. Object files are
reused between lib*.so and the named executable.
.gitlab-ci.yml
ci/clang-trixie.ini [new file with mode: 0644]
doc/arm/build.inc.rst
meson.build
meson_options.txt