Skip to content

Using Geometric Encoding based Context Sensitive Points to Analysis (geomPTA)

Xiao Xiao edited this page Apr 25, 2014 · 31 revisions

Contributed by Xiao Xiao

Introduction

geomPTA is a context sensitive points-to analysis based on SPARK. It uses the call graph generated by SPARK to build the full context sensitivity model for subsequent analysis. The call graph cycles are handled by a special form of 1CFA for better precision, because Java programs intend to have large cycles. The algorithm details and the evaluation results on Dacapo benchmark suite can be found in our technical report.

Running geomPTA

TBC......

Querying

Querying with SPARK interface

SPARK provides various formats of reachingObject for querying points-to information for a given local variable, global variable, or an object field. The result is returned in PointsToSet, an interface that provides basic utilities for visiting the points-to result. However, it doesn't permit programmers iterating the objects contained in the set. To do this, you can always safely cast a PointsToSet object to the type PointsToSetInternal, which has a forall utility.

TBC.....

Querying with geomPTA interface

In addition to the SPARK querying system, geomPTA provides its own interface for querying context sensitive points-to information in more sophisticated usage scenarios.

TBC......

Clone this wiki locally