summaryrefslogtreecommitdiffstats
path: root/libjava/java
diff options
context:
space:
mode:
authorbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>2002-01-25 02:53:37 +0000
committerbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>2002-01-25 02:53:37 +0000
commitbe15949e872c275edf463f1bce15327f043d64c1 (patch)
tree7e945f1c5b17338b0ca5702853d57c8c99c75d75 /libjava/java
parent68e9dcea6532958574258ca188e5c19c957d7db9 (diff)
downloadppe42-gcc-be15949e872c275edf463f1bce15327f043d64c1.tar.gz
ppe42-gcc-be15949e872c275edf463f1bce15327f043d64c1.zip
2002-01-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/lang/natObject.cc (X86 compare_and_swap): Use +m constraint. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@49198 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java')
-rw-r--r--libjava/java/lang/natObject.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/libjava/java/lang/natObject.cc b/libjava/java/lang/natObject.cc
index 816268c4f37..bf38433a758 100644
--- a/libjava/java/lang/natObject.cc
+++ b/libjava/java/lang/natObject.cc
@@ -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;
}
OpenPOWER on IntegriCloud