|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jikesrvm.compilers.opt.ir.InstructionFormat org.jikesrvm.compilers.opt.ir.MIR_LowTableSwitch
public final class MIR_LowTableSwitch
The MIR_LowTableSwitch 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 | |
---|---|
MIR_LowTableSwitch()
|
Method Summary | |
---|---|
static boolean |
conforms(Instruction i)
InstructionFormat identification method for MIR_LowTableSwitch. |
static boolean |
conforms(Operator o)
InstructionFormat identification method for MIR_LowTableSwitch. |
static Instruction |
create(Operator o,
RegisterOperand Index,
RegisterOperand MethodStart,
int numVarOps)
Create an instruction of the MIR_LowTableSwitch instruction format. |
static BranchProfileOperand |
getBranchProfile(Instruction i,
int k)
Get the k'th operand called BranchProfile from the argument instruction. |
static BranchProfileOperand |
getClearBranchProfile(Instruction i,
int k)
Get the k'th operand called BranchProfile from the argument instruction clearing its instruction pointer. |
static RegisterOperand |
getClearIndex(Instruction i)
Get the operand called Index from the argument instruction clearing its instruction pointer. |
static RegisterOperand |
getClearMethodStart(Instruction i)
Get the operand called MethodStart from the argument instruction clearing its instruction pointer. |
static BranchOperand |
getClearTarget(Instruction i,
int k)
Get the k'th operand called Target from the argument instruction clearing its instruction pointer. |
static RegisterOperand |
getIndex(Instruction i)
Get the operand called Index from the argument instruction. |
static RegisterOperand |
getMethodStart(Instruction i)
Get the operand called MethodStart from the argument instruction. |
static int |
getNumberOfBranchProfiles(Instruction i)
How many variable-length operands called BranchProfiles does the argument instruction have? |
static int |
getNumberOfTargets(Instruction i)
How many variable-length operands called Targets does the argument instruction have? |
static BranchOperand |
getTarget(Instruction i,
int k)
Get the k'th operand called Target from the argument instruction. |
static boolean |
hasBranchProfile(Instruction i,
int k)
Does the argument instruction have a non-null k'th operand named BranchProfile? |
static boolean |
hasBranchProfiles(Instruction i)
Does the argument instruction have any operands named BranchProfile? |
static boolean |
hasIndex(Instruction i)
Does the argument instruction have a non-null operand named Index? |
static boolean |
hasMethodStart(Instruction i)
Does the argument instruction have a non-null operand named MethodStart? |
static boolean |
hasTarget(Instruction i,
int k)
Does the argument instruction have a non-null k'th operand named Target? |
static boolean |
hasTargets(Instruction i)
Does the argument instruction have any operands named Target? |
static int |
indexOfBranchProfile(Instruction i,
int k)
Return the index of the k'th operand called BranchProfile in the argument instruction. |
static int |
indexOfBranchProfiles(Instruction i)
Return the index of the first operand called BranchProfile in the argument instruction. |
static int |
indexOfIndex(Instruction i)
Return the index of the operand called Index in the argument instruction. |
static int |
indexOfMethodStart(Instruction i)
Return the index of the operand called MethodStart in the argument instruction. |
static int |
indexOfTarget(Instruction i,
int k)
Return the index of the k'th operand called Target in the argument instruction. |
static int |
indexOfTargets(Instruction i)
Return the index of the first operand called Target in the argument instruction. |
static Instruction |
mutate(Instruction i,
Operator o,
RegisterOperand Index,
RegisterOperand MethodStart,
int numVarOps)
Mutate the argument instruction into an instruction of the MIR_LowTableSwitch instruction format having the specified operator and operands. |
static void |
resizeNumberOfBranchProfiles(Instruction i,
int numVarOps)
Change the number of BranchProfiles that may be stored in the argument instruction to numVarOps. |
static void |
resizeNumberOfTargets(Instruction i,
int numVarOps)
Change the number of Targets that may be stored in the argument instruction to numVarOps. |
static void |
setBranchProfile(Instruction i,
int k,
BranchProfileOperand o)
Set the k'th operand called BranchProfile in the argument instruction to the argument operand. |
static void |
setIndex(Instruction i,
RegisterOperand Index)
Set the operand called Index in the argument instruction to the argument operand. |
static void |
setMethodStart(Instruction i,
RegisterOperand MethodStart)
Set the operand called MethodStart in the argument instruction to the argument operand. |
static void |
setTarget(Instruction i,
int k,
BranchOperand o)
Set the k'th operand called Target 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 MIR_LowTableSwitch()
Method Detail |
---|
public static boolean conforms(Instruction i)
i
- an instruction
true
if the InstructionFormat of the argument
instruction is MIR_LowTableSwitch or false
if it is not.public static boolean conforms(Operator o)
o
- an instruction
true
if the InstructionFormat of the argument
operator is MIR_LowTableSwitch or false
if it is not.public static RegisterOperand getIndex(Instruction i)
i
- the instruction to fetch the operand from
public static RegisterOperand getClearIndex(Instruction i)
i
- the instruction to fetch the operand from
public static void setIndex(Instruction i, RegisterOperand Index)
i
- the instruction in which to store the operandIndex
- the operand to storepublic static int indexOfIndex(Instruction i)
i
- the instruction to access.
public static boolean hasIndex(Instruction i)
i
- the instruction to access.
true
if the instruction has an non-null
operand named Index or false
if it does not.public static RegisterOperand getMethodStart(Instruction i)
i
- the instruction to fetch the operand from
public static RegisterOperand getClearMethodStart(Instruction i)
i
- the instruction to fetch the operand from
public static void setMethodStart(Instruction i, RegisterOperand MethodStart)
i
- the instruction in which to store the operandMethodStart
- the operand to storepublic static int indexOfMethodStart(Instruction i)
i
- the instruction to access.
public static boolean hasMethodStart(Instruction i)
i
- the instruction to access.
true
if the instruction has an non-null
operand named MethodStart or false
if it does not.public static BranchOperand getTarget(Instruction i, int k)
i
- the instruction to fetch the operand fromk
- the index of the operand
public static BranchOperand getClearTarget(Instruction i, int k)
i
- the instruction to fetch the operand fromk
- the index of the operand
public static void setTarget(Instruction i, int k, BranchOperand o)
i
- the instruction in which to store the operandk
- the index of the operando
- the operand to storepublic static int indexOfTarget(Instruction i, int k)
i
- the instruction to access.k
- the index of the operand.
public static boolean hasTarget(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 Target or false
if it does not.public static int indexOfTargets(Instruction i)
i
- the instruction to access.
public static boolean hasTargets(Instruction i)
i
- the instruction to access.
true
if the instruction has operands
named Target or false
if it does not.public static int getNumberOfTargets(Instruction i)
i
- the instruction to access
public static void resizeNumberOfTargets(Instruction i, int numVarOps)
i
- the instruction to accessnumVarOps
- the new number of variable operands called Targets
that may be stored in the instructionpublic static BranchProfileOperand getBranchProfile(Instruction i, int k)
i
- the instruction to fetch the operand fromk
- the index of the operand
public static BranchProfileOperand getClearBranchProfile(Instruction i, int k)
i
- the instruction to fetch the operand fromk
- the index of the operand
public static void setBranchProfile(Instruction i, int k, BranchProfileOperand o)
i
- the instruction in which to store the operandk
- the index of the operando
- the operand to storepublic static int indexOfBranchProfile(Instruction i, int k)
i
- the instruction to access.k
- the index of the operand.
public static boolean hasBranchProfile(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 BranchProfile or false
if it does not.public static int indexOfBranchProfiles(Instruction i)
i
- the instruction to access.
public static boolean hasBranchProfiles(Instruction i)
i
- the instruction to access.
true
if the instruction has operands
named BranchProfile or false
if it does not.public static int getNumberOfBranchProfiles(Instruction i)
i
- the instruction to access
public static void resizeNumberOfBranchProfiles(Instruction i, int numVarOps)
i
- the instruction to accessnumVarOps
- the new number of variable operands called BranchProfiles
that may be stored in the instructionpublic static Instruction create(Operator o, RegisterOperand Index, RegisterOperand MethodStart, int numVarOps)
o
- the instruction's operatorIndex
- the instruction's Index operandMethodStart
- the instruction's MethodStart operandnumVarOps
- the number of variable length operands that
will be stored in the insruction.
public static Instruction mutate(Instruction i, Operator o, RegisterOperand Index, RegisterOperand MethodStart, int numVarOps)
i
- the instruction to mutateo
- the instruction's operatorIndex
- the instruction's Index operandMethodStart
- the instruction's MethodStart 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 |