diff options
Diffstat (limited to 'libjava/sysdep/i386/locks.h')
-rw-r--r-- | libjava/sysdep/i386/locks.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libjava/sysdep/i386/locks.h b/libjava/sysdep/i386/locks.h index a9501ae..0e2cd79 100644 --- a/libjava/sysdep/i386/locks.h +++ b/libjava/sysdep/i386/locks.h @@ -25,8 +25,8 @@ compare_and_swap(volatile obj_addr_t *addr, { char result; __asm__ __volatile__("lock; cmpxchgl %2, %0; setz %1" - : "+m"(*(addr)), "=q"(result) - : "r" (new_val), "a"(old) + : "=m"(*addr), "=q"(result) + : "r" (new_val), "a"(old), "m"(*addr) : "memory"); return (bool) result; } |