@MISC{Davidson82eliminatingredundant, author = {Jack W. Davidson and et al.}, title = {Eliminating Redundant Object Code}, year = {1982} }
Bookmark
OpenURL
Abstract
Compilers usually eliminate common subexpres-sions in intermediate code, not object code. This reduces machine-dependence but misses the machine-dependent common subexpressions introduced by the last phases of code expansion. This paper describes a machine-independent procedure for eliminating machine-specific common subexpressions. It also identifies dead variables, defines windows for a com-panion peephole optimizer, and forms the basis of a retargetable register allocator. Its techniques for han-dling machine-specific data should generalize to other optimizations as well.