Commit 3007e953 authored by Russ Cox's avatar Russ Cox

cmd/compile: remove Node.Escflowsrc, Node.Escretval, Node.Escloopdepth, Node.Esclevel

$ sizeof -p cmd/compile/internal/gc Node
Node 200
$

Change-Id: Iba4e88eac6bee3e2349e818a5a2326deabcb96f9
Reviewed-on: https://go-review.googlesource.com/10528Reviewed-by: default avatarIan Lance Taylor <iant@golang.org>
Reviewed-by: default avatarJosh Bleecher Snyder <josharian@gmail.com>
parent ac2bda1b
This diff is collapsed.
...@@ -259,8 +259,8 @@ func Jconv(n *Node, flag int) string { ...@@ -259,8 +259,8 @@ func Jconv(n *Node, flag int) string {
fmt.Fprintf(&buf, " esc(%d)", n.Esc) fmt.Fprintf(&buf, " esc(%d)", n.Esc)
} }
if n.Escloopdepth != 0 { if e, ok := n.Opt.(*NodeEscState); ok && e.Escloopdepth != 0 {
fmt.Fprintf(&buf, " ld(%d)", n.Escloopdepth) fmt.Fprintf(&buf, " ld(%d)", e.Escloopdepth)
} }
if c == 0 && n.Typecheck != 0 { if c == 0 && n.Typecheck != 0 {
......
...@@ -33,10 +33,6 @@ type Node struct { ...@@ -33,10 +33,6 @@ type Node struct {
Curfn *Node // function for local variables Curfn *Node // function for local variables
Param *Param Param *Param
// Escape analysis.
Escflowsrc *NodeList // flow(this, src)
Escretval *NodeList // on OCALLxxx, list of dummy return values
Sym *Sym // various Sym *Sym // various
Opt interface{} // for optimization passes Opt interface{} // for optimization passes
...@@ -46,9 +42,6 @@ type Node struct { ...@@ -46,9 +42,6 @@ type Node struct {
Xoffset int64 Xoffset int64
// Escape analysis.
Escloopdepth int32 // -1: global, 0: return variables, 1:function top level, increased inside function for every loop or label to mark scopes
Vargen int32 // unique name for OTYPE/ONAME within a function. Function outputs are numbered starting at one. Vargen int32 // unique name for OTYPE/ONAME within a function. Function outputs are numbered starting at one.
Lineno int32 Lineno int32
Iota int32 Iota int32
...@@ -59,9 +52,7 @@ type Node struct { ...@@ -59,9 +52,7 @@ type Node struct {
// OREGISTER, OINDREG // OREGISTER, OINDREG
Reg int16 Reg int16
// most nodes - smaller fields Esc uint16 // EscXXX
Esclevel Level
Esc uint16 // EscXXX
Op uint8 Op uint8
Nointerface bool Nointerface bool
......
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