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

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

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

Erik Österlund-2

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:

This bug is filed under: