(__compare_and_swap): Add memory clobber.
authordrepper <drepper>
Mon, 21 Dec 1998 12:22:46 +0000 (12:22 +0000)
committerdrepper <drepper>
Mon, 21 Dec 1998 12:22:46 +0000 (12:22 +0000)
linuxthreads/sysdeps/i386/i686/pt-machine.h
linuxthreads/sysdeps/i386/pt-machine.h

index 1b193a0..91dfb46 100644 (file)
@@ -57,7 +57,8 @@ __compare_and_swap (long int *p, long int oldval, long int newval)
 
   __asm__ __volatile__ ("lock; cmpxchgl %3, %1; sete %0"
                        : "=q" (ret), "=m" (*p), "=a" (readval)
-                       : "r" (newval), "m" (*p), "a" (oldval));
+                       : "r" (newval), "m" (*p), "a" (oldval)
+                       : "memory");
   return ret;
 }
 
index 8859946..97d75d4 100644 (file)
@@ -60,7 +60,8 @@ __compare_and_swap (long int *p, long int oldval, long int newval)
 
   __asm__ __volatile__ ("lock; cmpxchgl %3, %1; sete %0"
                        : "=q" (ret), "=m" (*p), "=a" (readval)
-                       : "r" (newval), "m" (*p), "a" (oldval));
+                       : "r" (newval), "m" (*p), "a" (oldval)
+                       : "memory");
   return ret;
 }