public abstract class CompositeValue extends jdk.internal.jvmci.meta.AbstractValue
Modifier and Type | Class and Description |
---|---|
static interface |
CompositeValue.Component |
Modifier and Type | Field and Description |
---|---|
private static DebugMetric |
COMPOSITE_VALUE_COUNT |
Constructor and Description |
---|
CompositeValue(jdk.internal.jvmci.meta.LIRKind kind) |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj) |
protected abstract void |
forEachComponent(LIRInstruction inst,
LIRInstruction.OperandMode mode,
InstructionValueConsumer proc) |
abstract CompositeValue |
forEachComponent(LIRInstruction inst,
LIRInstruction.OperandMode mode,
InstructionValueProcedure proc)
|
int |
hashCode() |
String |
toString() |
protected jdk.internal.jvmci.meta.Value[] |
visitValueArray(LIRInstruction inst,
jdk.internal.jvmci.meta.Value[] values,
LIRInstruction.OperandMode mode,
InstructionValueProcedure proc,
EnumSet<LIRInstruction.OperandFlag> flags)
A helper method to visit
Value [] ensuring that a copy of the array is made if it's
needed. |
getKind, getKindSuffix, getLIRKind, getPlatformKind, identityEquals
private static final DebugMetric COMPOSITE_VALUE_COUNT
public CompositeValue(jdk.internal.jvmci.meta.LIRKind kind)
public abstract CompositeValue forEachComponent(LIRInstruction inst, LIRInstruction.OperandMode mode, InstructionValueProcedure proc)
proc
on each Value
element of this CompositeValue
. If
proc
replaces any value then a new CompositeValue should be returned.inst
- mode
- proc
- protected jdk.internal.jvmci.meta.Value[] visitValueArray(LIRInstruction inst, jdk.internal.jvmci.meta.Value[] values, LIRInstruction.OperandMode mode, InstructionValueProcedure proc, EnumSet<LIRInstruction.OperandFlag> flags)
Value
[] ensuring that a copy of the array is made if it's
needed.inst
- values
- mode
- proc
- flags
- values
array or a copy if values changedprotected abstract void forEachComponent(LIRInstruction inst, LIRInstruction.OperandMode mode, InstructionValueConsumer proc)
public int hashCode()
hashCode
in class jdk.internal.jvmci.meta.AbstractValue