Navigation Menu

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

cmd/compile: multiple memories live at block start [1.20 backport] #59975

Closed
gopherbot opened this issue May 4, 2023 · 2 comments
Closed

cmd/compile: multiple memories live at block start [1.20 backport] #59975

gopherbot opened this issue May 4, 2023 · 2 comments
Labels
CherryPickApproved Used during the release process for point releases compiler/runtime Issues related to the Go compiler and/or runtime.
Milestone

Comments

@gopherbot
Copy link

@randall77 requested issue #59973 to be considered for backport to the next 1.20 minor release.

@gopherbot Please open backport issues.

This bug can lead to compiler crashes which would be hard to work around.
I'm not sure if it could lead to miscompilation. But maybe?

It is GOAMD64=v3 only.

@gopherbot gopherbot added the CherryPickCandidate Used during the release process for point releases label May 4, 2023
@gopherbot gopherbot added the compiler/runtime Issues related to the Go compiler and/or runtime. label May 4, 2023
@gopherbot gopherbot added this to the Go1.20.5 milestone May 4, 2023
@gopherbot
Copy link
Author

Change https://go.dev/cl/492696 mentions this issue: [release-branch.go1.20] cmd/compile: fix bswap/load rewrite rules

@cherrymui cherrymui added the CherryPickApproved Used during the release process for point releases label May 10, 2023
@gopherbot gopherbot removed the CherryPickCandidate Used during the release process for point releases label May 10, 2023
gopherbot pushed a commit that referenced this issue May 11, 2023
When combining a byteswap and a load, the resulting combined op
must go in the load's block, not the byteswap's block, as the load
has a memory argument that might only be valid in its original block.

Fixes #59975

Change-Id: Icd84863ef3a9ca1fc22f2bb794a003f2808c746f
Reviewed-on: https://go-review.googlesource.com/c/go/+/492616
Run-TryBot: Keith Randall <khr@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Wayne Zuo <wdvxdr@golangcn.org>
Reviewed-by: Keith Randall <khr@google.com>
(cherry picked from commit 1014167)
Reviewed-on: https://go-review.googlesource.com/c/go/+/492696
@gopherbot
Copy link
Author

Closed by merging afbe101 to release-branch.go1.20.

bradfitz pushed a commit to tailscale/go that referenced this issue May 25, 2023
When combining a byteswap and a load, the resulting combined op
must go in the load's block, not the byteswap's block, as the load
has a memory argument that might only be valid in its original block.

Fixes golang#59975

Change-Id: Icd84863ef3a9ca1fc22f2bb794a003f2808c746f
Reviewed-on: https://go-review.googlesource.com/c/go/+/492616
Run-TryBot: Keith Randall <khr@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Wayne Zuo <wdvxdr@golangcn.org>
Reviewed-by: Keith Randall <khr@google.com>
(cherry picked from commit 1014167)
Reviewed-on: https://go-review.googlesource.com/c/go/+/492696
bradfitz pushed a commit to tailscale/go that referenced this issue May 25, 2023
When combining a byteswap and a load, the resulting combined op
must go in the load's block, not the byteswap's block, as the load
has a memory argument that might only be valid in its original block.

Fixes golang#59975

Change-Id: Icd84863ef3a9ca1fc22f2bb794a003f2808c746f
Reviewed-on: https://go-review.googlesource.com/c/go/+/492616
Run-TryBot: Keith Randall <khr@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Wayne Zuo <wdvxdr@golangcn.org>
Reviewed-by: Keith Randall <khr@google.com>
(cherry picked from commit 1014167)
Reviewed-on: https://go-review.googlesource.com/c/go/+/492696
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CherryPickApproved Used during the release process for point releases compiler/runtime Issues related to the Go compiler and/or runtime.
Projects
None yet
Development

No branches or pull requests

2 participants