RFR 8203466: intermittent crash at jdk.internal.misc.Unsafe::getObjectVolatile (native)
dean.long at oracle.com
dean.long at oracle.com
Fri Sep 14 20:01:02 UTC 2018
Hi Coleen. In the bug you asked:
> Why can't we just push rdi and rsi to the stack and restore them?
This code appears to be leaf code so shouldn't care about stack format
Did that ever get answered? If there is concern about the pushes and
pops canceling out at the end, you could always reserve the stack space
at the beginning, after
__ enter();
and then setup_arg_regs/restore_arg_regs would not need to adjust the
stack pointer.
dl
On 9/14/18 11:32 AM, coleen.phillimore at oracle.com wrote:
> Summary: Save windows 64 callee saved registers rsi, rdi to Thread,
> save r15, also callee saved to r9
>
> This is done for generated stubs that do arraycopy that need GC
> barrier code because GC assumes that r10 is scratch, since it's
> defined as rscratch1. See bug for more details. Thanks Erik for your
> help and the diagnosis.
>
> Tested with mach5 hs-tier1-7. We don't have a reproduceable test case.
>
> open webrev at http://cr.openjdk.java.net/~coleenp/8203466.01/webrev
> bug link https://bugs.openjdk.java.net/browse/JDK-8203466
>
> Thanks,
> Coleen
>
More information about the hotspot-dev
mailing list