Re: Fedora 33 System-Wide Change proposal: CompilerPolicy Change

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2020-06-05 at 15:56 +0000, devel-request@xxxxxxxxxxxxxxxxxxxxxxx wrote:
> Send devel mailing list submissions to
> 	devel@xxxxxxxxxxxxxxxxxxxxxxx
> 
> To subscribe or unsubscribe via email, send a message with subject or
> body 'help' to
> 	devel-request@xxxxxxxxxxxxxxxxxxxxxxx
> 
> You can reach the person managing the list at
> 	devel-owner@xxxxxxxxxxxxxxxxxxxxxxx
> 
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of devel digest..."
> 
> Today's Topics:
> 
>    1. Re: Fedora 33 System-Wide Change proposal: CompilerPolicy Change
>       (Mark Wielaard)
>    2. Re: Fedora 33 System-Wide Change proposal: CompilerPolicy Change
>       (Josh Boyer)
>    3. Re: Fedora 33 System-Wide Change proposal: swap on zram
>       (Igor Raits)
>    4. Re: Fedora 33 System-Wide Change proposal: CompilerPolicy Change
>       (Jeff Law)
> 
> 
> ----------------------------------------------------------------------
> 
> Date: Fri, 05 Jun 2020 17:47:51 +0200
> From: Mark Wielaard <mjw@xxxxxxxxxxxxxxxxx>
> Subject: Re: Fedora 33 System-Wide Change proposal: CompilerPolicy
> 	Change
> To: law@xxxxxxxxxx, Development discussions related to Fedora
> 	<devel@xxxxxxxxxxxxxxxxxxxxxxx>
> Message-ID:
> 	<3c8151c120d43cfa33d1dae11ba1c2b4f6e16be9.camel@xxxxxxxxxxxxxxxxx>
> Content-Type: text/plain; charset="UTF-8"
> 
> Hi,
> 
> On Fri, 2020-06-05 at 09:25 -0600, Jeff Law wrote:
> > The LTO bytecode streams do not survive past any given package build.  ie,
> > they
> > are used within the build, then discarded.  They're not supposed to show up
> > in
> > any installed libraries.
> > 
> > Thus the fact that the two compilers use totally different LTO
> > representations
> > (and always will) is a non-issue here.
> 
> One issue I am concerned about here is debuginfo quality. GCC produced
> pretty bad debuginfo with LTO in older versions. The EarlyDebug work
> did make it usable. And we needed some work on the DARF consumers to
> correctly process GCC 10 LTO produced DWARF (I actually have two small
> patches for elfutils pending so it correctly parses the cross CU-
> references GCC 10 LTO now produces).
> 
> I don't know if anybody did any analysis on llvm LTO produced
> debuginfo. In the past it was observed that llvm doesn't do VTA (Var
> Tracking Assignments) that is default in GCC. And VTA is really
> important for debugging and performance/tracing tools like systemtap.
> So even without LTO I am concerned about the observability of llvm
> generated binaries.
And these are reasonable concerns (even more so in an LTO world and I expect I'll
be spending most of my summer poking at debuginfo stuff for GCC LTO :-).

IMHO this is one of the issues an upstream project needs to evaluate for their
toolchain choice -- no different than performance, diagnostics, sanitizer
support, plug-in support, etc etc.  The level of observability needed by any
particular upstream project can vary.  ie, the kernel may well have different
needs than the Ruby interpreter.

I have not done any evaluation of LLVM's debug info.  I would not be surprised if
GCC is generally better, particularly with Alex's work over the last couple
years.  But again, I think the upstream project is in the best position to
determine how to balance this against the other factors in toolchain selection.

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




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux