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 >>