]> Cypherpunks repositories - gostls13.git/commit
[release-branch.go1.23] cmd/compile: fix write barrier coalescing
authorKeith Randall <khr@golang.org>
Sat, 11 Jan 2025 01:33:26 +0000 (17:33 -0800)
committerMichael Knyszek <mknyszek@google.com>
Fri, 17 Jan 2025 15:41:09 +0000 (07:41 -0800)
commit9cbbf5e0f4fe5231a5ad425638800618839de0a5
tree5ebe8ebd0173d28ae26f4a4bf5e92d063a0902fa
parentd04e3cbc9240e25de449dcae2ec33d03062f347b
[release-branch.go1.23] cmd/compile: fix write barrier coalescing

We can't coalesce a non-WB store with a subsequent Move, as the
result of the store might be the source of the move.

There's a simple codegen test. Not sure how we might do a real test,
as all the repro's I've come up with are very expensive and unreliable.

Fixes #71230

Change-Id: If18bf181a266b9b90964e2591cd2e61a7168371c
Reviewed-on: https://go-review.googlesource.com/c/go/+/642197
Reviewed-by: Keith Randall <khr@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: David Chase <drchase@google.com>
Reviewed-on: https://go-review.googlesource.com/c/go/+/642498
src/cmd/compile/internal/ssa/writebarrier.go
test/codegen/writebarrier.go