public final class IfCmp2 extends InstructionFormat
Instruction
contains
an explanation of the role of InstructionFormats in the
opt compiler's IR.ALoad_format, ALoad_traits, ARCH_INDEPENDENT_INSTR_FORMAT_END_format, AStore_format, AStore_traits, Athrow_format, Athrow_traits, Attempt_format, Attempt_traits, BBend_format, BBend_traits, Binary_format, Binary_traits, BooleanCmp_format, BooleanCmp_traits, BoundsCheck_format, BoundsCheck_traits, CacheOp_format, CacheOp_traits, Call_format, Call_traits, CondMove_format, CondMove_traits, Empty_format, Empty_traits, GetField_format, GetField_traits, GetStatic_format, GetStatic_traits, Goto_format, Goto_traits, GuardedBinary_format, GuardedBinary_traits, GuardedSet_format, GuardedSet_traits, GuardedUnary_format, GuardedUnary_traits, IfCmp_format, IfCmp_traits, IfCmp2_format, IfCmp2_traits, InlineGuard_format, InlineGuard_traits, InstanceOf_format, InstanceOf_traits, InstrumentedCounter_format, InstrumentedCounter_traits, Label_format, Label_traits, Load_format, Load_traits, LookupSwitch_format, LookupSwitch_traits, LowTableSwitch_format, LowTableSwitch_traits, MIN_OPERAND_ARRAY_LENGTH, MonitorOp_format, MonitorOp_traits, Move_format, Move_traits, Multianewarray_format, Multianewarray_traits, New_format, New_traits, NewArray_format, NewArray_traits, Nullary_format, Nullary_traits, NullCheck_format, NullCheck_traits, OsrBarrier_format, OsrBarrier_traits, OsrPoint_format, OsrPoint_traits, Phi_format, Phi_traits, Prepare_format, Prepare_traits, Prologue_format, Prologue_traits, PutField_format, PutField_traits, PutStatic_format, PutStatic_traits, Return_format, Return_traits, Store_format, Store_traits, StoreCheck_format, StoreCheck_traits, TableSwitch_format, TableSwitch_traits, Trap_format, Trap_traits, TrapIf_format, TrapIf_traits, TypeCheck_format, TypeCheck_traits, Unary_format, Unary_traits, Unassigned_format, ZeroCheck_format, ZeroCheck_traits
Constructor and Description |
---|
IfCmp2() |
Modifier and Type | Method and Description |
---|---|
static boolean |
conforms(Instruction i)
InstructionFormat identification method for IfCmp2.
|
static boolean |
conforms(Operator o)
InstructionFormat identification method for IfCmp2.
|
static Instruction |
create(Operator o,
RegisterOperand GuardResult,
Operand Val1,
Operand Val2,
ConditionOperand Cond1,
BranchOperand Target1,
BranchProfileOperand BranchProfile1,
ConditionOperand Cond2,
BranchOperand Target2,
BranchProfileOperand BranchProfile2)
Create an instruction of the IfCmp2 instruction format.
|
static BranchProfileOperand |
getBranchProfile1(Instruction i)
Get the operand called BranchProfile1 from the
argument instruction.
|
static BranchProfileOperand |
getBranchProfile2(Instruction i)
Get the operand called BranchProfile2 from the
argument instruction.
|
static BranchProfileOperand |
getClearBranchProfile1(Instruction i)
Get the operand called BranchProfile1 from the argument
instruction clearing its instruction pointer.
|
static BranchProfileOperand |
getClearBranchProfile2(Instruction i)
Get the operand called BranchProfile2 from the argument
instruction clearing its instruction pointer.
|
static ConditionOperand |
getClearCond1(Instruction i)
Get the operand called Cond1 from the argument
instruction clearing its instruction pointer.
|
static ConditionOperand |
getClearCond2(Instruction i)
Get the operand called Cond2 from the argument
instruction clearing its instruction pointer.
|
static RegisterOperand |
getClearGuardResult(Instruction i)
Get the operand called GuardResult from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
getClearTarget1(Instruction i)
Get the operand called Target1 from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
getClearTarget2(Instruction i)
Get the operand called Target2 from the argument
instruction clearing its instruction pointer.
|
static Operand |
getClearVal1(Instruction i)
Get the operand called Val1 from the argument
instruction clearing its instruction pointer.
|
static Operand |
getClearVal2(Instruction i)
Get the operand called Val2 from the argument
instruction clearing its instruction pointer.
|
static ConditionOperand |
getCond1(Instruction i)
Get the operand called Cond1 from the
argument instruction.
|
static ConditionOperand |
getCond2(Instruction i)
Get the operand called Cond2 from the
argument instruction.
|
static RegisterOperand |
getGuardResult(Instruction i)
Get the operand called GuardResult from the
argument instruction.
|
static BranchOperand |
getTarget1(Instruction i)
Get the operand called Target1 from the
argument instruction.
|
static BranchOperand |
getTarget2(Instruction i)
Get the operand called Target2 from the
argument instruction.
|
static Operand |
getVal1(Instruction i)
Get the operand called Val1 from the
argument instruction.
|
static Operand |
getVal2(Instruction i)
Get the operand called Val2 from the
argument instruction.
|
static boolean |
hasBranchProfile1(Instruction i)
Does the argument instruction have a non-null
operand named BranchProfile1?
|
static boolean |
hasBranchProfile2(Instruction i)
Does the argument instruction have a non-null
operand named BranchProfile2?
|
static boolean |
hasCond1(Instruction i)
Does the argument instruction have a non-null
operand named Cond1?
|
static boolean |
hasCond2(Instruction i)
Does the argument instruction have a non-null
operand named Cond2?
|
static boolean |
hasGuardResult(Instruction i)
Does the argument instruction have a non-null
operand named GuardResult?
|
static boolean |
hasTarget1(Instruction i)
Does the argument instruction have a non-null
operand named Target1?
|
static boolean |
hasTarget2(Instruction i)
Does the argument instruction have a non-null
operand named Target2?
|
static boolean |
hasVal1(Instruction i)
Does the argument instruction have a non-null
operand named Val1?
|
static boolean |
hasVal2(Instruction i)
Does the argument instruction have a non-null
operand named Val2?
|
static int |
indexOfBranchProfile1(Instruction i)
Return the index of the operand called BranchProfile1
in the argument instruction.
|
static int |
indexOfBranchProfile2(Instruction i)
Return the index of the operand called BranchProfile2
in the argument instruction.
|
static int |
indexOfCond1(Instruction i)
Return the index of the operand called Cond1
in the argument instruction.
|
static int |
indexOfCond2(Instruction i)
Return the index of the operand called Cond2
in the argument instruction.
|
static int |
indexOfGuardResult(Instruction i)
Return the index of the operand called GuardResult
in the argument instruction.
|
static int |
indexOfTarget1(Instruction i)
Return the index of the operand called Target1
in the argument instruction.
|
static int |
indexOfTarget2(Instruction i)
Return the index of the operand called Target2
in the argument instruction.
|
static int |
indexOfVal1(Instruction i)
Return the index of the operand called Val1
in the argument instruction.
|
static int |
indexOfVal2(Instruction i)
Return the index of the operand called Val2
in the argument instruction.
|
static Instruction |
mutate(Instruction i,
Operator o,
RegisterOperand GuardResult,
Operand Val1,
Operand Val2,
ConditionOperand Cond1,
BranchOperand Target1,
BranchProfileOperand BranchProfile1,
ConditionOperand Cond2,
BranchOperand Target2,
BranchProfileOperand BranchProfile2)
Mutate the argument instruction into an instruction of the
IfCmp2 instruction format having the specified
operator and operands.
|
static void |
setBranchProfile1(Instruction i,
BranchProfileOperand BranchProfile1)
Set the operand called BranchProfile1 in the argument
instruction to the argument operand.
|
static void |
setBranchProfile2(Instruction i,
BranchProfileOperand BranchProfile2)
Set the operand called BranchProfile2 in the argument
instruction to the argument operand.
|
static void |
setCond1(Instruction i,
ConditionOperand Cond1)
Set the operand called Cond1 in the argument
instruction to the argument operand.
|
static void |
setCond2(Instruction i,
ConditionOperand Cond2)
Set the operand called Cond2 in the argument
instruction to the argument operand.
|
static void |
setGuardResult(Instruction i,
RegisterOperand GuardResult)
Set the operand called GuardResult in the argument
instruction to the argument operand.
|
static void |
setTarget1(Instruction i,
BranchOperand Target1)
Set the operand called Target1 in the argument
instruction to the argument operand.
|
static void |
setTarget2(Instruction i,
BranchOperand Target2)
Set the operand called Target2 in the argument
instruction to the argument operand.
|
static void |
setVal1(Instruction i,
Operand Val1)
Set the operand called Val1 in the argument
instruction to the argument operand.
|
static void |
setVal2(Instruction i,
Operand Val2)
Set the operand called Val2 in the argument
instruction to the argument operand.
|
fail, fail
public IfCmp2()
public static boolean conforms(Instruction i)
i
- an instructiontrue
if the InstructionFormat of the argument
instruction is IfCmp2 or false
if it is not.public static boolean conforms(Operator o)
o
- an instructiontrue
if the InstructionFormat of the argument
operator is IfCmp2 or false
if it is not.public static RegisterOperand getGuardResult(Instruction i)
i
- the instruction to fetch the operand frompublic static RegisterOperand getClearGuardResult(Instruction i)
i
- the instruction to fetch the operand frompublic static void setGuardResult(Instruction i, RegisterOperand GuardResult)
i
- the instruction in which to store the operandGuardResult
- the operand to storepublic static int indexOfGuardResult(Instruction i)
i
- the instruction to access.public static boolean hasGuardResult(Instruction i)
i
- the instruction to access.true
if the instruction has an non-null
operand named GuardResult or false
if it does not.public static Operand getVal1(Instruction i)
i
- the instruction to fetch the operand frompublic static Operand getClearVal1(Instruction i)
i
- the instruction to fetch the operand frompublic static void setVal1(Instruction i, Operand Val1)
i
- the instruction in which to store the operandVal1
- the operand to storepublic static int indexOfVal1(Instruction i)
i
- the instruction to access.public static boolean hasVal1(Instruction i)
i
- the instruction to access.true
if the instruction has an non-null
operand named Val1 or false
if it does not.public static Operand getVal2(Instruction i)
i
- the instruction to fetch the operand frompublic static Operand getClearVal2(Instruction i)
i
- the instruction to fetch the operand frompublic static void setVal2(Instruction i, Operand Val2)
i
- the instruction in which to store the operandVal2
- the operand to storepublic static int indexOfVal2(Instruction i)
i
- the instruction to access.public static boolean hasVal2(Instruction i)
i
- the instruction to access.true
if the instruction has an non-null
operand named Val2 or false
if it does not.public static ConditionOperand getCond1(Instruction i)
i
- the instruction to fetch the operand frompublic static ConditionOperand getClearCond1(Instruction i)
i
- the instruction to fetch the operand frompublic static void setCond1(Instruction i, ConditionOperand Cond1)
i
- the instruction in which to store the operandCond1
- the operand to storepublic static int indexOfCond1(Instruction i)
i
- the instruction to access.public static boolean hasCond1(Instruction i)
i
- the instruction to access.true
if the instruction has an non-null
operand named Cond1 or false
if it does not.public static BranchOperand getTarget1(Instruction i)
i
- the instruction to fetch the operand frompublic static BranchOperand getClearTarget1(Instruction i)
i
- the instruction to fetch the operand frompublic static void setTarget1(Instruction i, BranchOperand Target1)
i
- the instruction in which to store the operandTarget1
- the operand to storepublic static int indexOfTarget1(Instruction i)
i
- the instruction to access.public static boolean hasTarget1(Instruction i)
i
- the instruction to access.true
if the instruction has an non-null
operand named Target1 or false
if it does not.public static BranchProfileOperand getBranchProfile1(Instruction i)
i
- the instruction to fetch the operand frompublic static BranchProfileOperand getClearBranchProfile1(Instruction i)
i
- the instruction to fetch the operand frompublic static void setBranchProfile1(Instruction i, BranchProfileOperand BranchProfile1)
i
- the instruction in which to store the operandBranchProfile1
- the operand to storepublic static int indexOfBranchProfile1(Instruction i)
i
- the instruction to access.public static boolean hasBranchProfile1(Instruction i)
i
- the instruction to access.true
if the instruction has an non-null
operand named BranchProfile1 or false
if it does not.public static ConditionOperand getCond2(Instruction i)
i
- the instruction to fetch the operand frompublic static ConditionOperand getClearCond2(Instruction i)
i
- the instruction to fetch the operand frompublic static void setCond2(Instruction i, ConditionOperand Cond2)
i
- the instruction in which to store the operandCond2
- the operand to storepublic static int indexOfCond2(Instruction i)
i
- the instruction to access.public static boolean hasCond2(Instruction i)
i
- the instruction to access.true
if the instruction has an non-null
operand named Cond2 or false
if it does not.public static BranchOperand getTarget2(Instruction i)
i
- the instruction to fetch the operand frompublic static BranchOperand getClearTarget2(Instruction i)
i
- the instruction to fetch the operand frompublic static void setTarget2(Instruction i, BranchOperand Target2)
i
- the instruction in which to store the operandTarget2
- the operand to storepublic static int indexOfTarget2(Instruction i)
i
- the instruction to access.public static boolean hasTarget2(Instruction i)
i
- the instruction to access.true
if the instruction has an non-null
operand named Target2 or false
if it does not.public static BranchProfileOperand getBranchProfile2(Instruction i)
i
- the instruction to fetch the operand frompublic static BranchProfileOperand getClearBranchProfile2(Instruction i)
i
- the instruction to fetch the operand frompublic static void setBranchProfile2(Instruction i, BranchProfileOperand BranchProfile2)
i
- the instruction in which to store the operandBranchProfile2
- the operand to storepublic static int indexOfBranchProfile2(Instruction i)
i
- the instruction to access.public static boolean hasBranchProfile2(Instruction i)
i
- the instruction to access.true
if the instruction has an non-null
operand named BranchProfile2 or false
if it does not.public static Instruction create(Operator o, RegisterOperand GuardResult, Operand Val1, Operand Val2, ConditionOperand Cond1, BranchOperand Target1, BranchProfileOperand BranchProfile1, ConditionOperand Cond2, BranchOperand Target2, BranchProfileOperand BranchProfile2)
o
- the instruction's operatorGuardResult
- the instruction's GuardResult operandVal1
- the instruction's Val1 operandVal2
- the instruction's Val2 operandCond1
- the instruction's Cond1 operandTarget1
- the instruction's Target1 operandBranchProfile1
- the instruction's BranchProfile1 operandCond2
- the instruction's Cond2 operandTarget2
- the instruction's Target2 operandBranchProfile2
- the instruction's BranchProfile2 operandpublic static Instruction mutate(Instruction i, Operator o, RegisterOperand GuardResult, Operand Val1, Operand Val2, ConditionOperand Cond1, BranchOperand Target1, BranchProfileOperand BranchProfile1, ConditionOperand Cond2, BranchOperand Target2, BranchProfileOperand BranchProfile2)
i
- the instruction to mutateo
- the instruction's operatorGuardResult
- the instruction's GuardResult operandVal1
- the instruction's Val1 operandVal2
- the instruction's Val2 operandCond1
- the instruction's Cond1 operandTarget1
- the instruction's Target1 operandBranchProfile1
- the instruction's BranchProfile1 operandCond2
- the instruction's Cond2 operandTarget2
- the instruction's Target2 operandBranchProfile2
- the instruction's BranchProfile2 operand