Request for review(XS): 7005241: C1: SEGV in java.util.concurrent.LinkedTransferQueue.xfer() with compressed oops
Vladimir Kozlov
vladimir.kozlov at oracle.com
Tue Dec 7 17:20:44 PST 2010
Looks good. As discussed add a comment that cmpval(rax) is used implicitly in cmpxchg instruction.
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