RFR (S): 8193063: Enabling narrowOop values for RawAccess accesses

Per Liden per.liden at oracle.com
Tue Jan 9 10:18:57 UTC 2018

Looks good!


On 2017-12-05 15:49, Erik Österlund wrote:
> Hi,
> In order to replace oopDesc::load_heap_oop() but with stricter memory
> ordering properties, like MO_VOLATILE, some Access tweaks are required
> to allow RawAccess<>::oop_load() to return narrowOop values.
> I made the necessary changes to allow narrowOop values for all RawAccess
> operations that have an address (not the _at variants).
> While I am at it, I thought I'd clean up a few things that bug me:
> * The decorator verification for memory ordering specifically did not
> work as I originally intended, leading to harder to decipher compiler
> errors deeper down when using the wrong memory ordering decorators
> * An unnecessary include of oop.inline.hpp was removed from the G1
> barrier set.
> This change helps solving the following bug:
> https://bugs.openjdk.java.net/browse/JDK-8129440
> This bug is filed under:
> https://bugs.openjdk.java.net/browse/JDK-8193063
> Webrev:
> http://cr.openjdk.java.net/~eosterlund/8193063/webrev.00/
> Thanks,
> /Erik

More information about the hotspot-gc-dev mailing list