public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/110039] New: FAIL: gcc.target/aarch64/rev16_2.c scan-assembler-times rev16\\tw[0-9]+ 2
@ 2023-05-30 12:49 ktkachov at gcc dot gnu.org
  2023-05-30 12:49 ` [Bug target/110039] [14 Regression] " ktkachov at gcc dot gnu.org
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: ktkachov at gcc dot gnu.org @ 2023-05-30 12:49 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 110039
           Summary: FAIL: gcc.target/aarch64/rev16_2.c
                    scan-assembler-times rev16\\tw[0-9]+ 2
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Keywords: missed-optimization
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ktkachov at gcc dot gnu.org
  Target Milestone: ---
            Target: aarch64

I think after g:d8545fb2c71683f407bfd96706103297d4d6e27b the test regresses on
aarch64.
We now generate:
__rev16_32_alt:
        rev     w0, w0
        ror     w0, w0, 16
        ret

__rev16_32:
        rev     w0, w0
        ror     w0, w0, 16
        ret

whereas before it was:
__rev16_32_alt:
        rev16   w0, w0
        ret

__rev16_32:
        rev16   w0, w0
        ret

I think the GIMPLE at expand time is better and the RTL that it tries to match
is simpler:
Failed to match this instruction:
(set (reg:SI 95)
    (rotate:SI (bswap:SI (reg:SI 96))
        (const_int 16 [0x10])))

So maybe it's simply a matter of adding that pattern to aarch64.md.

Anyway, filing this here to track the regression

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

* [Bug target/110039] [14 Regression] FAIL: gcc.target/aarch64/rev16_2.c scan-assembler-times rev16\\tw[0-9]+ 2
  2023-05-30 12:49 [Bug target/110039] New: FAIL: gcc.target/aarch64/rev16_2.c scan-assembler-times rev16\\tw[0-9]+ 2 ktkachov at gcc dot gnu.org
@ 2023-05-30 12:49 ` ktkachov at gcc dot gnu.org
  2023-05-31  6:53 ` rsandifo at gcc dot gnu.org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: ktkachov at gcc dot gnu.org @ 2023-05-30 12:49 UTC (permalink / raw)
  To: gcc-bugs

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

ktkachov at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |14.0

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

* [Bug target/110039] [14 Regression] FAIL: gcc.target/aarch64/rev16_2.c scan-assembler-times rev16\\tw[0-9]+ 2
  2023-05-30 12:49 [Bug target/110039] New: FAIL: gcc.target/aarch64/rev16_2.c scan-assembler-times rev16\\tw[0-9]+ 2 ktkachov at gcc dot gnu.org
  2023-05-30 12:49 ` [Bug target/110039] [14 Regression] " ktkachov at gcc dot gnu.org
@ 2023-05-31  6:53 ` rsandifo at gcc dot gnu.org
  2023-05-31 13:27 ` cvs-commit at gcc dot gnu.org
  2023-05-31 13:27 ` clyon at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: rsandifo at gcc dot gnu.org @ 2023-05-31  6:53 UTC (permalink / raw)
  To: gcc-bugs

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

rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rsandifo at gcc dot gnu.org

--- Comment #1 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> ---
I guess adding an extra pattern means that we'll have three forms
for this (on top of the existing alt1 and alt2 patterns).  But that
probably can't be helped given that the DI form has presumably not
changed.

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

* [Bug target/110039] [14 Regression] FAIL: gcc.target/aarch64/rev16_2.c scan-assembler-times rev16\\tw[0-9]+ 2
  2023-05-30 12:49 [Bug target/110039] New: FAIL: gcc.target/aarch64/rev16_2.c scan-assembler-times rev16\\tw[0-9]+ 2 ktkachov at gcc dot gnu.org
  2023-05-30 12:49 ` [Bug target/110039] [14 Regression] " ktkachov at gcc dot gnu.org
  2023-05-31  6:53 ` rsandifo at gcc dot gnu.org
@ 2023-05-31 13:27 ` cvs-commit at gcc dot gnu.org
  2023-05-31 13:27 ` clyon at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-05-31 13:27 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Christophe Lyon <clyon@gcc.gnu.org>:

https://gcc.gnu.org/g:070d651c6db37c3658be0a5274f44265045428e6

commit r14-1437-g070d651c6db37c3658be0a5274f44265045428e6
Author: Christophe Lyon <christophe.lyon@linaro.org>
Date:   Wed May 31 09:23:16 2023 +0000

    aarch64: Add pattern for bswap + rotate [PR 110039]

    After commit g:d8545fb2c71683f407bfd96706103297d4d6e27b, we missed a
    pattern to match the new GIMPLE form.

    With this patch, gcc.target/aarch64/rev16_2.c passes again.

    2023-05-31  Christophe Lyon  <christophe.lyon@linaro.org>

            PR target/110039
            gcc/
            * config/aarch64/aarch64.md (aarch64_rev16si2_alt3): New
            pattern.

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

* [Bug target/110039] [14 Regression] FAIL: gcc.target/aarch64/rev16_2.c scan-assembler-times rev16\\tw[0-9]+ 2
  2023-05-30 12:49 [Bug target/110039] New: FAIL: gcc.target/aarch64/rev16_2.c scan-assembler-times rev16\\tw[0-9]+ 2 ktkachov at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2023-05-31 13:27 ` cvs-commit at gcc dot gnu.org
@ 2023-05-31 13:27 ` clyon at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: clyon at gcc dot gnu.org @ 2023-05-31 13:27 UTC (permalink / raw)
  To: gcc-bugs

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

Christophe Lyon <clyon at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |FIXED

--- Comment #3 from Christophe Lyon <clyon at gcc dot gnu.org> ---
Fixed.

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

end of thread, other threads:[~2023-05-31 13:27 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-30 12:49 [Bug target/110039] New: FAIL: gcc.target/aarch64/rev16_2.c scan-assembler-times rev16\\tw[0-9]+ 2 ktkachov at gcc dot gnu.org
2023-05-30 12:49 ` [Bug target/110039] [14 Regression] " ktkachov at gcc dot gnu.org
2023-05-31  6:53 ` rsandifo at gcc dot gnu.org
2023-05-31 13:27 ` cvs-commit at gcc dot gnu.org
2023-05-31 13:27 ` clyon 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).