diff options
Diffstat (limited to 'linuxthreads')
-rw-r--r-- | linuxthreads/ChangeLog | 3 | ||||
-rw-r--r-- | linuxthreads/sysdeps/i386/i686/pt-machine.h | 6 | ||||
-rw-r--r-- | linuxthreads/sysdeps/i386/pt-machine.h | 8 |
3 files changed, 11 insertions, 6 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index 88cf853c84..66847d4416 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,6 +1,7 @@ 1998-08-31 Ulrich Drepper <drepper@cygnus.com> - * sysdeps/i386/pt-machine.h (testandset): Add memory clobber. + * sysdeps/i386/i686/pt-machine.h (testandset): Add memory clobber. + * sysdeps/i386/pt-machine.h: Likewise Suggested by Roland McGrath. 1998-08-28 13:58 Ulrich Drepper <drepper@cygnus.com> diff --git a/linuxthreads/sysdeps/i386/i686/pt-machine.h b/linuxthreads/sysdeps/i386/i686/pt-machine.h index a4b3a63f1c..d01e6cf368 100644 --- a/linuxthreads/sysdeps/i386/i686/pt-machine.h +++ b/linuxthreads/sysdeps/i386/i686/pt-machine.h @@ -26,9 +26,11 @@ testandset (int *spinlock) { int ret; - __asm__ __volatile__("xchgl %0, %1" + __asm__ __volatile__ ( + "xchgl %0, %1" : "=r"(ret), "=m"(*spinlock) - : "0"(1), "m"(*spinlock)); + : "0"(1), "m"(*spinlock) + : "memory"); return ret; } diff --git a/linuxthreads/sysdeps/i386/pt-machine.h b/linuxthreads/sysdeps/i386/pt-machine.h index 6723c80bda..7ed90b7553 100644 --- a/linuxthreads/sysdeps/i386/pt-machine.h +++ b/linuxthreads/sysdeps/i386/pt-machine.h @@ -26,9 +26,11 @@ testandset (int *spinlock) { int ret; - __asm__ __volatile__("xchgl %0, %1" - : "=r"(ret), "=m"(*spinlock) - : "0"(1), "m"(*spinlock)); + __asm__ __volatile__( + "xchgl %0, %1" + : "=r"(ret), "=m"(*spinlock) + : "0"(1), "m"(*spinlock) + : "memory"); return ret; } |