Class AArch64Call.ForeignCallOp
java.lang.Object
jdk.graal.compiler.lir.LIRInstruction
jdk.graal.compiler.lir.aarch64.AArch64LIRInstruction
jdk.graal.compiler.lir.aarch64.AArch64Call.CallOp
jdk.graal.compiler.lir.aarch64.AArch64Call.ForeignCallOp
- All Implemented Interfaces:
DiagnosticLIRGeneratorTool.ZapRegistersAfterInstruction
,StandardOp.LabelHoldingOp
- Direct Known Subclasses:
AArch64Call.DirectFarForeignCallOp
,AArch64Call.DirectNearForeignCallOp
- Enclosing class:
AArch64Call
public abstract static class AArch64Call.ForeignCallOp
extends AArch64Call.CallOp
implements StandardOp.LabelHoldingOp, DiagnosticLIRGeneratorTool.ZapRegistersAfterInstruction
-
Nested Class Summary
Nested classes/interfaces inherited from class jdk.graal.compiler.lir.LIRInstruction
LIRInstruction.Alive, LIRInstruction.Def, LIRInstruction.LIRInstructionSlowPath, LIRInstruction.OperandFlag, LIRInstruction.OperandMode, LIRInstruction.State, LIRInstruction.Temp, LIRInstruction.Use
-
Field Summary
FieldsFields inherited from class jdk.graal.compiler.lir.aarch64.AArch64Call.CallOp
parameters, result, state, temps
Fields inherited from class jdk.graal.compiler.lir.LIRInstruction
ALLOWED_FLAGS
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
ForeignCallOp
(LIRInstructionClass<? extends AArch64Call.ForeignCallOp> c, ForeignCallLinkage callTarget, jdk.vm.ci.meta.Value result, jdk.vm.ci.meta.Value[] parameters, jdk.vm.ci.meta.Value[] temps, LIRFrameState state, Label label) -
Method Summary
Methods inherited from class jdk.graal.compiler.lir.aarch64.AArch64LIRInstruction
emitCode
Methods inherited from class jdk.graal.compiler.lir.LIRInstruction
addStackSlotsToTemporaries, forEachAlive, forEachAlive, forEachInput, forEachInput, forEachOutput, forEachOutput, forEachRegisterHint, forEachRegisterHint, forEachState, forEachState, forEachState, forEachState, forEachTemp, forEachTemp, getComment, getLIRInstructionClass, getPosition, hashCode, hasOperands, hasState, id, isLoadConstantOp, isMoveOp, isValueMoveOp, modifiesStackPointer, name, needsClearUpperVectorRegisters, setComment, setId, setPosition, toString, toString, toStringWithIdPrefix, verify, visitEachAlive, visitEachAlive, visitEachInput, visitEachInput, visitEachOutput, visitEachOutput, visitEachState, visitEachState, visitEachTemp, visitEachTemp
-
Field Details
-
callTarget
-
label
-
-
Constructor Details
-
ForeignCallOp
protected ForeignCallOp(LIRInstructionClass<? extends AArch64Call.ForeignCallOp> c, ForeignCallLinkage callTarget, jdk.vm.ci.meta.Value result, jdk.vm.ci.meta.Value[] parameters, jdk.vm.ci.meta.Value[] temps, LIRFrameState state, Label label)
-
-
Method Details
-
destroysCallerSavedRegisters
public boolean destroysCallerSavedRegisters()- Overrides:
destroysCallerSavedRegisters
in classAArch64Call.CallOp
-
emitCode
- Specified by:
emitCode
in classAArch64LIRInstruction
-
emitCall
-
getLabel
- Specified by:
getLabel
in interfaceStandardOp.LabelHoldingOp
-