1/* $NetBSD: fork.S,v 1.4 2002/07/30 06:08:00 matt Exp $ */ 2 3/* 4 * pid = fork(); 5 * 6 * r4 == 0 in parent process, 1 in child process. 7 * r3 == pid of child in parent, pid of parent in child. 8 */ 9 10#include "SYS.h" 11 12#ifdef WEAK_ALIAS 13WEAK_ALIAS(fork, _fork) 14#endif 15 16_SYSCALL(_fork,fork) 17 addi %r4,%r4,-1 # from 1 to 0 in child, 0 to -1 in parent 18 and %r3,%r3,%r4 # return 0 in child, pid in parent 19 blr 20