mirror of
https://github.com/golang/go.git
synced 2025-11-01 01:00:56 +00:00
cmd/compile: move Node.Curfn into both Node.Func and Node.Name
$ sizeof -p cmd/compile/internal/gc Node Node 168 $ Change-Id: If624a2d72ec04ef30a1bc7ce76c0d61a526d8a37 Reviewed-on: https://go-review.googlesource.com/10532 Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
parent
3c3019aa51
commit
fd2154f906
11 changed files with 72 additions and 78 deletions
|
|
@ -262,8 +262,8 @@ func capturevars(xfunc *Node) {
|
|||
|
||||
if Debug['m'] > 1 {
|
||||
var name *Sym
|
||||
if v.Curfn != nil && v.Curfn.Nname != nil {
|
||||
name = v.Curfn.Nname.Sym
|
||||
if v.Name.Curfn != nil && v.Name.Curfn.Nname != nil {
|
||||
name = v.Name.Curfn.Nname.Sym
|
||||
}
|
||||
how := "ref"
|
||||
if v.Name.Byval {
|
||||
|
|
@ -398,7 +398,7 @@ func transformclosure(xfunc *Node) {
|
|||
addr.Name.Param.Ntype = Nod(OIND, typenod(v.Type), nil)
|
||||
addr.Class = PAUTO
|
||||
addr.Used = true
|
||||
addr.Curfn = xfunc
|
||||
addr.Name.Curfn = xfunc
|
||||
xfunc.Func.Dcl = list(xfunc.Func.Dcl, addr)
|
||||
v.Name.Heapaddr = addr
|
||||
if v.Name.Byval {
|
||||
|
|
@ -602,7 +602,7 @@ func makepartialcall(fn *Node, t0 *Type, meth *Node) *Node {
|
|||
ptr.Addable = true
|
||||
ptr.Ullman = 1
|
||||
ptr.Used = true
|
||||
ptr.Curfn = xfunc
|
||||
ptr.Name.Curfn = xfunc
|
||||
xfunc.Func.Dcl = list(xfunc.Func.Dcl, ptr)
|
||||
var body *NodeList
|
||||
if Isptr[rcvrtype.Etype] || Isinter(rcvrtype) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue