RFR: 8224201: Simplify JVM flag macro expansions

Stefan Karlsson stefan.karlsson at oracle.com
Tue May 21 13:11:35 UTC 2019


On 2019-05-21 14:02, coleen.phillimore at oracle.com wrote:
> 
> I didn't do a full review, but do we still need globals_ext.hpp ?

We don't need this anymore, and I would be happy to get rid of that 
file. Anyone else in the community that needs it?

Maybe create a new RFE about removing it?

> 
> Can this set of macros for ALL_FLAGS be put in globals_shared.hpp 
> also?   It would be nice for globals.hpp to be mostly the flag list 
> rather than seeing these macros.

Sure:
  http://cr.openjdk.java.net/~stefank/8224201/webrev.02.delta/
  http://cr.openjdk.java.net/~stefank/8224201/webrev.02/

On the other hand, you can't really use ALL_FLAGS without also including 
globals.hpp, and we still need the DECLARE_* parts, so I'm not sure how 
much you gain by doing this.

> 
> I think we can still build aarch64 and zero locally.

I've built aarch64 with release and fastdebug.

Zero with fastdebug seems to have some kind of unrelated problems.

Thanks,
StefanK

> 
> thanks,
> Coleen
> 
> On 5/21/19 7:05 AM, Stefan Karlsson wrote:
>> Thanks for the review, Thomas.
>>
>> StefanK
>>
>> On 2019-05-21 12:41, Thomas Schatzl wrote:
>>> Hi,
>>>
>>> On Mon, 2019-05-20 at 12:56 +0200, Stefan Karlsson wrote:
>>>> Hi all,
>>>>
>>>> Please review this patch to simplify how we generate the different
>>>> parts of the JVM flags code.
>>>>
>>>> https://cr.openjdk.java.net/~stefank/8224201/webrev.01/
>>>> https://bugs.openjdk.java.net/browse/JDK-8224201
>>>>
>>>> Notable parts of the patch:
>>>> - Introduces a ALL_FLAGS macro, used to expand code for all flags.
>>>> - Uses the ALL_FLAGS where appropriate.
>>>> - Constraints list didn't expand JVMCI flags. Fixed by using
>>>> ALL_FLAGS.
>>>> - Moved <sub-system>_globals.hpp generated declarations to be
>>>> expanded
>>>> in globals.hpp.
>>>> - Unified FLAG_MEMBER and FLAG_MEMBER_WITH_TYPE into
>>>> FLAG_MEMBER_ENUM
>>>> and change names accordingly.
>>>>
>>>> This change makes it easier to do future changes to the JVM flags
>>>> handling code. For example: "JDK-8224203Remove need to specify type
>>>> when using FLAG_SET macros"
>>>
>>>    although I saw that you already have quite a few reviewers after
>>> working through it: looks good. Very nice cleanup.
>>>
>>> Thanks,
>>>    Thomas
>>>
>>>
> 


More information about the hotspot-dev mailing list