Sciweavers

ECOOP
2004
Springer

Pointer Analysis in the Presence of Dynamic Class Loading

14 years 5 months ago
Pointer Analysis in the Presence of Dynamic Class Loading
Many compiler optimizations and software engineering tools need precise pointer analyses to be effective. Unfortunately, many Java features, such as dynamic class loading, reflection, and native methods, make pointer analyses difficult to develop. Hence, prior pointer analyses for Java either ignore those features or are overly conservative. We describe and evaluate a pointer analysis that deals with all Java language features. Our analysis is based on Andersen’s inclusion-constraint based pointer analysis. For statically-linked languages, Andersen’s analysis finds constraints based on a static wholeprogram analysis of the code, and then propagates the constraints to obtain points-to information. Our version of Andersen’s analysis handles features such as dynamic class loading by generating constraints at runtime and propagating the constraints whenever a client of the analysis needs points-to information. We evaluate the correctness of our analysis by comparing its results w...
Martin Hirzel, Amer Diwan, Michael Hind
Added 01 Jul 2010
Updated 01 Jul 2010
Type Conference
Year 2004
Where ECOOP
Authors Martin Hirzel, Amer Diwan, Michael Hind
Comments (0)