Package tip.cfg

Provides the basic framework for performing fixed-point analyses of TIP programs.

See:
          Description

Interface Summary
CFGAnswer<A> CFGAnswer defines an interface for the abstraction of answers based on a ICFG.
CFGQuestionAnswer<Q,A> CFGQuestionAnswer defines an interface for the abstraction of answers to questions based on a ICFG.
DependencyStrategy The DependencyStrategy interface defines the necessary method to abstract forwards and backwards dependency in a FlowAnalysis.
FixedPointAnalysis<VariableType> FixedPointAnalysis defines the interface for general fixed-point analyses for which WorkList can be used.
ICFG ICFG defines the interface for a control flow graph.
ICFGAnalysis ICFGAnalysis defines the interface for an analysis based on IProgramPoint.
ICFGCollection ICFGCollection defines the interface for a collection of control flow graphs.
IProgramPoint IProgramPoint defines the interface for a program point in a control flow graph.
Lattice<T> Lattice defines the interface for a lattice with element type T.
PointsToMap PointsToMap defines the interface for a points-to map mapping variables to pointer target for a program point.
Target Target defines the interface for pointer targets.
WideningNarrowingAnalysis<VariableType> WideningNarrowingAnalysis defines the methods necessary for performing a widening-narrowing analysis using WorkList.
 

Class Summary
AProgramPoint AProgramPoint implements the basic functionality of the generated program points.
BackwardsStrategy BackwardsStrategy defines the methods for retrieving the dependency set and joint set for a program point in a backwards analysis.
CAssignPtrStmPoint CAssignPtrStmPoint is a program point in a control flow graph associated with a AAssignPtrStm.
CAssignVarStmPoint CAssignVarStmPoint is a program point in a control flow graph associated with a AAssignVarStm.
CBinopExpPoint CBinopExpPoint is a program point in a control flow graph associated with a ABinopExp.
CBlockPoint CBlockPoint is a program point in a control flow graph associated with a ABlock.
CCFG CCFG is the standard implementation of ICFG.
CCFGCollection CCFGCollection is the standard implementation of ICFGCollection used by CFGBuilder.
CDeclStmPoint CDeclStmPoint is a program point in a control flow graph associated with a ADeclStm.
CDerefExpPoint CDerefExpPoint is a program point in a control flow graph associated with a ADerefExp.
CFGAnalysisAdapter CFGAnalysisAdapter implements ICFGAnalysis by defering all case-methods to CFGAnalysisAdapter.defaultNode(Node,IProgramPoint).
CFGAnswerAdapter<A> CFGAnswerAdapter implements the default behaviour of the CFGAnswer interface.
CFGBuilder CFGBuilder constructs control flow graphs for an AST based on the definitions in the SableCC grammar 'Control Flow Graph'-section.
CFGQuestionAnswerAdapter<Q,A> CFGQuestionAnswerAdapter implements the default behaviour of the CFGQuestionAnswer interface.
CFunctionCallExpPoint CFunctionCallExpPoint is a program point in a control flow graph associated with a AFunctionCallExp.
CFunctionPtrCallExpPoint CFunctionPtrCallExpPoint is a program point in a control flow graph associated with a AFunctionPtrCallExp.
CIfThenElseStmPoint CIfThenElseStmPoint is a program point in a control flow graph associated with a AIfThenElseStm.
CIfThenStmPoint CIfThenStmPoint is a program point in a control flow graph associated with a AIfThenStm.
CInputExpPoint CInputExpPoint is a program point in a control flow graph associated with a AInputExp.
CIntConstExpPoint CIntConstExpPoint is a program point in a control flow graph associated with a AIntConstExp.
CMallocExpPoint CMallocExpPoint is a program point in a control flow graph associated with a AMallocExp.
CNullExpPoint CNullExpPoint is a program point in a control flow graph associated with a ANullExp.
COutputStmPoint COutputStmPoint is a program point in a control flow graph associated with a AOutputStm.
CPointerExpPoint CPointerExpPoint is a program point in a control flow graph associated with a APointerExp.
CReturnStmPoint CReturnStmPoint is a program point in a control flow graph associated with a AReturnStm.
Cubic<Token,Variable> Cubic is an implementation of the cubic algorithm.
CVarExpPoint CVarExpPoint is a program point in a control flow graph associated with a AVarExp.
CWhileStmPoint CWhileStmPoint is a program point in a control flow graph associated with a AWhileStm.
DeclarationTarget DeclarationTarget represents the pointer target of a declaration (both function and variable declarations).
EntryPoint EntryPoint represents the entry point of a control flow graph.
ExitPoint ExitPoint represents the exit point of a control flow graph.
FlowAnalysis<VariableType> FlowAnalysis implements the basic structure for a flow analysis implementing the FixedPointAnalysis interface.
ForwardsStrategy ForwardsStrategy defines the methods for retrieving the dependency set and joint set for a program point in a forwards analysis.
IntersectionSetLattice<L> IntersectionSetLattice defines a set lattice with elements of type L and with intersection as least-upper-bound operator.
MallocTarget MallocTarget represents the pointer target of a malloc expression.
MapLattice<A,L> MapLattice defines a map lattice, AL, from a fixed set, A, containing the elements of the domain, and a lattice, L, for the range elements.
UnionFind  
UnionSetLattice<L> UnionSetLattice defines a set lattice with elements of type L and with union as least-upper-bound operator.
WorkList WorkList implements the work list algorithm for FixedPointAnalysis and WideningNarrowingAnalysis.
 

Package tip.cfg Description

Provides the basic framework for performing fixed-point analyses of TIP programs.