coins.ir.hir
インタフェース Program

すべてのスーパーインタフェース:
java.lang.Cloneable, HIR, HIR0, IR, IR0
既知の実装クラスの一覧:
ProgramImpl

public interface Program
extends HIR

Program interface


フィールドの概要
 
インタフェース coins.ir.hir.HIR から継承したフィールド
OP_CODE_NAME, OP_CODE_NAME_DENSE
 
インタフェース coins.ir.IR から継承したフィールド
OP_INF, OP_LIST, OP_PROG, OP_SUBP_DEF
 
インタフェース coins.ir.hir.HIR0 から継承したフィールド
FLAG_C_PTR, FLAG_CONST_EXP, FLAG_INIT_BLOCK, FLAG_LOOP_WITH_CONDITIONAL_INIT, FLAG_NOCHANGE, FLAG_NONTERMINAL, OP_ADD, OP_ADD_ASSIGN, OP_ADDR, OP_AND, OP_AND_ASSIGN, OP_ARROW, OP_ASM, OP_ASSIGN, OP_BLOCK, OP_CALL, OP_CMP_EQ, OP_CMP_GE, OP_CMP_GT, OP_CMP_LE, OP_CMP_LT, OP_CMP_NE, OP_COMMA, OP_CONST, OP_CONTENTS, OP_CONV, OP_DECAY, OP_DIV, OP_DIV_ASSIGN, OP_ELEM, OP_ENCLOSE, OP_EQ_ZERO, OP_EXP_STMT, OP_EXPLIST, OP_EXPREPEAT, OP_FOR, OP_IF, OP_INDEX, OP_INDEXED_LOOP, OP_JUMP, OP_LABEL, OP_LABEL_DEF, OP_LABELED_STMT, OP_LG_AND, OP_LG_OR, OP_MOD, OP_MOD_ASSIGN, OP_MULT, OP_MULT_ASSIGN, OP_NEG, OP_NOT, OP_NULL, OP_OFFSET, OP_OR, OP_OR_ASSIGN, OP_PARAM, OP_PHI, OP_POST_DECR, OP_POST_INCR, OP_PRE_DECR, OP_PRE_INCR, OP_QUAL, OP_REPEAT, OP_RETURN, OP_SELECT, OP_SEQ, OP_SETDATA, OP_SHIFT_L_ASSIGN, OP_SHIFT_LL, OP_SHIFT_R, OP_SHIFT_R_ASSIGN, OP_SHIFT_RL, OP_SIZEOF, OP_STMT, OP_STMT_UPPER, OP_SUB, OP_SUB_ASSIGN, OP_SUBP, OP_SUBS, OP_SWITCH, OP_SYM, OP_TYPE, OP_UNDECAY, OP_UNTIL, OP_VAR, OP_WHILE, OP_XOR, OP_XOR_ASSIGN
 
メソッドの概要
 void addInitiationStmt(IR pStmt)
          addInitiationStmt Add the initiation statement pStmt that initiates global variables to the initiation part (BlockStmt) of this program.
 void addRegion(RegionType pRegionType)
          addRegion Add pRegionType to the end of region list of this program.
 void addSubpDefinition(SubpDefinition pSubpDefinition)
          addSubpDefinition Add the definition of a subprogram to the end of subprogram definition list of this program.
 IR getInitiationPart()
          getInitiationPart Get the initiation part that initiates global variables.
 IrList getRegionList()
          getRegionList Get the list of RegionType instances.
 IrList getSubpDefinitionList()
          getSubpDefinitionList Get subprogram definition list of this program.
 SymTable getSymTable()
           
 void setSymTable(SymTable pSymTable)
           
 
インタフェース coins.ir.hir.HIR から継承したメソッド
addrExp, asmStmt, checkLinkage, conditionalExp, contains, copyInfListFrom, cutParentLink, exp, expList, expRepeat, forStmt, getExpId, getFlowAnalSym, getIndentSpace, getInfString, getIrName, 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, toString, toStringDetail, toStringShort, toStringWithChildren, undecayExp, undecayExp, undecayExp, whileStmt
 
インタフェース coins.ir.IR から継承したメソッド
addInf, getChild1, getChild2, getInf, getInfList, getParent, getSym, print, print, removeInf
 
インタフェース coins.ir.IR0 から継承したメソッド
getChild, getChildCount, getIndex, getOperator, setChild
 
インタフェース coins.ir.hir.HIR0 から継承したメソッド
accept, 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
 

メソッドの詳細

getSymTable

public SymTable getSymTable()

setSymTable

public void setSymTable(SymTable pSymTable)

addSubpDefinition

public void addSubpDefinition(SubpDefinition pSubpDefinition)
addSubpDefinition Add the definition of a subprogram to the end of subprogram definition list of this program.

パラメータ:
pSubpDefinition - SubpDefinition node defining a subprogram.

getSubpDefinitionList

public IrList getSubpDefinitionList()
getSubpDefinitionList Get subprogram definition list of this program. Each SubpDefinition can be get and treated by methods in IrList.

戻り値:
SubpDefinition list of this program.

getRegionList

public IrList getRegionList()
getRegionList Get the list of RegionType instances. Each instance of RegionType can be get and treated by methods in IrList.

戻り値:
RegionType list of this program.

addRegion

public void addRegion(RegionType pRegionType)
addRegion Add pRegionType to the end of region list of this program. If pRegionType is already recorded in the list, then it is not added.

パラメータ:
pRegionType - RegionType to be recorded.

getInitiationPart

public IR getInitiationPart()
getInitiationPart Get the initiation part that initiates global variables.

戻り値:
BlockStmt containing initiation statements.

addInitiationStmt

public void addInitiationStmt(IR pStmt)
addInitiationStmt Add the initiation statement pStmt that initiates global variables to the initiation part (BlockStmt) of this program.