public class SPARCHotSpotBackend extends HotSpotHostBackend implements LIRGenerationProvider
Modifier and Type | Class and Description |
---|---|
class |
SPARCHotSpotBackend.HotSpotFrameContext |
HotSpotBackend.Options
Backend.CodeInstallationTask, Backend.CodeInstallationTaskFactory
config, DEOPT_BLOB_UNCOMMON_TRAP, DEOPT_BLOB_UNPACK, DEOPT_BLOB_UNPACK_WITH_EXCEPTION_IN_TLS, ENABLE_STACK_RESERVED_ZONE, THROW_DELAYED_STACKOVERFLOW_ERROR
BACKEDGE_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_HANDLER
ARITHMETIC_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, newReferenceMapBuilder
counterModeAESCrypt, createCompiledCode, getCompilationIdentifier, getProviders, getRuntime, getSuites, multiplyToLenStub, profileInstructions, sha2ImplCompressMBStub, sha5ImplCompressMBStub, shaImplCompressMBStub, unsafeArraycopy, updateStub
addCodeInstallationTask, addInstalledCode, createDefaultInstalledCode, createInstalledCode, createInstalledCode, createInstalledCode, emitBackEnd, getCodeCache, getConstantReflection, getForeignCalls, getMetaAccess, getTarget, getValueKind
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
newLIRGenerationResult
public SPARCHotSpotBackend(GraalHotSpotVMConfig config, HotSpotGraalRuntimeProvider runtime, HotSpotProviders providers)
protected FrameMapBuilder newFrameMapBuilder(jdk.vm.ci.code.RegisterConfig registerConfig)
newFrameMapBuilder
in class HotSpotHostBackend
public LIRGeneratorTool newLIRGenerator(LIRGenerationResult lirGenRes)
newLIRGenerator
in interface LIRGenerationProvider
public NodeLIRBuilderTool newNodeLIRBuilder(StructuredGraph graph, LIRGeneratorTool lirGen)
newNodeLIRBuilder
in interface LIRGenerationProvider
protected void bangStackWithOffset(CompilationResultBuilder crb, int bangOffset)
bangStackWithOffset
in class HotSpotHostBackend
public CompilationResultBuilder newCompilationResultBuilder(LIRGenerationResult lirGenRes, FrameMap frameMap, CompilationResult compilationResult, CompilationResultBuilderFactory factory)
LIRGenerationProvider
newCompilationResultBuilder
in interface LIRGenerationProvider
public void emitCode(CompilationResultBuilder crb, LIR lir, jdk.vm.ci.meta.ResolvedJavaMethod installedCodeOwner)
LIRGenerationProvider
emitCode
in interface LIRGenerationProvider
installedCodeOwner
- 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)
Backend
newRegisterAllocationConfig
in class Backend
allocationRestrictedTo
- 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)
HotSpotBackend
translateToCallerRegisters
in class HotSpotBackend