1
0
mirror of https://github.com/golang/go synced 2024-11-08 07:46:15 -07:00
go/src/cmd
David Chase 1a27f048ad cmd/compile: make OpAddr depend on VarDef in storeOrder
Given a carefully constructed input, writebarrier would
split a block with the OpAddr in the first half and the
VarDef in the second half which ultimately leads to a
compiler crash because the scheduler is no longer able
to put them in the proper order.

To fix, recognize the implicit dependence of OpAddr on
the VarDef of the same symbol if any exists.

This fix was chosen over making OpAddr take a memory
operand to make the dependence explicit, because this
change is less invasive at this late part of the 1.11
release cycle.

Fixes #26105.

Change-Id: I9b65460673af3af41740ef877d2fca91acd336bc
Reviewed-on: https://go-review.googlesource.com/121436
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
2018-06-29 15:20:52 +00:00
..
addr2line
api
asm cmd/compile: improve atomic add intrinsics with ARMv8.1 new instruction 2018-06-21 14:52:43 +00:00
buildid
cgo cmd/cgo: mention character restrictions on #cgo lines 2018-06-26 14:39:02 +00:00
compile cmd/compile: make OpAddr depend on VarDef in storeOrder 2018-06-29 15:20:52 +00:00
cover cmd/cover: fix off-by-one in test error message 2018-06-18 11:53:40 +00:00
dist cmd/dist: increase timeout scale to 3 for windows 2018-06-25 20:52:59 +00:00
doc cmd/doc: continue to search when package import fails 2018-06-11 22:09:14 +00:00
fix
go cmd/vet: don't run buildtag check when in vetxonly mode 2018-06-29 08:33:11 +00:00
gofmt
internal cmd/compile: improve atomic add intrinsics with ARMv8.1 new instruction 2018-06-21 14:52:43 +00:00
link cmd/link: document limitation of -X 2018-06-27 04:29:51 +00:00
nm cmd/nm: fix TestGoExec on Plan 9 2018-06-11 20:58:09 +00:00
objdump
pack
pprof cmd/pprof: fix help message formatting error 2018-05-31 17:29:10 +00:00
test2json
trace runtime, sycall/js: add support for callbacks from JavaScript 2018-06-14 21:50:53 +00:00
vendor cmd/vendor/.../pprof: sync at rev 1ddc9e2 2018-05-30 16:31:37 +00:00
vet cmd/vet: don't run buildtag check when in vetxonly mode 2018-06-29 08:33:11 +00:00