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

--- Comment #5 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2012-04-13 
22:11:24 UTC ---
The patch in comment #4 fixes doduc.f90, but not aermod.f90 (the sources are
available at http://polyhedron.com/pb05-lin64-f90bench_SBhtml ). A reduced test
for aermod is

[macbook] lin/test% cat grdurban_red.f90
      SUBROUTINE GRDURBAN(URBWSTR, ZIURB, GRIDHT)

      IMPLICIT NONE
      INTEGER :: I
      REAL :: SW2, URBWSTR, ZIURB, GRIDHT(87)

      SAVE 

      SW2 = 1.6*(GRIDHT(I)/ZIURB)**0.667*URBWSTR**2

      END
[macbook] lin/test% gfc -c -O3 -ffast-math grdurban_red.f90
grdurban_red.f90: In function 'grdurban':
grdurban_red.f90:1:0: error: definition in block 2 follows the use
       SUBROUTINE GRDURBAN(URBWSTR, ZIURB, GRIDHT)
 ^
for SSA_NAME: reassocpow.4_1 in statement:
D.1875_14 = reassocpow.4_1 * D.1874_13;
grdurban_red.f90:1:0: internal compiler error: verify_ssa failed
       SUBROUTINE GRDURBAN(URBWSTR, ZIURB, GRIDHT)
 ^

Note that the ICE disappears if I remove the SAVE.

Reply via email to