Sciweavers

ECOOP
1995
Springer

Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis

13 years 8 months ago
Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis
Optimizing compilers for object-oriented languages apply static class analysis and other techniques to try to deduce precise information about the possible classes of the receivers of messages; if successful, dynamicallydispatched messages can be replaced with direct procedure calls and potentially further optimized through inline-expansion. By examining the complete inheritance graph of a program, which we call class hierarchy analysis, the compiler can improve the quality of static class information and thereby improve run-time performance. In this paper we present class hierarchy analysis and describe techniques for implementing this analysis effectively in both statically- and dynamically-typed languages and also in the presence of multi-methods. We also discuss how class hierarchy analysis can be supported in an interactive programming environment and, to some extent, in the presence of separate compilation. Finally, we assess the bottom-line performance improvement due to class h...
Jeffrey Dean, David Grove, Craig Chambers
Added 26 Aug 2010
Updated 26 Aug 2010
Type Conference
Year 1995
Where ECOOP
Authors Jeffrey Dean, David Grove, Craig Chambers
Comments (0)