RFR/RFC: Rework shared bool/enum flags with proper types and synchronization

Aleksey Shipilev shade at redhat.com
Fri Dec 1 18:14:05 UTC 2017


On 12/01/2017 06:46 PM, Roman Kennke wrote:
> Some comments:
> - some _addr() methods are defined in shenandoahHeap.cpp some in shenandoahHeap.inline.hpp. I think
> it's good enough to define them all in shenandoahHeap.cpp

Done.

> - Likewise, all state accessors should probably follow the same pattern (either with is_ or without,
> but consistent) and all go into shenandoahHeap.inline.hpp

Done.

> - ShenandoahSharedEnumFlag::cmpxchg() takes expected and new in different order than
> Atomic::cmpxchg(). I find this surprising.

I thought it would be more understandable, but reverted to the old order.

> - In ShenandoahSharedFlag, declare constants or enum for 0 and 1 as FALSE and TRUE?

Yes.

New version:
  http://cr.openjdk.java.net/~shade/shenandoah/refactor-shared-flags/webrev.02/


-Aleksey




More information about the shenandoah-dev mailing list