1
0
mirror of https://github.com/golang/go synced 2024-11-14 07:00:21 -07:00

internal/syscall/unix: use internal/abi.FuncPC for syscall wrapper

Following CL 313230, this is for internal/syscall/unix package.

Updates #45702.

Change-Id: Ie6d8c1923dfeae56896212393c5c2a6e257648d2
Reviewed-on: https://go-review.googlesource.com/c/go/+/316649
Trust: Cherry Zhang <cherryyz@google.com>
Run-TryBot: Cherry Zhang <cherryyz@google.com>
Reviewed-by: Than McIntosh <thanm@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
This commit is contained in:
Cherry Zhang 2021-05-03 18:17:38 -04:00
parent e8eb1d8269
commit 731a015ab8

View File

@ -5,6 +5,7 @@
package unix package unix
import ( import (
"internal/abi"
"syscall" "syscall"
"unsafe" "unsafe"
) )
@ -15,7 +16,7 @@ func libc_getentropy_trampoline()
// GetEntropy calls the macOS getentropy system call. // GetEntropy calls the macOS getentropy system call.
func GetEntropy(p []byte) error { func GetEntropy(p []byte) error {
_, _, errno := syscall_syscall(funcPC(libc_getentropy_trampoline), _, _, errno := syscall_syscall(abi.FuncPCABI0(libc_getentropy_trampoline),
uintptr(unsafe.Pointer(&p[0])), uintptr(unsafe.Pointer(&p[0])),
uintptr(len(p)), uintptr(len(p)),
0) 0)
@ -27,6 +28,3 @@ func GetEntropy(p []byte) error {
//go:linkname syscall_syscall syscall.syscall //go:linkname syscall_syscall syscall.syscall
func syscall_syscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) func syscall_syscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno)
//go:linkname funcPC runtime.funcPC
func funcPC(f interface{}) uintptr