public abstract class CompositeValue extends AbstractValue
| Modifier and Type | Class and Description |
|---|---|
static interface |
CompositeValue.Component |
Value.IllegalValue| Modifier and Type | Field and Description |
|---|---|
private static DebugMetric |
COMPOSITE_VALUE_COUNT |
ILLEGAL| Constructor and Description |
|---|
CompositeValue(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 Value[] |
visitValueArray(LIRInstruction inst,
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, identityEqualsclone, finalize, getClass, notify, notifyAll, wait, wait, waitidentityEqualsprivate static final DebugMetric COMPOSITE_VALUE_COUNT
public CompositeValue(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 Value[] visitValueArray(LIRInstruction inst, 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 AbstractValuepublic boolean equals(Object obj)
equals in class AbstractValue