> Module$ReflectionData stores the additions to readability, exports/opens and 
> service use when the reflective APIs are used at runtime. Unfortunately a 
> short cut in JDK 9 means it is also being used for the --add-reads command 
> line option and the special read edge to allow automatic modules read all 
> unnamed modules. Not an issue until an AOT cache is created with an automatic 
> module or with the--add-reads CLI option. As the ReflectionData is not in the 
> AOT cache then the production run will have an incomplete module graph.
> 
> The changes proposed means that ReflectionData is added added to creating an 
> automatic module when when handling the --add-reads CLI option. Any runtime 
> uses of Module.addReads will add to RD as before.
> 
> A new test it added to ensure that ReflectionData is "empty" at startup. Ioi 
> has contributed a new test to runtime/cds/appcds/aotCache/ that creates an 
> AOT cache with an automatic module and checks that the expected readability 
> is present in the production run.
> 
> Testing: tier1-3
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

Alan Bateman has updated the pull request with a new target base due to a merge 
or a rebase. The incremental webrev excludes the unrelated changes brought in 
by the merge/rebase. The pull request contains 13 additional commits since the 
last revision:

 - Missing @summary tag
 - Merge branch 'master' into JDK-8393235
 - Update
 - Update
 - Merge branch 'master' into JDK-8393235
 - Merge branch 'master' into JDK-8393235
 - Test update for add-reads from Ioi
 - Merge branch 'master' into RD.reads
 - Add Ioi's test
 - Merge branch 'master' into RD.reads
 - ... and 3 more: https://git.openjdk.org/jdk/compare/92edf70b...62707e9c

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/33559/files
  - new: https://git.openjdk.org/jdk/pull/33559/files/adbb5cdf..62707e9c

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=33559&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=33559&range=00-01

  Stats: 6771 lines in 166 files changed: 3570 ins; 2605 del; 596 mod
  Patch: https://git.openjdk.org/jdk/pull/33559.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/33559/head:pull/33559

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

Reply via email to