|
template<typename T , enable_if_t< is_metal_atomic< T >, bool > = true> |
METAL_FUNC T | mlx_atomic_load_explicit (device mlx_atomic< T > *object, size_t offset) |
|
template<typename T , enable_if_t< is_metal_atomic< T >, bool > = true> |
METAL_FUNC void | mlx_atomic_store_explicit (device mlx_atomic< T > *object, T val, size_t offset) |
|
template<typename T , enable_if_t< is_metal_atomic< T >, bool > = true> |
METAL_FUNC void | mlx_atomic_fetch_and_explicit (device mlx_atomic< T > *object, T val, size_t offset) |
|
template<typename T , enable_if_t< is_metal_atomic< T >, bool > = true> |
METAL_FUNC void | mlx_atomic_fetch_or_explicit (device mlx_atomic< T > *object, T val, size_t offset) |
|
template<typename T , enable_if_t< is_metal_atomic< T >, bool > = true> |
METAL_FUNC void | mlx_atomic_fetch_min_explicit (device mlx_atomic< T > *object, T val, size_t offset) |
|
template<typename T , enable_if_t< is_metal_atomic< T >, bool > = true> |
METAL_FUNC void | mlx_atomic_fetch_max_explicit (device mlx_atomic< T > *object, T val, size_t offset) |
|
template<typename T , enable_if_t< is_metal_atomic< T >, bool > = true> |
METAL_FUNC void | mlx_atomic_fetch_add_explicit (device mlx_atomic< T > *object, T val, size_t offset) |
|
template<typename T , enable_if_t< is_metal_atomic< T >, bool > = true> |
METAL_FUNC void | mlx_atomic_fetch_mul_explicit (device mlx_atomic< T > *object, T val, size_t offset) |
|
template<typename T , enable_if_t< is_metal_atomic< T >, bool > = true> |
METAL_FUNC bool | mlx_atomic_compare_exchange_weak_explicit (device mlx_atomic< T > *object, thread T *expected, T val, size_t offset) |
|
template<> |
METAL_FUNC void | mlx_atomic_fetch_min_explicit< float > (device mlx_atomic< float > *object, float val, size_t offset) |
|
template<> |
METAL_FUNC void | mlx_atomic_fetch_max_explicit< float > (device mlx_atomic< float > *object, float val, size_t offset) |
|
template<typename T , enable_if_t<!is_metal_atomic< T >, bool > = true> |
METAL_FUNC bool | mlx_atomic_compare_exchange_weak_explicit (device mlx_atomic< T > *object, thread uint *expected, uint val, size_t offset) |
|