More detailed compile-time testing before attempting to use atomic load

intrinsics.  See
[forum:/forumpost/fc0237a39b30ac0a|forum post fc0237a39b30ac0a].

FossilOrigin-Name: 5204c2c4a7b73a64764b0d2d1d7c53709bb64e0d2685a829c7bf31af13bab5e7
This commit is contained in:
drh
2021-01-09 18:24:33 +00:00
parent 1242c0ccf4
commit 4ee492f176
3 changed files with 9 additions and 8 deletions
+2 -1
View File
@@ -214,7 +214,8 @@
#ifndef __has_extension
# define __has_extension(x) 0 /* compatibility with non-clang compilers */
#endif
#if GCC_VERSION>=4007000 || __has_extension(c_atomic)
#if GCC_VERSION>=4007000 || \
(__has_extension(c_atomic) && __has_extension(c_atomic_store_n))
# define AtomicLoad(PTR) __atomic_load_n((PTR),__ATOMIC_RELAXED)
# define AtomicStore(PTR,VAL) __atomic_store_n((PTR),(VAL),__ATOMIC_RELAXED)
#else