This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Terminate FDE before return trampoline in makecontext for powerpc (bug 18635)


This fixes tst-makecontext for PowerPC.

Andreas.

	[BZ #18635]
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
	(__makecontext): Terminate FDE before return label.
	(__novec_makecontext): Likewise.
---
 sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
index 1d6915b..472f5a5 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
 
-- 
2.5.0


-- 
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]