RFR (S): 8193063: Enabling narrowOop values for RawAccess accesses
Erik Österlund
erik.osterlund at oracle.com
Tue Dec 5 14:49:50 UTC 2017
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