diff options
Diffstat (limited to 'libpthread/nptl/sysdeps/unix/sysv')
48 files changed, 118 insertions, 773 deletions
diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/clone.S b/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/clone.S deleted file mode 100644 index eea1cbeed..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/clone.S +++ /dev/null @@ -1,2 +0,0 @@ -#define RESET_PID -#include <sysdeps/unix/sysv/linux/alpha/clone.S> diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/vfork.S deleted file mode 100644 index 664cac494..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/vfork.S +++ /dev/null @@ -1,45 +0,0 @@ -/* Copyright (C) 2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <sysdep.h> -#include <tcb-offsets.h> - -#undef PSEUDO_PREPARE_ARGS -#define PSEUDO_PREPARE_ARGS \ - /* Load the current cached pid value across the vfork. */ \ - rduniq; \ - ldl a2, PID_OFFSET(v0); \ - mov v0, a1; \ - /* If the cached value is initialized (nonzero), then write \ - back its negation, or INT_MIN, to indicate that the pid \ - value is uninitialized in the the child, and in the window \ - between here and the point at which we restore the value. */ \ - ldah t0, -0x8000; \ - negl a2, t1; \ - cmovne a2, t1, t0; \ - stl t0, PID_OFFSET(v0); - -PSEUDO (__vfork, vfork, 0) - - /* If we're back in the parent, restore the saved pid. */ - beq v0, 1f - stl a2, PID_OFFSET(a1) -1: ret - -PSEUDO_END (__vfork) -libc_hidden_def (__vfork) -weak_alias (__vfork, vfork) diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch index fa5d530d4..64f3a4f7b 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch @@ -9,6 +9,3 @@ libpthread_linux_arch_SSRC = libpthread_linux_arch_CSRC = pthread_once.c libc_linux_arch_CSRC = fork.c -libc_linux_arch_SSRC = clone.S vfork.S -libc_linux_arch_SSRC-OMIT = waitpid.S - diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arc/clone.S b/libpthread/nptl/sysdeps/unix/sysv/linux/arc/clone.S deleted file mode 100644 index 5fd1de3c2..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/arc/clone.S +++ /dev/null @@ -1,10 +0,0 @@ -/* - * Copyright (C) 2013 Synopsys, Inc. (www.synopsys.com) - * - * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball. - */ - -#define RESET_PID -#include <tls.h> -#include <tcb-offsets.h> -#include "../../../../../../../libc/sysdeps/linux/arc/clone.S" diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arc/vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/arc/vfork.S deleted file mode 100644 index d29e05a8a..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/arc/vfork.S +++ /dev/null @@ -1,11 +0,0 @@ -/* - * Copyright (C) 2013 Synopsys, Inc. (www.synopsys.com) - * - * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball. - */ - -#define SAVE_PID -#define RESTORE_PID -#include <tls.h> -#include <tcb-offsets.h> -#include "../../../../../../../libc/sysdeps/linux/arc/vfork.S" diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch index 49d0684ee..55afe20af 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch @@ -9,11 +9,3 @@ libpthread_linux_arch_SSRC = libpthread_linux_arch_CSRC = pthread_once.c libc_linux_arch_CSRC = fork.c -libc_linux_arch_SSRC = clone.S vfork.S -libc_linux_arch_SSRC-OMIT = waitpid.S - -# We always compile it in arm mode because of SAVE_PID macro -# This macro should be alternatively implemented in THUMB -# assembly. -ASFLAGS-vfork.S = -marm -CFLAGS-OMIT-vfork.S = -mthumb diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/clone.S b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/clone.S deleted file mode 100644 index 23227eb24..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/clone.S +++ /dev/null @@ -1,3 +0,0 @@ -#define RESET_PID -#include <tcb-offsets.h> -#include "../../../../../../../libc/sysdeps/linux/arm/clone.S" diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/vfork.S deleted file mode 100644 index b9e8cf846..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/vfork.S +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright (C) 2005 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <tcb-offsets.h> - -/* Save the PID value. */ -#define SAVE_PID \ - str lr, [sp, #-4]!; /* Save LR. */ \ - mov r0, #0xffff0fff; /* Point to the high page. */ \ - mov lr, pc; /* Save our return address. */ \ - sub pc, r0, #31; /* Jump to the TLS entry. */ \ - ldr lr, [sp], #4; /* Restore LR. */ \ - mov r2, r0; /* Save the TLS addr in r2. */ \ - ldr r3, [r2, #PID_OFFSET]; /* Load the saved PID. */ \ - rsbs r0, r3, #0; /* Negate it. */ \ - moveq r0, #0x80000000; /* Use 0x80000000 if it was 0. */ \ - str r0, [r2, #PID_OFFSET] /* Store the temporary PID. */ - -/* Restore the old PID value in the parent. */ -#define RESTORE_PID \ - cmp r0, #0; /* If we are the parent... */ \ - strne r3, [r2, #PID_OFFSET] /* ... restore the saved PID. */ - -#include "../../../../../../../libc/sysdeps/linux/arm/vfork.S" diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/fork.c b/libpthread/nptl/sysdeps/unix/sysv/linux/fork.c index af4041031..49806dab9 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/fork.c +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/fork.c @@ -135,12 +135,6 @@ fork (void) pid_t ppid = THREAD_GETMEM (THREAD_SELF, tid); #endif - /* We need to prevent the getpid() code to update the PID field so - that, if a signal arrives in the child very early and the signal - handler uses getpid(), the value returned is correct. */ - pid_t parentpid = THREAD_GETMEM (THREAD_SELF, pid); - THREAD_SETMEM (THREAD_SELF, pid, -parentpid); - #ifdef ARCH_FORK pid = ARCH_FORK (); #else @@ -158,9 +152,6 @@ fork (void) if (__fork_generation_pointer != NULL) *__fork_generation_pointer += 4; - /* Adjust the PID field for the new process. */ - THREAD_SETMEM (self, pid, THREAD_GETMEM (self, tid)); - #if HP_TIMING_AVAIL /* The CPU clock of the thread and process have to be set to zero. */ hp_timing_t now; @@ -206,9 +197,6 @@ fork (void) { assert (THREAD_GETMEM (THREAD_SELF, tid) == ppid); - /* Restore the PID value. */ - THREAD_SETMEM (THREAD_SELF, pid, parentpid); - /* We execute this even if the 'fork' call failed. */ __UCLIBC_IO_MUTEX_UNLOCK_CANCEL_UNSAFE(_stdio_openlist_add_lock); diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c b/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c index 24abccc93..03b1031a4 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c @@ -25,41 +25,11 @@ # define __NR_getpid __NR_getxpid #endif -#ifndef NOT_IN_libc -static inline __attribute__((always_inline)) pid_t really_getpid (pid_t oldval); - -static inline __attribute__((always_inline)) pid_t -really_getpid (pid_t oldval) -{ - if (__builtin_expect (oldval == 0, 1)) - { - pid_t selftid = THREAD_GETMEM (THREAD_SELF, tid); - if (__builtin_expect (selftid != 0, 1)) - return selftid; - } - - INTERNAL_SYSCALL_DECL (err); - pid_t result = INTERNAL_SYSCALL (getpid, err, 0); - - /* We do not set the PID field in the TID here since we might be - called from a signal handler while the thread executes fork. */ - if (oldval == 0) - THREAD_SETMEM (THREAD_SELF, tid, result); - return result; -} -#endif - static pid_t __getpid (void) { -#ifdef NOT_IN_libc INTERNAL_SYSCALL_DECL (err); pid_t result = INTERNAL_SYSCALL (getpid, err, 0); -#else - pid_t result = THREAD_GETMEM (THREAD_SELF, pid); - if (__builtin_expect (result <= 0, 0)) - result = really_getpid (result); -#endif return result; } weak_alias(__getpid, getpid) diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch index be07d9c85..ee38a6988 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch @@ -5,11 +5,9 @@ # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. # -libpthread_linux_arch_SSRC = clone.S pthread_spin_unlock.S pthread_once.S +libpthread_linux_arch_SSRC = pthread_spin_unlock.S pthread_once.S libpthread_linux_arch_CSRC = pthread_spin_init.c libc_linux_arch_CSRC = fork.c -libc_linux_arch_SSRC = clone.S vfork.S ASFLAGS += -DUSE___THREAD - diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/clone.S b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/clone.S deleted file mode 100644 index 9c7c46467..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/clone.S +++ /dev/null @@ -1,2 +0,0 @@ -#define RESET_PID -#include <libc/sysdeps/linux/i386/clone.S> diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/vfork.S deleted file mode 100644 index 074f0f046..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/vfork.S +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright (C) 1999,2002,2004,2006 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <tcb-offsets.h> - -/* Save the PID value. */ -#define SAVE_PID \ - movl %gs:PID, %edx; \ - movl %edx, %eax; \ - negl %eax; \ - jne 1f; \ - movl $0x80000000, %eax; \ -1: movl %eax, %gs:PID - -/* Restore the old PID value in the parent. */ -#define RESTORE_PID \ - testl %eax, %eax; \ - je 1f; \ - movl %edx, %gs:PID; \ -1: - - -#include <libc/sysdeps/linux/i386/vfork.S> diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/metag/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/metag/Makefile.arch index 0f4d8d327..4c85f0abc 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/metag/Makefile.arch +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/metag/Makefile.arch @@ -9,8 +9,5 @@ libpthread_linux_arch_SSRC = libpthread_linux_arch_CSRC = pthread_once.c libc_linux_arch_CSRC = fork.c -libc_linux_arch_SSRC = clone.S vfork.S -libc_linux_arch_SSRC-OMIT = waitpid.S CFLAGS += $(SSP_ALL_CFLAGS) - diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/metag/clone.S b/libpthread/nptl/sysdeps/unix/sysv/linux/metag/clone.S deleted file mode 100644 index f5c5c7c5d..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/metag/clone.S +++ /dev/null @@ -1,9 +0,0 @@ -/* - * Copyright (C) 2013 Imagination Technologies Ltd. - * - * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball. - */ - -#define RESET_PID -#include <tcb-offsets.h> -#include "../../../../../../../libc/sysdeps/linux/metag/clone.S" diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/metag/vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/metag/vfork.S deleted file mode 100644 index 7b369b1b4..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/metag/vfork.S +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright (C) 2005 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; see the file COPYING.LIB. If - not, see <http://www.gnu.org/licenses/>. */ - -#include <tcb-offsets.h> -#include <asm/unistd.h> - -#ifdef __PIC__ -#define __VFORK_METAG_LOAD_TP ___metag_load_tp@PLT -#else -#define __VFORK_METAG_LOAD_TP ___metag_load_tp -#endif - -/* Save the PID value. */ -#define SAVE_PID \ - SETL [A0StP++], D0FrT, D1RtP; \ - CALLR D1RtP, __VFORK_METAG_LOAD_TP; \ - SUB D0Re0, D0Re0, #TLS_PRE_TCB_SIZE; \ - GETD D0FrT, [D0Re0 + #PID]; \ - NEGS D0FrT, D0FrT; \ - BNZ 1f; \ - MOVT D0FrT, #0x8000; \ -1: SETD [D0Re0 + #PID], D0FrT; \ - GETL D0FrT, D1RtP, [--A0StP]; - -#define RESTORE_PID \ - CMP D0Re0, #0; \ - BEQ 1f; \ - MSETL [A0StP++], D0Re0, D0FrT; \ - CALLR D1RtP, __VFORK_METAG_LOAD_TP; \ - SUB D0Re0, D0Re0, #TLS_PRE_TCB_SIZE; \ - GETD D0FrT, [D0Re0 + #PID]; \ - NEG D0FrT, D0FrT; \ - MOVT D1Re0, #0x8000; \ - CMP D0FrT, D1Re0; \ - XOREQ D0FrT, D0FrT, D0FrT; \ - SETD [D0Re0 + #PID], D0FrT; \ - GETL D0FrT, D1RtP, [--A0StP]; \ - GETL D0Re0, D1Re0, [--A0StP]; \ -1: - -#include <../../../../../../../libc/sysdeps/linux/metag/vfork.S> diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/microblaze/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/microblaze/Makefile.arch index 77707a085..44a005306 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/microblaze/Makefile.arch +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/microblaze/Makefile.arch @@ -5,4 +5,3 @@ libpthread_linux_arch_SSRC = libpthread_linux_arch_CSRC = pthread_once.c libc_linux_arch_CSRC = fork.c -libc_linux_arch_SSRC = clone.S vfork.S diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/microblaze/clone.S b/libpthread/nptl/sysdeps/unix/sysv/linux/microblaze/clone.S deleted file mode 100644 index faa78d936..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/microblaze/clone.S +++ /dev/null @@ -1,4 +0,0 @@ -#define RESET_PID -#include <tls.h> -#include <tcb-offsets.h> -#include "../../../../../../../libc/sysdeps/linux/microblaze/clone.S" diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/microblaze/vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/microblaze/vfork.S deleted file mode 100644 index 433671717..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/microblaze/vfork.S +++ /dev/null @@ -1,5 +0,0 @@ -#define SAVE_PID -#define RESTORE_PID -#include <tls.h> -#include <tcb-offsets.h> -#include <libc/sysdeps/linux/microblaze/vfork.S> diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch index 565efd4a3..402c5ffaf 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch @@ -5,13 +5,8 @@ # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. # -libpthread_linux_arch_SSRC = clone.S libpthread_linux_arch_CSRC = pthread_once.c libc_linux_arch_CSRC = fork.c -libc_linux_arch_SSRC = clone.S vfork.S -ifneq ($(CONFIG_MIPS_O32_ABI),y) -libc_linux_arch_SSRC-OMIT = waitpid.S -endif -ASFLAGS += -DUSE___THREAD +ASFLAGS += -DUSE___THREAD diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/clone.S b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/clone.S deleted file mode 100644 index 858877f07..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/clone.S +++ /dev/null @@ -1,2 +0,0 @@ -#define RESET_PID -#include <libc/sysdeps/linux/mips/clone.S> diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-clone.S b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-clone.S deleted file mode 100644 index add405523..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-clone.S +++ /dev/null @@ -1,2 +0,0 @@ -#define RESET_PID -#include <../../../../../../../libc/sysdeps/linux/mips/clone.S> diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/vfork.S deleted file mode 100644 index a23d99cfa..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/vfork.S +++ /dev/null @@ -1,42 +0,0 @@ -/* Copyright (C) 2005, 2006 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - <http://www.gnu.org/licenses/>. */ - -#include <features.h> -#include <tls.h> - -/* Save the PID value. */ -#define SAVE_PID \ - READ_THREAD_POINTER(v1); /* Get the thread pointer. */ \ - lw a2, PID_OFFSET(v1); /* Load the saved PID. */ \ - subu a2, $0, a2; /* Negate it. */ \ - bnez a2, 1f; /* If it was zero... */ \ - lui a2, 0x8000; /* use 0x80000000 instead. */ \ -1: sw a2, PID_OFFSET(v1); /* Store the temporary PID. */ - -/* Restore the old PID value in the parent. */ -#define RESTORE_PID \ - beqz v0, 1f; /* If we are the parent... */ \ - READ_THREAD_POINTER(v1); /* Get the thread pointer. */ \ - lw a2, PID_OFFSET(v1); /* Load the saved PID. */ \ - subu a2, $0, a2; /* Re-negate it. */ \ - lui a0, 0x8000; /* Load 0x80000000... */ \ - bne a2, a0, 2f; /* ... compare against it... */ \ - li a2, 0; /* ... use 0 instead. */ \ -2: sw a2, PID_OFFSET(v1); /* Restore the PID. */ \ -1: - -#include <../../../../../../../libc/sysdeps/linux/mips/vfork.S> diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/nds32/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/nds32/Makefile.arch index 3b8935ce5..94aa25ffb 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/nds32/Makefile.arch +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/nds32/Makefile.arch @@ -5,8 +5,5 @@ libpthread_linux_arch_SSRC = libpthread_linux_arch_CSRC = pthread_once.c libc_linux_arch_CSRC = fork.c -libc_linux_arch_SSRC = clone.S vfork.S -libc_linux_arch_SSRC-OMIT = waitpid.S CFLAGS += $(SSP_ALL_CFLAGS) - diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/nds32/clone.S b/libpthread/nptl/sysdeps/unix/sysv/linux/nds32/clone.S deleted file mode 100644 index 94b39fcf9..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/nds32/clone.S +++ /dev/null @@ -1,4 +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. */ -# define RESET_PID -# include <libc/sysdeps/linux/nds32/clone.S> diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/nds32/vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/nds32/vfork.S deleted file mode 100644 index f11f76ae1..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/nds32/vfork.S +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (C) 2016-2017 Andes Technology, Inc. - * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - */ - -/* Copyright (C) 2013 Free Software Foundation, Inc. |