for review: deforestation [5/4]
Simon Taylor
stayl at cs.mu.OZ.AU
Fri Feb 20 09:21:31 AEDT 1998
Hi,
This was accidentally left out of the diff I sent yesterday.
Simon.
Index: compiler_design.html
===================================================================
RCS file: /home/staff/zs/imp/mercury/compiler/notes/compiler_design.html,v
retrieving revision 1.17
diff -u -r1.17 compiler_design.html
--- compiler_design.html 1998/01/10 09:14:51 1.17
+++ compiler_design.html 1998/02/19 22:12:20
@@ -414,6 +414,25 @@
<li> pushing constraints as far left as possible (constraint.m);
this does not yet work.
+<li> deforestation and partial evaluation (deforest.m). This optimizes
+ multiple traversals of data structures within a conjunction, and
+ avoids creating intermediate data structures. It also performs
+ loop unrolling where the clause used is known at compile time.
+ <ul>
+ <li>
+ pd_cost.m contains some predicates to estimate the improvement
+ caused by deforest.m.
+ <li>
+ pd_debug.m produces debugging output.
+ <li>
+ pd_info.m contains a state type for deforestation.
+ <li>
+ pd_term.m contains predicates to check that the deforestation algorithm
+ terminates.
+ <li>
+ pd_util.m contains various utility predicates.
+ </ul>
+
<li> issue warnings about unused arguments from predicates, and create
specialized versions without them (unused_args.m); type_infos are
often unused
More information about the developers
mailing list