aboutsummaryrefslogtreecommitdiff
path: root/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S
diff options
context:
space:
mode:
Diffstat (limited to 'linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S')
-rw-r--r--linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S4
1 files changed, 3 insertions, 1 deletions
diff --git a/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S b/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S
index e7507245e7..9002a3b36b 100644
--- a/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S
+++ b/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S
@@ -27,10 +27,12 @@ __LABEL(__vfork)
.prologue 1
PSEUDO_PROF
- SINGLE_THREAD_P(t0)
#ifdef SHARED
+ ldq t0, __libc_pthread_functions(gp) !gprel
bne t0, HIDDEN_JUMPTARGET (__fork) !samegp
#else
+ .weak __pthread_fork
+ ldq t0, __pthread_fork(gp) !literal
bne t0, $do_fork
#endif