summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/powerpc/vfork.S
blob: 7cf5eaa16063c3103289791238347cedc263f7b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <features.h>
#include <sys/syscall.h>

#ifndef __NR_vfork

/* No vfork so use fork instead */
hidden_strong_alias(__fork,__vfork)
weak_alias(vfork,__libc_fork)

#else

.text
.global __vfork
.hidden	__vfork
.type   __vfork,@function
.type   __syscall_error,@function

__vfork:
	li	0, __NR_vfork
	sc
	bnslr+
	b	__syscall_error

.size __vfork,.-__vfork
#endif
strong_alias(__vfork,vfork)