aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@linux-m68k.org>2015-08-05 23:20:49 +0200
committerAndreas Schwab <schwab@linux-m68k.org>2015-08-05 23:35:28 +0200
commitbb1d31d06e400a42da4435e8649bb7a1451ef682 (patch)
treee174c355a15aefb1adbf9eb0d7200d7f4a54e602 /sysdeps/unix
parent72354ab5e1d61dec7606a8851f0eb1bb016f7af7 (diff)
downloadglibc-bb1d31d06e400a42da4435e8649bb7a1451ef682.zip
glibc-bb1d31d06e400a42da4435e8649bb7a1451ef682.tar.gz
glibc-bb1d31d06e400a42da4435e8649bb7a1451ef682.tar.bz2
Properly terminate FDE in makecontext for m68k (bug 18635)
Diffstat (limited to 'sysdeps/unix')
-rw-r--r--sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S5
1 files changed, 4 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S b/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S
index f6ee50d..5e717ab 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S
@@ -74,8 +74,11 @@ ENTRY(__makecontext)
have to install the context listed in the uc_link element of
the context 'makecontext' manipulated at the time of the
'makecontext' call. If the pointer is NULL the process must
- terminate. */
+ terminate.
+ Make sure to separate the return label from the previous unwind
+ region, because the unwinder uses ra-1 to find the FDE. */
cfi_endproc
+ nop
1:
/* This removes the parameters passed to the function given to
'makecontext' from the stack. D7 contains the number of