|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jikesrvm.compilers.opt.ir.InstructionFormat
org.jikesrvm.compilers.opt.ir.Phi
public final class Phi
The Phi InstructionFormat class.
The header comment for Instruction
contains
an explanation of the role of InstructionFormats in the
opt compiler's IR.
Field Summary |
---|
Constructor Summary | |
---|---|
Phi()
|
Method Summary | |
---|---|
static boolean |
conforms(Instruction i)
InstructionFormat identification method for Phi. |
static boolean |
conforms(Operator o)
InstructionFormat identification method for Phi. |
static Instruction |
create(Operator o,
Operand Result,
int numVarOps)
Create an instruction of the Phi instruction format. |
static BasicBlockOperand |
getClearPred(Instruction i,
int k)
Get the k'th operand called Pred from the argument instruction clearing its instruction pointer. |
static Operand |
getClearResult(Instruction i)
Get the operand called Result from the argument instruction clearing its instruction pointer. |
static Operand |
getClearValue(Instruction i,
int k)
Get the k'th operand called Value from the argument instruction clearing its instruction pointer. |
static int |
getNumberOfPreds(Instruction i)
How many variable-length operands called Preds does the argument instruction have? |
static int |
getNumberOfValues(Instruction i)
How many variable-length operands called Values does the argument instruction have? |
static BasicBlockOperand |
getPred(Instruction i,
int k)
Get the k'th operand called Pred from the argument instruction. |
static Operand |
getResult(Instruction i)
Get the operand called Result from the argument instruction. |
static Operand |
getValue(Instruction i,
int k)
Get the k'th operand called Value from the argument instruction. |
static boolean |
hasPred(Instruction i,
int k)
Does the argument instruction have a non-null k'th operand named Pred? |
static boolean |
hasPreds(Instruction i)
Does the argument instruction have any operands named Pred? |
static boolean |
hasResult(Instruction i)
Does the argument instruction have a non-null operand named Result? |
static boolean |
hasValue(Instruction i,
int k)
Does the argument instruction have a non-null k'th operand named Value? |
static boolean |
hasValues(Instruction i)
Does the argument instruction have any operands named Value? |
static int |
indexOfPred(Instruction i,
int k)
Return the index of the k'th operand called Pred in the argument instruction. |
static int |
indexOfPreds(Instruction i)
Return the index of the first operand called Pred in the argument instruction. |
static int |
indexOfResult(Instruction i)
Return the index of the operand called Result in the argument instruction. |
static int |
indexOfValue(Instruction i,
int k)
Return the index of the k'th operand called Value in the argument instruction. |
static int |
indexOfValues(Instruction i)
Return the index of the first operand called Value in the argument instruction. |
static Instruction |
mutate(Instruction i,
Operator o,
Operand Result,
int numVarOps)
Mutate the argument instruction into an instruction of the Phi instruction format having the specified operator and operands. |
static void |
resizeNumberOfPreds(Instruction i,
int numVarOps)
Change the number of Preds that may be stored in the argument instruction to numVarOps. |
static void |
resizeNumberOfValues(Instruction i,
int numVarOps)
Change the number of Values that may be stored in the argument instruction to numVarOps. |
static void |
setPred(Instruction i,
int k,
BasicBlockOperand o)
Set the k'th operand called Pred in the argument instruction to the argument operand. |
static void |
setResult(Instruction i,
Operand Result)
Set the operand called Result in the argument instruction to the argument operand. |
static void |
setValue(Instruction i,
int k,
Operand o)
Set the k'th operand called Value in the argument instruction to the argument operand. |
Methods inherited from class org.jikesrvm.compilers.opt.ir.InstructionFormat |
---|
fail, fail |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Phi()
Method Detail |
---|
public static boolean conforms(Instruction i)
i
- an instruction
true
if the InstructionFormat of the argument
instruction is Phi or false
if it is not.public static boolean conforms(Operator o)
o
- an instruction
true
if the InstructionFormat of the argument
operator is Phi or false
if it is not.public static Operand getResult(Instruction i)
i
- the instruction to fetch the operand from
public static Operand getClearResult(Instruction i)
i
- the instruction to fetch the operand from
public static void setResult(Instruction i, Operand Result)
i
- the instruction in which to store the operandResult
- the operand to storepublic static int indexOfResult(Instruction i)
i
- the instruction to access.
public static boolean hasResult(Instruction i)
i
- the instruction to access.
true
if the instruction has an non-null
operand named Result or false
if it does not.public static Operand getValue(Instruction i, int k)
i
- the instruction to fetch the operand fromk
- the index of the operand
public static Operand getClearValue(Instruction i, int k)
i
- the instruction to fetch the operand fromk
- the index of the operand
public static void setValue(Instruction i, int k, Operand o)
i
- the instruction in which to store the operandk
- the index of the operando
- the operand to storepublic static int indexOfValue(Instruction i, int k)
i
- the instruction to access.k
- the index of the operand.
public static boolean hasValue(Instruction i, int k)
i
- the instruction to access.k
- the index of the operand.
true
if the instruction has an non-null
k'th operand named Value or false
if it does not.public static int indexOfValues(Instruction i)
i
- the instruction to access.
public static boolean hasValues(Instruction i)
i
- the instruction to access.
true
if the instruction has operands
named Value or false
if it does not.public static int getNumberOfValues(Instruction i)
i
- the instruction to access
public static void resizeNumberOfValues(Instruction i, int numVarOps)
i
- the instruction to accessnumVarOps
- the new number of variable operands called Values
that may be stored in the instructionpublic static BasicBlockOperand getPred(Instruction i, int k)
i
- the instruction to fetch the operand fromk
- the index of the operand
public static BasicBlockOperand getClearPred(Instruction i, int k)
i
- the instruction to fetch the operand fromk
- the index of the operand
public static void setPred(Instruction i, int k, BasicBlockOperand o)
i
- the instruction in which to store the operandk
- the index of the operando
- the operand to storepublic static int indexOfPred(Instruction i, int k)
i
- the instruction to access.k
- the index of the operand.
public static boolean hasPred(Instruction i, int k)
i
- the instruction to access.k
- the index of the operand.
true
if the instruction has an non-null
k'th operand named Pred or false
if it does not.public static int indexOfPreds(Instruction i)
i
- the instruction to access.
public static boolean hasPreds(Instruction i)
i
- the instruction to access.
true
if the instruction has operands
named Pred or false
if it does not.public static int getNumberOfPreds(Instruction i)
i
- the instruction to access
public static void resizeNumberOfPreds(Instruction i, int numVarOps)
i
- the instruction to accessnumVarOps
- the new number of variable operands called Preds
that may be stored in the instructionpublic static Instruction create(Operator o, Operand Result, int numVarOps)
o
- the instruction's operatorResult
- the instruction's Result operandnumVarOps
- the number of variable length operands that
will be stored in the insruction.
public static Instruction mutate(Instruction i, Operator o, Operand Result, int numVarOps)
i
- the instruction to mutateo
- the instruction's operatorResult
- the instruction's Result operandnumVarOps
- the number of variable length operands that
will be stored in the insruction.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |