> I have updated this patch to avoid a redundant `runtimeSetup` annotation - we 
> have agreed that the requirement for setup is a side effect of 
> initialization, and such methods in AOTCI classes must be automatically 
> recognized. This latest revision implements that model.
> 
> I intentionally avoided handling Class and ClassLoader `resetArchivedStates` 
> and `MethodType::assemblySetup` - we talked about a generic `assemblyCleanup` 
> method, but I did not find out where is the best place to call such a method 
> in the assembly phase. We cna handle this in a subsequent patch.
> 
> In particular, please review the new AOT.md design document - I split it from 
> the AOTCI annotation to prevent jamming; we can put general AOT information 
> there when we have more AOT-specific annotations.
> 
> ---
> 
> Old description:
> 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.

Chen Liang has updated the pull request incrementally with two additional 
commits since the last revision:

 - Remove design document from code
 - Some more from reviews

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/25922/files
  - new: https://git.openjdk.org/jdk/pull/25922/files/d5a54f5b..4b3906aa

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=25922&range=05
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=25922&range=04-05

  Stats: 168 lines in 10 files changed: 30 ins; 135 del; 3 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

Reply via email to