about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux
diff options
context:
space:
mode:
authorTulio Magno Quites Machado Filho <tuliom@linux.ibm.com>2020-07-10 19:41:06 -0300
committerTulio Magno Quites Machado Filho <tuliom@linux.ibm.com>2020-07-10 19:41:06 -0300
commit7c7bcf3634e44cf7e001aaa302138c1ee0e58f8c (patch)
treeefc90e1b49ce51b1ec962f034ca6ba872ad3c6c7 /sysdeps/unix/sysv/linux
parent936c9666aed6747f7a76221118f7cf59100075e6 (diff)
downloadglibc-7c7bcf3634e44cf7e001aaa302138c1ee0e58f8c.tar.gz
glibc-7c7bcf3634e44cf7e001aaa302138c1ee0e58f8c.tar.xz
glibc-7c7bcf3634e44cf7e001aaa302138c1ee0e58f8c.zip
powerpc64: Fix calls when r2 is not used [BZ #26173]
Teach the linker that __mcount_internal, __sigjmp_save_symbol,
__syscall_error and __GI_exit do not use r2, so that it does not need to
recover r2 after the call.

Test at configure time if the assembler supports @notoc and define
USE_PPC64_NOTOC.
Diffstat (limited to 'sysdeps/unix/sysv/linux')
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S2
1 files changed, 1 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
index e4d4575d68..3c528aa4b7 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
@@ -160,7 +160,7 @@ L(exitcode):
 	li    r3,-1
 L(do_exit):
 #ifdef SHARED
-	b     JUMPTARGET(__GI_exit);
+	b     JUMPTARGET (NOTOC (__GI_exit));
 #else
 	b     JUMPTARGET(exit);
 	nop