From ed4a27a8dd9bb12fc32a73b351b5987d2604a5af Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Thu, 10 Mar 2016 10:42:28 -0800 Subject: [PATCH] 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 --- src/cmd/compile/internal/gc/inl.go | 8 ++------ src/cmd/compile/internal/gc/syntax.go | 6 +++--- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/cmd/compile/internal/gc/inl.go b/src/cmd/compile/internal/gc/inl.go index a1bb17752e5..35df490600f 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 6bc795beba5..e36ae2d722d 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