aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/ssa/compile.go
diff options
context:
space:
mode:
authorCherry Zhang <cherryyz@google.com>2018-06-30 17:46:25 -0400
committerCherry Zhang <cherryyz@google.com>2018-07-02 20:53:23 +0000
commit3f54e8537aa31cf3dbcf27d0c3033b17756d093a (patch)
treeae58414abc2949ee23fccb3ca26e5a6acebe376e /src/cmd/compile/internal/ssa/compile.go
parent398a8ed653929f9901ec14c1fa3d048955050f44 (diff)
downloadgo-3f54e8537aa31cf3dbcf27d0c3033b17756d093a.tar.gz
go-3f54e8537aa31cf3dbcf27d0c3033b17756d093a.zip
cmd/compile: run generic deadcode in -N mode
Late opt pass may generate dead stores, which messes up store chain calculation in later passes. Run generic deadcode even in -N mode to remove them. Fixes #26163. Change-Id: I8276101717bb978d5980e6c7998f53fd8d0ae10f Reviewed-on: https://go-review.googlesource.com/121856 Run-TryBot: Cherry Zhang <cherryyz@google.com> Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'src/cmd/compile/internal/ssa/compile.go')
-rw-r--r--src/cmd/compile/internal/ssa/compile.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cmd/compile/internal/ssa/compile.go b/src/cmd/compile/internal/ssa/compile.go
index c7797d79e9..7f75dc4a03 100644
--- a/src/cmd/compile/internal/ssa/compile.go
+++ b/src/cmd/compile/internal/ssa/compile.go
@@ -373,7 +373,7 @@ var passes = [...]pass{
{name: "softfloat", fn: softfloat, required: true},
{name: "late opt", fn: opt, required: true}, // TODO: split required rules and optimizing rules
{name: "dead auto elim", fn: elimDeadAutosGeneric},
- {name: "generic deadcode", fn: deadcode},
+ {name: "generic deadcode", fn: deadcode, required: true}, // remove dead stores, which otherwise mess up store chain
{name: "check bce", fn: checkbce},
{name: "branchelim", fn: branchelim},
{name: "fuse", fn: fuse},