Intel(R) Threading Building Blocks Doxygen Documentation version 4.2.3
|
#include "tbb_stddef.h"
Go to the source code of this file.
Classes | |
struct | tbb::internal::atomic_selector< 1 > |
struct | tbb::internal::atomic_selector< 2 > |
struct | tbb::internal::atomic_selector< 4 > |
struct | tbb::internal::atomic_selector< 8 > |
class | tbb::internal::atomic_backoff |
Class that implements exponential backoff. More... | |
struct | tbb::internal::type_with_alignment< 1 > |
struct | tbb::internal::type_with_alignment< 2 > |
struct | tbb::internal::type_with_alignment< 4 > |
struct | tbb::internal::type_with_alignment< 8 > |
struct | tbb::internal::type_with_alignment< 16 > |
struct | tbb::internal::type_with_alignment< 32 > |
struct | tbb::internal::type_with_alignment< 64 > |
struct | tbb::internal::reverse< T > |
Namespaces | |
namespace | tbb |
The graph class. | |
namespace | tbb::internal |
Identifiers declared inside namespace internal should never be used directly by client code. | |
Macros | |
#define | __TBB_MACHINE_DEFINE_STORE8_GENERIC_FENCED(M) |
#define | __TBB_MACHINE_DEFINE_LOAD8_GENERIC_FENCED(M) |
#define | __TBB_ENDIAN_UNSUPPORTED -1 |
#define | __TBB_ENDIAN_LITTLE 0 |
#define | __TBB_ENDIAN_BIG 1 |
#define | __TBB_ENDIAN_DETECT 2 |
#define | __TBB_64BIT_ATOMICS 1 |
#define | __TBB_FetchAndAddWrelease(P, V) __TBB_FetchAndAddW(P,V) |
#define | __TBB_FetchAndIncrementWacquire(P) __TBB_FetchAndAddW(P,1) |
#define | __TBB_FetchAndDecrementWrelease(P) __TBB_FetchAndAddW(P,(-1)) |
#define | __TBB_ENDIANNESS __TBB_ENDIAN_DETECT |
#define | __TBB_DefineTypeWithAlignment(PowerOf2) |
#define | __TBB_alignof(T) alignof(T) |
#define | __TBB_TypeWithAlignmentAtLeastAsStrict(T) tbb::internal::type_with_alignment<__TBB_alignof(T)> |
#define | __TBB_load_acquire __TBB_load_with_acquire |
#define | __TBB_store_release __TBB_store_with_release |
#define | __TBB_UnlockByte(addr) __TBB_store_with_release((addr),0) |
Typedefs | |
typedef unsigned char | __TBB_Flag |
typedef __TBB_atomic __TBB_Flag | __TBB_atomic_flag |
Functions | |
void | __TBB_Pause (int32_t) |
void | tbb::atomic_fence () |
Sequentially consistent full memory fence. | |
template<typename T , typename U > | |
void | tbb::internal::spin_wait_while_eq (const volatile T &location, U value) |
Spin WHILE the value of the variable is equal to a given value. | |
template<typename T , typename U > | |
void | tbb::internal::spin_wait_until_eq (const volatile T &location, const U value) |
Spin UNTIL the value of the variable is equal to a given value. | |
template<typename predicate_type > | |
void | tbb::internal::spin_wait_while (predicate_type condition) |
template<typename T > | |
T | tbb::internal::__TBB_MaskedCompareAndSwap (volatile T *const ptr, const T value, const T comparand) |
template<size_t S, typename T > | |
T | tbb::internal::__TBB_CompareAndSwapGeneric (volatile void *ptr, T value, T comparand) |
template<> | |
int8_t | tbb::internal::__TBB_CompareAndSwapGeneric< 1, int8_t > (volatile void *ptr, int8_t value, int8_t comparand) |
template<> | |
int16_t | tbb::internal::__TBB_CompareAndSwapGeneric< 2, int16_t > (volatile void *ptr, int16_t value, int16_t comparand) |
template<> | |
int32_t | tbb::internal::__TBB_CompareAndSwapGeneric< 4, int32_t > (volatile void *ptr, int32_t value, int32_t comparand) |
template<> | |
int64_t | tbb::internal::__TBB_CompareAndSwapGeneric< 8, int64_t > (volatile void *ptr, int64_t value, int64_t comparand) |
template<size_t S, typename T > | |
T | tbb::internal::__TBB_FetchAndAddGeneric (volatile void *ptr, T addend) |
template<size_t S, typename T > | |
T | tbb::internal::__TBB_FetchAndStoreGeneric (volatile void *ptr, T value) |
template<typename T > | |
T | tbb::internal::__TBB_load_with_acquire (const volatile T &location) |
template<typename T , typename V > | |
void | tbb::internal::__TBB_store_with_release (volatile T &location, V value) |
void | tbb::internal::__TBB_store_with_release (volatile size_t &location, size_t value) |
Overload that exists solely to avoid /Wp64 warnings. | |
template<typename T > | |
T | tbb::internal::__TBB_load_full_fence (const volatile T &location) |
template<typename T , typename V > | |
void | tbb::internal::__TBB_store_full_fence (volatile T &location, V value) |
void | tbb::internal::__TBB_store_full_fence (volatile size_t &location, size_t value) |
Overload that exists solely to avoid /Wp64 warnings. | |
template<typename T > | |
T | tbb::internal::__TBB_load_relaxed (const volatile T &location) |
template<typename T , typename V > | |
void | tbb::internal::__TBB_store_relaxed (volatile T &location, V value) |
void | tbb::internal::__TBB_store_relaxed (volatile size_t &location, size_t value) |
Overload that exists solely to avoid /Wp64 warnings. | |
tbb::internal::__TBB_DefineTypeWithAlignment (8) __TBB_DefineTypeWithAlignment(16) __TBB_DefineTypeWithAlignment(32) __TBB_DefineTypeWithAlignment(64) typedef __TBB_machine_type_with_alignment_64 __TBB_machine_type_with_strictest_alignment | |
intptr_t | __TBB_Log2 (uintptr_t x) |
void | __TBB_AtomicOR (volatile void *operand, uintptr_t addend) |
void | __TBB_AtomicAND (volatile void *operand, uintptr_t addend) |
bool | __TBB_TryLockByte (__TBB_atomic_flag &flag) |
__TBB_Flag | __TBB_LockByte (__TBB_atomic_flag &flag) |
unsigned char | __TBB_ReverseByte (unsigned char src) |
template<typename T > | |
T | __TBB_ReverseBits (T src) |
#define __TBB_64BIT_ATOMICS 1 |
Definition at line 283 of file tbb_machine.h.
#define __TBB_alignof | ( | T | ) | alignof(T) |
Definition at line 763 of file tbb_machine.h.
#define __TBB_DefineTypeWithAlignment | ( | PowerOf2 | ) |
Definition at line 759 of file tbb_machine.h.
#define __TBB_ENDIAN_BIG 1 |
Definition at line 184 of file tbb_machine.h.
#define __TBB_ENDIAN_DETECT 2 |
Definition at line 185 of file tbb_machine.h.
#define __TBB_ENDIAN_LITTLE 0 |
Definition at line 183 of file tbb_machine.h.
#define __TBB_ENDIAN_UNSUPPORTED -1 |
Definition at line 182 of file tbb_machine.h.
#define __TBB_ENDIANNESS __TBB_ENDIAN_DETECT |
Definition at line 414 of file tbb_machine.h.
#define __TBB_FetchAndAddWrelease | ( | P, | |
V | |||
) | __TBB_FetchAndAddW(P,V) |
Definition at line 309 of file tbb_machine.h.
#define __TBB_FetchAndDecrementWrelease | ( | P | ) | __TBB_FetchAndAddW(P,(-1)) |
Definition at line 311 of file tbb_machine.h.
#define __TBB_FetchAndIncrementWacquire | ( | P | ) | __TBB_FetchAndAddW(P,1) |
Definition at line 310 of file tbb_machine.h.
#define __TBB_load_acquire __TBB_load_with_acquire |
Definition at line 856 of file tbb_machine.h.
#define __TBB_MACHINE_DEFINE_LOAD8_GENERIC_FENCED | ( | M | ) |
Definition at line 173 of file tbb_machine.h.
#define __TBB_MACHINE_DEFINE_STORE8_GENERIC_FENCED | ( | M | ) |
Definition at line 165 of file tbb_machine.h.
#define __TBB_store_release __TBB_store_with_release |
Definition at line 857 of file tbb_machine.h.
#define __TBB_TypeWithAlignmentAtLeastAsStrict | ( | T | ) | tbb::internal::type_with_alignment<__TBB_alignof(T)> |
Definition at line 816 of file tbb_machine.h.
Definition at line 927 of file tbb_machine.h.
typedef __TBB_atomic __TBB_Flag __TBB_atomic_flag |
Definition at line 910 of file tbb_machine.h.
typedef unsigned char __TBB_Flag |
Definition at line 908 of file tbb_machine.h.
Definition at line 888 of file tbb_machine.h.
References tbb::internal::atomic_backoff::pause().
Definition at line 878 of file tbb_machine.h.
References tbb::internal::atomic_backoff::pause().
|
inline |
Definition at line 919 of file tbb_machine.h.
References __TBB_TryLockByte, and tbb::internal::atomic_backoff::pause().
|
inline |
Definition at line 860 of file tbb_machine.h.
|
inline |
Definition at line 331 of file tbb_machine.h.
References __TBB_Yield.
T __TBB_ReverseBits | ( | T | src | ) |
Definition at line 967 of file tbb_machine.h.
References __TBB_ReverseByte().
Referenced by tbb::interface5::internal::concurrent_unordered_base< Traits >::concurrent_unordered_base(), tbb::interface5::internal::concurrent_unordered_base< Traits >::const_range_type::set_midpoint(), tbb::interface5::internal::concurrent_unordered_base< Traits >::split_order_key_dummy(), and tbb::interface5::internal::concurrent_unordered_base< Traits >::split_order_key_regular().
|
inline |
Definition at line 961 of file tbb_machine.h.
Referenced by __TBB_ReverseBits().
|
inline |
Definition at line 913 of file tbb_machine.h.
References __TBB_machine_cmpswp1().