Author: Carl Friedrich Bolz <[email protected]>
Branch: extradoc
Changeset: r4443:c66ad608817b
Date: 2012-08-07 08:23 +0200
http://bitbucket.org/pypy/extradoc/changeset/c66ad608817b/

Log:    forgot to add the citation

diff --git a/talk/dls2012/paper.bib b/talk/dls2012/paper.bib
--- a/talk/dls2012/paper.bib
+++ b/talk/dls2012/paper.bib
@@ -347,3 +347,22 @@
        author = {Sullivan, Gregory T. and Bruening, Derek L. and Baron, Iris 
and Garnett, Timothy and Amarasinghe, Saman},
        year = {2003}
 }
+
+@inproceedings{kotzmann_escape_2005,
+       address = {New York, {NY}, {USA}},
+       series = {{VEE} '05},
+       title = {Escape analysis in the context of dynamic compilation and 
deoptimization},
+       isbn = {1-59593-047-7},
+       location = {Chicago, {IL}, {USA}},
+       doi = {10.1145/1064979.1064996},
+       abstract = {In object-oriented programming languages, an object is said 
to escape the method or thread in which it was created if it can also be 
accessed by other methods or threads. Knowing which objects do not escape 
allows a compiler to perform aggressive {optimizations.This} paper presents a 
new intraprocedural and interprocedural algorithm for escape analysis in the 
context of dynamic compilation where the compiler has to cope with dynamic 
class loading and deoptimization. It was implemented for Sun Microsystems' Java 
{HotSpot&#8482;} client compiler and operates on an intermediate representation 
in {SSA} form. We introduce equi-escape sets for the efficient propagation of 
escape information between related objects. The analysis is used for scalar 
replacement of fields and synchronization removal, as well as for stack 
allocation of objects and fixed-sized arrays. The results of the 
interprocedural analysis support the compiler in inlining decisions and allow 
actual parameters 
 to be allocated on the caller {stack.Under} certain circumstances, the Java 
{HotSpot&#8482;} {VM} is forced to stop executing a method's machine code and 
transfer control to the interpreter. This is called deoptimization. Since the 
interpreter does not know about the scalar replacement and synchronization 
removal performed by the compiler, the deoptimization framework was extended to 
reallocate and relock objects on demand.},
+       booktitle = {Proceedings of the 1st {ACM/USENIX} international 
conference on Virtual execution environments},
+       publisher = {{ACM}},
+       author = {Kotzmann, Thomas and M&#246;ssenb&#246;ck, Hanspeter},
+       year = {2005},
+       note = {{ACM} {ID:} 1064996},
+       keywords = {algorithms, allocation/deallocation strategies, 
deoptimization},
+       pages = {111&#8211;120}
+},
+
+
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to