protected final class SubstrateAArch64Backend.SubstrateAArch64LIRGenerator extends org.graalvm.compiler.core.aarch64.AArch64LIRGenerator implements SubstrateLIRGenerator
org.graalvm.compiler.lir.gen.LIRGenerator.Options, org.graalvm.compiler.lir.gen.LIRGenerator.VariableProvider| Constructor and Description |
|---|
SubstrateAArch64LIRGenerator(org.graalvm.compiler.core.common.spi.LIRKindTool lirKindTool,
org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator arithmeticLIRGen,
org.graalvm.compiler.lir.gen.LIRGeneratorTool.MoveFactory moveFactory,
org.graalvm.compiler.phases.util.Providers providers,
org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenRes) |
| Modifier and Type | Method and Description |
|---|---|
org.graalvm.compiler.lir.LIRInstruction |
createZapArgumentSpace(jdk.vm.ci.code.StackSlot[] zappedStack,
jdk.vm.ci.meta.JavaConstant[] zapValues) |
org.graalvm.compiler.lir.StandardOp.ZapRegistersOp |
createZapRegisters(jdk.vm.ci.code.Register[] zappedRegisters,
jdk.vm.ci.meta.JavaConstant[] zapValues) |
void |
emitCCall(long address,
jdk.vm.ci.code.CallingConvention nativeCallingConvention,
jdk.vm.ci.meta.Value[] args) |
jdk.vm.ci.meta.Value |
emitCompress(jdk.vm.ci.meta.Value pointer,
org.graalvm.compiler.core.common.CompressEncoding encoding,
boolean isNonNull) |
void |
emitConvertNullToZero(jdk.vm.ci.meta.AllocatableValue result,
jdk.vm.ci.meta.Value value) |
void |
emitConvertZeroToNull(jdk.vm.ci.meta.AllocatableValue result,
jdk.vm.ci.meta.Value value) |
void |
emitDeadEnd() |
void |
emitDeoptimize(jdk.vm.ci.meta.Value actionAndReason,
jdk.vm.ci.meta.Value failedSpeculation,
org.graalvm.compiler.lir.LIRFrameState state) |
void |
emitFarReturn(jdk.vm.ci.meta.AllocatableValue result,
jdk.vm.ci.meta.Value stackPointer,
jdk.vm.ci.meta.Value ip) |
protected void |
emitForeignCallOp(org.graalvm.compiler.core.common.spi.ForeignCallLinkage linkage,
jdk.vm.ci.meta.Value result,
jdk.vm.ci.meta.Value[] arguments,
jdk.vm.ci.meta.Value[] temps,
org.graalvm.compiler.lir.LIRFrameState info) |
void |
emitPrefetchAllocate(jdk.vm.ci.meta.Value address) |
void |
emitReturn(jdk.vm.ci.meta.JavaKind kind,
jdk.vm.ci.meta.Value input) |
jdk.vm.ci.meta.Value |
emitUncompress(jdk.vm.ci.meta.Value pointer,
org.graalvm.compiler.core.common.CompressEncoding encoding,
boolean isNonNull) |
void |
emitUnwind(jdk.vm.ci.meta.Value operand) |
void |
emitVerificationMarker(Object marker) |
SubstrateRegisterConfig |
getRegisterConfig() |
SubstrateAArch64Backend.SubstrateLIRGenerationResult |
getResult() |
asAddressValue, canStoreConstant, createStrategySwitchOp, emitAddress, emitArrayCompareTo, emitArrayEquals, emitAtomicReadAndAdd, emitAtomicReadAndWrite, emitByteSwap, emitCompare, emitCompareBranch, emitConditionalMove, emitIntegerTestBranch, emitIntegerTestMove, emitJump, emitLogicCompareAndSwap, emitMembar, emitNullCheck, emitOverflowCheckBranch, emitPause, emitSpeculationFence, emitStrategySwitch, emitTableSwitch, emitValueCompareAndSwap, emitZeroMemory, emitZeroMemory, isCompareConstant, loadNonCompareConst, loadReg, moveSp, toRegisterKind, zapValueForKindappend, asAllocatable, attributes, beforeRegisterAllocation, canInlineConstant, createBenchmarkCounter, createMultiBenchmarkCounter, createZapRegisters, createZapRegisters, emitBlackhole, emitConstant, emitForeignCall, emitHashTableSwitch, emitIncomingValues, emitJavaConstant, emitLoadConstant, emitMove, emitMove, emitMoveConstant, emitReadRegister, emitStrategySwitch, emitWriteRegister, getAddressKind, getArithmetic, getBlockScope, getCodeCache, getCurrentBlock, getForeignCalls, getLIRKind, getLIRKindTool, getMatchScope, getMetaAccess, getMoveFactory, getProviders, getSpillMoveFactory, getValueKind, hasBlockEnd, hasherFor, load, loadNonConst, mayEmbedConstantLoad, needOnlyOopMaps, newVariable, resultOperandFor, setSourcePosition, target, zapArgumentSpacepublic SubstrateAArch64LIRGenerator(org.graalvm.compiler.core.common.spi.LIRKindTool lirKindTool,
org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator arithmeticLIRGen,
org.graalvm.compiler.lir.gen.LIRGeneratorTool.MoveFactory moveFactory,
org.graalvm.compiler.phases.util.Providers providers,
org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenRes)
public SubstrateAArch64Backend.SubstrateLIRGenerationResult getResult()
getResult in interface org.graalvm.compiler.lir.gen.LIRGeneratorToolgetResult in class org.graalvm.compiler.lir.gen.LIRGeneratorpublic SubstrateRegisterConfig getRegisterConfig()
getRegisterConfig in interface org.graalvm.compiler.lir.gen.LIRGeneratorToolgetRegisterConfig in class org.graalvm.compiler.lir.gen.LIRGeneratorprotected void emitForeignCallOp(org.graalvm.compiler.core.common.spi.ForeignCallLinkage linkage,
jdk.vm.ci.meta.Value result,
jdk.vm.ci.meta.Value[] arguments,
jdk.vm.ci.meta.Value[] temps,
org.graalvm.compiler.lir.LIRFrameState info)
emitForeignCallOp in class org.graalvm.compiler.lir.gen.LIRGeneratorpublic void emitUnwind(jdk.vm.ci.meta.Value operand)
emitUnwind in interface org.graalvm.compiler.lir.gen.LIRGeneratorToolpublic void emitDeoptimize(jdk.vm.ci.meta.Value actionAndReason,
jdk.vm.ci.meta.Value failedSpeculation,
org.graalvm.compiler.lir.LIRFrameState state)
emitDeoptimize in interface org.graalvm.compiler.lir.gen.LIRGeneratorToolpublic void emitVerificationMarker(Object marker)
emitVerificationMarker in interface SubstrateLIRGeneratorpublic void emitFarReturn(jdk.vm.ci.meta.AllocatableValue result,
jdk.vm.ci.meta.Value stackPointer,
jdk.vm.ci.meta.Value ip)
emitFarReturn in interface SubstrateLIRGeneratorpublic void emitDeadEnd()
emitDeadEnd in interface SubstrateLIRGeneratorpublic void emitPrefetchAllocate(jdk.vm.ci.meta.Value address)
emitPrefetchAllocate in interface org.graalvm.compiler.lir.gen.LIRGeneratorToolpublic jdk.vm.ci.meta.Value emitCompress(jdk.vm.ci.meta.Value pointer,
org.graalvm.compiler.core.common.CompressEncoding encoding,
boolean isNonNull)
emitCompress in interface org.graalvm.compiler.lir.gen.LIRGeneratorToolpublic jdk.vm.ci.meta.Value emitUncompress(jdk.vm.ci.meta.Value pointer,
org.graalvm.compiler.core.common.CompressEncoding encoding,
boolean isNonNull)
emitUncompress in interface org.graalvm.compiler.lir.gen.LIRGeneratorToolpublic void emitCCall(long address,
jdk.vm.ci.code.CallingConvention nativeCallingConvention,
jdk.vm.ci.meta.Value[] args)
emitCCall in class org.graalvm.compiler.core.aarch64.AArch64LIRGeneratorpublic org.graalvm.compiler.lir.StandardOp.ZapRegistersOp createZapRegisters(jdk.vm.ci.code.Register[] zappedRegisters,
jdk.vm.ci.meta.JavaConstant[] zapValues)
createZapRegisters in interface org.graalvm.compiler.lir.gen.DiagnosticLIRGeneratorToolcreateZapRegisters in class org.graalvm.compiler.lir.gen.LIRGeneratorpublic org.graalvm.compiler.lir.LIRInstruction createZapArgumentSpace(jdk.vm.ci.code.StackSlot[] zappedStack,
jdk.vm.ci.meta.JavaConstant[] zapValues)
createZapArgumentSpace in interface org.graalvm.compiler.lir.gen.DiagnosticLIRGeneratorToolcreateZapArgumentSpace in class org.graalvm.compiler.lir.gen.LIRGeneratorpublic void emitConvertNullToZero(jdk.vm.ci.meta.AllocatableValue result,
jdk.vm.ci.meta.Value value)
emitConvertNullToZero in interface org.graalvm.compiler.lir.gen.LIRGeneratorToolpublic void emitConvertZeroToNull(jdk.vm.ci.meta.AllocatableValue result,
jdk.vm.ci.meta.Value value)
emitConvertZeroToNull in interface org.graalvm.compiler.lir.gen.LIRGeneratorToolpublic void emitReturn(jdk.vm.ci.meta.JavaKind kind,
jdk.vm.ci.meta.Value input)
emitReturn in interface org.graalvm.compiler.lir.gen.LIRGeneratorTool