de.rwth.dfa.jvm
Class BasicBlockGraphSolver

java.lang.Object
  |
  +--de.rwth.dfa.jvm.Solver
        |
        +--de.rwth.dfa.jvm.GraphSolver
              |
              +--de.rwth.dfa.jvm.FactorisedFlowGraphSolver
                    |
                    +--de.rwth.dfa.jvm.FactorisedBasicBlockGraphSolver
                          |
                          +--de.rwth.dfa.jvm.BasicBlockGraphSolver

public class BasicBlockGraphSolver
extends FactorisedBasicBlockGraphSolver

A JVM abstraction solver using basic block graphs.

Version:
$Id: BasicBlockGraphSolver.java,v 1.2 2002/09/17 06:53:53 mohnen Exp $
Author:
Markus Mohnen

Fields inherited from class de.rwth.dfa.jvm.Solver
abstraction, iterations, memory, methodExceptions, methodInstrs, methodName, stopwatch
 
Constructor Summary
BasicBlockGraphSolver(Abstraction abstraction, java.lang.String methodName, de.fub.bytecode.generic.InstructionList methodInstrs, de.fub.bytecode.classfile.CodeException[] methodExceptions)
          Creates a new BasicBlockGraphSolver instance with out stop watch.
BasicBlockGraphSolver(Abstraction abstraction, java.lang.String methodName, de.fub.bytecode.generic.InstructionList methodInstrs, de.fub.bytecode.classfile.CodeException[] methodExceptions, Stopwatch stopwatch)
          Creates a new BasicBlockGraphSolver instance with stop watch.
 
Method Summary
protected  RootedGraph createGraph()
          Creates a basic block graph for a method.
 
Methods inherited from class de.rwth.dfa.jvm.FactorisedBasicBlockGraphSolver
getFunction, getInit, transferSolution
 
Methods inherited from class de.rwth.dfa.jvm.FactorisedFlowGraphSolver
nodesToIndex
 
Methods inherited from class de.rwth.dfa.jvm.GraphSolver
compute
 
Methods inherited from class de.rwth.dfa.jvm.Solver
getIterations, getMemory, getSolution
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BasicBlockGraphSolver

public BasicBlockGraphSolver(Abstraction abstraction,
                             java.lang.String methodName,
                             de.fub.bytecode.generic.InstructionList methodInstrs,
                             de.fub.bytecode.classfile.CodeException[] methodExceptions,
                             Stopwatch stopwatch)
Creates a new BasicBlockGraphSolver instance with stop watch.
Parameters:
abstraction - an Abstraction value
methodName - a String value
methodInstrs - an InstructionList value
methodExceptions - a CodeException[] value
stopwatch - a Stopwatch value

BasicBlockGraphSolver

public BasicBlockGraphSolver(Abstraction abstraction,
                             java.lang.String methodName,
                             de.fub.bytecode.generic.InstructionList methodInstrs,
                             de.fub.bytecode.classfile.CodeException[] methodExceptions)
Creates a new BasicBlockGraphSolver instance with out stop watch.
Parameters:
abstraction - an Abstraction value
methodName - a String value
methodInstrs - an InstructionList value
methodExceptions - a CodeException[] value
stopwatch - a Stopwatch value
Method Detail

createGraph

protected RootedGraph createGraph()
Creates a basic block graph for a method.
Overrides:
createGraph in class FactorisedBasicBlockGraphSolver
Returns:
a RootedGraph value