RFR: 8360163: Create annotations to mark dumping method handles and runtime setup required classes

Chen Liang liach at openjdk.org
Tue Jun 24 22:01:14 UTC 2025


Currently, the list of classes that have <clinit> interdependencies and those that need runtimeSetup are maintained in a hardcoded list in CDS. This makes it risky for core library developers as they might introduce new interdependencies and observe CDS to fail. By moving the mechanism of these lists to core library annotations as a first step, we can gradually expose the AOT contracts as program semantics described by internal annotations, and also helps us to explore how we can expose these functionalities to the public later.

-------------

Commit messages:
 - Merge branch 'master' of https://github.com/openjdk/jdk into exp/cds-mh-anno
 - Name this AOTCI
 - Rename MHArchived to AotInitializable
 - Years
 - Can this fix?
 - Seems redundant
 - Runtime setup
 - Merge branch 'master' of https://github.com/openjdk/jdk into exp/cds-mh-anno
 - Fix
 - Try pass flag as annotation?

Changes: https://git.openjdk.org/jdk/pull/25922/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=25922&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8360163
  Stats: 454 lines in 39 files changed: 304 ins; 108 del; 42 mod
  Patch: https://git.openjdk.org/jdk/pull/25922.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25922/head:pull/25922

PR: https://git.openjdk.org/jdk/pull/25922


More information about the hotspot-dev mailing list