Points-To for Java: A General Framework and an Empirical Comparison
Mirko Streckenbach, Gregor Snelting · 2008
Points-to analysis for Java is different from points-to for C or even C++. We present a framework which generalizes popular points-to algorithms and generates set constraints from full Java bytecode. The framework exploits previously computed points-to sets in a fixpoint iteration for precise resolution of dynamic binding. We then compare implementations of this framework for unification-based and subset-based analysis. It turns out that -- in contrast to the C situation -- both approaches have about the same running time, while the subset-based algorithm is still more precise. The unifiation-based method is slowed down because its inherent imprecision accumulates during fixpoint iteration.