Removed -fno-strict-aliasing requirement
[libcds.git] / readme.md
index 565ce1126a54b312e4edda9d8a76dfc3ec83e9a9..fa9237cfc4bd42d490434dae09deed1e9d739c4f 100644 (file)
--- a/readme.md
+++ b/readme.md
@@ -2,11 +2,8 @@ CDS C++ library
 ===============\r
 [![GitHub version](https://badge.fury.io/gh/khizmax%2Flibcds.svg)](http://badge.fury.io/gh/khizmax%2Flibcds)\r
 [![License](https://img.shields.io/:license-bsd-blue.svg?style=round-square)](https://github.com/khizmax/libcds/blob/master/LICENSE)\r
-\r
-<!---\r
-The build time for lib and hdr-test is exceed the limit of 50 minutes\r
 [![Build Status](https://travis-ci.org/khizmax/libcds.svg?branch=dev)](https://travis-ci.org/khizmax/libcds)\r
--->\r
+\r
 <!---\r
 The coverity dataset is about 4G of size and about 1G in compressed state so it is a problem to upload it to the coverity server\r
 [![Coverity Scan Build Status](https://scan.coverity.com/projects/4445/badge.svg)](https://scan.coverity.com/projects/4445)\r
@@ -46,6 +43,16 @@ Evolution of libcds (Gource visualization by Landon Wilkins): https://www.youtub
    - *nix: [use CMake](build/cmake/readme.md)\r
    - Windows: use MS Visual C++ 2015 project\r
 \r
+Some parts of libcds may depend on DCAS (double-width compare-and-swap) atomic primitive if\r
+the target architecture supports it. For x86, cmake build script enables `-mcx16` compiler flag that\r
+switches DCAS support on. You may manually disable DCAS support with the following command line flags\r
+in GCC/clang (for MS VC++ compiler DCAS is not supported):\r
+  - `-DCDS_DISABLE_128BIT_ATOMIC` - for 64bit build\r
+  - `-DCDS_DISABLE_64BIT_ATOMIC` - for 32bit build\r
+\r
+**All your projects AND libcds MUST be compiled with the same flags - either with DCAS support or without it.**\r
+   \r
+   \r
 **Pull request requirements**\r
 - Pull-request to *master* branch will be unconditionally rejected\r
 - *integration* branch is intended for pull-request. Usually, *integration* branch is the same as *master*\r