diff --git a/src/cmd/compile/internal/ssa/fuse.go b/src/cmd/compile/internal/ssa/fuse.go index 1f826cd25e2..ce759cdec1d 100644 --- a/src/cmd/compile/internal/ssa/fuse.go +++ b/src/cmd/compile/internal/ssa/fuse.go @@ -65,7 +65,7 @@ func fuseBlockIf(b *Block) bool { b.Fatalf("invalid predecessors") } for _, v := range ss.Values { - if v.Op == OpPhi && v.Args[i0] != v.Args[i1] { + if v.Op == OpPhi && v.Uses > 0 && v.Args[i0] != v.Args[i1] { return false } }