public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/101755] New: [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637
@ 2021-08-03 15:27 clyon at gcc dot gnu.org
  2021-08-03 15:27 ` [Bug tree-optimization/101755] " clyon at gcc dot gnu.org
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: clyon at gcc dot gnu.org @ 2021-08-03 15:27 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 101755
           Summary: [12 regression] gcc.target/arm/reg_equal_test.c fails
                    on arm since r12-2637
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: clyon at gcc dot gnu.org
  Target Milestone: ---

Since r12-2637, I've noticed a regression on arm:
FAIL: gcc.target/arm/reg_equal_test.c scan-rtl-dump expand "expr_list:REG_EQUAL
\\(const_int -942519458"

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

* [Bug tree-optimization/101755] [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637
  2021-08-03 15:27 [Bug tree-optimization/101755] New: [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637 clyon at gcc dot gnu.org
@ 2021-08-03 15:27 ` clyon at gcc dot gnu.org
  2021-08-09 21:02 ` amacleod at redhat dot com
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: clyon at gcc dot gnu.org @ 2021-08-03 15:27 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |arm
   Target Milestone|---                         |12.0
                 CC|                            |amacleod at redhat dot com

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

* [Bug tree-optimization/101755] [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637
  2021-08-03 15:27 [Bug tree-optimization/101755] New: [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637 clyon at gcc dot gnu.org
  2021-08-03 15:27 ` [Bug tree-optimization/101755] " clyon at gcc dot gnu.org
@ 2021-08-09 21:02 ` amacleod at redhat dot com
  2021-08-09 21:19 ` pinskia at gcc dot gnu.org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: amacleod at redhat dot com @ 2021-08-09 21:02 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Andrew Macleod <amacleod at redhat dot com> ---
What is that suppose to test?

The range ecosystem has gotten smarter and we basically fold that function away
to return 0 now.  between EVRP, VRP and threading, you'd have to turn off a lot
of optimizations to return to the original state.. I can't find a sequence.

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

* [Bug tree-optimization/101755] [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637
  2021-08-03 15:27 [Bug tree-optimization/101755] New: [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637 clyon at gcc dot gnu.org
  2021-08-03 15:27 ` [Bug tree-optimization/101755] " clyon at gcc dot gnu.org
  2021-08-09 21:02 ` amacleod at redhat dot com
@ 2021-08-09 21:19 ` pinskia at gcc dot gnu.org
  2022-03-08 14:09 ` rguenth at gcc dot gnu.org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-08-09 21:19 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
  d = a | -2;
  b = (d == 0) ? c : (c % d);

d can never be 0, VRP figures this out now.
so we end up with:
d = a | -2;
b = 0xc7d24b5e % d;
if (b != 0xc7d24b5e)
  abort();

and b cannot be 0xc7d24b5e because d is negative :).

So VRP is optimizing this all the way out.

The test was trying to make sure the value 0xc7d24b5e was emitted as a
REG_EQUAL note when splitting up the constant (for the forming) in RTL.

https://gcc.gnu.org/pipermail/gcc-patches/2015-June/422430.html
https://gcc.gnu.org/pipermail/gcc-patches/2015-June/422432.html

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

* [Bug tree-optimization/101755] [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637
  2021-08-03 15:27 [Bug tree-optimization/101755] New: [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637 clyon at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2021-08-09 21:19 ` pinskia at gcc dot gnu.org
@ 2022-03-08 14:09 ` rguenth at gcc dot gnu.org
  2022-04-12 12:33 ` rearnsha at gcc dot gnu.org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-03-08 14:09 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |testsuite-fail

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
Maybe add -fno-thread-jumps?

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

* [Bug tree-optimization/101755] [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637
  2021-08-03 15:27 [Bug tree-optimization/101755] New: [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637 clyon at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2022-03-08 14:09 ` rguenth at gcc dot gnu.org
@ 2022-04-12 12:33 ` rearnsha at gcc dot gnu.org
  2022-04-12 12:39 ` cvs-commit at gcc dot gnu.org
  2022-04-12 12:41 ` rearnsha at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: rearnsha at gcc dot gnu.org @ 2022-04-12 12:33 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Earnshaw <rearnsha at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2022-04-12
     Ever confirmed|0                           |1
           Assignee|unassigned at gcc dot gnu.org      |rearnsha at gcc dot gnu.org

--- Comment #4 from Richard Earnshaw <rearnsha at gcc dot gnu.org> ---
Mine

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

* [Bug tree-optimization/101755] [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637
  2021-08-03 15:27 [Bug tree-optimization/101755] New: [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637 clyon at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2022-04-12 12:33 ` rearnsha at gcc dot gnu.org
@ 2022-04-12 12:39 ` cvs-commit at gcc dot gnu.org
  2022-04-12 12:41 ` rearnsha at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-04-12 12:39 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Richard Earnshaw <rearnsha@gcc.gnu.org>:

https://gcc.gnu.org/g:62082d278d1fc9773539244194061ab32556db4d

commit r12-8108-g62082d278d1fc9773539244194061ab32556db4d
Author: Richard Earnshaw <rearnsha@arm.com>
Date:   Tue Apr 12 13:35:27 2022 +0100

    arm: fix testsuite failure of reg_equal_test.c [PR101755]

    The test failure in PR101755 is due to the gimple optimizers getting
    smarter.  But really we are just testing that RTL expansion is doing
    the right thing and annotating a constant accordingly.  So rework the
    test to use GIMPLE input and simplify the code entirely.  Also, this
    test only ever worked on architecture versions with the MOVW/MOVT
    instructions, so check for this before running.

    gcc/testsuite/ChangeLog:

            PR target/101755
            * gcc.target/arm/reg_equal_test.c: Convert to gimple test. 
Restrict
            to architectures with MOVW/MOVT.

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

* [Bug tree-optimization/101755] [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637
  2021-08-03 15:27 [Bug tree-optimization/101755] New: [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637 clyon at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2022-04-12 12:39 ` cvs-commit at gcc dot gnu.org
@ 2022-04-12 12:41 ` rearnsha at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: rearnsha at gcc dot gnu.org @ 2022-04-12 12:41 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Earnshaw <rearnsha at gcc dot gnu.org> changed:

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

--- Comment #6 from Richard Earnshaw <rearnsha at gcc dot gnu.org> ---
Fixed.

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

end of thread, other threads:[~2022-04-12 12:41 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-03 15:27 [Bug tree-optimization/101755] New: [12 regression] gcc.target/arm/reg_equal_test.c fails on arm since r12-2637 clyon at gcc dot gnu.org
2021-08-03 15:27 ` [Bug tree-optimization/101755] " clyon at gcc dot gnu.org
2021-08-09 21:02 ` amacleod at redhat dot com
2021-08-09 21:19 ` pinskia at gcc dot gnu.org
2022-03-08 14:09 ` rguenth at gcc dot gnu.org
2022-04-12 12:33 ` rearnsha at gcc dot gnu.org
2022-04-12 12:39 ` cvs-commit at gcc dot gnu.org
2022-04-12 12:41 ` rearnsha 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).