coins.flow
Class ControlFlowImpl

java.lang.Object
  extended bycoins.flow.ControlFlowImpl
All Implemented Interfaces:
ControlFlow

public class ControlFlowImpl
extends java.lang.Object
implements ControlFlow


Field Summary
 int fDbgLevel
           
 BBlockVector[] fDom
           
 Flow flow
           
 FlowRoot flowRoot
           
 BBlockVector[] fPostDom
           
 BBlockVector[] fPostsDom
           
 BBlockVector[] fsDom
           
 IoRoot ioRoot
           
 
Constructor Summary
ControlFlowImpl(FlowRoot pFlowRoot, SubpFlow pFlow, SubpDefinition pSubDef)
          Make control flow graph.
 
Method Summary
 int domBitLookUp(int pBitPos)
          domBitLookUp Get the basic block number from the bit position in BBlockVector.
 int domLookUp(int ppNo)
          Find bit position in BBlockVector from basic block number.
 ShowControlFlow getShowControlFlow()
          Get an instance of ShowCOntrolFlow.
protected  boolean isEndedWithJump(Stmt pStmt)
           
 boolean linkBBlockInDfoAndInverseDfo()
          linkBBlockInDfoAndInverseDfo
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

flowRoot

public final FlowRoot flowRoot

ioRoot

public final IoRoot ioRoot

flow

public final Flow flow

fDom

public BBlockVector[] fDom

fsDom

public BBlockVector[] fsDom

fPostDom

public BBlockVector[] fPostDom

fPostsDom

public BBlockVector[] fPostsDom

fDbgLevel

public final int fDbgLevel
Constructor Detail

ControlFlowImpl

public ControlFlowImpl(FlowRoot pFlowRoot,
                       SubpFlow pFlow,
                       SubpDefinition pSubDef)
Make control flow graph.

Method Detail

getShowControlFlow

public ShowControlFlow getShowControlFlow()
Get an instance of ShowCOntrolFlow.

Specified by:
getShowControlFlow in interface ControlFlow

domLookUp

public int domLookUp(int ppNo)
Find bit position in BBlockVector from basic block number.

Specified by:
domLookUp in interface ControlFlow

domBitLookUp

public int domBitLookUp(int pBitPos)
domBitLookUp Get the basic block number from the bit position in BBlockVector.

Specified by:
domBitLookUp in interface ControlFlow

linkBBlockInDfoAndInverseDfo

public boolean linkBBlockInDfoAndInverseDfo()
linkBBlockInDfoAndInverseDfo

Returns:
true if normal, false if virtual edge to exit block is created.

isEndedWithJump

protected boolean isEndedWithJump(Stmt pStmt)