From: Roland McGrath Date: Tue, 4 Apr 2006 07:01:16 +0000 (+0000) Subject: * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Terminate FDE X-Git-Tag: upstream/2.30~15657 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=97d901a672d83124287565d1b6649dc76a8e8659;p=external%2Fglibc.git * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Terminate FDE before syscall. * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Likewise. --- diff --git a/ChangeLog b/ChangeLog index bd599a1..5a7bade 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2006-04-03 Andreas Schwab + * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Terminate FDE + before syscall. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Likewise. + * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h: Test for with [! _ASM_POWERPC_ELF_H] as well as [!__PPC64_ELF_H]. diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S index f4c92ad..37b7777 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S @@ -84,6 +84,10 @@ ENTRY (BP_SYM (__clone)) mr r6,r8 mr r7,r9 + /* End FDE now, because in the child the unwind info will be + wrong. */ + cfi_endproc + /* Do the call. */ DO_CALL(SYS_ify(clone)) @@ -138,6 +142,8 @@ L(parent): L(badargs): li r3,EINVAL b __syscall_error@local + + cfi_startproc END (BP_SYM (__clone)) weak_alias (BP_SYM (__clone), BP_SYM (clone)) diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S index 366206d..f1a55e6 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S @@ -81,6 +81,10 @@ ENTRY (BP_SYM (__clone)) mr r6,r8 mr r7,r9 + /* End FDE now, because in the child the unwind info will be + wrong. */ + cfi_endproc + /* Do the call. */ DO_CALL(SYS_ify(clone)) @@ -132,6 +136,8 @@ L(parent): L(badargs): li r3,EINVAL b JUMPTARGET(__syscall_error) + + cfi_startproc END (BP_SYM (__clone)) weak_alias (BP_SYM (__clone), BP_SYM (clone))