On Wed, 12 Nov 2025 15:46:09 GMT, Matthias Baesken <[email protected]> wrote:

>> Identical code folding can reduce the size of some libs, especially libjvm. 
>> However not all linkers support the flag/feature so we have to limit it to 
>> some environments.
>> See for example this manpage :
>> https://manpages.debian.org/testing/lld-7/ld.lld-7.1
>> 
>> 
>> sizes of libjvm.so with / without -icf=all
>> linux aarch64 : 25888 / 27112 K
>> linux x86_64 : 27952 / 29072 K
>> 
>> 
>> (for most other native libs the identical code folding has no effect, 
>> because there is nothing to fold)
>
> Matthias Baesken has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Limit icf to release builds

Something similar seems to be used already for MSVC
https://github.com/openjdk/jdk/blob/56a27d11971d935e8b28ac9d701cf9890014a949/make/autoconf/flags-ldflags.m4#L89
`BASIC_LDFLAGS_JVM_ONLY="-opt:icf,8 -subsystem:windows"`

See the icf doc at 
https://learn.microsoft.com/en-us/cpp/build/reference/opt-optimizations?view=msvc-170

-------------

PR Comment: https://git.openjdk.org/jdk/pull/28236#issuecomment-3522621671

Reply via email to