On Tue, 19 Nov 2024 16:18:48 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.

The as_int() was because we are using the AccessFlags as an _integral_ value.  
I was trying to minimize the effects of the change and the code uses 
AccessFlags as an integral value.  as_int() returns u2 so I guess that's 
confusing.  I don't want AccessFlags::get_flags() because that's implies the 
return is AccessFlags.  I could change the name to as_unsigned_short().  Would 
that be less confusing?

Thank you David for looking through this change.

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

PR Comment: https://git.openjdk.org/jdk/pull/22246#issuecomment-2553766012

Reply via email to