diff options
| author | Russ Cox <rsc@golang.org> | 2014-09-08 17:37:49 -0400 |
|---|---|---|
| committer | Russ Cox <rsc@golang.org> | 2014-09-08 17:37:49 -0400 |
| commit | 857d55a3f9cfc8ccc8aef24571417ae4ecabbcc9 (patch) | |
| tree | aff451b5826302a4b7fae4708df65d8c4f8161ac /src | |
| parent | dc089574c49f3e426da4387a9448ca1a631c0b42 (diff) | |
| download | go-857d55a3f9cfc8ccc8aef24571417ae4ecabbcc9.tar.xz | |
runtime: mark freedefer and deferclass go:nosplit
This should make deferreturn nosplit all the way down,
which should fix the current windows/amd64 failure.
If not, I will change StackCopyAlways back to 0.
TBR=khr
CC=golang-codereviews
https://golang.org/cl/135600043
Diffstat (limited to 'src')
| -rw-r--r-- | src/runtime/panic.go | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/runtime/panic.go b/src/runtime/panic.go index 740fa026e2..a5a8fbd6dd 100644 --- a/src/runtime/panic.go +++ b/src/runtime/panic.go @@ -95,6 +95,7 @@ func deferproc(siz int32, fn *funcval) { // arguments of fn follow fn // This maps exactly to malloc size classes. // defer size class for arg size sz +//go:nosplit func deferclass(siz uintptr) uintptr { return (siz + 7) >> 4 } @@ -159,6 +160,7 @@ func newdefer(siz int32) *_defer { // Free the given defer. // The defer cannot be used after this call. +//go:nosplit func freedefer(d *_defer) { if d.special { return |
