coins.ir.hir
クラス TestHir2
java.lang.Object
|
+--coins.ir.hir.HirVisitorModel2
|
+--coins.ir.hir.TestHir2
- すべての実装インタフェース:
- HirVisitor
- public class TestHir2
- extends HirVisitorModel2
Example of using HirVisitorModel2.
Do primary optimization for HIR before flow analysis.
| クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
hir
HIR hir
sym
Sym sym
TestHir2
public TestHir2(HirRoot pHirRoot)
atExp
public void atExp(Exp p)
- Reorder commutative operators that can be exchanged and
evaluate the expression if possible.
- 定義:
- インタフェース
HirVisitor 内の atExp - オーバーライド:
- クラス
HirVisitorModel2 内の atExp
- パラメータ:
p - Expression to be transformed.
atProgram
public void atProgram(Program p)
- 定義:
- インタフェース
HirVisitor 内の atProgram - オーバーライド:
- クラス
HirVisitorModel2 内の atProgram
atSubpDefinition
public void atSubpDefinition(SubpDefinition p)
- 定義:
- インタフェース
HirVisitor 内の atSubpDefinition - オーバーライド:
- クラス
HirVisitorModel2 内の atSubpDefinition
atBlockStmt
public void atBlockStmt(BlockStmt p)
- 定義:
- インタフェース
HirVisitor 内の atBlockStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atBlockStmt
atHirList
public void atHirList(HirList p)
- 定義:
- インタフェース
HirVisitor 内の atHirList - オーバーライド:
- クラス
HirVisitorModel2 内の atHirList
atIrList
public void atIrList(IrList p)
- 定義:
- インタフェース
HirVisitor 内の atIrList - オーバーライド:
- クラス
HirVisitorModel2 内の atIrList
atHirSeq
public void atHirSeq(HirSeq p)
- 定義:
- インタフェース
HirVisitor 内の atHirSeq - オーバーライド:
- クラス
HirVisitorModel2 内の atHirSeq
atInfNode
public void atInfNode(InfNode p)
- 定義:
- インタフェース
HirVisitor 内の atInfNode - オーバーライド:
- クラス
HirVisitorModel2 内の atInfNode
atInfStmt
public void atInfStmt(InfStmt p)
- 定義:
- インタフェース
HirVisitor 内の atInfStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atInfStmt
atVarNode
public void atVarNode(VarNode p)
- 定義:
- インタフェース
HirVisitor 内の atVarNode - オーバーライド:
- クラス
HirVisitorModel2 内の atVarNode
atElemNode
public void atElemNode(ElemNode p)
- 定義:
- インタフェース
HirVisitor 内の atElemNode - オーバーライド:
- クラス
HirVisitorModel2 内の atElemNode
atSubpNode
public void atSubpNode(SubpNode p)
- 定義:
- インタフェース
HirVisitor 内の atSubpNode - オーバーライド:
- クラス
HirVisitorModel2 内の atSubpNode
atTypeNode
public void atTypeNode(TypeNode p)
- 定義:
- インタフェース
HirVisitor 内の atTypeNode - オーバーライド:
- クラス
HirVisitorModel2 内の atTypeNode
atConstNode
public void atConstNode(ConstNode p)
- 定義:
- インタフェース
HirVisitor 内の atConstNode - オーバーライド:
- クラス
HirVisitorModel2 内の atConstNode
atLabelNode
public void atLabelNode(LabelNode p)
- 定義:
- インタフェース
HirVisitor 内の atLabelNode - オーバーライド:
- クラス
HirVisitorModel2 内の atLabelNode
atSymNode
public void atSymNode(SymNode p)
- 定義:
- インタフェース
HirVisitor 内の atSymNode - オーバーライド:
- クラス
HirVisitorModel2 内の atSymNode
atNullNode
public void atNullNode(NullNode p)
- 定義:
- インタフェース
HirVisitor 内の atNullNode - オーバーライド:
- クラス
HirVisitorModel2 内の atNullNode
atLabelDef
public void atLabelDef(LabelDef p)
- 定義:
- インタフェース
HirVisitor 内の atLabelDef - オーバーライド:
- クラス
HirVisitorModel2 内の atLabelDef
atSubscriptedExp
public void atSubscriptedExp(SubscriptedExp p)
- 定義:
- インタフェース
HirVisitor 内の atSubscriptedExp - オーバーライド:
- クラス
HirVisitorModel2 内の atSubscriptedExp
atQualifiedExp
public void atQualifiedExp(QualifiedExp p)
- 定義:
- インタフェース
HirVisitor 内の atQualifiedExp - オーバーライド:
- クラス
HirVisitorModel2 内の atQualifiedExp
atPointedExp
public void atPointedExp(PointedExp p)
- 定義:
- インタフェース
HirVisitor 内の atPointedExp - オーバーライド:
- クラス
HirVisitorModel2 内の atPointedExp
atFunctionExp
public void atFunctionExp(FunctionExp p)
- 定義:
- インタフェース
HirVisitor 内の atFunctionExp - オーバーライド:
- クラス
HirVisitorModel2 内の atFunctionExp
atAssignStmt
public void atAssignStmt(AssignStmt p)
- 定義:
- インタフェース
HirVisitor 内の atAssignStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atAssignStmt
atIfStmt
public void atIfStmt(IfStmt p)
- 定義:
- インタフェース
HirVisitor 内の atIfStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atIfStmt
atLoopStmt
public void atLoopStmt(LoopStmt p)
- 定義:
- インタフェース
HirVisitor 内の atLoopStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atLoopStmt
atWhileStmt
public void atWhileStmt(WhileStmt p)
- 定義:
- インタフェース
HirVisitor 内の atWhileStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atWhileStmt
atForStmt
public void atForStmt(ForStmt p)
- 定義:
- インタフェース
HirVisitor 内の atForStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atForStmt
atUntilStmt
public void atUntilStmt(UntilStmt p)
- 定義:
- インタフェース
HirVisitor 内の atUntilStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atUntilStmt
atRepeatStmt
public void atRepeatStmt(RepeatStmt p)
- 定義:
- インタフェース
HirVisitor 内の atRepeatStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atRepeatStmt
atLabeledStmt
public void atLabeledStmt(LabeledStmt p)
- 定義:
- インタフェース
HirVisitor 内の atLabeledStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atLabeledStmt
atReturnStmt
public void atReturnStmt(ReturnStmt p)
- 定義:
- インタフェース
HirVisitor 内の atReturnStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atReturnStmt
atJumpStmt
public void atJumpStmt(JumpStmt p)
- 定義:
- インタフェース
HirVisitor 内の atJumpStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atJumpStmt
atSwitchStmt
public void atSwitchStmt(SwitchStmt p)
- 定義:
- インタフェース
HirVisitor 内の atSwitchStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atSwitchStmt
atExpStmt
public void atExpStmt(ExpStmt p)
- 定義:
- インタフェース
HirVisitor 内の atExpStmt - オーバーライド:
- クラス
HirVisitorModel2 内の atExpStmt
atPhiExp
public void atPhiExp(PhiExp p)
- 定義:
- インタフェース
HirVisitor 内の atPhiExp - オーバーライド:
- クラス
HirVisitorModel2 内の atPhiExp
reorderOperands
Exp reorderOperands(Exp pExp)
- パラメータ:
pExp -
- 戻り値:
- reordered expression.
isCommutative
public boolean isCommutative(Exp pExp)
- Return true if the top operator is commutative
(exchangeable).
- パラメータ:
pExp - Expression to be checked.
- 戻り値:
- true if commutative.
isAssociative
public boolean isAssociative(Exp pExp)
- Return true if the top operator of the expression is
associative (either can be combined to left or to right).
- パラメータ:
pExp - Expression to be checked.
- 戻り値:
- true if the expression is associative.