summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/metag
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux/metag')
-rw-r--r--libc/sysdeps/linux/metag/clone.S21
-rw-r--r--libc/sysdeps/linux/metag/vfork.S12
2 files changed, 0 insertions, 33 deletions
diff --git a/libc/sysdeps/linux/metag/clone.S b/libc/sysdeps/linux/metag/clone.S
index d9d836338..4687cbc0f 100644
--- a/libc/sysdeps/linux/metag/clone.S
+++ b/libc/sysdeps/linux/metag/clone.S
@@ -52,27 +52,6 @@ __clone:
! BRKPNT
! We are the child
-#ifdef RESET_PID
- SETL [A0StP++], D0FrT, D1RtP
- MOVT D0FrT, #HI(CLONE_THREAD)
- ADD D0FrT, D0FrT, #LO(CLONE_THREAD)
- ANDS D0FrT, D0FrT, D1Ar1
- BNZ 3f
- MOVT D0FrT, #HI(CLONE_VM)
- ADD D0FrT, D0FrT, #LO(CLONE_VM)
- ANDS D0FrT, D0FrT, D1Ar1
- BZ 1f
- MOV D1Ar1, #-1
- BA 2f
-1: MOV D1Re0, #__NR_getpid
- SWITCH #0x440001
- MOV D1Ar1, D0Re0
-2: CALLR D1RtP, __CLONE_METAG_LOAD_TP
- SUB D0Re0, D0Re0, #TLS_PRE_TCB_SIZE
- SETD [D0Re0 + #PID], D1Ar1
- SETD [D0Re0 + #TID], D1Ar1
-3: GETL D0FrT, D1RtP, [--A0StP]
-#endif
! Rearrange the function arg and call address from registers
MOV D0Ar2, D0FrT
MOV D1Ar1, D0Ar6
diff --git a/libc/sysdeps/linux/metag/vfork.S b/libc/sysdeps/linux/metag/vfork.S
index 8573dedd3..5e2fc8808 100644
--- a/libc/sysdeps/linux/metag/vfork.S
+++ b/libc/sysdeps/linux/metag/vfork.S
@@ -8,14 +8,6 @@
#include <bits/errno.h>
#include <sys/syscall.h>
-#ifndef SAVE_PID
-#define SAVE_PID
-#endif
-
-#ifndef RESTORE_PID
-#define RESTORE_PID
-#endif
-
#ifdef __NR_vfork
#define __VFORK_NR __NR_vfork
#else
@@ -33,8 +25,6 @@
.type ___vfork, @function
___vfork:
- SAVE_PID
-
MOV D1Ar1, #0x4111 /* CLONE_VM | CLONE_VFORK | SIGCHLD */
MOV D0Ar2, #0
MOV D1Ar3, #0
@@ -44,8 +34,6 @@ ___vfork:
MOV D1Re0, #__NR_clone
SWITCH #0x440001
- RESTORE_PID
-
MOVT D1Re0, #HI(-4096)
ADD D1Re0, D1Re0, #LO(-4096)
CMP D1Re0, D0Re0