public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/103316] New: PowerPC: Gimple folding of int128 comparisons produces suboptimal code
@ 2021-11-18 15:59 wschmidt at gcc dot gnu.org
  2021-11-18 16:00 ` [Bug target/103316] " wschmidt at gcc dot gnu.org
                   ` (18 more replies)
  0 siblings, 19 replies; 20+ messages in thread
From: wschmidt at gcc dot gnu.org @ 2021-11-18 15:59 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103316

            Bug ID: 103316
           Summary: PowerPC: Gimple folding of int128 comparisons produces
                    suboptimal code
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: wschmidt at gcc dot gnu.org
  Target Milestone: ---

While working on replacing the old builtins infrastructure for the rs6000 back
end, I observed that we generate poor code for 128-bit comparisons if we enable
gimple folding on such builtins.  These included (old internal names):

  P10V_BUILTIN_VCMPEQUT
  P10V_BUILTIN_CMPNET
  P10V_BUILTIN_CMPGE_1TI
  P10V_BUILTIN_CMPGE_U1TI
  P10V_BUILTIN_VCMPGTUT
  P10V_BUILTIN_VCMPGTST
  P10V_BUILTIN_CMPLE_1TI
  P10V_BUILTIN_CMPLE_U1TI

I disabled gimple folding for these with the new support, but we need to look
into why we generated bad code here.  I suspect it's something as simple as
missing optab entries.

This isn't a regression, just a potential improvement.

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2022-06-16  9:02 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-18 15:59 [Bug target/103316] New: PowerPC: Gimple folding of int128 comparisons produces suboptimal code wschmidt at gcc dot gnu.org
2021-11-18 16:00 ` [Bug target/103316] " wschmidt at gcc dot gnu.org
2021-11-19  7:35 ` rguenth at gcc dot gnu.org
2021-11-19  8:19 ` segher at gcc dot gnu.org
2021-11-19 13:53 ` wschmidt at gcc dot gnu.org
2021-11-19 13:54 ` wschmidt at gcc dot gnu.org
2021-11-19 14:07 ` wschmidt at gcc dot gnu.org
2021-11-19 14:12 ` segher at gcc dot gnu.org
2021-11-19 14:19 ` rguenth at gcc dot gnu.org
2021-11-19 14:21 ` segher at gcc dot gnu.org
2021-11-19 14:23 ` segher at gcc dot gnu.org
2021-11-19 17:09 ` wschmidt at gcc dot gnu.org
2021-11-19 17:11 ` wschmidt at gcc dot gnu.org
2021-11-19 17:34 ` segher at gcc dot gnu.org
2021-11-19 17:36 ` segher at gcc dot gnu.org
2021-11-19 17:42 ` wschmidt at gcc dot gnu.org
2022-03-07  2:24 ` guihaoc at gcc dot gnu.org
2022-03-07 20:07 ` segher at gcc dot gnu.org
2022-06-16  8:59 ` cvs-commit at gcc dot gnu.org
2022-06-16  9:02 ` guihaoc at gcc dot gnu.org

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).