I think they had to revert back to libc on macOS/iOS because those have syscall interfaces that truly are not stable (and golang found that out the hard way). I wonder if they had to do the same on BSDs because of syscall filtering.
Indeed, OpenBSD recently added hardening measures and started restricting the generic syscall interface to libc.
Indeed, OpenBSD recently added hardening measures and started restricting the generic syscall interface to libc.