[debug-ltrace] Add latest version.
Add ltrace 0.5.2, propagate patchset from 0.5.1 and from Debian.
1 Original patch from: gentoo/src/patchsets/glibc/2.9/0070_all_glibc-i386-x86_64-revert-clone-cfi.patch
3 -= BEGIN original header =-
4 revert cfi additions to clone on i386/x86_64 to workaround problems in
5 gcc's unwinder code. this is not a bug in glibc, it triggers problems
6 elsewhere. this cfi code does not gain us a whole lot anyways.
8 http://gcc.gnu.org/ml/gcc/2006-12/msg00293.html
10 -= END original header =-
12 diff -durN glibc-2_9.orig/sysdeps/unix/sysv/linux/i386/clone.S glibc-2_9/sysdeps/unix/sysv/linux/i386/clone.S
13 --- glibc-2_9.orig/sysdeps/unix/sysv/linux/i386/clone.S 2006-12-04 00:12:36.000000000 +0100
14 +++ glibc-2_9/sysdeps/unix/sysv/linux/i386/clone.S 2009-02-02 22:00:45.000000000 +0100
20 - /* Clearing frame pointer is insufficient, use CFI. */
21 - cfi_undefined (eip);
22 /* Note: %esi is zero. */
23 movl %esi,%ebp /* terminate the stack frame */
32 PSEUDO_END (BP_SYM (__clone))
33 diff -durN glibc-2_9.orig/sysdeps/unix/sysv/linux/x86_64/clone.S glibc-2_9/sysdeps/unix/sysv/linux/x86_64/clone.S
34 --- glibc-2_9.orig/sysdeps/unix/sysv/linux/x86_64/clone.S 2006-12-04 00:12:36.000000000 +0100
35 +++ glibc-2_9/sysdeps/unix/sysv/linux/x86_64/clone.S 2009-02-02 22:00:45.000000000 +0100
41 - /* Clearing frame pointer is insufficient, use CFI. */
42 - cfi_undefined (rip);
43 /* Clear the frame pointer. The ABI suggests this be done, to mark
44 the outermost frame obviously. */
47 /* Call exit with return value from function call. */
49 call HIDDEN_JUMPTARGET (_exit)
53 PSEUDO_END (BP_SYM (__clone))