]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: add necessary operand to mergePoint in rewrite rules
authorDavid Chase <drchase@google.com>
Wed, 19 Jun 2019 22:09:39 +0000 (18:09 -0400)
committerDavid Chase <drchase@google.com>
Thu, 20 Jun 2019 16:56:47 +0000 (16:56 +0000)
commit769fda2d5110eef6146d7df3bf0219872c9b0da6
tree7d2e56438068546ce74124f1fabfaef6743b6d1b
parent71a6a44428feb844b9dd3c4c8e16be8dee2fd8fa
cmd/compile: add necessary operand to mergePoint in rewrite rules

A missing operand to mergePoint caused lower to place values
in the wrong blocks.

Includes test, belt+suspenders to do both ssa check and verify
the output (was is how the bug was originally observed).

The fixed bug here is very likely present in Go versions
1.9-1.12 on amd64 and s390x

Fixes #32680.

Change-Id: I63e702c4c40602cb795ef71b1691eb704d38ccc7
Reviewed-on: https://go-review.googlesource.com/c/go/+/183059
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/cmd/compile/internal/ssa/gen/AMD64.rules
src/cmd/compile/internal/ssa/gen/S390X.rules
src/cmd/compile/internal/ssa/rewriteAMD64.go
src/cmd/compile/internal/ssa/rewriteS390X.go
test/fixedbugs/issue32680.go [new file with mode: 0644]
test/fixedbugs/issue32680.out [new file with mode: 0644]