public static final class SPARCMove.MoveFpGp extends SPARCLIRInstruction implements StandardOp.MoveOp, SPARCTailDelayedLIRInstruction
SPARCLIRInstruction.SizeEstimate
LIRInstruction.Alive, LIRInstruction.Def, LIRInstruction.OperandFlag, LIRInstruction.OperandMode, LIRInstruction.State, LIRInstruction.Temp, LIRInstruction.Use
Modifier and Type | Field and Description |
---|---|
protected AllocatableValue |
input |
protected AllocatableValue |
result |
static SPARCLIRInstruction.SizeEstimate |
SIZE |
protected AllocatableValue |
temp |
static LIRInstructionClass<SPARCMove.MoveFpGp> |
TYPE |
delayedControlTransfer
ADDRESS_FLAGS, ALLOWED_FLAGS
Constructor and Description |
---|
MoveFpGp(AllocatableValue result,
AllocatableValue input,
AllocatableValue temp) |
Modifier and Type | Method and Description |
---|---|
void |
emitCode(CompilationResultBuilder crb,
SPARCMacroAssembler masm) |
Value |
getInput() |
AllocatableValue |
getResult() |
private void |
moveDirect(CompilationResultBuilder crb,
SPARCMacroAssembler masm,
Kind inputKind,
Kind resultKind) |
private void |
moveViaStack(CompilationResultBuilder crb,
SPARCMacroAssembler masm,
Kind inputKind,
Kind resultKind) |
emitCode, estimateSize, leavesRegisterWindow, setDelayedControlTransfer
destroysCallerSavedRegisters, forEachAlive, forEachAlive, forEachInput, forEachInput, forEachOutput, forEachOutput, forEachRegisterHint, forEachRegisterHint, forEachState, forEachState, forEachState, forEachState, forEachTemp, forEachTemp, getLIRInstructionClass, hasOperands, hasState, id, name, setId, toString, toStringWithIdPrefix, verify, visitEachAlive, visitEachAlive, visitEachInput, visitEachInput, visitEachOutput, visitEachOutput, visitEachState, visitEachState, visitEachTemp, visitEachTemp
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
setDelayedControlTransfer
public static final LIRInstructionClass<SPARCMove.MoveFpGp> TYPE
public static final SPARCLIRInstruction.SizeEstimate SIZE
protected AllocatableValue result
protected AllocatableValue input
protected AllocatableValue temp
public MoveFpGp(AllocatableValue result, AllocatableValue input, AllocatableValue temp)
public Value getInput()
getInput
in interface StandardOp.MoveOp
public AllocatableValue getResult()
getResult
in interface StandardOp.MoveOp
public void emitCode(CompilationResultBuilder crb, SPARCMacroAssembler masm)
emitCode
in class SPARCLIRInstruction
private void moveDirect(CompilationResultBuilder crb, SPARCMacroAssembler masm, Kind inputKind, Kind resultKind)
private void moveViaStack(CompilationResultBuilder crb, SPARCMacroAssembler masm, Kind inputKind, Kind resultKind)