Classes can be excluded from the CDS archive for a variety of different 
reasons, such as having old classfile versions or being stored in a signed jar. 
These exclusions can extend to other classes that depend on an excluded class 
such as supers or interfaces.

Flat and null-restricted fields have layouts that are calculated when a 
classfile is parsed and they rely on the klass of the field being consistent 
between dumptime and runtime, thus adding a new dependency. This patch adds 
inline flat and null-restricted fields as new dependencies that may lead to the 
holding class being excluded from the CDS archive. Verified with a new test and 
tier 1-5 tests.


---------
- [x] I confirm that I make this contribution in accordance with the [OpenJDK 
Interim AI Policy](https://openjdk.org/legal/ai).

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

Commit messages:
 - Fixed copyrights
 - Added test
 - Cleanup
 - 8384756: [lworld] Exclude class from archive if class of inline type is 
excluded

Changes: https://git.openjdk.org/valhalla/pull/2464/files
  Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=2464&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8384756
  Stats: 197 lines in 4 files changed: 197 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/valhalla/pull/2464.diff
  Fetch: git fetch https://git.openjdk.org/valhalla.git pull/2464/head:pull/2464

PR: https://git.openjdk.org/valhalla/pull/2464

Reply via email to