summaryrefslogtreecommitdiff
path: root/nptl/sysdeps/s390/pthread_spin_lock.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2003-03-20 09:51:17 +0000
committerRoland McGrath <roland@gnu.org>2003-03-20 09:51:17 +0000
commit100a7100a77029d3e56174c4a9124779c40a5d72 (patch)
treeea475925953a121f4809df0d7bb769c0417718bc /nptl/sysdeps/s390/pthread_spin_lock.c
parent7d0878cc839492c5c6845deef645df3dd41b5441 (diff)
downloadglibc-100a7100a77029d3e56174c4a9124779c40a5d72.tar.gz
* sysdeps/s390/pthread_spin_lock.c (pthread_spin_lock): Use type
int for variable OLDVAL and correct inline assembler contraint. * sysdeps/s390/pthread_spin_trylock.c (pthread_spin_trylock): Use type int for variable OLD. * sysdeps/s390/tls.h (TLS_MULTIPLE_THREADS_IN_TCB): Define it only for s390-32. * sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h (SINGLE_THREAD_P): Use global variable __local_multiple_threads instead of multiple_threads field in the TCB.
Diffstat (limited to 'nptl/sysdeps/s390/pthread_spin_lock.c')
-rw-r--r--nptl/sysdeps/s390/pthread_spin_lock.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/nptl/sysdeps/s390/pthread_spin_lock.c b/nptl/sysdeps/s390/pthread_spin_lock.c
index 7d0067b0e9..f0fddf4ae8 100644
--- a/nptl/sysdeps/s390/pthread_spin_lock.c
+++ b/nptl/sysdeps/s390/pthread_spin_lock.c
@@ -23,12 +23,12 @@ int
pthread_spin_lock (lock)
pthread_spinlock_t *lock;
{
- unsigned long int oldval;
+ int oldval;
__asm __volatile ("0: lhi %0,0\n"
" cs %0,%2,%1\n"
" jl 0b"
- : "=d" (oldval), "=Q" (*lock)
+ : "=&d" (oldval), "=Q" (*lock)
: "d" (1), "m" (*lock) : "cc" );
return 0;
}