runtime: rename cgocall_errno and asmcgocall_errno into cgocall and asmcgocall

Change-Id: I5917bea8bb35b0e725dcc56a68f3a70137cfc180
Reviewed-on: https://go-review.googlesource.com/9387
Reviewed-by: Ian Lance Taylor <iant@golang.org>
diff --git a/src/cmd/cgo/doc.go b/src/cmd/cgo/doc.go
index 6ac0381..6e6f3c7 100644
--- a/src/cmd/cgo/doc.go
+++ b/src/cmd/cgo/doc.go
@@ -432,7 +432,7 @@
 	var _cgo_be59f0f25121_Cfunc_puts = unsafe.Pointer(&__cgofn__cgo_be59f0f25121_Cfunc_puts)
 
 	func _Cfunc_puts(p0 *_Ctype_char) (r1 _Ctype_int) {
-		_cgo_runtime_cgocall_errno(_cgo_be59f0f25121_Cfunc_puts, uintptr(unsafe.Pointer(&p0)))
+		_cgo_runtime_cgocall(_cgo_be59f0f25121_Cfunc_puts, uintptr(unsafe.Pointer(&p0)))
 		return
 	}
 
@@ -682,7 +682,7 @@
 	var _cgo_gcc_Cfunc_sin = unsafe.Pointer(&__cgo_gcc_Cfunc_sin)
 
 	func _Cfunc_sin(p0 _Ctype_double) (r1 _Ctype_double) {
-		_cgo_runtime_cgocall_errno(_cgo_gcc_Cfunc_sin, uintptr(unsafe.Pointer(&p0)))
+		_cgo_runtime_cgocall(_cgo_gcc_Cfunc_sin, uintptr(unsafe.Pointer(&p0)))
 		return
 	}
 
diff --git a/src/cmd/cgo/out.go b/src/cmd/cgo/out.go
index d2a3624..f660442 100644
--- a/src/cmd/cgo/out.go
+++ b/src/cmd/cgo/out.go
@@ -466,7 +466,7 @@
 	if n.AddError {
 		prefix = "errno := "
 	}
-	fmt.Fprintf(fgo2, "\t%s_cgo_runtime_cgocall_errno(%s, %s)\n", prefix, cname, arg)
+	fmt.Fprintf(fgo2, "\t%s_cgo_runtime_cgocall(%s, %s)\n", prefix, cname, arg)
 	if n.AddError {
 		fmt.Fprintf(fgo2, "\tif errno != 0 { r2 = syscall.Errno(errno) }\n")
 	}
@@ -1232,8 +1232,8 @@
 `
 
 const goProlog = `
-//go:linkname _cgo_runtime_cgocall_errno runtime.cgocall_errno
-func _cgo_runtime_cgocall_errno(unsafe.Pointer, uintptr) int32
+//go:linkname _cgo_runtime_cgocall runtime.cgocall
+func _cgo_runtime_cgocall(unsafe.Pointer, uintptr) int32
 
 //go:linkname _cgo_runtime_cmalloc runtime.cmalloc
 func _cgo_runtime_cmalloc(uintptr) unsafe.Pointer
diff --git a/src/runtime/asm_386.s b/src/runtime/asm_386.s
index 49df285..b8a4054 100644
--- a/src/runtime/asm_386.s
+++ b/src/runtime/asm_386.s
@@ -661,19 +661,14 @@
 	POPL	AX
 	RET
 
-// asmcgocall(void(*fn)(void*), void *arg)
+// func asmcgocall(fn, arg unsafe.Pointer) int32
 // Call fn(arg) on the scheduler stack,
 // aligned appropriately for the gcc ABI.
-// See cgocall.c for more details.
-TEXT ·asmcgocall_errno(SB),NOSPLIT,$0-12
+// See cgocall.go for more details.
+TEXT ·asmcgocall(SB),NOSPLIT,$0-12
 	MOVL	fn+0(FP), AX
 	MOVL	arg+4(FP), BX
-	CALL	asmcgocall<>(SB)
-	MOVL	AX, ret+8(FP)
-	RET
 
-TEXT asmcgocall<>(SB),NOSPLIT,$0-0
-	// fn in AX, arg in BX
 	MOVL	SP, DX
 
 	// Figure out if we need to switch to m->g0 stack.
@@ -707,6 +702,8 @@
 	SUBL	4(SP), SI
 	MOVL	DI, g(CX)
 	MOVL	SI, SP
+
+	MOVL	AX, ret+8(FP)
 	RET
 
 // cgocallback(void (*fn)(void*), void *frame, uintptr framesize)
@@ -724,7 +721,7 @@
 	RET
 
 // cgocallback_gofunc(FuncVal*, void *frame, uintptr framesize)
-// See cgocall.c for more details.
+// See cgocall.go for more details.
 TEXT ·cgocallback_gofunc(SB),NOSPLIT,$12-12
 	NO_LOCAL_POINTERS
 
diff --git a/src/runtime/asm_amd64.s b/src/runtime/asm_amd64.s
index 639ab34..13cca8e 100644
--- a/src/runtime/asm_amd64.s
+++ b/src/runtime/asm_amd64.s
@@ -641,19 +641,14 @@
 	MOVQ	BP, (g_sched+gobuf_bp)(R8)
 	RET
 
-// asmcgocall(void(*fn)(void*), void *arg)
+// func asmcgocall(fn, arg unsafe.Pointer) int32
 // Call fn(arg) on the scheduler stack,
 // aligned appropriately for the gcc ABI.
-// See cgocall.c for more details.
-TEXT ·asmcgocall_errno(SB),NOSPLIT,$0-20
+// See cgocall.go for more details.
+TEXT ·asmcgocall(SB),NOSPLIT,$0-20
 	MOVQ	fn+0(FP), AX
 	MOVQ	arg+8(FP), BX
-	CALL	asmcgocall<>(SB)
-	MOVL	AX, ret+16(FP)
-	RET
 
-// asmcgocall common code. fn in AX, arg in BX. returns errno in AX.
-TEXT asmcgocall<>(SB),NOSPLIT,$0-0
 	MOVQ	SP, DX
 
 	// Figure out if we need to switch to m->g0 stack.
@@ -696,6 +691,8 @@
 	SUBQ	40(SP), SI
 	MOVQ	DI, g(CX)
 	MOVQ	SI, SP
+
+	MOVL	AX, ret+16(FP)
 	RET
 
 // cgocallback(void (*fn)(void*), void *frame, uintptr framesize)
@@ -713,7 +710,7 @@
 	RET
 
 // cgocallback_gofunc(FuncVal*, void *frame, uintptr framesize)
-// See cgocall.c for more details.
+// See cgocall.go for more details.
 TEXT ·cgocallback_gofunc(SB),NOSPLIT,$8-24
 	NO_LOCAL_POINTERS
 
diff --git a/src/runtime/asm_amd64p32.s b/src/runtime/asm_amd64p32.s
index fd640ab..c058bde 100644
--- a/src/runtime/asm_amd64p32.s
+++ b/src/runtime/asm_amd64p32.s
@@ -582,9 +582,9 @@
 	MOVL	0(DX), BX
 	JMP	BX	// but first run the deferred function
 
-// asmcgocall(void(*fn)(void*), void *arg)
+// func asmcgocall(fn, arg unsafe.Pointer) int32
 // Not implemented.
-TEXT runtime·asmcgocall_errno(SB),NOSPLIT,$0-12
+TEXT runtime·asmcgocall(SB),NOSPLIT,$0-12
 	MOVL	0, AX
 	RET
 
diff --git a/src/runtime/asm_arm.s b/src/runtime/asm_arm.s
index 1797fea..874dc4f 100644
--- a/src/runtime/asm_arm.s
+++ b/src/runtime/asm_arm.s
@@ -474,19 +474,14 @@
 	MOVW	R11, (g_sched+gobuf_ctxt)(g)
 	RET
 
-// asmcgocall(void(*fn)(void*), void *arg)
+// func asmcgocall(fn, arg unsafe.Pointer) int32
 // Call fn(arg) on the scheduler stack,
 // aligned appropriately for the gcc ABI.
-// See cgocall.c for more details.
-TEXT ·asmcgocall_errno(SB),NOSPLIT,$0-12
+// See cgocall.go for more details.
+TEXT ·asmcgocall(SB),NOSPLIT,$0-12
 	MOVW	fn+0(FP), R1
 	MOVW	arg+4(FP), R0
-	BL	asmcgocall<>(SB)
-	MOVW	R0, ret+8(FP)
-	RET
 
-TEXT asmcgocall<>(SB),NOSPLIT,$0-0
-	// fn in R1, arg in R0.
 	MOVW	R13, R2
 	MOVW	g, R4
 
@@ -523,6 +518,8 @@
 	SUB	R2, R1
 	MOVW	R5, R0
 	MOVW	R1, R13
+
+	MOVW	R0, ret+8(FP)
 	RET
 
 // cgocallback(void (*fn)(void*), void *frame, uintptr framesize)
@@ -540,7 +537,7 @@
 	RET
 
 // cgocallback_gofunc(void (*fn)(void*), void *frame, uintptr framesize)
-// See cgocall.c for more details.
+// See cgocall.go for more details.
 TEXT	·cgocallback_gofunc(SB),NOSPLIT,$8-12
 	NO_LOCAL_POINTERS
 	
diff --git a/src/runtime/asm_arm64.s b/src/runtime/asm_arm64.s
index ed70eca..50094db 100644
--- a/src/runtime/asm_arm64.s
+++ b/src/runtime/asm_arm64.s
@@ -545,19 +545,14 @@
 	MOVD	$0, (g_sched+gobuf_ctxt)(g)
 	RET
 
-// asmcgocall(void(*fn)(void*), void *arg)
+// func asmcgocall(fn, arg unsafe.Pointer) int32
 // Call fn(arg) on the scheduler stack,
 // aligned appropriately for the gcc ABI.
 // See cgocall.go for more details.
-TEXT ·asmcgocall_errno(SB),NOSPLIT,$0-20
+TEXT ·asmcgocall(SB),NOSPLIT,$0-20
 	MOVD	fn+0(FP), R1
 	MOVD	arg+8(FP), R0
-	BL	asmcgocall<>(SB)
-	MOVW	R0, ret+16(FP)
-	RET
 
-// asmcgocall common code. fn in R1, arg in R0. returns errno in R0.
-TEXT asmcgocall<>(SB),NOSPLIT,$0-0
 	MOVD	RSP, R2		// save original stack pointer
 	MOVD	g, R4
 
@@ -598,6 +593,8 @@
 	SUB	R6, R5
 	MOVD	R9, R0
 	MOVD	R5, RSP
+
+	MOVW	R0, ret+16(FP)
 	RET
 
 // cgocallback(void (*fn)(void*), void *frame, uintptr framesize)
diff --git a/src/runtime/asm_ppc64x.s b/src/runtime/asm_ppc64x.s
index f90016c..0404124 100644
--- a/src/runtime/asm_ppc64x.s
+++ b/src/runtime/asm_ppc64x.s
@@ -694,19 +694,14 @@
 	MOVD	R0, (g_sched+gobuf_ctxt)(g)
 	RET
 
-// asmcgocall(void(*fn)(void*), void *arg)
+// func asmcgocall(fn, arg unsafe.Pointer) int32
 // Call fn(arg) on the scheduler stack,
 // aligned appropriately for the gcc ABI.
-// See cgocall.c for more details.
-TEXT ·asmcgocall_errno(SB),NOSPLIT,$0-20
+// See cgocall.go for more details.
+TEXT ·asmcgocall(SB),NOSPLIT,$0-20
 	MOVD	fn+0(FP), R3
 	MOVD	arg+8(FP), R4
-	BL	asmcgocall<>(SB)
-	MOVW	R3, ret+16(FP)
-	RET
 
-// asmcgocall common code. fn in R3, arg in R4. returns errno in R3.
-TEXT asmcgocall<>(SB),NOSPLIT,$0-0
 	MOVD	R1, R2		// save original stack pointer
 	MOVD	g, R5
 
@@ -749,6 +744,8 @@
 	MOVD	32(R1), R6
 	SUB	R6, R5
 	MOVD	R5, R1
+
+	MOVW	R3, ret+16(FP)
 	RET
 
 // cgocallback(void (*fn)(void*), void *frame, uintptr framesize)
@@ -767,7 +764,7 @@
 	RET
 
 // cgocallback_gofunc(FuncVal*, void *frame, uintptr framesize)
-// See cgocall.c for more details.
+// See cgocall.go for more details.
 TEXT ·cgocallback_gofunc(SB),NOSPLIT,$16-24
 	NO_LOCAL_POINTERS
 
diff --git a/src/runtime/cgocall.go b/src/runtime/cgocall.go
index 8f0b83c..17e0125 100644
--- a/src/runtime/cgocall.go
+++ b/src/runtime/cgocall.go
@@ -83,7 +83,7 @@
 
 // Call from Go to C.
 //go:nosplit
-func cgocall_errno(fn, arg unsafe.Pointer) int32 {
+func cgocall(fn, arg unsafe.Pointer) int32 {
 	if !iscgo && GOOS != "solaris" && GOOS != "windows" {
 		throw("cgocall unavailable")
 	}
@@ -118,7 +118,7 @@
 	 * the $GOMAXPROCS accounting.
 	 */
 	entersyscall(0)
-	errno := asmcgocall_errno(fn, arg)
+	errno := asmcgocall(fn, arg)
 	exitsyscall(0)
 
 	return errno
@@ -143,7 +143,7 @@
 		ret unsafe.Pointer
 	}
 	args.n = uint64(n)
-	cgocall_errno(_cgo_malloc, unsafe.Pointer(&args))
+	cgocall(_cgo_malloc, unsafe.Pointer(&args))
 	if args.ret == nil {
 		throw("C malloc failed")
 	}
@@ -151,7 +151,7 @@
 }
 
 func cfree(p unsafe.Pointer) {
-	cgocall_errno(_cgo_free, p)
+	cgocall(_cgo_free, p)
 }
 
 // Call from C back to Go.
diff --git a/src/runtime/env_posix.go b/src/runtime/env_posix.go
index e648442..5e49287 100644
--- a/src/runtime/env_posix.go
+++ b/src/runtime/env_posix.go
@@ -32,7 +32,7 @@
 		return
 	}
 	arg := [2]unsafe.Pointer{cstring(k), cstring(v)}
-	asmcgocall_errno(unsafe.Pointer(_cgo_setenv), unsafe.Pointer(&arg))
+	asmcgocall(unsafe.Pointer(_cgo_setenv), unsafe.Pointer(&arg))
 }
 
 // Update the C environment if cgo is loaded.
@@ -43,7 +43,7 @@
 		return
 	}
 	arg := [1]unsafe.Pointer{cstring(k)}
-	asmcgocall_errno(unsafe.Pointer(_cgo_unsetenv), unsafe.Pointer(&arg))
+	asmcgocall(unsafe.Pointer(_cgo_unsetenv), unsafe.Pointer(&arg))
 }
 
 func cstring(s string) unsafe.Pointer {
diff --git a/src/runtime/os1_windows.go b/src/runtime/os1_windows.go
index 9565366..bc472d0 100644
--- a/src/runtime/os1_windows.go
+++ b/src/runtime/os1_windows.go
@@ -372,7 +372,7 @@
 		// all three values to be non-zero, it will use them
 		mp.libcallsp = getcallersp(unsafe.Pointer(&fn))
 	}
-	asmcgocall_errno(asmstdcallAddr, unsafe.Pointer(&mp.libcall))
+	asmcgocall(asmstdcallAddr, unsafe.Pointer(&mp.libcall))
 	mp.libcallsp = 0
 	return mp.libcall.r1
 }
diff --git a/src/runtime/os3_solaris.go b/src/runtime/os3_solaris.go
index cf576da..53d7b96 100644
--- a/src/runtime/os3_solaris.go
+++ b/src/runtime/os3_solaris.go
@@ -201,7 +201,7 @@
 // Called on the new thread, can not allocate memory.
 func minit() {
 	_g_ := getg()
-	asmcgocall_errno(unsafe.Pointer(funcPC(miniterrno)), unsafe.Pointer(&libc____errno))
+	asmcgocall(unsafe.Pointer(funcPC(miniterrno)), unsafe.Pointer(&libc____errno))
 	// Initialize signal handling
 	signalstack(&_g_.m.gsignal.stack)
 
@@ -317,7 +317,7 @@
 	memclr(unsafe.Pointer(&_g_.m.scratch), uintptr(len(_g_.m.scratch.v)))
 	_g_.m.scratch.v[0] = unsafe.Sizeof(*sem)
 	_g_.m.libcall.args = uintptr(unsafe.Pointer(&_g_.m.scratch))
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&_g_.m.libcall))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&_g_.m.libcall))
 	sem = (*semt)(unsafe.Pointer(_g_.m.libcall.r1))
 	if sem_init(sem, 0, 0) != 0 {
 		throw("sem_init")
@@ -338,7 +338,7 @@
 		_m_.scratch.v[0] = _m_.waitsema
 		_m_.scratch.v[1] = uintptr(unsafe.Pointer(&_m_.ts))
 		_m_.libcall.args = uintptr(unsafe.Pointer(&_m_.scratch))
-		asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&_m_.libcall))
+		asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&_m_.libcall))
 		if *_m_.perrno != 0 {
 			if *_m_.perrno == _ETIMEDOUT || *_m_.perrno == _EAGAIN || *_m_.perrno == _EINTR {
 				return -1
@@ -353,7 +353,7 @@
 		memclr(unsafe.Pointer(&_m_.scratch), uintptr(len(_m_.scratch.v)))
 		_m_.scratch.v[0] = _m_.waitsema
 		_m_.libcall.args = uintptr(unsafe.Pointer(&_m_.scratch))
-		asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&_m_.libcall))
+		asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&_m_.libcall))
 		if _m_.libcall.r1 == 0 {
 			break
 		}
diff --git a/src/runtime/os_solaris.go b/src/runtime/os_solaris.go
index c6c02ff..fd20a5c 100644
--- a/src/runtime/os_solaris.go
+++ b/src/runtime/os_solaris.go
@@ -19,7 +19,7 @@
 	libcall.fn = uintptr(unsafe.Pointer(fn))
 	libcall.n = 0
 	libcall.args = uintptr(unsafe.Pointer(fn)) // it's unused but must be non-nil, otherwise crashes
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
 	return libcall.r1
 }
 
@@ -30,7 +30,7 @@
 	libcall.n = 1
 	// TODO(rsc): Why is noescape necessary here and below?
 	libcall.args = uintptr(noescape(unsafe.Pointer(&a1)))
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
 	return libcall.r1
 }
 
@@ -40,7 +40,7 @@
 	libcall.fn = uintptr(unsafe.Pointer(fn))
 	libcall.n = 2
 	libcall.args = uintptr(noescape(unsafe.Pointer(&a1)))
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
 	return libcall.r1
 }
 
@@ -50,7 +50,7 @@
 	libcall.fn = uintptr(unsafe.Pointer(fn))
 	libcall.n = 3
 	libcall.args = uintptr(noescape(unsafe.Pointer(&a1)))
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
 	return libcall.r1
 }
 
@@ -60,7 +60,7 @@
 	libcall.fn = uintptr(unsafe.Pointer(fn))
 	libcall.n = 4
 	libcall.args = uintptr(noescape(unsafe.Pointer(&a1)))
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
 	return libcall.r1
 }
 
@@ -70,7 +70,7 @@
 	libcall.fn = uintptr(unsafe.Pointer(fn))
 	libcall.n = 5
 	libcall.args = uintptr(noescape(unsafe.Pointer(&a1)))
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
 	return libcall.r1
 }
 
@@ -80,6 +80,6 @@
 	libcall.fn = uintptr(unsafe.Pointer(fn))
 	libcall.n = 6
 	libcall.args = uintptr(noescape(unsafe.Pointer(&a1)))
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(libcall))
 	return libcall.r1
 }
diff --git a/src/runtime/proc.go b/src/runtime/proc.go
index 06f301f..805b96e 100644
--- a/src/runtime/proc.go
+++ b/src/runtime/proc.go
@@ -94,7 +94,7 @@
 		if _cgo_notify_runtime_init_done == nil {
 			throw("_cgo_notify_runtime_init_done missing")
 		}
-		cgocall_errno(_cgo_notify_runtime_init_done, nil)
+		cgocall(_cgo_notify_runtime_init_done, nil)
 	}
 
 	main_init()
diff --git a/src/runtime/proc1.go b/src/runtime/proc1.go
index bce0356..055f100 100644
--- a/src/runtime/proc1.go
+++ b/src/runtime/proc1.go
@@ -1093,7 +1093,7 @@
 		ts.g.set(mp.g0)
 		ts.tls = (*uint64)(unsafe.Pointer(&mp.tls[0]))
 		ts.fn = unsafe.Pointer(funcPC(mstart))
-		asmcgocall_errno(_cgo_thread_start, unsafe.Pointer(&ts))
+		asmcgocall(_cgo_thread_start, unsafe.Pointer(&ts))
 		return
 	}
 	newosproc(mp, unsafe.Pointer(mp.g0.stack.hi))
diff --git a/src/runtime/stubs.go b/src/runtime/stubs.go
index b167f16..f116dc3 100644
--- a/src/runtime/stubs.go
+++ b/src/runtime/stubs.go
@@ -205,7 +205,7 @@
 func getcallersp(argp unsafe.Pointer) uintptr
 
 //go:noescape
-func asmcgocall_errno(fn, arg unsafe.Pointer) int32
+func asmcgocall(fn, arg unsafe.Pointer) int32
 
 // argp used in Defer structs when there is no argp.
 const _NoArgs = ^uintptr(0)
diff --git a/src/runtime/syscall_solaris.go b/src/runtime/syscall_solaris.go
index e69745c..ae1f334 100644
--- a/src/runtime/syscall_solaris.go
+++ b/src/runtime/syscall_solaris.go
@@ -34,7 +34,7 @@
 		args: uintptr(unsafe.Pointer(&a1)),
 	}
 	entersyscallblock(0)
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	exitsyscall(0)
 	return call.r1, call.r2, call.err
 }
@@ -46,7 +46,7 @@
 		n:    nargs,
 		args: uintptr(unsafe.Pointer(&a1)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.r1, call.r2, call.err
 }
 
@@ -61,7 +61,7 @@
 		n:    1,
 		args: uintptr(unsafe.Pointer(&path)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.err
 }
 
@@ -72,7 +72,7 @@
 		n:    1,
 		args: uintptr(unsafe.Pointer(&path)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.err
 }
 
@@ -89,7 +89,7 @@
 		n:    3,
 		args: uintptr(unsafe.Pointer(&path)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.err
 }
 
@@ -106,7 +106,7 @@
 		n:    3,
 		args: uintptr(unsafe.Pointer(&fd)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.r1, call.err
 }
 
@@ -117,7 +117,7 @@
 		n:    1,
 		args: uintptr(unsafe.Pointer(&flags)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.r1, call.err
 }
 
@@ -130,7 +130,7 @@
 		args: uintptr(unsafe.Pointer(&args[0])),
 	}
 	entersyscallblock(0)
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	exitsyscall(0)
 	if call.r1 != 0 {
 		return "", call.err
@@ -146,7 +146,7 @@
 		n:    0,
 		args: uintptr(unsafe.Pointer(&libc_getpid)), // it's unused but must be non-nil, otherwise crashes
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.r1, call.err
 }
 
@@ -157,7 +157,7 @@
 		n:    3,
 		args: uintptr(unsafe.Pointer(&fd)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.err
 }
 
@@ -168,7 +168,7 @@
 		args: uintptr(unsafe.Pointer(&pipe1)), // it's unused but must be non-nil, otherwise crashes
 	}
 	entersyscallblock(0)
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	exitsyscall(0)
 	return call.r1, call.r2, call.err
 }
@@ -185,7 +185,7 @@
 		n:    4,
 		args: uintptr(unsafe.Pointer(&trap)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.r1, call.r2, call.err
 }
 
@@ -196,7 +196,7 @@
 		n:    1,
 		args: uintptr(unsafe.Pointer(&gid)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.err
 }
 
@@ -207,7 +207,7 @@
 		n:    2,
 		args: uintptr(unsafe.Pointer(&ngid)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.err
 }
 
@@ -218,7 +218,7 @@
 		n:    0,
 		args: uintptr(unsafe.Pointer(&libc_setsid)), // it's unused but must be non-nil, otherwise crashes
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.r1, call.err
 }
 
@@ -229,7 +229,7 @@
 		n:    1,
 		args: uintptr(unsafe.Pointer(&uid)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.err
 }
 
@@ -240,7 +240,7 @@
 		n:    2,
 		args: uintptr(unsafe.Pointer(&pid)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.err
 }
 
@@ -257,7 +257,7 @@
 		args: uintptr(unsafe.Pointer(&trap)),
 	}
 	entersyscallblock(0)
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	exitsyscall(0)
 	return call.r1, call.r2, call.err
 }
@@ -269,7 +269,7 @@
 		args: uintptr(unsafe.Pointer(&pid)),
 	}
 	entersyscallblock(0)
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	exitsyscall(0)
 	return int(call.r1), call.err
 }
@@ -281,6 +281,6 @@
 		n:    3,
 		args: uintptr(unsafe.Pointer(&fd)),
 	}
-	asmcgocall_errno(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
+	asmcgocall(unsafe.Pointer(&asmsysvicall6), unsafe.Pointer(&call))
 	return call.r1, call.err
 }
diff --git a/src/runtime/syscall_windows.go b/src/runtime/syscall_windows.go
index 370b172..d2e44d7 100644
--- a/src/runtime/syscall_windows.go
+++ b/src/runtime/syscall_windows.go
@@ -95,7 +95,7 @@
 	c.fn = getLoadLibrary()
 	c.n = 1
 	c.args = uintptr(unsafe.Pointer(&filename))
-	cgocall_errno(asmstdcallAddr, unsafe.Pointer(&c))
+	cgocall(asmstdcallAddr, unsafe.Pointer(&c))
 	handle = c.r1
 	if handle == 0 {
 		err = c.err
@@ -110,7 +110,7 @@
 	c.fn = getGetProcAddress()
 	c.n = 2
 	c.args = uintptr(unsafe.Pointer(&handle))
-	cgocall_errno(asmstdcallAddr, unsafe.Pointer(&c))
+	cgocall(asmstdcallAddr, unsafe.Pointer(&c))
 	outhandle = c.r1
 	if outhandle == 0 {
 		err = c.err
@@ -125,7 +125,7 @@
 	c.fn = fn
 	c.n = nargs
 	c.args = uintptr(unsafe.Pointer(&a1))
-	cgocall_errno(asmstdcallAddr, unsafe.Pointer(&c))
+	cgocall(asmstdcallAddr, unsafe.Pointer(&c))
 	return c.r1, c.r2, c.err
 }
 
@@ -136,7 +136,7 @@
 	c.fn = fn
 	c.n = nargs
 	c.args = uintptr(unsafe.Pointer(&a1))
-	cgocall_errno(asmstdcallAddr, unsafe.Pointer(&c))
+	cgocall(asmstdcallAddr, unsafe.Pointer(&c))
 	return c.r1, c.r2, c.err
 }
 
@@ -147,7 +147,7 @@
 	c.fn = fn
 	c.n = nargs
 	c.args = uintptr(unsafe.Pointer(&a1))
-	cgocall_errno(asmstdcallAddr, unsafe.Pointer(&c))
+	cgocall(asmstdcallAddr, unsafe.Pointer(&c))
 	return c.r1, c.r2, c.err
 }
 
@@ -158,7 +158,7 @@
 	c.fn = fn
 	c.n = nargs
 	c.args = uintptr(unsafe.Pointer(&a1))
-	cgocall_errno(asmstdcallAddr, unsafe.Pointer(&c))
+	cgocall(asmstdcallAddr, unsafe.Pointer(&c))
 	return c.r1, c.r2, c.err
 }
 
@@ -169,6 +169,6 @@
 	c.fn = fn
 	c.n = nargs
 	c.args = uintptr(unsafe.Pointer(&a1))
-	cgocall_errno(asmstdcallAddr, unsafe.Pointer(&c))
+	cgocall(asmstdcallAddr, unsafe.Pointer(&c))
 	return c.r1, c.r2, c.err
 }