ACM Transactions on Programming Languages and Systems · 1999 · 91 citations · 28 references
EngineeringComputer ArchitecturePartial Redundancy EliminationSoftware EngineeringComputational ComplexityEmpirical AlgorithmicsSsapre AlgorithmSoftware AnalysisReliability EngineeringApproximate ComputingParallel Complexity TheorySsa FormData RecoverySystems EngineeringParallel ComputingComputer EngineeringComputer ScienceProgram OptimizationOptimizing CompilerForm Factor (Design)Program AnalysisParallel Programming
The SSAPRE algorithm for performing partial redundancy elimination based entirely on SSA form is presented. The algorithm is formulated based on a new conceptual framework, the factored redundancy graph, for analyzing redundancy, and representes the first sparse approach to the classical problem and on methods for its solution. With the algorithm description, theorems and their proofs are given showing that the algorithm produces the best possible code by the criteria of computational optimality and lifetime optimality of the introduced temporaries. In addition to the base algorithm, a practical implementation of SSAPRE that exhibits additional compile-time efficiencies is described. In closing, measurement statistics are provided that characterize the instances of the partial redundancy problem from a set of benchmark programs and compare optimization time spent by an implementation of SSAPRE aganist a classical partial redundancy elimination implementation. The data lend insight into the nature of partial redundancy elimination and demonstrate the expediency of this new approach.
28
Detecting equality of variables in programs
Bowen Alpern, Mark N. Wegman, F. K. Zadeck · 1988 · 426 citations