joeq.Compiler.Analysis.IPSSA
Class IPSSABuilder

java.lang.Object
  extended by joeq.Compiler.Analysis.IPSSA.IPSSABuilder
All Implemented Interfaces:
java.lang.Runnable

public class IPSSABuilder
extends java.lang.Object
implements java.lang.Runnable

This is where the main action pertaining to IPSSA construction happens. A subclass is SSABuilder, which is responsible for intraprocedural IPSSA construction.

Version:
$Id: IPSSABuilder.java,v 1.24 2005/05/28 11:14:47 joewhaley Exp $
Author:
V.Benjamin Livshits
See Also:
IPSSABuilder.SSABuilder

Nested Class Summary
static class IPSSABuilder.Application
          This is something we typically run afte the IPSSABuilder.
static class IPSSABuilder.ApplicationLaunchingPad
          This class allows to specify applications to be run after IPSSA has been constructed.
static class IPSSABuilder.Main
          This is an entry point for IPSSABuilder with a main(...) function.
 
Constructor Summary
IPSSABuilder(java.util.Collection classes, int verbosity)
           
 
Method Summary
static joeq.Compiler.Analysis.IPSSA.IPSSABuilder.SSABuilder getBuilder(jq_Method m)
          The return result may be NULL
 CallGraph getCallGraph()
           
 PAResults getPAResults()
           
static boolean isCall(Quad quad)
           
static boolean isLoad(Quad quad)
           
static boolean isStore(Quad quad)
           
 void run()
          Do the whole analysis.
 boolean skipMethod(jq_Method method)
          A method filter.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IPSSABuilder

public IPSSABuilder(java.util.Collection classes,
                    int verbosity)
Method Detail

getPAResults

public PAResults getPAResults()

getCallGraph

public CallGraph getCallGraph()

run

public void run()
Do the whole analysis.

Specified by:
run in interface java.lang.Runnable

skipMethod

public boolean skipMethod(jq_Method method)
A method filter.


getBuilder

public static joeq.Compiler.Analysis.IPSSA.IPSSABuilder.SSABuilder getBuilder(jq_Method m)
The return result may be NULL


isLoad

public static boolean isLoad(Quad quad)

isStore

public static boolean isStore(Quad quad)

isCall

public static boolean isCall(Quad quad)