diff options
author | Keith Randall <khr@golang.org> | 2020-12-08 14:35:41 -0800 |
---|---|---|
committer | Keith Randall <khr@golang.org> | 2020-12-09 01:34:53 +0000 |
commit | ae9b442df2436b3d65ef765572681bf9aacdfbbb (patch) | |
tree | 0331f203fe73aa691cb1ea197ba52c19ac4fd56e /doc | |
parent | 31496cfde50a490639ce0723f75de0f16a8291dd (diff) | |
download | go-ae9b442df2436b3d65ef765572681bf9aacdfbbb.tar.gz go-ae9b442df2436b3d65ef765572681bf9aacdfbbb.zip |
doc: add description of new framepointer vet check
Update #43014
Change-Id: I5fbfaa16e6acb8859fd0b1188f532f5a225f6349
Reviewed-on: https://go-review.googlesource.com/c/go/+/276373
Trust: Keith Randall <khr@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/go1.16.html | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/doc/go1.16.html b/doc/go1.16.html index 012be1656f..504165f3ea 100644 --- a/doc/go1.16.html +++ b/doc/go1.16.html @@ -293,6 +293,18 @@ Do not send CLs removing the interior tags from such phrases. <!-- CL 235677: https://golang.org/cl/235677: cmd/vet: bring in pass to catch invalid uses of testing.T in goroutines --> </p> +<p><!-- CL 248686, CL 276372 --> + The vet tool now warns about amd64 assembly that clobbers the BP + register (the frame pointer) without saving and restoring it, + contrary to the calling convention. Code that doesn't preserve the + BP register must be modified to either not use BP at all or preserve + BP by saving and restoring it. An easy way to preserve BP is to set + the frame size to a nonzero value, which causes the generated + prologue and epilogue to preserve the BP register for you. + See <a href="https://golang.org/cl/248260">CL 248260</a> for example + fixes. +</p> + <h2 id="runtime">Runtime</h2> <p> |