Please review this change that makes AccessFlags and modifier_flags u2 types and removes the last remnants of Hotspot adding internal access flags. This change moves AccessFlags and modifier_flags in Klass to alignment gaps saving 16 bytes. From pahole: so it's a bit better.
before: /* size: 216, cachelines: 4, members: 25, static members: 17 */ /* sum members: 194, holes: 3, sum holes: 18 */ after: /* size: 200, cachelines: 4, members: 25, static members: 17 */ /* sum members: 188, holes: 4, sum holes: 12 */ We may eventually move the modifiers to java.lang.Class but that's WIP. Tested with tier1-7 on oracle platforms. Did test builds on other platforms (please try these changes ppc/arm32 and s390). Also requires minor Graal changes. ------------- Commit messages: - Remove JVM_ACC_WRITTEN_FLAGS because they are all written in the classfile now. - 8339113: AccessFlags can be u2 in metadata Changes: https://git.openjdk.org/jdk/pull/22246/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=22246&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339113 Stats: 167 lines in 41 files changed: 16 ins; 40 del; 111 mod Patch: https://git.openjdk.org/jdk/pull/22246.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/22246/head:pull/22246 PR: https://git.openjdk.org/jdk/pull/22246