Request for review(XS): 7005241: C1: SEGV in java.util.concurrent.LinkedTransferQueue.xfer() with compressed oops

Igor Veresov igor.veresov at oracle.com
Tue Dec 7 17:23:39 PST 2010


On 12/7/10 5:20 PM, Vladimir Kozlov wrote:
> Looks good. As discussed add a comment that cmpval(rax) is used
> implicitly in cmpxchg instruction.
>

Done. Thanks!

igor

> Thanks,
> Vladimir
>
> Igor Veresov wrote:
>> Implementation of the CAS primitive for x64 compressed oops was
>> incorrect. It kills rscratch2 register (r11), which is allocatable in
>> C1. Also, we don't need to restore cmpval as it's never used after
>> that, so we need only one temporary register, which can be scratch1.
>>
>> Webrev: http://cr.openjdk.java.net/~iveresov/7005241/webrev.00
>>
>> Tested with the failed nightly test.
>>
>> Thanks,
>> igor
>>



More information about the hotspot-compiler-dev mailing list