envgen.analysis.stat
Class CFGAnalysisMain

java.lang.Object
  |
  +--envgen.analysis.stat.StaticAnalysis
        |
        +--envgen.analysis.stat.CFGAnalysisMain
All Implemented Interfaces:
IApproach

public class CFGAnalysisMain
extends StaticAnalysis
implements IApproach


Field Summary
(package private)  AnalysisResults analysisResults
           
(package private)  EnvCallGraph callGraph
          Needed for interprocedural SE analysis.
(package private)  int debug
          Set to print debugging messages.
(package private)  boolean packageAnalysis
          Integer field that keeps track of value k in k-limiting.
(package private)  java.lang.String packageName
           
(package private)  java.util.List unitStaticFields
          List of static fields of the unit.
(package private)  java.util.HashMap unitTable
          Unit classes.
 
Fields inherited from class envgen.analysis.stat.StaticAnalysis
chainLength, dump, unitAnalysis
 
Constructor Summary
CFGAnalysisMain(java.util.HashMap unitTable, EnvCallGraph callGraph)
           
 
Method Summary
 Assumptions acquireAssumptions()
           
 void analyzeCFGs(soot.SootMethod externalMethod, java.util.HashSet visited)
          Interprocedural, flow-sensitive, parameterized alias analysis.
 void performCFGAnalysis(java.util.List markedMethods)
          For each of the methods in the environment performs a cfg analysis.
 
Methods inherited from class envgen.analysis.stat.StaticAnalysis
addField, getCallGraph, getClass, getExtendedLoc, getExtendedLoc, getMappedArg, getMappedLocation, getMappedLocs, getMappedLocs, getMappedPathParam, getMappedPathParam, getMappedPathParam, getMappedReturnLocs, getMappedTopParam, getMappedVals, getStaticFields, getValues, isSingularLoc, isSubType, isUnitSuperType, processRefOrScalarType, processRefType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

unitTable

java.util.HashMap unitTable
Unit classes.


callGraph

EnvCallGraph callGraph
Needed for interprocedural SE analysis.


analysisResults

AnalysisResults analysisResults

unitStaticFields

java.util.List unitStaticFields
List of static fields of the unit.


packageAnalysis

boolean packageAnalysis
Integer field that keeps track of value k in k-limiting. The value can be varied by the user. The larger the value, the more precise information will be produced by the analysis.


packageName

java.lang.String packageName

debug

int debug
Set to print debugging messages.

Constructor Detail

CFGAnalysisMain

public CFGAnalysisMain(java.util.HashMap unitTable,
                       EnvCallGraph callGraph)
Method Detail

acquireAssumptions

public Assumptions acquireAssumptions()
Specified by:
acquireAssumptions in interface IApproach

performCFGAnalysis

public void performCFGAnalysis(java.util.List markedMethods)
For each of the methods in the environment performs a cfg analysis.


analyzeCFGs

public void analyzeCFGs(soot.SootMethod externalMethod,
                        java.util.HashSet visited)
Interprocedural, flow-sensitive, parameterized alias analysis.