Automatic Interprocedural Optimization for Object-Oriented Languages (1996)
| Citations: | 1 - 0 self |
BibTeX
@MISC{Plevyak96automaticinterprocedural,
author = {John Plevyak and Andrew A. Chien},
title = {Automatic Interprocedural Optimization for Object-Oriented Languages},
year = {1996}
}
OpenURL
Abstract
The structure of object-oriented programs differs from that of procedural programs, requiring special compilation techniques to obtain efficiency. Object-orientation introduce additional layers of abstraction which separate the implementations of data structures and algorithms from their points of use. The result is smaller functions, increased data dependence of control flow, and an increase in potential aliasing. We present an automatic interprocedural optimization framework, which resolves these differences through interprocedural analysis and transformation; enabling a dynamically-typed pure object-oriented language to match the performance of C on a set of standard procedural benchmarks. For two standard object-oriented benchmarks we also compare this framework to the supplied annotations (e.g. inline, virtual and templates) for the hybrid OO-procedural language C++ [51], and show that the framework obtains up to 6 times the performance of the annotated C++ code.







