mirror of https://github.com/golang/go.git
When register ABI is used, reflect.Value.Call prepares the call arguments in a memory representation of the argument registers. It has special handling to keep the pointers in arguments live. Currently, this handles pointer-typed arguments. But when an argument is an aggregate-type that contains pointers and passed in registers, it currently doesn't keep the pointers live. Do so in this CL. Fixes #49961 Change-Id: I9264a8767e2a2c48573f6047144759b845dcf480 Reviewed-on: https://go-review.googlesource.com/c/go/+/369098 Trust: Keith Randall <khr@golang.org> Run-TryBot: Keith Randall <khr@golang.org> Reviewed-by: Cherry Mui <cherryyz@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Michael Knyszek <mknyszek@google.com> |
||
|---|---|---|
| .. | ||
| internal | ||
| abi.go | ||
| abi_test.go | ||
| all_test.go | ||
| asm_386.s | ||
| asm_amd64.s | ||
| asm_arm.s | ||
| asm_arm64.s | ||
| asm_mips64x.s | ||
| asm_mipsx.s | ||
| asm_ppc64x.s | ||
| asm_riscv64.s | ||
| asm_s390x.s | ||
| asm_wasm.s | ||
| deepequal.go | ||
| example_test.go | ||
| export_test.go | ||
| makefunc.go | ||
| set_test.go | ||
| swapper.go | ||
| tostring_test.go | ||
| type.go | ||
| value.go | ||
| visiblefields.go | ||
| visiblefields_test.go | ||