public class CGlobalDataFeature extends Object implements GraalFeature
| Modifier and Type | Class and Description |
|---|---|
static interface |
CGlobalDataFeature.SymbolConsumer |
org.graalvm.nativeimage.hosted.Feature.AfterAnalysisAccess, org.graalvm.nativeimage.hosted.Feature.AfterCompilationAccess, org.graalvm.nativeimage.hosted.Feature.AfterHeapLayoutAccess, org.graalvm.nativeimage.hosted.Feature.AfterImageWriteAccess, org.graalvm.nativeimage.hosted.Feature.AfterRegistrationAccess, org.graalvm.nativeimage.hosted.Feature.BeforeAnalysisAccess, org.graalvm.nativeimage.hosted.Feature.BeforeCompilationAccess, org.graalvm.nativeimage.hosted.Feature.BeforeImageWriteAccess, org.graalvm.nativeimage.hosted.Feature.BeforeUniverseBuildingAccess, org.graalvm.nativeimage.hosted.Feature.CompilationAccess, org.graalvm.nativeimage.hosted.Feature.DuringAnalysisAccess, org.graalvm.nativeimage.hosted.Feature.DuringSetupAccess, org.graalvm.nativeimage.hosted.Feature.FeatureAccess, org.graalvm.nativeimage.hosted.Feature.IsInConfigurationAccess, org.graalvm.nativeimage.hosted.Feature.OnAnalysisExitAccess, org.graalvm.nativeimage.hosted.Feature.QueryReachabilityAccess| Constructor and Description |
|---|
CGlobalDataFeature() |
| Modifier and Type | Method and Description |
|---|---|
void |
afterHeapLayout(org.graalvm.nativeimage.hosted.Feature.AfterHeapLayoutAccess access) |
void |
duringSetup(org.graalvm.nativeimage.hosted.Feature.DuringSetupAccess access) |
Set<String> |
getGlobalHiddenSymbols() |
int |
getSize() |
CGlobalDataInfo |
registerAsAccessedOrGet(CGlobalData<?> obj) |
void |
registerInvocationPlugins(org.graalvm.compiler.phases.util.Providers providers,
org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection,
org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration.Plugins plugins,
ParsingReason reason)
Called to register Graal invocation plugins.
|
void |
registerWithGlobalHiddenSymbol(CGlobalData<?> obj)
Same as
CGlobalDataFeature.registerWithGlobalSymbol(CGlobalData) but hides the provided object so that
it will not show up in the dynamic symbol table of the final image. |
void |
registerWithGlobalSymbol(CGlobalData<?> obj)
Makes the provided object available in the binary as a global symbol
Warning: Global symbols are affected by linking and loading rules that are OS dependent.
|
static CGlobalDataFeature |
singleton() |
void |
writeData(RelocatableBuffer buffer,
CGlobalDataFeature.SymbolConsumer createSymbol,
CGlobalDataFeature.SymbolConsumer createSymbolReference) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitregisterCodeObserver, registerForeignCalls, registerGraalPhases, registerGraphBuilderPlugins, registerLoweringspublic static CGlobalDataFeature singleton()
public void duringSetup(org.graalvm.nativeimage.hosted.Feature.DuringSetupAccess access)
duringSetup in interface org.graalvm.nativeimage.hosted.Featurepublic void afterHeapLayout(org.graalvm.nativeimage.hosted.Feature.AfterHeapLayoutAccess access)
afterHeapLayout in interface org.graalvm.nativeimage.hosted.Featurepublic void registerInvocationPlugins(org.graalvm.compiler.phases.util.Providers providers,
org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection,
org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration.Plugins plugins,
ParsingReason reason)
GraalFeatureregisterInvocationPlugins in interface GraalFeatureproviders - Providers that the lowering can use.snippetReflection - Snippet reflection providers.plugins - Contains the invocation plugins to add to.reason - The parsing phase that the plugins are registered forpublic CGlobalDataInfo registerAsAccessedOrGet(CGlobalData<?> obj)
public void registerWithGlobalSymbol(CGlobalData<?> obj)
public void registerWithGlobalHiddenSymbol(CGlobalData<?> obj)
CGlobalDataFeature.registerWithGlobalSymbol(CGlobalData) but hides the provided object so that
it will not show up in the dynamic symbol table of the final image.public int getSize()
public void writeData(RelocatableBuffer buffer, CGlobalDataFeature.SymbolConsumer createSymbol, CGlobalDataFeature.SymbolConsumer createSymbolReference)