|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectharpoon.IR.Tree.Tree
harpoon.IR.Tree.Stm
harpoon.IR.Tree.JUMP
public class JUMP
JUMP
objects are statements which stand for unconditional
computed branches.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class harpoon.IR.Tree.Tree |
---|
Tree.CloneCallback |
Field Summary | |
---|---|
LabelList |
targets
A list of possible branch targets. |
Fields inherited from class harpoon.IR.Tree.Tree |
---|
arrayFactory, child |
Constructor Summary | |
---|---|
JUMP(TreeFactory tf,
HCodeElement source,
Exp exp,
LabelList targets)
Full constructor. |
|
JUMP(TreeFactory tf,
HCodeElement source,
Label target)
Abbreviated constructor for a non-computed branch. |
Method Summary | |
---|---|
void |
accept(TreeVisitor v)
Accept a visitor |
Stm |
build(TreeFactory tf,
ExpList kids)
|
Exp |
getExp()
Returns an expression giving the address to jump to. |
int |
kind()
Return an integer enumeration of the kind of this Tree . |
Tree |
rename(TreeFactory tf,
TempMap tm,
Tree.CloneCallback cb)
Rename while cloning a subtree. |
void |
setExp(Exp exp)
Set the expression giving the address to jump to. |
String |
toString()
|
Methods inherited from class harpoon.IR.Tree.Stm |
---|
build, isNop, linearize, toStm |
Methods inherited from class harpoon.IR.Tree.Tree |
---|
clone, clone, getChild, getFactory, getFirstChild, getID, getLineNumber, getParent, getSibling, getSourceFile, hashCode, kids, rename, replace, setChild, unlink |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public final LabelList targets
Constructor Detail |
---|
public JUMP(TreeFactory tf, HCodeElement source, Exp exp, LabelList targets)
public JUMP(TreeFactory tf, HCodeElement source, Label target)
Method Detail |
---|
public Exp getExp()
public void setExp(Exp exp)
public int kind()
Tree
Tree
. The enumerated values are defined in
TreeKind
.
kind
in class Tree
public Stm build(TreeFactory tf, ExpList kids)
build
in class Stm
public void accept(TreeVisitor v)
accept
in class Tree
public Tree rename(TreeFactory tf, TempMap tm, Tree.CloneCallback cb)
Tree
TEMP
nodes
are renamed according to the supplied TempMap
.
Note that Temp
s not belonging to
this.getFactory().tempFactory()
are not affected.
The callback()
method of the supplied
CloneCallback
is invoked once on each subtree cloned,
starting from the leaves and working back to the root in a
post-order depth-first manner.
rename
in class Tree
public String toString()
toString
in class Object
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |