at.dms.kjc.flatgraph
Class DataFlowTraversal

java.lang.Object
  extended by at.dms.kjc.flatgraph.DataFlowTraversal

public class DataFlowTraversal
extends Object

This class calculates a traversal of the graph where that guarantees that for each node n in the traversal, we have visited every node upstream of n. For feedbackloops it will visit the feedback path after the non-feedback path. This traversal also guarantees that each node appears only once in the traversal.

Author:
mgordon

Constructor Summary
DataFlowTraversal()
           
 
Method Summary
static LinkedList<FlatNode> getTraversal(FlatNode top)
          Starting at top, return a traversal of the graph where that guarantees that for each node n in the traversal, we have visited every node upstream of n.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DataFlowTraversal

public DataFlowTraversal()
Method Detail

getTraversal

public static LinkedList<FlatNode> getTraversal(FlatNode top)
Starting at top, return a traversal of the graph where that guarantees that for each node n in the traversal, we have visited every node upstream of n. For feedbackloops it will visit the feedback path after the non-feedback path. This traversal also guarantees that each node appears only once in the traversal.

Parameters:
top - The starting node of the traversal.
Returns:
The traversal, a LinkedList of FlatNode.