natObject.cc (X86 compare_and_swap): Use +m constraint.
authorBryce McKinlay <bryce@waitaki.otago.ac.nz>
Fri, 25 Jan 2002 02:53:37 +0000 (02:53 +0000)
committerBryce McKinlay <bryce@gcc.gnu.org>
Fri, 25 Jan 2002 02:53:37 +0000 (02:53 +0000)
2002-01-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

* java/lang/natObject.cc (X86 compare_and_swap): Use +m constraint.

From-SVN: r49198

libjava/ChangeLog
libjava/java/lang/natObject.cc

index 7db8af50acde50c3bdc13a811cf7745ec18f8c61..8cef7e742dc3ec455a397296be126d1616c83d29 100644 (file)
@@ -1,3 +1,7 @@
+2002-01-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
+
+       * java/lang/natObject.cc (X86 compare_and_swap): Use +m constraint.
+
 2002-01-24  Per Bothner  <per@bothner.com>
 
        * verify.cc (is_assignable_from_slow): If target is an interface,
index 816268c4f37e9a09e2c11b83e0394d9515fabe28..bf38433a758bfa8d545b1995f7336690be6ebda3 100644 (file)
@@ -327,8 +327,9 @@ typedef size_t obj_addr_t;  /* Integer type big enough for object   */
   {
     char result;
     __asm__ __volatile__("lock; cmpxchgl %2, %0; setz %1"
-               : "=m"(*(addr)), "=q"(result)
-               : "r" (new_val), "0"(*(addr)), "a"(old) : "memory");
+               : "+m"(*(addr)), "=q"(result)
+               : "r" (new_val), "a"(old)
+               : "memory");
     return (bool) result;
   }