On Fri, 2020-07-24 at 19:12 +0000, Artem Tim wrote: > Hi. In rare cases building packages with LTO producing binaries or libraries which have bigger size then if they have built without LTO. For example 'kitty' package: > > * with LTO: > - koji task https://koji.fedoraproject.org/koji/taskinfo?taskID=47762998 > 1.79 MB glfw-wayland.so > 1.99 MB glfw-x11.so > 4.78 MB fast_data_types.so > 8.56 MB total > > * no LTO > - koji https://koji.fedoraproject.org/koji/taskinfo?taskID=47769854 > 1.65 MB glfw-wayland.so > 1.84 MB glfw-x11.so > 4.51 MB fast_data_types.so > 8.00 MB total > > Difference is 7%. What we should do in such case? Should we disable LTO for such packages? Or there is still could be gains from faster code execution speed? I'd tend to leave LTO on, but it's totally your call. Without looking at the binaries, sources and compiler dumps I'd hazard a guess you're getting a lot of cross module inlining, but very little identical code folding. THe former tends to make things bigger, but faster. The latter tends to shrink code with little impact on runtime performance. Unfortunately comparing this stuff in an LTO world is much harder than in a non- LTO world. You can't just bisect it to a .o or function that's larger :( jeff > _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx