Class 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
    • 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.