RFR (S): JDK-8172434: CompareAndExchangeObject inserts two pre-barriers

Roman Kennke rkennke at redhat.com
Mon Feb 13 21:11:28 UTC 2017

in LibaryCallKit::inline_unsafe_access(), the pre_barrier() gets
inserted twice for LS_cmp_exchange, in one case it is treated like the
other CAS instructions, and at the end it is treated like get_and_set.
It's not causing incorrect behaviour, but might impact performance.

The fix is to leave out the 2nd pre-barrier for CAE by checking for

Testing: jcstress



More information about the hotspot-compiler-dev mailing list