public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports
@ 2003-12-18  5:22 danglin at gcc dot gnu dot org
  2003-12-18  5:25 ` [Bug optimization/13424] [3.4 Regression] " pinskia at gcc dot gnu dot org
                   ` (43 more replies)
  0 siblings, 44 replies; 45+ messages in thread
From: danglin at gcc dot gnu dot org @ 2003-12-18  5:22 UTC (permalink / raw)
  To: gcc-bugs

See thread at <http://gcc.gnu.org/ml/gcc-patches/2003-12/msg00236.html>
regarding the setting of RTX_UNCHANGING_P and its affect on clrstr, etc.

-- 
           Summary: 20031202-1.c is miscompiled on all PA ports
           Product: gcc
           Version: 3.4
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: pending
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: danglin at gcc dot gnu dot org
                CC: ebotcazou at libertysurf dot fr,gcc-bugs at gcc dot gnu
                    dot org,jakub at redhat dot com
 GCC build triplet: hppa*-*-*
  GCC host triplet: hppa*-*-*
GCC target triplet: hppa*-*-*


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


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

* [Bug optimization/13424] [3.4 Regression] 20031202-1.c is miscompiled on all PA ports
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
@ 2003-12-18  5:25 ` pinskia at gcc dot gnu dot org
  2003-12-18 16:39 ` [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled ebotcazou at gcc dot gnu dot org
                   ` (42 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2003-12-18  5:25 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2003-12-18 03:37 -------
If I read the thread correctly this is a regression.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|pending                     |optimization
     Ever Confirmed|                            |1
           Keywords|                            |wrong-code
   Last reconfirmed|0000-00-00 00:00:00         |2003-12-18 03:37:55
               date|                            |
            Summary|20031202-1.c is miscompiled |[3.4 Regression] 20031202-
                   |on all PA ports             |1.c is miscompiled on all PA
                   |                            |ports
   Target Milestone|---                         |3.4


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
  2003-12-18  5:25 ` [Bug optimization/13424] [3.4 Regression] " pinskia at gcc dot gnu dot org
@ 2003-12-18 16:39 ` ebotcazou at gcc dot gnu dot org
  2003-12-18 19:41 ` dave at hiauly1 dot hia dot nrc dot ca
                   ` (41 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2003-12-18 16:39 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2003-12-18 15:53 -------
Hey! Hey! Don't forget SPARC :-)


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|ebotcazou at libertysurf dot|ebotcazou at gcc dot gnu dot
                   |fr                          |org
           Severity|normal                      |critical
            Summary|[3.4 Regression] 20031202-  |[3.4 Regression]
                   |1.c is miscompiled on all PA|gcc.dg/20031202-1.c is
                   |ports                       |miscompiled


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
  2003-12-18  5:25 ` [Bug optimization/13424] [3.4 Regression] " pinskia at gcc dot gnu dot org
  2003-12-18 16:39 ` [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled ebotcazou at gcc dot gnu dot org
@ 2003-12-18 19:41 ` dave at hiauly1 dot hia dot nrc dot ca
  2003-12-18 20:12 ` ebotcazou at gcc dot gnu dot org
                   ` (40 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: dave at hiauly1 dot hia dot nrc dot ca @ 2003-12-18 19:41 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2003-12-18 19:15 -------
Subject: Re:  [3.4 Regression] 20031202-1.c is miscompiled on all PA ports

> If I read the thread correctly this is a regression.

I'm not sure that I would class this as a regression.  If so, it
also is a regression for 3.3.  Jakub's patch changed the nature
of the bug but it didn't provide a complete fix.  The testcase
is new.

Dave


-- 


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2003-12-18 19:41 ` dave at hiauly1 dot hia dot nrc dot ca
@ 2003-12-18 20:12 ` ebotcazou at gcc dot gnu dot org
  2004-01-10  7:01 ` pinskia at gcc dot gnu dot org
                   ` (39 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2003-12-18 20:12 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2003-12-18 19:52 -------
It's a regression on mainline, at least on SPARC: we have a testcase that passed
before the patch and doesn't after.

But I don't see the bug on the 3.3 branch, because RTX_UNCHANGING_P is not set
anymore at all: before Jakub's patch, the situation was (1,1) on mainline and
(0,1) on branch, so the two MEMs were detected as aliasing on mainline and not
on branch. After Jakub's patch, the situation is (1,0) on mainline and (0,0) on
branch, so the two MEMs are detected as aliasing on branch but not on mainline.


-- 


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2003-12-18 20:12 ` ebotcazou at gcc dot gnu dot org
@ 2004-01-10  7:01 ` pinskia at gcc dot gnu dot org
  2004-01-10  7:14 ` pinskia at gcc dot gnu dot org
                   ` (38 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-01-10  7:01 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-01-10 07:01 -------
This testcase was failing on all targets as for a while and has been fixed now, does the 
patch also fix it for happa and sparc?

-- 


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2004-01-10  7:01 ` pinskia at gcc dot gnu dot org
@ 2004-01-10  7:14 ` pinskia at gcc dot gnu dot org
  2004-01-10 20:56 ` dave at hiauly1 dot hia dot nrc dot ca
                   ` (37 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-01-10  7:14 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-01-10 07:14 -------
never mind about my pervious comment, I misread what the patch was for (stupid close 
testcases names).

-- 


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2004-01-10  7:14 ` pinskia at gcc dot gnu dot org
@ 2004-01-10 20:56 ` dave at hiauly1 dot hia dot nrc dot ca
  2004-01-10 21:00 ` dave at hiauly1 dot hia dot nrc dot ca
                   ` (36 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: dave at hiauly1 dot hia dot nrc dot ca @ 2004-01-10 20:56 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2004-01-10 20:56 -------
Subject: Re:  [3.4 Regression] gcc.dg/20031202-1.c is

> This testcase was failing on all targets as for a while and has been fixed
> now, does the 
> patch also fix it for happa and sparc?

I can confirm that the problem is fixed on hppa-unknown-linux-gnu.

Dave


-- 


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2004-01-10 20:56 ` dave at hiauly1 dot hia dot nrc dot ca
@ 2004-01-10 21:00 ` dave at hiauly1 dot hia dot nrc dot ca
  2004-01-10 21:43 ` ebotcazou at gcc dot gnu dot org
                   ` (35 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: dave at hiauly1 dot hia dot nrc dot ca @ 2004-01-10 21:00 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2004-01-10 21:00 -------
Subject: Re:  [3.4 Regression] gcc.dg/20031202-1.c

> > This testcase was failing on all targets as for a while and has been fixed
> > now, does the 
> > patch also fix it for happa and sparc?
> 
> I can confirm that the problem is fixed on hppa-unknown-linux-gnu.

Sorry, it's gcc.dg/20031201-1.c that's fixed.  gcc.dg/20031202-1.c
still fails.

Dave


-- 


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2004-01-10 21:00 ` dave at hiauly1 dot hia dot nrc dot ca
@ 2004-01-10 21:43 ` ebotcazou at gcc dot gnu dot org
  2004-01-13 11:40 ` ebotcazou at gcc dot gnu dot org
                   ` (34 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-01-10 21:43 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-01-10 21:43 -------
On SPARC both are still present as of today morning.


-- 


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2004-01-10 21:43 ` ebotcazou at gcc dot gnu dot org
@ 2004-01-13 11:40 ` ebotcazou at gcc dot gnu dot org
  2004-01-13 11:46 ` ebotcazou at gcc dot gnu dot org
                   ` (33 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-01-13 11:40 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-01-13 11:40 -------
Introduced by Jakub's patch.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|jakub at redhat dot com     |
         AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
                   |dot org                     |
             Status|NEW                         |ASSIGNED


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2004-01-13 11:40 ` ebotcazou at gcc dot gnu dot org
@ 2004-01-13 11:46 ` ebotcazou at gcc dot gnu dot org
  2004-01-25 17:00 ` [Bug optimization/13424] [3.4/3.5 " schwab at suse dot de
                   ` (32 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-01-13 11:46 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-01-13 11:46 -------
Related to PR opt/12419.


-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2004-01-13 11:46 ` ebotcazou at gcc dot gnu dot org
@ 2004-01-25 17:00 ` schwab at suse dot de
  2004-01-29  8:06 ` cvs-commit at gcc dot gnu dot org
                   ` (31 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: schwab at suse dot de @ 2004-01-25 17:00 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From schwab at suse dot de  2004-01-25 17:00 -------
Also failing on ia64 (3.0 - 3.5, not tree-ssa). 

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
 GCC target triplet|hppa*-*-* sparc*-*-*        |hppa*-*-* sparc*-*-* ia64-*-
                   |                            |*


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (11 preceding siblings ...)
  2004-01-25 17:00 ` [Bug optimization/13424] [3.4/3.5 " schwab at suse dot de
@ 2004-01-29  8:06 ` cvs-commit at gcc dot gnu dot org
  2004-02-07  9:55 ` ebotcazou at gcc dot gnu dot org
                   ` (30 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-01-29  8:06 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-01-29 08:05 -------
Subject: Bug 13424

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	jakub@gcc.gnu.org	2004-01-29 08:05:49

Modified files:
	gcc            : ChangeLog expr.c emit-rtl.c 
	gcc/config/i386: i386-protos.h i386.c i386.md 

Log message:
	PR optimization/13424
	* expr.c (store_constructor): Revert 2003-12-03 change.
	
	* emit-rtl.c (change_address): Check also if MEM_ATTRS is set as
	expected before returning early.  Avoid sharing RTL if they
	need to be changed.
	
	* config/i386/i386.c (ix86_expand_movstr): Rework rep_mov and strmov
	handling so that memory attributes are preserved.  Don't call
	ix86_set_move_mem_attrs.
	(ix86_set_move_mem_attrs_1, ix86_set_move_mem_attrs): Removed.
	(ix86_expand_clrstr): Rename src argument to
	dst.  Rework rep_stos and strset handling so that memory attributes
	are preserved.
	(ix86_expand_strlen): Pass src argument to
	ix86_expand_strlensi_unroll_1.  Rework strlenqi_1 handling so that
	memory attributes are preserved.
	(ix86_expand_strlensi_unroll_1): Add src argument.  Use
	change_address instead of gen_rtx_MEM.
	* config/i386/i386.md (strmov, strmov_singleop, rep_mov): New
	expanders.
	(strmovdi_rex64, strmovsi, strmovsi_rex64, strmovhi, strmovhi_rex64,
	strmovqi, strmovqi_rex64): Remove.
	(rep_mov*, strmov*): Prefix insn names with *.
	(strset, strset_singleop, rep_stos): New expanders.
	(strsetdi_rex64, strsetsi, strsetsi_rex64, strsethi, strsethi_rex64,
	strsetqi, strsetqi_rex64): Remove.
	(rep_stos*, strset*): Prefix insn names with *.
	(rep_stosqi_rex64): Likewise.  Fix mode of dirflag reg from DImode
	to SImode.
	(cmpstrsi): Rework cmpstrqi_1 handling so that memory attributes
	are preserved.
	(cmpstrqi_nz_1, cmpstrqi_nz_rex_1, cmpstrqi_1, cmpstrqi_rex_1):
	Prefix insn names with *.
	(cmpstrqi_nz_1, cmpstrqi_1): New expanders.
	(strlenqi_1, strlenqi_rex_1): Prefix insn names with *.
	(strlenqi_1): New expander.
	* config/i386/i386.h (ix86_set_move_mem_attrs): Remove prototype.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.2548&r2=2.2549
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/expr.c.diff?cvsroot=gcc&r1=1.618&r2=1.619
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/emit-rtl.c.diff?cvsroot=gcc&r1=1.369&r2=1.370
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386-protos.h.diff?cvsroot=gcc&r1=1.104&r2=1.105
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.c.diff?cvsroot=gcc&r1=1.639&r2=1.640
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.md.diff?cvsroot=gcc&r1=1.505&r2=1.506



-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (12 preceding siblings ...)
  2004-01-29  8:06 ` cvs-commit at gcc dot gnu dot org
@ 2004-02-07  9:55 ` ebotcazou at gcc dot gnu dot org
  2004-02-10 18:08 ` [Bug optimization/13424] [3.4 " cvs-commit at gcc dot gnu dot org
                   ` (29 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-02-07  9:55 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-02-07 09:55 -------
Any plan to backport the patch to the 3.4 branch, Jakub?


-- 


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (13 preceding siblings ...)
  2004-02-07  9:55 ` ebotcazou at gcc dot gnu dot org
@ 2004-02-10 18:08 ` cvs-commit at gcc dot gnu dot org
  2004-02-10 20:34 ` pinskia at gcc dot gnu dot org
                   ` (28 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-02-10 18:08 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-02-10 18:08 -------
Subject: Bug 13424

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_4-branch
Changes by:	jakub@gcc.gnu.org	2004-02-10 18:07:58

Modified files:
	gcc            : ChangeLog expr.c emit-rtl.c 
	gcc/config/i386: i386.c i386.md i386-protos.h 

Log message:
	PR optimization/13424
	Backport from mainline:
	
	2004-01-29  Jakub Jelinek  <jakub@redhat.com>
	* emit-rtl.c (change_address): Use XEXP (memref, 0) instead
	of addr when creating MEM copy.
	
	2004-01-28  Jakub Jelinek  <jakub@redhat.com>
	* expr.c (store_constructor): Revert 2003-12-03 change.
	
	* emit-rtl.c (change_address): Check also if MEM_ATTRS is set as
	expected before returning early.  Avoid sharing RTL if they
	need to be changed.
	
	* config/i386/i386.c (ix86_expand_movstr): Rework rep_mov and strmov
	handling so that memory attributes are preserved.  Don't call
	ix86_set_move_mem_attrs.
	(ix86_set_move_mem_attrs_1, ix86_set_move_mem_attrs): Removed.
	(ix86_expand_clrstr): Rename src argument to
	dst.  Rework rep_stos and strset handling so that memory attributes
	are preserved.
	(ix86_expand_strlen): Pass src argument to
	ix86_expand_strlensi_unroll_1.  Rework strlenqi_1 handling so that
	memory attributes are preserved.
	(ix86_expand_strlensi_unroll_1): Add src argument.  Use
	change_address instead of gen_rtx_MEM.
	* config/i386/i386.md (strmov, strmov_singleop, rep_mov): New
	expanders.
	(strmovdi_rex64, strmovsi, strmovsi_rex64, strmovhi, strmovhi_rex64,
	strmovqi, strmovqi_rex64): Remove.
	(rep_mov*, strmov*): Prefix insn names with *.
	(strset, strset_singleop, rep_stos): New expanders.
	(strsetdi_rex64, strsetsi, strsetsi_rex64, strsethi, strsethi_rex64,
	strsetqi, strsetqi_rex64): Remove.
	(rep_stos*, strset*): Prefix insn names with *.
	(rep_stosqi_rex64): Likewise.  Fix mode of dirflag reg from DImode
	to SImode.
	(cmpstrsi): Rework cmpstrqi_1 handling so that memory attributes
	are preserved.
	(cmpstrqi_nz_1, cmpstrqi_nz_rex_1, cmpstrqi_1, cmpstrqi_rex_1):
	Prefix insn names with *.
	(cmpstrqi_nz_1, cmpstrqi_1): New expanders.
	(strlenqi_1, strlenqi_rex_1): Prefix insn names with *.
	(strlenqi_1): New expander.
	* config/i386/i386.h (ix86_set_move_mem_attrs): Remove prototype.
	
	2004-01-24  Jan Hubicka  <jh@suse.cz>
	* emit-rtl.c (change_address, adjust_address_1, offset_address,
	widen_memory_access):  Return early when there is nothing to change.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=2.2326.2.174&r2=2.2326.2.175
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/expr.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.615.4.2&r2=1.615.4.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/emit-rtl.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.365.4.1&r2=1.365.4.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.635.2.3&r2=1.635.2.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.md.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.502&r2=1.502.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386-protos.h.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.104.4.1&r2=1.104.4.2



-- 


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (14 preceding siblings ...)
  2004-02-10 18:08 ` [Bug optimization/13424] [3.4 " cvs-commit at gcc dot gnu dot org
@ 2004-02-10 20:34 ` pinskia at gcc dot gnu dot org
  2004-02-21 23:34 ` danglin at gcc dot gnu dot org
                   ` (27 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-02-10 20:34 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-02-10 20:34 -------
Fixed for 3.4.

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


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (15 preceding siblings ...)
  2004-02-10 20:34 ` pinskia at gcc dot gnu dot org
@ 2004-02-21 23:34 ` danglin at gcc dot gnu dot org
  2004-02-23  8:53 ` ebotcazou at gcc dot gnu dot org
                   ` (26 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: danglin at gcc dot gnu dot org @ 2004-02-21 23:34 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From danglin at gcc dot gnu dot org  2004-02-21 23:34 -------
Still fails on hppa.


-- 


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (17 preceding siblings ...)
  2004-02-23  8:53 ` ebotcazou at gcc dot gnu dot org
@ 2004-02-23  8:53 ` ebotcazou at gcc dot gnu dot org
  2004-02-28 11:26 ` cvs-commit at gcc dot gnu dot org
                   ` (24 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-02-23  8:53 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-02-23 08:52 -------
Then let's reopen, but unassign from Jakub because he has done his part.

The testcase doesn't fail anymore on SPARC, but here's another one that fails:

/* { dg-options "-O2 -mcpu=ultrasparc" } */

struct S {
  const int i1;
  const long l1;
  const int i2;
  const long l2;
  int i3;
  int i4;
};

extern void abort(void);

void bar (struct S *s)
{
  if (s->i3 != 2)
    abort();
}

int main(void)
{
  struct S s = { 0, 0, 0, 0 };

  s.i3 = 2;

  bar(&s);

  return 0;
}

The problem is that the /u flag is put on a SET to a MEM during clearing, but
not during the subsequent assignment, and the scheduler swaps the two SETs.

It appears that the clearing optimization is not safe in presence of readonly
fields; now, if we disable it, we have a pessimization for structures with const
 members over structures without const members.  Really tricky...


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


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (16 preceding siblings ...)
  2004-02-21 23:34 ` danglin at gcc dot gnu dot org
@ 2004-02-23  8:53 ` ebotcazou at gcc dot gnu dot org
  2004-02-23  8:53 ` ebotcazou at gcc dot gnu dot org
                   ` (25 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-02-23  8:53 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|jakub at gcc dot gnu dot org|unassigned at gcc dot gnu
                   |                            |dot org
             Status|REOPENED                    |NEW


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


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

* [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (18 preceding siblings ...)
  2004-02-23  8:53 ` ebotcazou at gcc dot gnu dot org
@ 2004-02-28 11:26 ` cvs-commit at gcc dot gnu dot org
  2004-03-02 23:43 ` [Bug optimization/13424] [3.4/3.5 " rth at gcc dot gnu dot org
                   ` (23 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-02-28 11:26 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-02-28 11:26 -------
Subject: Bug 13424

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_2-rhl8-branch
Changes by:	jakub@gcc.gnu.org	2004-02-28 11:26:21

Modified files:
	gcc            : ChangeLog emit-rtl.c expr.c 
	gcc/config/i386: i386-protos.h i386.md i386.c 
Added files:
	gcc/testsuite/gcc.dg: 20040216-1.c 

Log message:
	2004-02-16  Jakub Jelinek  <jakub@redhat.com>
	
	PR optimization/13424
	* expr.c (store_constructor): Revert 2003-12-03 change.
	
	* emit-rtl.c (change_address): Check also if MEM_ATTRS is set as
	expected before returning early.  Avoid sharing RTL if they
	need to be changed.
	
	* config/i386/i386.c (ix86_expand_movstr): Rework rep_mov and strmov
	handling so that memory attributes are preserved.  Don't call
	ix86_set_move_mem_attrs.
	(ix86_set_move_mem_attrs_1, ix86_set_move_mem_attrs): Removed.
	(ix86_expand_clrstr): Rename src argument to
	dst.  Rework rep_stos and strset handling so that memory attributes
	are preserved.
	(ix86_expand_strlen): Pass src argument to
	ix86_expand_strlensi_unroll_1.  Rework strlenqi_1 handling so that
	memory attributes are preserved.
	(ix86_expand_strlensi_unroll_1): Add src argument.  Use
	change_address instead of gen_rtx_MEM.
	* config/i386/i386.md (strmov, strmov_singleop, rep_mov): New
	expanders.
	(strmovdi_rex64, strmovsi, strmovsi_rex64, strmovhi, strmovhi_rex64,
	strmovqi, strmovqi_rex64): Remove.
	(rep_mov*, strmov*): Prefix insn names with *.
	(strset, strset_singleop, rep_stos): New expanders.
	(strsetdi_rex64, strsetsi, strsetsi_rex64, strsethi, strsethi_rex64,
	strsetqi, strsetqi_rex64): Remove.
	(rep_stos*, strset*): Prefix insn names with *.
	(rep_stosqi_rex64): Likewise.  Fix mode of dirflag reg from DImode
	to SImode.
	(cmpstrsi): Rework cmpstrqi_1 handling so that memory attributes
	are preserved.
	(cmpstrqi_nz_1, cmpstrqi_nz_rex_1, cmpstrqi_1, cmpstrqi_rex_1):
	Prefix insn names with *.
	(cmpstrqi_nz_1, cmpstrqi_1): New expanders.
	(strlenqi_1, strlenqi_rex_1): Prefix insn names with *.
	(strlenqi_1): New expander.
	* config/i386/i386.h (ix86_set_move_mem_attrs): Remove prototype.
	
	2003-04-21  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
	
	* expr.c (store_constructor): Set RTX_UNCHANGING_P if readonly_field_p
	before clearing.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=1.13152.2.657.2.27.2.187&r2=1.13152.2.657.2.27.2.188
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/emit-rtl.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=1.249.2.10.4.3&r2=1.249.2.10.4.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/expr.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=1.423.2.19.4.1.2.20&r2=1.423.2.19.4.1.2.21
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386-protos.h.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=1.68.2.3.4.6&r2=1.68.2.3.4.7
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.md.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=1.339.2.13.2.1.2.20&r2=1.339.2.13.2.1.2.21
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=1.368.2.19.2.2.2.37&r2=1.368.2.19.2.2.2.38
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/20040216-1.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=NONE&r2=1.1.2.1



-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (19 preceding siblings ...)
  2004-02-28 11:26 ` cvs-commit at gcc dot gnu dot org
@ 2004-03-02 23:43 ` rth at gcc dot gnu dot org
  2004-03-03  0:58 ` dave at hiauly1 dot hia dot nrc dot ca
                   ` (22 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: rth at gcc dot gnu dot org @ 2004-03-02 23:43 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From rth at gcc dot gnu dot org  2004-03-02 23:43 -------
I am distinctly tired of this RTX_UNCHANGING_P mess.  It's demonstrably so
badly designed that no-one has a good handle on how to fix it properly.

I propose that it simply be disabled on 3.4/3.5, and hope to fix the problem
differently with tree-ssa.

-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (20 preceding siblings ...)
  2004-03-02 23:43 ` [Bug optimization/13424] [3.4/3.5 " rth at gcc dot gnu dot org
@ 2004-03-03  0:58 ` dave at hiauly1 dot hia dot nrc dot ca
  2004-03-16 21:18 ` ebotcazou at gcc dot gnu dot org
                   ` (21 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: dave at hiauly1 dot hia dot nrc dot ca @ 2004-03-03  0:58 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2004-03-03 00:58 -------
Subject: Re:  [3.4/3.5 Regression] gcc.dg/20031202-1.c

> ------- Additional Comments From rth at gcc dot gnu dot org  2004-03-02
> 23:43 -------
> I am distinctly tired of this RTX_UNCHANGING_P mess.  It's demonstrably so
> badly designed that no-one has a good handle on how to fix it properly.
> 
> I propose that it simply be disabled on 3.4/3.5, and hope to fix the problem
> differently with tree-ssa.

The patch that Jakub proposed for 3.3 (?) fixed the test failure on the
PA but as noted in the discussion at the time it wasn't a proper fix.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)

Index: expr.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/expr.c,v
retrieving revision 1.610
diff -u -3 -p -r1.610 expr.c
--- expr.c	1 Jan 2004 14:13:41 -0000	1.610
+++ expr.c	2 Jan 2004 03:32:49 -0000
@@ -4565,15 +4565,7 @@ store_constructor (tree exp, rtx target,
 		   || ((HOST_WIDE_INT) GET_MODE_SIZE (GET_MODE (target))
 		       == size)))
 	{
-	  rtx xtarget = target;
-
-	  if (readonly_fields_p (type))
-	    {
-	      xtarget = copy_rtx (xtarget);
-	      RTX_UNCHANGING_P (xtarget) = 1;
-	    }
-
-	  clear_storage (xtarget, GEN_INT (size));
+	  clear_storage (target, GEN_INT (size));
 	  cleared = 1;
 	}
 
@@ -4994,9 +4986,9 @@ store_constructor (tree exp, rtx target,
 		  target = copy_rtx (target);
 		  MEM_KEEP_ALIAS_SET_P (target) = 1;
 		}
-	      else
-		store_constructor_field (target, bitsize, bitpos, mode, value,
-					 type, cleared, get_alias_set (elttype));
+
+	     store_constructor_field (target, bitsize, bitpos, mode, value,
+				      type, cleared, get_alias_set (elttype));
 	    }
 	}
       if (vector)


-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (21 preceding siblings ...)
  2004-03-03  0:58 ` dave at hiauly1 dot hia dot nrc dot ca
@ 2004-03-16 21:18 ` ebotcazou at gcc dot gnu dot org
  2004-03-16 21:23 ` ebotcazou at gcc dot gnu dot org
                   ` (20 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-03-16 21:18 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-03-16 21:18 -------
Testing patch from the ACT tree.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |ebotcazou at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (22 preceding siblings ...)
  2004-03-16 21:18 ` ebotcazou at gcc dot gnu dot org
@ 2004-03-16 21:23 ` ebotcazou at gcc dot gnu dot org
  2004-03-17  3:21 ` dave at hiauly1 dot hia dot nrc dot ca
                   ` (19 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-03-16 21:23 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-03-16 21:23 -------
Dave, could you tell me if the attached patch does fix the problem on HP-PA?  TIA.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|ebotcazou at gcc dot gnu dot|
                   |org                         |


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (23 preceding siblings ...)
  2004-03-16 21:23 ` ebotcazou at gcc dot gnu dot org
@ 2004-03-17  3:21 ` dave at hiauly1 dot hia dot nrc dot ca
  2004-03-17 10:13 ` ebotcazou at gcc dot gnu dot org
                   ` (18 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: dave at hiauly1 dot hia dot nrc dot ca @ 2004-03-17  3:21 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2004-03-17 03:21 -------
Subject: Re:  [3.4/3.5 Regression] gcc.dg/20031202-1.c

> Dave, could you tell me if the attached patch does fix the problem on HP-PA?
> TIA.

It doesn't fix the failure of gcc.dg/20031202-1.c on hppa-linux.

Dave


-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (24 preceding siblings ...)
  2004-03-17  3:21 ` dave at hiauly1 dot hia dot nrc dot ca
@ 2004-03-17 10:13 ` ebotcazou at gcc dot gnu dot org
  2004-03-17 17:57 ` ebotcazou at gcc dot gnu dot org
                   ` (17 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-03-17 10:13 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-03-17 10:13 -------
Yes, actually it makes it fail everywhere!

The problem is that the C front-end is relying on the clearing optimization to
implement the semantics mandated by C99 $6.7.8 [19].


-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (25 preceding siblings ...)
  2004-03-17 10:13 ` ebotcazou at gcc dot gnu dot org
@ 2004-03-17 17:57 ` ebotcazou at gcc dot gnu dot org
  2004-03-18  2:13 ` dave at hiauly1 dot hia dot nrc dot ca
                   ` (16 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-03-17 17:57 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-03-17 17:57 -------
Dave, here's another patch based on Mark's suggestion.



-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (26 preceding siblings ...)
  2004-03-17 17:57 ` ebotcazou at gcc dot gnu dot org
@ 2004-03-18  2:13 ` dave at hiauly1 dot hia dot nrc dot ca
  2004-03-27 16:10 ` cvs-commit at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: dave at hiauly1 dot hia dot nrc dot ca @ 2004-03-18  2:13 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2004-03-18 02:13 -------
Subject: Re:  [3.4/3.5 Regression] gcc.dg/20031202-1.c

>  --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=5938&action=view)
> Second tentative patch.

This works!

Dave


-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (27 preceding siblings ...)
  2004-03-18  2:13 ` dave at hiauly1 dot hia dot nrc dot ca
@ 2004-03-27 16:10 ` cvs-commit at gcc dot gnu dot org
  2004-04-02 23:06 ` cvs-commit at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-03-27 16:10 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-03-27 16:10 -------
Subject: Bug 13424

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_3-rhl-branch
Changes by:	jakub@gcc.gnu.org	2004-03-27 16:10:09

Modified files:
	gcc            : ChangeLog 
	gcc/config/i386: i386-protos.h i386.md i386.c 
	gcc            : emit-rtl.c expr.c 
Added files:
	gcc/testsuite/gcc.dg: 20040216-1.c 

Log message:
	2004-02-16  Jakub Jelinek  <jakub@redhat.com>
	
	PR optimization/13424
	* expr.c (store_constructor): Revert 2003-12-03 change.
	
	* emit-rtl.c (change_address): Check also if MEM_ATTRS is set as
	expected before returning early.  Avoid sharing RTL if they
	need to be changed.
	
	* config/i386/i386.c (ix86_expand_movstr): Rework rep_mov and strmov
	handling so that memory attributes are preserved.  Don't call
	ix86_set_move_mem_attrs.
	(ix86_set_move_mem_attrs_1, ix86_set_move_mem_attrs): Removed.
	(ix86_expand_clrstr): Rename src argument to
	dst.  Rework rep_stos and strset handling so that memory attributes
	are preserved.
	(ix86_expand_strlen): Pass src argument to
	ix86_expand_strlensi_unroll_1.  Rework strlenqi_1 handling so that
	memory attributes are preserved.
	(ix86_expand_strlensi_unroll_1): Add src argument.  Use
	change_address instead of gen_rtx_MEM.
	* config/i386/i386.md (strmov, strmov_singleop, rep_mov): New
	expanders.
	(strmovdi_rex64, strmovsi, strmovsi_rex64, strmovhi, strmovhi_rex64,
	strmovqi, strmovqi_rex64): Remove.
	(rep_mov*, strmov*): Prefix insn names with *.
	(strset, strset_singleop, rep_stos): New expanders.
	(strsetdi_rex64, strsetsi, strsetsi_rex64, strsethi, strsethi_rex64,
	strsetqi, strsetqi_rex64): Remove.
	(rep_stos*, strset*): Prefix insn names with *.
	(rep_stosqi_rex64): Likewise.  Fix mode of dirflag reg from DImode
	to SImode.
	(cmpstrsi): Rework cmpstrqi_1 handling so that memory attributes
	are preserved.
	(cmpstrqi_nz_1, cmpstrqi_nz_rex_1, cmpstrqi_1, cmpstrqi_rex_1):
	Prefix insn names with *.
	(cmpstrqi_nz_1, cmpstrqi_1): New expanders.
	(strlenqi_1, strlenqi_rex_1): Prefix insn names with *.
	(strlenqi_1): New expander.
	* config/i386/i386.h (ix86_set_move_mem_attrs): Remove prototype.
	
	2003-04-21  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
	
	* expr.c (store_constructor): Set RTX_UNCHANGING_P if readonly_field_p
	before clearing.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=1.16114.2.523.2.94&r2=1.16114.2.523.2.95
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386-protos.h.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=1.86.2.1.4.1&r2=1.86.2.1.4.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.md.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=1.404.2.14.4.11&r2=1.404.2.14.4.12
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=1.495.2.20.4.19&r2=1.495.2.20.4.20
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/emit-rtl.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=1.303.2.1.2.2&r2=1.303.2.1.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/expr.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=1.498.2.17.2.12&r2=1.498.2.17.2.13
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/20040216-1.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=NONE&r2=1.1.4.1



-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (28 preceding siblings ...)
  2004-03-27 16:10 ` cvs-commit at gcc dot gnu dot org
@ 2004-04-02 23:06 ` cvs-commit at gcc dot gnu dot org
  2004-04-05  7:46 ` steven at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-04-02 23:06 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-04-02 23:05 -------
Subject: Bug 13424

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_4-branch
Changes by:	jakub@gcc.gnu.org	2004-04-02 23:05:44

Modified files:
	gcc            : ChangeLog explow.c expr.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/gcc.c-torture/execute: 20040401-1.c 
	gcc/testsuite/gcc.dg: 20040302-1.c 

Log message:
	PR optimization/13424, optimization/12419
	* explow.c (maybe_set_unchanging): Revert 2003-04-07 patch.
	Set RTX_UNCHANGING_P even for read-only DECL_EXTERNAL decls.
	* expr.c (store_constructor): When clearing aggregate because
	of an incomplete or mostly zero constructor, do the clearing
	without /u flag and then emit a blockage.
	
	* gcc.dg/20040302-1.c: New test.
	* gcc.c-torture/execute/20040401-1.c: New test.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=2.2326.2.377&r2=2.2326.2.378
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/explow.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.118&r2=1.118.4.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/expr.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.615.4.10&r2=1.615.4.11
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.3389.2.161&r2=1.3389.2.162
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.c-torture/execute/20040401-1.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/20040302-1.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=NONE&r2=1.1.2.1



-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (29 preceding siblings ...)
  2004-04-02 23:06 ` cvs-commit at gcc dot gnu dot org
@ 2004-04-05  7:46 ` steven at gcc dot gnu dot org
  2004-04-05 15:35 ` jakub at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: steven at gcc dot gnu dot org @ 2004-04-05  7:46 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From steven at gcc dot gnu dot org  2004-04-05 07:46 -------
So is this fixed now, can the bug report be closed? 

-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (30 preceding siblings ...)
  2004-04-05  7:46 ` steven at gcc dot gnu dot org
@ 2004-04-05 15:35 ` jakub at gcc dot gnu dot org
  2004-04-05 16:24 ` dave at hiauly1 dot hia dot nrc dot ca
                   ` (11 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: jakub at gcc dot gnu dot org @ 2004-04-05 15:35 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From jakub at gcc dot gnu dot org  2004-04-05 15:34 -------
It ought to be fixed on gcc-3_4-branch only ATM (no trunk yet) and
not on HPPA which has buggy backend, see:
http://gcc.gnu.org/ml/gcc-patches/2004-04/msg00186.html


-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (31 preceding siblings ...)
  2004-04-05 15:35 ` jakub at gcc dot gnu dot org
@ 2004-04-05 16:24 ` dave at hiauly1 dot hia dot nrc dot ca
  2004-04-05 16:41 ` cvs-commit at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: dave at hiauly1 dot hia dot nrc dot ca @ 2004-04-05 16:24 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2004-04-05 16:24 -------
Subject: Re:  [3.4/3.5 Regression] gcc.dg/20031202-1.c

> It ought to be fixed on gcc-3_4-branch only ATM (no trunk yet) and
> not on HPPA which has buggy backend, see:
> http://gcc.gnu.org/ml/gcc-patches/2004-04/msg00186.html

With the enclosed patch, the regression introduced by Jakub's fix
for this PR is fixed (c/14828).  I confirm that the problem reported
in this PR is also fixed.  I also don't see the failure on the 3.5 branch
anymore when the enclosed patch is installed.  The patch also fixes the
Ada bootstrap problem reported in 14462.  If this patch is approved,
I would like to close 13424, 14462 and 14828.

If there are remaining issues with RTX_UNCHANGING_P on 3.5, I think
they should be placed in a new PR.

The enclosed patch has been tested on hppa-unknown-linux-gnu (3.4.0, 3.5.0),
hppa2.0w-hp-hpux11.00 (3.4), hppa64-hp-hpux11.00 (3.4) and hppa64-hp-hpux11.11
(3.5 c only) with no observed regressions.

Mark, is this ok for 3.4?

I very much appreciate all the work that Jakub did in resolving this
problem.  I just extended and tested what he had done.

Hopefully, this closes the long saga in reworking movstrsi.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)

2004-04-05  Jakub Jelinek  <jakuB@redhat.com>
	  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	PR optimization/13424 (hppa), bootstrap/14462, c/14828
	* pa.md: Use replace_equiv_address to retain the attributes of the
	memory operands used in the split and peephole2 patterns for optimizing
	the pre-reload movstrsi, movstrdi, clrstrsi and clrstrdi patterns.

Index: pa.md
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/pa/pa.md,v
retrieving revision 1.138.4.4
diff -u -3 -p -r1.138.4.4 pa.md
--- pa.md	6 Mar 2004 19:55:09 -0000	1.138.4.4
+++ pa.md	3 Apr 2004 17:03:15 -0000
@@ -3206,8 +3204,8 @@
   [(set_attr "type" "multi,multi")])
 
 (define_split
-  [(parallel [(set (mem:BLK (match_operand:SI 0 "register_operand" ""))
-		   (mem:BLK (match_operand:SI 1 "register_operand" "")))
+  [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
+		   (match_operand:BLK 1 "memory_operand" ""))
 	      (clobber (match_operand:SI 2 "register_operand" ""))
 	      (clobber (match_operand:SI 3 "register_operand" ""))
 	      (clobber (match_operand:SI 6 "register_operand" ""))
@@ -3215,10 +3213,14 @@
 	      (clobber (match_operand:SI 8 "register_operand" ""))
 	      (use (match_operand:SI 4 "arith_operand" ""))
 	      (use (match_operand:SI 5 "const_int_operand" ""))])]
-  "!TARGET_64BIT && reload_completed && !flag_peephole2"
-  [(set (match_dup 7) (match_dup 0))
-   (set (match_dup 8) (match_dup 1))
-   (parallel [(set (mem:BLK (match_dup 7)) (mem:BLK (match_dup 8)))
+  "!TARGET_64BIT && reload_completed && !flag_peephole2
+   && GET_CODE (operands[0]) == MEM
+   && register_operand (XEXP (operands[0], 0), SImode)
+   && GET_CODE (operands[1]) == MEM
+   && register_operand (XEXP (operands[1], 0), SImode)"
+  [(set (match_dup 7) (match_dup 9))
+   (set (match_dup 8) (match_dup 10))
+   (parallel [(set (match_dup 0) (match_dup 1))
    	      (clobber (match_dup 2))
    	      (clobber (match_dup 3))
    	      (clobber (match_dup 6))
@@ -3227,11 +3229,17 @@
    	      (use (match_dup 4))
    	      (use (match_dup 5))
 	      (const_int 0)])]
-  "")
+  "
+{
+  operands[9] = XEXP (operands[0], 0);
+  operands[10] = XEXP (operands[1], 0);
+  operands[0] = replace_equiv_address (operands[0], operands[7]);
+  operands[1] = replace_equiv_address (operands[1], operands[8]);
+}")
 
 (define_peephole2
-  [(parallel [(set (mem:BLK (match_operand:SI 0 "register_operand" ""))
-		   (mem:BLK (match_operand:SI 1 "register_operand" "")))
+  [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
+		   (match_operand:BLK 1 "memory_operand" ""))
 	      (clobber (match_operand:SI 2 "register_operand" ""))
 	      (clobber (match_operand:SI 3 "register_operand" ""))
 	      (clobber (match_operand:SI 6 "register_operand" ""))
@@ -3239,8 +3247,12 @@
 	      (clobber (match_operand:SI 8 "register_operand" ""))
 	      (use (match_operand:SI 4 "arith_operand" ""))
 	      (use (match_operand:SI 5 "const_int_operand" ""))])]
-  "!TARGET_64BIT"
-  [(parallel [(set (mem:BLK (match_dup 7)) (mem:BLK (match_dup 8)))
+  "!TARGET_64BIT
+   && GET_CODE (operands[0]) == MEM
+   && register_operand (XEXP (operands[0], 0), SImode)
+   && GET_CODE (operands[1]) == MEM
+   && register_operand (XEXP (operands[1], 0), SImode)"
+  [(parallel [(set (match_dup 0) (match_dup 1))
    	      (clobber (match_dup 2))
    	      (clobber (match_dup 3))
    	      (clobber (match_dup 6))
@@ -3251,15 +3263,23 @@
 	      (const_int 0)])]
   "
 {
-  if (dead_or_set_p (curr_insn, operands[0]))
-    operands[7] = operands[0];
+  rtx addr = XEXP (operands[0], 0);
+  if (dead_or_set_p (curr_insn, addr))
+    operands[7] = addr;
   else
-    emit_insn (gen_rtx_SET (VOIDmode, operands[7], operands[0]));
+    {
+      emit_insn (gen_rtx_SET (VOIDmode, operands[7], addr));
+      operands[0] = replace_equiv_address (operands[0], operands[7]);
+    }
 
-  if (dead_or_set_p (curr_insn, operands[1]))
-    operands[8] = operands[1];
+  addr = XEXP (operands[1], 0);
+  if (dead_or_set_p (curr_insn, addr))
+    operands[8] = addr;
   else
-    emit_insn (gen_rtx_SET (VOIDmode, operands[8], operands[1]));
+    {
+      emit_insn (gen_rtx_SET (VOIDmode, operands[8], addr));
+      operands[1] = replace_equiv_address (operands[1], operands[8]);
+    }
 }")
 
 (define_insn "movstrsi_postreload"
@@ -3372,8 +3392,8 @@
   [(set_attr "type" "multi,multi")])
 
 (define_split
-  [(parallel [(set (mem:BLK (match_operand:DI 0 "register_operand" ""))
-		   (mem:BLK (match_operand:DI 1 "register_operand" "")))
+  [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
+		   (match_operand:BLK 1 "memory_operand" ""))
 	      (clobber (match_operand:DI 2 "register_operand" ""))
 	      (clobber (match_operand:DI 3 "register_operand" ""))
 	      (clobber (match_operand:DI 6 "register_operand" ""))
@@ -3381,10 +3401,14 @@
 	      (clobber (match_operand:DI 8 "register_operand" ""))
 	      (use (match_operand:DI 4 "arith_operand" ""))
 	      (use (match_operand:DI 5 "const_int_operand" ""))])]
-  "TARGET_64BIT && reload_completed && !flag_peephole2"
-  [(set (match_dup 7) (match_dup 0))
-   (set (match_dup 8) (match_dup 1))
-   (parallel [(set (mem:BLK (match_dup 7)) (mem:BLK (match_dup 8)))
+  "TARGET_64BIT && reload_completed && !flag_peephole2
+   && GET_CODE (operands[0]) == MEM
+   && register_operand (XEXP (operands[0], 0), DImode)
+   && GET_CODE (operands[1]) == MEM
+   && register_operand (XEXP (operands[1], 0), DImode)"
+  [(set (match_dup 7) (match_dup 9))
+   (set (match_dup 8) (match_dup 10))
+   (parallel [(set (match_dup 0) (match_dup 1))
    	      (clobber (match_dup 2))
    	      (clobber (match_dup 3))
    	      (clobber (match_dup 6))
@@ -3393,11 +3417,17 @@
    	      (use (match_dup 4))
    	      (use (match_dup 5))
 	      (const_int 0)])]
-  "")
+  "
+{
+  operands[9] = XEXP (operands[0], 0);
+  operands[10] = XEXP (operands[1], 0);
+  operands[0] = replace_equiv_address (operands[0], operands[7]);
+  operands[1] = replace_equiv_address (operands[1], operands[8]);
+}")
 
 (define_peephole2
-  [(parallel [(set (mem:BLK (match_operand:DI 0 "register_operand" ""))
-		   (mem:BLK (match_operand:DI 1 "register_operand" "")))
+  [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
+		   (match_operand:BLK 1 "memory_operand" ""))
 	      (clobber (match_operand:DI 2 "register_operand" ""))
 	      (clobber (match_operand:DI 3 "register_operand" ""))
 	      (clobber (match_operand:DI 6 "register_operand" ""))
@@ -3405,8 +3435,12 @@
 	      (clobber (match_operand:DI 8 "register_operand" ""))
 	      (use (match_operand:DI 4 "arith_operand" ""))
 	      (use (match_operand:DI 5 "const_int_operand" ""))])]
-  "TARGET_64BIT"
-  [(parallel [(set (mem:BLK (match_dup 7)) (mem:BLK (match_dup 8)))
+  "TARGET_64BIT
+   && GET_CODE (operands[0]) == MEM
+   && register_operand (XEXP (operands[0], 0), DImode)
+   && GET_CODE (operands[1]) == MEM
+   && register_operand (XEXP (operands[1], 0), DImode)"
+  [(parallel [(set (match_dup 0) (match_dup 1))
    	      (clobber (match_dup 2))
    	      (clobber (match_dup 3))
    	      (clobber (match_dup 6))
@@ -3417,15 +3451,23 @@
 	      (const_int 0)])]
   "
 {
-  if (dead_or_set_p (curr_insn, operands[0]))
-    operands[7] = operands[0];
+  rtx addr = XEXP (operands[0], 0);
+  if (dead_or_set_p (curr_insn, addr))
+    operands[7] = addr;
   else
-    emit_insn (gen_rtx_SET (VOIDmode, operands[7], operands[0]));
+    {
+      emit_insn (gen_rtx_SET (VOIDmode, operands[7], addr));
+      operands[0] = replace_equiv_address (operands[0], operands[7]);
+    }
 
-  if (dead_or_set_p (curr_insn, operands[1]))
-    operands[8] = operands[1];
+  addr = XEXP (operands[1], 0);
+  if (dead_or_set_p (curr_insn, addr))
+    operands[8] = addr;
   else
-    emit_insn (gen_rtx_SET (VOIDmode, operands[8], operands[1]));
+    {
+      emit_insn (gen_rtx_SET (VOIDmode, operands[8], addr));
+      operands[1] = replace_equiv_address (operands[1], operands[8]);
+    }
 }")
 
 (define_insn "movstrdi_postreload"
@@ -3491,31 +3533,39 @@
   [(set_attr "type" "multi,multi")])
 
 (define_split
-  [(parallel [(set (mem:BLK (match_operand:SI 0 "register_operand" ""))
+  [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
 		   (const_int 0))
 	      (clobber (match_operand:SI 1 "register_operand" ""))
 	      (clobber (match_operand:SI 4 "register_operand" ""))
 	      (use (match_operand:SI 2 "arith_operand" ""))
 	      (use (match_operand:SI 3 "const_int_operand" ""))])]
-  "!TARGET_64BIT && reload_completed && !flag_peephole2"
-  [(set (match_dup 4) (match_dup 0))
-   (parallel [(set (mem:BLK (match_dup 4)) (const_int 0))
+  "!TARGET_64BIT && reload_completed && !flag_peephole2
+   && GET_CODE (operands[0]) == MEM
+   && register_operand (XEXP (operands[0], 0), SImode)"
+  [(set (match_dup 4) (match_dup 5))
+   (parallel [(set (match_dup 0) (const_int 0))
    	      (clobber (match_dup 1))
    	      (clobber (match_dup 4))
    	      (use (match_dup 2))
    	      (use (match_dup 3))
 	      (const_int 0)])]
-  "")
+  "
+{
+  operands[5] = XEXP (operands[0], 0);
+  operands[0] = replace_equiv_address (operands[0], operands[4]);
+}")
 
 (define_peephole2
-  [(parallel [(set (mem:BLK (match_operand:SI 0 "register_operand" ""))
+  [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
 		   (const_int 0))
 	      (clobber (match_operand:SI 1 "register_operand" ""))
 	      (clobber (match_operand:SI 4 "register_operand" ""))
 	      (use (match_operand:SI 2 "arith_operand" ""))
 	      (use (match_operand:SI 3 "const_int_operand" ""))])]
-  "!TARGET_64BIT"
-  [(parallel [(set (mem:BLK (match_dup 4)) (const_int 0))
+  "!TARGET_64BIT
+   && GET_CODE (operands[0]) == MEM
+   && register_operand (XEXP (operands[0], 0), SImode)"
+  [(parallel [(set (match_dup 0) (const_int 0))
    	      (clobber (match_dup 1))
    	      (clobber (match_dup 4))
    	      (use (match_dup 2))
@@ -3523,10 +3573,14 @@
 	      (const_int 0)])]
   "
 {
-  if (dead_or_set_p (curr_insn, operands[0]))
-    operands[4] = operands[0];
+  rtx addr = XEXP (operands[0], 0);
+  if (dead_or_set_p (curr_insn, addr))
+    operands[4] = addr;
   else
-    emit_insn (gen_rtx_SET (VOIDmode, operands[4], operands[0]));
+    {
+      emit_insn (gen_rtx_SET (VOIDmode, operands[4], addr));
+      operands[0] = replace_equiv_address (operands[0], operands[4]);
+    }
 }")
 
 (define_insn "clrstrsi_postreload"
@@ -3589,31 +3643,39 @@
   [(set_attr "type" "multi,multi")])
 
 (define_split
-  [(parallel [(set (mem:BLK (match_operand:DI 0 "register_operand" ""))
+  [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
 		   (const_int 0))
 	      (clobber (match_operand:DI 1 "register_operand" ""))
 	      (clobber (match_operand:DI 4 "register_operand" ""))
 	      (use (match_operand:DI 2 "arith_operand" ""))
 	      (use (match_operand:DI 3 "const_int_operand" ""))])]
-  "TARGET_64BIT && reload_completed && !flag_peephole2"
-  [(set (match_dup 4) (match_dup 0))
-   (parallel [(set (mem:BLK (match_dup 4)) (const_int 0))
+  "TARGET_64BIT && reload_completed && !flag_peephole2
+   && GET_CODE (operands[0]) == MEM
+   && register_operand (XEXP (operands[0], 0), DImode)"
+  [(set (match_dup 4) (match_dup 5))
+   (parallel [(set (match_dup 0) (const_int 0))
    	      (clobber (match_dup 1))
    	      (clobber (match_dup 4))
    	      (use (match_dup 2))
    	      (use (match_dup 3))
 	      (const_int 0)])]
-  "")
+  "
+{
+  operands[5] = XEXP (operands[0], 0);
+  operands[0] = replace_equiv_address (operands[0], operands[4]);
+}")
 
 (define_peephole2
-  [(parallel [(set (mem:BLK (match_operand:DI 0 "register_operand" ""))
+  [(parallel [(set (match_operand:BLK 0 "memory_operand" "")
 		   (const_int 0))
 	      (clobber (match_operand:DI 1 "register_operand" ""))
 	      (clobber (match_operand:DI 4 "register_operand" ""))
 	      (use (match_operand:DI 2 "arith_operand" ""))
 	      (use (match_operand:DI 3 "const_int_operand" ""))])]
-  "TARGET_64BIT"
-  [(parallel [(set (mem:BLK (match_dup 4)) (const_int 0))
+  "TARGET_64BIT
+   && GET_CODE (operands[0]) == MEM
+   && register_operand (XEXP (operands[0], 0), DImode)"
+  [(parallel [(set (match_dup 0) (const_int 0))
    	      (clobber (match_dup 1))
    	      (clobber (match_dup 4))
    	      (use (match_dup 2))
@@ -3621,10 +3683,14 @@
 	      (const_int 0)])]
   "
 {  
-  if (dead_or_set_p (curr_insn, operands[0]))
-    operands[4] = operands[0];
+  rtx addr = XEXP (operands[0], 0);
+  if (dead_or_set_p (curr_insn, addr))
+    operands[4] = addr;
   else
-    emit_insn (gen_rtx_SET (VOIDmode, operands[4], operands[0]));
+    {
+      emit_insn (gen_rtx_SET (VOIDmode, operands[4], addr));
+      operands[0] = replace_equiv_address (operands[0], operands[4]);
+    }
 }")
 
 (define_insn "clrstrdi_postreload"


-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (32 preceding siblings ...)
  2004-04-05 16:24 ` dave at hiauly1 dot hia dot nrc dot ca
@ 2004-04-05 16:41 ` cvs-commit at gcc dot gnu dot org
  2004-04-05 17:58 ` ebotcazou at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-04-05 16:41 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-04-05 16:41 -------
Subject: Bug 13424

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	danglin@gcc.gnu.org	2004-04-05 16:41:20

Modified files:
	gcc            : ChangeLog 
	gcc/config/pa  : pa.md 

Log message:
	PR optimization/13424 (hppa), bootstrap/14462, c/14828
	* pa.md: Use replace_equiv_address to retain the attributes of the
	memory operands used in the split and peephole2 patterns for optimizing
	the pre-reload movstrsi, movstrdi, clrstrsi and clrstrdi patterns.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.3345&r2=2.3346
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/pa/pa.md.diff?cvsroot=gcc&r1=1.143&r2=1.144



-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (33 preceding siblings ...)
  2004-04-05 16:41 ` cvs-commit at gcc dot gnu dot org
@ 2004-04-05 17:58 ` ebotcazou at gcc dot gnu dot org
  2004-04-06  8:52 ` mark at codesourcery dot com
                   ` (8 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-04-05 17:58 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From ebotcazou at gcc dot gnu dot org  2004-04-05 17:58 -------
The SPARC bug is now fixed on the 3.4 branch.  YYYYYYYES :-)

But fingers crossed though, because

  * explow.c (maybe_set_unchanging): Revert 2003-04-07 patch.

may bring back problems for random back-ends.


-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (34 preceding siblings ...)
  2004-04-05 17:58 ` ebotcazou at gcc dot gnu dot org
@ 2004-04-06  8:52 ` mark at codesourcery dot com
  2004-04-06  9:04 ` cvs-commit at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: mark at codesourcery dot com @ 2004-04-06  8:52 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From mark at codesourcery dot com  2004-04-06 08:51 -------
Subject: Re:  [3.4/3.5 Regression] gcc.dg/20031202-1.c

John David Anglin wrote:

>>It ought to be fixed on gcc-3_4-branch only ATM (no trunk yet) and
>>not on HPPA which has buggy backend, see:
>>http://gcc.gnu.org/ml/gcc-patches/2004-04/msg00186.html
>>    
>>
>
>With the enclosed patch, the regression introduced by Jakub's fix
>for this PR is fixed (c/14828).  I confirm that the problem reported
>in this PR is also fixed.  I also don't see the failure on the 3.5 branch
>anymore when the enclosed patch is installed.  The patch also fixes the
>Ada bootstrap problem reported in 14462.  If this patch is approved,
>I would like to close 13424, 14462 and 14828.
>  
>
Yes, this patch is OK, and it is OK to close the PRs after you put it in.

Please put that in 3.4.0 and let me know when it is in.

I am holding up the prerelease for this patch.

>If there are remaining issues with RTX_UNCHANGING_P on 3.5, I think
>they should be placed in a new PR.
>  
>
Agreed.

Thanks for your help!



-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (35 preceding siblings ...)
  2004-04-06  8:52 ` mark at codesourcery dot com
@ 2004-04-06  9:04 ` cvs-commit at gcc dot gnu dot org
  2004-04-06 16:05 ` danglin at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-04-06  9:04 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-04-06 09:04 -------
Subject: Bug 13424

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_4-branch
Changes by:	mmitchel@gcc.gnu.org	2004-04-06 09:03:57

Modified files:
	gcc            : ChangeLog 
	gcc/config/pa  : pa.md 

Log message:
	PR optimization/13424 (hppa), bootstrap/14462, c/14828
	* pa.md: Use replace_equiv_address to retain the attributes of the
	memory operands used in the split and peephole2 patterns for optimizing
	the pre-reload movstrsi, movstrdi, clrstrsi and clrstrdi patterns.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=2.2326.2.381&r2=2.2326.2.382
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/pa/pa.md.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.138.4.4&r2=1.138.4.5



-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (36 preceding siblings ...)
  2004-04-06  9:04 ` cvs-commit at gcc dot gnu dot org
@ 2004-04-06 16:05 ` danglin at gcc dot gnu dot org
  2004-04-06 16:16 ` bangerth at dealii dot org
                   ` (5 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: danglin at gcc dot gnu dot org @ 2004-04-06 16:05 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From danglin at gcc dot gnu dot org  2004-04-06 16:05 -------
Fixed.

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


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (37 preceding siblings ...)
  2004-04-06 16:05 ` danglin at gcc dot gnu dot org
@ 2004-04-06 16:16 ` bangerth at dealii dot org
  2004-04-06 16:20 ` dave at hiauly1 dot hia dot nrc dot ca
                   ` (4 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: bangerth at dealii dot org @ 2004-04-06 16:16 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From bangerth at dealii dot org  2004-04-06 16:16 -------
John, I am unaware of all the detours this has taken, but 
- the synopsis of the bug says this is a 3.4/3.5 regression 
- the patch seems to have only been applied to 3.4 
 
Can you say, in one word, whether closing the PR is intentional, and/or 
whether it should be kept open for 3.5? 
 
Thanks for answering a maybe naive question, 
  W. 

-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (38 preceding siblings ...)
  2004-04-06 16:16 ` bangerth at dealii dot org
@ 2004-04-06 16:20 ` dave at hiauly1 dot hia dot nrc dot ca
  2004-04-06 17:53 ` bangerth at dealii dot org
                   ` (3 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: dave at hiauly1 dot hia dot nrc dot ca @ 2004-04-06 16:20 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2004-04-06 16:20 -------
Subject: Re:  [3.4/3.5 Regression] gcc.dg/20031202-1.c

> ------- Additional Comments From bangerth at dealii dot org  2004-04-06
> 16:16 -------
> John, I am unaware of all the detours this has taken, but 
> - the synopsis of the bug says this is a 3.4/3.5 regression 
> - the patch seems to have only been applied to 3.4 

I applied the patch to 3.5 yesterday.  Mark applied the patch to
3.4 last night.

Dave


-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (39 preceding siblings ...)
  2004-04-06 16:20 ` dave at hiauly1 dot hia dot nrc dot ca
@ 2004-04-06 17:53 ` bangerth at dealii dot org
  2004-04-06 18:08 ` dave at hiauly1 dot hia dot nrc dot ca
                   ` (2 subsequent siblings)
  43 siblings, 0 replies; 45+ messages in thread
From: bangerth at dealii dot org @ 2004-04-06 17:53 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From bangerth at dealii dot org  2004-04-06 17:53 -------
Dave, thanks for the feedback. Then it just didn't show up in the 
audit trail of this PR. I assume you know how to automatically get 
it there by putting something like "PR 13424" into the ChangeLog 
of a CVS commit. 
 
Thanks 
  Wolfgang 

-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (40 preceding siblings ...)
  2004-04-06 17:53 ` bangerth at dealii dot org
@ 2004-04-06 18:08 ` dave at hiauly1 dot hia dot nrc dot ca
  2004-04-06 20:44 ` bangerth at dealii dot org
  2004-04-13 20:42 ` cvs-commit at gcc dot gnu dot org
  43 siblings, 0 replies; 45+ messages in thread
From: dave at hiauly1 dot hia dot nrc dot ca @ 2004-04-06 18:08 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2004-04-06 18:07 -------
Subject: Re:  [3.4/3.5 Regression] gcc.dg/20031202-1.c

> Dave, thanks for the feedback. Then it just didn't show up in the 
> audit trail of this PR. I assume you know how to automatically get 
> it there by putting something like "PR 13424" into the ChangeLog 
> of a CVS commit. 

See comments #35 and #38.  However, I see the commits didn't show
up in 14462 and 14828.  Do multiple PR listings need to be on
separate lines in the ChangeLog of a CVS commit?

Dave


-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (41 preceding siblings ...)
  2004-04-06 18:08 ` dave at hiauly1 dot hia dot nrc dot ca
@ 2004-04-06 20:44 ` bangerth at dealii dot org
  2004-04-13 20:42 ` cvs-commit at gcc dot gnu dot org
  43 siblings, 0 replies; 45+ messages in thread
From: bangerth at dealii dot org @ 2004-04-06 20:44 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From bangerth at dealii dot org  2004-04-06 20:43 -------
Right, I'm sorry I missed comment #35 :-( 
As to the exact format, I don't know, but here is one that 
apparently made it into both PR audit trails: 
 
2004-03-06  Eric Botcazou  <ebotcazou@libertysurf.fr> 
 
	PR c/14465 
	PR c/14114 
	* c-decl (pushdecl): Revert previous change. 
 
So that seems to be a form that works. 
 
W. 

-- 


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


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

* [Bug optimization/13424] [3.4/3.5 Regression] gcc.dg/20031202-1.c is miscompiled
  2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
                   ` (42 preceding siblings ...)
  2004-04-06 20:44 ` bangerth at dealii dot org
@ 2004-04-13 20:42 ` cvs-commit at gcc dot gnu dot org
  43 siblings, 0 replies; 45+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-04-13 20:42 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-04-13 20:31 -------
Subject: Bug 13424

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_3-rhl-branch
Changes by:	jakub@gcc.gnu.org	2004-04-13 20:31:19

Modified files:
	gcc            : ChangeLog explow.c expr.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/gcc.c-torture/execute: 20030408-1.c 20040401-1.c 
	gcc/testsuite/gcc.dg: 20040302-1.c 

Log message:
	2004-04-02  Jakub Jelinek  <jakuB@redhat.com>
	Eric Botcazou  <ebotcazou@libertysurf.fr>
	
	PR optimization/13424, optimization/12419
	* explow.c (maybe_set_unchanging): Revert 2003-04-07 patch.
	* expr.c (store_constructor): When clearing aggregate because
	of an incomplete or mostly zero constructor, do the clearing
	without /u flag and then emit a blockage.
	
	* gcc.dg/20040302-1.c: New test.
	* gcc.c-torture/execute/20040401-1.c: New test.
	
	2003-04-08  Glen Nakamura  <glen@imodulo.com>
	
	* gcc.c-torture/execute/20030408-1.c: New test.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=1.16114.2.523.2.102&r2=1.16114.2.523.2.103
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/explow.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=1.104.4.1.4.2&r2=1.104.4.1.4.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/expr.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=1.498.2.17.2.15&r2=1.498.2.17.2.16
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=1.2261.2.170.2.54&r2=1.2261.2.170.2.55
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.c-torture/execute/20030408-1.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=NONE&r2=1.1.28.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.c-torture/execute/20040401-1.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=NONE&r2=1.1.6.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/20040302-1.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-rhl-branch&r1=NONE&r2=1.1.6.1



-- 


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


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

end of thread, other threads:[~2004-04-13 20:31 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-12-18  5:22 [Bug pending/13424] New: 20031202-1.c is miscompiled on all PA ports danglin at gcc dot gnu dot org
2003-12-18  5:25 ` [Bug optimization/13424] [3.4 Regression] " pinskia at gcc dot gnu dot org
2003-12-18 16:39 ` [Bug optimization/13424] [3.4 Regression] gcc.dg/20031202-1.c is miscompiled ebotcazou at gcc dot gnu dot org
2003-12-18 19:41 ` dave at hiauly1 dot hia dot nrc dot ca
2003-12-18 20:12 ` ebotcazou at gcc dot gnu dot org
2004-01-10  7:01 ` pinskia at gcc dot gnu dot org
2004-01-10  7:14 ` pinskia at gcc dot gnu dot org
2004-01-10 20:56 ` dave at hiauly1 dot hia dot nrc dot ca
2004-01-10 21:00 ` dave at hiauly1 dot hia dot nrc dot ca
2004-01-10 21:43 ` ebotcazou at gcc dot gnu dot org
2004-01-13 11:40 ` ebotcazou at gcc dot gnu dot org
2004-01-13 11:46 ` ebotcazou at gcc dot gnu dot org
2004-01-25 17:00 ` [Bug optimization/13424] [3.4/3.5 " schwab at suse dot de
2004-01-29  8:06 ` cvs-commit at gcc dot gnu dot org
2004-02-07  9:55 ` ebotcazou at gcc dot gnu dot org
2004-02-10 18:08 ` [Bug optimization/13424] [3.4 " cvs-commit at gcc dot gnu dot org
2004-02-10 20:34 ` pinskia at gcc dot gnu dot org
2004-02-21 23:34 ` danglin at gcc dot gnu dot org
2004-02-23  8:53 ` ebotcazou at gcc dot gnu dot org
2004-02-23  8:53 ` ebotcazou at gcc dot gnu dot org
2004-02-28 11:26 ` cvs-commit at gcc dot gnu dot org
2004-03-02 23:43 ` [Bug optimization/13424] [3.4/3.5 " rth at gcc dot gnu dot org
2004-03-03  0:58 ` dave at hiauly1 dot hia dot nrc dot ca
2004-03-16 21:18 ` ebotcazou at gcc dot gnu dot org
2004-03-16 21:23 ` ebotcazou at gcc dot gnu dot org
2004-03-17  3:21 ` dave at hiauly1 dot hia dot nrc dot ca
2004-03-17 10:13 ` ebotcazou at gcc dot gnu dot org
2004-03-17 17:57 ` ebotcazou at gcc dot gnu dot org
2004-03-18  2:13 ` dave at hiauly1 dot hia dot nrc dot ca
2004-03-27 16:10 ` cvs-commit at gcc dot gnu dot org
2004-04-02 23:06 ` cvs-commit at gcc dot gnu dot org
2004-04-05  7:46 ` steven at gcc dot gnu dot org
2004-04-05 15:35 ` jakub at gcc dot gnu dot org
2004-04-05 16:24 ` dave at hiauly1 dot hia dot nrc dot ca
2004-04-05 16:41 ` cvs-commit at gcc dot gnu dot org
2004-04-05 17:58 ` ebotcazou at gcc dot gnu dot org
2004-04-06  8:52 ` mark at codesourcery dot com
2004-04-06  9:04 ` cvs-commit at gcc dot gnu dot org
2004-04-06 16:05 ` danglin at gcc dot gnu dot org
2004-04-06 16:16 ` bangerth at dealii dot org
2004-04-06 16:20 ` dave at hiauly1 dot hia dot nrc dot ca
2004-04-06 17:53 ` bangerth at dealii dot org
2004-04-06 18:08 ` dave at hiauly1 dot hia dot nrc dot ca
2004-04-06 20:44 ` bangerth at dealii dot org
2004-04-13 20:42 ` cvs-commit 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).