at.dms.kjc.sir.lowering
Class InlinePhases

java.lang.Object
  extended by at.dms.kjc.sir.lowering.InlinePhases

public class InlinePhases
extends Object

This class inlines each phase (i.e., a helper function that does I/O) of a filter into the call site of that phase. This is useful because some transformations (e.g., fusion) do not support I/O from within helper functions. By inlining the phases, all of the I/O is moved to the work function. This class currently operates on SIRFilter's, assuming that any phases are represented as plain methods that have I/O rates. It does not deal with SIRPhasedFilters, which explicitly represent the phases separately -- this generality is not needed in the current version of StreamIt, which does not include phases at the language level (Aug 2006). This assumes there are no recursive functions that do I/O.


Constructor Summary
InlinePhases()
           
 
Method Summary
static void doit(SIRFilter filter)
          Inlines all calls to phases in and removes those phases from the method array.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InlinePhases

public InlinePhases()
Method Detail

doit

public static void doit(SIRFilter filter)
Inlines all calls to phases in and removes those phases from the method array.