diff --git a/substratevm/docs/module-system/ModuleSystemSupportRuntime.md b/substratevm/docs/module-system/ModuleSystemSupportRuntime.md index a5b31e86a7df..6bcd623a1409 100644 --- a/substratevm/docs/module-system/ModuleSystemSupportRuntime.md +++ b/substratevm/docs/module-system/ModuleSystemSupportRuntime.md @@ -1,6 +1,6 @@ # Runtime module system support -The core of the runtime module system support consists of a set of substitutions and a feature (`com.oracle.svm.hosted.ModuleLayerFeature`) that provides runtime module-graphs. +The core of the runtime module system support consists of a set of substitutions and a feature (`com.oracle.svm.hosted.jdk.ModuleLayerFeature`) that provides runtime module-graphs. The purpose of the runtime module support: - Correct information when querying module instances @@ -29,7 +29,7 @@ Why don't we reuse build-time modules/layers? - Module graphs are not the same – even if they were, we would like to optimize and not include modules that we do not need (as long as it does not break compatibility) - Hosted module instances capture state (e.g., class loader), and patching them and all relevant data structures is harder than synthesizing new instances -Synthesizing runtime module layers and modules (`com.oracle.svm.hosted.ModuleLayerFeature#afterAnalysis`): +Synthesizing runtime module layers and modules (`com.oracle.svm.hosted.jdk.ModuleLayerFeature#afterAnalysis`): - Calculate runtime root module set: - Find all reachable named modules - Collect all extra modules (addmods, resources) diff --git a/substratevm/mx.substratevm/suite.py b/substratevm/mx.substratevm/suite.py index 011000446f03..4f67de401462 100644 --- a/substratevm/mx.substratevm/suite.py +++ b/substratevm/mx.substratevm/suite.py @@ -244,7 +244,7 @@ "jacoco" : "include", }, - "com.oracle.svm.common": { + "com.oracle.svm.sdk.staging": { "subDir": "src", "sourceDirs": ["src"], "dependencies": [ @@ -264,6 +264,27 @@ "jacoco" : "include", }, + "com.oracle.svm.common": { + "subDir": "src", + "sourceDirs": ["src"], + "dependencies": [ + "com.oracle.svm.util", + "com.oracle.svm.sdk.staging" + ], + "requiresConcealed" : { + "jdk.internal.vm.ci" : [ + "jdk.vm.ci.meta", + ] + }, + "javaCompliance" : "21+", + "annotationProcessors": [ + "compiler:GRAAL_PROCESSOR", + ], + "checkstyle": "com.oracle.svm.core", + "workingSets": "SVM", + "jacoco" : "include", + }, + # Shade Cap'n Proto Runtime "com.oracle.svm.shaded.org.capnproto": { "subDir" : "src", @@ -596,6 +617,7 @@ "sourceDirs": ["src"], "dependencies": [ "com.oracle.svm.common", + "com.oracle.svm.sdk.staging", ], "requires" : [ "jdk.internal.vm.ci" @@ -2265,6 +2287,7 @@ "dependencies": [ "com.oracle.svm.common", "com.oracle.svm.util", + "com.oracle.svm.sdk.staging", ], "distDependencies": [ "compiler:GRAAL", @@ -2313,9 +2336,11 @@ org.graalvm.nativeimage.foreign, org.graalvm.truffle.runtime.svm, com.oracle.truffle.enterprise.svm""", - """com.oracle.svm.common.hosted.layeredimage to org.graalvm.nativeimage.pointsto, + """com.oracle.svm.sdk.staging.hosted.layeredimage to org.graalvm.nativeimage.pointsto, + org.graalvm.nativeimage.builder""", + """com.oracle.svm.sdk.staging.layeredimage to org.graalvm.nativeimage.pointsto, org.graalvm.nativeimage.builder""", - """com.oracle.svm.common.layeredimage to org.graalvm.nativeimage.pointsto, + """com.oracle.svm.sdk.staging.hosted.traits to org.graalvm.nativeimage.pointsto, org.graalvm.nativeimage.builder""", ], }, diff --git a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/meta/AnalysisMethod.java b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/meta/AnalysisMethod.java index f661ac832652..ded5b53a8d99 100644 --- a/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/meta/AnalysisMethod.java +++ b/substratevm/src/com.oracle.graal.pointsto/src/com/oracle/graal/pointsto/meta/AnalysisMethod.java @@ -64,9 +64,9 @@ import com.oracle.graal.pointsto.util.AnalysisError; import com.oracle.graal.pointsto.util.AtomicUtils; import com.oracle.graal.pointsto.util.ConcurrentLightHashSet; -import com.oracle.svm.common.hosted.layeredimage.LayeredCompilationSupport; -import com.oracle.svm.common.layeredimage.LayeredCompilationBehavior; -import com.oracle.svm.common.layeredimage.LayeredCompilationBehavior.Behavior; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredCompilationSupport; +import com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior; +import com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior.Behavior; import com.oracle.svm.common.meta.MultiMethod; import com.oracle.svm.util.OriginalMethodProvider; diff --git a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/GenScavengeGCCause.java b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/GenScavengeGCCause.java index 27fe62a6c77a..f8645e496f07 100644 --- a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/GenScavengeGCCause.java +++ b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/GenScavengeGCCause.java @@ -27,7 +27,7 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.heap.GCCause; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; final class GenScavengeGCCause extends GCCause { public static final GCCause OnAllocation = new GenScavengeGCCause("Collect on allocation", 10); diff --git a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/GenScavengeGCFeature.java b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/GenScavengeGCFeature.java index f8ec2daeda8e..fe63256eb200 100644 --- a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/GenScavengeGCFeature.java +++ b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/GenScavengeGCFeature.java @@ -57,14 +57,14 @@ import com.oracle.svm.core.heap.Heap; import com.oracle.svm.core.hub.RuntimeClassLoading; import com.oracle.svm.core.image.ImageHeapLayouter; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.DynamicImageLayerInfo; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.RuntimeSupportFeature; import com.oracle.svm.core.jdk.SystemPropertiesSupport; import com.oracle.svm.core.jvmstat.PerfDataFeature; import com.oracle.svm.core.jvmstat.PerfDataHolder; import com.oracle.svm.core.jvmstat.PerfManager; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; import com.oracle.svm.core.metaspace.Metaspace; import com.oracle.svm.core.os.CommittedMemoryProvider; import com.oracle.svm.core.os.OSCommittedMemoryProvider; diff --git a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/HeapImpl.java b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/HeapImpl.java index 55c6f1d9da1a..3bc563120cea 100644 --- a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/HeapImpl.java +++ b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/HeapImpl.java @@ -66,10 +66,10 @@ import com.oracle.svm.core.heap.RestrictHeapAccess; import com.oracle.svm.core.heap.RuntimeCodeInfoGCSupport; import com.oracle.svm.core.hub.DynamicHub; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jfr.JfrTicks; import com.oracle.svm.core.jfr.events.SystemGCEvent; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.locks.VMCondition; import com.oracle.svm.core.locks.VMMutex; import com.oracle.svm.core.log.Log; diff --git a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/ImageHeapInfo.java b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/ImageHeapInfo.java index f33bc4b9f6c4..b601cb47c916 100644 --- a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/ImageHeapInfo.java +++ b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/ImageHeapInfo.java @@ -36,10 +36,10 @@ import com.oracle.svm.core.hub.LayoutEncoding; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.snippets.KnownIntrinsics; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/JfrGCEventSupport.java b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/JfrGCEventSupport.java index 48a1ee751865..60f7dc05d9ba 100644 --- a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/JfrGCEventSupport.java +++ b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/JfrGCEventSupport.java @@ -34,7 +34,7 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.heap.GCCause; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jfr.HasJfrSupport; import com.oracle.svm.core.jfr.JfrEvent; import com.oracle.svm.core.jfr.JfrGCName; @@ -43,10 +43,10 @@ import com.oracle.svm.core.jfr.JfrNativeEventWriterData; import com.oracle.svm.core.jfr.JfrNativeEventWriterDataAccess; import com.oracle.svm.core.jfr.JfrTicks; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; class JfrGCEventSupport { diff --git a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/PinnedObjectSupportImpl.java b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/PinnedObjectSupportImpl.java index 01764f86de4a..296a033675ea 100644 --- a/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/PinnedObjectSupportImpl.java +++ b/substratevm/src/com.oracle.svm.core.genscavenge/src/com/oracle/svm/core/genscavenge/PinnedObjectSupportImpl.java @@ -31,10 +31,10 @@ import com.oracle.svm.core.Uninterruptible; import com.oracle.svm.core.heap.AbstractPinnedObjectSupport; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.nodes.NamedLocationIdentity; diff --git a/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/AArch64ReservedRegisters.java b/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/AArch64ReservedRegisters.java index a73327ba69be..3f250e127de7 100755 --- a/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/AArch64ReservedRegisters.java +++ b/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/AArch64ReservedRegisters.java @@ -28,10 +28,10 @@ import org.graalvm.nativeimage.Platforms; import com.oracle.svm.core.ReservedRegisters; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.vm.ci.aarch64.AArch64; import jdk.vm.ci.code.Register; diff --git a/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/SubstrateAArch64Backend.java b/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/SubstrateAArch64Backend.java index a2362bd795ec..361ff3ac7bae 100755 --- a/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/SubstrateAArch64Backend.java +++ b/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/SubstrateAArch64Backend.java @@ -73,7 +73,7 @@ import com.oracle.svm.core.graal.nodes.ComputedIndirectCallTargetNode; import com.oracle.svm.core.heap.ReferenceAccess; import com.oracle.svm.core.heap.SubstrateReferenceMapBuilder; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.interpreter.InterpreterSupport; import com.oracle.svm.core.meta.CompressedNullConstant; import com.oracle.svm.core.meta.SharedField; diff --git a/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/SubstrateAArch64Feature.java b/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/SubstrateAArch64Feature.java index 916902f82319..be141b0b62bf 100644 --- a/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/SubstrateAArch64Feature.java +++ b/substratevm/src/com.oracle.svm.core.graal.aarch64/src/com/oracle/svm/core/graal/aarch64/SubstrateAArch64Feature.java @@ -41,10 +41,10 @@ import com.oracle.svm.core.graal.code.SubstrateVectorArchitectureFactory; import com.oracle.svm.core.graal.meta.SubstrateRegisterConfig.ConfigKind; import com.oracle.svm.core.heap.ReferenceAccess; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.core.common.spi.ForeignCallsProvider; import jdk.graal.compiler.core.common.spi.MetaAccessExtensionProvider; diff --git a/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/AMD64ReservedRegisters.java b/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/AMD64ReservedRegisters.java index a6fda9c1d174..7cd81fbac8bb 100644 --- a/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/AMD64ReservedRegisters.java +++ b/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/AMD64ReservedRegisters.java @@ -32,10 +32,10 @@ import org.graalvm.nativeimage.Platforms; import com.oracle.svm.core.ReservedRegisters; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.vm.ci.amd64.AMD64; import jdk.vm.ci.code.Register; diff --git a/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/SubstrateAMD64Backend.java b/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/SubstrateAMD64Backend.java index 456dbe76c6e3..735f8b0deeb7 100644 --- a/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/SubstrateAMD64Backend.java +++ b/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/SubstrateAMD64Backend.java @@ -87,8 +87,8 @@ import com.oracle.svm.core.graal.nodes.ComputedIndirectCallTargetNode.FieldLoadIfZero; import com.oracle.svm.core.heap.ReferenceAccess; import com.oracle.svm.core.heap.SubstrateReferenceMapBuilder; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.DynamicImageLayerInfo; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.interpreter.InterpreterSupport; import com.oracle.svm.core.meta.CompressedNullConstant; import com.oracle.svm.core.meta.SharedField; diff --git a/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/SubstrateAMD64Feature.java b/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/SubstrateAMD64Feature.java index d6c7f1fc8949..753382c9e3b3 100644 --- a/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/SubstrateAMD64Feature.java +++ b/substratevm/src/com.oracle.svm.core.graal.amd64/src/com/oracle/svm/core/graal/amd64/SubstrateAMD64Feature.java @@ -41,10 +41,10 @@ import com.oracle.svm.core.graal.code.SubstrateVectorArchitectureFactory; import com.oracle.svm.core.graal.meta.SubstrateRegisterConfig.ConfigKind; import com.oracle.svm.core.heap.ReferenceAccess; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.core.common.spi.ForeignCallsProvider; import jdk.graal.compiler.core.common.spi.MetaAccessExtensionProvider; diff --git a/substratevm/src/com.oracle.svm.core.graal.llvm/src/com/oracle/svm/core/graal/llvm/LLVMFeature.java b/substratevm/src/com.oracle.svm.core.graal.llvm/src/com/oracle/svm/core/graal/llvm/LLVMFeature.java index b10147238798..da6c060b05bc 100644 --- a/substratevm/src/com.oracle.svm.core.graal.llvm/src/com/oracle/svm/core/graal/llvm/LLVMFeature.java +++ b/substratevm/src/com.oracle.svm.core.graal.llvm/src/com/oracle/svm/core/graal/llvm/LLVMFeature.java @@ -53,10 +53,10 @@ import com.oracle.svm.core.graal.snippets.NodeLoweringProvider; import com.oracle.svm.core.option.HostedOptionKey; import com.oracle.svm.core.snippets.ExceptionUnwind; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.UserError; import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.c.codegen.CCompilerInvoker; diff --git a/substratevm/src/com.oracle.svm.core.graal.llvm/src/com/oracle/svm/core/graal/llvm/image/LLVMCCompilerInvoker.java b/substratevm/src/com.oracle.svm.core.graal.llvm/src/com/oracle/svm/core/graal/llvm/image/LLVMCCompilerInvoker.java index a9dde2708984..ac0bb7ce024f 100644 --- a/substratevm/src/com.oracle.svm.core.graal.llvm/src/com/oracle/svm/core/graal/llvm/image/LLVMCCompilerInvoker.java +++ b/substratevm/src/com.oracle.svm.core.graal.llvm/src/com/oracle/svm/core/graal/llvm/image/LLVMCCompilerInvoker.java @@ -28,10 +28,10 @@ import java.nio.file.Path; import java.util.Scanner; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.c.codegen.CCompilerInvoker; diff --git a/substratevm/src/com.oracle.svm.core.graal.riscv64/src/com/oracle/svm/core/graal/riscv64/RISCV64ReservedRegisters.java b/substratevm/src/com.oracle.svm.core.graal.riscv64/src/com/oracle/svm/core/graal/riscv64/RISCV64ReservedRegisters.java index e1e1ae6045db..169c4db5c4a5 100644 --- a/substratevm/src/com.oracle.svm.core.graal.riscv64/src/com/oracle/svm/core/graal/riscv64/RISCV64ReservedRegisters.java +++ b/substratevm/src/com.oracle.svm.core.graal.riscv64/src/com/oracle/svm/core/graal/riscv64/RISCV64ReservedRegisters.java @@ -28,10 +28,10 @@ import org.graalvm.nativeimage.Platforms; import com.oracle.svm.core.ReservedRegisters; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.vm.ci.code.Register; import jdk.vm.ci.riscv64.RISCV64; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixLibMSupport.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixLibMSupport.java index b71408855e2a..9420af7e1a0e 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixLibMSupport.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixLibMSupport.java @@ -28,10 +28,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.headers.LibMSupport; import com.oracle.svm.core.posix.headers.PosixLibM; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = AllAccess.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = InitialLayerOnly.class) @AutomaticallyRegisteredImageSingleton(LibMSupport.class) diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixLogHandler.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixLogHandler.java index 37432f1c3bed..210556171259 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixLogHandler.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixLogHandler.java @@ -34,15 +34,15 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.headers.LibC; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.thread.VMThreads; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = Independent.class) @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixStdErrWriter.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixStdErrWriter.java index b925fff1ae11..41a4bb2ea855 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixStdErrWriter.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixStdErrWriter.java @@ -34,10 +34,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.headers.LibC; import com.oracle.svm.core.log.StdErrWriter; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; @AutomaticallyRegisteredImageSingleton(value = StdErrWriter.class) diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixVirtualMemoryProvider.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixVirtualMemoryProvider.java index ea509a091856..31a7bc6e7521 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixVirtualMemoryProvider.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/PosixVirtualMemoryProvider.java @@ -52,15 +52,15 @@ import com.oracle.svm.core.c.CGlobalDataFactory; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.os.VirtualMemoryProvider; import com.oracle.svm.core.posix.headers.Unistd; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.PointerUtils; import com.oracle.svm.core.util.UnsignedUtils; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/aarch64/AArch64DarwinUContextRegisterDumper.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/aarch64/AArch64DarwinUContextRegisterDumper.java index 80f2add9cecb..a0f39f69b32f 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/aarch64/AArch64DarwinUContextRegisterDumper.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/aarch64/AArch64DarwinUContextRegisterDumper.java @@ -37,10 +37,10 @@ import com.oracle.svm.core.log.Log; import com.oracle.svm.core.posix.UContextRegisterDumper; import com.oracle.svm.core.posix.headers.Signal; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/aarch64/AArch64LinuxUContextRegisterDumper.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/aarch64/AArch64LinuxUContextRegisterDumper.java index 2ff5b09e140f..ee9dfac7bdcd 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/aarch64/AArch64LinuxUContextRegisterDumper.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/aarch64/AArch64LinuxUContextRegisterDumper.java @@ -39,10 +39,10 @@ import com.oracle.svm.core.posix.headers.Signal.GregsPointer; import com.oracle.svm.core.posix.headers.Signal.mcontext_linux_aarch64_t; import com.oracle.svm.core.posix.headers.Signal.ucontext_t; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/amd64/AMD64DarwinUContextRegisterDumper.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/amd64/AMD64DarwinUContextRegisterDumper.java index 604f5402b3cb..85b2d2bdf822 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/amd64/AMD64DarwinUContextRegisterDumper.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/amd64/AMD64DarwinUContextRegisterDumper.java @@ -39,10 +39,10 @@ import com.oracle.svm.core.posix.UContextRegisterDumper; import com.oracle.svm.core.posix.headers.Signal; import com.oracle.svm.core.posix.headers.Signal.ucontext_t; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.vm.ci.amd64.AMD64; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/amd64/AMD64LinuxUContextRegisterDumper.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/amd64/AMD64LinuxUContextRegisterDumper.java index f44cd9003a4d..2404176c057e 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/amd64/AMD64LinuxUContextRegisterDumper.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/amd64/AMD64LinuxUContextRegisterDumper.java @@ -39,10 +39,10 @@ import com.oracle.svm.core.posix.headers.Signal.GregEnumLinuxAMD64; import com.oracle.svm.core.posix.headers.Signal.GregsPointer; import com.oracle.svm.core.posix.headers.Signal.ucontext_t; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinImageHeapProvider.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinImageHeapProvider.java index 3e3f9302f63f..5e33f8ed24b3 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinImageHeapProvider.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinImageHeapProvider.java @@ -31,10 +31,10 @@ import com.oracle.svm.core.c.function.CEntryPointErrors; import com.oracle.svm.core.os.AbstractCopyingImageHeapProvider; import com.oracle.svm.core.posix.headers.darwin.DarwinVirtualMemory; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** Creates image heaps on Darwin that are copy-on-write clones of the loaded image heap. */ @SingletonTraits(access = AllAccess.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = Disallowed.class) diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinImageSingletonsFeature.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinImageSingletonsFeature.java index 015390ca3bab..93a59ace3930 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinImageSingletonsFeature.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinImageSingletonsFeature.java @@ -28,12 +28,12 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.os.ImageHeapProvider; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = Disallowed.class) @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinLibCSupport.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinLibCSupport.java index 81eda8930e81..a3a48e42127e 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinLibCSupport.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinLibCSupport.java @@ -29,10 +29,10 @@ import com.oracle.svm.core.headers.LibCSupport; import com.oracle.svm.core.posix.PosixLibCSupport; import com.oracle.svm.core.posix.headers.darwin.DarwinErrno; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = AllAccess.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = Disallowed.class) @AutomaticallyRegisteredImageSingleton(LibCSupport.class) diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinPhysicalMemorySupportImpl.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinPhysicalMemorySupportImpl.java index 4ea4eb154cd5..7d626a8c2120 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinPhysicalMemorySupportImpl.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinPhysicalMemorySupportImpl.java @@ -36,10 +36,10 @@ import com.oracle.svm.core.log.Log; import com.oracle.svm.core.posix.headers.Sysctl; import com.oracle.svm.core.posix.headers.darwin.DarwinSysctl; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinStackOverflowSupport.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinStackOverflowSupport.java index 76b3a0560dda..8b55c6e00a85 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinStackOverflowSupport.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/darwin/DarwinStackOverflowSupport.java @@ -42,10 +42,10 @@ import com.oracle.svm.core.posix.headers.Pthread; import com.oracle.svm.core.posix.headers.darwin.DarwinPthread; import com.oracle.svm.core.stack.StackOverflowCheck; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/DumpLinuxOSInfo.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/DumpLinuxOSInfo.java index b0a9c38169c3..a31d9851960f 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/DumpLinuxOSInfo.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/DumpLinuxOSInfo.java @@ -37,13 +37,13 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.heap.RestrictHeapAccess; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.os.RawFileOperationSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.core.common.NumUtil; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxImageHeapProvider.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxImageHeapProvider.java index b0e19d7d3d22..4cfc0d28c586 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxImageHeapProvider.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxImageHeapProvider.java @@ -33,17 +33,17 @@ import static com.oracle.svm.core.Isolates.IMAGE_HEAP_WRITABLE_END; import static com.oracle.svm.core.Isolates.IMAGE_HEAP_WRITABLE_PATCHED_BEGIN; import static com.oracle.svm.core.Isolates.IMAGE_HEAP_WRITABLE_PATCHED_END; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.CODE_START; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.HEAP_BEGIN; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.HEAP_END; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.HEAP_RELOCATABLE_BEGIN; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.HEAP_RELOCATABLE_END; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.HEAP_WRITEABLE_BEGIN; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.HEAP_WRITEABLE_END; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.HEAP_WRITEABLE_PATCHED_BEGIN; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.HEAP_WRITEABLE_PATCHED_END; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.NEXT_SECTION; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.VARIABLY_SIZED_DATA; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.CODE_START; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.HEAP_BEGIN; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.HEAP_END; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.HEAP_RELOCATABLE_BEGIN; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.HEAP_RELOCATABLE_END; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.HEAP_WRITEABLE_BEGIN; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.HEAP_WRITEABLE_END; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.HEAP_WRITEABLE_PATCHED_BEGIN; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.HEAP_WRITEABLE_PATCHED_END; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.NEXT_SECTION; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.VARIABLY_SIZED_DATA; import static com.oracle.svm.core.posix.linux.ProcFSSupport.findMapping; import static com.oracle.svm.core.util.PointerUtils.roundDown; import static com.oracle.svm.core.util.UnsignedUtils.roundUp; @@ -71,8 +71,8 @@ import com.oracle.svm.core.config.ConfigurationValues; import com.oracle.svm.core.headers.LibC; import com.oracle.svm.core.heap.Heap; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.imagelayer.ImageLayerSection; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.ImageLayerSection; import com.oracle.svm.core.jdk.UninterruptibleUtils; import com.oracle.svm.core.os.AbstractImageHeapProvider; import com.oracle.svm.core.os.VirtualMemoryProvider; @@ -81,15 +81,15 @@ import com.oracle.svm.core.posix.headers.Errno; import com.oracle.svm.core.posix.headers.Fcntl; import com.oracle.svm.core.posix.headers.Unistd; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.PointerUtils; import com.oracle.svm.core.util.UnsignedUtils; import com.oracle.svm.core.util.VMError; -import com.oracle.svm.hosted.imagelayer.ImageLayerSectionFeature; -import com.oracle.svm.hosted.imagelayer.LayeredDispatchTableFeature; +import com.oracle.svm.hosted.layeredimage.ImageLayerSectionFeature; +import com.oracle.svm.hosted.layeredimage.LayeredDispatchTableFeature; import jdk.graal.compiler.nodes.NamedLocationIdentity; import jdk.graal.compiler.nodes.PauseNode; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxImageSingletonsFeature.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxImageSingletonsFeature.java index d301ddd6cd4c..7202fbde22d8 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxImageSingletonsFeature.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxImageSingletonsFeature.java @@ -31,12 +31,12 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.headers.LibCSupport; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.os.ImageHeapProvider; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = Independent.class) @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxLibCSupport.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxLibCSupport.java index cad80d4df78a..10203eac9566 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxLibCSupport.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxLibCSupport.java @@ -29,10 +29,10 @@ import com.oracle.svm.core.c.libc.LibCSpecific; import com.oracle.svm.core.posix.PosixLibCSupport; import com.oracle.svm.core.posix.headers.linux.LinuxErrno; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = AllAccess.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = InitialLayerOnly.class) class LinuxLibCSupport extends PosixLibCSupport { diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxPhysicalMemorySupportImpl.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxPhysicalMemorySupportImpl.java index 4e40c46a59d8..56a63c59f797 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxPhysicalMemorySupportImpl.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxPhysicalMemorySupportImpl.java @@ -39,14 +39,14 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.heap.PhysicalMemory; import com.oracle.svm.core.heap.PhysicalMemory.PhysicalMemorySupport; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.posix.headers.Unistd; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxProcessPropertiesSupport.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxProcessPropertiesSupport.java index 0b005a8d0d00..d7aded0aad1b 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxProcessPropertiesSupport.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxProcessPropertiesSupport.java @@ -28,10 +28,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.posix.PosixProcessPropertiesSupport; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @AutomaticallyRegisteredImageSingleton(ProcessPropertiesSupport.class) @SingletonTraits(access = RuntimeAccessOnly.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = InitialLayerOnly.class) diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxStackOverflowSupport.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxStackOverflowSupport.java index ca6821660403..798f498f5042 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxStackOverflowSupport.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/linux/LinuxStackOverflowSupport.java @@ -33,10 +33,10 @@ import com.oracle.svm.core.posix.PosixUtils; import com.oracle.svm.core.posix.headers.Pthread; import com.oracle.svm.core.stack.StackOverflowCheck; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/riscv64/RISCV64LinuxUContextRegisterDumperFeature.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/riscv64/RISCV64LinuxUContextRegisterDumperFeature.java index 250963daa083..d81cd60f1db8 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/riscv64/RISCV64LinuxUContextRegisterDumperFeature.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/riscv64/RISCV64LinuxUContextRegisterDumperFeature.java @@ -40,10 +40,10 @@ import com.oracle.svm.core.posix.headers.Signal.GregsPointer; import com.oracle.svm.core.posix.headers.Signal.mcontext_linux_riscv64_t; import com.oracle.svm.core.posix.headers.Signal.ucontext_t; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/thread/PosixVMThreads.java b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/thread/PosixVMThreads.java index abbfddca3280..5d3aff2eca21 100644 --- a/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/thread/PosixVMThreads.java +++ b/substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/thread/PosixVMThreads.java @@ -47,10 +47,10 @@ import com.oracle.svm.core.posix.headers.darwin.DarwinPthread; import com.oracle.svm.core.posix.linux.LinuxLibCHelper; import com.oracle.svm.core.thread.VMThreads; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.TimeUtils; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsFeature.java b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsFeature.java index 7e1542c6e619..13819e3db3ac 100644 --- a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsFeature.java +++ b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsFeature.java @@ -30,10 +30,10 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.os.ImageHeapProvider; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Disallowed.class) @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsImageHeapProvider.java b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsImageHeapProvider.java index c387fe1ab7a4..1082d41a3891 100644 --- a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsImageHeapProvider.java +++ b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsImageHeapProvider.java @@ -48,10 +48,10 @@ import com.oracle.svm.core.os.AbstractCopyingImageHeapProvider; import com.oracle.svm.core.os.VirtualMemoryProvider; import com.oracle.svm.core.os.VirtualMemoryProvider.Access; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.windows.headers.FileAPI; import com.oracle.svm.core.windows.headers.LibLoaderAPI; import com.oracle.svm.core.windows.headers.MemoryAPI; diff --git a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsLibCSupport.java b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsLibCSupport.java index 5bcb90796d61..cefc51016832 100644 --- a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsLibCSupport.java +++ b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsLibCSupport.java @@ -33,10 +33,10 @@ import com.oracle.svm.core.Uninterruptible; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.headers.LibCSupport; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.windows.headers.WindowsLibC; @SingletonTraits(access = AllAccess.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = Disallowed.class) diff --git a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsLibMSupport.java b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsLibMSupport.java index 11460051d18c..7c0bd2a851c3 100644 --- a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsLibMSupport.java +++ b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsLibMSupport.java @@ -27,10 +27,10 @@ import com.oracle.svm.core.Uninterruptible; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.headers.LibMSupport; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.windows.headers.WindowsLibC; @SingletonTraits(access = AllAccess.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Disallowed.class) diff --git a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsPhysicalMemorySupportImpl.java b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsPhysicalMemorySupportImpl.java index cc0fadf90e84..081d29c94237 100644 --- a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsPhysicalMemorySupportImpl.java +++ b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsPhysicalMemorySupportImpl.java @@ -33,10 +33,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.graal.stackvalue.UnsafeStackValue; import com.oracle.svm.core.heap.PhysicalMemory.PhysicalMemorySupport; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.windows.headers.SysinfoAPI; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsRegisterDumper.java b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsRegisterDumper.java index 693442a8dc20..1c1d64822f7b 100644 --- a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsRegisterDumper.java +++ b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsRegisterDumper.java @@ -33,10 +33,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.graal.amd64.AMD64ReservedRegisters; import com.oracle.svm.core.log.Log; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.core.windows.headers.ErrHandlingAPI.CONTEXT; diff --git a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsStackOverflowSupport.java b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsStackOverflowSupport.java index e38e331c0ef6..a1b9cd6c3584 100644 --- a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsStackOverflowSupport.java +++ b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsStackOverflowSupport.java @@ -33,10 +33,10 @@ import com.oracle.svm.core.Uninterruptible; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.stack.StackOverflowCheck; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.windows.headers.MemoryAPI; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsStdErrWriter.java b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsStdErrWriter.java index 2fdf47cfcb0a..c29da42de051 100644 --- a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsStdErrWriter.java +++ b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsStdErrWriter.java @@ -32,10 +32,10 @@ import com.oracle.svm.core.Uninterruptible; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.log.StdErrWriter; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.core.windows.headers.FileAPI; import com.oracle.svm.core.windows.headers.WinBase.HANDLE; diff --git a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsVirtualMemoryProvider.java b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsVirtualMemoryProvider.java index 1c5fa50bc405..5ca5628c617a 100644 --- a/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsVirtualMemoryProvider.java +++ b/substratevm/src/com.oracle.svm.core.windows/src/com/oracle/svm/core/windows/WindowsVirtualMemoryProvider.java @@ -46,10 +46,10 @@ import com.oracle.svm.core.c.function.CEntryPointActions; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.os.VirtualMemoryProvider; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.PointerUtils; import com.oracle.svm.core.util.UnsignedUtils; import com.oracle.svm.core.windows.WindowsUtils.CFunctionPointerPointer; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/BuildPhaseProvider.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/BuildPhaseProvider.java index 9f9cee0b8a84..f5a1dde184db 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/BuildPhaseProvider.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/BuildPhaseProvider.java @@ -30,10 +30,10 @@ import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) @Platforms(Platform.HOSTED_ONLY.class) diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/CGlobalDataPointerSingleton.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/CGlobalDataPointerSingleton.java index 119035cf2285..f26aea4fbc86 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/CGlobalDataPointerSingleton.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/CGlobalDataPointerSingleton.java @@ -30,12 +30,12 @@ import com.oracle.svm.core.c.BoxedRelocatedPointer; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.graal.code.CGlobalDataBasePointer; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** * This singleton contains the {@link CGlobalDataBasePointer} of the current layer. In layered diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/IsolateArgumentParser.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/IsolateArgumentParser.java index 34e63d371d6a..bc3790d93e3f 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/IsolateArgumentParser.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/IsolateArgumentParser.java @@ -55,23 +55,23 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.graal.RuntimeCompilation; import com.oracle.svm.core.headers.LibC; -import com.oracle.svm.core.imagelayer.BuildingImageLayerPredicate; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.core.layeredimage.BuildingImageLayerPredicate; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.memory.UntrackedNullableNativeMemory; import com.oracle.svm.core.option.RuntimeOptionKey; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ImageHeapList; import com.oracle.svm.core.util.VMError; @@ -677,7 +677,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LayeredOptionInfo singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, LayeredOptionInfo singleton) { if (ImageLayerBuildingSupport.firstImageBuild()) { writer.writeInt("numOptions", IsolateArgumentParser.getOptionCount()); writer.writeStringList("optionNames", IsolateArgumentParser.getOptions().stream().map(OptionKey::getName).toList()); @@ -698,7 +698,7 @@ public Class static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public LayeredOptionInfo createFromLoader(ImageSingletonLoader loader) { + public LayeredOptionInfo createFromLoader(KeyValueLoader loader) { int numOptions = loader.readInt("numOptions"); var optionNames = Collections.unmodifiableList(loader.readStringList("optionNames")); return new LayeredOptionInfo(numOptions, optionNames); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/IsolateListenerFeature.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/IsolateListenerFeature.java index 580586b15321..2c5bba15028b 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/IsolateListenerFeature.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/IsolateListenerFeature.java @@ -30,11 +30,11 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** * For compatibility with legacy code. diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/JavaMainWrapper.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/JavaMainWrapper.java index 3c112cefd8c4..53c4cace6110 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/JavaMainWrapper.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/JavaMainWrapper.java @@ -55,7 +55,7 @@ import org.graalvm.word.UnsignedWord; import org.graalvm.word.WordBase; -import com.oracle.svm.common.layeredimage.LayeredCompilationBehavior; +import com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior; import com.oracle.svm.core.c.CGlobalData; import com.oracle.svm.core.c.CGlobalDataFactory; import com.oracle.svm.core.c.function.CEntryPointActions; @@ -76,10 +76,10 @@ import com.oracle.svm.core.thread.RecurringCallbackSupport; import com.oracle.svm.core.thread.VMThreads; import com.oracle.svm.core.thread.VMThreads.OSThreadHandle; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.ApplicationLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.ApplicationLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.util.ClassUtil; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/RuntimeAssertionsSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/RuntimeAssertionsSupport.java index dd9202ecdce5..29286aaaea3e 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/RuntimeAssertionsSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/RuntimeAssertionsSupport.java @@ -36,19 +36,19 @@ import org.graalvm.nativeimage.Platforms; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.option.APIOption; import com.oracle.svm.core.option.AccumulatingLocatableMultiOptionValue; import com.oracle.svm.core.option.HostedOptionKey; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.api.replacements.Fold; @@ -230,7 +230,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { var action = new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, RuntimeAssertionsSupport singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, RuntimeAssertionsSupport singleton) { persistAssertionStatus(writer, PACKAGE, singleton.packageAssertionStatus); persistAssertionStatus(writer, CLASS, singleton.classAssertionStatus); writer.writeInt(DEFAULT_ASSERTION_STATUS, singleton.defaultAssertionStatus ? 1 : 0); @@ -238,7 +238,7 @@ public LayeredPersistFlags doPersist(ImageSingletonWriter writer, RuntimeAsserti return LayeredPersistFlags.CALLBACK_ON_REGISTRATION; } - private void persistAssertionStatus(ImageSingletonWriter writer, String type, Map assertionStatus) { + private void persistAssertionStatus(KeyValueWriter writer, String type, Map assertionStatus) { List keys = new ArrayList<>(); List values = new ArrayList<>(); for (var entry : assertionStatus.entrySet()) { @@ -250,20 +250,20 @@ private void persistAssertionStatus(ImageSingletonWriter writer, String type, Ma } @Override - public void onSingletonRegistration(ImageSingletonLoader loader, RuntimeAssertionsSupport singleton) { + public void onSingletonRegistration(KeyValueLoader loader, RuntimeAssertionsSupport singleton) { checkMaps(loadAssertionStatus(loader, PACKAGE), singleton.packageAssertionStatus); checkMaps(loadAssertionStatus(loader, CLASS), singleton.classAssertionStatus); checkBoolean(singleton.defaultAssertionStatus, loader, DEFAULT_ASSERTION_STATUS); checkBoolean(singleton.systemAssertionStatus, loader, SYSTEM_ASSERTION_STATUS); } - private void checkBoolean(boolean currentLayerAssertionStatus, ImageSingletonLoader loader, String assertionStatusKey) { + private void checkBoolean(boolean currentLayerAssertionStatus, KeyValueLoader loader, String assertionStatusKey) { boolean previousLayerStatus = loader.readInt(assertionStatusKey) == 1; VMError.guarantee(currentLayerAssertionStatus == previousLayerStatus, "The assertion status is the previous layer was %s, but the assertion status in the current layer is %s", currentLayerAssertionStatus, previousLayerStatus); } - private Map loadAssertionStatus(ImageSingletonLoader loader, String type) { + private Map loadAssertionStatus(KeyValueLoader loader, String type) { HashMap result = new HashMap<>(); var keys = loader.readStringList(type + ASSERTION_STATUS_KEYS); var values = loader.readBoolList(type + ASSERTION_STATUS_VALUES); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/StaticFieldsSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/StaticFieldsSupport.java index e7c0347f267a..ab12e2fed353 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/StaticFieldsSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/StaticFieldsSupport.java @@ -40,17 +40,17 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.heap.UnknownObjectField; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.meta.SharedField; import com.oracle.svm.core.meta.SharedType; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.core.common.type.StampFactory; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateDiagnostics.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateDiagnostics.java index b71a310d319e..5da456b49cf9 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateDiagnostics.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateDiagnostics.java @@ -73,7 +73,7 @@ import com.oracle.svm.core.heap.RestrictHeapAccess; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.LayoutEncoding; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.UninterruptibleUtils; import com.oracle.svm.core.jdk.UninterruptibleUtils.AtomicWord; import com.oracle.svm.core.locks.VMLockSupport; @@ -94,12 +94,12 @@ import com.oracle.svm.core.threadlocal.FastThreadLocalBytes; import com.oracle.svm.core.threadlocal.FastThreadLocalFactory; import com.oracle.svm.core.threadlocal.VMThreadLocalInfos; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.AbstractImageHeapList; import com.oracle.svm.core.util.CounterSupport; import com.oracle.svm.core.util.ImageHeapList; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateExitHandlerFeature.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateExitHandlerFeature.java index a0e918ddcce4..a1676dd8fc20 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateExitHandlerFeature.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateExitHandlerFeature.java @@ -29,10 +29,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.jdk.RuntimeSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateOptions.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateOptions.java index 5d04981bcfc6..99dd6520150f 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateOptions.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateOptions.java @@ -54,7 +54,6 @@ import com.oracle.svm.core.config.ConfigurationValues; import com.oracle.svm.core.graal.RuntimeCompilation; import com.oracle.svm.core.heap.ReferenceHandler; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.VectorAPIEnabled; import com.oracle.svm.core.option.APIOption; import com.oracle.svm.core.option.APIOptionGroup; @@ -73,13 +72,14 @@ import com.oracle.svm.core.option.SubstrateOptionsParser; import com.oracle.svm.core.pltgot.PLTGOTConfiguration; import com.oracle.svm.core.thread.VMOperationControl; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; import com.oracle.svm.core.util.TimeUtils; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.util.LogUtils; import jdk.graal.compiler.api.replacements.Fold; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateSegfaultHandler.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateSegfaultHandler.java index 8b66b53c68d8..afd67e7da15b 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateSegfaultHandler.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateSegfaultHandler.java @@ -56,19 +56,19 @@ import com.oracle.svm.core.heap.ReferenceAccess; import com.oracle.svm.core.heap.RestrictHeapAccess; import com.oracle.svm.core.heap.UnknownPrimitiveField; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.RuntimeSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.option.RuntimeOptionKey; import com.oracle.svm.core.stack.StackOverflowCheck; import com.oracle.svm.core.thread.VMThreads; import com.oracle.svm.core.thread.VMThreads.SafepointBehavior; import com.oracle.svm.core.threadlocal.VMThreadLocalSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.util.ReflectionUtil; import jdk.graal.compiler.api.replacements.Fold; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateTargetDescription.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateTargetDescription.java index 9a9eb3404aba..e8a22ab96c0a 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateTargetDescription.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/SubstrateTargetDescription.java @@ -31,16 +31,16 @@ import org.graalvm.nativeimage.Platforms; import com.oracle.svm.core.code.RuntimeCodeCache; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.vm.ci.code.Architecture; @@ -76,13 +76,13 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { var action = new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, SubstrateTargetDescription singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, SubstrateTargetDescription singleton) { writer.writeStringList(RUNTIME_CHECKED_CPU_FEATURES, getCPUFeaturesList(singleton)); return LayeredPersistFlags.CALLBACK_ON_REGISTRATION; } @Override - public void onSingletonRegistration(ImageSingletonLoader loader, SubstrateTargetDescription singleton) { + public void onSingletonRegistration(KeyValueLoader loader, SubstrateTargetDescription singleton) { List previousLayerRuntimeCheckedCPUFeatures = loader.readStringList(RUNTIME_CHECKED_CPU_FEATURES); List currentLayerRuntimeCheckedCPUFeatures = getCPUFeaturesList(singleton); VMError.guarantee(previousLayerRuntimeCheckedCPUFeatures.equals(currentLayerRuntimeCheckedCPUFeatures), diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/VMInspectionOptions.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/VMInspectionOptions.java index a939b7783963..656447b51f73 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/VMInspectionOptions.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/VMInspectionOptions.java @@ -36,7 +36,7 @@ import org.graalvm.nativeimage.Platforms; import org.graalvm.nativeimage.impl.InternalPlatform.WINDOWS_BASE; -import com.oracle.svm.common.layeredimage.LayeredCompilationBehavior; +import com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior; import com.oracle.svm.core.heap.dump.HeapDumping; import com.oracle.svm.core.jdk.management.ManagementAgentModule; import com.oracle.svm.core.option.APIOption; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/bootstrap/BootstrapMethodConfiguration.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/bootstrap/BootstrapMethodConfiguration.java index 6bdaf4aa00b6..8da4f002e5c7 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/bootstrap/BootstrapMethodConfiguration.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/bootstrap/BootstrapMethodConfiguration.java @@ -43,10 +43,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.util.ReflectionUtil; import jdk.vm.ci.meta.ResolvedJavaMethod; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/CTypeConversionSupportImpl.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/CTypeConversionSupportImpl.java index 5cca13a0a04e..f95bb10af36a 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/CTypeConversionSupportImpl.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/CTypeConversionSupportImpl.java @@ -44,10 +44,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.handles.PrimitiveArrayView; import com.oracle.svm.core.jdk.DirectByteBufferUtil; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/function/IsolateSupportImpl.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/function/IsolateSupportImpl.java index 8880fe1bb60a..3450cd4341f5 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/function/IsolateSupportImpl.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/function/IsolateSupportImpl.java @@ -45,10 +45,10 @@ import com.oracle.svm.core.option.SubstrateOptionsParser; import com.oracle.svm.core.os.MemoryProtectionProvider; import com.oracle.svm.core.os.MemoryProtectionProvider.UnsupportedDomainException; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/locale/LocaleSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/locale/LocaleSupport.java index 8954f084003c..c56ef0100512 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/locale/LocaleSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/c/locale/LocaleSupport.java @@ -41,16 +41,16 @@ import com.oracle.svm.core.headers.LibC; import com.oracle.svm.core.jdk.SystemPropertiesSupport; import com.oracle.svm.core.jdk.UserSystemProperty; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.BasedOnJDKFile; import com.oracle.svm.core.util.VMError; @@ -219,13 +219,13 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { var action = new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LocaleSupport singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, LocaleSupport singleton) { writer.writeString(LOCALE, getLocaleString(singleton.locale)); return LayeredPersistFlags.CALLBACK_ON_REGISTRATION; } @Override - public void onSingletonRegistration(ImageSingletonLoader loader, LocaleSupport singleton) { + public void onSingletonRegistration(KeyValueLoader loader, LocaleSupport singleton) { String previousLocale = loader.readString(LOCALE); String currentLocale = getLocaleString(singleton.locale); VMError.guarantee(currentLocale.equals(previousLocale), diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/CodeInfoEncoder.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/CodeInfoEncoder.java index c849650fea14..4d60a72f63c8 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/CodeInfoEncoder.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/CodeInfoEncoder.java @@ -63,24 +63,24 @@ import com.oracle.svm.core.heap.SubstrateReferenceMap; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.LayoutEncoding; -import com.oracle.svm.core.imagelayer.BuildingImageLayerPredicate; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.BuildingImageLayerPredicate; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jfr.HasJfrSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.meta.SharedField; import com.oracle.svm.core.meta.SharedMethod; import com.oracle.svm.core.meta.SharedType; import com.oracle.svm.core.nmt.NmtCategory; import com.oracle.svm.core.option.HostedOptionKey; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ByteArrayReader; import com.oracle.svm.core.util.Counter; import com.oracle.svm.core.util.VMError; @@ -936,7 +936,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, MethodTableFirstIDTracker singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, MethodTableFirstIDTracker singleton) { int nextStartingId = singleton.nextStartingId; assert nextStartingId > 0 : nextStartingId; writer.writeInt("startingID", nextStartingId); @@ -953,7 +953,7 @@ public Class static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public MethodTableFirstIDTracker createFromLoader(ImageSingletonLoader loader) { + public MethodTableFirstIDTracker createFromLoader(KeyValueLoader loader) { return new MethodTableFirstIDTracker(loader.readInt("startingID")); } } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/CodeInfoTable.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/CodeInfoTable.java index 745c2925b2a7..f13253c94df2 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/CodeInfoTable.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/CodeInfoTable.java @@ -42,8 +42,8 @@ import com.oracle.svm.core.heap.RestrictHeapAccess; import com.oracle.svm.core.heap.RestrictHeapAccess.Access; import com.oracle.svm.core.heap.VMOperationInfos; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.meta.SharedMethod; import com.oracle.svm.core.option.HostedOptionKey; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/ImageCodeInfo.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/ImageCodeInfo.java index 9da9dadda4e8..8b0181a41db4 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/ImageCodeInfo.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/ImageCodeInfo.java @@ -40,12 +40,12 @@ import com.oracle.svm.core.c.NonmovableObjectArray; import com.oracle.svm.core.heap.UnknownObjectField; import com.oracle.svm.core.heap.UnknownPrimitiveField; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.nmt.NmtCategory; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/ImageCodeInfoStorage.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/ImageCodeInfoStorage.java index f31fc2f208d8..683476841b0a 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/ImageCodeInfoStorage.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/ImageCodeInfoStorage.java @@ -33,12 +33,12 @@ import com.oracle.svm.core.config.ConfigurationValues; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.api.replacements.Fold; import jdk.graal.compiler.core.common.NumUtil; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/RuntimeMetadataDecoderImpl.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/RuntimeMetadataDecoderImpl.java index 93737334c74e..c5128bd014df 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/RuntimeMetadataDecoderImpl.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/RuntimeMetadataDecoderImpl.java @@ -44,16 +44,16 @@ import com.oracle.svm.core.configure.RuntimeConditionSet; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.hub.DynamicHub; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.reflect.RuntimeMetadataDecoder; import com.oracle.svm.core.reflect.target.ReflectionObjectFactory; import com.oracle.svm.core.reflect.target.Target_java_lang_reflect_Executable; import com.oracle.svm.core.snippets.KnownIntrinsics; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ByteArrayReader; import jdk.graal.compiler.core.common.util.UnsafeArrayTypeReader; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/RuntimeMetadataEncoding.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/RuntimeMetadataEncoding.java index d5af917b03d1..ca5314fab9db 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/RuntimeMetadataEncoding.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/code/RuntimeMetadataEncoding.java @@ -31,11 +31,11 @@ import com.oracle.svm.core.code.RuntimeMetadataDecoderImpl.MetadataAccessorImpl; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.heap.UnknownObjectField; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** * Stores the encoding of all runtime metadata. diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/config/ObjectLayout.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/config/ObjectLayout.java index 8a10cb42703e..cda77a6eeeaa 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/config/ObjectLayout.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/config/ObjectLayout.java @@ -36,16 +36,16 @@ import com.oracle.svm.core.SubstrateTargetDescription; import com.oracle.svm.core.Uninterruptible; import com.oracle.svm.core.config.ObjectLayout.LayeredCallbacks; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.api.directives.GraalDirectives; @@ -342,14 +342,14 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { var action = new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, ObjectLayout singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, ObjectLayout singleton) { List currentValues = singleton.getCurrentValues(); writer.writeIntList("priorValues", currentValues); return LayeredPersistFlags.CALLBACK_ON_REGISTRATION; } @Override - public void onSingletonRegistration(ImageSingletonLoader loader, ObjectLayout singleton) { + public void onSingletonRegistration(KeyValueLoader loader, ObjectLayout singleton) { List currentValues = singleton.getCurrentValues(); List priorValues = loader.readIntList("priorValues"); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/container/Container.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/container/Container.java index 9f5bde4f9fc2..42e585ee2a8c 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/container/Container.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/container/Container.java @@ -38,10 +38,10 @@ import com.oracle.svm.core.c.CGlobalData; import com.oracle.svm.core.c.CGlobalDataFactory; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.TimeUtils; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/container/OperatingSystem.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/container/OperatingSystem.java index fda882e4cbf2..b8111bffd0cb 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/container/OperatingSystem.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/container/OperatingSystem.java @@ -35,10 +35,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.heap.PhysicalMemory; import com.oracle.svm.core.jdk.Jvm; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.api.replacements.Fold; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/jdk/JDKIntrinsicsFeature.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/jdk/JDKIntrinsicsFeature.java index ebe1a843e0b1..4a6ef59e6990 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/jdk/JDKIntrinsicsFeature.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/jdk/JDKIntrinsicsFeature.java @@ -32,10 +32,10 @@ import com.oracle.svm.core.graal.meta.RuntimeConfiguration; import com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider; import com.oracle.svm.core.graal.snippets.NodeLoweringProvider; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.graph.Node; import jdk.graal.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration.Plugins; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/meta/KnownOffsets.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/meta/KnownOffsets.java index 17b56b39d2a8..ba972d9bed9f 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/meta/KnownOffsets.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/meta/KnownOffsets.java @@ -35,17 +35,17 @@ import com.oracle.svm.core.BuildPhaseProvider.ReadyForCompilation; import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.heap.UnknownPrimitiveField; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.api.replacements.Fold; @@ -175,7 +175,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, PriorKnownOffsets singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, PriorKnownOffsets singleton) { writer.writeIntList("priorValues", Arrays.stream(singleton.priorValues).boxed().toList()); return LayeredPersistFlags.CREATE; } @@ -190,7 +190,7 @@ public Class static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public PriorKnownOffsets createFromLoader(ImageSingletonLoader loader) { + public PriorKnownOffsets createFromLoader(KeyValueLoader loader) { int[] priorValues = loader.readIntList("priorValues").stream().mapToInt(e -> e).toArray(); return new PriorKnownOffsets(priorValues); } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/nodes/LoadImageSingletonNode.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/nodes/LoadImageSingletonNode.java index b30b813b4b35..57ac1750796c 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/nodes/LoadImageSingletonNode.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/nodes/LoadImageSingletonNode.java @@ -25,7 +25,7 @@ package com.oracle.svm.core.graal.nodes; import com.oracle.svm.core.heap.ReferenceAccess; -import com.oracle.svm.core.imagelayer.LoadImageSingletonFactory.LoadImageSingletonData; +import com.oracle.svm.core.layeredimage.LoadImageSingletonFactory.LoadImageSingletonData; import jdk.graal.compiler.core.common.memory.BarrierType; import jdk.graal.compiler.core.common.memory.MemoryOrderMode; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/CEntryPointSnippets.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/CEntryPointSnippets.java index 620163532d2a..0e06a9a32a9e 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/CEntryPointSnippets.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/CEntryPointSnippets.java @@ -84,11 +84,11 @@ import com.oracle.svm.core.heap.ReferenceHandlerThread; import com.oracle.svm.core.heap.ReferenceInternals; import com.oracle.svm.core.heap.RestrictHeapAccess; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.imagelayer.ImageLayerSection; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.ImageLayerSection; import com.oracle.svm.core.jdk.PlatformNativeLibrarySupport; import com.oracle.svm.core.jdk.RuntimeSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.option.RuntimeOptionParser; import com.oracle.svm.core.os.CommittedMemoryProvider; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/CFunctionSnippets.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/CFunctionSnippets.java index c15426a06f79..880bcf38f593 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/CFunctionSnippets.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/CFunctionSnippets.java @@ -49,10 +49,10 @@ import com.oracle.svm.core.stack.JavaFrameAnchors; import com.oracle.svm.core.thread.ThreadStatusTransition; import com.oracle.svm.core.thread.VMThreads.StatusSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.api.replacements.Snippet; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/DeoptSnippetsFeature.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/DeoptSnippetsFeature.java index f779e8abbf97..0d193e2a9fe2 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/DeoptSnippetsFeature.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/DeoptSnippetsFeature.java @@ -29,10 +29,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.graal.meta.RuntimeConfiguration; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.graph.Node; import jdk.graal.compiler.options.OptionValues; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/ExceptionSnippets.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/ExceptionSnippets.java index 43196858e810..655c0b19440a 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/ExceptionSnippets.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/ExceptionSnippets.java @@ -41,10 +41,10 @@ import com.oracle.svm.core.graal.nodes.ReadExceptionObjectNode; import com.oracle.svm.core.meta.SharedMethod; import com.oracle.svm.core.snippets.ExceptionUnwind; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.api.replacements.Snippet; import jdk.graal.compiler.api.replacements.Snippet.ConstantParameter; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/NonSnippetLowerings.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/NonSnippetLowerings.java index f8d9e7d3c558..14f1b9c9651e 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/NonSnippetLowerings.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/NonSnippetLowerings.java @@ -49,7 +49,7 @@ import com.oracle.svm.core.graal.nodes.LoweredDeadEndNode; import com.oracle.svm.core.graal.nodes.ReadReservedRegisterFixedNode; import com.oracle.svm.core.graal.nodes.ThrowBytecodeExceptionNode; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; +import com.oracle.svm.core.layeredimage.DynamicImageLayerInfo; import com.oracle.svm.core.meta.SharedMethod; import com.oracle.svm.core.meta.SubstrateObjectConstant; import com.oracle.svm.core.nodes.SubstrateIndirectCallTargetNode; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/StackOverflowCheckFeature.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/StackOverflowCheckFeature.java index 3388c695fb13..b9cc49401b3d 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/StackOverflowCheckFeature.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/StackOverflowCheckFeature.java @@ -37,12 +37,12 @@ import com.oracle.svm.core.graal.meta.RuntimeConfiguration; import com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider; import com.oracle.svm.core.heap.RestrictHeapAccessCallees; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.stack.StackOverflowCheck; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.graph.Node; import jdk.graal.compiler.options.OptionValues; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/StackOverflowCheckImpl.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/StackOverflowCheckImpl.java index 55c1fa2c0828..7588ca876e74 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/StackOverflowCheckImpl.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/StackOverflowCheckImpl.java @@ -61,10 +61,10 @@ import com.oracle.svm.core.threadlocal.FastThreadLocalFactory; import com.oracle.svm.core.threadlocal.FastThreadLocalInt; import com.oracle.svm.core.threadlocal.FastThreadLocalWord; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.api.replacements.Snippet; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/amd64/AMD64SnippetsFeature.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/amd64/AMD64SnippetsFeature.java index fd305c6d29b6..26fea54b3c55 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/amd64/AMD64SnippetsFeature.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/snippets/amd64/AMD64SnippetsFeature.java @@ -36,10 +36,10 @@ import com.oracle.svm.core.graal.meta.RuntimeConfiguration; import com.oracle.svm.core.graal.snippets.NodeLoweringProvider; import com.oracle.svm.core.heap.RestrictHeapAccessCallees; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.graph.Node; import jdk.graal.compiler.options.OptionValues; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/stackvalue/StackValueFeature.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/stackvalue/StackValueFeature.java index 61c977192986..4dabe6d59872 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/stackvalue/StackValueFeature.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/graal/stackvalue/StackValueFeature.java @@ -32,10 +32,10 @@ import com.oracle.svm.core.graal.meta.RuntimeConfiguration; import com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider; import com.oracle.svm.core.graal.snippets.NodeLoweringProvider; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.graph.Node; import jdk.graal.compiler.options.OptionValues; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/handles/ObjectHandlesSupportImpl.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/handles/ObjectHandlesSupportImpl.java index f7c488d295df..2385ea0ae95f 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/handles/ObjectHandlesSupportImpl.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/handles/ObjectHandlesSupportImpl.java @@ -28,10 +28,10 @@ import org.graalvm.nativeimage.impl.ObjectHandlesSupport; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /* * Note in some cases object instances are accessed during code initialized at buildtime. * However, when this is done, one must be very careful to ensure analysis sees all changes diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/headers/LibC.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/headers/LibC.java index f36893fb8c28..db0a145962eb 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/headers/LibC.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/headers/LibC.java @@ -35,13 +35,13 @@ import org.graalvm.word.UnsignedWord; import com.oracle.svm.core.Uninterruptible; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; import com.oracle.svm.core.memory.NativeMemory; import com.oracle.svm.core.memory.NullableNativeMemory; import com.oracle.svm.core.memory.UntrackedNullableNativeMemory; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind; -import com.oracle.svm.core.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; import jdk.graal.compiler.api.replacements.Fold; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/AllocationFeature.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/AllocationFeature.java index 4d28452bfec7..88ba9c29b111 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/AllocationFeature.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/AllocationFeature.java @@ -30,10 +30,10 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider; import com.oracle.svm.core.graal.snippets.SubstrateAllocationSnippets; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/GCCause.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/GCCause.java index 5669a8e45f46..4140a7e1f7dd 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/GCCause.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/GCCause.java @@ -36,19 +36,19 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.DuplicatedInNativeCode; import com.oracle.svm.core.util.ImageHeapList; import com.oracle.svm.core.util.VMError; @@ -186,7 +186,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, GCCauseFeature singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, GCCauseFeature singleton) { List gcCauses; if (ImageLayerBuildingSupport.buildingInitialLayer()) { gcCauses = GCCause.getGCCauses().stream().map(gcCause -> { @@ -206,7 +206,7 @@ public LayeredPersistFlags doPersist(ImageSingletonWriter writer, GCCauseFeature } @Override - public void onSingletonRegistration(ImageSingletonLoader loader, GCCauseFeature singleton) { + public void onSingletonRegistration(KeyValueLoader loader, GCCauseFeature singleton) { singleton.registeredGCCauses = Collections.unmodifiableList(loader.readStringList("registeredGCCauses")); } }); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/Pod.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/Pod.java index 494753495ba3..b5554c0e2dcb 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/Pod.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/Pod.java @@ -47,10 +47,10 @@ import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.Hybrid; import com.oracle.svm.core.hub.LayoutEncoding; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ImageHeapMap; import com.oracle.svm.core.util.UnsignedUtils; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/dump/HeapDumpMetadata.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/dump/HeapDumpMetadata.java index d49ada8072fc..6226ed0dfeb5 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/dump/HeapDumpMetadata.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/dump/HeapDumpMetadata.java @@ -45,18 +45,18 @@ import com.oracle.svm.core.heap.UnknownObjectField; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.registry.TypeIDs; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.memory.NullableNativeMemory; import com.oracle.svm.core.metaspace.Metaspace; import com.oracle.svm.core.nmt.NmtCategory; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.coder.ByteStream; import com.oracle.svm.core.util.coder.ByteStreamAccess; import com.oracle.svm.core.util.coder.NativeCoder; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/dump/HeapDumpWriter.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/dump/HeapDumpWriter.java index 1044df9d7df7..f49edb53be8b 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/dump/HeapDumpWriter.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/heap/dump/HeapDumpWriter.java @@ -73,7 +73,7 @@ import com.oracle.svm.core.hub.LayoutEncoding; import com.oracle.svm.core.jdk.UninterruptibleUtils.CharReplacer; import com.oracle.svm.core.jdk.UninterruptibleUtils.ReplaceDotWithSlash; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.metaspace.Metaspace; import com.oracle.svm.core.nmt.NmtCategory; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/ClassForNameSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/ClassForNameSupport.java index 393f555c020b..9f4e4c4d0d71 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/ClassForNameSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/ClassForNameSupport.java @@ -50,22 +50,22 @@ import com.oracle.svm.core.configure.RuntimeConditionSet; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.hub.registry.ClassRegistries; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.metadata.MetadataTracer; import com.oracle.svm.core.option.HostedOptionKey; import com.oracle.svm.core.option.LayerVerifiedOption; import com.oracle.svm.core.reflect.MissingReflectionRegistrationUtils; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ImageHeapMap; import com.oracle.svm.core.util.VMError; @@ -514,7 +514,7 @@ public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, ClassForNameSupport singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, ClassForNameSupport singleton) { List classNames = new ArrayList<>(); List classStates = new ArrayList<>(); Set unsafeNames = new HashSet<>(singleton.previousLayerUnsafe); @@ -562,7 +562,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public ClassForNameSupport createFromLoader(ImageSingletonLoader loader) { + public ClassForNameSupport createFromLoader(KeyValueLoader loader) { List previousLayerClassKeys = loader.readStringList(CLASSES_REGISTERED); List previousLayerClassStates = loader.readBoolList(CLASSES_REGISTERED_STATES); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/ConstantPoolProvider.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/ConstantPoolProvider.java index dcc60fbb6fbe..d70be74c16d5 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/ConstantPoolProvider.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/ConstantPoolProvider.java @@ -28,14 +28,13 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.reflect.target.Target_jdk_internal_reflect_ConstantPool; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** * This singleton provides the {@link Target_jdk_internal_reflect_ConstantPool} for the requested @@ -45,7 +44,7 @@ */ @SingletonTraits(access = RuntimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = MultiLayer.class) public class ConstantPoolProvider { - private final Target_jdk_internal_reflect_ConstantPool constantPool = new Target_jdk_internal_reflect_ConstantPool(DynamicImageLayerInfo.getCurrentLayerNumber()); + private final Target_jdk_internal_reflect_ConstantPool constantPool = new Target_jdk_internal_reflect_ConstantPool(ImageLayerBuildingSupport.getCurrentLayerNumber()); public static ConstantPoolProvider[] singletons() { return MultiLayeredImageSingleton.getAllLayers(ConstantPoolProvider.class); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHub.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHub.java index 45f001530adf..9b37c79273b3 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHub.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHub.java @@ -86,6 +86,7 @@ import java.util.function.BiFunction; import java.util.function.IntFunction; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import org.graalvm.nativeimage.AnnotationAccess; import org.graalvm.nativeimage.ImageSingletons; import org.graalvm.nativeimage.Platform; @@ -123,8 +124,8 @@ import com.oracle.svm.core.heap.UnknownPrimitiveField; import com.oracle.svm.core.hub.RuntimeClassLoading.ClassDefinitionInfo; import com.oracle.svm.core.hub.registry.ClassRegistries; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.DynamicImageLayerInfo; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.ProtectionDomainSupport; import com.oracle.svm.core.jdk.Resources; import com.oracle.svm.core.meta.MethodRef; @@ -1033,9 +1034,8 @@ public void initializeReferenceMapCompressedOffset(long currentLayerRefMapDataSt } /** - * The identifier of the {@linkplain com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport - * layer} that introduces this type which is an index into the array returned by - * {@link com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton#getAllLayers}. + * The identifier of the {@linkplain ImageLayerBuildingSupport layer} that introduces this type + * which is an index into the array returned by {@link MultiLayeredImageSingleton#getAllLayers}. */ @Uninterruptible(reason = "Called from uninterruptible code.", mayBeInlined = true) public int getLayerId() { diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHubCompanion.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHubCompanion.java index 48f427768cce..63959b85c2d3 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHubCompanion.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHubCompanion.java @@ -37,9 +37,9 @@ import com.oracle.svm.core.heap.UnknownObjectField; import com.oracle.svm.core.heap.UnknownPrimitiveField; import com.oracle.svm.core.hub.RuntimeClassLoading.ClassDefinitionInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layered.LayeredFieldValue; -import com.oracle.svm.core.layered.LayeredFieldValueTransformer; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredFieldValue; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredFieldValueTransformer; import com.oracle.svm.core.meta.SharedType; import jdk.internal.vm.annotation.Stable; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHubSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHubSupport.java index 14e433f3921d..19876f4f7a71 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHubSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/DynamicHubSupport.java @@ -39,12 +39,12 @@ import com.oracle.svm.core.heap.InstanceReferenceMapDecoder.InstanceReferenceMap; import com.oracle.svm.core.heap.UnknownObjectField; import com.oracle.svm.core.heap.UnknownPrimitiveField; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = AllAccess.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = MultiLayer.class) public final class DynamicHubSupport { diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/LayeredReflectionMetadataSingleton.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/LayeredReflectionMetadataSingleton.java index 38ee64788725..e88352325132 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/LayeredReflectionMetadataSingleton.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/LayeredReflectionMetadataSingleton.java @@ -35,19 +35,19 @@ import org.graalvm.nativeimage.Platforms; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; -import com.oracle.svm.core.imagelayer.BuildingImageLayerPredicate; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; -import com.oracle.svm.core.traits.BuiltinTraits; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.core.layeredimage.BuildingImageLayerPredicate; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** * This singleton stores the {@link ReflectionMetadata} of each {@link DynamicHub} across layers to @@ -123,7 +123,7 @@ public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LayeredReflectionMetadataSingleton singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, LayeredReflectionMetadataSingleton singleton) { List hubs = new ArrayList<>(); List classFlagsList = new ArrayList<>(); @@ -161,7 +161,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public LayeredReflectionMetadataSingleton createFromLoader(ImageSingletonLoader loader) { + public LayeredReflectionMetadataSingleton createFromLoader(KeyValueLoader loader) { List hubs = loader.readIntList(LAYERED_REFLECTION_METADATA_HUBS); List previousLayerClassFlags = loader.readIntList(LAYERED_REFLECTION_METADATA_CLASS_FLAGS); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/registry/TypeIDs.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/registry/TypeIDs.java index 71e0007a02cd..df2dbcaaa290 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/registry/TypeIDs.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/hub/registry/TypeIDs.java @@ -36,11 +36,11 @@ import com.oracle.svm.core.heap.UnknownPrimitiveField; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.DynamicHubSupport; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.ApplicationLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.ApplicationLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; /** diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/identityhashcode/SubstrateIdentityHashCodeFeature.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/identityhashcode/SubstrateIdentityHashCodeFeature.java index d82758b41c67..fe663cb38d49 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/identityhashcode/SubstrateIdentityHashCodeFeature.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/identityhashcode/SubstrateIdentityHashCodeFeature.java @@ -29,10 +29,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/JavaNetSubstitutions.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/JavaNetSubstitutions.java index 53cc29839c83..2ab3011ec7a4 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/JavaNetSubstitutions.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/JavaNetSubstitutions.java @@ -54,15 +54,15 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.resources.ResourceURLConnection; import com.oracle.svm.core.option.SubstrateOptionsParser; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.util.LogUtils; import com.oracle.svm.util.ReflectionUtil; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/Resources.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/Resources.java index bdc644f9c222..80eccb805370 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/Resources.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/Resources.java @@ -65,7 +65,7 @@ import com.oracle.svm.core.encoder.SymbolEncoder; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.resources.MissingResourceRegistrationUtils; import com.oracle.svm.core.jdk.resources.ResourceExceptionEntry; import com.oracle.svm.core.jdk.resources.ResourceStorageEntry; @@ -73,19 +73,19 @@ import com.oracle.svm.core.jdk.resources.ResourceURLConnection; import com.oracle.svm.core.jdk.resources.CompressedGlobTrie.CompressedGlobTrie; import com.oracle.svm.core.jdk.resources.CompressedGlobTrie.GlobTrieNode; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.metadata.MetadataTracer; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ImageHeapMap; import com.oracle.svm.core.util.VMError; import com.oracle.svm.util.GlobUtils; @@ -755,7 +755,7 @@ public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, Resources singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, Resources singleton) { List resourceKeys = new ArrayList<>(); List resourceRegistrationStates = new ArrayList<>(); Set patterns = new HashSet<>(singleton.previousLayerPatterns); @@ -798,7 +798,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public Resources createFromLoader(ImageSingletonLoader loader) { + public Resources createFromLoader(KeyValueLoader loader) { List previousLayerResourceKeys = loader.readStringList(RESOURCE_KEYS); List previousLayerRegistrationStates = loader.readBoolList(RESOURCE_REGISTRATION_STATES); Map previousLayerResources = new HashMap<>(); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/RuntimeModuleSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/RuntimeModuleSupport.java index 7dd6998ee5c2..18fb2550e417 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/RuntimeModuleSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/RuntimeModuleSupport.java @@ -31,11 +31,11 @@ import com.oracle.svm.core.BuildPhaseProvider.AfterHostedUniverse; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.heap.UnknownObjectField; -import com.oracle.svm.core.imagelayer.LastImageBuildPredicate; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.ApplicationLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.core.layeredimage.LastImageBuildPredicate; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.ApplicationLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** * Runtime module support singleton, containing the runtime boot module layer. The boot module layer diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/SignalHandlerSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/SignalHandlerSupport.java index 807192c024ac..e35f8762d90f 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/SignalHandlerSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/SignalHandlerSupport.java @@ -34,11 +34,11 @@ import com.oracle.svm.core.IsolateListenerSupportFeature; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.api.replacements.Fold; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/StringInternSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/StringInternSupport.java index 41387c2b2789..2df3b4ac2b59 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/StringInternSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/StringInternSupport.java @@ -41,25 +41,25 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.heap.UnknownObjectField; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.util.ReflectionUtil; @AutomaticallyRegisteredImageSingleton @@ -173,7 +173,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, StringInternSupport singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, StringInternSupport singleton) { // This can be switched to use constant ids in the future List newPriorInternedStrings = new ArrayList<>(singleton.internedStringsIdentityMap.size()); @@ -184,7 +184,7 @@ public LayeredPersistFlags doPersist(ImageSingletonWriter writer, StringInternSu } @Override - public void onSingletonRegistration(ImageSingletonLoader loader, StringInternSupport singleton) { + public void onSingletonRegistration(KeyValueLoader loader, StringInternSupport singleton) { singleton.priorLayersInternedStrings = (SetGenerator) (() -> Set.of(loader.readStringList("internedStrings").toArray(new String[0]))); } }); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/SystemInOutErrSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/SystemInOutErrSupport.java index 87c85e0d22f6..f260e11163a9 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/SystemInOutErrSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/SystemInOutErrSupport.java @@ -40,10 +40,10 @@ import org.graalvm.nativeimage.Platforms; import org.graalvm.nativeimage.hosted.Feature; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.api.replacements.Fold; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/Target_java_lang_Module.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/Target_java_lang_Module.java index 5de001a218db..cc9d92c80b09 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/Target_java_lang_Module.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jdk/Target_java_lang_Module.java @@ -32,7 +32,7 @@ import com.oracle.svm.core.annotate.Substitute; import com.oracle.svm.core.annotate.TargetClass; import com.oracle.svm.core.annotate.TargetElement; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.util.BasedOnJDKFile; /** diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jni/access/JNIAccessibleField.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jni/access/JNIAccessibleField.java index 4f6c8962be64..301498531ab0 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jni/access/JNIAccessibleField.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jni/access/JNIAccessibleField.java @@ -36,9 +36,9 @@ import com.oracle.svm.core.StaticFieldsSupport; import com.oracle.svm.core.Uninterruptible; import com.oracle.svm.core.heap.UnknownPrimitiveField; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jni.headers.JNIFieldId; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jni/access/JNIReflectionDictionary.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jni/access/JNIReflectionDictionary.java index 9d54c1f0b254..ebbf51d7da2a 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jni/access/JNIReflectionDictionary.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/jni/access/JNIReflectionDictionary.java @@ -48,15 +48,15 @@ import com.oracle.svm.core.jni.MissingJNIRegistrationUtils; import com.oracle.svm.core.jni.headers.JNIFieldId; import com.oracle.svm.core.jni.headers.JNIMethodId; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.metadata.MetadataTracer; import com.oracle.svm.core.snippets.KnownIntrinsics; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ImageHeapMap; import com.oracle.svm.core.util.Utf8.WrappedAsciiCString; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/BuildingExtensionLayerPredicate.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/BuildingExtensionLayerPredicate.java similarity index 93% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/BuildingExtensionLayerPredicate.java rename to substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/BuildingExtensionLayerPredicate.java index 74135cef07a0..4a18956fddcb 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/BuildingExtensionLayerPredicate.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/BuildingExtensionLayerPredicate.java @@ -22,10 +22,11 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.imagelayer; +package com.oracle.svm.core.layeredimage; import java.util.function.BooleanSupplier; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/BuildingImageLayerPredicate.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/BuildingImageLayerPredicate.java similarity index 93% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/BuildingImageLayerPredicate.java rename to substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/BuildingImageLayerPredicate.java index cd4d5f956a03..0dcd8076de59 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/BuildingImageLayerPredicate.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/BuildingImageLayerPredicate.java @@ -22,8 +22,9 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.imagelayer; +package com.oracle.svm.core.layeredimage; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/BuildingInitialLayerPredicate.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/BuildingInitialLayerPredicate.java similarity index 93% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/BuildingInitialLayerPredicate.java rename to substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/BuildingInitialLayerPredicate.java index 93e08ac1f764..c853321cefdb 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/BuildingInitialLayerPredicate.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/BuildingInitialLayerPredicate.java @@ -22,10 +22,11 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.imagelayer; +package com.oracle.svm.core.layeredimage; import java.util.function.BooleanSupplier; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/DynamicImageLayerInfo.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/DynamicImageLayerInfo.java similarity index 77% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/DynamicImageLayerInfo.java rename to substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/DynamicImageLayerInfo.java index c4ba1828345c..921e65ab8f2b 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/DynamicImageLayerInfo.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/DynamicImageLayerInfo.java @@ -22,30 +22,19 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.imagelayer; +package com.oracle.svm.core.layeredimage; import org.graalvm.nativeimage.ImageSingletons; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; import com.oracle.svm.core.graal.code.CGlobalDataInfo; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; import com.oracle.svm.core.meta.SharedMethod; @Platforms(Platform.HOSTED_ONLY.class) public abstract class DynamicImageLayerInfo { public static final int CREMA_LAYER_ID = Byte.MAX_VALUE; - private final int layerNumber; - public final int nextLayerNumber; - public final int numLayers; - - protected DynamicImageLayerInfo(int layerNumber) { - this.layerNumber = layerNumber; - this.nextLayerNumber = layerNumber + 1; - this.numLayers = nextLayerNumber; - } - public static DynamicImageLayerInfo singleton() { return ImageSingletons.lookup(DynamicImageLayerInfo.class); } @@ -62,14 +51,6 @@ public record PriorLayerMethodLocation(CGlobalDataInfo base, int offset) { */ public abstract PriorLayerMethodLocation getPriorLayerMethodLocation(SharedMethod method); - public static int getCurrentLayerNumber() { - if (!ImageLayerBuildingSupport.buildingImageLayer()) { - return MultiLayeredImageSingleton.UNUSED_LAYER_NUMBER; - } else { - return singleton().layerNumber; - } - } - public abstract int getPreviousMaxTypeId(); public abstract long getPreviousImageHeapEndOffset(); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/ImageLayerSection.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/ImageLayerSection.java similarity index 98% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/ImageLayerSection.java rename to substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/ImageLayerSection.java index dc88c7a85441..df86542441df 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/ImageLayerSection.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/ImageLayerSection.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.imagelayer; +package com.oracle.svm.core.layeredimage; import org.graalvm.nativeimage.ImageSingletons; import org.graalvm.nativeimage.c.type.WordPointer; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/LastImageBuildPredicate.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LastImageBuildPredicate.java similarity index 93% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/LastImageBuildPredicate.java rename to substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LastImageBuildPredicate.java index 7a524e6fa87a..6a7f9da6aac8 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/LastImageBuildPredicate.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LastImageBuildPredicate.java @@ -22,10 +22,11 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.imagelayer; +package com.oracle.svm.core.layeredimage; import java.util.function.BooleanSupplier; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/LayeredImageSingletonSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LayeredImageSingletonSupport.java similarity index 86% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/LayeredImageSingletonSupport.java rename to substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LayeredImageSingletonSupport.java index 2bb23d5402d7..52ef3ca50f60 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/LayeredImageSingletonSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LayeredImageSingletonSupport.java @@ -22,19 +22,20 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layeredimagesingleton; +package com.oracle.svm.core.layeredimage; import java.util.Collection; import java.util.Set; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonAccessFlags; import org.graalvm.nativeimage.ImageSingletons; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InstallationKind; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; import jdk.vm.ci.meta.JavaConstant; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/LoadImageSingletonFactory.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LoadImageSingletonFactory.java similarity index 98% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/LoadImageSingletonFactory.java rename to substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LoadImageSingletonFactory.java index 9f532078cad7..c0156f8aa131 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/LoadImageSingletonFactory.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LoadImageSingletonFactory.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.imagelayer; +package com.oracle.svm.core.layeredimage; import org.graalvm.nativeimage.ImageSingletons; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/LoadedLayeredImageSingletonInfo.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LoadedLayeredImageSingletonInfo.java similarity index 97% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/LoadedLayeredImageSingletonInfo.java rename to substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LoadedLayeredImageSingletonInfo.java index e352a954db11..d4b3d9f7f3eb 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/LoadedLayeredImageSingletonInfo.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimage/LoadedLayeredImageSingletonInfo.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layeredimagesingleton; +package com.oracle.svm.core.layeredimage; import org.graalvm.nativeimage.ImageSingletons; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/log/FunctionPointerLogHandler.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/log/FunctionPointerLogHandler.java index e2594c4f317f..d2022829d0de 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/log/FunctionPointerLogHandler.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/log/FunctionPointerLogHandler.java @@ -39,10 +39,10 @@ import com.oracle.svm.core.c.CGlobalDataFactory; import com.oracle.svm.core.headers.LibC; import com.oracle.svm.core.heap.RestrictHeapAccess; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** * A {@link LogHandler} that can use provided function pointers for each operation. If a function diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/meta/SharedField.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/meta/SharedField.java index 2979fd7f69f8..8dc53a4ca151 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/meta/SharedField.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/meta/SharedField.java @@ -25,7 +25,7 @@ package com.oracle.svm.core.meta; import com.oracle.svm.core.StaticFieldsSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import jdk.vm.ci.meta.JavaKind; import jdk.vm.ci.meta.ResolvedJavaField; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/methodhandles/Target_java_lang_invoke_MethodHandleNatives.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/methodhandles/Target_java_lang_invoke_MethodHandleNatives.java index 9d778fb6709d..5c378d663ad1 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/methodhandles/Target_java_lang_invoke_MethodHandleNatives.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/methodhandles/Target_java_lang_invoke_MethodHandleNatives.java @@ -52,9 +52,9 @@ import com.oracle.svm.core.annotate.TargetElement; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.RuntimeClassLoading; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.invoke.Target_java_lang_invoke_MemberName; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.reflect.UnsafeFieldUtil; import com.oracle.svm.core.reflect.target.Target_java_lang_reflect_Field; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/option/RuntimeOptionParser.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/option/RuntimeOptionParser.java index 4f78af43e726..397d45ec4af2 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/option/RuntimeOptionParser.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/option/RuntimeOptionParser.java @@ -40,11 +40,11 @@ import com.oracle.svm.core.graal.RuntimeCompilation; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.properties.RuntimeSystemPropertyParser; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.Duplicable; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.Duplicable; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ImageHeapMap; import jdk.graal.compiler.api.replacements.Fold; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/AbstractImageHeapProvider.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/AbstractImageHeapProvider.java index 692d74584a65..636765265a12 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/AbstractImageHeapProvider.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/AbstractImageHeapProvider.java @@ -27,9 +27,9 @@ import static com.oracle.svm.core.Isolates.IMAGE_HEAP_BEGIN; import static com.oracle.svm.core.Isolates.IMAGE_HEAP_END; import static com.oracle.svm.core.Uninterruptible.CALLED_FROM_UNINTERRUPTIBLE_CODE; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.HEAP_BEGIN; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.HEAP_END; -import static com.oracle.svm.core.imagelayer.ImageLayerSection.SectionEntries.NEXT_SECTION; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.HEAP_BEGIN; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.HEAP_END; +import static com.oracle.svm.core.layeredimage.ImageLayerSection.SectionEntries.NEXT_SECTION; import static com.oracle.svm.core.util.PointerUtils.roundUp; import org.graalvm.nativeimage.c.type.WordPointer; @@ -43,8 +43,8 @@ import com.oracle.svm.core.c.CGlobalDataFactory; import com.oracle.svm.core.code.DynamicMethodAddressResolutionHeapSupport; import com.oracle.svm.core.heap.Heap; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.imagelayer.ImageLayerSection; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.ImageLayerSection; import com.oracle.svm.core.util.UnsignedUtils; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/CopyingImageHeapProvider.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/CopyingImageHeapProvider.java index c879c1787598..e1939f2e8059 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/CopyingImageHeapProvider.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/CopyingImageHeapProvider.java @@ -30,10 +30,10 @@ import com.oracle.svm.core.Uninterruptible; import com.oracle.svm.core.UnmanagedMemoryUtil; import com.oracle.svm.core.c.function.CEntryPointErrors; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** Platform independent image heap provider that deep-copies the image heap memory. */ @SingletonTraits(access = AllAccess.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = InitialLayerOnly.class) diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/ImageHeapProviderFeature.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/ImageHeapProviderFeature.java index 6cde17710ac3..e114c13a5df5 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/ImageHeapProviderFeature.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/os/ImageHeapProviderFeature.java @@ -28,11 +28,11 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = Independent.class) @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/RuntimeMetadataDecoder.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/RuntimeMetadataDecoder.java index 302920b211de..61493068aee4 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/RuntimeMetadataDecoder.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/RuntimeMetadataDecoder.java @@ -36,7 +36,7 @@ import org.graalvm.nativeimage.ImageSingletons; import com.oracle.svm.core.hub.DynamicHub; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.reflect.target.Target_jdk_internal_reflect_ConstantPool; import jdk.graal.compiler.api.replacements.Fold; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/proxy/DynamicProxySupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/proxy/DynamicProxySupport.java index d2e21a823d64..0a5c8ddbe228 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/proxy/DynamicProxySupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/proxy/DynamicProxySupport.java @@ -41,15 +41,15 @@ import com.oracle.svm.core.configure.RuntimeConditionSet; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.PredefinedClassesSupport; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.proxy.DynamicProxyRegistry; import com.oracle.svm.core.metadata.MetadataTracer; import com.oracle.svm.core.reflect.MissingReflectionRegistrationUtils; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.Duplicable; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.Duplicable; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ImageHeapMap; import com.oracle.svm.core.util.VMError; import com.oracle.svm.util.ClassUtil; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/serialize/SerializationSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/serialize/SerializationSupport.java index 004c03958d93..cffff5a880d0 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/serialize/SerializationSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/serialize/SerializationSupport.java @@ -43,14 +43,14 @@ import com.oracle.svm.core.SubstrateUtil; import com.oracle.svm.core.configure.RuntimeConditionSet; import com.oracle.svm.core.hub.DynamicHub; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.metadata.MetadataTracer; import com.oracle.svm.core.reflect.SubstrateConstructorAccessor; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ImageHeapMap; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_java_lang_reflect_Field.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_java_lang_reflect_Field.java index f206a7424fe2..a369e91f1c8c 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_java_lang_reflect_Field.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_java_lang_reflect_Field.java @@ -44,8 +44,8 @@ import com.oracle.svm.core.annotate.TargetClass; import com.oracle.svm.core.annotate.TargetElement; import com.oracle.svm.core.fieldvaluetransformer.FieldValueTransformerWithAvailability; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.util.VMError; import sun.reflect.generics.repository.FieldRepository; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_java_lang_reflect_Method.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_java_lang_reflect_Method.java index 98e7364f5ead..349a44444a49 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_java_lang_reflect_Method.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_java_lang_reflect_Method.java @@ -47,11 +47,9 @@ import com.oracle.svm.core.annotate.TargetElement; import com.oracle.svm.core.configure.RuntimeConditionSet; import com.oracle.svm.core.hub.ConstantPoolProvider; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; import com.oracle.svm.core.metadata.MetadataTracer; import com.oracle.svm.core.reflect.MissingReflectionRegistrationUtils; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import jdk.internal.reflect.ConstantPool; import sun.reflect.annotation.AnnotationParser; @@ -216,10 +214,7 @@ public Object transform(Object receiver, Object originalValue) { static class LayerIdComputer implements FieldValueTransformer { @Override public Object transform(Object receiver, Object originalValue) { - if (ImageLayerBuildingSupport.buildingImageLayer()) { - return DynamicImageLayerInfo.getCurrentLayerNumber(); - } - return MultiLayeredImageSingleton.UNUSED_LAYER_NUMBER; + return ImageLayerBuildingSupport.getCurrentLayerNumber(); } } } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_jdk_internal_misc_Unsafe_Reflection.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_jdk_internal_misc_Unsafe_Reflection.java index 510ade6d450e..ed9183231596 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_jdk_internal_misc_Unsafe_Reflection.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/target/Target_jdk_internal_misc_Unsafe_Reflection.java @@ -33,8 +33,8 @@ import com.oracle.svm.core.annotate.TargetClass; import com.oracle.svm.core.hub.RuntimeClassLoading; import com.oracle.svm.core.hub.crema.CremaSupport; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.reflect.UnsafeFieldUtil; @TargetClass(className = "jdk.internal.misc.Unsafe") diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/stack/JavaFrameAnchors.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/stack/JavaFrameAnchors.java index 614c60e2c39a..0fba857c9b74 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/stack/JavaFrameAnchors.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/stack/JavaFrameAnchors.java @@ -47,10 +47,10 @@ import com.oracle.svm.core.threadlocal.FastThreadLocalFactory; import com.oracle.svm.core.threadlocal.FastThreadLocalInt; import com.oracle.svm.core.threadlocal.FastThreadLocalWord; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.core.common.spi.ForeignCallDescriptor; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/stack/ThreadStackPrinter.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/stack/ThreadStackPrinter.java index 96212221ce82..699c1c71b48b 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/stack/ThreadStackPrinter.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/stack/ThreadStackPrinter.java @@ -40,7 +40,7 @@ import com.oracle.svm.core.deopt.DeoptimizationSupport; import com.oracle.svm.core.deopt.DeoptimizedFrame; import com.oracle.svm.core.heap.RestrictHeapAccess; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.log.Log; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/thread/JavaThreads.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/thread/JavaThreads.java index 8e8597fe97b1..c01700960236 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/thread/JavaThreads.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/thread/JavaThreads.java @@ -43,7 +43,7 @@ import com.oracle.svm.core.SubstrateUtil; import com.oracle.svm.core.Uninterruptible; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; -import com.oracle.svm.core.imagelayer.LastImageBuildPredicate; +import com.oracle.svm.core.layeredimage.LastImageBuildPredicate; import com.oracle.svm.core.jdk.StackTraceUtils; import com.oracle.svm.core.log.Log; import com.oracle.svm.core.snippets.KnownIntrinsics; @@ -51,10 +51,10 @@ import com.oracle.svm.core.threadlocal.FastThreadLocal; import com.oracle.svm.core.threadlocal.FastThreadLocalFactory; import com.oracle.svm.core.threadlocal.FastThreadLocalLong; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.ApplicationLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.ApplicationLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.util.ReflectionUtil; import jdk.graal.compiler.api.directives.GraalDirectives; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/thread/VMThreads.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/thread/VMThreads.java index b042f5b8b8c2..03f86de7570a 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/thread/VMThreads.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/thread/VMThreads.java @@ -50,7 +50,7 @@ import com.oracle.svm.core.graal.isolated.IsolatedCompileContext; import com.oracle.svm.core.heap.Heap; import com.oracle.svm.core.heap.VMOperationInfos; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.UninterruptibleUtils; import com.oracle.svm.core.jdk.UninterruptibleUtils.AtomicWord; import com.oracle.svm.core.locks.VMCondition; @@ -67,13 +67,13 @@ import com.oracle.svm.core.threadlocal.FastThreadLocalInt; import com.oracle.svm.core.threadlocal.FastThreadLocalWord; import com.oracle.svm.core.threadlocal.VMThreadLocalSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.RuntimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.RuntimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.UnsignedUtils; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/threadlocal/VMThreadLocalInfos.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/threadlocal/VMThreadLocalInfos.java index ae7d76b8924f..d1da24fc3d96 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/threadlocal/VMThreadLocalInfos.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/threadlocal/VMThreadLocalInfos.java @@ -42,10 +42,10 @@ import com.oracle.svm.core.heap.ReferenceAccess; import com.oracle.svm.core.heap.UnknownObjectField; import com.oracle.svm.core.log.Log; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.word.Word; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/threadlocal/VMThreadLocalSupport.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/threadlocal/VMThreadLocalSupport.java index 9cf61f054532..b9c5d3cf0e62 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/threadlocal/VMThreadLocalSupport.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/threadlocal/VMThreadLocalSupport.java @@ -39,10 +39,10 @@ import com.oracle.svm.core.heap.ObjectReferenceVisitor; import com.oracle.svm.core.heap.UnknownObjectField; import com.oracle.svm.core.heap.UnknownPrimitiveField; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InitialLayerOnly; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InitialLayerOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.api.replacements.Fold; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/ImageHeapMap.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/ImageHeapMap.java index 4f99a91def29..5d1977aa9086 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/ImageHeapMap.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/ImageHeapMap.java @@ -36,7 +36,7 @@ import org.graalvm.nativeimage.Platforms; import com.oracle.svm.core.BuildPhaseProvider; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; /** * A thread-safe map implementation that optimizes its run time representation for space efficiency. diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/LayeredHostedImageHeapMapCollector.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/LayeredHostedImageHeapMapCollector.java index 99d80db4b6dd..efb5516142c2 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/LayeredHostedImageHeapMapCollector.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/LayeredHostedImageHeapMapCollector.java @@ -33,17 +33,17 @@ import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ImageHeapMap.HostedImageHeapMap; /** @@ -105,7 +105,7 @@ public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LayeredHostedImageHeapMapCollector singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, LayeredHostedImageHeapMapCollector singleton) { Set reachableMapKeys = new HashSet<>(singleton.currentLayerReachableMapsKeys); if (singleton.previousLayerReachableMapKeys != null) { reachableMapKeys.addAll(singleton.previousLayerReachableMapKeys); @@ -125,7 +125,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public LayeredHostedImageHeapMapCollector createFromLoader(ImageSingletonLoader loader) { + public LayeredHostedImageHeapMapCollector createFromLoader(KeyValueLoader loader) { List previousLayerReachableMapKeys = loader.readStringList("reachableMapKeys"); return new LayeredHostedImageHeapMapCollector(previousLayerReachableMapKeys); } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/LayeredImageHeapMapStore.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/LayeredImageHeapMapStore.java index 5fd12eeb6e7f..da91b4c7d05e 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/LayeredImageHeapMapStore.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/util/LayeredImageHeapMapStore.java @@ -31,12 +31,12 @@ import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; -import com.oracle.svm.core.traits.BuiltinTraits.AllAccess; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.MultiLayer; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.AllAccess; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.MultiLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** * Per layer store for the {@link LayeredImageHeapMap}s. There exists one diff --git a/substratevm/src/com.oracle.svm.graal/src/com/oracle/svm/graal/meta/SubstrateField.java b/substratevm/src/com.oracle.svm.graal/src/com/oracle/svm/graal/meta/SubstrateField.java index cee39345fcad..0ff12049baf5 100644 --- a/substratevm/src/com.oracle.svm.graal/src/com/oracle/svm/graal/meta/SubstrateField.java +++ b/substratevm/src/com.oracle.svm.graal/src/com/oracle/svm/graal/meta/SubstrateField.java @@ -37,7 +37,7 @@ import com.oracle.svm.core.BuildPhaseProvider.AfterCompilation; import com.oracle.svm.core.heap.UnknownObjectField; import com.oracle.svm.core.heap.UnknownPrimitiveField; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.meta.DirectSubstrateObjectConstant; import com.oracle.svm.core.meta.SharedField; import com.oracle.svm.core.util.HostedStringDeduplication; diff --git a/substratevm/src/com.oracle.svm.graal/src/com/oracle/svm/graal/stubs/AMD64StubForeignCallsFeature.java b/substratevm/src/com.oracle.svm.graal/src/com/oracle/svm/graal/stubs/AMD64StubForeignCallsFeature.java index 26309fa10c87..b7d60e238798 100644 --- a/substratevm/src/com.oracle.svm.graal/src/com/oracle/svm/graal/stubs/AMD64StubForeignCallsFeature.java +++ b/substratevm/src/com.oracle.svm.graal/src/com/oracle/svm/graal/stubs/AMD64StubForeignCallsFeature.java @@ -36,10 +36,10 @@ import org.graalvm.nativeimage.Platforms; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.replacements.StringLatin1InflateNode; import jdk.graal.compiler.replacements.StringUTF16CompressNode; diff --git a/substratevm/src/com.oracle.svm.hosted/resources/SharedLayerSnapshotCapnProtoSchema.capnp b/substratevm/src/com.oracle.svm.hosted/resources/SharedLayerSnapshotCapnProtoSchema.capnp index 89a310804c4b..02bfad893c41 100644 --- a/substratevm/src/com.oracle.svm.hosted/resources/SharedLayerSnapshotCapnProtoSchema.capnp +++ b/substratevm/src/com.oracle.svm.hosted/resources/SharedLayerSnapshotCapnProtoSchema.capnp @@ -4,7 +4,7 @@ @0x9eb32e19f86ee174; using Java = import "/capnp/java.capnp"; -$Java.package("com.oracle.svm.hosted.imagelayer"); +$Java.package("com.oracle.svm.hosted.layeredimage"); $Java.outerClassname("SharedLayerSnapshotCapnProtoSchemaHolder"); using TypeId = Int32; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ApplicationModules.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ApplicationModules.java index 30ff07198def..07dac505160d 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ApplicationModules.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ApplicationModules.java @@ -26,6 +26,7 @@ import java.util.Set; +import com.oracle.svm.hosted.jdk.ModuleLayerFeature; import jdk.graal.compiler.api.replacements.Fold; import org.graalvm.nativeimage.ImageSingletons; import org.graalvm.nativeimage.hosted.Feature; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/BuildArtifactsExporter.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/BuildArtifactsExporter.java index a7df2250dc79..2778fb92c986 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/BuildArtifactsExporter.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/BuildArtifactsExporter.java @@ -40,10 +40,10 @@ import com.oracle.svm.core.BuildArtifacts.ArtifactType; import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.option.HostedOptionValues; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.util.LogUtils; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassLoaderFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassLoaderFeature.java index 181bc1a65bad..3b2375f59f19 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassLoaderFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassLoaderFeature.java @@ -35,9 +35,9 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.fieldvaluetransformer.FieldValueTransformerWithAvailability; import com.oracle.svm.core.fieldvaluetransformer.ObjectToConstantFieldValueTransformer; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.util.VMError; -import com.oracle.svm.hosted.imagelayer.CrossLayerConstantRegistry; +import com.oracle.svm.sdk.staging.hosted.layeredimage.CrossLayerConstantRegistry; import com.oracle.svm.hosted.jdk.HostedClassLoaderPackageManagement; import com.oracle.svm.util.ReflectionUtil; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassLoaderSupportImpl.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassLoaderSupportImpl.java index 7f4f86d84bda..fe2c27338219 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassLoaderSupportImpl.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassLoaderSupportImpl.java @@ -57,10 +57,10 @@ import org.graalvm.nativeimage.dynamicaccess.AccessCondition; import com.oracle.svm.core.ClassLoaderSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ClasspathUtils; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassNewInstanceFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassNewInstanceFeature.java index dce7061f7e07..03b4a9d99276 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassNewInstanceFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassNewInstanceFeature.java @@ -26,11 +26,11 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.BeforeAnalysisAccessImpl; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = SingleLayer.class, layeredInstallationKind = Independent.class) diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassPredefinitionFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassPredefinitionFeature.java index 2de13c5ab1ef..b164ecdb3784 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassPredefinitionFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ClassPredefinitionFeature.java @@ -64,11 +64,11 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.hub.PredefinedClassesSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.PartiallyLayerAware; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.PartiallyLayerAware; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl.AfterRegistrationAccessImpl; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/CodeBreakdownProvider.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/CodeBreakdownProvider.java index f981b8e48cb1..2e1f65389f37 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/CodeBreakdownProvider.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/CodeBreakdownProvider.java @@ -30,10 +30,10 @@ import org.graalvm.nativeimage.ImageSingletons; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.code.CompileQueue.CompileTask; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/DeadlockWatchdog.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/DeadlockWatchdog.java index 34896ec0241b..f853634741cc 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/DeadlockWatchdog.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/DeadlockWatchdog.java @@ -37,10 +37,10 @@ import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.option.SubstrateOptionsParser; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ExitStatus; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/DumpIsolateCreationOnlyOptionsFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/DumpIsolateCreationOnlyOptionsFeature.java index 26ea7535ce88..1c62f21e65ee 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/DumpIsolateCreationOnlyOptionsFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/DumpIsolateCreationOnlyOptionsFeature.java @@ -39,10 +39,10 @@ import com.oracle.svm.core.option.HostedOptionKey; import com.oracle.svm.core.option.RuntimeOptionKey; import com.oracle.svm.core.option.RuntimeOptionParser; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.options.Option; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ExtensionLayerImageFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ExtensionLayerImageFeature.java index cfd57523e3f0..684bf78b7acb 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ExtensionLayerImageFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ExtensionLayerImageFeature.java @@ -28,7 +28,7 @@ import com.oracle.svm.core.code.ImageCodeInfo; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.hosted.FeatureImpl.BeforeAnalysisAccessImpl; import com.oracle.svm.util.ReflectionUtil; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/FallbackFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/FallbackFeature.java index 65b2a981b902..fd14ec1cbf54 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/FallbackFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/FallbackFeature.java @@ -45,10 +45,10 @@ import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl.AfterAnalysisAccessImpl; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/FeatureImpl.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/FeatureImpl.java index 71197f0e2419..1fa5b27172d5 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/FeatureImpl.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/FeatureImpl.java @@ -198,7 +198,7 @@ public Pair getMainEntryPoint() { } } - abstract static class AnalysisAccessBase extends FeatureAccessImpl { + public abstract static class AnalysisAccessBase extends FeatureAccessImpl { protected final Inflation bb; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HeapBreakdownProvider.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HeapBreakdownProvider.java index a9b38b500f4c..1bccedbd5c4c 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HeapBreakdownProvider.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HeapBreakdownProvider.java @@ -41,13 +41,13 @@ import com.oracle.svm.core.config.ObjectLayout; import com.oracle.svm.core.configure.ConditionalRuntimeValue; import com.oracle.svm.core.image.ImageHeapPartition; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.Resources; import com.oracle.svm.core.jdk.resources.ResourceStorageEntryBase; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl.BeforeImageWriteAccessImpl; import com.oracle.svm.hosted.ProgressReporter.LinkStrategy; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedConfiguration.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedConfiguration.java index c52bcce85ea8..29090c608815 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedConfiguration.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedConfiguration.java @@ -56,10 +56,10 @@ import com.oracle.svm.core.graal.meta.RuntimeConfiguration; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.monitor.MultiThreadedMonitorSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.analysis.Inflation; import com.oracle.svm.hosted.analysis.flow.SVMMethodTypeFlowBuilder; import com.oracle.svm.hosted.classinitialization.ClassInitializationSupport; @@ -72,10 +72,10 @@ import com.oracle.svm.hosted.image.NativeImageCodeCacheFactory; import com.oracle.svm.hosted.image.NativeImageHeap; import com.oracle.svm.hosted.image.ObjectFileFactory; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerLoader; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerSnapshotUtil; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerWriter; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerLoader; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerSnapshotUtil; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerWriter; import com.oracle.svm.hosted.meta.HostedField; import com.oracle.svm.hosted.meta.HostedInstanceClass; import com.oracle.svm.hosted.meta.HostedMetaAccess; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedStaticFieldSupportImpl.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedStaticFieldSupportImpl.java index 7b6a526cbcd2..330655a8e4c3 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedStaticFieldSupportImpl.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedStaticFieldSupportImpl.java @@ -29,16 +29,15 @@ import com.oracle.graal.pointsto.meta.AnalysisField; import com.oracle.svm.core.StaticFieldsSupport; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.meta.SharedField; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.LayeredStaticFieldSupport; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.LayeredStaticFieldSupport; import com.oracle.svm.hosted.meta.HostedField; import jdk.graal.compiler.nodes.ConstantNode; @@ -121,7 +120,7 @@ public boolean isPrimitive(ResolvedJavaField field) { private int getCurrentLayerNumber() { if (currentLayerCache == MultiLayeredImageSingleton.LAYER_NUM_UNINSTALLED) { - int newLayerNumber = DynamicImageLayerInfo.getCurrentLayerNumber(); + int newLayerNumber = ImageLayerBuildingSupport.getCurrentLayerNumber(); assert newLayerNumber != MultiLayeredImageSingleton.LAYER_NUM_UNINSTALLED; currentLayerCache = newLayerNumber; } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ImageSingletonsSupportImpl.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ImageSingletonsSupportImpl.java index f694df379c4b..6c958b6573fd 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ImageSingletonsSupportImpl.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ImageSingletonsSupportImpl.java @@ -45,26 +45,27 @@ import org.graalvm.nativeimage.impl.ImageSingletonsSupport; import com.oracle.svm.core.SubstrateUtil; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.layeredimagesingleton.LoadedLayeredImageSingletonInfo; -import com.oracle.svm.core.layeredimagesingleton.SingletonAccessFlags; -import com.oracle.svm.core.traits.SingletonAccess; -import com.oracle.svm.core.traits.SingletonAccessSupplier; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKindSupplier; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; -import com.oracle.svm.core.traits.SingletonTraitsSupplier; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.core.layeredimage.LoadedLayeredImageSingletonInfo; import com.oracle.svm.core.util.ConcurrentIdentityHashMap; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerSingletonLoader; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerSingletonLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonAccess; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonAccessFlags; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonAccessSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKindSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitsSupplier; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.util.ReflectionUtil; import jdk.graal.compiler.debug.Assertions; @@ -307,7 +308,7 @@ public static void install(HostedManagement vmConfig, HostedImageLayerBuildingSu * Create a placeholder ImageLayerBuilding support to indicate this is not a layered * build. */ - singletonDuringImageBuild.addSingleton(ImageLayerBuildingSupport.class, new ImageLayerBuildingSupport(false, false, false) { + singletonDuringImageBuild.addSingleton(ImageLayerBuildingSupport.class, new ImageLayerBuildingSupport(false, false, false, MultiLayeredImageSingleton.UNUSED_LAYER_NUMBER) { }); } if (support != null && support.getSingletonLoader() != null) { diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/Log4ShellFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/Log4ShellFeature.java index 2c064ada29d7..b4e7fd0717fb 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/Log4ShellFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/Log4ShellFeature.java @@ -44,10 +44,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.util.LogUtils; /** diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageClassLoaderSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageClassLoaderSupport.java index b255031a1d39..67f0bd4482ac 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageClassLoaderSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageClassLoaderSupport.java @@ -105,7 +105,7 @@ import com.oracle.svm.hosted.driver.IncludeOptionsSupport; import com.oracle.svm.hosted.driver.LayerOptionsSupport; import com.oracle.svm.hosted.image.PreserveOptionsSupport; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; import com.oracle.svm.hosted.option.HostedOptionParser; import com.oracle.svm.util.ClassUtil; import com.oracle.svm.util.LogUtils; @@ -493,7 +493,7 @@ private static ModuleFinder createUpgradeAndSystemModuleFinder() { /** * Creates a finder from a module path specified by the {@code prop} system property. */ - static ModuleFinder finderFor(String prop) { + public static ModuleFinder finderFor(String prop) { String s = System.getProperty(prop); if (s == null || s.isEmpty()) { return null; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageGenerator.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageGenerator.java index 70ad0262474c..48fa4fe59967 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageGenerator.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageGenerator.java @@ -157,9 +157,9 @@ import com.oracle.svm.core.heap.RestrictHeapAccessCallees; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.image.ImageHeapLayouter; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.ServiceCatalogSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; import com.oracle.svm.core.meta.MethodOffset; import com.oracle.svm.core.meta.MethodPointer; import com.oracle.svm.core.option.HostedOptionValues; @@ -229,11 +229,11 @@ import com.oracle.svm.hosted.image.NativeImageCodeCacheFactory; import com.oracle.svm.hosted.image.NativeImageHeap; import com.oracle.svm.hosted.image.PreserveOptionsSupport; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.LoadImageSingletonFeature; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerLoader; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerSnapshotUtil; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerWriter; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.LoadImageSingletonFeature; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerLoader; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerSnapshotUtil; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerWriter; import com.oracle.svm.hosted.jdk.localization.LocalizationFeature; import com.oracle.svm.hosted.meta.HostedConstantReflectionProvider; import com.oracle.svm.hosted.meta.HostedMetaAccess; @@ -516,6 +516,7 @@ public void run(Map entryPoints, var tempDirectoryOptionValue = NativeImageOptions.TempDirectory.getValue(hostedOptionValues).lastValue().orElse(null); try (TemporaryBuildDirectoryProviderImpl tempDirectoryProvider = new TemporaryBuildDirectoryProviderImpl(tempDirectoryOptionValue)) { var builderTempDir = tempDirectoryProvider.getTemporaryBuildDirectory(); + // this one HostedImageLayerBuildingSupport imageLayerSupport = HostedImageLayerBuildingSupport.initialize(hostedOptionValues, loader, builderTempDir); ImageSingletonsSupportImpl.HostedManagement.install(new ImageSingletonsSupportImpl.HostedManagement(imageLayerSupport, loader.classLoaderSupport.annotationExtractor), imageLayerSupport); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageGeneratorRunner.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageGeneratorRunner.java index 6a11e13c2b99..7bdfc0008aa5 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageGeneratorRunner.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/NativeImageGeneratorRunner.java @@ -73,7 +73,7 @@ import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.code.CEntryPointData; import com.oracle.svm.hosted.image.AbstractImage.NativeImageKind; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; import com.oracle.svm.hosted.option.HostedOptionParser; import com.oracle.svm.util.ClassUtil; import com.oracle.svm.util.LogUtils; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/OpenTypeWorldFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/OpenTypeWorldFeature.java index 8ad94f2c3e92..658512ab760a 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/OpenTypeWorldFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/OpenTypeWorldFeature.java @@ -45,20 +45,20 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.DynamicHubSupport; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.meta.SharedMethod; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerLoader; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerLoader; import com.oracle.svm.hosted.meta.HostedMethod; import com.oracle.svm.hosted.meta.HostedType; import com.oracle.svm.hosted.meta.HostedUniverse; @@ -361,7 +361,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks<>() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, Object singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, Object singleton) { writer.writeInt("maxTypeID", DynamicHubSupport.currentLayer().getMaxTypeId()); writer.writeInt("maxInterfaceID", DynamicHubSupport.currentLayer().getMaxInterfaceId()); @@ -378,7 +378,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public LayerTypeCheckInfo createFromLoader(ImageSingletonLoader loader) { + public LayerTypeCheckInfo createFromLoader(KeyValueLoader loader) { return new LayerTypeCheckInfo(loader.readInt("maxTypeID"), loader.readInt("maxInterfaceID")); } } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ProgressReporter.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ProgressReporter.java index 51f7e63c9a57..278559e688e8 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ProgressReporter.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ProgressReporter.java @@ -86,10 +86,10 @@ import com.oracle.svm.core.option.OptionUtils; import com.oracle.svm.core.option.RuntimeOptionKey; import com.oracle.svm.core.option.SubstrateOptionsParser; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ByteFormattingUtil; import com.oracle.svm.core.util.TimeUtils; import com.oracle.svm.core.util.UserError; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ProgressReporterFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ProgressReporterFeature.java index 33e777384cf1..5fe9e42d314e 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ProgressReporterFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ProgressReporterFeature.java @@ -40,10 +40,10 @@ import com.oracle.svm.core.jdk.resources.NativeImageResourceFileSystem; import com.oracle.svm.core.jni.access.JNIAccessibleClass; import com.oracle.svm.core.jni.access.JNIReflectionDictionary; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.AfterCompilationAccessImpl; import com.oracle.svm.hosted.FeatureImpl.BeforeImageWriteAccessImpl; import com.oracle.svm.hosted.ProgressReporter.DirectPrinter; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ResourcesFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ResourcesFeature.java index e8560f4d68e2..36afca399964 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ResourcesFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ResourcesFeature.java @@ -94,7 +94,7 @@ import com.oracle.svm.hosted.config.ConfigurationParserUtils; import com.oracle.svm.hosted.dynamicaccessinference.DynamicAccessInferenceLog; import com.oracle.svm.hosted.dynamicaccessinference.StrictDynamicAccessInferenceFeature; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; import com.oracle.svm.hosted.jdk.localization.LocalizationFeature; import com.oracle.svm.hosted.reflect.NativeImageConditionResolver; import com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SVMHost.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SVMHost.java index 3f10e6944950..16d4358b4b5e 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SVMHost.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SVMHost.java @@ -95,8 +95,7 @@ import com.oracle.svm.core.hub.Hybrid; import com.oracle.svm.core.hub.PredefinedClassesSupport; import com.oracle.svm.core.hub.ReferenceType; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.interpreter.InterpreterSupport; import com.oracle.svm.core.jdk.InternalVMMethod; import com.oracle.svm.core.jdk.LambdaFormHiddenMethod; @@ -120,10 +119,10 @@ import com.oracle.svm.hosted.dynamicaccessinference.StrictDynamicAccessInferenceFeature; import com.oracle.svm.hosted.fieldfolding.StaticFinalFieldFoldingPhase; import com.oracle.svm.hosted.heap.PodSupport; -import com.oracle.svm.hosted.imagelayer.HostedDynamicLayerInfo; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.LayeredStaticFieldSupport; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerLoader; +import com.oracle.svm.hosted.layeredimage.HostedDynamicLayerInfo; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.LayeredStaticFieldSupport; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerLoader; import com.oracle.svm.hosted.meta.HostedField; import com.oracle.svm.hosted.meta.HostedType; import com.oracle.svm.hosted.meta.HostedUniverse; @@ -275,7 +274,7 @@ public SVMHost(OptionValues options, ImageClassLoader loader, ClassInitializatio } else { parsingSupport = null; } - layerId = buildingImageLayer ? DynamicImageLayerInfo.getCurrentLayerNumber() : 0; + layerId = buildingImageLayer ? ImageLayerBuildingSupport.getCurrentLayerNumber() : 0; if (buildingSharedLayer) { initializeSharedLayerExcludedFields(); } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SubstrateDiagnosticFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SubstrateDiagnosticFeature.java index 6ff6085f8296..e2aedc7c6479 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SubstrateDiagnosticFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SubstrateDiagnosticFeature.java @@ -35,11 +35,11 @@ import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.BeforeAnalysisAccessImpl; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SubstrateStrengthenGraphs.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SubstrateStrengthenGraphs.java index b56820986fec..a903541d96c9 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SubstrateStrengthenGraphs.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SubstrateStrengthenGraphs.java @@ -42,7 +42,7 @@ import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.analysis.Inflation; import com.oracle.svm.hosted.code.SubstrateCompilationDirectives; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; import com.oracle.svm.hosted.meta.HostedType; import com.oracle.svm.hosted.phases.AnalyzeJavaHomeAccessPhase; import com.oracle.svm.hosted.phases.DynamicAccessDetectionPhase; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SystemInOutErrFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SystemInOutErrFeature.java index 0a027349d7b4..013feb43c3ad 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SystemInOutErrFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SystemInOutErrFeature.java @@ -35,13 +35,13 @@ import com.oracle.svm.core.annotate.RecomputeFieldValue; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.SystemInOutErrSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; -import com.oracle.svm.hosted.imagelayer.CrossLayerConstantRegistry; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.layeredimage.CrossLayerConstantRegistry; import jdk.internal.access.SharedSecrets; import jdk.vm.ci.meta.JavaConstant; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/TemporaryBuildDirectoryProviderImpl.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/TemporaryBuildDirectoryProviderImpl.java index 9272c84ac3b0..322537540676 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/TemporaryBuildDirectoryProviderImpl.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/TemporaryBuildDirectoryProviderImpl.java @@ -32,10 +32,10 @@ import java.nio.file.attribute.BasicFileAttributes; import com.oracle.svm.core.c.libc.TemporaryBuildDirectoryProvider; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.TimeUtils; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/VMFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/VMFeature.java index 9311098db651..b90b26947262 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/VMFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/VMFeature.java @@ -42,7 +42,7 @@ import com.oracle.svm.core.c.libc.LibCBase; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.hosted.c.CGlobalDataFeature; import com.oracle.svm.hosted.c.NativeLibraries; import com.oracle.svm.hosted.c.codegen.CCompilerInvoker; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ameta/FieldValueInterceptionSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ameta/FieldValueInterceptionSupport.java index 9053c573aa30..0089ceb8e59a 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ameta/FieldValueInterceptionSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ameta/FieldValueInterceptionSupport.java @@ -52,13 +52,13 @@ import com.oracle.svm.core.fieldvaluetransformer.FieldValueTransformerWithReceiverBasedAvailability; import com.oracle.svm.core.heap.UnknownObjectField; import com.oracle.svm.core.heap.UnknownPrimitiveField; -import com.oracle.svm.core.layered.LayeredFieldValue; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredFieldValue; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.analysis.FieldValueComputer; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.LayeredFieldValueTransformerImpl; -import com.oracle.svm.hosted.imagelayer.LayeredFieldValueTransformerSupport; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.LayeredFieldValueTransformerImpl; +import com.oracle.svm.hosted.layeredimage.LayeredFieldValueTransformerSupport; import com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor; import com.oracle.svm.hosted.substitute.AutomaticUnsafeTransformationSupport; import com.oracle.svm.hosted.substitute.FieldValueTransformation; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ameta/HostedDynamicHubFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ameta/HostedDynamicHubFeature.java index 40d104e079a0..3f7d437c847b 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ameta/HostedDynamicHubFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ameta/HostedDynamicHubFeature.java @@ -28,10 +28,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.hub.DynamicHub; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.DuringSetupAccessImpl; import com.oracle.svm.hosted.SVMHost; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/analysis/DynamicHubInitializer.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/analysis/DynamicHubInitializer.java index 2918526fa0c0..41da6b96d643 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/analysis/DynamicHubInitializer.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/analysis/DynamicHubInitializer.java @@ -60,8 +60,8 @@ import com.oracle.svm.hosted.SVMHost; import com.oracle.svm.hosted.classinitialization.ClassInitializationSupport; import com.oracle.svm.hosted.classinitialization.SimulateClassInitializerSupport; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerLoader; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerLoader; import com.oracle.svm.hosted.jdk.HostedClassLoaderPackageManagement; import com.oracle.svm.util.ReflectionUtil; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/analysis/NativeImagePointsToAnalysis.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/analysis/NativeImagePointsToAnalysis.java index ded8a988e8df..e79485d6981c 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/analysis/NativeImagePointsToAnalysis.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/analysis/NativeImagePointsToAnalysis.java @@ -42,13 +42,13 @@ import com.oracle.graal.pointsto.meta.AnalysisUniverse; import com.oracle.graal.pointsto.meta.PointsToAnalysisMethod; import com.oracle.graal.pointsto.util.TimerCollection; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.hosted.HostedConfiguration; import com.oracle.svm.hosted.SVMHost; import com.oracle.svm.hosted.ameta.CustomTypeFieldHandler; import com.oracle.svm.hosted.classinitialization.ClassInitializationSupport; import com.oracle.svm.hosted.code.IncompatibleClassChangeFallbackMethod; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; import com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor; import com.oracle.svm.util.LogUtils; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/annotation/AnnotationFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/annotation/AnnotationFeature.java index 38312ef5fe89..fe8acc02a0cd 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/annotation/AnnotationFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/annotation/AnnotationFeature.java @@ -35,10 +35,10 @@ import com.oracle.graal.pointsto.ObjectScanner; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.DuringSetupAccessImpl; import com.oracle.svm.hosted.reflect.ReflectionDataBuilder; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/annotation/SubstrateAnnotationExtractor.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/annotation/SubstrateAnnotationExtractor.java index f548db0f26c1..78ce711d687b 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/annotation/SubstrateAnnotationExtractor.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/annotation/SubstrateAnnotationExtractor.java @@ -48,10 +48,10 @@ import com.oracle.graal.pointsto.infrastructure.WrappedElement; import com.oracle.graal.pointsto.meta.BaseLayerElement; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.util.GraalAccess; import com.oracle.svm.util.OriginalClassProvider; import com.oracle.svm.util.ReflectionUtil; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/AppLayerCGlobalTracking.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/AppLayerCGlobalTracking.java index 388286edae91..618f4e179993 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/AppLayerCGlobalTracking.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/AppLayerCGlobalTracking.java @@ -38,9 +38,9 @@ import com.oracle.svm.core.c.CGlobalDataImpl; import com.oracle.svm.core.graal.code.CGlobalDataInfo; import com.oracle.svm.core.util.VMError; -import com.oracle.svm.hosted.imagelayer.CodeLocation; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder; +import com.oracle.svm.hosted.layeredimage.CodeLocation; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder; /** * Discovers and links CGlobals that were also installed in a prior layer. This is needed to ensure diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/CConstantValueSupportImpl.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/CConstantValueSupportImpl.java index 3cb28c01587f..a808fc1fbfdd 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/CConstantValueSupportImpl.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/CConstantValueSupportImpl.java @@ -34,10 +34,10 @@ import org.graalvm.nativeimage.impl.CConstantValueSupport; import com.oracle.svm.core.c.enums.CEnumRuntimeData; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.c.info.ConstantInfo; import com.oracle.svm.hosted.c.info.EnumInfo; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/CGlobalDataFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/CGlobalDataFeature.java index c944a53ceaab..b989d383f615 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/CGlobalDataFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/CGlobalDataFeature.java @@ -53,17 +53,16 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.graal.code.CGlobalDataInfo; import com.oracle.svm.core.graal.nodes.CGlobalDataLoadAddressNode; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.image.RelocatableBuffer; -import com.oracle.svm.hosted.imagelayer.CodeLocation; -import com.oracle.svm.hosted.imagelayer.LoadImageSingletonFeature; +import com.oracle.svm.hosted.layeredimage.CodeLocation; +import com.oracle.svm.hosted.layeredimage.LoadImageSingletonFeature; import com.oracle.svm.hosted.meta.HostedSnippetReflectionProvider; import com.oracle.svm.util.ReflectionUtil; @@ -323,7 +322,7 @@ CGlobalDataInfo createCGlobalDataInfo(CGlobalDataImpl data, boolean definedAs "We currently do not allow CGlobalData code locations to be in a hidden class. Please adapt the code accordingly. Location: %s", data.codeLocation); } - CGlobalDataInfo cGlobalDataInfo = new CGlobalDataInfo(data, definedAsGlobalInPriorLayer, DynamicImageLayerInfo.getCurrentLayerNumber()); + CGlobalDataInfo cGlobalDataInfo = new CGlobalDataInfo(data, definedAsGlobalInPriorLayer, ImageLayerBuildingSupport.getCurrentLayerNumber()); if (data.nonConstant) { nonConstantRegistry.registerNonConstantSymbol(cGlobalDataInfo); } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/InitialLayerCGlobalTracking.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/InitialLayerCGlobalTracking.java index 557541054531..f2e832906718 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/InitialLayerCGlobalTracking.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/InitialLayerCGlobalTracking.java @@ -34,8 +34,8 @@ import com.oracle.svm.core.c.CGlobalDataImpl; import com.oracle.svm.core.graal.code.CGlobalDataInfo; import com.oracle.svm.core.util.VMError; -import com.oracle.svm.hosted.imagelayer.CodeLocation; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder; +import com.oracle.svm.hosted.layeredimage.CodeLocation; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder; /** * Tracks CGlobals installed in the initial layer. This information is used to ensure CGlobals refer diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/codegen/CCompilerInvoker.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/codegen/CCompilerInvoker.java index 3cbbb4644583..726c20f76614 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/codegen/CCompilerInvoker.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/codegen/CCompilerInvoker.java @@ -49,11 +49,11 @@ import com.oracle.svm.core.SubstrateTargetDescription; import com.oracle.svm.core.SubstrateUtil; import com.oracle.svm.core.option.SubstrateOptionsParser; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Disallowed; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Disallowed; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.InterruptImageBuilding; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/libc/HostedLibCFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/libc/HostedLibCFeature.java index 3f8f44f283b0..4147bc6367b7 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/libc/HostedLibCFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/libc/HostedLibCFeature.java @@ -33,10 +33,10 @@ import com.oracle.svm.core.c.libc.LibCBase; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.UserError; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/classinitialization/ClassInitializationSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/classinitialization/ClassInitializationSupport.java index e7b7006e88b3..d588ad3c00d1 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/classinitialization/ClassInitializationSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/classinitialization/ClassInitializationSupport.java @@ -55,7 +55,7 @@ import com.oracle.graal.pointsto.meta.BaseLayerType; import com.oracle.graal.pointsto.reports.ReportUtils; import com.oracle.svm.core.SubstrateOptions; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.option.AccumulatingLocatableMultiOptionValue; import com.oracle.svm.core.option.SubstrateOptionsParser; import com.oracle.svm.core.util.UserError; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/classinitialization/SimulateClassInitializerSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/classinitialization/SimulateClassInitializerSupport.java index 9bd7552842ad..b72addb394d8 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/classinitialization/SimulateClassInitializerSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/classinitialization/SimulateClassInitializerSupport.java @@ -51,8 +51,8 @@ import com.oracle.svm.hosted.ameta.AnalysisConstantReflectionProvider; import com.oracle.svm.hosted.ameta.FieldValueInterceptionSupport; import com.oracle.svm.hosted.fieldfolding.MarkStaticFinalFieldInitializedNode; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerLoader; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerLoader; import com.oracle.svm.hosted.meta.HostedConstantReflectionProvider; import com.oracle.svm.hosted.meta.HostedType; import com.oracle.svm.hosted.phases.InlineBeforeAnalysisGraphDecoderImpl; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/CodeLayoutOptimizationFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/CodeLayoutOptimizationFeature.java index de607deda231..cee81648ed99 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/CodeLayoutOptimizationFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/CodeLayoutOptimizationFeature.java @@ -30,10 +30,10 @@ import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/CompileQueue.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/CompileQueue.java index eb362d695998..49c4a573cb3a 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/CompileQueue.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/CompileQueue.java @@ -62,7 +62,7 @@ import com.oracle.svm.core.graal.phases.OptimizeExceptionPathsPhase; import com.oracle.svm.core.heap.RestrictHeapAccess; import com.oracle.svm.core.heap.RestrictHeapAccessCallees; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.meta.MethodRef; import com.oracle.svm.core.meta.SubstrateMethodOffsetConstant; import com.oracle.svm.core.meta.SubstrateMethodPointerConstant; @@ -74,9 +74,9 @@ import com.oracle.svm.hosted.NativeImageOptions; import com.oracle.svm.hosted.ProgressReporter; import com.oracle.svm.hosted.diagnostic.HostedHeapDumpFeature; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.LayeredDispatchTableFeature; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerLoader; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.LayeredDispatchTableFeature; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerLoader; import com.oracle.svm.hosted.meta.HostedMethod; import com.oracle.svm.hosted.meta.HostedUniverse; import com.oracle.svm.hosted.phases.ImageBuildStatisticsCounterPhase; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/FactoryMethodSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/FactoryMethodSupport.java index 84f1a09d9ffb..66c8fae18342 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/FactoryMethodSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/FactoryMethodSupport.java @@ -38,7 +38,7 @@ import com.oracle.svm.core.code.FactoryThrowMethodHolder; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.util.VMError; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; import com.oracle.svm.hosted.phases.HostedGraphKit; import jdk.graal.compiler.nodes.java.AbstractNewObjectNode; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/RuntimeMetadataEncoderImpl.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/RuntimeMetadataEncoderImpl.java index 8b9327265da0..a7a71d68c9cd 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/RuntimeMetadataEncoderImpl.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/RuntimeMetadataEncoderImpl.java @@ -88,26 +88,26 @@ import com.oracle.svm.core.encoder.SymbolEncoder; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.hub.DynamicHub; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.meta.SharedField; import com.oracle.svm.core.reflect.target.EncodedRuntimeMetadataSupplier; import com.oracle.svm.core.reflect.target.Target_jdk_internal_reflect_ConstantPool; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ByteArrayReader; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.image.NativeImageCodeCache.ReflectionMetadataEncoderFactory; import com.oracle.svm.hosted.image.NativeImageCodeCache.RuntimeMetadataEncoder; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerSingletonLoader; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerWriter; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerSingletonLoader; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerWriter; import com.oracle.svm.hosted.meta.HostedField; import com.oracle.svm.hosted.meta.HostedMetaAccess; import com.oracle.svm.hosted.meta.HostedMethod; @@ -1359,8 +1359,8 @@ public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LayeredRuntimeMetadataSingleton singleton) { - SVMImageLayerWriter.ImageSingletonWriterImpl writerImpl = (SVMImageLayerWriter.ImageSingletonWriterImpl) writer; + public LayeredPersistFlags doPersist(KeyValueWriter writer, LayeredRuntimeMetadataSingleton singleton) { + SVMImageLayerWriter.KeyValueWriterImpl writerImpl = (SVMImageLayerWriter.KeyValueWriterImpl) writer; var builder = writerImpl.getSnapshotBuilder().getLayeredRuntimeMetadataSingleton(); persistRegisteredElements(singleton.registeredMethods, singleton.previousLayerRegisteredMethods, builder::initMethods, builder::initMethodStates); @@ -1387,8 +1387,8 @@ private static Map getPreviousRegisteredElements(PrimitiveList } @Override - public LayeredRuntimeMetadataSingleton createFromLoader(ImageSingletonLoader loader) { - SVMImageLayerSingletonLoader.ImageSingletonLoaderImpl loaderImpl = (SVMImageLayerSingletonLoader.ImageSingletonLoaderImpl) loader; + public LayeredRuntimeMetadataSingleton createFromLoader(KeyValueLoader loader) { + SVMImageLayerSingletonLoader.KeyValueLoaderImpl loaderImpl = (SVMImageLayerSingletonLoader.KeyValueLoaderImpl) loader; var reader = loaderImpl.getSnapshotReader().getLayeredRuntimeMetadataSingleton(); Map previousLayerRegisteredMethods = getPreviousRegisteredElements(reader.getMethods(), reader.getMethodStates()); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/SubstrateLIRBackendFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/SubstrateLIRBackendFeature.java index e1fe8b1a26db..2c2cf3a0068a 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/SubstrateLIRBackendFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/SubstrateLIRBackendFeature.java @@ -34,10 +34,10 @@ import com.oracle.svm.core.graal.meta.RuntimeConfiguration; import com.oracle.svm.core.graal.snippets.ExceptionSnippets; import com.oracle.svm.core.graal.snippets.NodeLoweringProvider; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.HostedConfiguration; import com.oracle.svm.hosted.image.NativeImageCodeCacheFactory; import com.oracle.svm.hosted.image.ObjectFileFactory; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/amd64/AMD64HostedPatcherFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/amd64/AMD64HostedPatcherFeature.java index de484b72408d..8507ea172e60 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/amd64/AMD64HostedPatcherFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/amd64/AMD64HostedPatcherFeature.java @@ -38,10 +38,10 @@ import com.oracle.svm.core.graal.code.PatchConsumerFactory; import com.oracle.svm.core.meta.MethodPointer; import com.oracle.svm.core.meta.SubstrateMethodPointerConstant; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.code.HostedImageHeapConstantPatch; import com.oracle.svm.hosted.code.HostedPatcher; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/amd64/AMD64HostedTrampolineSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/amd64/AMD64HostedTrampolineSupport.java index 712b64a93531..4184259305dc 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/amd64/AMD64HostedTrampolineSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/code/amd64/AMD64HostedTrampolineSupport.java @@ -32,10 +32,10 @@ import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.graal.code.PatchConsumerFactory; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.code.HostedDirectCallTrampolineSupport; import com.oracle.svm.hosted.code.HostedPatcher; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/driver/LayerOptionsSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/driver/LayerOptionsSupport.java index 5cb8e5427a61..1905478413c5 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/driver/LayerOptionsSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/driver/LayerOptionsSupport.java @@ -30,7 +30,7 @@ import com.oracle.svm.core.SubstrateUtil; import com.oracle.svm.core.util.VMError; -import com.oracle.svm.hosted.imagelayer.LayerArchiveSupport; +import com.oracle.svm.hosted.layeredimage.LayerArchiveSupport; public class LayerOptionsSupport extends IncludeOptionsSupport { diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/fieldfolding/StaticFinalFieldFoldingFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/fieldfolding/StaticFinalFieldFoldingFeature.java index 231c6ea62c4f..b086b1e149bd 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/fieldfolding/StaticFinalFieldFoldingFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/fieldfolding/StaticFinalFieldFoldingFeature.java @@ -44,31 +44,31 @@ import com.oracle.svm.core.classinitialization.EnsureClassInitializedNode; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.option.HostedOptionKey; import com.oracle.svm.core.option.SubstrateOptionsParser; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl.BeforeAnalysisAccessImpl; import com.oracle.svm.hosted.FeatureImpl.DuringSetupAccessImpl; import com.oracle.svm.hosted.ameta.FieldValueInterceptionSupport; import com.oracle.svm.hosted.code.SubstrateCompilationDirectives; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerLoader; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerLoader.JavaConstantSupplier; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerSingletonLoader; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerWriter; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerLoader; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerLoader.JavaConstantSupplier; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerSingletonLoader; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerWriter; import com.oracle.svm.hosted.meta.HostedField; import jdk.graal.compiler.graph.Node; @@ -495,8 +495,8 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, StaticFinalFieldFoldingSingleton singleton) { - var snapshotWriter = ((SVMImageLayerWriter.ImageSingletonWriterImpl) writer).getSnapshotBuilder(); + public LayeredPersistFlags doPersist(KeyValueWriter writer, StaticFinalFieldFoldingSingleton singleton) { + var snapshotWriter = ((SVMImageLayerWriter.KeyValueWriterImpl) writer).getSnapshotBuilder(); SVMImageLayerWriter imageLayerWriter = HostedImageLayerBuildingSupport.singleton().getWriter(); List fields = new ArrayList<>(); @@ -539,8 +539,8 @@ public Class static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public StaticFinalFieldFoldingSingleton createFromLoader(ImageSingletonLoader loader) { - var snapshotReader = ((SVMImageLayerSingletonLoader.ImageSingletonLoaderImpl) loader).getSnapshotReader(); + public StaticFinalFieldFoldingSingleton createFromLoader(KeyValueLoader loader) { + var snapshotReader = ((SVMImageLayerSingletonLoader.KeyValueLoaderImpl) loader).getSnapshotReader(); var staticFinalFieldFoldingSingleton = snapshotReader.getStaticFinalFieldFoldingSingleton(); var fields = staticFinalFieldFoldingSingleton.getFields(); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/HeapDumpFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/HeapDumpFeature.java index cba89b328710..1d91f8b6a817 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/HeapDumpFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/HeapDumpFeature.java @@ -50,22 +50,22 @@ import com.oracle.svm.core.heap.dump.HeapDumpSupportImpl; import com.oracle.svm.core.heap.dump.HeapDumpWriter; import com.oracle.svm.core.heap.dump.HeapDumping; -import com.oracle.svm.core.imagelayer.BuildingImageLayerPredicate; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.BuildingImageLayerPredicate; +import com.oracle.svm.core.layeredimage.DynamicImageLayerInfo; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.RuntimeSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.meta.SharedField; import com.oracle.svm.core.meta.SharedType; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ByteArrayReader; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl.AfterCompilationAccessImpl; @@ -316,7 +316,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LayeredHeapDumpEncodedTypesTracker singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, LayeredHeapDumpEncodedTypesTracker singleton) { writer.writeStringList("encodedFieldNames", singleton.encodedFieldNames); return LayeredPersistFlags.CREATE; } @@ -331,7 +331,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public LayeredHeapDumpEncodedTypesTracker createFromLoader(ImageSingletonLoader loader) { + public LayeredHeapDumpEncodedTypesTracker createFromLoader(KeyValueLoader loader) { List encodedFieldNames = Collections.unmodifiableList(loader.readStringList("encodedFieldNames")); return new LayeredHeapDumpEncodedTypesTracker(encodedFieldNames); } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/ImageHeapCollectionFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/ImageHeapCollectionFeature.java index 49febaf7be67..1e68bd733aa1 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/ImageHeapCollectionFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/ImageHeapCollectionFeature.java @@ -33,7 +33,7 @@ import com.oracle.svm.core.BuildPhaseProvider; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.util.ImageHeapList.HostedImageHeapList; import com.oracle.svm.core.util.ImageHeapMap.HostedImageHeapMap; import com.oracle.svm.core.util.LayeredHostedImageHeapMapCollector; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/ImageHeapObjectAdder.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/ImageHeapObjectAdder.java index ef2fb081c5ca..50b5422f78c1 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/ImageHeapObjectAdder.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/ImageHeapObjectAdder.java @@ -31,10 +31,10 @@ import org.graalvm.nativeimage.ImageSingletons; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.image.NativeImageHeap; import com.oracle.svm.hosted.meta.HostedUniverse; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/PodSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/PodSupport.java index 6e1093260c8d..9833456f30dd 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/PodSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/PodSupport.java @@ -63,7 +63,7 @@ import com.oracle.svm.core.heap.Pod.RuntimeSupport.PodSpec; import com.oracle.svm.core.hub.Hybrid; import com.oracle.svm.core.hub.LayoutEncoding; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.util.UserError; import com.oracle.svm.hosted.FeatureImpl.BeforeAnalysisAccessImpl; import com.oracle.svm.hosted.FeatureImpl.DuringSetupAccessImpl; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/SVMImageHeapVerifier.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/SVMImageHeapVerifier.java index 1245b7d399aa..d6cbe5f0a8bd 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/SVMImageHeapVerifier.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/heap/SVMImageHeapVerifier.java @@ -38,7 +38,7 @@ import com.oracle.graal.pointsto.infrastructure.UniverseMetaAccess; import com.oracle.graal.pointsto.meta.AnalysisType; import com.oracle.graal.pointsto.util.CompletionExecutor; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.hosted.SVMHost; import jdk.vm.ci.meta.Constant; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/CCLinkerInvocation.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/CCLinkerInvocation.java index 6c9602e7938e..de2ebe2e3ae2 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/CCLinkerInvocation.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/CCLinkerInvocation.java @@ -48,7 +48,7 @@ import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.c.libc.BionicLibC; import com.oracle.svm.core.c.libc.LibCBase; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.option.AccumulatingLocatableMultiOptionValue; import com.oracle.svm.core.option.HostedOptionKey; import com.oracle.svm.core.util.UserError; @@ -57,7 +57,7 @@ import com.oracle.svm.hosted.c.NativeLibraries; import com.oracle.svm.hosted.c.codegen.CCompilerInvoker; import com.oracle.svm.hosted.c.libc.HostedLibCBase; -import com.oracle.svm.hosted.imagelayer.HostedDynamicLayerInfo; +import com.oracle.svm.hosted.layeredimage.HostedDynamicLayerInfo; import com.oracle.svm.hosted.jdk.JNIRegistrationSupport; import jdk.graal.compiler.options.Option; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/MethodPointerRelocationProvider.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/MethodPointerRelocationProvider.java index ab1325d94799..cfc5db167c20 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/MethodPointerRelocationProvider.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/MethodPointerRelocationProvider.java @@ -29,11 +29,11 @@ import com.oracle.objectfile.ObjectFile; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.meta.MethodOffset; import com.oracle.svm.core.meta.MethodPointer; import com.oracle.svm.core.util.VMError; -import com.oracle.svm.hosted.imagelayer.LayeredDispatchTableFeature; +import com.oracle.svm.hosted.layeredimage.LayeredDispatchTableFeature; import com.oracle.svm.hosted.meta.HostedMethod; public class MethodPointerRelocationProvider { diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImage.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImage.java index 9eed7db7f65d..2a0d3cfdc2fc 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImage.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImage.java @@ -94,8 +94,7 @@ import com.oracle.svm.core.image.ImageHeapLayoutInfo; import com.oracle.svm.core.image.ImageHeapLayouter.ImageHeapLayouterCallback; import com.oracle.svm.core.image.ImageHeapPartition; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jni.access.JNIAccessibleMethod; import com.oracle.svm.core.meta.MethodOffset; import com.oracle.svm.core.meta.MethodPointer; @@ -117,10 +116,10 @@ import com.oracle.svm.hosted.code.CEntryPointData; import com.oracle.svm.hosted.image.NativeImageHeap.ObjectInfo; import com.oracle.svm.hosted.image.RelocatableBuffer.Info; -import com.oracle.svm.hosted.imagelayer.HostedDynamicLayerInfo; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.ImageLayerSectionFeature; -import com.oracle.svm.hosted.imagelayer.LayeredDispatchTableFeature; +import com.oracle.svm.hosted.layeredimage.HostedDynamicLayerInfo; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.ImageLayerSectionFeature; +import com.oracle.svm.hosted.layeredimage.LayeredDispatchTableFeature; import com.oracle.svm.hosted.meta.HostedMetaAccess; import com.oracle.svm.hosted.meta.HostedMethod; import com.oracle.svm.hosted.meta.HostedType; @@ -417,7 +416,7 @@ private void defineRelocationForSymbol(String name, long position) { public static String getTextSectionStartSymbol() { if (ImageLayerBuildingSupport.buildingImageLayer()) { - return String.format("__svm_layer_code_section_%s", DynamicImageLayerInfo.getCurrentLayerNumber()); + return String.format("__svm_layer_code_section_%s", ImageLayerBuildingSupport.getCurrentLayerNumber()); } else { return "__svm_code_section"; } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageDebugInfoProvider.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageDebugInfoProvider.java index a22be9d623bd..703b2672e762 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageDebugInfoProvider.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageDebugInfoProvider.java @@ -70,8 +70,7 @@ import com.oracle.svm.core.debug.SubstrateDebugTypeEntrySupport; import com.oracle.svm.core.graal.meta.RuntimeConfiguration; import com.oracle.svm.core.image.ImageHeapPartition; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.meta.SharedMethod; import com.oracle.svm.core.meta.SharedType; import com.oracle.svm.core.util.VMError; @@ -147,7 +146,7 @@ class NativeImageDebugInfoProvider extends SharedDebugInfoProvider { .collect(Collectors.toSet()); buildingImageLayer = ImageLayerBuildingSupport.buildingImageLayer(); - layerNumber = DynamicImageLayerInfo.getCurrentLayerNumber(); + layerNumber = ImageLayerBuildingSupport.getCurrentLayerNumber(); } @SuppressWarnings("unused") diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageHeap.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageHeap.java index 604fdfaaf67b..4feae096ab11 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageHeap.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageHeap.java @@ -76,7 +76,7 @@ import com.oracle.svm.core.image.ImageHeapLayouter; import com.oracle.svm.core.image.ImageHeapObject; import com.oracle.svm.core.image.ImageHeapPartition; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.StringInternSupport; import com.oracle.svm.core.meta.MethodOffset; import com.oracle.svm.core.option.HostedOptionValues; @@ -88,8 +88,8 @@ import com.oracle.svm.hosted.config.DynamicHubLayout; import com.oracle.svm.hosted.config.HybridLayout; import com.oracle.svm.hosted.heap.ImageHeapObjectAdder; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.LayeredFieldValueTransformerSupport; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.LayeredFieldValueTransformerSupport; import com.oracle.svm.hosted.meta.HostedArrayClass; import com.oracle.svm.hosted.meta.HostedClass; import com.oracle.svm.hosted.meta.HostedConstantReflectionProvider; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageHeapWriter.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageHeapWriter.java index c76754c5f44c..7007eb79f747 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageHeapWriter.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/NativeImageHeapWriter.java @@ -52,7 +52,7 @@ import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.identityhashcode.IdentityHashCodeSupport; import com.oracle.svm.core.image.ImageHeapLayoutInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.meta.MethodOffset; import com.oracle.svm.core.meta.MethodPointer; import com.oracle.svm.core.meta.MethodRef; @@ -63,9 +63,9 @@ import com.oracle.svm.hosted.config.DynamicHubLayout; import com.oracle.svm.hosted.config.HybridLayout; import com.oracle.svm.hosted.image.NativeImageHeap.ObjectInfo; -import com.oracle.svm.hosted.imagelayer.CrossLayerConstantRegistryFeature; -import com.oracle.svm.hosted.imagelayer.LayeredFieldValueTransformerSupport; -import com.oracle.svm.hosted.imagelayer.LayeredImageHooks; +import com.oracle.svm.hosted.layeredimage.CrossLayerConstantRegistryFeature; +import com.oracle.svm.hosted.layeredimage.LayeredFieldValueTransformerSupport; +import com.oracle.svm.hosted.layeredimage.LayeredImageHooks; import com.oracle.svm.hosted.meta.HostedClass; import com.oracle.svm.hosted.meta.HostedConstantReflectionProvider; import com.oracle.svm.hosted.meta.HostedField; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/ForkJoinPoolFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/ForkJoinPoolFeature.java index 26f42d2941bd..49996eda01b7 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/ForkJoinPoolFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/ForkJoinPoolFeature.java @@ -29,14 +29,14 @@ import com.oracle.graal.pointsto.heap.ImageHeapConstant; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.DeferredCommonPool; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl; -import com.oracle.svm.hosted.imagelayer.CrossLayerConstantRegistry; +import com.oracle.svm.sdk.staging.hosted.layeredimage.CrossLayerConstantRegistry; import jdk.vm.ci.meta.JavaConstant; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/HostedClassLoaderPackageManagement.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/HostedClassLoaderPackageManagement.java index ba7845c60ea1..22874cb000f9 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/HostedClassLoaderPackageManagement.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/HostedClassLoaderPackageManagement.java @@ -39,24 +39,24 @@ import com.oracle.graal.pointsto.heap.ImageHeapConstant; import com.oracle.svm.core.BuildPhaseProvider; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.imagelayer.PriorLayerMarker; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.PriorLayerMarker; import com.oracle.svm.core.jdk.Target_java_lang_ClassLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.reflect.serialize.SerializationSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.BootLoaderSupport; import com.oracle.svm.hosted.ClassLoaderFeature; -import com.oracle.svm.hosted.imagelayer.CrossLayerConstantRegistry; +import com.oracle.svm.sdk.staging.hosted.layeredimage.CrossLayerConstantRegistry; import com.oracle.svm.util.ReflectionUtil; import jdk.graal.compiler.debug.Assertions; @@ -316,7 +316,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, HostedClassLoaderPackageManagement singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, HostedClassLoaderPackageManagement singleton) { return singleton.preparePersist(writer); } @@ -341,7 +341,7 @@ private List collectPackageNames(ClassLoader classLoader, Set pr } } - private LayeredPersistFlags preparePersist(ImageSingletonWriter writer) { + private LayeredPersistFlags preparePersist(KeyValueWriter writer) { writer.writeStringList(APP_KEY, collectPackageNames(appClassLoader, priorAppPackageNames)); writer.writeStringList(PLATFORM_KEY, collectPackageNames(platformClassLoader, priorPlatformPackageNames)); writer.writeStringList(BOOT_KEY, collectPackageNames(bootClassLoader, priorBootPackageNames)); @@ -351,7 +351,7 @@ private LayeredPersistFlags preparePersist(ImageSingletonWriter writer) { static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public HostedClassLoaderPackageManagement createFromLoader(ImageSingletonLoader loader) { + public HostedClassLoaderPackageManagement createFromLoader(KeyValueLoader loader) { var appSet = loader.readStringList(APP_KEY).stream().collect(Collectors.toUnmodifiableSet()); var platformSet = loader.readStringList(PLATFORM_KEY).stream().collect(Collectors.toUnmodifiableSet()); var bootSet = loader.readStringList(BOOT_KEY).stream().collect(Collectors.toUnmodifiableSet()); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedLayeredModuleSingleton.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/HostedLayeredModuleSingleton.java similarity index 78% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedLayeredModuleSingleton.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/HostedLayeredModuleSingleton.java index 55be5dfff887..ced6fc91284b 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/HostedLayeredModuleSingleton.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/HostedLayeredModuleSingleton.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted; +package com.oracle.svm.hosted.jdk; import java.util.HashMap; import java.util.HashSet; @@ -30,22 +30,22 @@ import java.util.Set; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; -import com.oracle.svm.core.imagelayer.BuildingInitialLayerPredicate; +import com.oracle.svm.core.layeredimage.BuildingInitialLayerPredicate; import com.oracle.svm.core.jdk.LayeredModuleSingleton; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; -import com.oracle.svm.hosted.imagelayer.CapnProtoAdapters; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerSingletonLoader; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerWriter; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.hosted.layeredimage.CapnProtoAdapters; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerSingletonLoader; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerWriter; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages; import com.oracle.svm.shaded.org.capnproto.StructList; @AutomaticallyRegisteredImageSingleton(value = LayeredModuleSingleton.class, onlyWith = BuildingInitialLayerPredicate.class) @@ -83,8 +83,8 @@ public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, HostedLayeredModuleSingleton singleton) { - SVMImageLayerWriter.ImageSingletonWriterImpl writerImpl = (SVMImageLayerWriter.ImageSingletonWriterImpl) writer; + public LayeredPersistFlags doPersist(KeyValueWriter writer, HostedLayeredModuleSingleton singleton) { + SVMImageLayerWriter.KeyValueWriterImpl writerImpl = (SVMImageLayerWriter.KeyValueWriterImpl) writer; var builder = writerImpl.getSnapshotBuilder().initLayeredModule(); persistModulePackages(builder.initOpenModulePackages(singleton.moduleOpenPackages.size()), singleton.moduleOpenPackages); persistModulePackages(builder.initExportedModulePackages(singleton.moduleExportedPackages.size()), singleton.moduleExportedPackages); @@ -117,8 +117,8 @@ private static Map>> getModulePackages(StructLis } @Override - public HostedLayeredModuleSingleton createFromLoader(ImageSingletonLoader loader) { - SVMImageLayerSingletonLoader.ImageSingletonLoaderImpl loaderImpl = (SVMImageLayerSingletonLoader.ImageSingletonLoaderImpl) loader; + public HostedLayeredModuleSingleton createFromLoader(KeyValueLoader loader) { + SVMImageLayerSingletonLoader.KeyValueLoaderImpl loaderImpl = (SVMImageLayerSingletonLoader.KeyValueLoaderImpl) loader; var reader = loaderImpl.getSnapshotReader().getLayeredModule(); Map>> moduleOpenPackages = getModulePackages(reader.getOpenModulePackages()); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JDKInitializationFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JDKInitializationFeature.java index 961a07a68f85..edda58a978e3 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JDKInitializationFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JDKInitializationFeature.java @@ -37,10 +37,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.jdk.ProtectionDomainSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.FeatureImpl.AfterRegistrationAccessImpl; import com.oracle.svm.hosted.ImageClassLoader; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JDKRegistrations.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JDKRegistrations.java index 5a34eef46b1b..d0ad4810b0c9 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JDKRegistrations.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JDKRegistrations.java @@ -34,10 +34,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.jdk.JNIRegistrationUtil; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.util.ReflectionUtil; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationAWTSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationAWTSupport.java index abc1805b9ff7..8447497f6cd3 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationAWTSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationAWTSupport.java @@ -30,11 +30,11 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.jdk.JNIRegistrationUtil; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.PartiallyLayerAware; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.PartiallyLayerAware; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.BeforeImageWriteAccessImpl; @Platforms({Platform.WINDOWS.class, Platform.LINUX.class}) diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationAttach.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationAttach.java index 2904a3a64bae..92c7fa0d7a54 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationAttach.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationAttach.java @@ -32,11 +32,11 @@ import com.oracle.svm.core.jdk.JNIRegistrationUtil; import com.oracle.svm.core.jdk.NativeLibrarySupport; import com.oracle.svm.core.jdk.PlatformNativeLibrarySupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.PartiallyLayerAware; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.PartiallyLayerAware; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.c.NativeLibraries; @Platforms(InternalPlatform.PLATFORM_JNI.class) diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJava.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJava.java index 605de8fb1418..4400fec9101b 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJava.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJava.java @@ -38,10 +38,10 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.jdk.JNIRegistrationUtil; import com.oracle.svm.core.jdk.PlatformNativeLibrarySupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl; /** diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJavaNet.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJavaNet.java index d4bbcd964970..b36026ac9d74 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJavaNet.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJavaNet.java @@ -35,10 +35,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.jdk.JNIRegistrationUtil; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl.DuringAnalysisAccessImpl; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJavaNio.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJavaNio.java index 59ae52064d64..64565fc8ddf1 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJavaNio.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationJavaNio.java @@ -37,10 +37,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.jdk.JNIRegistrationUtil; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; /** * Registration of classes, methods, and fields accessed via JNI by C code of the JDK. diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationManagementExt.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationManagementExt.java index f6cf8f18bee2..6b36d6715bd0 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationManagementExt.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationManagementExt.java @@ -28,11 +28,11 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.jdk.JNIRegistrationUtil; import com.oracle.svm.core.jdk.PlatformNativeLibrarySupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.PartiallyLayerAware; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.PartiallyLayerAware; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.DuringAnalysisAccessImpl; import com.oracle.svm.hosted.c.NativeLibraries; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationPrefs.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationPrefs.java index b1f7c3cc0176..f0d99a1cc8cb 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationPrefs.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationPrefs.java @@ -36,11 +36,11 @@ import com.oracle.svm.core.jdk.JNIRegistrationUtil; import com.oracle.svm.core.jdk.JavaNetHttpFeature; import com.oracle.svm.core.jdk.NativeLibrarySupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.PartiallyLayerAware; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.PartiallyLayerAware; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.c.NativeLibraries; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationSupport.java index 7b93422708d6..5fe80f13da3b 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationSupport.java @@ -50,22 +50,22 @@ import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.JNIRegistrationUtil; import com.oracle.svm.core.jdk.NativeLibrarySupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.option.HostedOptionKey; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.PartiallyLayerAware; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.PartiallyLayerAware; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.InterruptImageBuilding; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl.AfterImageWriteAccessImpl; @@ -74,9 +74,9 @@ import com.oracle.svm.hosted.c.NativeLibraries; import com.oracle.svm.hosted.c.codegen.CCompilerInvoker; import com.oracle.svm.hosted.c.util.FileUtils; -import com.oracle.svm.hosted.imagelayer.CapnProtoAdapters; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerSingletonLoader; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerWriter; +import com.oracle.svm.hosted.layeredimage.CapnProtoAdapters; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerSingletonLoader; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerWriter; import jdk.graal.compiler.debug.DebugContext; import jdk.graal.compiler.debug.DebugContext.Activation; @@ -380,15 +380,15 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, JNIRegistrationSupportSingleton singleton) { - var snapshotWriter = ((SVMImageLayerWriter.ImageSingletonWriterImpl) writer).getSnapshotBuilder(); + public LayeredPersistFlags doPersist(KeyValueWriter writer, JNIRegistrationSupportSingleton singleton) { + var snapshotWriter = ((SVMImageLayerWriter.KeyValueWriterImpl) writer).getSnapshotBuilder(); SVMImageLayerWriter.initStringList(snapshotWriter::initRegisteredJNILibraries, singleton.currentLayerRegisteredLibraries.stream()); return LayeredPersistFlags.CALLBACK_ON_REGISTRATION; } @Override - public void onSingletonRegistration(ImageSingletonLoader loader, JNIRegistrationSupportSingleton singleton) { - var snapshotReader = ((SVMImageLayerSingletonLoader.ImageSingletonLoaderImpl) loader).getSnapshotReader(); + public void onSingletonRegistration(KeyValueLoader loader, JNIRegistrationSupportSingleton singleton) { + var snapshotReader = ((SVMImageLayerSingletonLoader.KeyValueLoaderImpl) loader).getSnapshotReader(); CapnProtoAdapters.forEach(snapshotReader.getRegisteredJNILibraries(), singleton.prevLayerRegisteredLibraries::add); } }); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationsJavaZip.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationsJavaZip.java index 3fd489478088..697b0ab4fc4a 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationsJavaZip.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/JNIRegistrationsJavaZip.java @@ -32,11 +32,11 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.jdk.JNIRegistrationUtil; import com.oracle.svm.core.jdk.NativeLibrarySupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.BuiltinTraits.PartiallyLayerAware; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.PartiallyLayerAware; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.c.NativeLibraries; @Platforms(InternalPlatform.PLATFORM_JNI.class) diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ModuleLayerFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/ModuleLayerFeature.java similarity index 98% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ModuleLayerFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/ModuleLayerFeature.java index e2dd17fcfef4..a256e4dfd2ca 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ModuleLayerFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/ModuleLayerFeature.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted; +package com.oracle.svm.hosted.jdk; import static com.oracle.graal.pointsto.ObjectScanner.OtherReason; import static com.oracle.graal.pointsto.ObjectScanner.ScanReason; @@ -64,6 +64,7 @@ import org.graalvm.nativeimage.hosted.FieldValueTransformer; import com.oracle.graal.pointsto.meta.AnalysisType; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.BuildPhaseProvider; import com.oracle.svm.core.NativeImageClassLoaderOptions; import com.oracle.svm.core.SubstrateOptions; @@ -74,17 +75,20 @@ import com.oracle.svm.core.fieldvaluetransformer.ObjectToConstantFieldValueTransformer; import com.oracle.svm.core.heap.UnknownObjectField; import com.oracle.svm.core.hub.DynamicHub; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; import com.oracle.svm.core.jdk.LayeredModuleSingleton; import com.oracle.svm.core.jdk.Resources; import com.oracle.svm.core.jdk.RuntimeClassLoaderValueSupport; import com.oracle.svm.core.jdk.RuntimeModuleSupport; import com.oracle.svm.core.util.HostedSubstrateUtil; import com.oracle.svm.core.util.VMError; +import com.oracle.svm.hosted.ApplicationModules; +import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.FeatureImpl.AfterAnalysisAccessImpl; import com.oracle.svm.hosted.FeatureImpl.AnalysisAccessBase; import com.oracle.svm.hosted.FeatureImpl.BeforeAnalysisAccessImpl; -import com.oracle.svm.hosted.imagelayer.CrossLayerConstantRegistryFeature; +import com.oracle.svm.hosted.ImageClassLoader; +import com.oracle.svm.hosted.NativeImageClassLoaderSupport; +import com.oracle.svm.hosted.layeredimage.CrossLayerConstantRegistryFeature; import com.oracle.svm.hosted.reflect.proxy.ProxyRenamingSubstitutionProcessor; import com.oracle.svm.util.LogUtils; import com.oracle.svm.util.ModuleSupport; @@ -147,7 +151,7 @@ public class ModuleLayerFeature implements InternalFeature { @Override public void duringSetup(DuringSetupAccess access) { FeatureImpl.DuringSetupAccessImpl accessImpl = (FeatureImpl.DuringSetupAccessImpl) access; - moduleLayerFeatureUtils = new ModuleLayerFeatureUtils(accessImpl.imageClassLoader); + moduleLayerFeatureUtils = new ModuleLayerFeatureUtils(accessImpl.getImageClassLoader()); Resources.currentLayer().setHostedToRuntimeModuleMapper(m -> moduleLayerFeatureUtils.getOrCreateRuntimeModuleForHostedModule(m, accessImpl)); /* @@ -157,7 +161,7 @@ public void duringSetup(DuringSetupAccess access) { access.registerObjectReplacer(source -> replaceHostedModules(source, accessImpl)); } - private Object replaceHostedModules(Object source, AnalysisAccessBase access) { + private Object replaceHostedModules(Object source, FeatureImpl.DuringSetupAccessImpl access) { if (source instanceof Module module) { return moduleLayerFeatureUtils.getOrCreateRuntimeModuleForHostedModule(module, access); } else if (source instanceof Class clazz) { @@ -289,7 +293,7 @@ public String getModuleKeyName(Module module) { private void scanRuntimeBootLayerPrototype(BeforeAnalysisAccessImpl accessImpl) { Set baseModules = ModuleLayer.boot().modules().stream().map(Module::getName).collect(Collectors.toSet()); Function clf = moduleLayerFeatureUtils::getClassLoaderForBootLayerModule; - ModuleLayer runtimeBootLayer = synthesizeRuntimeModuleLayer(new ArrayList<>(List.of(ModuleLayer.empty())), accessImpl, accessImpl.imageClassLoader, baseModules, Set.of(), clf, null); + ModuleLayer runtimeBootLayer = synthesizeRuntimeModuleLayer(new ArrayList<>(List.of(ModuleLayer.empty())), accessImpl, accessImpl.getImageClassLoader(), baseModules, Set.of(), clf, null); /* Only scan the value if module support is enabled and bootLayer field is reachable. */ accessImpl.registerReachabilityHandler((a) -> accessImpl.rescanObject(runtimeBootLayer, scanReason), ReflectionUtil.lookupField(RuntimeModuleSupport.class, "bootLayer")); } @@ -314,7 +318,7 @@ public void afterAnalysis(AfterAnalysisAccess access) { Set extraModules = ModuleSupport.parseModuleSetModifierProperty(ModuleSupport.PROPERTY_IMAGE_EXPLICITLY_ADDED_MODULES); extraModules.addAll(Resources.getIncludedResourcesModules()); extraModules.stream().filter(Predicate.not(ModuleSupport.nonExplicitModules::contains)).forEach(moduleName -> { - Optional module = accessImpl.imageClassLoader.findModule(moduleName); + Optional module = accessImpl.getImageClassLoader().findModule(moduleName); if (module.isEmpty()) { throw VMError.shouldNotReachHere("Explicitly required module " + moduleName + " is not available"); } @@ -329,7 +333,7 @@ public void afterAnalysis(AfterAnalysisAccess access) { Set analysisReachableSyntheticModules = runtimeImageNamedModules .stream() .filter(ModuleLayerFeatureUtils::isModuleSynthetic) - .filter(m -> m.getClassLoader() != accessImpl.imageClassLoader.getClassLoader()) + .filter(m -> m.getClassLoader() != accessImpl.getImageClassLoader().getClassLoader()) .collect(Collectors.toSet()); /* @@ -349,7 +353,7 @@ public void afterAnalysis(AfterAnalysisAccess access) { * Remove once GR-44584 is merged. See * com.oracle.svm.driver.NativeImage.BuildConfiguration.getImageProvidedJars(). */ - if (!accessImpl.imageClassLoader.applicationClassPath().isEmpty()) { + if (!accessImpl.getImageClassLoader().applicationClassPath().isEmpty()) { extraModules.add("ALL-MODULE-PATH"); } @@ -369,7 +373,7 @@ public void afterAnalysis(AfterAnalysisAccess access) { * Ensure that runtime modules have the same relations (i.e., reads, opens and exports) as * the originals. */ - replicateVisibilityModifications(runtimeBootLayer, accessImpl, accessImpl.imageClassLoader, runtimeImageNamedModules, runtimeImageUnnamedModules); + replicateVisibilityModifications(runtimeBootLayer, accessImpl, accessImpl.getImageClassLoader(), runtimeImageNamedModules, runtimeImageUnnamedModules); replicateNativeAccess(accessImpl, runtimeImageNamedModules); } @@ -529,7 +533,7 @@ private List synthesizeRuntimeModuleLayers(AfterAnalysisAccessImpl .collect(Collectors.toSet()); for (ModuleLayer hostedModuleLayer : hostedModuleLayers) { - if (hostedModuleLayer == accessImpl.imageClassLoader.classLoaderSupport.moduleLayerForImageBuild) { + if (hostedModuleLayer == accessImpl.getImageClassLoader().classLoaderSupport.moduleLayerForImageBuild) { continue; } @@ -558,7 +562,7 @@ private List synthesizeRuntimeModuleLayers(AfterAnalysisAccessImpl Configuration cf = isBootModuleLayer ? null : hostedModuleLayer.configuration(); Function clf = name -> moduleLayerFeatureUtils.getClassLoaderForModuleInModuleLayer(hostedModuleLayer, name); - ModuleLayer runtimeModuleLayer = synthesizeRuntimeModuleLayer(parents, accessImpl, accessImpl.imageClassLoader, moduleNames, syntheticModules, clf, cf); + ModuleLayer runtimeModuleLayer = synthesizeRuntimeModuleLayer(parents, accessImpl, accessImpl.getImageClassLoader(), moduleNames, syntheticModules, clf, cf); moduleLayerPairs.put(hostedModuleLayer, runtimeModuleLayer); } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SharedLayerBootLayerModulesSingleton.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/SharedLayerBootLayerModulesSingleton.java similarity index 74% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SharedLayerBootLayerModulesSingleton.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/SharedLayerBootLayerModulesSingleton.java index 2b57c0a302cf..9d7c282cecd6 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/SharedLayerBootLayerModulesSingleton.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/SharedLayerBootLayerModulesSingleton.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted; +package com.oracle.svm.hosted.jdk; import java.util.ArrayList; import java.util.Collection; @@ -34,20 +34,20 @@ import org.graalvm.nativeimage.Platforms; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; -import com.oracle.svm.core.imagelayer.BuildingInitialLayerPredicate; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; -import com.oracle.svm.hosted.imagelayer.CapnProtoAdapters; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerSingletonLoader; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerWriter; +import com.oracle.svm.core.layeredimage.BuildingInitialLayerPredicate; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.hosted.layeredimage.CapnProtoAdapters; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerSingletonLoader; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerWriter; @Platforms(Platform.HOSTED_ONLY.class) @AutomaticallyRegisteredImageSingleton(onlyWith = BuildingInitialLayerPredicate.class) @@ -83,8 +83,8 @@ public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, SharedLayerBootLayerModulesSingleton singleton) { - SVMImageLayerWriter.ImageSingletonWriterImpl writerImpl = (SVMImageLayerWriter.ImageSingletonWriterImpl) writer; + public LayeredPersistFlags doPersist(KeyValueWriter writer, SharedLayerBootLayerModulesSingleton singleton) { + SVMImageLayerWriter.KeyValueWriterImpl writerImpl = (SVMImageLayerWriter.KeyValueWriterImpl) writer; Stream moduleNames = singleton.bootLayer.modules().stream().map(Module::getName); if (singleton.sharedBootLayerModules != null) { @@ -106,8 +106,8 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public SharedLayerBootLayerModulesSingleton createFromLoader(ImageSingletonLoader loader) { - SVMImageLayerSingletonLoader.ImageSingletonLoaderImpl loaderImpl = (SVMImageLayerSingletonLoader.ImageSingletonLoaderImpl) loader; + public SharedLayerBootLayerModulesSingleton createFromLoader(KeyValueLoader loader) { + SVMImageLayerSingletonLoader.KeyValueLoaderImpl loaderImpl = (SVMImageLayerSingletonLoader.KeyValueLoaderImpl) loader; List moduleNames = CapnProtoAdapters.toCollection(loaderImpl.getSnapshotReader().getSharedLayerBootLayerModules(), ArrayList::new); return new SharedLayerBootLayerModulesSingleton(moduleNames); } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/localization/CharsetSubstitutionsFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/localization/CharsetSubstitutionsFeature.java index 4bc9098f533c..18dd2b36820d 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/localization/CharsetSubstitutionsFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jdk/localization/CharsetSubstitutionsFeature.java @@ -28,10 +28,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jni/JNIAccessFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jni/JNIAccessFeature.java index b0d266768675..75de49e7c118 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jni/JNIAccessFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/jni/JNIAccessFeature.java @@ -75,13 +75,13 @@ import com.oracle.svm.core.jni.access.JNIAccessibleMethodDescriptor; import com.oracle.svm.core.jni.access.JNINativeLinkage; import com.oracle.svm.core.jni.access.JNIReflectionDictionary; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.meta.MethodPointer; import com.oracle.svm.core.option.HostedOptionKey; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.ConditionalConfigurationRegistry; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/lambda/StableLambdaProxyNameFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/lambda/StableLambdaProxyNameFeature.java index 1c02d60f1d12..084529cf8118 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/lambda/StableLambdaProxyNameFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/lambda/StableLambdaProxyNameFeature.java @@ -33,10 +33,10 @@ import com.oracle.svm.core.SubstrateUtil; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.AfterAnalysisAccessImpl; import com.oracle.svm.hosted.FeatureImpl.DuringSetupAccessImpl; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CapnProtoAdapters.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CapnProtoAdapters.java similarity index 98% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CapnProtoAdapters.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CapnProtoAdapters.java index c2c3edb6af34..43ea2cb70095 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CapnProtoAdapters.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CapnProtoAdapters.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import java.util.Collection; import java.util.function.Consumer; @@ -32,7 +32,7 @@ import java.util.function.Supplier; import java.util.function.ToIntFunction; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray; import com.oracle.svm.shaded.org.capnproto.PrimitiveList; import com.oracle.svm.shaded.org.capnproto.StructList; import com.oracle.svm.shaded.org.capnproto.StructReader; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CodeLocation.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CodeLocation.java similarity index 97% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CodeLocation.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CodeLocation.java index 434161aa0032..9a5232609d47 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CodeLocation.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CodeLocation.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; /** * Stores information used to match a given code location across layers. diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CrossLayerConstantRegistryFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CrossLayerConstantRegistryFeature.java similarity index 93% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CrossLayerConstantRegistryFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CrossLayerConstantRegistryFeature.java index 1504800451da..ca13c32e8da8 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CrossLayerConstantRegistryFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CrossLayerConstantRegistryFeature.java @@ -22,10 +22,10 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; -import static com.oracle.svm.hosted.imagelayer.CrossLayerConstantRegistryFeature.INVALID; -import static com.oracle.svm.hosted.imagelayer.CrossLayerConstantRegistryFeature.NULL_CONSTANT_ID; +import static com.oracle.svm.hosted.layeredimage.CrossLayerConstantRegistryFeature.INVALID; +import static com.oracle.svm.hosted.layeredimage.CrossLayerConstantRegistryFeature.NULL_CONSTANT_ID; import java.util.ArrayList; import java.util.HashMap; @@ -34,6 +34,7 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import com.oracle.svm.sdk.staging.hosted.layeredimage.CrossLayerConstantRegistry; import org.graalvm.nativeimage.ImageSingletons; import com.oracle.graal.pointsto.heap.ImageHeapConstant; @@ -42,19 +43,19 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.heap.Heap; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.imagelayer.PriorLayerMarker; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.PriorLayerMarker; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ObservableImageHeapMapProvider; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl; @@ -66,6 +67,7 @@ import jdk.graal.compiler.core.common.NumUtil; import jdk.graal.compiler.debug.Assertions; import jdk.vm.ci.meta.JavaConstant; +import jdk.vm.ci.meta.ResolvedJavaType; @AutomaticallyRegisteredFeature @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) @@ -365,9 +367,9 @@ public void registerHeapConstant(String keyName, Object obj) { } @Override - public ImageHeapConstant registerFutureHeapConstant(String keyName, AnalysisType futureType) { + public JavaConstant registerFutureHeapConstant(String keyName, ResolvedJavaType futureType) { assert futureType != null; - var imageHeapConstant = ImageHeapRelocatableConstant.create(futureType, keyName); + var imageHeapConstant = ImageHeapRelocatableConstant.create((AnalysisType) futureType, keyName); var constantInfo = new FutureConstantCandidateInfo(imageHeapConstant); registerConstantCandidate(keyName, constantInfo); return constantInfo.constant(); @@ -477,7 +479,7 @@ private static String futureKeyPatchKey(String key) { } @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, ImageLayerIdTrackingSingleton singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, ImageLayerIdTrackingSingleton singleton) { ArrayList priorKeys = new ArrayList<>(); ArrayList priorIds = new ArrayList<>(); ArrayList futureKeys = new ArrayList<>(); @@ -516,7 +518,7 @@ public LayeredPersistFlags doPersist(ImageSingletonWriter writer, ImageLayerIdTr } @Override - public void onSingletonRegistration(ImageSingletonLoader loader, ImageLayerIdTrackingSingleton singleton) { + public void onSingletonRegistration(KeyValueLoader loader, ImageLayerIdTrackingSingleton singleton) { Iterator priorKeys = loader.readStringList("priorKeys").iterator(); Iterator priorIds = loader.readIntList("priorIds").iterator(); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CrossLayerFieldUpdaterFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CrossLayerFieldUpdaterFeature.java similarity index 94% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CrossLayerFieldUpdaterFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CrossLayerFieldUpdaterFeature.java index 5793ca299967..c4fd322bc0b9 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CrossLayerFieldUpdaterFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/CrossLayerFieldUpdaterFeature.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import java.nio.ByteBuffer; import java.nio.ByteOrder; @@ -45,17 +45,17 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.heap.Heap; import com.oracle.svm.core.image.ImageHeapLayoutInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.heap.ImageHeapObjectAdder; @@ -370,7 +370,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, CrossLayerFieldUpdaterFeature singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, CrossLayerFieldUpdaterFeature singleton) { var updateInfoMap = singleton.updateInfoMap; ArrayList fieldIds = new ArrayList<>(); ArrayList receiverIds = new ArrayList<>(); @@ -390,7 +390,7 @@ public LayeredPersistFlags doPersist(ImageSingletonWriter writer, CrossLayerFiel } @Override - public void onSingletonRegistration(ImageSingletonLoader loader, CrossLayerFieldUpdaterFeature singleton) { + public void onSingletonRegistration(KeyValueLoader loader, CrossLayerFieldUpdaterFeature singleton) { Map map = new HashMap<>(); Iterator fieldIds = loader.readIntList("fieldIds").iterator(); Iterator receiverIds = loader.readIntList("receiverIds").iterator(); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/HostedDynamicLayerInfo.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/HostedDynamicLayerInfo.java similarity index 87% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/HostedDynamicLayerInfo.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/HostedDynamicLayerInfo.java index e12d36da9978..4b12abdb2b6c 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/HostedDynamicLayerInfo.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/HostedDynamicLayerInfo.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import static com.oracle.svm.hosted.image.NativeImage.localSymbolNameForMethod; @@ -45,25 +45,25 @@ import com.oracle.svm.core.c.CGlobalDataFactory; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.graal.code.CGlobalDataInfo; -import com.oracle.svm.core.imagelayer.BuildingImageLayerPredicate; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.core.layeredimage.BuildingImageLayerPredicate; +import com.oracle.svm.core.layeredimage.DynamicImageLayerInfo; import com.oracle.svm.core.meta.SharedMethod; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.c.CGlobalDataFeature; import com.oracle.svm.hosted.image.NativeImage; import com.oracle.svm.hosted.meta.HostedMethod; import com.oracle.svm.hosted.meta.HostedMethodNameFactory.MethodNameInfo; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; @AutomaticallyRegisteredImageSingleton(value = DynamicImageLayerInfo.class, onlyWith = BuildingImageLayerPredicate.class) @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = HostedDynamicLayerInfo.LayeredCallbacks.class, layeredInstallationKind = Independent.class) @@ -99,16 +99,15 @@ public class HostedDynamicLayerInfo extends DynamicImageLayerInfo { private final Set compiledDelayedMethodSymbols = ImageLayerBuildingSupport.buildingApplicationLayer() ? ConcurrentHashMap.newKeySet() : null; HostedDynamicLayerInfo() { - this(0, null, new ArrayList<>(), Set.of(), Set.of()); + this(null, new ArrayList<>(), Set.of(), Set.of()); } public static HostedDynamicLayerInfo singleton() { return (HostedDynamicLayerInfo) ImageSingletons.lookup(DynamicImageLayerInfo.class); } - private HostedDynamicLayerInfo(int layerNumber, String codeSectionStartSymbol, List libNames, + private HostedDynamicLayerInfo(String codeSectionStartSymbol, List libNames, Set previousLayerDelayedMethodSymbols, Set previousLayerDelayedMethodIds) { - super(layerNumber); this.libNames = new ArrayList<>(libNames); this.cGlobalData = codeSectionStartSymbol == null ? null : CGlobalDataFactory.forSymbol(codeSectionStartSymbol); this.previousLayerDelayedMethodSymbols = previousLayerDelayedMethodSymbols; @@ -237,13 +236,22 @@ public long getPreviousImageHeapEndOffset() { return loader.getImageHeapEndOffset(); } + public static int getNextLayerNumber() { + return ImageLayerBuildingSupport.getCurrentLayerNumber() + 1; + } + + public static int getNumLayers() { + assert ImageLayerBuildingSupport.buildingApplicationLayer(); + return getNextLayerNumber(); + } + static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { @Override public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, HostedDynamicLayerInfo singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, HostedDynamicLayerInfo singleton) { /* * When there are multiple shared layers we will need to store the starting code * offset of each layer. @@ -253,8 +261,8 @@ public LayeredPersistFlags doPersist(ImageSingletonWriter writer, HostedDynamicL /* * First write out next layer number. */ - var snapshotBuilder = ((SVMImageLayerWriter.ImageSingletonWriterImpl) writer).getSnapshotBuilder(); - snapshotBuilder.setNextLayerNumber(singleton.nextLayerNumber); + var snapshotBuilder = ((SVMImageLayerWriter.KeyValueWriterImpl) writer).getSnapshotBuilder(); + snapshotBuilder.setNextLayerNumber(getNextLayerNumber()); /* * Next write the start of the code section @@ -284,10 +292,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public HostedDynamicLayerInfo createFromLoader(ImageSingletonLoader loader) { - var snapshotReader = ((SVMImageLayerSingletonLoader.ImageSingletonLoaderImpl) loader).getSnapshotReader(); - int layerNumber = snapshotReader.getNextLayerNumber(); - + public HostedDynamicLayerInfo createFromLoader(KeyValueLoader loader) { String codeSectionStartSymbol = loader.readString("codeSectionStartSymbol"); var libNames = loader.readStringList("libNames"); @@ -295,7 +300,7 @@ public HostedDynamicLayerInfo createFromLoader(ImageSingletonLoader loader) { var previousLayerDelayedMethodSymbols = loader.readStringList("delayedMethodSymbols").stream().collect(Collectors.toUnmodifiableSet()); var previousLayerDelayedMethodIds = loader.readIntList("delayedMethodIds").stream().collect(Collectors.toUnmodifiableSet()); - return new HostedDynamicLayerInfo(layerNumber, codeSectionStartSymbol, libNames, previousLayerDelayedMethodSymbols, previousLayerDelayedMethodIds); + return new HostedDynamicLayerInfo(codeSectionStartSymbol, libNames, previousLayerDelayedMethodSymbols, previousLayerDelayedMethodIds); } } } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/HostedImageLayerBuildingSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/HostedImageLayerBuildingSupport.java similarity index 89% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/HostedImageLayerBuildingSupport.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/HostedImageLayerBuildingSupport.java index a0dea8f283e0..ff289d5c2d3f 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/HostedImageLayerBuildingSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/HostedImageLayerBuildingSupport.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import java.io.IOException; import java.nio.MappedByteBuffer; @@ -43,7 +43,6 @@ import com.oracle.graal.pointsto.api.PointstoOptions; import com.oracle.graal.pointsto.util.AnalysisError; import com.oracle.svm.core.SubstrateOptions; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; import com.oracle.svm.core.option.HostedOptionKey; import com.oracle.svm.core.option.HostedOptionValues; import com.oracle.svm.core.option.LayerVerifiedOption; @@ -51,12 +50,6 @@ import com.oracle.svm.core.option.OptionUtils; import com.oracle.svm.core.option.RuntimeOptionKey; import com.oracle.svm.core.option.SubstrateOptionsParser; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraits; import com.oracle.svm.core.util.ArchiveSupport; import com.oracle.svm.core.util.UserError; import com.oracle.svm.hosted.ImageClassLoader; @@ -64,11 +57,20 @@ import com.oracle.svm.hosted.c.NativeLibraries; import com.oracle.svm.hosted.driver.IncludeOptionsSupport; import com.oracle.svm.hosted.driver.LayerOptionsSupport.LayerOption; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot.Reader; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot.Reader; import com.oracle.svm.hosted.option.HostedOptionParser; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.shaded.org.capnproto.ReaderOptions; import com.oracle.svm.shaded.org.capnproto.Serialize; +import com.oracle.svm.util.ModuleSupport; import com.oracle.svm.util.TypeResult; import jdk.graal.compiler.core.common.SuppressFBWarnings; @@ -77,6 +79,7 @@ import jdk.graal.compiler.options.OptionKey; import jdk.graal.compiler.options.OptionValues; import jdk.graal.compiler.options.OptionsContainer; +import jdk.graal.compiler.util.ObjectCopier; import jdk.vm.ci.meta.MetaAccessProvider; @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) @@ -113,8 +116,8 @@ private static String layerCreatePossibleOptions() { private HostedImageLayerBuildingSupport(ImageClassLoader imageClassLoader, Reader snapshot, List graphsChannels, boolean buildingImageLayer, boolean buildingInitialLayer, boolean buildingApplicationLayer, - WriteLayerArchiveSupport writeLayerArchiveSupport, LoadLayerArchiveSupport loadLayerArchiveSupport, Function, SingletonTrait[]> singletonTraitInjector) { - super(buildingImageLayer, buildingInitialLayer, buildingApplicationLayer); + int layerNumber, WriteLayerArchiveSupport writeLayerArchiveSupport, LoadLayerArchiveSupport loadLayerArchiveSupport, Function, SingletonTrait[]> singletonTraitInjector) { + super(buildingImageLayer, buildingInitialLayer, buildingApplicationLayer, layerNumber); this.imageClassLoader = imageClassLoader; this.snapshot = snapshot; this.graphsChannels = graphsChannels; @@ -314,6 +317,18 @@ private static boolean supportedPlatform(Platform platform) { return platform instanceof LINUX_AMD64; } + /** + * To allow the {@link ObjectCopier} to access private fields by reflection, some modules needs + * to be opened when a layer is built. + */ + private static void openModules() { + ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, ObjectCopier.class, false, "java.base", "java.lang"); + ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, ObjectCopier.class, false, "java.base", "java.lang.reflect"); + ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, ObjectCopier.class, false, "java.base", "java.util"); + ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, ObjectCopier.class, false, "java.base", "java.util.concurrent"); + ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, ObjectCopier.class, false, "java.base", "sun.reflect.annotation"); + } + public static HostedImageLayerBuildingSupport initialize(HostedOptionValues values, ImageClassLoader imageClassLoader, Path builderTempDir) { boolean buildingSharedLayer = isLayerCreateOptionEnabled(values); boolean buildingExtensionLayer = isLayerUseOptionEnabled(values); @@ -334,7 +349,7 @@ public static HostedImageLayerBuildingSupport initialize(HostedOptionValues valu boolean buildingFinalLayer = buildingImageLayer && !buildingSharedLayer; if (buildingImageLayer) { - ImageLayerBuildingSupport.openModules(); + openModules(); } WriteLayerArchiveSupport writeLayerArchiveSupport = null; @@ -380,8 +395,16 @@ public static HostedImageLayerBuildingSupport initialize(HostedOptionValues valu }; } + int layerNumber; + if (!buildingImageLayer) { + layerNumber = MultiLayeredImageSingleton.UNUSED_LAYER_NUMBER; + } else if (buildingInitialLayer) { + layerNumber = MultiLayeredImageSingleton.INITIAL_LAYER_NUMBER; + } else { + layerNumber = snapshot.getNextLayerNumber(); + } HostedImageLayerBuildingSupport imageLayerBuildingSupport = new HostedImageLayerBuildingSupport(imageClassLoader, snapshot, graphs, buildingImageLayer, - buildingInitialLayer, buildingFinalLayer, writeLayerArchiveSupport, loadLayerArchiveSupport, singletonTraitInjector); + buildingInitialLayer, buildingFinalLayer, layerNumber, writeLayerArchiveSupport, loadLayerArchiveSupport, singletonTraitInjector); if (buildingExtensionLayer) { imageLayerBuildingSupport.setSingletonLoader(new SVMImageLayerSingletonLoader(imageLayerBuildingSupport, snapshot)); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/ImageHeapRelocatableConstantFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/ImageHeapRelocatableConstantFeature.java similarity index 98% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/ImageHeapRelocatableConstantFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/ImageHeapRelocatableConstantFeature.java index d6b9cfbe3cc2..e4950abd1c4c 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/ImageHeapRelocatableConstantFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/ImageHeapRelocatableConstantFeature.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; @@ -38,7 +38,7 @@ import com.oracle.svm.core.graal.nodes.SubstrateCompressionNode; import com.oracle.svm.core.graal.nodes.SubstrateNarrowOopStamp; import com.oracle.svm.core.heap.ReferenceAccess; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.hosted.FeatureImpl; import jdk.graal.compiler.core.common.type.AbstractObjectStamp; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/ImageHeapRelocatableConstantSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/ImageHeapRelocatableConstantSupport.java similarity index 97% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/ImageHeapRelocatableConstantSupport.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/ImageHeapRelocatableConstantSupport.java index 244912ac972e..a1334e9eaf82 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/ImageHeapRelocatableConstantSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/ImageHeapRelocatableConstantSupport.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import org.graalvm.nativeimage.ImageSingletons; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/ImageLayerSectionFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/ImageLayerSectionFeature.java similarity index 94% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/ImageLayerSectionFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/ImageLayerSectionFeature.java index 1e940210c9d4..53a6c8424bfc 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/ImageLayerSectionFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/ImageLayerSectionFeature.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import static jdk.graal.compiler.word.Word.signed; @@ -51,13 +51,12 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.image.ImageHeapLayoutInfo; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.imagelayer.ImageLayerSection; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.ImageLayerSection; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.c.AppLayerCGlobalTracking; import com.oracle.svm.hosted.c.CGlobalDataFeature; @@ -136,7 +135,8 @@ public List> getRequiredFeatures() { @Override public void afterRegistration(AfterRegistrationAccess access) { - CGlobalData initialSectionStart = ImageLayerBuildingSupport.buildingInitialLayer() ? CGlobalDataFactory.forSymbol(getLayerName(DynamicImageLayerInfo.getCurrentLayerNumber())) : null; + CGlobalData initialSectionStart = ImageLayerBuildingSupport.buildingInitialLayer() ? CGlobalDataFactory.forSymbol(getLayerName(ImageLayerBuildingSupport.getCurrentLayerNumber())) + : null; CGlobalData cachedImageFDs; CGlobalData cachedImageHeapOffsets; @@ -147,9 +147,10 @@ public void afterRegistration(AfterRegistrationAccess access) { cachedImageHeapOffsets = CGlobalDataFactory.forSymbol(CACHED_IMAGE_HEAP_OFFSETS_NAME); cachedImageHeapRelocations = CGlobalDataFactory.forSymbol(CACHED_IMAGE_HEAP_RELOCATIONS_NAME); } else if (ImageLayerBuildingSupport.buildingApplicationLayer()) { - cachedImageFDs = CGlobalDataFactory.createBytes(() -> createWords(DynamicImageLayerInfo.singleton().numLayers, UNASSIGNED_FD), CACHED_IMAGE_FDS_NAME); - cachedImageHeapOffsets = CGlobalDataFactory.createBytes(() -> createWords(DynamicImageLayerInfo.singleton().numLayers, Word.zero()), CACHED_IMAGE_HEAP_OFFSETS_NAME); - cachedImageHeapRelocations = CGlobalDataFactory.createBytes(() -> createWords(DynamicImageLayerInfo.singleton().numLayers, Word.zero()), CACHED_IMAGE_HEAP_RELOCATIONS_NAME); + int numLayers = HostedDynamicLayerInfo.getNumLayers(); + cachedImageFDs = CGlobalDataFactory.createBytes(() -> createWords(numLayers, UNASSIGNED_FD), CACHED_IMAGE_FDS_NAME); + cachedImageHeapOffsets = CGlobalDataFactory.createBytes(() -> createWords(numLayers, Word.zero()), CACHED_IMAGE_HEAP_OFFSETS_NAME); + cachedImageHeapRelocations = CGlobalDataFactory.createBytes(() -> createWords(numLayers, Word.zero()), CACHED_IMAGE_HEAP_RELOCATIONS_NAME); AppLayerCGlobalTracking appLayerTracking = CGlobalDataFeature.singleton().getAppLayerCGlobalTracking(); appLayerTracking.registerCGlobalWithPriorLayerReference(cachedImageFDs); appLayerTracking.registerCGlobalWithPriorLayerReference(cachedImageHeapOffsets); @@ -235,7 +236,7 @@ public void createSection(ObjectFile objectFile, ImageHeapLayoutInfo heapLayout) layeredSectionData); if (ImageLayerBuildingSupport.buildingSharedLayer()) { - String nextLayerSymbolName = getLayerName(DynamicImageLayerInfo.singleton().nextLayerNumber); + String nextLayerSymbolName = getLayerName(HostedDynamicLayerInfo.getNextLayerNumber()); // this symbol will be defined in the next layer's layer section objectFile.createUndefinedSymbol(nextLayerSymbolName, false); layeredSectionData.markRelocationSite(NEXT_SECTION_OFFSET, ObjectFile.RelocationKind.DIRECT_8, nextLayerSymbolName, 0); @@ -248,7 +249,7 @@ public void createSection(ObjectFile objectFile, ImageHeapLayoutInfo heapLayout) } // this symbol must be global when it will be read by the prior section - objectFile.createDefinedSymbol(getLayerName(DynamicImageLayerInfo.getCurrentLayerNumber()), layeredImageSection, 0, 0, false, ImageLayerBuildingSupport.buildingExtensionLayer()); + objectFile.createDefinedSymbol(getLayerName(ImageLayerBuildingSupport.getCurrentLayerNumber()), layeredImageSection, 0, 0, false, ImageLayerBuildingSupport.buildingExtensionLayer()); if (numSingletonSlots != 0) { assert ImageLayerBuildingSupport.buildingApplicationLayer() : "Currently only application layer is supported"; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/InitialLayerFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/InitialLayerFeature.java similarity index 90% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/InitialLayerFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/InitialLayerFeature.java index 656815a03de3..ac9a470d87c3 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/InitialLayerFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/InitialLayerFeature.java @@ -22,16 +22,16 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; -import static com.oracle.svm.common.layeredimage.LayeredCompilationBehavior.Behavior.PINNED_TO_INITIAL_LAYER; +import static com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior.Behavior.PINNED_TO_INITIAL_LAYER; import org.graalvm.nativeimage.hosted.Feature; -import com.oracle.svm.common.hosted.layeredimage.LayeredCompilationSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredCompilationSupport; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.util.ReflectionUtil; import jdk.internal.misc.Unsafe; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayerArchiveSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayerArchiveSupport.java similarity index 99% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayerArchiveSupport.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayerArchiveSupport.java index 9461a104ea99..4906426f0326 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayerArchiveSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayerArchiveSupport.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import static com.oracle.svm.core.util.EnvVariableUtils.EnvironmentVariable; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayerCompilationBehaviorFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayerCompilationBehaviorFeature.java similarity index 96% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayerCompilationBehaviorFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayerCompilationBehaviorFeature.java index 560288d62550..48eab8e7526e 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayerCompilationBehaviorFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayerCompilationBehaviorFeature.java @@ -22,13 +22,13 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import com.oracle.graal.pointsto.BigBang; import com.oracle.graal.pointsto.meta.AnalysisMethod; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.meta.HostedMethod; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredCompilationSupportFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredCompilationSupportFeature.java similarity index 93% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredCompilationSupportFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredCompilationSupportFeature.java index 9b710e3add42..919424259064 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredCompilationSupportFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredCompilationSupportFeature.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import java.lang.reflect.Executable; import java.util.Set; @@ -33,11 +33,11 @@ import com.oracle.graal.pointsto.meta.AnalysisMetaAccess; import com.oracle.graal.pointsto.meta.AnalysisMethod; -import com.oracle.svm.common.hosted.layeredimage.LayeredCompilationSupport; -import com.oracle.svm.common.layeredimage.LayeredCompilationBehavior; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredCompilationSupport; +import com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredDispatchTableFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredDispatchTableFeature.java similarity index 98% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredDispatchTableFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredDispatchTableFeature.java index 2a98063cbf53..719bcc317bb8 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredDispatchTableFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredDispatchTableFeature.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import java.util.Arrays; import java.util.BitSet; @@ -56,15 +56,14 @@ import com.oracle.svm.core.graal.snippets.OpenTypeWorldDispatchTableSnippets; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.image.ImageHeapLayoutInfo; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.meta.MethodOffset; import com.oracle.svm.core.meta.MethodRef; import com.oracle.svm.core.option.HostedOptionKey; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.FeatureImpl.BeforeCompilationAccessImpl; @@ -473,7 +472,7 @@ private void onPatchedWordWritten(WordBase word, int offsetInHeap, ImageHeapLayo * because it is relative to the initial layer's text section, which becomes the * global code base. */ - assert DynamicImageLayerInfo.getCurrentLayerNumber() == 1 : "Currently cannot patch references to code in a middle layer"; + assert ImageLayerBuildingSupport.getCurrentLayerNumber() == 1 : "Currently cannot patch references to code in a middle layer"; } else if (target.isCompiled()) { if (!buildingInitialLayer) { /* diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredFieldValueTransformerImpl.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredFieldValueTransformerImpl.java similarity index 98% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredFieldValueTransformerImpl.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredFieldValueTransformerImpl.java index 2caf8eb1edd2..1d1527293cd0 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredFieldValueTransformerImpl.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredFieldValueTransformerImpl.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import java.util.List; import java.util.Map; @@ -37,7 +37,7 @@ import com.oracle.svm.util.GraalAccess; import com.oracle.svm.core.SubstrateUtil; import com.oracle.svm.core.fieldvaluetransformer.FieldValueTransformerWithReceiverBasedAvailability; -import com.oracle.svm.core.layered.LayeredFieldValueTransformer; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredFieldValueTransformer; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.debug.Assertions; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredFieldValueTransformerSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredFieldValueTransformerSupport.java similarity index 90% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredFieldValueTransformerSupport.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredFieldValueTransformerSupport.java index 4975f6bfa3a1..17ea8e3a906f 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredFieldValueTransformerSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredFieldValueTransformerSupport.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import static com.oracle.graal.pointsto.ObjectScanner.OtherReason; import static com.oracle.graal.pointsto.ObjectScanner.ScanReason; @@ -42,19 +42,19 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.image.ImageHeapLayoutInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layered.LayeredFieldValue; -import com.oracle.svm.core.layered.LayeredFieldValueTransformer; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredFieldValue; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredFieldValueTransformer; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.image.NativeImageHeap; @@ -276,7 +276,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LayeredFieldValueTransformerSupport singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, LayeredFieldValueTransformerSupport singleton) { var fieldsWithUpdatableValues = singleton.fieldToLayeredTransformer.entrySet().stream() .filter(e -> e.getValue().currentLayerHasUpdatableValues) .map(e -> e.getKey().getId()).toList(); @@ -285,7 +285,7 @@ public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LayeredFieldVa } @Override - public void onSingletonRegistration(ImageSingletonLoader loader, LayeredFieldValueTransformerSupport singleton) { + public void onSingletonRegistration(KeyValueLoader loader, LayeredFieldValueTransformerSupport singleton) { singleton.fieldsWithUpdatableValues = Set.copyOf(loader.readIntList("fieldsWithUpdatableValues")); } }); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredImageHooks.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredImageHooks.java similarity index 89% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredImageHooks.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredImageHooks.java index a184a125016d..41f825d508ab 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredImageHooks.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredImageHooks.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import java.util.Objects; import java.util.Set; @@ -36,12 +36,12 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.image.ImageHeapLayoutInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.meta.MethodRef; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.api.replacements.Fold; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredStaticFieldSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredStaticFieldSupport.java similarity index 93% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredStaticFieldSupport.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredStaticFieldSupport.java index 49f981a3d060..ecf29bc46055 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredStaticFieldSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LayeredStaticFieldSupport.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import java.lang.reflect.Field; import java.lang.reflect.Modifier; @@ -43,26 +43,27 @@ import com.oracle.graal.pointsto.meta.AnalysisMetaAccess; import com.oracle.graal.pointsto.meta.AnalysisType; import com.oracle.graal.pointsto.util.AnalysisError; +import com.oracle.svm.sdk.staging.hosted.layeredimage.CrossLayerConstantRegistry; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredClassInitialization; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.BuildPhaseProvider; import com.oracle.svm.core.StaticFieldsSupport; import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.BuildingImageLayerPredicate; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.core.layeredimage.BuildingImageLayerPredicate; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl; import com.oracle.svm.hosted.meta.HostedField; @@ -233,7 +234,7 @@ void installFieldInAppLayer(AnalysisField aField) { } @Override - void initializeClassInAppLayer(Class c, MetaAccessProvider meta) { + public void initializeClassInAppLayer(Class c, MetaAccessProvider meta) { for (var field : c.getDeclaredFields()) { if (Modifier.isStatic(field.getModifiers())) { installFieldInAppLayer(field, meta); @@ -312,7 +313,7 @@ public UniverseBuilder.StaticFieldOffsets getAppLayerStaticFieldOffsets() { public void reinitializeKnownFields(List staticFields) { assert ImageLayerBuildingSupport.buildingExtensionLayer(); - int currentLayerNum = DynamicImageLayerInfo.getCurrentLayerNumber(); + int currentLayerNum = ImageLayerBuildingSupport.getCurrentLayerNumber(); for (var hField : staticFields) { AnalysisField aField = hField.getWrapped(); LayerAssignmentStatus state = getAssignmentStatus(aField); @@ -409,11 +410,11 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LayeredStaticFieldSupport singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, LayeredStaticFieldSupport singleton) { writer.writeInt("appLayerPrimitiveFieldStartingOffset", singleton.appLayerStaticFieldOffsets.nextPrimitiveField); writer.writeInt("appLayerObjectFieldStartingOffset", singleton.appLayerStaticFieldOffsets.nextObjectField); - HostedUniverse hUniverse = ((SVMImageLayerWriter.ImageSingletonWriterImpl) writer).getHostedUniverse(); + HostedUniverse hUniverse = ((SVMImageLayerWriter.KeyValueWriterImpl) writer).getHostedUniverse(); List knownLocations = new ArrayList<>(); singleton.appLayerFields.forEach(obj -> { AnalysisField aField = getAnalysisField(obj); @@ -440,7 +441,7 @@ public Class static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public LayeredStaticFieldSupport createFromLoader(ImageSingletonLoader loader) { + public LayeredStaticFieldSupport createFromLoader(KeyValueLoader loader) { Set appLayerFieldsWithKnownLocations = new HashSet<>(); for (int id : loader.readIntList("appLayerFieldsWithKnownLocations")) { Supplier aFieldSupplier = () -> HostedImageLayerBuildingSupport.singleton().getLoader().getAnalysisFieldForBaseLayerId(id); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LoadImageSingletonDataImpl.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LoadImageSingletonDataImpl.java similarity index 92% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LoadImageSingletonDataImpl.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LoadImageSingletonDataImpl.java index a3bcabc9818e..2f352720dc84 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LoadImageSingletonDataImpl.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LoadImageSingletonDataImpl.java @@ -22,15 +22,15 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; -import static com.oracle.svm.hosted.imagelayer.LoadImageSingletonFeature.getCrossLayerSingletonMappingInfo; +import static com.oracle.svm.hosted.layeredimage.LoadImageSingletonFeature.getCrossLayerSingletonMappingInfo; import org.graalvm.nativeimage.ImageSingletons; import com.oracle.svm.core.graal.code.CGlobalDataInfo; -import com.oracle.svm.core.imagelayer.LoadImageSingletonFactory; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; +import com.oracle.svm.core.layeredimage.LoadImageSingletonFactory; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.c.CGlobalDataFeature; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LoadImageSingletonFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LoadImageSingletonFeature.java similarity index 94% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LoadImageSingletonFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LoadImageSingletonFeature.java index 83d4a3543216..ec6f989bb7b6 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LoadImageSingletonFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LoadImageSingletonFeature.java @@ -22,9 +22,9 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; -import static com.oracle.svm.hosted.imagelayer.LoadImageSingletonFeature.CROSS_LAYER_SINGLETON_TABLE_SYMBOL; +import static com.oracle.svm.hosted.layeredimage.LoadImageSingletonFeature.CROSS_LAYER_SINGLETON_TABLE_SYMBOL; import java.util.ArrayList; import java.util.Collection; @@ -53,24 +53,8 @@ import com.oracle.svm.core.config.ConfigurationValues; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.imagelayer.LoadImageSingletonFactory; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredAllowNullEntries; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.core.layeredimage.LoadImageSingletonFactory; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.FeatureImpl; @@ -79,6 +63,21 @@ import com.oracle.svm.hosted.meta.HostedMetaAccess; import com.oracle.svm.hosted.meta.HostedType; import com.oracle.svm.hosted.meta.HostedUniverse; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredAllowNullEntries; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.util.ReflectionUtil; import jdk.graal.compiler.api.replacements.SnippetReflectionProvider; @@ -320,9 +319,9 @@ JavaConstant getMultiLayerConstant(Class key, MetaAccessProvider metaAccess, private ImageHeapObjectArray createMultiLayerArray(Class key, AnalysisType arrayType, SnippetReflectionProvider snippetReflectionProvider) { List priorIds = getCrossLayerSingletonMappingInfo().getPriorLayerObjectIDs(key); - var layerInfo = DynamicImageLayerInfo.singleton(); + int numLayers = HostedDynamicLayerInfo.getNumLayers(); - final JavaConstant[] elements = new JavaConstant[layerInfo.numLayers]; + final JavaConstant[] elements = new JavaConstant[numLayers]; BiConsumer installElement = (priorConstant, index) -> { assert elements[index] == null : elements[index]; elements[index] = priorConstant; @@ -332,7 +331,7 @@ private ImageHeapObjectArray createMultiLayerArray(Class key, AnalysisType ar priorIds.forEach(priorId -> { var priorConstant = loader.getOrCreateConstant(priorId); int index = 0; - assert layerInfo.numLayers == 2 : "incompatible with 3+ layers"; + assert numLayers == 2 : "incompatible with 3+ layers"; installElement.accept(priorConstant, index); }); @@ -340,12 +339,12 @@ private ImageHeapObjectArray createMultiLayerArray(Class key, AnalysisType ar if (ImageSingletons.contains(key)) { var singleton = LayeredImageSingletonSupport.singleton().lookup(key, true, true); JavaConstant singletonConstant = snippetReflectionProvider.forObject(singleton); - installElement.accept(singletonConstant, DynamicImageLayerInfo.getCurrentLayerNumber()); + installElement.accept(singletonConstant, ImageLayerBuildingSupport.getCurrentLayerNumber()); } // finally fill any missing holes boolean holesPresent = false; - for (int i = 0; i < layerInfo.numLayers; i++) { + for (int i = 0; i < numLayers; i++) { if (elements[i] == null) { holesPresent = true; installElement.accept(JavaConstant.NULL_POINTER, i); @@ -624,7 +623,7 @@ public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, CrossLayerSingletonMappingInfo singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, CrossLayerSingletonMappingInfo singleton) { /* * Write out all relevant information. */ @@ -696,7 +695,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public CrossLayerSingletonMappingInfo createFromLoader(ImageSingletonLoader loader) { + public CrossLayerSingletonMappingInfo createFromLoader(KeyValueLoader loader) { SVMImageLayerSingletonLoader imageLayerLoader = HostedImageLayerBuildingSupport.singleton().getSingletonLoader(); Iterator keyClasses = loader.readStringList("keyClasses").iterator(); Iterator slotAssignments = loader.readIntList("slotAssignments").iterator(); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LoadLayerArchiveSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LoadLayerArchiveSupport.java similarity index 98% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LoadLayerArchiveSupport.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LoadLayerArchiveSupport.java index ac2dc55c3876..92bd68cb9a93 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LoadLayerArchiveSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/LoadLayerArchiveSupport.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import static com.oracle.svm.core.util.EnvVariableUtils.EnvironmentVariable; import static com.oracle.svm.hosted.NativeImageClassLoaderSupport.PathDigestEntry; @@ -52,8 +52,8 @@ import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.NativeImageClassLoaderSupport; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport.OptionLayerVerificationRequests; -import com.oracle.svm.hosted.imagelayer.LoadLayerArchiveSupport.ArgumentOrigin.NameValue; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport.OptionLayerVerificationRequests; +import com.oracle.svm.hosted.layeredimage.LoadLayerArchiveSupport.ArgumentOrigin.NameValue; import com.oracle.svm.hosted.util.DiffTool; import com.oracle.svm.hosted.util.DiffTool.DiffResult; import com.oracle.svm.util.LogUtils; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/NonLayeredImageSingletonFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/NonLayeredImageSingletonFeature.java similarity index 91% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/NonLayeredImageSingletonFeature.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/NonLayeredImageSingletonFeature.java index f86ed0ca8de9..d839fae136aa 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/NonLayeredImageSingletonFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/NonLayeredImageSingletonFeature.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layeredimagesingleton; +package com.oracle.svm.hosted.layeredimage; import static jdk.graal.compiler.core.common.calc.Condition.NE; @@ -30,17 +30,19 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; import org.graalvm.nativeimage.hosted.Feature; import com.oracle.svm.core.ParsingReason; import com.oracle.svm.core.SubstrateUtil; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.graal.compiler.nodes.ConstantNode; import jdk.graal.compiler.nodes.ValueNode; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerLoader.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerLoader.java similarity index 97% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerLoader.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerLoader.java index 80ac198469f4..d4c09ccf334d 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerLoader.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerLoader.java @@ -22,14 +22,14 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import static com.oracle.graal.pointsto.util.AnalysisError.guarantee; import static com.oracle.svm.core.classinitialization.ClassInitializationInfo.InitState.FullyInitialized; import static com.oracle.svm.core.classinitialization.ClassInitializationInfo.InitState.InitializationError; -import static com.oracle.svm.hosted.imagelayer.SVMImageLayerSnapshotUtil.CLASS_INIT_NAME; -import static com.oracle.svm.hosted.imagelayer.SVMImageLayerSnapshotUtil.CONSTRUCTOR_NAME; -import static com.oracle.svm.hosted.imagelayer.SVMImageLayerSnapshotUtil.PERSISTED; +import static com.oracle.svm.hosted.layeredimage.SVMImageLayerSnapshotUtil.CLASS_INIT_NAME; +import static com.oracle.svm.hosted.layeredimage.SVMImageLayerSnapshotUtil.CONSTRUCTOR_NAME; +import static com.oracle.svm.hosted.layeredimage.SVMImageLayerSnapshotUtil.PERSISTED; import static com.oracle.svm.hosted.lambda.LambdaParser.createMethodGraph; import static com.oracle.svm.hosted.lambda.LambdaParser.getLambdaClassFromConstantNode; @@ -86,12 +86,12 @@ import com.oracle.graal.pointsto.util.AnalysisError; import com.oracle.graal.pointsto.util.AnalysisFuture; import com.oracle.graal.pointsto.util.CompletionExecutor.DebugContextRunnable; -import com.oracle.svm.common.layeredimage.LayeredCompilationBehavior; +import com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior; import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.annotate.Delete; import com.oracle.svm.core.classinitialization.ClassInitializationInfo; import com.oracle.svm.core.hub.DynamicHub; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.meta.MethodOffset; import com.oracle.svm.core.meta.MethodPointer; import com.oracle.svm.core.meta.MethodRef; @@ -103,23 +103,23 @@ import com.oracle.svm.hosted.code.CEntryPointCallStubSupport; import com.oracle.svm.hosted.code.CEntryPointData; import com.oracle.svm.hosted.code.FactoryMethodSupport; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.WrappedMethod; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.WrappedMethod.WrappedMember; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.WrappedType; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.WrappedType.SerializationGenerated; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking.EnumConstant; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking.StringConstant; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.WrappedMethod; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.WrappedMethod.WrappedMember; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.WrappedType; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.WrappedType.SerializationGenerated; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking.EnumConstant; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking.StringConstant; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot; import com.oracle.svm.hosted.jni.JNIAccessFeature; import com.oracle.svm.hosted.lambda.LambdaParser; import com.oracle.svm.hosted.meta.HostedUniverse; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerSingletonLoader.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerSingletonLoader.java similarity index 87% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerSingletonLoader.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerSingletonLoader.java index 0c62de87bb59..4db96d53ad39 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerSingletonLoader.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerSingletonLoader.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import java.util.ArrayList; import java.util.Collections; @@ -37,17 +37,17 @@ import org.graalvm.collections.EconomicMap; import org.graalvm.collections.UnmodifiableEconomicMap; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind; -import com.oracle.svm.core.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry; import com.oracle.svm.util.ReflectionUtil; import jdk.vm.ci.meta.JavaConstant; @@ -63,7 +63,7 @@ public SVMImageLayerSingletonLoader(HostedImageLayerBuildingSupport imageLayerBu this.snapshot = snapshot; } - ImageSingletonLoader createImageSingletonLoader(int keyStoreId) { + KeyValueLoader createKVMap(int keyStoreId) { EconomicMap keyStore = EconomicMap.create(); for (KeyStoreEntry.Reader entry : snapshot.getKeyStoreInstances().get(keyStoreId).getKeyStore()) { KeyStoreEntry.Value.Reader v = entry.getValue(); @@ -79,7 +79,7 @@ ImageSingletonLoader createImageSingletonLoader(int keyStoreId) { keyStore.put(entry.getKey().toString(), value); } - return new ImageSingletonLoaderImpl(keyStore, snapshot); + return new KeyValueLoaderImpl(keyStore, snapshot); } public Map>> loadImageSingletons(Function forbiddenObjectCreator) { @@ -91,7 +91,7 @@ public Map>> loadImageSingletons(Function>> loadImageSingletons(Function clazz = imageLayerBuildingSupport.lookupClass(false, singletonInstantiatorClass); var instance = (SingletonLayeredCallbacks.LayeredSingletonInstantiator) ReflectionUtil.newInstance(clazz); - result = instance.createFromLoader(imageSingletonLoader); + result = instance.createFromLoader(kvMap); Class instanceClass = imageLayerBuildingSupport.lookupClass(false, obj.getClassName().toString()); VMError.guarantee(result.getClass().equals(instanceClass)); } catch (Throwable t) { @@ -174,20 +174,20 @@ public boolean hasRegistrationCallback(Class key) { return singletonKeyToRegistrationCallbackKeyStoreId.containsKey(key); } - public ImageSingletonLoader getImageSingletonLoader(Class key) { + public KeyValueLoader getImageSingletonLoader(Class key) { assert hasRegistrationCallback(key); - return createImageSingletonLoader(singletonKeyToRegistrationCallbackKeyStoreId.get(key)); + return createKVMap(singletonKeyToRegistrationCallbackKeyStoreId.get(key)); } public Class lookupClass(boolean optional, String className) { return imageLayerBuildingSupport.lookupClass(optional, className); } - public static class ImageSingletonLoaderImpl implements ImageSingletonLoader { + public static class KeyValueLoaderImpl implements KeyValueLoader { private final UnmodifiableEconomicMap keyStore; private final SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot.Reader snapshotReader; - ImageSingletonLoaderImpl(UnmodifiableEconomicMap keyStore, SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot.Reader snapshotReader) { + KeyValueLoaderImpl(UnmodifiableEconomicMap keyStore, SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot.Reader snapshotReader) { this.keyStore = keyStore; this.snapshotReader = snapshotReader; } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerSnapshotUtil.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerSnapshotUtil.java similarity index 99% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerSnapshotUtil.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerSnapshotUtil.java index 4035f172ffb0..eb5f06e31dfc 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerSnapshotUtil.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerSnapshotUtil.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import static com.oracle.graal.pointsto.ObjectScanner.OtherReason; import static com.oracle.graal.pointsto.ObjectScanner.ScanReason; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerWriter.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerWriter.java similarity index 95% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerWriter.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerWriter.java index 537d3d09d690..ead5f53db1c7 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SVMImageLayerWriter.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SVMImageLayerWriter.java @@ -22,13 +22,13 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; -import static com.oracle.svm.hosted.imagelayer.SVMImageLayerSnapshotUtil.CONSTRUCTOR_NAME; -import static com.oracle.svm.hosted.imagelayer.SVMImageLayerSnapshotUtil.GENERATED_SERIALIZATION; -import static com.oracle.svm.hosted.imagelayer.SVMImageLayerSnapshotUtil.UNDEFINED_CONSTANT_ID; -import static com.oracle.svm.hosted.imagelayer.SVMImageLayerSnapshotUtil.UNDEFINED_FIELD_INDEX; -import static com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.Builder; +import static com.oracle.svm.hosted.layeredimage.SVMImageLayerSnapshotUtil.CONSTRUCTOR_NAME; +import static com.oracle.svm.hosted.layeredimage.SVMImageLayerSnapshotUtil.GENERATED_SERIALIZATION; +import static com.oracle.svm.hosted.layeredimage.SVMImageLayerSnapshotUtil.UNDEFINED_CONSTANT_ID; +import static com.oracle.svm.hosted.layeredimage.SVMImageLayerSnapshotUtil.UNDEFINED_FIELD_INDEX; +import static com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.Builder; import java.io.FileOutputStream; import java.io.IOException; @@ -77,7 +77,6 @@ import com.oracle.graal.pointsto.BigBang; import com.oracle.graal.pointsto.api.HostVM; -import com.oracle.graal.pointsto.api.ImageLayerWriter; import com.oracle.graal.pointsto.flow.AnalysisParsedGraph; import com.oracle.graal.pointsto.heap.ImageHeap; import com.oracle.graal.pointsto.heap.ImageHeapConstant; @@ -93,8 +92,8 @@ import com.oracle.graal.pointsto.meta.AnalysisUniverse; import com.oracle.graal.pointsto.util.AnalysisError; import com.oracle.graal.pointsto.util.AnalysisFuture; -import com.oracle.svm.common.hosted.layeredimage.LayeredCompilationSupport; -import com.oracle.svm.common.layeredimage.LayeredCompilationBehavior; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredCompilationSupport; +import com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior; import com.oracle.svm.core.FunctionPointerHolder; import com.oracle.svm.core.StaticFieldsSupport; import com.oracle.svm.core.SubstrateOptions; @@ -103,18 +102,18 @@ import com.oracle.svm.core.classinitialization.ClassInitializationInfo; import com.oracle.svm.core.graal.code.CGlobalDataBasePointer; import com.oracle.svm.core.hub.DynamicHub; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.meta.MethodOffset; import com.oracle.svm.core.meta.MethodPointer; import com.oracle.svm.core.meta.MethodRef; import com.oracle.svm.core.reflect.serialize.SerializationSupport; import com.oracle.svm.core.threadlocal.FastThreadLocal; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind; -import com.oracle.svm.core.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.ImageSingletonsSupportImpl; @@ -130,25 +129,25 @@ import com.oracle.svm.hosted.code.FactoryMethod; import com.oracle.svm.hosted.image.NativeImageHeap; import com.oracle.svm.hosted.image.NativeImageHeap.ObjectInfo; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.WrappedMethod; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.WrappedType; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking.EnumConstant; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking.StringConstant; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray; -import com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.WrappedMethod; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.WrappedType; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking.EnumConstant; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.Object.Relinking.StringConstant; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray; +import com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.SharedLayerSnapshot; import com.oracle.svm.hosted.jni.JNIJavaCallVariantWrapperMethod; import com.oracle.svm.hosted.lambda.LambdaSubstitutionType; import com.oracle.svm.hosted.lambda.StableLambdaProxyNameFeature; @@ -196,7 +195,7 @@ import jdk.vm.ci.meta.ResolvedJavaType; import jdk.vm.ci.meta.annotation.Annotated; -public class SVMImageLayerWriter extends ImageLayerWriter { +public class SVMImageLayerWriter extends com.oracle.graal.pointsto.api.ImageLayerWriter { private final SVMImageLayerSnapshotUtil imageLayerSnapshotUtil; private ImageHeap imageHeap; private AnalysisUniverse aUniverse; @@ -1143,7 +1142,7 @@ public void writeImageSingletonInfo(List, ImageSingletonsSupp Object singleton = singletonEntry.getValue().singleton(); boolean initialLayerOnly = initialLayerSingletons.contains(singleton); if (!singletonPersistInfoMap.containsKey(singleton)) { - var writer = new ImageSingletonWriterImpl(snapshotBuilder, hUniverse); + var writer = new KeyValueWriterImpl(snapshotBuilder, hUniverse); var action = (SingletonLayeredCallbacks) singletonEntry.getValue().traitMap().getTrait(SingletonTraitKind.LAYERED_CALLBACKS).get().metadata(); var flags = SubstrateUtil.cast(action, SingletonLayeredCallbacks.class).doPersist(writer, singleton); if (initialLayerOnly) { @@ -1266,12 +1265,12 @@ public void writeConstant(JavaConstant constant, ConstantReference.Builder build } } - public static class ImageSingletonWriterImpl implements ImageSingletonWriter { + public static class KeyValueWriterImpl implements KeyValueWriter { private final EconomicMap keyValueStore = EconomicMap.create(); private final SharedLayerSnapshot.Builder snapshotBuilder; private final HostedUniverse hUniverse; - ImageSingletonWriterImpl(SharedLayerSnapshot.Builder snapshotBuilder, HostedUniverse hUniverse) { + KeyValueWriterImpl(SharedLayerSnapshot.Builder snapshotBuilder, HostedUniverse hUniverse) { this.snapshotBuilder = snapshotBuilder; this.hUniverse = hUniverse; } diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SharedLayerSnapshotCapnProtoSchemaHolder.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SharedLayerSnapshotCapnProtoSchemaHolder.java similarity index 88% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SharedLayerSnapshotCapnProtoSchemaHolder.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SharedLayerSnapshotCapnProtoSchemaHolder.java index db7f0c9acd40..385c734efa3e 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/SharedLayerSnapshotCapnProtoSchemaHolder.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/SharedLayerSnapshotCapnProtoSchemaHolder.java @@ -27,7 +27,7 @@ // Generated by Cap'n Proto compiler, DO NOT EDIT // source: SharedLayerSnapshotCapnProtoSchema.capnp -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; @@ -304,23 +304,23 @@ public final com.oracle.svm.shaded.org.capnproto.PrimitiveList.Int.Builder initS public final boolean hasAnnotationList() { return !_pointerFieldIsNull(9); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getAnnotationList() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 9, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getAnnotationList() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 9, null, 0); } - public final void setAnnotationList(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 9, value); + public final void setAnnotationList(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 9, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initAnnotationList(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 9, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initAnnotationList(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 9, size); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.Builder getClassInitializationInfo() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.factory, 10, null, 0); + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.Builder getClassInitializationInfo() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.factory, 10, null, 0); } - public final void setClassInitializationInfo(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.factory,10, value); + public final void setClassInitializationInfo(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.factory,10, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.Builder initClassInitializationInfo() { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.factory,10, 0); + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.Builder initClassInitializationInfo() { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.factory,10, 0); } public final boolean getHasArrayType() { return _getBooleanField(106); @@ -509,15 +509,15 @@ public final com.oracle.svm.shaded.org.capnproto.PrimitiveList.Int.Reader getSta public final boolean hasAnnotationList() { return !_pointerFieldIsNull(9); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getAnnotationList() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 9, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getAnnotationList() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 9, null, 0); } public boolean hasClassInitializationInfo() { return !_pointerFieldIsNull(10); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.Reader getClassInitializationInfo() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.factory,10,null, 0); + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.Reader getClassInitializationInfo() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ClassInitializationInfo.factory,10,null, 0); } public final boolean getHasArrayType() { @@ -1182,14 +1182,14 @@ public final com.oracle.svm.shaded.org.capnproto.Text.Builder initMethodHandleIn public final boolean hasAnnotationList() { return !_pointerFieldIsNull(7); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getAnnotationList() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 7, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getAnnotationList() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 7, null, 0); } - public final void setAnnotationList(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 7, value); + public final void setAnnotationList(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 7, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initAnnotationList(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 7, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initAnnotationList(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 7, size); } public final boolean getIsVarArgs() { return _getBooleanField(168); @@ -1388,8 +1388,8 @@ public com.oracle.svm.shaded.org.capnproto.Text.Reader getMethodHandleIntrinsicN public final boolean hasAnnotationList() { return !_pointerFieldIsNull(7); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getAnnotationList() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 7, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getAnnotationList() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 7, null, 0); } public final boolean getIsVarArgs() { @@ -2216,14 +2216,14 @@ public final void setIsSynthetic(boolean value) { public final boolean hasAnnotationList() { return !_pointerFieldIsNull(1); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getAnnotationList() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 1, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getAnnotationList() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 1, null, 0); } - public final void setAnnotationList(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 1, value); + public final void setAnnotationList(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 1, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initAnnotationList(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 1, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initAnnotationList(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 1, size); } public final boolean hasName() { return !_pointerFieldIsNull(2); @@ -2254,14 +2254,14 @@ public final void setAssignmentStatus(int value) { _setIntField(8, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.Builder getSimulatedFieldValue() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.factory, 3, null, 0); + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.Builder getSimulatedFieldValue() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.factory, 3, null, 0); } - public final void setSimulatedFieldValue(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.factory,3, value); + public final void setSimulatedFieldValue(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.factory,3, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.Builder initSimulatedFieldValue() { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.factory,3, 0); + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.Builder initSimulatedFieldValue() { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.factory,3, 0); } public final boolean hasUpdatableReceivers() { return !_pointerFieldIsNull(4); @@ -2348,8 +2348,8 @@ public final boolean getIsSynthetic() { public final boolean hasAnnotationList() { return !_pointerFieldIsNull(1); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getAnnotationList() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 1, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getAnnotationList() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.listFactory, 1, null, 0); } public boolean hasName() { @@ -2370,8 +2370,8 @@ public final int getAssignmentStatus() { public boolean hasSimulatedFieldValue() { return !_pointerFieldIsNull(3); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.Reader getSimulatedFieldValue() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.factory,3,null, 0); + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.Reader getSimulatedFieldValue() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.factory,3,null, 0); } public final boolean hasUpdatableReceivers() { @@ -2569,18 +2569,18 @@ public final void setNotMaterialized(com.oracle.svm.shaded.org.capnproto.Void va public final boolean isPrimitiveValue() { return which() == ConstantReference.Which.PRIMITIVE_VALUE; } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Builder getPrimitiveValue() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Builder getPrimitiveValue() { assert which() == ConstantReference.Which.PRIMITIVE_VALUE: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory, 0, null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory, 0, null, 0); } - public final void setPrimitiveValue(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Reader value) { + public final void setPrimitiveValue(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Reader value) { _setShortField(2, (short)ConstantReference.Which.PRIMITIVE_VALUE.ordinal()); - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,0, value); + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,0, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Builder initPrimitiveValue() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Builder initPrimitiveValue() { _setShortField(2, (short)ConstantReference.Which.PRIMITIVE_VALUE.ordinal()); - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,0, 0); + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,0, 0); } public final boolean isMethodPointer() { return which() == ConstantReference.Which.METHOD_POINTER; @@ -2609,18 +2609,18 @@ public final MethodOffset.Builder initMethodOffset() { public final boolean isCEntryPointLiteralCodePointer() { return which() == ConstantReference.Which.C_ENTRY_POINT_LITERAL_CODE_POINTER; } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.Builder getCEntryPointLiteralCodePointer() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.Builder getCEntryPointLiteralCodePointer() { assert which() == ConstantReference.Which.C_ENTRY_POINT_LITERAL_CODE_POINTER: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.factory, 0, null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.factory, 0, null, 0); } - public final void setCEntryPointLiteralCodePointer(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.Reader value) { + public final void setCEntryPointLiteralCodePointer(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.Reader value) { _setShortField(2, (short)ConstantReference.Which.C_ENTRY_POINT_LITERAL_CODE_POINTER.ordinal()); - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.factory,0, value); + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.factory,0, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.Builder initCEntryPointLiteralCodePointer() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.Builder initCEntryPointLiteralCodePointer() { _setShortField(2, (short)ConstantReference.Which.C_ENTRY_POINT_LITERAL_CODE_POINTER.ordinal()); - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.factory,0, 0); + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.factory,0, 0); } public final boolean isCGlobalDataBasePointer() { return which() == ConstantReference.Which.C_GLOBAL_DATA_BASE_POINTER; @@ -2685,10 +2685,10 @@ public final boolean isPrimitiveValue() { public boolean hasPrimitiveValue() { return !_pointerFieldIsNull(0); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Reader getPrimitiveValue() { + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Reader getPrimitiveValue() { assert which() == ConstantReference.Which.PRIMITIVE_VALUE: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,0,null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,0,null, 0); } public final boolean isMethodPointer() { @@ -2711,10 +2711,10 @@ public final boolean isCEntryPointLiteralCodePointer() { public boolean hasCEntryPointLiteralCodePointer() { return !_pointerFieldIsNull(0); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.Reader getCEntryPointLiteralCodePointer() { + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.Reader getCEntryPointLiteralCodePointer() { assert which() == ConstantReference.Which.C_ENTRY_POINT_LITERAL_CODE_POINTER: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.factory,0,null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CEntryPointLiteralReference.factory,0,null, 0); } public final boolean isCGlobalDataBasePointer() { @@ -2987,18 +2987,18 @@ public final Object.Builder initObject() { public final boolean isPrimitiveData() { return which() == PersistedConstant.Which.PRIMITIVE_DATA; } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Builder getPrimitiveData() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Builder getPrimitiveData() { assert which() == PersistedConstant.Which.PRIMITIVE_DATA: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory, 0, null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory, 0, null, 0); } - public final void setPrimitiveData(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Reader value) { + public final void setPrimitiveData(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Reader value) { _setShortField(16, (short)PersistedConstant.Which.PRIMITIVE_DATA.ordinal()); - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,0, value); + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,0, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Builder initPrimitiveData() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Builder initPrimitiveData() { _setShortField(16, (short)PersistedConstant.Which.PRIMITIVE_DATA.ordinal()); - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,0, 0); + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,0, 0); } public final boolean isRelocatable() { return which() == PersistedConstant.Which.RELOCATABLE; @@ -3074,10 +3074,10 @@ public final boolean isPrimitiveData() { public boolean hasPrimitiveData() { return !_pointerFieldIsNull(0); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Reader getPrimitiveData() { + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Reader getPrimitiveData() { assert which() == PersistedConstant.Which.PRIMITIVE_DATA: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,0,null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,0,null, 0); } public final boolean isRelocatable() { @@ -3141,14 +3141,14 @@ public final Reader asReader() { public final boolean hasData() { return !_pointerFieldIsNull(0); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getData() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 0, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getData() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 0, null, 0); } - public final void setData(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 0, value); + public final void setData(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 0, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initData(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 0, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initData(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 0, size); } public final boolean isInstance() { return which() == PersistedConstant.Object.Which.INSTANCE; @@ -3203,8 +3203,8 @@ public Which which() { public final boolean hasData() { return !_pointerFieldIsNull(0); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getData() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 0, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getData() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 0, null, 0); } public final boolean isInstance() { @@ -4297,14 +4297,14 @@ public final void setId(int value) { public final boolean hasKeyStore() { return !_pointerFieldIsNull(0); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getKeyStore() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry.listFactory, 0, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getKeyStore() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry.listFactory, 0, null, 0); } - public final void setKeyStore(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry.listFactory, 0, value); + public final void setKeyStore(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry.listFactory, 0, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initKeyStore(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry.listFactory, 0, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initKeyStore(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry.listFactory, 0, size); } } @@ -4320,8 +4320,8 @@ public final int getId() { public final boolean hasKeyStore() { return !_pointerFieldIsNull(0); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getKeyStore() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry.listFactory, 0, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getKeyStore() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreEntry.listFactory, 0, null, 0); } } @@ -4375,14 +4375,14 @@ public final com.oracle.svm.shaded.org.capnproto.Text.Builder initTypeName(int s public final boolean hasValues() { return !_pointerFieldIsNull(1); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getValues() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 1, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getValues() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 1, null, 0); } - public final void setValues(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 1, value); + public final void setValues(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 1, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initValues(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 1, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initValues(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 1, size); } } @@ -4401,8 +4401,8 @@ public com.oracle.svm.shaded.org.capnproto.Text.Reader getTypeName() { public final boolean hasValues() { return !_pointerFieldIsNull(1); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getValues() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 1, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getValues() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 1, null, 0); } } @@ -4490,34 +4490,34 @@ public final com.oracle.svm.shaded.org.capnproto.Text.Builder initString(int siz public final boolean isPrimitive() { return which() == PersistedAnnotationElement.Which.PRIMITIVE; } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Builder getPrimitive() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Builder getPrimitive() { assert which() == PersistedAnnotationElement.Which.PRIMITIVE: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory, 1, null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory, 1, null, 0); } - public final void setPrimitive(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Reader value) { + public final void setPrimitive(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Reader value) { _setShortField(0, (short)PersistedAnnotationElement.Which.PRIMITIVE.ordinal()); - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,1, value); + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,1, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Builder initPrimitive() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Builder initPrimitive() { _setShortField(0, (short)PersistedAnnotationElement.Which.PRIMITIVE.ordinal()); - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,1, 0); + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,1, 0); } public final boolean isPrimitiveArray() { return which() == PersistedAnnotationElement.Which.PRIMITIVE_ARRAY; } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Builder getPrimitiveArray() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Builder getPrimitiveArray() { assert which() == PersistedAnnotationElement.Which.PRIMITIVE_ARRAY: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory, 1, null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory, 1, null, 0); } - public final void setPrimitiveArray(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Reader value) { + public final void setPrimitiveArray(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Reader value) { _setShortField(0, (short)PersistedAnnotationElement.Which.PRIMITIVE_ARRAY.ordinal()); - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,1, value); + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,1, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Builder initPrimitiveArray() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Builder initPrimitiveArray() { _setShortField(0, (short)PersistedAnnotationElement.Which.PRIMITIVE_ARRAY.ordinal()); - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,1, 0); + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,1, 0); } public final boolean isEnum() { return which() == PersistedAnnotationElement.Which.ENUM; @@ -4557,18 +4557,18 @@ public final com.oracle.svm.shaded.org.capnproto.Text.Builder initClassName(int public final boolean isAnnotation() { return which() == PersistedAnnotationElement.Which.ANNOTATION; } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.Builder getAnnotation() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.Builder getAnnotation() { assert which() == PersistedAnnotationElement.Which.ANNOTATION: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.factory, 1, null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.factory, 1, null, 0); } - public final void setAnnotation(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.Reader value) { + public final void setAnnotation(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.Reader value) { _setShortField(0, (short)PersistedAnnotationElement.Which.ANNOTATION.ordinal()); - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.factory,1, value); + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.factory,1, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.Builder initAnnotation() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.Builder initAnnotation() { _setShortField(0, (short)PersistedAnnotationElement.Which.ANNOTATION.ordinal()); - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.factory,1, 0); + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.factory,1, 0); } public final boolean isMembers() { return which() == PersistedAnnotationElement.Which.MEMBERS; @@ -4626,10 +4626,10 @@ public final boolean isPrimitive() { public boolean hasPrimitive() { return !_pointerFieldIsNull(1); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Reader getPrimitive() { + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.Reader getPrimitive() { assert which() == PersistedAnnotationElement.Which.PRIMITIVE: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,1,null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveValue.factory,1,null, 0); } public final boolean isPrimitiveArray() { @@ -4638,10 +4638,10 @@ public final boolean isPrimitiveArray() { public boolean hasPrimitiveArray() { return !_pointerFieldIsNull(1); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Reader getPrimitiveArray() { + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.Reader getPrimitiveArray() { assert which() == PersistedAnnotationElement.Which.PRIMITIVE_ARRAY: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,1,null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PrimitiveArray.factory,1,null, 0); } public final boolean isEnum() { @@ -4668,10 +4668,10 @@ public final boolean isAnnotation() { public boolean hasAnnotation() { return !_pointerFieldIsNull(1); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.Reader getAnnotation() { + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.Reader getAnnotation() { assert which() == PersistedAnnotationElement.Which.ANNOTATION: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.factory,1,null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotation.factory,1,null, 0); } public final boolean isMembers() { @@ -4823,14 +4823,14 @@ public final com.oracle.svm.shaded.org.capnproto.Text.Builder initClassName(int public final boolean hasMemberValues() { return !_pointerFieldIsNull(2); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getMemberValues() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 2, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getMemberValues() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 2, null, 0); } - public final void setMemberValues(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 2, value); + public final void setMemberValues(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 2, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initMemberValues(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 2, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initMemberValues(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 2, size); } } @@ -4849,8 +4849,8 @@ public com.oracle.svm.shaded.org.capnproto.Text.Reader getClassName() { public final boolean hasMemberValues() { return !_pointerFieldIsNull(2); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getMemberValues() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 2, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getMemberValues() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnnotationElement.listFactory, 2, null, 0); } } @@ -4953,74 +4953,74 @@ public final com.oracle.svm.shaded.org.capnproto.PrimitiveList.Int.Builder initC public final boolean hasTypes() { return !_pointerFieldIsNull(1); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getTypes() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.listFactory, 1, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getTypes() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.listFactory, 1, null, 0); } - public final void setTypes(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.listFactory, 1, value); + public final void setTypes(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.listFactory, 1, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initTypes(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.listFactory, 1, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initTypes(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.listFactory, 1, size); } public final boolean hasMethods() { return !_pointerFieldIsNull(2); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getMethods() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.listFactory, 2, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getMethods() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.listFactory, 2, null, 0); } - public final void setMethods(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.listFactory, 2, value); + public final void setMethods(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.listFactory, 2, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initMethods(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.listFactory, 2, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initMethods(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.listFactory, 2, size); } public final boolean hasConstants() { return !_pointerFieldIsNull(3); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getConstants() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.listFactory, 3, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getConstants() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.listFactory, 3, null, 0); } - public final void setConstants(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.listFactory, 3, value); + public final void setConstants(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.listFactory, 3, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initConstants(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.listFactory, 3, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initConstants(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.listFactory, 3, size); } public final boolean hasSingletonKeys() { return !_pointerFieldIsNull(4); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getSingletonKeys() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey.listFactory, 4, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getSingletonKeys() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey.listFactory, 4, null, 0); } - public final void setSingletonKeys(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey.listFactory, 4, value); + public final void setSingletonKeys(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey.listFactory, 4, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initSingletonKeys(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey.listFactory, 4, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initSingletonKeys(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey.listFactory, 4, size); } public final boolean hasSingletonObjects() { return !_pointerFieldIsNull(5); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getSingletonObjects() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject.listFactory, 5, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getSingletonObjects() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject.listFactory, 5, null, 0); } - public final void setSingletonObjects(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject.listFactory, 5, value); + public final void setSingletonObjects(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject.listFactory, 5, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initSingletonObjects(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject.listFactory, 5, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initSingletonObjects(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject.listFactory, 5, size); } public final boolean hasFields() { return !_pointerFieldIsNull(6); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getFields() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField.listFactory, 6, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getFields() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField.listFactory, 6, null, 0); } - public final void setFields(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField.listFactory, 6, value); + public final void setFields(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField.listFactory, 6, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initFields(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField.listFactory, 6, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initFields(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField.listFactory, 6, size); } public final int getNextLayerNumber() { return _getIntField(8); @@ -5029,14 +5029,14 @@ public final void setNextLayerNumber(int value) { _setIntField(8, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.Builder getStaticFinalFieldFoldingSingleton() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.factory, 7, null, 0); + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.Builder getStaticFinalFieldFoldingSingleton() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.factory, 7, null, 0); } - public final void setStaticFinalFieldFoldingSingleton(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.factory,7, value); + public final void setStaticFinalFieldFoldingSingleton(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.factory,7, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.Builder initStaticFinalFieldFoldingSingleton() { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.factory,7, 0); + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.Builder initStaticFinalFieldFoldingSingleton() { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.factory,7, 0); } public final boolean hasRegisteredJNILibraries() { return !_pointerFieldIsNull(8); @@ -5050,38 +5050,38 @@ public final void setRegisteredJNILibraries(com.oracle.svm.shaded.org.capnproto. public final com.oracle.svm.shaded.org.capnproto.TextList.Builder initRegisteredJNILibraries(int size) { return _initPointerField(com.oracle.svm.shaded.org.capnproto.TextList.factory, 8, size); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.Builder getLayeredRuntimeMetadataSingleton() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.factory, 9, null, 0); + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.Builder getLayeredRuntimeMetadataSingleton() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.factory, 9, null, 0); } - public final void setLayeredRuntimeMetadataSingleton(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.factory,9, value); + public final void setLayeredRuntimeMetadataSingleton(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.factory,9, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.Builder initLayeredRuntimeMetadataSingleton() { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.factory,9, 0); + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.Builder initLayeredRuntimeMetadataSingleton() { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.factory,9, 0); } public final boolean hasDynamicHubInfos() { return !_pointerFieldIsNull(10); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getDynamicHubInfos() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo.listFactory, 10, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getDynamicHubInfos() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo.listFactory, 10, null, 0); } - public final void setDynamicHubInfos(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo.listFactory, 10, value); + public final void setDynamicHubInfos(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo.listFactory, 10, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initDynamicHubInfos(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo.listFactory, 10, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initDynamicHubInfos(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo.listFactory, 10, size); } public final boolean hasHostedMethods() { return !_pointerFieldIsNull(11); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getHostedMethods() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedHostedMethod.listFactory, 11, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getHostedMethods() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedHostedMethod.listFactory, 11, null, 0); } - public final void setHostedMethods(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedHostedMethod.listFactory, 11, value); + public final void setHostedMethods(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedHostedMethod.listFactory, 11, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initHostedMethods(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedHostedMethod.listFactory, 11, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initHostedMethods(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedHostedMethod.listFactory, 11, size); } public final boolean hasNodeClassMapLocation() { return !_pointerFieldIsNull(12); @@ -5110,38 +5110,38 @@ public final void setSharedLayerBootLayerModules(com.oracle.svm.shaded.org.capnp public final com.oracle.svm.shaded.org.capnproto.TextList.Builder initSharedLayerBootLayerModules(int size) { return _initPointerField(com.oracle.svm.shaded.org.capnproto.TextList.factory, 13, size); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.Builder getLayeredModule() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.factory, 14, null, 0); + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.Builder getLayeredModule() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.factory, 14, null, 0); } - public final void setLayeredModule(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.factory,14, value); + public final void setLayeredModule(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.factory,14, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.Builder initLayeredModule() { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.factory,14, 0); + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.Builder initLayeredModule() { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.factory,14, 0); } public final boolean hasCGlobals() { return !_pointerFieldIsNull(15); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getCGlobals() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CGlobalDataInfo.listFactory, 15, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getCGlobals() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CGlobalDataInfo.listFactory, 15, null, 0); } - public final void setCGlobals(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CGlobalDataInfo.listFactory, 15, value); + public final void setCGlobals(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CGlobalDataInfo.listFactory, 15, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initCGlobals(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CGlobalDataInfo.listFactory, 15, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initCGlobals(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CGlobalDataInfo.listFactory, 15, size); } public final boolean hasKeyStoreInstances() { return !_pointerFieldIsNull(16); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getKeyStoreInstances() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreInstance.listFactory, 16, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getKeyStoreInstances() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreInstance.listFactory, 16, null, 0); } - public final void setKeyStoreInstances(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreInstance.listFactory, 16, value); + public final void setKeyStoreInstances(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreInstance.listFactory, 16, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initKeyStoreInstances(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreInstance.listFactory, 16, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initKeyStoreInstances(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreInstance.listFactory, 16, size); } } @@ -5188,43 +5188,43 @@ public final com.oracle.svm.shaded.org.capnproto.PrimitiveList.Int.Reader getCon public final boolean hasTypes() { return !_pointerFieldIsNull(1); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getTypes() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.listFactory, 1, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getTypes() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisType.listFactory, 1, null, 0); } public final boolean hasMethods() { return !_pointerFieldIsNull(2); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getMethods() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.listFactory, 2, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getMethods() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisMethod.listFactory, 2, null, 0); } public final boolean hasConstants() { return !_pointerFieldIsNull(3); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getConstants() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.listFactory, 3, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getConstants() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedConstant.listFactory, 3, null, 0); } public final boolean hasSingletonKeys() { return !_pointerFieldIsNull(4); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getSingletonKeys() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey.listFactory, 4, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getSingletonKeys() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonKey.listFactory, 4, null, 0); } public final boolean hasSingletonObjects() { return !_pointerFieldIsNull(5); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getSingletonObjects() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject.listFactory, 5, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getSingletonObjects() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ImageSingletonObject.listFactory, 5, null, 0); } public final boolean hasFields() { return !_pointerFieldIsNull(6); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getFields() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField.listFactory, 6, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getFields() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedAnalysisField.listFactory, 6, null, 0); } public final int getNextLayerNumber() { @@ -5234,8 +5234,8 @@ public final int getNextLayerNumber() { public boolean hasStaticFinalFieldFoldingSingleton() { return !_pointerFieldIsNull(7); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.Reader getStaticFinalFieldFoldingSingleton() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.factory,7,null, 0); + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.Reader getStaticFinalFieldFoldingSingleton() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.StaticFinalFieldFoldingSingleton.factory,7,null, 0); } public final boolean hasRegisteredJNILibraries() { @@ -5248,22 +5248,22 @@ public final com.oracle.svm.shaded.org.capnproto.TextList.Reader getRegisteredJN public boolean hasLayeredRuntimeMetadataSingleton() { return !_pointerFieldIsNull(9); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.Reader getLayeredRuntimeMetadataSingleton() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.factory,9,null, 0); + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.Reader getLayeredRuntimeMetadataSingleton() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredRuntimeMetadataSingleton.factory,9,null, 0); } public final boolean hasDynamicHubInfos() { return !_pointerFieldIsNull(10); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getDynamicHubInfos() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo.listFactory, 10, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getDynamicHubInfos() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.DynamicHubInfo.listFactory, 10, null, 0); } public final boolean hasHostedMethods() { return !_pointerFieldIsNull(11); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getHostedMethods() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedHostedMethod.listFactory, 11, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getHostedMethods() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.PersistedHostedMethod.listFactory, 11, null, 0); } public boolean hasNodeClassMapLocation() { @@ -5283,22 +5283,22 @@ public final com.oracle.svm.shaded.org.capnproto.TextList.Reader getSharedLayerB public boolean hasLayeredModule() { return !_pointerFieldIsNull(14); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.Reader getLayeredModule() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.factory,14,null, 0); + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.Reader getLayeredModule() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.LayeredModule.factory,14,null, 0); } public final boolean hasCGlobals() { return !_pointerFieldIsNull(15); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getCGlobals() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CGlobalDataInfo.listFactory, 15, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getCGlobals() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CGlobalDataInfo.listFactory, 15, null, 0); } public final boolean hasKeyStoreInstances() { return !_pointerFieldIsNull(16); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getKeyStoreInstances() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreInstance.listFactory, 16, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getKeyStoreInstances() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.KeyStoreInstance.listFactory, 16, null, 0); } } @@ -5373,26 +5373,26 @@ public final com.oracle.svm.shaded.org.capnproto.PrimitiveList.Boolean.Builder i public final boolean hasBytecodeParsedFoldedFieldValues() { return !_pointerFieldIsNull(3); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getBytecodeParsedFoldedFieldValues() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 3, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getBytecodeParsedFoldedFieldValues() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 3, null, 0); } - public final void setBytecodeParsedFoldedFieldValues(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 3, value); + public final void setBytecodeParsedFoldedFieldValues(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 3, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initBytecodeParsedFoldedFieldValues(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 3, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initBytecodeParsedFoldedFieldValues(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 3, size); } public final boolean hasAfterParsingHooksDoneFoldedFieldValues() { return !_pointerFieldIsNull(4); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getAfterParsingHooksDoneFoldedFieldValues() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 4, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getAfterParsingHooksDoneFoldedFieldValues() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 4, null, 0); } - public final void setAfterParsingHooksDoneFoldedFieldValues(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 4, value); + public final void setAfterParsingHooksDoneFoldedFieldValues(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 4, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initAfterParsingHooksDoneFoldedFieldValues(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 4, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initAfterParsingHooksDoneFoldedFieldValues(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 4, size); } } @@ -5425,15 +5425,15 @@ public final com.oracle.svm.shaded.org.capnproto.PrimitiveList.Boolean.Reader ge public final boolean hasBytecodeParsedFoldedFieldValues() { return !_pointerFieldIsNull(3); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getBytecodeParsedFoldedFieldValues() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 3, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getBytecodeParsedFoldedFieldValues() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 3, null, 0); } public final boolean hasAfterParsingHooksDoneFoldedFieldValues() { return !_pointerFieldIsNull(4); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getAfterParsingHooksDoneFoldedFieldValues() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 4, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getAfterParsingHooksDoneFoldedFieldValues() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ConstantReference.listFactory, 4, null, 0); } } @@ -5588,26 +5588,26 @@ public final Reader asReader() { public final boolean hasOpenModulePackages() { return !_pointerFieldIsNull(0); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getOpenModulePackages() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 0, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getOpenModulePackages() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 0, null, 0); } - public final void setOpenModulePackages(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 0, value); + public final void setOpenModulePackages(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 0, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initOpenModulePackages(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 0, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initOpenModulePackages(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 0, size); } public final boolean hasExportedModulePackages() { return !_pointerFieldIsNull(1); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getExportedModulePackages() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 1, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getExportedModulePackages() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 1, null, 0); } - public final void setExportedModulePackages(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 1, value); + public final void setExportedModulePackages(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 1, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initExportedModulePackages(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 1, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initExportedModulePackages(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 1, size); } } @@ -5619,15 +5619,15 @@ public static final class Reader extends com.oracle.svm.shaded.org.capnproto.Str public final boolean hasOpenModulePackages() { return !_pointerFieldIsNull(0); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getOpenModulePackages() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 0, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getOpenModulePackages() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 0, null, 0); } public final boolean hasExportedModulePackages() { return !_pointerFieldIsNull(1); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getExportedModulePackages() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 1, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getExportedModulePackages() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.ModulePackages.listFactory, 1, null, 0); } } @@ -5681,14 +5681,14 @@ public final com.oracle.svm.shaded.org.capnproto.Text.Builder initModuleKey(int public final boolean hasPackages() { return !_pointerFieldIsNull(1); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getPackages() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.Packages.listFactory, 1, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getPackages() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.Packages.listFactory, 1, null, 0); } - public final void setPackages(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.Packages.listFactory, 1, value); + public final void setPackages(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.Packages.listFactory, 1, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initPackages(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.Packages.listFactory, 1, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initPackages(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.Packages.listFactory, 1, size); } } @@ -5707,8 +5707,8 @@ public com.oracle.svm.shaded.org.capnproto.Text.Reader getModuleKey() { public final boolean hasPackages() { return !_pointerFieldIsNull(1); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getPackages() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.Packages.listFactory, 1, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getPackages() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.Packages.listFactory, 1, null, 0); } } @@ -6317,18 +6317,18 @@ public final com.oracle.svm.shaded.org.capnproto.Text.Builder initOriginalSymbol public final boolean isCodeLocation() { return which() == CGlobalDataInfo.LinkingInfo.Which.CODE_LOCATION; } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.Builder getCodeLocation() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.Builder getCodeLocation() { assert which() == CGlobalDataInfo.LinkingInfo.Which.CODE_LOCATION: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.factory, 1, null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.factory, 1, null, 0); } - public final void setCodeLocation(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.Reader value) { + public final void setCodeLocation(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.Reader value) { _setShortField(1, (short)CGlobalDataInfo.LinkingInfo.Which.CODE_LOCATION.ordinal()); - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.factory,1, value); + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.factory,1, value); } - public final com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.Builder initCodeLocation() { + public final com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.Builder initCodeLocation() { _setShortField(1, (short)CGlobalDataInfo.LinkingInfo.Which.CODE_LOCATION.ordinal()); - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.factory,1, 0); + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.factory,1, 0); } } @@ -6361,10 +6361,10 @@ public final boolean isCodeLocation() { public boolean hasCodeLocation() { return !_pointerFieldIsNull(1); } - public com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.Reader getCodeLocation() { + public com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.Reader getCodeLocation() { assert which() == CGlobalDataInfo.LinkingInfo.Which.CODE_LOCATION: "Must check which() before get()ing a union member."; - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.factory,1,null, 0); + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.CodeLocation.factory,1,null, 0); } } @@ -6810,14 +6810,14 @@ public final com.oracle.svm.shaded.org.capnproto.PrimitiveList.Int.Builder initL public final boolean hasDispatchTableSlotValues() { return !_pointerFieldIsNull(2); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getDispatchTableSlotValues() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.DispatchSlotInfo.listFactory, 2, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder getDispatchTableSlotValues() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.DispatchSlotInfo.listFactory, 2, null, 0); } - public final void setDispatchTableSlotValues(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { - _setPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.DispatchSlotInfo.listFactory, 2, value); + public final void setDispatchTableSlotValues(com.oracle.svm.shaded.org.capnproto.StructList.Reader value) { + _setPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.DispatchSlotInfo.listFactory, 2, value); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initDispatchTableSlotValues(int size) { - return _initPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.DispatchSlotInfo.listFactory, 2, size); + public final com.oracle.svm.shaded.org.capnproto.StructList.Builder initDispatchTableSlotValues(int size) { + return _initPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.DispatchSlotInfo.listFactory, 2, size); } public final int getInterfaceId() { return _getIntField(5); @@ -6870,8 +6870,8 @@ public final com.oracle.svm.shaded.org.capnproto.PrimitiveList.Int.Reader getLoc public final boolean hasDispatchTableSlotValues() { return !_pointerFieldIsNull(2); } - public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getDispatchTableSlotValues() { - return _getPointerField(com.oracle.svm.hosted.imagelayer.SharedLayerSnapshotCapnProtoSchemaHolder.DispatchSlotInfo.listFactory, 2, null, 0); + public final com.oracle.svm.shaded.org.capnproto.StructList.Reader getDispatchTableSlotValues() { + return _getPointerField(com.oracle.svm.hosted.layeredimage.SharedLayerSnapshotCapnProtoSchemaHolder.DispatchSlotInfo.listFactory, 2, null, 0); } public final int getInterfaceId() { diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/WriteLayerArchiveSupport.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/WriteLayerArchiveSupport.java similarity index 99% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/WriteLayerArchiveSupport.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/WriteLayerArchiveSupport.java index 9e52a800e85d..19bb7d0bf35b 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/WriteLayerArchiveSupport.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/WriteLayerArchiveSupport.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import static com.oracle.svm.hosted.NativeImageClassLoaderSupport.PathDigestEntry; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/package-info.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/package-info.java similarity index 96% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/package-info.java rename to substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/package-info.java index 310108c01eee..b883dd0ffc80 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/package-info.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/layeredimage/package-info.java @@ -24,7 +24,7 @@ */ @Platforms(Platform.HOSTED_ONLY.class) -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.hosted.layeredimage; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; \ No newline at end of file diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/DynamicHubOffsetsFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/DynamicHubOffsetsFeature.java index 5829c0615eea..86d8d6311952 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/DynamicHubOffsetsFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/DynamicHubOffsetsFeature.java @@ -29,10 +29,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.graal.meta.DynamicHubOffsets; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl; @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/HostedField.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/HostedField.java index ea60c9ddea26..17fed7ae0eba 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/HostedField.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/HostedField.java @@ -24,13 +24,13 @@ */ package com.oracle.svm.hosted.meta; -import static com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton.LAYER_NUM_UNINSTALLED; +import static com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton.LAYER_NUM_UNINSTALLED; import com.oracle.svm.util.OriginalFieldProvider; import com.oracle.graal.pointsto.infrastructure.WrappedJavaField; import com.oracle.graal.pointsto.meta.AnalysisField; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.meta.SharedField; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.ameta.FieldValueInterceptionSupport; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/HostedMethodNameFactory.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/HostedMethodNameFactory.java index e4be9baedec5..40c38b2b27bf 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/HostedMethodNameFactory.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/HostedMethodNameFactory.java @@ -33,10 +33,10 @@ import com.oracle.graal.pointsto.meta.AnalysisMethod; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.option.HostedOptionKey; import com.oracle.svm.core.util.VMError; -import com.oracle.svm.hosted.imagelayer.HostedDynamicLayerInfo; +import com.oracle.svm.hosted.layeredimage.HostedDynamicLayerInfo; import com.oracle.svm.util.LogUtils; import jdk.graal.compiler.options.Option; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/KnownOffsetsFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/KnownOffsetsFeature.java index 7c94d4d9c3ae..43b52413d004 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/KnownOffsetsFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/KnownOffsetsFeature.java @@ -39,10 +39,10 @@ import com.oracle.svm.core.graal.meta.KnownOffsets; import com.oracle.svm.core.stack.JavaFrameAnchor; import com.oracle.svm.core.thread.VMThreads; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.BeforeCompilationAccessImpl; import com.oracle.svm.hosted.c.info.AccessorInfo; import com.oracle.svm.hosted.c.info.StructFieldInfo; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/TypeCheckBuilder.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/TypeCheckBuilder.java index bb34e2682801..54f6c20e2fac 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/TypeCheckBuilder.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/TypeCheckBuilder.java @@ -53,7 +53,7 @@ import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.DynamicHubSupport; import com.oracle.svm.core.hub.DynamicHubTypeCheckUtil; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.OpenTypeWorldFeature; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/UniverseBuilder.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/UniverseBuilder.java index 907c7719dd99..19f2f2c4028b 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/UniverseBuilder.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/UniverseBuilder.java @@ -88,9 +88,8 @@ import com.oracle.svm.core.hub.DynamicHubSupport; import com.oracle.svm.core.hub.DynamicHubTypeCheckUtil; import com.oracle.svm.core.hub.LayoutEncoding; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.meta.MethodOffset; import com.oracle.svm.core.meta.MethodPointer; import com.oracle.svm.core.meta.MethodRef; @@ -107,9 +106,9 @@ import com.oracle.svm.hosted.config.DynamicHubLayout; import com.oracle.svm.hosted.config.HybridLayout; import com.oracle.svm.hosted.heap.PodSupport; -import com.oracle.svm.hosted.imagelayer.HostedDynamicLayerInfo; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.LayeredStaticFieldSupport; +import com.oracle.svm.hosted.layeredimage.HostedDynamicLayerInfo; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.LayeredStaticFieldSupport; import com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor; import com.oracle.svm.hosted.substitute.DeletedMethod; import com.oracle.svm.util.ReflectionUtil; @@ -822,7 +821,7 @@ private void layoutStaticFields() { @SuppressWarnings("unchecked") List[] fieldsOfTypes = (List[]) new ArrayList[DynamicHubSupport.currentLayer().getMaxTypeId()]; - int currentLayer = DynamicImageLayerInfo.getCurrentLayerNumber(); + int currentLayer = ImageLayerBuildingSupport.getCurrentLayerNumber(); boolean checkLayerNum = ImageLayerBuildingSupport.buildingImageLayer(); for (HostedField field : staticFields) { if (skipStaticField(field, layeredStaticFieldSupport)) { diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/VTableBuilder.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/VTableBuilder.java index f57408279bc1..cc446d9cb183 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/VTableBuilder.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/meta/VTableBuilder.java @@ -41,9 +41,9 @@ import com.oracle.svm.core.SubstrateOptions; import com.oracle.svm.core.SubstrateUtil; import com.oracle.svm.core.hub.RuntimeClassLoading; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.hosted.OpenTypeWorldFeature; -import com.oracle.svm.hosted.imagelayer.LayeredDispatchTableFeature; +import com.oracle.svm.hosted.layeredimage.LayeredDispatchTableFeature; import jdk.graal.compiler.debug.Assertions; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/methodhandles/SVMMethodHandleWithExceptionPlugin.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/methodhandles/SVMMethodHandleWithExceptionPlugin.java index bce80c99a0fc..57ddf3180bb5 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/methodhandles/SVMMethodHandleWithExceptionPlugin.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/methodhandles/SVMMethodHandleWithExceptionPlugin.java @@ -25,8 +25,8 @@ package com.oracle.svm.hosted.methodhandles; import com.oracle.graal.pointsto.meta.AnalysisMethod; -import com.oracle.svm.hosted.imagelayer.HostedImageLayerBuildingSupport; -import com.oracle.svm.hosted.imagelayer.SVMImageLayerWriter; +import com.oracle.svm.hosted.layeredimage.HostedImageLayerBuildingSupport; +import com.oracle.svm.hosted.layeredimage.SVMImageLayerWriter; import jdk.graal.compiler.nodes.graphbuilderconf.GraphBuilderContext; import jdk.graal.compiler.replacements.MethodHandleWithExceptionPlugin; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/methodhandles/StableInjectedInvokerNameFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/methodhandles/StableInjectedInvokerNameFeature.java index bc38f6708d5b..c27803069cac 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/methodhandles/StableInjectedInvokerNameFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/methodhandles/StableInjectedInvokerNameFeature.java @@ -35,10 +35,10 @@ import com.oracle.svm.core.SubstrateUtil; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.AfterAnalysisAccessImpl; import com.oracle.svm.hosted.FeatureImpl.DuringSetupAccessImpl; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/option/BuildTimeOptionValidationFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/option/BuildTimeOptionValidationFeature.java index 79f81bbd1278..6249e4d498ec 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/option/BuildTimeOptionValidationFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/option/BuildTimeOptionValidationFeature.java @@ -27,10 +27,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.option.SubstrateOptionKey; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.BeforeAnalysisAccessImpl; import jdk.graal.compiler.options.OptionDescriptor; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/option/RuntimeOptionFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/option/RuntimeOptionFeature.java index b76a55c5881c..f62ae4c677d1 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/option/RuntimeOptionFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/option/RuntimeOptionFeature.java @@ -34,7 +34,7 @@ import com.oracle.svm.core.IsolateArgumentParser; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.option.HostedOptionKey; import com.oracle.svm.core.option.HostedOptionValues; import com.oracle.svm.core.option.RuntimeOptionKey; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/ReflectionDataBuilder.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/ReflectionDataBuilder.java index 13c8757b2480..20a6c9c07407 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/ReflectionDataBuilder.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/ReflectionDataBuilder.java @@ -96,20 +96,20 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.hub.ClassForNameSupport; import com.oracle.svm.core.hub.DynamicHub; -import com.oracle.svm.core.imagelayer.BuildingImageLayerPredicate; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.core.layeredimage.BuildingImageLayerPredicate; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.reflect.SubstrateAccessor; import com.oracle.svm.core.reflect.target.ReflectionSubstitutionSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.ClassLoaderFeature; import com.oracle.svm.hosted.ConditionalConfigurationRegistry; @@ -1515,7 +1515,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { @Override public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { - private static void persistRegisteredElements(ImageSingletonWriter writer, Map> registeredElements, Function getId, String element) { + private static void persistRegisteredElements(KeyValueWriter writer, Map> registeredElements, Function getId, String element) { List classes = new ArrayList<>(); for (var entry : registeredElements.entrySet()) { classes.add(entry.getKey().getId()); @@ -1525,7 +1525,7 @@ private static void persistRegisteredElements(ImageSingletonWriter writer } @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LayeredReflectionDataBuilder singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, LayeredReflectionDataBuilder singleton) { ReflectionDataBuilder reflectionDataBuilder = (ReflectionDataBuilder) ImageSingletons.lookup(RuntimeReflectionSupport.class); persistRegisteredElements(writer, reflectionDataBuilder.registeredMethods, AnalysisMethod::getId, METHODS); persistRegisteredElements(writer, reflectionDataBuilder.registeredFields, AnalysisField::getId, FIELDS); @@ -1541,7 +1541,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { - private static Map> loadRegisteredElements(ImageSingletonLoader loader, String element) { + private static Map> loadRegisteredElements(KeyValueLoader loader, String element) { Map> previousLayerRegisteredElements = new HashMap<>(); var classes = loader.readIntList(getClassesKeyName(element)); for (int key : classes) { @@ -1552,7 +1552,7 @@ private static Map> loadRegisteredElements(ImageSingletonL } @Override - public LayeredReflectionDataBuilder createFromLoader(ImageSingletonLoader loader) { + public LayeredReflectionDataBuilder createFromLoader(KeyValueLoader loader) { var previousLayerRegisteredMethods = loadRegisteredElements(loader, METHODS); var previousLayerRegisteredFields = loadRegisteredElements(loader, FIELDS); return new LayeredReflectionDataBuilder(previousLayerRegisteredMethods, previousLayerRegisteredFields); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/StaticFieldValidatorImpl.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/StaticFieldValidatorImpl.java index f0926b8e55ba..e33720593521 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/StaticFieldValidatorImpl.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/StaticFieldValidatorImpl.java @@ -30,10 +30,10 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.meta.SharedField; import com.oracle.svm.core.meta.SharedType; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import jdk.vm.ci.meta.ResolvedJavaField; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/proxy/StableProxyNameFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/proxy/StableProxyNameFeature.java index ee1125d0b44f..641c2faeeca1 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/proxy/StableProxyNameFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/proxy/StableProxyNameFeature.java @@ -32,10 +32,10 @@ import com.oracle.svm.core.SubstrateUtil; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.InternalFeature; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.AfterAnalysisAccessImpl; /** diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/ExceptionUnwindFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/ExceptionUnwindFeature.java index d0dcfec4d5d4..83460df9d2dd 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/ExceptionUnwindFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/ExceptionUnwindFeature.java @@ -34,10 +34,10 @@ import com.oracle.svm.core.feature.InternalFeature; import com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider; import com.oracle.svm.core.snippets.ExceptionUnwind; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.BeforeAnalysisAccessImpl; @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/ImplicitExceptionsFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/ImplicitExceptionsFeature.java index d9213734ba5a..bf934695f320 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/ImplicitExceptionsFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/ImplicitExceptionsFeature.java @@ -32,10 +32,10 @@ import com.oracle.svm.core.graal.snippets.NonSnippetLowerings; import com.oracle.svm.core.snippets.ImplicitExceptions; import com.oracle.svm.core.snippets.SnippetRuntime.SubstrateForeignCallDescriptor; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.FeatureImpl.BeforeAnalysisAccessImpl; @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins.java index 5b50de31cb92..39bff780d217 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins.java @@ -84,15 +84,15 @@ import com.oracle.svm.core.heap.ReferenceAccessImpl; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.identityhashcode.SubstrateIdentityHashCodeNode; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.imagelayer.LoadImageSingletonFactory; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.core.layeredimage.LoadImageSingletonFactory; import com.oracle.svm.core.jdk.proxy.DynamicProxyRegistry; -import com.oracle.svm.core.layeredimagesingleton.LayeredImageSingletonSupport; +import com.oracle.svm.core.layeredimage.LayeredImageSingletonSupport; import com.oracle.svm.core.nodes.foreign.MemoryArenaValidInScopeNode; import com.oracle.svm.core.option.HostedOptionKey; import com.oracle.svm.core.snippets.KnownIntrinsics; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind; -import com.oracle.svm.core.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; import com.oracle.svm.core.util.UserError; import com.oracle.svm.core.util.VMError; import com.oracle.svm.hosted.AbstractAnalysisMetadataTrackingNode; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/HostedJavaThreadsFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/HostedJavaThreadsFeature.java index ed066c492739..cbb91967166a 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/HostedJavaThreadsFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/HostedJavaThreadsFeature.java @@ -36,20 +36,20 @@ import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; import com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton; import com.oracle.svm.core.fieldvaluetransformer.FieldValueTransformerWithAvailability; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.thread.JavaThreads; import com.oracle.svm.core.thread.JavaThreadsFeature; import com.oracle.svm.core.thread.PlatformThreads; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ConcurrentIdentityHashMap; import com.oracle.svm.core.util.UserError; import com.oracle.svm.hosted.FeatureImpl; @@ -268,7 +268,7 @@ private HostedJavaThreadsMetadata(long maxThreadId, int maxAutonumber) { this.maxAutonumber = maxAutonumber; } - public LayeredPersistFlags preparePersist(ImageSingletonWriter writer) { + public LayeredPersistFlags preparePersist(KeyValueWriter writer) { writer.writeLong("maxThreadId", maxThreadId); writer.writeInt("maxAutonumber", maxAutonumber); return LayeredPersistFlags.CREATE; @@ -279,7 +279,7 @@ static class LayeredCallbacks extends SingletonLayeredCallbacksSupplier { public SingletonTrait getLayeredCallbacksTrait() { SingletonLayeredCallbacks action = new SingletonLayeredCallbacks<>() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, HostedJavaThreadsMetadata singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, HostedJavaThreadsMetadata singleton) { return singleton.preparePersist(writer); } @@ -294,7 +294,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public HostedJavaThreadsMetadata createFromLoader(ImageSingletonLoader loader) { + public HostedJavaThreadsMetadata createFromLoader(KeyValueLoader loader) { long maxThreadId = loader.readLong("maxThreadId"); int maxAutonumber = loader.readInt("maxAutonumber"); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/LayeredVMThreadLocalCollector.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/LayeredVMThreadLocalCollector.java index e4d7796bebb9..f13051ba2f30 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/LayeredVMThreadLocalCollector.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/LayeredVMThreadLocalCollector.java @@ -30,21 +30,21 @@ import java.util.List; import java.util.Map; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; import com.oracle.svm.core.threadlocal.FastThreadLocal; import com.oracle.svm.core.threadlocal.VMThreadLocalInfo; import com.oracle.svm.core.threadlocal.VMThreadLocalInfos; import com.oracle.svm.core.threadlocal.VMThreadLocalSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredCallbacksSupplier; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTrait; -import com.oracle.svm.core.traits.SingletonTraitKind; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacksSupplier; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTrait; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraitKind; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.VMError; import jdk.graal.compiler.debug.Assertions; @@ -131,7 +131,7 @@ public SingletonTrait getLayeredCallbacksTrait() { return new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, LayeredVMThreadLocalCollector singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, LayeredVMThreadLocalCollector singleton) { /* * Store the (name, offset, size) tuple of all thread locals. */ @@ -176,7 +176,7 @@ public Class> getSingletonInstantiator static class SingletonInstantiator implements SingletonLayeredCallbacks.LayeredSingletonInstantiator { @Override - public LayeredVMThreadLocalCollector createFromLoader(ImageSingletonLoader loader) { + public LayeredVMThreadLocalCollector createFromLoader(KeyValueLoader loader) { /* * Load the (name, offset, size) tuple of all thread locals. */ diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/VMThreadFeature.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/VMThreadFeature.java index c64bbbc7567e..36ec0dfc74f2 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/VMThreadFeature.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/VMThreadFeature.java @@ -39,7 +39,7 @@ import com.oracle.svm.core.graal.thread.LoadVMThreadLocalNode; import com.oracle.svm.core.graal.thread.StoreVMThreadLocalNode; import com.oracle.svm.core.heap.InstanceReferenceMapEncoder; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; import com.oracle.svm.core.threadlocal.FastThreadLocal; import com.oracle.svm.core.threadlocal.FastThreadLocalBytes; import com.oracle.svm.core.threadlocal.FastThreadLocalWord; @@ -47,10 +47,10 @@ import com.oracle.svm.core.threadlocal.VMThreadLocalInfos; import com.oracle.svm.core.threadlocal.VMThreadLocalOffsetProvider; import com.oracle.svm.core.threadlocal.VMThreadLocalSupport; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.hosted.nodes.ReadReservedRegister; import jdk.graal.compiler.core.common.memory.BarrierType; diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/VMThreadLocalCollector.java b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/VMThreadLocalCollector.java index ae62cb8b84c1..f9f0b3a99d24 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/VMThreadLocalCollector.java +++ b/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/thread/VMThreadLocalCollector.java @@ -38,10 +38,10 @@ import com.oracle.svm.core.option.HostedOptionKey; import com.oracle.svm.core.threadlocal.FastThreadLocal; import com.oracle.svm.core.threadlocal.VMThreadLocalInfo; -import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; -import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; -import com.oracle.svm.core.traits.SingletonTraits; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; +import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.core.util.ObservableImageHeapMapProvider; import com.oracle.svm.core.util.VMError; diff --git a/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/CremaResolvedJavaFieldImpl.java b/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/CremaResolvedJavaFieldImpl.java index 52e6f72a5515..27f3f3426e55 100644 --- a/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/CremaResolvedJavaFieldImpl.java +++ b/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/CremaResolvedJavaFieldImpl.java @@ -27,7 +27,7 @@ import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.crema.CremaResolvedJavaField; import com.oracle.svm.core.hub.crema.CremaSupport; -import com.oracle.svm.core.imagelayer.DynamicImageLayerInfo; +import com.oracle.svm.core.layeredimage.DynamicImageLayerInfo; import com.oracle.svm.espresso.classfile.ParserField; import jdk.graal.compiler.core.common.NumUtil; diff --git a/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/CremaResolvedObjectType.java b/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/CremaResolvedObjectType.java index 13d83179bc36..063ca6443959 100644 --- a/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/CremaResolvedObjectType.java +++ b/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/CremaResolvedObjectType.java @@ -30,7 +30,7 @@ import com.oracle.svm.core.hub.crema.CremaResolvedJavaMethod; import com.oracle.svm.core.hub.crema.CremaResolvedJavaRecordComponent; import com.oracle.svm.core.hub.crema.CremaResolvedJavaType; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.util.VMError; import com.oracle.svm.espresso.classfile.ParserKlass; import com.oracle.svm.espresso.classfile.attributes.Attribute; diff --git a/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/InterpreterResolvedJavaField.java b/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/InterpreterResolvedJavaField.java index 73b0ef9bcee8..5609d9b4ff3b 100644 --- a/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/InterpreterResolvedJavaField.java +++ b/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/InterpreterResolvedJavaField.java @@ -34,7 +34,7 @@ import com.oracle.graal.pointsto.meta.AnalysisField; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.registry.SymbolsSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.util.VMError; import com.oracle.svm.espresso.classfile.descriptors.Name; import com.oracle.svm.espresso.classfile.descriptors.Symbol; diff --git a/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/InterpreterResolvedObjectType.java b/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/InterpreterResolvedObjectType.java index 4ced8238fa58..db4339a8649a 100644 --- a/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/InterpreterResolvedObjectType.java +++ b/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/InterpreterResolvedObjectType.java @@ -36,7 +36,7 @@ import com.oracle.svm.core.heap.UnknownObjectField; import com.oracle.svm.core.hub.DynamicHub; import com.oracle.svm.core.hub.registry.SymbolsSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.util.VMError; import com.oracle.svm.espresso.classfile.ParserKlass; import com.oracle.svm.espresso.classfile.descriptors.ByteSequence; diff --git a/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/serialization/Serializers.java b/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/serialization/Serializers.java index 686ce9ad97fe..9edc7f224a11 100644 --- a/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/serialization/Serializers.java +++ b/substratevm/src/com.oracle.svm.interpreter.metadata/src/com/oracle/svm/interpreter/metadata/serialization/Serializers.java @@ -38,7 +38,7 @@ import com.oracle.svm.core.FunctionPointerHolder; import com.oracle.svm.core.hub.registry.SymbolsSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; import com.oracle.svm.core.snippets.KnownIntrinsics; import com.oracle.svm.core.util.VMError; import com.oracle.svm.espresso.classfile.ParserConstantPool; diff --git a/substratevm/src/com.oracle.svm.processor/src/com/oracle/svm/processor/AutomaticallyRegisteredImageSingletonProcessor.java b/substratevm/src/com.oracle.svm.processor/src/com/oracle/svm/processor/AutomaticallyRegisteredImageSingletonProcessor.java index a31e25fbc206..a6949b2845c9 100644 --- a/substratevm/src/com.oracle.svm.processor/src/com/oracle/svm/processor/AutomaticallyRegisteredImageSingletonProcessor.java +++ b/substratevm/src/com.oracle.svm.processor/src/com/oracle/svm/processor/AutomaticallyRegisteredImageSingletonProcessor.java @@ -51,7 +51,7 @@ public class AutomaticallyRegisteredImageSingletonProcessor extends AbstractProcessor { static final String ANNOTATION_CLASS_NAME = "com.oracle.svm.core.feature.AutomaticallyRegisteredImageSingleton"; - static final String LAYERED_SINGLETON_INFO = "com.oracle.svm.core.layeredimagesingleton.LoadedLayeredImageSingletonInfo"; + static final String LAYERED_SINGLETON_INFO = "com.oracle.svm.core.layeredimage.LoadedLayeredImageSingletonInfo"; private final Set processed = new HashSet<>(); @@ -149,10 +149,10 @@ private void processElement(TypeElement annotatedType) { import org.graalvm.nativeimage.ImageSingletons; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; - import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; - import com.oracle.svm.core.traits.BuiltinTraits.NoLayeredCallbacks; - import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; - import com.oracle.svm.core.traits.SingletonTraits;%3$s + import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; + import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.NoLayeredCallbacks; + import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; + import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits;%3$s @AutomaticallyRegisteredFeature%4$s @SingletonTraits(access = BuildtimeAccessOnly.class, layeredCallbacks = NoLayeredCallbacks.class, layeredInstallationKind = Independent.class) diff --git a/substratevm/src/com.oracle.svm.processor/src/com/oracle/svm/processor/LayeredAnnotationProcessor.java b/substratevm/src/com.oracle.svm.processor/src/com/oracle/svm/processor/LayeredAnnotationProcessor.java index 678b7bc4f4b9..bc431734f62f 100644 --- a/substratevm/src/com.oracle.svm.processor/src/com/oracle/svm/processor/LayeredAnnotationProcessor.java +++ b/substratevm/src/com.oracle.svm.processor/src/com/oracle/svm/processor/LayeredAnnotationProcessor.java @@ -51,7 +51,7 @@ */ @SupportedAnnotationTypes(LayeredAnnotationProcessor.ANNOTATION_CLASS_NAME) public class LayeredAnnotationProcessor extends AbstractProcessor { - static final String ANNOTATION_CLASS_NAME = "com.oracle.svm.common.layeredimage.LayeredCompilationBehavior"; + static final String ANNOTATION_CLASS_NAME = "com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior"; static final String PINNED_TO_INITIAL_LAYER = "PINNED_TO_INITIAL_LAYER"; static final String METHOD_NAME_COMPONENT_SEPARATOR = "__"; static final char OBJECT_PATH_SEPARATOR = '_'; @@ -84,14 +84,14 @@ private void processElement(ExecutableElement annotatedExecutable) { // Annotation: %3$s // Annotation processor: com.oracle.svm.processor.LayeredAnnotationProcessor - import com.oracle.svm.common.hosted.layeredimage.LayeredCompilationSupport; - import com.oracle.svm.common.layeredimage.LayeredCompilationBehavior; + import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredCompilationSupport; + import com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior; import com.oracle.svm.core.feature.AutomaticallyRegisteredFeature; - import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; - import com.oracle.svm.core.traits.BuiltinTraits.BuildtimeAccessOnly; - import com.oracle.svm.core.traits.BuiltinTraits.SingleLayer; - import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.Independent; - import com.oracle.svm.core.traits.SingletonTraits; + import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; + import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.BuildtimeAccessOnly; + import com.oracle.svm.sdk.staging.hosted.traits.BuiltinTraits.SingleLayer; + import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.Independent; + import com.oracle.svm.sdk.staging.hosted.traits.SingletonTraits; import com.oracle.svm.util.ReflectionUtil; @AutomaticallyRegisteredFeature diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CrossLayerConstantRegistry.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/CrossLayerConstantRegistry.java similarity index 90% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CrossLayerConstantRegistry.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/CrossLayerConstantRegistry.java index c4bbf08d8bb0..0cdb0dedc231 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/CrossLayerConstantRegistry.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/CrossLayerConstantRegistry.java @@ -22,18 +22,19 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.sdk.staging.hosted.layeredimage; import org.graalvm.nativeimage.ImageSingletons; - -import com.oracle.graal.pointsto.heap.ImageHeapConstant; -import com.oracle.graal.pointsto.meta.AnalysisType; +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; import jdk.vm.ci.meta.JavaConstant; +import jdk.vm.ci.meta.ResolvedJavaType; /** * Registry to manage cross-layer constant references. */ +@Platforms(Platform.HOSTED_ONLY.class) public interface CrossLayerConstantRegistry { static CrossLayerConstantRegistry singletonOrNull() { @@ -73,7 +74,7 @@ static CrossLayerConstantRegistry singletonOrNull() { * {@link #finalizeFutureHeapConstant}. The constant can be retrieved via {@link #getConstant} * in all layers except the layer which calls {@link #finalizeFutureHeapConstant}. */ - ImageHeapConstant registerFutureHeapConstant(String keyName, AnalysisType futureType); + JavaConstant registerFutureHeapConstant(String keyName, ResolvedJavaType futureType); /** * Registers a value to associate with a prior {@link #registerFutureHeapConstant} registration. diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/ImageSingletonLoader.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/KeyValueLoader.java similarity index 84% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/ImageSingletonLoader.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/KeyValueLoader.java index 7f423f31645d..d2f155ec1289 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/ImageSingletonLoader.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/KeyValueLoader.java @@ -22,11 +22,18 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layeredimagesingleton; +package com.oracle.svm.sdk.staging.hosted.layeredimage; import java.util.List; -public interface ImageSingletonLoader { +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; + +/** + * See {@link KeyValueWriter} for overview. + */ +@Platforms(Platform.HOSTED_ONLY.class) +public interface KeyValueLoader { List readBoolList(String keyName); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/ImageSingletonWriter.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/KeyValueWriter.java similarity index 53% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/ImageSingletonWriter.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/KeyValueWriter.java index ba6f661daa50..dd8e39999188 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/ImageSingletonWriter.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/KeyValueWriter.java @@ -22,11 +22,33 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layeredimagesingleton; +package com.oracle.svm.sdk.staging.hosted.layeredimage; import java.util.List; -public interface ImageSingletonWriter { +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; + +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks.LayeredSingletonInstantiator; + +/** + * When building layered images, sometimes it is necessary to pass some metadata from one layer to + * the next. The mechanism we expose to accomplish this is a key-value map. + * + * To make this concrete, when layer X wants to relay information to layer Y, then in layer X a + * {@link KeyValueWriter} will be provided which will then be exposed to layer Y via a + * {@link KeyValueLoader}. + * + * Currently this mechanism is only exposed through {@link SingletonLayeredCallbacks} to allow + * Singletons to pass information across layers. Note that each Singleton implementation has its own + * unique key-value map, so each call of {@link SingletonLayeredCallbacks#doPersist} (and the + * corresponding {@link SingletonLayeredCallbacks#onSingletonRegistration} or + * {@link LayeredSingletonInstantiator} in the subsequent layer) to be tied to a unique map and one + * does not need to worry about key name conflicts across different singleton implementations. + */ +@Platforms(Platform.HOSTED_ONLY.class) +public interface KeyValueWriter { void writeBoolList(String keyName, List value); diff --git a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredClassInitialization.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredClassInitialization.java similarity index 81% rename from substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredClassInitialization.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredClassInitialization.java index 778cd2f6b64b..6918b5de1d0d 100644 --- a/substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/imagelayer/LayeredClassInitialization.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredClassInitialization.java @@ -22,17 +22,20 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.hosted.imagelayer; +package com.oracle.svm.sdk.staging.hosted.layeredimage; import org.graalvm.nativeimage.ImageSingletons; +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; import jdk.vm.ci.meta.MetaAccessProvider; +@Platforms(Platform.HOSTED_ONLY.class) public abstract class LayeredClassInitialization { - static LayeredClassInitialization singleton() { + public static LayeredClassInitialization singleton() { return ImageSingletons.lookup(LayeredClassInitialization.class); } - abstract void initializeClassInAppLayer(Class c, MetaAccessProvider meta); + public abstract void initializeClassInAppLayer(Class c, MetaAccessProvider meta); } diff --git a/substratevm/src/com.oracle.svm.common/src/com/oracle/svm/common/hosted/layeredimage/LayeredCompilationSupport.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredCompilationSupport.java similarity index 91% rename from substratevm/src/com.oracle.svm.common/src/com/oracle/svm/common/hosted/layeredimage/LayeredCompilationSupport.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredCompilationSupport.java index 707257356197..0d3983c64b6b 100644 --- a/substratevm/src/com.oracle.svm.common/src/com/oracle/svm/common/hosted/layeredimage/LayeredCompilationSupport.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredCompilationSupport.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.common.hosted.layeredimage; +package com.oracle.svm.sdk.staging.hosted.layeredimage; import java.lang.reflect.Executable; @@ -31,8 +31,8 @@ import org.graalvm.nativeimage.Platforms; import org.graalvm.nativeimage.hosted.Feature; -import com.oracle.svm.common.layeredimage.LayeredCompilationBehavior; -import com.oracle.svm.common.layeredimage.LayeredCompilationBehavior.Behavior; +import com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior; +import com.oracle.svm.sdk.staging.layeredimage.LayeredCompilationBehavior.Behavior; /** * Used to programmatically associate {@link LayeredCompilationBehavior} to a method. diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layered/LayeredFieldValue.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredFieldValue.java similarity index 89% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layered/LayeredFieldValue.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredFieldValue.java index ec43b4441604..7b570e59dd54 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layered/LayeredFieldValue.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredFieldValue.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layered; +package com.oracle.svm.sdk.staging.hosted.layeredimage; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; @@ -32,13 +32,10 @@ import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; -import com.oracle.svm.core.heap.UnknownObjectField; -import com.oracle.svm.core.heap.UnknownPrimitiveField; - /** * Denotes a field which requires a {@link LayeredFieldValueTransformer} when building layered * images. Note this annotation is only relevant for layered builds and it is legal for a field to - * have both this annotation and {@link UnknownObjectField}/{@link UnknownPrimitiveField}. For + * have both this annotation and {@code UnknownObjectField}/{@code UnknownPrimitiveField}. For * layered builds, this annotation will take priority and the Unknown field annotation will be * ignored. *

diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layered/LayeredFieldValueTransformer.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredFieldValueTransformer.java similarity index 88% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layered/LayeredFieldValueTransformer.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredFieldValueTransformer.java index 4c9142cf71b8..8eb8facdb6f0 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layered/LayeredFieldValueTransformer.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredFieldValueTransformer.java @@ -22,14 +22,14 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layered; +package com.oracle.svm.sdk.staging.hosted.layeredimage; -import com.oracle.svm.core.fieldvaluetransformer.FieldValueTransformerWithReceiverBasedAvailability; -import com.oracle.svm.core.util.VMError; +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; /** * Layered Images specific field value transformer. This transformer, in addition to the behavior of - * {@link FieldValueTransformerWithReceiverBasedAvailability}, also allows for the value to be + * {@code FieldValueTransformerWithReceiverBasedAvailability}, also allows for the value to be * updated in a later layer. *

* Before a given receiver is installed in the image heap, {@link #isValueAvailable} and @@ -45,6 +45,7 @@ * {@link #transform}) or ({@link #isUpdateAvailable}, {@link #update}) will be exclusively called * and {@link #transform}/{@link #update} will be called at most once. */ +@Platforms(Platform.HOSTED_ONLY.class) public abstract class LayeredFieldValueTransformer { /** @@ -73,7 +74,7 @@ public record Result(Object value, boolean updatable) { * called for receivers which were installed in a prior layer. */ public boolean isUpdateAvailable(@SuppressWarnings("unused") T receiver) { - throw VMError.shouldNotReachHere("isUpdateAvailable not implemented"); + throw new IllegalStateException("LayeredFieldValueTransformer#isUpdateAvailable not implemented"); } /** @@ -81,6 +82,6 @@ public boolean isUpdateAvailable(@SuppressWarnings("unused") T receiver) { * were installed in a prior layer. */ public Result update(@SuppressWarnings("unused") T receiver) { - throw VMError.shouldNotReachHere("update not implemented"); + throw new IllegalStateException("LayeredFieldValueTransformer#update not implemented"); } } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/LayeredPersistFlags.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredPersistFlags.java similarity index 90% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/LayeredPersistFlags.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredPersistFlags.java index 502db264386e..2191c3b46d0a 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/LayeredPersistFlags.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/LayeredPersistFlags.java @@ -22,12 +22,15 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layeredimagesingleton; +package com.oracle.svm.sdk.staging.hosted.layeredimage; import org.graalvm.nativeimage.ImageSingletons; +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; -import com.oracle.svm.core.traits.SingletonLayeredCallbacks; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredCallbacks; +@Platforms(Platform.HOSTED_ONLY.class) public enum LayeredPersistFlags { /** * Indicates nothing should be persisted for this singleton. A different singleton can be linked diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/NativeImageLayers.md b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/NativeImageLayers.md similarity index 100% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/NativeImageLayers.md rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/NativeImageLayers.md diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/PriorLayerMarker.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/PriorLayerMarker.java similarity index 96% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/PriorLayerMarker.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/PriorLayerMarker.java index 00dc4e911132..33c75b6c03f4 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/PriorLayerMarker.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/layeredimage/PriorLayerMarker.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.imagelayer; +package com.oracle.svm.sdk.staging.hosted.layeredimage; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/BuiltinTraits.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/BuiltinTraits.java similarity index 91% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/BuiltinTraits.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/BuiltinTraits.java index 9c23a055318e..8f4085ff3202 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/BuiltinTraits.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/BuiltinTraits.java @@ -22,15 +22,18 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.layeredimagesingleton.SingletonAccessFlags; +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; + +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; /** * Commonly used {@link SingletonTrait}s. */ +@Platforms(Platform.HOSTED_ONLY.class) public class BuiltinTraits { /** @@ -79,7 +82,7 @@ public SingletonTrait getAccessTrait() { */ public static final SingletonTrait NO_LAYERED_CALLBACKS = new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks<>() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, Object singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, Object singleton) { return LayeredPersistFlags.NOTHING; } }); @@ -98,7 +101,7 @@ public SingletonTrait getLayeredCallbacksTrait() { */ public static final SingletonTrait SINGLE_LAYER = new SingletonTrait(SingletonTraitKind.LAYERED_CALLBACKS, new SingletonLayeredCallbacks<>() { @Override - public LayeredPersistFlags doPersist(ImageSingletonWriter writer, Object singleton) { + public LayeredPersistFlags doPersist(KeyValueWriter writer, Object singleton) { return LayeredPersistFlags.FORBIDDEN; } }); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/EmptyMetadata.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/EmptyMetadata.java similarity index 89% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/EmptyMetadata.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/EmptyMetadata.java index 72be1be1926d..9e0442c69c22 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/EmptyMetadata.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/EmptyMetadata.java @@ -22,12 +22,16 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; + +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; /** * This metadata class is used for {@link SingletonTrait}s which need to store no additional * content. */ +@Platforms(Platform.HOSTED_ONLY.class) final class EmptyMetadata { static final EmptyMetadata EMPTY = new EmptyMetadata(); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonAccess.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonAccess.java similarity index 84% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonAccess.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonAccess.java index e8a4fa274e04..d4805bd59434 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonAccess.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonAccess.java @@ -22,23 +22,26 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; -import com.oracle.svm.core.layeredimagesingleton.SingletonAccessFlags; -import com.oracle.svm.core.util.VMError; +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; /** * Metadata associated with the {@link SingletonTraitKind#ACCESS} trait. Describes when this * singleton can be accessed (e.g., during the native image generator process and/or from within the * generated code at runtime). */ +@Platforms(Platform.HOSTED_ONLY.class) public class SingletonAccess { interface Supplier { SingletonAccessFlags getAccessFlags(); } public static SingletonAccessFlags getAccess(SingletonTrait trait) { - VMError.guarantee(trait.kind() == SingletonTraitKind.ACCESS); + if (trait.kind() != SingletonTraitKind.ACCESS) { + throw new IllegalArgumentException("Bad trait kind"); + } return ((Supplier) trait.metadata()).getAccessFlags(); } } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/SingletonAccessFlags.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonAccessFlags.java similarity index 90% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/SingletonAccessFlags.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonAccessFlags.java index f01346a3aa05..0abf128e1238 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/SingletonAccessFlags.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonAccessFlags.java @@ -22,11 +22,15 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layeredimagesingleton; +package com.oracle.svm.sdk.staging.hosted.traits; + +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; /** * Flags used to determine how the native image generator can access the image singleton. */ +@Platforms(Platform.HOSTED_ONLY.class) public enum SingletonAccessFlags { /** * This singleton can only be accessed at runtime. diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonAccessSupplier.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonAccessSupplier.java similarity index 90% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonAccessSupplier.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonAccessSupplier.java index f6e9ab600948..81c7cb9d8c96 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonAccessSupplier.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonAccessSupplier.java @@ -22,12 +22,16 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; + +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; /** * Represents a supplier of the {@link SingletonTraitKind#ACCESS} {@link SingletonTrait}. See * {@link SingletonTraits} and {@link SingletonTraitKind#ACCESS} for more information. */ +@Platforms(Platform.HOSTED_ONLY.class) public abstract sealed class SingletonAccessSupplier permits BuiltinTraits.BuildtimeAccessOnly, BuiltinTraits.RuntimeAccessOnly, BuiltinTraits.AllAccess { public abstract SingletonTrait getAccessTrait(); } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredCallbacks.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredCallbacks.java similarity index 76% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredCallbacks.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredCallbacks.java index 91714d17f9cc..4d881e3b5f66 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredCallbacks.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredCallbacks.java @@ -22,16 +22,15 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonLoader; -import com.oracle.svm.core.layeredimagesingleton.ImageSingletonWriter; -import com.oracle.svm.core.layeredimagesingleton.LayeredPersistFlags; -import com.oracle.svm.core.util.VMError; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueLoader; +import com.oracle.svm.sdk.staging.hosted.layeredimage.KeyValueWriter; +import com.oracle.svm.sdk.staging.hosted.layeredimage.LayeredPersistFlags; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; /** * This class contains actions which can be called on singletons during a layered image build. @@ -56,7 +55,7 @@ public abstract class SingletonLayeredCallbacks { * layer A. */ public interface LayeredSingletonInstantiator { - T createFromLoader(ImageSingletonLoader loader); + T createFromLoader(KeyValueLoader loader); } /** @@ -64,14 +63,14 @@ public interface LayeredSingletonInstantiator { * at the end of native image generation to perform any needed final actions. The method's * return value also specifies what actions should be taken at the startup of the next layer. */ - public abstract LayeredPersistFlags doPersist(ImageSingletonWriter writer, T singleton); + public abstract LayeredPersistFlags doPersist(KeyValueWriter writer, T singleton); /** * If {@link #doPersist} returns {@link LayeredPersistFlags#CREATE}, then this method is called * to determine how to instantiate the singleton in the next layer. */ public Class> getSingletonInstantiator() { - throw VMError.shouldNotReachHere("getSingletonInstantiator is not implemented. This method must be implemented if doPersist returns PersistFlag.CREATE"); + throw new IllegalStateException("SingletonLayeredCallbacks#getSingletonInstantiator is not implemented. This method must be implemented if doPersist returns PersistFlag.CREATE"); } /** @@ -79,8 +78,9 @@ public Class> getSingletonInstantiator * Note this method will be called at most once for each registered singleton object. */ @SuppressWarnings("unused") - public void onSingletonRegistration(ImageSingletonLoader loader, T singleton) { - throw VMError.shouldNotReachHere("onSingletonRegistration is not implemented. This method must be implemented if doPersist returns PersistFlag.CALLBACK_ON_REGISTRATION"); + public void onSingletonRegistration(KeyValueLoader loader, T singleton) { + throw new IllegalStateException( + "SingletonLayeredCallbacks#onSingletonRegistration is not implemented. This method must be implemented if doPersist returns PersistFlag.CALLBACK_ON_REGISTRATION"); } } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredCallbacksSupplier.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredCallbacksSupplier.java similarity index 89% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredCallbacksSupplier.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredCallbacksSupplier.java index 710149b2afb9..d36f2451457e 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredCallbacksSupplier.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredCallbacksSupplier.java @@ -22,13 +22,17 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; + +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; /** * Represents a supplier of the {@link SingletonTraitKind#LAYERED_CALLBACKS} {@link SingletonTrait}. * See {@link SingletonTraits} and {@link SingletonTraitKind#LAYERED_CALLBACKS} for more * information. */ +@Platforms(Platform.HOSTED_ONLY.class) public abstract class SingletonLayeredCallbacksSupplier { public abstract SingletonTrait getLayeredCallbacksTrait(); } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredInstallationKind.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredInstallationKind.java similarity index 91% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredInstallationKind.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredInstallationKind.java index c67561da6340..f241207afa64 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredInstallationKind.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredInstallationKind.java @@ -22,19 +22,20 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; import org.graalvm.nativeimage.ImageSingletons; +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; -import com.oracle.svm.core.graal.nodes.LoadImageSingletonNode; -import com.oracle.svm.core.imagelayer.ImageLayerBuildingSupport; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredAllowNullEntries; -import com.oracle.svm.core.layeredimagesingleton.MultiLayeredImageSingleton; -import com.oracle.svm.core.util.VMError; +import com.oracle.svm.sdk.staging.layeredimage.ImageLayerBuildingSupport; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredAllowNullEntries; +import com.oracle.svm.sdk.staging.layeredimage.MultiLayeredImageSingleton; /** * {@link SingletonTrait} which describes how this singleton acts in layered builds. */ +@Platforms(Platform.HOSTED_ONLY.class) public record SingletonLayeredInstallationKind(InstallationKind kind, Object metadata) { public enum InstallationKind { /** @@ -72,7 +73,7 @@ public enum InstallationKind { * Referring to fields of an app layer singleton from a code compiled in a shared layer, * i.e., even before the value of the field can be known, is safe. This is because, instead * of being constant-folded in a shared layer, it is instead implemented via - * {@link LoadImageSingletonNode} and lowered into a singleton table read. + * {@code LoadImageSingletonNode} and lowered into a singleton table read. */ APP_LAYER_ONLY(EmptyMetadata.class), @@ -112,11 +113,15 @@ public enum InstallationKind { public SingletonLayeredInstallationKind(InstallationKind kind, Object metadata) { this.kind = kind; this.metadata = metadata; - VMError.guarantee(kind.metadataClass.isInstance(metadata)); + if (!kind.metadataClass.isInstance(metadata)) { + throw new IllegalArgumentException(); + } } public static InstallationKind getInstallationKind(SingletonTrait trait) { - VMError.guarantee(trait.kind() == SingletonTraitKind.LAYERED_INSTALLATION_KIND); + if (trait.kind() != SingletonTraitKind.LAYERED_INSTALLATION_KIND) { + throw new IllegalArgumentException(); + } return ((SingletonLayeredInstallationKind) trait.metadata()).kind; } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredInstallationKindSupplier.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredInstallationKindSupplier.java similarity index 91% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredInstallationKindSupplier.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredInstallationKindSupplier.java index 409781649cba..e28dc617522e 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonLayeredInstallationKindSupplier.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonLayeredInstallationKindSupplier.java @@ -22,7 +22,10 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; + +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; /** * Represents a supplier of the {@link SingletonTraitKind#LAYERED_INSTALLATION_KIND} @@ -30,6 +33,7 @@ * {@link SingletonTraitKind#LAYERED_INSTALLATION_KIND} for more information. */ // Checkstyle: stop +@Platforms(Platform.HOSTED_ONLY.class) public abstract sealed class SingletonLayeredInstallationKindSupplier permits SingletonLayeredInstallationKind.Disallowed, SingletonLayeredInstallationKind.Independent, SingletonLayeredInstallationKind.InitialLayerOnly, SingletonLayeredInstallationKind.ApplicationLayerOnly, SingletonLayeredInstallationKind.MultiLayer { // Checkstyle: resume public abstract SingletonTrait getLayeredInstallationKindTrait(); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTrait.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTrait.java similarity index 83% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTrait.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTrait.java index 690bdf15968b..ddf7490a68ca 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTrait.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTrait.java @@ -22,14 +22,16 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; -import com.oracle.svm.core.util.VMError; +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; /** * Describes a facet of a singleton's behavior. See {@link SingletonTraits} and * {@link SingletonTraitKind} for more details. */ +@Platforms(Platform.HOSTED_ONLY.class) public record SingletonTrait(SingletonTraitKind kind, Object metadata) { public static final SingletonTrait[] EMPTY_ARRAY = new SingletonTrait[0]; @@ -38,6 +40,8 @@ public record SingletonTrait(SingletonTraitKind kind, Object metadata) { /* * Guarantee the metadata for this trait is of the expected kind. */ - VMError.guarantee(kind.getMetadataClass().isInstance(metadata)); + if (!kind.getMetadataClass().isInstance(metadata)) { + throw new IllegalArgumentException("Mismatch in arguments"); + } } } diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTraitKind.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTraitKind.java similarity index 96% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTraitKind.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTraitKind.java index 051f84ec5bec..faabe0d09d02 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTraitKind.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTraitKind.java @@ -22,12 +22,16 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; + +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; /** * Enumerates the different kinds of traits that can be associated with a singleton via * {@link SingletonTraits}. See {@link SingletonTraits} for more details. */ +@Platforms(Platform.HOSTED_ONLY.class) public enum SingletonTraitKind { /** diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTraits.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTraits.java similarity index 98% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTraits.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTraits.java index 5fbec17ae180..ff599c2f2b01 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTraits.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTraits.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTraitsSupplier.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTraitsSupplier.java similarity index 89% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTraitsSupplier.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTraitsSupplier.java index 48e79939542b..eac567760830 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/traits/SingletonTraitsSupplier.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/hosted/traits/SingletonTraitsSupplier.java @@ -22,12 +22,16 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.traits; +package com.oracle.svm.sdk.staging.hosted.traits; + +import org.graalvm.nativeimage.Platform; +import org.graalvm.nativeimage.Platforms; /** * Represents a supplier of {@link SingletonTrait}s. See {@link SingletonTraits} for more * information. */ +@Platforms(Platform.HOSTED_ONLY.class) public abstract class SingletonTraitsSupplier { public abstract SingletonTrait getTrait(); diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/ImageLayerBuildingSupport.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/ImageLayerBuildingSupport.java similarity index 80% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/ImageLayerBuildingSupport.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/ImageLayerBuildingSupport.java index f2a044c1f37a..145d50944503 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/imagelayer/ImageLayerBuildingSupport.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/ImageLayerBuildingSupport.java @@ -22,16 +22,13 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.imagelayer; +package com.oracle.svm.sdk.staging.layeredimage; import org.graalvm.nativeimage.ImageSingletons; import org.graalvm.nativeimage.Platform; import org.graalvm.nativeimage.Platforms; -import com.oracle.svm.util.ModuleSupport; - import jdk.graal.compiler.api.replacements.Fold; -import jdk.graal.compiler.util.ObjectCopier; /** * Support for tracking the image layer stage of this native-image build. When image layers are @@ -65,23 +62,13 @@ public abstract class ImageLayerBuildingSupport { public final boolean buildingImageLayer; public final boolean buildingInitialLayer; public final boolean buildingApplicationLayer; + public final int layerNumber; - protected ImageLayerBuildingSupport(boolean buildingImageLayer, boolean buildingInitialLayer, boolean buildingApplicationLayer) { + protected ImageLayerBuildingSupport(boolean buildingImageLayer, boolean buildingInitialLayer, boolean buildingApplicationLayer, int layerNumber) { this.buildingImageLayer = buildingImageLayer; this.buildingInitialLayer = buildingInitialLayer; this.buildingApplicationLayer = buildingApplicationLayer; - } - - /** - * To allow the {@link ObjectCopier} to access private fields by reflection, some modules needs - * to be opened when a layer is built. - */ - public static void openModules() { - ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, ObjectCopier.class, false, "java.base", "java.lang"); - ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, ObjectCopier.class, false, "java.base", "java.lang.reflect"); - ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, ObjectCopier.class, false, "java.base", "java.util"); - ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, ObjectCopier.class, false, "java.base", "java.util.concurrent"); - ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, ObjectCopier.class, false, "java.base", "sun.reflect.annotation"); + this.layerNumber = layerNumber; } private static ImageLayerBuildingSupport singleton() { @@ -122,4 +109,9 @@ public static boolean buildingExtensionLayer() { public static boolean buildingSharedLayer() { return singleton().buildingImageLayer && !singleton().buildingApplicationLayer; } + + @Platforms(Platform.HOSTED_ONLY.class) + public static int getCurrentLayerNumber() { + return singleton().layerNumber; + } } diff --git a/substratevm/src/com.oracle.svm.common/src/com/oracle/svm/common/layeredimage/LayeredCompilationBehavior.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/LayeredCompilationBehavior.java similarity index 98% rename from substratevm/src/com.oracle.svm.common/src/com/oracle/svm/common/layeredimage/LayeredCompilationBehavior.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/LayeredCompilationBehavior.java index 054fb1eca486..f53b0d040918 100644 --- a/substratevm/src/com.oracle.svm.common/src/com/oracle/svm/common/layeredimage/LayeredCompilationBehavior.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/LayeredCompilationBehavior.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.common.layeredimage; +package com.oracle.svm.sdk.staging.layeredimage; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/MultiLayeredAllowNullEntries.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/MultiLayeredAllowNullEntries.java similarity index 97% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/MultiLayeredAllowNullEntries.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/MultiLayeredAllowNullEntries.java index d48e9aa1f72f..58b7e7b9d7b0 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/MultiLayeredAllowNullEntries.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/MultiLayeredAllowNullEntries.java @@ -22,7 +22,7 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layeredimagesingleton; +package com.oracle.svm.sdk.staging.layeredimage; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/MultiLayeredImageSingleton.java b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/MultiLayeredImageSingleton.java similarity index 87% rename from substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/MultiLayeredImageSingleton.java rename to substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/MultiLayeredImageSingleton.java index f53d8c596ddd..3e8f626e1228 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/layeredimagesingleton/MultiLayeredImageSingleton.java +++ b/substratevm/src/com.oracle.svm.sdk.staging/src/com/oracle/svm/sdk/staging/layeredimage/MultiLayeredImageSingleton.java @@ -22,10 +22,9 @@ * or visit www.oracle.com if you need additional information or have any * questions. */ -package com.oracle.svm.core.layeredimagesingleton; +package com.oracle.svm.sdk.staging.layeredimage; -import com.oracle.svm.core.traits.SingletonLayeredInstallationKind.InstallationKind; -import com.oracle.svm.core.util.VMError; +import com.oracle.svm.sdk.staging.hosted.traits.SingletonLayeredInstallationKind.InstallationKind; public final class MultiLayeredImageSingleton { @@ -52,7 +51,7 @@ private MultiLayeredImageSingleton() { */ @SuppressWarnings("unused") public static T[] getAllLayers(Class key) { - throw VMError.shouldNotReachHere("This can only be called during runtime"); + throw new IllegalArgumentException("This can only be called during runtime"); } /** @@ -62,6 +61,6 @@ public static T[] getAllLayers(Class key) { */ @SuppressWarnings("unused") public static T getForLayer(Class key, int index) { - throw VMError.shouldNotReachHere("This can only be called during runtime"); + throw new IllegalArgumentException("This can only be called during runtime"); } }