RFR: 8370438: Offer link time optimization support on library level [v5]
Matthias Baesken
mbaesken at openjdk.org
Wed Nov 5 16:09:53 UTC 2025
On Tue, 4 Nov 2025 16:49:06 GMT, Matthias Baesken <mbaesken at openjdk.org> wrote:
>> We currently have support for LTO (link time optimization) for Hotspot/libjvm, that can be enabled as a JVM feature.
>> But for other JDK native libs, we do not have support for this feature.
>> LTO and sometimes lead to faster and also in some cases smaller binaries, so support for this might be interesting also for other libs and not only libjvm.
>
> Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision:
>
> Use lto configure flags in hs build
Here are the lib sizes of libsplashscreen without / with lto for our toolchains at SAP (gcc 13.2.0, VS2022, Xcode 15.4)
jdk opt / opt+LTO
1.5M / 1.5M aix_ppc64/images/jdk/lib/libsplashscreen.so
304K / 220K linux_aarch64/images/jdk/lib/libsplashscreen.so
292K / 180K linux_alpine_x86_64/images/jdk/lib/libsplashscreen.so
376K / 228K linux_ppc64le/images/jdk/lib/libsplashscreen.so
288K / 176K linux_x86_64/images/jdk/lib/libsplashscreen.so
388K / 240K darwinaarch64/images/jdk/lib/libsplashscreen.dylib
304K / 196K darwinintel64/images/jdk/lib/libsplashscreen.dylib
204K / 204K windows x86_64/images/jdk/bin/splashscreen.dll
pdb / debuginfo size :
jdk opt / opt+LTO
1.4M / 984K linux_aarch64/images/jdk/lib/libsplashscreen.debuginfo
1.4M / 924K linux_alpine_x86_64/images/jdk/lib/libsplashscreen.debuginfo
1.4M / 976K linux_ppc64le/images/jdk/lib/libsplashscreen.debuginfo
1.4M / 924K linux_x86_64/images/jdk/lib/libsplashscreen.debuginfo
352K / 344K windows x86_64/images/jdk/bin/splashscreen.dll.pdb
-------------
PR Comment: https://git.openjdk.org/jdk/pull/27976#issuecomment-3492076027
More information about the client-libs-dev
mailing list