|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcoins.ir.hir.HIR_Impl
coins.ir.hir.ExpImpl
coins.ir.hir.SymNodeImpl
Symbol node
| Field Summary | |
protected Sym |
fSym
|
| Fields inherited from class coins.ir.hir.HIR_Impl |
fAdditionalChild, fChildCount, fChildNode1, fChildNode2, fDbgLevel, fHirAnnex, fOperator, fParentNode, fType, hirRoot, inversionTable, machineParam, sourceLanguage |
| Fields inherited from interface coins.ir.hir.HIR |
OP_CODE_NAME, OP_CODE_NAME_DENSE |
| Fields inherited from interface coins.ir.IR |
OP_INF, OP_LIST, OP_PROG, OP_SUBP_DEF |
| Constructor Summary | |
SymNodeImpl(HirRoot pHirRoot)
|
|
SymNodeImpl(HirRoot pHirRoot,
Sym pSym)
|
|
| Method Summary | |
void |
accept(HirVisitor pVisitor)
accept Acceptor used in HIR visitor. |
java.lang.Object |
clone()
clone Override Object.clone in HIR. |
java.lang.String |
getIrName()
getIrName Get operation name and node index to display node in compact form for flow analysis, debug, etc. |
Sym |
getSym()
getSym Get the symbol represented by "this" node if this is a node representing a symbol (simple variable, element/field name, subprogram, label, constant, etc.). |
Sym |
getSymNodeSym()
getSymNodeSym |
void |
setSymNodeSym(Sym pSym)
setSymNodSym Set pSym as the symbol of this node. |
java.lang.String |
toString()
toString Get text representation of this node without traversing children. |
java.lang.String |
toStringShort()
toStringShort Get text string of this node showing node name and index only. |
| Methods inherited from class coins.ir.hir.ExpImpl |
adjustTypesOfBinaryOperands, evaluate, evaluateAsDouble, evaluateAsFloat, evaluateAsInt, evaluateAsLong, findSubpType, fold, getActualParamList, getArrayExp, getConstSym, getElem, getElemSizeExp, getExp1, getExp2, getLabel, getPointedElem, getPointerExp, getQualifiedElem, getQualifierExp, getSubp, getSubpSpec, getSubscriptExp, getValueString, getVar, initiateArray, isEvaluable, isLValue |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface coins.ir.hir.Exp |
adjustTypesOfBinaryOperands, evaluate, evaluateAsDouble, evaluateAsFloat, evaluateAsInt, evaluateAsLong, findSubpType, fold, getActualParamList, getArrayExp, getConstSym, getElem, getElemSizeExp, getExp1, getExp2, getLabel, getPointedElem, getPointerExp, getQualifiedElem, getQualifierExp, getSubp, getSubpSpec, getSubscriptExp, getValueString, getVar, initiateArray, isEvaluable |
| Methods inherited from interface coins.ir.hir.HIR |
addrExp, asmStmt, checkLinkage, conditionalExp, contains, copyInfListFrom, cutParentLink, exp, expList, expRepeat, forStmt, getExpId, getFlowAnalSym, getIndentSpace, getInfString, getSourceNode, getSourceNode1, getSourceNode2, getSymOrExpId, getWork, hirNodeClone, hirSeq, hirSeq, indexedLoopStmt, indexedLoopStmt, infStmt, infStmt, intConstNode, irList, isEmpty, isStmt, isTree, nullNode, nullStmt, offsetConstNode, phiExp, repeatStmt, replaceSource, replaceSource1, replaceSource2, returnStmt, setChild1, setChild2, setChildren, setChildren, setDataStmt, setIndex, setIndexNumberToAllNodes, setParent, setType, setWork, subpDefinition, subpIterator, subscriptedExp, toStringDetail, toStringWithChildren, undecayExp, undecayExp, undecayExp, whileStmt |
| Methods inherited from interface coins.ir.IR |
addInf, getChild1, getChild2, getInf, getInfList, getParent, print, print, removeInf |
| Methods inherited from interface coins.ir.IR0 |
getChild, getChildCount, getIndex, getOperator, setChild |
| Methods inherited from interface coins.ir.hir.HIR0 |
assignStmt, blockStmt, callStmt, constNode, contentsExp, convExp, copyWithOperands, copyWithOperandsChangingLabels, decayExp, elemNode, exp, exp, expStmt, falseNode, finishHir, forStmt, functionExp, getChildNumber, getFlag, getFlagBox, getNextStmt, getStmtContainingThisNode, getType, hirClone, hirIterator, hirList, hirSeq, ifStmt, intConstNode, irList, isSameAs, jumpStmt, labelDef, labeledStmt, labelNode, pointedExp, print, program, qualifiedExp, repeatStmt, replaceThisNode, returnStmt, setFlag, setIndexNumberToAllNodes, sizeofExp, sizeofExp, subpDefinition, subpNode, subscriptedExp, switchStmt, symNode, trueNode, undecayExp, varNode, whileStmt |
| Field Detail |
protected Sym fSym
| Constructor Detail |
public SymNodeImpl(HirRoot pHirRoot)
public SymNodeImpl(HirRoot pHirRoot,
Sym pSym)
| Method Detail |
public Sym getSym()
IR
getSym in interface IRgetSym in class ExpImplpublic Sym getSymNodeSym()
SymNode
Get the symbol attached as its symbol attribute.
The correspondence between nodes and its symbol attribute is as follows:
SubpNode Subp
VarNode Var
ElemNode Elem
ConstNode Const
TypeNode Type
LabelDef Label
LabelNode Label
SymNode Program name if this node represents program symbol.
There may be other symbol when HIR is expanded.
getSymNodeSym in interface SymNodepublic void setSymNodeSym(Sym pSym)
SymNode
setSymNodeSym in interface SymNodepublic java.lang.String toString()
HIR
toString in interface HIRtoString in class HIR_Implpublic java.lang.String toStringShort()
HIR
toStringShort in interface HIRtoStringShort in class HIR_Implpublic java.lang.String getIrName()
HIR
getIrName in interface HIRgetIrName in class HIR_Impl
public java.lang.Object clone()
throws java.lang.CloneNotSupportedException
HIR_Impl
clone in class HIR_Impljava.lang.CloneNotSupportedExceptionpublic void accept(HirVisitor pVisitor)
HIR0
accept in interface HIR0accept in class ExpImpl
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||