At revision 142742 some tests in the polyhedron suite are miscompiled with 
-O3 and some other graphite options (-fgraphite-identity with/without 
-fgraphite: first table, with all possible (?) options: second table,
the third table is given as reference).

I don't know how many of the failures are duplicates of pr38492, so I 
prefer to open a new pr. Note that protein.f90 is using recursivity.

Apparently fatigue.f90 is now compiled correctly (it was not the case when 
I posted http://gcc.gnu.org/ml/gcc/2008-12/msg00184.html).

================================================================================
Date & Time     : 13 Dec 2008 22:13:50
Test Name       : pbharness
Compile Command : gfc %n.f90 -m64 -O3 -ffast-math -funroll-loops 
-fgraphite-identity -o %n
Benchmarks      : ac aermod air capacita channel doduc fatigue gas_dyn induct 
linpk mdbx nf protein rnflow test_fpu tfft
Maximum Times   :      300.0
Target Error %  :      0.200
Minimum Repeats :     2
Maximum Repeats :     5

   Benchmark   Compile  Executable   Ave Run  Number   Estim
        Name    (secs)     (bytes)    (secs) Repeats   Err %
   ---------   -------  ----------   ------- -------  ------
          ac      2.85       42560     12.35       2  0.1902
      aermod     87.02     1274632     30.31       2  0.1369
         air      5.49       77336      8.37       2  0.0657
    capacita      3.43       60472     11.99       5  0.8089  <== WRONG CODE
     channel      1.55       30456      2.76       5  0.9950
       doduc     11.56      195928     43.25       2  0.0381
     fatigue      3.89       72640     11.49       2  0.0653
     gas_dyn      5.63      688104     22.08       5  0.4231  <-- twice slower
      induct      9.62      164784     34.31       2  0.0379
       linpk      1.52       42536     27.22       2  0.0349
        mdbx      3.32       73000     14.88       2  0.0302
          nf      4.86       67328     32.46       5  0.1689
     protein      8.07      101912      0.12       5  0.3868  <== WRONG CODE
      rnflow     10.55      167368     36.43       2  0.0590
    test_fpu      9.33      154224     12.88       2  0.0543
        tfft      1.16       30528      2.86       5  0.2007

Geometric Mean Execution Time =      11.43 seconds

================================================================================
Polyhedron Benchmark Validator
Copyright (C) Polyhedron Software Ltd - 2004 - All rights reserved

================================================================================
Date & Time     : 13 Dec 2008 21:29:49
Test Name       : pbharness
Compile Command : gfc %n.f90 -m64 -O3 -ffast-math -funroll-loops -fgraphite 
-fgraphite-identity -floop-block -floop-strip-mine -floop-interchange 
-ftree-loop-linear -fomit-frame-pointer -finline-limit=600 
--param min-vect-loop-bound=2 -o %n
Benchmarks      : ac aermod air capacita channel doduc fatigue gas_dyn induct 
linpk mdbx nf protein rnflow test_fpu tfft
Maximum Times   :      300.0
Target Error %  :      0.200
Minimum Repeats :     2
Maximum Repeats :     5

   Benchmark   Compile  Executable   Ave Run  Number   Estim
        Name    (secs)     (bytes)    (secs) Repeats   Err %
   ---------   -------  ----------   ------- -------  ------
          ac      4.82       42560     12.35       5  0.3124
      aermod     87.25     1266448     30.18       2  0.1872
         air      5.66       77336      8.36       5  0.1105
    capacita      4.36       68664      9.61       2  0.0312  <== WRONG CODE
     channel      1.77       30456      2.74       2  0.0913
       doduc     11.48      195928     42.76       2  0.0900
     fatigue      4.09       72640     12.78       2  0.0039
     gas_dyn      5.78      688104      4.07       5  1.1516  <== WRONG CODE
      induct      9.44      172976     34.30       2  0.0889
       linpk      1.64       42536     27.14       2  0.0442
        mdbx      3.42       73000     14.84       5  0.1817
          nf     15.02      108168     42.12       2  0.0772  <== WRONG CODE
     protein      9.77      114136      0.12       5  0.2319  <== WRONG CODE
      rnflow     11.13      171464      2.85       5  0.2826  <== WRONG CODE
    test_fpu      9.27      150128      4.88       5  0.2239  <== WRONG CODE
        tfft      1.08       26432      2.96       5  0.6601

Geometric Mean Execution Time =       8.34 seconds

================================================================================
Polyhedron Benchmark Validator
Copyright (C) Polyhedron Software Ltd - 2004 - All rights reserved

================================================================================
Date & Time     : 10 Dec 2008 10:41:52
Test Name       : pbharness
Compile Command : gfc %n.f90 -m64 -O3 -ffast-math -funroll-loops 
-ftree-loop-linear -fomit-frame-pointer -finline-limit=600 
--param min-vect-loop-bound=2 -o %n
Benchmarks      : ac aermod air capacita channel doduc fatigue gas_dyn induct 
linpk mdbx nf protein rnflow test_fpu tfft
Maximum Times   :      300.0
Target Error %  :      0.200
Minimum Repeats :     2
Maximum Repeats :     5

   Benchmark   Compile  Executable   Ave Run  Number   Estim
        Name    (secs)     (bytes)    (secs) Repeats   Err %
   ---------   -------  ----------   ------- -------  ------
          ac      2.31       42560     12.28       2  0.0163
      aermod     85.67     1266448     29.84       4  0.1498
         air      5.44       77336      8.36       2  0.1975
    capacita      3.39       72760     53.92       2  0.0649
     channel      2.09       38648      2.27       2  0.0220
       doduc     11.30      195928     42.78       2  0.1204
     fatigue      4.93       89024     10.87       5  0.2098
     gas_dyn      6.51      708584     10.35       5  0.6354
      induct     10.01      181168     34.47       2  0.0899
       linpk      1.63       42536     27.15       2  0.0147
        mdbx      3.26       73000     14.79       2  0.0270
          nf     23.89      161416     31.64       2  0.0095
     protein     10.24      126424     47.02       2  0.0532
      rnflow     10.80      179616     36.22       2  0.0028
    test_fpu     10.23      166512     12.30       2  0.0651
        tfft      1.16       26432      2.80       2  0.0714

Geometric Mean Execution Time =      16.95 seconds

================================================================================
Polyhedron Benchmark Validator
Copyright (C) Polyhedron Software Ltd - 2004 - All rights reserved


-- 
           Summary: [graphite] wrong code with -O3 -fgraphite-identity on
                    polyhedron benchmarks
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dominiq at lps dot ens dot fr
 GCC build triplet: i686-apple-darwin9
  GCC host triplet: i686-apple-darwin9
GCC target triplet: i686-apple-darwin9


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

Reply via email to