diff options
Diffstat (limited to 'sysdeps/x86_64')
-rw-r--r-- | sysdeps/x86_64/bits/atomic.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sysdeps/x86_64/bits/atomic.h b/sysdeps/x86_64/bits/atomic.h index 4e58a8e487..39c6ecba83 100644 --- a/sysdeps/x86_64/bits/atomic.h +++ b/sysdeps/x86_64/bits/atomic.h @@ -444,7 +444,7 @@ typedef uintmax_t uatomic_max_t; : "=m" (*mem) \ : "iq" (mask), "m" (*mem)); \ else if (sizeof (*mem) == 2) \ - __asm __volatile (LOCK_PREFIX "andw %1, %w0" \ + __asm __volatile (LOCK_PREFIX "andw %w1, %0" \ : "=m" (*mem) \ : "ir" (mask), "m" (*mem)); \ else if (sizeof (*mem) == 4) \ @@ -452,7 +452,7 @@ typedef uintmax_t uatomic_max_t; : "=m" (*mem) \ : "ir" (mask), "m" (*mem)); \ else \ - __asm __volatile (LOCK_PREFIX "andq %1, %q0" \ + __asm __volatile (LOCK_PREFIX "andq %q1, %0" \ : "=m" (*mem) \ : "ir" (mask), "m" (*mem)); \ } while (0) @@ -466,7 +466,7 @@ typedef uintmax_t uatomic_max_t; : "iq" (mask), "m" (*mem), \ "i" (offsetof (tcbhead_t, multiple_threads))); \ else if (sizeof (*mem) == 2) \ - __asm __volatile (lock "orw %1, %w0" \ + __asm __volatile (lock "orw %w1, %0" \ : "=m" (*mem) \ : "ir" (mask), "m" (*mem), \ "i" (offsetof (tcbhead_t, multiple_threads))); \ @@ -476,7 +476,7 @@ typedef uintmax_t uatomic_max_t; : "ir" (mask), "m" (*mem), \ "i" (offsetof (tcbhead_t, multiple_threads))); \ else \ - __asm __volatile (lock "orq %1, %q0" \ + __asm __volatile (lock "orq %q1, %0" \ : "=m" (*mem) \ : "ir" (mask), "m" (*mem), \ "i" (offsetof (tcbhead_t, multiple_threads))); \ |