From fb8fb8464c2b5a44b69e62bcc3211b9c769416da Mon Sep 17 00:00:00 2001 From: Jan Kratochvil Date: Tue, 16 Nov 2010 03:47:22 +0100 Subject: Fix incorrect backtrace unwinding through thread_start() on x86_64 Provide CFI for the outermost clone() to ensure proper unwinding stop of gdb. --- sysdeps/unix/sysv/linux/x86_64/clone.S | 4 ---- 1 file changed, 4 deletions(-) (limited to 'sysdeps') diff --git a/sysdeps/unix/sysv/linux/x86_64/clone.S b/sysdeps/unix/sysv/linux/x86_64/clone.S index db42f209c9..8a12b09035 100644 --- a/sysdeps/unix/sysv/linux/x86_64/clone.S +++ b/sysdeps/unix/sysv/linux/x86_64/clone.S @@ -89,9 +89,6 @@ L(pseudo_end): ret L(thread_start): - cfi_startproc; - /* Clearing frame pointer is insufficient, use CFI. */ - cfi_undefined (rip); /* Clear the frame pointer. The ABI suggests this be done, to mark the outermost frame obviously. */ xorl %ebp, %ebp @@ -116,7 +113,6 @@ L(thread_start): /* Call exit with return value from function call. */ movq %rax, %rdi call HIDDEN_JUMPTARGET (_exit) - cfi_endproc; cfi_startproc; PSEUDO_END (BP_SYM (__clone)) -- cgit v1.2.3-70-g09d2