Title :
Run-Time Support for Optimizations Based on Escape Analysis
Author :
Kotzmann, Thomas ; Mössenböck, Hanspeter
Author_Institution :
Inst. for Syst. Software, Johannes Kepler Univ. Linz
Abstract :
We implemented a new escape analysis algorithm for Sun Microsystems´ Java HotSpottrade VM. The results are used to replace objects with scalar variables, to allocate objects on the stack, and to remove synchronization. This paper deals with the representation of optimized objects in the debugging information and with reallocation and garbage collection support for a safe execution of optimized methods. Assignments to fields of parameters that can refer to both stack and heap objects are associated with an extended write barrier which skips card marking for stack objects. The traversal of objects during garbage collection uses a wrapper that abstracts from stack objects and presents their pointer fields as root pointers to the garbage collector
Keywords :
Java; optimising compilers; storage management; virtual machines; Java HotSpot virtual machine; Sun Microsystems; escape analysis; garbage collection; object allocation; optimizations; run-time support; stack allocation; Algorithm design and analysis; Debugging; Dynamic compiler; Java; Optimization methods; Optimizing compilers; Runtime environment; Sun; Virtual machining; Virtual manufacturing;
Conference_Titel :
Code Generation and Optimization, 2007. CGO '07. International Symposium on
Conference_Location :
San Jose, CA
Print_ISBN :
0-7695-2764-7
DOI :
10.1109/CGO.2007.34