This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
My GCC Summit paper about Fortran Front End optimizations is accepted ...
- From: Toon Moene <toon at moene dot indiv dot nluug dot nl>
- To: gfortran <fortran at gcc dot gnu dot org>
- Date: Wed, 21 Mar 2007 23:04:03 +0100
- Subject: My GCC Summit paper about Fortran Front End optimizations is accepted ...
- Organization: Moene Computational Physics, Maartensdijk, The Netherlands
... now the only thing I have to do is get it right.
There are at least two issues I have to get right:
1. List all cases of relevant code optimization in the Fortran Front
End.
2. Acknowledge the right persons for coding them.
This is my initial attempt at fulfilling points 1 and 2:
a. Treating a reduction operator on an array expression as special,
so that no temporary is used for the result of the array expression.
Classic; probably by Paul Brook or Steven Bosscher.
b. Inlining of DOT_PRODUCT.
After inlining, this is a special case of a.
Paul Thomas ?
T
c. Special treatment of A . B
FX Coudert ?
d. Non-overlapping of lhs and rhs in array assignment.
Roger Sayle.
e. Optimization of WHERE masks (FORALL ?).
Roger Sayle.
f. Purification and Constification of intrinsic procedures.
OK, that's an odd one out.
Andrew Pinski.
...
More examples welcome - if possible, please include an URL to the
gcc-patches e-mail that contains the relevant patch - thanks.
After the existing examples (which are basically peephole
optimizations), I will wax philosophically about classical optimization
strategies like Common Subexpression Elimination (hey, I bought the
Dragon Book in 1982 - that's a quarter of a century ago) and how it
assumes that temporary storage is free, while that isn't true for whole
array expression optimizations ...
I intend to send the draft of the paper to the named persons. If you
want to see it too - to comment on it, please let me know.
Everyone who sends in a comment that's used will be acknowledged (whew,
that's a way to make a 10-page paper out of a 6-page one :-)
Thanks in advance.
--
Toon Moene - e-mail: toon@moene.indiv.nluug.nl - phone: +31 346 214290
Saturnushof 14, 3738 XG Maartensdijk, The Netherlands
At home: http://moene.indiv.nluug.nl/~toon/
Who's working on GNU Fortran:
http://gcc.gnu.org/ml/gcc/2007-01/msg00059.html