42 #ifndef QATOMIC_VXWORKS_H 43 #define QATOMIC_VXWORKS_H 48 # include <QtCore/qatomic_powerpc.h> 49 #else // generic implementation with taskLock() 54 # include <vxWorksCommon.h> 57 #if defined(_WRS_KERNEL) 70 #define Q_ATOMIC_INT_REFERENCE_COUNTING_IS_NOT_NATIVE 77 #define Q_ATOMIC_INT_TEST_AND_SET_IS_NOT_NATIVE 84 #define Q_ATOMIC_INT_FETCH_AND_STORE_IS_NOT_NATIVE 91 #define Q_ATOMIC_INT_FETCH_AND_ADD_IS_NOT_NATIVE 98 #define Q_ATOMIC_POINTER_TEST_AND_SET_IS_NOT_NATIVE 100 template <
typename T>
103 template <
typename T>
107 #define Q_ATOMIC_POINTER_FETCH_AND_STORE_IS_NOT_NATIVE 109 template <
typename T>
112 template <
typename T>
116 #define Q_ATOMIC_POINTER_FETCH_AND_ADD_IS_NOT_NATIVE 118 template <
typename T>
121 template <
typename T>
206 return originalValue;
226 template <
typename T>
239 template <
typename T>
245 template <
typename T>
251 template <
typename T>
259 template <
typename T>
269 template <
typename T>
275 template <
typename T>
281 template <
typename T>
289 template <
typename T>
299 template <
typename T>
305 template <
typename T>
311 template <
typename T>
319 #endif // generic implementation with taskLock() 323 #endif // QATOMIC_VXWORKS_H static bool isFetchAndStoreNative()
static bool isTestAndSetNative()
int fetchAndStoreRelease(int newValue)
static bool isReferenceCountingNative()
T * fetchAndAddRelaxed(qptrdiff valueToAdd)
#define QT_END_NAMESPACE
This macro expands to.
static bool isFetchAndAddNative()
static bool isTestAndSetNative()
static bool isFetchAndAddNative()
T * fetchAndStoreRelease(T *newValue)
static bool isTestAndSetWaitFree()
T * fetchAndAddRelease(qptrdiff valueToAdd)
bool testAndSetOrdered(T *expectedValue, T *newValue)
int fetchAndAddAcquire(int valueToAdd)
T * fetchAndAddAcquire(qptrdiff valueToAdd)
int fetchAndStoreRelaxed(int newValue)
T * fetchAndAddOrdered(qptrdiff valueToAdd)
bool testAndSetAcquire(int expectedValue, int newValue)
bool testAndSetRelaxed(int expectedValue, int newValue)
#define QT_BEGIN_NAMESPACE
This macro expands to.
int fetchAndStoreAcquire(int newValue)
QIntegerForSizeof< void * >::Signed qptrdiff
T * fetchAndStoreOrdered(T *newValue)
#define Q_INLINE_TEMPLATE
int fetchAndAddRelease(int valueToAdd)
bool testAndSetOrdered(int expectedValue, int newValue)
T * fetchAndStoreAcquire(T *newValue)
static bool isFetchAndStoreWaitFree()
static bool isTestAndSetWaitFree()
static bool isReferenceCountingWaitFree()
int fetchAndAddOrdered(int valueToAdd)
static bool isFetchAndStoreWaitFree()
static bool isFetchAndAddWaitFree()
static bool isFetchAndAddWaitFree()
bool testAndSetRelease(int expectedValue, int newValue)
int fetchAndAddRelaxed(int valueToAdd)
int fetchAndStoreOrdered(int newValue)
bool testAndSetRelaxed(T *expectedValue, T *newValue)
bool testAndSetRelease(T *expectedValue, T *newValue)
T * fetchAndStoreRelaxed(T *newValue)
static bool isFetchAndStoreNative()
bool testAndSetAcquire(T *expectedValue, T *newValue)