Home ⌂Doc Index ◂Up ▴
Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
linux_ia64.h File Reference
#include <stdint.h>
#include <ia64intrin.h>
Include dependency graph for linux_ia64.h:

Go to the source code of this file.

Namespaces

 tbb
 The graph class.
 
 tbb::internal
 Identifiers declared inside namespace internal should never be used directly by client code.
 

Macros

#define __TBB_WORDSIZE   8
 
#define __TBB_ENDIANNESS   __TBB_ENDIAN_LITTLE
 
#define __TBB_compiler_fence()   __asm__ __volatile__("": : :"memory")
 
#define __TBB_control_consistency_helper()   __TBB_compiler_fence()
 
#define __TBB_acquire_consistency_helper()   __TBB_compiler_fence()
 
#define __TBB_release_consistency_helper()   __TBB_compiler_fence()
 
#define __TBB_full_memory_fence()   __asm__ __volatile__("mf": : :"memory")
 
#define __TBB_machine_fetchadd1full_fence   __TBB_machine_fetchadd1__TBB_full_fence
 
#define __TBB_machine_fetchadd2full_fence   __TBB_machine_fetchadd2__TBB_full_fence
 
#define __TBB_machine_fetchadd4full_fence   __TBB_machine_fetchadd4__TBB_full_fence
 
#define __TBB_machine_fetchadd8full_fence   __TBB_machine_fetchadd8__TBB_full_fence
 
#define __TBB_machine_fetchstore1full_fence   __TBB_machine_fetchstore1__TBB_full_fence
 
#define __TBB_machine_fetchstore2full_fence   __TBB_machine_fetchstore2__TBB_full_fence
 
#define __TBB_machine_fetchstore4full_fence   __TBB_machine_fetchstore4__TBB_full_fence
 
#define __TBB_machine_fetchstore8full_fence   __TBB_machine_fetchstore8__TBB_full_fence
 
#define __TBB_machine_cmpswp1full_fence   __TBB_machine_cmpswp1__TBB_full_fence
 
#define __TBB_machine_cmpswp2full_fence   __TBB_machine_cmpswp2__TBB_full_fence
 
#define __TBB_machine_cmpswp4full_fence   __TBB_machine_cmpswp4__TBB_full_fence
 
#define __TBB_machine_cmpswp8full_fence   __TBB_machine_cmpswp8__TBB_full_fence
 
#define __TBB_machine_fetchadd1relaxed   __TBB_machine_fetchadd1acquire
 
#define __TBB_machine_fetchadd2relaxed   __TBB_machine_fetchadd2acquire
 
#define __TBB_machine_fetchadd4relaxed   __TBB_machine_fetchadd4acquire
 
#define __TBB_machine_fetchadd8relaxed   __TBB_machine_fetchadd8acquire
 
#define __TBB_machine_fetchstore1relaxed   __TBB_machine_fetchstore1acquire
 
#define __TBB_machine_fetchstore2relaxed   __TBB_machine_fetchstore2acquire
 
#define __TBB_machine_fetchstore4relaxed   __TBB_machine_fetchstore4acquire
 
#define __TBB_machine_fetchstore8relaxed   __TBB_machine_fetchstore8acquire
 
#define __TBB_machine_cmpswp1relaxed   __TBB_machine_cmpswp1acquire
 
#define __TBB_machine_cmpswp2relaxed   __TBB_machine_cmpswp2acquire
 
#define __TBB_machine_cmpswp4relaxed   __TBB_machine_cmpswp4acquire
 
#define __TBB_machine_cmpswp8relaxed   __TBB_machine_cmpswp8acquire
 
#define __TBB_MACHINE_DEFINE_ATOMICS(S, V)
 
#define __TBB_USE_FENCED_ATOMICS   1
 
#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE   1
 
#define __TBB_USE_GENERIC_SEQUENTIAL_CONSISTENCY_LOAD_STORE   1
 
#define __TBB_TryLockByte(P)   __TBB_machine_trylockbyte(P)
 
#define __TBB_LockByte(P)   __TBB_machine_lockbyte(P)
 
#define __TBB_Pause(V)   __TBB_machine_pause(V)
 
#define __TBB_Log2(V)   __TBB_machine_lg(V)
 

Functions

int8_t __TBB_machine_fetchadd1__TBB_full_fence (volatile void *ptr, int8_t addend)
 
int8_t __TBB_machine_fetchadd1acquire (volatile void *ptr, int8_t addend)
 
int8_t __TBB_machine_fetchadd1release (volatile void *ptr, int8_t addend)
 
int16_t __TBB_machine_fetchadd2__TBB_full_fence (volatile void *ptr, int16_t addend)
 
int16_t __TBB_machine_fetchadd2acquire (volatile void *ptr, int16_t addend)
 
int16_t __TBB_machine_fetchadd2release (volatile void *ptr, int16_t addend)
 
int32_t __TBB_machine_fetchadd4__TBB_full_fence (volatile void *ptr, int32_t value)
 
int32_t __TBB_machine_fetchadd4acquire (volatile void *ptr, int32_t addend)
 
int32_t __TBB_machine_fetchadd4release (volatile void *ptr, int32_t addend)
 
int64_t __TBB_machine_fetchadd8__TBB_full_fence (volatile void *ptr, int64_t value)
 
int64_t __TBB_machine_fetchadd8acquire (volatile void *ptr, int64_t addend)
 
int64_t __TBB_machine_fetchadd8release (volatile void *ptr, int64_t addend)
 
int8_t __TBB_machine_fetchstore1__TBB_full_fence (volatile void *ptr, int8_t value)
 
int8_t __TBB_machine_fetchstore1acquire (volatile void *ptr, int8_t value)
 
int8_t __TBB_machine_fetchstore1release (volatile void *ptr, int8_t value)
 
int16_t __TBB_machine_fetchstore2__TBB_full_fence (volatile void *ptr, int16_t value)
 
int16_t __TBB_machine_fetchstore2acquire (volatile void *ptr, int16_t value)
 
int16_t __TBB_machine_fetchstore2release (volatile void *ptr, int16_t value)
 
int32_t __TBB_machine_fetchstore4__TBB_full_fence (volatile void *ptr, int32_t value)
 
int32_t __TBB_machine_fetchstore4acquire (volatile void *ptr, int32_t value)
 
int32_t __TBB_machine_fetchstore4release (volatile void *ptr, int32_t value)
 
int64_t __TBB_machine_fetchstore8__TBB_full_fence (volatile void *ptr, int64_t value)
 
int64_t __TBB_machine_fetchstore8acquire (volatile void *ptr, int64_t value)
 
int64_t __TBB_machine_fetchstore8release (volatile void *ptr, int64_t value)
 
int8_t __TBB_machine_cmpswp1__TBB_full_fence (volatile void *ptr, int8_t value, int8_t comparand)
 
int8_t __TBB_machine_cmpswp1acquire (volatile void *ptr, int8_t value, int8_t comparand)
 
int8_t __TBB_machine_cmpswp1release (volatile void *ptr, int8_t value, int8_t comparand)
 
int16_t __TBB_machine_cmpswp2__TBB_full_fence (volatile void *ptr, int16_t value, int16_t comparand)
 
int16_t __TBB_machine_cmpswp2acquire (volatile void *ptr, int16_t value, int16_t comparand)
 
int16_t __TBB_machine_cmpswp2release (volatile void *ptr, int16_t value, int16_t comparand)
 
int32_t __TBB_machine_cmpswp4__TBB_full_fence (volatile void *ptr, int32_t value, int32_t comparand)
 
int32_t __TBB_machine_cmpswp4acquire (volatile void *ptr, int32_t value, int32_t comparand)
 
int32_t __TBB_machine_cmpswp4release (volatile void *ptr, int32_t value, int32_t comparand)
 
int64_t __TBB_machine_cmpswp8__TBB_full_fence (volatile void *ptr, int64_t value, int64_t comparand)
 
int64_t __TBB_machine_cmpswp8acquire (volatile void *ptr, int64_t value, int64_t comparand)
 
int64_t __TBB_machine_cmpswp8release (volatile void *ptr, int64_t value, int64_t comparand)
 
int64_t __TBB_machine_lg (uint64_t value)
 
void __TBB_machine_pause (int32_t delay)
 
bool __TBB_machine_trylockbyte (volatile unsigned char &ptr)
 
int64_t __TBB_machine_lockbyte (volatile unsigned char &ptr)
 
void__TBB_get_bsp ()
 Retrieves the current RSE backing store pointer. IA64 specific. More...
 
int32_t __TBB_machine_load1_relaxed (const void *ptr)
 
int32_t __TBB_machine_load2_relaxed (const void *ptr)
 
int32_t __TBB_machine_load4_relaxed (const void *ptr)
 
int64_t __TBB_machine_load8_relaxed (const void *ptr)
 
void __TBB_machine_store1_relaxed (void *ptr, int32_t value)
 
void __TBB_machine_store2_relaxed (void *ptr, int32_t value)
 
void __TBB_machine_store4_relaxed (void *ptr, int32_t value)
 
void __TBB_machine_store8_relaxed (void *ptr, int64_t value)
 
 tbb::internal::__TBB_MACHINE_DEFINE_ATOMICS (1, int8_t)
 
 tbb::internal::__TBB_MACHINE_DEFINE_ATOMICS (2, int16_t)
 
 tbb::internal::__TBB_MACHINE_DEFINE_ATOMICS (4, int32_t)
 
 tbb::internal::__TBB_MACHINE_DEFINE_ATOMICS (8, int64_t)
 

Macro Definition Documentation

◆ __TBB_acquire_consistency_helper

#define __TBB_acquire_consistency_helper ( )    __TBB_compiler_fence()

Definition at line 40 of file linux_ia64.h.

◆ __TBB_compiler_fence

#define __TBB_compiler_fence ( )    __asm__ __volatile__("": : :"memory")

Definition at line 36 of file linux_ia64.h.

◆ __TBB_control_consistency_helper

#define __TBB_control_consistency_helper ( )    __TBB_compiler_fence()

Definition at line 37 of file linux_ia64.h.

◆ __TBB_ENDIANNESS

#define __TBB_ENDIANNESS   __TBB_ENDIAN_LITTLE

Definition at line 27 of file linux_ia64.h.

◆ __TBB_full_memory_fence

#define __TBB_full_memory_fence ( )    __asm__ __volatile__("mf": : :"memory")

Definition at line 42 of file linux_ia64.h.

◆ __TBB_LockByte

#define __TBB_LockByte (   P)    __TBB_machine_lockbyte(P)

Definition at line 173 of file linux_ia64.h.

◆ __TBB_Log2

#define __TBB_Log2 (   V)    __TBB_machine_lg(V)

Definition at line 177 of file linux_ia64.h.

◆ __TBB_machine_cmpswp1full_fence

#define __TBB_machine_cmpswp1full_fence   __TBB_machine_cmpswp1__TBB_full_fence

Definition at line 125 of file linux_ia64.h.

◆ __TBB_machine_cmpswp1relaxed

#define __TBB_machine_cmpswp1relaxed   __TBB_machine_cmpswp1acquire

Definition at line 141 of file linux_ia64.h.

◆ __TBB_machine_cmpswp2full_fence

#define __TBB_machine_cmpswp2full_fence   __TBB_machine_cmpswp2__TBB_full_fence

Definition at line 126 of file linux_ia64.h.

◆ __TBB_machine_cmpswp2relaxed

#define __TBB_machine_cmpswp2relaxed   __TBB_machine_cmpswp2acquire

Definition at line 142 of file linux_ia64.h.

◆ __TBB_machine_cmpswp4full_fence

#define __TBB_machine_cmpswp4full_fence   __TBB_machine_cmpswp4__TBB_full_fence

Definition at line 127 of file linux_ia64.h.

◆ __TBB_machine_cmpswp4relaxed

#define __TBB_machine_cmpswp4relaxed   __TBB_machine_cmpswp4acquire

Definition at line 143 of file linux_ia64.h.

◆ __TBB_machine_cmpswp8full_fence

#define __TBB_machine_cmpswp8full_fence   __TBB_machine_cmpswp8__TBB_full_fence

Definition at line 128 of file linux_ia64.h.

◆ __TBB_machine_cmpswp8relaxed

#define __TBB_machine_cmpswp8relaxed   __TBB_machine_cmpswp8acquire

Definition at line 144 of file linux_ia64.h.

◆ __TBB_MACHINE_DEFINE_ATOMICS

#define __TBB_MACHINE_DEFINE_ATOMICS (   S,
 
)
Value:
template <typename T> \
struct machine_load_store_relaxed<T,S> { \
static inline T load ( const T& location ) { \
return (T)__TBB_machine_load##S##_relaxed(&location); \
} \
static inline void store ( T& location, T value ) { \
__TBB_machine_store##S##_relaxed(&location, (V)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 ITT_FORMAT lu const __itt_domain __itt_string_handle unsigned long long ITT_FORMAT lu const __itt_domain __itt_id __itt_string_handle __itt_metadata_type size_t void ITT_FORMAT p const __itt_domain __itt_id __itt_string_handle const wchar_t size_t ITT_FORMAT lu const __itt_domain __itt_id __itt_relation __itt_id ITT_FORMAT p const wchar_t int ITT_FORMAT __itt_group_mark S
struct __TBB_DEPRECATED_IN_VERBOSE_MODE_MSG("tbb::atomic is deprecated, use std::atomic") atomic< T * > struct __TBB_DEPRECATED_IN_VERBOSE_MODE_MSG("tbb::atomic is deprecated, use std::atomic") atomic< void * > T load(const atomic< T > &a)
Specialization for atomic<T*> with arithmetic and operator->.
Definition: atomic.h:546
void store(atomic< T > &a, T value)
Definition: atomic.h:549
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

Definition at line 146 of file linux_ia64.h.

◆ __TBB_machine_fetchadd1full_fence

#define __TBB_machine_fetchadd1full_fence   __TBB_machine_fetchadd1__TBB_full_fence

Definition at line 117 of file linux_ia64.h.

◆ __TBB_machine_fetchadd1relaxed

#define __TBB_machine_fetchadd1relaxed   __TBB_machine_fetchadd1acquire

On IA64 RMW operations implicitly have acquire semantics. Thus one cannot actually have completely relaxed RMW operation here.

Definition at line 133 of file linux_ia64.h.

◆ __TBB_machine_fetchadd2full_fence

#define __TBB_machine_fetchadd2full_fence   __TBB_machine_fetchadd2__TBB_full_fence

Definition at line 118 of file linux_ia64.h.

◆ __TBB_machine_fetchadd2relaxed

#define __TBB_machine_fetchadd2relaxed   __TBB_machine_fetchadd2acquire

Definition at line 134 of file linux_ia64.h.

◆ __TBB_machine_fetchadd4full_fence

#define __TBB_machine_fetchadd4full_fence   __TBB_machine_fetchadd4__TBB_full_fence

Definition at line 119 of file linux_ia64.h.

◆ __TBB_machine_fetchadd4relaxed

#define __TBB_machine_fetchadd4relaxed   __TBB_machine_fetchadd4acquire

Definition at line 135 of file linux_ia64.h.

◆ __TBB_machine_fetchadd8full_fence

#define __TBB_machine_fetchadd8full_fence   __TBB_machine_fetchadd8__TBB_full_fence

Definition at line 120 of file linux_ia64.h.

◆ __TBB_machine_fetchadd8relaxed

#define __TBB_machine_fetchadd8relaxed   __TBB_machine_fetchadd8acquire

Definition at line 136 of file linux_ia64.h.

◆ __TBB_machine_fetchstore1full_fence

#define __TBB_machine_fetchstore1full_fence   __TBB_machine_fetchstore1__TBB_full_fence

Definition at line 121 of file linux_ia64.h.

◆ __TBB_machine_fetchstore1relaxed

#define __TBB_machine_fetchstore1relaxed   __TBB_machine_fetchstore1acquire

Definition at line 137 of file linux_ia64.h.

◆ __TBB_machine_fetchstore2full_fence

#define __TBB_machine_fetchstore2full_fence   __TBB_machine_fetchstore2__TBB_full_fence

Definition at line 122 of file linux_ia64.h.

◆ __TBB_machine_fetchstore2relaxed

#define __TBB_machine_fetchstore2relaxed   __TBB_machine_fetchstore2acquire

Definition at line 138 of file linux_ia64.h.

◆ __TBB_machine_fetchstore4full_fence

#define __TBB_machine_fetchstore4full_fence   __TBB_machine_fetchstore4__TBB_full_fence

Definition at line 123 of file linux_ia64.h.

◆ __TBB_machine_fetchstore4relaxed

#define __TBB_machine_fetchstore4relaxed   __TBB_machine_fetchstore4acquire

Definition at line 139 of file linux_ia64.h.

◆ __TBB_machine_fetchstore8full_fence

#define __TBB_machine_fetchstore8full_fence   __TBB_machine_fetchstore8__TBB_full_fence

Definition at line 124 of file linux_ia64.h.

◆ __TBB_machine_fetchstore8relaxed

#define __TBB_machine_fetchstore8relaxed   __TBB_machine_fetchstore8acquire

Definition at line 140 of file linux_ia64.h.

◆ __TBB_Pause

#define __TBB_Pause (   V)    __TBB_machine_pause(V)

Definition at line 176 of file linux_ia64.h.

◆ __TBB_release_consistency_helper

#define __TBB_release_consistency_helper ( )    __TBB_compiler_fence()

Definition at line 41 of file linux_ia64.h.

◆ __TBB_TryLockByte

#define __TBB_TryLockByte (   P)    __TBB_machine_trylockbyte(P)

Definition at line 172 of file linux_ia64.h.

◆ __TBB_USE_FENCED_ATOMICS

#define __TBB_USE_FENCED_ATOMICS   1

Definition at line 167 of file linux_ia64.h.

◆ __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE

#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE   1

Definition at line 168 of file linux_ia64.h.

◆ __TBB_USE_GENERIC_SEQUENTIAL_CONSISTENCY_LOAD_STORE

#define __TBB_USE_GENERIC_SEQUENTIAL_CONSISTENCY_LOAD_STORE   1

Definition at line 169 of file linux_ia64.h.

◆ __TBB_WORDSIZE

#define __TBB_WORDSIZE   8

Definition at line 26 of file linux_ia64.h.

Function Documentation

◆ __TBB_get_bsp()

void* __TBB_get_bsp ( )

Retrieves the current RSE backing store pointer. IA64 specific.

Referenced by tbb::internal::generic_scheduler::can_steal(), and tbb::internal::generic_scheduler::init_stack_info().

Here is the caller graph for this function:

◆ __TBB_machine_cmpswp1__TBB_full_fence()

int8_t __TBB_machine_cmpswp1__TBB_full_fence ( volatile void ptr,
int8_t  value,
int8_t  comparand 
)

◆ __TBB_machine_cmpswp1acquire()

int8_t __TBB_machine_cmpswp1acquire ( volatile void ptr,
int8_t  value,
int8_t  comparand 
)

◆ __TBB_machine_cmpswp1release()

int8_t __TBB_machine_cmpswp1release ( volatile void ptr,
int8_t  value,
int8_t  comparand 
)

◆ __TBB_machine_cmpswp2__TBB_full_fence()

int16_t __TBB_machine_cmpswp2__TBB_full_fence ( volatile void ptr,
int16_t  value,
int16_t  comparand 
)

◆ __TBB_machine_cmpswp2acquire()

int16_t __TBB_machine_cmpswp2acquire ( volatile void ptr,
int16_t  value,
int16_t  comparand 
)

◆ __TBB_machine_cmpswp2release()

int16_t __TBB_machine_cmpswp2release ( volatile void ptr,
int16_t  value,
int16_t  comparand 
)

◆ __TBB_machine_cmpswp4__TBB_full_fence()

int32_t __TBB_machine_cmpswp4__TBB_full_fence ( volatile void ptr,
int32_t  value,
int32_t  comparand 
)

◆ __TBB_machine_cmpswp4acquire()

int32_t __TBB_machine_cmpswp4acquire ( volatile void ptr,
int32_t  value,
int32_t  comparand 
)

◆ __TBB_machine_cmpswp4release()

int32_t __TBB_machine_cmpswp4release ( volatile void ptr,
int32_t  value,
int32_t  comparand 
)

◆ __TBB_machine_cmpswp8__TBB_full_fence()

int64_t __TBB_machine_cmpswp8__TBB_full_fence ( volatile void ptr,
int64_t  value,
int64_t  comparand 
)

◆ __TBB_machine_cmpswp8acquire()

int64_t __TBB_machine_cmpswp8acquire ( volatile void ptr,
int64_t  value,
int64_t  comparand 
)

◆ __TBB_machine_cmpswp8release()

int64_t __TBB_machine_cmpswp8release ( volatile void ptr,
int64_t  value,
int64_t  comparand 
)

◆ __TBB_machine_fetchadd1__TBB_full_fence()

int8_t __TBB_machine_fetchadd1__TBB_full_fence ( volatile void ptr,
int8_t  addend 
)

◆ __TBB_machine_fetchadd1acquire()

int8_t __TBB_machine_fetchadd1acquire ( volatile void ptr,
int8_t  addend 
)

◆ __TBB_machine_fetchadd1release()

int8_t __TBB_machine_fetchadd1release ( volatile void ptr,
int8_t  addend 
)

◆ __TBB_machine_fetchadd2__TBB_full_fence()

int16_t __TBB_machine_fetchadd2__TBB_full_fence ( volatile void ptr,
int16_t  addend 
)

◆ __TBB_machine_fetchadd2acquire()

int16_t __TBB_machine_fetchadd2acquire ( volatile void ptr,
int16_t  addend 
)

◆ __TBB_machine_fetchadd2release()

int16_t __TBB_machine_fetchadd2release ( volatile void ptr,
int16_t  addend 
)

◆ __TBB_machine_fetchadd4__TBB_full_fence()

int32_t __TBB_machine_fetchadd4__TBB_full_fence ( volatile void ptr,
int32_t  value 
)

◆ __TBB_machine_fetchadd4acquire()

int32_t __TBB_machine_fetchadd4acquire ( volatile void ptr,
int32_t  addend 
)

◆ __TBB_machine_fetchadd4release()

int32_t __TBB_machine_fetchadd4release ( volatile void ptr,
int32_t  addend 
)

◆ __TBB_machine_fetchadd8__TBB_full_fence()

int64_t __TBB_machine_fetchadd8__TBB_full_fence ( volatile void ptr,
int64_t  value 
)

◆ __TBB_machine_fetchadd8acquire()

int64_t __TBB_machine_fetchadd8acquire ( volatile void ptr,
int64_t  addend 
)

◆ __TBB_machine_fetchadd8release()

int64_t __TBB_machine_fetchadd8release ( volatile void ptr,
int64_t  addend 
)

◆ __TBB_machine_fetchstore1__TBB_full_fence()

int8_t __TBB_machine_fetchstore1__TBB_full_fence ( volatile void ptr,
int8_t  value 
)

◆ __TBB_machine_fetchstore1acquire()

int8_t __TBB_machine_fetchstore1acquire ( volatile void ptr,
int8_t  value 
)

◆ __TBB_machine_fetchstore1release()

int8_t __TBB_machine_fetchstore1release ( volatile void ptr,
int8_t  value 
)

◆ __TBB_machine_fetchstore2__TBB_full_fence()

int16_t __TBB_machine_fetchstore2__TBB_full_fence ( volatile void ptr,
int16_t  value 
)

◆ __TBB_machine_fetchstore2acquire()

int16_t __TBB_machine_fetchstore2acquire ( volatile void ptr,
int16_t  value 
)

◆ __TBB_machine_fetchstore2release()

int16_t __TBB_machine_fetchstore2release ( volatile void ptr,
int16_t  value 
)

◆ __TBB_machine_fetchstore4__TBB_full_fence()

int32_t __TBB_machine_fetchstore4__TBB_full_fence ( volatile void ptr,
int32_t  value 
)

◆ __TBB_machine_fetchstore4acquire()

int32_t __TBB_machine_fetchstore4acquire ( volatile void ptr,
int32_t  value 
)

◆ __TBB_machine_fetchstore4release()

int32_t __TBB_machine_fetchstore4release ( volatile void ptr,
int32_t  value 
)

◆ __TBB_machine_fetchstore8__TBB_full_fence()

int64_t __TBB_machine_fetchstore8__TBB_full_fence ( volatile void ptr,
int64_t  value 
)

◆ __TBB_machine_fetchstore8acquire()

int64_t __TBB_machine_fetchstore8acquire ( volatile void ptr,
int64_t  value 
)

◆ __TBB_machine_fetchstore8release()

int64_t __TBB_machine_fetchstore8release ( volatile void ptr,
int64_t  value 
)

◆ __TBB_machine_lg()

int64_t __TBB_machine_lg ( uint64_t  value)

◆ __TBB_machine_load1_relaxed()

int32_t __TBB_machine_load1_relaxed ( const void ptr)

◆ __TBB_machine_load2_relaxed()

int32_t __TBB_machine_load2_relaxed ( const void ptr)

◆ __TBB_machine_load4_relaxed()

int32_t __TBB_machine_load4_relaxed ( const void ptr)

◆ __TBB_machine_load8_relaxed()

int64_t __TBB_machine_load8_relaxed ( const void ptr)

◆ __TBB_machine_lockbyte()

int64_t __TBB_machine_lockbyte ( volatile unsigned char &  ptr)

◆ __TBB_machine_pause()

void __TBB_machine_pause ( int32_t  delay)
inline

Definition at line 208 of file gcc_arm.h.

209 {
210  while(delay>0)
211  {
212  __asm__ __volatile__("yield" ::: "memory");
213  delay--;
214  }
215 }

References __TBB_compiler_fence.

◆ __TBB_machine_store1_relaxed()

void __TBB_machine_store1_relaxed ( void ptr,
int32_t  value 
)

◆ __TBB_machine_store2_relaxed()

void __TBB_machine_store2_relaxed ( void ptr,
int32_t  value 
)

◆ __TBB_machine_store4_relaxed()

void __TBB_machine_store4_relaxed ( void ptr,
int32_t  value 
)

◆ __TBB_machine_store8_relaxed()

void __TBB_machine_store8_relaxed ( void ptr,
int64_t  value 
)

◆ __TBB_machine_trylockbyte()

bool __TBB_machine_trylockbyte ( volatile unsigned char &  ptr)

Copyright © 2005-2020 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.