From bb1d31d06e400a42da4435e8649bb7a1451ef682 Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Wed, 5 Aug 2015 23:20:49 +0200 Subject: Properly terminate FDE in makecontext for m68k (bug 18635) --- sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'sysdeps') diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S b/sysdeps/unix/sysv/linux/m68k/m680x0/makecontext.S index f6ee50d2c7..5e717ab147 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 -- cgit v1.2.3