|
|||||||||
| 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.DATUM
public class DATUM
DATUM objects are statements which write a value to memory
at the time when a program is loaded. The location written is
calculated using this formula:
location = base + offset
where
base = location of nearest LABEL, l, which precedes this DATUM
offset = the total size of all instructions between l and this DATUM
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class harpoon.IR.Tree.Tree |
|---|
Tree.CloneCallback |
| Field Summary | |
|---|---|
boolean |
initialized
If false, the memory is not initialized; instead it is reserved with an unspecified value. |
| Fields inherited from class harpoon.IR.Tree.Tree |
|---|
arrayFactory, child |
| Constructor Summary | |
|---|---|
DATUM(TreeFactory tf,
HCodeElement source,
Exp data)
Class constructor. |
|
DATUM(TreeFactory tf,
HCodeElement source,
int type)
Class constructor. |
|
DATUM(TreeFactory tf,
HCodeElement source,
int bitwidth,
boolean signed)
Class constructor. |
|
| Method Summary | |
|---|---|
void |
accept(TreeVisitor v)
Accept a visitor |
Stm |
build(TreeFactory tf,
ExpList kids)
|
Exp |
getData()
Returns the expression to write to memory. |
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 |
setData(Exp data)
Sets the expression to write to memory. |
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 |
| Methods inherited from interface harpoon.ClassFile.HDataElement |
|---|
getID, getSourceFile |
| Field Detail |
|---|
public final boolean initialized
| Constructor Detail |
|---|
public DATUM(TreeFactory tf,
HCodeElement source,
Exp data)
data must be an instance of either
harpoon.IR.Tree.CONST or
harpoon.IR.Tree.NAME. Passing null for
the parameter data reserves a word of memory at the
location of this DATUM without assigning it a value.
public DATUM(TreeFactory tf,
HCodeElement source,
int type)
DATUM
of the size of the specified type without assigning it a value.
public DATUM(TreeFactory tf,
HCodeElement source,
int bitwidth,
boolean signed)
DATUM
of the specified small without assigning it a value.
| Method Detail |
|---|
public Exp getData()
public void setData(Exp data)
public int kind()
TreeTree. The enumerated values are defined in
TreeKind.
kind in class Tree
public Stm build(TreeFactory tf,
ExpList kids)
build in class Stmpublic void accept(TreeVisitor v)
accept in class Tree
public Tree rename(TreeFactory tf,
TempMap tm,
Tree.CloneCallback cb)
TreeTEMP nodes
are renamed according to the supplied TempMap.
Note that Temps 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 Treepublic String toString()
toString in class Object
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||