VORTEX - AN OPTIMIZING COMPILER FOR OBJECT-ORIENTED LANGUAGES

Citation
J. Dean et al., VORTEX - AN OPTIMIZING COMPILER FOR OBJECT-ORIENTED LANGUAGES, ACM SIGPLAN NOTICES, 31(10), 1996, pp. 83-100
Citations number
43
Categorie Soggetti
Computer Sciences","Computer Science Software Graphycs Programming
Journal title
Volume
31
Issue
10
Year of publication
1996
Pages
83 - 100
Database
ISI
SICI code
Abstract
Previously, techniques such as class hierarchy analysis and receiver c lass prediction have been to greatly improve the performance of applic ations written in pure object-oriented languages, but the degree to wh ich these results are transferable to applications written in hybrid l anguages has been unclear. In part to answer this question, we have de veloped the Vortex compiler infrastructure, a language-independent opt imizing compiler for object-oriented languages, with front-ends for Ce cil, C++, Java, and Modula-3. In this paper, we describe the Vortex co mpiler's intermediate language, internal structure, and optimization s uite, and then we report the results of experiments assessing the effe ctiveness of different combinations of optimizations on sizable applic ations across these four languages. We characterize the benchmark prog rams in terms of a collection of static and dynamic metrics, intended to quantify aspects of the ''object-orientedness'' of a program.