Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
2016-01-20 Paul Pluzhnikov <ppluzhnikov@google.com>
[BZ #19490]
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S (pthread_cond_broadcast): Use ENTRY/END
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S (pthread_cond_signal): Likewise
* sysdeps/x86_64/nptl/pthread_spin_lock.S (pthread_spin_lock): Likewise
* sysdeps/x86_64/nptl/pthread_spin_trylock.S (pthread_spin_trylock): Likewise
* sysdeps/x86_64/nptl/pthread_spin_unlock.S (pthread_spin_unlock): Likewise
  • Loading branch information
Paul Pluzhnikov committed Jan 20, 2016
1 parent dcb133b commit b274130
Show file tree
Hide file tree
Showing 6 changed files with 30 additions and 26 deletions.
14 changes: 14 additions & 0 deletions ChangeLog
@@ -1,3 +1,17 @@
2016-01-20 Paul Pluzhnikov <ppluzhnikov@google.com>

[BZ #19490]
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S
(pthread_cond_broadcast): Use ENTRY/END
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S
(pthread_cond_signal): Likewise
* sysdeps/x86_64/nptl/pthread_spin_lock.S (pthread_spin_lock):
Likewise
* sysdeps/x86_64/nptl/pthread_spin_trylock.S (pthread_spin_trylock):
Likewise
* sysdeps/x86_64/nptl/pthread_spin_unlock.S (pthread_spin_unlock):
Likewise

2016-01-20 Joseph Myers <joseph@codesourcery.com>

* sysdeps/ieee754/dbl-64/s_finite.c
Expand Down
8 changes: 3 additions & 5 deletions sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S
Expand Up @@ -28,10 +28,7 @@
.text

/* int pthread_cond_broadcast (pthread_cond_t *cond) */
.globl __pthread_cond_broadcast
.type __pthread_cond_broadcast, @function
.align 16
__pthread_cond_broadcast:
ENTRY(__pthread_cond_broadcast)

LIBC_PROBE (cond_broadcast, 1, %rdi)

Expand Down Expand Up @@ -174,6 +171,7 @@ __pthread_cond_broadcast:
movl $SYS_futex, %eax
syscall
jmp 10b
.size __pthread_cond_broadcast, .-__pthread_cond_broadcast
END(__pthread_cond_broadcast)

versioned_symbol (libpthread, __pthread_cond_broadcast, pthread_cond_broadcast,
GLIBC_2_3_2)
9 changes: 3 additions & 6 deletions sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S
Expand Up @@ -28,11 +28,7 @@

.text

/* int pthread_cond_signal (pthread_cond_t *cond) */
.globl __pthread_cond_signal
.type __pthread_cond_signal, @function
.align 16
__pthread_cond_signal:
ENTRY(__pthread_cond_signal)

LIBC_PROBE (cond_signal, 1, %rdi)

Expand Down Expand Up @@ -159,6 +155,7 @@ __pthread_cond_signal:
cmovne %eax, %esi
callq __lll_unlock_wake
jmp 6b
.size __pthread_cond_signal, .-__pthread_cond_signal
END(__pthread_cond_signal)

versioned_symbol (libpthread, __pthread_cond_signal, pthread_cond_signal,
GLIBC_2_3_2)
8 changes: 3 additions & 5 deletions sysdeps/x86_64/nptl/pthread_spin_lock.S
Expand Up @@ -16,11 +16,9 @@
<http://www.gnu.org/licenses/>. */

#include <lowlevellock.h>
#include <sysdep.h>

.globl pthread_spin_lock
.type pthread_spin_lock,@function
.align 16
pthread_spin_lock:
ENTRY(pthread_spin_lock)
1: LOCK
decl 0(%rdi)
jne 2f
Expand All @@ -33,4 +31,4 @@ pthread_spin_lock:
cmpl $0, 0(%rdi)
jg 1b
jmp 2b
.size pthread_spin_lock,.-pthread_spin_lock
END(pthread_spin_lock)
8 changes: 3 additions & 5 deletions sysdeps/x86_64/nptl/pthread_spin_trylock.S
Expand Up @@ -17,6 +17,7 @@
<http://www.gnu.org/licenses/>. */

#include <pthread-errnos.h>
#include <sysdep.h>


#ifdef UP
Expand All @@ -25,15 +26,12 @@
# define LOCK lock
#endif

.globl pthread_spin_trylock
.type pthread_spin_trylock,@function
.align 16
pthread_spin_trylock:
ENTRY(pthread_spin_trylock)
movl $1, %eax
xorl %ecx, %ecx
LOCK
cmpxchgl %ecx, (%rdi)
movl $EBUSY, %eax
cmovel %ecx, %eax
retq
.size pthread_spin_trylock,.-pthread_spin_trylock
END(pthread_spin_trylock)
9 changes: 4 additions & 5 deletions sysdeps/x86_64/nptl/pthread_spin_unlock.S
Expand Up @@ -16,14 +16,13 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */

.globl pthread_spin_unlock
.type pthread_spin_unlock,@function
.align 16
pthread_spin_unlock:
#include <sysdep.h>

ENTRY(pthread_spin_unlock)
movl $1, (%rdi)
xorl %eax, %eax
retq
.size pthread_spin_unlock,.-pthread_spin_unlock
END(pthread_spin_unlock)

/* The implementation of pthread_spin_init is identical. */
.globl pthread_spin_init
Expand Down

0 comments on commit b274130

Please sign in to comment.