> This change stores InstanceKlass for interface and abstract classes in the > non-class metaspace, since class metaspace will have limits on number of > classes that can be represented when Lilliput changes go in. Classes that > have no instances created for them don't require compressed class pointers. > The generated LambdaForm classes are also AllStatic, and changing them to > abstract moves them to non-class metaspace too. It's not technically great > to make them abstract and not final but you can't have both. Java classfile > access flags have no way of specifying something like AllStatic. > > Tested with tier1-8.
Coleen Phillimore has updated the pull request incrementally with one additional commit since the last revision: Add function in Metaspace to tell you if Klass pointer is in compressible space. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/19157/files - new: https://git.openjdk.org/jdk/pull/19157/files/1382ced0..ce96165e Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=19157&range=04 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=19157&range=03-04 Stats: 5 lines in 2 files changed: 4 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/19157.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/19157/head:pull/19157 PR: https://git.openjdk.org/jdk/pull/19157