]> Cypherpunks.ru repositories - gostls13.git/commitdiff
runtime: fix badmorestackg0 never called on wasm
authorMauri de Souza Meneguzzo <mauri870@gmail.com>
Sun, 5 Nov 2023 16:48:15 +0000 (16:48 +0000)
committerGopher Robot <gobot@golang.org>
Sun, 5 Nov 2023 19:03:55 +0000 (19:03 +0000)
Previously, badmorestackg0 was never called since it was behind a g ==
R1 check, R1 holding g.m. This is clearly wrong, since we want to check
if g == g0. Fixed by using R2 that holds the value of g0.

Fixes #63953

Change-Id: I1e2a1c3be7ad9e7ae8dbf706ef6783e664a44764
GitHub-Last-Rev: b3e92cf28603ef6f6fafc9f9b724b84253a4355c
GitHub-Pull-Request: golang/go#63954
Reviewed-on: https://go-review.googlesource.com/c/go/+/539840
Reviewed-by: Austin Clements <austin@google.com>
Auto-Submit: Austin Clements <austin@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Michael Knyszek <mknyszek@google.com>
src/runtime/asm_wasm.s

index 9cd8b5a99f03925a653e1adfb358c44c41fc1ede..a96115b02cf5beef674dfc6d496b3fdd40249f0f 100644 (file)
@@ -223,7 +223,7 @@ TEXT runtime·morestack(SB), NOSPLIT, $0-0
 
        // Cannot grow scheduler stack (m->g0).
        Get g
-       Get R1
+       Get R2
        I64Eq
        If
                CALLNORESUME runtime·badmorestackg0(SB)