harpoon.Analysis.DataFlow
Class TreeSolver

java.lang.Object
  extended by harpoon.Analysis.DataFlow.TreeSolver

public abstract class TreeSolver
extends Object

A blatant rip-off of Whaley's QuadSolver class, used to solve data flow equations (baby). As Felix pointed out, there is probably not much of a need for separate quad and tree solver classes. Ultimately they should probably be combined into a BasicBlockSolver class.

Version:
$Id: TreeSolver.java,v 1.5 2004/02/08 01:51:05 cananian Exp $
Author:
Duncan Bryce <duncan@lcs.mit.edu>

Field Summary
static boolean DEBUG
           
 
Constructor Summary
TreeSolver()
           
 
Method Summary
static void db(String s)
           
static void forward_rpo_solver(BasicBlock root, DataFlowBasicBlockVisitor v)
           
static int getMaxID(HCodeElement root)
           
static void worklist_solver(BasicBlock root, DataFlowBasicBlockVisitor v)
           
static void worklist_solver(Iterator iter, DataFlowBasicBlockVisitor v)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEBUG

public static boolean DEBUG
Constructor Detail

TreeSolver

public TreeSolver()
Method Detail

db

public static void db(String s)

forward_rpo_solver

public static void forward_rpo_solver(BasicBlock root,
                                      DataFlowBasicBlockVisitor v)

worklist_solver

public static void worklist_solver(BasicBlock root,
                                   DataFlowBasicBlockVisitor v)

worklist_solver

public static void worklist_solver(Iterator iter,
                                   DataFlowBasicBlockVisitor v)

getMaxID

public static int getMaxID(HCodeElement root)