Commit fbfc18c5 authored by Keith Randall's avatar Keith Randall

[dev.ssa] cmd/compile: don't issue nops for static data

It confuses live variable analysis to have a bunch of unreachable
no-ops at the end of a function.  Symptom is:
    gc/plive.go:483 panic: interface conversion: interface {} is nil, not *gc.BasicBlock

I don't see any reason why the old compiler needs these no-ops either.
all.bash passes with the equivalent code removed on master.

Change-Id: Ifcd2c3e139aa16314f08aebc9079b2fb7aa60556
Reviewed-on: https://go-review.googlesource.com/16132Reviewed-by: 's avatarDavid Chase <drchase@google.com>
parent 97728b65
......@@ -1431,9 +1431,6 @@ func gen_as_init(n *Node, reportOnly bool) bool {
case OSLICEARR:
if nr.Right.Op == OKEY && nr.Right.Left == nil && nr.Right.Right == nil {
nr = nr.Left
if !reportOnly {
gused(nil) // in case the data is the dest of a goto
}
nl := nr
if nr == nil || nr.Op != OADDR {
goto no
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment