diff options
Diffstat (limited to 'sysdeps/unix/sysv/linux/sparc/sparc64/clone.S')
-rw-r--r-- | sysdeps/unix/sysv/linux/sparc/sparc64/clone.S | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S b/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S index cecffa7fb9..b0f62660a7 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/clone.S @@ -25,7 +25,6 @@ #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); */ @@ -77,15 +76,11 @@ END(__clone) .type __thread_start,@function __thread_start: - sethi %hi(CLONE_THREAD), %l0 - andcc %g4, %l0, %g0 + andcc %g4, CLONE_VM, %g0 bne,pt %icc, 1f - andcc %g4, CLONE_VM, %g0 - bne,a,pn %icc, 2f - mov -1,%o0 set __NR_getpid,%g1 ta 0x6d -2: st %o0,[%g7 + PID] + st %o0,[%g7 + PID] st %o0,[%g7 + TID] 1: mov %g0, %fp /* terminate backtrace */ |