mirror of
https://github.com/golang/go
synced 2024-11-17 05:54:46 -07:00
runtime: use unsafe.Slice in getStackMap
It's not less code, but it is clearer code. Change-Id: I32239baf92487a56900a4edd8a2593014f37d093 Reviewed-on: https://go-review.googlesource.com/c/go/+/352953 Trust: Josh Bleecher Snyder <josharian@gmail.com> Trust: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
parent
b8990ec932
commit
a9d5ea650b
@ -1327,7 +1327,8 @@ func getStackMap(frame *stkframe, cache *pcvalueCache, debug bool) (locals, args
|
||||
if p != nil {
|
||||
n := *(*uintptr)(p)
|
||||
p = add(p, goarch.PtrSize)
|
||||
*(*slice)(unsafe.Pointer(&objs)) = slice{array: noescape(p), len: int(n), cap: int(n)}
|
||||
r0 := (*stackObjectRecord)(noescape(p))
|
||||
objs = unsafe.Slice(r0, int(n))
|
||||
// Note: the noescape above is needed to keep
|
||||
// getStackMap from "leaking param content:
|
||||
// frame". That leak propagates up to getgcmask, then
|
||||
|
Loading…
Reference in New Issue
Block a user