aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/powerpc/powerpc64/bsd-_setjmp.S
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/powerpc/powerpc64/bsd-_setjmp.S')
-rw-r--r--sysdeps/powerpc/powerpc64/bsd-_setjmp.S3
1 files changed, 3 insertions, 0 deletions
diff --git a/sysdeps/powerpc/powerpc64/bsd-_setjmp.S b/sysdeps/powerpc/powerpc64/bsd-_setjmp.S
index e4428ecff7..13f4056706 100644
--- a/sysdeps/powerpc/powerpc64/bsd-_setjmp.S
+++ b/sysdeps/powerpc/powerpc64/bsd-_setjmp.S
@@ -47,6 +47,9 @@ default_symbol_version (__vmx_setjmp,_setjmp,GLIBC_2.3.4)
as a libc_hidden_proto & is used in sysdeps/generic/libc-start.c
if HAVE_CLEANUP_JMP_BUF is defined */
ENTRY (BP_SYM (__GI__setjmp))
+#if defined SHARED && !defined IS_IN_rtld
+ std r2,40(r1) /* Save the callers TOC in the save area. */
+#endif
li r4,0 /* Set second argument to 0. */
b JUMPTARGET(BP_SYM (__vmx__sigsetjmp))
END (BP_SYM (__GI__setjmp))