diff options
author | Roland McGrath <roland@hack.frob.com> | 2014-05-14 10:16:27 -0700 |
---|---|---|
committer | Roland McGrath <roland@hack.frob.com> | 2014-05-14 10:16:27 -0700 |
commit | 941d7dfd247bc116b89ec97d530d618b5862a80f (patch) | |
tree | 152cede4caef7c9759b8c468900778494e483f23 | |
parent | 1b731c35e6ed316076d9a61d3e8d683cb9255523 (diff) | |
download | glibc-941d7dfd247bc116b89ec97d530d618b5862a80f.tar glibc-941d7dfd247bc116b89ec97d530d618b5862a80f.tar.gz glibc-941d7dfd247bc116b89ec97d530d618b5862a80f.tar.bz2 glibc-941d7dfd247bc116b89ec97d530d618b5862a80f.zip |
x86: Consolidate NPTL/non versions of clone
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/clone.S | 9 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/x86_64/clone.S | 9 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/i386/clone.S | 9 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/x86_64/clone.S | 2 |
5 files changed, 6 insertions, 29 deletions
@@ -1,5 +1,11 @@ 2014-05-14 Roland McGrath <roland@hack.frob.com> + * sysdeps/unix/sysv/linux/x86_64/clone.S: Deconditionalize the code + that was previously under [RESET_PID]. + * sysdeps/unix/sysv/linux/i386/clone.S: Likewise. + * nptl/sysdeps/unix/sysv/linux/x86_64/clone.S: File removed. + * nptl/sysdeps/unix/sysv/linux/i386/clone.S: File removed. + * sysdeps/i386/nptl/Implies: New file. * sysdeps/x86_64/nptl/Implies: New file. * nptl/sysdeps/unix/sysv/linux/x86/bits/pthreadtypes.h: Moved ... diff --git a/nptl/sysdeps/unix/sysv/linux/i386/clone.S b/nptl/sysdeps/unix/sysv/linux/i386/clone.S deleted file mode 100644 index 675a997e97..0000000000 --- a/nptl/sysdeps/unix/sysv/linux/i386/clone.S +++ /dev/null @@ -1,9 +0,0 @@ -/* We want an #include_next, but we are the main source file. - So, #include ourselves and in that incarnation we can use #include_next. */ -#ifndef INCLUDED_SELF -# define INCLUDED_SELF -# include <clone.S> -#else -# define RESET_PID -# include_next <clone.S> -#endif diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/clone.S b/nptl/sysdeps/unix/sysv/linux/x86_64/clone.S deleted file mode 100644 index 675a997e97..0000000000 --- a/nptl/sysdeps/unix/sysv/linux/x86_64/clone.S +++ /dev/null @@ -1,9 +0,0 @@ -/* We want an #include_next, but we are the main source file. - So, #include ourselves and in that incarnation we can use #include_next. */ -#ifndef INCLUDED_SELF -# define INCLUDED_SELF -# include <clone.S> -#else -# define RESET_PID -# include_next <clone.S> -#endif diff --git a/sysdeps/unix/sysv/linux/i386/clone.S b/sysdeps/unix/sysv/linux/i386/clone.S index c8dd2e4a37..8fc651d66c 100644 --- a/sysdeps/unix/sysv/linux/i386/clone.S +++ b/sysdeps/unix/sysv/linux/i386/clone.S @@ -74,9 +74,6 @@ ENTRY (__clone) movl %eax,8(%ecx) /* Don't leak any information. */ movl $0,4(%ecx) -#ifndef RESET_PID - movl $0,(%ecx) -#endif /* Do the system call */ pushl %ebx @@ -95,10 +92,8 @@ ENTRY (__clone) cfi_rel_offset (edi, 0) movl $SYS_ify(clone),%eax -#ifdef RESET_PID /* Remember the flag value. */ movl %ebx, (%ecx) -#endif /* End FDE now, because in the child the unwind info will be wrong. */ @@ -121,11 +116,9 @@ L(thread_start): cfi_undefined (eip); /* Note: %esi is zero. */ movl %esi,%ebp /* terminate the stack frame */ -#ifdef RESET_PID testl $CLONE_THREAD, %edi je L(newpid) L(haspid): -#endif call *%ebx #ifdef PIC call L(here) @@ -137,7 +130,6 @@ L(here): movl $SYS_ify(exit), %eax ENTER_KERNEL -#ifdef RESET_PID .subsection 2 L(newpid): testl $CLONE_VM, %edi @@ -150,7 +142,6 @@ L(nomoregetpid): movl %eax, %gs:TID jmp L(haspid) .previous -#endif cfi_endproc; cfi_startproc diff --git a/sysdeps/unix/sysv/linux/x86_64/clone.S b/sysdeps/unix/sysv/linux/x86_64/clone.S index 0508730d83..2b71c1b240 100644 --- a/sysdeps/unix/sysv/linux/x86_64/clone.S +++ b/sysdeps/unix/sysv/linux/x86_64/clone.S @@ -92,7 +92,6 @@ L(thread_start): the outermost frame obviously. */ xorl %ebp, %ebp -#ifdef RESET_PID testq $CLONE_THREAD, %rdi jne 1f testq $CLONE_VM, %rdi @@ -103,7 +102,6 @@ L(thread_start): 2: movl %eax, %fs:PID movl %eax, %fs:TID 1: -#endif /* Set up arguments for the function call. */ popq %rax /* Function to call. */ |