It is unused, remove the clutter.
Change-Id: I51a44326b125ef79241459c463441f76a289cc08
Reviewed-on: https://go-review.googlesource.com/22586
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
if b.Aux == nil {
f.Fatalf("retjmp block %s has nil Aux field", b)
}
- case BlockDead:
- if len(b.Succs) != 0 {
- f.Fatalf("dead block %s has successors", b)
- }
- if len(b.Preds) != 0 {
- f.Fatalf("dead block %s has predecessors", b)
- }
- if len(b.Values) != 0 {
- f.Fatalf("dead block %s has values", b)
- }
- if b.Control != nil {
- f.Fatalf("dead block %s has a control value", b)
- }
case BlockPlain:
if len(b.Succs) != 1 {
f.Fatalf("plain block %s len(Succs)==%d, want 1", b, len(b.Succs))
{name: "RetJmp"}, // no successors, jumps to b.Aux.(*gc.Sym)
{name: "Exit"}, // no successors, control value generates a panic
- // transient block states used for dead code removal
+ // transient block state used for dead code removal
{name: "First"}, // 2 successors, always takes the first one (second is dead)
- {name: "Dead"}, // no successors; determined to be dead but not yet removed
}
func init() {
BlockRetJmp
BlockExit
BlockFirst
- BlockDead
)
var blockString = [...]string{
BlockRetJmp: "RetJmp",
BlockExit: "Exit",
BlockFirst: "First",
- BlockDead: "Dead",
}
func (k BlockKind) String() string { return blockString[k] }
for {
change := false
for _, b := range f.Blocks {
- if b.Kind == BlockDead {
- continue
- }
if b.Control != nil && b.Control.Op == OpCopy {
for b.Control.Op == OpCopy {
b.SetControl(b.Control.Args[0])