RFR(XS): 8011901: Unsafe.getAndAddLong(obj, off, delta) does not work properly with long deltas

Aleksey Shipilev aleksey.shipilev at oracle.com
Fri Apr 12 09:33:04 PDT 2013


On 04/12/2013 08:09 PM, Roland Westrelin wrote:
> http://cr.openjdk.java.net/~roland/8011901/webrev.00/

Looks good. Fixes the test on Linux/x86_64, as well as the original
problem this testcase was derived from.

> 64 bit on x86 xaddL_no_res shouldn't allow a 64 bit constant: it's
> not supported by the architecture.

Indeed! I couldn't believe the fix is that simple. I was staring at the
addq encoding in the Intel SDM few days ago, but missed this completely.
Thanks for figuring this out!

-Aleksey.


More information about the hotspot-compiler-dev mailing list