|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcoins.aflow.HashBasedFlowExpId
An implementation of FlowExpId. Subtrees that have exactly the same structure have the same HashBasedFlowExpId.
| Field Summary | |
protected ExpId |
fExpId
Creates new HaseBasedFlowExpId |
protected boolean |
fHasCall
|
(package private) int |
fIndex
|
protected boolean |
fLHS
fLHS is true if corresponding expression is left hand side expression of AssignStmt. |
(package private) java.util.Set |
fOperandSet
|
(package private) java.util.Set |
fOperandSet0
|
(package private) int |
fOperationCount
|
protected FlowResults |
fResults
|
protected SubpFlow |
fSubpFlow
|
protected IR |
fTree
|
protected IoRoot |
ioRoot
|
protected SymRoot |
symRoot
|
| Constructor Summary | |
(package private) |
HashBasedFlowExpId(IR pNode,
int pIndex,
SubpFlow pSubpFlow)
|
| Method Summary | |
protected java.lang.String |
generateExpIdName(int pIndex)
generateExpIdName: //##41 Generate ExpId name of the form xIdnnn where nnn is the string representing pIndex. |
DefUseList |
getDefUseList()
|
ExpId |
getExpId()
|
int |
getIndex()
Returns the index attached to this FlowExpId. |
IR |
getLinkedNode()
Returns an instance of the IR node whose associated FlowExpId is this. |
protected HashBasedFlowExpId |
getNextInChain()
|
int |
getNumberOfOperations()
Returns the number of operations this FlowExpId involves. |
java.util.Set |
getOperandSet()
Returns the set of FlowAnalSyms that are operands of this FlowExpId. |
java.util.Set |
getOperandSet0()
Returns the set of FlowAnalSyms that are operands of this FlowExpId, and that hold the value that may contribute to the result of the computation of this FlowExpId. |
SubpFlow |
getSubpFlow()
|
IR |
getTree()
Returns a copy of the tree structure this FlowExpId represents. |
UDList |
getUDList()
|
boolean |
hasCall()
|
boolean |
isLHS()
Return true if the corresponding expression is left hand side expression of AssignStmt. |
abstract void |
operandInfo(IR pIr)
|
void |
setLHSFlag()
Set flag showing that corresponding expression is left hand side expression of AssignStmt. |
protected void |
setNextInChain(HashBasedFlowExpId pNext)
|
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface coins.aflow.FlowExpId |
toStringShort |
| Field Detail |
final int fIndex
protected FlowResults fResults
protected final IoRoot ioRoot
protected final SymRoot symRoot
int fOperationCount
final java.util.Set fOperandSet
final java.util.Set fOperandSet0
protected SubpFlow fSubpFlow
protected IR fTree
protected boolean fHasCall
protected boolean fLHS
protected ExpId fExpId
| Constructor Detail |
HashBasedFlowExpId(IR pNode,
int pIndex,
SubpFlow pSubpFlow)
| Method Detail |
protected HashBasedFlowExpId getNextInChain()
protected void setNextInChain(HashBasedFlowExpId pNext)
public IR getLinkedNode()
FlowExpId
getLinkedNode in interface FlowExpIdpublic IR getTree()
FlowExpId
getTree in interface FlowExpIdpublic int getIndex()
FlowExpId
getIndex in interface FlowExpIdpublic java.util.Set getOperandSet()
FlowExpId
getOperandSet in interface FlowExpIdpublic java.util.Set getOperandSet0()
FlowExpId
getOperandSet0 in interface FlowExpIdpublic abstract void operandInfo(IR pIr)
public java.lang.String toString()
public int getNumberOfOperations()
FlowExpId
getNumberOfOperations in interface FlowExpIdpublic DefUseList getDefUseList()
getDefUseList in interface FlowExpIdpublic UDList getUDList()
getUDList in interface FlowExpIdpublic SubpFlow getSubpFlow()
public boolean hasCall()
hasCall in interface FlowExpIdprotected java.lang.String generateExpIdName(int pIndex)
public ExpId getExpId()
getExpId in interface FlowExpIdpublic void setLHSFlag()
FlowExpId
setLHSFlag in interface FlowExpIdpublic boolean isLHS()
FlowExpId
isLHS in interface FlowExpId
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||