Skip to content
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

x/image/vector: consistent SIGILL on solaris-amd64-oraclerel builder #32835

Closed
bcmills opened this issue Jun 28, 2019 · 3 comments
Closed

x/image/vector: consistent SIGILL on solaris-amd64-oraclerel builder #32835

bcmills opened this issue Jun 28, 2019 · 3 comments
Labels
ExpertNeeded FrozenDueToAge help wanted NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. OS-Solaris
Milestone

Comments

@bcmills
Copy link
Contributor

bcmills commented Jun 28, 2019

The test for golang.org/x/image/vector seems to always fail on the solaris-amd64-oraclerel builder (example).

It looks like something about the assembly code is invalid on that builder — perhaps we're missing an instruction support check somewhere?

SIGILL: illegal instruction (not reset when caught)
PC=0x518308 m=0 sigcode=1

goroutine 20 [running]:
golang.org/x/image/vector.floatingAccumulateOpSrcSIMD(0xc000040e20, 0x20, 0x40, 0xc000040e60, 0x20, 0x40)
	/tmp/workdir-host-solaris-oracle-amd64-oraclerel/gopath/src/golang.org/x/image/vector/acc_amd64.s:827 +0xa8 fp=0xc000040de0 sp=0xc000040dc8 pc=0x518308
golang.org/x/image/vector.TestFloatingAccumulateSIMDUnaligned(0xc0000ca300)
	/tmp/workdir-host-solaris-oracle-amd64-oraclerel/gopath/src/golang.org/x/image/vector/acc_test.go:65 +0xbd fp=0xc000040f70 sp=0xc000040de0 pc=0x50e7cd
testing.tRunner(0xc0000ca300, 0x577b78)
	/tmp/workdir-host-solaris-oracle-amd64-oraclerel/go/src/testing/testing.go:909 +0xc9 fp=0xc000040fd0 sp=0xc000040f70 pc=0x4bee39
runtime.goexit()
	/tmp/workdir-host-solaris-oracle-amd64-oraclerel/go/src/runtime/asm_amd64.s:1357 +0x1 fp=0xc000040fd8 sp=0xc000040fd0 pc=0x4592f1
created by testing.(*T).Run
	/tmp/workdir-host-solaris-oracle-amd64-oraclerel/go/src/testing/testing.go:960 +0x350

goroutine 1 [chan receive]:
testing.(*T).Run(0xc0000ca300, 0x5741eb, 0x23, 0x577b78, 0x46ff01)
	/tmp/workdir-host-solaris-oracle-amd64-oraclerel/go/src/testing/testing.go:961 +0x377
testing.runTests.func1(0xc0000ca000)
	/tmp/workdir-host-solaris-oracle-amd64-oraclerel/go/src/testing/testing.go:1207 +0x78
testing.tRunner(0xc0000ca000, 0xc000076dc0)
	/tmp/workdir-host-solaris-oracle-amd64-oraclerel/go/src/testing/testing.go:909 +0xc9
testing.runTests(0xc0000c4000, 0x682bc0, 0x1d, 0x1d, 0x0)
	/tmp/workdir-host-solaris-oracle-amd64-oraclerel/go/src/testing/testing.go:1205 +0x2a7
testing.(*M).Run(0xc0000b4000, 0x0)
	/tmp/workdir-host-solaris-oracle-amd64-oraclerel/go/src/testing/testing.go:1122 +0x176
main.main()
	_testmain.go:244 +0x135

rax    0x7fa0
rbx    0x20
rcx    0xc000040e60
rdx    0xffffffffffffffff
rdi    0xc000040e20
rsi    0xc000040e60
rbp    0xc000040dd0
rsp    0xc000040dc8
r8     0x8244403483b9aca
r9     0x0
r10    0x20
r11    0x20
r12    0xfc
r13    0x0
r14    0x594cb0
r15    0x0
rip    0x518308
rflags 0x10283
cs     0x53
fs     0x0
gs     0x0
FAIL	golang.org/x/image/vector	0.045s

CC @nigeltao

@bcmills bcmills added help wanted OS-Solaris NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. labels Jun 28, 2019
@gopherbot gopherbot added this to the Unreleased milestone Jun 28, 2019
@bcmills
Copy link
Contributor Author

bcmills commented Jun 28, 2019

Looks like the instruction in question is PSHUFB, which requires SSE3.

@gopherbot
Copy link

Change https://golang.org/cl/184898 mentions this issue: image/vector: add runtime check for SSE4.1

@bcmills
Copy link
Contributor Author

bcmills commented Jul 3, 2019

Confirmed that the solaris-amd64-oraclerel builder is now passing tests. Thanks for the fix!

@golang golang locked and limited conversation to collaborators Jul 2, 2020
GalaxyForcew added a commit to GalaxyForcew/A1bisshy that referenced this issue Jun 6, 2022
The PSHUFB instruction is also used by the floating-point
implementation, not just the fixed-point one.

Fixes golang/go#32835

Change-Id: I21f204319b28b664c862a7e3d938ba9366c74116
Reviewed-on: https://go-review.googlesource.com/c/image/+/184898
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
yi-ge3 added a commit to yi-ge3/wislie that referenced this issue Jun 6, 2022
The PSHUFB instruction is also used by the floating-point
implementation, not just the fixed-point one.

Fixes golang/go#32835

Change-Id: I21f204319b28b664c862a7e3d938ba9366c74116
Reviewed-on: https://go-review.googlesource.com/c/image/+/184898
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
balloontmz6 added a commit to balloontmz6/Likewise42l that referenced this issue Jun 6, 2022
The PSHUFB instruction is also used by the floating-point
implementation, not just the fixed-point one.

Fixes golang/go#32835

Change-Id: I21f204319b28b664c862a7e3d938ba9366c74116
Reviewed-on: https://go-review.googlesource.com/c/image/+/184898
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
snapbakkhfbav added a commit to snapbakkhfbav/SayedBaladohr that referenced this issue Oct 6, 2022
The PSHUFB instruction is also used by the floating-point
implementation, not just the fixed-point one.

Fixes golang/go#32835

Change-Id: I21f204319b28b664c862a7e3d938ba9366c74116
Reviewed-on: https://go-review.googlesource.com/c/image/+/184898
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
MiderWong5ddop added a commit to MiderWong5ddop/sidie88f that referenced this issue Oct 7, 2022
The PSHUFB instruction is also used by the floating-point
implementation, not just the fixed-point one.

Fixes golang/go#32835

Change-Id: I21f204319b28b664c862a7e3d938ba9366c74116
Reviewed-on: https://go-review.googlesource.com/c/image/+/184898
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
rorypeckwnt4v added a commit to rorypeckwnt4v/LearnByBhanuPrataph that referenced this issue Oct 7, 2022
The PSHUFB instruction is also used by the floating-point
implementation, not just the fixed-point one.

Fixes golang/go#32835

Change-Id: I21f204319b28b664c862a7e3d938ba9366c74116
Reviewed-on: https://go-review.googlesource.com/c/image/+/184898
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
egorovcharenko9 added a commit to egorovcharenko9/RiceBIOC470z that referenced this issue Oct 7, 2022
The PSHUFB instruction is also used by the floating-point
implementation, not just the fixed-point one.

Fixes golang/go#32835

Change-Id: I21f204319b28b664c862a7e3d938ba9366c74116
Reviewed-on: https://go-review.googlesource.com/c/image/+/184898
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
ExpertNeeded FrozenDueToAge help wanted NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. OS-Solaris
Projects
None yet
Development

No branches or pull requests

2 participants