summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter S. Mazinger <ps.m@gmx.net>2005-12-16 00:14:26 +0000
committerPeter S. Mazinger <ps.m@gmx.net>2005-12-16 00:14:26 +0000
commit1956924ceacc66c73e7f3ef7a365149d5a1748d4 (patch)
tree60423731459f0fa78f48da89984be90e8b429335
parent81c39339ef06b8942ee2bbf8a9c5e1e9bae15c0c (diff)
Make clone use internal _exit
-rw-r--r--libc/sysdeps/linux/alpha/clone.S2
-rw-r--r--libc/sysdeps/linux/arm/clone.S6
-rw-r--r--libc/sysdeps/linux/cris/clone.S2
-rw-r--r--libc/sysdeps/linux/frv/clone.S2
-rw-r--r--libc/sysdeps/linux/hppa/clone.S2
-rw-r--r--libc/sysdeps/linux/mips/clone.S7
-rw-r--r--libc/sysdeps/linux/powerpc/clone.S6
-rw-r--r--libc/sysdeps/linux/sh/clone.S2
-rw-r--r--libc/sysdeps/linux/sparc/clone.S2
-rw-r--r--libc/sysdeps/linux/x86_64/clone.S2
10 files changed, 10 insertions, 23 deletions
diff --git a/libc/sysdeps/linux/alpha/clone.S b/libc/sysdeps/linux/alpha/clone.S
index b326925d7..ed5a4f487 100644
--- a/libc/sysdeps/linux/alpha/clone.S
+++ b/libc/sysdeps/linux/alpha/clone.S
@@ -87,7 +87,7 @@ thread_start:
/* Call _exit rather than doing it inline for breakpoint purposes */
mov v0,a0
- jsr ra,_exit
+ jsr ra,_exit_internal
/* Die horribly. */
halt
diff --git a/libc/sysdeps/linux/arm/clone.S b/libc/sysdeps/linux/arm/clone.S
index a4d5f99bd..946d4bdda 100644
--- a/libc/sysdeps/linux/arm/clone.S
+++ b/libc/sysdeps/linux/arm/clone.S
@@ -59,11 +59,7 @@ __clone:
ldr pc, [sp]
@ and we are done, passing the return value through r0
-#ifdef __PIC__
- b _exit(PLT)
-#else
- b _exit
-#endif
+ b _exit_internal
__error:
b __syscall_error
diff --git a/libc/sysdeps/linux/cris/clone.S b/libc/sysdeps/linux/cris/clone.S
index 56ea05c72..19ba71996 100644
--- a/libc/sysdeps/linux/cris/clone.S
+++ b/libc/sysdeps/linux/cris/clone.S
@@ -69,7 +69,7 @@ ENTRY (__clone)
jsr r0
SETUP_PIC
- PLTCALL (_exit)
+ PLTCALL (_exit_internal)
/* Die horribly. */
test.d [6809]
diff --git a/libc/sysdeps/linux/frv/clone.S b/libc/sysdeps/linux/frv/clone.S
index f835f0ba2..b714b45b1 100644
--- a/libc/sysdeps/linux/frv/clone.S
+++ b/libc/sysdeps/linux/frv/clone.S
@@ -75,7 +75,7 @@ __clone:
breakpoints work.*/
mov.p gr17, gr15
- call _exit
+ call _exit_internal
/* Should never get here. */
jmpl @(gr0, gr0)
diff --git a/libc/sysdeps/linux/hppa/clone.S b/libc/sysdeps/linux/hppa/clone.S
index 56a40eadc..8395cdada 100644
--- a/libc/sysdeps/linux/hppa/clone.S
+++ b/libc/sysdeps/linux/hppa/clone.S
@@ -90,7 +90,7 @@ thread_start:
bl $$dyncall,%r31
copy %r31,%rp
- bl _exit,%rp
+ bl _exit_internal,%rp
copy %ret0,%arg0
/* Die horribly. */
diff --git a/libc/sysdeps/linux/mips/clone.S b/libc/sysdeps/linux/mips/clone.S
index 21cb8ec61..9c12075b3 100644
--- a/libc/sysdeps/linux/mips/clone.S
+++ b/libc/sysdeps/linux/mips/clone.S
@@ -106,12 +106,7 @@ __thread_start:
/* Call _exit rather than doing it inline for breakpoint purposes. */
move a0,v0
-#ifdef __PIC__
- la t9,_exit
- jalr t9
-#else
- jal _exit
-#endif
+ jal _exit_internal
.end __thread_start
.weak clone;
diff --git a/libc/sysdeps/linux/powerpc/clone.S b/libc/sysdeps/linux/powerpc/clone.S
index f7c6bd18e..9e8a1ca53 100644
--- a/libc/sysdeps/linux/powerpc/clone.S
+++ b/libc/sysdeps/linux/powerpc/clone.S
@@ -78,11 +78,7 @@ __clone:
mr r3,r31
bctrl
/* Call _exit with result from procedure. */
-#ifdef __PIC__
- b _exit@plt
-#else
- b _exit
-#endif
+ b _exit_internal
.Lparent:
/* Parent. Restore registers & return. */
diff --git a/libc/sysdeps/linux/sh/clone.S b/libc/sysdeps/linux/sh/clone.S
index 98086ef09..7824d4771 100644
--- a/libc/sysdeps/linux/sh/clone.S
+++ b/libc/sysdeps/linux/sh/clone.S
@@ -118,7 +118,7 @@ __clone:
#endif
.align 2
.L1:
- .long PLTJMP(_exit)
+ .long PLTJMP(_exit_internal)
.size __clone,.-__clone;
.globl clone;
diff --git a/libc/sysdeps/linux/sparc/clone.S b/libc/sysdeps/linux/sparc/clone.S
index 7421ef672..e9e6b17dd 100644
--- a/libc/sysdeps/linux/sparc/clone.S
+++ b/libc/sysdeps/linux/sparc/clone.S
@@ -59,7 +59,7 @@ __error:
__thread_start:
call %i0
mov %i3,%o0
- call _exit,0
+ call _exit_internal,0
nop
.size __thread_start,.-__thread_start
diff --git a/libc/sysdeps/linux/x86_64/clone.S b/libc/sysdeps/linux/x86_64/clone.S
index cb614a5dc..4a7e96500 100644
--- a/libc/sysdeps/linux/x86_64/clone.S
+++ b/libc/sysdeps/linux/x86_64/clone.S
@@ -109,7 +109,7 @@ __clone:
call *%rax
/* Call exit with return value from function call. */
movq %rax, %rdi
- call _exit@PLT //HIDDEN_JUMPTARGET (_exit)
+ call _exit_internal
__error:
jmp __syscall_error