public static class AMD64Binary.MemoryOp extends AMD64LIRInstruction implements StandardOp.ImplicitNullCheck
AllocatableValue operand and one memory operand.LIRInstruction.Alive, LIRInstruction.Def, LIRInstruction.OperandFlag, LIRInstruction.OperandMode, LIRInstruction.State, LIRInstruction.Temp, LIRInstruction.Use| Modifier and Type | Field and Description |
|---|---|
private AMD64Assembler.AMD64RMOp |
opcode |
protected AllocatableValue |
result |
private AMD64Assembler.OperandSize |
size |
protected LIRFrameState |
state |
static LIRInstructionClass<AMD64Binary.MemoryOp> |
TYPE |
protected AllocatableValue |
x |
protected AMD64AddressValue |
y |
ADDRESS_FLAGS, ALLOWED_FLAGS| Constructor and Description |
|---|
MemoryOp(AMD64Assembler.AMD64RMOp opcode,
AMD64Assembler.OperandSize size,
AllocatableValue result,
AllocatableValue x,
AMD64AddressValue y,
LIRFrameState state) |
| Modifier and Type | Method and Description |
|---|---|
void |
emitCode(CompilationResultBuilder crb,
AMD64MacroAssembler masm) |
boolean |
makeNullCheckFor(Value value,
LIRFrameState nullCheckState,
int implicitNullCheckLimit) |
void |
verify() |
emitCodedestroysCallerSavedRegisters, forEachAlive, forEachAlive, forEachInput, forEachInput, forEachOutput, forEachOutput, forEachRegisterHint, forEachRegisterHint, forEachState, forEachState, forEachState, forEachState, forEachTemp, forEachTemp, getLIRInstructionClass, hasOperands, hasState, id, name, setId, toString, toStringWithIdPrefix, visitEachAlive, visitEachAlive, visitEachInput, visitEachInput, visitEachOutput, visitEachOutput, visitEachState, visitEachState, visitEachTemp, visitEachTemppublic static final LIRInstructionClass<AMD64Binary.MemoryOp> TYPE
private final AMD64Assembler.AMD64RMOp opcode
private final AMD64Assembler.OperandSize size
protected AllocatableValue result
protected AllocatableValue x
protected AMD64AddressValue y
protected LIRFrameState state
public MemoryOp(AMD64Assembler.AMD64RMOp opcode, AMD64Assembler.OperandSize size, AllocatableValue result, AllocatableValue x, AMD64AddressValue y, LIRFrameState state)
public void emitCode(CompilationResultBuilder crb, AMD64MacroAssembler masm)
emitCode in class AMD64LIRInstructionpublic void verify()
verify in class LIRInstructionpublic boolean makeNullCheckFor(Value value, LIRFrameState nullCheckState, int implicitNullCheckLimit)
makeNullCheckFor in interface StandardOp.ImplicitNullCheck