projects
/
libcds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gcc-4.8 does not supported std::atomic for 128-bit types
[libcds.git]
/
cds
/
compiler
/
gcc
/
defs.h
diff --git
a/cds/compiler/gcc/defs.h
b/cds/compiler/gcc/defs.h
index e2c3b7640def756af1430da78358e57145bc94fa..99d8589c17d33f9c54e24f43196527ccf5e54efa 100644
(file)
--- a/
cds/compiler/gcc/defs.h
+++ b/
cds/compiler/gcc/defs.h
@@
-104,7
+104,8
@@
// double-width CAS support
#if CDS_BUILD_BITS == 64
// double-width CAS support
#if CDS_BUILD_BITS == 64
-# ifdef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16
+ // gcc-4.8 does not support 16-word (128bit) atomics
+# if defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 ) && CDS_COMPILER_VERSION >= 40900
# define CDS_DCAS_SUPPORT
# endif
#else
# define CDS_DCAS_SUPPORT
# endif
#else