]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Terminate FDE
authorRoland McGrath <roland@gnu.org>
Tue, 4 Apr 2006 07:01:16 +0000 (07:01 +0000)
committerRoland McGrath <roland@gnu.org>
Tue, 4 Apr 2006 07:01:16 +0000 (07:01 +0000)
before syscall.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Likewise.

ChangeLog
sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S

index bd599a1045051c3a7bda0626645ae402e6b607b7..5a7bade0fd1a62a972d3c9947f7c09de6c8e4f94 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2006-04-03  Andreas Schwab  <schwab@suse.de>
 
+       * 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 <asm/elf.h>
        with [! _ASM_POWERPC_ELF_H] as well as [!__PPC64_ELF_H].
 
index f4c92ad7c74be084710bed8e7c01bf2fdb828b22..37b777799c7db1a1240a4c759b432cca7f9666ed 100644 (file)
@@ -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))
index 366206d286526b8c7689ab394b5766d6269866bb..f1a55e64dbb7f0d08cb86add450b5af186141b64 100644 (file)
@@ -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))