resetLibcall = false // See comment in sys_darwin.go:libcCall
}
- c := &mp.libcall
- c.fn = uintptr(unsafe.Pointer(fn))
- c.n = 0
- c.args = uintptr(noescape(unsafe.Pointer(&fn))) // it's unused but must be non-nil, otherwise crashes
+ c := libcall{
+ fn: uintptr(unsafe.Pointer(fn)),
+ n: 0,
+ args: uintptr(unsafe.Pointer(&fn)), // it's unused but must be non-nil, otherwise crashes
+ }
- asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(c))
+ asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(&c))
if resetLibcall {
mp.libcallsp = 0
resetLibcall = false // See comment in sys_darwin.go:libcCall
}
- c := &gp.m.libcall
- c.fn = uintptr(unsafe.Pointer(fn))
- c.n = 1
- c.args = uintptr(noescape(unsafe.Pointer(&a0)))
+ c := libcall{
+ fn: uintptr(unsafe.Pointer(fn)),
+ n: 1,
+ args: uintptr(unsafe.Pointer(&a0)),
+ }
- asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(c))
+ asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(&c))
if resetLibcall {
mp.libcallsp = 0
resetLibcall = false // See comment in sys_darwin.go:libcCall
}
- c := &gp.m.libcall
- c.fn = uintptr(unsafe.Pointer(fn))
- c.n = 2
- c.args = uintptr(noescape(unsafe.Pointer(&a0)))
+ c := libcall{
+ fn: uintptr(unsafe.Pointer(fn)),
+ n: 2,
+ args: uintptr(unsafe.Pointer(&a0)),
+ }
- asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(c))
+ asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(&c))
if resetLibcall {
mp.libcallsp = 0
resetLibcall = false // See comment in sys_darwin.go:libcCall
}
- c := &gp.m.libcall
- c.fn = uintptr(unsafe.Pointer(fn))
- c.n = 3
- c.args = uintptr(noescape(unsafe.Pointer(&a0)))
+ c := libcall{
+ fn: uintptr(unsafe.Pointer(fn)),
+ n: 3,
+ args: uintptr(unsafe.Pointer(&a0)),
+ }
- asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(c))
+ asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(&c))
if resetLibcall {
mp.libcallsp = 0
resetLibcall = false // See comment in sys_darwin.go:libcCall
}
- c := &gp.m.libcall
- c.fn = uintptr(unsafe.Pointer(fn))
- c.n = 4
- c.args = uintptr(noescape(unsafe.Pointer(&a0)))
+ c := libcall{
+ fn: uintptr(unsafe.Pointer(fn)),
+ n: 4,
+ args: uintptr(unsafe.Pointer(&a0)),
+ }
- asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(c))
+ asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(&c))
if resetLibcall {
mp.libcallsp = 0
resetLibcall = false // See comment in sys_darwin.go:libcCall
}
- c := &gp.m.libcall
- c.fn = uintptr(unsafe.Pointer(fn))
- c.n = 5
- c.args = uintptr(noescape(unsafe.Pointer(&a0)))
+ c := libcall{
+ fn: uintptr(unsafe.Pointer(fn)),
+ n: 5,
+ args: uintptr(unsafe.Pointer(&a0)),
+ }
- asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(c))
+ asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(&c))
if resetLibcall {
mp.libcallsp = 0
resetLibcall = false // See comment in sys_darwin.go:libcCall
}
- c := &gp.m.libcall
- c.fn = uintptr(unsafe.Pointer(fn))
- c.n = 6
- c.args = uintptr(noescape(unsafe.Pointer(&a0)))
+ c := libcall{
+ fn: uintptr(unsafe.Pointer(fn)),
+ n: 6,
+ args: uintptr(unsafe.Pointer(&a0)),
+ }
- asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(c))
+ asmcgocall(unsafe.Pointer(&asmsyscall6), unsafe.Pointer(&c))
if resetLibcall {
mp.libcallsp = 0