Many C syscall functions take pointer arguments. The pointers
don't escape in the C functions. Mark the C functions noescape so
calling them doesn't need allocation.
Reviewed-on: https://go-review.googlesource.com/c/158158
From-SVN: r267989
-9a79c333e896ea49f6a708d459148074d29a2af6
+ee94431c133a90ca5c3c5ebbebcb019c60258dac
The first line of this file holds the git revision number of the last
merge done from the gofrontend repository.
func runtime_AfterForkInChild()
// Implemented in clone_linux.c
+//go:noescape
func rawClone(flags _C_ulong, child_stack *byte, ptid *Pid_t, ctid *Pid_t, regs unsafe.Pointer) _C_long
// Fork, dup fd onto 0..len(fd), and exec(argv0, argvv, envv) in child.
printf("// Automatically generated wrapper for %s/%s\n", gofnname, cfnname)
if (!(cfnname in cfns)) {
cfns[cfnname] = 1
+ printf("//go:noescape\n")
printf("//extern %s\n", cfnname)
printf("func c_%s(%s) %s\n", cfnname, cfnparams, cfnresult)
}