1 1.2 matt /* $NetBSD: __vfork14.S,v 1.2 2014/08/23 02:24:22 matt Exp $ */ 2 1.1 ross 3 1.1 ross /* 4 1.1 ross * pid = vfork(); 5 1.1 ross * 6 1.1 ross * r4 == 0 in parent process, 1 in child process. 7 1.1 ross * r3 == pid of child in parent, pid of parent in child. 8 1.1 ross */ 9 1.1 ross 10 1.1 ross #include "SYS.h" 11 1.1 ross 12 1.1 ross SYSCALL(__vfork14) 13 1.1 ross addi %r4,%r4,-1 # from 1 to 0 in child, 0 to -1 in parent 14 1.1 ross and %r3,%r3,%r4 # return 0 in child, pid in parent 15 1.1 ross blr 16 1.2 matt END(__vfork14) 17