chord.project.analyses.rhs
Class ForwardRHSAnalysis<PE extends IEdge,SE extends IEdge>

java.lang.Object
  extended by chord.project.analyses.JavaAnalysis
      extended by chord.project.analyses.rhs.RHSAnalysis<PE,SE>
          extended by chord.project.analyses.rhs.ForwardRHSAnalysis<PE,SE>
All Implemented Interfaces:
ITask

public abstract class ForwardRHSAnalysis<PE extends IEdge,SE extends IEdge>
extends RHSAnalysis<PE,SE>

Implementation of the Reps-Horwitz-Sagiv algorithm for context-sensitive forward dataflow analysis.

Author:
Mayur Naik (mhn@cs.stanford.edu)

Field Summary
 
Fields inherited from class chord.project.analyses.rhs.RHSAnalysis
callersMap, cicg, currentBB, currentMethod, DEBUG, doMerge, domI, domM, invkQuadToLoc, isForward, isInited, pathEdges, summEdges, targetsMap, workList
 
Fields inherited from class chord.project.analyses.JavaAnalysis
consumes, controls, name, produces
 
Constructor Summary
ForwardRHSAnalysis()
           
 
Method Summary
 boolean isForward()
          Determines whether this analysis is a forward analysis (as opposed to a backward analysis.
 
Methods inherited from class chord.project.analyses.rhs.RHSAnalysis
doMerge, done, getCallGraph, getCopy, getInitPathEdge, getInitPathEdges, getInvkPathEdge, getMiscPathEdge, getSummaryEdge, init, printSummaries, runPass
 
Methods inherited from class chord.project.analyses.JavaAnalysis
getName, run, run, setName, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ForwardRHSAnalysis

public ForwardRHSAnalysis()
Method Detail

isForward

public boolean isForward()
Description copied from class: RHSAnalysis
Determines whether this analysis is a forward analysis (as opposed to a backward analysis.

Specified by:
isForward in class RHSAnalysis<PE extends IEdge,SE extends IEdge>
Returns:
true iff this analysis is a forward analysis.