RFR: 8306851: Move Method access flags [v3]

David Holmes dholmes at openjdk.org
Fri Apr 28 06:00:24 UTC 2023


On Thu, 27 Apr 2023 14:21:23 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:

>> This change moves the flags from AccessFlags to either ConstMethodFlags or MethodFlags, depending on whether they are set at class file parse time, which makes them essentially const, or at runtime, which makes them needing atomic access.
>> 
>> This leaves AccessFlags int size because Klass still has JVM flags that are more work to move, but this change doesn't increase Method size.  I didn't remove JVM_RECOGNIZED_METHOD_MODIFIERS with this change since there are several of these in other places, and with this change the code is benign.
>> 
>> Tested with tier1-6, and some manual verification of printing.
>
> Coleen Phillimore has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Remove bool argument from ConstMethodFlags.set function.

Thanks for the updates. I understand about the fanout from making `is` naming fully consistent.

src/hotspot/share/oops/method.hpp line 875:

> 873:   bool    is_not_c1_osr_compilable() const    { return is_not_c1_compilable(); }
> 874:   void   set_is_not_c1_osr_compilable()       {       set_is_not_c1_compilable(); }
> 875:   void clear_is_not_c1_osr_compilable()       {     clear_is_not_c1_compilable(); }

Nit: don't need extra spaces after `{`

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

Marked as reviewed by dholmes (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/13654#pullrequestreview-1405267857
PR Review Comment: https://git.openjdk.org/jdk/pull/13654#discussion_r1179956725


More information about the serviceability-dev mailing list