On Mon, 2020-08-31 at 09:17 +0200, Bob Mauchin wrote: > > > On Mon, Aug 31, 2020, 05:32 Jeff Law <law@xxxxxxxxxx> wrote: > > On Sun, 2020-08-30 at 14:42 +0200, Igor Raits wrote: > > > On Sun, 2020-08-30 at 12:37 +0100, Tomasz Kłoczko wrote: > > > > On Fri, 24 Jul 2020 at 21:31, Igor Raits < > > > > ignatenkobrain@xxxxxxxxxxxxxxxxx> > > > > wrote: > > > > [..] > > > > > > > > > Well, I tell what I see :) > > > > > > > > > > Compiling kitty with settings below produces this big > > > > > /usr/lib64/kitty/kitty/fast_data_types.so: > > > > > > > > > > * Without any LTO-related flags: 4.52 MB > > > > > * With -flto: 4.30 MB > > > > > * With -flto -ffat-lto-objects: 4.79 MB > > > > > > > > > > Well, I did not run compilation multiple times but don't think it > > > > > will > > > > > change much. > > > > > > > > > > > > > Comparing the size of the executable files does not make any sense. > > > > You should use the "size" command. > > > > > > Well, I'd use `size` command if I would care what section of a file > > > takes what size. In this case, I don't really care which section it is. > > > > > > All I care is that with -ffat-lto-objects, binary becomes bigger. > > Given this isn't a correctness issue, I haven't prioritized it. > > > > A quick look tells me all the difference is in the symbol table -- ie, the code, > > data and bss sections are the same size, but the symbol table is significantly > > larger. And AFAICT it's all debug symbols. > > > > In fact, it doesn't look like the debug info was stripped at all: > > > > [law@localhost kitty]$ objdump -h fast_data_types.so > > > > fast_data_types.so: file format elf64-x86-64 > > [ ... ] > > 26 .debug_aranges 000001e0 0000000000000000 0000000000000000 000e2b64 2**0 > > CONTENTS, READONLY, DEBUGGING, OCTETS > > 27 .debug_info 000e60c7 0000000000000000 0000000000000000 000e2d44 2**0 > > CONTENTS, READONLY, DEBUGGING, OCTETS > > 28 .debug_abbrev 00007543 0000000000000000 0000000000000000 001c8e0b 2**0 > > CONTENTS, READONLY, DEBUGGING, OCTETS > > 29 .debug_line 0007644f 0000000000000000 0000000000000000 001d034e 2**0 > > CONTENTS, READONLY, DEBUGGING, OCTETS > > 30 .debug_str 0005cab8 0000000000000000 0000000000000000 0024679d 2**0 > > CONTENTS, READONLY, DEBUGGING, OCTETS > > 31 .debug_loc 000d6477 0000000000000000 0000000000000000 002a3255 2**0 > > CONTENTS, READONLY, DEBUGGING, OCTETS > > 32 .debug_ranges 0003a000 0000000000000000 0000000000000000 003796cc 2**0 > > CONTENTS, READONLY, DEBUGGING, OCTETS > > 33 .debug_macro 0002b64f 0000000000000000 0000000000000000 003b36cc 2**0 > > CONTENTS, READONLY, DEBUGGING, OCTETS > > > > > > So someone needs to figure out why debug symbols aren't being stripped. I > > manually stripped the bits in kitty and after doing so the sizes of the resultant > > DSOs are the same (as I'd expect them to be) across the two builds. > > > > jeff > > Is the file permission 0755? This is often a permission problem I encounter while reviewing. It is, but I'm not sure that's the core issue. brp-strip explictly filters out DSOs, so it won't strip the .so files. We have brp-strip-shared, but its never called AFAICT. I'm not sure what folks want to do here, but it's clearly broken and really doesn't have anything to do with LTO. 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