(resending to all lists)
It is in promoted build jdk8b71 already:
http://hg.openjdk.java.net/jdk8/jdk8/jdk/rev/8cf5b18488d1
Vladimir
On 1/9/13 1:17 PM, Chris Hegarty wrote:
On 20 Dec 2012, at 19:21, Vladimir Kozlov <vladimir.koz...@oracle.com> wrote:
Looks good for me. I will sponsor these changes after we get a review from JDK
side.
Have I missed something, or are these changes not already in?
-Chris
Thanks,
Vladimir
On 12/20/12 11:03 AM, Aleksey Shipilev wrote:
Hi,
Sorry for cross-list posting, but this change affects both HS and JDK.
This simple change is missing from recently committed CR 7023898. While
the VM support is there in Hotspot, no methods are exposed in Unsafe to
actually make use of those intrinsics. This is the webrev fixing that:
http://cr.openjdk.java.net/~shade/8004330/webrev.00/
It turns out the getAndSet intrinsics HotSpot are overloaded, which had
deluged both Doug and me in the previous patch. These namings are
inconsistent with other Unsafe intrinsic naming convention, so this
change fixes that as well.
Testing:
- Built and tested in Linux x86_64
- java-concurrency-torture [1] atomicity tests are passed for
AtomicIntegerV8 [2] and AtomicLongV8 [3] making use of those intrinsics
on Linux x86_64
- running the java-concurrency-torture tests "-XX:+PrintInlining |
grep Unsafe" tells all intrinsics have been successfully inlined
- no other testing is expected for this trivial change.
I would need a sponsor to push this. Thanks for your patience and reviews!
Contributors:
- dl: original patch, testing
- shade: due diligence, messing with reviews, tests, and rebuilds
-Aleksey.
[1] https://github.com/shipilev/java-concurrency-torture/
[2]
https://github.com/shipilev/java-concurrency-torture/blob/master/src/main/java/org/openjdk/concurrent/torture/tests/atomics/integer/AtomicIntegerV8PairwiseTests.java
[3]
https://github.com/shipilev/java-concurrency-torture/blob/master/src/main/java/org/openjdk/concurrent/torture/tests/atomics/longs/AtomicLongV8PairwiseTests.java