doc/go1.18: mention register ABI on ARM64 and PPC64

For #47694.

Change-Id: Ide378f4a34587027c3d84fed2126c5b9bd8f7287
Reviewed-on: https://go-review.googlesource.com/c/go/+/363694
Trust: Cherry Mui <cherryyz@google.com>
Reviewed-by: Jeremy Faller <jeremy@golang.org>
This commit is contained in:
Cherry Mui 2021-11-12 13:10:30 -05:00
parent aec5c2eed6
commit ba9f0f6665

View file

@ -71,12 +71,6 @@ proposal</a>.
The <code>GOAMD64</code> environment variable defaults to <code>v1</code>.
</p>
<h3 id="ppc64">PPC64</h3>
<p><!-- CL 353969 -->
TODO: <a href="https://golang.org/cl/353969">https://golang.org/cl/353969</a>: internal/buildcfg: enable register ABI for PPC64
</p>
<h3 id="riscv">RISC-V</h3>
<p><!-- golang.org/issue/47100, CL 334872 -->
@ -170,6 +164,25 @@ proposal</a>.
<h2 id="compiler">Compiler</h2>
<p><!-- https://golang.org/issue/40724 -->
Go 1.17 <a href=go1.17#compiler>implemented</a> a new way of passing
function arguments and results using registers instead of the stack
on 64-bit x86 architecture on selected operating systems.
Go 1.18 expands the supported platforms to include 64-bit ARM (<code>GOARCH=arm64</code>),
big- and little-endian 64-bit PowerPC (<code>GOARCH=ppc64</code>, <code>ppc64le</code>),
as well as 64-bit x86 architecture (<code>GOARCH=amd64</code>)
on all operating systems.
On 64-bit ARM and 64-bit PowerPC systems, benchmarking shows
performance improvements of 10% or more.
</p>
<p>
As <a href=go1.17#compiler>mentioned</a> in the Go 1.17 release notes,
this change does not affect the functionality of any safe Go code and
is designed to have no impact on most assembly code. See the
<a href=go1.17#compiler>Go 1.17 release notes</a> for more details.
</p>
<p><!-- CL 298611 -->
TODO: <a href="https://golang.org/cl/298611">https://golang.org/cl/298611</a>: cmd/compile: add -asan option
</p>