cmd/compile: remove Node.Ntest, Node.Stkdelta
$ sizeof -p cmd/compile/internal/gc Node
Node 272
$
Change-Id: I3d9b67eebfc0be0a4b9768d3de3dc76300abd89c
Reviewed-on: https://go-review.googlesource.com/10521
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
diff --git a/src/cmd/compile/internal/gc/racewalk.go b/src/cmd/compile/internal/gc/racewalk.go
index e35054c..cb5f738 100644
--- a/src/cmd/compile/internal/gc/racewalk.go
+++ b/src/cmd/compile/internal/gc/racewalk.go
@@ -371,18 +371,25 @@
Yyerror("racewalk: OGETG can happen only in runtime which we don't instrument")
goto ret
- // just do generic traversal
case OFOR:
+ if n.Left != nil {
+ racewalknode(&n.Left, &n.Left.Ninit, 0, 0)
+ }
if n.Right != nil {
racewalknode(&n.Right, &n.Right.Ninit, 0, 0)
}
goto ret
- case OIF,
- OCALLMETH,
+ case OIF, OSWITCH:
+ if n.Left != nil {
+ racewalknode(&n.Left, &n.Left.Ninit, 0, 0)
+ }
+ goto ret
+
+ // just do generic traversal
+ case OCALLMETH,
ORETURN,
ORETJMP,
- OSWITCH,
OSELECT,
OEMPTY,
OBREAK,
@@ -415,9 +422,6 @@
if n.Op != OBLOCK { // OBLOCK is handled above in a special way.
racewalklist(n.List, init)
}
- if n.Ntest != nil {
- racewalknode(&n.Ntest, &n.Ntest.Ninit, 0, 0)
- }
racewalklist(n.Nbody, nil)
racewalklist(n.Rlist, nil)
*np = n
@@ -577,7 +581,6 @@
foreachnode(n.Left, f, c)
foreachnode(n.Right, f, c)
foreachlist(n.List, f, c)
- foreachnode(n.Ntest, f, c)
foreachlist(n.Nbody, f, c)
foreachlist(n.Rlist, f, c)
}