coins.aflow
Class FindLiveInLiveOut

java.lang.Object
  extended bycoins.aflow.util.AnalAdapter
      extended bycoins.aflow.FlowAdapter
          extended bycoins.aflow.FindLiveInLiveOut
All Implemented Interfaces:
Analyzer
Direct Known Subclasses:
FindPLiveInLiveOut

public abstract class FindLiveInLiveOut
extends FlowAdapter


Field Summary
 
Fields inherited from class coins.aflow.FlowAdapter
flow, flowRoot, fResults, hirRoot, ioRoot, symRoot
 
Constructor Summary
FindLiveInLiveOut(FlowResults pResults)
          Creates new FindLiveInLiveOut
 
Method Summary
 void find(BBlock pBBlock)
           
 void find(SetRefRepr pSetRefRepr)
           
 void find(SubpFlow pSubpFlow)
          Finds LiveIn and LiveOut vectors for all the BBlocks in pSubpFlow.
protected abstract  FlowAnalSymVector getDefined(BBlock pBBlock)
           
protected abstract  FlowAnalSymVector getDefined(SetRefRepr pSetRefRepr)
           
protected abstract  FlowAnalSymVector getExposed(BBlock pBBlock)
           
protected abstract  FlowAnalSymVector getExposed(SetRefRepr pSetRefRepr)
           
protected abstract  FlowAnalSymVector getLiveOut(BBlock pBBlock)
           
protected abstract  FlowAnalSymVector getLiveOut(SetRefRepr pSetRefRepr)
           
protected abstract  void register(SetRefRepr pSetRefRepr, FlowAnalSymVector pLiveOut)
           
protected abstract  void registerLiveIn(BBlock pBBlock, FlowAnalSymVector pLiveIn)
           
protected abstract  void registerLiveOut(BBlock pBBlock, FlowAnalSymVector pLiveOut)
           
 
Methods inherited from class coins.aflow.FlowAdapter
find, find, find, find, find, find
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FindLiveInLiveOut

public FindLiveInLiveOut(FlowResults pResults)
Creates new FindLiveInLiveOut

Method Detail

find

public void find(SubpFlow pSubpFlow)
Finds LiveIn and LiveOut vectors for all the BBlocks in pSubpFlow.


find

public void find(BBlock pBBlock)

getExposed

protected abstract FlowAnalSymVector getExposed(BBlock pBBlock)

getDefined

protected abstract FlowAnalSymVector getDefined(BBlock pBBlock)

getLiveOut

protected abstract FlowAnalSymVector getLiveOut(BBlock pBBlock)

registerLiveIn

protected abstract void registerLiveIn(BBlock pBBlock,
                                       FlowAnalSymVector pLiveIn)

registerLiveOut

protected abstract void registerLiveOut(BBlock pBBlock,
                                        FlowAnalSymVector pLiveOut)

find

public void find(SetRefRepr pSetRefRepr)

getExposed

protected abstract FlowAnalSymVector getExposed(SetRefRepr pSetRefRepr)

getDefined

protected abstract FlowAnalSymVector getDefined(SetRefRepr pSetRefRepr)

getLiveOut

protected abstract FlowAnalSymVector getLiveOut(SetRefRepr pSetRefRepr)

register

protected abstract void register(SetRefRepr pSetRefRepr,
                                 FlowAnalSymVector pLiveOut)