LLVM OpenMP 19.0.0git
Macros | Typedefs
kmp_atomic.cpp File Reference
#include "kmp_atomic.h"
#include "kmp.h"

Go to the source code of this file.

Macros

#define ATOMIC_XCHG_WR(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG)
 
#define ATOMIC_XCHG_FLOAT_WR(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG)
 
#define OP_CMPXCHG_WR(TYPE, BITS, OP)
 
#define ATOMIC_CMPXCHG_WR(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG)
 
#define ATOMIC_CRITICAL_WR(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG)
 

Typedefs

typedef unsigned char uchar
 
typedef unsigned short ushort
 
#define KMP_ATOMIC_VOLATILE   volatile
 
#define KMP_CHECK_GTID
 
#define ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, RET_TYPE)
 
#define ATOMIC_LOCK0   __kmp_atomic_lock
 
#define ATOMIC_LOCK1i   __kmp_atomic_lock_1i
 
#define ATOMIC_LOCK2i   __kmp_atomic_lock_2i
 
#define ATOMIC_LOCK4i   __kmp_atomic_lock_4i
 
#define ATOMIC_LOCK4r   __kmp_atomic_lock_4r
 
#define ATOMIC_LOCK8i   __kmp_atomic_lock_8i
 
#define ATOMIC_LOCK8r   __kmp_atomic_lock_8r
 
#define ATOMIC_LOCK8c   __kmp_atomic_lock_8c
 
#define ATOMIC_LOCK10r   __kmp_atomic_lock_10r
 
#define ATOMIC_LOCK16r   __kmp_atomic_lock_16r
 
#define ATOMIC_LOCK16c   __kmp_atomic_lock_16c
 
#define ATOMIC_LOCK20c   __kmp_atomic_lock_20c
 
#define ATOMIC_LOCK32c   __kmp_atomic_lock_32c
 
#define OP_CRITICAL(OP, LCK_ID)
 
#define OP_UPDATE_CRITICAL(TYPE, OP, LCK_ID)
 
#define OP_GOMP_CRITICAL(OP, FLAG)
 
#define OP_UPDATE_GOMP_CRITICAL(TYPE, OP, FLAG)
 
#define KMP_DO_PAUSE
 
#define OP_CMPXCHG(TYPE, BITS, OP)
 
#define ATOMIC_FIXED_ADD(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, GOMP_FLAG)
 
#define ATOMIC_CMPXCHG(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, GOMP_FLAG)
 
#define ATOMIC_CRIT_L(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG)
 
#define ATOMIC_CMPX_L(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, GOMP_FLAG)
 
#define MIN_MAX_CRITSECT(OP, LCK_ID)
 
#define GOMP_MIN_MAX_CRITSECT(OP, FLAG)
 
#define MIN_MAX_CMPXCHG(TYPE, BITS, OP)
 
#define MIN_MAX_CRITICAL(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG)
 
#define MIN_MAX_COMPXCHG(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, GOMP_FLAG)
 
#define ATOMIC_CRIT_EQV(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG)
 
#define ATOMIC_CMPX_EQV(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, GOMP_FLAG)
 
#define ATOMIC_CRITICAL(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG)
 
#define ATOMIC_BEGIN_MIX(TYPE_ID, TYPE, OP_ID, RTYPE_ID, RTYPE)
 
#define ATOMIC_CRITICAL_FP(TYPE_ID, TYPE, OP_ID, OP, RTYPE_ID, RTYPE, LCK_ID, GOMP_FLAG)
 
#define ATOMIC_CMPXCHG_MIX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, RTYPE, LCK_ID, MASK, GOMP_FLAG)
 
#define ATOMIC_CMPXCHG_CMPLX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, RTYPE, LCK_ID, MASK, GOMP_FLAG)
 
#define ATOMIC_BEGIN_READ(TYPE_ID, OP_ID, TYPE, RET_TYPE)
 
#define OP_CMPXCHG_READ(TYPE, BITS, OP)
 
#define OP_CRITICAL_READ(OP, LCK_ID)
 
#define OP_GOMP_CRITICAL_READ(OP, FLAG)
 
#define ATOMIC_FIXED_READ(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG)
 
#define ATOMIC_CMPXCHG_READ(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG)
 
#define ATOMIC_CRITICAL_READ(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG)
 
#define ATOMIC_BEGIN_CPT(TYPE_ID, OP_ID, TYPE, RET_TYPE)
 
#define OP_CRITICAL_CPT(OP, LCK_ID)
 
#define OP_UPDATE_CRITICAL_CPT(TYPE, OP, LCK_ID)
 
#define OP_GOMP_CRITICAL_CPT(TYPE, OP, FLAG)
 
#define OP_CMPXCHG_CPT(TYPE, BITS, OP)
 
#define ATOMIC_CMPXCHG_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG)
 
#define ATOMIC_FIXED_ADD_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG)
 
#define OP_CRITICAL_L_CPT(OP, LCK_ID)
 
#define OP_GOMP_CRITICAL_L_CPT(OP, FLAG)
 
#define ATOMIC_CMPX_L_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG)
 
#define MIN_MAX_CRITSECT_CPT(OP, LCK_ID)
 
#define GOMP_MIN_MAX_CRITSECT_CPT(OP, FLAG)
 
#define MIN_MAX_CMPXCHG_CPT(TYPE, BITS, OP)
 
#define MIN_MAX_CRITICAL_CPT(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG)
 
#define MIN_MAX_COMPXCHG_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG)
 
#define OP_GOMP_CRITICAL_EQV_CPT(OP, FLAG)
 
#define ATOMIC_CMPX_EQV_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG)
 
#define ATOMIC_CRITICAL_CPT(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG)
 
#define OP_CRITICAL_CPT_WRK(OP, LCK_ID)
 
#define OP_GOMP_CRITICAL_CPT_WRK(OP, FLAG)
 
#define ATOMIC_BEGIN_WRK(TYPE_ID, OP_ID, TYPE)
 
#define ATOMIC_CRITICAL_CPT_WRK(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG)
 
int __kmp_atomic_mode = 1
 
kmp_atomic_lock_t __kmp_atomic_lock
 
kmp_atomic_lock_t __kmp_atomic_lock_1i
 
kmp_atomic_lock_t __kmp_atomic_lock_2i
 
kmp_atomic_lock_t __kmp_atomic_lock_4i
 
kmp_atomic_lock_t __kmp_atomic_lock_4r
 
kmp_atomic_lock_t __kmp_atomic_lock_8i
 
kmp_atomic_lock_t __kmp_atomic_lock_8r
 
kmp_atomic_lock_t __kmp_atomic_lock_8c
 
kmp_atomic_lock_t __kmp_atomic_lock_10r
 
kmp_atomic_lock_t __kmp_atomic_lock_16r
 
kmp_atomic_lock_t __kmp_atomic_lock_16c
 
kmp_atomic_lock_t __kmp_atomic_lock_20c
 
kmp_atomic_lock_t __kmp_atomic_lock_32c
 
 sub
 
 kmp_int32
 
 kmp_real32
 
KMP_ARCH_X86 kmp_int64
 
KMP_ARCH_X86 KMP_ARCH_X86 kmp_real64
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 andb
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 kmp_int8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 div
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 kmp_uint8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 orb
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 shr
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 add
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 kmp_int16
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 mul
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 shl
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 kmp_uint32
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 xor
 
 orl
 
 char
 
KMP_ARCH_X86 short
 
 min
 
 neqv
 
KMP_ARCH_X86 KMP_ARCH_X86 eqv
 
 float8
 
 kmp_cmplx32
 
 cmplx8
 
 kmp_cmplx64
 
 rd
 
KMP_ARCH_X86 KMP_ARCH_X86 long double
 
KMP_ARCH_X86 KMP_ARCH_X86 long wr
 
KMP_ARCH_X86 KMP_ARCH_X86 long KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 long kmp_cmplx80
 
 sub_cpt
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 andb_cpt
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 div_cpt
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 orb_cpt
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 shr_cpt
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 add_cpt
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 mul_cpt
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 shl_cpt
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 xor_cpt
 
 orl_cpt
 
 min_cpt
 
 neqv_cpt
 
KMP_ARCH_X86 KMP_ARCH_X86 eqv_cpt
 
 ATOMIC_FIXED_ADD (fixed4, add, kmp_int32, 32,+, 4i, 3, 0) ATOMIC_FIXED_ADD(fixed4
 
 ATOMIC_CMPXCHG (float4, add, kmp_real32, 32,+, 4r, 3, KMP_ARCH_X86) ATOMIC_CMPXCHG(float4
 
KMP_ARCH_X86 ATOMIC_FIXED_ADD (fixed8, add, kmp_int64, 64,+, 8i, 7, KMP_ARCH_X86) ATOMIC_FIXED_ADD(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (float8, add, kmp_real64, 64,+, 8r, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG(float8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed1, add, kmp_int8, 8,+, 1i, 0, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed1
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed1, div, kmp_int8, 8,/, 1i, 0, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed1u
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed1, mul, kmp_int8, 8, *, 1i, 0, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed1
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed1, shl, kmp_int8, 8,<<, 1i, 0, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed1
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed1u, shr, kmp_uint8, 8, > >, 1i, 0, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed1
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed1, xor, kmp_int8, 8, ^, 1i, 0, 0) ATOMIC_CMPXCHG(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed2, andb, kmp_int16, 16, &, 2i, 1, 0) ATOMIC_CMPXCHG(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed2u, div, kmp_uint16, 16,/, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed2, orb, kmp_int16, 16,|, 2i, 1, 0) ATOMIC_CMPXCHG(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed2u, shr, kmp_uint16, 16, > >, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed2, xor, kmp_int16, 16, ^, 2i, 1, 0) ATOMIC_CMPXCHG(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed4, div, kmp_int32, 32,/, 4i, 3, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed4u
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed4, mul, kmp_int32, 32, *, 4i, 3, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed4, shl, kmp_int32, 32,<<, 4i, 3, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed4u, shr, kmp_uint32, 32, > >, 4i, 3, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed8, andb, kmp_int64, 64, &, 8i, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed8u, div, kmp_uint64, 64,/, 8i, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed8, orb, kmp_int64, 64,|, 8i, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 8i, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed8, shr, kmp_int64, 64, > KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed8u, shr, kmp_uint64, 64, > >, 8i, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 8i, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed8, shr, kmp_int64, 64, > KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (float4, div, kmp_real32, 32,/, 4r, 3, KMP_ARCH_X86) ATOMIC_CMPXCHG(float4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 8i, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed8, shr, kmp_int64, 64, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG (float8, div, kmp_real64, 64,/, 8r, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG(float8
 
 ATOMIC_CMPX_L (fixed1, andl, char, 8, &&, 1i, 0, KMP_ARCH_X86) ATOMIC_CMPX_L(fixed1
 
KMP_ARCH_X86 ATOMIC_CMPX_L (fixed2, andl, short, 16, &&, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPX_L(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_L (fixed4, andl, kmp_int32, 32, &&, 4i, 3, 0) ATOMIC_CMPX_L(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_L (fixed8, andl, kmp_int64, 64, &&, 8i, 7, KMP_ARCH_X86) ATOMIC_CMPX_L(fixed8
 
 MIN_MAX_COMPXCHG (fixed1, max, char, 8,<, 1i, 0, KMP_ARCH_X86) MIN_MAX_COMPXCHG(fixed1
 
KMP_ARCH_X86 MIN_MAX_COMPXCHG (fixed2, max, short, 16,<, 2i, 1, KMP_ARCH_X86) MIN_MAX_COMPXCHG(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG (fixed4, max, kmp_int32, 32,<, 4i, 3, 0) MIN_MAX_COMPXCHG(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG (fixed8, max, kmp_int64, 64,<, 8i, 7, KMP_ARCH_X86) MIN_MAX_COMPXCHG(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG (float4, max, kmp_real32, 32,<, 4r, 3, KMP_ARCH_X86) MIN_MAX_COMPXCHG(float4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG (float8, max, kmp_real64, 64,<, 8r, 7, KMP_ARCH_X86) MIN_MAX_COMPXCHG(float8
 
 ATOMIC_CMPXCHG (fixed1, neqv, kmp_int8, 8, ^, 1i, 0, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2
 
KMP_ARCH_X86 ATOMIC_CMPXCHG (fixed4, neqv, kmp_int32, 32, ^, 4i, 3, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_EQV (fixed1, eqv, kmp_int8, 8, ^~, 1i, 0, KMP_ARCH_X86) ATOMIC_CMPX_EQV(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_EQV (fixed4, eqv, kmp_int32, 32, ^~, 4i, 3, KMP_ARCH_X86) ATOMIC_CMPX_EQV(fixed8
 
 ATOMIC_CMPXCHG_MIX (fixed1, char, mul, 8, *, float8, kmp_real64, 1i, 0, KMP_ARCH_X86) ATOMIC_CMPXCHG_MIX(fixed1
 
KMP_ARCH_X86 ATOMIC_CMPXCHG_MIX (fixed2, short, mul, 16, *, float8, kmp_real64, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG_MIX(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_MIX (fixed4, kmp_int32, mul, 32, *, float8, kmp_real64, 4i, 3, 0) ATOMIC_CMPXCHG_MIX(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_MIX (fixed8, kmp_int64, mul, 64, *, float8, kmp_real64, 8i, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG_MIX(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_MIX (float4, kmp_real32, add, 32,+, float8, kmp_real64, 4r, 3, KMP_ARCH_X86) ATOMIC_CMPXCHG_MIX(float4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_MIX (float4, kmp_real32, mul, 32, *, float8, kmp_real64, 4r, 3, KMP_ARCH_X86) ATOMIC_CMPXCHG_MIX(float4
 
 ATOMIC_CMPXCHG_CMPLX (cmplx4, kmp_cmplx32, add, 64,+, cmplx8, kmp_cmplx64, 8c, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG_CMPLX(cmplx4
 
KMP_ARCH_X86 ATOMIC_CMPXCHG_CMPLX (cmplx4, kmp_cmplx32, mul, 64, *, cmplx8, kmp_cmplx64, 8c, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG_CMPLX(cmplx4
 
 ATOMIC_FIXED_READ (fixed8, rd, kmp_int64, 64,+, KMP_ARCH_X86) ATOMIC_CMPXCHG_READ(float4
 
KMP_ARCH_X86 ATOMIC_CMPXCHG_READ (float8, rd, kmp_real64, 64,+, KMP_ARCH_X86) ATOMIC_CMPXCHG_READ(fixed1
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_READ (fixed2, rd, kmp_int16, 16,+, KMP_ARCH_X86) ATOMIC_CRITICAL_READ(float10
 
KMP_ARCH_X86 KMP_ARCH_X86 long ATOMIC_CRITICAL_READ (cmplx4, rd, kmp_cmplx32,+, 8c, 1) ATOMIC_CRITICAL_READ(cmplx8
 
KMP_ARCH_X86 KMP_ARCH_X86 long ATOMIC_CRITICAL_READ (cmplx10, rd, kmp_cmplx80,+, 20c, 1) ATOMIC_XCHG_WR(fixed1
 
KMP_ARCH_X86 KMP_ARCH_X86 long KMP_ARCH_X86 ATOMIC_XCHG_WR (fixed2, wr, kmp_int16, 16,=, KMP_ARCH_X86) ATOMIC_XCHG_WR(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 long KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_XCHG_WR (fixed8, wr, kmp_int64, 64,=, KMP_ARCH_X86) ATOMIC_XCHG_FLOAT_WR(float4
 
KMP_ARCH_X86 KMP_ARCH_X86 long KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_XCHG_FLOAT_WR (float8, wr, kmp_real64, 64,=, KMP_ARCH_X86) ATOMIC_CRITICAL_WR(float10
 
KMP_ARCH_X86 KMP_ARCH_X86 long KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 long ATOMIC_CRITICAL_WR (cmplx8, wr, kmp_cmplx64,=, 16c, 1) ATOMIC_CRITICAL_WR(cmplx10
 
 ATOMIC_FIXED_ADD_CPT (fixed4, add_cpt, kmp_int32, 32,+, 0) ATOMIC_FIXED_ADD_CPT(fixed4
 
 ATOMIC_FIXED_ADD_CPT (fixed8, add_cpt, kmp_int64, 64,+, KMP_ARCH_X86) ATOMIC_FIXED_ADD_CPT(fixed8
 
KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (float4, add_cpt, kmp_real32, 32,+, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(float4
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (float8, add_cpt, kmp_real64, 64,+, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(float8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed1, add_cpt, kmp_int8, 8,+, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed1
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed1, div_cpt, kmp_int8, 8,/, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed1u
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed1, mul_cpt, kmp_int8, 8, *, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed1
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed1, shl_cpt, kmp_int8, 8,<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed1
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed1u, shr_cpt, kmp_uint8, 8, > >, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed1
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed1, xor_cpt, kmp_int8, 8, ^, 0) ATOMIC_CMPXCHG_CPT(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed2, andb_cpt, kmp_int16, 16, &, 0) ATOMIC_CMPXCHG_CPT(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed2u, div_cpt, kmp_uint16, 16,/, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed2, orb_cpt, kmp_int16, 16,|, 0) ATOMIC_CMPXCHG_CPT(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed2u, shr_cpt, kmp_uint16, 16, > >, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed2, xor_cpt, kmp_int16, 16, ^, 0) ATOMIC_CMPXCHG_CPT(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed4, div_cpt, kmp_int32, 32,/, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed4u
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed4, mul_cpt, kmp_int32, 32, *, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed4, shl_cpt, kmp_int32, 32,<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed4u, shr_cpt, kmp_uint32, 32, > >, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed8, andb_cpt, kmp_int64, 64, &, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed8u, div_cpt, kmp_uint64, 64,/, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed8, orb_cpt, kmp_int64, 64,|, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed8, shr_cpt, kmp_int64, 64, > KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed8u, shr_cpt, kmp_uint64, 64, > >, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed8, shr_cpt, kmp_int64, 64, > KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (float4, div_cpt, kmp_real32, 32,/, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(float4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed8, shr_cpt, kmp_int64, 64, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (float8, div_cpt, kmp_real64, 64,/, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(float8
 
 ATOMIC_CMPX_L_CPT (fixed1, andl_cpt, char, 8, &&, KMP_ARCH_X86) ATOMIC_CMPX_L_CPT(fixed1
 
KMP_ARCH_X86 ATOMIC_CMPX_L_CPT (fixed2, andl_cpt, short, 16, &&, KMP_ARCH_X86) ATOMIC_CMPX_L_CPT(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_L_CPT (fixed4, andl_cpt, kmp_int32, 32, &&, 0) ATOMIC_CMPX_L_CPT(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_L_CPT (fixed8, andl_cpt, kmp_int64, 64, &&, KMP_ARCH_X86) ATOMIC_CMPX_L_CPT(fixed8
 
 MIN_MAX_COMPXCHG_CPT (fixed1, max_cpt, char, 8,<, KMP_ARCH_X86) MIN_MAX_COMPXCHG_CPT(fixed1
 
KMP_ARCH_X86 MIN_MAX_COMPXCHG_CPT (fixed2, max_cpt, short, 16,<, KMP_ARCH_X86) MIN_MAX_COMPXCHG_CPT(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG_CPT (fixed4, max_cpt, kmp_int32, 32,<, 0) MIN_MAX_COMPXCHG_CPT(fixed4
 
KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG_CPT (fixed8, max_cpt, kmp_int64, 64,<, KMP_ARCH_X86) MIN_MAX_COMPXCHG_CPT(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG_CPT (float4, max_cpt, kmp_real32, 32,<, KMP_ARCH_X86) MIN_MAX_COMPXCHG_CPT(float4
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG_CPT (float8, max_cpt, kmp_real64, 64,<, KMP_ARCH_X86) MIN_MAX_COMPXCHG_CPT(float8
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_CRITICAL_CPT (float10, max_cpt, long double,<, 10r, 1) MIN_MAX_CRITICAL_CPT(float10
 
 ATOMIC_CMPXCHG_CPT (fixed1, neqv_cpt, kmp_int8, 8, ^, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2
 
KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT (fixed4, neqv_cpt, kmp_int32, 32, ^, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed8
 
KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_EQV_CPT (fixed1, eqv_cpt, kmp_int8, 8, ^~, KMP_ARCH_X86) ATOMIC_CMPX_EQV_CPT(fixed2
 
KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_EQV_CPT (fixed4, eqv_cpt, kmp_int32, 32, ^~, KMP_ARCH_X86) ATOMIC_CMPX_EQV_CPT(fixed8
 
 ATOMIC_CRITICAL_CPT (float10, add_cpt, long double,+, 10r, 1) ATOMIC_CRITICAL_CPT(float10
 
long ATOMIC_CRITICAL_CPT (float10, mul_cpt, long double, *, 10r, 1) ATOMIC_CRITICAL_CPT(float10
 
long long ATOMIC_CRITICAL_CPT_WRK (cmplx4, add_cpt, kmp_cmplx32,+, 8c, 1) ATOMIC_CRITICAL_CPT_WRK(cmplx4
 
long long ATOMIC_CRITICAL_CPT_WRK (cmplx4, mul_cpt, kmp_cmplx32, *, 8c, 1) ATOMIC_CRITICAL_CPT_WRK(cmplx4
 
long long ATOMIC_CRITICAL_CPT (cmplx8, add_cpt, kmp_cmplx64,+, 16c, 1) ATOMIC_CRITICAL_CPT(cmplx8
 
long long ATOMIC_CRITICAL_CPT (cmplx8, mul_cpt, kmp_cmplx64, *, 16c, 1) ATOMIC_CRITICAL_CPT(cmplx8
 
long long ATOMIC_CRITICAL_CPT (cmplx10, add_cpt, kmp_cmplx80,+, 20c, 1) ATOMIC_CRITICAL_CPT(cmplx10
 
long long ATOMIC_CRITICAL_CPT (cmplx10, mul_cpt, kmp_cmplx80, *, 20c, 1) ATOMIC_CRITICAL_CPT(cmplx10
 
long long void __kmpc_atomic_1 (ident_t *id_ref, int gtid, void *lhs, void *rhs, void(*f)(void *, void *, void *))
 
void __kmpc_atomic_2 (ident_t *id_ref, int gtid, void *lhs, void *rhs, void(*f)(void *, void *, void *))
 
void __kmpc_atomic_4 (ident_t *id_ref, int gtid, void *lhs, void *rhs, void(*f)(void *, void *, void *))
 
void __kmpc_atomic_8 (ident_t *id_ref, int gtid, void *lhs, void *rhs, void(*f)(void *, void *, void *))
 
void __kmpc_atomic_16 (ident_t *id_ref, int gtid, void *lhs, void *rhs, void(*f)(void *, void *, void *))
 
void __kmpc_atomic_32 (ident_t *id_ref, int gtid, void *lhs, void *rhs, void(*f)(void *, void *, void *))
 
void __kmpc_atomic_start (void)
 
void __kmpc_atomic_end (void)
 

Macro Definition Documentation

◆ ATOMIC_BEGIN

#define ATOMIC_BEGIN (   TYPE_ID,
  OP_ID,
  TYPE,
  RET_TYPE 
)
Value:
RET_TYPE __kmpc_atomic_##TYPE_ID##_##OP_ID(ident_t *id_ref, int gtid, \
TYPE *lhs, TYPE rhs) { \
KMP_DEBUG_ASSERT(__kmp_init_serial); \
KA_TRACE(100, ("__kmpc_atomic_" #TYPE_ID "_" #OP_ID ": T#%d\n", gtid));
volatile int __kmp_init_serial
Definition: kmp_global.cpp:44
#define TYPE

Definition at line 698 of file kmp_atomic.cpp.

◆ ATOMIC_BEGIN_CPT

#define ATOMIC_BEGIN_CPT (   TYPE_ID,
  OP_ID,
  TYPE,
  RET_TYPE 
)
Value:
RET_TYPE __kmpc_atomic_##TYPE_ID##_##OP_ID(ident_t *id_ref, int gtid, \
TYPE *lhs, TYPE rhs, int flag) { \
KMP_DEBUG_ASSERT(__kmp_init_serial); \
KA_TRACE(100, ("__kmpc_atomic_" #TYPE_ID "_" #OP_ID ": T#%d\n", gtid));
volatile int flag

Definition at line 2211 of file kmp_atomic.cpp.

◆ ATOMIC_BEGIN_MIX

#define ATOMIC_BEGIN_MIX (   TYPE_ID,
  TYPE,
  OP_ID,
  RTYPE_ID,
  RTYPE 
)
Value:
void __kmpc_atomic_##TYPE_ID##_##OP_ID##_##RTYPE_ID( \
ident_t *id_ref, int gtid, TYPE *lhs, RTYPE rhs) { \
KMP_DEBUG_ASSERT(__kmp_init_serial); \
KA_TRACE(100, \
("__kmpc_atomic_" #TYPE_ID "_" #OP_ID "_" #RTYPE_ID ": T#%d\n", \
gtid));

Definition at line 1630 of file kmp_atomic.cpp.

◆ ATOMIC_BEGIN_READ

#define ATOMIC_BEGIN_READ (   TYPE_ID,
  OP_ID,
  TYPE,
  RET_TYPE 
)
Value:
RET_TYPE __kmpc_atomic_##TYPE_ID##_##OP_ID(ident_t *id_ref, int gtid, \
TYPE *loc) { \
KMP_DEBUG_ASSERT(__kmp_init_serial); \
KA_TRACE(100, ("__kmpc_atomic_" #TYPE_ID "_" #OP_ID ": T#%d\n", gtid));
static id loc

Definition at line 1928 of file kmp_atomic.cpp.

◆ ATOMIC_BEGIN_WRK

#define ATOMIC_BEGIN_WRK (   TYPE_ID,
  OP_ID,
  TYPE 
)
Value:
void __kmpc_atomic_##TYPE_ID##_##OP_ID(ident_t *id_ref, int gtid, TYPE *lhs, \
TYPE rhs, TYPE *out, int flag) { \
KMP_DEBUG_ASSERT(__kmp_init_serial); \
KA_TRACE(100, ("__kmpc_atomic_" #TYPE_ID "_" #OP_ID ": T#%d\n", gtid));

Definition at line 2828 of file kmp_atomic.cpp.

◆ ATOMIC_CMPX_EQV

#define ATOMIC_CMPX_EQV (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  LCK_ID,
  MASK,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_GOMP_CRITICAL(^= (TYPE) ~, GOMP_FLAG) \
if (!((kmp_uintptr_t)lhs & 0x##MASK)) { \
OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
} else { \
OP_CRITICAL(^= (TYPE) ~, LCK_ID) /* unaligned address - use critical */ \
} \
}
#define ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, RET_TYPE)
Definition: kmp_atomic.cpp:698
#define KMP_CHECK_GTID
Definition: kmp_atomic.cpp:688
unsigned long kmp_uintptr_t
Definition: kmp_os.h:205

Definition at line 1279 of file kmp_atomic.cpp.

◆ ATOMIC_CMPX_EQV_CPT

#define ATOMIC_CMPX_EQV_CPT (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_CPT(TYPE_ID, OP_ID, TYPE, TYPE) \
TYPE new_value; \
(void)new_value; \
OP_GOMP_CRITICAL_EQV_CPT(^= (TYPE) ~, GOMP_FLAG) /* send assignment */ \
OP_CMPXCHG_CPT(TYPE, BITS, OP) \
}
void
Definition: ittnotify.h:3324
#define ATOMIC_BEGIN_CPT(TYPE_ID, OP_ID, TYPE, RET_TYPE)

Definition at line 2759 of file kmp_atomic.cpp.

◆ ATOMIC_CMPX_L

#define ATOMIC_CMPX_L (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  LCK_ID,
  MASK,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_GOMP_CRITICAL(= *lhs OP, GOMP_FLAG) \
if (!((kmp_uintptr_t)lhs & 0x##MASK)) { \
OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
} else { \
OP_CRITICAL(= *lhs OP, LCK_ID) /* unaligned - use critical */ \
} \
}

Definition at line 1098 of file kmp_atomic.cpp.

◆ ATOMIC_CMPX_L_CPT

#define ATOMIC_CMPX_L_CPT (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_CPT(TYPE_ID, OP_ID, TYPE, TYPE) \
TYPE new_value; \
(void)new_value; \
OP_GOMP_CRITICAL_L_CPT(= *lhs OP, GOMP_FLAG) \
OP_CMPXCHG_CPT(TYPE, BITS, OP) \
}

Definition at line 2602 of file kmp_atomic.cpp.

◆ ATOMIC_CMPXCHG

#define ATOMIC_CMPXCHG (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  LCK_ID,
  MASK,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
if (!((kmp_uintptr_t)lhs & 0x##MASK)) { \
OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
} else { \
OP_UPDATE_CRITICAL(TYPE, OP, \
LCK_ID) /* unaligned address - use critical */ \
} \
}

Definition at line 915 of file kmp_atomic.cpp.

◆ ATOMIC_CMPXCHG_CMPLX

#define ATOMIC_CMPXCHG_CMPLX (   TYPE_ID,
  TYPE,
  OP_ID,
  BITS,
  OP,
  RTYPE_ID,
  RTYPE,
  LCK_ID,
  MASK,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_MIX(TYPE_ID, TYPE, OP_ID, RTYPE_ID, RTYPE) \
OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
if (!((kmp_uintptr_t)lhs & 0x##MASK)) { \
OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
} else { \
OP_UPDATE_CRITICAL(TYPE, OP, \
LCK_ID) /* unaligned address - use critical */ \
} \
}
#define ATOMIC_BEGIN_MIX(TYPE_ID, TYPE, OP_ID, RTYPE_ID, RTYPE)

Definition at line 1894 of file kmp_atomic.cpp.

◆ ATOMIC_CMPXCHG_CPT

#define ATOMIC_CMPXCHG_CPT (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_CPT(TYPE_ID, OP_ID, TYPE, TYPE) \
TYPE new_value; \
(void)new_value; \
OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) \
OP_CMPXCHG_CPT(TYPE, BITS, OP) \
}

Definition at line 2290 of file kmp_atomic.cpp.

◆ ATOMIC_CMPXCHG_MIX

#define ATOMIC_CMPXCHG_MIX (   TYPE_ID,
  TYPE,
  OP_ID,
  BITS,
  OP,
  RTYPE_ID,
  RTYPE,
  LCK_ID,
  MASK,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_MIX(TYPE_ID, TYPE, OP_ID, RTYPE_ID, RTYPE) \
OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
if (!((kmp_uintptr_t)lhs & 0x##MASK)) { \
OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
} else { \
OP_UPDATE_CRITICAL(TYPE, OP, \
LCK_ID) /* unaligned address - use critical */ \
} \
}

Definition at line 1660 of file kmp_atomic.cpp.

◆ ATOMIC_CMPXCHG_READ

#define ATOMIC_CMPXCHG_READ (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_READ(TYPE_ID, OP_ID, TYPE, TYPE) \
TYPE new_value; \
OP_GOMP_CRITICAL_READ(OP## =, GOMP_FLAG) \
OP_CMPXCHG_READ(TYPE, BITS, OP) \
}
#define ATOMIC_BEGIN_READ(TYPE_ID, OP_ID, TYPE, RET_TYPE)

Definition at line 1995 of file kmp_atomic.cpp.

◆ ATOMIC_CMPXCHG_WR

#define ATOMIC_CMPXCHG_WR (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_GOMP_CRITICAL(OP, GOMP_FLAG) \
OP_CMPXCHG_WR(TYPE, BITS, OP) \
}

◆ ATOMIC_CRIT_EQV

#define ATOMIC_CRIT_EQV (   TYPE_ID,
  OP_ID,
  TYPE,
  OP,
  LCK_ID,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_GOMP_CRITICAL(^= (TYPE) ~, GOMP_FLAG) /* send assignment */ \
OP_CRITICAL(^= (TYPE) ~, LCK_ID) /* send assignment and complement */ \
}

Definition at line 1259 of file kmp_atomic.cpp.

◆ ATOMIC_CRIT_L

#define ATOMIC_CRIT_L (   TYPE_ID,
  OP_ID,
  TYPE,
  OP,
  LCK_ID,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_GOMP_CRITICAL(= *lhs OP, GOMP_FLAG) \
OP_CRITICAL(= *lhs OP, LCK_ID) \
}

Definition at line 1079 of file kmp_atomic.cpp.

◆ ATOMIC_CRITICAL

#define ATOMIC_CRITICAL (   TYPE_ID,
  OP_ID,
  TYPE,
  OP,
  LCK_ID,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) /* send assignment */ \
OP_UPDATE_CRITICAL(TYPE, OP, LCK_ID) /* send assignment */ \
}

Definition at line 1315 of file kmp_atomic.cpp.

◆ ATOMIC_CRITICAL_CPT

#define ATOMIC_CRITICAL_CPT (   TYPE_ID,
  OP_ID,
  TYPE,
  OP,
  LCK_ID,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_CPT(TYPE_ID, OP_ID, TYPE, TYPE) \
TYPE new_value; \
OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) /* send assignment */ \
OP_UPDATE_CRITICAL_CPT(TYPE, OP, LCK_ID) /* send assignment */ \
}

Definition at line 2792 of file kmp_atomic.cpp.

◆ ATOMIC_CRITICAL_CPT_WRK

#define ATOMIC_CRITICAL_CPT_WRK (   TYPE_ID,
  OP_ID,
  TYPE,
  OP,
  LCK_ID,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_WRK(TYPE_ID, OP_ID, TYPE) \
OP_GOMP_CRITICAL_CPT_WRK(OP, GOMP_FLAG) \
OP_CRITICAL_CPT_WRK(OP## =, LCK_ID) \
}
#define ATOMIC_BEGIN_WRK(TYPE_ID, OP_ID, TYPE)

Definition at line 2835 of file kmp_atomic.cpp.

◆ ATOMIC_CRITICAL_FP

#define ATOMIC_CRITICAL_FP (   TYPE_ID,
  TYPE,
  OP_ID,
  OP,
  RTYPE_ID,
  RTYPE,
  LCK_ID,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_MIX(TYPE_ID, TYPE, OP_ID, RTYPE_ID, RTYPE) \
OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) /* send assignment */ \
OP_UPDATE_CRITICAL(TYPE, OP, LCK_ID) /* send assignment */ \
}

Definition at line 1639 of file kmp_atomic.cpp.

◆ ATOMIC_CRITICAL_READ

#define ATOMIC_CRITICAL_READ (   TYPE_ID,
  OP_ID,
  TYPE,
  OP,
  LCK_ID,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_READ(TYPE_ID, OP_ID, TYPE, TYPE) \
TYPE new_value; \
OP_GOMP_CRITICAL_READ(OP## =, GOMP_FLAG) /* send assignment */ \
OP_CRITICAL_READ(OP, LCK_ID) /* send assignment */ \
return new_value; \
}

Definition at line 2007 of file kmp_atomic.cpp.

◆ ATOMIC_CRITICAL_WR

#define ATOMIC_CRITICAL_WR (   TYPE_ID,
  OP_ID,
  TYPE,
  OP,
  LCK_ID,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_GOMP_CRITICAL(OP, GOMP_FLAG) /* send assignment */ \
OP_CRITICAL(OP, LCK_ID) /* send assignment */ \
}

◆ ATOMIC_FIXED_ADD

#define ATOMIC_FIXED_ADD (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  LCK_ID,
  MASK,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
if (!((kmp_uintptr_t)lhs & 0x##MASK)) { \
/* OP used as a sign for subtraction: (lhs-rhs) --> (lhs+-rhs) */ \
KMP_TEST_THEN_ADD##BITS(lhs, OP rhs); \
} else { \
OP_UPDATE_CRITICAL(TYPE, OP, \
LCK_ID) /* unaligned address - use critical */ \
} \
}

Definition at line 901 of file kmp_atomic.cpp.

◆ ATOMIC_FIXED_ADD_CPT

#define ATOMIC_FIXED_ADD_CPT (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_CPT(TYPE_ID, OP_ID, TYPE, TYPE) \
TYPE old_value, new_value; \
(void)new_value; \
OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) \
/* OP used as a sign for subtraction: (lhs-rhs) --> (lhs+-rhs) */ \
old_value = KMP_TEST_THEN_ADD##BITS(lhs, OP rhs); \
if (flag) { \
return old_value OP rhs; \
} else \
return old_value; \
}

Definition at line 2299 of file kmp_atomic.cpp.

◆ ATOMIC_FIXED_READ

#define ATOMIC_FIXED_READ (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_READ(TYPE_ID, OP_ID, TYPE, TYPE) \
TYPE new_value; \
OP_GOMP_CRITICAL_READ(OP## =, GOMP_FLAG) \
new_value = KMP_TEST_THEN_ADD##BITS(loc, OP 0); \
return new_value; \
}

Definition at line 1987 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK0

#define ATOMIC_LOCK0   __kmp_atomic_lock

Definition at line 706 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK10r

#define ATOMIC_LOCK10r   __kmp_atomic_lock_10r

Definition at line 714 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK16c

#define ATOMIC_LOCK16c   __kmp_atomic_lock_16c

Definition at line 716 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK16r

#define ATOMIC_LOCK16r   __kmp_atomic_lock_16r

Definition at line 715 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK1i

#define ATOMIC_LOCK1i   __kmp_atomic_lock_1i

Definition at line 707 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK20c

#define ATOMIC_LOCK20c   __kmp_atomic_lock_20c

Definition at line 717 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK2i

#define ATOMIC_LOCK2i   __kmp_atomic_lock_2i

Definition at line 708 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK32c

#define ATOMIC_LOCK32c   __kmp_atomic_lock_32c

Definition at line 718 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK4i

#define ATOMIC_LOCK4i   __kmp_atomic_lock_4i

Definition at line 709 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK4r

#define ATOMIC_LOCK4r   __kmp_atomic_lock_4r

Definition at line 710 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK8c

#define ATOMIC_LOCK8c   __kmp_atomic_lock_8c

Definition at line 713 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK8i

#define ATOMIC_LOCK8i   __kmp_atomic_lock_8i

Definition at line 711 of file kmp_atomic.cpp.

◆ ATOMIC_LOCK8r

#define ATOMIC_LOCK8r   __kmp_atomic_lock_8r

Definition at line 712 of file kmp_atomic.cpp.

◆ ATOMIC_XCHG_FLOAT_WR

#define ATOMIC_XCHG_FLOAT_WR (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_GOMP_CRITICAL(OP, GOMP_FLAG) \
KMP_XCHG_REAL##BITS(lhs, rhs); \
}

◆ ATOMIC_XCHG_WR

#define ATOMIC_XCHG_WR (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
OP_GOMP_CRITICAL(OP, GOMP_FLAG) \
KMP_XCHG_FIXED##BITS(lhs, rhs); \
}

◆ GOMP_MIN_MAX_CRITSECT

#define GOMP_MIN_MAX_CRITSECT (   OP,
  FLAG 
)

Definition at line 1153 of file kmp_atomic.cpp.

◆ GOMP_MIN_MAX_CRITSECT_CPT

#define GOMP_MIN_MAX_CRITSECT_CPT (   OP,
  FLAG 
)

Definition at line 2660 of file kmp_atomic.cpp.

◆ KMP_ATOMIC_VOLATILE

#define KMP_ATOMIC_VOLATILE   volatile

Definition at line 605 of file kmp_atomic.cpp.

◆ KMP_CHECK_GTID

#define KMP_CHECK_GTID
Value:
if (gtid == KMP_GTID_UNKNOWN) { \
gtid = __kmp_entry_gtid(); \
}
#define __kmp_entry_gtid()
Definition: kmp.h:3601
#define KMP_GTID_UNKNOWN
Definition: kmp.h:1030

Definition at line 688 of file kmp_atomic.cpp.

◆ KMP_DO_PAUSE

#define KMP_DO_PAUSE

Definition at line 782 of file kmp_atomic.cpp.

◆ MIN_MAX_CMPXCHG

#define MIN_MAX_CMPXCHG (   TYPE,
  BITS,
  OP 
)
Value:
{ \
TYPE old_value; \
temp_val = *lhs; \
old_value = temp_val; \
while (old_value OP rhs && /* still need actions? */ \
!KMP_COMPARE_AND_STORE_ACQ##BITS( \
(kmp_int##BITS *)lhs, \
*VOLATILE_CAST(kmp_int##BITS *) & old_value, \
*VOLATILE_CAST(kmp_int##BITS *) & rhs)) { \
temp_val = *lhs; \
old_value = temp_val; \
} \
}
#define KMP_ATOMIC_VOLATILE
Definition: kmp_atomic.cpp:605
#define VOLATILE_CAST(x)
Definition: kmp_os.h:1188
kmp_int32 kmp_int
Definition: kmp_os.h:214

Definition at line 1157 of file kmp_atomic.cpp.

◆ MIN_MAX_CMPXCHG_CPT

#define MIN_MAX_CMPXCHG_CPT (   TYPE,
  BITS,
  OP 
)
Value:
{ \
/*TYPE old_value; */ \
temp_val = *lhs; \
old_value = temp_val; \
while (old_value OP rhs && /* still need actions? */ \
!KMP_COMPARE_AND_STORE_ACQ##BITS( \
(kmp_int##BITS *)lhs, \
*VOLATILE_CAST(kmp_int##BITS *) & old_value, \
*VOLATILE_CAST(kmp_int##BITS *) & rhs)) { \
temp_val = *lhs; \
old_value = temp_val; \
} \
if (flag) \
return rhs; \
else \
return old_value; \
}

Definition at line 2664 of file kmp_atomic.cpp.

◆ MIN_MAX_COMPXCHG

#define MIN_MAX_COMPXCHG (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  LCK_ID,
  MASK,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
if (*lhs OP rhs) { \
GOMP_MIN_MAX_CRITSECT(OP, GOMP_FLAG) \
if (!((kmp_uintptr_t)lhs & 0x##MASK)) { \
MIN_MAX_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
} else { \
MIN_MAX_CRITSECT(OP, LCK_ID) /* unaligned address */ \
} \
} \
}

Definition at line 1199 of file kmp_atomic.cpp.

◆ MIN_MAX_COMPXCHG_CPT

#define MIN_MAX_COMPXCHG_CPT (   TYPE_ID,
  OP_ID,
  TYPE,
  BITS,
  OP,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_CPT(TYPE_ID, OP_ID, TYPE, TYPE) \
TYPE new_value, old_value; \
(void)new_value; \
if (*lhs OP rhs) { \
GOMP_MIN_MAX_CRITSECT_CPT(OP, GOMP_FLAG) \
MIN_MAX_CMPXCHG_CPT(TYPE, BITS, OP) \
} \
return *lhs; \
}

Definition at line 2696 of file kmp_atomic.cpp.

◆ MIN_MAX_CRITICAL

#define MIN_MAX_CRITICAL (   TYPE_ID,
  OP_ID,
  TYPE,
  OP,
  LCK_ID,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN(TYPE_ID, OP_ID, TYPE, void) \
if (*lhs OP rhs) { /* need actions? */ \
GOMP_MIN_MAX_CRITSECT(OP, GOMP_FLAG) \
MIN_MAX_CRITSECT(OP, LCK_ID) \
} \
}

Definition at line 1175 of file kmp_atomic.cpp.

◆ MIN_MAX_CRITICAL_CPT

#define MIN_MAX_CRITICAL_CPT (   TYPE_ID,
  OP_ID,
  TYPE,
  OP,
  LCK_ID,
  GOMP_FLAG 
)
Value:
ATOMIC_BEGIN_CPT(TYPE_ID, OP_ID, TYPE, TYPE) \
TYPE new_value, old_value; \
if (*lhs OP rhs) { /* need actions? */ \
GOMP_MIN_MAX_CRITSECT_CPT(OP, GOMP_FLAG) \
MIN_MAX_CRITSECT_CPT(OP, LCK_ID) \
} \
return *lhs; \
}

Definition at line 2686 of file kmp_atomic.cpp.

◆ MIN_MAX_CRITSECT

#define MIN_MAX_CRITSECT (   OP,
  LCK_ID 
)
Value:
__kmp_acquire_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
\
if (*lhs OP rhs) { /* still need actions? */ \
*lhs = rhs; \
} \
__kmp_release_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid);
static void __kmp_acquire_atomic_lock(kmp_atomic_lock_t *lck, kmp_int32 gtid)
Definition: kmp_atomic.h:367

Definition at line 1136 of file kmp_atomic.cpp.

◆ MIN_MAX_CRITSECT_CPT

#define MIN_MAX_CRITSECT_CPT (   OP,
  LCK_ID 
)
Value:
__kmp_acquire_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
\
if (*lhs OP rhs) { /* still need actions? */ \
old_value = *lhs; \
*lhs = rhs; \
if (flag) \
new_value = rhs; \
else \
new_value = old_value; \
} else { \
new_value = *lhs; \
} \
__kmp_release_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
return new_value;

Definition at line 2636 of file kmp_atomic.cpp.

◆ OP_CMPXCHG

#define OP_CMPXCHG (   TYPE,
  BITS,
  OP 
)
Value:
{ \
TYPE old_value, new_value; \
old_value = *(TYPE volatile *)lhs; \
new_value = (TYPE)(old_value OP rhs); \
while (!KMP_COMPARE_AND_STORE_ACQ##BITS( \
(kmp_int##BITS *)lhs, *VOLATILE_CAST(kmp_int##BITS *) & old_value, \
*VOLATILE_CAST(kmp_int##BITS *) & new_value)) { \
\
old_value = *(TYPE volatile *)lhs; \
new_value = (TYPE)(old_value OP rhs); \
} \
}
#define KMP_DO_PAUSE
Definition: kmp_atomic.cpp:782

Definition at line 790 of file kmp_atomic.cpp.

◆ OP_CMPXCHG_CPT

#define OP_CMPXCHG_CPT (   TYPE,
  BITS,
  OP 
)
Value:
{ \
TYPE old_value, new_value; \
temp_val = *lhs; \
old_value = temp_val; \
new_value = (TYPE)(old_value OP rhs); \
while (!KMP_COMPARE_AND_STORE_ACQ##BITS( \
(kmp_int##BITS *)lhs, *VOLATILE_CAST(kmp_int##BITS *) & old_value, \
*VOLATILE_CAST(kmp_int##BITS *) & new_value)) { \
temp_val = *lhs; \
old_value = temp_val; \
new_value = (TYPE)(old_value OP rhs); \
} \
if (flag) { \
return new_value; \
} else \
return old_value; \
}

Definition at line 2269 of file kmp_atomic.cpp.

◆ OP_CMPXCHG_READ

#define OP_CMPXCHG_READ (   TYPE,
  BITS,
  OP 
)
Value:
{ \
union f_i_union { \
TYPE f_val; \
kmp_int##BITS i_val; \
}; \
union f_i_union old_value; \
temp_val = *loc; \
old_value.f_val = temp_val; \
old_value.i_val = KMP_COMPARE_AND_STORE_RET##BITS( \
(kmp_int##BITS *)loc, \
*VOLATILE_CAST(kmp_int##BITS *) & old_value.i_val, \
*VOLATILE_CAST(kmp_int##BITS *) & old_value.i_val); \
new_value = old_value.f_val; \
return new_value; \
}

Definition at line 1943 of file kmp_atomic.cpp.

◆ OP_CMPXCHG_WR

#define OP_CMPXCHG_WR (   TYPE,
  BITS,
  OP 
)
Value:
{ \
TYPE old_value, new_value; \
temp_val = *lhs; \
old_value = temp_val; \
new_value = rhs; \
while (!KMP_COMPARE_AND_STORE_ACQ##BITS( \
(kmp_int##BITS *)lhs, *VOLATILE_CAST(kmp_int##BITS *) & old_value, \
*VOLATILE_CAST(kmp_int##BITS *) & new_value)) { \
temp_val = *lhs; \
old_value = temp_val; \
new_value = rhs; \
} \
}

◆ OP_CRITICAL

#define OP_CRITICAL (   OP,
  LCK_ID 
)
Value:
__kmp_acquire_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
\
(*lhs) OP(rhs); \
\
__kmp_release_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid);

Definition at line 726 of file kmp_atomic.cpp.

◆ OP_CRITICAL_CPT

#define OP_CRITICAL_CPT (   OP,
  LCK_ID 
)
Value:
__kmp_acquire_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
\
if (flag) { \
(*lhs) OP rhs; \
new_value = (*lhs); \
} else { \
new_value = (*lhs); \
(*lhs) OP rhs; \
} \
\
__kmp_release_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
return new_value;

Definition at line 2223 of file kmp_atomic.cpp.

◆ OP_CRITICAL_CPT_WRK

#define OP_CRITICAL_CPT_WRK (   OP,
  LCK_ID 
)
Value:
__kmp_acquire_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
\
if (flag) { \
(*lhs) OP rhs; \
(*out) = (*lhs); \
} else { \
(*out) = (*lhs); \
(*lhs) OP rhs; \
} \
\
__kmp_release_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
return;

Definition at line 2802 of file kmp_atomic.cpp.

◆ OP_CRITICAL_L_CPT

#define OP_CRITICAL_L_CPT (   OP,
  LCK_ID 
)
Value:
__kmp_acquire_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
\
if (flag) { \
new_value OP rhs; \
(*lhs) = new_value; \
} else { \
new_value = (*lhs); \
(*lhs) OP rhs; \
} \
\
__kmp_release_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid);

Definition at line 2575 of file kmp_atomic.cpp.

◆ OP_CRITICAL_READ

#define OP_CRITICAL_READ (   OP,
  LCK_ID 
)
Value:
__kmp_acquire_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
\
new_value = (*loc); \
\
__kmp_release_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid);

Definition at line 1967 of file kmp_atomic.cpp.

◆ OP_GOMP_CRITICAL

#define OP_GOMP_CRITICAL (   OP,
  FLAG 
)

Definition at line 775 of file kmp_atomic.cpp.

◆ OP_GOMP_CRITICAL_CPT

#define OP_GOMP_CRITICAL_CPT (   TYPE,
  OP,
  FLAG 
)

Definition at line 2259 of file kmp_atomic.cpp.

◆ OP_GOMP_CRITICAL_CPT_WRK

#define OP_GOMP_CRITICAL_CPT_WRK (   OP,
  FLAG 
)

Definition at line 2824 of file kmp_atomic.cpp.

◆ OP_GOMP_CRITICAL_EQV_CPT

#define OP_GOMP_CRITICAL_EQV_CPT (   OP,
  FLAG 
)

Definition at line 2756 of file kmp_atomic.cpp.

◆ OP_GOMP_CRITICAL_L_CPT

#define OP_GOMP_CRITICAL_L_CPT (   OP,
  FLAG 
)

Definition at line 2597 of file kmp_atomic.cpp.

◆ OP_GOMP_CRITICAL_READ

#define OP_GOMP_CRITICAL_READ (   OP,
  FLAG 
)

Definition at line 1983 of file kmp_atomic.cpp.

◆ OP_UPDATE_CRITICAL

#define OP_UPDATE_CRITICAL (   TYPE,
  OP,
  LCK_ID 
)
Value:
__kmp_acquire_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
(*lhs) = (TYPE)((*lhs)OP rhs); \
__kmp_release_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid);

Definition at line 733 of file kmp_atomic.cpp.

◆ OP_UPDATE_CRITICAL_CPT

#define OP_UPDATE_CRITICAL_CPT (   TYPE,
  OP,
  LCK_ID 
)
Value:
__kmp_acquire_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
\
if (flag) { \
(*lhs) = (TYPE)((*lhs)OP rhs); \
new_value = (*lhs); \
} else { \
new_value = (*lhs); \
(*lhs) = (TYPE)((*lhs)OP rhs); \
} \
\
__kmp_release_atomic_lock(&ATOMIC_LOCK##LCK_ID, gtid); \
return new_value;

Definition at line 2237 of file kmp_atomic.cpp.

◆ OP_UPDATE_GOMP_CRITICAL

#define OP_UPDATE_GOMP_CRITICAL (   TYPE,
  OP,
  FLAG 
)

Definition at line 776 of file kmp_atomic.cpp.

Typedef Documentation

◆ uchar

typedef unsigned char uchar

Definition at line 16 of file kmp_atomic.cpp.

◆ ushort

typedef unsigned short ushort

Definition at line 17 of file kmp_atomic.cpp.

Function Documentation

◆ __kmpc_atomic_1()

long long void __kmpc_atomic_1 ( ident_t id_ref,
int  gtid,
void lhs,
void rhs,
void(*)(void *, void *, void *)  f 
)

◆ __kmpc_atomic_16()

void __kmpc_atomic_16 ( ident_t id_ref,
int  gtid,
void lhs,
void rhs,
void(*)(void *, void *, void *)  f 
)

◆ __kmpc_atomic_2()

void __kmpc_atomic_2 ( ident_t id_ref,
int  gtid,
void lhs,
void rhs,
void(*)(void *, void *, void *)  f 
)

◆ __kmpc_atomic_32()

void __kmpc_atomic_32 ( ident_t id_ref,
int  gtid,
void lhs,
void rhs,
void(*)(void *, void *, void *)  f 
)

◆ __kmpc_atomic_4()

void __kmpc_atomic_4 ( ident_t id_ref,
int  gtid,
void lhs,
void rhs,
void(*)(void *, void *, void *)  f 
)

◆ __kmpc_atomic_8()

void __kmpc_atomic_8 ( ident_t id_ref,
int  gtid,
void lhs,
void rhs,
void(*)(void *, void *, void *)  f 
)

◆ __kmpc_atomic_end()

void __kmpc_atomic_end ( void  )

◆ __kmpc_atomic_start()

void __kmpc_atomic_start ( void  )

◆ ATOMIC_CMPX_EQV() [1/2]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_EQV ( fixed1  ,
eqv  ,
kmp_int8  ,
,
^~  ,
1i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPX_EQV() [2/2]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_EQV ( fixed4  ,
eqv  ,
kmp_int32  ,
32  ,
^~  ,
4i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPX_EQV_CPT() [1/2]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_EQV_CPT ( fixed1  ,
eqv_cpt  ,
kmp_int8  ,
,
^~  ,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPX_EQV_CPT() [2/2]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_EQV_CPT ( fixed4  ,
eqv_cpt  ,
kmp_int32  ,
32  ,
^~  ,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPX_L() [1/4]

ATOMIC_CMPX_L ( fixed1  ,
andl  ,
char  ,
,
&&  ,
1i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPX_L() [2/4]

KMP_ARCH_X86 ATOMIC_CMPX_L ( fixed2  ,
andl  ,
short  ,
16  ,
&&  ,
2i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPX_L() [3/4]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_L ( fixed4  ,
andl  ,
kmp_int32  ,
32  ,
&&  ,
4i  ,
,
 
)

◆ ATOMIC_CMPX_L() [4/4]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_L ( fixed8  ,
andl  ,
kmp_int64  ,
64  ,
&&  ,
8i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPX_L_CPT() [1/4]

ATOMIC_CMPX_L_CPT ( fixed1  ,
andl_cpt  ,
char  ,
,
&&  ,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPX_L_CPT() [2/4]

KMP_ARCH_X86 ATOMIC_CMPX_L_CPT ( fixed2  ,
andl_cpt  ,
short  ,
16  ,
&&  ,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPX_L_CPT() [3/4]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_L_CPT ( fixed4  ,
andl_cpt  ,
kmp_int32  ,
32  ,
&&  ,
 
)

◆ ATOMIC_CMPX_L_CPT() [4/4]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPX_L_CPT ( fixed8  ,
andl_cpt  ,
kmp_int64  ,
64  ,
&&  ,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [1/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed1  ,
add  ,
kmp_int8  ,
,
,
1i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [2/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed1  ,
div  ,
kmp_int8  ,
,
,
1i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [3/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed1  ,
mul  ,
kmp_int8  ,
,
,
1i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [4/25]

ATOMIC_CMPXCHG ( fixed1  ,
neqv  ,
kmp_int8  ,
,
,
1i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [5/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed1  ,
shl  ,
kmp_int8  ,
,
<<  ,
1i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [6/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed1  ,
xor  ,
kmp_int8  ,
,
,
1i  ,
,
 
)

◆ ATOMIC_CMPXCHG() [7/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed1u  ,
shr  ,
kmp_uint8  ,
,
> >  ,
1i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [8/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed2  ,
andb  ,
kmp_int16  ,
16  ,
,
2i  ,
,
 
)

◆ ATOMIC_CMPXCHG() [9/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed2  ,
orb  ,
kmp_int16  ,
16  ,
,
2i  ,
,
 
)

◆ ATOMIC_CMPXCHG() [10/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed2  ,
xor  ,
kmp_int16  ,
16  ,
,
2i  ,
,
 
)

◆ ATOMIC_CMPXCHG() [11/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed2u  ,
div  ,
kmp_uint16  ,
16  ,
,
2i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [12/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed2u  ,
shr  ,
kmp_uint16  ,
16  ,
> >  ,
2i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [13/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed4  ,
div  ,
kmp_int32  ,
32  ,
,
4i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [14/25]

◆ ATOMIC_CMPXCHG() [15/25]

KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed4  ,
neqv  ,
kmp_int32  ,
32  ,
,
4i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [16/25]

◆ ATOMIC_CMPXCHG() [17/25]

◆ ATOMIC_CMPXCHG() [18/25]

◆ ATOMIC_CMPXCHG() [19/25]

◆ ATOMIC_CMPXCHG() [20/25]

◆ ATOMIC_CMPXCHG() [21/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 2i, 1, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed2, shr, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, 8i, 7, KMP_ARCH_X86) ATOMIC_CMPXCHG(fixed8, shr, kmp_int64, 64, > KMP_ARCH_X86 ATOMIC_CMPXCHG ( fixed8u  ,
shr  ,
kmp_uint64  ,
64  ,
> >  ,
8i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [22/25]

ATOMIC_CMPXCHG ( float4  ,
add  ,
kmp_real32  ,
32  ,
,
4r  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [23/25]

◆ ATOMIC_CMPXCHG() [24/25]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG ( float8  ,
add  ,
kmp_real64  ,
64  ,
,
8r  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG() [25/25]

◆ ATOMIC_CMPXCHG_CMPLX() [1/2]

ATOMIC_CMPXCHG_CMPLX ( cmplx4  ,
kmp_cmplx32  ,
add  ,
64  ,
,
cmplx8  ,
kmp_cmplx64  ,
8c  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CMPLX() [2/2]

KMP_ARCH_X86 ATOMIC_CMPXCHG_CMPLX ( cmplx4  ,
kmp_cmplx32  ,
mul  ,
64  ,
,
cmplx8  ,
kmp_cmplx64  ,
8c  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [1/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed1  ,
add_cpt  ,
kmp_int8  ,
,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [2/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed1  ,
div_cpt  ,
kmp_int8  ,
,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [3/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed1  ,
mul_cpt  ,
kmp_int8  ,
,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [4/25]

ATOMIC_CMPXCHG_CPT ( fixed1  ,
neqv_cpt  ,
kmp_int8  ,
,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [5/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed1  ,
shl_cpt  ,
kmp_int8  ,
,
<<  ,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [6/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed1  ,
xor_cpt  ,
kmp_int8  ,
,
,
 
)

◆ ATOMIC_CMPXCHG_CPT() [7/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed1u  ,
shr_cpt  ,
kmp_uint8  ,
,
> >  ,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [8/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed2  ,
andb_cpt  ,
kmp_int16  ,
16  ,
,
 
)

◆ ATOMIC_CMPXCHG_CPT() [9/25]

◆ ATOMIC_CMPXCHG_CPT() [10/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed2  ,
xor_cpt  ,
kmp_int16  ,
16  ,
,
 
)

◆ ATOMIC_CMPXCHG_CPT() [11/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed2u  ,
div_cpt  ,
kmp_uint16  ,
16  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [12/25]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86<<, KMP_ARCH_X86) ATOMIC_CMPXCHG_CPT(fixed2, shr_cpt, kmp_int16, 16, > KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed2u  ,
shr_cpt  ,
kmp_uint16  ,
16  ,
> >  ,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [13/25]

◆ ATOMIC_CMPXCHG_CPT() [14/25]

◆ ATOMIC_CMPXCHG_CPT() [15/25]

KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( fixed4  ,
neqv_cpt  ,
kmp_int32  ,
32  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [16/25]

◆ ATOMIC_CMPXCHG_CPT() [17/25]

◆ ATOMIC_CMPXCHG_CPT() [18/25]

◆ ATOMIC_CMPXCHG_CPT() [19/25]

◆ ATOMIC_CMPXCHG_CPT() [20/25]

◆ ATOMIC_CMPXCHG_CPT() [21/25]

◆ ATOMIC_CMPXCHG_CPT() [22/25]

KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( float4  ,
add_cpt  ,
kmp_real32  ,
32  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [23/25]

◆ ATOMIC_CMPXCHG_CPT() [24/25]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_CPT ( float8  ,
add_cpt  ,
kmp_real64  ,
64  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_CPT() [25/25]

◆ ATOMIC_CMPXCHG_MIX() [1/6]

ATOMIC_CMPXCHG_MIX ( fixed1  ,
char  ,
mul  ,
,
,
float8  ,
kmp_real64  ,
1i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_MIX() [2/6]

KMP_ARCH_X86 ATOMIC_CMPXCHG_MIX ( fixed2  ,
short  ,
mul  ,
16  ,
,
float8  ,
kmp_real64  ,
2i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_MIX() [3/6]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_MIX ( fixed4  ,
kmp_int32  ,
mul  ,
32  ,
,
float8  ,
kmp_real64  ,
4i  ,
,
 
)

◆ ATOMIC_CMPXCHG_MIX() [4/6]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_MIX ( fixed8  ,
kmp_int64  ,
mul  ,
64  ,
,
float8  ,
kmp_real64  ,
8i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_MIX() [5/6]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_MIX ( float4  ,
kmp_real32  ,
add  ,
32  ,
,
float8  ,
kmp_real64  ,
4r  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_MIX() [6/6]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_MIX ( float4  ,
kmp_real32  ,
mul  ,
32  ,
,
float8  ,
kmp_real64  ,
4r  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_READ() [1/2]

KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_CMPXCHG_READ ( fixed2  ,
rd  ,
kmp_int16  ,
16  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CMPXCHG_READ() [2/2]

KMP_ARCH_X86 ATOMIC_CMPXCHG_READ ( float8  ,
rd  ,
kmp_real64  ,
64  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_CRITICAL_CPT() [1/6]

long long ATOMIC_CRITICAL_CPT ( cmplx10  ,
add_cpt  ,
kmp_cmplx80  ,
,
20c  ,
 
)

◆ ATOMIC_CRITICAL_CPT() [2/6]

long long ATOMIC_CRITICAL_CPT ( cmplx10  ,
mul_cpt  ,
kmp_cmplx80  ,
,
20c  ,
 
)

◆ ATOMIC_CRITICAL_CPT() [3/6]

long long ATOMIC_CRITICAL_CPT ( cmplx8  ,
add_cpt  ,
kmp_cmplx64  ,
,
16c  ,
 
)

◆ ATOMIC_CRITICAL_CPT() [4/6]

long long ATOMIC_CRITICAL_CPT ( cmplx8  ,
mul_cpt  ,
kmp_cmplx64  ,
,
16c  ,
 
)

◆ ATOMIC_CRITICAL_CPT() [5/6]

ATOMIC_CRITICAL_CPT ( float10  ,
add_cpt  ,
long double  ,
,
10r  ,
 
)

◆ ATOMIC_CRITICAL_CPT() [6/6]

long ATOMIC_CRITICAL_CPT ( float10  ,
mul_cpt  ,
long double  ,
,
10r  ,
 
)

◆ ATOMIC_CRITICAL_CPT_WRK() [1/2]

long long ATOMIC_CRITICAL_CPT_WRK ( cmplx4  ,
add_cpt  ,
kmp_cmplx32  ,
,
8c  ,
 
)

◆ ATOMIC_CRITICAL_CPT_WRK() [2/2]

long long ATOMIC_CRITICAL_CPT_WRK ( cmplx4  ,
mul_cpt  ,
kmp_cmplx32  ,
,
8c  ,
 
)

◆ ATOMIC_CRITICAL_READ() [1/2]

KMP_ARCH_X86 KMP_ARCH_X86 long ATOMIC_CRITICAL_READ ( cmplx10  ,
rd  ,
kmp_cmplx80  ,
,
20c  ,
 
)

◆ ATOMIC_CRITICAL_READ() [2/2]

KMP_ARCH_X86 KMP_ARCH_X86 long ATOMIC_CRITICAL_READ ( cmplx4  ,
rd  ,
kmp_cmplx32  ,
,
8c  ,
 
)

◆ ATOMIC_CRITICAL_WR()

KMP_ARCH_X86 KMP_ARCH_X86 long KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 long ATOMIC_CRITICAL_WR ( cmplx8  ,
wr  ,
kmp_cmplx64  ,
16c  ,
 
)

◆ ATOMIC_FIXED_ADD() [1/2]

ATOMIC_FIXED_ADD ( fixed4  ,
add  ,
kmp_int32  ,
32  ,
,
4i  ,
,
 
)

◆ ATOMIC_FIXED_ADD() [2/2]

KMP_ARCH_X86 ATOMIC_FIXED_ADD ( fixed8  ,
add  ,
kmp_int64  ,
64  ,
,
8i  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_FIXED_ADD_CPT() [1/2]

ATOMIC_FIXED_ADD_CPT ( fixed4  ,
add_cpt  ,
kmp_int32  ,
32  ,
,
 
)

◆ ATOMIC_FIXED_ADD_CPT() [2/2]

ATOMIC_FIXED_ADD_CPT ( fixed8  ,
add_cpt  ,
kmp_int64  ,
64  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_FIXED_READ()

ATOMIC_FIXED_READ ( fixed8  ,
rd  ,
kmp_int64  ,
64  ,
,
KMP_ARCH_X86   
)

◆ ATOMIC_XCHG_FLOAT_WR()

KMP_ARCH_X86 KMP_ARCH_X86 long KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_XCHG_FLOAT_WR ( float8  ,
wr  ,
kmp_real64  ,
64  ,
KMP_ARCH_X86   
)

◆ ATOMIC_XCHG_WR() [1/2]

KMP_ARCH_X86 KMP_ARCH_X86 long KMP_ARCH_X86 ATOMIC_XCHG_WR ( fixed2  ,
wr  ,
kmp_int16  ,
16  ,
KMP_ARCH_X86   
)

◆ ATOMIC_XCHG_WR() [2/2]

KMP_ARCH_X86 KMP_ARCH_X86 long KMP_ARCH_X86 KMP_ARCH_X86 ATOMIC_XCHG_WR ( fixed8  ,
wr  ,
kmp_int64  ,
64  ,
KMP_ARCH_X86   
)

◆ MIN_MAX_COMPXCHG() [1/6]

MIN_MAX_COMPXCHG ( fixed1  ,
max  ,
char  ,
 
)

◆ MIN_MAX_COMPXCHG() [2/6]

KMP_ARCH_X86 MIN_MAX_COMPXCHG ( fixed2  ,
max  ,
short  ,
16   
)

◆ MIN_MAX_COMPXCHG() [3/6]

KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG ( fixed4  ,
max  ,
kmp_int32  ,
32   
)

◆ MIN_MAX_COMPXCHG() [4/6]

KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG ( fixed8  ,
max  ,
kmp_int64  ,
64   
)

◆ MIN_MAX_COMPXCHG() [5/6]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG ( float4  ,
max  ,
kmp_real32  ,
32   
)

◆ MIN_MAX_COMPXCHG() [6/6]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG ( float8  ,
max  ,
kmp_real64  ,
64   
)

◆ MIN_MAX_COMPXCHG_CPT() [1/6]

MIN_MAX_COMPXCHG_CPT ( fixed1  ,
max_cpt  ,
char  ,
 
)

◆ MIN_MAX_COMPXCHG_CPT() [2/6]

KMP_ARCH_X86 MIN_MAX_COMPXCHG_CPT ( fixed2  ,
max_cpt  ,
short  ,
16   
)

◆ MIN_MAX_COMPXCHG_CPT() [3/6]

KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG_CPT ( fixed4  ,
max_cpt  ,
kmp_int32  ,
32   
)

◆ MIN_MAX_COMPXCHG_CPT() [4/6]

KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG_CPT ( fixed8  ,
max_cpt  ,
kmp_int64  ,
64   
)

◆ MIN_MAX_COMPXCHG_CPT() [5/6]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG_CPT ( float4  ,
max_cpt  ,
kmp_real32  ,
32   
)

◆ MIN_MAX_COMPXCHG_CPT() [6/6]

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_COMPXCHG_CPT ( float8  ,
max_cpt  ,
kmp_real64  ,
64   
)

◆ MIN_MAX_CRITICAL_CPT()

KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 KMP_ARCH_X86 MIN_MAX_CRITICAL_CPT ( float10  ,
max_cpt  ,
long double   
)

Variable Documentation

◆ __kmp_atomic_lock

kmp_atomic_lock_t __kmp_atomic_lock

◆ __kmp_atomic_lock_10r

kmp_atomic_lock_t __kmp_atomic_lock_10r

Definition at line 590 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize().

◆ __kmp_atomic_lock_16c

kmp_atomic_lock_t __kmp_atomic_lock_16c

Definition at line 594 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize(), and __kmpc_atomic_16().

◆ __kmp_atomic_lock_16r

kmp_atomic_lock_t __kmp_atomic_lock_16r

Definition at line 592 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize().

◆ __kmp_atomic_lock_1i

kmp_atomic_lock_t __kmp_atomic_lock_1i

Definition at line 576 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize(), and __kmpc_atomic_1().

◆ __kmp_atomic_lock_20c

kmp_atomic_lock_t __kmp_atomic_lock_20c

Definition at line 596 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize().

◆ __kmp_atomic_lock_2i

kmp_atomic_lock_t __kmp_atomic_lock_2i

Definition at line 578 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize(), and __kmpc_atomic_2().

◆ __kmp_atomic_lock_32c

kmp_atomic_lock_t __kmp_atomic_lock_32c

Definition at line 598 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize(), and __kmpc_atomic_32().

◆ __kmp_atomic_lock_4i

kmp_atomic_lock_t __kmp_atomic_lock_4i

Definition at line 580 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize(), and __kmpc_atomic_4().

◆ __kmp_atomic_lock_4r

kmp_atomic_lock_t __kmp_atomic_lock_4r

Definition at line 582 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize().

◆ __kmp_atomic_lock_8c

kmp_atomic_lock_t __kmp_atomic_lock_8c

Definition at line 588 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize().

◆ __kmp_atomic_lock_8i

kmp_atomic_lock_t __kmp_atomic_lock_8i

Definition at line 584 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize(), and __kmpc_atomic_8().

◆ __kmp_atomic_lock_8r

kmp_atomic_lock_t __kmp_atomic_lock_8r

Definition at line 586 of file kmp_atomic.cpp.

Referenced by __kmp_do_serial_initialize().

◆ add

Definition at line 1005 of file kmp_atomic.cpp.

Referenced by kmp_calc_new_bounds_XX().

◆ add_cpt

Definition at line 2365 of file kmp_atomic.cpp.

◆ andb

Definition at line 985 of file kmp_atomic.cpp.

◆ andb_cpt

Definition at line 2345 of file kmp_atomic.cpp.

◆ char

char

◆ cmplx8

KMP_ARCH_X86 cmplx8

Definition at line 1910 of file kmp_atomic.cpp.

◆ div

Definition at line 989 of file kmp_atomic.cpp.

Referenced by test_omp_atomic().

◆ div_cpt

long long div_cpt

Definition at line 2349 of file kmp_atomic.cpp.

◆ double

long long double

◆ eqv

Definition at line 1302 of file kmp_atomic.cpp.

◆ eqv_cpt

Definition at line 2779 of file kmp_atomic.cpp.

◆ float8

Definition at line 1694 of file kmp_atomic.cpp.

◆ kmp_cmplx32

long long kmp_cmplx32

Definition at line 1910 of file kmp_atomic.cpp.

◆ kmp_cmplx64

long long kmp_cmplx64

Definition at line 1910 of file kmp_atomic.cpp.

◆ kmp_cmplx80

long long kmp_cmplx80

Definition at line 2190 of file kmp_atomic.cpp.

◆ kmp_int16

Definition at line 1005 of file kmp_atomic.cpp.

Referenced by __kmpc_atomic_2(), kmp_fix_iv(), and kmp_ivs_eq().

◆ kmp_int32

Definition at line 949 of file kmp_atomic.cpp.

◆ kmp_int64

Definition at line 960 of file kmp_atomic.cpp.

◆ kmp_int8

◆ kmp_real32

Definition at line 954 of file kmp_atomic.cpp.

◆ kmp_real64

Definition at line 965 of file kmp_atomic.cpp.

◆ kmp_uint32

◆ kmp_uint8

Definition at line 989 of file kmp_atomic.cpp.

◆ min

Definition at line 1216 of file kmp_atomic.cpp.

Referenced by __kmp_stg_parse_int().

◆ min_cpt

Definition at line 2709 of file kmp_atomic.cpp.

◆ mul

Definition at line 1013 of file kmp_atomic.cpp.

◆ mul_cpt

Definition at line 2373 of file kmp_atomic.cpp.

◆ neqv

Definition at line 1294 of file kmp_atomic.cpp.

◆ neqv_cpt

KMP_ARCH_X86 neqv_cpt

Definition at line 2771 of file kmp_atomic.cpp.

◆ orb

Definition at line 993 of file kmp_atomic.cpp.

◆ orb_cpt

Definition at line 2353 of file kmp_atomic.cpp.

◆ orl

Definition at line 1112 of file kmp_atomic.cpp.

◆ orl_cpt

Definition at line 2612 of file kmp_atomic.cpp.

◆ rd

Definition at line 2058 of file kmp_atomic.cpp.

Referenced by __kmp_is_address_mapped().

◆ shl

Definition at line 1017 of file kmp_atomic.cpp.

◆ shl_cpt

Definition at line 2377 of file kmp_atomic.cpp.

◆ short

KMP_ARCH_X86 short

Definition at line 1116 of file kmp_atomic.cpp.

Referenced by __kmp_fork_call(), and __kmp_get_random().

◆ shr

Definition at line 997 of file kmp_atomic.cpp.

◆ shr_cpt

Definition at line 2357 of file kmp_atomic.cpp.

◆ sub

Definition at line 949 of file kmp_atomic.cpp.

Referenced by kmp_calc_new_bounds_XX().

◆ sub_cpt

long long sub_cpt

Definition at line 2315 of file kmp_atomic.cpp.

◆ wr

Definition at line 2157 of file kmp_atomic.cpp.

◆ xor

Definition at line 1043 of file kmp_atomic.cpp.

◆ xor_cpt

Definition at line 2403 of file kmp_atomic.cpp.