public class AMD64MathCopySignOp extends AMD64LIRInstruction
LIRInstruction.Alive, LIRInstruction.Def, LIRInstruction.OperandFlag, LIRInstruction.OperandMode, LIRInstruction.State, LIRInstruction.Temp, LIRInstruction.Use| Modifier and Type | Field and Description |
|---|---|
protected Value |
magnitude |
protected Value |
result |
protected Value |
scratchGP |
protected Value |
scratchXMM |
protected Value |
sign |
static LIRInstructionClass<AMD64MathCopySignOp> |
TYPE |
ADDRESS_FLAGS, ALLOWED_FLAGS| Constructor and Description |
|---|
AMD64MathCopySignOp(LIRGeneratorTool tool,
Value result,
AllocatableValue magnitude,
AllocatableValue sign) |
| Modifier and Type | Method and Description |
|---|---|
void |
emitCode(CompilationResultBuilder crb,
AMD64MacroAssembler masm) |
emitCodeaddStackSlotsToTemporaries, destroysCallerSavedRegisters, forEachAlive, forEachAlive, forEachInput, forEachInput, forEachOutput, forEachOutput, forEachRegisterHint, forEachRegisterHint, forEachState, forEachState, forEachState, forEachState, forEachTemp, forEachTemp, getComment, getLIRInstructionClass, getPosition, hashCode, hasOperands, hasState, id, isLoadConstantOp, isMoveOp, isValueMoveOp, name, needsClearUpperVectorRegisters, setComment, setId, setPosition, toString, toString, toStringWithIdPrefix, verify, visitEachAlive, visitEachAlive, visitEachInput, visitEachInput, visitEachOutput, visitEachOutput, visitEachState, visitEachState, visitEachTemp, visitEachTemppublic static final LIRInstructionClass<AMD64MathCopySignOp> TYPE
protected Value result
protected Value magnitude
protected Value sign
protected Value scratchGP
protected Value scratchXMM
public AMD64MathCopySignOp(LIRGeneratorTool tool, Value result, AllocatableValue magnitude, AllocatableValue sign)
public void emitCode(CompilationResultBuilder crb, AMD64MacroAssembler masm)
emitCode in class AMD64LIRInstruction