From: Mauri de Souza Meneguzzo Date: Sun, 5 Nov 2023 16:48:15 +0000 (+0000) Subject: runtime: fix badmorestackg0 never called on wasm X-Git-Tag: go1.22rc1~429 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=4cd201b14b6216e72ffa175747c20d1191e5eb57;p=gostls13.git runtime: fix badmorestackg0 never called on wasm 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 Auto-Submit: Austin Clements LUCI-TryBot-Result: Go LUCI Reviewed-by: Michael Knyszek --- diff --git a/src/runtime/asm_wasm.s b/src/runtime/asm_wasm.s index 9cd8b5a99f..a96115b02c 100644 --- a/src/runtime/asm_wasm.s +++ b/src/runtime/asm_wasm.s @@ -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)