-
Notifications
You must be signed in to change notification settings - Fork 18k
runtime: missing stackmap when calling Go function from asm function #39374
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
Stack trace.
|
/cc @avagin |
Thanks for the report.
Do you know if this reproduces with Go 1.13 too? |
This function has a non-empty frame, so it needs stack maps. Also, please use the macro See https://golang.org/doc/asm for more information. |
@cherrymui Sorry for commenting a closed issue, just wondering if it's feasible to have 'go vet' check and issue warnings against such usage? |
@shawn-xdji I think you can open an issue and let vet maintainers decide. Thanks. |
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
The test case is extracted from gvisor project.
There are three files for the following test case, since the files can't be uploaded on Github, I've posted them all on the page below.
https://play.golang.org/p/kGuVWkQnjwg
Run the test,
$ go test
What did you expect to see?
Test pass
What did you see instead?
runtime: frame asmCallGo/time.muldiv64 untyped locals 0x40027e0e80+0x38
fatal error: missing stackmap
I have also tested this case on linux/amd64 and the same error will occur. Note that the count value in the test is very large, this is set intentionally, and cannot be reproduced when the value is small.
The text was updated successfully, but these errors were encountered: