Partial dead code elimination

J Knoop, O Rüthing, B Steffen - ACM Sigplan Notices, 1994 - dl.acm.org
J Knoop, O Rüthing, B Steffen
ACM Sigplan Notices, 1994dl.acm.org
A new aggressive algorithm for the elimination of partially dead code is presented, ie, of
code which is only dead on some program paths. Besides being more powerful than the
usual approaches to dead code elimination, this algorithm is optimal in the following sense:
partially dead code remaining in the resulting program cannot be eliminated without
changing the branching structure or the semantics of the program, or without impairing some
program executions. Our approach is based on techniques for partial redundancy …
A new aggressive algorithm for the elimination of partially dead code is presented, i.e., of code which is only dead on some program paths. Besides being more powerful than the usual approaches to dead code elimination, this algorithm is optimal in the following sense: partially dead code remaining in the resulting program cannot be eliminated without changing the branching structure or the semantics of the program, or without impairing some program executions.
Our approach is based on techniques for partial redundancy elimination. Besides some new technical problems there is a significant difference here: partial dead code elimination introduces second order effects, which we overcome by means of exhaustive motion and elimination steps. The optimality and the uniqueness of the program obtained is proved by means of a new technique which is universally applicable and particularly useful in the case of mutually interdependent program optimizations.
ACM Digital Library