-
Notifications
You must be signed in to change notification settings - Fork 18k
runtime: stack split at bad time for programs built with go1.23rc2 with optimizations disabled on linux/386 #68525
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Change https://go.dev/cl/599675 mentions this issue: |
git bisect points to https://go-review.googlesource.com/c/go/+/571056 The CL call |
Thanks for the report and the fix. I agree with the fix: a nosplit annotation is required there. It's a big strange to me that GOARCH=386 behaves differently here than GOARCH=amd64. Building with Lack of nosplit annotation was a bug, the fix is right, what remains is to see if there's anything to be learned from why the bug was hidden except on GOARCH=386.
|
Not only 386, this also happens for other platforms where reg ABI is not supported. On these platforms, we need to setup stack for function arguments:
|
So that's part of how regabi (or lack of it) looks, got it. Thanks @cuonglm . |
How to reproduce:
fmt.Println
(for example buildtest) on linux/386 with go 1.23rc2 passing-gcflags='all=-N -l'
The text was updated successfully, but these errors were encountered: