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.