public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
@ 2014-09-03  1:16 macro@linux-mips.org
  2014-09-03  8:56 ` [Bug regression/63150] [4.9/5 " rguenth at gcc dot gnu.org
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: macro@linux-mips.org @ 2014-09-03  1:16 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 63150
           Summary: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c
                    scan-assembler-times *
           Product: gcc
           Version: 4.9.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: regression
          Assignee: unassigned at gcc dot gnu.org
          Reporter: macro@linux-mips.org
            Target: powerpc-linux-gnu
             Build: i686-pc-linux-gnu

I see these failures in Power/Linux testing with 4.9.1 and also trunk
(5.0), so presumably the regression happened sometime between 4.8 and
4.9:

FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times lwbrx 6
FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times stwbrx 6

These tests passed with 4.8.  This is with powerpc-linux-gnu.

I've looked at generated assembly and actually 2 out of 6 cases fail:
load64_reverse_2 and store64_reverse_2, the remaining 4 are fine.  In
all cases code produced looks correct, so this is a missed optimisation
rather a code correctness issue.

Options used to configure the compiler:

--build=i686-pc-linux-gnu
--target=powerpc-linux-gnu
--with-cpu-32=603e
--with-cpu-64=e5500
--with-long-double-128

Actually even with 4.8 code that the test case accepts it looks like
we've got another missed optimisation here because we do:

    lwbrx 8,0,9
    lwbrx 7,0,10
    mr 4,8
    mr 3,7
    blr

while we could do:

    lwbrx 4,0,9
    lwbrx 3,0,10
    blr

instead.  But that's of course a different matter.


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

* [Bug regression/63150] [4.9/5 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
@ 2014-09-03  8:56 ` rguenth at gcc dot gnu.org
  2014-09-03 17:10 ` segher at gcc dot gnu.org
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-09-03  8:56 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |4.8.3
   Target Milestone|---                         |4.9.2
            Summary|[4.9 regression] FAIL:      |[4.9/5 regression] FAIL:
                   |gcc.target/powerpc/pr53199. |gcc.target/powerpc/pr53199.
                   |c scan-assembler-times *    |c scan-assembler-times *


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

* [Bug regression/63150] [4.9/5 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
  2014-09-03  8:56 ` [Bug regression/63150] [4.9/5 " rguenth at gcc dot gnu.org
@ 2014-09-03 17:10 ` segher at gcc dot gnu.org
  2014-09-03 20:35 ` pthaugen at gcc dot gnu.org
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: segher at gcc dot gnu.org @ 2014-09-03 17:10 UTC (permalink / raw)
  To: gcc-bugs

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

Segher Boessenkool <segher at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2014-09-03
                 CC|                            |segher at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Segher Boessenkool <segher at gcc dot gnu.org> ---
Confirmed.  Happens with -m32 -mno-lra only.
bswapdi2_32bit only allows "Z" for memory operands; reload decides to use a
register.


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

* [Bug regression/63150] [4.9/5 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
  2014-09-03  8:56 ` [Bug regression/63150] [4.9/5 " rguenth at gcc dot gnu.org
  2014-09-03 17:10 ` segher at gcc dot gnu.org
@ 2014-09-03 20:35 ` pthaugen at gcc dot gnu.org
  2014-10-30 10:37 ` jakub at gcc dot gnu.org
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: pthaugen at gcc dot gnu.org @ 2014-09-03 20:35 UTC (permalink / raw)
  To: gcc-bugs

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

Pat Haugen <pthaugen at gcc dot gnu.org> changed:

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

--- Comment #2 from Pat Haugen <pthaugen at gcc dot gnu.org> ---
Alan posted a patch here:
http://gcc.gnu.org/ml/gcc-patches/2013-12/msg01487.html, but thread seems to
have went stale.


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

* [Bug regression/63150] [4.9/5 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
                   ` (2 preceding siblings ...)
  2014-09-03 20:35 ` pthaugen at gcc dot gnu.org
@ 2014-10-30 10:37 ` jakub at gcc dot gnu.org
  2014-11-24 13:14 ` rguenth at gcc dot gnu.org
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-10-30 10:37 UTC (permalink / raw)
  To: gcc-bugs

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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.9.2                       |4.9.3

--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 4.9.2 has been released.


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

* [Bug regression/63150] [4.9/5 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
                   ` (3 preceding siblings ...)
  2014-10-30 10:37 ` jakub at gcc dot gnu.org
@ 2014-11-24 13:14 ` rguenth at gcc dot gnu.org
  2015-02-20  0:25 ` msebor at gcc dot gnu.org
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-11-24 13:14 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |missed-optimization
           Priority|P3                          |P2


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

* [Bug regression/63150] [4.9/5 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
                   ` (4 preceding siblings ...)
  2014-11-24 13:14 ` rguenth at gcc dot gnu.org
@ 2015-02-20  0:25 ` msebor at gcc dot gnu.org
  2015-03-16  3:22 ` amodra at gmail dot com
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: msebor at gcc dot gnu.org @ 2015-02-20  0:25 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Martin Sebor <msebor at gcc dot gnu.org> ---
Created attachment 34812
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34812&action=edit
Patch referenced in comment #2 with conflicts resolved and test for pr53199
re-enabled.

The test no longer fails (in the reporter's configuration) due to the commit
below.  Backing it out causes the test to fail again with today's trunk.  After
applying the patch referenced in comment 2 (and resolving the two conflicts)
and backing out the change below, the test passes again.  The modified patch is
attached.

commit 7d6914c8d62668f03687d4d28630a1946ee2052c
Author: meissner <meissner@138bc75d-0d04-0410-961f-82ee72b054a4>
Date:   Fri Dec 5 17:50:40 2014 +0000

    2014-12-05  Michael Meissner  <meissner@linux.vnet.ibm.com>

        PR target/53199
        * gcc.target/powerpc/pr53199.c: Limit tests to 64-bit.



    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218431
138bc75d-0d04-0410-961f-82ee72b054a4


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

* [Bug regression/63150] [4.9/5 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
                   ` (5 preceding siblings ...)
  2015-02-20  0:25 ` msebor at gcc dot gnu.org
@ 2015-03-16  3:22 ` amodra at gmail dot com
  2015-03-16  3:30 ` amodra at gcc dot gnu.org
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: amodra at gmail dot com @ 2015-03-16  3:22 UTC (permalink / raw)
  To: gcc-bugs

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

Alan Modra <amodra at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |amodra at gmail dot com


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

* [Bug regression/63150] [4.9/5 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
                   ` (6 preceding siblings ...)
  2015-03-16  3:22 ` amodra at gmail dot com
@ 2015-03-16  3:30 ` amodra at gcc dot gnu.org
  2015-03-16  8:50 ` [Bug regression/63150] [4.9 Regression] " jakub at gcc dot gnu.org
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: amodra at gcc dot gnu.org @ 2015-03-16  3:30 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Alan Modra <amodra at gcc dot gnu.org> ---
Author: amodra
Date: Mon Mar 16 03:29:36 2015
New Revision: 221445

URL: https://gcc.gnu.org/viewcvs?rev=221445&root=gcc&view=rev
Log:
    PR target/63150
gcc/
    * config/rs6000/rs6000.md (bswapdi2): Remove one scratch reg.
    Modify Z->r bswapdi splitter to use dest in place of scratch.
    In r->Z and Z->r bswapdi splitter rename word_high, word_low
    to word1, word2 and rearrange logic to suit.
    (bswapdi2_64bit): Remove early clobber on Z->r alternative.
    (bswapdi2_ldbrx): Likewise.  Remove '??' on r->r.
    (bswapdi2_32bit): Remove early clobber on Z->r alternative.
    Add one '?' on r->r.  Modify Z->r splitter to avoid need for
    early clobber.
gcc/testsuite/
    * gcc.target/powerpc/pr53199.c: Add extra functions.  Revert
    2014-12-05 change.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/rs6000/rs6000.md
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.target/powerpc/pr53199.c


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

* [Bug regression/63150] [4.9 Regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
                   ` (7 preceding siblings ...)
  2015-03-16  3:30 ` amodra at gcc dot gnu.org
@ 2015-03-16  8:50 ` jakub at gcc dot gnu.org
  2015-03-26  8:56 ` amodra at gcc dot gnu.org
  2015-03-26  9:27 ` amodra at gmail dot com
  10 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2015-03-16  8:50 UTC (permalink / raw)
  To: gcc-bugs

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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org
            Summary|[4.9/5 regression] FAIL:    |[4.9 Regression] FAIL:
                   |gcc.target/powerpc/pr53199. |gcc.target/powerpc/pr53199.
                   |c scan-assembler-times *    |c scan-assembler-times *

--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
So fixed on the trunk.


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

* [Bug regression/63150] [4.9 Regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
                   ` (8 preceding siblings ...)
  2015-03-16  8:50 ` [Bug regression/63150] [4.9 Regression] " jakub at gcc dot gnu.org
@ 2015-03-26  8:56 ` amodra at gcc dot gnu.org
  2015-03-26  9:27 ` amodra at gmail dot com
  10 siblings, 0 replies; 12+ messages in thread
From: amodra at gcc dot gnu.org @ 2015-03-26  8:56 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Alan Modra <amodra at gcc dot gnu.org> ---
Author: amodra
Date: Thu Mar 26 08:33:53 2015
New Revision: 221689

URL: https://gcc.gnu.org/viewcvs?rev=221689&root=gcc&view=rev
Log:
    PR target/63150
    Backport from trunk 211857 and 221445.
    2014-06-20  Maciej W. Rozycki  <macro@codesourcery.com>
    * config/rs6000/rs6000.md: Append `DONE' to preparation
    statements of `bswap' pattern splitters.

    2015-03-16  Alan Modra  <amodra@gmail.com>
    * config/rs6000/rs6000.md (bswapdi2): Remove one scratch reg.
    Modify Z->r bswapdi splitter to use dest in place of scratch.
    In r->Z and Z->r bswapdi splitter rename word_high, word_low
    to word1, word2 and rearrange logic to suit.
    (bswapdi2_64bit): Remove early clobber on Z->r alternative.
    (bswapdi2_ldbrx): Likewise.  Remove '??' on r->r.
    (bswapdi2_32bit): Remove early clobber on Z->r alternative.
    Add one '?' on r->r.  Modify Z->r splitter to avoid need for
    early clobber.


Modified:
    branches/gcc-4_9-branch/gcc/ChangeLog
    branches/gcc-4_9-branch/gcc/config/rs6000/rs6000.md
    branches/gcc-4_9-branch/gcc/testsuite/ChangeLog
    branches/gcc-4_9-branch/gcc/testsuite/gcc.target/powerpc/pr53199.c


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

* [Bug regression/63150] [4.9 Regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times *
  2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
                   ` (9 preceding siblings ...)
  2015-03-26  8:56 ` amodra at gcc dot gnu.org
@ 2015-03-26  9:27 ` amodra at gmail dot com
  10 siblings, 0 replies; 12+ messages in thread
From: amodra at gmail dot com @ 2015-03-26  9:27 UTC (permalink / raw)
  To: gcc-bugs

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

Alan Modra <amodra at gmail dot com> changed:

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

--- Comment #8 from Alan Modra <amodra at gmail dot com> ---
Fixed on branch too.


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

end of thread, other threads:[~2015-03-26  8:35 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-09-03  1:16 [Bug regression/63150] New: [4.9 regression] FAIL: gcc.target/powerpc/pr53199.c scan-assembler-times * macro@linux-mips.org
2014-09-03  8:56 ` [Bug regression/63150] [4.9/5 " rguenth at gcc dot gnu.org
2014-09-03 17:10 ` segher at gcc dot gnu.org
2014-09-03 20:35 ` pthaugen at gcc dot gnu.org
2014-10-30 10:37 ` jakub at gcc dot gnu.org
2014-11-24 13:14 ` rguenth at gcc dot gnu.org
2015-02-20  0:25 ` msebor at gcc dot gnu.org
2015-03-16  3:22 ` amodra at gmail dot com
2015-03-16  3:30 ` amodra at gcc dot gnu.org
2015-03-16  8:50 ` [Bug regression/63150] [4.9 Regression] " jakub at gcc dot gnu.org
2015-03-26  8:56 ` amodra at gcc dot gnu.org
2015-03-26  9:27 ` amodra at gmail dot com

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