glibc/nptl/sysdeps/unix/sysv/linux/x86_64
Andi Kleen df5b85da90 Fix dwarf2 unwinding through futex functions.
When profiling programs with lock problems with perf record -g dwarf,
libunwind can currently not backtrace through the futex and unlock
functions in pthread. This is because they use out of line sections,
and those are not correctly described in dwarf2 (I believe needs
dwarf3 or 4).

This patch first removes the out of line sections. They only save a
single jump, but cause a lot of pain. Then it converts the now inline
lock code to use the now standard gas .cfi_* commands.

With these changes libunwind/perf can backtrace through the futex
functions now.

Longer term it would be likely better to just use C futex() functions
on x86 like all the other architectures. This would clean the code up
even more.
2014-03-26 23:18:15 -04:00
..
cancellation.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
clone.S * Makefile (subdir-target-args): New variable. 2006-02-28 07:11:04 +00:00
compat-timer.h Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
fork.c Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
Implies Use x86-64 bits/pthreadtypes.h/semaphore.h for i386/x86-64 2012-05-30 17:29:22 -07:00
libc-cancellation.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
libc-lowlevellock.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
librt-cancellation.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
lowlevellock.h Fix dwarf2 unwinding through futex functions. 2014-03-26 23:18:15 -04:00
lowlevellock.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
lowlevelrobustlock.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
not-cancel.h Fix a typo. 2003-09-02 13:25:06 +00:00
pt-vfork.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_barrier_wait.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_cond_broadcast.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_cond_signal.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_cond_timedwait.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_cond_wait.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_once.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_rwlock_rdlock.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_rwlock_timedrdlock.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_rwlock_timedwrlock.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_rwlock_unlock.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_rwlock_wrlock.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
pthread_setaffinity.c * sysdeps/unix/sysv/linux/sched_setaffinity.c 2007-05-10 23:38:55 +00:00
pthread_spin_init.c Add __builtin_expect where appropriate. 2003-03-18 00:31:30 +00:00
pthread_spin_unlock.S Add __builtin_expect where appropriate. 2003-03-18 00:31:30 +00:00
sem_post.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
sem_timedwait.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
sem_trywait.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
sem_wait.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
sysdep-cancel.h Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
timer_create.c Use glibc_likely instead __builtin_expect. 2014-02-10 15:07:12 +01:00
timer_delete.c Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
timer_getoverr.c Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
timer_gettime.c Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
timer_settime.c Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
Versions Update. 2003-03-25 20:41:26 +00:00
vfork.S Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00