[arm64] Really fix handler block trampolines.
authorZoltan Varga <vargaz@gmail.com>
Fri, 7 Jul 2017 01:00:01 +0000 (21:00 -0400)
committerZoltan Varga <vargaz@gmail.com>
Fri, 7 Jul 2017 01:00:22 +0000 (21:00 -0400)
mono/mini/tramp-arm64.c

index dab24adaf70ae6747a2ba60f30a0627559dd92c2..be10117bbe7a049007042c451f2b6359f26f62f3 100644 (file)
@@ -546,7 +546,7 @@ mono_arch_create_handler_block_trampoline (MonoTrampInfo **info, gboolean aot)
                code = mono_arm_emit_imm64 (code, ARMREG_IP0, (guint64)mono_arm_handler_block_trampoline_helper);
        arm_blrx (code, ARMREG_IP0);
        /* Set it as the return address so the trampoline will return to it */
-       arm_movx (code, ARMREG_LR, ARMREG_IP0);
+       arm_movx (code, ARMREG_LR, ARMREG_R0);
 
        /* Call the C trampoline function */
        if (aot) {