On Thu, 27 Mar 2025 22:13:02 GMT, Ioi Lam <ik...@openjdk.org> wrote: >> `-XX:+AOTClassLinking` requires the CDS archived full module graph (FMG). >> >> - Before this PR, when `--add-export` is specified, FMG is disabled, so >> AOT caches created with `-XX:+AOTClassLinking` cannot be loaded. >> - After this PR, if the exact same `--add-export` flags as specified across >> the training/assembly/production phases, the FMG can be used, so we can use >> so AOT caches created with `-XX:+AOTClassLinking`. >> >> The change itself is straight-forward: just remember the `--add-export` >> flags specified during AOT cache creation, and check the exact same ones are >> used during the production run. >> >> I did a fair amount of refactoring to change the "exact options specified" >> checks in modules.cpp, so more such options can be easily added in the >> future (we need to handle `--add-reads` and `--add-opens` in future RFEs). >> >> (Note: this PR depends on #24122 ) > > Ioi Lam has updated the pull request with a new target base due to a merge or > a rebase. The pull request now contains eight commits: > > - @calvinccheung comments > - Merge branch 'master' into > 8352437-aot-class-linking-incompatible-with-add-exports > - Fixed whitespaces > - clean up > - 8352437: -XX:+AOTClassLinking is not compatible with --add-export > - added comments > - added comments > - Prototype: support --add-exports in CDS FMG
Changes and cleanup look good! Thanks! ------------- Marked as reviewed by matsaave (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/24124#pullrequestreview-2733895429