[aarch64-port-dev ] RFR: [8u] 8209835: Aarch64: elide barriers on all volatile operations
Andrew Haley
aph at redhat.com
Wed Aug 28 09:27:19 UTC 2019
On 8/28/19 10:18 AM, Yangfei (Felix) wrote:
> Well, I think I won't be able to provide such a test case after some
> throughts. Now I agree that this will not affect basic
> functionality. As we have handled unsafe.compareAndSwap, I don't
> see a reason to not handle unsafe.getAndSet: the risk should be low
> and we get consistent and improved C2 JIT code. What do you think?
I think that's a powerful argument for the development code because
it's an improvement; conversely I don't think it's an argument for a
backport.
Having said that, I can sort-of imagine a jcstress failure if we had a
test that was doing compareAndSwap in one thread and getAndSet in
another. That would be a seriously compelling reason for a backport!
It would be interesting to see such a jcstress test. Even if the test
does not fail, we could look at the generated code to see if it might
fail according to the Arm memory model.
--
Andrew Haley (he/him)
Java Platform Lead Engineer
Red Hat UK Ltd. <https://www.redhat.com>
https://keybase.io/andrewhaley
EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671
More information about the aarch64-port-dev
mailing list