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: internal compiler error: Op...LECall and OpDereference have mismatched mem [1.16 backport] #49412

Closed
gopherbot opened this issue Nov 6, 2021 · 4 comments
Labels
CherryPickApproved Used during the release process for point releases
Milestone

Comments

@gopherbot
Copy link

gopherbot commented Nov 6, 2021

@hanchaoqun requested issue #49282 to be considered for backport to the next 1.16 minor release.

@gopherbot Please open backport to 1.16 and 1.17

@gopherbot gopherbot added the CherryPickCandidate Used during the release process for point releases label Nov 6, 2021
@gopherbot gopherbot added this to the Go1.16.11 milestone Nov 6, 2021
@gopherbot
Copy link
Author

gopherbot commented Nov 6, 2021

Change https://golang.org/cl/362055 mentions this issue: [release-branch.go1.16] cmd/compile: avoid adding LECall to the entry block when has opendefers

@cagedmantis
Copy link
Contributor

cagedmantis commented Nov 10, 2021

@drchase left a comment stating that this is reproducible in 1.16.

@toothrot toothrot added the CherryPickApproved Used during the release process for point releases label Nov 24, 2021
@gopherbot gopherbot removed the CherryPickCandidate Used during the release process for point releases label Nov 24, 2021
@heschi
Copy link
Contributor

heschi commented Nov 24, 2021

@dr2chase This cherrypick's CL still needs review.

@heschi heschi modified the milestones: Go1.16.11, Go1.16.12 Dec 2, 2021
@toothrot toothrot modified the milestones: Go1.16.12, Go1.16.13 Dec 9, 2021
@gopherbot
Copy link
Author

gopherbot commented Dec 21, 2021

Closed by merging 168bc3a to release-branch.go1.16.

gopherbot pushed a commit that referenced this issue Dec 21, 2021
… block when has opendefers

The openDeferRecord always insert vardef/varlive pairs into the entry block, it may destroy the mem chain when LECall's args are writing into the same block. So create a new block before that happens.

Fixes #49412

Change-Id: Ibda6c4a45d960dd412a641f5e02276f663c80785
Reviewed-on: https://go-review.googlesource.com/c/go/+/361410
Run-TryBot: Alberto Donizetti <alb.donizetti@gmail.com>
TryBot-Result: Go Bot <gobot@golang.org>
Trust: Alberto Donizetti <alb.donizetti@gmail.com>
Trust: Than McIntosh <thanm@google.com>
Reviewed-by: David Chase <drchase@google.com>
(cherry picked from commit 4f083c7)
Reviewed-on: https://go-review.googlesource.com/c/go/+/362055
Reviewed-by: Keith Randall <khr@golang.org>
Trust: Michael Knyszek <mknyszek@google.com>
Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
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
Projects
None yet
Development

No branches or pull requests

4 participants