C2 compare and swap fixes

Roland Westrelin rwestrel at redhat.com
Fri Jun 3 14:32:13 UTC 2016


http://cr.openjdk.java.net/~roland/shenandoah-cas/webrev.00/

implements compare and swap on x86 and aarch64 (and compare and exchange
on x86) as a tight loop in the ad file. The previous implementation as a
series of 3 CompareAndSwapP IR nodes was flawed because in rare cases it
can take more than 3 attempts for a valid CAS to succeed. That webrev
also includes a few aarch64 only changes that are required for aarch64
to build again.

Roland.


More information about the shenandoah-dev mailing list