diff options
Diffstat (limited to 'sysdeps/unix/sysv/linux/sparc/sparc32/clone.S')
-rw-r--r-- | sysdeps/unix/sysv/linux/sparc/sparc32/clone.S | 22 |
1 files changed, 4 insertions, 18 deletions
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S b/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S index 6f41f0f55a..49028d544a 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/clone.S @@ -1,4 +1,4 @@ -/* Copyright (C) 1996-2016 Free Software Foundation, Inc. +/* Copyright (C) 1996-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Richard Henderson (rth@tamu.edu). @@ -24,9 +24,6 @@ #include <tcb-offsets.h> #include <sysdep.h> -#define CLONE_VM 0x00000100 -#define CLONE_THREAD 0x00010000 - /* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg, pid_t *ptid, void *tls, pid_t *ctid); */ @@ -49,7 +46,6 @@ ENTRY (__clone) expects. */ sub %o1, 96, %o1 mov %i3, %g3 - mov %i2, %g4 /* ptid */ mov %i4,%o2 @@ -80,24 +76,14 @@ END(__clone) .type __thread_start,@function __thread_start: - sethi %hi(CLONE_THREAD), %l0 - andcc %g4, %l0, %g0 - bne 1f - andcc %g4, CLONE_VM, %g0 - bne,a 2f - mov -1,%o0 - set __NR_getpid,%g1 - ta 0x10 -2: - st %o0,[%g7 + PID] - st %o0,[%g7 + TID] -1: mov %g0, %fp /* terminate backtrace */ call %g2 mov %g3,%o0 - call HIDDEN_JUMPTARGET(_exit),0 + set __NR_exit, %g1 + ta 0x10 nop .size __thread_start, .-__thread_start +libc_hidden_def (__clone) weak_alias (__clone, clone) |