1
0
mirror of https://github.com/golang/go synced 2024-10-05 11:31:22 -06:00

[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/16132
Reviewed-by: David Chase <drchase@google.com>
This commit is contained in:
Keith Randall 2015-10-20 13:56:16 -07:00
parent 97728b6575
commit fbfc18c522

View File

@ -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