This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/52976] New: [4.8 Regression] Revision 186384 breaks the polyhedron tests aermod.f90 and doduc.f90 at -O3 -ffast-math


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

             Bug #: 52976
           Summary: [4.8 Regression] Revision 186384 breaks the polyhedron
                    tests aermod.f90 and doduc.f90 at -O3 -ffast-math
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: dominiq@lps.ens.fr
                CC: rguenth@gcc.gnu.org, tkoenig@gcc.gnu.org,
                    wschmidt@gcc.gnu.org


On powerpc-apple-darwin9 and x86_64-apple-darwin10, the polyhedron tests
aermod.f90 and doduc.f90 are broken after revision 186384 at -O3 -ffast-math:

[macbook] lin/test% gfc -O3 -ffast-math -fno-tree-vectorize aermod.f90
aermod.f90: In function 'grdurban':
aermod.f90:27214:0: error: definition in block 9 follows the use
       SUBROUTINE GRDURBAN
 ^
for SSA_NAME: reassocpow.22077_36 in statement:
D.56565_32 = D.56564_31 * reassocpow.22077_36;
aermod.f90:27214:0: internal compiler error: verify_ssa failed
       SUBROUTINE GRDURBAN
 ^
[macbook] lin/test% gfc -O3 -ffast-math -fno-tree-vectorize doduc.f90
doduc.f90: In function 's55199':
doduc.f90:4384:0: internal compiler error: gimple check: expected
gimple_assign(error_mark), have gimple_call() in gimple_assign_rhs1, at
gimple.h:1850
       SUBROUTINE S55199(H,P,T,Rho,Dvdhp,Dvdph,Dtdh,Dtdp)
 ^

The SUBROUTINE S55199 can be reduced to

      SUBROUTINE S55199(P,Dvdph)
      implicit none
      real(8) :: c1,c2,c3,P,Dvdph
      c1=0.1d0
      c2=0.2d0
      c3=0.3d0
      Dvdph = c1 + 2.*P*c2 + 3.*P**2*c3
      END

which gives the following ICE at r186417

[macbook] test/doduc_tst% gfc -O3 -ffast-math -fno-tree-vectorize
s55199_red.f90 -c
s55199_red.f90: In function 's55199':
s55199_red.f90:1:0: internal compiler error: gimple check: expected
gimple_assign(error_mark), have gimple_call() in gimple_assign_rhs1, at
gimple.h:1850
       SUBROUTINE S55199(P,Dvdph)
 ^

or

s55199_red.f90: In function 's55199':
s55199_red.f90:1:0: internal compiler error: in zero_one_operation, at
tree-ssa-reassoc.c:1041
       SUBROUTINE S55199(P,Dvdph)
 ^

for gcc configured with --enable-checking=release.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]