Public API

Namespaces

eastl

Functions

EA_DISABLE_ALL_VC_WARNINGS overloadIt is expected that the application define the following versions of operator new for the application
EA_DISABLE_CLANG_WARNINGmisaligned atomic operation may incur significant performance penalty The above warning is emitted in earlier versions of clang incorrectly
EA_DISABLE_SN_WARNING
EA_DISABLE_VC_WARNING overload'class' : multiple assignment operators specified
EA_DISABLE_VC_WARNING overload4275 - non dll-interface class used as base for DLL-interface classkey 'identifier'
EA_DISABLE_VC_WARNING overloadThere is no warning number 'number'
EA_DISABLE_VC_WARNING overloadcopy constructor could not be generated because a base class copy constructor is inaccessible or deleted
EA_DISABLE_VC_WARNING overloadIf the user has specified that we use std iterator categories instead of EASTL iterator categories, then #include <iterator>.
EA_DISABLE_VC_WARNING overloadtrue or false.
EA_DISABLE_VC_WARNING overload4530 - C++ exception handler used, but unwind semantics are not enabled
EA_DISABLE_VC_WARNING overload4619 - There is no warning number 'number'
EA_DISABLE_VC_WARNING overload4345 - Behavior change: an object of POD type constructed with an initializer of the form () will be default-initialized 4244 - Argument: conversion from 'int' to 'const eastl::vector<T>::value_type', possible loss of data 4127 - Conditional expression is constant
EA_RESTORE_ALL_VC_WARNINGS overload
EA_RESTORE_CLANG_WARNING
EA_RESTORE_SN_WARNING overload
EA_RESTORE_VC_WARNING overloadSome compilers (e.g
EASTL_DEBUG_BREAKEASTL_DEBUG_BREAK / EASTL_DEBUG_BREAK_OVERRIDE
operator new[]
operator!=
operator<
operator==global operators
Vsnprintf16

Mentioned in

Vsnprintf32
Vsnprintf8User-provided functions.

Defines

Defines (allocator.h)

pName EASTL_ALLOCATOR_DEFAULT_NAME

Mentioned in:

Defines (allocator_malloc.h)

EASTL_ALIGNED_MALLOC_AVAILABLE 0

EASTL_ALIGNED_MALLOC_AVAILABLE

Identifies if the standard library provides a built-in aligned version of malloc. Defined as 0 or 1, depending on the standard library or platform availability. None of the viable C functions provides for an aligned malloc with offset, so we don't consider that supported in any case.

Options for aligned allocations: C11 aligned_alloc http://linux.die.net/man/3/aligned_alloc glibc memalign http://linux.die.net/man/3/posix_memalign Posix posix_memalign http://pubs.opengroup.org/onlinepubs/000095399/functions/posix_memalign.html VC++ _aligned_malloc http://msdn.microsoft.com/en-us/library/8z34s9c6%28VS.80%29.aspx This is not suitable, since it has a limitation that you need to free via _aligned_free.

Defines (atomic.h)

EASTL_ATOMIC_CLASS_IMPL(type,base,valueType,differenceType)

EASTL_ATOMIC_USING_ATOMIC_BASE(type)
public:

using Base::operator=;
using Base::store;
using Base::load;
using Base::exchange;
using Base::compare_exchange_weak;
using Base::compare_exchange_strong;

public:

operator type() const volatile EA_NOEXCEPT
{
EASTL_ATOMIC_STATIC_ASSERT_VOLATILE_MEM_FN(T);
}

operator type() const EA_NOEXCEPT
{
return load(eastl::memory_order_seq_cst);
}

EASTL_ATOMIC_USING_ATOMIC_INTEGRAL()
public:

using Base::fetch_add;
using Base::add_fetch;

using Base::fetch_sub;
using Base::sub_fetch;

using Base::fetch_and;
using Base::and_fetch;

using Base::fetch_or;
using Base::or_fetch;

using Base::fetch_xor;
using Base::xor_fetch;

using Base::operator++;
using Base::operator--;
using Base::operator+=;
using Base::operator-=;
using Base::operator&=;
using Base::operator|=;
using Base::operator^=;

EASTL_ATOMIC_USING_ATOMIC_POINTER()
public:

using Base::fetch_add;
using Base::add_fetch;
using Base::fetch_sub;
using Base::sub_fetch;

using Base::operator++;
using Base::operator--;
using Base::operator+=;
using Base::operator-=;

Defines (bitset.h)

BITSET_WORD_COUNT(nBitCount,WordType)
(nBitCount == 0 ? 1 : ((nBitCount - 1) / (8 * sizeof(WordType)) + 1))

To consider: Enable this for backwards compatibility with any user code that might be using BitsetWordType: #define BitsetWordType EASTL_BITSET_WORD_TYPE_DEFAULT BITSET_WORD_COUNT

Defines the number of words we use, based on the number of bits. nBitCount refers to the number of bits in a bitset. WordType refers to the type of integer word which stores bitet data. By default it is BitsetWordType.

EASTL_DISABLE_BITSET_ARRAYBOUNDS_WARNING 0

EASTL_DISABLE_BITSET_ARRAYBOUNDS_WARNING Before GCC 4.7 the '-Warray-bounds' buggy and was very likely to issue false positives for loops that are difficult to evaluate. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=45978

EASTL_BITSET_COUNT_STRING "\0\1\1\2\1\2\2\3\1\2\2\3\2\3\3\4"

const static char kBitsPerUint16[16] = { 0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4 };

Defines (bitvector.h)

EASTL_BITVECTOR_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " bitvector"

EASTL_BITVECTOR_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name.

EASTL_BITVECTOR_DEFAULT_ALLOCATOR allocator_type(EASTL_BITVECTOR_DEFAULT_NAME)

EASTL_BITVECTOR_DEFAULT_ALLOCATOR

Defines (fixed_tuple_vector.h)

EASTL_FIXED_TUPLE_VECTOR_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_tuple_vector"

EASTL_FIXED_TUPLE_VECTOR_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name. In the case of fixed-size containers, the allocator name always refers to overflow allocations.

EASTL_FIXED_TUPLE_VECTOR_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_TUPLE_VECTOR_DEFAULT_NAME)

EASTL_FIXED_TUPLE_VECTOR_DEFAULT_ALLOCATOR

Defines (list_map.h)

EASTL_LIST_MAP_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " list_map"

EASTL_MAP_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name.

EASTL_LIST_MAP_DEFAULT_ALLOCATOR allocator_type(EASTL_LIST_MAP_DEFAULT_NAME)

EASTL_MAP_DEFAULT_ALLOCATOR

Defines (lru_cache.h)

EASTL_LRUCACHE_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " lru_cache"

EASTL_LRUCACHE_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name.

EASTL_LRUCACHE_DEFAULT_ALLOCATOR allocator_type(EASTL_LRUCACHE_DEFAULT_NAME)

EASTL_LRUCACHE_DEFAULT_ALLOCATOR

Defines (ring_buffer.h)

EASTL_RING_BUFFER_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " ring_buffer"

EASTL_RING_BUFFER_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name.

EASTL_RING_BUFFER_DEFAULT_ALLOCATOR allocator_type(EASTL_RING_BUFFER_DEFAULT_NAME)

EASTL_RING_BUFFER_DEFAULT_ALLOCATOR

Defines (tuple_vector.h)

EASTL_TUPLE_VECTOR_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " tuple-vector"

EASTL_TUPLE_VECTOR_DEFAULT_ALLOCATOR allocator_type(EASTL_TUPLE_VECTOR_DEFAULT_NAME)

Defines (chrono.h)

EASTL_NS_PER_TICK 100

Defines (deque.h)

EASTL_DEQUE_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " deque"

EASTL_DEQUE_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name.

EASTL_DEQUE_DEFAULT_ALLOCATOR allocator_type(EASTL_DEQUE_DEFAULT_NAME)

EASTL_DEQUE_DEFAULT_ALLOCATOR

DEQUE_DEFAULT_SUBARRAY_SIZE(T)
((sizeof(T) <= 4) ? 64 : ((sizeof(T) <= 8) ? 32 : ((sizeof(T) <= 16) ? 16 : ((sizeof(T) <= 32) ? 8 : 4))))

DEQUE_DEFAULT_SUBARRAY_SIZE

Defines the default number of items in a subarray. Note that the user has the option of specifying the subarray size in the deque template declaration.

Defines (fixed_function.h)

EASTL_INTERNAL_FIXED_FUNCTION_STATIC_ASSERT(TYPE)
static_assert(sizeof(TYPE) <= sizeof(typename Base::FunctorStorageType),
"fixed_function local buffer is not large enough to hold the callable object.")

EASTL_INTERNAL_FIXED_FUNCTION_NEW_SIZE_STATIC_ASSERT(NEW_SIZE_IN_BYTES)
static_assert(SIZE_IN_BYTES >= NEW_SIZE_IN_BYTES,
"fixed_function local buffer is not large enough to hold the new fixed_function type.")

Defines (fixed_hash_map.h)

EASTL_FIXED_HASH_MAP_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_hash_map"

EASTL_FIXED_HASH_MULTIMAP_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_hash_multimap"

EASTL_FIXED_HASH_MAP_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_HASH_MAP_DEFAULT_NAME)

EASTL_FIXED_HASH_MULTIMAP_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_HASH_MULTIMAP_DEFAULT_NAME)

Defines (fixed_hash_set.h)

EASTL_FIXED_HASH_SET_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_hash_set"

EASTL_FIXED_HASH_MULTISET_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_hash_multiset"

EASTL_FIXED_HASH_SET_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_HASH_SET_DEFAULT_NAME)

EASTL_FIXED_HASH_MULTISET_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_HASH_MULTISET_DEFAULT_NAME)

Defines (fixed_list.h)

EASTL_FIXED_LIST_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_list"

EASTL_FIXED_LIST_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name. In the case of fixed-size containers, the allocator name always refers to overflow allocations.

EASTL_FIXED_LIST_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_LIST_DEFAULT_NAME)

EASTL_FIXED_LIST_DEFAULT_ALLOCATOR

Defines (fixed_map.h)

EASTL_FIXED_MAP_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_map"

EASTL_FIXED_MAP_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name. In the case of fixed-size containers, the allocator name always refers to overflow allocations.

EASTL_FIXED_MULTIMAP_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_multimap"

EASTL_FIXED_MAP_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_MAP_DEFAULT_NAME)

EASTL_FIXED_MAP_DEFAULT_ALLOCATOR EASTL_FIXED_MULTIMAP_DEFAULT_ALLOCATOR

EASTL_FIXED_MULTIMAP_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_MULTIMAP_DEFAULT_NAME)

Defines (fixed_set.h)

EASTL_FIXED_SET_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_set"

EASTL_FIXED_SET_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name. In the case of fixed-size containers, the allocator name always refers to overflow allocations.

EASTL_FIXED_MULTISET_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_multiset"

EASTL_FIXED_SET_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_SET_DEFAULT_NAME)

EASTL_FIXED_SET_DEFAULT_ALLOCATOR EASTL_FIXED_MULTISET_DEFAULT_ALLOCATOR

EASTL_FIXED_MULTISET_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_MULTISET_DEFAULT_NAME)

Defines (fixed_slist.h)

EASTL_FIXED_SLIST_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_slist"

EASTL_FIXED_SLIST_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name. In the case of fixed-size containers, the allocator name always refers to overflow allocations.

EASTL_FIXED_SLIST_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_SLIST_DEFAULT_NAME)

EASTL_FIXED_SLIST_DEFAULT_ALLOCATOR

Defines (fixed_string.h)

EASTL_FIXED_STRING_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_string"

EASTL_FIXED_STRING_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name. In the case of fixed-size containers, the allocator name always refers to overflow allocations.

Defines (fixed_vector.h)

EASTL_FIXED_VECTOR_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " fixed_vector"

EASTL_FIXED_VECTOR_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name. In the case of fixed-size containers, the allocator name always refers to overflow allocations.

EASTL_FIXED_VECTOR_DEFAULT_ALLOCATOR overflow_allocator_type(EASTL_FIXED_VECTOR_DEFAULT_NAME)

EASTL_FIXED_VECTOR_DEFAULT_ALLOCATOR

Defines (hash_map.h)

EASTL_HASH_MAP_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " hash_map"

EASTL_HASH_MAP_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name.

EASTL_HASH_MULTIMAP_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " hash_multimap"

EASTL_HASH_MULTIMAP_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name.

EASTL_HASH_MAP_DEFAULT_ALLOCATOR allocator_type(EASTL_HASH_MAP_DEFAULT_NAME)

EASTL_HASH_MAP_DEFAULT_ALLOCATOR

EASTL_HASH_MULTIMAP_DEFAULT_ALLOCATOR allocator_type(EASTL_HASH_MULTIMAP_DEFAULT_NAME)

EASTL_HASH_MULTIMAP_DEFAULT_ALLOCATOR

Defines (hash_set.h)

EASTL_HASH_SET_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " hash_set"

EASTL_HASH_SET_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name.

EASTL_HASH_MULTISET_DEFAULT_NAME EASTL_DEFAULT_NAME_PREFIX " hash_multiset"

EASTL_HASH_MULTISET_DEFAULT_NAME

Defines a default container name in the absence of a user-provided name.

EASTL_HASH_SET_DEFAULT_ALLOCATOR allocator_type(EASTL_HASH_SET_DEFAULT_NAME)

EASTL_HASH_SET_DEFAULT_ALLOCATOR

EASTL_HASH_MULTISET_DEFAULT_ALLOCATOR allocator_type(EASTL_HASH_MULTISET_DEFAULT_NAME)

EASTL_HASH_MULTISET_DEFAULT_ALLOCATOR

Defines (arch_add_fetch.h)

EASTL_ARCH_ATOMIC_ADD_FETCH_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_ADD_FETCH_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_ADD_FETCH_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_ADD_FETCH_SEQ_CST_128_AVAILABLE 0

Defines (arch_and_fetch.h)

EASTL_ARCH_ATOMIC_AND_FETCH_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_AND_FETCH_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_AND_FETCH_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_AND_FETCH_SEQ_CST_128_AVAILABLE 0

Defines (arch_cmpxchg_strong.h)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_*_*_N(type, bool ret, type * ptr, type * expected, type desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_8_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_8_AVAILABLE

void EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_*_N(type, bool ret, type * ptr, type * expected, type desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_8(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_8_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_8_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_8(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_8(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_8_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_8_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_8(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_8(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_8_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_8_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_8(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_8(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_8_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_8_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_8(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_8(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_16_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_16_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_16(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_16_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_16_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_16(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_16(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_16_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_16_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_16(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_16(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_16_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_16_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_16(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_16(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_16_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_16_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_16(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_16(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_32_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_32_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_32(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_32_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_32_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_32(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_32(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_32_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_32_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_32(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_32(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_32_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_32_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_32(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_32(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_32_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_32_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_32(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_32(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_64_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_64_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_64(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_64_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_64_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_64(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_64(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_64_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_64_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_64(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_64(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_64_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_64_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_64(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_64(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_64_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_64_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_64(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_64(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_128_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_128_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_128(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_128_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_128_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_128(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_128(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_128_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_128_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_128(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_128(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_128_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_128_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_128(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_128(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_128_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_128_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_128(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_128(type, ret, ptr, expected, desired)

Defines (arch_cmpxchg_weak.h)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_*_*_N(type, bool ret, type * ptr, type * expected, type desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_8_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_8_AVAILABLE

void EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_*_N(type, bool ret, type * ptr, type * expected, type desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_8(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_8_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_8_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_8(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_8(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_8_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_8_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_8(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_8(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_8_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_8_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_8(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_8(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_8_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_8_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_8(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_8(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_16_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_16_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_16(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_16_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_16_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_16(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_16(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_16_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_16_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_16(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_16(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_16_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_16_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_16(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_16(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_16_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_16_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_16(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_16(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_32_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_32_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_32(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_32_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_32_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_32(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_32(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_32_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_32_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_32(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_32(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_32_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_32_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_32(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_32(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_32_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_32_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_32(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_32(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_64_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_64_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_64(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_64_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_64_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_64(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_64(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_64_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_64_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_64(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_64(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_64_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_64_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_64(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_64(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_64_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_64_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_64(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_64(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_128_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_128_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_128(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_128_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_128_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_128(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_128(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_128_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_128_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_128(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_128(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_128_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_128_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_128(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_128(type, ret, ptr, expected, desired)

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_128_AVAILABLE EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_128_AVAILABLE

EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_128(type,ret,ptr,expected,desired)
EASTL_ARCH_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_128(type, ret, ptr, expected, desired)

Defines (arch_compiler_barrier.h)

EASTL_ARCH_ATOMIC_COMPILER_BARRIER_AVAILABLE 0

EASTL_ARCH_ATOMIC_COMPILER_BARRIER_DATA_DEPENDENCY_AVAILABLE 0

Defines (arch_cpu_pause.h)

EASTL_ARCH_ATOMIC_CPU_PAUSE_AVAILABLE 0

void EASTL_ARCH_ATOMIC_CPU_PAUSE()

Defines (arch_exchange.h)

EASTL_ARCH_ATOMIC_EXCHANGE_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_EXCHANGE_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_EXCHANGE_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_EXCHANGE_SEQ_CST_128_AVAILABLE 0

Defines (arch_fetch_add.h)

EASTL_ARCH_ATOMIC_FETCH_ADD_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_FETCH_ADD_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_FETCH_ADD_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_ADD_SEQ_CST_128_AVAILABLE 0

Defines (arch_fetch_and.h)

EASTL_ARCH_ATOMIC_FETCH_AND_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_FETCH_AND_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_FETCH_AND_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_AND_SEQ_CST_128_AVAILABLE 0

Defines (arch_fetch_or.h)

EASTL_ARCH_ATOMIC_FETCH_OR_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_FETCH_OR_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_FETCH_OR_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_OR_SEQ_CST_128_AVAILABLE 0

Defines (arch_fetch_sub.h)

EASTL_ARCH_ATOMIC_FETCH_SUB_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_FETCH_SUB_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_FETCH_SUB_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_SUB_SEQ_CST_128_AVAILABLE 0

Defines (arch_fetch_xor.h)

EASTL_ARCH_ATOMIC_FETCH_XOR_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_FETCH_XOR_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_FETCH_XOR_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_FETCH_XOR_SEQ_CST_128_AVAILABLE 0

Defines (arch_load.h)

EASTL_ARCH_ATOMIC_LOAD_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_LOAD_*_N(type, type ret, type * ptr)

EASTL_ARCH_ATOMIC_LOAD_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_READ_DEPENDS_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_READ_DEPENDS_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_LOAD_SEQ_CST_128_AVAILABLE 0

Defines (arch_memory_barrier.h)

EASTL_ARCH_ATOMIC_CPU_MB_AVAILABLE 0

void EASTL_ARCH_ATOMIC_CPU_MB()

EASTL_ARCH_ATOMIC_CPU_WMB_AVAILABLE 0

void EASTL_ARCH_ATOMIC_CPU_WMB()

EASTL_ARCH_ATOMIC_CPU_RMB_AVAILABLE 0

void EASTL_ARCH_ATOMIC_CPU_RMB()

Defines (arch_or_fetch.h)

EASTL_ARCH_ATOMIC_OR_FETCH_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_OR_FETCH_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_OR_FETCH_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_OR_FETCH_SEQ_CST_128_AVAILABLE 0

Defines (arch_signal_fence.h)

EASTL_ARCH_ATOMIC_SIGNAL_FENCE_RELAXED_AVAILABLE 0

EASTL_ARCH_ATOMIC_SIGNAL_FENCE_ACQUIRE_AVAILABLE 0

EASTL_ARCH_ATOMIC_SIGNAL_FENCE_RELEASE_AVAILABLE 0

EASTL_ARCH_ATOMIC_SIGNAL_FENCE_ACQ_REL_AVAILABLE 0

EASTL_ARCH_ATOMIC_SIGNAL_FENCE_SEQ_CST_AVAILABLE 0

Defines (arch_store.h)

EASTL_ARCH_ATOMIC_STORE_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_STORE_*_N(type, type * ptr, type val)

EASTL_ARCH_ATOMIC_STORE_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_STORE_SEQ_CST_128_AVAILABLE 0

Defines (arch_sub_fetch.h)

EASTL_ARCH_ATOMIC_SUB_FETCH_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_SUB_FETCH_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_SUB_FETCH_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_SUB_FETCH_SEQ_CST_128_AVAILABLE 0

Defines (arch_thread_fence.h)

EASTL_ARCH_ATOMIC_THREAD_FENCE_RELAXED_AVAILABLE 0

void EASTL_ARCH_ATOMIC_THREAD_FENCE_*()

EASTL_ARCH_ATOMIC_THREAD_FENCE_ACQUIRE_AVAILABLE 0

EASTL_ARCH_ATOMIC_THREAD_FENCE_RELEASE_AVAILABLE 0

EASTL_ARCH_ATOMIC_THREAD_FENCE_ACQ_REL_AVAILABLE 0

EASTL_ARCH_ATOMIC_THREAD_FENCE_SEQ_CST_AVAILABLE 0

Defines (arch_xor_fetch.h)

EASTL_ARCH_ATOMIC_XOR_FETCH_RELAXED_8_AVAILABLE 0

void EASTL_ARCH_ATOMIC_XOR_FETCH_*_N(type, type ret, type * ptr, type val)

EASTL_ARCH_ATOMIC_XOR_FETCH_ACQUIRE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_RELEASE_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_ACQ_REL_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_SEQ_CST_8_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_RELAXED_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_ACQUIRE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_RELEASE_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_ACQ_REL_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_SEQ_CST_16_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_RELAXED_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_ACQUIRE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_RELEASE_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_ACQ_REL_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_SEQ_CST_32_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_RELAXED_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_ACQUIRE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_RELEASE_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_ACQ_REL_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_SEQ_CST_64_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_RELAXED_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_ACQUIRE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_RELEASE_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_ACQ_REL_128_AVAILABLE 0

EASTL_ARCH_ATOMIC_XOR_FETCH_SEQ_CST_128_AVAILABLE 0

Defines (arch_arm_memory_barrier.h)

EASTL_ARCH_ATOMIC_CPU_MB()
EASTL_ARCH_ATOMIC_ARM_EMIT_DMB(EASTL_ARM_DMB_ISH)

void EASTL_ARCH_ATOMIC_CPU_MB()

EASTL_ARCH_ATOMIC_CPU_WMB()
EASTL_ARCH_ATOMIC_ARM_EMIT_DMB(EASTL_ARM_DMB_ISHST)

void EASTL_ARCH_ATOMIC_CPU_WMB()

EASTL_ARCH_ATOMIC_CPU_RMB()
EASTL_ARCH_ATOMIC_ARM_EMIT_DMB(EASTL_ARM_DMB_ISHLD)

void EASTL_ARCH_ATOMIC_CPU_RMB()

Defines (atomic_asserts.h)

EASTL_ATOMIC_STATIC_ASSERT_VOLATILE_MEM_FN(type)
static_assert(!eastl::is_same<type, type>::value, "eastl::atomic<T> : volatile eastl::atomic<T> is not what you expect! Read the docs in EASTL/atomic.h! Use the memory orders to access the atomic object!");

EASTL_ATOMIC_STATIC_ASSERT_INVALID_MEMORY_ORDER(type)
static_assert(!eastl::is_same<type, type>::value, "eastl::atomic<T> : invalid memory order for the given operation!");

EASTL_ATOMIC_STATIC_ASSERT_TYPE(type)
/** User Provided T must not be cv qualified */
static_assert(!eastl::is_const<type>::value, "eastl::atomic<T> : Template Typename T cannot be const!");
static_assert(!eastl::is_volatile<type>::value, "eastl::atomic<T> : Template Typename T cannot be volatile! Use the memory orders to access the underlying type for the guarantees you need.");
/** T must satisfy StandardLayoutType */
static_assert(eastl::is_standard_layout<type>::value, "eastl::atomic<T> : Must have standard layout!");
/** T must be TriviallyCopyable but it does not have to be TriviallyConstructible */
static_assert(eastl::is_trivially_copyable<type>::value, "eastl::atomci<T> : Template Typename T must be trivially copyable!");
static_assert(eastl::is_copy_constructible<type>::value, "eastl::atomic<T> : Template Typename T must be copy constructible!");
static_assert(eastl::is_move_constructible<type>::value, "eastl::atomic<T> : Template Typename T must be move constructible!");
static_assert(eastl::is_copy_assignable<type>::value, "eastl::atomic<T> : Template Typename T must be copy assignable!");
static_assert(eastl::is_move_assignable<type>::value, "eastl::atomic<T> : Template Typename T must be move assignable!");
static_assert(eastl::is_trivially_destructible<type>::value, "eastl::atomic<T> : Must be trivially destructible!");
static_assert(eastl::internal::is_atomic_lockfree_size<type>::value, "eastl::atomic<T> : Template Typename T must be a lockfree size!");

EASTL_ATOMIC_STATIC_ASSERT_TYPE_IS_OBJECT(type)
static_assert(eastl::is_object<type>::value, "eastl::atomic<T> : Template Typename T must be an object type!");

EASTL_ATOMIC_ASSERT_ALIGNED(alignment)
EASTL_ASSERT((alignment & (alignment - 1)) == 0);
EASTL_ASSERT((reinterpret_cast<uintptr_t>(this) & (alignment - 1)) == 0)

Defines (atomic_base_width.h)

EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits)
EA_PREPROCESSOR_JOIN(EASTL_ATOMIC_FIXED_WIDTH_TYPE_, bits)

NOTE:

T does not have to be trivially default constructible but it still has to be a trivially copyable type for the primary atomic template. Thus we must type pun into whatever storage type of the given fixed width the platform designates. This ensures T does not have to be trivially constructible.

EASTL_ATOMIC_STORE_FUNC_IMPL(op,bits)
EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits) fixedWidthDesired = EASTL_ATOMIC_TYPE_PUN_CAST(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits), desired);
EA_PREPROCESSOR_JOIN(op, bits)(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits),
EASTL_ATOMIC_TYPE_CAST(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits), this->GetAtomicAddress()),
fixedWidthDesired)

EASTL_ATOMIC_LOAD_FUNC_IMPL(op,bits)
EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits) retVal;
EA_PREPROCESSOR_JOIN(op, bits)(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits),
retVal,
EASTL_ATOMIC_TYPE_CAST(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits), this->GetAtomicAddress()));
return EASTL_ATOMIC_TYPE_PUN_CAST(T, retVal);

EASTL_ATOMIC_EXCHANGE_FUNC_IMPL(op,bits)
EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits) retVal;
EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits) fixedWidthDesired = EASTL_ATOMIC_TYPE_PUN_CAST(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits), desired);
EA_PREPROCESSOR_JOIN(op, bits)(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits),
retVal,
EASTL_ATOMIC_TYPE_CAST(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits), this->GetAtomicAddress()),
fixedWidthDesired);
return EASTL_ATOMIC_TYPE_PUN_CAST(T, retVal);

EASTL_ATOMIC_CMPXCHG_FUNC_IMPL(op,bits)
bool retVal;
EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits) fixedWidthDesired = EASTL_ATOMIC_TYPE_PUN_CAST(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits), desired);
EA_PREPROCESSOR_JOIN(op, bits)(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits),
retVal,
EASTL_ATOMIC_TYPE_CAST(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits), this->GetAtomicAddress()),
EASTL_ATOMIC_TYPE_CAST(EASTL_ATOMIC_BASE_FIXED_WIDTH_TYPE(bits), &expected),
fixedWidthDesired);
return retVal;

EASTL_ATOMIC_BASE_OP_JOIN(op,Order)
EA_PREPROCESSOR_JOIN(EA_PREPROCESSOR_JOIN(EASTL_ATOMIC_, op), Order)

EASTL_ATOMIC_BASE_CMPXCHG_FUNCS_IMPL(funcName,cmpxchgOp,bits)

EASTL_ATOMIC_BASE_CMPXCHG_WEAK_FUNCS_IMPL(bits)
EASTL_ATOMIC_BASE_CMPXCHG_FUNCS_IMPL(compare_exchange_weak, CMPXCHG_WEAK, bits)

EASTL_ATOMIC_BASE_CMPXCHG_STRONG_FUNCS_IMPL(bits)
EASTL_ATOMIC_BASE_CMPXCHG_FUNCS_IMPL(compare_exchange_strong, CMPXCHG_STRONG, bits)

EASTL_ATOMIC_BASE_WIDTH_SPECIALIZE(bytes,bits)

Defines (atomic_casts.h)

EASTL_ATOMIC_VOLATILE_CAST(ptr)
eastl::internal::AtomicVolatileCast((ptr))

NOTE:

These macros are meant to prevent inclusion hell. Also so that it fits with the style of the rest of the atomic macro implementation.

EASTL_ATOMIC_VOLATILE_INTEGRAL_CAST(IntegralType,ptr)
eastl::internal::AtomicVolatileIntegralCast<IntegralType>((ptr))

EASTL_ATOMIC_INTEGRAL_CAST(IntegralType,ptr)
eastl::internal::AtomicIntegralCast<IntegralType>((ptr))

EASTL_ATOMIC_VOLATILE_TYPE_CAST(ToType,ptr)
eastl::internal::AtomicVolatileTypeCast<ToType>((ptr))

EASTL_ATOMIC_TYPE_CAST(ToType,ptr)
eastl::internal::AtomicTypeCast<ToType>((ptr))

EASTL_ATOMIC_TYPE_PUN_CAST(PunType,fromType)
eastl::internal::AtomicTypePunCast<PunType>((fromType))

EASTL_ATOMIC_NEGATE_OPERAND(val)
eastl::internal::AtomicNegateOperand((val))

Defines (atomic_integral.h)

EASTL_ATOMIC_INTEGRAL_STATIC_ASSERT_FUNCS_IMPL(funcName)
template <typename Order>
T funcName(T arg, Order order) EA_NOEXCEPT
{
EASTL_ATOMIC_STATIC_ASSERT_INVALID_MEMORY_ORDER(T);
}

template <typename Order>
T funcName(T arg, Order order) volatile EA_NOEXCEPT
{
EASTL_ATOMIC_STATIC_ASSERT_VOLATILE_MEM_FN(T);
}

T funcName(T arg) volatile EA_NOEXCEPT
{
EASTL_ATOMIC_STATIC_ASSERT_VOLATILE_MEM_FN(T);
}

EASTL_ATOMIC_INTEGRAL_STATIC_ASSERT_INC_DEC_OPERATOR_IMPL(operatorOp)
T operator operatorOp() volatile EA_NOEXCEPT
{
EASTL_ATOMIC_STATIC_ASSERT_VOLATILE_MEM_FN(T);
}

T operator operatorOp(int) volatile EA_NOEXCEPT
{
EASTL_ATOMIC_STATIC_ASSERT_VOLATILE_MEM_FN(T);
}

EASTL_ATOMIC_INTEGRAL_STATIC_ASSERT_ASSIGNMENT_OPERATOR_IMPL(operatorOp)
T operator operatorOp(T arg) volatile EA_NOEXCEPT
{
EASTL_ATOMIC_STATIC_ASSERT_VOLATILE_MEM_FN(T);
}

EASTL_ATOMIC_INTEGRAL_FUNC_IMPL(op,bits)
T retVal;
EA_PREPROCESSOR_JOIN(op, bits)(T, retVal, this->GetAtomicAddress(), arg);
return retVal;

EASTL_ATOMIC_INTEGRAL_FETCH_IMPL(funcName,op,bits)
T funcName(T arg) EA_NOEXCEPT
{
EASTL_ATOMIC_INTEGRAL_FUNC_IMPL(op, bits);
}

EASTL_ATOMIC_INTEGRAL_FETCH_ORDER_IMPL(funcName,orderType,op,bits)
T funcName(T arg, orderType) EA_NOEXCEPT
{
EASTL_ATOMIC_INTEGRAL_FUNC_IMPL(op, bits);
}

EASTL_ATOMIC_INTEGRAL_FETCH_OP_JOIN(fetchOp,Order)
EA_PREPROCESSOR_JOIN(EA_PREPROCESSOR_JOIN(EASTL_ATOMIC_, fetchOp), Order)

EASTL_ATOMIC_INTEGRAL_FETCH_FUNCS_IMPL(funcName,fetchOp,bits)
using Base::funcName;

EASTL_ATOMIC_INTEGRAL_FETCH_IMPL(funcName, EASTL_ATOMIC_INTEGRAL_FETCH_OP_JOIN(fetchOp, _SEQ_CST_), bits)

EASTL_ATOMIC_INTEGRAL_FETCH_ORDER_IMPL(funcName, eastl::internal::memory_order_relaxed_s,
EASTL_ATOMIC_INTEGRAL_FETCH_OP_JOIN(fetchOp, _RELAXED_), bits)

EASTL_ATOMIC_INTEGRAL_FETCH_ORDER_IMPL(funcName, eastl::internal::memory_order_acquire_s,
EASTL_ATOMIC_INTEGRAL_FETCH_OP_JOIN(fetchOp, _ACQUIRE_), bits)

EASTL_ATOMIC_INTEGRAL_FETCH_ORDER_IMPL(funcName, eastl::internal::memory_order_release_s,
EASTL_ATOMIC_INTEGRAL_FETCH_OP_JOIN(fetchOp, _RELEASE_), bits)

EASTL_ATOMIC_INTEGRAL_FETCH_ORDER_IMPL(funcName, eastl::internal::memory_order_acq_rel_s,
EASTL_ATOMIC_INTEGRAL_FETCH_OP_JOIN(fetchOp, _ACQ_REL_), bits)

EASTL_ATOMIC_INTEGRAL_FETCH_ORDER_IMPL(funcName, eastl::internal::memory_order_seq_cst_s,
EASTL_ATOMIC_INTEGRAL_FETCH_OP_JOIN(fetchOp, _SEQ_CST_), bits)

EASTL_ATOMIC_INTEGRAL_FETCH_INC_DEC_OPERATOR_IMPL(operatorOp,preFuncName,postFuncName)
using Base::operator operatorOp;

T operator operatorOp() EA_NOEXCEPT
{
return preFuncName(1, eastl::memory_order_seq_cst);
}

T operator operatorOp(int) EA_NOEXCEPT
{
return postFuncName(1, eastl::memory_order_seq_cst);
}

EASTL_ATOMIC_INTEGRAL_FETCH_ASSIGNMENT_OPERATOR_IMPL(operatorOp,funcName)
using Base::operator operatorOp;

T operator operatorOp(T arg) EA_NOEXCEPT
{
return funcName(arg, eastl::memory_order_seq_cst);
}

EASTL_ATOMIC_INTEGRAL_WIDTH_SPECIALIZE(bytes,bits)

Defines (atomic_macros_add_fetch.h)

EASTL_ATOMIC_ADD_FETCH_RELAXED_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_RELAXED_8)(type, ret, ptr, val)

void EASTL_ATOMIC_ADD_FETCH_*_N(type, type ret, type * ptr, type val)

EASTL_ATOMIC_ADD_FETCH_ACQUIRE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_ACQUIRE_8)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_RELEASE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_RELEASE_8)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_ACQ_REL_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_ACQ_REL_8)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_SEQ_CST_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_SEQ_CST_8)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_RELAXED_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_RELAXED_16)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_ACQUIRE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_ACQUIRE_16)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_RELEASE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_RELEASE_16)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_ACQ_REL_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_ACQ_REL_16)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_SEQ_CST_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_SEQ_CST_16)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_RELAXED_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_RELAXED_32)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_ACQUIRE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_ACQUIRE_32)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_RELEASE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_RELEASE_32)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_ACQ_REL_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_ACQ_REL_32)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_SEQ_CST_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_SEQ_CST_32)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_RELAXED_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_RELAXED_64)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_ACQUIRE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_ACQUIRE_64)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_RELEASE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_RELEASE_64)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_ACQ_REL_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_ACQ_REL_64)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_SEQ_CST_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_SEQ_CST_64)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_RELAXED_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_RELAXED_128)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_ACQUIRE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_ACQUIRE_128)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_RELEASE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_RELEASE_128)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_ACQ_REL_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_ACQ_REL_128)(type, ret, ptr, val)

EASTL_ATOMIC_ADD_FETCH_SEQ_CST_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_ADD_FETCH_SEQ_CST_128)(type, ret, ptr, val)

Defines (atomic_macros_and_fetch.h)

EASTL_ATOMIC_AND_FETCH_RELAXED_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_RELAXED_8)(type, ret, ptr, val)

void EASTL_ATOMIC_AND_FETCH_*_N(type, type ret, type * ptr, type val)

EASTL_ATOMIC_AND_FETCH_ACQUIRE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_ACQUIRE_8)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_RELEASE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_RELEASE_8)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_ACQ_REL_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_ACQ_REL_8)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_SEQ_CST_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_SEQ_CST_8)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_RELAXED_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_RELAXED_16)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_ACQUIRE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_ACQUIRE_16)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_RELEASE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_RELEASE_16)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_ACQ_REL_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_ACQ_REL_16)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_SEQ_CST_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_SEQ_CST_16)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_RELAXED_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_RELAXED_32)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_ACQUIRE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_ACQUIRE_32)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_RELEASE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_RELEASE_32)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_ACQ_REL_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_ACQ_REL_32)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_SEQ_CST_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_SEQ_CST_32)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_RELAXED_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_RELAXED_64)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_ACQUIRE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_ACQUIRE_64)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_RELEASE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_RELEASE_64)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_ACQ_REL_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_ACQ_REL_64)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_SEQ_CST_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_SEQ_CST_64)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_RELAXED_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_RELAXED_128)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_ACQUIRE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_ACQUIRE_128)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_RELEASE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_RELEASE_128)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_ACQ_REL_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_ACQ_REL_128)(type, ret, ptr, val)

EASTL_ATOMIC_AND_FETCH_SEQ_CST_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_AND_FETCH_SEQ_CST_128)(type, ret, ptr, val)

Defines (atomic_macros_base.h)

EASTL_ATOMIC_INTERNAL_COMPILER_AVAILABLE(op)
EA_PREPROCESSOR_JOIN(EA_PREPROCESSOR_JOIN(EASTL_COMPILER_, op), _AVAILABLE)

EASTL_ATOMIC_INTERNAL_ARCH_AVAILABLE(op)
EA_PREPROCESSOR_JOIN(EA_PREPROCESSOR_JOIN(EASTL_ARCH_, op), _AVAILABLE)

EASTL_ATOMIC_INTERNAL_NOT_IMPLEMENTED_ERROR(...)
static_assert(false, "eastl::atomic<T> atomic macro not implemented!")

EASTL_ATOMIC_INTERNAL_OP_PATTERN_00(op)
EASTL_ATOMIC_INTERNAL_NOT_IMPLEMENTED_ERROR

Compiler && Arch Not Implemented

EASTL_ATOMIC_INTERNAL_OP_PATTERN_01(op)
EA_PREPROCESSOR_JOIN(EASTL_ARCH_, op)

Arch Implemented

EASTL_ATOMIC_INTERNAL_OP_PATTERN_10(op)
EA_PREPROCESSOR_JOIN(EASTL_COMPILER_, op)

Compiler Implmented

EASTL_ATOMIC_INTERNAL_OP_PATTERN_11(op)
EA_PREPROCESSOR_JOIN(EASTL_ARCH_, op)

Compiler && Arch Implemented

EASTL_ATOMIC_INTERNAL_OP_HELPER1(compiler,arch,op)
EA_PREPROCESSOR_JOIN(EASTL_ATOMIC_INTERNAL_OP_PATTERN_, EA_PREPROCESSOR_JOIN(compiler, arch))(op)

This macro creates the pattern macros above for the 2x2 True-False truth table

EASTL_ATOMIC_CHOOSE_OP_IMPL(op)
EASTL_ATOMIC_INTERNAL_OP_HELPER1(
EASTL_ATOMIC_INTERNAL_COMPILER_AVAILABLE(op),
EASTL_ATOMIC_INTERNAL_ARCH_AVAILABLE(op),
op
)

EASTL_ATOMIC_CHOOSE_OP_IMPL

This macro chooses between the compiler or architecture implementation for a given atomic operation.

USAGE:

EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELAXED_8)(ret, ptr, val)

Defines (atomic_macros_cmpxchg_strong.h)

EASTL_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_8)(type, ret, ptr, expected, desired)

void EASTL_ATOMIC_CMPXCHG_STRONG_*_*_N(type, bool ret, type * ptr, type * expected, type desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELAXED_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_ACQUIRE_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELEASE_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_ACQUIRE_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_ACQUIRE_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_SEQ_CST_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELAXED_8)(type, ret, ptr, expected, desired)

void EASTL_ATOMIC_CMPXCHG_STRONG_*(bool ret, type * ptr, type * expected, type desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELEASE_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELEASE_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELEASE_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELEASE_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELEASE_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELEASE_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELEASE_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELEASE_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQUIRE_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQUIRE_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_RELEASE_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_RELEASE_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_ACQ_REL_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_ACQ_REL_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_STRONG_SEQ_CST_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_STRONG_SEQ_CST_128)(type, ret, ptr, expected, desired)

Defines (atomic_macros_cmpxchg_weak.h)

EASTL_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_8)(type, ret, ptr, expected, desired)

void EASTL_ATOMIC_CMPXCHG_WEAK_*_*_N(type, bool ret, type * ptr, type * expected, type desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELAXED_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_ACQUIRE_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELEASE_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_ACQUIRE_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_ACQUIRE_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_SEQ_CST_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELAXED_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELAXED_8)(type, ret, ptr, expected, desired)

void EASTL_ATOMIC_CMPXCHG_WEAK_*(bool ret, type * ptr, type * expected, type desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELEASE_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELEASE_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_8(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_8)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELAXED_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELAXED_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELEASE_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELEASE_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_16(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_16)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELAXED_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELAXED_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELEASE_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELEASE_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_32(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_32)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELAXED_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELAXED_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELEASE_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELEASE_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_64(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_64)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELAXED_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELAXED_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQUIRE_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQUIRE_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_RELEASE_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_RELEASE_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_ACQ_REL_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_ACQ_REL_128)(type, ret, ptr, expected, desired)

EASTL_ATOMIC_CMPXCHG_WEAK_SEQ_CST_128(type,ret,ptr,expected,desired)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CMPXCHG_WEAK_SEQ_CST_128)(type, ret, ptr, expected, desired)

Defines (atomic_macros_compiler_barrier.h)

EASTL_ATOMIC_COMPILER_BARRIER()
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_COMPILER_BARRIER)()

void EASTL_ATOMIC_COMPILER_BARRIER()

EASTL_ATOMIC_COMPILER_BARRIER_DATA_DEPENDENCY(val,type)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_COMPILER_BARRIER_DATA_DEPENDENCY)(val, type)

void EASTL_ATOMIC_COMPILER_BARRIER_DATA_DEPENDENCY(const T&, type)

Defines (atomic_macros_cpu_pause.h)

EASTL_ATOMIC_CPU_PAUSE()
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_CPU_PAUSE)()

void EASTL_ATOMIC_CPU_PAUSE()

Defines (atomic_macros_exchange.h)

EASTL_ATOMIC_EXCHANGE_RELAXED_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_RELAXED_8)(type, ret, ptr, val)

void EASTL_ATOMIC_EXCHANGE_*_N(type, type ret, type * ptr, type val)

EASTL_ATOMIC_EXCHANGE_ACQUIRE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_ACQUIRE_8)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_RELEASE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_RELEASE_8)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_ACQ_REL_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_ACQ_REL_8)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_SEQ_CST_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_SEQ_CST_8)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_RELAXED_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_RELAXED_16)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_ACQUIRE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_ACQUIRE_16)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_RELEASE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_RELEASE_16)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_ACQ_REL_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_ACQ_REL_16)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_SEQ_CST_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_SEQ_CST_16)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_RELAXED_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_RELAXED_32)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_ACQUIRE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_ACQUIRE_32)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_RELEASE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_RELEASE_32)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_ACQ_REL_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_ACQ_REL_32)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_SEQ_CST_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_SEQ_CST_32)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_RELAXED_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_RELAXED_64)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_ACQUIRE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_ACQUIRE_64)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_RELEASE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_RELEASE_64)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_ACQ_REL_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_ACQ_REL_64)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_SEQ_CST_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_SEQ_CST_64)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_RELAXED_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_RELAXED_128)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_ACQUIRE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_ACQUIRE_128)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_RELEASE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_RELEASE_128)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_ACQ_REL_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_ACQ_REL_128)(type, ret, ptr, val)

EASTL_ATOMIC_EXCHANGE_SEQ_CST_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_EXCHANGE_SEQ_CST_128)(type, ret, ptr, val)

Defines (atomic_macros_fetch_add.h)

EASTL_ATOMIC_FETCH_ADD_RELAXED_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELAXED_8)(type, ret, ptr, val)

void EASTL_ATOMIC_FETCH_ADD_*_N(type, type ret, type * ptr, type val)

EASTL_ATOMIC_FETCH_ADD_ACQUIRE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_ACQUIRE_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_RELEASE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELEASE_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_ACQ_REL_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_ACQ_REL_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_SEQ_CST_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_SEQ_CST_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_RELAXED_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELAXED_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_ACQUIRE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_ACQUIRE_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_RELEASE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELEASE_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_ACQ_REL_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_ACQ_REL_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_SEQ_CST_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_SEQ_CST_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_RELAXED_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELAXED_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_ACQUIRE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_ACQUIRE_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_RELEASE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELEASE_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_ACQ_REL_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_ACQ_REL_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_SEQ_CST_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_SEQ_CST_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_RELAXED_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELAXED_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_ACQUIRE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_ACQUIRE_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_RELEASE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELEASE_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_ACQ_REL_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_ACQ_REL_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_SEQ_CST_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_SEQ_CST_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_RELAXED_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELAXED_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_ACQUIRE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_ACQUIRE_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_RELEASE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_RELEASE_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_ACQ_REL_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_ACQ_REL_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_ADD_SEQ_CST_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_ADD_SEQ_CST_128)(type, ret, ptr, val)

Defines (atomic_macros_fetch_and.h)

EASTL_ATOMIC_FETCH_AND_RELAXED_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_RELAXED_8)(type, ret, ptr, val)

void EASTL_ATOMIC_FETCH_AND_*_N(type, type ret, type * ptr, type val)

EASTL_ATOMIC_FETCH_AND_ACQUIRE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_ACQUIRE_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_RELEASE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_RELEASE_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_ACQ_REL_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_ACQ_REL_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_SEQ_CST_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_SEQ_CST_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_RELAXED_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_RELAXED_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_ACQUIRE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_ACQUIRE_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_RELEASE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_RELEASE_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_ACQ_REL_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_ACQ_REL_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_SEQ_CST_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_SEQ_CST_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_RELAXED_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_RELAXED_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_ACQUIRE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_ACQUIRE_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_RELEASE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_RELEASE_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_ACQ_REL_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_ACQ_REL_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_SEQ_CST_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_SEQ_CST_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_RELAXED_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_RELAXED_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_ACQUIRE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_ACQUIRE_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_RELEASE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_RELEASE_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_ACQ_REL_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_ACQ_REL_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_SEQ_CST_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_SEQ_CST_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_RELAXED_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_RELAXED_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_ACQUIRE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_ACQUIRE_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_RELEASE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_RELEASE_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_ACQ_REL_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_ACQ_REL_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_AND_SEQ_CST_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_AND_SEQ_CST_128)(type, ret, ptr, val)

Defines (atomic_macros_fetch_or.h)

EASTL_ATOMIC_FETCH_OR_RELAXED_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_RELAXED_8)(type, ret, ptr, val)

void EASTL_ATOMIC_FETCH_OR_*_N(type, type ret, type * ptr, type val)

EASTL_ATOMIC_FETCH_OR_ACQUIRE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_ACQUIRE_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_RELEASE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_RELEASE_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_ACQ_REL_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_ACQ_REL_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_SEQ_CST_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_SEQ_CST_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_RELAXED_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_RELAXED_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_ACQUIRE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_ACQUIRE_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_RELEASE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_RELEASE_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_ACQ_REL_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_ACQ_REL_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_SEQ_CST_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_SEQ_CST_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_RELAXED_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_RELAXED_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_ACQUIRE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_ACQUIRE_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_RELEASE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_RELEASE_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_ACQ_REL_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_ACQ_REL_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_SEQ_CST_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_SEQ_CST_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_RELAXED_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_RELAXED_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_ACQUIRE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_ACQUIRE_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_RELEASE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_RELEASE_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_ACQ_REL_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_ACQ_REL_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_SEQ_CST_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_SEQ_CST_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_RELAXED_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_RELAXED_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_ACQUIRE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_ACQUIRE_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_RELEASE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_RELEASE_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_ACQ_REL_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_ACQ_REL_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_OR_SEQ_CST_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_OR_SEQ_CST_128)(type, ret, ptr, val)

Defines (atomic_macros_fetch_sub.h)

EASTL_ATOMIC_FETCH_SUB_RELAXED_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_RELAXED_8)(type, ret, ptr, val)

void EASTL_ATOMIC_FETCH_SUB_*_N(type, type ret, type * ptr, type val)

EASTL_ATOMIC_FETCH_SUB_ACQUIRE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_ACQUIRE_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_RELEASE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_RELEASE_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_ACQ_REL_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_ACQ_REL_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_SEQ_CST_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_SEQ_CST_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_RELAXED_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_RELAXED_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_ACQUIRE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_ACQUIRE_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_RELEASE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_RELEASE_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_ACQ_REL_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_ACQ_REL_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_SEQ_CST_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_SEQ_CST_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_RELAXED_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_RELAXED_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_ACQUIRE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_ACQUIRE_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_RELEASE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_RELEASE_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_ACQ_REL_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_ACQ_REL_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_SEQ_CST_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_SEQ_CST_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_RELAXED_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_RELAXED_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_ACQUIRE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_ACQUIRE_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_RELEASE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_RELEASE_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_ACQ_REL_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_ACQ_REL_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_SEQ_CST_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_SEQ_CST_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_RELAXED_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_RELAXED_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_ACQUIRE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_ACQUIRE_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_RELEASE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_RELEASE_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_ACQ_REL_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_ACQ_REL_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_SUB_SEQ_CST_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_SUB_SEQ_CST_128)(type, ret, ptr, val)

Defines (atomic_macros_fetch_xor.h)

EASTL_ATOMIC_FETCH_XOR_RELAXED_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_RELAXED_8)(type, ret, ptr, val)

void EASTL_ATOMIC_FETCH_XOR_*_N(type, type ret, type * ptr, type val)

EASTL_ATOMIC_FETCH_XOR_ACQUIRE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_ACQUIRE_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_RELEASE_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_RELEASE_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_ACQ_REL_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_ACQ_REL_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_SEQ_CST_8(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_SEQ_CST_8)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_RELAXED_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_RELAXED_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_ACQUIRE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_ACQUIRE_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_RELEASE_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_RELEASE_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_ACQ_REL_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_ACQ_REL_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_SEQ_CST_16(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_SEQ_CST_16)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_RELAXED_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_RELAXED_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_ACQUIRE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_ACQUIRE_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_RELEASE_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_RELEASE_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_ACQ_REL_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_ACQ_REL_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_SEQ_CST_32(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_SEQ_CST_32)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_RELAXED_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_RELAXED_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_ACQUIRE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_ACQUIRE_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_RELEASE_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_RELEASE_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_ACQ_REL_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_ACQ_REL_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_SEQ_CST_64(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_SEQ_CST_64)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_RELAXED_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_RELAXED_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_ACQUIRE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_ACQUIRE_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_RELEASE_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_RELEASE_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_ACQ_REL_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_ACQ_REL_128)(type, ret, ptr, val)

EASTL_ATOMIC_FETCH_XOR_SEQ_CST_128(type,ret,ptr,val)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_FETCH_XOR_SEQ_CST_128)(type, ret, ptr, val)

Defines (atomic_macros_load.h)

EASTL_ATOMIC_LOAD_RELAXED_8(type,ret,ptr)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_LOAD_RELAXED_8)(type, ret, ptr)

void EASTL_ATOMIC_LOAD_*_N(type, type ret, type * ptr)

EASTL_ATOMIC_LOAD_ACQUIRE_8(type,ret,ptr)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_LOAD_ACQUIRE_8)(type, ret, ptr)

EASTL_ATOMIC_LOAD_SEQ_CST_8(type,ret,ptr)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_LOAD_SEQ_CST_8)(type, ret, ptr)

EASTL_ATOMIC_LOAD_RELAXED_16(type,ret,ptr)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_LOAD_RELAXED_16)(type, ret, ptr)

EASTL_ATOMIC_LOAD_ACQUIRE_16(type,ret,ptr)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_LOAD_ACQUIRE_16)(type, ret, ptr)

EASTL_ATOMIC_LOAD_SEQ_CST_16(type,ret,ptr)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_LOAD_SEQ_CST_16)(type, ret, ptr)

EASTL_ATOMIC_LOAD_RELAXED_32(type,ret,ptr)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_LOAD_RELAXED_32)(type, ret, ptr)

EASTL_ATOMIC_LOAD_ACQUIRE_32(type,ret,ptr)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_LOAD_ACQUIRE_32)(type, ret, ptr)

EASTL_ATOMIC_LOAD_SEQ_CST_32(type,ret,ptr)
EASTL_ATOMIC_CHOOSE_OP_IMPL(ATOMIC_LOAD_SEQ_CST_32)(type, ret, ptr)