equal
deleted
inserted
replaced
263 |
263 |
264 template<> |
264 template<> |
265 template<typename T> |
265 template<typename T> |
266 inline T Atomic::PlatformLoad<8>::operator()(T const volatile* src) const { |
266 inline T Atomic::PlatformLoad<8>::operator()(T const volatile* src) const { |
267 STATIC_ASSERT(8 == sizeof(T)); |
267 STATIC_ASSERT(8 == sizeof(T)); |
268 volatile jlong dest; |
268 volatile int64_t dest; |
269 os::atomic_copy64(reinterpret_cast<const volatile jlong*>(src), reinterpret_cast<volatile jlong*>(&dest)); |
269 os::atomic_copy64(reinterpret_cast<const volatile int64_t*>(src), reinterpret_cast<volatile int64_t*>(&dest)); |
270 return PrimitiveConversions::cast<T>(dest); |
270 return PrimitiveConversions::cast<T>(dest); |
271 } |
271 } |
272 |
272 |
273 template<> |
273 template<> |
274 template<typename T> |
274 template<typename T> |
275 inline void Atomic::PlatformStore<8>::operator()(T store_value, |
275 inline void Atomic::PlatformStore<8>::operator()(T store_value, |
276 T volatile* dest) const { |
276 T volatile* dest) const { |
277 STATIC_ASSERT(8 == sizeof(T)); |
277 STATIC_ASSERT(8 == sizeof(T)); |
278 os::atomic_copy64(reinterpret_cast<const volatile jlong*>(&store_value), reinterpret_cast<volatile jlong*>(dest)); |
278 os::atomic_copy64(reinterpret_cast<const volatile int64_t*>(&store_value), reinterpret_cast<volatile int64_t*>(dest)); |
279 } |
279 } |
280 |
280 |
281 #endif // OS_CPU_BSD_ZERO_VM_ATOMIC_BSD_ZERO_HPP |
281 #endif // OS_CPU_BSD_ZERO_VM_ATOMIC_BSD_ZERO_HPP |