blob: aca8083aa4d4973243c38f6a60b43e3c2b74a3dd [file] [log] [blame]
#include <asm/asm.h>
#include <asm/regdef.h>
#include <asm/unistd.h>
#define CLONE_VM 0x00000100
#define CLONE_VFORK 0x00004000
#define SIGCHLD 18
LEAF(vfork)
li a0, CLONE_VFORK | CLONE_VM | SIGCHLD
li a1, 0
li v0, __NR_clone
syscall
bnez a3, 1f
b 2f
1: sw v0, errno
li v0, -1
2: jr ra
END(vfork)