1// Copyright 2018 The Go Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5// +build darwin,go1.12 6 7package unix 8 9import "unsafe" 10 11// Implemented in the runtime package (runtime/sys_darwin.go) 12func syscall_syscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) 13func syscall_syscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) 14func syscall_syscall6X(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) 15func syscall_syscall9(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err Errno) // 32-bit only 16func syscall_rawSyscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) 17func syscall_rawSyscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) 18 19//go:linkname syscall_syscall syscall.syscall 20//go:linkname syscall_syscall6 syscall.syscall6 21//go:linkname syscall_syscall6X syscall.syscall6X 22//go:linkname syscall_syscall9 syscall.syscall9 23//go:linkname syscall_rawSyscall syscall.rawSyscall 24//go:linkname syscall_rawSyscall6 syscall.rawSyscall6 25 26// Find the entry point for f. See comments in runtime/proc.go for the 27// function of the same name. 28//go:nosplit 29func funcPC(f func()) uintptr { 30 return **(**uintptr)(unsafe.Pointer(&f)) 31} 32