Skip to content

Commit

Permalink
doc: add release note fragment on inlining changes
Browse files Browse the repository at this point in the history
Add some material to the "compiler" portion of the release
notes describing the 1.22 changes to the inliner.

For #61422.
Updates #61502.

Change-Id: Ic7f1cb7f70752446d2465ea3da6bd7488436342b
Reviewed-on: https://go-review.googlesource.com/c/go/+/549395
Reviewed-by: David Chase <drchase@google.com>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
  • Loading branch information
thanm committed Dec 14, 2023
1 parent 6146a73 commit d1a186d
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions doc/go1.22.html
Expand Up @@ -219,6 +219,18 @@ <h2 id="compiler">Compiler</h2>
14% improvement from enabling PGO.
</p>

<p><!-- https://go.dev/cl/528321 -->
The compiler now interleaves devirtualization and inlining, so interface
method calls are better optimized.
</p>

<p><!-- https://go.dev/issue/61502 -->
Go 1.22 also includes a preview of an enhanced implementation of the compiler's inlining phase that uses heuristics to boost inlinability at call sites deemed "important" (for example, in loops) and discourage inlining at call sites deemed "unimportant" (for example, on panic paths).
Building with <code>GOEXPERIMENT=newinliner</code> enables the new call-site
heuristics; see <a href="https://go.dev/issue/61502">issue #61502</a> for
more info and to provide feedback.
</p>

<h2 id="linker">Linker</h2>

<p><!-- CL 493136 -->
Expand Down

0 comments on commit d1a186d

Please sign in to comment.