Package | Description |
---|---|
org.jikesrvm.compilers.opt.bc2ir |
Provides classes that implement the transformation from bytecode to the
high-level intermediate representation (HIR).
|
org.jikesrvm.compilers.opt.controlflow | |
org.jikesrvm.compilers.opt.ir | |
org.jikesrvm.compilers.opt.ir.ia32 | |
org.jikesrvm.compilers.opt.ir.operand | |
org.jikesrvm.compilers.opt.ir.ppc | |
org.jikesrvm.compilers.opt.lir2mir.ia32 |
Provides classes that implement the IA32-specific parts
of the transition from low-level IR to machine-specific IR.
|
Modifier and Type | Method and Description |
---|---|
private BranchOperand |
BC2IR.generateTarget(int offset) |
Modifier and Type | Method and Description |
---|---|
private static BranchOperand |
MIRBranchOptimizations.MIR_Branch_getTarget(Instruction x) |
private static BranchOperand |
MIRBranchOptimizations.MIR_CondBranch2_getTarget1(Instruction x) |
private static BranchOperand |
MIRBranchOptimizations.MIR_CondBranch2_getTarget2(Instruction x) |
Modifier and Type | Method and Description |
---|---|
private static void |
MIRBranchOptimizations.MIR_Branch_setTarget(Instruction x,
BranchOperand y) |
private static void |
MIRBranchOptimizations.MIR_CondBranch_setTarget(Instruction x,
BranchOperand y) |
private static void |
MIRBranchOptimizations.MIR_CondBranch2_setTarget1(Instruction x,
BranchOperand y) |
private static void |
MIRBranchOptimizations.MIR_CondBranch2_setTarget2(Instruction x,
BranchOperand y) |
Modifier and Type | Method and Description |
---|---|
static BranchOperand |
TableSwitch.getClearDefault(Instruction i)
Get the operand called Default from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
LookupSwitch.getClearDefault(Instruction i)
Get the operand called Default from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
Goto.getClearTarget(Instruction i)
Get the operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
InlineGuard.getClearTarget(Instruction i)
Get the operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
IfCmp.getClearTarget(Instruction i)
Get the operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
LowTableSwitch.getClearTarget(Instruction i,
int k)
Get the k'th operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
TableSwitch.getClearTarget(Instruction i,
int k)
Get the k'th operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
LookupSwitch.getClearTarget(Instruction i,
int k)
Get the k'th operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
IfCmp2.getClearTarget1(Instruction i)
Get the operand called Target1 from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
IfCmp2.getClearTarget2(Instruction i)
Get the operand called Target2 from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
TableSwitch.getDefault(Instruction i)
Get the operand called Default from the
argument instruction.
|
static BranchOperand |
LookupSwitch.getDefault(Instruction i)
Get the operand called Default from the
argument instruction.
|
static BranchOperand |
Goto.getTarget(Instruction i)
Get the operand called Target from the
argument instruction.
|
static BranchOperand |
InlineGuard.getTarget(Instruction i)
Get the operand called Target from the
argument instruction.
|
static BranchOperand |
IfCmp.getTarget(Instruction i)
Get the operand called Target from the
argument instruction.
|
static BranchOperand |
LowTableSwitch.getTarget(Instruction i,
int k)
Get the k'th operand called Target from the
argument instruction.
|
static BranchOperand |
TableSwitch.getTarget(Instruction i,
int k)
Get the k'th operand called Target from the
argument instruction.
|
static BranchOperand |
LookupSwitch.getTarget(Instruction i,
int k)
Get the k'th operand called Target from the
argument instruction.
|
static BranchOperand |
IfCmp2.getTarget1(Instruction i)
Get the operand called Target1 from the
argument instruction.
|
static BranchOperand |
IfCmp2.getTarget2(Instruction i)
Get the operand called Target2 from the
argument instruction.
|
BranchOperand |
BasicBlock.makeJumpTarget()
Make a branch operand with the label instruction
of this block.
|
Modifier and Type | Method and Description |
---|---|
static Instruction |
Goto.create(Operator o,
BranchOperand Target)
Create an instruction of the Goto instruction format.
|
static Instruction |
InlineGuard.create(Operator o,
Operand Value,
Operand Guard,
Operand Goal,
BranchOperand Target,
BranchProfileOperand BranchProfile)
Create an instruction of the InlineGuard instruction format.
|
static Instruction |
LookupSwitch.create(Operator o,
Operand Value,
Operand Unknown1,
Operand Unknown2,
BranchOperand Default,
BranchProfileOperand DefaultBranchProfile,
int numVarOps)
Create an instruction of the LookupSwitch instruction format.
|
static Instruction |
TableSwitch.create(Operator o,
Operand Value,
Operand Unknown1,
Operand Unknown2,
IntConstantOperand Low,
IntConstantOperand High,
BranchOperand Default,
BranchProfileOperand DefaultBranchProfile,
int numVarOps)
Create an instruction of the TableSwitch instruction format.
|
static Instruction |
IfCmp.create(Operator o,
RegisterOperand GuardResult,
Operand Val1,
Operand Val2,
ConditionOperand Cond,
BranchOperand Target,
BranchProfileOperand BranchProfile)
Create an instruction of the IfCmp instruction format.
|
static Instruction |
IfCmp2.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 Instruction |
Goto.mutate(Instruction i,
Operator o,
BranchOperand Target)
Mutate the argument instruction into an instruction of the
Goto instruction format having the specified
operator and operands.
|
static Instruction |
InlineGuard.mutate(Instruction i,
Operator o,
Operand Value,
Operand Guard,
Operand Goal,
BranchOperand Target,
BranchProfileOperand BranchProfile)
Mutate the argument instruction into an instruction of the
InlineGuard instruction format having the specified
operator and operands.
|
static Instruction |
LookupSwitch.mutate(Instruction i,
Operator o,
Operand Value,
Operand Unknown1,
Operand Unknown2,
BranchOperand Default,
BranchProfileOperand DefaultBranchProfile,
int numVarOps)
Mutate the argument instruction into an instruction of the
LookupSwitch instruction format having the specified
operator and operands.
|
static Instruction |
TableSwitch.mutate(Instruction i,
Operator o,
Operand Value,
Operand Unknown1,
Operand Unknown2,
IntConstantOperand Low,
IntConstantOperand High,
BranchOperand Default,
BranchProfileOperand DefaultBranchProfile,
int numVarOps)
Mutate the argument instruction into an instruction of the
TableSwitch instruction format having the specified
operator and operands.
|
static Instruction |
IfCmp.mutate(Instruction i,
Operator o,
RegisterOperand GuardResult,
Operand Val1,
Operand Val2,
ConditionOperand Cond,
BranchOperand Target,
BranchProfileOperand BranchProfile)
Mutate the argument instruction into an instruction of the
IfCmp instruction format having the specified
operator and operands.
|
static Instruction |
IfCmp2.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 |
TableSwitch.setDefault(Instruction i,
BranchOperand Default)
Set the operand called Default in the argument
instruction to the argument operand.
|
static void |
LookupSwitch.setDefault(Instruction i,
BranchOperand Default)
Set the operand called Default in the argument
instruction to the argument operand.
|
static void |
Goto.setTarget(Instruction i,
BranchOperand Target)
Set the operand called Target in the argument
instruction to the argument operand.
|
static void |
InlineGuard.setTarget(Instruction i,
BranchOperand Target)
Set the operand called Target in the argument
instruction to the argument operand.
|
static void |
IfCmp.setTarget(Instruction i,
BranchOperand Target)
Set the operand called Target in the argument
instruction to the argument operand.
|
static void |
LowTableSwitch.setTarget(Instruction i,
int k,
BranchOperand o)
Set the k'th operand called Target in the argument
instruction to the argument operand.
|
static void |
TableSwitch.setTarget(Instruction i,
int k,
BranchOperand o)
Set the k'th operand called Target in the argument
instruction to the argument operand.
|
static void |
LookupSwitch.setTarget(Instruction i,
int k,
BranchOperand o)
Set the k'th operand called Target in the argument
instruction to the argument operand.
|
static void |
IfCmp2.setTarget1(Instruction i,
BranchOperand Target1)
Set the operand called Target1 in the argument
instruction to the argument operand.
|
static void |
IfCmp2.setTarget2(Instruction i,
BranchOperand Target2)
Set the operand called Target2 in the argument
instruction to the argument operand.
|
Modifier and Type | Method and Description |
---|---|
static BranchOperand |
MIR_Branch.getClearTarget(Instruction i)
Get the operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_CondBranch.getClearTarget(Instruction i)
Get the operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_LowTableSwitch.getClearTarget(Instruction i,
int k)
Get the k'th operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_CondBranch2.getClearTarget1(Instruction i)
Get the operand called Target1 from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_CondBranch2.getClearTarget2(Instruction i)
Get the operand called Target2 from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_Branch.getTarget(Instruction i)
Get the operand called Target from the
argument instruction.
|
static BranchOperand |
MIR_CondBranch.getTarget(Instruction i)
Get the operand called Target from the
argument instruction.
|
static BranchOperand |
MIR_LowTableSwitch.getTarget(Instruction i,
int k)
Get the k'th operand called Target from the
argument instruction.
|
static BranchOperand |
MIR_CondBranch2.getTarget1(Instruction i)
Get the operand called Target1 from the
argument instruction.
|
static BranchOperand |
MIR_CondBranch2.getTarget2(Instruction i)
Get the operand called Target2 from the
argument instruction.
|
Modifier and Type | Method and Description |
---|---|
static Instruction |
MIR_Branch.create(Operator o,
BranchOperand Target)
Create an instruction of the MIR_Branch instruction format.
|
static Instruction |
MIR_CondBranch.create(Operator o,
IA32ConditionOperand Cond,
BranchOperand Target,
BranchProfileOperand BranchProfile)
Create an instruction of the MIR_CondBranch instruction format.
|
static Instruction |
MIR_CondBranch2.create(Operator o,
IA32ConditionOperand Cond1,
BranchOperand Target1,
BranchProfileOperand BranchProfile1,
IA32ConditionOperand Cond2,
BranchOperand Target2,
BranchProfileOperand BranchProfile2)
Create an instruction of the MIR_CondBranch2 instruction format.
|
static Instruction |
MIR_CondBranch2.create(Operator o,
IA32ConditionOperand Cond1,
BranchOperand Target1,
BranchProfileOperand BranchProfile1,
IA32ConditionOperand Cond2,
BranchProfileOperand BranchProfile2)
Create an instruction of the MIR_CondBranch2 instruction format.
|
static Instruction |
MIR_CondBranch2.create(Operator o,
IA32ConditionOperand Cond1,
BranchProfileOperand BranchProfile1,
IA32ConditionOperand Cond2,
BranchOperand Target2,
BranchProfileOperand BranchProfile2)
Create an instruction of the MIR_CondBranch2 instruction format.
|
static Instruction |
MIR_Branch.mutate(Instruction i,
Operator o,
BranchOperand Target)
Mutate the argument instruction into an instruction of the
MIR_Branch instruction format having the specified
operator and operands.
|
static Instruction |
MIR_CondBranch.mutate(Instruction i,
Operator o,
IA32ConditionOperand Cond,
BranchOperand Target,
BranchProfileOperand BranchProfile)
Mutate the argument instruction into an instruction of the
MIR_CondBranch instruction format having the specified
operator and operands.
|
static Instruction |
MIR_CondBranch2.mutate(Instruction i,
Operator o,
IA32ConditionOperand Cond1,
BranchOperand Target1,
BranchProfileOperand BranchProfile1,
IA32ConditionOperand Cond2,
BranchOperand Target2,
BranchProfileOperand BranchProfile2)
Mutate the argument instruction into an instruction of the
MIR_CondBranch2 instruction format having the specified
operator and operands.
|
static Instruction |
MIR_CondBranch2.mutate(Instruction i,
Operator o,
IA32ConditionOperand Cond1,
BranchOperand Target1,
BranchProfileOperand BranchProfile1,
IA32ConditionOperand Cond2,
BranchProfileOperand BranchProfile2)
Mutate the argument instruction into an instruction of the
MIR_CondBranch2 instruction format having the specified
operator and operands.
|
static Instruction |
MIR_CondBranch2.mutate(Instruction i,
Operator o,
IA32ConditionOperand Cond1,
BranchProfileOperand BranchProfile1,
IA32ConditionOperand Cond2,
BranchOperand Target2,
BranchProfileOperand BranchProfile2)
Mutate the argument instruction into an instruction of the
MIR_CondBranch2 instruction format having the specified
operator and operands.
|
static void |
MIR_Branch.setTarget(Instruction i,
BranchOperand Target)
Set the operand called Target in the argument
instruction to the argument operand.
|
static void |
MIR_CondBranch.setTarget(Instruction i,
BranchOperand Target)
Set the operand called Target in the argument
instruction to the argument operand.
|
static void |
MIR_LowTableSwitch.setTarget(Instruction i,
int k,
BranchOperand o)
Set the k'th operand called Target in the argument
instruction to the argument operand.
|
static void |
MIR_CondBranch2.setTarget1(Instruction i,
BranchOperand Target1)
Set the operand called Target1 in the argument
instruction to the argument operand.
|
static void |
MIR_CondBranch2.setTarget2(Instruction i,
BranchOperand Target2)
Set the operand called Target2 in the argument
instruction to the argument operand.
|
Modifier and Type | Method and Description |
---|---|
BranchOperand |
Operand.asBranch()
Cast to an
BranchOperand . |
Modifier and Type | Method and Description |
---|---|
static BranchOperand |
MIR_CondCall.getClearTarget(Instruction i)
Get the operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_DataLabel.getClearTarget(Instruction i)
Get the operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_Branch.getClearTarget(Instruction i)
Get the operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_Call.getClearTarget(Instruction i)
Get the operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_CondBranch.getClearTarget(Instruction i)
Get the operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_LowTableSwitch.getClearTarget(Instruction i,
int k)
Get the k'th operand called Target from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_CondBranch2.getClearTarget1(Instruction i)
Get the operand called Target1 from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_CondBranch2.getClearTarget2(Instruction i)
Get the operand called Target2 from the argument
instruction clearing its instruction pointer.
|
static BranchOperand |
MIR_CondCall.getTarget(Instruction i)
Get the operand called Target from the
argument instruction.
|
static BranchOperand |
MIR_DataLabel.getTarget(Instruction i)
Get the operand called Target from the
argument instruction.
|
static BranchOperand |
MIR_Branch.getTarget(Instruction i)
Get the operand called Target from the
argument instruction.
|
static BranchOperand |
MIR_Call.getTarget(Instruction i)
Get the operand called Target from the
argument instruction.
|
static BranchOperand |
MIR_CondBranch.getTarget(Instruction i)
Get the operand called Target from the
argument instruction.
|
static BranchOperand |
MIR_LowTableSwitch.getTarget(Instruction i,
int k)
Get the k'th operand called Target from the
argument instruction.
|
static BranchOperand |
MIR_CondBranch2.getTarget1(Instruction i)
Get the operand called Target1 from the
argument instruction.
|
static BranchOperand |
MIR_CondBranch2.getTarget2(Instruction i)
Get the operand called Target2 from the
argument instruction.
|
Modifier and Type | Method and Description |
---|---|
static Instruction |
MIR_DataLabel.create(Operator o,
BranchOperand Target)
Create an instruction of the MIR_DataLabel instruction format.
|
static Instruction |
MIR_Branch.create(Operator o,
BranchOperand Target)
Create an instruction of the MIR_Branch instruction format.
|
static Instruction |
MIR_CondBranch.create(Operator o,
RegisterOperand Value,
org.jikesrvm.compilers.opt.ir.operand.ppc.PowerPCConditionOperand Cond,
BranchOperand Target,
BranchProfileOperand BranchProfile)
Create an instruction of the MIR_CondBranch instruction format.
|
static Instruction |
MIR_CondBranch2.create(Operator o,
RegisterOperand Value,
org.jikesrvm.compilers.opt.ir.operand.ppc.PowerPCConditionOperand Cond1,
BranchOperand Target1,
BranchProfileOperand BranchProfile1,
org.jikesrvm.compilers.opt.ir.operand.ppc.PowerPCConditionOperand Cond2,
BranchOperand Target2,
BranchProfileOperand BranchProfile2)
Create an instruction of the MIR_CondBranch2 instruction format.
|
static Instruction |
MIR_Call.create(Operator o,
RegisterOperand Result,
RegisterOperand Result2,
BranchOperand Target,
int numVarOps)
Create an instruction of the MIR_Call instruction format.
|
static Instruction |
MIR_Call.create(Operator o,
RegisterOperand Result,
RegisterOperand Result2,
BranchOperand Target,
MethodOperand Method,
int numVarOps)
Create an instruction of the MIR_Call instruction format.
|
static Instruction |
MIR_CondCall.create(Operator o,
RegisterOperand Result,
RegisterOperand Result2,
RegisterOperand Value,
org.jikesrvm.compilers.opt.ir.operand.ppc.PowerPCConditionOperand Cond,
BranchOperand Target,
int numVarOps)
Create an instruction of the MIR_CondCall instruction format.
|
static Instruction |
MIR_Call.create0(Operator o,
RegisterOperand Result,
RegisterOperand Result2,
BranchOperand Target)
Create an instruction of the MIR_Call instruction format
with 0 variable arguments.
|
static Instruction |
MIR_Call.create0(Operator o,
RegisterOperand Result,
RegisterOperand Result2,
BranchOperand Target,
MethodOperand Method)
Create an instruction of the MIR_Call instruction format
with 0 variable arguments.
|
static Instruction |
MIR_CondCall.create0(Operator o,
RegisterOperand Result,
RegisterOperand Result2,
RegisterOperand Value,
org.jikesrvm.compilers.opt.ir.operand.ppc.PowerPCConditionOperand Cond,
BranchOperand Target)
Create an instruction of the MIR_CondCall instruction format
with 0 variable arguments.
|
static Instruction |
MIR_DataLabel.mutate(Instruction i,
Operator o,
BranchOperand Target)
Mutate the argument instruction into an instruction of the
MIR_DataLabel instruction format having the specified
operator and operands.
|
static Instruction |
MIR_Branch.mutate(Instruction i,
Operator o,
BranchOperand Target)
Mutate the argument instruction into an instruction of the
MIR_Branch instruction format having the specified
operator and operands.
|
static Instruction |
MIR_CondBranch.mutate(Instruction i,
Operator o,
RegisterOperand Value,
org.jikesrvm.compilers.opt.ir.operand.ppc.PowerPCConditionOperand Cond,
BranchOperand Target,
BranchProfileOperand BranchProfile)
Mutate the argument instruction into an instruction of the
MIR_CondBranch instruction format having the specified
operator and operands.
|
static Instruction |
MIR_CondBranch2.mutate(Instruction i,
Operator o,
RegisterOperand Value,
org.jikesrvm.compilers.opt.ir.operand.ppc.PowerPCConditionOperand Cond1,
BranchOperand Target1,
BranchProfileOperand BranchProfile1,
org.jikesrvm.compilers.opt.ir.operand.ppc.PowerPCConditionOperand Cond2,
BranchOperand Target2,
BranchProfileOperand BranchProfile2)
Mutate the argument instruction into an instruction of the
MIR_CondBranch2 instruction format having the specified
operator and operands.
|
static Instruction |
MIR_Call.mutate(Instruction i,
Operator o,
RegisterOperand Result,
RegisterOperand Result2,
BranchOperand Target,
int numVarOps)
Mutate the argument instruction into an instruction of the
MIR_Call instruction format having the specified
operator and operands.
|
static Instruction |
MIR_Call.mutate(Instruction i,
Operator o,
RegisterOperand Result,
RegisterOperand Result2,
BranchOperand Target,
MethodOperand Method,
int numVarOps)
Mutate the argument instruction into an instruction of the
MIR_Call instruction format having the specified
operator and operands.
|
static Instruction |
MIR_CondCall.mutate(Instruction i,
Operator o,
RegisterOperand Result,
RegisterOperand Result2,
RegisterOperand Value,
org.jikesrvm.compilers.opt.ir.operand.ppc.PowerPCConditionOperand Cond,
BranchOperand Target,
int numVarOps)
Mutate the argument instruction into an instruction of the
MIR_CondCall instruction format having the specified
operator and operands.
|
static Instruction |
MIR_Call.mutate0(Instruction i,
Operator o,
RegisterOperand Result,
RegisterOperand Result2,
BranchOperand Target)
Mutate the argument instruction into an instruction of the
MIR_Call instruction format having the specified
operator, operands, and number of variable-length operands.
|
static Instruction |
MIR_Call.mutate0(Instruction i,
Operator o,
RegisterOperand Result,
RegisterOperand Result2,
BranchOperand Target,
MethodOperand Method)
Mutate the argument instruction into an instruction of the
MIR_Call instruction format having the specified
operator, operands, and number of variable-length operands.
|
static Instruction |
MIR_CondCall.mutate0(Instruction i,
Operator o,
RegisterOperand Result,
RegisterOperand Result2,
RegisterOperand Value,
org.jikesrvm.compilers.opt.ir.operand.ppc.PowerPCConditionOperand Cond,
BranchOperand Target)
Mutate the argument instruction into an instruction of the
MIR_CondCall instruction format having the specified
operator, operands, and number of variable-length operands.
|
static void |
MIR_CondCall.setTarget(Instruction i,
BranchOperand Target)
Set the operand called Target in the argument
instruction to the argument operand.
|
static void |
MIR_DataLabel.setTarget(Instruction i,
BranchOperand Target)
Set the operand called Target in the argument
instruction to the argument operand.
|
static void |
MIR_Branch.setTarget(Instruction i,
BranchOperand Target)
Set the operand called Target in the argument
instruction to the argument operand.
|
static void |
MIR_Call.setTarget(Instruction i,
BranchOperand Target)
Set the operand called Target in the argument
instruction to the argument operand.
|
static void |
MIR_CondBranch.setTarget(Instruction i,
BranchOperand Target)
Set the operand called Target in the argument
instruction to the argument operand.
|
static void |
MIR_LowTableSwitch.setTarget(Instruction i,
int k,
BranchOperand o)
Set the k'th operand called Target in the argument
instruction to the argument operand.
|
static void |
MIR_CondBranch2.setTarget1(Instruction i,
BranchOperand Target1)
Set the operand called Target1 in the argument
instruction to the argument operand.
|
static void |
MIR_CondBranch2.setTarget2(Instruction i,
BranchOperand Target2)
Set the operand called Target2 in the argument
instruction to the argument operand.
|
Modifier and Type | Method and Description |
---|---|
protected void |
BURS_Helpers.ATTEMPT_IFCMP(MemoryOperand mo,
Operand oldValue,
Operand newValue,
ConditionOperand cond,
BranchOperand target,
BranchProfileOperand bp)
This routine expands the compound pattern IFCMP(ATTEMPT, ZERO) into an
atomic compare/exchange followed by a branch on success/failure of the
attempted atomic compare/exchange.
|