next up previous contents
Next: Appendix Up: CMSC 731 (Spring 1998) Previous: Experiments and Anlysis

Conclusions

In general, I can conclude that order of optimization passes play an important role in determining the amount of optimization. Although by running the optimizer on a set of six benchmark programs would give limited information, it looks to me that the best optimization may be got when the order of execution of the phases are - global constant propagation, local optimization (constant folding and local common sub-expression elimination), loop optimization and dead code elimination respectively. Adding multiple passes of dead code elimination and doing an extra pass of local optimization after global constant propagation and loop optimizations also are good techniques, though they increase compile-time overheads.



Suman Banerjee
Tue Jun 16 14:38:56 EDT 1998