X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=readme.md;h=57a211a151edd30d5cb78d464f6530f92d88f6f2;hb=ec943d1ee65b0e36406be135f1c3e58be65671b7;hp=565ce1126a54b312e4edda9d8a76dfc3ec83e9a9;hpb=ea8b041c857573309ca59437fd6a4c446a79edf7;p=libcds.git diff --git a/readme.md b/readme.md index 565ce112..57a211a1 100644 --- a/readme.md +++ b/readme.md @@ -46,6 +46,16 @@ Evolution of libcds (Gource visualization by Landon Wilkins): https://www.youtub - *nix: [use CMake](build/cmake/readme.md) - Windows: use MS Visual C++ 2015 project +Some parts of libcds may depend on DCAS (double-width compare-and-swap) atomic primitive if +the target architecture supports it. For x86, cmake build script enables `-mcx16` compiler flag that +switches DCAS support on. You may manually disable DCAS support with the following command line flags +in GCC/clang (for MS VC++ compiler DCAS is not supported): + - `-DCDS_DISABLE_128BIT_ATOMIC` - for 64bit build + - `-DCDS_DISABLE_64BIT_ATOMIC` - for 32bit build + +**All your projects AND libcds MUST be compiled with the same flags - either with DCAS support or without it.** + + **Pull request requirements** - Pull-request to *master* branch will be unconditionally rejected - *integration* branch is intended for pull-request. Usually, *integration* branch is the same as *master*