]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/compile: clarify adjustctxt inlining comment
authorDaniel Martí <mvdan@mvdan.cc>
Sat, 23 Sep 2017 11:22:10 +0000 (12:22 +0100)
committerMatthew Dempsky <mdempsky@google.com>
Sat, 23 Sep 2017 20:24:10 +0000 (20:24 +0000)
The reason why adjustctxt wasn't being inlined was reported as:

function too complex: cost 92 exceeds budget 80

However, after tweaking the code to be under the budget limit, we see
the real blocker:

non-leaf function

There is little we can do about this one in particular at the moment.
Create a section with funcs that will need mid-stack inlining to be
inlineable, since this will likely come up again in other cases.

Change-Id: I3a8eb1546b289a060ac896506a007b0496946e84
Reviewed-on: https://go-review.googlesource.com/65650
Run-TryBot: Daniel Martí <mvdan@mvdan.cc>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
src/cmd/compile/internal/gc/inl_test.go

index cbcd96a7b96257431c1d037cdb37f5170340f84c..a0f466580a45d861d23c88082f25e8e687afad26 100644 (file)
@@ -29,6 +29,10 @@ func TestIntendedInlining(t *testing.T) {
        // be inlined.
        want := map[string][]string{
                "runtime": {
+                       // TODO(mvdan): enable these once mid-stack
+                       // inlining is available
+                       // "adjustctxt",
+
                        "add",
                        "addb",
                        "adjustpanics",
@@ -58,8 +62,6 @@ func TestIntendedInlining(t *testing.T) {
                        "(*bmap).keys",
                        "(*bmap).overflow",
                        "(*waitq).enqueue",
-
-                       //"adjustctxt", TODO(mvdan): fix and re-enable
                },
                "runtime/internal/sys": {},
                "unicode/utf8": {