|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--coins.backend.lir.LirNode
New LIR node's basic structure
入れ子クラスの概要 | |
static class |
LirNode.Scanner
Scanner for LIR expression tree. |
フィールドの概要 | |
int |
id
Key to bind related information |
int |
opCode
Instruction Code |
ImList |
opt
Optional arguments list (op opr1 opr2 &hogehoge ...) |
int |
type
Type of this node's result |
コンストラクタの概要 | |
(パッケージプライベート) |
LirNode(int id,
int opCode,
int type,
ImList opt)
Create LIR node |
メソッドの概要 | |
abstract void |
accept(LirVisitor v)
Accept visitor v |
boolean |
equals(java.lang.Object x)
Return true if this object equals to x |
Label[] |
getTargets()
Return jump target labels. |
int |
hashCode()
Return hash value of LirNode. |
boolean |
isBranch()
Return true if node is a branch instruction. |
boolean |
isPhysicalRegister()
Return true if node is a physical register. |
boolean |
isRegisterOperand()
Is register operand? |
LirNode |
kid(int n)
Return nth operand; Subclass responsibility |
abstract LirNode |
makeCopy(LirFactory fac)
Return a deep copy of this node |
LirNode |
makeShallowCopy(LirFactory fac)
Return a shallow copy of this node. |
int |
nKids()
Return number of operands |
int |
nSrcs()
推奨されていません。 use nKids instead. |
void |
pickUpDefs(PickUpVariable receiver)
Pick up definitions of register variables in this L-expression. |
void |
pickUpUses(PickUpVariable receiver)
Pick up uses of register variables in this L-expression. |
void |
replaceLabel(Label x,
Label y,
LirFactory fac)
Replace target label y for x. |
abstract LirNode |
replaceOptions(LirFactory fac,
ImList newOpt)
Return a copy of this node without options. |
void |
setKid(int n,
LirNode kid)
Set nth operand; Subclass responsibility |
void |
setSrc(int n,
LirNode src)
推奨されていません。 use setKid instead. |
LirNode |
src(int n)
推奨されていません。 use kid instead. |
java.lang.Object |
toSexp()
Convert to external LIR format. |
java.lang.String |
toString()
Visualize |
java.lang.String |
toStringExp()
推奨されていません。 |
クラス java.lang.Object から継承したメソッド |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
フィールドの詳細 |
public final int id
public final int opCode
public final int type
public final ImList opt
コンストラクタの詳細 |
LirNode(int id, int opCode, int type, ImList opt)
メソッドの詳細 |
public abstract LirNode makeCopy(LirFactory fac)
public LirNode makeShallowCopy(LirFactory fac)
public abstract LirNode replaceOptions(LirFactory fac, ImList newOpt)
public int nSrcs()
public int nKids()
public LirNode src(int n)
public LirNode kid(int n)
public void setSrc(int n, LirNode src)
public void setKid(int n, LirNode kid)
public Label[] getTargets()
public void replaceLabel(Label x, Label y, LirFactory fac)
public boolean isBranch()
public boolean isPhysicalRegister()
public boolean isRegisterOperand()
public final void pickUpUses(PickUpVariable receiver)
receiver
.
public final void pickUpDefs(PickUpVariable receiver)
receiver
.
public java.lang.Object toSexp()
public java.lang.String toString()
java.lang.Object
内の toString
public int hashCode()
java.lang.Object
内の hashCode
public boolean equals(java.lang.Object x)
java.lang.Object
内の equals
public abstract void accept(LirVisitor v)
public java.lang.String toStringExp()
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |