On Mon, 9 Sep 2024 11:53:13 GMT, Thomas Schatzl <tscha...@openjdk.org> wrote:
>> Roman Kennke has updated the pull request incrementally with two additional >> commits since the last revision: >> >> - Try to avoid lea in loadNklass (aarch64) >> - Fix release build error > > src/hotspot/share/oops/klass.hpp line 169: > >> 167: // contention that may happen when a >> nearby object is modified. >> 168: AccessFlags _access_flags; // Access flags. The class/interface >> distinction is stored here. >> 169: // Some flags created by the JVM, not >> in the class file itself, > > Suggestion: > > markWord _prototype_header; // Used to initialize objects' header with > compact headers. > > > Maybe some comment why this is an instance member. >@tschatzl I just found your comment here, and I'm not sure what you mean, tbh. >The prototype_header is a member of Klass because with compact headers, it >encodes that Klass in the prototype header. Note that there is planned >follow-up work to remove that field and encode the Klass* on the allocation >path. https://bugs.openjdk.org/browse/JDK-8341703 You explained what I had wanted to see here - why do we need a per-klass prototype header, because the markWord contains it ;) Given that it is going away, I retract this comment and the request can be resolved. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20677#discussion_r1800983876