diff options
-rw-r--r-- | include/my_atomic.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/include/my_atomic.h b/include/my_atomic.h index 23c3dc749ab..751afcb77db 100644 --- a/include/my_atomic.h +++ b/include/my_atomic.h @@ -68,10 +68,12 @@ #include "atomic/nolock.h" #endif -#ifndef make_atomic_cas_body +#ifndef MY_ATOMIC_NOLOCK /* nolock.h was not able to generate even a CAS function, fall back */ #include "atomic/rwlock.h" -#else +#endif + +#ifndef MY_ATOMICS_MADE /* define missing functions by using the already generated ones */ #ifndef make_atomic_add_body #define make_atomic_add_body(S) \ @@ -94,7 +96,6 @@ #define make_atomic_store_body(S) \ (void)(my_atomic_fas ## S (a, v)); #endif -#endif /* transparent_union doesn't work in g++ @@ -286,6 +287,7 @@ make_atomic_store(ptr) #undef make_atomic_load_body #undef make_atomic_store_body #undef make_atomic_fas_body +#endif #undef intptr /* |