summaryrefslogtreecommitdiffstats
path: root/lib/libc/arch/sparc/sys/fork.S
diff options
context:
space:
mode:
authorguenther <guenther@openbsd.org>2015-03-31 04:32:01 +0000
committerguenther <guenther@openbsd.org>2015-03-31 04:32:01 +0000
commit26e1ecc85e4cb7150f8657b3dfe28eaf6e48ff59 (patch)
treefdbd436f0044f6903de7a2fae2a0391c5e2359ce /lib/libc/arch/sparc/sys/fork.S
parentUpon finding an AUX slot that has no driver for it (such as the (diff)
downloadwireguard-openbsd-26e1ecc85e4cb7150f8657b3dfe28eaf6e48ff59.tar.xz
wireguard-openbsd-26e1ecc85e4cb7150f8657b3dfe28eaf6e48ff59.zip
Simplify fork/vfork logic: the kernel has handled returning zero in the child
for a long time, so there's no need to test the second return register here in the asm stub. ok and testing of many archs by krw@ miod@
Diffstat (limited to 'lib/libc/arch/sparc/sys/fork.S')
-rw-r--r--lib/libc/arch/sparc/sys/fork.S7
1 files changed, 2 insertions, 5 deletions
diff --git a/lib/libc/arch/sparc/sys/fork.S b/lib/libc/arch/sparc/sys/fork.S
index 7e31698afde..83916669e78 100644
--- a/lib/libc/arch/sparc/sys/fork.S
+++ b/lib/libc/arch/sparc/sys/fork.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: fork.S,v 1.4 2005/08/07 16:40:15 espie Exp $ */
+/* $OpenBSD: fork.S,v 1.5 2015/03/31 04:32:02 guenther Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
@@ -34,7 +34,4 @@
#include "SYS.h"
-SYSCALL(fork)
- dec %o1 ! from 1 to 0 in child, 0 to -1 in parent
- retl
- and %o0, %o1, %o0 ! return 0 in child, pid in parent
+RSYSCALL(fork)