diff options
Diffstat (limited to 'libc/sysdeps/linux/nds32')
-rw-r--r-- | libc/sysdeps/linux/nds32/clone.S | 24 | ||||
-rw-r--r-- | libc/sysdeps/linux/nds32/vfork.S | 14 |
2 files changed, 0 insertions, 38 deletions
diff --git a/libc/sysdeps/linux/nds32/clone.S b/libc/sysdeps/linux/nds32/clone.S index 1ed77fb2e..0e6e432de 100644 --- a/libc/sysdeps/linux/nds32/clone.S +++ b/libc/sysdeps/linux/nds32/clone.S @@ -28,10 +28,6 @@ #define _ERRNO_H 1 #include <bits/errno.h> -#ifdef RESET_PID -#include <tcb-offsets.h> -#endif - #define CLONE_VM 0x00000100 #define CLONE_THREAD 0x00010000 @@ -131,27 +127,7 @@ ENTRY(__clone) cfi_restore(fp) #endif /* PIC */ ret - -#ifdef RESET_PID 4: - cfi_undefined(lp) - movi $r0, CLONE_THREAD ! Skip when CLONE_THREAD is set. - and $r0, $r5, $r0 - bnez $r0, 8f - movi $r0, CLONE_VM ! Value = -1 when CLONE_VM is set. - and $r0, $r5, $r0 - beqz $r0, 6f - movi $r0, -1 - j 7f -6: - __do_syscall(getpid) ! __do_syscall(gettid) ! __do_syscall(getpid) -7: - swi $r0, [$r25 + PID_OFFSET] - swi $r0, [$r25 + TID_OFFSET] -8: -#else -4: -#endif /* Only in child's stack. */ pop $r1 ! fn pop $r0 ! arg diff --git a/libc/sysdeps/linux/nds32/vfork.S b/libc/sysdeps/linux/nds32/vfork.S index ac3fa30fd..ab32135fc 100644 --- a/libc/sysdeps/linux/nds32/vfork.S +++ b/libc/sysdeps/linux/nds32/vfork.S @@ -25,32 +25,18 @@ #define _ERRNO_H 1 #include <bits/errno.h> -#ifndef SAVE_PID -#define SAVE_PID -#endif - -#ifndef RESTORE_PID -#define RESTORE_PID -#endif /* Clone the calling process, but without copying the whole address space. The calling process is suspended until the new process exits or is replaced by a call to `execve'. Return -1 for errors, 0 to the new process, and the process ID of the new process to the old process. */ - ENTRY (__vfork) #ifdef PIC .pic #endif #ifdef __NR_vfork -# ifdef SAVE_PID - SAVE_PID -# endif syscall __NR_vfork -# ifdef RESTORE_PID - RESTORE_PID -# endif bltz $r0, 2f 1: ret |