On Thu, 19 Dec 2024 12:52:34 GMT, Coleen Phillimore <cole...@openjdk.org> wrote:
>> 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. > > Coleen Phillimore has updated the pull request incrementally with two > additional commits since the last revision: > > - Update src/hotspot/cpu/ppc/templateInterpreterGenerator_ppc.cpp > > Co-authored-by: David Holmes > <62092539+dholmes-...@users.noreply.github.com> > - Update src/hotspot/share/opto/library_call.cpp > > Co-authored-by: David Holmes > <62092539+dholmes-...@users.noreply.github.com> src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp line 691: > 689: > 690: // Skip if we don't have to unlock. (???is this right???) > 691: rldicl_(R0, Raccess_flags, 64-JVM_ACC_SYNCHRONIZED_BIT, 63); // > Extract bit and compare to 0. Using `testbitdi` might make it more readable to non-experts. It took me a while reading aix docs to realize that this platform numbers LSB as 63 and MSB/sign as 0. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/22246#discussion_r1893009550