From: Andreas Schwab Date: Thu, 20 Aug 2015 13:25:18 +0000 (+0200) Subject: Terminate FDE before return trampoline in makecontext for powerpc (bug 18635) X-Git-Tag: glibc-2.23~514 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b4b522f6108e2116fb806e4f29b25542062dd84b;p=thirdparty%2Fglibc.git Terminate FDE before return trampoline in makecontext for powerpc (bug 18635) This fixes tst-makecontext for PowerPC. [BZ #18635] * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S (__makecontext): Terminate FDE before return label. (__novec_makecontext): Likewise. --- diff --git a/ChangeLog b/ChangeLog index 09ff85f016b..76bbb73cac8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2015-09-04 Andreas Schwab + + [BZ #18635] + * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S + (__makecontext): Terminate FDE before return label. + (__novec_makecontext): Likewise. + 2015-09-04 Carlos Eduardo Seo * sysdeps/unix/sysv/linux/socketpair.c: Use the address of the diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S index 1d6915b5ec7..472f5a5b8fc 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S @@ -94,6 +94,8 @@ ENTRY(__makecontext) blr + cfi_endproc + nop /* * If the function returns, it comes here. We put ucp->uc_link in * r31, which is a callee-saved register. We have to continue with @@ -106,6 +108,7 @@ L(exitcode): 4: bl HIDDEN_JUMPTARGET(exit) b 4b + cfi_startproc END(__makecontext) versioned_symbol (libc, __makecontext, makecontext, GLIBC_2_3_4) @@ -185,6 +188,8 @@ ENTRY(__novec_makecontext) blr + cfi_endproc + nop /* * If the function returns, it comes here. We put ucp->uc_link in * r31, which is a callee-saved register. We have to continue with @@ -197,6 +202,7 @@ L(novec_exitcode): 4: bl HIDDEN_JUMPTARGET(exit) b 4b + cfi_startproc END(__novec_makecontext) .previous