x86_64: Implement Unsafe.compareAndSetObject intrinsic.
The implementation is the same as Unsafe.compareAndSwapObject, as the
latter operation has compare-and-set semantics.
Benchmarks improvements (using benchmarks provided by
https://android-review.googlesource.com/1420959):
benchmark before after
-----------------------------------------------------
UnsafeCompareAndSetStaticFieldString 1.333 0.009
UnsafeCompareAndSetFieldString 1.336 0.009
Bug: 71781600
Test: ART_HEAP_POISONING=true m build-art-host-tests \
&& art/test.py --host -r -t 712-varhandle-invocations --64
Change-Id: I19a5dc15304693016c7b93294dafae4a90606cff
2 files changed