20#include "ompt-specific.h"
32#if defined(__cplusplus) && (KMP_OS_WINDOWS)
39#define KMP_DO_ALIGN(alignment)
42#if defined(_MSC_VER) && (_MSC_VER < 1600) && defined(_DEBUG)
47#define _DEBUG_TEMPORARILY_UNSET_
52template <
typename type_lhs,
typename type_rhs>
53std::complex<type_lhs> __kmp_lhs_div_rhs(
const std::complex<type_lhs> &lhs,
54 const std::complex<type_rhs> &rhs) {
55 type_lhs a = lhs.real();
56 type_lhs b = lhs.imag();
57 type_rhs c = rhs.real();
58 type_rhs d = rhs.imag();
59 type_rhs den = c * c + d * d;
60 type_rhs r = (a * c + b * d);
61 type_rhs i = (b * c - a * d);
62 std::complex<type_lhs> ret(r / den, i / den);
67struct __kmp_cmplx64_t : std::complex<double> {
69 __kmp_cmplx64_t() : std::complex<double>() {}
71 __kmp_cmplx64_t(
const std::complex<double> &cd) : std::complex<double>(cd) {}
73 void operator/=(
const __kmp_cmplx64_t &rhs) {
74 std::complex<double> lhs = *
this;
75 *
this = __kmp_lhs_div_rhs(lhs, rhs);
78 __kmp_cmplx64_t operator/(
const __kmp_cmplx64_t &rhs) {
79 std::complex<double> lhs = *
this;
80 return __kmp_lhs_div_rhs(lhs, rhs);
83typedef struct __kmp_cmplx64_t kmp_cmplx64;
86struct __kmp_cmplx32_t : std::complex<float> {
88 __kmp_cmplx32_t() : std::complex<float>() {}
90 __kmp_cmplx32_t(
const std::complex<float> &cf) : std::complex<float>(cf) {}
92 __kmp_cmplx32_t operator+(
const __kmp_cmplx32_t &b) {
93 std::complex<float> lhs = *
this;
94 std::complex<float> rhs = b;
97 __kmp_cmplx32_t operator-(
const __kmp_cmplx32_t &b) {
98 std::complex<float> lhs = *
this;
99 std::complex<float> rhs = b;
102 __kmp_cmplx32_t operator*(
const __kmp_cmplx32_t &b) {
103 std::complex<float> lhs = *
this;
104 std::complex<float> rhs = b;
108 __kmp_cmplx32_t operator+(
const kmp_cmplx64 &b) {
109 kmp_cmplx64 t = kmp_cmplx64(*
this) + b;
110 std::complex<double> d(t);
111 std::complex<float> f(d);
112 __kmp_cmplx32_t r(f);
115 __kmp_cmplx32_t operator-(
const kmp_cmplx64 &b) {
116 kmp_cmplx64 t = kmp_cmplx64(*
this) - b;
117 std::complex<double> d(t);
118 std::complex<float> f(d);
119 __kmp_cmplx32_t r(f);
122 __kmp_cmplx32_t operator*(
const kmp_cmplx64 &b) {
123 kmp_cmplx64 t = kmp_cmplx64(*
this) * b;
124 std::complex<double> d(t);
125 std::complex<float> f(d);
126 __kmp_cmplx32_t r(f);
130 void operator/=(
const __kmp_cmplx32_t &rhs) {
131 std::complex<float> lhs = *
this;
132 *
this = __kmp_lhs_div_rhs(lhs, rhs);
135 __kmp_cmplx32_t operator/(
const __kmp_cmplx32_t &rhs) {
136 std::complex<float> lhs = *
this;
137 return __kmp_lhs_div_rhs(lhs, rhs);
140 void operator/=(
const kmp_cmplx64 &rhs) {
141 std::complex<float> lhs = *
this;
142 *
this = __kmp_lhs_div_rhs(lhs, rhs);
145 __kmp_cmplx32_t operator/(
const kmp_cmplx64 &rhs) {
146 std::complex<float> lhs = *
this;
147 return __kmp_lhs_div_rhs(lhs, rhs);
150typedef struct __kmp_cmplx32_t kmp_cmplx32;
153struct KMP_DO_ALIGN(16) __kmp_cmplx80_t : std::complex<long double> {
155 __kmp_cmplx80_t() : std::complex<long double>() {}
157 __kmp_cmplx80_t(
const std::complex<long double> &cld)
158 : std::complex<long double>(cld) {}
160 void operator/=(
const __kmp_cmplx80_t &rhs) {
161 std::complex<long double> lhs = *
this;
162 *
this = __kmp_lhs_div_rhs(lhs, rhs);
165 __kmp_cmplx80_t operator/(
const __kmp_cmplx80_t &rhs) {
166 std::complex<long double> lhs = *
this;
167 return __kmp_lhs_div_rhs(lhs, rhs);
170typedef KMP_DO_ALIGN(16) struct __kmp_cmplx80_t kmp_cmplx80;
174struct __kmp_cmplx128_t : std::complex<_Quad> {
176 __kmp_cmplx128_t() : std::complex<_Quad>() {}
178 __kmp_cmplx128_t(
const std::complex<_Quad> &cq) : std::complex<_Quad>(cq) {}
180 void operator/=(
const __kmp_cmplx128_t &rhs) {
181 std::complex<_Quad> lhs = *
this;
182 *
this = __kmp_lhs_div_rhs(lhs, rhs);
185 __kmp_cmplx128_t operator/(
const __kmp_cmplx128_t &rhs) {
186 std::complex<_Quad> lhs = *
this;
187 return __kmp_lhs_div_rhs(lhs, rhs);
190typedef struct __kmp_cmplx128_t kmp_cmplx128;
193#ifdef _DEBUG_TEMPORARILY_UNSET_
194#undef _DEBUG_TEMPORARILY_UNSET_
201typedef float _Complex kmp_cmplx32;
202typedef double _Complex kmp_cmplx64;
203typedef long double _Complex kmp_cmplx80;
205typedef _Quad _Complex kmp_cmplx128;
213#if KMP_ARCH_X86 && KMP_HAVE_QUAD
219struct KMP_DO_ALIGN(4) Quad_a4_t {
223 Quad_a4_t(
const _Quad &cq) : q(cq) {}
225 Quad_a4_t operator+(
const Quad_a4_t &b) {
226 _Quad lhs = (*this).q;
228 return (Quad_a4_t)(lhs + rhs);
231 Quad_a4_t operator-(
const Quad_a4_t &b) {
232 _Quad lhs = (*this).q;
234 return (Quad_a4_t)(lhs - rhs);
236 Quad_a4_t operator*(
const Quad_a4_t &b) {
237 _Quad lhs = (*this).q;
239 return (Quad_a4_t)(lhs * rhs);
242 Quad_a4_t operator/(
const Quad_a4_t &b) {
243 _Quad lhs = (*this).q;
245 return (Quad_a4_t)(lhs / rhs);
249struct KMP_DO_ALIGN(4) kmp_cmplx128_a4_t {
252 kmp_cmplx128_a4_t() : q() {}
254#if defined(__cplusplus) && (KMP_OS_WINDOWS)
255 kmp_cmplx128_a4_t(
const std::complex<_Quad> &c128) : q(c128) {}
257 kmp_cmplx128_a4_t(
const kmp_cmplx128 &c128) : q(c128) {}
259 kmp_cmplx128_a4_t operator+(
const kmp_cmplx128_a4_t &b) {
260 kmp_cmplx128 lhs = (*this).q;
261 kmp_cmplx128 rhs = b.q;
262 return (kmp_cmplx128_a4_t)(lhs + rhs);
264 kmp_cmplx128_a4_t operator-(
const kmp_cmplx128_a4_t &b) {
265 kmp_cmplx128 lhs = (*this).q;
266 kmp_cmplx128 rhs = b.q;
267 return (kmp_cmplx128_a4_t)(lhs - rhs);
269 kmp_cmplx128_a4_t operator*(
const kmp_cmplx128_a4_t &b) {
270 kmp_cmplx128 lhs = (*this).q;
271 kmp_cmplx128 rhs = b.q;
272 return (kmp_cmplx128_a4_t)(lhs * rhs);
275 kmp_cmplx128_a4_t operator/(
const kmp_cmplx128_a4_t &b) {
276 kmp_cmplx128 lhs = (*this).q;
277 kmp_cmplx128 rhs = b.q;
278 return (kmp_cmplx128_a4_t)(lhs / rhs);
285struct KMP_DO_ALIGN(16) Quad_a16_t {
288 Quad_a16_t() : q() {}
289 Quad_a16_t(
const _Quad &cq) : q(cq) {}
291 Quad_a16_t operator+(
const Quad_a16_t &b) {
292 _Quad lhs = (*this).q;
294 return (Quad_a16_t)(lhs + rhs);
297 Quad_a16_t operator-(
const Quad_a16_t &b) {
298 _Quad lhs = (*this).q;
300 return (Quad_a16_t)(lhs - rhs);
302 Quad_a16_t operator*(
const Quad_a16_t &b) {
303 _Quad lhs = (*this).q;
305 return (Quad_a16_t)(lhs * rhs);
308 Quad_a16_t operator/(
const Quad_a16_t &b) {
309 _Quad lhs = (*this).q;
311 return (Quad_a16_t)(lhs / rhs);
315struct KMP_DO_ALIGN(16) kmp_cmplx128_a16_t {
318 kmp_cmplx128_a16_t() : q() {}
320#if defined(__cplusplus) && (KMP_OS_WINDOWS)
321 kmp_cmplx128_a16_t(
const std::complex<_Quad> &c128) : q(c128) {}
323 kmp_cmplx128_a16_t(
const kmp_cmplx128 &c128) : q(c128) {}
325 kmp_cmplx128_a16_t operator+(
const kmp_cmplx128_a16_t &b) {
326 kmp_cmplx128 lhs = (*this).q;
327 kmp_cmplx128 rhs = b.q;
328 return (kmp_cmplx128_a16_t)(lhs + rhs);
330 kmp_cmplx128_a16_t operator-(
const kmp_cmplx128_a16_t &b) {
331 kmp_cmplx128 lhs = (*this).q;
332 kmp_cmplx128 rhs = b.q;
333 return (kmp_cmplx128_a16_t)(lhs - rhs);
335 kmp_cmplx128_a16_t operator*(
const kmp_cmplx128_a16_t &b) {
336 kmp_cmplx128 lhs = (*this).q;
337 kmp_cmplx128 rhs = b.q;
338 return (kmp_cmplx128_a16_t)(lhs * rhs);
341 kmp_cmplx128_a16_t operator/(
const kmp_cmplx128_a16_t &b) {
342 kmp_cmplx128 lhs = (*this).q;
343 kmp_cmplx128 rhs = b.q;
344 return (kmp_cmplx128_a16_t)(lhs / rhs);
351#define QUAD_LEGACY Quad_a4_t
352#define CPLX128_LEG kmp_cmplx128_a4_t
354#define QUAD_LEGACY _Quad
355#define CPLX128_LEG kmp_cmplx128
362extern int __kmp_atomic_mode;
365typedef kmp_queuing_lock_t kmp_atomic_lock_t;
367static inline void __kmp_acquire_atomic_lock(kmp_atomic_lock_t *lck,
369#if OMPT_SUPPORT && OMPT_OPTIONAL
370 if (ompt_enabled.ompt_callback_mutex_acquire) {
371 ompt_callbacks.ompt_callback(ompt_callback_mutex_acquire)(
372 ompt_mutex_atomic, 0, kmp_mutex_impl_queuing,
373 (ompt_wait_id_t)(uintptr_t)lck, OMPT_GET_RETURN_ADDRESS(0));
377 __kmp_acquire_queuing_lock(lck, gtid);
379#if OMPT_SUPPORT && OMPT_OPTIONAL
380 if (ompt_enabled.ompt_callback_mutex_acquired) {
381 ompt_callbacks.ompt_callback(ompt_callback_mutex_acquired)(
382 ompt_mutex_atomic, (ompt_wait_id_t)(uintptr_t)lck,
383 OMPT_GET_RETURN_ADDRESS(0));
388static inline int __kmp_test_atomic_lock(kmp_atomic_lock_t *lck,
390 return __kmp_test_queuing_lock(lck, gtid);
393static inline void __kmp_release_atomic_lock(kmp_atomic_lock_t *lck,
395 __kmp_release_queuing_lock(lck, gtid);
396#if OMPT_SUPPORT && OMPT_OPTIONAL
397 if (ompt_enabled.ompt_callback_mutex_released) {
398 ompt_callbacks.ompt_callback(ompt_callback_mutex_released)(
399 ompt_mutex_atomic, (ompt_wait_id_t)(uintptr_t)lck,
400 OMPT_GET_RETURN_ADDRESS(0));
405static inline void __kmp_init_atomic_lock(kmp_atomic_lock_t *lck) {
406 __kmp_init_queuing_lock(lck);
409static inline void __kmp_destroy_atomic_lock(kmp_atomic_lock_t *lck) {
410 __kmp_destroy_queuing_lock(lck);
414extern kmp_atomic_lock_t __kmp_atomic_lock;
416extern kmp_atomic_lock_t __kmp_atomic_lock_1i;
419extern kmp_atomic_lock_t __kmp_atomic_lock_2i;
422extern kmp_atomic_lock_t __kmp_atomic_lock_4i;
425extern kmp_atomic_lock_t __kmp_atomic_lock_4r;
428extern kmp_atomic_lock_t __kmp_atomic_lock_8i;
431extern kmp_atomic_lock_t __kmp_atomic_lock_8r;
434extern kmp_atomic_lock_t
435 __kmp_atomic_lock_8c;
437extern kmp_atomic_lock_t
438 __kmp_atomic_lock_10r;
440extern kmp_atomic_lock_t __kmp_atomic_lock_16r;
443extern kmp_atomic_lock_t __kmp_atomic_lock_16c;
446extern kmp_atomic_lock_t
447 __kmp_atomic_lock_20c;
449extern kmp_atomic_lock_t __kmp_atomic_lock_32c;
456void __kmpc_atomic_fixed1_add(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
457void __kmpc_atomic_fixed1_andb(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
458void __kmpc_atomic_fixed1_div(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
459void __kmpc_atomic_fixed1u_div(
ident_t *id_ref,
int gtid,
unsigned char *lhs,
461void __kmpc_atomic_fixed1_mul(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
462void __kmpc_atomic_fixed1_orb(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
463void __kmpc_atomic_fixed1_shl(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
464void __kmpc_atomic_fixed1_shr(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
465void __kmpc_atomic_fixed1u_shr(
ident_t *id_ref,
int gtid,
unsigned char *lhs,
467void __kmpc_atomic_fixed1_sub(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
468void __kmpc_atomic_fixed1_xor(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
470void __kmpc_atomic_fixed2_add(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
471void __kmpc_atomic_fixed2_andb(
ident_t *id_ref,
int gtid,
short *lhs,
473void __kmpc_atomic_fixed2_div(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
474void __kmpc_atomic_fixed2u_div(
ident_t *id_ref,
int gtid,
unsigned short *lhs,
476void __kmpc_atomic_fixed2_mul(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
477void __kmpc_atomic_fixed2_orb(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
478void __kmpc_atomic_fixed2_shl(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
479void __kmpc_atomic_fixed2_shr(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
480void __kmpc_atomic_fixed2u_shr(
ident_t *id_ref,
int gtid,
unsigned short *lhs,
482void __kmpc_atomic_fixed2_sub(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
483void __kmpc_atomic_fixed2_xor(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
485void __kmpc_atomic_fixed4_add(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
487void __kmpc_atomic_fixed4_sub(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
490void __kmpc_atomic_float4_add(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
492void __kmpc_atomic_float4_sub(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
495void __kmpc_atomic_fixed8_add(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
497void __kmpc_atomic_fixed8_sub(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
500void __kmpc_atomic_float8_add(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
502void __kmpc_atomic_float8_sub(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
505void __kmpc_atomic_fixed4_andb(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
507void __kmpc_atomic_fixed4_div(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
509void __kmpc_atomic_fixed4u_div(
ident_t *id_ref,
int gtid, kmp_uint32 *lhs,
511void __kmpc_atomic_fixed4_mul(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
513void __kmpc_atomic_fixed4_orb(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
515void __kmpc_atomic_fixed4_shl(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
517void __kmpc_atomic_fixed4_shr(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
519void __kmpc_atomic_fixed4u_shr(
ident_t *id_ref,
int gtid, kmp_uint32 *lhs,
521void __kmpc_atomic_fixed4_xor(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
524void __kmpc_atomic_fixed8_andb(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
526void __kmpc_atomic_fixed8_div(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
528void __kmpc_atomic_fixed8u_div(
ident_t *id_ref,
int gtid, kmp_uint64 *lhs,
530void __kmpc_atomic_fixed8_mul(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
532void __kmpc_atomic_fixed8_orb(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
534void __kmpc_atomic_fixed8_shl(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
536void __kmpc_atomic_fixed8_shr(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
538void __kmpc_atomic_fixed8u_shr(
ident_t *id_ref,
int gtid, kmp_uint64 *lhs,
540void __kmpc_atomic_fixed8_xor(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
543void __kmpc_atomic_float4_div(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
545void __kmpc_atomic_float4_mul(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
548void __kmpc_atomic_float8_div(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
550void __kmpc_atomic_float8_mul(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
553void __kmpc_atomic_fixed1_andl(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
554void __kmpc_atomic_fixed1_orl(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
555void __kmpc_atomic_fixed2_andl(
ident_t *id_ref,
int gtid,
short *lhs,
557void __kmpc_atomic_fixed2_orl(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
558void __kmpc_atomic_fixed4_andl(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
560void __kmpc_atomic_fixed4_orl(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
562void __kmpc_atomic_fixed8_andl(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
564void __kmpc_atomic_fixed8_orl(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
567void __kmpc_atomic_fixed1_max(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
568void __kmpc_atomic_fixed1_min(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
569void __kmpc_atomic_fixed2_max(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
570void __kmpc_atomic_fixed2_min(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
571void __kmpc_atomic_fixed4_max(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
573void __kmpc_atomic_fixed4_min(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
575void __kmpc_atomic_fixed8_max(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
577void __kmpc_atomic_fixed8_min(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
579void __kmpc_atomic_float4_max(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
581void __kmpc_atomic_float4_min(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
583void __kmpc_atomic_float8_max(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
585void __kmpc_atomic_float8_min(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
587void __kmpc_atomic_float10_max(
ident_t *id_ref,
int gtid,
long double *lhs,
589void __kmpc_atomic_float10_min(
ident_t *id_ref,
int gtid,
long double *lhs,
592void __kmpc_atomic_float16_max(
ident_t *id_ref,
int gtid, QUAD_LEGACY *lhs,
594void __kmpc_atomic_float16_min(
ident_t *id_ref,
int gtid, QUAD_LEGACY *lhs,
599void __kmpc_atomic_float16_max_a16(
ident_t *id_ref,
int gtid, Quad_a16_t *lhs,
601void __kmpc_atomic_float16_min_a16(
ident_t *id_ref,
int gtid, Quad_a16_t *lhs,
606void __kmpc_atomic_fixed1_neqv(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
607void __kmpc_atomic_fixed2_neqv(
ident_t *id_ref,
int gtid,
short *lhs,
609void __kmpc_atomic_fixed4_neqv(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
611void __kmpc_atomic_fixed8_neqv(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
614void __kmpc_atomic_fixed1_eqv(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
615void __kmpc_atomic_fixed2_eqv(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
616void __kmpc_atomic_fixed4_eqv(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
618void __kmpc_atomic_fixed8_eqv(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
621void __kmpc_atomic_float10_add(
ident_t *id_ref,
int gtid,
long double *lhs,
623void __kmpc_atomic_float10_sub(
ident_t *id_ref,
int gtid,
long double *lhs,
625void __kmpc_atomic_float10_mul(
ident_t *id_ref,
int gtid,
long double *lhs,
627void __kmpc_atomic_float10_div(
ident_t *id_ref,
int gtid,
long double *lhs,
631void __kmpc_atomic_float16_add(
ident_t *id_ref,
int gtid, QUAD_LEGACY *lhs,
633void __kmpc_atomic_float16_sub(
ident_t *id_ref,
int gtid, QUAD_LEGACY *lhs,
635void __kmpc_atomic_float16_mul(
ident_t *id_ref,
int gtid, QUAD_LEGACY *lhs,
637void __kmpc_atomic_float16_div(
ident_t *id_ref,
int gtid, QUAD_LEGACY *lhs,
641void __kmpc_atomic_float16_add_a16(
ident_t *id_ref,
int gtid, Quad_a16_t *lhs,
643void __kmpc_atomic_float16_sub_a16(
ident_t *id_ref,
int gtid, Quad_a16_t *lhs,
645void __kmpc_atomic_float16_mul_a16(
ident_t *id_ref,
int gtid, Quad_a16_t *lhs,
647void __kmpc_atomic_float16_div_a16(
ident_t *id_ref,
int gtid, Quad_a16_t *lhs,
652void __kmpc_atomic_cmplx4_add(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
654void __kmpc_atomic_cmplx4_sub(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
656void __kmpc_atomic_cmplx4_mul(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
658void __kmpc_atomic_cmplx4_div(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
660void __kmpc_atomic_cmplx8_add(
ident_t *id_ref,
int gtid, kmp_cmplx64 *lhs,
662void __kmpc_atomic_cmplx8_sub(
ident_t *id_ref,
int gtid, kmp_cmplx64 *lhs,
664void __kmpc_atomic_cmplx8_mul(
ident_t *id_ref,
int gtid, kmp_cmplx64 *lhs,
666void __kmpc_atomic_cmplx8_div(
ident_t *id_ref,
int gtid, kmp_cmplx64 *lhs,
668void __kmpc_atomic_cmplx10_add(
ident_t *id_ref,
int gtid, kmp_cmplx80 *lhs,
670void __kmpc_atomic_cmplx10_sub(
ident_t *id_ref,
int gtid, kmp_cmplx80 *lhs,
672void __kmpc_atomic_cmplx10_mul(
ident_t *id_ref,
int gtid, kmp_cmplx80 *lhs,
674void __kmpc_atomic_cmplx10_div(
ident_t *id_ref,
int gtid, kmp_cmplx80 *lhs,
677void __kmpc_atomic_cmplx16_add(
ident_t *id_ref,
int gtid, CPLX128_LEG *lhs,
679void __kmpc_atomic_cmplx16_sub(
ident_t *id_ref,
int gtid, CPLX128_LEG *lhs,
681void __kmpc_atomic_cmplx16_mul(
ident_t *id_ref,
int gtid, CPLX128_LEG *lhs,
683void __kmpc_atomic_cmplx16_div(
ident_t *id_ref,
int gtid, CPLX128_LEG *lhs,
687void __kmpc_atomic_cmplx16_add_a16(
ident_t *id_ref,
int gtid,
688 kmp_cmplx128_a16_t *lhs,
689 kmp_cmplx128_a16_t rhs);
690void __kmpc_atomic_cmplx16_sub_a16(
ident_t *id_ref,
int gtid,
691 kmp_cmplx128_a16_t *lhs,
692 kmp_cmplx128_a16_t rhs);
693void __kmpc_atomic_cmplx16_mul_a16(
ident_t *id_ref,
int gtid,
694 kmp_cmplx128_a16_t *lhs,
695 kmp_cmplx128_a16_t rhs);
696void __kmpc_atomic_cmplx16_div_a16(
ident_t *id_ref,
int gtid,
697 kmp_cmplx128_a16_t *lhs,
698 kmp_cmplx128_a16_t rhs);
704#if KMP_ARCH_X86 || KMP_ARCH_X86_64
706void __kmpc_atomic_fixed1_sub_rev(
ident_t *id_ref,
int gtid,
char *lhs,
708void __kmpc_atomic_fixed1_div_rev(
ident_t *id_ref,
int gtid,
char *lhs,
710void __kmpc_atomic_fixed1u_div_rev(
ident_t *id_ref,
int gtid,
711 unsigned char *lhs,
unsigned char rhs);
712void __kmpc_atomic_fixed1_shl_rev(
ident_t *id_ref,
int gtid,
char *lhs,
714void __kmpc_atomic_fixed1_shr_rev(
ident_t *id_ref,
int gtid,
char *lhs,
716void __kmpc_atomic_fixed1u_shr_rev(
ident_t *id_ref,
int gtid,
717 unsigned char *lhs,
unsigned char rhs);
718void __kmpc_atomic_fixed2_sub_rev(
ident_t *id_ref,
int gtid,
short *lhs,
720void __kmpc_atomic_fixed2_div_rev(
ident_t *id_ref,
int gtid,
short *lhs,
722void __kmpc_atomic_fixed2u_div_rev(
ident_t *id_ref,
int gtid,
723 unsigned short *lhs,
unsigned short rhs);
724void __kmpc_atomic_fixed2_shl_rev(
ident_t *id_ref,
int gtid,
short *lhs,
726void __kmpc_atomic_fixed2_shr_rev(
ident_t *id_ref,
int gtid,
short *lhs,
728void __kmpc_atomic_fixed2u_shr_rev(
ident_t *id_ref,
int gtid,
729 unsigned short *lhs,
unsigned short rhs);
730void __kmpc_atomic_fixed4_sub_rev(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
732void __kmpc_atomic_fixed4_div_rev(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
734void __kmpc_atomic_fixed4u_div_rev(
ident_t *id_ref,
int gtid, kmp_uint32 *lhs,
736void __kmpc_atomic_fixed4_shl_rev(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
738void __kmpc_atomic_fixed4_shr_rev(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
740void __kmpc_atomic_fixed4u_shr_rev(
ident_t *id_ref,
int gtid, kmp_uint32 *lhs,
742void __kmpc_atomic_fixed8_sub_rev(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
744void __kmpc_atomic_fixed8_div_rev(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
746void __kmpc_atomic_fixed8u_div_rev(
ident_t *id_ref,
int gtid, kmp_uint64 *lhs,
748void __kmpc_atomic_fixed8_shl_rev(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
750void __kmpc_atomic_fixed8_shr_rev(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
752void __kmpc_atomic_fixed8u_shr_rev(
ident_t *id_ref,
int gtid, kmp_uint64 *lhs,
754void __kmpc_atomic_float4_sub_rev(
ident_t *id_ref,
int gtid,
float *lhs,
756void __kmpc_atomic_float4_div_rev(
ident_t *id_ref,
int gtid,
float *lhs,
758void __kmpc_atomic_float8_sub_rev(
ident_t *id_ref,
int gtid,
double *lhs,
760void __kmpc_atomic_float8_div_rev(
ident_t *id_ref,
int gtid,
double *lhs,
762void __kmpc_atomic_float10_sub_rev(
ident_t *id_ref,
int gtid,
long double *lhs,
764void __kmpc_atomic_float10_div_rev(
ident_t *id_ref,
int gtid,
long double *lhs,
767void __kmpc_atomic_float16_sub_rev(
ident_t *id_ref,
int gtid, QUAD_LEGACY *lhs,
769void __kmpc_atomic_float16_div_rev(
ident_t *id_ref,
int gtid, QUAD_LEGACY *lhs,
772void __kmpc_atomic_cmplx4_sub_rev(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
774void __kmpc_atomic_cmplx4_div_rev(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
776void __kmpc_atomic_cmplx8_sub_rev(
ident_t *id_ref,
int gtid, kmp_cmplx64 *lhs,
778void __kmpc_atomic_cmplx8_div_rev(
ident_t *id_ref,
int gtid, kmp_cmplx64 *lhs,
780void __kmpc_atomic_cmplx10_sub_rev(
ident_t *id_ref,
int gtid, kmp_cmplx80 *lhs,
782void __kmpc_atomic_cmplx10_div_rev(
ident_t *id_ref,
int gtid, kmp_cmplx80 *lhs,
785void __kmpc_atomic_cmplx16_sub_rev(
ident_t *id_ref,
int gtid, CPLX128_LEG *lhs,
787void __kmpc_atomic_cmplx16_div_rev(
ident_t *id_ref,
int gtid, CPLX128_LEG *lhs,
791void __kmpc_atomic_float16_sub_a16_rev(
ident_t *id_ref,
int gtid,
792 Quad_a16_t *lhs, Quad_a16_t rhs);
793void __kmpc_atomic_float16_div_a16_rev(
ident_t *id_ref,
int gtid,
794 Quad_a16_t *lhs, Quad_a16_t rhs);
795void __kmpc_atomic_cmplx16_sub_a16_rev(
ident_t *id_ref,
int gtid,
796 kmp_cmplx128_a16_t *lhs,
797 kmp_cmplx128_a16_t rhs);
798void __kmpc_atomic_cmplx16_div_a16_rev(
ident_t *id_ref,
int gtid,
799 kmp_cmplx128_a16_t *lhs,
800 kmp_cmplx128_a16_t rhs);
809void __kmpc_atomic_fixed1_mul_float8(
ident_t *id_ref,
int gtid,
char *lhs,
811void __kmpc_atomic_fixed1_div_float8(
ident_t *id_ref,
int gtid,
char *lhs,
813void __kmpc_atomic_fixed2_mul_float8(
ident_t *id_ref,
int gtid,
short *lhs,
815void __kmpc_atomic_fixed2_div_float8(
ident_t *id_ref,
int gtid,
short *lhs,
817void __kmpc_atomic_fixed4_mul_float8(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
819void __kmpc_atomic_fixed4_div_float8(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
821void __kmpc_atomic_fixed8_mul_float8(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
823void __kmpc_atomic_fixed8_div_float8(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
825void __kmpc_atomic_float4_add_float8(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
827void __kmpc_atomic_float4_sub_float8(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
829void __kmpc_atomic_float4_mul_float8(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
831void __kmpc_atomic_float4_div_float8(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
837void __kmpc_atomic_fixed1_add_fp(
ident_t *id_ref,
int gtid,
char *lhs,
839void __kmpc_atomic_fixed1u_add_fp(
ident_t *id_ref,
int gtid,
unsigned char *lhs,
841void __kmpc_atomic_fixed1_sub_fp(
ident_t *id_ref,
int gtid,
char *lhs,
843void __kmpc_atomic_fixed1u_sub_fp(
ident_t *id_ref,
int gtid,
unsigned char *lhs,
845void __kmpc_atomic_fixed1_mul_fp(
ident_t *id_ref,
int gtid,
char *lhs,
847void __kmpc_atomic_fixed1u_mul_fp(
ident_t *id_ref,
int gtid,
unsigned char *lhs,
849void __kmpc_atomic_fixed1_div_fp(
ident_t *id_ref,
int gtid,
char *lhs,
851void __kmpc_atomic_fixed1u_div_fp(
ident_t *id_ref,
int gtid,
unsigned char *lhs,
854void __kmpc_atomic_fixed2_add_fp(
ident_t *id_ref,
int gtid,
short *lhs,
856void __kmpc_atomic_fixed2u_add_fp(
ident_t *id_ref,
int gtid,
857 unsigned short *lhs, _Quad rhs);
858void __kmpc_atomic_fixed2_sub_fp(
ident_t *id_ref,
int gtid,
short *lhs,
860void __kmpc_atomic_fixed2u_sub_fp(
ident_t *id_ref,
int gtid,
861 unsigned short *lhs, _Quad rhs);
862void __kmpc_atomic_fixed2_mul_fp(
ident_t *id_ref,
int gtid,
short *lhs,
864void __kmpc_atomic_fixed2u_mul_fp(
ident_t *id_ref,
int gtid,
865 unsigned short *lhs, _Quad rhs);
866void __kmpc_atomic_fixed2_div_fp(
ident_t *id_ref,
int gtid,
short *lhs,
868void __kmpc_atomic_fixed2u_div_fp(
ident_t *id_ref,
int gtid,
869 unsigned short *lhs, _Quad rhs);
871void __kmpc_atomic_fixed4_add_fp(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
873void __kmpc_atomic_fixed4u_add_fp(
ident_t *id_ref,
int gtid, kmp_uint32 *lhs,
875void __kmpc_atomic_fixed4_sub_fp(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
877void __kmpc_atomic_fixed4u_sub_fp(
ident_t *id_ref,
int gtid, kmp_uint32 *lhs,
879void __kmpc_atomic_fixed4_mul_fp(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
881void __kmpc_atomic_fixed4u_mul_fp(
ident_t *id_ref,
int gtid, kmp_uint32 *lhs,
883void __kmpc_atomic_fixed4_div_fp(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
885void __kmpc_atomic_fixed4u_div_fp(
ident_t *id_ref,
int gtid, kmp_uint32 *lhs,
888void __kmpc_atomic_fixed8_add_fp(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
890void __kmpc_atomic_fixed8u_add_fp(
ident_t *id_ref,
int gtid, kmp_uint64 *lhs,
892void __kmpc_atomic_fixed8_sub_fp(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
894void __kmpc_atomic_fixed8u_sub_fp(
ident_t *id_ref,
int gtid, kmp_uint64 *lhs,
896void __kmpc_atomic_fixed8_mul_fp(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
898void __kmpc_atomic_fixed8u_mul_fp(
ident_t *id_ref,
int gtid, kmp_uint64 *lhs,
900void __kmpc_atomic_fixed8_div_fp(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
902void __kmpc_atomic_fixed8u_div_fp(
ident_t *id_ref,
int gtid, kmp_uint64 *lhs,
905void __kmpc_atomic_float4_add_fp(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
907void __kmpc_atomic_float4_sub_fp(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
909void __kmpc_atomic_float4_mul_fp(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
911void __kmpc_atomic_float4_div_fp(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
914void __kmpc_atomic_float8_add_fp(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
916void __kmpc_atomic_float8_sub_fp(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
918void __kmpc_atomic_float8_mul_fp(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
920void __kmpc_atomic_float8_div_fp(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
923void __kmpc_atomic_float10_add_fp(
ident_t *id_ref,
int gtid,
long double *lhs,
925void __kmpc_atomic_float10_sub_fp(
ident_t *id_ref,
int gtid,
long double *lhs,
927void __kmpc_atomic_float10_mul_fp(
ident_t *id_ref,
int gtid,
long double *lhs,
929void __kmpc_atomic_float10_div_fp(
ident_t *id_ref,
int gtid,
long double *lhs,
933void __kmpc_atomic_fixed1_sub_rev_fp(
ident_t *id_ref,
int gtid,
char *lhs,
935void __kmpc_atomic_fixed1u_sub_rev_fp(
ident_t *id_ref,
int gtid,
936 unsigned char *lhs, _Quad rhs);
937void __kmpc_atomic_fixed1_div_rev_fp(
ident_t *id_ref,
int gtid,
char *lhs,
939void __kmpc_atomic_fixed1u_div_rev_fp(
ident_t *id_ref,
int gtid,
940 unsigned char *lhs, _Quad rhs);
941void __kmpc_atomic_fixed2_sub_rev_fp(
ident_t *id_ref,
int gtid,
short *lhs,
943void __kmpc_atomic_fixed2u_sub_rev_fp(
ident_t *id_ref,
int gtid,
944 unsigned short *lhs, _Quad rhs);
945void __kmpc_atomic_fixed2_div_rev_fp(
ident_t *id_ref,
int gtid,
short *lhs,
947void __kmpc_atomic_fixed2u_div_rev_fp(
ident_t *id_ref,
int gtid,
948 unsigned short *lhs, _Quad rhs);
949void __kmpc_atomic_fixed4_sub_rev_fp(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
951void __kmpc_atomic_fixed4u_sub_rev_fp(
ident_t *id_ref,
int gtid,
952 kmp_uint32 *lhs, _Quad rhs);
953void __kmpc_atomic_fixed4_div_rev_fp(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
955void __kmpc_atomic_fixed4u_div_rev_fp(
ident_t *id_ref,
int gtid,
956 kmp_uint32 *lhs, _Quad rhs);
957void __kmpc_atomic_fixed8_sub_rev_fp(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
959void __kmpc_atomic_fixed8u_sub_rev_fp(
ident_t *id_ref,
int gtid,
960 kmp_uint64 *lhs, _Quad rhs);
961void __kmpc_atomic_fixed8_div_rev_fp(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
963void __kmpc_atomic_fixed8u_div_rev_fp(
ident_t *id_ref,
int gtid,
964 kmp_uint64 *lhs, _Quad rhs);
965void __kmpc_atomic_float4_sub_rev_fp(
ident_t *id_ref,
int gtid,
float *lhs,
967void __kmpc_atomic_float4_div_rev_fp(
ident_t *id_ref,
int gtid,
float *lhs,
969void __kmpc_atomic_float8_sub_rev_fp(
ident_t *id_ref,
int gtid,
double *lhs,
971void __kmpc_atomic_float8_div_rev_fp(
ident_t *id_ref,
int gtid,
double *lhs,
973void __kmpc_atomic_float10_sub_rev_fp(
ident_t *id_ref,
int gtid,
974 long double *lhs, _Quad rhs);
975void __kmpc_atomic_float10_div_rev_fp(
ident_t *id_ref,
int gtid,
976 long double *lhs, _Quad rhs);
981void __kmpc_atomic_cmplx4_add_cmplx8(
ident_t *id_ref,
int gtid,
982 kmp_cmplx32 *lhs, kmp_cmplx64 rhs);
983void __kmpc_atomic_cmplx4_sub_cmplx8(
ident_t *id_ref,
int gtid,
984 kmp_cmplx32 *lhs, kmp_cmplx64 rhs);
985void __kmpc_atomic_cmplx4_mul_cmplx8(
ident_t *id_ref,
int gtid,
986 kmp_cmplx32 *lhs, kmp_cmplx64 rhs);
987void __kmpc_atomic_cmplx4_div_cmplx8(
ident_t *id_ref,
int gtid,
988 kmp_cmplx32 *lhs, kmp_cmplx64 rhs);
991void __kmpc_atomic_1(
ident_t *id_ref,
int gtid,
void *lhs,
void *rhs,
992 void (*f)(
void *,
void *,
void *));
993void __kmpc_atomic_2(
ident_t *id_ref,
int gtid,
void *lhs,
void *rhs,
994 void (*f)(
void *,
void *,
void *));
995void __kmpc_atomic_4(
ident_t *id_ref,
int gtid,
void *lhs,
void *rhs,
996 void (*f)(
void *,
void *,
void *));
997void __kmpc_atomic_8(
ident_t *id_ref,
int gtid,
void *lhs,
void *rhs,
998 void (*f)(
void *,
void *,
void *));
999void __kmpc_atomic_10(
ident_t *id_ref,
int gtid,
void *lhs,
void *rhs,
1000 void (*f)(
void *,
void *,
void *));
1001void __kmpc_atomic_16(
ident_t *id_ref,
int gtid,
void *lhs,
void *rhs,
1002 void (*f)(
void *,
void *,
void *));
1003void __kmpc_atomic_20(
ident_t *id_ref,
int gtid,
void *lhs,
void *rhs,
1004 void (*f)(
void *,
void *,
void *));
1005void __kmpc_atomic_32(
ident_t *id_ref,
int gtid,
void *lhs,
void *rhs,
1006 void (*f)(
void *,
void *,
void *));
1011char __kmpc_atomic_fixed1_rd(
ident_t *id_ref,
int gtid,
char *loc);
1012short __kmpc_atomic_fixed2_rd(
ident_t *id_ref,
int gtid,
short *loc);
1013kmp_int32 __kmpc_atomic_fixed4_rd(
ident_t *id_ref,
int gtid, kmp_int32 *loc);
1014kmp_int64 __kmpc_atomic_fixed8_rd(
ident_t *id_ref,
int gtid, kmp_int64 *loc);
1015kmp_real32 __kmpc_atomic_float4_rd(
ident_t *id_ref,
int gtid, kmp_real32 *loc);
1016kmp_real64 __kmpc_atomic_float8_rd(
ident_t *id_ref,
int gtid, kmp_real64 *loc);
1017long double __kmpc_atomic_float10_rd(
ident_t *id_ref,
int gtid,
1020QUAD_LEGACY __kmpc_atomic_float16_rd(
ident_t *id_ref,
int gtid,
1026void __kmpc_atomic_cmplx4_rd(kmp_cmplx32 *out,
ident_t *id_ref,
int gtid,
1029kmp_cmplx32 __kmpc_atomic_cmplx4_rd(
ident_t *id_ref,
int gtid,
1032kmp_cmplx64 __kmpc_atomic_cmplx8_rd(
ident_t *id_ref,
int gtid,
1034kmp_cmplx80 __kmpc_atomic_cmplx10_rd(
ident_t *id_ref,
int gtid,
1037CPLX128_LEG __kmpc_atomic_cmplx16_rd(
ident_t *id_ref,
int gtid,
1041Quad_a16_t __kmpc_atomic_float16_a16_rd(
ident_t *id_ref,
int gtid,
1043kmp_cmplx128_a16_t __kmpc_atomic_cmplx16_a16_rd(
ident_t *id_ref,
int gtid,
1044 kmp_cmplx128_a16_t *loc);
1049void __kmpc_atomic_fixed1_wr(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
1050void __kmpc_atomic_fixed2_wr(
ident_t *id_ref,
int gtid,
short *lhs,
short rhs);
1051void __kmpc_atomic_fixed4_wr(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
1053void __kmpc_atomic_fixed8_wr(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
1055void __kmpc_atomic_float4_wr(
ident_t *id_ref,
int gtid, kmp_real32 *lhs,
1057void __kmpc_atomic_float8_wr(
ident_t *id_ref,
int gtid, kmp_real64 *lhs,
1059void __kmpc_atomic_float10_wr(
ident_t *id_ref,
int gtid,
long double *lhs,
1062void __kmpc_atomic_float16_wr(
ident_t *id_ref,
int gtid, QUAD_LEGACY *lhs,
1065void __kmpc_atomic_cmplx4_wr(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
1067void __kmpc_atomic_cmplx8_wr(
ident_t *id_ref,
int gtid, kmp_cmplx64 *lhs,
1069void __kmpc_atomic_cmplx10_wr(
ident_t *id_ref,
int gtid, kmp_cmplx80 *lhs,
1072void __kmpc_atomic_cmplx16_wr(
ident_t *id_ref,
int gtid, CPLX128_LEG *lhs,
1076void __kmpc_atomic_float16_a16_wr(
ident_t *id_ref,
int gtid, Quad_a16_t *lhs,
1078void __kmpc_atomic_cmplx16_a16_wr(
ident_t *id_ref,
int gtid,
1079 kmp_cmplx128_a16_t *lhs,
1080 kmp_cmplx128_a16_t rhs);
1087char __kmpc_atomic_fixed1_add_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1088 char rhs,
int flag);
1089char __kmpc_atomic_fixed1_andb_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1090 char rhs,
int flag);
1091char __kmpc_atomic_fixed1_div_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1092 char rhs,
int flag);
1093unsigned char __kmpc_atomic_fixed1u_div_cpt(
ident_t *id_ref,
int gtid,
1095 unsigned char rhs,
int flag);
1096char __kmpc_atomic_fixed1_mul_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1097 char rhs,
int flag);
1098char __kmpc_atomic_fixed1_orb_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1099 char rhs,
int flag);
1100char __kmpc_atomic_fixed1_shl_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1101 char rhs,
int flag);
1102char __kmpc_atomic_fixed1_shr_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1103 char rhs,
int flag);
1104unsigned char __kmpc_atomic_fixed1u_shr_cpt(
ident_t *id_ref,
int gtid,
1106 unsigned char rhs,
int flag);
1107char __kmpc_atomic_fixed1_sub_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1108 char rhs,
int flag);
1109char __kmpc_atomic_fixed1_xor_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1110 char rhs,
int flag);
1112short __kmpc_atomic_fixed2_add_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1113 short rhs,
int flag);
1114short __kmpc_atomic_fixed2_andb_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1115 short rhs,
int flag);
1116short __kmpc_atomic_fixed2_div_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1117 short rhs,
int flag);
1118unsigned short __kmpc_atomic_fixed2u_div_cpt(
ident_t *id_ref,
int gtid,
1119 unsigned short *lhs,
1120 unsigned short rhs,
int flag);
1121short __kmpc_atomic_fixed2_mul_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1122 short rhs,
int flag);
1123short __kmpc_atomic_fixed2_orb_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1124 short rhs,
int flag);
1125short __kmpc_atomic_fixed2_shl_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1126 short rhs,
int flag);
1127short __kmpc_atomic_fixed2_shr_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1128 short rhs,
int flag);
1129unsigned short __kmpc_atomic_fixed2u_shr_cpt(
ident_t *id_ref,
int gtid,
1130 unsigned short *lhs,
1131 unsigned short rhs,
int flag);
1132short __kmpc_atomic_fixed2_sub_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1133 short rhs,
int flag);
1134short __kmpc_atomic_fixed2_xor_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1135 short rhs,
int flag);
1137kmp_int32 __kmpc_atomic_fixed4_add_cpt(
ident_t *id_ref,
int gtid,
1138 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1139kmp_int32 __kmpc_atomic_fixed4_sub_cpt(
ident_t *id_ref,
int gtid,
1140 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1142kmp_real32 __kmpc_atomic_float4_add_cpt(
ident_t *id_ref,
int gtid,
1143 kmp_real32 *lhs, kmp_real32 rhs,
1145kmp_real32 __kmpc_atomic_float4_sub_cpt(
ident_t *id_ref,
int gtid,
1146 kmp_real32 *lhs, kmp_real32 rhs,
1149kmp_int64 __kmpc_atomic_fixed8_add_cpt(
ident_t *id_ref,
int gtid,
1150 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1151kmp_int64 __kmpc_atomic_fixed8_sub_cpt(
ident_t *id_ref,
int gtid,
1152 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1154kmp_real64 __kmpc_atomic_float8_add_cpt(
ident_t *id_ref,
int gtid,
1155 kmp_real64 *lhs, kmp_real64 rhs,
1157kmp_real64 __kmpc_atomic_float8_sub_cpt(
ident_t *id_ref,
int gtid,
1158 kmp_real64 *lhs, kmp_real64 rhs,
1161kmp_int32 __kmpc_atomic_fixed4_andb_cpt(
ident_t *id_ref,
int gtid,
1162 kmp_int32 *lhs, kmp_int32 rhs,
1164kmp_int32 __kmpc_atomic_fixed4_div_cpt(
ident_t *id_ref,
int gtid,
1165 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1166kmp_uint32 __kmpc_atomic_fixed4u_div_cpt(
ident_t *id_ref,
int gtid,
1167 kmp_uint32 *lhs, kmp_uint32 rhs,
1169kmp_int32 __kmpc_atomic_fixed4_mul_cpt(
ident_t *id_ref,
int gtid,
1170 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1171kmp_int32 __kmpc_atomic_fixed4_orb_cpt(
ident_t *id_ref,
int gtid,
1172 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1173kmp_int32 __kmpc_atomic_fixed4_shl_cpt(
ident_t *id_ref,
int gtid,
1174 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1175kmp_int32 __kmpc_atomic_fixed4_shr_cpt(
ident_t *id_ref,
int gtid,
1176 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1177kmp_uint32 __kmpc_atomic_fixed4u_shr_cpt(
ident_t *id_ref,
int gtid,
1178 kmp_uint32 *lhs, kmp_uint32 rhs,
1180kmp_int32 __kmpc_atomic_fixed4_xor_cpt(
ident_t *id_ref,
int gtid,
1181 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1183kmp_int64 __kmpc_atomic_fixed8_andb_cpt(
ident_t *id_ref,
int gtid,
1184 kmp_int64 *lhs, kmp_int64 rhs,
1186kmp_int64 __kmpc_atomic_fixed8_div_cpt(
ident_t *id_ref,
int gtid,
1187 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1188kmp_uint64 __kmpc_atomic_fixed8u_div_cpt(
ident_t *id_ref,
int gtid,
1189 kmp_uint64 *lhs, kmp_uint64 rhs,
1191kmp_int64 __kmpc_atomic_fixed8_mul_cpt(
ident_t *id_ref,
int gtid,
1192 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1193kmp_int64 __kmpc_atomic_fixed8_orb_cpt(
ident_t *id_ref,
int gtid,
1194 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1195kmp_int64 __kmpc_atomic_fixed8_shl_cpt(
ident_t *id_ref,
int gtid,
1196 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1197kmp_int64 __kmpc_atomic_fixed8_shr_cpt(
ident_t *id_ref,
int gtid,
1198 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1199kmp_uint64 __kmpc_atomic_fixed8u_shr_cpt(
ident_t *id_ref,
int gtid,
1200 kmp_uint64 *lhs, kmp_uint64 rhs,
1202kmp_int64 __kmpc_atomic_fixed8_xor_cpt(
ident_t *id_ref,
int gtid,
1203 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1205kmp_real32 __kmpc_atomic_float4_div_cpt(
ident_t *id_ref,
int gtid,
1206 kmp_real32 *lhs, kmp_real32 rhs,
1208kmp_real32 __kmpc_atomic_float4_mul_cpt(
ident_t *id_ref,
int gtid,
1209 kmp_real32 *lhs, kmp_real32 rhs,
1212kmp_real64 __kmpc_atomic_float8_div_cpt(
ident_t *id_ref,
int gtid,
1213 kmp_real64 *lhs, kmp_real64 rhs,
1215kmp_real64 __kmpc_atomic_float8_mul_cpt(
ident_t *id_ref,
int gtid,
1216 kmp_real64 *lhs, kmp_real64 rhs,
1219char __kmpc_atomic_fixed1_andl_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1220 char rhs,
int flag);
1221char __kmpc_atomic_fixed1_orl_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1222 char rhs,
int flag);
1223short __kmpc_atomic_fixed2_andl_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1224 short rhs,
int flag);
1225short __kmpc_atomic_fixed2_orl_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1226 short rhs,
int flag);
1227kmp_int32 __kmpc_atomic_fixed4_andl_cpt(
ident_t *id_ref,
int gtid,
1228 kmp_int32 *lhs, kmp_int32 rhs,
1230kmp_int32 __kmpc_atomic_fixed4_orl_cpt(
ident_t *id_ref,
int gtid,
1231 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1232kmp_int64 __kmpc_atomic_fixed8_andl_cpt(
ident_t *id_ref,
int gtid,
1233 kmp_int64 *lhs, kmp_int64 rhs,
1235kmp_int64 __kmpc_atomic_fixed8_orl_cpt(
ident_t *id_ref,
int gtid,
1236 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1238char __kmpc_atomic_fixed1_max_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1239 char rhs,
int flag);
1240char __kmpc_atomic_fixed1_min_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1241 char rhs,
int flag);
1242short __kmpc_atomic_fixed2_max_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1243 short rhs,
int flag);
1244short __kmpc_atomic_fixed2_min_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1245 short rhs,
int flag);
1246kmp_int32 __kmpc_atomic_fixed4_max_cpt(
ident_t *id_ref,
int gtid,
1247 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1248kmp_int32 __kmpc_atomic_fixed4_min_cpt(
ident_t *id_ref,
int gtid,
1249 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1250kmp_int64 __kmpc_atomic_fixed8_max_cpt(
ident_t *id_ref,
int gtid,
1251 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1252kmp_int64 __kmpc_atomic_fixed8_min_cpt(
ident_t *id_ref,
int gtid,
1253 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1254kmp_real32 __kmpc_atomic_float4_max_cpt(
ident_t *id_ref,
int gtid,
1255 kmp_real32 *lhs, kmp_real32 rhs,
1257kmp_real32 __kmpc_atomic_float4_min_cpt(
ident_t *id_ref,
int gtid,
1258 kmp_real32 *lhs, kmp_real32 rhs,
1260kmp_real64 __kmpc_atomic_float8_max_cpt(
ident_t *id_ref,
int gtid,
1261 kmp_real64 *lhs, kmp_real64 rhs,
1263kmp_real64 __kmpc_atomic_float8_min_cpt(
ident_t *id_ref,
int gtid,
1264 kmp_real64 *lhs, kmp_real64 rhs,
1266long double __kmpc_atomic_float10_max_cpt(
ident_t *id_ref,
int gtid,
1267 long double *lhs,
long double rhs,
1269long double __kmpc_atomic_float10_min_cpt(
ident_t *id_ref,
int gtid,
1270 long double *lhs,
long double rhs,
1273QUAD_LEGACY __kmpc_atomic_float16_max_cpt(
ident_t *id_ref,
int gtid,
1274 QUAD_LEGACY *lhs, QUAD_LEGACY rhs,
1276QUAD_LEGACY __kmpc_atomic_float16_min_cpt(
ident_t *id_ref,
int gtid,
1277 QUAD_LEGACY *lhs, QUAD_LEGACY rhs,
1281char __kmpc_atomic_fixed1_neqv_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1282 char rhs,
int flag);
1283short __kmpc_atomic_fixed2_neqv_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1284 short rhs,
int flag);
1285kmp_int32 __kmpc_atomic_fixed4_neqv_cpt(
ident_t *id_ref,
int gtid,
1286 kmp_int32 *lhs, kmp_int32 rhs,
1288kmp_int64 __kmpc_atomic_fixed8_neqv_cpt(
ident_t *id_ref,
int gtid,
1289 kmp_int64 *lhs, kmp_int64 rhs,
1292char __kmpc_atomic_fixed1_eqv_cpt(
ident_t *id_ref,
int gtid,
char *lhs,
1293 char rhs,
int flag);
1294short __kmpc_atomic_fixed2_eqv_cpt(
ident_t *id_ref,
int gtid,
short *lhs,
1295 short rhs,
int flag);
1296kmp_int32 __kmpc_atomic_fixed4_eqv_cpt(
ident_t *id_ref,
int gtid,
1297 kmp_int32 *lhs, kmp_int32 rhs,
int flag);
1298kmp_int64 __kmpc_atomic_fixed8_eqv_cpt(
ident_t *id_ref,
int gtid,
1299 kmp_int64 *lhs, kmp_int64 rhs,
int flag);
1301long double __kmpc_atomic_float10_add_cpt(
ident_t *id_ref,
int gtid,
1302 long double *lhs,
long double rhs,
1304long double __kmpc_atomic_float10_sub_cpt(
ident_t *id_ref,
int gtid,
1305 long double *lhs,
long double rhs,
1307long double __kmpc_atomic_float10_mul_cpt(
ident_t *id_ref,
int gtid,
1308 long double *lhs,
long double rhs,
1310long double __kmpc_atomic_float10_div_cpt(
ident_t *id_ref,
int gtid,
1311 long double *lhs,
long double rhs,
1315QUAD_LEGACY __kmpc_atomic_float16_add_cpt(
ident_t *id_ref,
int gtid,
1316 QUAD_LEGACY *lhs, QUAD_LEGACY rhs,
1318QUAD_LEGACY __kmpc_atomic_float16_sub_cpt(
ident_t *id_ref,
int gtid,
1319 QUAD_LEGACY *lhs, QUAD_LEGACY rhs,
1321QUAD_LEGACY __kmpc_atomic_float16_mul_cpt(
ident_t *id_ref,
int gtid,
1322 QUAD_LEGACY *lhs, QUAD_LEGACY rhs,
1324QUAD_LEGACY __kmpc_atomic_float16_div_cpt(
ident_t *id_ref,
int gtid,
1325 QUAD_LEGACY *lhs, QUAD_LEGACY rhs,
1331void __kmpc_atomic_cmplx4_add_cpt(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
1332 kmp_cmplx32 rhs, kmp_cmplx32 *out,
int flag);
1333void __kmpc_atomic_cmplx4_sub_cpt(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
1334 kmp_cmplx32 rhs, kmp_cmplx32 *out,
int flag);
1335void __kmpc_atomic_cmplx4_mul_cpt(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
1336 kmp_cmplx32 rhs, kmp_cmplx32 *out,
int flag);
1337void __kmpc_atomic_cmplx4_div_cpt(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
1338 kmp_cmplx32 rhs, kmp_cmplx32 *out,
int flag);
1339kmp_cmplx64 __kmpc_atomic_cmplx8_add_cpt(
ident_t *id_ref,
int gtid,
1340 kmp_cmplx64 *lhs, kmp_cmplx64 rhs,
1342kmp_cmplx64 __kmpc_atomic_cmplx8_sub_cpt(
ident_t *id_ref,
int gtid,
1343 kmp_cmplx64 *lhs, kmp_cmplx64 rhs,
1345kmp_cmplx64 __kmpc_atomic_cmplx8_mul_cpt(
ident_t *id_ref,
int gtid,
1346 kmp_cmplx64 *lhs, kmp_cmplx64 rhs,
1348kmp_cmplx64 __kmpc_atomic_cmplx8_div_cpt(
ident_t *id_ref,
int gtid,
1349 kmp_cmplx64 *lhs, kmp_cmplx64 rhs,
1351kmp_cmplx80 __kmpc_atomic_cmplx10_add_cpt(
ident_t *id_ref,
int gtid,
1352 kmp_cmplx80 *lhs, kmp_cmplx80 rhs,
1354kmp_cmplx80 __kmpc_atomic_cmplx10_sub_cpt(
ident_t *id_ref,
int gtid,
1355 kmp_cmplx80 *lhs, kmp_cmplx80 rhs,
1357kmp_cmplx80 __kmpc_atomic_cmplx10_mul_cpt(
ident_t *id_ref,
int gtid,
1358 kmp_cmplx80 *lhs, kmp_cmplx80 rhs,
1360kmp_cmplx80 __kmpc_atomic_cmplx10_div_cpt(
ident_t *id_ref,
int gtid,
1361 kmp_cmplx80 *lhs, kmp_cmplx80 rhs,
1364CPLX128_LEG __kmpc_atomic_cmplx16_add_cpt(
ident_t *id_ref,
int gtid,
1365 CPLX128_LEG *lhs, CPLX128_LEG rhs,
1367CPLX128_LEG __kmpc_atomic_cmplx16_sub_cpt(
ident_t *id_ref,
int gtid,
1368 CPLX128_LEG *lhs, CPLX128_LEG rhs,
1370CPLX128_LEG __kmpc_atomic_cmplx16_mul_cpt(
ident_t *id_ref,
int gtid,
1371 CPLX128_LEG *lhs, CPLX128_LEG rhs,
1373CPLX128_LEG __kmpc_atomic_cmplx16_div_cpt(
ident_t *id_ref,
int gtid,
1374 CPLX128_LEG *lhs, CPLX128_LEG rhs,
1378Quad_a16_t __kmpc_atomic_float16_add_a16_cpt(
ident_t *id_ref,
int gtid,
1379 Quad_a16_t *lhs, Quad_a16_t rhs,
1381Quad_a16_t __kmpc_atomic_float16_sub_a16_cpt(
ident_t *id_ref,
int gtid,
1382 Quad_a16_t *lhs, Quad_a16_t rhs,
1384Quad_a16_t __kmpc_atomic_float16_mul_a16_cpt(
ident_t *id_ref,
int gtid,
1385 Quad_a16_t *lhs, Quad_a16_t rhs,
1387Quad_a16_t __kmpc_atomic_float16_div_a16_cpt(
ident_t *id_ref,
int gtid,
1388 Quad_a16_t *lhs, Quad_a16_t rhs,
1390Quad_a16_t __kmpc_atomic_float16_max_a16_cpt(
ident_t *id_ref,
int gtid,
1391 Quad_a16_t *lhs, Quad_a16_t rhs,
1393Quad_a16_t __kmpc_atomic_float16_min_a16_cpt(
ident_t *id_ref,
int gtid,
1394 Quad_a16_t *lhs, Quad_a16_t rhs,
1396kmp_cmplx128_a16_t __kmpc_atomic_cmplx16_add_a16_cpt(
ident_t *id_ref,
int gtid,
1397 kmp_cmplx128_a16_t *lhs,
1398 kmp_cmplx128_a16_t rhs,
1400kmp_cmplx128_a16_t __kmpc_atomic_cmplx16_sub_a16_cpt(
ident_t *id_ref,
int gtid,
1401 kmp_cmplx128_a16_t *lhs,
1402 kmp_cmplx128_a16_t rhs,
1404kmp_cmplx128_a16_t __kmpc_atomic_cmplx16_mul_a16_cpt(
ident_t *id_ref,
int gtid,
1405 kmp_cmplx128_a16_t *lhs,
1406 kmp_cmplx128_a16_t rhs,
1408kmp_cmplx128_a16_t __kmpc_atomic_cmplx16_div_a16_cpt(
ident_t *id_ref,
int gtid,
1409 kmp_cmplx128_a16_t *lhs,
1410 kmp_cmplx128_a16_t rhs,
1415void __kmpc_atomic_start(
void);
1416void __kmpc_atomic_end(
void);
1420#if KMP_ARCH_X86 || KMP_ARCH_X86_64
1421char __kmpc_atomic_fixed1_sub_cpt_rev(
ident_t *id_ref,
int gtid,
char *lhs,
1422 char rhs,
int flag);
1423char __kmpc_atomic_fixed1_div_cpt_rev(
ident_t *id_ref,
int gtid,
char *lhs,
1424 char rhs,
int flag);
1425unsigned char __kmpc_atomic_fixed1u_div_cpt_rev(
ident_t *id_ref,
int gtid,
1427 unsigned char rhs,
int flag);
1428char __kmpc_atomic_fixed1_shl_cpt_rev(
ident_t *id_ref,
int gtid,
char *lhs,
1429 char rhs,
int flag);
1430char __kmpc_atomic_fixed1_shr_cpt_rev(
ident_t *id_ref,
int gtid,
char *lhs,
1431 char rhs,
int flag);
1432unsigned char __kmpc_atomic_fixed1u_shr_cpt_rev(
ident_t *id_ref,
int gtid,
1434 unsigned char rhs,
int flag);
1435short __kmpc_atomic_fixed2_sub_cpt_rev(
ident_t *id_ref,
int gtid,
short *lhs,
1436 short rhs,
int flag);
1437short __kmpc_atomic_fixed2_div_cpt_rev(
ident_t *id_ref,
int gtid,
short *lhs,
1438 short rhs,
int flag);
1439unsigned short __kmpc_atomic_fixed2u_div_cpt_rev(
ident_t *id_ref,
int gtid,
1440 unsigned short *lhs,
1441 unsigned short rhs,
int flag);
1442short __kmpc_atomic_fixed2_shl_cpt_rev(
ident_t *id_ref,
int gtid,
short *lhs,
1443 short rhs,
int flag);
1444short __kmpc_atomic_fixed2_shr_cpt_rev(
ident_t *id_ref,
int gtid,
short *lhs,
1445 short rhs,
int flag);
1446unsigned short __kmpc_atomic_fixed2u_shr_cpt_rev(
ident_t *id_ref,
int gtid,
1447 unsigned short *lhs,
1448 unsigned short rhs,
int flag);
1449kmp_int32 __kmpc_atomic_fixed4_sub_cpt_rev(
ident_t *id_ref,
int gtid,
1450 kmp_int32 *lhs, kmp_int32 rhs,
1452kmp_int32 __kmpc_atomic_fixed4_div_cpt_rev(
ident_t *id_ref,
int gtid,
1453 kmp_int32 *lhs, kmp_int32 rhs,
1455kmp_uint32 __kmpc_atomic_fixed4u_div_cpt_rev(
ident_t *id_ref,
int gtid,
1456 kmp_uint32 *lhs, kmp_uint32 rhs,
1458kmp_int32 __kmpc_atomic_fixed4_shl_cpt_rev(
ident_t *id_ref,
int gtid,
1459 kmp_int32 *lhs, kmp_int32 rhs,
1461kmp_int32 __kmpc_atomic_fixed4_shr_cpt_rev(
ident_t *id_ref,
int gtid,
1462 kmp_int32 *lhs, kmp_int32 rhs,
1464kmp_uint32 __kmpc_atomic_fixed4u_shr_cpt_rev(
ident_t *id_ref,
int gtid,
1465 kmp_uint32 *lhs, kmp_uint32 rhs,
1467kmp_int64 __kmpc_atomic_fixed8_sub_cpt_rev(
ident_t *id_ref,
int gtid,
1468 kmp_int64 *lhs, kmp_int64 rhs,
1470kmp_int64 __kmpc_atomic_fixed8_div_cpt_rev(
ident_t *id_ref,
int gtid,
1471 kmp_int64 *lhs, kmp_int64 rhs,
1473kmp_uint64 __kmpc_atomic_fixed8u_div_cpt_rev(
ident_t *id_ref,
int gtid,
1474 kmp_uint64 *lhs, kmp_uint64 rhs,
1476kmp_int64 __kmpc_atomic_fixed8_shl_cpt_rev(
ident_t *id_ref,
int gtid,
1477 kmp_int64 *lhs, kmp_int64 rhs,
1479kmp_int64 __kmpc_atomic_fixed8_shr_cpt_rev(
ident_t *id_ref,
int gtid,
1480 kmp_int64 *lhs, kmp_int64 rhs,
1482kmp_uint64 __kmpc_atomic_fixed8u_shr_cpt_rev(
ident_t *id_ref,
int gtid,
1483 kmp_uint64 *lhs, kmp_uint64 rhs,
1485float __kmpc_atomic_float4_sub_cpt_rev(
ident_t *id_ref,
int gtid,
float *lhs,
1486 float rhs,
int flag);
1487float __kmpc_atomic_float4_div_cpt_rev(
ident_t *id_ref,
int gtid,
float *lhs,
1488 float rhs,
int flag);
1489double __kmpc_atomic_float8_sub_cpt_rev(
ident_t *id_ref,
int gtid,
double *lhs,
1490 double rhs,
int flag);
1491double __kmpc_atomic_float8_div_cpt_rev(
ident_t *id_ref,
int gtid,
double *lhs,
1492 double rhs,
int flag);
1493long double __kmpc_atomic_float10_sub_cpt_rev(
ident_t *id_ref,
int gtid,
1494 long double *lhs,
long double rhs,
1496long double __kmpc_atomic_float10_div_cpt_rev(
ident_t *id_ref,
int gtid,
1497 long double *lhs,
long double rhs,
1500QUAD_LEGACY __kmpc_atomic_float16_sub_cpt_rev(
ident_t *id_ref,
int gtid,
1501 QUAD_LEGACY *lhs, QUAD_LEGACY rhs,
1503QUAD_LEGACY __kmpc_atomic_float16_div_cpt_rev(
ident_t *id_ref,
int gtid,
1504 QUAD_LEGACY *lhs, QUAD_LEGACY rhs,
1509void __kmpc_atomic_cmplx4_sub_cpt_rev(
ident_t *id_ref,
int gtid,
1510 kmp_cmplx32 *lhs, kmp_cmplx32 rhs,
1511 kmp_cmplx32 *out,
int flag);
1512void __kmpc_atomic_cmplx4_div_cpt_rev(
ident_t *id_ref,
int gtid,
1513 kmp_cmplx32 *lhs, kmp_cmplx32 rhs,
1514 kmp_cmplx32 *out,
int flag);
1515kmp_cmplx64 __kmpc_atomic_cmplx8_sub_cpt_rev(
ident_t *id_ref,
int gtid,
1516 kmp_cmplx64 *lhs, kmp_cmplx64 rhs,
1518kmp_cmplx64 __kmpc_atomic_cmplx8_div_cpt_rev(
ident_t *id_ref,
int gtid,
1519 kmp_cmplx64 *lhs, kmp_cmplx64 rhs,
1521kmp_cmplx80 __kmpc_atomic_cmplx10_sub_cpt_rev(
ident_t *id_ref,
int gtid,
1522 kmp_cmplx80 *lhs, kmp_cmplx80 rhs,
1524kmp_cmplx80 __kmpc_atomic_cmplx10_div_cpt_rev(
ident_t *id_ref,
int gtid,
1525 kmp_cmplx80 *lhs, kmp_cmplx80 rhs,
1528CPLX128_LEG __kmpc_atomic_cmplx16_sub_cpt_rev(
ident_t *id_ref,
int gtid,
1529 CPLX128_LEG *lhs, CPLX128_LEG rhs,
1531CPLX128_LEG __kmpc_atomic_cmplx16_div_cpt_rev(
ident_t *id_ref,
int gtid,
1532 CPLX128_LEG *lhs, CPLX128_LEG rhs,
1535Quad_a16_t __kmpc_atomic_float16_sub_a16_cpt_rev(
ident_t *id_ref,
int gtid,
1537 Quad_a16_t rhs,
int flag);
1538Quad_a16_t __kmpc_atomic_float16_div_a16_cpt_rev(
ident_t *id_ref,
int gtid,
1540 Quad_a16_t rhs,
int flag);
1542__kmpc_atomic_cmplx16_sub_a16_cpt_rev(
ident_t *id_ref,
int gtid,
1543 kmp_cmplx128_a16_t *lhs,
1544 kmp_cmplx128_a16_t rhs,
int flag);
1546__kmpc_atomic_cmplx16_div_a16_cpt_rev(
ident_t *id_ref,
int gtid,
1547 kmp_cmplx128_a16_t *lhs,
1548 kmp_cmplx128_a16_t rhs,
int flag);
1553char __kmpc_atomic_fixed1_swp(
ident_t *id_ref,
int gtid,
char *lhs,
char rhs);
1554short __kmpc_atomic_fixed2_swp(
ident_t *id_ref,
int gtid,
short *lhs,
1556kmp_int32 __kmpc_atomic_fixed4_swp(
ident_t *id_ref,
int gtid, kmp_int32 *lhs,
1558kmp_int64 __kmpc_atomic_fixed8_swp(
ident_t *id_ref,
int gtid, kmp_int64 *lhs,
1560float __kmpc_atomic_float4_swp(
ident_t *id_ref,
int gtid,
float *lhs,
1562double __kmpc_atomic_float8_swp(
ident_t *id_ref,
int gtid,
double *lhs,
1564long double __kmpc_atomic_float10_swp(
ident_t *id_ref,
int gtid,
1565 long double *lhs,
long double rhs);
1567QUAD_LEGACY __kmpc_atomic_float16_swp(
ident_t *id_ref,
int gtid,
1568 QUAD_LEGACY *lhs, QUAD_LEGACY rhs);
1571void __kmpc_atomic_cmplx4_swp(
ident_t *id_ref,
int gtid, kmp_cmplx32 *lhs,
1572 kmp_cmplx32 rhs, kmp_cmplx32 *out);
1576kmp_cmplx64 __kmpc_atomic_cmplx8_swp(
ident_t *id_ref,
int gtid,
1577 kmp_cmplx64 *lhs, kmp_cmplx64 rhs);
1578kmp_cmplx80 __kmpc_atomic_cmplx10_swp(
ident_t *id_ref,
int gtid,
1579 kmp_cmplx80 *lhs, kmp_cmplx80 rhs);
1581CPLX128_LEG __kmpc_atomic_cmplx16_swp(
ident_t *id_ref,
int gtid,
1582 CPLX128_LEG *lhs, CPLX128_LEG rhs);
1584Quad_a16_t __kmpc_atomic_float16_a16_swp(
ident_t *id_ref,
int gtid,
1585 Quad_a16_t *lhs, Quad_a16_t rhs);
1586kmp_cmplx128_a16_t __kmpc_atomic_cmplx16_a16_swp(
ident_t *id_ref,
int gtid,
1587 kmp_cmplx128_a16_t *lhs,
1588 kmp_cmplx128_a16_t rhs);
1595char __kmpc_atomic_fixed1_add_cpt_fp(
ident_t *id_ref,
int gtid,
char *lhs,
1596 _Quad rhs,
int flag);
1597char __kmpc_atomic_fixed1_sub_cpt_fp(
ident_t *id_ref,
int gtid,
char *lhs,
1598 _Quad rhs,
int flag);
1599char __kmpc_atomic_fixed1_mul_cpt_fp(
ident_t *id_ref,
int gtid,
char *lhs,
1600 _Quad rhs,
int flag);
1601char __kmpc_atomic_fixed1_div_cpt_fp(
ident_t *id_ref,
int gtid,
char *lhs,
1602 _Quad rhs,
int flag);
1603unsigned char __kmpc_atomic_fixed1u_add_cpt_fp(
ident_t *id_ref,
int gtid,
1604 unsigned char *lhs, _Quad rhs,
1606unsigned char __kmpc_atomic_fixed1u_sub_cpt_fp(
ident_t *id_ref,
int gtid,
1607 unsigned char *lhs, _Quad rhs,
1609unsigned char __kmpc_atomic_fixed1u_mul_cpt_fp(
ident_t *id_ref,
int gtid,
1610 unsigned char *lhs, _Quad rhs,
1612unsigned char __kmpc_atomic_fixed1u_div_cpt_fp(
ident_t *id_ref,
int gtid,
1613 unsigned char *lhs, _Quad rhs,
1616short __kmpc_atomic_fixed2_add_cpt_fp(
ident_t *id_ref,
int gtid,
short *lhs,
1617 _Quad rhs,
int flag);
1618short __kmpc_atomic_fixed2_sub_cpt_fp(
ident_t *id_ref,
int gtid,
short *lhs,
1619 _Quad rhs,
int flag);
1620short __kmpc_atomic_fixed2_mul_cpt_fp(
ident_t *id_ref,
int gtid,
short *lhs,
1621 _Quad rhs,
int flag);
1622short __kmpc_atomic_fixed2_div_cpt_fp(
ident_t *id_ref,
int gtid,
short *lhs,
1623 _Quad rhs,
int flag);
1624unsigned short __kmpc_atomic_fixed2u_add_cpt_fp(
ident_t *id_ref,
int gtid,
1625 unsigned short *lhs, _Quad rhs,
1627unsigned short __kmpc_atomic_fixed2u_sub_cpt_fp(
ident_t *id_ref,
int gtid,
1628 unsigned short *lhs, _Quad rhs,
1630unsigned short __kmpc_atomic_fixed2u_mul_cpt_fp(
ident_t *id_ref,
int gtid,
1631 unsigned short *lhs, _Quad rhs,
1633unsigned short __kmpc_atomic_fixed2u_div_cpt_fp(
ident_t *id_ref,
int gtid,
1634 unsigned short *lhs, _Quad rhs,
1637kmp_int32 __kmpc_atomic_fixed4_add_cpt_fp(
ident_t *id_ref,
int gtid,
1638 kmp_int32 *lhs, _Quad rhs,
int flag);
1639kmp_int32 __kmpc_atomic_fixed4_sub_cpt_fp(
ident_t *id_ref,
int gtid,
1640 kmp_int32 *lhs, _Quad rhs,
int flag);
1641kmp_int32 __kmpc_atomic_fixed4_mul_cpt_fp(
ident_t *id_ref,
int gtid,
1642 kmp_int32 *lhs, _Quad rhs,
int flag);
1643kmp_int32 __kmpc_atomic_fixed4_div_cpt_fp(
ident_t *id_ref,
int gtid,
1644 kmp_int32 *lhs, _Quad rhs,
int flag);
1645kmp_uint32 __kmpc_atomic_fixed4u_add_cpt_fp(
ident_t *id_ref,
int gtid,
1646 kmp_uint32 *lhs, _Quad rhs,
1648kmp_uint32 __kmpc_atomic_fixed4u_sub_cpt_fp(
ident_t *id_ref,
int gtid,
1649 kmp_uint32 *lhs, _Quad rhs,
1651kmp_uint32 __kmpc_atomic_fixed4u_mul_cpt_fp(
ident_t *id_ref,
int gtid,
1652 kmp_uint32 *lhs, _Quad rhs,
1654kmp_uint32 __kmpc_atomic_fixed4u_div_cpt_fp(
ident_t *id_ref,
int gtid,
1655 kmp_uint32 *lhs, _Quad rhs,
1658kmp_int64 __kmpc_atomic_fixed8_add_cpt_fp(
ident_t *id_ref,
int gtid,
1659 kmp_int64 *lhs, _Quad rhs,
int flag);
1660kmp_int64 __kmpc_atomic_fixed8_sub_cpt_fp(
ident_t *id_ref,
int gtid,
1661 kmp_int64 *lhs, _Quad rhs,
int flag);
1662kmp_int64 __kmpc_atomic_fixed8_mul_cpt_fp(
ident_t *id_ref,
int gtid,
1663 kmp_int64 *lhs, _Quad rhs,
int flag);
1664kmp_int64 __kmpc_atomic_fixed8_div_cpt_fp(
ident_t *id_ref,
int gtid,
1665 kmp_int64 *lhs, _Quad rhs,
int flag);
1666kmp_uint64 __kmpc_atomic_fixed8u_add_cpt_fp(
ident_t *id_ref,
int gtid,
1667 kmp_uint64 *lhs, _Quad rhs,
1669kmp_uint64 __kmpc_atomic_fixed8u_sub_cpt_fp(
ident_t *id_ref,
int gtid,
1670 kmp_uint64 *lhs, _Quad rhs,
1672kmp_uint64 __kmpc_atomic_fixed8u_mul_cpt_fp(
ident_t *id_ref,
int gtid,
1673 kmp_uint64 *lhs, _Quad rhs,
1675kmp_uint64 __kmpc_atomic_fixed8u_div_cpt_fp(
ident_t *id_ref,
int gtid,
1676 kmp_uint64 *lhs, _Quad rhs,
1679float __kmpc_atomic_float4_add_cpt_fp(
ident_t *id_ref,
int gtid,
1680 kmp_real32 *lhs, _Quad rhs,
int flag);
1681float __kmpc_atomic_float4_sub_cpt_fp(
ident_t *id_ref,
int gtid,
1682 kmp_real32 *lhs, _Quad rhs,
int flag);
1683float __kmpc_atomic_float4_mul_cpt_fp(
ident_t *id_ref,
int gtid,
1684 kmp_real32 *lhs, _Quad rhs,
int flag);
1685float __kmpc_atomic_float4_div_cpt_fp(
ident_t *id_ref,
int gtid,
1686 kmp_real32 *lhs, _Quad rhs,
int flag);
1688double __kmpc_atomic_float8_add_cpt_fp(
ident_t *id_ref,
int gtid,
1689 kmp_real64 *lhs, _Quad rhs,
int flag);
1690double __kmpc_atomic_float8_sub_cpt_fp(
ident_t *id_ref,
int gtid,
1691 kmp_real64 *lhs, _Quad rhs,
int flag);
1692double __kmpc_atomic_float8_mul_cpt_fp(
ident_t *id_ref,
int gtid,
1693 kmp_real64 *lhs, _Quad rhs,
int flag);
1694double __kmpc_atomic_float8_div_cpt_fp(
ident_t *id_ref,
int gtid,
1695 kmp_real64 *lhs, _Quad rhs,
int flag);
1697long double __kmpc_atomic_float10_add_cpt_fp(
ident_t *id_ref,
int gtid,
1698 long double *lhs, _Quad rhs,
1700long double __kmpc_atomic_float10_sub_cpt_fp(
ident_t *id_ref,
int gtid,
1701 long double *lhs, _Quad rhs,
1703long double __kmpc_atomic_float10_mul_cpt_fp(
ident_t *id_ref,
int gtid,
1704 long double *lhs, _Quad rhs,
1706long double __kmpc_atomic_float10_div_cpt_fp(
ident_t *id_ref,
int gtid,
1707 long double *lhs, _Quad rhs,
1710char __kmpc_atomic_fixed1_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
char *lhs,
1711 _Quad rhs,
int flag);
1712unsigned char __kmpc_atomic_fixed1u_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1714 _Quad rhs,
int flag);
1715char __kmpc_atomic_fixed1_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
char *lhs,
1716 _Quad rhs,
int flag);
1717unsigned char __kmpc_atomic_fixed1u_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1719 _Quad rhs,
int flag);
1720short __kmpc_atomic_fixed2_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
short *lhs,
1721 _Quad rhs,
int flag);
1722unsigned short __kmpc_atomic_fixed2u_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1723 unsigned short *lhs,
1724 _Quad rhs,
int flag);
1725short __kmpc_atomic_fixed2_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
short *lhs,
1726 _Quad rhs,
int flag);
1727unsigned short __kmpc_atomic_fixed2u_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1728 unsigned short *lhs,
1729 _Quad rhs,
int flag);
1730kmp_int32 __kmpc_atomic_fixed4_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1731 kmp_int32 *lhs, _Quad rhs,
1733kmp_uint32 __kmpc_atomic_fixed4u_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1734 kmp_uint32 *lhs, _Quad rhs,
1736kmp_int32 __kmpc_atomic_fixed4_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1737 kmp_int32 *lhs, _Quad rhs,
1739kmp_uint32 __kmpc_atomic_fixed4u_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1740 kmp_uint32 *lhs, _Quad rhs,
1742kmp_int64 __kmpc_atomic_fixed8_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1743 kmp_int64 *lhs, _Quad rhs,
1745kmp_uint64 __kmpc_atomic_fixed8u_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1746 kmp_uint64 *lhs, _Quad rhs,
1748kmp_int64 __kmpc_atomic_fixed8_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1749 kmp_int64 *lhs, _Quad rhs,
1751kmp_uint64 __kmpc_atomic_fixed8u_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1752 kmp_uint64 *lhs, _Quad rhs,
1754float __kmpc_atomic_float4_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
float *lhs,
1755 _Quad rhs,
int flag);
1756float __kmpc_atomic_float4_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
float *lhs,
1757 _Quad rhs,
int flag);
1758double __kmpc_atomic_float8_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1759 double *lhs, _Quad rhs,
int flag);
1760double __kmpc_atomic_float8_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1761 double *lhs, _Quad rhs,
int flag);
1762long double __kmpc_atomic_float10_sub_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1763 long double *lhs, _Quad rhs,
1765long double __kmpc_atomic_float10_div_cpt_rev_fp(
ident_t *id_ref,
int gtid,
1766 long double *lhs, _Quad rhs,
1801bool __kmpc_atomic_bool_1_cas(
ident_t *loc,
int gtid,
char *x,
char e,
char d);
1802bool __kmpc_atomic_bool_2_cas(
ident_t *loc,
int gtid,
short *x,
short e,
1804bool __kmpc_atomic_bool_4_cas(
ident_t *loc,
int gtid, kmp_int32 *x, kmp_int32 e,
1806bool __kmpc_atomic_bool_8_cas(
ident_t *loc,
int gtid, kmp_int64 *x, kmp_int64 e,
1811char __kmpc_atomic_val_1_cas(
ident_t *loc,
int gtid,
char *x,
char e,
char d);
1812short __kmpc_atomic_val_2_cas(
ident_t *loc,
int gtid,
short *x,
short e,
1814kmp_int32 __kmpc_atomic_val_4_cas(
ident_t *loc,
int gtid, kmp_int32 *x,
1815 kmp_int32 e, kmp_int32 d);
1816kmp_int64 __kmpc_atomic_val_8_cas(
ident_t *loc,
int gtid, kmp_int64 *x,
1817 kmp_int64 e, kmp_int64 d);
1822bool __kmpc_atomic_bool_1_cas_cpt(
ident_t *loc,
int gtid,
char *x,
char e,
1824bool __kmpc_atomic_bool_2_cas_cpt(
ident_t *loc,
int gtid,
short *x,
short e,
1825 short d,
short *pv);
1826bool __kmpc_atomic_bool_4_cas_cpt(
ident_t *loc,
int gtid, kmp_int32 *x,
1827 kmp_int32 e, kmp_int32 d, kmp_int32 *pv);
1828bool __kmpc_atomic_bool_8_cas_cpt(
ident_t *loc,
int gtid, kmp_int64 *x,
1829 kmp_int64 e, kmp_int64 d, kmp_int64 *pv);
1834char __kmpc_atomic_val_1_cas_cpt(
ident_t *loc,
int gtid,
char *x,
char e,
1836short __kmpc_atomic_val_2_cas_cpt(
ident_t *loc,
int gtid,
short *x,
short e,
1837 short d,
short *pv);
1838kmp_int32 __kmpc_atomic_val_4_cas_cpt(
ident_t *loc,
int gtid, kmp_int32 *x,
1839 kmp_int32 e, kmp_int32 d, kmp_int32 *pv);
1840kmp_int64 __kmpc_atomic_val_8_cas_cpt(
ident_t *loc,
int gtid, kmp_int64 *x,
1841 kmp_int64 e, kmp_int64 d, kmp_int64 *pv);