src/hotspot/os_cpu/solaris_x86/atomic_solaris_x86.hpp
changeset 47552 8a3599d60996
parent 47216 71c04702a3d5
child 47578 09c41c4913d9
equal deleted inserted replaced
47551:4d034d861e13 47552:8a3599d60996
    36 inline void Atomic::store    (jbyte    store_value, volatile jbyte*    dest) { *dest = store_value; }
    36 inline void Atomic::store    (jbyte    store_value, volatile jbyte*    dest) { *dest = store_value; }
    37 inline void Atomic::store    (jshort   store_value, volatile jshort*   dest) { *dest = store_value; }
    37 inline void Atomic::store    (jshort   store_value, volatile jshort*   dest) { *dest = store_value; }
    38 inline void Atomic::store    (jint     store_value, volatile jint*     dest) { *dest = store_value; }
    38 inline void Atomic::store    (jint     store_value, volatile jint*     dest) { *dest = store_value; }
    39 inline void Atomic::store_ptr(intptr_t store_value, volatile intptr_t* dest) { *dest = store_value; }
    39 inline void Atomic::store_ptr(intptr_t store_value, volatile intptr_t* dest) { *dest = store_value; }
    40 inline void Atomic::store_ptr(void*    store_value, volatile void*     dest) { *(void* volatile *)dest = store_value; }
    40 inline void Atomic::store_ptr(void*    store_value, volatile void*     dest) { *(void* volatile *)dest = store_value; }
    41 
       
    42 inline void Atomic::inc    (volatile jint*     dest) { (void)add    (1, dest); }
       
    43 inline void Atomic::inc_ptr(volatile intptr_t* dest) { (void)add_ptr(1, dest); }
       
    44 inline void Atomic::inc_ptr(volatile void*     dest) { (void)add_ptr(1, dest); }
       
    45 
       
    46 inline void Atomic::dec    (volatile jint*     dest) { (void)add    (-1, dest); }
       
    47 inline void Atomic::dec_ptr(volatile intptr_t* dest) { (void)add_ptr(-1, dest); }
       
    48 inline void Atomic::dec_ptr(volatile void*     dest) { (void)add_ptr(-1, dest); }
       
    49 
    41 
    50 // For Sun Studio - implementation is in solaris_x86_64.il.
    42 // For Sun Studio - implementation is in solaris_x86_64.il.
    51 
    43 
    52 extern "C" {
    44 extern "C" {
    53   jint _Atomic_add(jint add_value, volatile jint* dest);
    45   jint _Atomic_add(jint add_value, volatile jint* dest);