|
|||||||||||
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.LowTableSwitch
public final class LowTableSwitch
The 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 | |
---|---|
LowTableSwitch()
|
Method Summary | |
---|---|
static boolean |
conforms(Instruction i)
InstructionFormat identification method for LowTableSwitch. |
static boolean |
conforms(Operator o)
InstructionFormat identification method for LowTableSwitch. |
static Instruction |
create(Operator o,
RegisterOperand Index,
int numVarOps)
Create an instruction of the 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 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 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 |
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 |
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,
int numVarOps)
Mutate the argument instruction into an instruction of the 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 |
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 LowTableSwitch()
Method Detail |
---|
public static boolean conforms(Instruction i)
i
- an instruction
true
if the InstructionFormat of the argument
instruction is 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 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 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, int numVarOps)
o
- the instruction's operatorIndex
- the instruction's Index operandnumVarOps
- the number of variable length operands that
will be stored in the insruction.
public static Instruction mutate(Instruction i, Operator o, RegisterOperand Index, int numVarOps)
i
- the instruction to mutateo
- the instruction's operatorIndex
- the instruction's Index 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 |