* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
@ 2012-10-22 14:25 ` dominiq at lps dot ens.fr
2012-10-23 13:36 ` dominiq at lps dot ens.fr
` (29 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: dominiq at lps dot ens.fr @ 2012-10-22 14:25 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #1 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2012-10-22 14:24:51 UTC ---
Created attachment 28507
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28507
compressed archive for the test
The attachment contains the original source air_main.f90 without the
subroutines botwall and topwall which are in the files botwall.f90 and
topwall.f90, and the files datax.inp and datay.inp needed to run the test. It
can be used as
gfc -c -O2 -fgraphite-identity air_main.f90
gfortran -c -O2 -fgraphite-identity botwall.f90 topwall.f90
gfc air_main.o botwall.o topwall.o
With gfc any post r190619 gfortran and gfortran any version pre r188694, this
will give a working executable. If botwall.f90 and/or topwall.f90 is compiled
with a post r190619 gfortran, the executable will give NANs.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
2012-10-22 14:25 ` [Bug tree-optimization/55022] " dominiq at lps dot ens.fr
@ 2012-10-23 13:36 ` dominiq at lps dot ens.fr
2012-11-25 15:52 ` rguenth at gcc dot gnu.org
` (28 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: dominiq at lps dot ens.fr @ 2012-10-23 13:36 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #2 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2012-10-23 13:35:44 UTC ---
It likely has started after revision 189156.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
2012-10-22 14:25 ` [Bug tree-optimization/55022] " dominiq at lps dot ens.fr
2012-10-23 13:36 ` dominiq at lps dot ens.fr
@ 2012-11-25 15:52 ` rguenth at gcc dot gnu.org
2013-01-04 3:11 ` pinskia at gcc dot gnu.org
` (27 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-11-25 15:52 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |4.8.0
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (2 preceding siblings ...)
2012-11-25 15:52 ` rguenth at gcc dot gnu.org
@ 2013-01-04 3:11 ` pinskia at gcc dot gnu.org
2013-01-04 7:29 ` dominiq at lps dot ens.fr
` (26 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: pinskia at gcc dot gnu.org @ 2013-01-04 3:11 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target| |x86_64-*-*
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> 2013-01-04 03:10:36 UTC ---
Does this work now?
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (3 preceding siblings ...)
2013-01-04 3:11 ` pinskia at gcc dot gnu.org
@ 2013-01-04 7:29 ` dominiq at lps dot ens.fr
2013-02-05 15:58 ` aldyh at gcc dot gnu.org
` (25 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: dominiq at lps dot ens.fr @ 2013-01-04 7:29 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #4 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2013-01-04 07:29:09 UTC ---
> Does this work now?
Nope! -(r194872).
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (4 preceding siblings ...)
2013-01-04 7:29 ` dominiq at lps dot ens.fr
@ 2013-02-05 15:58 ` aldyh at gcc dot gnu.org
2013-02-05 16:01 ` dominiq at lps dot ens.fr
` (24 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: aldyh at gcc dot gnu.org @ 2013-02-05 15:58 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Aldy Hernandez <aldyh at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |aldyh at gcc dot gnu.org
AssignedTo|unassigned at gcc dot |aldyh at gcc dot gnu.org
|gnu.org |
--- Comment #5 from Aldy Hernandez <aldyh at gcc dot gnu.org> 2013-02-05 15:57:55 UTC ---
I'll take a peek.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (5 preceding siblings ...)
2013-02-05 15:58 ` aldyh at gcc dot gnu.org
@ 2013-02-05 16:01 ` dominiq at lps dot ens.fr
2013-02-05 16:11 ` grosser at gcc dot gnu.org
` (23 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: dominiq at lps dot ens.fr @ 2013-02-05 16:01 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #6 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2013-02-05 16:00:21 UTC ---
> I'll take a peek.
Great!-)
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (6 preceding siblings ...)
2013-02-05 16:01 ` dominiq at lps dot ens.fr
@ 2013-02-05 16:11 ` grosser at gcc dot gnu.org
2013-02-05 23:52 ` aldyh at gcc dot gnu.org
` (22 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: grosser at gcc dot gnu.org @ 2013-02-05 16:11 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #7 from Tobias Grosser <grosser at gcc dot gnu.org> 2013-02-05 16:10:21 UTC ---
(In reply to comment #5)
> I'll take a peek.
Wonderful, feel free to CC me if you have any questions!
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (7 preceding siblings ...)
2013-02-05 16:11 ` grosser at gcc dot gnu.org
@ 2013-02-05 23:52 ` aldyh at gcc dot gnu.org
2013-02-06 18:19 ` aldyh at gcc dot gnu.org
` (21 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: aldyh at gcc dot gnu.org @ 2013-02-05 23:52 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Aldy Hernandez <aldyh at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2013-02-05
Ever Confirmed|0 |1
--- Comment #8 from Aldy Hernandez <aldyh at gcc dot gnu.org> 2013-02-05 23:52:30 UTC ---
Confirmed with cloog 0.18 and isl 0.11, both installed in /build/install, and
configuring GCC with:
/source/gcc/configure --disable-bootstrap --disable-multilib
--enable-languages=c,c++,fortran --with-cloog=/build/install
--with-isl=/build/install
houston:/build/55022-f90/gcc/pr55022$ ls
air_main.f90 botwall.f90 datax.inp datay.inp topwall.f90
houston:/build/55022-f90/gcc/pr55022$ ../xgcc -B../ -O2 -fgraphite-identity
air_main.f90 botwall.f90 topwall.f90 -L
../../x86_64-unknown-linux-gnu/libgfortran/.libs/ -lgfortran -lm
houston:/build/55022-f90/gcc/pr55022$ ./a.out
...
...
129 0.000625547555 0.01000000 1.945421
144 0.000674419139 0.01000000 2.198194
166 0.000728576510 0.01000000 NaN
168 100.000735868323 0.01000000 NaN
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (8 preceding siblings ...)
2013-02-05 23:52 ` aldyh at gcc dot gnu.org
@ 2013-02-06 18:19 ` aldyh at gcc dot gnu.org
2013-02-06 21:08 ` aldyh at gcc dot gnu.org
` (20 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: aldyh at gcc dot gnu.org @ 2013-02-06 18:19 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Aldy Hernandez <aldyh at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |WAITING
--- Comment #9 from Aldy Hernandez <aldyh at gcc dot gnu.org> 2013-02-06 18:18:54 UTC ---
I'm sorry, but the reporter is going to have to reduce this significantly
before we can debug this. This is a huge mess of spaghetti code with tons of
global and common variables scattered throughout, as well as state being passed
around in files.
Dominique, please reduce this to the smallest amount of reproducible code, so
we can attack this. Avoid reading and writing to files (as I see, these have
only a minimal amount of data anyhow), and global variables if at all possible.
Please only keep the code that is relevant to reproduce the problem.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (9 preceding siblings ...)
2013-02-06 18:19 ` aldyh at gcc dot gnu.org
@ 2013-02-06 21:08 ` aldyh at gcc dot gnu.org
2013-02-07 14:58 ` dominiq at lps dot ens.fr
` (19 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: aldyh at gcc dot gnu.org @ 2013-02-06 21:08 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Aldy Hernandez <aldyh at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |matz at gcc dot gnu.org,
| |sebpop at gmail dot com
--- Comment #10 from Aldy Hernandez <aldyh at gcc dot gnu.org> 2013-02-06 21:08:02 UTC ---
This regression started when we moved graphite from using PPL over to ISL. The
patch submission started here:
http://gcc.gnu.org/ml/gcc-patches/2012-06/msg01773.html
2012-07-02 Richard Guenther <rguenther@suse.de>
Michael Matz <matz@suse.de>
Tobias Grosser <tobias@grosser.es>
Sebastian Pop <sebpop@gmail.com>
and the revision is trunk@189156.
Provided this test gets further reduced as I have mentioned in comment 9, can
any of you gentlemen look at this?
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (10 preceding siblings ...)
2013-02-06 21:08 ` aldyh at gcc dot gnu.org
@ 2013-02-07 14:58 ` dominiq at lps dot ens.fr
2013-02-07 15:11 ` dominiq at lps dot ens.fr
` (18 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: dominiq at lps dot ens.fr @ 2013-02-07 14:58 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Dominique d'Humieres <dominiq at lps dot ens.fr> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |NEW
--- Comment #11 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2013-02-07 14:57:40 UTC ---
I have reduced botwall.f90 to
!*==BOTWALL.spg processed by SPAG 6.55Dc at 09:26 on 23 Sep 2005
!
SUBROUTINE BOTWALL(Spx,Epx,Apy,Mxpx,U1,U2,U3,U4,Iv)
IMPLICIT REAL*8(A-H,O-Z)
PARAMETER (NX=150,NY=150)
DIMENSION U(NX,NY) , V(NX,NY) , RHO(NX,NY) , T(NX,NY) , E(NX,NY)
DIMENSION AS1(NX) , AS2(NX) , AS3(NY) , AS4(NY) , NX1(NX) , &
& NY1(NX)
DIMENSION NX2(NX) , NY2(NX) , SIG(NX) , P(NX,NY)
DIMENSION U1(NX,NY) , U2(NX,NY) , U3(NX,NY) , U4(NX,NY)
INTEGER Spx , Epx , Apy
REAL*8 NX1 , NX2 , NY1 , NY2 , MINlet(NY)
COMMON /BNDRY / U , V , P , RHO , T , E , AS1 , AS2 , AS3 , AS4 , &
& NX1 , NY1 , NX2 , NY2 , SIG , GMA , S0 , T0 , P0 ,&
& PE , HOO , RR , MINlet
!
TWX_0 = 272.77
E_0 = RR*TWX_0/(GMA-1.)
R_0 = 1.0/(TWX_0*RR)
A_0 = DSQRT(GMA*TWX_0*RR)
DO i = Spx , Epx
!
! BOTTOM WALL CONDITIONS FOR SUBSONIC FLOW
!
vn1 = U(i,Apy)*NX1(i) + V(i,Apy)*NY1(i)
P(i,Apy) = P(i,Apy)/DEXP(GMA*vn1/AS1(i))
U(i,Apy) = 0.0
V(i,Apy) = 0.0
T(i,Apy) = TWX_0
RHO(i,Apy) = P(i,Apy)*R_0
AS1(i) = A_0
E(i,Apy) = E_0
U1(i,Apy) = RHO(i,Apy)
U2(i,Apy) = 0.0
U3(i,Apy) = 0.0
U4(i,Apy) = RHO(i,Apy)*E_0
ENDDO
! print *, U1(Spx:Epx,Apy)
! print *, U2(Spx:Epx,Apy)
! print *, U3(Spx:Epx,Apy)
! print *, U4(Spx:Epx,Apy)
print *, U1(Spx:Spx+4,Apy)
print *, U2(Spx:Spx+4,Apy)
print *, U3(Spx:Spx+4,Apy)
print *, U4(Spx:Spx+4,Apy)
stop
CONTINUE
END
With the following compilation (gfc: gcc 4.8 r195848, gfortran: 4.7.2)
gfc -c -O2 -fgraphite-identity air_main.f90
gfortran -c -O2 -fgraphite-identity topwall.f90
gfortran -c -O2 -fgraphite-identity botwall_db.f90
gfc air_main.o botwall_db.o topwall.o
I get
1.2901579736800930 1.2901579736800932 1.2901579736800932
1.2901579736800932 1.2901579736800932
0.0000000000000000 0.0000000000000000 0.0000000000000000
0.0000000000000000 0.0000000000000000
0.0000000000000000 0.0000000000000000 0.0000000000000000
0.0000000000000000 0.0000000000000000
252499.99999999997 252500.00000000003 252500.00000000003
252500.00000000003 252500.00000000003
If I use
gfc -c -O2 -fgraphite-identity botwall_db.f90
gfc air_main.o botwall_db.o topwall.o
I get
1.2901579217165384 1.2000000476837158 1.2000000476837158
1.2000000476837158 1.2000000476837158
0.0000000000000000 6.5847860013093756E-016 -2.6339144005237502E-015
0.0000000000000000 7.7354314600658297E-015
0.0000000000000000 2.3705229604713751E-014 2.3705229604713751E-014
2.3705229604713751E-014 2.6300466964223820E-014
252500.00000000000 252500.00000000009 252500.00000000009
252500.00000000009 252500.00000000009
(In reply to comment #9)
> I'm sorry, but the reporter is going to have to reduce this significantly
> before we can debug this. This is a huge mess of spaghetti code with tons of
> global and common variables scattered throughout, as well as state being passed
> around in files.
>
> Dominique, please reduce this to the smallest amount of reproducible code, so
> we can attack this. Avoid reading and writing to files (as I see, these have
> only a minimal amount of data anyhow), and global variables if at all possible.
Well, I am only the reporter. The code is not mine and this makes the task to
reduce it while keeping the wrong code quite difficult (and cumbersome).
> Please only keep the code that is relevant to reproduce the problem.
I'll try to provide a self contained test, but not before the week-end.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (11 preceding siblings ...)
2013-02-07 14:58 ` dominiq at lps dot ens.fr
@ 2013-02-07 15:11 ` dominiq at lps dot ens.fr
2013-02-20 13:59 ` rguenth at gcc dot gnu.org
` (17 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: dominiq at lps dot ens.fr @ 2013-02-07 15:11 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #12 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2013-02-07 15:11:23 UTC ---
If I replace the loop
DO i = Spx , Epx
vn1 = U(i,Apy)*NX1(i) + V(i,Apy)*NY1(i)
P(i,Apy) = P(i,Apy)/DEXP(GMA*vn1/AS1(i))
U(i,Apy) = 0.0
V(i,Apy) = 0.0
T(i,Apy) = TWX_0
RHO(i,Apy) = P(i,Apy)*R_0
AS1(i) = A_0
E(i,Apy) = E_0
U1(i,Apy) = RHO(i,Apy)
U2(i,Apy) = 0.0
U3(i,Apy) = 0.0
U4(i,Apy) = RHO(i,Apy)*E_0
ENDDO
with
DO i = Spx , Epx
vn1 = GMA*(U(i,Apy)*NX1(i) + V(i,Apy)*NY1(i))/AS1(i)
P(i,Apy) = P(i,Apy)/DEXP(vn1)
RHO(i,Apy) = P(i,Apy)*R_0
AS1(i) = A_0
E(i,Apy) = E_0
U1(i,Apy) = RHO(i,Apy)
U4(i,Apy) = RHO(i,Apy)*E_0
ENDDO
U(Spx:Epx,Apy) = 0.0
V(Spx:Epx,Apy) = 0.0
T(Spx:Epx,Apy) = TWX_0
U2(Spx:Epx,Apy) = 0.0
U3(Spx:Epx,Apy) = 0.0
Then the test does not abort with NaNs, but the result seems wrong:
1729 0.40924060378447885
1737 0.41934356330600248
compared to
1729 0.40411964185599653
1737 0.41528583240265665
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (12 preceding siblings ...)
2013-02-07 15:11 ` dominiq at lps dot ens.fr
@ 2013-02-20 13:59 ` rguenth at gcc dot gnu.org
2013-03-22 14:42 ` [Bug tree-optimization/55022] [4.8/4.9 " jakub at gcc dot gnu.org
` (16 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-02-20 13:59 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P2
--- Comment #13 from Richard Biener <rguenth at gcc dot gnu.org> 2013-02-20 13:58:41 UTC ---
Graphite -> P2.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (13 preceding siblings ...)
2013-02-20 13:59 ` rguenth at gcc dot gnu.org
@ 2013-03-22 14:42 ` jakub at gcc dot gnu.org
2013-05-31 10:57 ` jakub at gcc dot gnu.org
` (15 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: jakub at gcc dot gnu.org @ 2013-03-22 14:42 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.8.0 |4.8.1
--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-03-22 14:41:58 UTC ---
GCC 4.8.0 is being released, adjusting target milestone.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (14 preceding siblings ...)
2013-03-22 14:42 ` [Bug tree-optimization/55022] [4.8/4.9 " jakub at gcc dot gnu.org
@ 2013-05-31 10:57 ` jakub at gcc dot gnu.org
2013-10-16 9:48 ` jakub at gcc dot gnu.org
` (14 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: jakub at gcc dot gnu.org @ 2013-05-31 10:57 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.8.1 |4.8.2
--- Comment #15 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 4.8.1 has been released.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (15 preceding siblings ...)
2013-05-31 10:57 ` jakub at gcc dot gnu.org
@ 2013-10-16 9:48 ` jakub at gcc dot gnu.org
2014-01-17 12:34 ` rguenth at gcc dot gnu.org
` (13 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: jakub at gcc dot gnu.org @ 2013-10-16 9:48 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.8.2 |4.8.3
--- Comment #16 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 4.8.2 has been released.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (16 preceding siblings ...)
2013-10-16 9:48 ` jakub at gcc dot gnu.org
@ 2014-01-17 12:34 ` rguenth at gcc dot gnu.org
2014-04-10 16:01 ` mircea.namolaru at inria dot fr
` (12 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-01-17 12:34 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P2 |P4
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (17 preceding siblings ...)
2014-01-17 12:34 ` rguenth at gcc dot gnu.org
@ 2014-04-10 16:01 ` mircea.namolaru at inria dot fr
2014-04-11 11:02 ` rguenth at gcc dot gnu.org
` (11 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: mircea.namolaru at inria dot fr @ 2014-04-10 16:01 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Mircea Namolaru <mircea.namolaru at inria dot fr> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mircea.namolaru at inria dot fr
--- Comment #17 from Mircea Namolaru <mircea.namolaru at inria dot fr> ---
Vladimir Kargov, Tobias Grosser and me found that the problem is caused by
incorrect folding of the floord operator. As a result Cloog translates the
expression
-4294967296*floord(_19-i_17,4294967296)
to the tree-SSA expression
4294967296*floord(_19-i_17,-4294967296)
This is wrong, in the first case floord is 0 and in the second is -1.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (18 preceding siblings ...)
2014-04-10 16:01 ` mircea.namolaru at inria dot fr
@ 2014-04-11 11:02 ` rguenth at gcc dot gnu.org
2014-04-11 11:10 ` kargov at gmail dot com
` (10 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-04-11 11:02 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org
--- Comment #18 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to Mircea Namolaru from comment #17)
> Vladimir Kargov, Tobias Grosser and me found that the problem is caused by
> incorrect folding of the floord operator. As a result Cloog translates the
> expression
> -4294967296*floord(_19-i_17,4294967296)
> to the tree-SSA expression
> 4294967296*floord(_19-i_17,-4294967296)
>
> This is wrong, in the first case floord is 0 and in the second is -1.
Not sure where that "folding" happens or what "floord" is, but if you
are refering to negate_expr () negating a /[fl] CST as a /[fl] -CST
then yes, that looks suspicious. OTOH the division variant tree codes
don't appear in the IL very often so it's hard to notice these mistakes.
Testing
Index: gcc/fold-const.c
===================================================================
*** gcc/fold-const.c (revision 209292)
--- gcc/fold-const.c (working copy)
*************** negate_expr_p (tree t)
*** 484,491 ****
case TRUNC_DIV_EXPR:
case ROUND_DIV_EXPR:
- case FLOOR_DIV_EXPR:
- case CEIL_DIV_EXPR:
case EXACT_DIV_EXPR:
/* In general we can't negate A / B, because if A is INT_MIN and
B is 1, we may turn this into INT_MIN / -1 which is undefined
--- 484,489 ----
*************** fold_negate_expr (location_t loc, tree t
*** 682,689 ****
case TRUNC_DIV_EXPR:
case ROUND_DIV_EXPR:
- case FLOOR_DIV_EXPR:
- case CEIL_DIV_EXPR:
case EXACT_DIV_EXPR:
/* In general we can't negate A / B, because if A is INT_MIN and
B is 1, we may turn this into INT_MIN / -1 which is undefined
--- 680,685 ----
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (19 preceding siblings ...)
2014-04-11 11:02 ` rguenth at gcc dot gnu.org
@ 2014-04-11 11:10 ` kargov at gmail dot com
2014-04-11 11:28 ` rguenther at suse dot de
` (9 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: kargov at gmail dot com @ 2014-04-11 11:10 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #19 from Vladimir Kargov <kargov at gmail dot com> ---
> if you are refering to negate_expr () negating a /[fl] CST as a /[fl] -CST
then yes, that looks suspicious
Yes, the one.
The function converts expressions "x * -C" into "-x * C". In the case where x
is an expression of form "a /[fl] b" or "a /[cl] b" this optimization is
generally invalid. For example:
(1 /[fl] 2) * -1 = 0 * -1 = 0 will turn into (1 /[fl] -2) * 1 = -1 * 1 = -1
(1 /[cl] 2) * -1 = 1 * -1 = -1 will turn into (1 /[cl] -2) * 1 = 0 * 1 = 0
In general, it appears that the optimization will be incorrect for any floor
and ceiling divisions with a non-zero remainder since after negation they will
be rounded to a different integer.
The problem can be seen in the following function when compiled with "-O3
-fgraphite-identity":
void f(int *limit, int minLen, int maxLen)
{
int i;
for (i = minLen; i <= maxLen; i++) {
limit[i] = i;
}
}
In this case constant folding will be transforming expression "(((signed long)
maxLen_5(D) - (signed long) minLen_3(D)) /[fl] 4294967296) * -1" (i.e. 0) into
"((signed long) maxLen_5(D) - (signed long) minLen_3(D)) /[fl] -4294967296"
(i.e. -4294967296).
Since Graphite abundantly uses floor division, this breaks a lot of code,
including bzip2 build
(https://groups.google.com/forum/#!topic/gcc-graphite/WaCUu0xg4Kc) and this
bug.
Removing floor and ceiling division as in comment 18 will fix it.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (20 preceding siblings ...)
2014-04-11 11:10 ` kargov at gmail dot com
@ 2014-04-11 11:28 ` rguenther at suse dot de
2014-04-11 11:32 ` kargov at gmail dot com
` (8 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: rguenther at suse dot de @ 2014-04-11 11:28 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #20 from rguenther at suse dot de <rguenther at suse dot de> ---
On Fri, 11 Apr 2014, kargov at gmail dot com wrote:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
>
> --- Comment #19 from Vladimir Kargov <kargov at gmail dot com> ---
> > if you are refering to negate_expr () negating a /[fl] CST as a /[fl] -CST
> then yes, that looks suspicious
> Yes, the one.
>
> The function converts expressions "x * -C" into "-x * C". In the case where x
> is an expression of form "a /[fl] b" or "a /[cl] b" this optimization is
> generally invalid. For example:
> (1 /[fl] 2) * -1 = 0 * -1 = 0 will turn into (1 /[fl] -2) * 1 = -1 * 1 = -1
> (1 /[cl] 2) * -1 = 1 * -1 = -1 will turn into (1 /[cl] -2) * 1 = 0 * 1 = 0
> In general, it appears that the optimization will be incorrect for any floor
> and ceiling divisions with a non-zero remainder since after negation they will
> be rounded to a different integer.
>
> The problem can be seen in the following function when compiled with "-O3
> -fgraphite-identity":
>
> void f(int *limit, int minLen, int maxLen)
> {
> int i;
>
> for (i = minLen; i <= maxLen; i++) {
> limit[i] = i;
> }
> }
>
> In this case constant folding will be transforming expression "(((signed long)
> maxLen_5(D) - (signed long) minLen_3(D)) /[fl] 4294967296) * -1" (i.e. 0) into
> "((signed long) maxLen_5(D) - (signed long) minLen_3(D)) /[fl] -4294967296"
> (i.e. -4294967296).
>
> Since Graphite abundantly uses floor division, this breaks a lot of code,
> including bzip2 build
> (https://groups.google.com/forum/#!topic/gcc-graphite/WaCUu0xg4Kc) and this
> bug.
>
> Removing floor and ceiling division as in comment 18 will fix it.
I can't seem to observe the above with the testcase or sth like
the following suitable for the testsuite:
/* { dg-do run } */
/* { dg-options "-O3 -fgraphite-identity" } */
extern void abort (void);
void __attribute__((noinline,noclone))
f(int *limit, int minLen, int maxLen)
{
int i;
for (i = minLen; i <= maxLen; i++) {
limit[i] = i;
}
}
int main()
{
int limit[256], i;
f (limit, 0, 255);
for (i = 0; i < 256; ++i)
{
if (limit[i] != i)
abort ();
__asm__ volatile ("" : : : "memory");
}
return 0;
}
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (21 preceding siblings ...)
2014-04-11 11:28 ` rguenther at suse dot de
@ 2014-04-11 11:32 ` kargov at gmail dot com
2014-04-11 11:33 ` rguenth at gcc dot gnu.org
` (7 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: kargov at gmail dot com @ 2014-04-11 11:32 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #21 from Vladimir Kargov <kargov at gmail dot com> ---
(In reply to rguenther@suse.de from comment #20)
> I can't seem to observe the above with the testcase or sth like
> the following suitable for the testsuite
Can you please check the following:
#include <stdio.h>
void __attribute__ ((noinline))
BZ2_hbCreateDecodeTables(int *limit, int minLen, int maxLen)
{
int i;
for (i = minLen; i <= maxLen; i++) {
limit[i] = i;
}
}
void main()
{
int limit[2] = {0, 0};
int pos;
BZ2_hbCreateDecodeTables (limit, 0, 1);
printf("%d\n", limit[1]);
}
When compiled with "-fgraphite-identity -O3" on trunk it will give "0" which is
incorrect.
The patched version should give the correct "1".
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (22 preceding siblings ...)
2014-04-11 11:32 ` kargov at gmail dot com
@ 2014-04-11 11:33 ` rguenth at gcc dot gnu.org
2014-04-11 11:43 ` kargov at gmail dot com
` (6 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-04-11 11:33 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #22 from Richard Biener <rguenth at gcc dot gnu.org> ---
Ah, bogus fix for another bug in my tree.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (23 preceding siblings ...)
2014-04-11 11:33 ` rguenth at gcc dot gnu.org
@ 2014-04-11 11:43 ` kargov at gmail dot com
2014-04-11 13:03 ` kargov at gmail dot com
` (5 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: kargov at gmail dot com @ 2014-04-11 11:43 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #23 from Vladimir Kargov <kargov at gmail dot com> ---
(In reply to rguenther@suse.de from comment #20)
Your test also exploits this bug for me on trunk rev. 208043.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (24 preceding siblings ...)
2014-04-11 11:43 ` kargov at gmail dot com
@ 2014-04-11 13:03 ` kargov at gmail dot com
2014-04-14 8:11 ` [Bug tree-optimization/55022] [4.8/4.9/4.10 " rguenth at gcc dot gnu.org
` (4 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: kargov at gmail dot com @ 2014-04-11 13:03 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #24 from Vladimir Kargov <kargov at gmail dot com> ---
(In reply to Vladimir Kargov from comment #19)
For the sake of correctness, I had an obvious typo in my comment:
> "((signed long) maxLen_5(D) - (signed long) minLen_3(D)) /[fl] -4294967296" (i.e. -4294967296).
((signed long) maxLen_5(D) - (signed long) minLen_3(D)) /[fl] -4294967296 = -1,
not -4294967296.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8/4.9/4.10 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (25 preceding siblings ...)
2014-04-11 13:03 ` kargov at gmail dot com
@ 2014-04-14 8:11 ` rguenth at gcc dot gnu.org
2014-04-22 13:34 ` [Bug tree-optimization/55022] [4.8 " rguenth at gcc dot gnu.org
` (3 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-04-14 8:11 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #25 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Mon Apr 14 08:11:08 2014
New Revision: 209356
URL: http://gcc.gnu.org/viewcvs?rev=209356&root=gcc&view=rev
Log:
2014-04-14 Richard Biener <rguenther@suse.de>
PR middle-end/55022
* fold-const.c (negate_expr_p): Don't negate directional rounding
division.
(fold_negate_expr): Likewise.
* gcc.dg/graphite/pr55022.c: New testcase.
Added:
trunk/gcc/testsuite/gcc.dg/graphite/pr55022.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/fold-const.c
trunk/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (26 preceding siblings ...)
2014-04-14 8:11 ` [Bug tree-optimization/55022] [4.8/4.9/4.10 " rguenth at gcc dot gnu.org
@ 2014-04-22 13:34 ` rguenth at gcc dot gnu.org
2014-04-23 8:58 ` mircea.namolaru at inria dot fr
` (2 subsequent siblings)
30 siblings, 0 replies; 32+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-04-22 13:34 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #26 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Tue Apr 22 13:33:37 2014
New Revision: 209633
URL: http://gcc.gnu.org/viewcvs?rev=209633&root=gcc&view=rev
Log:
2014-04-22 Richard Biener <rguenther@suse.de>
Backport from mainline
2014-04-14 Richard Biener <rguenther@suse.de>
PR middle-end/55022
* fold-const.c (negate_expr_p): Don't negate directional rounding
division.
(fold_negate_expr): Likewise.
* gcc.dg/graphite/pr55022.c: New testcase.
Added:
branches/gcc-4_9-branch/gcc/testsuite/gcc.dg/graphite/pr55022.c
Modified:
branches/gcc-4_9-branch/gcc/ChangeLog
branches/gcc-4_9-branch/gcc/fold-const.c
branches/gcc-4_9-branch/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (27 preceding siblings ...)
2014-04-22 13:34 ` [Bug tree-optimization/55022] [4.8 " rguenth at gcc dot gnu.org
@ 2014-04-23 8:58 ` mircea.namolaru at inria dot fr
2014-05-06 12:01 ` rguenth at gcc dot gnu.org
2014-05-06 12:02 ` rguenth at gcc dot gnu.org
30 siblings, 0 replies; 32+ messages in thread
From: mircea.namolaru at inria dot fr @ 2014-04-23 8:58 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #27 from Mircea Namolaru <mircea.namolaru at inria dot fr> ---
Hi,
Many thanks.
I've passed over the meta-bug opened by you for Graphite,
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59859 and seems to me
that many of the problem have been already solved (some by you) or at least
as in case of some compile-time/memory usage/missed optimization issues
we know how to solve it - some form of delinearization of array accesses
that for sure was not for GCC 4.9.
Btw, there is also another Graphite bug in this list
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59586 that was solved but didn't
make it for GCC 4.9.0.
Mircea
----- Original Message -----
> From: "rguenth at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
> To: "mircea namolaru" <mircea.namolaru@inria.fr>
> Sent: Tuesday, April 22, 2014 3:34:09 PM
> Subject: [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity
> after revision 190619
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
>
> --- Comment #26 from Richard Biener <rguenth at gcc dot gnu.org> ---
> Author: rguenth
> Date: Tue Apr 22 13:33:37 2014
> New Revision: 209633
>
> URL: http://gcc.gnu.org/viewcvs?rev=209633&root=gcc&view=rev
> Log:
> 2014-04-22 Richard Biener <rguenther@suse.de>
>
> Backport from mainline
> 2014-04-14 Richard Biener <rguenther@suse.de>
>
> PR middle-end/55022
> * fold-const.c (negate_expr_p): Don't negate directional rounding
> division.
> (fold_negate_expr): Likewise.
>
> * gcc.dg/graphite/pr55022.c: New testcase.
>
> Added:
> branches/gcc-4_9-branch/gcc/testsuite/gcc.dg/graphite/pr55022.c
> Modified:
> branches/gcc-4_9-branch/gcc/ChangeLog
> branches/gcc-4_9-branch/gcc/fold-const.c
> branches/gcc-4_9-branch/gcc/testsuite/ChangeLog
>
> --
> You are receiving this mail because:
> You are on the CC list for the bug.
>
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (28 preceding siblings ...)
2014-04-23 8:58 ` mircea.namolaru at inria dot fr
@ 2014-05-06 12:01 ` rguenth at gcc dot gnu.org
2014-05-06 12:02 ` rguenth at gcc dot gnu.org
30 siblings, 0 replies; 32+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-05-06 12:01 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Known to work| |4.8.3
Resolution|--- |FIXED
Known to fail| |4.8.2
--- Comment #28 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed.
^ permalink raw reply [flat|nested] 32+ messages in thread
* [Bug tree-optimization/55022] [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619
2012-10-22 13:53 [Bug tree-optimization/55022] New: [4.8 Regression] air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619 dominiq at lps dot ens.fr
` (29 preceding siblings ...)
2014-05-06 12:01 ` rguenth at gcc dot gnu.org
@ 2014-05-06 12:02 ` rguenth at gcc dot gnu.org
30 siblings, 0 replies; 32+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-05-06 12:02 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55022
--- Comment #29 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Tue May 6 12:01:21 2014
New Revision: 210104
URL: http://gcc.gnu.org/viewcvs?rev=210104&root=gcc&view=rev
Log:
2014-05-06 Richard Biener <rguenther@suse.de>
Backport from mainline
2014-04-14 Richard Biener <rguenther@suse.de>
PR middle-end/55022
* fold-const.c (negate_expr_p): Don't negate directional rounding
division.
(fold_negate_expr): Likewise.
* gcc.dg/graphite/pr55022.c: New testcase.
Added:
branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/graphite/pr55022.c
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/fold-const.c
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 32+ messages in thread