< prev index next >

src/hotspot/share/gc/shared/barrierSet.hpp

Print this page




 298     template <typename T>
 299     static void oop_store_not_in_heap(T* addr, oop value) {
 300       Raw::oop_store(addr, value);
 301     }
 302 
 303     template <typename T>
 304     static oop oop_atomic_cmpxchg_not_in_heap(oop new_value, T* addr, oop compare_value) {
 305       return Raw::oop_atomic_cmpxchg(new_value, addr, compare_value);
 306     }
 307 
 308     template <typename T>
 309     static oop oop_atomic_xchg_not_in_heap(oop new_value, T* addr) {
 310       return Raw::oop_atomic_xchg(new_value, addr);
 311     }
 312 
 313     // Clone barrier support
 314     static void clone_in_heap(oop src, oop dst, size_t size) {
 315       Raw::clone(src, dst, size);
 316     }
 317 




 318     static oop resolve(oop obj) {
 319       return Raw::resolve(obj);
 320     }
 321   };
 322 };
 323 
 324 template<typename T>
 325 inline T* barrier_set_cast(BarrierSet* bs) {
 326   assert(bs->is_a(BarrierSet::GetName<T>::value), "wrong type of barrier set");
 327   return static_cast<T*>(bs);
 328 }
 329 
 330 #endif // SHARE_GC_SHARED_BARRIERSET_HPP


 298     template <typename T>
 299     static void oop_store_not_in_heap(T* addr, oop value) {
 300       Raw::oop_store(addr, value);
 301     }
 302 
 303     template <typename T>
 304     static oop oop_atomic_cmpxchg_not_in_heap(oop new_value, T* addr, oop compare_value) {
 305       return Raw::oop_atomic_cmpxchg(new_value, addr, compare_value);
 306     }
 307 
 308     template <typename T>
 309     static oop oop_atomic_xchg_not_in_heap(oop new_value, T* addr) {
 310       return Raw::oop_atomic_xchg(new_value, addr);
 311     }
 312 
 313     // Clone barrier support
 314     static void clone_in_heap(oop src, oop dst, size_t size) {
 315       Raw::clone(src, dst, size);
 316     }
 317 
 318     static void value_copy_in_heap(void* src, void* dst, ValueKlass* md) {
 319       Raw::value_copy(src, dst, md);
 320     }
 321 
 322     static oop resolve(oop obj) {
 323       return Raw::resolve(obj);
 324     }
 325   };
 326 };
 327 
 328 template<typename T>
 329 inline T* barrier_set_cast(BarrierSet* bs) {
 330   assert(bs->is_a(BarrierSet::GetName<T>::value), "wrong type of barrier set");
 331   return static_cast<T*>(bs);
 332 }
 333 
 334 #endif // SHARE_GC_SHARED_BARRIERSET_HPP
< prev index next >