public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug testsuite/44701]  New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
@ 2010-06-28 17:34 mikpe at it dot uu dot se
  2010-06-29  9:49 ` [Bug testsuite/44701] " jakub at gcc dot gnu dot org
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: mikpe at it dot uu dot se @ 2010-06-28 17:34 UTC (permalink / raw)
  To: gcc-bugs

PR44492 was fixed in r161328.  This revision changed the generated code for
asm-es-2.c as follows:

--- asm-es-2.s-ok
+++ asm-es-2.s-bad
@@ -23,9 +23,10 @@
 f2:
        .p2align 4,,15
 .L3:
+       addi 3,3,16
 #APP
  # 14 "gcc-4.6-20100626/gcc/testsuite/gcc.target/powerpc/asm-es-2.c" 1
-       asm2u 16(3)
+       asm2 0(3)
  # 0 "" 2
 #NO_APP
        b .L3

Since asm-es-2.c contains

/* { dg-final { scan-assembler "asm2u 16\\(3\\)" } } */

the code doesn't match causing the test case to now FAIL.


-- 
           Summary: [4.6 regression] PR44492 fix broke
                    gcc.target/powerpc/asm-es-2.c
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: testsuite
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: mikpe at it dot uu dot se
 GCC build triplet: powerpc64-unknown-linux-gnu
  GCC host triplet: powerpc64-unknown-linux-gnu
GCC target triplet: powerpc64-unknown-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

* [Bug testsuite/44701] [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
  2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
@ 2010-06-29  9:49 ` jakub at gcc dot gnu dot org
  2010-06-29 11:01 ` mikpe at it dot uu dot se
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-06-29  9:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from jakub at gcc dot gnu dot org  2010-06-29 09:49 -------
Guess something like:

--- gcc/testsuite/gcc.target/powerpc/asm-es-2.c 2009-07-20 20:41:46.000000000
+0200
+++ gcc/testsuite/gcc.target/powerpc/asm-es-2.c 2010-06-29 11:37:05.482959217
+0200
@@ -11,7 +11,7 @@ f2 (int *p)
   while (1)
     {
       p += 4;
-      asm ("asm2%U0 %0" : "=m" (*p));
+      asm ("asm2%U0 %0" : "=m<>" (*p));
     }
 }

should fix this.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

* [Bug testsuite/44701] [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
  2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
  2010-06-29  9:49 ` [Bug testsuite/44701] " jakub at gcc dot gnu dot org
@ 2010-06-29 11:01 ` mikpe at it dot uu dot se
  2010-07-06 21:46 ` pinskia at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: mikpe at it dot uu dot se @ 2010-06-29 11:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from mikpe at it dot uu dot se  2010-06-29 11:00 -------
(In reply to comment #1)
> -      asm ("asm2%U0 %0" : "=m" (*p));
> +      asm ("asm2%U0 %0" : "=m<>" (*p));

That fixed the test case.  Thanks.  I didn't know about the PowerPC-specific %U
thing, but now I see that the compiler did the right thing.

Seems like the descriptions of "m" and "es" in the PowerPC-specific part of
md.texi are now a bit stale: "es" should be equivalent to "m", and "m" should
be safe (free of side-effects) unless accompanied by "<" or ">".


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

* [Bug testsuite/44701] [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
  2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
  2010-06-29  9:49 ` [Bug testsuite/44701] " jakub at gcc dot gnu dot org
  2010-06-29 11:01 ` mikpe at it dot uu dot se
@ 2010-07-06 21:46 ` pinskia at gcc dot gnu dot org
  2010-07-12 21:03 ` pthaugen at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2010-07-06 21:46 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from pinskia at gcc dot gnu dot org  2010-07-06 21:46 -------
Confirmed.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2010-07-06 21:46:33
               date|                            |
   Target Milestone|---                         |4.6.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

* [Bug testsuite/44701] [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
  2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
                   ` (2 preceding siblings ...)
  2010-07-06 21:46 ` pinskia at gcc dot gnu dot org
@ 2010-07-12 21:03 ` pthaugen at gcc dot gnu dot org
  2010-07-12 21:06 ` pthaugen at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pthaugen at gcc dot gnu dot org @ 2010-07-12 21:03 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from pthaugen at gcc dot gnu dot org  2010-07-12 21:03 -------
Adding '<>' to the "=m" constraint fixes the testcase, but adding a single '>'
(or '<') results in an error for impossible constraints. This is caused by the
following snippet that was added to reload1.c:

                      switch (GET_CODE (XEXP (recog_data.operand[opno], 0)))
                        {
                        case PRE_INC:
                        case POST_INC:
                        case PRE_DEC:
                        case POST_DEC:
                        case PRE_MODIFY:
                        case POST_MODIFY:
                          if (strchr (recog_data.constraints[opno], '<') ==
NULL
                              || strchr (recog_data.constraints[opno], '>')
                                 == NULL)
                            return 0;
                          break;

Should the code be using '&&' instead of '||'?


-- 

pthaugen at gcc dot gnu dot org changed:

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


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

* [Bug testsuite/44701] [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
  2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
                   ` (3 preceding siblings ...)
  2010-07-12 21:03 ` pthaugen at gcc dot gnu dot org
@ 2010-07-12 21:06 ` pthaugen at gcc dot gnu dot org
  2010-07-13 14:04 ` jakub at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pthaugen at gcc dot gnu dot org @ 2010-07-12 21:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from pthaugen at gcc dot gnu dot org  2010-07-12 21:05 -------
Sorry, recog.c is where the prior code snippet came from.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

* [Bug testsuite/44701] [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
  2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
                   ` (4 preceding siblings ...)
  2010-07-12 21:06 ` pthaugen at gcc dot gnu dot org
@ 2010-07-13 14:04 ` jakub at gcc dot gnu dot org
  2010-07-23 12:07 ` rguenth at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-07-13 14:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from jakub at gcc dot gnu dot org  2010-07-13 14:04 -------
Subject: Bug 44701

Author: jakub
Date: Tue Jul 13 14:03:49 2010
New Revision: 162142

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=162142
Log:
        PR testsuite/44701
        * recog.c (constrain_operands): Allow side-effects in memory
        operands if either < or > constraint is used, rather than if
        both < and > is used.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/recog.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

* [Bug testsuite/44701] [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
  2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
                   ` (5 preceding siblings ...)
  2010-07-13 14:04 ` jakub at gcc dot gnu dot org
@ 2010-07-23 12:07 ` rguenth at gcc dot gnu dot org
  2010-07-23 12:22 ` mikpe at it dot uu dot se
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-23 12:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from rguenth at gcc dot gnu dot org  2010-07-23 12:06 -------
Fixed?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

* [Bug testsuite/44701] [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
  2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
                   ` (6 preceding siblings ...)
  2010-07-23 12:07 ` rguenth at gcc dot gnu dot org
@ 2010-07-23 12:22 ` mikpe at it dot uu dot se
  2010-07-27 17:53 ` jakub at gcc dot gnu dot org
  2010-07-27 17:58 ` jakub at gcc dot gnu dot org
  9 siblings, 0 replies; 11+ messages in thread
From: mikpe at it dot uu dot se @ 2010-07-23 12:22 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from mikpe at it dot uu dot se  2010-07-23 12:22 -------
(In reply to comment #7)
> Fixed?

No, the test case itself needs a fix too.  Jakub posted it to gcc-patches, but
it was never approved AFAIK and is still not applied.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

* [Bug testsuite/44701] [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
  2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
                   ` (7 preceding siblings ...)
  2010-07-23 12:22 ` mikpe at it dot uu dot se
@ 2010-07-27 17:53 ` jakub at gcc dot gnu dot org
  2010-07-27 17:58 ` jakub at gcc dot gnu dot org
  9 siblings, 0 replies; 11+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-07-27 17:53 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from jakub at gcc dot gnu dot org  2010-07-27 17:53 -------
Subject: Bug 44701

Author: jakub
Date: Tue Jul 27 17:52:35 2010
New Revision: 162581

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=162581
Log:
        PR testsuite/44701
        * doc/md.texi: Clarify m and es constraints on PowerPC and m and S
        constraints on IA-64.

        * gcc.target/powerpc/asm-es-2.c (f2): Add <> constraints.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/doc/md.texi
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.target/powerpc/asm-es-2.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

* [Bug testsuite/44701] [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c
  2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
                   ` (8 preceding siblings ...)
  2010-07-27 17:53 ` jakub at gcc dot gnu dot org
@ 2010-07-27 17:58 ` jakub at gcc dot gnu dot org
  9 siblings, 0 replies; 11+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-07-27 17:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from jakub at gcc dot gnu dot org  2010-07-27 17:58 -------
Should be fixed now.


-- 

jakub at gcc dot gnu dot org changed:

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


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44701


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

end of thread, other threads:[~2010-07-27 17:58 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-06-28 17:34 [Bug testsuite/44701] New: [4.6 regression] PR44492 fix broke gcc.target/powerpc/asm-es-2.c mikpe at it dot uu dot se
2010-06-29  9:49 ` [Bug testsuite/44701] " jakub at gcc dot gnu dot org
2010-06-29 11:01 ` mikpe at it dot uu dot se
2010-07-06 21:46 ` pinskia at gcc dot gnu dot org
2010-07-12 21:03 ` pthaugen at gcc dot gnu dot org
2010-07-12 21:06 ` pthaugen at gcc dot gnu dot org
2010-07-13 14:04 ` jakub at gcc dot gnu dot org
2010-07-23 12:07 ` rguenth at gcc dot gnu dot org
2010-07-23 12:22 ` mikpe at it dot uu dot se
2010-07-27 17:53 ` jakub at gcc dot gnu dot org
2010-07-27 17:58 ` jakub at gcc dot gnu dot 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).