Package soot.jimple.spark.geom.helper
Class GeomEvaluator
- java.lang.Object
-
- soot.jimple.spark.geom.helper.GeomEvaluator
-
public class GeomEvaluator extends Object
We provide a set of methods to evaluate the quality of geometric points-to analysis. The evaluation methods are: 1. Count the basic points-to information, such as average points-to set size, constraints evaluation graph size, etc; 2. Virtual function resolution comparison; 3. Static casts checking; 4. All pairs alias analysis; 5. Building heap graph (not used yet).- Author:
- xiao
-
-
Constructor Summary
Constructors Constructor Description GeomEvaluator(GeomPointsTo gpts, PrintStream ps)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcheckAliasAnalysis()Count how many aliased base pointers appeared in all user's functions.voidcheckCallGraph()Report the virtual callsites resolution result for the user's code.voidcheckCastsSafety()Count how many static casts can be determined safe.voidestimateHeapDefuseGraph()Estimate the size of the def-use graph for the heap memory.voidprofileGeomBasicMetrics(boolean testSpark)Summarize the geometric points-to analysis and report the basic metrics.voidprofileSparkBasicMetrics()Collecting basic statistical information for SPARK.
-
-
-
Constructor Detail
-
GeomEvaluator
public GeomEvaluator(GeomPointsTo gpts, PrintStream ps)
-
-
Method Detail
-
profileSparkBasicMetrics
public void profileSparkBasicMetrics()
Collecting basic statistical information for SPARK.
-
profileGeomBasicMetrics
public void profileGeomBasicMetrics(boolean testSpark)
Summarize the geometric points-to analysis and report the basic metrics.
-
checkCallGraph
public void checkCallGraph()
Report the virtual callsites resolution result for the user's code.
-
checkAliasAnalysis
public void checkAliasAnalysis()
Count how many aliased base pointers appeared in all user's functions.
-
checkCastsSafety
public void checkCastsSafety()
Count how many static casts can be determined safe.
-
estimateHeapDefuseGraph
public void estimateHeapDefuseGraph()
Estimate the size of the def-use graph for the heap memory. The heap graph is estimated without context information.
-
-