]> Cypherpunks repositories - gostls13.git/commitdiff
runtime: fix systemstack tracebacks on nacl/arm
authorRuss Cox <rsc@golang.org>
Fri, 31 Jul 2015 02:52:45 +0000 (22:52 -0400)
committerRuss Cox <rsc@golang.org>
Fri, 31 Jul 2015 04:35:38 +0000 (04:35 +0000)
For #11956.

Change-Id: Ic9b57cafa197953cc7f435941e44d42b60b3ddf0
Reviewed-on: https://go-review.googlesource.com/13011
Reviewed-by: Dave Cheney <dave@cheney.net>
src/runtime/asm_arm.s

index 01504700f1edfc4081c707ff48bc0269faeea65f..91dccdc3811aaee8132c078c936c5857618d4205 100644 (file)
@@ -215,6 +215,9 @@ switch:
        // save our state in g->sched.  Pretend to
        // be systemstack_switch if the G stack is scanned.
        MOVW    $runtime·systemstack_switch(SB), R3
+#ifdef GOOS_nacl
+       ADD     $4, R3, R3 // get past nacl-insert bic instruction
+#endif
        ADD     $4, R3, R3 // get past push {lr}
        MOVW    R3, (g_sched+gobuf_pc)(g)
        MOVW    R13, (g_sched+gobuf_sp)(g)