RFC Exploratory Patch - Significant performance improvement

Dominique Dhumieres dominiq@lps.ens.fr
Thu Dec 10 15:00:00 GMT 2009


Jerry,

"Significant" is quite an understatement!-) Spectacular would fit.

I have regtested and run my tests with the patch and found a couple of
minor problems:

(1) In resolve.c the line

+  gfc_expr *expr;

must be deleted, otherwise the build abort when it uses -Werror:

cc1: warnings being treated as errors
../../work/gcc/fortran/resolve.c: In function 'gfc_is_expandable_expr':
../../work/gcc/fortran/resolve.c:5365:13: error: unused variable 'expr'

(2) As discussed fpr pr20923, in trans-array.c the gfc_error_now must be 
changed to gfc_fatal_error otherwise there is an ICE after the error, 
unless someone comes with a better fix for the ICE.

(3) fft257.f90 needs fft257.i90.

Other speedups:
pr20923: 4.14s vs. 15.97s
pr34554: 101.27s vs 145.76s
pr19925 with print: none.

Thanks for this great work,

Dominique



More information about the Fortran mailing list