--- a/hotspot/src/share/vm/runtime/atomic.hpp Fri Apr 11 09:56:35 2008 -0400
+++ b/hotspot/src/share/vm/runtime/atomic.hpp Sun Apr 13 17:43:42 2008 -0400
@@ -55,7 +55,10 @@
static void dec_ptr(volatile void* dest);
// Performs atomic exchange of *dest with exchange_value. Returns old prior value of *dest.
- static jint xchg (jint exchange_value, volatile jint* dest);
+ static jint xchg(jint exchange_value, volatile jint* dest);
+ static unsigned int xchg(unsigned int exchange_value,
+ volatile unsigned int* dest);
+
static intptr_t xchg_ptr(intptr_t exchange_value, volatile intptr_t* dest);
static void* xchg_ptr(void* exchange_value, volatile void* dest);
@@ -65,6 +68,11 @@
static jbyte cmpxchg (jbyte exchange_value, volatile jbyte* dest, jbyte compare_value);
static jint cmpxchg (jint exchange_value, volatile jint* dest, jint compare_value);
static jlong cmpxchg (jlong exchange_value, volatile jlong* dest, jlong compare_value);
+
+ static unsigned int cmpxchg(unsigned int exchange_value,
+ volatile unsigned int* dest,
+ unsigned int compare_value);
+
static intptr_t cmpxchg_ptr(intptr_t exchange_value, volatile intptr_t* dest, intptr_t compare_value);
static void* cmpxchg_ptr(void* exchange_value, volatile void* dest, void* compare_value);
};