On 4/25/19 9:23 AM, Thorsten Kukuk wrote:
Hi,
On Tue, Apr 23, Martin Liška wrote:
LTO stands for Link Time Optimization and it is a GCC optimization technique that improves speed and reduces size of binaries. According to our measurements, ELF binaries will be about 5% smaller and debug info packages by 15%. Now, there are various interesting packages that have been LTO in Factory right now: libreoffice, MozillaFirefox, python3, gcc9.
If I read that LTO doesn't work with symbol versioning, isn't then introducing LTO contra productive?
No. Right now we're talking about 15-20 packages that use symbol versioning (out of ~3000). Moreover, LTO is the most beneficial for executables of a reasonable size where scope of exported symbols is limited. On the contrary, libraries have a lot of symbols (functions) exported. Note that we're planning to add support for symber in next GCC release.
We need much more shared libraries with symbol versioning then less or LTO ...
Yes. Martin
Thorsten
-- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org