On Wed, 07 Oct 2020 00:46:24 +0200, Jeff Law wrote: > On 9/30/20 3:50 AM, Jan Kratochvil wrote: > > On Wed, 30 Sep 2020 01:31:29 +0200, Jeff Law wrote: > >> But the GCC community > >> doesn't really test that option and it's known to be broken with LTO. > > I haven't seen any GCC PR for -fdebug-types-section being broken with LTO. > > I'm not aware of one either. But as Jakub has previously pointed out > debug-types-section is disabled when LTO is enabled. I don't know the > details of why that is done. Because Jakub made a mistake and he still has not corrected himself. I have explained it in: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/2HIK25T3MHP7D6LC5CDJNINP3ZEO7RPW/ If -fdebug-types-section was disabled in LTO mode then there would not be 6.78% vs. 31.23% difference of Fedora mass rebuild of -fdebug-types-section vs. -fno-debug-types-section. https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/J34DKZK7MWH725CMCS5YLVZ77YURSMRZ/ Also this simple example shows it is not true: c="static struct C{int a;C(){}} v;";o="-Wall -gdwarf-5 -fdebug-types-section -flto -O2";echo "$c"|gcc -c -o 1.o $o -x c++ -;echo "${c}int main(){}"|gcc -c -o 2.o $o -x c++ -;gcc -o 1 1.o 2.o $o;llvm-dwarfdump 1|grep DW_UT_type 0x00000042: Type Unit: length = 0x0000005b version = 0x0005 unit_type = DW_UT_type abbr_offset = 0x0023 addr_size = 0x08 name = 'C' type_signature = 0x4e76c0dda193eb61 type_offset = 0x0026 (next unit at 0x000000a1) > >> So the only paths forward I see are to either fix -fdebug-types-section or > >> improve dwz. > > And obviously much easier is to fix -fdebug-types-section than DWZ (if there > > are really any bugs in -fdebug-types-section, there are known bugs nobody > > wants to fix in DWZ). > > I think you're making an unsubstantiated leap here. Neither of us know > what's wrong with GCC LTO and debug-types-section I know what - nothing! Although sure the problem is GCC as its LTO still produces -fdebug-types-section at all. clang LTO ignores -fdebug-types-section as clang already does the DWZ-style class unification itself during lld phase. This discussion and the state of GCC vs. clang shows me that getting rid of DWZ is less important and as it is more productive for Fedora to rather get rid of GCC with DWZ altogether. > and others are working on dwz. That is their problem. I am trying to work on things that make sense (but I cannot). > > When we start talking about RHEL (and CentOS) DWZ is completely pointless then > > as DWZ there saves only 0.28% of *-debuginfo.rpm (20MB of 7.2GB). > > Therefore approx. 0.14% of the distribution size. > > Umm, we're fighting with PM these days over things in the 10M range. So it is better to slow down getting a finally usable debugger by years to save 10MB of distro size? I really do not believe that. :-) > Most customers don't use dwz. But they consume its output for the RPMs > that we provide. They cannot because the LLVM tools Red Hat ships still do not support DWZ. Jan _______________________________________________ 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