On Mon, 5 Dec 2022 13:16:25 GMT, Doug Simon <dnsi...@openjdk.org> wrote:
> Libgraal is compiled ahead of time and should not need any JVMCI Java code to > be dynamically loaded at runtime. Prior to this PR, this is not the case due > to: > > * Code to copy system properties from the HotSpot heap into the libgraal > heap. This is in > `jdk.vm.ci.services.Services.initializeSavedProperties(byte[])` and > `jdk.vm.ci.services.Services.serializeSavedProperties()`. This code should be > moved to `java.base/jdk.internal.vm.VMSupport`. > * Code to translate exceptions from the HotSpot heap into the libgraal heap > and vice versa. This code should be moved from > `jdk.internal.vm.ci//jdk.vm.ci.hotspot.TranslatedException` to > `java.base/jdk.internal.vm.VMSupport`. > > This PR makes the above changes. As a result, it's possible to build a JDK > image that includes (and uses) libgraal but does not include > `jdk.internal.vm.ci` or `jdk.internal.vm.compiler`. This both reduces > footprint and better isolates the JAVMCI and the Graal compiler as accessing > these components from Java code is now impossible. This pull request has now been integrated. Changeset: 8b69a2e4 Author: Doug Simon <dnsi...@openjdk.org> URL: https://git.openjdk.org/jdk/commit/8b69a2e434ad2fa3369079622b57afb973d5bd9a Stats: 1438 lines in 20 files changed: 628 ins; 714 del; 96 mod 8298099: [JVMCI] decouple libgraal from JVMCI module at runtime Reviewed-by: never ------------- PR: https://git.openjdk.org/jdk/pull/11513