Partial redundancy elimination was originally formulated as a bidirectional, bit-vector, data-flow analysis problem by Morel and Renvoise. Dhamdhere improved the original algorithm using the concept of edge placement. Knoop, Rüthing, and Steffen viewed the problem within a framework that required only four unidirectional analyses for an optimal solution. Here, we propose an algorithm for partial redundancy elimination based on well known concepts, viz., availability, anticipability, partial availability, and partial anticipability. The algorithm is both computationally and lifetime optimal. Our algorithm also requires four unidirectional data-flow analyses. The main advantage of the algorithm is its simplicity.
Mendeley helps you to discover research relevant for your work.
CITATION STYLE
Paleri, V. K., Srikant, Y. N., & Shankar, P. (1998). A Simple Algorithm for Partial Redundancy Elimination. SIGPLAN Notices (ACM Special Interest Group on Programming Languages), 33(12), 35–40. https://doi.org/10.1145/307824.307851