From: Ian Lance Taylor Date: Thu, 10 Mar 2016 18:42:28 +0000 (-0800) Subject: cmd/compile: change Func.Inldcl from *[]*Node to Nodes X-Git-Tag: go1.7beta1~1418 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=ed4a27a8dd9bb12fc32a73b351b5987d2604a5af;p=gostls13.git cmd/compile: change Func.Inldcl from *[]*Node to Nodes Change-Id: I055e986c3f27d5c07badcd1684f4fe1d65a917a9 Reviewed-on: https://go-review.googlesource.com/20523 Run-TryBot: Ian Lance Taylor Reviewed-by: Brad Fitzpatrick TryBot-Result: Gobot Gobot --- diff --git a/src/cmd/compile/internal/gc/inl.go b/src/cmd/compile/internal/gc/inl.go index a1bb17752e..35df490600 100644 --- a/src/cmd/compile/internal/gc/inl.go +++ b/src/cmd/compile/internal/gc/inl.go @@ -151,9 +151,7 @@ func caninl(fn *Node) { fn.Func.Nname.Func.Inl.Set(fn.Nbody.Slice()) fn.Nbody.Set(inlcopylist(fn.Func.Nname.Func.Inl.Slice())) inldcl := inlcopylist(fn.Func.Nname.Name.Defn.Func.Dcl) - if len(inldcl) > 0 { - fn.Func.Nname.Func.Inldcl = &inldcl - } + fn.Func.Nname.Func.Inldcl.Set(inldcl) fn.Func.Nname.Func.InlCost = int32(maxBudget - budget) // hack, TODO, check for better way to link method nodes back to the thing with the ->inl @@ -565,9 +563,7 @@ func mkinlcall1(np **Node, fn *Node, isddd bool) { var dcl []*Node if fn.Name.Defn != nil { // local function - if fn.Func.Inldcl != nil { - dcl = *fn.Func.Inldcl - } + dcl = fn.Func.Inldcl.Slice() } else { // imported function dcl = fn.Func.Dcl diff --git a/src/cmd/compile/internal/gc/syntax.go b/src/cmd/compile/internal/gc/syntax.go index 6bc795beba..e36ae2d722 100644 --- a/src/cmd/compile/internal/gc/syntax.go +++ b/src/cmd/compile/internal/gc/syntax.go @@ -151,9 +151,9 @@ type Func struct { Shortname *Node Enter Nodes // for example, allocate and initialize memory for escaping parameters Exit Nodes - Cvars Nodes // closure params - Dcl []*Node // autodcl for this func/closure - Inldcl *[]*Node // copy of dcl for use in inlining + Cvars Nodes // closure params + Dcl []*Node // autodcl for this func/closure + Inldcl Nodes // copy of dcl for use in inlining Closgen int Outerfunc *Node Fieldtrack []*Type