A brief history of just-in-time

J Aycock - ACM computing surveys (CSUR), 2003 - dl.acm.org
Software systems have been using" just-in-time" compilation (JIT) techniques since the
1960s. Broadly, JIT compilation includes any translation performed dynamically, after a …

A survey of adaptive optimization in virtual machines

M Arnold, SJ Fink, D Grove, M Hind… - Proceedings of the …, 2005 - ieeexplore.ieee.org
Virtual machines face significant performance challenges beyond those confronted by
traditional static optimizers. First, portable program representations and dynamic language …

Optimization of object-oriented programs using static class hierarchy analysis

J Dean, D Grove, C Chambers - … , Åarhus, Denmark, August 7–11, 1995 9, 1995 - Springer
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 …

Context-sensitive interprocedural points-to analysis in the presence of function pointers

M Emami, R Ghiya, LJ Hendren - ACM SIGPLAN Notices, 1994 - dl.acm.org
This paper reports on the design, implementation, and empirical results of a new method for
dealing with the aliasing problem in C. The method is based on approximating the points-to …

Optimizing dynamically-typed object-oriented languages with polymorphic inline caches

U Hölzle, C Chambers, D Ungar - … : Geneva, Switzerland, July 15–19, 1991 …, 1991 - Springer
Polymorphic inline caches (PICs) provide a new way to reduce the overhead of polymorphic
message sends by extending inline caches to include more than one cached lookup result …

Call graph construction in object-oriented languages

D Grove, G DeFouw, J Dean, C Chambers - Proceedings of the 12th …, 1997 - dl.acm.org
Interprocedural analyses enable optimizing compilers to more precisely model the effects of
non-inlined procedure calls, potentially resulting in substantial increases in application …

The Jalapeno virtual machine

B Alpern, CR Attanasio, JJ Barton… - IBM Systems …, 2000 - ieeexplore.ieee.org
Jalapeño is a virtual machine for Java™ servers written in the Java language. To be able to
address the requirements of servers (performance and scalability in particular), Jalapeño …

Debugging optimized code with dynamic deoptimization

U Hölzle, C Chambers, D Ungar - … of the ACM SIGPLAN 1992 conference …, 1992 - dl.acm.org
SELF's debugging system provides complete source-level debugging (expected behavior)
with globally optimized code. It shields the debugger from optimizations performed by the …

A framework for call graph construction algorithms

D Grove, C Chambers - ACM Transactions on Programming Languages …, 2001 - dl.acm.org
A large number of call graph construction algorithms for object-oriented and functional
languages have been proposed, each embodying different tradeoffs between analysis cost …

Optimizing dynamically-dispatched calls with run-time type feedback

U Hölzle, D Ungar - Proceedings of the ACM SIGPLAN 1994 conference …, 1994 - dl.acm.org
Abstrach Object-oriented programs are difficult to optimize because they execute many
dynamically-dispatched calls. These calls cannot easily be eliminated because the compiler …