Lines Matching refs:ATOMIC_VAL
52 #define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ argument
53 atomic_store_explicit(&(ATOMIC_VAL)->_value, NEW_VAL, ORDER)
55 #define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ argument
56 atomic_load_explicit(&(ATOMIC_VAL)->_value, ORDER)
83 #define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ argument
87 __atomic_store_n(&(ATOMIC_VAL)->_value, NEW_VAL, ORDER))
89 #define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ argument
94 __atomic_load_n(&(ATOMIC_VAL)->_value, ORDER))
157 #define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ argument
159 __typeof__(ATOMIC_VAL) atomic_val = ATOMIC_VAL; \
187 #define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ argument
189 __typeof__(ATOMIC_VAL) atomic_val = ATOMIC_VAL; \
253 #define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) \ argument
256 _InterlockedExchange64_HLEAcquire((__int64 volatile*)ATOMIC_VAL, (__int64)NEW_VAL); \
259 _InterlockedExchange64_HLERelease((__int64 volatile*)ATOMIC_VAL, (__int64)NEW_VAL); \
262 _InterlockedExchange64((__int64 volatile*)ATOMIC_VAL, (__int64)NEW_VAL); \
266 #define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) ((void)0); argument
269 #define _Py_atomic_store_32bit(ATOMIC_VAL, NEW_VAL, ORDER) \ argument
272 _InterlockedExchange_HLEAcquire((volatile long*)ATOMIC_VAL, (int)NEW_VAL); \
275 _InterlockedExchange_HLERelease((volatile long*)ATOMIC_VAL, (int)NEW_VAL); \
278 _InterlockedExchange((volatile long*)ATOMIC_VAL, (int)NEW_VAL); \
319 #define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) *ATOMIC_VAL argument
353 #define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ argument
354 if (sizeof(*ATOMIC_VAL._value) == 8) { \
355 _Py_atomic_store_64bit((volatile long long*)ATOMIC_VAL._value, NEW_VAL, ORDER) } else { \
356 _Py_atomic_store_32bit((volatile long*)ATOMIC_VAL._value, NEW_VAL, ORDER) }
358 #define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ argument
360 sizeof(*(ATOMIC_VAL._value)) == 8 ? \
361 _Py_atomic_load_64bit((volatile long long*)ATOMIC_VAL._value, ORDER) : \
362 _Py_atomic_load_32bit((volatile long*)ATOMIC_VAL._value, ORDER) \
383 #define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) \ argument
386 _InterlockedExchange64_acq((__int64 volatile*)ATOMIC_VAL, (__int64)NEW_VAL); \
389 _InterlockedExchange64_rel((__int64 volatile*)ATOMIC_VAL, (__int64)NEW_VAL); \
392 _InterlockedExchange64((__int64 volatile*)ATOMIC_VAL, (__int64)NEW_VAL); \
396 #define _Py_atomic_store_64bit(ATOMIC_VAL, NEW_VAL, ORDER) ((void)0); argument
399 #define _Py_atomic_store_32bit(ATOMIC_VAL, NEW_VAL, ORDER) \ argument
402 _InterlockedExchange_acq((volatile long*)ATOMIC_VAL, (int)NEW_VAL); \
405 _InterlockedExchange_rel((volatile long*)ATOMIC_VAL, (int)NEW_VAL); \
408 _InterlockedExchange((volatile long*)ATOMIC_VAL, (int)NEW_VAL); \
449 #define _Py_atomic_load_64bit(ATOMIC_VAL, ORDER) *ATOMIC_VAL argument
483 #define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ argument
484 if (sizeof(*ATOMIC_VAL._value) == 8) { \
485 _Py_atomic_store_64bit(ATOMIC_VAL._value, NEW_VAL, ORDER) } else { \
486 _Py_atomic_store_32bit(ATOMIC_VAL._value, NEW_VAL, ORDER) }
488 #define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ argument
490 sizeof(*(ATOMIC_VAL._value)) == 8 ? \
491 _Py_atomic_load_64bit(ATOMIC_VAL._value, ORDER) : \
492 _Py_atomic_load_32bit(ATOMIC_VAL._value, ORDER) \
516 #define _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, ORDER) \ argument
517 ((ATOMIC_VAL)->_value = NEW_VAL)
518 #define _Py_atomic_load_explicit(ATOMIC_VAL, ORDER) \ argument
519 ((ATOMIC_VAL)->_value)
523 #define _Py_atomic_store(ATOMIC_VAL, NEW_VAL) \ argument
524 _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, _Py_memory_order_seq_cst)
525 #define _Py_atomic_load(ATOMIC_VAL) \ argument
526 _Py_atomic_load_explicit(ATOMIC_VAL, _Py_memory_order_seq_cst)
530 #define _Py_atomic_store_relaxed(ATOMIC_VAL, NEW_VAL) \ argument
531 _Py_atomic_store_explicit(ATOMIC_VAL, NEW_VAL, _Py_memory_order_relaxed)
532 #define _Py_atomic_load_relaxed(ATOMIC_VAL) \ argument
533 _Py_atomic_load_explicit(ATOMIC_VAL, _Py_memory_order_relaxed)