< prev index next >

src/hotspot/os_cpu/solaris_sparc/atomic_solaris_sparc.hpp

Print this page
rev 47321 : [mq]: Atomic_loadstore

*** 25,50 **** #ifndef OS_CPU_SOLARIS_SPARC_VM_ATOMIC_SOLARIS_SPARC_HPP #define OS_CPU_SOLARIS_SPARC_VM_ATOMIC_SOLARIS_SPARC_HPP // Implementation of class atomic - inline void Atomic::store (jbyte store_value, jbyte* dest) { *dest = store_value; } - inline void Atomic::store (jshort store_value, jshort* dest) { *dest = store_value; } - inline void Atomic::store (jint store_value, jint* dest) { *dest = store_value; } - inline void Atomic::store_ptr(intptr_t store_value, intptr_t* dest) { *dest = store_value; } - inline void Atomic::store_ptr(void* store_value, void* dest) { *(void**)dest = store_value; } - - inline void Atomic::store (jbyte store_value, volatile jbyte* dest) { *dest = store_value; } - inline void Atomic::store (jshort store_value, volatile jshort* dest) { *dest = store_value; } - inline void Atomic::store (jint store_value, volatile jint* dest) { *dest = store_value; } - inline void Atomic::store_ptr(intptr_t store_value, volatile intptr_t* dest) { *dest = store_value; } - inline void Atomic::store_ptr(void* store_value, volatile void* dest) { *(void* volatile *)dest = store_value; } - - inline void Atomic::store(jlong store_value, jlong* dest) { *dest = store_value; } - inline void Atomic::store(jlong store_value, volatile jlong* dest) { *dest = store_value; } - inline jlong Atomic::load(const volatile jlong* src) { return *src; } - // Implement ADD using a CAS loop. template<size_t byte_size> struct Atomic::PlatformAdd VALUE_OBJ_CLASS_SPEC { template<typename I, typename D> inline D operator()(I add_value, D volatile* dest) const { --- 25,34 ----
< prev index next >