public class SubstrateAArch64Backend extends SubstrateBackend implements org.graalvm.compiler.core.gen.LIRGenerationProvider
SubstrateBackend.SubstrateMarkId
Constructor and Description |
---|
SubstrateAArch64Backend(org.graalvm.compiler.phases.util.Providers providers) |
Modifier and Type | Method and Description |
---|---|
protected org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator |
createArithmeticLIRGen(jdk.vm.ci.meta.AllocatableValue nullRegisterValue) |
protected jdk.vm.ci.code.CompiledCode |
createCompiledCode(jdk.vm.ci.meta.ResolvedJavaMethod method,
jdk.vm.ci.code.CompilationRequest compilationRequest,
org.graalvm.compiler.code.CompilationResult compilationResult,
boolean isDefault,
org.graalvm.compiler.options.OptionValues options) |
org.graalvm.compiler.code.CompilationResult |
createJNITrampolineMethod(jdk.vm.ci.meta.ResolvedJavaMethod method,
org.graalvm.compiler.core.common.CompilationIdentifier identifier,
jdk.vm.ci.code.RegisterValue threadArg,
int threadIsolateOffset,
jdk.vm.ci.code.RegisterValue methodIdArg,
int methodObjEntryPointOffset) |
protected org.graalvm.compiler.core.aarch64.AArch64LIRKindTool |
createLirKindTool() |
protected org.graalvm.compiler.core.aarch64.AArch64NodeMatchRules |
createMatchRules(org.graalvm.compiler.lir.gen.LIRGeneratorTool lirGen) |
protected org.graalvm.compiler.core.aarch64.AArch64MoveFactory |
createMoveFactory(org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenRes) |
void |
emitCode(org.graalvm.compiler.lir.asm.CompilationResultBuilder crb,
org.graalvm.compiler.lir.LIR lir,
jdk.vm.ci.meta.ResolvedJavaMethod installedCodeOwner) |
protected jdk.vm.ci.aarch64.AArch64Kind |
getCompressedOopKind() |
protected static org.graalvm.compiler.core.common.CompressEncoding |
getCompressEncoding() |
static int |
getDeoptScratchSpace()
Returns the amount of scratch space which must be reserved for return value registers in
DeoptimizedFrame . |
org.graalvm.compiler.phases.tiers.SuitesProvider |
getSuites() |
org.graalvm.compiler.phases.Phase |
newAddressLoweringPhase(jdk.vm.ci.code.CodeCacheProvider codeCache) |
org.graalvm.compiler.lir.asm.CompilationResultBuilder |
newCompilationResultBuilder(org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenResult,
org.graalvm.compiler.lir.framemap.FrameMap frameMap,
org.graalvm.compiler.code.CompilationResult compilationResult,
org.graalvm.compiler.lir.asm.CompilationResultBuilderFactory factory) |
org.graalvm.compiler.lir.framemap.FrameMap |
newFrameMap(jdk.vm.ci.code.RegisterConfig registerConfig) |
org.graalvm.compiler.lir.framemap.FrameMapBuilder |
newFrameMapBuilder(jdk.vm.ci.code.RegisterConfig registerConfig) |
org.graalvm.compiler.lir.gen.LIRGenerationResult |
newLIRGenerationResult(org.graalvm.compiler.core.common.CompilationIdentifier compilationId,
org.graalvm.compiler.lir.LIR lir,
org.graalvm.compiler.core.common.alloc.RegisterAllocationConfig registerAllocationConfig,
org.graalvm.compiler.nodes.StructuredGraph graph,
Object stub) |
org.graalvm.compiler.lir.gen.LIRGeneratorTool |
newLIRGenerator(org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenRes) |
org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool |
newNodeLIRBuilder(org.graalvm.compiler.nodes.StructuredGraph graph,
org.graalvm.compiler.lir.gen.LIRGeneratorTool lirGen) |
org.graalvm.compiler.core.common.alloc.RegisterAllocationConfig |
newRegisterAllocationConfig(jdk.vm.ci.code.RegisterConfig registerConfig,
String[] allocationRestrictedTo) |
getJavaFrameAnchor, getNewThreadStatus, getRuntimeConfiguration, hasJavaFrameAnchor, newCompilationResult, setRuntimeConfiguration, shouldEmitOnlyIndirectCalls
addCodeInstallationTask, addInstalledCode, createDefaultInstalledCode, createInstalledCode, createInstalledCode, createInstalledCode, emitBackEnd, getCodeCache, getCompilationIdentifier, getConstantReflection, getForeignCalls, getMetaAccess, getProviders, getTarget, getValueKind
public SubstrateAArch64Backend(org.graalvm.compiler.phases.util.Providers providers)
protected static org.graalvm.compiler.core.common.CompressEncoding getCompressEncoding()
public org.graalvm.compiler.lir.framemap.FrameMapBuilder newFrameMapBuilder(jdk.vm.ci.code.RegisterConfig registerConfig)
public org.graalvm.compiler.lir.framemap.FrameMap newFrameMap(jdk.vm.ci.code.RegisterConfig registerConfig)
public org.graalvm.compiler.lir.asm.CompilationResultBuilder newCompilationResultBuilder(org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenResult, org.graalvm.compiler.lir.framemap.FrameMap frameMap, org.graalvm.compiler.code.CompilationResult compilationResult, org.graalvm.compiler.lir.asm.CompilationResultBuilderFactory factory)
newCompilationResultBuilder
in interface org.graalvm.compiler.core.gen.LIRGenerationProvider
protected org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator createArithmeticLIRGen(jdk.vm.ci.meta.AllocatableValue nullRegisterValue)
protected org.graalvm.compiler.core.aarch64.AArch64MoveFactory createMoveFactory(org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenRes)
protected org.graalvm.compiler.core.aarch64.AArch64LIRKindTool createLirKindTool()
public org.graalvm.compiler.lir.gen.LIRGeneratorTool newLIRGenerator(org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenRes)
newLIRGenerator
in interface org.graalvm.compiler.core.gen.LIRGenerationProvider
protected jdk.vm.ci.aarch64.AArch64Kind getCompressedOopKind()
protected org.graalvm.compiler.core.aarch64.AArch64NodeMatchRules createMatchRules(org.graalvm.compiler.lir.gen.LIRGeneratorTool lirGen)
public org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool newNodeLIRBuilder(org.graalvm.compiler.nodes.StructuredGraph graph, org.graalvm.compiler.lir.gen.LIRGeneratorTool lirGen)
newNodeLIRBuilder
in interface org.graalvm.compiler.core.gen.LIRGenerationProvider
public org.graalvm.compiler.core.common.alloc.RegisterAllocationConfig newRegisterAllocationConfig(jdk.vm.ci.code.RegisterConfig registerConfig, String[] allocationRestrictedTo)
newRegisterAllocationConfig
in class SubstrateBackend
public org.graalvm.compiler.code.CompilationResult createJNITrampolineMethod(jdk.vm.ci.meta.ResolvedJavaMethod method, org.graalvm.compiler.core.common.CompilationIdentifier identifier, jdk.vm.ci.code.RegisterValue threadArg, int threadIsolateOffset, jdk.vm.ci.code.RegisterValue methodIdArg, int methodObjEntryPointOffset)
createJNITrampolineMethod
in class SubstrateBackend
protected jdk.vm.ci.code.CompiledCode createCompiledCode(jdk.vm.ci.meta.ResolvedJavaMethod method, jdk.vm.ci.code.CompilationRequest compilationRequest, org.graalvm.compiler.code.CompilationResult compilationResult, boolean isDefault, org.graalvm.compiler.options.OptionValues options)
createCompiledCode
in class org.graalvm.compiler.core.target.Backend
public void emitCode(org.graalvm.compiler.lir.asm.CompilationResultBuilder crb, org.graalvm.compiler.lir.LIR lir, jdk.vm.ci.meta.ResolvedJavaMethod installedCodeOwner)
emitCode
in interface org.graalvm.compiler.core.gen.LIRGenerationProvider
public org.graalvm.compiler.phases.tiers.SuitesProvider getSuites()
getSuites
in class SubstrateBackend
public static int getDeoptScratchSpace()
DeoptimizedFrame
.public org.graalvm.compiler.lir.gen.LIRGenerationResult newLIRGenerationResult(org.graalvm.compiler.core.common.CompilationIdentifier compilationId, org.graalvm.compiler.lir.LIR lir, org.graalvm.compiler.core.common.alloc.RegisterAllocationConfig registerAllocationConfig, org.graalvm.compiler.nodes.StructuredGraph graph, Object stub)
newLIRGenerationResult
in interface org.graalvm.compiler.core.gen.LIRGenerationProvider
public org.graalvm.compiler.phases.Phase newAddressLoweringPhase(jdk.vm.ci.code.CodeCacheProvider codeCache)
newAddressLoweringPhase
in class SubstrateBackend