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
cmd/compile: mips: running error SIGILL: illegal instruction #30879
Comments
Does your machine support MIPS32R1 instruction set? We don't generate mips16 instructions. Is your machine big-endian or little-endian? What is |
i think i find the reason.
system type : RTL9600_MSTC
processor : 0
cpu model : 56322
BogoMIPS : 499.71
tlb_entries : 64
mips16 implemented : yes the rtl seems like that not the really mips and you don't generate mips16 instructions.what's your suggestion? |
It sounds like this isn't a bug, just a configuration problem, but please correct me if I'm wrong. For questions about Go, see https://golang.org/wiki/Questions. I'll leave this issue open for now, but this may be closed later if everything is Working As Intended. |
I can build a elf from a cross compile toolchain for the target linux. I think @cherrymui may be right. may be the target's CPU is not really the mips. |
This looks like that the system is actually MIPS, big-endian. But MIPS-I is too old. It doesn't support newer instructions that we generate (not only floating point so softfloat doesn't help). Maybe you could try gccgo. |
@shownb This might be one of those Lexra cores that should be almost full mips32 sans [L|S]WL/[L|S]WR support. Can you tray https://godbolt.org/z/VQLGir on your device to see if it crashes the same way? |
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
build on : amd64 linux,
runing on:mips16 Linux version 2.6.30.9
What did you do?
file
build command:
i have tried
GOOS=linux GOARCH=mips GOMIPS=softfloat go build -a test.go
GOOS=linux GOARCH=mipsle GOMIPS=softfloat go build -a test.go
i run in the target:
mips output like
mipsle output like that
it seems like that the softfloat don't work.
but i tested the ./test in other openwrt router(closed fpu) it works.
What did you expect to see?
i expect i can see "see me you win" in the target router.
What did you see instead?
Illegal instruction
The text was updated successfully, but these errors were encountered: