17 #if !defined(__TBB_machine_H) || defined(__TBB_machine_windows_ia32_H) 18 #error Do not #include this internal file directly; use public TBB headers instead. 21 #define __TBB_machine_windows_ia32_H 23 #if defined(_MSC_VER) && !defined(__INTEL_COMPILER) 25 #pragma warning (push) 26 #pragma warning (disable: 4244 4267) 31 #define __TBB_WORDSIZE 4 32 #define __TBB_ENDIANNESS __TBB_ENDIAN_LITTLE 42 #if !__TBB_MSVC_PART_WORD_INTERLOCKED_INTRINSICS_PRESENT 44 #define __TBB_MACHINE_DEFINE_ATOMICS(S,T,U,A,C) \ 45 static inline T __TBB_machine_cmpswp##S ( volatile void * ptr, U value, U comparand ) { \ 47 volatile T *p = (T *)ptr; \ 52 __asm mov A , comparand \ 53 __asm lock cmpxchg [edx], C \ 59 static inline T __TBB_machine_fetchadd##S ( volatile void * ptr, U addend ) { \ 61 volatile T *p = (T *)ptr; \ 66 __asm lock xadd [edx], A \ 72 static inline T __TBB_machine_fetchstore##S ( volatile void * ptr, U value ) { \ 74 volatile T *p = (T *)ptr; \ 79 __asm lock xchg [edx], A \ 90 #undef __TBB_MACHINE_DEFINE_ATOMICS 97 #define __TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE 1 98 #define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE 1 99 #define __TBB_USE_GENERIC_RELAXED_LOAD_STORE 1 100 #define __TBB_USE_GENERIC_SEQUENTIAL_CONSISTENCY_LOAD_STORE 1 103 #if defined(_MSC_VER) && !defined(__INTEL_COMPILER) 104 #pragma warning (pop) 105 #endif // warnings 4244, 4267 are back #define __TBB_MACHINE_DEFINE_ATOMICS(S, T, U, A, C)
__int64 __TBB_EXPORTED_FUNC __TBB_machine_cmpswp8(volatile void *ptr, __int64 value, __int64 comparand)
__int64 __TBB_EXPORTED_FUNC __TBB_machine_load8(const volatile void *ptr)
#define __TBB_EXPORTED_FUNC
__int64 __TBB_EXPORTED_FUNC __TBB_machine_fetchstore8(volatile void *ptr, __int64 value)
void __TBB_EXPORTED_FUNC __TBB_machine_store8(volatile void *ptr, __int64 value)
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp __itt_timestamp ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain ITT_FORMAT p const __itt_domain __itt_string_handle unsigned long long value
__int64 __TBB_EXPORTED_FUNC __TBB_machine_fetchadd8(volatile void *ptr, __int64 addend)