public class SPARCHotSpotBackend extends HotSpotHostBackend implements LIRGenerationProvider
| Modifier and Type | Class and Description |
|---|---|
class |
SPARCHotSpotBackend.HotSpotFrameContext |
HotSpotBackend.OptionsBackend.CodeInstallationTask, Backend.CodeInstallationTaskFactoryconfig, DEOPT_BLOB_UNCOMMON_TRAP, DEOPT_BLOB_UNPACK, DEOPT_BLOB_UNPACK_WITH_EXCEPTION_IN_TLS, ENABLE_STACK_RESERVED_ZONE, THROW_DELAYED_STACKOVERFLOW_ERRORBACKEDGE_EVENT, BASE64_ENCODE_BLOCK, copyMemoryName, COUNTERMODE_IMPL_CRYPT, CRC_TABLE_LOCATION, DECRYPT, DECRYPT_BLOCK, DECRYPT_BLOCK_WITH_ORIGINAL_KEY, DECRYPT_WITH_ORIGINAL_KEY, ENCRYPT, ENCRYPT_BLOCK, EXCEPTION_HANDLER, EXCEPTION_HANDLER_IN_CALLER, GHASH_PROCESS_BLOCKS, IC_MISS_HANDLER, INITIALIZE_KLASS_BY_SYMBOL, INVOCATION_EVENT, MONTGOMERY_MULTIPLY, MONTGOMERY_SQUARE, MUL_ADD, MULTIPLY_TO_LEN, NEW_ARRAY, NEW_ARRAY_OR_NULL, NEW_INSTANCE, NEW_INSTANCE_OR_NULL, NEW_MULTI_ARRAY, NEW_MULTI_ARRAY_OR_NULL, RESOLVE_DYNAMIC_INVOKE, RESOLVE_KLASS_BY_SYMBOL, RESOLVE_METHOD_BY_SYMBOL_AND_LOAD_COUNTERS, RESOLVE_STRING_BY_SYMBOL, SHA_IMPL_COMPRESS, SHA_IMPL_COMPRESS_MB, SHA2_IMPL_COMPRESS, SHA2_IMPL_COMPRESS_MB, SHA5_IMPL_COMPRESS, SHA5_IMPL_COMPRESS_MB, SQUARE_TO_LEN, UNWIND_EXCEPTION_TO_CALLER, UPDATE_BYTES_CRC32, UPDATE_BYTES_CRC32C, VECTORIZED_MISMATCH, VM_ERROR, WRONG_METHOD_HANDLERARITHMETIC_DREM, ARITHMETIC_FREM| Constructor and Description |
|---|
SPARCHotSpotBackend(GraalHotSpotVMConfig config,
HotSpotGraalRuntimeProvider runtime,
HotSpotProviders providers) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
bangStackWithOffset(CompilationResultBuilder crb,
int bangOffset) |
void |
emitCode(CompilationResultBuilder crb,
LIR lir,
jdk.vm.ci.meta.ResolvedJavaMethod installedCodeOwner)
Emits the code for a given graph.
|
CompilationResultBuilder |
newCompilationResultBuilder(LIRGenerationResult lirGenRes,
FrameMap frameMap,
CompilationResult compilationResult,
CompilationResultBuilderFactory factory)
Creates the object used to fill in the details of a given compilation result.
|
protected FrameMapBuilder |
newFrameMapBuilder(jdk.vm.ci.code.RegisterConfig registerConfig) |
LIRGeneratorTool |
newLIRGenerator(LIRGenerationResult lirGenRes) |
NodeLIRBuilderTool |
newNodeLIRBuilder(StructuredGraph graph,
LIRGeneratorTool lirGen) |
RegisterAllocationConfig |
newRegisterAllocationConfig(jdk.vm.ci.code.RegisterConfig registerConfig,
String[] allocationRestrictedTo)
Creates a new configuration for register allocation.
|
org.graalvm.collections.EconomicSet<jdk.vm.ci.code.Register> |
translateToCallerRegisters(org.graalvm.collections.EconomicSet<jdk.vm.ci.code.Register> calleeRegisters)
Translates a set of registers from the callee's perspective to the caller's perspective.
|
completeInitialization, emitStackOverflowCheck, makeCallingConvention, newLIRGenerationResult, newReferenceMapBuildercounterModeAESCrypt, createCompiledCode, getCompilationIdentifier, getProviders, getRuntime, getSuites, multiplyToLenStub, profileInstructions, sha2ImplCompressMBStub, sha5ImplCompressMBStub, shaImplCompressMBStub, unsafeArraycopy, updateStubaddCodeInstallationTask, addInstalledCode, createDefaultInstalledCode, createInstalledCode, createInstalledCode, createInstalledCode, emitBackEnd, getCodeCache, getConstantReflection, getForeignCalls, getMetaAccess, getTarget, getValueKindclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitnewLIRGenerationResultpublic SPARCHotSpotBackend(GraalHotSpotVMConfig config, HotSpotGraalRuntimeProvider runtime, HotSpotProviders providers)
protected FrameMapBuilder newFrameMapBuilder(jdk.vm.ci.code.RegisterConfig registerConfig)
newFrameMapBuilder in class HotSpotHostBackendpublic LIRGeneratorTool newLIRGenerator(LIRGenerationResult lirGenRes)
newLIRGenerator in interface LIRGenerationProviderpublic NodeLIRBuilderTool newNodeLIRBuilder(StructuredGraph graph, LIRGeneratorTool lirGen)
newNodeLIRBuilder in interface LIRGenerationProviderprotected void bangStackWithOffset(CompilationResultBuilder crb, int bangOffset)
bangStackWithOffset in class HotSpotHostBackendpublic CompilationResultBuilder newCompilationResultBuilder(LIRGenerationResult lirGenRes, FrameMap frameMap, CompilationResult compilationResult, CompilationResultBuilderFactory factory)
LIRGenerationProvidernewCompilationResultBuilder in interface LIRGenerationProviderpublic void emitCode(CompilationResultBuilder crb, LIR lir, jdk.vm.ci.meta.ResolvedJavaMethod installedCodeOwner)
LIRGenerationProvideremitCode in interface LIRGenerationProviderinstalledCodeOwner - the method the compiled code will be associated with once
installed. This argument can be null.public RegisterAllocationConfig newRegisterAllocationConfig(jdk.vm.ci.code.RegisterConfig registerConfig, String[] allocationRestrictedTo)
BackendnewRegisterAllocationConfig in class BackendallocationRestrictedTo - if not null, register allocation will be restricted to
registers whose names appear in this arraypublic org.graalvm.collections.EconomicSet<jdk.vm.ci.code.Register> translateToCallerRegisters(org.graalvm.collections.EconomicSet<jdk.vm.ci.code.Register> calleeRegisters)
HotSpotBackendtranslateToCallerRegisters in class HotSpotBackend