aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>2016-10-21 15:19:10 -0200
committerTulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>2016-10-28 19:13:21 -0200
commitce193f551ec21df85c934626a21730881484dcf0 (patch)
tree8c5f621325b1b559f98dccfcd2e360f0d86cd404
parentae9166f2b8936304ea347a98519372804963447f (diff)
downloadglibc-ce193f551ec21df85c934626a21730881484dcf0.zip
glibc-ce193f551ec21df85c934626a21730881484dcf0.tar.gz
glibc-ce193f551ec21df85c934626a21730881484dcf0.tar.bz2
powerpc: Fix TOC stub on powerpc64 clone()
Use a function call to _exit() so that the linker can create a TOC stub instead of just a branch. Tested on powerpc64.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S2
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 27a0194..4f76008 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2016-10-28 Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
+
+ [BZ #20728]
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Replace a
+ branch to _exit() by a function call.
+
2016-10-28 Florian Weimer <fweimer@redhat.com>
* malloc/malloc.c: Update chunk layout comments.
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
index 7c59b9b..df824f5 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
@@ -97,7 +97,7 @@ L(oldpid):
#ifdef SHARED
b JUMPTARGET(__GI__exit)
#else
- b JUMPTARGET(_exit)
+ bl JUMPTARGET(_exit)
/* We won't ever get here but provide a nop so that the linker
will insert a toc adjusting stub if necessary. */
nop