Abstract
Unifications of optimising transformations are motivated by the desire to reduce the cost of optimisation. Two unifications using code placement techniques based on the suppression of partial redundancies have been reported in the literature [5, 8]. A common drawback of these unifications has been their failure to provide sufficient guarantees regarding improvement in execution efficiency of programs. This has tended to limit their effectiveness from a practical viewpoint. This paper proposes a new algorithm to unify the optimising transformations of hoisting, loop optimisation and strength reduction. The algorithm uses a refined framework for code placement that provides guarantees of improvement in execution efficiency of programs. The properties of this algorithm are formally proved.

This publication has 5 references indexed in Scilit: