diff options
author | Ulrich Drepper <drepper@redhat.com> | 2007-08-20 22:36:43 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2007-08-20 22:36:43 +0000 |
commit | fb84593c439da7998f29777525b4ad49d379b2a1 (patch) | |
tree | 3423afc26d2462efec045b0397c94a2cc181aa9d /nptl | |
parent | b83fb35cd1eb2f8d2178f943f94039771cb18820 (diff) | |
download | glibc-fb84593c439da7998f29777525b4ad49d379b2a1.tar glibc-fb84593c439da7998f29777525b4ad49d379b2a1.tar.gz glibc-fb84593c439da7998f29777525b4ad49d379b2a1.tar.bz2 glibc-fb84593c439da7998f29777525b4ad49d379b2a1.zip |
* csu/libc-start.c: Don't handle VDSO_SETUP here.
* sysdeps/unix/sysv/linux/init-first.c: Handle it here instead.
* sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to...
* sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this. New file.
* sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code
to...
* sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here. New file.
Diffstat (limited to 'nptl')
-rw-r--r-- | nptl/ChangeLog | 5 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S | 9 |
2 files changed, 13 insertions, 1 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index f130a7c7b9..306324879c 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,8 @@ +2007-08-20 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S + (__pthread_cond_timedwait): Use clock_gettime from VDSO if possible. + 2007-08-16 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/alpha/lowlevellock.h diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S index a5de670866..d730a7e12d 100644 --- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S +++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S @@ -134,8 +134,15 @@ __pthread_cond_timedwait: /* Only clocks 0 and 1 are allowed so far. Both are handled in the kernel. */ leaq 24(%rsp), %rsi - movl $__NR_clock_gettime, %eax + movq __vdso_clock_gettime@GOTPCREL(%rip), %rax + movq (%rax), %rax + PTR_DEMANGLE (%rax) + jz 26f + call *%rax + jmp 27f +26: movl $__NR_clock_gettime, %eax syscall +27: # ifndef __ASSUME_POSIX_TIMERS cmpq $-ENOSYS, %rax je 19f |