This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
PRE in gcse.c
- To: egcs at cygnus dot com
- Subject: PRE in gcse.c
- From: Alexander Larsson <alla at lysator dot liu dot se>
- Date: Fri, 06 Nov 1998 16:39:49 +0100
I'm currently as part of my masters thesis implementing partial redundancy
elimination. I use a Lazy Code Motion approach described in Knoop, Ruthing and
Steffen, "Optimal Code Motion: Theory & Practice" ACM Trans. on Programming
Languages and Systems 16(4):1117-1155, July 1994. Available at
http://sunshine.cs.uni-dortmund.de/~ruething/ocm.ps.gz
Out of interest i checked out what kind of gcse egcs used and saw that it uses
an older version of partial redundancy elimination described by Morel and
Renvoise. I am not very familiar with the gcc source, and i haven't looked
very deeply at this, but would there be any interest in an LCM version of
gcse.c? This has two advantages, first register life-times are minimized and
second the data-flow analysis is (supposedly) simpler and faster.
In the source i did find a comment that said:
Eventually it would be nice to replace cse.c/gcse.c with SSA (static single
assignment) based GVN (global value numbering). L. T. Simpson's paper
(Rice University) on value numbering is a useful reference for this.
Is anybody working on this? I think i saw some reference to phi in a mail some
time ago.
/ Alex