lmi
[Top][All Lists]
Advanced

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

Re: [lmi] Treacherous gcc-10 defect


From: Vadim Zeitlin
Subject: Re: [lmi] Treacherous gcc-10 defect
Date: Mon, 1 Mar 2021 12:56:52 +0100

On Sat, 19 Dec 2020 20:46:20 +0000 Greg Chicares <gchicares@sbcglobal.net> 
wrote:

GC> On 12/19/20 7:37 PM, Vadim Zeitlin wrote:
GC> [...]
GC> > On Thu, 10 Dec 2020 23:14:10 +0000 Greg Chicares 
<gchicares@sbcglobal.net> wrote:
GC> > 
GC> > GC> On 12/10/20 1:26 PM, Greg Chicares wrote:
GC> > GC> [...a certain '-fno-omit-frame-pointer' testcase...]
GC> > GC> > succeeds with gcc-10, but fails with gcc-8. Accordingly, I'll
GC> > GC> > restrict the '-fomit-frame-pointer' workaround to
GC> > GC> > x86_64-w64-mingw32-gcc-8.x only, so that it doesn't propagate
GC> > GC> > to gcc-10 builds when we upgrade the compiler (very soon).
GC> > GC> 
GC> > GC> TL;DR: x86_64-w64-mingw32 gcc-10 seems to need '-fomit-frame-pointer'.
GC> > 
GC> >  This looks extraordinarily bad. I couldn't find any existing bug for this
GC> > in gcc bugzilla, do you think it would be worth spending time on providing
GC> > the minimal reproducible test case and reporting it?
GC> 
GC> Yes--provided, of course, that it's not too difficult.

 Bad news is that it was quite difficult (and now I more or less understand
why but, of course, I couldn't know this earlier when trying to reproduce
it) and so it did take quite some time. Good news is that not only we've
managed to produce a reasonable test case for it, but that the bug has just
been fixed in gcc, see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99234
which contains references to the commits in gcc-9, gcc-10 and master (i.e.
upcoming gcc 11) branches and so we should be able to use -fno-omit-fp
again with the next gcc 10 release and/or any gcc 11 version.

GC> This does seem to be a serious compiler defect, which greatly
GC> resembles one that they believe they've just recently fixed.

 It turns out that this was a completely different and, arguably, more
serious problem, with setup of SEH frames. But this bug was difficult to
see in practice because it could be hidden by a number of different and
superficially unrelated things.

 To conclude, the problem is fixed now, and even though I wish we could
have spent less time on it, at least this time wasn't wasted and resulted
in gcc improvement.

 Best regards,
VZ

Attachment: pgp6Q59RB89Ab.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]