-
Notifications
You must be signed in to change notification settings - Fork 17.9k
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/asm: Maintain power5 compatibility for ppc64 big endian #16004
Labels
Milestone
Comments
@laboger What is the status of this? |
Working on it, I was out for a few days. I will submit my change shortly and I was hoping @mundaym would update CL 22772 as discussed in the mailing list. |
CL https://golang.org/cl/24181 mentions this issue. |
CL https://golang.org/cl/24191 mentions this issue. |
gopherbot
pushed a commit
that referenced
this issue
Jun 17, 2016
Use the same technique as mips64 for these casts (CL 22835). We could use the FCFIDU instruction for ppc64le however it seems better to keep it the same as ppc64 for now. Updates #15539, updates #16004. Change-Id: I550680e485327568bf3238c4615a6cc8de6438d7 Reviewed-on: https://go-review.googlesource.com/24191 Reviewed-by: David Chase <drchase@google.com> Run-TryBot: Michael Munday <munday@ca.ibm.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
ceseo
pushed a commit
to powertechpreview/go
that referenced
this issue
Jun 28, 2016
This modifies a recent performance improvement to the And8 and Or8 atomic functions which required both ppc64le and ppc64 to use power8 instructions. Since then it was decided that ppc64 (BE) should work for power5 and later. This change uses instructions compatible with power5 for ppc64 and uses power8 for ppc64le. Fixes golang#16004 Change-Id: I623c75e8e6fd1fa063a53d250d86cdc9d0890dc7 Reviewed-on: https://go-review.googlesource.com/24181 Reviewed-by: Keith Randall <khr@golang.org> Run-TryBot: Andrew Gerrand <adg@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Please answer these questions before submitting your issue. Thanks!
go version
)?go1.7beta1
go env
)?ppc64 multiple OSes with instruction sets earlier than power8
If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.
Try to build golang on ppc64 with an instruction set earlier than power8
Successful build.
SIGILL during the build on a power7 ppc64 system.
Some performance changes were added to go1.7 to improve performance for ppc64x, in some cases using instructions from power7 or power8 instruction sets. For ppc64le we want to use the newest instructions and get the best performance, but for ppc64 BE there are legacy systems with earlier instruction sets that want to be able to continue to build golang.
The two CLs that introduced newer instructions are 22772 and 22549. Those changes will be modified to generate legacy instructions for ppc64 BE and keep the newer instructions on ppc64le.
The text was updated successfully, but these errors were encountered: