diff src/share/vm/runtime/atomic.hpp @ 113:ba764ed4b6f2

6420645: Create a vm that uses compressed oops for up to 32gb heapsizes Summary: Compressed oops in instances, arrays, and headers. Code contributors are coleenp, phh, never, swamyv Reviewed-by: jmasa, kamg, acorn, tbell, kvn, rasbold
author coleenp
date Sun, 13 Apr 2008 17:43:42 -0400
parents a61af66fc99e
children d1605aabd0a1
line wrap: on
line diff
--- a/src/share/vm/runtime/atomic.hpp	Fri Apr 11 09:56:35 2008 -0400
+++ b/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);
 };