public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Dave Blanchard <dave@killthe.net>
To: gcc@gcc.gnu.org
Cc: Jingwen Wu <elowen.jjw@gmail.com>
Subject: Re: issue: unexpected results in optimizations
Date: Mon, 11 Dec 2023 11:31:46 -0600	[thread overview]
Message-ID: <20231211113146.f1659950e14a4342b42e1bd6@killthe.net> (raw)
In-Reply-To: <CAJAwgAxf9SE2YjE7d_ewiVFcctxKHe-U+ehdUOWTQWSceO+6eg@mail.gmail.com>

Hi Jingwen,

This is the same GCC which in recent versions produces something like two dozen extraneous, useless, no-op instructions when doing a simple 64-bit math operation on 32-bit systems, and does not use SSE properly either. In each major release these problems get worse. The code generator is clearly in a state of slow degradation, starting about GCC version 5 or 6--not coincidentally the same time when the major version numbers started increasingly so rapidly, although it really has been junk since the beginning.

Stefan Kanthak hammered this point home numerous times on this list, much to the ire of people like Jonathan Wakely who called him a noob, telling him to "go file a bug" in a filing cabinet in some obscure corner of a disused lavatory so that it can be safely ignored, and so on. 

It seems that if correct code generation and optimization is important to you (as it should be), GCC is NOT the compiler to be using. I'm all the time discovering new and crazy problems with this convoluted pile of junk. My recent foray into bootstrapping GNAT (ADA) has opened up yet another can of worms. It's broken on GCC 10, and even more broken on GCC 9, and this despite 30+ years of development. 

Sometimes these days I even blame GCC when it wasn't at fault after all, because it's making itself into more and more of a likely suspect as the years go by.

I haven't examined the code output of Clang to see how it compares, but it's worth serious investigation. 

Dave

  reply	other threads:[~2023-12-11 17:28 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-11 17:07 Jingwen Wu
2023-12-11 17:31 ` Dave Blanchard [this message]
2023-12-12  8:29   ` Jonathan Wakely
2023-12-12  9:02 ` Jonathan Wakely
2023-12-12 11:08   ` Alexander Monakov
  -- strict thread matches above, loose matches on Subject: below --
2023-12-11 17:14 Jingwen Wu
2023-12-12  8:39 ` David Brown
2023-12-13 18:49   ` James K. Lowden
2023-12-11 17:05 Jingwen Wu
2023-12-11 16:51 Jingwen Wu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231211113146.f1659950e14a4342b42e1bd6@killthe.net \
    --to=dave@killthe.net \
    --cc=elowen.jjw@gmail.com \
    --cc=gcc@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).