Abstract
Escape analysis of object-oriented languages allows us to stack allocate dynamically created objects and to reduce the overhead of synchronisation in Java-like languages. We formalise the escape property ε, computed by an escape analysis, as an abstract interpretation of concrete states. We define the optimal abstract operations induced by ε for a framework of analysis known as watchpoint semantics. The implementation of ε inside that framework is a formally correct abstract semantics (analyser) for escape analysis. We claim that ε is the basis for more refined and precise domains for escape analysis.
This work has been funded by EPSRC grant GR/R53401.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
B. Blanchet. Escape Analysis: Correctness Proof, Implementation and Experimental Results. In 25th ACM SIGPLAN-SIGACT Symposium of Principles of Programming Languages (POPL’98), pages 25–37, San Diego, CA, USA, January 1998. ACM Press.
B. Blanchet. Escape Analysis for Object-Oriented Languages: Application to Java. In 1999 ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA’99), volume 34(1) of SIGPLAN Notices, pages 20–34, Denver, Colorado, USA, November 1999.
J.-D. Choi, M. Gupta, M. J. Serrano, V. C. Sreedhar, and S. P. Midki.. Escape Analysis for Java. In 1999 ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA’99), volume 34(10) of SIGPLAN Notices, pages 1–19, Denver, Colorado, USA, November 1999.
A. Cortesi, G. Filé, and W. Winsborough. The Quotient of an Abstract Interpretation. Theoretical Computer Science, 202(1–2):163–192, 1998.
P. Cousot and R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In Proc. of POPL’77, pages 238–252, 1977.
A. Deutsch. On the Complexity of Escape Analysis. In 24th ACM SIGPLANSIGACT Symposium on Principles of Programming Languages (POPL’97), pages 358–371, Paris, France, January 1997. ACM Press.
D. Gay and B. Steensgaard. Fast Escape Analysis and Stack Allocation for Object-Based Programs. In D. A. Watt, editor, Compiler Construction, 9th International Conference, (CC’00), volume 1781 of Lecture Notes in Computer Science, pages 82–93, Berlin, Germany, March 2000. Springer-Verlag.
P. M. Hill and F. Spoto. A Refinement of the Escape Property. In A. Cortesi, editor, Proc. of the VMCAI’02 workshop on Verification, Model-Checking and Abstract Interpretation, volume 2294 of Lecture Notes in Computer Science, pages 154–166, Venice, Italy, January 2002.
T. Jensen and F. Spoto. Class Analysis of Object-Oriented Programs through Abstract Interpretation. In F. Honsell and M. Miculan, editors, Proc. of FOSSACS 2001, volume 2030 of Lecture Notes in Computer Science, pages 261–275, Genova, Italy, April 2001. Springer-Verlag.
Y. G. Park and B. Goldberg. Escape Analysis on Lists. In ACM SIGPLAN’92 Conference on Programming Language Design and Implementation (PLDI’92), volume 27(7) of SIGPLAN Notices, pages 116–127, San Francisco, California, USA, June 1992.
C. Ruggieri and T. P. Murtagh. Lifetime Analysis of Dynamically Allocated Objects. In 15th ACM Symposium on Principles of Programming Languages (POPL’88), pages 285–293, San Diego, California, USA, January 1988.
F. Spoto. The LOOP Analyser. http://www.sci.univr.it/~spoto/loop/.
F. Spoto. Watchpoint Semantics: A Tool for Compositional and Focussed Static Analyses. In P. Cousot, editor, Proc. of the Static Analysis Symposium, SAS’01, volume 2126 of Lecture Notes in Computer Science, pages 127–145, Paris, July 2001. Springer-Verlag.
J. Whaley and M. C. Rinard. Compositional Pointer and Escape Analysis for Java Programs. In 1999 ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA’99), volume 34(1) of SIGPLAN Notices, pages 187–206, Denver, Colorado, USA, November 1999.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hill, P.M., Spoto, F. (2002). A Foundation of Escape Analysis* . In: Kirchner, H., Ringeissen, C. (eds) Algebraic Methodology and Software Technology. AMAST 2002. Lecture Notes in Computer Science, vol 2422. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45719-4_26
Download citation
DOI: https://doi.org/10.1007/3-540-45719-4_26
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-44144-1
Online ISBN: 978-3-540-45719-0
eBook Packages: Springer Book Archive