Intel(R) Threading Building Blocks Doxygen Documentation version 4.2.3
|
#include <stdint.h>
#include <unistd.h>
Go to the source code of this file.
Functions | |
static int32_t | __TBB_machine_cmpswp4 (volatile void *ptr, int32_t value, int32_t comparand) |
static int64_t | __TBB_machine_cmpswp8 (volatile void *ptr, int64_t value, int64_t comparand) |
static int32_t | __TBB_machine_fetchadd4 (volatile void *ptr, int32_t addend) |
static int64_t | __TBB_machine_fetchadd8 (volatile void *ptr, int64_t addend) |
static int64_t | __TBB_machine_lg (uint64_t x) |
static void | __TBB_machine_or (volatile void *ptr, uint64_t value) |
static void | __TBB_machine_and (volatile void *ptr, uint64_t value) |
static void | __TBB_machine_pause (int32_t delay) |
static bool | __TBB_machine_trylockbyte (unsigned char &flag) |
#define __TBB_acquire_consistency_helper | ( | ) | __TBB_compiler_fence() |
Definition at line 36 of file sunos_sparc.h.
#define __TBB_AtomicAND | ( | P, | |
V | |||
) | __TBB_machine_and(P,V) |
Definition at line 193 of file sunos_sparc.h.
#define __TBB_AtomicOR | ( | P, | |
V | |||
) | __TBB_machine_or(P,V) |
Definition at line 192 of file sunos_sparc.h.
#define __TBB_compiler_fence | ( | ) | __asm__ __volatile__ ("": : :"memory") |
To those working on SPARC hardware. Consider relaxing acquire and release consistency helpers to no-op (as this port covers TSO mode only).
Definition at line 34 of file sunos_sparc.h.
#define __TBB_control_consistency_helper | ( | ) | __TBB_compiler_fence() |
Definition at line 35 of file sunos_sparc.h.
#define __TBB_ENDIANNESS __TBB_ENDIAN_BIG |
Definition at line 30 of file sunos_sparc.h.
#define __TBB_full_memory_fence | ( | ) | __asm__ __volatile__("membar #LoadLoad|#LoadStore|#StoreStore|#StoreLoad": : : "memory") |
Definition at line 38 of file sunos_sparc.h.
#define __TBB_Log2 | ( | V | ) | __TBB_machine_lg(V) |
Definition at line 197 of file sunos_sparc.h.
#define __TBB_Pause | ( | V | ) | __TBB_machine_pause(V) |
Definition at line 196 of file sunos_sparc.h.
#define __TBB_release_consistency_helper | ( | ) | __TBB_compiler_fence() |
Definition at line 37 of file sunos_sparc.h.
#define __TBB_TryLockByte | ( | P | ) | __TBB_machine_trylockbyte(P) |
Definition at line 199 of file sunos_sparc.h.
#define __TBB_USE_GENERIC_FETCH_STORE 1 |
Definition at line 187 of file sunos_sparc.h.
#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE 1 |
Definition at line 188 of file sunos_sparc.h.
#define __TBB_USE_GENERIC_PART_WORD_CAS 1 |
Definition at line 185 of file sunos_sparc.h.
#define __TBB_USE_GENERIC_PART_WORD_FETCH_ADD 1 |
Definition at line 186 of file sunos_sparc.h.
#define __TBB_USE_GENERIC_RELAXED_LOAD_STORE 1 |
Definition at line 189 of file sunos_sparc.h.
#define __TBB_USE_GENERIC_SEQUENTIAL_CONSISTENCY_LOAD_STORE 1 |
Definition at line 190 of file sunos_sparc.h.
#define __TBB_WORDSIZE 8 |
Definition at line 27 of file sunos_sparc.h.
Definition at line 155 of file sunos_sparc.h.
References value.
|
inlinestatic |
Atomic CAS for 32 bit values, if *ptr==comparand, then *ptr=value, returns *ptr
ptr | pointer to value in memory to be swapped with value if *ptr==comparand |
value | value to assign *ptr to if *ptr==comparand |
comparand | value to compare with *ptr ( |
Definition at line 51 of file sunos_sparc.h.
References value.
|
inlinestatic |
Atomic CAS for 64 bit values, if *ptr==comparand, then *ptr=value, returns *ptr
ptr | pointer to value in memory to be swapped with value if *ptr==comparand |
value | value to assign *ptr to if *ptr==comparand |
comparand | value to compare with *ptr ( |
Definition at line 68 of file sunos_sparc.h.
References value.
|
inlinestatic |
Atomic fetch and add for 32 bit values, in this case implemented by continuously checking success of atomicity
ptr | pointer to value to add addend to |
addened | value to add to *ptr |
Definition at line 88 of file sunos_sparc.h.
|
inlinestatic |
Atomic fetch and add for 64 bit values, in this case implemented by continuously checking success of atomicity
ptr | pointer to value to add addend to |
addened | value to add to *ptr |
Definition at line 108 of file sunos_sparc.h.
|
inlinestatic |
Definition at line 126 of file sunos_sparc.h.
References __TBB_ASSERT, and count.
Definition at line 143 of file sunos_sparc.h.
References value.
|
inlinestatic |
Definition at line 168 of file sunos_sparc.h.
|
inlinestatic |
Definition at line 175 of file sunos_sparc.h.