From: Keith Randall Date: Sat, 10 Dec 2016 00:59:38 +0000 (-0800) Subject: cmd/compile: allow inlining of functions with intrinsics in them X-Git-Tag: go1.9beta1~1785 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=8a9dc05312ece25aae057e618f3715208d201f8e;p=gostls13.git cmd/compile: allow inlining of functions with intrinsics in them Intrinsics are ok to inline as they don't rewrite to actual calls. Change-Id: Ieb19c834c61579823c62c6d1a1b425d6c4d4de23 Reviewed-on: https://go-review.googlesource.com/34272 Run-TryBot: Keith Randall TryBot-Result: Gobot Gobot Reviewed-by: David Chase --- diff --git a/src/cmd/compile/internal/gc/inl.go b/src/cmd/compile/internal/gc/inl.go index 7095782411..04e24c1ef2 100644 --- a/src/cmd/compile/internal/gc/inl.go +++ b/src/cmd/compile/internal/gc/inl.go @@ -204,6 +204,10 @@ func ishairy(n *Node, budget *int32, reason *string) bool { *budget -= fn.InlCost break } + if isIntrinsicCall(n) { + *budget-- + break + } if n.isMethodCalledAsFunction() { if d := n.Left.Sym.Def; d != nil && d.Func.Inl.Len() != 0 {