cmd/compile: convert Dodata to a bool, rename to IsStatic

Passes toolstash -cmp.

Change-Id: I2c204ec14b0a72b592fb336acdd4dff55650f7f6
Reviewed-on: https://go-review.googlesource.com/26751
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
diff --git a/src/cmd/compile/internal/gc/fmt.go b/src/cmd/compile/internal/gc/fmt.go
index bad8867b..937f714 100644
--- a/src/cmd/compile/internal/gc/fmt.go
+++ b/src/cmd/compile/internal/gc/fmt.go
@@ -299,8 +299,8 @@
 		fmt.Fprintf(&buf, " tc(%d)", n.Typecheck)
 	}
 
-	if c == 0 && n.Dodata != 0 {
-		fmt.Fprintf(&buf, " dd(%d)", n.Dodata)
+	if c == 0 && n.IsStatic {
+		buf.WriteString(" static")
 	}
 
 	if n.Isddd {
diff --git a/src/cmd/compile/internal/gc/sinit.go b/src/cmd/compile/internal/gc/sinit.go
index 7c47d0c..0adcb37 100644
--- a/src/cmd/compile/internal/gc/sinit.go
+++ b/src/cmd/compile/internal/gc/sinit.go
@@ -641,7 +641,7 @@
 			if a.Op != OAS {
 				Fatalf("structlit: not as")
 			}
-			a.Dodata = 2
+			a.IsStatic = true
 		} else {
 			a = orderstmtinplace(a)
 			a = walkstmt(a)
@@ -703,7 +703,7 @@
 			if a.Op != OAS {
 				Fatalf("arraylit: not as")
 			}
-			a.Dodata = 2
+			a.IsStatic = true
 		} else {
 			a = orderstmtinplace(a)
 			a = walkstmt(a)
@@ -730,7 +730,7 @@
 
 		a = Nod(OAS, var_, a)
 		a = typecheck(a, Etop)
-		a.Dodata = 2
+		a.IsStatic = true
 		init.Append(a)
 		return
 	}
@@ -910,7 +910,7 @@
 				as := Nod(OAS, lhs, index)
 				as = typecheck(as, Etop)
 				as = walkexpr(as, init)
-				as.Dodata = 2
+				as.IsStatic = true
 				init.Append(as)
 
 				// build vstatv[b] = value
@@ -919,7 +919,7 @@
 				as = Nod(OAS, lhs, value)
 				as = typecheck(as, Etop)
 				as = walkexpr(as, init)
-				as.Dodata = 2
+				as.IsStatic = true
 				init.Append(as)
 
 				b++
@@ -1326,15 +1326,15 @@
 // If reportOnly is true, it does not emit static data and does not modify the AST.
 func gen_as_init(n *Node, reportOnly bool) bool {
 	success := genAsInitNoCheck(n, reportOnly)
-	if !success && n.Dodata == 2 {
+	if !success && n.IsStatic {
 		Dump("\ngen_as_init", n)
-		Fatalf("gen_as_init couldn't make data statement")
+		Fatalf("gen_as_init couldn't generate static data")
 	}
 	return success
 }
 
 func genAsInitNoCheck(n *Node, reportOnly bool) bool {
-	if n.Dodata == 0 {
+	if !n.IsStatic {
 		return false
 	}
 
diff --git a/src/cmd/compile/internal/gc/syntax.go b/src/cmd/compile/internal/gc/syntax.go
index 1081ad1..79d9d8c 100644
--- a/src/cmd/compile/internal/gc/syntax.go
+++ b/src/cmd/compile/internal/gc/syntax.go
@@ -63,7 +63,7 @@
 	Walkdef   uint8
 	Typecheck uint8
 	Local     bool
-	Dodata    uint8
+	IsStatic  bool // whether this Node will be converted to purely static data
 	Initorder uint8
 	Used      bool
 	Isddd     bool // is the argument variadic
diff --git a/src/cmd/compile/internal/gc/walk.go b/src/cmd/compile/internal/gc/walk.go
index 9d1c39c..114f1b0 100644
--- a/src/cmd/compile/internal/gc/walk.go
+++ b/src/cmd/compile/internal/gc/walk.go
@@ -145,7 +145,7 @@
 	if n == nil {
 		return n
 	}
-	if n.Dodata == 2 { // don't walk, generated by anylit.
+	if n.IsStatic { // don't walk, generated by anylit.
 		return n
 	}
 
@@ -794,9 +794,9 @@
 		}
 
 		if n.Left != nil && n.Right != nil {
-			dd := n.Dodata
+			static := n.IsStatic
 			n = convas(n, init)
-			n.Dodata = dd
+			n.IsStatic = static
 			n = applywritebarrier(n)
 		}