--- a/src/os_cpu/linux_x86/vm/orderAccess_linux_x86.inline.hpp Mon May 02 14:53:49 2011 -0700
+++ b/src/os_cpu/linux_x86/vm/orderAccess_linux_x86.inline.hpp Tue May 03 18:43:18 2011 +0400
@@ -93,7 +93,7 @@ inline void OrderAccess::release_sto
inline void OrderAccess::store_fence(jbyte* p, jbyte v) {
__asm__ volatile ( "xchgb (%2),%0"
- : "=r" (v)
+ : "=q" (v)
: "0" (v), "r" (p)
: "memory");
}
@@ -155,7 +155,7 @@ inline void OrderAccess::store_ptr_f
// Must duplicate definitions instead of calling store_fence because we don't want to cast away volatile.
inline void OrderAccess::release_store_fence(volatile jbyte* p, jbyte v) {
__asm__ volatile ( "xchgb (%2),%0"
- : "=r" (v)
+ : "=q" (v)
: "0" (v), "r" (p)
: "memory");
}