summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/sparc
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux/sparc')
-rw-r--r--libc/sysdeps/linux/sparc/fork.S10
-rw-r--r--libc/sysdeps/linux/sparc/vfork.S14
2 files changed, 13 insertions, 11 deletions
diff --git a/libc/sysdeps/linux/sparc/fork.S b/libc/sysdeps/linux/sparc/fork.S
index f726e5aef..cb863f654 100644
--- a/libc/sysdeps/linux/sparc/fork.S
+++ b/libc/sysdeps/linux/sparc/fork.S
@@ -23,11 +23,11 @@
#include <sys/syscall.h>
.text
-.global fork
-.type fork,%function
+.global __libc_fork
+.type __libc_fork,%function
.align 4
-fork:
+__libc_fork:
mov __NR_fork, %g1
ta 0x10
bcc,a 9000f
@@ -44,6 +44,6 @@ fork:
retl
and %o0, %o1, %o0
-.size fork,.-fork
+.size __libc_fork,.-__libc_fork
+weak_alias(__libc_fork,fork)
libc_hidden_def(fork)
-strong_alias(fork,__libc_fork)
diff --git a/libc/sysdeps/linux/sparc/vfork.S b/libc/sysdeps/linux/sparc/vfork.S
index b509f65a4..663243d58 100644
--- a/libc/sysdeps/linux/sparc/vfork.S
+++ b/libc/sysdeps/linux/sparc/vfork.S
@@ -25,17 +25,18 @@
#ifndef __NR_vfork
/* No vfork so use fork instead */
-strong_alias(fork,vfork)
-strong_alias(vfork,__libc_fork)
+strong_alias(fork,__libc_fork)
+hidden_strong_alias(__libc_fork,__vfork)
#else
.text
-.global vfork
-.type vfork,%function
+.global __vfork
+.hidden __vfork
+.type __vfork,%function
.align 4
-vfork:
+__vfork:
mov __NR_vfork, %g1
ta 0x10
bcc,a 9000f
@@ -52,6 +53,7 @@ vfork:
retl
and %o0, %o1, %o0
-.size vfork,.-vfork
+.size __vfork,.-__vfork
#endif /* __NR_vfork */
+weak_alias(__vfork,vfork)
libc_hidden_def(vfork)