diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 000000000..13566b81b
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Editor-based HTTP Client requests
+/httpRequests/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/.idea/.name b/.idea/.name
new file mode 100644
index 000000000..d8554624a
--- /dev/null
+++ b/.idea/.name
@@ -0,0 +1 @@
+cds
\ No newline at end of file
diff --git a/.idea/libcds.iml b/.idea/libcds.iml
new file mode 100644
index 000000000..f08604bb6
--- /dev/null
+++ b/.idea/libcds.iml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 000000000..79b3c9483
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 000000000..da41f8dc2
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 000000000..710aedb91
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/CMakeFiles/3.16.3/CMakeCCompiler.cmake b/CMakeFiles/3.16.3/CMakeCCompiler.cmake
new file mode 100644
index 000000000..c5ece7b85
--- /dev/null
+++ b/CMakeFiles/3.16.3/CMakeCCompiler.cmake
@@ -0,0 +1,76 @@
+set(CMAKE_C_COMPILER "/usr/bin/cc")
+set(CMAKE_C_COMPILER_ARG1 "")
+set(CMAKE_C_COMPILER_ID "GNU")
+set(CMAKE_C_COMPILER_VERSION "9.4.0")
+set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_C_COMPILER_WRAPPER "")
+set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "11")
+set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert")
+set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes")
+set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros")
+set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert")
+
+set(CMAKE_C_PLATFORM_ID "Linux")
+set(CMAKE_C_SIMULATE_ID "")
+set(CMAKE_C_COMPILER_FRONTEND_VARIANT "")
+set(CMAKE_C_SIMULATE_VERSION "")
+
+
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-9")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-9")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_MT "")
+set(CMAKE_COMPILER_IS_GNUCC 1)
+set(CMAKE_C_COMPILER_LOADED 1)
+set(CMAKE_C_COMPILER_WORKS TRUE)
+set(CMAKE_C_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+ set(CYGWIN 1)
+ set(UNIX 1)
+endif()
+
+set(CMAKE_C_COMPILER_ENV_VAR "CC")
+
+if(CMAKE_COMPILER_IS_MINGW)
+ set(MINGW 1)
+endif()
+set(CMAKE_C_COMPILER_ID_RUN 1)
+set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
+set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_C_LINKER_PREFERENCE 10)
+
+# Save compiler ABI information.
+set(CMAKE_C_SIZEOF_DATA_PTR "8")
+set(CMAKE_C_COMPILER_ABI "ELF")
+set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_C_SIZEOF_DATA_PTR)
+ set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_C_COMPILER_ABI)
+ set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
+endif()
+
+if(CMAKE_C_LIBRARY_ARCHITECTURE)
+ set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
+ set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/9/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include")
+set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s")
+set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/9;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake b/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake
new file mode 100644
index 000000000..278ef39ee
--- /dev/null
+++ b/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake
@@ -0,0 +1,88 @@
+set(CMAKE_CXX_COMPILER "/usr/bin/c++")
+set(CMAKE_CXX_COMPILER_ARG1 "")
+set(CMAKE_CXX_COMPILER_ID "GNU")
+set(CMAKE_CXX_COMPILER_VERSION "9.4.0")
+set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_CXX_COMPILER_WRAPPER "")
+set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14")
+set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20")
+set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
+set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
+set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
+set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20")
+
+set(CMAKE_CXX_PLATFORM_ID "Linux")
+set(CMAKE_CXX_SIMULATE_ID "")
+set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "")
+set(CMAKE_CXX_SIMULATE_VERSION "")
+
+
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-9")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-9")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_MT "")
+set(CMAKE_COMPILER_IS_GNUCXX 1)
+set(CMAKE_CXX_COMPILER_LOADED 1)
+set(CMAKE_CXX_COMPILER_WORKS TRUE)
+set(CMAKE_CXX_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+ set(CYGWIN 1)
+ set(UNIX 1)
+endif()
+
+set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
+
+if(CMAKE_COMPILER_IS_MINGW)
+ set(MINGW 1)
+endif()
+set(CMAKE_CXX_COMPILER_ID_RUN 1)
+set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;CPP)
+set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
+
+foreach (lang C OBJC OBJCXX)
+ if (CMAKE_${lang}_COMPILER_ID_RUN)
+ foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
+ list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
+ endforeach()
+ endif()
+endforeach()
+
+set(CMAKE_CXX_LINKER_PREFERENCE 30)
+set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
+
+# Save compiler ABI information.
+set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
+set(CMAKE_CXX_COMPILER_ABI "ELF")
+set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_CXX_SIZEOF_DATA_PTR)
+ set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_CXX_COMPILER_ABI)
+ set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
+endif()
+
+if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
+ set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
+ set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/9;/usr/include/x86_64-linux-gnu/c++/9;/usr/include/c++/9/backward;/usr/lib/gcc/x86_64-linux-gnu/9/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include")
+set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc")
+set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/9;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_C.bin b/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_C.bin
new file mode 100755
index 000000000..35de1468e
Binary files /dev/null and b/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_C.bin differ
diff --git a/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_CXX.bin b/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_CXX.bin
new file mode 100755
index 000000000..9cba7ec76
Binary files /dev/null and b/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_CXX.bin differ
diff --git a/CMakeFiles/3.16.3/CMakeSystem.cmake b/CMakeFiles/3.16.3/CMakeSystem.cmake
new file mode 100644
index 000000000..a5cefae66
--- /dev/null
+++ b/CMakeFiles/3.16.3/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Linux-5.13.0-40-generic")
+set(CMAKE_HOST_SYSTEM_NAME "Linux")
+set(CMAKE_HOST_SYSTEM_VERSION "5.13.0-40-generic")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
+
+
+
+set(CMAKE_SYSTEM "Linux-5.13.0-40-generic")
+set(CMAKE_SYSTEM_NAME "Linux")
+set(CMAKE_SYSTEM_VERSION "5.13.0-40-generic")
+set(CMAKE_SYSTEM_PROCESSOR "x86_64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/CMakeFiles/3.16.3/CompilerIdC/CMakeCCompilerId.c b/CMakeFiles/3.16.3/CompilerIdC/CMakeCCompilerId.c
new file mode 100644
index 000000000..d884b5090
--- /dev/null
+++ b/CMakeFiles/3.16.3/CompilerIdC/CMakeCCompilerId.c
@@ -0,0 +1,671 @@
+#ifdef __cplusplus
+# error "A C++ compiler has been selected for C."
+#endif
+
+#if defined(__18CXX)
+# define ID_VOID_MAIN
+#endif
+#if defined(__CLASSIC_C__)
+/* cv-qualifiers did not exist in K&R C */
+# define const
+# define volatile
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+ Version date components: YYYY=Year, MM=Month, DD=Day */
+
+#if defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+# endif
+ /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+ /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+# elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+ /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+ /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+ /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_C)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_C >= 0x5100
+ /* __SUNPRO_C = 0xVRRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
+# else
+ /* __SUNPRO_CC = 0xVRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
+# endif
+
+#elif defined(__HP_cc)
+# define COMPILER_ID "HP"
+ /* __HP_cc = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100)
+
+#elif defined(__DECC)
+# define COMPILER_ID "Compaq"
+ /* __DECC_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000)
+
+#elif defined(__IBMC__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+
+#elif defined(__ibmxl__) && defined(__clang__)
+# define COMPILER_ID "XLClang"
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
+# define COMPILER_ID "XL"
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
+# define COMPILER_ID "VisualAge"
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+ /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__ghs__)
+# define COMPILER_ID "GHS"
+/* __GHS_VERSION_NUMBER = VVVVRP */
+# ifdef __GHS_VERSION_NUMBER
+# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
+# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
+# endif
+
+#elif defined(__TINYC__)
+# define COMPILER_ID "TinyCC"
+
+#elif defined(__BCC__)
+# define COMPILER_ID "Bruce"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__ARMCC_VERSION) && !defined(__clang__)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+ /* __ARMCC_VERSION = VRRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#else
+ /* __ARMCC_VERSION = VRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#endif
+
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
+# define COMPILER_ID "ARMClang"
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000)
+# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+ /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+# if _MSC_VER >= 1400
+ /* _MSC_FULL_VER = VVRRPPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+# else
+ /* _MSC_FULL_VER = VVRRPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+# endif
+# endif
+# if defined(_MSC_BUILD)
+# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+ /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__) && defined(__ICCARM__)
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__))
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
+# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
+# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC)
+# define COMPILER_ID "SDCC"
+# if defined(__SDCC_VERSION_MAJOR)
+# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR)
+# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH)
+# else
+ /* SDCC = VRP */
+# define COMPILER_VERSION_MAJOR DEC(SDCC/100)
+# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(SDCC % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+ identification macro. Try to identify the platform and guess that
+ it is the native compiler. */
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name. */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+# define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+# define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+# define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+# define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+# define PLATFORM_ID
+# endif
+
+#elif defined(__INTEGRITY)
+# if defined(INT_178B)
+# define PLATFORM_ID "Integrity178"
+
+# else /* regular Integrity */
+# define PLATFORM_ID "Integrity"
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+ the architecture of the compiler being used. This is because
+ the compilers do not have flags that can change the architecture,
+ but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+# define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+# define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+# if _M_ARM == 4
+# define ARCHITECTURE_ID "ARMV4I"
+# elif _M_ARM == 5
+# define ARCHITECTURE_ID "ARMV5I"
+# else
+# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+# endif
+
+# elif defined(_M_MIPS)
+# define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+# define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+# define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCRX__)
+# define ARCHITECTURE_ID "RX"
+
+# elif defined(__ICCRH850__)
+# define ARCHITECTURE_ID "RH850"
+
+# elif defined(__ICCRL78__)
+# define ARCHITECTURE_ID "RL78"
+
+# elif defined(__ICCRISCV__)
+# define ARCHITECTURE_ID "RISCV"
+
+# elif defined(__ICCAVR__)
+# define ARCHITECTURE_ID "AVR"
+
+# elif defined(__ICC430__)
+# define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__ICCV850__)
+# define ARCHITECTURE_ID "V850"
+
+# elif defined(__ICC8051__)
+# define ARCHITECTURE_ID "8051"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__ghs__)
+# if defined(__PPC64__)
+# define ARCHITECTURE_ID "PPC64"
+
+# elif defined(__ppc__)
+# define ARCHITECTURE_ID "PPC"
+
+# elif defined(__ARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__x86_64__)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(__i386__)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+#else
+# define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals. */
+#define DEC(n) \
+ ('0' + (((n) / 10000000)%10)), \
+ ('0' + (((n) / 1000000)%10)), \
+ ('0' + (((n) / 100000)%10)), \
+ ('0' + (((n) / 10000)%10)), \
+ ('0' + (((n) / 1000)%10)), \
+ ('0' + (((n) / 100)%10)), \
+ ('0' + (((n) / 10)%10)), \
+ ('0' + ((n) % 10))
+
+/* Convert integer to hex digit literals. */
+#define HEX(n) \
+ ('0' + ((n)>>28 & 0xF)), \
+ ('0' + ((n)>>24 & 0xF)), \
+ ('0' + ((n)>>20 & 0xF)), \
+ ('0' + ((n)>>16 & 0xF)), \
+ ('0' + ((n)>>12 & 0xF)), \
+ ('0' + ((n)>>8 & 0xF)), \
+ ('0' + ((n)>>4 & 0xF)), \
+ ('0' + ((n) & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+ COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+ '.', COMPILER_VERSION_MINOR,
+# ifdef COMPILER_VERSION_PATCH
+ '.', COMPILER_VERSION_PATCH,
+# ifdef COMPILER_VERSION_TWEAK
+ '.', COMPILER_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+ 'i','n','t','e','r','n','a','l','[',
+ COMPILER_VERSION_INTERNAL,']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+ SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+ '.', SIMULATE_VERSION_MINOR,
+# ifdef SIMULATE_VERSION_PATCH
+ '.', SIMULATE_VERSION_PATCH,
+# ifdef SIMULATE_VERSION_TWEAK
+ '.', SIMULATE_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+#if !defined(__STDC__)
+# if (defined(_MSC_VER) && !defined(__clang__)) \
+ || (defined(__ibmxl__) || defined(__IBMC__))
+# define C_DIALECT "90"
+# else
+# define C_DIALECT
+# endif
+#elif __STDC_VERSION__ >= 201000L
+# define C_DIALECT "11"
+#elif __STDC_VERSION__ >= 199901L
+# define C_DIALECT "99"
+#else
+# define C_DIALECT "90"
+#endif
+const char* info_language_dialect_default =
+ "INFO" ":" "dialect_default[" C_DIALECT "]";
+
+/*--------------------------------------------------------------------------*/
+
+#ifdef ID_VOID_MAIN
+void main() {}
+#else
+# if defined(__CLASSIC_C__)
+int main(argc, argv) int argc; char *argv[];
+# else
+int main(int argc, char* argv[])
+# endif
+{
+ int require = 0;
+ require += info_compiler[argc];
+ require += info_platform[argc];
+ require += info_arch[argc];
+#ifdef COMPILER_VERSION_MAJOR
+ require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+ require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+ require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+ require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+ require += info_cray[argc];
+#endif
+ require += info_language_dialect_default[argc];
+ (void)argv;
+ return require;
+}
+#endif
diff --git a/CMakeFiles/3.16.3/CompilerIdC/a.out b/CMakeFiles/3.16.3/CompilerIdC/a.out
new file mode 100755
index 000000000..e82fab493
Binary files /dev/null and b/CMakeFiles/3.16.3/CompilerIdC/a.out differ
diff --git a/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp b/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp
new file mode 100644
index 000000000..69cfdba6b
--- /dev/null
+++ b/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp
@@ -0,0 +1,660 @@
+/* This source file must have a .cpp extension so that all C++ compilers
+ recognize the extension without flags. Borland does not know .cxx for
+ example. */
+#ifndef __cplusplus
+# error "A C compiler has been selected for C++."
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+ Version date components: YYYY=Year, MM=Month, DD=Day */
+
+#if defined(__COMO__)
+# define COMPILER_ID "Comeau"
+ /* __COMO_VERSION__ = VRR */
+# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
+
+#elif defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+# endif
+ /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+ /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+# elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+ /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+ /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+ /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_CC)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_CC >= 0x5100
+ /* __SUNPRO_CC = 0xVRRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
+# else
+ /* __SUNPRO_CC = 0xVRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
+# endif
+
+#elif defined(__HP_aCC)
+# define COMPILER_ID "HP"
+ /* __HP_aCC = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100)
+
+#elif defined(__DECCXX)
+# define COMPILER_ID "Compaq"
+ /* __DECCXX_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000)
+
+#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+
+#elif defined(__ibmxl__) && defined(__clang__)
+# define COMPILER_ID "XLClang"
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
+# define COMPILER_ID "XL"
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
+# define COMPILER_ID "VisualAge"
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+ /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__ghs__)
+# define COMPILER_ID "GHS"
+/* __GHS_VERSION_NUMBER = VVVVRP */
+# ifdef __GHS_VERSION_NUMBER
+# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
+# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
+# endif
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__ARMCC_VERSION) && !defined(__clang__)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+ /* __ARMCC_VERSION = VRRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#else
+ /* __ARMCC_VERSION = VRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#endif
+
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
+# define COMPILER_ID "ARMClang"
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000)
+# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__) || defined(__GNUG__)
+# define COMPILER_ID "GNU"
+# if defined(__GNUC__)
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# else
+# define COMPILER_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+ /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+# if _MSC_VER >= 1400
+ /* _MSC_FULL_VER = VVRRPPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+# else
+ /* _MSC_FULL_VER = VVRRPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+# endif
+# endif
+# if defined(_MSC_BUILD)
+# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+ /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__) && defined(__ICCARM__)
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__))
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
+# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
+# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+ identification macro. Try to identify the platform and guess that
+ it is the native compiler. */
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name. */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+# define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+# define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+# define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+# define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+# define PLATFORM_ID
+# endif
+
+#elif defined(__INTEGRITY)
+# if defined(INT_178B)
+# define PLATFORM_ID "Integrity178"
+
+# else /* regular Integrity */
+# define PLATFORM_ID "Integrity"
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+ the architecture of the compiler being used. This is because
+ the compilers do not have flags that can change the architecture,
+ but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+# define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+# define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+# if _M_ARM == 4
+# define ARCHITECTURE_ID "ARMV4I"
+# elif _M_ARM == 5
+# define ARCHITECTURE_ID "ARMV5I"
+# else
+# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+# endif
+
+# elif defined(_M_MIPS)
+# define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+# define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+# define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCRX__)
+# define ARCHITECTURE_ID "RX"
+
+# elif defined(__ICCRH850__)
+# define ARCHITECTURE_ID "RH850"
+
+# elif defined(__ICCRL78__)
+# define ARCHITECTURE_ID "RL78"
+
+# elif defined(__ICCRISCV__)
+# define ARCHITECTURE_ID "RISCV"
+
+# elif defined(__ICCAVR__)
+# define ARCHITECTURE_ID "AVR"
+
+# elif defined(__ICC430__)
+# define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__ICCV850__)
+# define ARCHITECTURE_ID "V850"
+
+# elif defined(__ICC8051__)
+# define ARCHITECTURE_ID "8051"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__ghs__)
+# if defined(__PPC64__)
+# define ARCHITECTURE_ID "PPC64"
+
+# elif defined(__ppc__)
+# define ARCHITECTURE_ID "PPC"
+
+# elif defined(__ARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__x86_64__)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(__i386__)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+#else
+# define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals. */
+#define DEC(n) \
+ ('0' + (((n) / 10000000)%10)), \
+ ('0' + (((n) / 1000000)%10)), \
+ ('0' + (((n) / 100000)%10)), \
+ ('0' + (((n) / 10000)%10)), \
+ ('0' + (((n) / 1000)%10)), \
+ ('0' + (((n) / 100)%10)), \
+ ('0' + (((n) / 10)%10)), \
+ ('0' + ((n) % 10))
+
+/* Convert integer to hex digit literals. */
+#define HEX(n) \
+ ('0' + ((n)>>28 & 0xF)), \
+ ('0' + ((n)>>24 & 0xF)), \
+ ('0' + ((n)>>20 & 0xF)), \
+ ('0' + ((n)>>16 & 0xF)), \
+ ('0' + ((n)>>12 & 0xF)), \
+ ('0' + ((n)>>8 & 0xF)), \
+ ('0' + ((n)>>4 & 0xF)), \
+ ('0' + ((n) & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+ COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+ '.', COMPILER_VERSION_MINOR,
+# ifdef COMPILER_VERSION_PATCH
+ '.', COMPILER_VERSION_PATCH,
+# ifdef COMPILER_VERSION_TWEAK
+ '.', COMPILER_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+ 'i','n','t','e','r','n','a','l','[',
+ COMPILER_VERSION_INTERNAL,']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+ SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+ '.', SIMULATE_VERSION_MINOR,
+# ifdef SIMULATE_VERSION_PATCH
+ '.', SIMULATE_VERSION_PATCH,
+# ifdef SIMULATE_VERSION_TWEAK
+ '.', SIMULATE_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L
+# if defined(__INTEL_CXX11_MODE__)
+# if defined(__cpp_aggregate_nsdmi)
+# define CXX_STD 201402L
+# else
+# define CXX_STD 201103L
+# endif
+# else
+# define CXX_STD 199711L
+# endif
+#elif defined(_MSC_VER) && defined(_MSVC_LANG)
+# define CXX_STD _MSVC_LANG
+#else
+# define CXX_STD __cplusplus
+#endif
+
+const char* info_language_dialect_default = "INFO" ":" "dialect_default["
+#if CXX_STD > 201703L
+ "20"
+#elif CXX_STD >= 201703L
+ "17"
+#elif CXX_STD >= 201402L
+ "14"
+#elif CXX_STD >= 201103L
+ "11"
+#else
+ "98"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+int main(int argc, char* argv[])
+{
+ int require = 0;
+ require += info_compiler[argc];
+ require += info_platform[argc];
+#ifdef COMPILER_VERSION_MAJOR
+ require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+ require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+ require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+ require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+ require += info_cray[argc];
+#endif
+ require += info_language_dialect_default[argc];
+ (void)argv;
+ return require;
+}
diff --git a/CMakeFiles/3.16.3/CompilerIdCXX/a.out b/CMakeFiles/3.16.3/CompilerIdCXX/a.out
new file mode 100755
index 000000000..34ec4a035
Binary files /dev/null and b/CMakeFiles/3.16.3/CompilerIdCXX/a.out differ
diff --git a/CMakeFiles/CMakeDirectoryInformation.cmake b/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 000000000..04fe2a59c
--- /dev/null
+++ b/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/damire/space/libcds")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/damire/space/libcds")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig-release.cmake b/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig-release.cmake
new file mode 100644
index 000000000..773a79e59
--- /dev/null
+++ b/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig-release.cmake
@@ -0,0 +1,29 @@
+#----------------------------------------------------------------
+# Generated CMake target import file for configuration "RELEASE".
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Import target "LibCDS::cds" for configuration "RELEASE"
+set_property(TARGET LibCDS::cds APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(LibCDS::cds PROPERTIES
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib64/libcds.so.2.3.3"
+ IMPORTED_SONAME_RELEASE "libcds.so.2.3.3"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS LibCDS::cds )
+list(APPEND _IMPORT_CHECK_FILES_FOR_LibCDS::cds "${_IMPORT_PREFIX}/lib64/libcds.so.2.3.3" )
+
+# Import target "LibCDS::cds-s" for configuration "RELEASE"
+set_property(TARGET LibCDS::cds-s APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(LibCDS::cds-s PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib64/libcds-s.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS LibCDS::cds-s )
+list(APPEND _IMPORT_CHECK_FILES_FOR_LibCDS::cds-s "${_IMPORT_PREFIX}/lib64/libcds-s.a" )
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
diff --git a/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig.cmake b/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig.cmake
new file mode 100644
index 000000000..d66c3c98e
--- /dev/null
+++ b/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig.cmake
@@ -0,0 +1,108 @@
+# Generated by CMake
+
+if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5)
+ message(FATAL_ERROR "CMake >= 2.6.0 required")
+endif()
+cmake_policy(PUSH)
+cmake_policy(VERSION 2.6)
+#----------------------------------------------------------------
+# Generated CMake target import file.
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Protect against multiple inclusion, which would fail when already imported targets are added once more.
+set(_targetsDefined)
+set(_targetsNotDefined)
+set(_expectedTargets)
+foreach(_expectedTarget LibCDS::cds LibCDS::cds-s)
+ list(APPEND _expectedTargets ${_expectedTarget})
+ if(NOT TARGET ${_expectedTarget})
+ list(APPEND _targetsNotDefined ${_expectedTarget})
+ endif()
+ if(TARGET ${_expectedTarget})
+ list(APPEND _targetsDefined ${_expectedTarget})
+ endif()
+endforeach()
+if("${_targetsDefined}" STREQUAL "${_expectedTargets}")
+ unset(_targetsDefined)
+ unset(_targetsNotDefined)
+ unset(_expectedTargets)
+ set(CMAKE_IMPORT_FILE_VERSION)
+ cmake_policy(POP)
+ return()
+endif()
+if(NOT "${_targetsDefined}" STREQUAL "")
+ message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n")
+endif()
+unset(_targetsDefined)
+unset(_targetsNotDefined)
+unset(_expectedTargets)
+
+
+# Compute the installation prefix relative to this file.
+get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+if(_IMPORT_PREFIX STREQUAL "/")
+ set(_IMPORT_PREFIX "")
+endif()
+
+# Create imported target LibCDS::cds
+add_library(LibCDS::cds SHARED IMPORTED)
+
+set_target_properties(LibCDS::cds PROPERTIES
+ INTERFACE_COMPILE_OPTIONS "-mcx16"
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
+)
+
+# Create imported target LibCDS::cds-s
+add_library(LibCDS::cds-s STATIC IMPORTED)
+
+set_target_properties(LibCDS::cds-s PROPERTIES
+ INTERFACE_COMPILE_OPTIONS "-mcx16"
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
+ INTERFACE_LINK_LIBRARIES "\$"
+)
+
+if(CMAKE_VERSION VERSION_LESS 2.8.12)
+ message(FATAL_ERROR "This file relies on consumers using CMake 2.8.12 or greater.")
+endif()
+
+# Load information for each installed configuration.
+get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+file(GLOB CONFIG_FILES "${_DIR}/LibCDSConfig-*.cmake")
+foreach(f ${CONFIG_FILES})
+ include(${f})
+endforeach()
+
+# Cleanup temporary variables.
+set(_IMPORT_PREFIX)
+
+# Loop over all imported files and verify that they actually exist
+foreach(target ${_IMPORT_CHECK_TARGETS} )
+ foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
+ if(NOT EXISTS "${file}" )
+ message(FATAL_ERROR "The imported target \"${target}\" references the file
+ \"${file}\"
+but this file does not exist. Possible reasons include:
+* The file was deleted, renamed, or moved to another location.
+* An install or uninstall procedure did not complete successfully.
+* The installation package was faulty and contained
+ \"${CMAKE_CURRENT_LIST_FILE}\"
+but not all the files it references.
+")
+ endif()
+ endforeach()
+ unset(_IMPORT_CHECK_FILES_FOR_${target})
+endforeach()
+unset(_IMPORT_CHECK_TARGETS)
+
+# This file does not depend on other imported targets which have
+# been exported from the same project but in a separate export set.
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
+cmake_policy(POP)
diff --git a/CMakeFiles/Makefile.cmake b/CMakeFiles/Makefile.cmake
new file mode 100644
index 000000000..07c4eddbb
--- /dev/null
+++ b/CMakeFiles/Makefile.cmake
@@ -0,0 +1,138 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# The generator used is:
+set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
+
+# The top level Makefile was generated from the following files:
+set(CMAKE_MAKEFILE_DEPENDS
+ "CMakeCache.txt"
+ "CMakeFiles/3.16.3/CMakeCCompiler.cmake"
+ "CMakeFiles/3.16.3/CMakeCXXCompiler.cmake"
+ "CMakeFiles/3.16.3/CMakeSystem.cmake"
+ "CMakeLists.txt"
+ "arch.c"
+ "build/cmake/TargetArch.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeCCompiler.cmake.in"
+ "/usr/share/cmake-3.16/Modules/CMakeCCompilerABI.c"
+ "/usr/share/cmake-3.16/Modules/CMakeCInformation.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeCXXCompiler.cmake.in"
+ "/usr/share/cmake-3.16/Modules/CMakeCXXCompilerABI.cpp"
+ "/usr/share/cmake-3.16/Modules/CMakeCXXInformation.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeCommonLanguageInclude.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeCompilerIdDetection.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeDetermineCCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeDetermineCXXCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeDetermineCompileFeatures.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeDetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeDetermineCompilerABI.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeDetermineCompilerId.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeDetermineSystem.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeFindBinUtils.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeGenericSystem.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeInitializeConfigs.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeLanguageInformation.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeParseImplicitIncludeInfo.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeParseImplicitLinkInfo.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeSystem.cmake.in"
+ "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInformation.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInitialize.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeTestCCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeTestCXXCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeTestCompilerCommon.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeUnixFindMake.cmake"
+ "/usr/share/cmake-3.16/Modules/CPack.cmake"
+ "/usr/share/cmake-3.16/Modules/CPackComponent.cmake"
+ "/usr/share/cmake-3.16/Modules/CheckCSourceCompiles.cmake"
+ "/usr/share/cmake-3.16/Modules/CheckFunctionExists.c"
+ "/usr/share/cmake-3.16/Modules/CheckIncludeFile.c.in"
+ "/usr/share/cmake-3.16/Modules/CheckIncludeFile.cmake"
+ "/usr/share/cmake-3.16/Modules/CheckIncludeFile.cxx.in"
+ "/usr/share/cmake-3.16/Modules/CheckIncludeFileCXX.cmake"
+ "/usr/share/cmake-3.16/Modules/CheckLibraryExists.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/ADSP-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/ARMCC-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/ARMClang-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/AppleClang-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Borland-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Bruce-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Clang-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Compaq-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Cray-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Embarcadero-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Fujitsu-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/GHS-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/GNU-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/GNU-C.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/GNU-CXX.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/GNU-FindBinUtils.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/GNU.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/HP-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/HP-CXX-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/IAR-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Intel-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/MSVC-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/NVIDIA-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/PGI-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/PathScale-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/SCO-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/SDCC-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/SunPro-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/TI-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/Watcom-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/XL-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/XL-CXX-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/XLClang-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/zOS-C-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake"
+ "/usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake"
+ "/usr/share/cmake-3.16/Modules/FindPackageMessage.cmake"
+ "/usr/share/cmake-3.16/Modules/FindThreads.cmake"
+ "/usr/share/cmake-3.16/Modules/Internal/CMakeCheckCompilerFlag.cmake"
+ "/usr/share/cmake-3.16/Modules/Internal/FeatureTesting.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/Linux-Determine-CXX.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU-C.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU-CXX.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/Linux.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/UnixPaths.cmake"
+ "/usr/share/cmake-3.16/Templates/CPackConfig.cmake.in"
+ )
+
+# The corresponding makefile is:
+set(CMAKE_MAKEFILE_OUTPUTS
+ "Makefile"
+ "CMakeFiles/cmake.check_cache"
+ )
+
+# Byproducts of CMake generate step:
+set(CMAKE_MAKEFILE_PRODUCTS
+ "CMakeFiles/3.16.3/CMakeSystem.cmake"
+ "CMakeFiles/3.16.3/CMakeCCompiler.cmake"
+ "CMakeFiles/3.16.3/CMakeCXXCompiler.cmake"
+ "CMakeFiles/3.16.3/CMakeCCompiler.cmake"
+ "CMakeFiles/3.16.3/CMakeCXXCompiler.cmake"
+ "CPackConfig.cmake"
+ "CPackSourceConfig.cmake"
+ "CMakeFiles/CMakeDirectoryInformation.cmake"
+ )
+
+# Dependency information for all targets:
+set(CMAKE_DEPEND_INFO_FILES
+ "CMakeFiles/cds-s.dir/DependInfo.cmake"
+ "CMakeFiles/cds.dir/DependInfo.cmake"
+ )
diff --git a/CMakeFiles/Makefile2 b/CMakeFiles/Makefile2
new file mode 100644
index 000000000..5e7803dbd
--- /dev/null
+++ b/CMakeFiles/Makefile2
@@ -0,0 +1,135 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/damire/space/libcds
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/damire/space/libcds
+
+#=============================================================================
+# Directory level rules for the build root directory
+
+# The main recursive "all" target.
+all: CMakeFiles/cds-s.dir/all
+all: CMakeFiles/cds.dir/all
+
+.PHONY : all
+
+# The main recursive "preinstall" target.
+preinstall:
+
+.PHONY : preinstall
+
+# The main recursive "clean" target.
+clean: CMakeFiles/cds-s.dir/clean
+clean: CMakeFiles/cds.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Target rules for target CMakeFiles/cds-s.dir
+
+# All Build rule for target.
+CMakeFiles/cds-s.dir/all:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/depend
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=13,14,15,16,17,18,19,20,21,22,23,24 "Built target cds-s"
+.PHONY : CMakeFiles/cds-s.dir/all
+
+# Build rule for subdir invocation for target.
+CMakeFiles/cds-s.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/CMakeFiles 12
+ $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/cds-s.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/CMakeFiles 0
+.PHONY : CMakeFiles/cds-s.dir/rule
+
+# Convenience name for target.
+cds-s: CMakeFiles/cds-s.dir/rule
+
+.PHONY : cds-s
+
+# clean rule for target.
+CMakeFiles/cds-s.dir/clean:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/clean
+.PHONY : CMakeFiles/cds-s.dir/clean
+
+#=============================================================================
+# Target rules for target CMakeFiles/cds.dir
+
+# All Build rule for target.
+CMakeFiles/cds.dir/all:
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/depend
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=1,2,3,4,5,6,7,8,9,10,11,12 "Built target cds"
+.PHONY : CMakeFiles/cds.dir/all
+
+# Build rule for subdir invocation for target.
+CMakeFiles/cds.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/CMakeFiles 12
+ $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/cds.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/CMakeFiles 0
+.PHONY : CMakeFiles/cds.dir/rule
+
+# Convenience name for target.
+cds: CMakeFiles/cds.dir/rule
+
+.PHONY : cds
+
+# clean rule for target.
+CMakeFiles/cds.dir/clean:
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/clean
+.PHONY : CMakeFiles/cds.dir/clean
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/CMakeFiles/TargetDirectories.txt b/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 000000000..6480ec9aa
--- /dev/null
+++ b/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,10 @@
+/home/damire/space/libcds/CMakeFiles/install/strip.dir
+/home/damire/space/libcds/CMakeFiles/install/local.dir
+/home/damire/space/libcds/CMakeFiles/edit_cache.dir
+/home/damire/space/libcds/CMakeFiles/package_source.dir
+/home/damire/space/libcds/CMakeFiles/install.dir
+/home/damire/space/libcds/CMakeFiles/list_install_components.dir
+/home/damire/space/libcds/CMakeFiles/rebuild_cache.dir
+/home/damire/space/libcds/CMakeFiles/package.dir
+/home/damire/space/libcds/CMakeFiles/cds-s.dir
+/home/damire/space/libcds/CMakeFiles/cds.dir
diff --git a/CMakeFiles/cds-s.dir/DependInfo.cmake b/CMakeFiles/cds-s.dir/DependInfo.cmake
new file mode 100644
index 000000000..996bcf786
--- /dev/null
+++ b/CMakeFiles/cds-s.dir/DependInfo.cmake
@@ -0,0 +1,31 @@
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_CXX
+ "/home/damire/space/libcds/src/dhp.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/dhp.cpp.o"
+ "/home/damire/space/libcds/src/dllmain.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/dllmain.cpp.o"
+ "/home/damire/space/libcds/src/hp.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/hp.cpp.o"
+ "/home/damire/space/libcds/src/hp_thread_local.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o"
+ "/home/damire/space/libcds/src/init.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/init.cpp.o"
+ "/home/damire/space/libcds/src/thread_data.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/thread_data.cpp.o"
+ "/home/damire/space/libcds/src/topology_hpux.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o"
+ "/home/damire/space/libcds/src/topology_linux.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/topology_linux.cpp.o"
+ "/home/damire/space/libcds/src/topology_osx.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/topology_osx.cpp.o"
+ "/home/damire/space/libcds/src/urcu_gp.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o"
+ "/home/damire/space/libcds/src/urcu_sh.cpp" "/home/damire/space/libcds/CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o"
+ )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+ "."
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/CMakeFiles/cds-s.dir/build.make b/CMakeFiles/cds-s.dir/build.make
new file mode 100644
index 000000000..be6a38902
--- /dev/null
+++ b/CMakeFiles/cds-s.dir/build.make
@@ -0,0 +1,249 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/damire/space/libcds
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/damire/space/libcds
+
+# Include any dependencies generated for this target.
+include CMakeFiles/cds-s.dir/depend.make
+
+# Include the progress variables for this target.
+include CMakeFiles/cds-s.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include CMakeFiles/cds-s.dir/flags.make
+
+CMakeFiles/cds-s.dir/src/init.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/init.cpp.o: src/init.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/cds-s.dir/src/init.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/init.cpp.o -c /home/damire/space/libcds/src/init.cpp
+
+CMakeFiles/cds-s.dir/src/init.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/init.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/init.cpp > CMakeFiles/cds-s.dir/src/init.cpp.i
+
+CMakeFiles/cds-s.dir/src/init.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/init.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/init.cpp -o CMakeFiles/cds-s.dir/src/init.cpp.s
+
+CMakeFiles/cds-s.dir/src/hp.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/hp.cpp.o: src/hp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/cds-s.dir/src/hp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/hp.cpp.o -c /home/damire/space/libcds/src/hp.cpp
+
+CMakeFiles/cds-s.dir/src/hp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/hp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/hp.cpp > CMakeFiles/cds-s.dir/src/hp.cpp.i
+
+CMakeFiles/cds-s.dir/src/hp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/hp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/hp.cpp -o CMakeFiles/cds-s.dir/src/hp.cpp.s
+
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: src/hp_thread_local.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o -c /home/damire/space/libcds/src/hp_thread_local.cpp
+
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/hp_thread_local.cpp > CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.i
+
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/hp_thread_local.cpp -o CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.s
+
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: src/dhp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/cds-s.dir/src/dhp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/dhp.cpp.o -c /home/damire/space/libcds/src/dhp.cpp
+
+CMakeFiles/cds-s.dir/src/dhp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/dhp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/dhp.cpp > CMakeFiles/cds-s.dir/src/dhp.cpp.i
+
+CMakeFiles/cds-s.dir/src/dhp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/dhp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/dhp.cpp -o CMakeFiles/cds-s.dir/src/dhp.cpp.s
+
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: src/urcu_gp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o -c /home/damire/space/libcds/src/urcu_gp.cpp
+
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/urcu_gp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/urcu_gp.cpp > CMakeFiles/cds-s.dir/src/urcu_gp.cpp.i
+
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/urcu_gp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/urcu_gp.cpp -o CMakeFiles/cds-s.dir/src/urcu_gp.cpp.s
+
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: src/urcu_sh.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building CXX object CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o -c /home/damire/space/libcds/src/urcu_sh.cpp
+
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/urcu_sh.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/urcu_sh.cpp > CMakeFiles/cds-s.dir/src/urcu_sh.cpp.i
+
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/urcu_sh.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/urcu_sh.cpp -o CMakeFiles/cds-s.dir/src/urcu_sh.cpp.s
+
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: src/thread_data.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building CXX object CMakeFiles/cds-s.dir/src/thread_data.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/thread_data.cpp.o -c /home/damire/space/libcds/src/thread_data.cpp
+
+CMakeFiles/cds-s.dir/src/thread_data.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/thread_data.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/thread_data.cpp > CMakeFiles/cds-s.dir/src/thread_data.cpp.i
+
+CMakeFiles/cds-s.dir/src/thread_data.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/thread_data.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/thread_data.cpp -o CMakeFiles/cds-s.dir/src/thread_data.cpp.s
+
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: src/topology_hpux.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building CXX object CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o -c /home/damire/space/libcds/src/topology_hpux.cpp
+
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/topology_hpux.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_hpux.cpp > CMakeFiles/cds-s.dir/src/topology_hpux.cpp.i
+
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/topology_hpux.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_hpux.cpp -o CMakeFiles/cds-s.dir/src/topology_hpux.cpp.s
+
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: src/topology_linux.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building CXX object CMakeFiles/cds-s.dir/src/topology_linux.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/topology_linux.cpp.o -c /home/damire/space/libcds/src/topology_linux.cpp
+
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/topology_linux.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_linux.cpp > CMakeFiles/cds-s.dir/src/topology_linux.cpp.i
+
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/topology_linux.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_linux.cpp -o CMakeFiles/cds-s.dir/src/topology_linux.cpp.s
+
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: src/topology_osx.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building CXX object CMakeFiles/cds-s.dir/src/topology_osx.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/topology_osx.cpp.o -c /home/damire/space/libcds/src/topology_osx.cpp
+
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/topology_osx.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_osx.cpp > CMakeFiles/cds-s.dir/src/topology_osx.cpp.i
+
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/topology_osx.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_osx.cpp -o CMakeFiles/cds-s.dir/src/topology_osx.cpp.s
+
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: src/dllmain.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Building CXX object CMakeFiles/cds-s.dir/src/dllmain.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/dllmain.cpp.o -c /home/damire/space/libcds/src/dllmain.cpp
+
+CMakeFiles/cds-s.dir/src/dllmain.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/dllmain.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/dllmain.cpp > CMakeFiles/cds-s.dir/src/dllmain.cpp.i
+
+CMakeFiles/cds-s.dir/src/dllmain.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/dllmain.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/dllmain.cpp -o CMakeFiles/cds-s.dir/src/dllmain.cpp.s
+
+# Object files for target cds-s
+cds__s_OBJECTS = \
+"CMakeFiles/cds-s.dir/src/init.cpp.o" \
+"CMakeFiles/cds-s.dir/src/hp.cpp.o" \
+"CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o" \
+"CMakeFiles/cds-s.dir/src/dhp.cpp.o" \
+"CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o" \
+"CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o" \
+"CMakeFiles/cds-s.dir/src/thread_data.cpp.o" \
+"CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o" \
+"CMakeFiles/cds-s.dir/src/topology_linux.cpp.o" \
+"CMakeFiles/cds-s.dir/src/topology_osx.cpp.o" \
+"CMakeFiles/cds-s.dir/src/dllmain.cpp.o"
+
+# External object files for target cds-s
+cds__s_EXTERNAL_OBJECTS =
+
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/init.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/hp.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/dhp.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/thread_data.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/topology_linux.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/topology_osx.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/dllmain.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/build.make
+bin/libcds-s.a: CMakeFiles/cds-s.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Linking CXX static library bin/libcds-s.a"
+ $(CMAKE_COMMAND) -P CMakeFiles/cds-s.dir/cmake_clean_target.cmake
+ $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cds-s.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+CMakeFiles/cds-s.dir/build: bin/libcds-s.a
+
+.PHONY : CMakeFiles/cds-s.dir/build
+
+CMakeFiles/cds-s.dir/clean:
+ $(CMAKE_COMMAND) -P CMakeFiles/cds-s.dir/cmake_clean.cmake
+.PHONY : CMakeFiles/cds-s.dir/clean
+
+CMakeFiles/cds-s.dir/depend:
+ cd /home/damire/space/libcds && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/damire/space/libcds /home/damire/space/libcds /home/damire/space/libcds /home/damire/space/libcds /home/damire/space/libcds/CMakeFiles/cds-s.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : CMakeFiles/cds-s.dir/depend
+
diff --git a/CMakeFiles/cds-s.dir/cmake_clean.cmake b/CMakeFiles/cds-s.dir/cmake_clean.cmake
new file mode 100644
index 000000000..476a7bad0
--- /dev/null
+++ b/CMakeFiles/cds-s.dir/cmake_clean.cmake
@@ -0,0 +1,20 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/cds-s.dir/src/dhp.cpp.o"
+ "CMakeFiles/cds-s.dir/src/dllmain.cpp.o"
+ "CMakeFiles/cds-s.dir/src/hp.cpp.o"
+ "CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o"
+ "CMakeFiles/cds-s.dir/src/init.cpp.o"
+ "CMakeFiles/cds-s.dir/src/thread_data.cpp.o"
+ "CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o"
+ "CMakeFiles/cds-s.dir/src/topology_linux.cpp.o"
+ "CMakeFiles/cds-s.dir/src/topology_osx.cpp.o"
+ "CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o"
+ "CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o"
+ "bin/libcds-s.a"
+ "bin/libcds-s.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/cds-s.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/CMakeFiles/cds-s.dir/cmake_clean_target.cmake b/CMakeFiles/cds-s.dir/cmake_clean_target.cmake
new file mode 100644
index 000000000..b0854c13d
--- /dev/null
+++ b/CMakeFiles/cds-s.dir/cmake_clean_target.cmake
@@ -0,0 +1,3 @@
+file(REMOVE_RECURSE
+ "bin/libcds-s.a"
+)
diff --git a/CMakeFiles/cds-s.dir/depend.make b/CMakeFiles/cds-s.dir/depend.make
new file mode 100644
index 000000000..0760ea9f3
--- /dev/null
+++ b/CMakeFiles/cds-s.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for cds-s.
+# This may be replaced when dependencies are built.
diff --git a/CMakeFiles/cds-s.dir/flags.make b/CMakeFiles/cds-s.dir/flags.make
new file mode 100644
index 000000000..6c1bafc81
--- /dev/null
+++ b/CMakeFiles/cds-s.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11
+
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/damire/space/libcds
+
diff --git a/CMakeFiles/cds-s.dir/link.txt b/CMakeFiles/cds-s.dir/link.txt
new file mode 100644
index 000000000..924e78ea9
--- /dev/null
+++ b/CMakeFiles/cds-s.dir/link.txt
@@ -0,0 +1,2 @@
+/usr/bin/ar qc bin/libcds-s.a CMakeFiles/cds-s.dir/src/init.cpp.o CMakeFiles/cds-s.dir/src/hp.cpp.o CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o CMakeFiles/cds-s.dir/src/dhp.cpp.o CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o CMakeFiles/cds-s.dir/src/thread_data.cpp.o CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o CMakeFiles/cds-s.dir/src/topology_linux.cpp.o CMakeFiles/cds-s.dir/src/topology_osx.cpp.o CMakeFiles/cds-s.dir/src/dllmain.cpp.o
+/usr/bin/ranlib bin/libcds-s.a
diff --git a/CMakeFiles/cds-s.dir/progress.make b/CMakeFiles/cds-s.dir/progress.make
new file mode 100644
index 000000000..d139d38c3
--- /dev/null
+++ b/CMakeFiles/cds-s.dir/progress.make
@@ -0,0 +1,13 @@
+CMAKE_PROGRESS_1 = 13
+CMAKE_PROGRESS_2 = 14
+CMAKE_PROGRESS_3 = 15
+CMAKE_PROGRESS_4 = 16
+CMAKE_PROGRESS_5 = 17
+CMAKE_PROGRESS_6 = 18
+CMAKE_PROGRESS_7 = 19
+CMAKE_PROGRESS_8 = 20
+CMAKE_PROGRESS_9 = 21
+CMAKE_PROGRESS_10 = 22
+CMAKE_PROGRESS_11 = 23
+CMAKE_PROGRESS_12 = 24
+
diff --git a/CMakeFiles/cds.dir/DependInfo.cmake b/CMakeFiles/cds.dir/DependInfo.cmake
new file mode 100644
index 000000000..7af833880
--- /dev/null
+++ b/CMakeFiles/cds.dir/DependInfo.cmake
@@ -0,0 +1,42 @@
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_CXX
+ "/home/damire/space/libcds/src/dhp.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/dhp.cpp.o"
+ "/home/damire/space/libcds/src/dllmain.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/dllmain.cpp.o"
+ "/home/damire/space/libcds/src/hp.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/hp.cpp.o"
+ "/home/damire/space/libcds/src/hp_thread_local.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/hp_thread_local.cpp.o"
+ "/home/damire/space/libcds/src/init.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/init.cpp.o"
+ "/home/damire/space/libcds/src/thread_data.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/thread_data.cpp.o"
+ "/home/damire/space/libcds/src/topology_hpux.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/topology_hpux.cpp.o"
+ "/home/damire/space/libcds/src/topology_linux.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/topology_linux.cpp.o"
+ "/home/damire/space/libcds/src/topology_osx.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/topology_osx.cpp.o"
+ "/home/damire/space/libcds/src/urcu_gp.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/urcu_gp.cpp.o"
+ "/home/damire/space/libcds/src/urcu_sh.cpp" "/home/damire/space/libcds/CMakeFiles/cds.dir/src/urcu_sh.cpp.o"
+ )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# Preprocessor definitions for this target.
+set(CMAKE_TARGET_DEFINITIONS_CXX
+ "cds_EXPORTS"
+ )
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+ "."
+ )
+
+# Pairs of files generated by the same build rule.
+set(CMAKE_MULTIPLE_OUTPUT_PAIRS
+ "/home/damire/space/libcds/bin/libcds.so" "/home/damire/space/libcds/bin/libcds.so.2.3.3"
+ )
+
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/CMakeFiles/cds.dir/build.make b/CMakeFiles/cds.dir/build.make
new file mode 100644
index 000000000..b347989b4
--- /dev/null
+++ b/CMakeFiles/cds.dir/build.make
@@ -0,0 +1,252 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/damire/space/libcds
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/damire/space/libcds
+
+# Include any dependencies generated for this target.
+include CMakeFiles/cds.dir/depend.make
+
+# Include the progress variables for this target.
+include CMakeFiles/cds.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include CMakeFiles/cds.dir/flags.make
+
+CMakeFiles/cds.dir/src/init.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/init.cpp.o: src/init.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/cds.dir/src/init.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/init.cpp.o -c /home/damire/space/libcds/src/init.cpp
+
+CMakeFiles/cds.dir/src/init.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/init.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/init.cpp > CMakeFiles/cds.dir/src/init.cpp.i
+
+CMakeFiles/cds.dir/src/init.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/init.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/init.cpp -o CMakeFiles/cds.dir/src/init.cpp.s
+
+CMakeFiles/cds.dir/src/hp.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/hp.cpp.o: src/hp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/cds.dir/src/hp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/hp.cpp.o -c /home/damire/space/libcds/src/hp.cpp
+
+CMakeFiles/cds.dir/src/hp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/hp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/hp.cpp > CMakeFiles/cds.dir/src/hp.cpp.i
+
+CMakeFiles/cds.dir/src/hp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/hp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/hp.cpp -o CMakeFiles/cds.dir/src/hp.cpp.s
+
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: src/hp_thread_local.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/cds.dir/src/hp_thread_local.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/hp_thread_local.cpp.o -c /home/damire/space/libcds/src/hp_thread_local.cpp
+
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/hp_thread_local.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/hp_thread_local.cpp > CMakeFiles/cds.dir/src/hp_thread_local.cpp.i
+
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/hp_thread_local.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/hp_thread_local.cpp -o CMakeFiles/cds.dir/src/hp_thread_local.cpp.s
+
+CMakeFiles/cds.dir/src/dhp.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/dhp.cpp.o: src/dhp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/cds.dir/src/dhp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/dhp.cpp.o -c /home/damire/space/libcds/src/dhp.cpp
+
+CMakeFiles/cds.dir/src/dhp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/dhp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/dhp.cpp > CMakeFiles/cds.dir/src/dhp.cpp.i
+
+CMakeFiles/cds.dir/src/dhp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/dhp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/dhp.cpp -o CMakeFiles/cds.dir/src/dhp.cpp.s
+
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: src/urcu_gp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object CMakeFiles/cds.dir/src/urcu_gp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/urcu_gp.cpp.o -c /home/damire/space/libcds/src/urcu_gp.cpp
+
+CMakeFiles/cds.dir/src/urcu_gp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/urcu_gp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/urcu_gp.cpp > CMakeFiles/cds.dir/src/urcu_gp.cpp.i
+
+CMakeFiles/cds.dir/src/urcu_gp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/urcu_gp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/urcu_gp.cpp -o CMakeFiles/cds.dir/src/urcu_gp.cpp.s
+
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: src/urcu_sh.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building CXX object CMakeFiles/cds.dir/src/urcu_sh.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/urcu_sh.cpp.o -c /home/damire/space/libcds/src/urcu_sh.cpp
+
+CMakeFiles/cds.dir/src/urcu_sh.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/urcu_sh.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/urcu_sh.cpp > CMakeFiles/cds.dir/src/urcu_sh.cpp.i
+
+CMakeFiles/cds.dir/src/urcu_sh.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/urcu_sh.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/urcu_sh.cpp -o CMakeFiles/cds.dir/src/urcu_sh.cpp.s
+
+CMakeFiles/cds.dir/src/thread_data.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/thread_data.cpp.o: src/thread_data.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building CXX object CMakeFiles/cds.dir/src/thread_data.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/thread_data.cpp.o -c /home/damire/space/libcds/src/thread_data.cpp
+
+CMakeFiles/cds.dir/src/thread_data.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/thread_data.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/thread_data.cpp > CMakeFiles/cds.dir/src/thread_data.cpp.i
+
+CMakeFiles/cds.dir/src/thread_data.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/thread_data.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/thread_data.cpp -o CMakeFiles/cds.dir/src/thread_data.cpp.s
+
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: src/topology_hpux.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building CXX object CMakeFiles/cds.dir/src/topology_hpux.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/topology_hpux.cpp.o -c /home/damire/space/libcds/src/topology_hpux.cpp
+
+CMakeFiles/cds.dir/src/topology_hpux.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/topology_hpux.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_hpux.cpp > CMakeFiles/cds.dir/src/topology_hpux.cpp.i
+
+CMakeFiles/cds.dir/src/topology_hpux.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/topology_hpux.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_hpux.cpp -o CMakeFiles/cds.dir/src/topology_hpux.cpp.s
+
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: src/topology_linux.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building CXX object CMakeFiles/cds.dir/src/topology_linux.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/topology_linux.cpp.o -c /home/damire/space/libcds/src/topology_linux.cpp
+
+CMakeFiles/cds.dir/src/topology_linux.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/topology_linux.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_linux.cpp > CMakeFiles/cds.dir/src/topology_linux.cpp.i
+
+CMakeFiles/cds.dir/src/topology_linux.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/topology_linux.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_linux.cpp -o CMakeFiles/cds.dir/src/topology_linux.cpp.s
+
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: src/topology_osx.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building CXX object CMakeFiles/cds.dir/src/topology_osx.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/topology_osx.cpp.o -c /home/damire/space/libcds/src/topology_osx.cpp
+
+CMakeFiles/cds.dir/src/topology_osx.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/topology_osx.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_osx.cpp > CMakeFiles/cds.dir/src/topology_osx.cpp.i
+
+CMakeFiles/cds.dir/src/topology_osx.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/topology_osx.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_osx.cpp -o CMakeFiles/cds.dir/src/topology_osx.cpp.s
+
+CMakeFiles/cds.dir/src/dllmain.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/dllmain.cpp.o: src/dllmain.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Building CXX object CMakeFiles/cds.dir/src/dllmain.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/dllmain.cpp.o -c /home/damire/space/libcds/src/dllmain.cpp
+
+CMakeFiles/cds.dir/src/dllmain.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/dllmain.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/dllmain.cpp > CMakeFiles/cds.dir/src/dllmain.cpp.i
+
+CMakeFiles/cds.dir/src/dllmain.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/dllmain.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/dllmain.cpp -o CMakeFiles/cds.dir/src/dllmain.cpp.s
+
+# Object files for target cds
+cds_OBJECTS = \
+"CMakeFiles/cds.dir/src/init.cpp.o" \
+"CMakeFiles/cds.dir/src/hp.cpp.o" \
+"CMakeFiles/cds.dir/src/hp_thread_local.cpp.o" \
+"CMakeFiles/cds.dir/src/dhp.cpp.o" \
+"CMakeFiles/cds.dir/src/urcu_gp.cpp.o" \
+"CMakeFiles/cds.dir/src/urcu_sh.cpp.o" \
+"CMakeFiles/cds.dir/src/thread_data.cpp.o" \
+"CMakeFiles/cds.dir/src/topology_hpux.cpp.o" \
+"CMakeFiles/cds.dir/src/topology_linux.cpp.o" \
+"CMakeFiles/cds.dir/src/topology_osx.cpp.o" \
+"CMakeFiles/cds.dir/src/dllmain.cpp.o"
+
+# External object files for target cds
+cds_EXTERNAL_OBJECTS =
+
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/init.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/hp.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/hp_thread_local.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/dhp.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/urcu_gp.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/urcu_sh.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/thread_data.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/topology_hpux.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/topology_linux.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/topology_osx.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/dllmain.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/build.make
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/damire/space/libcds/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Linking CXX shared library bin/libcds.so"
+ $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cds.dir/link.txt --verbose=$(VERBOSE)
+ $(CMAKE_COMMAND) -E cmake_symlink_library bin/libcds.so.2.3.3 bin/libcds.so.2.3.3 bin/libcds.so
+
+bin/libcds.so: bin/libcds.so.2.3.3
+ @$(CMAKE_COMMAND) -E touch_nocreate bin/libcds.so
+
+# Rule to build all files generated by this target.
+CMakeFiles/cds.dir/build: bin/libcds.so
+
+.PHONY : CMakeFiles/cds.dir/build
+
+CMakeFiles/cds.dir/clean:
+ $(CMAKE_COMMAND) -P CMakeFiles/cds.dir/cmake_clean.cmake
+.PHONY : CMakeFiles/cds.dir/clean
+
+CMakeFiles/cds.dir/depend:
+ cd /home/damire/space/libcds && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/damire/space/libcds /home/damire/space/libcds /home/damire/space/libcds /home/damire/space/libcds /home/damire/space/libcds/CMakeFiles/cds.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : CMakeFiles/cds.dir/depend
+
diff --git a/CMakeFiles/cds.dir/cmake_clean.cmake b/CMakeFiles/cds.dir/cmake_clean.cmake
new file mode 100644
index 000000000..73645dfb4
--- /dev/null
+++ b/CMakeFiles/cds.dir/cmake_clean.cmake
@@ -0,0 +1,21 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/cds.dir/src/dhp.cpp.o"
+ "CMakeFiles/cds.dir/src/dllmain.cpp.o"
+ "CMakeFiles/cds.dir/src/hp.cpp.o"
+ "CMakeFiles/cds.dir/src/hp_thread_local.cpp.o"
+ "CMakeFiles/cds.dir/src/init.cpp.o"
+ "CMakeFiles/cds.dir/src/thread_data.cpp.o"
+ "CMakeFiles/cds.dir/src/topology_hpux.cpp.o"
+ "CMakeFiles/cds.dir/src/topology_linux.cpp.o"
+ "CMakeFiles/cds.dir/src/topology_osx.cpp.o"
+ "CMakeFiles/cds.dir/src/urcu_gp.cpp.o"
+ "CMakeFiles/cds.dir/src/urcu_sh.cpp.o"
+ "bin/libcds.pdb"
+ "bin/libcds.so"
+ "bin/libcds.so.2.3.3"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/cds.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/CMakeFiles/cds.dir/depend.make b/CMakeFiles/cds.dir/depend.make
new file mode 100644
index 000000000..ccc37f51e
--- /dev/null
+++ b/CMakeFiles/cds.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for cds.
+# This may be replaced when dependencies are built.
diff --git a/CMakeFiles/cds.dir/flags.make b/CMakeFiles/cds.dir/flags.make
new file mode 100644
index 000000000..b3f596077
--- /dev/null
+++ b/CMakeFiles/cds.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11
+
+CXX_DEFINES = -Dcds_EXPORTS
+
+CXX_INCLUDES = -I/home/damire/space/libcds
+
diff --git a/CMakeFiles/cds.dir/link.txt b/CMakeFiles/cds.dir/link.txt
new file mode 100644
index 000000000..2d67b73e8
--- /dev/null
+++ b/CMakeFiles/cds.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++ -fPIC -O3 -DNDEBUG -shared -Wl,-soname,libcds.so.2.3.3 -o bin/libcds.so.2.3.3 CMakeFiles/cds.dir/src/init.cpp.o CMakeFiles/cds.dir/src/hp.cpp.o CMakeFiles/cds.dir/src/hp_thread_local.cpp.o CMakeFiles/cds.dir/src/dhp.cpp.o CMakeFiles/cds.dir/src/urcu_gp.cpp.o CMakeFiles/cds.dir/src/urcu_sh.cpp.o CMakeFiles/cds.dir/src/thread_data.cpp.o CMakeFiles/cds.dir/src/topology_hpux.cpp.o CMakeFiles/cds.dir/src/topology_linux.cpp.o CMakeFiles/cds.dir/src/topology_osx.cpp.o CMakeFiles/cds.dir/src/dllmain.cpp.o -lpthread
diff --git a/CMakeFiles/cds.dir/progress.make b/CMakeFiles/cds.dir/progress.make
new file mode 100644
index 000000000..5d4d46460
--- /dev/null
+++ b/CMakeFiles/cds.dir/progress.make
@@ -0,0 +1,13 @@
+CMAKE_PROGRESS_1 = 1
+CMAKE_PROGRESS_2 = 2
+CMAKE_PROGRESS_3 = 3
+CMAKE_PROGRESS_4 = 4
+CMAKE_PROGRESS_5 = 5
+CMAKE_PROGRESS_6 = 6
+CMAKE_PROGRESS_7 = 7
+CMAKE_PROGRESS_8 = 8
+CMAKE_PROGRESS_9 = 9
+CMAKE_PROGRESS_10 = 10
+CMAKE_PROGRESS_11 = 11
+CMAKE_PROGRESS_12 = 12
+
diff --git a/CMakeFiles/cmake.check_cache b/CMakeFiles/cmake.check_cache
new file mode 100644
index 000000000..3dccd7317
--- /dev/null
+++ b/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/CMakeFiles/progress.marks b/CMakeFiles/progress.marks
new file mode 100644
index 000000000..a45fd52cc
--- /dev/null
+++ b/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+24
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 72f17017c..d3088d97e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,6 +11,14 @@ include(CheckIncludeFileCXX)
project(cds)
+
+include_directories(./)
+link_directories(bin)
+add_executable(libcds-debug main.cpp visualize.h)
+
+target_link_libraries(libcds-debug cds pthread)
+
+
set(PROJECT_VERSION 2.3.3)
# Options
@@ -170,7 +178,7 @@ set(SOURCES src/init.cpp
src/topology_osx.cpp
src/dllmain.cpp)
-add_library(${CDS_SHARED_LIBRARY} SHARED ${SOURCES})
+add_library(${CDS_SHARED_LIBRARY} SHARED ${SOURCES} )
set_target_properties(${CDS_SHARED_LIBRARY} PROPERTIES VERSION ${PROJECT_VERSION}
DEBUG_POSTFIX "_d")
set_property(TARGET ${CDS_SHARED_LIBRARY} PROPERTY CXX_STANDARD ${LIBCDS_CXX_STANDARD})
diff --git a/cds/container/hamt.h b/cds/container/hamt.h
new file mode 100644
index 000000000..39f29bc8a
--- /dev/null
+++ b/cds/container/hamt.h
@@ -0,0 +1,678 @@
+// Copyright (c) 2006-2018 Maxim Khizhinsky
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef CDSLIB_CONTAINER_HAMT_H
+#define CDSLIB_CONTAINER_HAMT_H
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include "atomic"
+
+
+#define HASH_PIECE_LEN 5
+#define MAX_LEVEL_COUNT (int (64 / 5))
+
+using namespace std;
+
+namespace cds {
+ namespace container {
+ template
+ class Hamt {
+ typedef GC gc;
+ typedef K key_type;
+ typedef V value_type;
+ public:
+ struct InsertResult {
+ enum class Status {
+ Inserted,
+ Failed
+ };
+
+ V value;
+ Status status;
+
+ bool operator==(InsertResult b) const {
+ if ((status == Status::Failed) && (b.status == Status::Failed)) return true;
+ if ((status == Status::Inserted) && (b.status == Status::Inserted)) return true;
+ return false;
+ }
+
+ InsertResult& operator=(InsertResult b) {
+ this->status = b.status;
+ this->value = value;
+ return *this;
+ }
+
+ bool operator!=(InsertResult b) const {
+ return !(*this == b);
+ }
+ };
+
+ struct LookupResult {
+ enum LookupResultStatus {
+ NotFound,
+ Found,
+ Failed
+ };
+
+ V value;
+ LookupResultStatus status;
+
+ bool operator==(LookupResult b) const {
+ if ((this->status == NotFound) && (b.status == NotFound)) return true;
+ if ((this->status == Failed) && (b.status == Failed)) return true;
+ if ((this->status == Found) && (b.status == Found)) return this->value == b.value;
+ return false;
+ }
+
+ bool operator!=(LookupResult b) const {
+ return !(*this == b);
+ }
+ };
+
+
+ struct RemoveResult {
+ enum Status {
+ Removed,
+ Failed,
+ NotFound,
+ };
+
+ V value;
+ Status status;
+
+ bool operator==(RemoveResult rightOperand) const {
+ if ((status == NotFound) && (rightOperand.status == NotFound)) return true;
+ if ((status == Failed) && (rightOperand.status == Failed)) return true;
+ if ((status == Removed) && (rightOperand.status == Removed)) return value == rightOperand.value;
+ return false;
+ }
+
+ bool operator!=(RemoveResult rightOperand) const {
+ return !(*this == rightOperand);
+ }
+ };
+
+ const LookupResult LOOKUP_RESTART{0, LookupResult::Failed};
+ const LookupResult LOOKUP_NOT_FOUND{0, LookupResult::NotFound};
+ const RemoveResult REMOVE_NOT_FOUND{0, RemoveResult::NotFound};
+ const RemoveResult REMOVE_RESTART{0, RemoveResult::Failed};
+ const InsertResult INSERT_RESTART{.status = InsertResult::Status::Failed};
+ const InsertResult INSERT_SUCCESSFUL{.status = InsertResult::Status::Inserted};
+
+ RemoveResult createSuccessfulRemoveResult(int value) {
+ return {value, RemoveResult::Removed};
+ }
+
+ LookupResult createSuccessfulLookupResult(int value) {
+ return {value, LookupResult::Found};
+ }
+
+
+ struct Bitmap {
+ uint32_t data;
+
+ bool isSet(uint8_t pos) const {
+ return ((data >> pos) & 1) == 1;
+ }
+
+ void set(uint8_t pos) {
+ data = data | (1 << pos);
+ }
+
+ void unset(uint8_t pos) {
+ data = data & (~(1 << pos));
+ }
+ };
+
+ uint8_t extractHashPartByLevel(uint64_t hash, uint8_t level) {
+ return (hash >> (level * HASH_PIECE_LEN)) & ((1 << HASH_PIECE_LEN) - 1);
+ }
+
+ enum NodeType {
+ CNODE,
+ SNODE,
+ INODE
+ };
+
+ class Node {
+ public:
+ NodeType type;
+ protected:
+
+ Node(NodeType type) {
+ this->type = type;
+ }
+ };
+
+
+ class SNode : public Node {
+ public:
+ static uint64_t generateSimpleHash(K key) {
+ return std::hash{}(key);
+ }
+
+ SNode(key_type k, value_type v) : Node(SNODE) {
+ this->pair.insert({k, v});
+ this->hash = generateSimpleHash(k);
+ }
+
+ uint64_t getHash() {
+ return hash;
+ }
+
+ bool contains(key_type k) {
+ for (auto &p: this->pair) {
+ if (p.key == k) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ bool contains(SNode *node) {
+ for (auto &p: node->pair) {
+ if (this->contains(p.key)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ int getValue(key_type k) {
+ for (auto &p: this->pair) {
+ if (p.key == k) {
+ return p.value;
+ }
+ }
+ return 0;
+ }
+
+ struct Pair {
+ key_type key;
+ value_type value;
+
+ bool operator<(const Pair &p) const {
+ return this->key < p.key;
+ }
+ };
+
+ public:
+ uint64_t hash{};
+ set pair;
+ };
+
+ class CNode : public Node {
+ public:
+ bool isTomb;
+
+ CNode() : Node(CNODE) {
+ isTomb = false;
+ }
+
+ Node *getSubNode(uint8_t path) const {
+ if (!bmp.isSet(path)) return nullptr;
+ uint8_t index = getArrayIndexByBmp(path);
+ assert(index < array.size());
+ return array[index];
+ }
+
+ uint8_t getChildCount() const {
+ return __builtin_popcount(bmp.data);
+ }
+
+ Node *getFirstChild() const {
+ assert(array.size() > 0);
+ return array.front();
+ }
+
+ void insertChild(Node *const newChild, uint8_t path) {
+ bmp.set(path);
+ array.insert(array.begin() + getArrayIndexByBmp(path), newChild);
+ }
+
+ void replaceChild(Node *const newChild, uint8_t path) {
+ uint8_t index = getArrayIndexByBmp(path);
+ assert(index < array.size());
+ array[index] = newChild;
+ }
+
+ void deleteChild(uint8_t path) {
+ uint8_t index = getArrayIndexByBmp(path);
+ assert(index < array.size());
+ array.erase(array.begin() + index);
+ bmp.unset(path);
+ }
+
+ uint8_t getArrayIndexByBmp(uint8_t pos) const {
+ assert(pos < 32);
+ return __builtin_popcount(
+ ((1 << pos) - 1) & bmp.data
+ );
+ }
+
+ private:
+ Bitmap bmp{};
+ vector array;
+ };
+
+
+ class INode : public Node {
+ public:
+ INode() : Node(INODE) {}
+
+ INode(CNode *main) : INode() {
+ this->main.store(main, std::memory_order_seq_cst);
+ }
+
+ atomic main;
+ };
+
+ SNode *leftMerge(SNode *node1, SNode *node2) {
+ for (auto &p: node2->pair) {
+ if (!node1->contains(p.key)) {
+ node1->pair.insert(p);
+ }
+ }
+ return node1;
+ }
+
+ void transformToContractedParent(CNode *updated, CNode *m, uint8_t path) {
+ updated->replaceChild(m->getFirstChild(), path);
+ }
+
+ void transformToWithReplacedPair(CNode *updated, SNode *subNode, SNode *newNode, uint8_t path) {
+ updated->replaceChild(leftMerge(newNode, subNode), path);
+ }
+
+ void transformToWithInsertedChild(CNode *updated, Node *child, uint8_t path) {
+ updated->insertChild(child, path);
+ }
+
+ void transformToWithMergedChild(CNode *updated, SNode *subNode, SNode *newNode, uint8_t path) {
+ updated->replaceChild(leftMerge(newNode, subNode), path);
+ }
+
+ void
+ transformToWithDownChild(CNode *updated, SNode *newChild, SNode *oldChild, uint8_t level, uint8_t path) {
+ if (newChild->getHash() == oldChild->getHash()) {
+ newChild = leftMerge(newChild, oldChild);
+ updated->replaceChild(newChild, path);
+ } else {
+
+ auto *cur_c = new CNode();
+ auto *i = new INode(cur_c);
+
+ int j = level + 1;
+ uint8_t newChildHashPath = extractHashPartByLevel(newChild->getHash(), j);
+ uint8_t oldChildHashPath = extractHashPartByLevel(oldChild->getHash(), j);
+
+ while (newChildHashPath == oldChildHashPath) {
+ auto *c = new CNode();
+ cur_c->insertChild(new INode(c), oldChildHashPath);
+ cur_c = c;
+ j++;
+ newChildHashPath = extractHashPartByLevel(newChild->getHash(), j);
+ oldChildHashPath = extractHashPartByLevel(oldChild->getHash(), j);
+
+
+ }
+ cur_c->insertChild(newChild, newChildHashPath);
+ cur_c->insertChild(oldChild, oldChildHashPath);
+
+ updated->replaceChild(i, path);
+ }
+
+ }
+
+ void transformToWithDeletedKey(CNode *updated, SNode *updatedSubNode, key_type key, uint8_t path) {
+ if (updatedSubNode->pair.size() > 1) {
+ updatedSubNode->pair.erase({key, updatedSubNode->getValue(key)});
+ updated->replaceChild(updatedSubNode, path);
+ } else {
+ updated->deleteChild(path);
+ }
+ }
+
+ bool isTombed(const CNode *const c, const INode *const root, const INode *const parent) {
+ return root != parent &&
+ c->getChildCount() == 1 &&
+ c->getFirstChild()->type == SNODE;
+ }
+
+ bool
+ contractParent(INode *parent, INode *i, CNode *pm, CNode *m, uint8_t level,
+ uint64_t hash) {
+ if (!m->isTomb) return false;
+
+ if (pm->getSubNode(extractHashPartByLevel(hash, level - 1)) != i) {
+ return true;
+ }
+
+ auto *updated = new CNode(*pm);
+ transformToContractedParent(updated, m, extractHashPartByLevel(hash, level - 1));
+ if (parent->main.compare_exchange_strong(pm, updated)) {
+ gc::template retire(pm, &dispose);
+ } else {
+ delete updated;
+ }
+ return true;
+ }
+
+ static void dispose(void *v) {
+ switch (((Node *) v)->type) {
+ case (SNODE): {
+ delete ((SNode *) v);
+ break;
+ }
+ case (CNODE): {
+ delete ((CNode *) v);
+ break;
+ }
+ }
+ }
+
+ public:
+
+ Hamt() {
+ root = new INode(nullptr);
+ }
+
+ ~Hamt() {
+ dealloc(root);
+ }
+
+ RemoveResult remove(key_type key) {
+ typename gc::template GuardArray<2> guards;
+ while (true) {
+ if (root->main.load() == nullptr) {
+ return REMOVE_NOT_FOUND;
+ }
+ RemoveResult res = remove(root, nullptr, key, SNode::generateSimpleHash(key), 0, &guards);
+ if (res != REMOVE_RESTART) {
+ return res;
+ }
+ }
+ }
+
+ InsertResult insert(key_type key, value_type value) {
+ typename gc::template GuardArray<2> guards;
+ auto *s = new SNode(key, value);
+ while (true) {
+ CNode *r = root->main.load();
+ if (r == nullptr) {
+ auto *updated = new CNode();
+ updated->insertChild(s, extractHashPartByLevel(s->getHash(), 0));
+ if (root->main.compare_exchange_strong(r, updated)) {
+ return INSERT_SUCCESSFUL;
+ } else {
+ delete updated;
+ }
+ } else {
+ InsertResult res = insert(root, nullptr, s, 0, &guards);
+ if (res != INSERT_RESTART) {
+ return res;
+ }
+ }
+ }
+ }
+
+ LookupResult lookup(key_type key) {
+ typename gc::template GuardArray<2> guards;
+ while (true) {
+ if (root->main.load() == nullptr) {
+ return LOOKUP_NOT_FOUND;
+ } else {
+ LookupResult res = lookup(root, nullptr, key, SNode::generateSimpleHash(key), 0, &guards);
+ if (res != LOOKUP_RESTART) {
+ return res;
+ }
+ }
+ }
+ }
+
+ public:
+ Node* getRoot(){
+ return root;
+ }
+
+ private:
+ INode *root;
+
+ void dealloc(Node *n) {
+ switch (n->type) {
+ case CNODE: {
+ auto *c = static_cast(n);
+ for (int i = 0; i < 32; i++) {
+ if (c->getSubNode(i) != NULL) {
+ dealloc(c->getSubNode(i));
+ }
+ }
+ delete c;
+ break;
+ }
+ case INODE: {
+ auto *i = static_cast(n);
+ if (i->main != nullptr) {
+ dealloc(i->main.load());
+ }
+ delete i;
+ break;
+ }
+ case SNODE: {
+ auto *s = static_cast(n);
+ delete s;
+ break;
+ }
+ }
+ }
+
+ void dealloc(Node *n, uint64_t hash, uint8_t level) {
+
+ switch (n->type) {
+ case CNODE: {
+ uint8_t path = extractHashPartByLevel(hash, level);
+ auto *c = static_cast(n);
+ dealloc(c->getSubNode(path), hash, level + 1);
+ delete c;
+ break;
+ }
+ case INODE: {
+ auto *i = static_cast(n);
+ dealloc(i->main, hash, level);
+ delete i;
+ break;
+ }
+ case SNODE: {
+ auto *s = static_cast(n);
+ delete s;
+ break;
+ }
+ }
+ }
+
+ LookupResult
+ lookup(INode *currentNode, INode *parent, key_type key, uint64_t hash, uint8_t level,
+ typename gc::template GuardArray<2> *guard) {
+ CNode *pm = parent ? parent->main.load() : nullptr;
+ CNode *m = currentNode->main.load();
+
+ guard->assign(0, pm);
+ guard->assign(1, m);
+
+ if (contractParent(parent, currentNode, pm, m, level, hash)) {
+ return LOOKUP_RESTART;
+ }
+
+ Node *nextNode = m->getSubNode(extractHashPartByLevel(hash, level));
+ if (nextNode == nullptr) {
+ return LOOKUP_NOT_FOUND;
+ } else if (nextNode->type == SNODE) {
+ if (static_cast(nextNode)->contains(key)) {
+ return createSuccessfulLookupResult(static_cast(nextNode)->getValue(key));
+ }
+ return LOOKUP_NOT_FOUND;
+ } else if (nextNode->type == INODE) {
+ return lookup(static_cast(nextNode), currentNode, key, hash, level + 1, guard);
+ }
+ }
+
+ RemoveResult
+ remove(INode *currentNode, INode *parent, key_type key, uint64_t hash, uint8_t level,
+ typename gc::template GuardArray<2> *guard) {
+ CNode *pm = parent ? parent->main.load() : nullptr;
+ CNode *m = currentNode->main.load();
+
+ guard->assign(0, pm);
+ guard->assign(1, m);
+
+ if (contractParent(parent, currentNode, pm, m, level, hash)) {
+ return REMOVE_RESTART;
+ }
+
+ auto *updated = new CNode(*m);
+ uint8_t path = extractHashPartByLevel(hash, level);
+ Node *subNode = updated->getSubNode(path);
+ guard->assign(0, subNode);
+ RemoveResult res{};
+
+ if (subNode == nullptr) {
+ delete updated;
+ return REMOVE_NOT_FOUND;
+ } else if (subNode->type == SNODE) {
+ auto *updatedSubNode = new SNode(*static_cast(subNode));
+ if (updatedSubNode->contains(key)) {
+ V delVal = updatedSubNode->getValue(key);
+ transformToWithDeletedKey(updated, updatedSubNode, key, path);
+ updated->isTomb = isTombed(updated, root, currentNode);
+ res = (currentNode->main.compare_exchange_strong(m, updated))
+ ? createSuccessfulRemoveResult(delVal) : REMOVE_RESTART;
+ if (res == REMOVE_RESTART) {
+ if (updated->getSubNode(path) != nullptr) {
+ delete subNode;
+ }
+ delete updated;
+ } else {
+ gc::template retire(m, &dispose);
+ gc::template retire(subNode, &dispose);
+ if (updated->getSubNode(path) == nullptr) {
+ delete updatedSubNode;
+ }
+
+ contractParent(parent, currentNode, pm, updated, level, hash);
+ }
+ return res;
+ } else {
+ delete updated;
+ delete updatedSubNode;
+ return REMOVE_NOT_FOUND;
+ }
+ } else if (subNode->type == INODE) {
+ res = remove(static_cast(subNode), currentNode, key, hash, level + 1, guard);
+ if (res == REMOVE_RESTART || res == REMOVE_NOT_FOUND) {
+ delete updated;
+ return res;
+ }
+ contractParent(parent, currentNode, pm, updated, level, hash);
+ delete updated;
+
+ return res;
+ }
+ }
+
+ InsertResult insert(INode *currentNode, INode *parent, SNode *newNode, uint8_t level,
+ typename gc::template GuardArray<2> *guard) {
+ CNode *pm = parent ? parent->main.load() : nullptr;
+ CNode *m = currentNode->main.load();
+
+ guard->assign(0, pm);
+ guard->assign(1, m);
+
+ if (contractParent(parent, currentNode, pm, m, level, newNode->getHash())) {
+ return INSERT_RESTART;
+ }
+
+ guard->clear(0);
+
+ auto *updated = new CNode(*m);
+ uint8_t path = extractHashPartByLevel(newNode->getHash(), level);
+ InsertResult res{};
+
+ Node *subNode = updated->getSubNode(path);
+ guard->assign(0, subNode);
+
+ if (subNode == nullptr) {
+ transformToWithInsertedChild(updated, newNode, path);
+ updated->isTomb = isTombed(updated, root, currentNode);
+ res = currentNode->main.compare_exchange_strong(m, updated) ? INSERT_SUCCESSFUL
+ : INSERT_RESTART;
+ if (res == INSERT_SUCCESSFUL) {
+ gc::template retire(m, &dispose);
+ } else {
+ delete updated;
+ }
+ return res;
+ } else if (subNode->type == SNODE) {
+ auto *updatedSubNode = new SNode(*static_cast(subNode));
+ if (updatedSubNode->contains(newNode)) {
+ transformToWithReplacedPair(updated, updatedSubNode, newNode, path);
+ updated->isTomb = isTombed(updated, root, currentNode);
+ res = currentNode->main.compare_exchange_strong(m, updated) ? INSERT_SUCCESSFUL
+ : INSERT_RESTART;
+ if (res == INSERT_SUCCESSFUL) {
+ gc::template retire(m, &dispose);
+ gc::template retire(subNode, &dispose);
+ guard->clear(1);
+ } else {
+ delete updated;
+ }
+ delete updatedSubNode;
+ return res;
+ } else if (level == MAX_LEVEL_COUNT) {
+ transformToWithMergedChild(updated, updatedSubNode, newNode, path);
+ updated->isTomb = isTombed(updated, root, currentNode);
+ res = currentNode->main.compare_exchange_strong(m, updated) ? INSERT_SUCCESSFUL
+ : INSERT_RESTART;
+ if (res == INSERT_SUCCESSFUL) {
+ gc::template retire(m, &dispose);
+ gc::template retire(subNode, &dispose);
+ guard->clear(1);
+ } else {
+ delete updated;
+ }
+ delete updatedSubNode;
+ return res;
+ } else {
+ transformToWithDownChild(updated, newNode, updatedSubNode, level, path);
+ updated->isTomb = isTombed(updated, root, currentNode);
+ res = currentNode->main.compare_exchange_strong(m, updated) ? INSERT_SUCCESSFUL
+ : INSERT_RESTART;
+ if (res == INSERT_SUCCESSFUL) {
+ gc::template retire(m, &dispose);
+ gc::template retire(subNode, &dispose);
+ guard->clear(1);
+ } else {
+ dealloc(updated, updatedSubNode->getHash(), level);
+ }
+ return res;
+ }
+ } else if (subNode->type == INODE) {
+ delete updated;
+ return insert(static_cast(subNode), currentNode, newNode, level + 1, guard);
+ }
+ }
+ };
+
+
+ }
+
+
+} // namespace cds::container
+
+#endif // #ifndef CDSLIB_CONTAINER_HAMT_H
diff --git a/cds/container/optimistic_queue.h b/cds/container/optimistic_queue.h
index de96526a1..f26231364 100644
--- a/cds/container/optimistic_queue.h
+++ b/cds/container/optimistic_queue.h
@@ -260,7 +260,7 @@ namespace cds { namespace container {
return false;
}
- /// Enqueues \p val value into the queue, move semntics
+ /// Enqueues \p val value into the queue, move semantics
bool enqueue( value_type&& val )
{
scoped_node_ptr p( alloc_node_move( std::move( val )));
diff --git a/cds/gc/details/retired_ptr.h b/cds/gc/details/retired_ptr.h
index 57e764c03..9854b284f 100644
--- a/cds/gc/details/retired_ptr.h
+++ b/cds/gc/details/retired_ptr.h
@@ -9,113 +9,98 @@
#include
//@cond
-namespace cds { namespace gc {
- /// Common implementation details for any GC
- namespace details {
-
- /// Pointer to function to free (destruct and deallocate) retired pointer of specific type
- typedef void (* free_retired_ptr_func )( void * );
-
- /// Retired pointer
- /**
- Pointer to an object that is ready to delete.
- */
- struct retired_ptr {
- /// Pointer type
- typedef void * pointer;
-
- union {
- pointer m_p; ///< retired pointer
- uintptr_t m_n;
+namespace cds {
+ namespace gc {
+ /// Common implementation details for any GC
+ namespace details {
+
+ /// Pointer to function to free (destruct and deallocate) retired pointer of specific type
+ typedef void (*free_retired_ptr_func )(void *);
+
+ /// Retired pointer
+ /**
+ Pointer to an object that is ready to delete.
+ */
+ struct retired_ptr {
+ /// Pointer type
+ typedef void *pointer;
+
+ union {
+ pointer m_p; ///< retired pointer
+ uintptr_t m_n;
+ };
+ free_retired_ptr_func m_funcFree; ///< pointer to the destructor function
+
+ /// Comparison of two retired pointers
+ static bool less(const retired_ptr &p1, const retired_ptr &p2) noexcept {
+ return p1.m_p < p2.m_p;
+ }
+
+ /// Default ctor initializes pointer to \p nullptr
+ retired_ptr() noexcept
+ : m_p(nullptr), m_funcFree(nullptr) {}
+
+ /// Copy ctor
+ retired_ptr(retired_ptr const &rp) noexcept
+ : m_p(rp.m_p), m_funcFree(rp.m_funcFree) {}
+
+ /// Ctor
+ retired_ptr(pointer p, free_retired_ptr_func func) noexcept
+ : m_p(p), m_funcFree(func) {}
+
+ /// Typecasting ctor
+ template
+ retired_ptr(T *p, free_retired_ptr_func func) noexcept
+ : m_p(reinterpret_cast(p)), m_funcFree(func) {}
+
+ /// Assignment operator
+ retired_ptr &operator=(retired_ptr const &s) noexcept {
+ m_p = s.m_p;
+ m_funcFree = s.m_funcFree;
+ return *this;
+ }
+
+ /// Invokes destructor function for the pointer
+ void free() {
+ assert(m_funcFree);
+ assert(m_p);
+ m_funcFree(m_p);
+
+ CDS_STRICT_DO(clear());
+ }
+
+ /// Checks if the retired pointer is not empty
+ explicit operator bool() const noexcept {
+ return m_p != nullptr;
+ }
+
+ /// Clears retired pointer without \p free() call
+ void clear() {
+ m_p = nullptr;
+ m_funcFree = nullptr;
+ }
};
- free_retired_ptr_func m_funcFree; ///< pointer to the destructor function
- /// Comparison of two retired pointers
- static bool less( const retired_ptr& p1, const retired_ptr& p2 ) noexcept
- {
- return p1.m_p < p2.m_p;
+ static inline bool operator<(const retired_ptr &p1, const retired_ptr &p2) noexcept {
+ return retired_ptr::less(p1, p2);
}
- /// Default ctor initializes pointer to \p nullptr
- retired_ptr() noexcept
- : m_p( nullptr )
- , m_funcFree( nullptr )
- {}
-
- /// Copy ctor
- retired_ptr( retired_ptr const& rp ) noexcept
- : m_p( rp.m_p )
- , m_funcFree( rp.m_funcFree )
- {}
-
- /// Ctor
- retired_ptr( pointer p, free_retired_ptr_func func ) noexcept
- : m_p( p )
- , m_funcFree( func )
- {}
-
- /// Typecasting ctor
- template
- retired_ptr( T* p, free_retired_ptr_func func) noexcept
- : m_p( reinterpret_cast(p))
- , m_funcFree( func )
- {}
-
- /// Assignment operator
- retired_ptr& operator =( retired_ptr const& s) noexcept
- {
- m_p = s.m_p;
- m_funcFree = s.m_funcFree;
- return *this;
+ static inline bool operator==(const retired_ptr &p1, const retired_ptr &p2) noexcept {
+ return p1.m_p == p2.m_p;
}
- /// Invokes destructor function for the pointer
- void free()
- {
- assert( m_funcFree );
- assert( m_p );
- m_funcFree( m_p );
-
- CDS_STRICT_DO( clear());
- }
-
- /// Checks if the retired pointer is not empty
- explicit operator bool() const noexcept
- {
- return m_p != nullptr;
- }
-
- /// Clears retired pointer without \p free() call
- void clear()
- {
- m_p = nullptr;
- m_funcFree = nullptr;
+ static inline bool operator!=(const retired_ptr &p1, const retired_ptr &p2) noexcept {
+ return !(p1 == p2);
}
- };
+ } // namespace details
- static inline bool operator <( const retired_ptr& p1, const retired_ptr& p2 ) noexcept
- {
- return retired_ptr::less( p1, p2 );
+ template
+ static inline cds::gc::details::retired_ptr make_retired_ptr(T *p) {
+ return cds::gc::details::retired_ptr(p, +[](void *p) { Func()(static_cast( p )); });
}
- static inline bool operator ==( const retired_ptr& p1, const retired_ptr& p2 ) noexcept
- {
- return p1.m_p == p2.m_p;
- }
-
- static inline bool operator !=( const retired_ptr& p1, const retired_ptr& p2 ) noexcept
- {
- return !(p1 == p2);
- }
- } // namespace details
-
- template
- static inline cds::gc::details::retired_ptr make_retired_ptr( T * p )
- {
- return cds::gc::details::retired_ptr( p, +[]( void* p ) { Func()( static_cast( p )); });
}
-
-}} // namespace cds::gc
+} // namespace cds::gc
//@endcond
#endif // #ifndef CDSLIB_GC_DETAILS_RETIRED_PTR_H
diff --git a/cds/gc/hp.h b/cds/gc/hp.h
index c8cf6fd62..9db48e768 100644
--- a/cds/gc/hp.h
+++ b/cds/gc/hp.h
@@ -59,1196 +59,1128 @@ namespace cds {
} // namespace cds
-namespace cds { namespace gc {
- /// Hazard pointer implementation details
- namespace hp {
- namespace details {
- using namespace cds::gc::hp::common;
-
- /// \p smr::scan() strategy
- enum scan_type {
- classic, ///< classic scan as described in Michael's works (see smr::classic_scan())
- inplace ///< inplace scan without allocation (see smr::inplace_scan())
- };
-
- //@cond
- /// Hazard Pointer SMR (Safe Memory Reclamation)
- class basic_smr {
- template
- friend class generic_smr;
- struct thread_record: thread_data
- {
- // next hazard ptr record in list
- thread_record* next_ = nullptr;
- // Owner thread_record; nullptr - the record is free (not owned)
- atomics::atomic owner_rec_;
- // true if record is free (not owned)
- atomics::atomic free_{ false };
-
- thread_record( guard* guards, size_t guard_count, retired_ptr* retired_arr, size_t retired_capacity )
- : thread_data( guards, guard_count, retired_arr, retired_capacity ), owner_rec_(this)
- {}
+namespace cds {
+ namespace gc {
+ /// Hazard pointer implementation details
+ namespace hp {
+ namespace details {
+ using namespace cds::gc::hp::common;
+
+ /// \p smr::scan() strategy
+ enum scan_type {
+ classic, ///< classic scan as described in Michael's works (see smr::classic_scan())
+ inplace ///< inplace scan without allocation (see smr::inplace_scan())
};
- public:
- /// Returns the instance of Hazard Pointer \ref basic_smr
- static basic_smr &instance() {
+ //@cond
+ /// Hazard Pointer SMR (Safe Memory Reclamation)
+ class basic_smr {
+ template
+ friend
+ class generic_smr;
+
+ struct thread_record : thread_data {
+ // next hazard ptr record in list
+ thread_record *next_ = nullptr;
+ // Owner thread_record; nullptr - the record is free (not owned)
+ atomics::atomic owner_rec_;
+ // true if record is free (not owned)
+ atomics::atomic free_{false};
+
+ thread_record(guard *guards, size_t guard_count, retired_ptr *retired_arr,
+ size_t retired_capacity)
+ : thread_data(guards, guard_count, retired_arr, retired_capacity), owner_rec_(this) {}
+ };
+
+ public:
+ /// Returns the instance of Hazard Pointer \ref basic_smr
+ static basic_smr &instance() {
# ifdef CDS_DISABLE_SMR_EXCEPTION
- assert( instance_ != nullptr );
+ assert( instance_ != nullptr );
# else
- if (!instance_)
- CDS_THROW_EXCEPTION(not_initialized());
+ if (!instance_)
+ CDS_THROW_EXCEPTION(not_initialized());
# endif
- return *instance_;
- }
-
- /// Creates Hazard Pointer SMR singleton
- /**
- Hazard Pointer SMR is a singleton. If HP instance is not initialized then the function creates the instance.
- Otherwise it does nothing.
+ return *instance_;
+ }
- The Michael's HP reclamation schema depends of three parameters:
- - \p nHazardPtrCount - HP pointer count per thread. Usually it is small number (2-4) depending from
- the data structure algorithms. By default, if \p nHazardPtrCount = 0,
- the function uses maximum of HP count for CDS library
- - \p nMaxThreadCount - max count of thread with using HP GC in your application. Default is 100.
- - \p nMaxRetiredPtrCount - capacity of array of retired pointers for each thread. Must be greater than
- nHazardPtrCount * nMaxThreadCount
- Default is 2 * nHazardPtrCount * nMaxThreadCount
- */
- static CDS_EXPORT_API void construct(
- size_t nHazardPtrCount = 0, ///< Hazard pointer count per thread
- size_t nMaxThreadCount = 0, ///< Max count of simultaneous working thread in your application
- size_t nMaxRetiredPtrCount = 0, ///< Capacity of the array of retired objects for the thread
- scan_type nScanType = inplace ///< Scan type (see \ref scan_type enum)
- );
+ /// Creates Hazard Pointer SMR singleton
+ /**
+ Hazard Pointer SMR is a singleton. If HP instance is not initialized then the function creates the instance.
+ Otherwise it does nothing.
+
+ The Michael's HP reclamation schema depends of three parameters:
+ - \p nHazardPtrCount - HP pointer count per thread. Usually it is small number (2-4) depending from
+ the data structure algorithms. By default, if \p nHazardPtrCount = 0,
+ the function uses maximum of HP count for CDS library
+ - \p nMaxThreadCount - max count of thread with using HP GC in your application. Default is 100.
+ - \p nMaxRetiredPtrCount - capacity of array of retired pointers for each thread. Must be greater than
+ nHazardPtrCount * nMaxThreadCount
+ Default is 2 * nHazardPtrCount * nMaxThreadCount
+ */
+ static CDS_EXPORT_API void construct(
+ size_t nHazardPtrCount = 0, ///< Hazard pointer count per thread
+ size_t nMaxThreadCount = 0, ///< Max count of simultaneous working thread in your application
+ size_t nMaxRetiredPtrCount = 0, ///< Capacity of the array of retired objects for the thread
+ scan_type nScanType = inplace ///< Scan type (see \ref scan_type enum)
+ );
- // for back-copatibility
- static void Construct(
- size_t nHazardPtrCount = 0, ///< Hazard pointer count per thread
- size_t nMaxThreadCount = 0, ///< Max count of simultaneous working thread in your application
- size_t nMaxRetiredPtrCount = 0, ///< Capacity of the array of retired objects for the thread
- scan_type nScanType = inplace ///< Scan type (see \ref scan_type enum)
- ) {
- construct(nHazardPtrCount, nMaxThreadCount, nMaxRetiredPtrCount, nScanType);
- }
+ // for back-copatibility
+ static void Construct(
+ size_t nHazardPtrCount = 0, ///< Hazard pointer count per thread
+ size_t nMaxThreadCount = 0, ///< Max count of simultaneous working thread in your application
+ size_t nMaxRetiredPtrCount = 0, ///< Capacity of the array of retired objects for the thread
+ scan_type nScanType = inplace ///< Scan type (see \ref scan_type enum)
+ ) {
+ construct(nHazardPtrCount, nMaxThreadCount, nMaxRetiredPtrCount, nScanType);
+ }
- /// Destroys global instance of \ref basic_smr
- /**
- The parameter \p bDetachAll should be used carefully: if its value is \p true,
- then the object destroyed automatically detaches all attached threads. This feature
- can be useful when you have no control over the thread termination, for example,
- when \p libcds is injected into existing external thread.
- */
- static CDS_EXPORT_API void destruct(
- bool bDetachAll = false ///< Detach all threads
- );
+ /// Destroys global instance of \ref basic_smr
+ /**
+ The parameter \p bDetachAll should be used carefully: if its value is \p true,
+ then the object destroyed automatically detaches all attached threads. This feature
+ can be useful when you have no control over the thread termination, for example,
+ when \p libcds is injected into existing external thread.
+ */
+ static CDS_EXPORT_API void destruct(
+ bool bDetachAll = false ///< Detach all threads
+ );
- // for back-compatibility
- static void Destruct(
- bool bDetachAll = false ///< Detach all threads
- ) {
- destruct(bDetachAll);
- }
+ // for back-compatibility
+ static void Destruct(
+ bool bDetachAll = false ///< Detach all threads
+ ) {
+ destruct(bDetachAll);
+ }
- /// Checks if global SMR object is constructed and may be used
- static bool isUsed() noexcept {
- return instance_ != nullptr;
- }
+ /// Checks if global SMR object is constructed and may be used
+ static bool isUsed() noexcept {
+ return instance_ != nullptr;
+ }
- /// Set memory management functions
- /**
- @note This function may be called BEFORE creating an instance
- of Hazard Pointer SMR
+ /// Set memory management functions
+ /**
+ @note This function may be called BEFORE creating an instance
+ of Hazard Pointer SMR
+
+ SMR object allocates some memory for thread-specific data and for
+ creating SMR object.
+ By default, a standard \p new and \p delete operators are used for this.
+ */
+ static CDS_EXPORT_API void set_memory_allocator(
+ void *( *alloc_func )(size_t size),
+ void (*free_func )(void *p)
+ );
- SMR object allocates some memory for thread-specific data and for
- creating SMR object.
- By default, a standard \p new and \p delete operators are used for this.
- */
- static CDS_EXPORT_API void set_memory_allocator(
- void *( *alloc_func )(size_t size),
- void (*free_func )(void *p)
- );
-
- /// Returns max Hazard Pointer count per thread
- size_t get_hazard_ptr_count() const noexcept {
- return hazard_ptr_count_;
- }
+ /// Returns max Hazard Pointer count per thread
+ size_t get_hazard_ptr_count() const noexcept {
+ return hazard_ptr_count_;
+ }
- /// Returns max thread count
- size_t get_max_thread_count() const noexcept {
- return max_thread_count_;
- }
+ /// Returns max thread count
+ size_t get_max_thread_count() const noexcept {
+ return max_thread_count_;
+ }
- /// Returns max size of retired objects array
- size_t get_max_retired_ptr_count() const noexcept {
- return max_retired_ptr_count_;
- }
+ /// Returns max size of retired objects array
+ size_t get_max_retired_ptr_count() const noexcept {
+ return max_retired_ptr_count_;
+ }
- /// Get current scan strategy
- scan_type get_scan_type() const {
- return scan_type_;
- }
+ /// Get current scan strategy
+ scan_type get_scan_type() const {
+ return scan_type_;
+ }
- /// Checks that required hazard pointer count \p nRequiredCount is less or equal then max hazard pointer count
- /**
- If nRequiredCount > get_hazard_ptr_count() then the exception \p not_enough_hazard_ptr is thrown
- */
- static void check_hazard_ptr_count(size_t nRequiredCount) {
- if (instance().get_hazard_ptr_count() < nRequiredCount) {
+ /// Checks that required hazard pointer count \p nRequiredCount is less or equal then max hazard pointer count
+ /**
+ If nRequiredCount > get_hazard_ptr_count() then the exception \p not_enough_hazard_ptr is thrown
+ */
+ static void check_hazard_ptr_count(size_t nRequiredCount) {
+ if (instance().get_hazard_ptr_count() < nRequiredCount) {
# ifdef CDS_DISABLE_SMR_EXCEPTION
- assert( false ); // not enough hazard ptr
+ assert( false ); // not enough hazard ptr
# else
- CDS_THROW_EXCEPTION(not_enough_hazard_ptr());
+ CDS_THROW_EXCEPTION(not_enough_hazard_ptr());
# endif
+ }
}
- }
-
- /// Get internal statistics
- CDS_EXPORT_API void statistics(stat &st);
- public: // for internal use only
- /// The main garbage collecting function
- /**
- This function is called internally when upper bound of thread's list of reclaimed pointers
- is reached.
+ /// Get internal statistics
+ CDS_EXPORT_API void statistics(stat &st);
- There are the following scan algorithm:
- - \ref hzp_gc_classic_scan "classic_scan" allocates memory for internal use
- - \ref hzp_gc_inplace_scan "inplace_scan" does not allocate any memory
+ public: // for internal use only
+ /// The main garbage collecting function
+ /**
+ This function is called internally when upper bound of thread's list of reclaimed pointers
+ is reached.
- Use \p set_scan_type() member function to setup appropriate scan algorithm.
- */
- void scan(thread_data *pRec) {
- pRec->sync();
- (this->*scan_func_)(pRec);
- }
+ There are the following scan algorithm:
+ - \ref hzp_gc_classic_scan "classic_scan" allocates memory for internal use
+ - \ref hzp_gc_inplace_scan "inplace_scan" does not allocate any memory
- /// Helper scan routine
- /**
- The function guarantees that every node that is eligible for reuse is eventually freed, barring
- thread failures. To do so, after executing \p scan(), a thread executes a \p %help_scan(),
- where it checks every HP record. If an HP record is inactive, the thread moves all "lost" reclaimed pointers
- to thread's list of reclaimed pointers.
+ Use \p set_scan_type() member function to setup appropriate scan algorithm.
+ */
+ void scan(thread_data *pRec) {
+ pRec->sync();
+ (this->*scan_func_)(pRec);
+ }
- The function is called internally by \p scan().
- */
- CDS_EXPORT_API void help_scan(thread_data *pThis);
+ /// Helper scan routine
+ /**
+ The function guarantees that every node that is eligible for reuse is eventually freed, barring
+ thread failures. To do so, after executing \p scan(), a thread executes a \p %help_scan(),
+ where it checks every HP record. If an HP record is inactive, the thread moves all "lost" reclaimed pointers
+ to thread's list of reclaimed pointers.
+
+ The function is called internally by \p scan().
+ */
+ CDS_EXPORT_API void help_scan(thread_data *pThis);
+
+ private:
+ CDS_EXPORT_API basic_smr(
+ size_t nHazardPtrCount, ///< Hazard pointer count per thread
+ size_t nMaxThreadCount, ///< Max count of simultaneous working thread in your application
+ size_t nMaxRetiredPtrCount, ///< Capacity of the array of retired objects for the thread
+ scan_type nScanType ///< Scan type (see \ref scan_type enum)
+ );
- private:
- CDS_EXPORT_API basic_smr(
- size_t nHazardPtrCount, ///< Hazard pointer count per thread
- size_t nMaxThreadCount, ///< Max count of simultaneous working thread in your application
- size_t nMaxRetiredPtrCount, ///< Capacity of the array of retired objects for the thread
- scan_type nScanType ///< Scan type (see \ref scan_type enum)
- );
+ CDS_EXPORT_API ~basic_smr();
- CDS_EXPORT_API ~basic_smr();
+ CDS_EXPORT_API void detach_all_thread();
- CDS_EXPORT_API void detach_all_thread();
+ /// Classic scan algorithm
+ /** @anchor hzp_gc_classic_scan
+ Classical scan algorithm as described in Michael's paper.
- /// Classic scan algorithm
- /** @anchor hzp_gc_classic_scan
- Classical scan algorithm as described in Michael's paper.
+ A scan includes four stages. The first stage involves scanning the array HP for non-null values.
+ Whenever a non-null value is encountered, it is inserted in a local list of currently protected pointer.
+ Only stage 1 accesses shared variables. The following stages operate only on private variables.
- A scan includes four stages. The first stage involves scanning the array HP for non-null values.
- Whenever a non-null value is encountered, it is inserted in a local list of currently protected pointer.
- Only stage 1 accesses shared variables. The following stages operate only on private variables.
+ The second stage of a scan involves sorting local list of protected pointers to allow
+ binary search in the third stage.
- The second stage of a scan involves sorting local list of protected pointers to allow
- binary search in the third stage.
+ The third stage of a scan involves checking each reclaimed node
+ against the pointers in local list of protected pointers. If the binary search yields
+ no match, the node is freed. Otherwise, it cannot be deleted now and must kept in thread's list
+ of reclaimed pointers.
- The third stage of a scan involves checking each reclaimed node
- against the pointers in local list of protected pointers. If the binary search yields
- no match, the node is freed. Otherwise, it cannot be deleted now and must kept in thread's list
- of reclaimed pointers.
+ The forth stage prepares new thread's private list of reclaimed pointers
+ that could not be freed during the current scan, where they remain until the next scan.
- The forth stage prepares new thread's private list of reclaimed pointers
- that could not be freed during the current scan, where they remain until the next scan.
+ This algorithm allocates memory for internal HP array.
- This algorithm allocates memory for internal HP array.
+ This function is called internally by ThreadGC object when upper bound of thread's list of reclaimed pointers
+ is reached.
+ */
+ CDS_EXPORT_API void classic_scan(thread_data *pRec);
- This function is called internally by ThreadGC object when upper bound of thread's list of reclaimed pointers
- is reached.
- */
- CDS_EXPORT_API void classic_scan(thread_data *pRec);
+ /// In-place scan algorithm
+ /** @anchor hzp_gc_inplace_scan
+ Unlike the \p classic_scan() algorithm, \p %inplace_scan() does not allocate any memory.
+ All operations are performed in-place.
+ */
+ CDS_EXPORT_API void inplace_scan(thread_data *pRec);
- /// In-place scan algorithm
- /** @anchor hzp_gc_inplace_scan
- Unlike the \p classic_scan() algorithm, \p %inplace_scan() does not allocate any memory.
- All operations are performed in-place.
- */
- CDS_EXPORT_API void inplace_scan(thread_data *pRec);
+ private:
+ CDS_EXPORT_API thread_record *create_thread_data();
- private:
- CDS_EXPORT_API thread_record *create_thread_data();
+ static CDS_EXPORT_API void destroy_thread_data(thread_record *pRec);
- static CDS_EXPORT_API void destroy_thread_data(thread_record *pRec);
+ /// Allocates Hazard Pointer SMR thread private data
+ CDS_EXPORT_API thread_record *alloc_thread_data();
- /// Allocates Hazard Pointer SMR thread private data
- CDS_EXPORT_API thread_record *alloc_thread_data();
+ /// Free HP SMR thread-private data
+ CDS_EXPORT_API void free_thread_data(thread_record *pRec, bool callHelpScan);
- /// Free HP SMR thread-private data
- CDS_EXPORT_API void free_thread_data(thread_record *pRec, bool callHelpScan);
+ private:
+ static CDS_EXPORT_API basic_smr *instance_;
- private:
- static CDS_EXPORT_API basic_smr *instance_;
+ atomics::atomic thread_list_; ///< Head of thread list
- atomics::atomic thread_list_; ///< Head of thread list
+ size_t const hazard_ptr_count_; ///< max count of thread's hazard pointer
+ size_t const max_thread_count_; ///< max count of thread
+ size_t const max_retired_ptr_count_; ///< max count of retired ptr per thread
+ scan_type const scan_type_; ///< scan type (see \ref scan_type enum)
+ void ( basic_smr::*scan_func_ )(thread_data *pRec);
+ };
+ //@endcond
- size_t const hazard_ptr_count_; ///< max count of thread's hazard pointer
- size_t const max_thread_count_; ///< max count of thread
- size_t const max_retired_ptr_count_; ///< max count of retired ptr per thread
- scan_type const scan_type_; ///< scan type (see \ref scan_type enum)
- void ( basic_smr::*scan_func_ )(thread_data *pRec);
- };
- //@endcond
+ template
+ class generic_smr : public basic_smr {
+ public:
- template
- class generic_smr : public basic_smr
- {
- public:
+ /// TLS manager type
+ typedef TLSManager tls_manager;
- /// TLS manager type
- typedef TLSManager tls_manager;
-
- /// Returns thread-local data for the current thread
- static thread_data* tls()
- {
- thread_data* data = tls_manager::getTLS();
- assert( data != nullptr );
- return data;
- }
+ /// Returns thread-local data for the current thread
+ static thread_data *tls() {
+ thread_data *data = tls_manager::getTLS();
+ assert(data != nullptr);
+ return data;
+ }
- /// Attach current thread to HP
- static void attach_thread()
- {
- if ( !tls_manager::getTLS() )
- tls_manager::setTLS(instance().alloc_thread_data());
- }
+ /// Attach current thread to HP
+ static void attach_thread() {
+ if (!tls_manager::getTLS())
+ tls_manager::setTLS(instance().alloc_thread_data());
+ }
- /// Detach current thread from HP
- static void detach_thread()
- {
- thread_data* rec = tls_manager::getTLS();
- if ( rec ) {
- tls_manager::setTLS(nullptr);
- instance().free_thread_data(static_cast( rec ), true );
+ /// Detach current thread from HP
+ static void detach_thread() {
+ thread_data *rec = tls_manager::getTLS();
+ if (rec) {
+ tls_manager::setTLS(nullptr);
+ instance().free_thread_data(static_cast( rec ), true);
+ }
}
- }
- };
+ };
- } // namespace details
+ } // namespace details
- //@cond
- // for backward compatibility
- typedef details::generic_smr smr;
- typedef smr GarbageCollector;
- //@endcond
+ //@cond
+ // for backward compatibility
+ typedef details::generic_smr smr;
+ typedef smr GarbageCollector;
+ //@endcond
- template
- using custom_smr = details::generic_smr;
- } // namespace cds::gc::hp
+ template
+ using custom_smr = details::generic_smr;
+ } // namespace cds::gc::hp
- namespace details {
- /// Hazard Pointer SMR (Safe Memory Reclamation)
- /** @ingroup cds_garbage_collector
+ namespace details {
+ /// Hazard Pointer SMR (Safe Memory Reclamation)
+ /** @ingroup cds_garbage_collector
- Implementation of classic Hazard Pointer SMR
+ Implementation of classic Hazard Pointer SMR
- Sources:
- - [2002] Maged M.Michael "Safe memory reclamation for dynamic lock-freeobjects using atomic reads and writes"
- - [2003] Maged M.Michael "Hazard Pointers: Safe memory reclamation for lock-free objects"
- - [2004] Andrei Alexandrescy, Maged Michael "Lock-free Data Structures with Hazard Pointers"
+ Sources:
+ - [2002] Maged M.Michael "Safe memory reclamation for dynamic lock-freeobjects using atomic reads and writes"
+ - [2003] Maged M.Michael "Hazard Pointers: Safe memory reclamation for lock-free objects"
+ - [2004] Andrei Alexandrescy, Maged Michael "Lock-free Data Structures with Hazard Pointers"
- Hazard Pointer SMR is a singleton. The main user-level part of Hazard Pointer schema is
- \p %cds::gc::HP class and its nested classes. Before use any HP-related class you must initialize \p %HP
- by contructing \p %cds::gc::HP object in beginning of your \p main().
- See \ref cds_how_to_use "How to use" section for details how to apply SMR schema.
- */
- template
- class generic_HP
- {
- public:
- /// TLS manager type
- using tls_manager = TLSManager;
+ Hazard Pointer SMR is a singleton. The main user-level part of Hazard Pointer schema is
+ \p %cds::gc::HP class and its nested classes. Before use any HP-related class you must initialize \p %HP
+ by contructing \p %cds::gc::HP object in beginning of your \p main().
+ See \ref cds_how_to_use "How to use" section for details how to apply SMR schema.
+ */
+ template
+ class generic_HP {
+ public:
+ /// TLS manager type
+ using tls_manager = TLSManager;
- private:
- //@cond
- using hp_implementation = hp::details::generic_smr;
- //@endcond
+ private:
+ //@cond
+ using hp_implementation = hp::details::generic_smr;
+ //@endcond
- public:
- /// Native guarded pointer type
- typedef hp::details::hazard_ptr guarded_pointer;
+ public:
+ /// Native guarded pointer type
+ typedef hp::details::hazard_ptr guarded_pointer;
- /// Atomic reference
- template using atomic_ref = atomics::atomic;
+ /// Atomic reference
+ template using atomic_ref = atomics::atomic;
- /// Atomic marked pointer
- template using atomic_marked_ptr = atomics::atomic;
+ /// Atomic marked pointer
+ template using atomic_marked_ptr = atomics::atomic;
- /// Atomic type
- template using atomic_type = atomics::atomic;
+ /// Atomic type
+ template using atomic_type = atomics::atomic;
- /// Exception "Not enough Hazard Pointer"
- typedef hp::details::not_enough_hazard_ptr not_enough_hazard_ptr_exception;
+ /// Exception "Not enough Hazard Pointer"
+ typedef hp::details::not_enough_hazard_ptr not_enough_hazard_ptr_exception;
- /// Internal statistics
- typedef hp::details::stat stat;
+ /// Internal statistics
+ typedef hp::details::stat stat;
- /// Hazard Pointer guard
- /**
- A guard is a hazard pointer.
- Additionally, the \p %Guard class manages allocation and deallocation of the hazard pointer.
+ /// Hazard Pointer guard
+ /**
+ A guard is a hazard pointer.
+ Additionally, the \p %Guard class manages allocation and deallocation of the hazard pointer.
- \p %Guard object is movable but not copyable.
+ \p %Guard object is movable but not copyable.
- The guard object can be in two states:
- - unlinked - the guard is not linked with any internal hazard pointer.
- In this state no operation except \p link() and move assignment is supported.
- - linked (default) - the guard allocates an internal hazard pointer and completely operable.
+ The guard object can be in two states:
+ - unlinked - the guard is not linked with any internal hazard pointer.
+ In this state no operation except \p link() and move assignment is supported.
+ - linked (default) - the guard allocates an internal hazard pointer and completely operable.
- Due to performance reason the implementation does not check state of the guard at runtime.
+ Due to performance reason the implementation does not check state of the guard at runtime.
- @warning Move assignment transfers the guard in unlinked state, use with care.
- */
- class Guard
- {
- public:
- /// Default ctor allocates a guard (hazard pointer) from thread-private storage
- /**
- @warning Can throw \p not_enough_hazard_ptr if internal hazard pointer objects are exhausted.
+ @warning Move assignment transfers the guard in unlinked state, use with care.
*/
- Guard()
- : guard_(hp_implementation::tls()->hazards_.alloc())
- {}
-
- /// Initilalizes an unlinked guard i.e. the guard contains no hazard pointer. Used for move semantics support
- explicit Guard( std::nullptr_t ) noexcept
- : guard_( nullptr )
- {}
-
- /// Move ctor - \p src guard becomes unlinked (transfer internal guard ownership)
- Guard( Guard&& src ) noexcept
- : guard_( src.guard_ )
- {
- src.guard_ = nullptr;
- }
+ class Guard {
+ public:
+ /// Default ctor allocates a guard (hazard pointer) from thread-private storage
+ /**
+ @warning Can throw \p not_enough_hazard_ptr if internal hazard pointer objects are exhausted.
+ */
+ Guard()
+ : guard_(hp_implementation::tls()->hazards_.alloc()) {}
+
+ /// Initilalizes an unlinked guard i.e. the guard contains no hazard pointer. Used for move semantics support
+ explicit Guard(std::nullptr_t) noexcept
+ : guard_(nullptr) {}
+
+ /// Move ctor - \p src guard becomes unlinked (transfer internal guard ownership)
+ Guard(Guard &&src) noexcept
+ : guard_(src.guard_) {
+ src.guard_ = nullptr;
+ }
- /// Move assignment: the internal guards are swapped between \p src and \p this
- /**
- @warning \p src will become in unlinked state if \p this was unlinked on entry.
- */
- Guard& operator=( Guard&& src ) noexcept
- {
- std::swap( guard_, src.guard_ );
- return *this;
- }
+ /// Move assignment: the internal guards are swapped between \p src and \p this
+ /**
+ @warning \p src will become in unlinked state if \p this was unlinked on entry.
+ */
+ Guard &operator=(Guard &&src) noexcept {
+ std::swap(guard_, src.guard_);
+ return *this;
+ }
- /// Copy ctor is prohibited - the guard is not copyable
- Guard( Guard const& ) = delete;
+ /// Copy ctor is prohibited - the guard is not copyable
+ Guard(Guard const &) = delete;
- /// Copy assignment is prohibited
- Guard& operator=( Guard const& ) = delete;
+ /// Copy assignment is prohibited
+ Guard &operator=(Guard const &) = delete;
- /// Frees the internal hazard pointer if the guard is in linked state
- ~Guard()
- {
- unlink();
- }
+ /// Frees the internal hazard pointer if the guard is in linked state
+ ~Guard() {
+ unlink();
+ }
- /// Checks if the guard object linked with any internal hazard pointer
- bool is_linked() const
- {
- return guard_ != nullptr;
- }
+ /// Checks if the guard object linked with any internal hazard pointer
+ bool is_linked() const {
+ return guard_ != nullptr;
+ }
- /// Links the guard with internal hazard pointer if the guard is in unlinked state
- /**
- @warning Can throw \p not_enough_hazard_ptr_exception if internal hazard pointer array is exhausted.
- */
- void link()
- {
- if ( !guard_ )
- guard_ = hp_implementation::tls()->hazards_.alloc();
- }
+ /// Links the guard with internal hazard pointer if the guard is in unlinked state
+ /**
+ @warning Can throw \p not_enough_hazard_ptr_exception if internal hazard pointer array is exhausted.
+ */
+ void link() {
+ if (!guard_)
+ guard_ = hp_implementation::tls()->hazards_.alloc();
+ }
- /// Unlinks the guard from internal hazard pointer; the guard becomes in unlinked state
- void unlink()
- {
- if ( guard_ ) {
- hp_implementation::tls()->hazards_.free( guard_ );
- guard_ = nullptr;
+ /// Unlinks the guard from internal hazard pointer; the guard becomes in unlinked state
+ void unlink() {
+ if (guard_) {
+ hp_implementation::tls()->hazards_.free(guard_);
+ guard_ = nullptr;
+ }
}
- }
- /// Protects a pointer of type \p atomic
- /**
- Return the value of \p toGuard
+ /// Protects a pointer of type \p atomic
+ /**
+ Return the value of \p toGuard
- The function tries to load \p toGuard and to store it
- to the HP slot repeatedly until the guard's value equals \p toGuard
+ The function tries to load \p toGuard and to store it
+ to the HP slot repeatedly until the guard's value equals \p toGuard
- @warning The guard object should be in linked state, otherwise the result is undefined
- */
- template
- T protect( atomics::atomic const& toGuard )
- {
- return protect(toGuard, [](T p) { return p; });
- }
+ @warning The guard object should be in linked state, otherwise the result is undefined
+ */
+ template
+ T protect(atomics::atomic const &toGuard) {
+ return protect(toGuard, [](T p) { return p; });
+ }
- /// Protects a converted pointer of type \p atomic
- /**
- Return the value of \p toGuard
+ /// Protects a converted pointer of type \p atomic
+ /**
+ Return the value of \p toGuard
+
+ The function tries to load \p toGuard and to store result of \p f functor
+ to the HP slot repeatedly until the guard's value equals \p toGuard.
+
+ The function is useful for intrusive containers when \p toGuard is a node pointer
+ that should be converted to a pointer to the value before protecting.
+ The parameter \p f of type Func is a functor that makes this conversion:
+ \code
+ struct functor {
+ value_type * operator()( T * p );
+ };
+ \endcode
+ Actually, the result of f( toGuard.load()) is assigned to the hazard pointer.
+
+ @warning The guard object should be in linked state, otherwise the result is undefined
+ */
+ template
+ T protect(atomics::atomic const &toGuard, Func f) {
+ assert(guard_ != nullptr);
+
+ T pCur = toGuard.load(atomics::memory_order_relaxed);
+ T pRet;
+ do {
+ pRet = pCur;
+ assign(f(pCur));
+ pCur = toGuard.load(atomics::memory_order_acquire);
+ } while (pRet != pCur);
+ return pCur;
+ }
- The function tries to load \p toGuard and to store result of \p f functor
- to the HP slot repeatedly until the guard's value equals \p toGuard.
+ /// Store \p p to the guard
+ /**
+ The function equals to a simple assignment the value \p p to guard, no loop is performed.
+ Can be used for a pointer that cannot be changed concurrently or if the pointer is already
+ guarded by another guard.
- The function is useful for intrusive containers when \p toGuard is a node pointer
- that should be converted to a pointer to the value before protecting.
- The parameter \p f of type Func is a functor that makes this conversion:
- \code
- struct functor {
- value_type * operator()( T * p );
- };
- \endcode
- Actually, the result of f( toGuard.load()) is assigned to the hazard pointer.
+ @warning The guard object should be in linked state, otherwise the result is undefined
+ */
+ template
+ T *assign(T *p) {
+ assert(guard_ != nullptr);
- @warning The guard object should be in linked state, otherwise the result is undefined
- */
- template
- T protect( atomics::atomic const& toGuard, Func f )
- {
- assert( guard_ != nullptr );
-
- T pCur = toGuard.load(atomics::memory_order_relaxed);
- T pRet;
- do {
- pRet = pCur;
- assign( f( pCur ));
- pCur = toGuard.load(atomics::memory_order_acquire);
- } while ( pRet != pCur );
- return pCur;
- }
+ guard_->set(p);
+ hp_implementation::tls()->sync();
+ return p;
+ }
- /// Store \p p to the guard
- /**
- The function equals to a simple assignment the value \p p to guard, no loop is performed.
- Can be used for a pointer that cannot be changed concurrently or if the pointer is already
- guarded by another guard.
+ //@cond
+ std::nullptr_t assign(std::nullptr_t) {
+ assert(guard_ != nullptr);
- @warning The guard object should be in linked state, otherwise the result is undefined
- */
- template
- T * assign( T* p )
- {
- assert( guard_ != nullptr );
-
- guard_->set( p );
- hp_implementation::tls()->sync();
- return p;
- }
+ guard_->clear();
+ return nullptr;
+ }
+ //@endcond
- //@cond
- std::nullptr_t assign( std::nullptr_t )
- {
- assert( guard_ != nullptr );
+ /// Copy a value guarded from \p src guard to \p this guard (valid only in linked state)
+ void copy(Guard const &src) {
+ assign(src.get_native());
+ }
- guard_->clear();
- return nullptr;
- }
- //@endcond
+ /// Store marked pointer \p p to the guard
+ /**
+ The function equals to a simple assignment of p.ptr(), no loop is performed.
+ Can be used for a marked pointer that cannot be changed concurrently or if the marked pointer
+ is already guarded by another guard.
+
+ @warning The guard object should be in linked state, otherwise the result is undefined
+ */
+ template
+ T *assign(cds::details::marked_ptr p) {
+ return assign(p.ptr());
+ }
- /// Copy a value guarded from \p src guard to \p this guard (valid only in linked state)
- void copy( Guard const& src )
- {
- assign( src.get_native());
- }
+ /// Clear value of the guard (valid only in linked state)
+ void clear() {
+ assign(nullptr);
+ }
- /// Store marked pointer \p p to the guard
- /**
- The function equals to a simple assignment of p.ptr(), no loop is performed.
- Can be used for a marked pointer that cannot be changed concurrently or if the marked pointer
- is already guarded by another guard.
+ /// Get the value currently protected (valid only in linked state)
+ template
+ T *get() const {
+ assert(guard_ != nullptr);
+ return guard_->get_as();
+ }
- @warning The guard object should be in linked state, otherwise the result is undefined
- */
- template
- T * assign( cds::details::marked_ptr p )
- {
- return assign( p.ptr());
- }
+ /// Get native hazard pointer stored (valid only in linked state)
+ guarded_pointer get_native() const {
+ assert(guard_ != nullptr);
+ return guard_->get();
+ }
- /// Clear value of the guard (valid only in linked state)
- void clear()
- {
- assign( nullptr );
- }
+ //@cond
+ hp::details::guard *release() {
+ hp::details::guard *g = guard_;
+ guard_ = nullptr;
+ return g;
+ }
- /// Get the value currently protected (valid only in linked state)
- template
- T * get() const
- {
- assert( guard_ != nullptr );
- return guard_->get_as();
- }
+ hp::details::guard *&guard_ref() {
+ return guard_;
+ }
+ //@endcond
- /// Get native hazard pointer stored (valid only in linked state)
- guarded_pointer get_native() const
- {
- assert( guard_ != nullptr );
- return guard_->get();
- }
+ private:
+ //@cond
+ hp::details::guard *guard_;
+ //@endcond
+ };
- //@cond
- hp::details::guard* release()
- {
- hp::details::guard* g = guard_;
- guard_ = nullptr;
- return g;
- }
+ /// Array of Hazard Pointer guards
+ /**
+ The class is intended for allocating an array of hazard pointer guards.
+ Template parameter \p Count defines the size of the array.
+ */
+ template
+ class GuardArray {
+ public:
+ /// Rebind array for other size \p Count2
+ template
+ struct rebind {
+ typedef GuardArray other; ///< rebinding result
+ };
+
+ /// Array capacity
+ static constexpr const size_t c_nCapacity = Count;
+
+ public:
+ /// Default ctor allocates \p Count hazard pointers
+ GuardArray() {
+ hp_implementation::tls()->hazards_.alloc(guards_);
+ }
- hp::details::guard*& guard_ref()
- {
- return guard_;
- }
- //@endcond
+ /// Move ctor is prohibited
+ GuardArray(GuardArray &&) = delete;
- private:
- //@cond
- hp::details::guard* guard_;
- //@endcond
- };
+ /// Move assignment is prohibited
+ GuardArray &operator=(GuardArray &&) = delete;
- /// Array of Hazard Pointer guards
- /**
- The class is intended for allocating an array of hazard pointer guards.
- Template parameter \p Count defines the size of the array.
- */
- template
- class GuardArray
- {
- public:
- /// Rebind array for other size \p Count2
- template
- struct rebind {
- typedef GuardArray other; ///< rebinding result
- };
+ /// Copy ctor is prohibited
+ GuardArray(GuardArray const &) = delete;
- /// Array capacity
- static constexpr const size_t c_nCapacity = Count;
+ /// Copy assignment is prohibited
+ GuardArray &operator=(GuardArray const &) = delete;
- public:
- /// Default ctor allocates \p Count hazard pointers
- GuardArray()
- {
- hp_implementation::tls()->hazards_.alloc( guards_ );
- }
+ /// Frees allocated hazard pointers
+ ~GuardArray() {
+ hp_implementation::tls()->hazards_.free(guards_);
+ }
- /// Move ctor is prohibited
- GuardArray( GuardArray&& ) = delete;
+ /// Protects a pointer of type \p atomic
+ /**
+ Return the value of \p toGuard
- /// Move assignment is prohibited
- GuardArray& operator=( GuardArray&& ) = delete;
+ The function tries to load \p toGuard and to store it
+ to the slot \p nIndex repeatedly until the guard's value equals \p toGuard
+ */
+ template
+ T protect(size_t nIndex, atomics::atomic const &toGuard) {
+ return protect(nIndex, toGuard, [](T p) { return p; });
+ }
- /// Copy ctor is prohibited
- GuardArray( GuardArray const& ) = delete;
+ /// Protects a pointer of type \p atomic
+ /**
+ Return the value of \p toGuard
+
+ The function tries to load \p toGuard and to store it
+ to the slot \p nIndex repeatedly until the guard's value equals \p toGuard
+
+ The function is useful for intrusive containers when \p toGuard is a node pointer
+ that should be converted to a pointer to the value type before guarding.
+ The parameter \p f of type Func is a functor that makes this conversion:
+ \code
+ struct functor {
+ value_type * operator()( T * p );
+ };
+ \endcode
+ Really, the result of f( toGuard.load()) is assigned to the hazard pointer.
+ */
+ template
+ T protect(size_t nIndex, atomics::atomic const &toGuard, Func f) {
+ assert(nIndex < capacity());
+
+ T pRet;
+ do {
+ assign(nIndex, f(pRet = toGuard.load(atomics::memory_order_relaxed)));
+ } while (pRet != toGuard.load(atomics::memory_order_acquire));
+
+ return pRet;
+ }
- /// Copy assignment is prohibited
- GuardArray& operator=( GuardArray const& ) = delete;
+ /// Store \p to the slot \p nIndex
+ /**
+ The function equals to a simple assignment, no loop is performed.
+ */
+ template
+ T *assign(size_t nIndex, T *p) {
+ assert(nIndex < capacity());
- /// Frees allocated hazard pointers
- ~GuardArray()
- {
- hp_implementation::tls()->hazards_.free( guards_ );
- }
+ guards_.set(nIndex, p);
+ hp_implementation::tls()->sync();
+ return p;
+ }
- /// Protects a pointer of type \p atomic
- /**
- Return the value of \p toGuard
+ /// Store marked pointer \p p to the guard
+ /**
+ The function equals to a simple assignment of p.ptr(), no loop is performed.
+ Can be used for a marked pointer that cannot be changed concurrently.
+ */
+ template
+ T *assign(size_t nIndex, cds::details::marked_ptr p) {
+ return assign(nIndex, p.ptr());
+ }
- The function tries to load \p toGuard and to store it
- to the slot \p nIndex repeatedly until the guard's value equals \p toGuard
- */
- template
- T protect( size_t nIndex, atomics::atomic const& toGuard )
- {
- return protect(nIndex, toGuard, [](T p) { return p; });
- }
+ /// Copy guarded value from \p src guard to slot at index \p nIndex
+ void copy(size_t nIndex, Guard const &src) {
+ assign(nIndex, src.get_native());
+ }
- /// Protects a pointer of type \p atomic
- /**
- Return the value of \p toGuard
+ /// Copy guarded value from slot \p nSrcIndex to the slot \p nDestIndex
+ void copy(size_t nDestIndex, size_t nSrcIndex) {
+ assign(nDestIndex, get_native(nSrcIndex));
+ }
+
+ /// Clear value of the slot \p nIndex
+ void clear(size_t nIndex) {
+ guards_.clear(nIndex);
+ }
- The function tries to load \p toGuard and to store it
- to the slot \p nIndex repeatedly until the guard's value equals \p toGuard
+ /// Get current value of slot \p nIndex
+ template
+ T *get(size_t nIndex) const {
+ assert(nIndex < capacity());
+ return guards_[nIndex]->template get_as();
+ }
- The function is useful for intrusive containers when \p toGuard is a node pointer
- that should be converted to a pointer to the value type before guarding.
- The parameter \p f of type Func is a functor that makes this conversion:
- \code
- struct functor {
- value_type * operator()( T * p );
- };
- \endcode
- Really, the result of f( toGuard.load()) is assigned to the hazard pointer.
- */
- template
- T protect( size_t nIndex, atomics::atomic const& toGuard, Func f )
- {
- assert( nIndex < capacity());
+ /// Get native hazard pointer stored
+ guarded_pointer get_native(size_t nIndex) const {
+ assert(nIndex < capacity());
+ return guards_[nIndex]->get();
+ }
- T pRet;
- do {
- assign( nIndex, f( pRet = toGuard.load(atomics::memory_order_relaxed)));
- } while ( pRet != toGuard.load(atomics::memory_order_acquire));
+ //@cond
+ hp::details::guard *release(size_t nIndex) noexcept {
+ return guards_.release(nIndex);
+ }
+ //@endcond
- return pRet;
- }
+ /// Capacity of the guard array
+ static constexpr size_t capacity() {
+ return c_nCapacity;
+ }
- /// Store \p to the slot \p nIndex
- /**
- The function equals to a simple assignment, no loop is performed.
- */
- template
- T * assign( size_t nIndex, T * p )
- {
- assert( nIndex < capacity());
-
- guards_.set( nIndex, p );
- hp_implementation::tls()->sync();
- return p;
- }
+ private:
+ //@cond
+ hp::details::guard_array guards_;
+ //@endcond
+ };
- /// Store marked pointer \p p to the guard
+ /// Guarded pointer
/**
- The function equals to a simple assignment of p.ptr(), no loop is performed.
- Can be used for a marked pointer that cannot be changed concurrently.
+ A guarded pointer is a pair of a pointer and GC's guard.
+ Usually, it is used for returning a pointer to an element of a lock-free container.
+ The guard prevents the pointer to be early disposed (freed) by SMR.
+ After destructing \p %guarded_ptr object the pointer can be disposed (freed) automatically at any time.
+
+ Template arguments:
+ - \p GuardedType - a type which the guard stores
+ - \p ValueType - a value type
+ - \p Cast - a functor for converting GuardedType* to ValueType*. Default is \p void (no casting).
+
+ For intrusive containers, \p GuardedType is the same as \p ValueType and no casting is needed.
+ In such case the \p %guarded_ptr is:
+ @code
+ typedef cds::gc::HP::guarded_ptr< foo > intrusive_guarded_ptr;
+ @endcode
+
+ For standard (non-intrusive) containers \p GuardedType is not the same as \p ValueType and casting is needed.
+ For example:
+ @code
+ struct foo {
+ int const key;
+ std::string value;
+ };
+
+ struct value_accessor {
+ std::string* operator()( foo* pFoo ) const
+ {
+ return &(pFoo->value);
+ }
+ };
+
+ // Guarded ptr
+ typedef cds::gc::HP::guarded_ptr< Foo, std::string, value_accessor > nonintrusive_guarded_ptr;
+ @endcode
+
+ You don't need use this class directly.
+ All set/map container classes from \p libcds declare the typedef for \p %guarded_ptr with appropriate casting functor.
*/
- template
- T * assign( size_t nIndex, cds::details::marked_ptr p )
- {
- return assign( nIndex, p.ptr());
- }
+ template
+ class guarded_ptr {
+ //@cond
+ struct trivial_cast {
+ ValueType *operator()(GuardedType *p) const {
+ return p;
+ }
+ };
+
+ template friend
+ class guarded_ptr;
+ //@endcond
+
+ public:
+ typedef GuardedType guarded_type; ///< Guarded type
+ typedef ValueType value_type; ///< Value type
+
+ /// Functor for casting \p guarded_type to \p value_type
+ typedef typename std::conditional::value, trivial_cast, Cast>::type value_cast;
+
+ public:
+ /// Creates empty guarded pointer
+ guarded_ptr() noexcept
+ : guard_(nullptr) {}
+
+ //@cond
+ explicit guarded_ptr(hp::details::guard *g) noexcept
+ : guard_(g) {}
+
+ /// Initializes guarded pointer with \p p
+ explicit guarded_ptr(guarded_type *p) noexcept
+ : guard_(nullptr) {
+ reset(p);
+ }
- /// Copy guarded value from \p src guard to slot at index \p nIndex
- void copy( size_t nIndex, Guard const& src )
- {
- assign( nIndex, src.get_native());
- }
+ explicit guarded_ptr(std::nullptr_t) noexcept
+ : guard_(nullptr) {}
+ //@endcond
- /// Copy guarded value from slot \p nSrcIndex to the slot \p nDestIndex
- void copy( size_t nDestIndex, size_t nSrcIndex )
- {
- assign( nDestIndex, get_native( nSrcIndex ));
- }
+ /// Move ctor
+ guarded_ptr(guarded_ptr &&gp) noexcept
+ : guard_(gp.guard_) {
+ gp.guard_ = nullptr;
+ }
- /// Clear value of the slot \p nIndex
- void clear( size_t nIndex )
- {
- guards_.clear( nIndex );
- }
+ /// Move ctor
+ template
+ guarded_ptr(guarded_ptr &&gp) noexcept
+ : guard_(gp.guard_) {
+ gp.guard_ = nullptr;
+ }
- /// Get current value of slot \p nIndex
- template
- T * get( size_t nIndex ) const
- {
- assert( nIndex < capacity());
- return guards_[nIndex]->template get_as();
- }
+ /// Ctor from \p Guard
+ explicit guarded_ptr(Guard &&g) noexcept
+ : guard_(g.release()) {}
- /// Get native hazard pointer stored
- guarded_pointer get_native( size_t nIndex ) const
- {
- assert( nIndex < capacity());
- return guards_[nIndex]->get();
- }
+ /// The guarded pointer is not copy-constructible
+ guarded_ptr(guarded_ptr const &gp) = delete;
- //@cond
- hp::details::guard* release( size_t nIndex ) noexcept
- {
- return guards_.release( nIndex );
- }
- //@endcond
+ /// Clears the guarded pointer
+ /**
+ \ref release() is called if guarded pointer is not \ref empty()
+ */
+ ~guarded_ptr() noexcept {
+ release();
+ }
- /// Capacity of the guard array
- static constexpr size_t capacity()
- {
- return c_nCapacity;
- }
+ /// Move-assignment operator
+ guarded_ptr &operator=(guarded_ptr &&gp) noexcept {
+ std::swap(guard_, gp.guard_);
+ return *this;
+ }
- private:
- //@cond
- hp::details::guard_array guards_;
- //@endcond
- };
+ /// Move-assignment from \p Guard
+ guarded_ptr &operator=(Guard &&g) noexcept {
+ std::swap(guard_, g.guard_ref());
+ return *this;
+ }
- /// Guarded pointer
- /**
- A guarded pointer is a pair of a pointer and GC's guard.
- Usually, it is used for returning a pointer to an element of a lock-free container.
- The guard prevents the pointer to be early disposed (freed) by SMR.
- After destructing \p %guarded_ptr object the pointer can be disposed (freed) automatically at any time.
-
- Template arguments:
- - \p GuardedType - a type which the guard stores
- - \p ValueType - a value type
- - \p Cast - a functor for converting GuardedType* to ValueType*. Default is \p void (no casting).
-
- For intrusive containers, \p GuardedType is the same as \p ValueType and no casting is needed.
- In such case the \p %guarded_ptr is:
- @code
- typedef cds::gc::HP::guarded_ptr< foo > intrusive_guarded_ptr;
- @endcode
-
- For standard (non-intrusive) containers \p GuardedType is not the same as \p ValueType and casting is needed.
- For example:
- @code
- struct foo {
- int const key;
- std::string value;
- };
+ /// The guarded pointer is not copy-assignable
+ guarded_ptr &operator=(guarded_ptr const &gp) = delete;
- struct value_accessor {
- std::string* operator()( foo* pFoo ) const
- {
- return &(pFoo->value);
+ /// Returns a pointer to guarded value
+ value_type *operator->() const noexcept {
+ assert(!empty());
+ return value_cast()(guard_->get_as());
}
- };
-
- // Guarded ptr
- typedef cds::gc::HP::guarded_ptr< Foo, std::string, value_accessor > nonintrusive_guarded_ptr;
- @endcode
- You don't need use this class directly.
- All set/map container classes from \p libcds declare the typedef for \p %guarded_ptr with appropriate casting functor.
- */
- template
- class guarded_ptr
- {
- //@cond
- struct trivial_cast {
- ValueType * operator()( GuardedType * p ) const
- {
- return p;
+ /// Returns a reference to guarded value
+ value_type &operator*() noexcept {
+ assert(!empty());
+ return *value_cast()(guard_->get_as());
}
- };
- template friend class guarded_ptr;
- //@endcond
+ /// Returns const reference to guarded value
+ value_type const &operator*() const noexcept {
+ assert(!empty());
+ return *value_cast()(guard_->get_as());
+ }
- public:
- typedef GuardedType guarded_type; ///< Guarded type
- typedef ValueType value_type; ///< Value type
+ /// Checks if the guarded pointer is \p nullptr
+ bool empty() const noexcept {
+ return !guard_ || guard_->get(atomics::memory_order_relaxed) == nullptr;
+ }
- /// Functor for casting \p guarded_type to \p value_type
- typedef typename std::conditional< std::is_same::value, trivial_cast, Cast >::type value_cast;
+ /// \p bool operator returns !empty()
+ explicit operator bool() const noexcept {
+ return !empty();
+ }
- public:
- /// Creates empty guarded pointer
- guarded_ptr() noexcept
- : guard_(nullptr)
- {}
+ /// Clears guarded pointer
+ /**
+ If the guarded pointer has been released, the pointer can be disposed (freed) at any time.
+ Dereferncing the guarded pointer after \p release() is dangerous.
+ */
+ void release() noexcept {
+ free_guard();
+ }
- //@cond
- explicit guarded_ptr( hp::details::guard* g ) noexcept
- : guard_( g )
- {}
-
- /// Initializes guarded pointer with \p p
- explicit guarded_ptr( guarded_type* p ) noexcept
- : guard_( nullptr )
- {
- reset(p);
- }
- explicit guarded_ptr( std::nullptr_t ) noexcept
- : guard_( nullptr )
- {}
- //@endcond
+ //@cond
+ // For internal use only!!!
+ void reset(guarded_type *p) noexcept {
+ alloc_guard();
+ assert(guard_);
+ guard_->set(p);
+ }
+ //@endcond
- /// Move ctor
- guarded_ptr( guarded_ptr&& gp ) noexcept
- : guard_( gp.guard_ )
- {
- gp.guard_ = nullptr;
- }
+ private:
+ //@cond
+ void alloc_guard() {
+ if (!guard_)
+ guard_ = hp_implementation::tls()->hazards_.alloc();
+ }
- /// Move ctor
- template
- guarded_ptr( guarded_ptr&& gp ) noexcept
- : guard_( gp.guard_ )
- {
- gp.guard_ = nullptr;
- }
+ void free_guard() {
+ if (guard_) {
+ hp_implementation::tls()->hazards_.free(guard_);
+ guard_ = nullptr;
+ }
+ }
+ //@endcond
- /// Ctor from \p Guard
- explicit guarded_ptr( Guard&& g ) noexcept
- : guard_( g.release())
- {}
+ private:
+ //@cond
+ hp::details::guard *guard_;
+ //@endcond
+ };
- /// The guarded pointer is not copy-constructible
- guarded_ptr( guarded_ptr const& gp ) = delete;
+ public:
+ /// \p scan() type
+ enum class scan_type {
+ classic = hp::details::classic, ///< classic scan as described in Michael's papers
+ inplace = hp::details::inplace ///< inplace scan without allocation
+ };
- /// Clears the guarded pointer
+ /// Initializes %HP singleton
/**
- \ref release() is called if guarded pointer is not \ref empty()
+ The constructor initializes Hazard Pointer SMR singleton with passed parameters.
+ If the instance does not yet exist then the function creates the instance.
+ Otherwise it does nothing.
+
+ The Michael's %HP reclamation schema depends of three parameters:
+ - \p nHazardPtrCount - hazard pointer count per thread. Usually it is small number (up to 10) depending from
+ the data structure algorithms. If \p nHazardPtrCount = 0, the defaul value 8 is used
+ - \p nMaxThreadCount - max count of thread with using Hazard Pointer GC in your application. Default is 100.
+ - \p nMaxRetiredPtrCount - capacity of array of retired pointers for each thread. Must be greater than
+ nHazardPtrCount * nMaxThreadCount . Default is 2 * nHazardPtrCount * nMaxThreadCount .
*/
- ~guarded_ptr() noexcept
- {
- release();
+ generic_HP(
+ size_t nHazardPtrCount = 0, ///< Hazard pointer count per thread
+ size_t nMaxThreadCount = 0, ///< Max count of simultaneous working thread in your application
+ size_t nMaxRetiredPtrCount = 0, ///< Capacity of the array of retired objects for the thread
+ scan_type nScanType = scan_type::inplace ///< Scan type (see \p scan_type enum)
+ ) {
+ hp_implementation::construct(
+ nHazardPtrCount,
+ nMaxThreadCount,
+ nMaxRetiredPtrCount,
+ static_cast(nScanType)
+ );
}
- /// Move-assignment operator
- guarded_ptr& operator=( guarded_ptr&& gp ) noexcept
- {
- std::swap( guard_, gp.guard_ );
- return *this;
+ /// Terminates GC singleton
+ /**
+ The destructor destroys %HP global object. After calling of this function you may \b NOT
+ use CDS data structures based on \p %cds::gc::HP.
+ Usually, %HP object is destroyed at the end of your \p main().
+ */
+ ~generic_HP() {
+ hp_implementation::destruct(true);
}
- /// Move-assignment from \p Guard
- guarded_ptr& operator=( Guard&& g ) noexcept
- {
- std::swap( guard_, g.guard_ref());
- return *this;
+ /// Checks that required hazard pointer count \p nCountNeeded is less or equal then max hazard pointer count
+ /**
+ If nCountNeeded > get_hazard_ptr_count() then the exception \p not_enough_hazard_ptr is thrown
+ */
+ static void check_available_guards(size_t nCountNeeded) {
+ hp_implementation::check_hazard_ptr_count(nCountNeeded);
}
- /// The guarded pointer is not copy-assignable
- guarded_ptr& operator=(guarded_ptr const& gp) = delete;
+ /// Set memory management functions
+ /**
+ @note This function may be called BEFORE creating an instance
+ of Hazard Pointer SMR
- /// Returns a pointer to guarded value
- value_type * operator ->() const noexcept
- {
- assert( !empty());
- return value_cast()( guard_->get_as());
+ SMR object allocates some memory for thread-specific data and for
+ creating SMR object.
+ By default, a standard \p new and \p delete operators are used for this.
+ */
+ static void set_memory_allocator(
+ void *( *alloc_func )(size_t size), ///< \p malloc() function
+ void( *free_func )(void *p) ///< \p free() function
+ ) {
+ hp_implementation::set_memory_allocator(alloc_func, free_func);
}
- /// Returns a reference to guarded value
- value_type& operator *() noexcept
- {
- assert( !empty());
- return *value_cast()( guard_->get_as());
+ /// Returns max Hazard Pointer count
+ static size_t max_hazard_count() {
+ return hp_implementation::instance().get_hazard_ptr_count();
}
- /// Returns const reference to guarded value
- value_type const& operator *() const noexcept
- {
- assert( !empty());
- return *value_cast()( guard_->get_as());
+ /// Returns max count of thread
+ static size_t max_thread_count() {
+ return hp_implementation::instance().get_max_thread_count();
}
- /// Checks if the guarded pointer is \p nullptr
- bool empty() const noexcept
- {
- return !guard_ || guard_->get( atomics::memory_order_relaxed ) == nullptr;
+ /// Returns capacity of retired pointer array
+ static size_t retired_array_capacity() {
+ return hp_implementation::instance().get_max_retired_ptr_count();
}
- /// \p bool operator returns !empty()
- explicit operator bool() const noexcept
- {
- return !empty();
+ /// Retire pointer \p p with function \p func
+ /**
+ The function places pointer \p p to array of pointers ready for removing.
+ (so called retired pointer array). The pointer can be safely removed when no hazard pointer points to it.
+ \p func is a disposer: when \p p can be safely removed, \p func is called.
+ */
+ template
+ static void retire(T *p, void( *func )(void *)) {
+ hp::details::thread_data *rec = hp_implementation::tls();
+ if (!rec->retired_.push(hp::details::retired_ptr(p, func)))
+ hp_implementation::instance().scan(rec);
}
- /// Clears guarded pointer
+ /// Retire pointer \p p with functor of type \p Disposer
/**
- If the guarded pointer has been released, the pointer can be disposed (freed) at any time.
- Dereferncing the guarded pointer after \p release() is dangerous.
+ The function places pointer \p p to array of pointers ready for removing.
+ (so called retired pointer array). The pointer can be safely removed when no hazard pointer points to it.
+
+ Deleting the pointer is an invocation of some object of type \p Disposer; the interface of \p Disposer is:
+ \code
+ template
+ struct disposer {
+ void operator()( T * p ) ; // disposing operator
+ };
+ \endcode
+ Since the functor call can happen at any time after \p retire() call, additional restrictions are imposed to \p Disposer type:
+ - it should be stateless functor
+ - it should be default-constructible
+ - the result of functor call with argument \p p should not depend on where the functor will be called.
+
+ \par Examples:
+ Operator \p delete functor:
+ \code
+ template
+ struct disposer {
+ void operator ()( T * p ) {
+ delete p;
+ }
+ };
+
+ // How to call HP::retire method
+ int * p = new int;
+
+ // ... use p in lock-free manner
+
+ cds::gc::HP::retire( p ) ; // place p to retired pointer array of HP GC
+ \endcode
+
+ Functor based on \p std::allocator :
+ \code
+ template >
+ struct disposer {
+ template
+ void operator()( T * p ) {
+ typedef typename Alloc::templare rebind::other alloc_t;
+ alloc_t a;
+ a.destroy( p );
+ a.deallocate( p, 1 );
+ }
+ };
+ \endcode
*/
- void release() noexcept
- {
- free_guard();
+ template
+ static void retire(T *p) {
+ if (!hp_implementation::tls()->retired_.push(
+ hp::details::retired_ptr(p, +[](void *p) { Disposer()(static_cast( p )); })))
+ scan();
}
- //@cond
- // For internal use only!!!
- void reset(guarded_type * p) noexcept
- {
- alloc_guard();
- assert( guard_ );
- guard_->set(p);
+ /// Get current scan strategy
+ static scan_type getScanType() {
+ return static_cast( hp_implementation::instance().get_scan_type());
}
- //@endcond
- private:
- //@cond
- void alloc_guard()
- {
- if ( !guard_ )
- guard_ = hp_implementation::tls()->hazards_.alloc();
+ /// Checks if Hazard Pointer GC is constructed and may be used
+ static bool isUsed() {
+ return hp_implementation::isUsed();
}
- void free_guard()
- {
- if ( guard_ ) {
- hp_implementation::tls()->hazards_.free( guard_ );
- guard_ = nullptr;
- }
+ /// Forces SMR call for current thread
+ /**
+ Usually, this function should not be called directly.
+ */
+ static void scan() {
+ hp_implementation::instance().scan(hp_implementation::tls());
}
- //@endcond
- private:
- //@cond
- hp::details::guard* guard_;
- //@endcond
- };
-
- public:
- /// \p scan() type
- enum class scan_type {
- classic = hp::details::classic, ///< classic scan as described in Michael's papers
- inplace = hp::details::inplace ///< inplace scan without allocation
- };
+ /// Synonym for \p scan()
+ static void force_dispose() {
+ scan();
+ }
- /// Initializes %HP singleton
- /**
- The constructor initializes Hazard Pointer SMR singleton with passed parameters.
- If the instance does not yet exist then the function creates the instance.
- Otherwise it does nothing.
-
- The Michael's %HP reclamation schema depends of three parameters:
- - \p nHazardPtrCount - hazard pointer count per thread. Usually it is small number (up to 10) depending from
- the data structure algorithms. If \p nHazardPtrCount = 0, the defaul value 8 is used
- - \p nMaxThreadCount - max count of thread with using Hazard Pointer GC in your application. Default is 100.
- - \p nMaxRetiredPtrCount - capacity of array of retired pointers for each thread. Must be greater than
- nHazardPtrCount * nMaxThreadCount . Default is 2 * nHazardPtrCount * nMaxThreadCount .
- */
- generic_HP(
- size_t nHazardPtrCount = 0, ///< Hazard pointer count per thread
- size_t nMaxThreadCount = 0, ///< Max count of simultaneous working thread in your application
- size_t nMaxRetiredPtrCount = 0, ///< Capacity of the array of retired objects for the thread
- scan_type nScanType = scan_type::inplace ///< Scan type (see \p scan_type enum)
- )
- {
- hp_implementation::construct(
- nHazardPtrCount,
- nMaxThreadCount,
- nMaxRetiredPtrCount,
- static_cast(nScanType)
- );
- }
-
- /// Terminates GC singleton
- /**
- The destructor destroys %HP global object. After calling of this function you may \b NOT
- use CDS data structures based on \p %cds::gc::HP.
- Usually, %HP object is destroyed at the end of your \p main().
- */
- ~generic_HP()
- {
- hp_implementation::destruct( true );
- }
-
- /// Checks that required hazard pointer count \p nCountNeeded is less or equal then max hazard pointer count
- /**
- If nCountNeeded > get_hazard_ptr_count() then the exception \p not_enough_hazard_ptr is thrown
- */
- static void check_available_guards( size_t nCountNeeded )
- {
- hp_implementation::check_hazard_ptr_count( nCountNeeded );
- }
-
- /// Set memory management functions
- /**
- @note This function may be called BEFORE creating an instance
- of Hazard Pointer SMR
-
- SMR object allocates some memory for thread-specific data and for
- creating SMR object.
- By default, a standard \p new and \p delete operators are used for this.
- */
- static void set_memory_allocator(
- void* ( *alloc_func )( size_t size ), ///< \p malloc() function
- void( *free_func )( void * p ) ///< \p free() function
- )
- {
- hp_implementation::set_memory_allocator( alloc_func, free_func );
- }
-
- /// Returns max Hazard Pointer count
- static size_t max_hazard_count()
- {
- return hp_implementation::instance().get_hazard_ptr_count();
- }
-
- /// Returns max count of thread
- static size_t max_thread_count()
- {
- return hp_implementation::instance().get_max_thread_count();
- }
-
- /// Returns capacity of retired pointer array
- static size_t retired_array_capacity()
- {
- return hp_implementation::instance().get_max_retired_ptr_count();
- }
-
- /// Retire pointer \p p with function \p func
- /**
- The function places pointer \p p to array of pointers ready for removing.
- (so called retired pointer array). The pointer can be safely removed when no hazard pointer points to it.
- \p func is a disposer: when \p p can be safely removed, \p func is called.
- */
- template
- static void retire( T * p, void( *func )( void * ))
- {
- hp::details::thread_data* rec = hp_implementation::tls();
- if ( !rec->retired_.push( hp::details::retired_ptr( p, func )))
- hp_implementation::instance().scan( rec );
- }
-
- /// Retire pointer \p p with functor of type \p Disposer
- /**
- The function places pointer \p p to array of pointers ready for removing.
- (so called retired pointer array). The pointer can be safely removed when no hazard pointer points to it.
-
- Deleting the pointer is an invocation of some object of type \p Disposer; the interface of \p Disposer is:
- \code
- template
- struct disposer {
- void operator()( T * p ) ; // disposing operator
- };
- \endcode
- Since the functor call can happen at any time after \p retire() call, additional restrictions are imposed to \p Disposer type:
- - it should be stateless functor
- - it should be default-constructible
- - the result of functor call with argument \p p should not depend on where the functor will be called.
-
- \par Examples:
- Operator \p delete functor:
- \code
- template
- struct disposer {
- void operator ()( T * p ) {
- delete p;
- }
- };
+ /// Returns internal statistics
+ /**
+ The function clears \p st before gathering statistics.
- // How to call HP::retire method
- int * p = new int;
+ @note Internal statistics is available only if you compile
+ \p libcds and your program with \p -DCDS_ENABLE_HPSTAT.
+ */
+ static void statistics(stat &st) {
+ hp_implementation::instance().statistics(st);
+ }
- // ... use p in lock-free manner
+ /// Returns post-mortem statistics
+ /**
+ Post-mortem statistics is gathered in the \p %HP object destructor
+ and can be accessible after destructing the global \p %HP object.
- cds::gc::HP::retire( p ) ; // place p to retired pointer array of HP GC
- \endcode
+ @note Internal statistics is available only if you compile
+ \p libcds and your program with \p -DCDS_ENABLE_HPSTAT.
- Functor based on \p std::allocator :
- \code
- template >
- struct disposer {
- template
- void operator()( T * p ) {
- typedef typename Alloc::templare rebind::other alloc_t;
- alloc_t a;
- a.destroy( p );
- a.deallocate( p, 1 );
- }
- };
- \endcode
- */
- template
- static void retire( T * p )
- {
- if ( !hp_implementation::tls()->retired_.push( hp::details::retired_ptr( p, +[]( void* p ) { Disposer()( static_cast( p )); })))
- scan();
- }
-
- /// Get current scan strategy
- static scan_type getScanType()
- {
- return static_cast( hp_implementation::instance().get_scan_type());
- }
-
- /// Checks if Hazard Pointer GC is constructed and may be used
- static bool isUsed()
- {
- return hp_implementation::isUsed();
- }
-
- /// Forces SMR call for current thread
- /**
- Usually, this function should not be called directly.
- */
- static void scan()
- {
- hp_implementation::instance().scan( hp_implementation::tls());
- }
-
- /// Synonym for \p scan()
- static void force_dispose()
- {
- scan();
- }
-
- /// Returns internal statistics
- /**
- The function clears \p st before gathering statistics.
-
- @note Internal statistics is available only if you compile
- \p libcds and your program with \p -DCDS_ENABLE_HPSTAT.
- */
- static void statistics( stat& st )
- {
- hp_implementation::instance().statistics( st );
- }
-
- /// Returns post-mortem statistics
- /**
- Post-mortem statistics is gathered in the \p %HP object destructor
- and can be accessible after destructing the global \p %HP object.
-
- @note Internal statistics is available only if you compile
- \p libcds and your program with \p -DCDS_ENABLE_HPSTAT.
-
- Usage:
- \code
- int main()
- {
- cds::Initialize();
+ Usage:
+ \code
+ int main()
{
- // Initialize HP SMR
- cds::gc::HP hp;
-
- // deal with HP-based data structured
- // ...
+ cds::Initialize();
+ {
+ // Initialize HP SMR
+ cds::gc::HP hp;
+
+ // deal with HP-based data structured
+ // ...
+ }
+
+ // HP object destroyed
+ // Get total post-mortem statistics
+ cds::gc::HP::stat const& st = cds::gc::HP::postmortem_statistics();
+
+ printf( "HP statistics:\n"
+ " thread count = %llu\n"
+ " guard allocated = %llu\n"
+ " guard freed = %llu\n"
+ " retired data count = %llu\n"
+ " free data count = %llu\n"
+ " scan() call count = %llu\n"
+ " help_scan() call count = %llu\n",
+ st.thread_rec_count,
+ st.guard_allocated, st.guard_freed,
+ st.retired_count, st.free_count,
+ st.scan_count, st.help_scan_count
+ );
+
+ cds::Terminate();
}
-
- // HP object destroyed
- // Get total post-mortem statistics
- cds::gc::HP::stat const& st = cds::gc::HP::postmortem_statistics();
-
- printf( "HP statistics:\n"
- " thread count = %llu\n"
- " guard allocated = %llu\n"
- " guard freed = %llu\n"
- " retired data count = %llu\n"
- " free data count = %llu\n"
- " scan() call count = %llu\n"
- " help_scan() call count = %llu\n",
- st.thread_rec_count,
- st.guard_allocated, st.guard_freed,
- st.retired_count, st.free_count,
- st.scan_count, st.help_scan_count
- );
-
- cds::Terminate();
+ \endcode
+ */
+ static stat const &postmortem_statistics() {
+ return cds::gc::hp::details::postmortem_statistics();
}
- \endcode
- */
- static stat const& postmortem_statistics() {
- return cds::gc::hp::details::postmortem_statistics();
- }
- };
- } // namespace cds::gc::details
+ };
+ } // namespace cds::gc::details
- /// Default Hazard Pointer schema with \p %hp::details::DefaultTLSManager
- typedef details::generic_HP HP;
+ /// Default Hazard Pointer schema with \p %hp::details::DefaultTLSManager
+ typedef details::generic_HP HP;
- /// Custom Hazard Pointer schema with custom-provided \p TLSManager
- template
- using custom_HP = details::generic_HP;
+ /// Custom Hazard Pointer schema with custom-provided \p TLSManager
+ template
+ using custom_HP = details::generic_HP;
-}} // namespace cds::gc
+ }
+} // namespace cds::gc
#endif // #ifndef CDSLIB_GC_HP_SMR_H
diff --git a/libcds-debug/CMakeCache.txt b/libcds-debug/CMakeCache.txt
new file mode 100644
index 000000000..723e72c79
--- /dev/null
+++ b/libcds-debug/CMakeCache.txt
@@ -0,0 +1,493 @@
+# This is the CMakeCache file.
+# For build in directory: /home/damire/space/libcds/libcds-debug
+# It was generated by CMake: /usr/bin/cmake
+# You can edit this file to change values found and used by cmake.
+# If you do not want to change any of the values, simply exit the editor.
+# If you do want to change a value, simply edit, save, and exit the editor.
+# The syntax for the file is as follows:
+# KEY:TYPE=VALUE
+# KEY is the name of a variable in the cache.
+# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
+# VALUE is the current value for the KEY.
+
+########################
+# EXTERNAL cache entries
+########################
+
+//Path to a program.
+CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line
+
+//Path to a program.
+CMAKE_AR:FILEPATH=/usr/bin/ar
+
+//Choose the type of build, options are: None Debug Release RelWithDebInfo
+// MinSizeRel ...
+CMAKE_BUILD_TYPE:STRING=RELEASE
+
+//Enable/Disable color output during build.
+CMAKE_COLOR_MAKEFILE:BOOL=ON
+
+//CXX compiler
+CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++
+
+//A wrapper around 'ar' adding the appropriate '--plugin' option
+// for the GCC compiler
+CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-9
+
+//A wrapper around 'ranlib' adding the appropriate '--plugin' option
+// for the GCC compiler
+CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-9
+
+//Flags used by the CXX compiler during all build types.
+CMAKE_CXX_FLAGS:STRING=
+
+//Flags used by the CXX compiler during DEBUG builds.
+CMAKE_CXX_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the CXX compiler during MINSIZEREL builds.
+CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the CXX compiler during RELEASE builds.
+CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the CXX compiler during RELWITHDEBINFO builds.
+CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//C compiler
+CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc
+
+//A wrapper around 'ar' adding the appropriate '--plugin' option
+// for the GCC compiler
+CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-9
+
+//A wrapper around 'ranlib' adding the appropriate '--plugin' option
+// for the GCC compiler
+CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-9
+
+//Flags used by the C compiler during all build types.
+CMAKE_C_FLAGS:STRING=
+
+//Flags used by the C compiler during DEBUG builds.
+CMAKE_C_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the C compiler during MINSIZEREL builds.
+CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the C compiler during RELEASE builds.
+CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the C compiler during RELWITHDEBINFO builds.
+CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//Path to a program.
+CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND
+
+//Flags used by the linker during all build types.
+CMAKE_EXE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during DEBUG builds.
+CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during MINSIZEREL builds.
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during RELEASE builds.
+CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during RELWITHDEBINFO builds.
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Enable/Disable output of compile commands during generation.
+CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=/usr/local
+
+//Path to a program.
+CMAKE_LINKER:FILEPATH=/usr/bin/ld
+
+//Path to a program.
+CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make
+
+//Flags used by the linker during the creation of modules during
+// all build types.
+CMAKE_MODULE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of modules during
+// DEBUG builds.
+CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of modules during
+// MINSIZEREL builds.
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of modules during
+// RELEASE builds.
+CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of modules during
+// RELWITHDEBINFO builds.
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Path to a program.
+CMAKE_NM:FILEPATH=/usr/bin/nm
+
+//Path to a program.
+CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy
+
+//Path to a program.
+CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump
+
+//Value Computed by CMake
+CMAKE_PROJECT_DESCRIPTION:STATIC=
+
+//Value Computed by CMake
+CMAKE_PROJECT_HOMEPAGE_URL:STATIC=
+
+//Value Computed by CMake
+CMAKE_PROJECT_NAME:STATIC=cds
+
+//Path to a program.
+CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib
+
+//Path to a program.
+CMAKE_READELF:FILEPATH=/usr/bin/readelf
+
+//Flags used by the linker during the creation of shared libraries
+// during all build types.
+CMAKE_SHARED_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during DEBUG builds.
+CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during MINSIZEREL builds.
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during RELEASE builds.
+CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during RELWITHDEBINFO builds.
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//If set, runtime paths are not added when installing shared libraries,
+// but are added when building.
+CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
+
+//If set, runtime paths are not added when using shared libraries.
+CMAKE_SKIP_RPATH:BOOL=NO
+
+//Flags used by the linker during the creation of static libraries
+// during all build types.
+CMAKE_STATIC_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during DEBUG builds.
+CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during MINSIZEREL builds.
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during RELEASE builds.
+CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during RELWITHDEBINFO builds.
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Path to a program.
+CMAKE_STRIP:FILEPATH=/usr/bin/strip
+
+//Target build architecture
+CMAKE_TARGET_ARCHITECTURE:STRING=
+
+//If this value is on, makefiles will be generated without the
+// .SILENT directive, and all commands will be echoed to the console
+// during the make. This is useful for debugging only. With Visual
+// Studio IDE projects all commands are done without /nologo.
+CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
+
+//Enable to build Debian packages
+CPACK_BINARY_DEB:BOOL=OFF
+
+//Enable to build FreeBSD packages
+CPACK_BINARY_FREEBSD:BOOL=OFF
+
+//Enable to build IFW packages
+CPACK_BINARY_IFW:BOOL=OFF
+
+//Enable to build NSIS packages
+CPACK_BINARY_NSIS:BOOL=OFF
+
+//Enable to build RPM packages
+CPACK_BINARY_RPM:BOOL=OFF
+
+//Enable to build STGZ packages
+CPACK_BINARY_STGZ:BOOL=ON
+
+//Enable to build TBZ2 packages
+CPACK_BINARY_TBZ2:BOOL=OFF
+
+//Enable to build TGZ packages
+CPACK_BINARY_TGZ:BOOL=ON
+
+//Enable to build TXZ packages
+CPACK_BINARY_TXZ:BOOL=OFF
+
+//Enable to build TZ packages
+CPACK_BINARY_TZ:BOOL=ON
+
+//Enable to build RPM source packages
+CPACK_SOURCE_RPM:BOOL=OFF
+
+//Enable to build TBZ2 source packages
+CPACK_SOURCE_TBZ2:BOOL=ON
+
+//Enable to build TGZ source packages
+CPACK_SOURCE_TGZ:BOOL=ON
+
+//Enable to build TXZ source packages
+CPACK_SOURCE_TXZ:BOOL=ON
+
+//Enable to build TZ source packages
+CPACK_SOURCE_TZ:BOOL=ON
+
+//Enable to build ZIP source packages
+CPACK_SOURCE_ZIP:BOOL=OFF
+
+//Preferred C++ standard
+LIBCDS_CXX_STANDARD:STRING=11
+
+//Enable stress test
+LIBCDS_ENABLE_STRESS_TEST:BOOL=ON
+
+//Enable unit test
+LIBCDS_ENABLE_UNIT_TEST:BOOL=ON
+
+//Build ASan+UBSan instrumented code
+LIBCDS_WITH_ASAN:BOOL=OFF
+
+//Use boost atomics (only for boost >= 1.54)
+LIBCDS_WITH_BOOST_ATOMIC:BOOL=OFF
+
+//Build unit tests
+LIBCDS_WITH_TESTS:BOOL=OFF
+
+//Analyze test coverage using gcov (only for gcc)
+LIBCDS_WITH_TESTS_COVERAGE:BOOL=OFF
+
+//Build TSan instrumented code
+LIBCDS_WITH_TSAN:BOOL=OFF
+
+//Dependencies for the target
+cds-s_LIB_DEPENDS:STATIC=general;-lpthread;
+
+//Value Computed by CMake
+cds_BINARY_DIR:STATIC=/home/damire/space/libcds/libcds-debug
+
+//Dependencies for the target
+cds_LIB_DEPENDS:STATIC=general;-lpthread;
+
+//Value Computed by CMake
+cds_SOURCE_DIR:STATIC=/home/damire/space/libcds
+
+
+########################
+# INTERNAL cache entries
+########################
+
+//Have include linux/membarrier.h
+CDS_HAVE_LINUX_MEMBARRIER_H:INTERNAL=
+//ADVANCED property for variable: CMAKE_ADDR2LINE
+CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_AR
+CMAKE_AR-ADVANCED:INTERNAL=1
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=/home/damire/space/libcds/libcds-debug
+//Major version of cmake used to create the current loaded cache
+CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
+//Minor version of cmake used to create the current loaded cache
+CMAKE_CACHE_MINOR_VERSION:INTERNAL=16
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=3
+//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
+CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
+//ADVANCED property for variable: CMAKE_CXX_COMPILER
+CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR
+CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB
+CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS
+CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
+CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
+CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
+CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
+CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_COMPILER
+CMAKE_C_COMPILER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_COMPILER_AR
+CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB
+CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS
+CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
+CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
+CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
+CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
+CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_DLLTOOL
+CMAKE_DLLTOOL-ADVANCED:INTERNAL=1
+//Executable file format
+CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
+CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
+CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
+CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
+CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Unix Makefiles
+//Generator instance identifier.
+CMAKE_GENERATOR_INSTANCE:INTERNAL=
+//Name of generator platform.
+CMAKE_GENERATOR_PLATFORM:INTERNAL=
+//Name of generator toolset.
+CMAKE_GENERATOR_TOOLSET:INTERNAL=
+//Test CMAKE_HAVE_LIBC_PTHREAD
+CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=
+//Have library pthreads
+CMAKE_HAVE_PTHREADS_CREATE:INTERNAL=
+//Have library pthread
+CMAKE_HAVE_PTHREAD_CREATE:INTERNAL=1
+//Have include pthread.h
+CMAKE_HAVE_PTHREAD_H:INTERNAL=1
+//Source directory with the top level CMakeLists.txt file for this
+// project
+CMAKE_HOME_DIRECTORY:INTERNAL=/home/damire/space/libcds
+//Install .so files without execute permission.
+CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1
+//ADVANCED property for variable: CMAKE_LINKER
+CMAKE_LINKER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
+CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
+CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
+CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
+CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_NM
+CMAKE_NM-ADVANCED:INTERNAL=1
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
+//ADVANCED property for variable: CMAKE_OBJCOPY
+CMAKE_OBJCOPY-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_OBJDUMP
+CMAKE_OBJDUMP-ADVANCED:INTERNAL=1
+//Platform information initialized
+CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_RANLIB
+CMAKE_RANLIB-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_READELF
+CMAKE_READELF-ADVANCED:INTERNAL=1
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.16
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
+CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
+CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
+CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
+CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_RPATH
+CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
+CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
+CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
+CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STRIP
+CMAKE_STRIP-ADVANCED:INTERNAL=1
+//uname command
+CMAKE_UNAME:INTERNAL=/usr/bin/uname
+//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_BINARY_DEB
+CPACK_BINARY_DEB-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_BINARY_FREEBSD
+CPACK_BINARY_FREEBSD-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_BINARY_IFW
+CPACK_BINARY_IFW-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_BINARY_NSIS
+CPACK_BINARY_NSIS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_BINARY_RPM
+CPACK_BINARY_RPM-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_BINARY_STGZ
+CPACK_BINARY_STGZ-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_BINARY_TBZ2
+CPACK_BINARY_TBZ2-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_BINARY_TGZ
+CPACK_BINARY_TGZ-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_BINARY_TXZ
+CPACK_BINARY_TXZ-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_BINARY_TZ
+CPACK_BINARY_TZ-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_SOURCE_RPM
+CPACK_SOURCE_RPM-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_SOURCE_TBZ2
+CPACK_SOURCE_TBZ2-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_SOURCE_TGZ
+CPACK_SOURCE_TGZ-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_SOURCE_TXZ
+CPACK_SOURCE_TXZ-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_SOURCE_TZ
+CPACK_SOURCE_TZ-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CPACK_SOURCE_ZIP
+CPACK_SOURCE_ZIP-ADVANCED:INTERNAL=1
+//Details about finding Threads
+FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()]
+//Result of TRY_COMPILE
+compile_result_unused:INTERNAL=FALSE
+
diff --git a/libcds-debug/CMakeFiles/3.16.3/CMakeCCompiler.cmake b/libcds-debug/CMakeFiles/3.16.3/CMakeCCompiler.cmake
new file mode 100644
index 000000000..c5ece7b85
--- /dev/null
+++ b/libcds-debug/CMakeFiles/3.16.3/CMakeCCompiler.cmake
@@ -0,0 +1,76 @@
+set(CMAKE_C_COMPILER "/usr/bin/cc")
+set(CMAKE_C_COMPILER_ARG1 "")
+set(CMAKE_C_COMPILER_ID "GNU")
+set(CMAKE_C_COMPILER_VERSION "9.4.0")
+set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_C_COMPILER_WRAPPER "")
+set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "11")
+set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert")
+set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes")
+set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros")
+set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert")
+
+set(CMAKE_C_PLATFORM_ID "Linux")
+set(CMAKE_C_SIMULATE_ID "")
+set(CMAKE_C_COMPILER_FRONTEND_VARIANT "")
+set(CMAKE_C_SIMULATE_VERSION "")
+
+
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-9")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-9")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_MT "")
+set(CMAKE_COMPILER_IS_GNUCC 1)
+set(CMAKE_C_COMPILER_LOADED 1)
+set(CMAKE_C_COMPILER_WORKS TRUE)
+set(CMAKE_C_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+ set(CYGWIN 1)
+ set(UNIX 1)
+endif()
+
+set(CMAKE_C_COMPILER_ENV_VAR "CC")
+
+if(CMAKE_COMPILER_IS_MINGW)
+ set(MINGW 1)
+endif()
+set(CMAKE_C_COMPILER_ID_RUN 1)
+set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
+set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_C_LINKER_PREFERENCE 10)
+
+# Save compiler ABI information.
+set(CMAKE_C_SIZEOF_DATA_PTR "8")
+set(CMAKE_C_COMPILER_ABI "ELF")
+set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_C_SIZEOF_DATA_PTR)
+ set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_C_COMPILER_ABI)
+ set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
+endif()
+
+if(CMAKE_C_LIBRARY_ARCHITECTURE)
+ set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
+ set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/9/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include")
+set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s")
+set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/9;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/libcds-debug/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake b/libcds-debug/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake
new file mode 100644
index 000000000..278ef39ee
--- /dev/null
+++ b/libcds-debug/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake
@@ -0,0 +1,88 @@
+set(CMAKE_CXX_COMPILER "/usr/bin/c++")
+set(CMAKE_CXX_COMPILER_ARG1 "")
+set(CMAKE_CXX_COMPILER_ID "GNU")
+set(CMAKE_CXX_COMPILER_VERSION "9.4.0")
+set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_CXX_COMPILER_WRAPPER "")
+set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14")
+set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20")
+set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
+set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
+set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
+set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20")
+
+set(CMAKE_CXX_PLATFORM_ID "Linux")
+set(CMAKE_CXX_SIMULATE_ID "")
+set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "")
+set(CMAKE_CXX_SIMULATE_VERSION "")
+
+
+
+set(CMAKE_AR "/usr/bin/ar")
+set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-9")
+set(CMAKE_RANLIB "/usr/bin/ranlib")
+set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-9")
+set(CMAKE_LINKER "/usr/bin/ld")
+set(CMAKE_MT "")
+set(CMAKE_COMPILER_IS_GNUCXX 1)
+set(CMAKE_CXX_COMPILER_LOADED 1)
+set(CMAKE_CXX_COMPILER_WORKS TRUE)
+set(CMAKE_CXX_ABI_COMPILED TRUE)
+set(CMAKE_COMPILER_IS_MINGW )
+set(CMAKE_COMPILER_IS_CYGWIN )
+if(CMAKE_COMPILER_IS_CYGWIN)
+ set(CYGWIN 1)
+ set(UNIX 1)
+endif()
+
+set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
+
+if(CMAKE_COMPILER_IS_MINGW)
+ set(MINGW 1)
+endif()
+set(CMAKE_CXX_COMPILER_ID_RUN 1)
+set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;CPP)
+set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
+
+foreach (lang C OBJC OBJCXX)
+ if (CMAKE_${lang}_COMPILER_ID_RUN)
+ foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
+ list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
+ endforeach()
+ endif()
+endforeach()
+
+set(CMAKE_CXX_LINKER_PREFERENCE 30)
+set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
+
+# Save compiler ABI information.
+set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
+set(CMAKE_CXX_COMPILER_ABI "ELF")
+set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+
+if(CMAKE_CXX_SIZEOF_DATA_PTR)
+ set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_CXX_COMPILER_ABI)
+ set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
+endif()
+
+if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
+ set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
+endif()
+
+set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
+ set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/9;/usr/include/x86_64-linux-gnu/c++/9;/usr/include/c++/9/backward;/usr/lib/gcc/x86_64-linux-gnu/9/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include")
+set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc")
+set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/9;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
+set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
diff --git a/libcds-debug/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_C.bin b/libcds-debug/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_C.bin
new file mode 100755
index 000000000..35de1468e
Binary files /dev/null and b/libcds-debug/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_C.bin differ
diff --git a/libcds-debug/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_CXX.bin b/libcds-debug/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_CXX.bin
new file mode 100755
index 000000000..9cba7ec76
Binary files /dev/null and b/libcds-debug/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_CXX.bin differ
diff --git a/libcds-debug/CMakeFiles/3.16.3/CMakeSystem.cmake b/libcds-debug/CMakeFiles/3.16.3/CMakeSystem.cmake
new file mode 100644
index 000000000..a5cefae66
--- /dev/null
+++ b/libcds-debug/CMakeFiles/3.16.3/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Linux-5.13.0-40-generic")
+set(CMAKE_HOST_SYSTEM_NAME "Linux")
+set(CMAKE_HOST_SYSTEM_VERSION "5.13.0-40-generic")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
+
+
+
+set(CMAKE_SYSTEM "Linux-5.13.0-40-generic")
+set(CMAKE_SYSTEM_NAME "Linux")
+set(CMAKE_SYSTEM_VERSION "5.13.0-40-generic")
+set(CMAKE_SYSTEM_PROCESSOR "x86_64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/libcds-debug/CMakeFiles/3.16.3/CompilerIdC/CMakeCCompilerId.c b/libcds-debug/CMakeFiles/3.16.3/CompilerIdC/CMakeCCompilerId.c
new file mode 100644
index 000000000..d884b5090
--- /dev/null
+++ b/libcds-debug/CMakeFiles/3.16.3/CompilerIdC/CMakeCCompilerId.c
@@ -0,0 +1,671 @@
+#ifdef __cplusplus
+# error "A C++ compiler has been selected for C."
+#endif
+
+#if defined(__18CXX)
+# define ID_VOID_MAIN
+#endif
+#if defined(__CLASSIC_C__)
+/* cv-qualifiers did not exist in K&R C */
+# define const
+# define volatile
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+ Version date components: YYYY=Year, MM=Month, DD=Day */
+
+#if defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+# endif
+ /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+ /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+# elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+ /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+ /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+ /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_C)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_C >= 0x5100
+ /* __SUNPRO_C = 0xVRRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
+# else
+ /* __SUNPRO_CC = 0xVRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
+# endif
+
+#elif defined(__HP_cc)
+# define COMPILER_ID "HP"
+ /* __HP_cc = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100)
+
+#elif defined(__DECC)
+# define COMPILER_ID "Compaq"
+ /* __DECC_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000)
+
+#elif defined(__IBMC__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+
+#elif defined(__ibmxl__) && defined(__clang__)
+# define COMPILER_ID "XLClang"
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
+# define COMPILER_ID "XL"
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
+# define COMPILER_ID "VisualAge"
+ /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+ /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__ghs__)
+# define COMPILER_ID "GHS"
+/* __GHS_VERSION_NUMBER = VVVVRP */
+# ifdef __GHS_VERSION_NUMBER
+# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
+# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
+# endif
+
+#elif defined(__TINYC__)
+# define COMPILER_ID "TinyCC"
+
+#elif defined(__BCC__)
+# define COMPILER_ID "Bruce"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__ARMCC_VERSION) && !defined(__clang__)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+ /* __ARMCC_VERSION = VRRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#else
+ /* __ARMCC_VERSION = VRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#endif
+
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
+# define COMPILER_ID "ARMClang"
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000)
+# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+ /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+# if _MSC_VER >= 1400
+ /* _MSC_FULL_VER = VVRRPPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+# else
+ /* _MSC_FULL_VER = VVRRPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+# endif
+# endif
+# if defined(_MSC_BUILD)
+# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+ /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__) && defined(__ICCARM__)
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__))
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
+# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
+# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC)
+# define COMPILER_ID "SDCC"
+# if defined(__SDCC_VERSION_MAJOR)
+# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR)
+# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH)
+# else
+ /* SDCC = VRP */
+# define COMPILER_VERSION_MAJOR DEC(SDCC/100)
+# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(SDCC % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+ identification macro. Try to identify the platform and guess that
+ it is the native compiler. */
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name. */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+# define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+# define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+# define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+# define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+# define PLATFORM_ID
+# endif
+
+#elif defined(__INTEGRITY)
+# if defined(INT_178B)
+# define PLATFORM_ID "Integrity178"
+
+# else /* regular Integrity */
+# define PLATFORM_ID "Integrity"
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+ the architecture of the compiler being used. This is because
+ the compilers do not have flags that can change the architecture,
+ but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+# define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+# define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+# if _M_ARM == 4
+# define ARCHITECTURE_ID "ARMV4I"
+# elif _M_ARM == 5
+# define ARCHITECTURE_ID "ARMV5I"
+# else
+# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+# endif
+
+# elif defined(_M_MIPS)
+# define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+# define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+# define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCRX__)
+# define ARCHITECTURE_ID "RX"
+
+# elif defined(__ICCRH850__)
+# define ARCHITECTURE_ID "RH850"
+
+# elif defined(__ICCRL78__)
+# define ARCHITECTURE_ID "RL78"
+
+# elif defined(__ICCRISCV__)
+# define ARCHITECTURE_ID "RISCV"
+
+# elif defined(__ICCAVR__)
+# define ARCHITECTURE_ID "AVR"
+
+# elif defined(__ICC430__)
+# define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__ICCV850__)
+# define ARCHITECTURE_ID "V850"
+
+# elif defined(__ICC8051__)
+# define ARCHITECTURE_ID "8051"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__ghs__)
+# if defined(__PPC64__)
+# define ARCHITECTURE_ID "PPC64"
+
+# elif defined(__ppc__)
+# define ARCHITECTURE_ID "PPC"
+
+# elif defined(__ARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__x86_64__)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(__i386__)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+#else
+# define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals. */
+#define DEC(n) \
+ ('0' + (((n) / 10000000)%10)), \
+ ('0' + (((n) / 1000000)%10)), \
+ ('0' + (((n) / 100000)%10)), \
+ ('0' + (((n) / 10000)%10)), \
+ ('0' + (((n) / 1000)%10)), \
+ ('0' + (((n) / 100)%10)), \
+ ('0' + (((n) / 10)%10)), \
+ ('0' + ((n) % 10))
+
+/* Convert integer to hex digit literals. */
+#define HEX(n) \
+ ('0' + ((n)>>28 & 0xF)), \
+ ('0' + ((n)>>24 & 0xF)), \
+ ('0' + ((n)>>20 & 0xF)), \
+ ('0' + ((n)>>16 & 0xF)), \
+ ('0' + ((n)>>12 & 0xF)), \
+ ('0' + ((n)>>8 & 0xF)), \
+ ('0' + ((n)>>4 & 0xF)), \
+ ('0' + ((n) & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+ COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+ '.', COMPILER_VERSION_MINOR,
+# ifdef COMPILER_VERSION_PATCH
+ '.', COMPILER_VERSION_PATCH,
+# ifdef COMPILER_VERSION_TWEAK
+ '.', COMPILER_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+ 'i','n','t','e','r','n','a','l','[',
+ COMPILER_VERSION_INTERNAL,']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+ SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+ '.', SIMULATE_VERSION_MINOR,
+# ifdef SIMULATE_VERSION_PATCH
+ '.', SIMULATE_VERSION_PATCH,
+# ifdef SIMULATE_VERSION_TWEAK
+ '.', SIMULATE_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+#if !defined(__STDC__)
+# if (defined(_MSC_VER) && !defined(__clang__)) \
+ || (defined(__ibmxl__) || defined(__IBMC__))
+# define C_DIALECT "90"
+# else
+# define C_DIALECT
+# endif
+#elif __STDC_VERSION__ >= 201000L
+# define C_DIALECT "11"
+#elif __STDC_VERSION__ >= 199901L
+# define C_DIALECT "99"
+#else
+# define C_DIALECT "90"
+#endif
+const char* info_language_dialect_default =
+ "INFO" ":" "dialect_default[" C_DIALECT "]";
+
+/*--------------------------------------------------------------------------*/
+
+#ifdef ID_VOID_MAIN
+void main() {}
+#else
+# if defined(__CLASSIC_C__)
+int main(argc, argv) int argc; char *argv[];
+# else
+int main(int argc, char* argv[])
+# endif
+{
+ int require = 0;
+ require += info_compiler[argc];
+ require += info_platform[argc];
+ require += info_arch[argc];
+#ifdef COMPILER_VERSION_MAJOR
+ require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+ require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+ require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+ require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+ require += info_cray[argc];
+#endif
+ require += info_language_dialect_default[argc];
+ (void)argv;
+ return require;
+}
+#endif
diff --git a/libcds-debug/CMakeFiles/3.16.3/CompilerIdC/a.out b/libcds-debug/CMakeFiles/3.16.3/CompilerIdC/a.out
new file mode 100755
index 000000000..e82fab493
Binary files /dev/null and b/libcds-debug/CMakeFiles/3.16.3/CompilerIdC/a.out differ
diff --git a/libcds-debug/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp b/libcds-debug/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp
new file mode 100644
index 000000000..69cfdba6b
--- /dev/null
+++ b/libcds-debug/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp
@@ -0,0 +1,660 @@
+/* This source file must have a .cpp extension so that all C++ compilers
+ recognize the extension without flags. Borland does not know .cxx for
+ example. */
+#ifndef __cplusplus
+# error "A C compiler has been selected for C++."
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+ Version date components: YYYY=Year, MM=Month, DD=Day */
+
+#if defined(__COMO__)
+# define COMPILER_ID "Comeau"
+ /* __COMO_VERSION__ = VRR */
+# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
+
+#elif defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+# endif
+ /* __INTEL_COMPILER = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+# if defined(__INTEL_COMPILER_UPDATE)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+# else
+# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+ /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+# elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+ /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+ /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+ /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_CC)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_CC >= 0x5100
+ /* __SUNPRO_CC = 0xVRRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
+# else
+ /* __SUNPRO_CC = 0xVRP */
+# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
+# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
+# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
+# endif
+
+#elif defined(__HP_aCC)
+# define COMPILER_ID "HP"
+ /* __HP_aCC = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100)
+
+#elif defined(__DECCXX)
+# define COMPILER_ID "Compaq"
+ /* __DECCXX_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000)
+
+#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+
+#elif defined(__ibmxl__) && defined(__clang__)
+# define COMPILER_ID "XLClang"
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
+# define COMPILER_ID "XL"
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
+# define COMPILER_ID "VisualAge"
+ /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+ /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
+
+#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
+# define COMPILER_ID "Fujitsu"
+
+#elif defined(__ghs__)
+# define COMPILER_ID "GHS"
+/* __GHS_VERSION_NUMBER = VVVVRP */
+# ifdef __GHS_VERSION_NUMBER
+# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
+# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
+# endif
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__ARMCC_VERSION) && !defined(__clang__)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+ /* __ARMCC_VERSION = VRRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#else
+ /* __ARMCC_VERSION = VRPPPP */
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
+#endif
+
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
+# define COMPILER_ID "ARMClang"
+ # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
+ # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
+ # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000)
+# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+ /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__GNUC__) || defined(__GNUG__)
+# define COMPILER_ID "GNU"
+# if defined(__GNUC__)
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# else
+# define COMPILER_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+ /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+# if _MSC_VER >= 1400
+ /* _MSC_FULL_VER = VVRRPPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+# else
+ /* _MSC_FULL_VER = VVRRPPPP */
+# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+# endif
+# endif
+# if defined(_MSC_BUILD)
+# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+ /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__) && defined(__ICCARM__)
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__))
+# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
+# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
+# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
+# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+ identification macro. Try to identify the platform and guess that
+ it is the native compiler. */
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXE) || defined(__CRAYXC)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name. */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+# define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+# define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+# define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+# define PLATFORM_ID "Windows3x"
+
+# else /* unknown platform */
+# define PLATFORM_ID
+# endif
+
+#elif defined(__INTEGRITY)
+# if defined(INT_178B)
+# define PLATFORM_ID "Integrity178"
+
+# else /* regular Integrity */
+# define PLATFORM_ID "Integrity"
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+ the architecture of the compiler being used. This is because
+ the compilers do not have flags that can change the architecture,
+ but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+# define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+# define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+# if _M_ARM == 4
+# define ARCHITECTURE_ID "ARMV4I"
+# elif _M_ARM == 5
+# define ARCHITECTURE_ID "ARMV5I"
+# else
+# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+# endif
+
+# elif defined(_M_MIPS)
+# define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+# define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+# define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCRX__)
+# define ARCHITECTURE_ID "RX"
+
+# elif defined(__ICCRH850__)
+# define ARCHITECTURE_ID "RH850"
+
+# elif defined(__ICCRL78__)
+# define ARCHITECTURE_ID "RL78"
+
+# elif defined(__ICCRISCV__)
+# define ARCHITECTURE_ID "RISCV"
+
+# elif defined(__ICCAVR__)
+# define ARCHITECTURE_ID "AVR"
+
+# elif defined(__ICC430__)
+# define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__ICCV850__)
+# define ARCHITECTURE_ID "V850"
+
+# elif defined(__ICC8051__)
+# define ARCHITECTURE_ID "8051"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__ghs__)
+# if defined(__PPC64__)
+# define ARCHITECTURE_ID "PPC64"
+
+# elif defined(__ppc__)
+# define ARCHITECTURE_ID "PPC"
+
+# elif defined(__ARM__)
+# define ARCHITECTURE_ID "ARM"
+
+# elif defined(__x86_64__)
+# define ARCHITECTURE_ID "x64"
+
+# elif defined(__i386__)
+# define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+# define ARCHITECTURE_ID ""
+# endif
+#else
+# define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals. */
+#define DEC(n) \
+ ('0' + (((n) / 10000000)%10)), \
+ ('0' + (((n) / 1000000)%10)), \
+ ('0' + (((n) / 100000)%10)), \
+ ('0' + (((n) / 10000)%10)), \
+ ('0' + (((n) / 1000)%10)), \
+ ('0' + (((n) / 100)%10)), \
+ ('0' + (((n) / 10)%10)), \
+ ('0' + ((n) % 10))
+
+/* Convert integer to hex digit literals. */
+#define HEX(n) \
+ ('0' + ((n)>>28 & 0xF)), \
+ ('0' + ((n)>>24 & 0xF)), \
+ ('0' + ((n)>>20 & 0xF)), \
+ ('0' + ((n)>>16 & 0xF)), \
+ ('0' + ((n)>>12 & 0xF)), \
+ ('0' + ((n)>>8 & 0xF)), \
+ ('0' + ((n)>>4 & 0xF)), \
+ ('0' + ((n) & 0xF))
+
+/* Construct a string literal encoding the version number components. */
+#ifdef COMPILER_VERSION_MAJOR
+char const info_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+ COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+ '.', COMPILER_VERSION_MINOR,
+# ifdef COMPILER_VERSION_PATCH
+ '.', COMPILER_VERSION_PATCH,
+# ifdef COMPILER_VERSION_TWEAK
+ '.', COMPILER_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+ 'i','n','t','e','r','n','a','l','[',
+ COMPILER_VERSION_INTERNAL,']','\0'};
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+ 'I', 'N', 'F', 'O', ':',
+ 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+ SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+ '.', SIMULATE_VERSION_MINOR,
+# ifdef SIMULATE_VERSION_PATCH
+ '.', SIMULATE_VERSION_PATCH,
+# ifdef SIMULATE_VERSION_TWEAK
+ '.', SIMULATE_VERSION_TWEAK,
+# endif
+# endif
+# endif
+ ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+ getting matched. Store it in a pointer rather than an array
+ because some compilers will just produce instructions to fill the
+ array rather than assigning a pointer to a static array. */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+
+#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L
+# if defined(__INTEL_CXX11_MODE__)
+# if defined(__cpp_aggregate_nsdmi)
+# define CXX_STD 201402L
+# else
+# define CXX_STD 201103L
+# endif
+# else
+# define CXX_STD 199711L
+# endif
+#elif defined(_MSC_VER) && defined(_MSVC_LANG)
+# define CXX_STD _MSVC_LANG
+#else
+# define CXX_STD __cplusplus
+#endif
+
+const char* info_language_dialect_default = "INFO" ":" "dialect_default["
+#if CXX_STD > 201703L
+ "20"
+#elif CXX_STD >= 201703L
+ "17"
+#elif CXX_STD >= 201402L
+ "14"
+#elif CXX_STD >= 201103L
+ "11"
+#else
+ "98"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+int main(int argc, char* argv[])
+{
+ int require = 0;
+ require += info_compiler[argc];
+ require += info_platform[argc];
+#ifdef COMPILER_VERSION_MAJOR
+ require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+ require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+ require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+ require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXE) || defined(__CRAYXC)
+ require += info_cray[argc];
+#endif
+ require += info_language_dialect_default[argc];
+ (void)argv;
+ return require;
+}
diff --git a/libcds-debug/CMakeFiles/3.16.3/CompilerIdCXX/a.out b/libcds-debug/CMakeFiles/3.16.3/CompilerIdCXX/a.out
new file mode 100755
index 000000000..34ec4a035
Binary files /dev/null and b/libcds-debug/CMakeFiles/3.16.3/CompilerIdCXX/a.out differ
diff --git a/libcds-debug/CMakeFiles/CMakeDirectoryInformation.cmake b/libcds-debug/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 000000000..065230273
--- /dev/null
+++ b/libcds-debug/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/damire/space/libcds")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/damire/space/libcds/libcds-debug")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/libcds-debug/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig-release.cmake b/libcds-debug/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig-release.cmake
new file mode 100644
index 000000000..773a79e59
--- /dev/null
+++ b/libcds-debug/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig-release.cmake
@@ -0,0 +1,29 @@
+#----------------------------------------------------------------
+# Generated CMake target import file for configuration "RELEASE".
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Import target "LibCDS::cds" for configuration "RELEASE"
+set_property(TARGET LibCDS::cds APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(LibCDS::cds PROPERTIES
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib64/libcds.so.2.3.3"
+ IMPORTED_SONAME_RELEASE "libcds.so.2.3.3"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS LibCDS::cds )
+list(APPEND _IMPORT_CHECK_FILES_FOR_LibCDS::cds "${_IMPORT_PREFIX}/lib64/libcds.so.2.3.3" )
+
+# Import target "LibCDS::cds-s" for configuration "RELEASE"
+set_property(TARGET LibCDS::cds-s APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(LibCDS::cds-s PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib64/libcds-s.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS LibCDS::cds-s )
+list(APPEND _IMPORT_CHECK_FILES_FOR_LibCDS::cds-s "${_IMPORT_PREFIX}/lib64/libcds-s.a" )
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
diff --git a/libcds-debug/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig.cmake b/libcds-debug/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig.cmake
new file mode 100644
index 000000000..d66c3c98e
--- /dev/null
+++ b/libcds-debug/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig.cmake
@@ -0,0 +1,108 @@
+# Generated by CMake
+
+if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5)
+ message(FATAL_ERROR "CMake >= 2.6.0 required")
+endif()
+cmake_policy(PUSH)
+cmake_policy(VERSION 2.6)
+#----------------------------------------------------------------
+# Generated CMake target import file.
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Protect against multiple inclusion, which would fail when already imported targets are added once more.
+set(_targetsDefined)
+set(_targetsNotDefined)
+set(_expectedTargets)
+foreach(_expectedTarget LibCDS::cds LibCDS::cds-s)
+ list(APPEND _expectedTargets ${_expectedTarget})
+ if(NOT TARGET ${_expectedTarget})
+ list(APPEND _targetsNotDefined ${_expectedTarget})
+ endif()
+ if(TARGET ${_expectedTarget})
+ list(APPEND _targetsDefined ${_expectedTarget})
+ endif()
+endforeach()
+if("${_targetsDefined}" STREQUAL "${_expectedTargets}")
+ unset(_targetsDefined)
+ unset(_targetsNotDefined)
+ unset(_expectedTargets)
+ set(CMAKE_IMPORT_FILE_VERSION)
+ cmake_policy(POP)
+ return()
+endif()
+if(NOT "${_targetsDefined}" STREQUAL "")
+ message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n")
+endif()
+unset(_targetsDefined)
+unset(_targetsNotDefined)
+unset(_expectedTargets)
+
+
+# Compute the installation prefix relative to this file.
+get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+if(_IMPORT_PREFIX STREQUAL "/")
+ set(_IMPORT_PREFIX "")
+endif()
+
+# Create imported target LibCDS::cds
+add_library(LibCDS::cds SHARED IMPORTED)
+
+set_target_properties(LibCDS::cds PROPERTIES
+ INTERFACE_COMPILE_OPTIONS "-mcx16"
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
+)
+
+# Create imported target LibCDS::cds-s
+add_library(LibCDS::cds-s STATIC IMPORTED)
+
+set_target_properties(LibCDS::cds-s PROPERTIES
+ INTERFACE_COMPILE_OPTIONS "-mcx16"
+ INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
+ INTERFACE_LINK_LIBRARIES "\$"
+)
+
+if(CMAKE_VERSION VERSION_LESS 2.8.12)
+ message(FATAL_ERROR "This file relies on consumers using CMake 2.8.12 or greater.")
+endif()
+
+# Load information for each installed configuration.
+get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+file(GLOB CONFIG_FILES "${_DIR}/LibCDSConfig-*.cmake")
+foreach(f ${CONFIG_FILES})
+ include(${f})
+endforeach()
+
+# Cleanup temporary variables.
+set(_IMPORT_PREFIX)
+
+# Loop over all imported files and verify that they actually exist
+foreach(target ${_IMPORT_CHECK_TARGETS} )
+ foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
+ if(NOT EXISTS "${file}" )
+ message(FATAL_ERROR "The imported target \"${target}\" references the file
+ \"${file}\"
+but this file does not exist. Possible reasons include:
+* The file was deleted, renamed, or moved to another location.
+* An install or uninstall procedure did not complete successfully.
+* The installation package was faulty and contained
+ \"${CMAKE_CURRENT_LIST_FILE}\"
+but not all the files it references.
+")
+ endif()
+ endforeach()
+ unset(_IMPORT_CHECK_FILES_FOR_${target})
+endforeach()
+unset(_IMPORT_CHECK_TARGETS)
+
+# This file does not depend on other imported targets which have
+# been exported from the same project but in a separate export set.
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
+cmake_policy(POP)
diff --git a/libcds-debug/CMakeFiles/Makefile.cmake b/libcds-debug/CMakeFiles/Makefile.cmake
new file mode 100644
index 000000000..0487ee9bb
--- /dev/null
+++ b/libcds-debug/CMakeFiles/Makefile.cmake
@@ -0,0 +1,64 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# The generator used is:
+set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
+
+# The top level Makefile was generated from the following files:
+set(CMAKE_MAKEFILE_DEPENDS
+ "CMakeCache.txt"
+ "../CMakeLists.txt"
+ "../build/cmake/TargetArch.cmake"
+ "CMakeFiles/3.16.3/CMakeCCompiler.cmake"
+ "CMakeFiles/3.16.3/CMakeCXXCompiler.cmake"
+ "CMakeFiles/3.16.3/CMakeSystem.cmake"
+ "arch.c"
+ "/usr/share/cmake-3.16/Modules/CMakeCInformation.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeCXXInformation.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeCommonLanguageInclude.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeGenericSystem.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeInitializeConfigs.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeLanguageInformation.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInformation.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInitialize.cmake"
+ "/usr/share/cmake-3.16/Modules/CPack.cmake"
+ "/usr/share/cmake-3.16/Modules/CPackComponent.cmake"
+ "/usr/share/cmake-3.16/Modules/CheckCSourceCompiles.cmake"
+ "/usr/share/cmake-3.16/Modules/CheckIncludeFile.cmake"
+ "/usr/share/cmake-3.16/Modules/CheckIncludeFileCXX.cmake"
+ "/usr/share/cmake-3.16/Modules/CheckLibraryExists.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/GNU-C.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/GNU-CXX.cmake"
+ "/usr/share/cmake-3.16/Modules/Compiler/GNU.cmake"
+ "/usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake"
+ "/usr/share/cmake-3.16/Modules/FindPackageMessage.cmake"
+ "/usr/share/cmake-3.16/Modules/FindThreads.cmake"
+ "/usr/share/cmake-3.16/Modules/Internal/CMakeCheckCompilerFlag.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU-C.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU-CXX.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/Linux.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/UnixPaths.cmake"
+ "/usr/share/cmake-3.16/Templates/CPackConfig.cmake.in"
+ )
+
+# The corresponding makefile is:
+set(CMAKE_MAKEFILE_OUTPUTS
+ "Makefile"
+ "CMakeFiles/cmake.check_cache"
+ )
+
+# Byproducts of CMake generate step:
+set(CMAKE_MAKEFILE_PRODUCTS
+ "CPackConfig.cmake"
+ "CPackSourceConfig.cmake"
+ "CMakeFiles/CMakeDirectoryInformation.cmake"
+ )
+
+# Dependency information for all targets:
+set(CMAKE_DEPEND_INFO_FILES
+ "CMakeFiles/cds-s.dir/DependInfo.cmake"
+ "CMakeFiles/cds.dir/DependInfo.cmake"
+ )
diff --git a/libcds-debug/CMakeFiles/Makefile2 b/libcds-debug/CMakeFiles/Makefile2
new file mode 100644
index 000000000..f227be549
--- /dev/null
+++ b/libcds-debug/CMakeFiles/Makefile2
@@ -0,0 +1,135 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/damire/space/libcds
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/damire/space/libcds/libcds-debug
+
+#=============================================================================
+# Directory level rules for the build root directory
+
+# The main recursive "all" target.
+all: CMakeFiles/cds-s.dir/all
+all: CMakeFiles/cds.dir/all
+
+.PHONY : all
+
+# The main recursive "preinstall" target.
+preinstall:
+
+.PHONY : preinstall
+
+# The main recursive "clean" target.
+clean: CMakeFiles/cds-s.dir/clean
+clean: CMakeFiles/cds.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Target rules for target CMakeFiles/cds-s.dir
+
+# All Build rule for target.
+CMakeFiles/cds-s.dir/all:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/depend
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=13,14,15,16,17,18,19,20,21,22,23,24 "Built target cds-s"
+.PHONY : CMakeFiles/cds-s.dir/all
+
+# Build rule for subdir invocation for target.
+CMakeFiles/cds-s.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/libcds-debug/CMakeFiles 12
+ $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/cds-s.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/libcds-debug/CMakeFiles 0
+.PHONY : CMakeFiles/cds-s.dir/rule
+
+# Convenience name for target.
+cds-s: CMakeFiles/cds-s.dir/rule
+
+.PHONY : cds-s
+
+# clean rule for target.
+CMakeFiles/cds-s.dir/clean:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/clean
+.PHONY : CMakeFiles/cds-s.dir/clean
+
+#=============================================================================
+# Target rules for target CMakeFiles/cds.dir
+
+# All Build rule for target.
+CMakeFiles/cds.dir/all:
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/depend
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=1,2,3,4,5,6,7,8,9,10,11,12 "Built target cds"
+.PHONY : CMakeFiles/cds.dir/all
+
+# Build rule for subdir invocation for target.
+CMakeFiles/cds.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/libcds-debug/CMakeFiles 12
+ $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/cds.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/libcds-debug/CMakeFiles 0
+.PHONY : CMakeFiles/cds.dir/rule
+
+# Convenience name for target.
+cds: CMakeFiles/cds.dir/rule
+
+.PHONY : cds
+
+# clean rule for target.
+CMakeFiles/cds.dir/clean:
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/clean
+.PHONY : CMakeFiles/cds.dir/clean
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/libcds-debug/CMakeFiles/TargetDirectories.txt b/libcds-debug/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 000000000..425fa14a8
--- /dev/null
+++ b/libcds-debug/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,10 @@
+/home/damire/space/libcds/libcds-debug/CMakeFiles/install/strip.dir
+/home/damire/space/libcds/libcds-debug/CMakeFiles/install/local.dir
+/home/damire/space/libcds/libcds-debug/CMakeFiles/edit_cache.dir
+/home/damire/space/libcds/libcds-debug/CMakeFiles/package_source.dir
+/home/damire/space/libcds/libcds-debug/CMakeFiles/install.dir
+/home/damire/space/libcds/libcds-debug/CMakeFiles/list_install_components.dir
+/home/damire/space/libcds/libcds-debug/CMakeFiles/rebuild_cache.dir
+/home/damire/space/libcds/libcds-debug/CMakeFiles/package.dir
+/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir
+/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir
diff --git a/libcds-debug/CMakeFiles/cds-s.dir/CXX.includecache b/libcds-debug/CMakeFiles/cds-s.dir/CXX.includecache
new file mode 100644
index 000000000..126fe7443
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds-s.dir/CXX.includecache
@@ -0,0 +1,888 @@
+#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+../cds/algo/atomic.h
+cds/details/defs.h
+-
+cds/user_setup/cache_line.h
+-
+boost/version.hpp
+-
+boost/atomic.hpp
+-
+cds/compiler/cxx11_atomic.h
+-
+atomic
+-
+
+../cds/algo/backoff_strategy.h
+utility
+-
+thread
+-
+chrono
+-
+cds/compiler/backoff.h
+-
+cds/algo/backoff_strategy.h
+-
+cds/algo/backoff_strategy.h
+-
+
+../cds/algo/base.h
+cds/details/defs.h
+-
+
+../cds/algo/bitop.h
+cds/details/defs.h
+-
+cds/compiler/bitop.h
+-
+
+../cds/algo/elimination_tls.h
+cds/algo/base.h
+-
+
+../cds/algo/int_algo.h
+cds/algo/bitop.h
+-
+
+../cds/compiler/backoff.h
+cds/details/defs.h
+-
+cds/compiler/vc/x86/backoff.h
+-
+cds/compiler/vc/amd64/backoff.h
+-
+cds/compiler/gcc/x86/backoff.h
+-
+cds/compiler/gcc/amd64/backoff.h
+-
+cds/compiler/gcc/ia64/backoff.h
+-
+cds/compiler/gcc/sparc/backoff.h
+-
+cds/compiler/gcc/ppc64/backoff.h
+-
+cds/compiler/gcc/arm7/backoff.h
+-
+cds/compiler/gcc/arm8/backoff.h
+-
+
+../cds/compiler/bitop.h
+cds/compiler/vc/x86/bitop.h
+-
+cds/compiler/vc/amd64/bitop.h
+-
+cds/compiler/gcc/x86/bitop.h
+-
+cds/compiler/gcc/amd64/bitop.h
+-
+cds/compiler/gcc/sparc/bitop.h
+-
+cds/compiler/gcc/ia64/bitop.h
+-
+cds/compiler/gcc/ppc64/bitop.h
+-
+cds/details/bitop_generic.h
+-
+
+../cds/compiler/clang/defs.h
+cds/compiler/gcc/compiler_macro.h
+-
+cds/compiler/gcc/compiler_barriers.h
+-
+
+../cds/compiler/cxx11_atomic.h
+type_traits
+-
+cds/details/defs.h
+-
+cds/details/aligned_type.h
+-
+cds/compiler/vc/x86/cxx11_atomic.h
+-
+cds/compiler/vc/amd64/cxx11_atomic.h
+-
+cds/compiler/gcc/x86/cxx11_atomic.h
+-
+cds/compiler/gcc/amd64/cxx11_atomic.h
+-
+cds/compiler/gcc/ia64/cxx11_atomic.h
+-
+cds/compiler/gcc/sparc/cxx11_atomic.h
+-
+cds/compiler/gcc/ppc64/cxx11_atomic.h
+-
+
+../cds/compiler/defs.h
+cds/compiler/vc/defs.h
+-
+cds/compiler/gcc/defs.h
+-
+cds/compiler/icl/defs.h
+-
+cds/compiler/clang/defs.h
+-
+cds/compiler/feature_tsan.h
+-
+
+../cds/compiler/feature_tsan.h
+
+../cds/compiler/gcc/amd64/backoff.h
+
+../cds/compiler/gcc/amd64/bitop.h
+
+../cds/compiler/gcc/amd64/cxx11_atomic.h
+cstdint
+-
+cds/compiler/gcc/x86/cxx11_atomic32.h
+-
+
+../cds/compiler/gcc/arm7/backoff.h
+
+../cds/compiler/gcc/arm8/backoff.h
+
+../cds/compiler/gcc/compiler_barriers.h
+
+../cds/compiler/gcc/compiler_macro.h
+
+../cds/compiler/gcc/defs.h
+cds/compiler/gcc/compiler_macro.h
+-
+cds/compiler/gcc/compiler_barriers.h
+-
+
+../cds/compiler/gcc/ia64/backoff.h
+
+../cds/compiler/gcc/ia64/bitop.h
+
+../cds/compiler/gcc/ia64/cxx11_atomic.h
+cstdint
+-
+
+../cds/compiler/gcc/ppc64/backoff.h
+
+../cds/compiler/gcc/ppc64/bitop.h
+
+../cds/compiler/gcc/sparc/backoff.h
+
+../cds/compiler/gcc/sparc/bitop.h
+
+../cds/compiler/gcc/sparc/cxx11_atomic.h
+cstdint
+-
+
+../cds/compiler/gcc/x86/backoff.h
+
+../cds/compiler/gcc/x86/bitop.h
+
+../cds/compiler/gcc/x86/cxx11_atomic.h
+cstdint
+-
+cds/compiler/gcc/x86/cxx11_atomic32.h
+-
+
+../cds/compiler/gcc/x86/cxx11_atomic32.h
+cstdint
+-
+cds/details/is_aligned.h
+-
+
+../cds/compiler/icl/compiler_barriers.h
+intrin.h
+-
+atomic
+-
+
+../cds/compiler/icl/defs.h
+cds/compiler/icl/compiler_barriers.h
+-
+
+../cds/compiler/vc/amd64/backoff.h
+intrin.h
+-
+
+../cds/compiler/vc/amd64/bitop.h
+intrin.h
+-
+intrin.h
+-
+
+../cds/compiler/vc/amd64/cxx11_atomic.h
+intrin.h
+-
+emmintrin.h
+-
+cds/details/is_aligned.h
+-
+
+../cds/compiler/vc/compiler_barriers.h
+intrin.h
+-
+
+../cds/compiler/vc/defs.h
+stdlib.h
+-
+crtdbg.h
+-
+cds/compiler/vc/compiler_barriers.h
+-
+
+../cds/compiler/vc/x86/backoff.h
+intrin.h
+-
+
+../cds/compiler/vc/x86/bitop.h
+intrin.h
+-
+
+../cds/compiler/vc/x86/cxx11_atomic.h
+intrin.h
+-
+emmintrin.h
+-
+cds/details/is_aligned.h
+-
+
+../cds/container/details/base.h
+cds/intrusive/details/base.h
+-
+
+../cds/container/vyukov_mpmc_cycle_queue.h
+cds/container/details/base.h
+-
+cds/opt/buffer.h
+-
+cds/opt/value_cleaner.h
+-
+cds/algo/atomic.h
+-
+cds/details/bounded_container.h
+-
+
+../cds/details/aligned_type.h
+cds/details/defs.h
+-
+
+../cds/details/allocator.h
+type_traits
+-
+memory
+-
+cds/details/defs.h
+-
+cds/user_setup/allocator.h
+-
+
+../cds/details/bitop_generic.h
+cstdlib
+-
+
+../cds/details/bounded_container.h
+
+../cds/details/defs.h
+stddef.h
+-
+stdlib.h
+-
+assert.h
+-
+cstdint
+-
+exception
+-
+stdexcept
+-
+string
+-
+memory
+-
+cds/version.h
+-
+cds/init.h
+-
+cds/gc/hp.h
+-
+cds/gc/hp.h
+-
+cds/gc/hp.h
+-
+cds/compiler/defs.h
+-
+
+../cds/details/is_aligned.h
+cds/details/defs.h
+-
+
+../cds/details/marked_ptr.h
+cds/algo/atomic.h
+-
+
+../cds/details/throw_exception.h
+cds/details/defs.h
+-
+stdio.h
+-
+utility
+-
+
+../cds/gc/details/hp_common.h
+cds/algo/atomic.h
+-
+cds/gc/details/retired_ptr.h
+-
+cds/details/throw_exception.h
+-
+
+../cds/gc/details/retired_ptr.h
+cds/details/defs.h
+-
+
+../cds/gc/dhp.h
+exception
+-
+cds/gc/details/hp_common.h
+-
+cds/threading/model.h
+-
+cds/intrusive/free_list_selector.h
+-
+cds/details/throw_exception.h
+-
+cds/details/marked_ptr.h
+-
+cds/user_setup/cache_line.h
+-
+
+../cds/gc/hp.h
+exception
+-
+cds/gc/details/hp_common.h
+-
+cds/threading/model.h
+-
+cds/details/throw_exception.h
+-
+cds/details/marked_ptr.h
+-
+cds/user_setup/cache_line.h
+-
+
+../cds/gc/hp_membar.h
+cds/details/defs.h
+-
+atomic
+-
+
+../cds/init.h
+cds/details/defs.h
+-
+cds/os/topology.h
+-
+cds/threading/model.h
+-
+
+../cds/intrusive/details/base.h
+cds/intrusive/details/node_traits.h
+-
+cds/details/allocator.h
+-
+cds/algo/backoff_strategy.h
+-
+
+../cds/intrusive/details/node_traits.h
+cds/intrusive/options.h
+-
+
+../cds/intrusive/free_list.h
+cds/algo/atomic.h
+-
+cds/intrusive/free_list.h
+-
+
+../cds/intrusive/free_list_selector.h
+cds/details/defs.h
+-
+cds/intrusive/free_list_tagged.h
+-
+cds/intrusive/free_list.h
+-
+
+../cds/intrusive/free_list_tagged.h
+cds/algo/atomic.h
+-
+cds/intrusive/free_list_tagged.h
+-
+
+../cds/intrusive/options.h
+cds/opt/options.h
+-
+cds/details/allocator.h
+-
+
+../cds/opt/buffer.h
+memory.h
+-
+cds/details/defs.h
+-
+cds/user_setup/allocator.h
+-
+cds/details/allocator.h
+-
+cds/algo/int_algo.h
+-
+memory
+-
+
+../cds/opt/options.h
+cstdlib
+-
+cds/details/aligned_type.h
+-
+cds/user_setup/allocator.h
+-
+cds/user_setup/cache_line.h
+-
+cds/algo/atomic.h
+-
+cds/opt/options.h
+-
+type_traits
+-
+cds/opt/options.h
+-
+
+../cds/opt/value_cleaner.h
+cds/details/defs.h
+-
+
+../cds/os/aix/alloc_aligned.h
+cds/os/posix/alloc_aligned.h
+-
+
+../cds/os/aix/topology.h
+cds/os/details/fake_topology.h
+-
+unistd.h
+-
+sys/processor.h
+-
+
+../cds/os/alloc_aligned.h
+cds/details/defs.h
+-
+cds/os/win/alloc_aligned.h
+-
+cds/os/linux/alloc_aligned.h
+-
+cds/os/sunos/alloc_aligned.h
+-
+cds/os/hpux/alloc_aligned.h
+-
+cds/os/aix/alloc_aligned.h
+-
+cds/os/free_bsd/alloc_aligned.h
+-
+cds/os/posix/alloc_aligned.h
+-
+memory
+-
+cds/details/is_aligned.h
+-
+cds/algo/int_algo.h
+-
+cds/details/throw_exception.h
+-
+
+../cds/os/details/fake_topology.h
+cds/details/defs.h
+-
+cds/threading/model.h
+-
+
+../cds/os/free_bsd/alloc_aligned.h
+cds/os/posix/alloc_aligned.h
+-
+
+../cds/os/free_bsd/topology.h
+cds/os/details/fake_topology.h
+-
+sys/types.h
+-
+sys/sysctl.h
+-
+
+../cds/os/hpux/alloc_aligned.h
+cds/os/libc/alloc_aligned.h
+-
+
+../cds/os/hpux/topology.h
+sys/mpctl.h
+-
+
+../cds/os/libc/alloc_aligned.h
+stdlib.h
+-
+
+../cds/os/linux/alloc_aligned.h
+cds/os/libc/alloc_aligned.h
+-
+cds/os/posix/alloc_aligned.h
+-
+
+../cds/os/linux/topology.h
+cds/details/defs.h
+-
+cds/threading/model.h
+-
+sys/syscall.h
+-
+sched.h
+-
+
+../cds/os/osx/topology.h
+cds/os/details/fake_topology.h
+-
+
+../cds/os/posix/alloc_aligned.h
+stdlib.h
+-
+
+../cds/os/posix/fake_topology.h
+cds/os/details/fake_topology.h
+-
+unistd.h
+-
+
+../cds/os/posix/thread.h
+pthread.h
+-
+signal.h
+-
+
+../cds/os/sunos/alloc_aligned.h
+cds/os/libc/alloc_aligned.h
+-
+
+../cds/os/sunos/topology.h
+sys/processor.h
+-
+unistd.h
+-
+
+../cds/os/thread.h
+thread
+-
+cds/details/defs.h
+-
+cds/os/win/thread.h
+-
+cds/os/posix/thread.h
+-
+
+../cds/os/topology.h
+cds/details/defs.h
+-
+cds/os/win/topology.h
+-
+cds/os/linux/topology.h
+-
+cds/os/sunos/topology.h
+-
+cds/os/hpux/topology.h
+-
+cds/os/aix/topology.h
+-
+cds/os/free_bsd/topology.h
+-
+cds/os/osx/topology.h
+-
+cds/os/posix/fake_topology.h
+-
+
+../cds/os/win/alloc_aligned.h
+malloc.h
+-
+
+../cds/os/win/thread.h
+windows.h
+-
+
+../cds/os/win/topology.h
+cds/details/defs.h
+-
+windows.h
+-
+
+../cds/threading/details/_common.h
+cds/urcu/details/gp_decl.h
+-
+cds/urcu/details/sh_decl.h
+-
+cds/algo/elimination_tls.h
+-
+
+../cds/threading/details/auto_detect.h
+cds/threading/details/msvc.h
+-
+cds/threading/details/wintls.h
+-
+cds/threading/details/pthread.h
+-
+cds/threading/details/gcc.h
+-
+cds/threading/details/cxx11.h
+-
+
+../cds/threading/details/cxx11.h
+cds/threading/details/cxx11_manager.h
+-
+
+../cds/threading/details/cxx11_manager.h
+cds/threading/details/_common.h
+-
+
+../cds/threading/details/gcc.h
+cds/threading/details/gcc_manager.h
+-
+
+../cds/threading/details/gcc_manager.h
+cds/threading/details/_common.h
+-
+
+../cds/threading/details/msvc.h
+cds/threading/details/msvc_manager.h
+-
+
+../cds/threading/details/msvc_manager.h
+cds/threading/details/_common.h
+-
+
+../cds/threading/details/pthread.h
+cds/threading/details/pthread_manager.h
+-
+
+../cds/threading/details/pthread_manager.h
+system_error
+-
+stdio.h
+-
+pthread.h
+-
+cds/threading/details/_common.h
+-
+cds/details/throw_exception.h
+-
+
+../cds/threading/details/wintls.h
+stdio.h
+-
+cds/threading/details/wintls_manager.h
+-
+
+../cds/threading/details/wintls_manager.h
+system_error
+-
+stdio.h
+-
+cds/threading/details/_common.h
+-
+cds/details/throw_exception.h
+-
+
+../cds/threading/model.h
+cds/threading/details/_common.h
+-
+cds/user_setup/threading.h
+-
+cds/threading/details/auto_detect.h
+-
+
+../cds/urcu/details/base.h
+cds/algo/atomic.h
+-
+cds/gc/details/retired_ptr.h
+-
+cds/details/allocator.h
+-
+cds/os/thread.h
+-
+cds/details/marked_ptr.h
+-
+cds/urcu/general_buffered.h
+-
+cds/urcu/general_buffered.h
+-
+
+../cds/urcu/details/gp.h
+cds/urcu/details/gp_decl.h
+-
+cds/threading/model.h
+-
+
+../cds/urcu/details/gp_decl.h
+cds/urcu/details/base.h
+-
+cds/user_setup/cache_line.h
+-
+
+../cds/urcu/details/gpb.h
+mutex
+-
+limits
+-
+cds/urcu/details/gp.h
+-
+cds/algo/backoff_strategy.h
+-
+cds/container/vyukov_mpmc_cycle_queue.h
+-
+
+../cds/urcu/details/sh.h
+memory.h
+-
+cds/urcu/details/sh_decl.h
+-
+cds/threading/model.h
+-
+
+../cds/urcu/details/sh_decl.h
+cds/urcu/details/base.h
+-
+cds/user_setup/cache_line.h
+-
+signal.h
+-
+
+../cds/urcu/general_buffered.h
+cds/urcu/details/gpb.h
+-
+
+../cds/user_setup/allocator.h
+memory
+-
+cds/os/alloc_aligned.h
+-
+
+../cds/user_setup/cache_line.h
+
+../cds/user_setup/threading.h
+
+../cds/version.h
+
+/home/damire/space/libcds/src/dhp.cpp
+algorithm
+-
+vector
+-
+cds/gc/dhp.h
+-
+cds/os/thread.h
+-
+
+/home/damire/space/libcds/src/dllmain.cpp
+cds/details/defs.h
+-
+cds/os/thread.h
+-
+vld.h
+-
+cds/os/topology.h
+-
+cds/algo/bitop.h
+-
+cds/os/win/topology.h
+-
+
+/home/damire/space/libcds/src/hp.cpp
+algorithm
+-
+vector
+-
+cds/gc/hp.h
+-
+cds/os/thread.h
+-
+cds/gc/hp_membar.h
+-
+unistd.h
+-
+sys/syscall.h
+-
+linux/membarrier.h
+-
+
+/home/damire/space/libcds/src/hp_thread_local.cpp
+cds/gc/hp.h
+-
+map
+-
+
+/home/damire/space/libcds/src/init.cpp
+cds/init.h
+-
+cds/algo/atomic.h
+-
+cds/algo/backoff_strategy.h
+-
+cds/threading/details/msvc_manager.h
+-
+cds/threading/details/wintls_manager.h
+-
+cds/threading/details/gcc_manager.h
+-
+cds/threading/details/pthread_manager.h
+-
+cds/threading/details/cxx11_manager.h
+-
+
+/home/damire/space/libcds/src/thread_data.cpp
+cds/threading/details/_common.h
+-
+cds/gc/hp.h
+-
+cds/gc/dhp.h
+-
+cds/algo/elimination_tls.h
+-
+
+/home/damire/space/libcds/src/topology_hpux.cpp
+cds/os/topology.h
+-
+cds/algo/atomic.h
+-
+limits
+-
+
+/home/damire/space/libcds/src/topology_linux.cpp
+cds/os/topology.h
+-
+thread
+-
+unistd.h
+-
+fstream
+-
+
+/home/damire/space/libcds/src/topology_osx.cpp
+cds/os/topology.h
+-
+sys/types.h
+-
+sys/sysctl.h
+-
+
+/home/damire/space/libcds/src/urcu_gp.cpp
+cds/urcu/details/gp.h
+-
+
+/home/damire/space/libcds/src/urcu_sh.cpp
+cds/urcu/details/sh.h
+-
+
diff --git a/libcds-debug/CMakeFiles/cds-s.dir/DependInfo.cmake b/libcds-debug/CMakeFiles/cds-s.dir/DependInfo.cmake
new file mode 100644
index 000000000..6b8300436
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds-s.dir/DependInfo.cmake
@@ -0,0 +1,32 @@
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_CXX
+ "/home/damire/space/libcds/src/dhp.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/dhp.cpp.o"
+ "/home/damire/space/libcds/src/dllmain.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/dllmain.cpp.o"
+ "/home/damire/space/libcds/src/hp.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/hp.cpp.o"
+ "/home/damire/space/libcds/src/hp_thread_local.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o"
+ "/home/damire/space/libcds/src/init.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/init.cpp.o"
+ "/home/damire/space/libcds/src/thread_data.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/thread_data.cpp.o"
+ "/home/damire/space/libcds/src/topology_hpux.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o"
+ "/home/damire/space/libcds/src/topology_linux.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/topology_linux.cpp.o"
+ "/home/damire/space/libcds/src/topology_osx.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/topology_osx.cpp.o"
+ "/home/damire/space/libcds/src/urcu_gp.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o"
+ "/home/damire/space/libcds/src/urcu_sh.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o"
+ )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+ "."
+ "../"
+ )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/libcds-debug/CMakeFiles/cds-s.dir/build.make b/libcds-debug/CMakeFiles/cds-s.dir/build.make
new file mode 100644
index 000000000..0d55a2932
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds-s.dir/build.make
@@ -0,0 +1,249 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/damire/space/libcds
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/damire/space/libcds/libcds-debug
+
+# Include any dependencies generated for this target.
+include CMakeFiles/cds-s.dir/depend.make
+
+# Include the progress variables for this target.
+include CMakeFiles/cds-s.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include CMakeFiles/cds-s.dir/flags.make
+
+CMakeFiles/cds-s.dir/src/init.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../src/init.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/cds-s.dir/src/init.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/init.cpp.o -c /home/damire/space/libcds/src/init.cpp
+
+CMakeFiles/cds-s.dir/src/init.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/init.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/init.cpp > CMakeFiles/cds-s.dir/src/init.cpp.i
+
+CMakeFiles/cds-s.dir/src/init.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/init.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/init.cpp -o CMakeFiles/cds-s.dir/src/init.cpp.s
+
+CMakeFiles/cds-s.dir/src/hp.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../src/hp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/cds-s.dir/src/hp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/hp.cpp.o -c /home/damire/space/libcds/src/hp.cpp
+
+CMakeFiles/cds-s.dir/src/hp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/hp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/hp.cpp > CMakeFiles/cds-s.dir/src/hp.cpp.i
+
+CMakeFiles/cds-s.dir/src/hp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/hp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/hp.cpp -o CMakeFiles/cds-s.dir/src/hp.cpp.s
+
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../src/hp_thread_local.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o -c /home/damire/space/libcds/src/hp_thread_local.cpp
+
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/hp_thread_local.cpp > CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.i
+
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/hp_thread_local.cpp -o CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.s
+
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../src/dhp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/cds-s.dir/src/dhp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/dhp.cpp.o -c /home/damire/space/libcds/src/dhp.cpp
+
+CMakeFiles/cds-s.dir/src/dhp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/dhp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/dhp.cpp > CMakeFiles/cds-s.dir/src/dhp.cpp.i
+
+CMakeFiles/cds-s.dir/src/dhp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/dhp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/dhp.cpp -o CMakeFiles/cds-s.dir/src/dhp.cpp.s
+
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../src/urcu_gp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o -c /home/damire/space/libcds/src/urcu_gp.cpp
+
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/urcu_gp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/urcu_gp.cpp > CMakeFiles/cds-s.dir/src/urcu_gp.cpp.i
+
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/urcu_gp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/urcu_gp.cpp -o CMakeFiles/cds-s.dir/src/urcu_gp.cpp.s
+
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../src/urcu_sh.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building CXX object CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o -c /home/damire/space/libcds/src/urcu_sh.cpp
+
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/urcu_sh.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/urcu_sh.cpp > CMakeFiles/cds-s.dir/src/urcu_sh.cpp.i
+
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/urcu_sh.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/urcu_sh.cpp -o CMakeFiles/cds-s.dir/src/urcu_sh.cpp.s
+
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../src/thread_data.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building CXX object CMakeFiles/cds-s.dir/src/thread_data.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/thread_data.cpp.o -c /home/damire/space/libcds/src/thread_data.cpp
+
+CMakeFiles/cds-s.dir/src/thread_data.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/thread_data.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/thread_data.cpp > CMakeFiles/cds-s.dir/src/thread_data.cpp.i
+
+CMakeFiles/cds-s.dir/src/thread_data.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/thread_data.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/thread_data.cpp -o CMakeFiles/cds-s.dir/src/thread_data.cpp.s
+
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../src/topology_hpux.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building CXX object CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o -c /home/damire/space/libcds/src/topology_hpux.cpp
+
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/topology_hpux.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_hpux.cpp > CMakeFiles/cds-s.dir/src/topology_hpux.cpp.i
+
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/topology_hpux.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_hpux.cpp -o CMakeFiles/cds-s.dir/src/topology_hpux.cpp.s
+
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../src/topology_linux.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building CXX object CMakeFiles/cds-s.dir/src/topology_linux.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/topology_linux.cpp.o -c /home/damire/space/libcds/src/topology_linux.cpp
+
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/topology_linux.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_linux.cpp > CMakeFiles/cds-s.dir/src/topology_linux.cpp.i
+
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/topology_linux.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_linux.cpp -o CMakeFiles/cds-s.dir/src/topology_linux.cpp.s
+
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../src/topology_osx.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building CXX object CMakeFiles/cds-s.dir/src/topology_osx.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/topology_osx.cpp.o -c /home/damire/space/libcds/src/topology_osx.cpp
+
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/topology_osx.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_osx.cpp > CMakeFiles/cds-s.dir/src/topology_osx.cpp.i
+
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/topology_osx.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_osx.cpp -o CMakeFiles/cds-s.dir/src/topology_osx.cpp.s
+
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: CMakeFiles/cds-s.dir/flags.make
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../src/dllmain.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Building CXX object CMakeFiles/cds-s.dir/src/dllmain.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds-s.dir/src/dllmain.cpp.o -c /home/damire/space/libcds/src/dllmain.cpp
+
+CMakeFiles/cds-s.dir/src/dllmain.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds-s.dir/src/dllmain.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/dllmain.cpp > CMakeFiles/cds-s.dir/src/dllmain.cpp.i
+
+CMakeFiles/cds-s.dir/src/dllmain.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds-s.dir/src/dllmain.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/dllmain.cpp -o CMakeFiles/cds-s.dir/src/dllmain.cpp.s
+
+# Object files for target cds-s
+cds__s_OBJECTS = \
+"CMakeFiles/cds-s.dir/src/init.cpp.o" \
+"CMakeFiles/cds-s.dir/src/hp.cpp.o" \
+"CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o" \
+"CMakeFiles/cds-s.dir/src/dhp.cpp.o" \
+"CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o" \
+"CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o" \
+"CMakeFiles/cds-s.dir/src/thread_data.cpp.o" \
+"CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o" \
+"CMakeFiles/cds-s.dir/src/topology_linux.cpp.o" \
+"CMakeFiles/cds-s.dir/src/topology_osx.cpp.o" \
+"CMakeFiles/cds-s.dir/src/dllmain.cpp.o"
+
+# External object files for target cds-s
+cds__s_EXTERNAL_OBJECTS =
+
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/init.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/hp.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/dhp.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/thread_data.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/topology_linux.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/topology_osx.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/src/dllmain.cpp.o
+bin/libcds-s.a: CMakeFiles/cds-s.dir/build.make
+bin/libcds-s.a: CMakeFiles/cds-s.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Linking CXX static library bin/libcds-s.a"
+ $(CMAKE_COMMAND) -P CMakeFiles/cds-s.dir/cmake_clean_target.cmake
+ $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cds-s.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+CMakeFiles/cds-s.dir/build: bin/libcds-s.a
+
+.PHONY : CMakeFiles/cds-s.dir/build
+
+CMakeFiles/cds-s.dir/clean:
+ $(CMAKE_COMMAND) -P CMakeFiles/cds-s.dir/cmake_clean.cmake
+.PHONY : CMakeFiles/cds-s.dir/clean
+
+CMakeFiles/cds-s.dir/depend:
+ cd /home/damire/space/libcds/libcds-debug && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/damire/space/libcds /home/damire/space/libcds /home/damire/space/libcds/libcds-debug /home/damire/space/libcds/libcds-debug /home/damire/space/libcds/libcds-debug/CMakeFiles/cds-s.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : CMakeFiles/cds-s.dir/depend
+
diff --git a/libcds-debug/CMakeFiles/cds-s.dir/cmake_clean.cmake b/libcds-debug/CMakeFiles/cds-s.dir/cmake_clean.cmake
new file mode 100644
index 000000000..476a7bad0
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds-s.dir/cmake_clean.cmake
@@ -0,0 +1,20 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/cds-s.dir/src/dhp.cpp.o"
+ "CMakeFiles/cds-s.dir/src/dllmain.cpp.o"
+ "CMakeFiles/cds-s.dir/src/hp.cpp.o"
+ "CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o"
+ "CMakeFiles/cds-s.dir/src/init.cpp.o"
+ "CMakeFiles/cds-s.dir/src/thread_data.cpp.o"
+ "CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o"
+ "CMakeFiles/cds-s.dir/src/topology_linux.cpp.o"
+ "CMakeFiles/cds-s.dir/src/topology_osx.cpp.o"
+ "CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o"
+ "CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o"
+ "bin/libcds-s.a"
+ "bin/libcds-s.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/cds-s.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/libcds-debug/CMakeFiles/cds-s.dir/cmake_clean_target.cmake b/libcds-debug/CMakeFiles/cds-s.dir/cmake_clean_target.cmake
new file mode 100644
index 000000000..b0854c13d
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds-s.dir/cmake_clean_target.cmake
@@ -0,0 +1,3 @@
+file(REMOVE_RECURSE
+ "bin/libcds-s.a"
+)
diff --git a/libcds-debug/CMakeFiles/cds-s.dir/depend.internal b/libcds-debug/CMakeFiles/cds-s.dir/depend.internal
new file mode 100644
index 000000000..13d9661e0
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds-s.dir/depend.internal
@@ -0,0 +1,1212 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+CMakeFiles/cds-s.dir/src/dhp.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/dhp.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/free_list.h
+ ../cds/intrusive/free_list_selector.h
+ ../cds/intrusive/free_list_tagged.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/dhp.cpp
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/dllmain.cpp
+CMakeFiles/cds-s.dir/src/hp.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/gc/hp_membar.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/hp.cpp
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/hp_thread_local.cpp
+CMakeFiles/cds-s.dir/src/init.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/init.cpp
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/dhp.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/free_list.h
+ ../cds/intrusive/free_list_selector.h
+ ../cds/intrusive/free_list_tagged.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/thread_data.cpp
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/topology_hpux.cpp
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/topology_linux.cpp
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/topology_osx.cpp
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/urcu_gp.cpp
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/urcu_sh.cpp
diff --git a/libcds-debug/CMakeFiles/cds-s.dir/depend.make b/libcds-debug/CMakeFiles/cds-s.dir/depend.make
new file mode 100644
index 000000000..ce16009bb
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds-s.dir/depend.make
@@ -0,0 +1,1212 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/gc/dhp.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/intrusive/free_list.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/intrusive/free_list_selector.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/intrusive/free_list_tagged.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/dhp.cpp.o: ../src/dhp.cpp
+
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/dllmain.cpp.o: ../src/dllmain.cpp
+
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/gc/hp_membar.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/hp.cpp.o: ../src/hp.cpp
+
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o: ../src/hp_thread_local.cpp
+
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/init.cpp.o: ../src/init.cpp
+
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/gc/dhp.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/intrusive/free_list.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/intrusive/free_list_selector.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/intrusive/free_list_tagged.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/thread_data.cpp.o: ../src/thread_data.cpp
+
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o: ../src/topology_hpux.cpp
+
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/topology_linux.cpp.o: ../src/topology_linux.cpp
+
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/topology_osx.cpp.o: ../src/topology_osx.cpp
+
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o: ../src/urcu_gp.cpp
+
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/init.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/sh.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../cds/version.h
+CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o: ../src/urcu_sh.cpp
+
diff --git a/libcds-debug/CMakeFiles/cds-s.dir/flags.make b/libcds-debug/CMakeFiles/cds-s.dir/flags.make
new file mode 100644
index 000000000..eaa6f7ad5
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds-s.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11
+
+CXX_DEFINES =
+
+CXX_INCLUDES = -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds
+
diff --git a/libcds-debug/CMakeFiles/cds-s.dir/link.txt b/libcds-debug/CMakeFiles/cds-s.dir/link.txt
new file mode 100644
index 000000000..924e78ea9
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds-s.dir/link.txt
@@ -0,0 +1,2 @@
+/usr/bin/ar qc bin/libcds-s.a CMakeFiles/cds-s.dir/src/init.cpp.o CMakeFiles/cds-s.dir/src/hp.cpp.o CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o CMakeFiles/cds-s.dir/src/dhp.cpp.o CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o CMakeFiles/cds-s.dir/src/thread_data.cpp.o CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o CMakeFiles/cds-s.dir/src/topology_linux.cpp.o CMakeFiles/cds-s.dir/src/topology_osx.cpp.o CMakeFiles/cds-s.dir/src/dllmain.cpp.o
+/usr/bin/ranlib bin/libcds-s.a
diff --git a/libcds-debug/CMakeFiles/cds-s.dir/progress.make b/libcds-debug/CMakeFiles/cds-s.dir/progress.make
new file mode 100644
index 000000000..d139d38c3
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds-s.dir/progress.make
@@ -0,0 +1,13 @@
+CMAKE_PROGRESS_1 = 13
+CMAKE_PROGRESS_2 = 14
+CMAKE_PROGRESS_3 = 15
+CMAKE_PROGRESS_4 = 16
+CMAKE_PROGRESS_5 = 17
+CMAKE_PROGRESS_6 = 18
+CMAKE_PROGRESS_7 = 19
+CMAKE_PROGRESS_8 = 20
+CMAKE_PROGRESS_9 = 21
+CMAKE_PROGRESS_10 = 22
+CMAKE_PROGRESS_11 = 23
+CMAKE_PROGRESS_12 = 24
+
diff --git a/libcds-debug/CMakeFiles/cds.dir/CXX.includecache b/libcds-debug/CMakeFiles/cds.dir/CXX.includecache
new file mode 100644
index 000000000..126fe7443
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds.dir/CXX.includecache
@@ -0,0 +1,888 @@
+#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
+
+#IncludeRegexScan: ^.*$
+
+#IncludeRegexComplain: ^$
+
+#IncludeRegexTransform:
+
+../cds/algo/atomic.h
+cds/details/defs.h
+-
+cds/user_setup/cache_line.h
+-
+boost/version.hpp
+-
+boost/atomic.hpp
+-
+cds/compiler/cxx11_atomic.h
+-
+atomic
+-
+
+../cds/algo/backoff_strategy.h
+utility
+-
+thread
+-
+chrono
+-
+cds/compiler/backoff.h
+-
+cds/algo/backoff_strategy.h
+-
+cds/algo/backoff_strategy.h
+-
+
+../cds/algo/base.h
+cds/details/defs.h
+-
+
+../cds/algo/bitop.h
+cds/details/defs.h
+-
+cds/compiler/bitop.h
+-
+
+../cds/algo/elimination_tls.h
+cds/algo/base.h
+-
+
+../cds/algo/int_algo.h
+cds/algo/bitop.h
+-
+
+../cds/compiler/backoff.h
+cds/details/defs.h
+-
+cds/compiler/vc/x86/backoff.h
+-
+cds/compiler/vc/amd64/backoff.h
+-
+cds/compiler/gcc/x86/backoff.h
+-
+cds/compiler/gcc/amd64/backoff.h
+-
+cds/compiler/gcc/ia64/backoff.h
+-
+cds/compiler/gcc/sparc/backoff.h
+-
+cds/compiler/gcc/ppc64/backoff.h
+-
+cds/compiler/gcc/arm7/backoff.h
+-
+cds/compiler/gcc/arm8/backoff.h
+-
+
+../cds/compiler/bitop.h
+cds/compiler/vc/x86/bitop.h
+-
+cds/compiler/vc/amd64/bitop.h
+-
+cds/compiler/gcc/x86/bitop.h
+-
+cds/compiler/gcc/amd64/bitop.h
+-
+cds/compiler/gcc/sparc/bitop.h
+-
+cds/compiler/gcc/ia64/bitop.h
+-
+cds/compiler/gcc/ppc64/bitop.h
+-
+cds/details/bitop_generic.h
+-
+
+../cds/compiler/clang/defs.h
+cds/compiler/gcc/compiler_macro.h
+-
+cds/compiler/gcc/compiler_barriers.h
+-
+
+../cds/compiler/cxx11_atomic.h
+type_traits
+-
+cds/details/defs.h
+-
+cds/details/aligned_type.h
+-
+cds/compiler/vc/x86/cxx11_atomic.h
+-
+cds/compiler/vc/amd64/cxx11_atomic.h
+-
+cds/compiler/gcc/x86/cxx11_atomic.h
+-
+cds/compiler/gcc/amd64/cxx11_atomic.h
+-
+cds/compiler/gcc/ia64/cxx11_atomic.h
+-
+cds/compiler/gcc/sparc/cxx11_atomic.h
+-
+cds/compiler/gcc/ppc64/cxx11_atomic.h
+-
+
+../cds/compiler/defs.h
+cds/compiler/vc/defs.h
+-
+cds/compiler/gcc/defs.h
+-
+cds/compiler/icl/defs.h
+-
+cds/compiler/clang/defs.h
+-
+cds/compiler/feature_tsan.h
+-
+
+../cds/compiler/feature_tsan.h
+
+../cds/compiler/gcc/amd64/backoff.h
+
+../cds/compiler/gcc/amd64/bitop.h
+
+../cds/compiler/gcc/amd64/cxx11_atomic.h
+cstdint
+-
+cds/compiler/gcc/x86/cxx11_atomic32.h
+-
+
+../cds/compiler/gcc/arm7/backoff.h
+
+../cds/compiler/gcc/arm8/backoff.h
+
+../cds/compiler/gcc/compiler_barriers.h
+
+../cds/compiler/gcc/compiler_macro.h
+
+../cds/compiler/gcc/defs.h
+cds/compiler/gcc/compiler_macro.h
+-
+cds/compiler/gcc/compiler_barriers.h
+-
+
+../cds/compiler/gcc/ia64/backoff.h
+
+../cds/compiler/gcc/ia64/bitop.h
+
+../cds/compiler/gcc/ia64/cxx11_atomic.h
+cstdint
+-
+
+../cds/compiler/gcc/ppc64/backoff.h
+
+../cds/compiler/gcc/ppc64/bitop.h
+
+../cds/compiler/gcc/sparc/backoff.h
+
+../cds/compiler/gcc/sparc/bitop.h
+
+../cds/compiler/gcc/sparc/cxx11_atomic.h
+cstdint
+-
+
+../cds/compiler/gcc/x86/backoff.h
+
+../cds/compiler/gcc/x86/bitop.h
+
+../cds/compiler/gcc/x86/cxx11_atomic.h
+cstdint
+-
+cds/compiler/gcc/x86/cxx11_atomic32.h
+-
+
+../cds/compiler/gcc/x86/cxx11_atomic32.h
+cstdint
+-
+cds/details/is_aligned.h
+-
+
+../cds/compiler/icl/compiler_barriers.h
+intrin.h
+-
+atomic
+-
+
+../cds/compiler/icl/defs.h
+cds/compiler/icl/compiler_barriers.h
+-
+
+../cds/compiler/vc/amd64/backoff.h
+intrin.h
+-
+
+../cds/compiler/vc/amd64/bitop.h
+intrin.h
+-
+intrin.h
+-
+
+../cds/compiler/vc/amd64/cxx11_atomic.h
+intrin.h
+-
+emmintrin.h
+-
+cds/details/is_aligned.h
+-
+
+../cds/compiler/vc/compiler_barriers.h
+intrin.h
+-
+
+../cds/compiler/vc/defs.h
+stdlib.h
+-
+crtdbg.h
+-
+cds/compiler/vc/compiler_barriers.h
+-
+
+../cds/compiler/vc/x86/backoff.h
+intrin.h
+-
+
+../cds/compiler/vc/x86/bitop.h
+intrin.h
+-
+
+../cds/compiler/vc/x86/cxx11_atomic.h
+intrin.h
+-
+emmintrin.h
+-
+cds/details/is_aligned.h
+-
+
+../cds/container/details/base.h
+cds/intrusive/details/base.h
+-
+
+../cds/container/vyukov_mpmc_cycle_queue.h
+cds/container/details/base.h
+-
+cds/opt/buffer.h
+-
+cds/opt/value_cleaner.h
+-
+cds/algo/atomic.h
+-
+cds/details/bounded_container.h
+-
+
+../cds/details/aligned_type.h
+cds/details/defs.h
+-
+
+../cds/details/allocator.h
+type_traits
+-
+memory
+-
+cds/details/defs.h
+-
+cds/user_setup/allocator.h
+-
+
+../cds/details/bitop_generic.h
+cstdlib
+-
+
+../cds/details/bounded_container.h
+
+../cds/details/defs.h
+stddef.h
+-
+stdlib.h
+-
+assert.h
+-
+cstdint
+-
+exception
+-
+stdexcept
+-
+string
+-
+memory
+-
+cds/version.h
+-
+cds/init.h
+-
+cds/gc/hp.h
+-
+cds/gc/hp.h
+-
+cds/gc/hp.h
+-
+cds/compiler/defs.h
+-
+
+../cds/details/is_aligned.h
+cds/details/defs.h
+-
+
+../cds/details/marked_ptr.h
+cds/algo/atomic.h
+-
+
+../cds/details/throw_exception.h
+cds/details/defs.h
+-
+stdio.h
+-
+utility
+-
+
+../cds/gc/details/hp_common.h
+cds/algo/atomic.h
+-
+cds/gc/details/retired_ptr.h
+-
+cds/details/throw_exception.h
+-
+
+../cds/gc/details/retired_ptr.h
+cds/details/defs.h
+-
+
+../cds/gc/dhp.h
+exception
+-
+cds/gc/details/hp_common.h
+-
+cds/threading/model.h
+-
+cds/intrusive/free_list_selector.h
+-
+cds/details/throw_exception.h
+-
+cds/details/marked_ptr.h
+-
+cds/user_setup/cache_line.h
+-
+
+../cds/gc/hp.h
+exception
+-
+cds/gc/details/hp_common.h
+-
+cds/threading/model.h
+-
+cds/details/throw_exception.h
+-
+cds/details/marked_ptr.h
+-
+cds/user_setup/cache_line.h
+-
+
+../cds/gc/hp_membar.h
+cds/details/defs.h
+-
+atomic
+-
+
+../cds/init.h
+cds/details/defs.h
+-
+cds/os/topology.h
+-
+cds/threading/model.h
+-
+
+../cds/intrusive/details/base.h
+cds/intrusive/details/node_traits.h
+-
+cds/details/allocator.h
+-
+cds/algo/backoff_strategy.h
+-
+
+../cds/intrusive/details/node_traits.h
+cds/intrusive/options.h
+-
+
+../cds/intrusive/free_list.h
+cds/algo/atomic.h
+-
+cds/intrusive/free_list.h
+-
+
+../cds/intrusive/free_list_selector.h
+cds/details/defs.h
+-
+cds/intrusive/free_list_tagged.h
+-
+cds/intrusive/free_list.h
+-
+
+../cds/intrusive/free_list_tagged.h
+cds/algo/atomic.h
+-
+cds/intrusive/free_list_tagged.h
+-
+
+../cds/intrusive/options.h
+cds/opt/options.h
+-
+cds/details/allocator.h
+-
+
+../cds/opt/buffer.h
+memory.h
+-
+cds/details/defs.h
+-
+cds/user_setup/allocator.h
+-
+cds/details/allocator.h
+-
+cds/algo/int_algo.h
+-
+memory
+-
+
+../cds/opt/options.h
+cstdlib
+-
+cds/details/aligned_type.h
+-
+cds/user_setup/allocator.h
+-
+cds/user_setup/cache_line.h
+-
+cds/algo/atomic.h
+-
+cds/opt/options.h
+-
+type_traits
+-
+cds/opt/options.h
+-
+
+../cds/opt/value_cleaner.h
+cds/details/defs.h
+-
+
+../cds/os/aix/alloc_aligned.h
+cds/os/posix/alloc_aligned.h
+-
+
+../cds/os/aix/topology.h
+cds/os/details/fake_topology.h
+-
+unistd.h
+-
+sys/processor.h
+-
+
+../cds/os/alloc_aligned.h
+cds/details/defs.h
+-
+cds/os/win/alloc_aligned.h
+-
+cds/os/linux/alloc_aligned.h
+-
+cds/os/sunos/alloc_aligned.h
+-
+cds/os/hpux/alloc_aligned.h
+-
+cds/os/aix/alloc_aligned.h
+-
+cds/os/free_bsd/alloc_aligned.h
+-
+cds/os/posix/alloc_aligned.h
+-
+memory
+-
+cds/details/is_aligned.h
+-
+cds/algo/int_algo.h
+-
+cds/details/throw_exception.h
+-
+
+../cds/os/details/fake_topology.h
+cds/details/defs.h
+-
+cds/threading/model.h
+-
+
+../cds/os/free_bsd/alloc_aligned.h
+cds/os/posix/alloc_aligned.h
+-
+
+../cds/os/free_bsd/topology.h
+cds/os/details/fake_topology.h
+-
+sys/types.h
+-
+sys/sysctl.h
+-
+
+../cds/os/hpux/alloc_aligned.h
+cds/os/libc/alloc_aligned.h
+-
+
+../cds/os/hpux/topology.h
+sys/mpctl.h
+-
+
+../cds/os/libc/alloc_aligned.h
+stdlib.h
+-
+
+../cds/os/linux/alloc_aligned.h
+cds/os/libc/alloc_aligned.h
+-
+cds/os/posix/alloc_aligned.h
+-
+
+../cds/os/linux/topology.h
+cds/details/defs.h
+-
+cds/threading/model.h
+-
+sys/syscall.h
+-
+sched.h
+-
+
+../cds/os/osx/topology.h
+cds/os/details/fake_topology.h
+-
+
+../cds/os/posix/alloc_aligned.h
+stdlib.h
+-
+
+../cds/os/posix/fake_topology.h
+cds/os/details/fake_topology.h
+-
+unistd.h
+-
+
+../cds/os/posix/thread.h
+pthread.h
+-
+signal.h
+-
+
+../cds/os/sunos/alloc_aligned.h
+cds/os/libc/alloc_aligned.h
+-
+
+../cds/os/sunos/topology.h
+sys/processor.h
+-
+unistd.h
+-
+
+../cds/os/thread.h
+thread
+-
+cds/details/defs.h
+-
+cds/os/win/thread.h
+-
+cds/os/posix/thread.h
+-
+
+../cds/os/topology.h
+cds/details/defs.h
+-
+cds/os/win/topology.h
+-
+cds/os/linux/topology.h
+-
+cds/os/sunos/topology.h
+-
+cds/os/hpux/topology.h
+-
+cds/os/aix/topology.h
+-
+cds/os/free_bsd/topology.h
+-
+cds/os/osx/topology.h
+-
+cds/os/posix/fake_topology.h
+-
+
+../cds/os/win/alloc_aligned.h
+malloc.h
+-
+
+../cds/os/win/thread.h
+windows.h
+-
+
+../cds/os/win/topology.h
+cds/details/defs.h
+-
+windows.h
+-
+
+../cds/threading/details/_common.h
+cds/urcu/details/gp_decl.h
+-
+cds/urcu/details/sh_decl.h
+-
+cds/algo/elimination_tls.h
+-
+
+../cds/threading/details/auto_detect.h
+cds/threading/details/msvc.h
+-
+cds/threading/details/wintls.h
+-
+cds/threading/details/pthread.h
+-
+cds/threading/details/gcc.h
+-
+cds/threading/details/cxx11.h
+-
+
+../cds/threading/details/cxx11.h
+cds/threading/details/cxx11_manager.h
+-
+
+../cds/threading/details/cxx11_manager.h
+cds/threading/details/_common.h
+-
+
+../cds/threading/details/gcc.h
+cds/threading/details/gcc_manager.h
+-
+
+../cds/threading/details/gcc_manager.h
+cds/threading/details/_common.h
+-
+
+../cds/threading/details/msvc.h
+cds/threading/details/msvc_manager.h
+-
+
+../cds/threading/details/msvc_manager.h
+cds/threading/details/_common.h
+-
+
+../cds/threading/details/pthread.h
+cds/threading/details/pthread_manager.h
+-
+
+../cds/threading/details/pthread_manager.h
+system_error
+-
+stdio.h
+-
+pthread.h
+-
+cds/threading/details/_common.h
+-
+cds/details/throw_exception.h
+-
+
+../cds/threading/details/wintls.h
+stdio.h
+-
+cds/threading/details/wintls_manager.h
+-
+
+../cds/threading/details/wintls_manager.h
+system_error
+-
+stdio.h
+-
+cds/threading/details/_common.h
+-
+cds/details/throw_exception.h
+-
+
+../cds/threading/model.h
+cds/threading/details/_common.h
+-
+cds/user_setup/threading.h
+-
+cds/threading/details/auto_detect.h
+-
+
+../cds/urcu/details/base.h
+cds/algo/atomic.h
+-
+cds/gc/details/retired_ptr.h
+-
+cds/details/allocator.h
+-
+cds/os/thread.h
+-
+cds/details/marked_ptr.h
+-
+cds/urcu/general_buffered.h
+-
+cds/urcu/general_buffered.h
+-
+
+../cds/urcu/details/gp.h
+cds/urcu/details/gp_decl.h
+-
+cds/threading/model.h
+-
+
+../cds/urcu/details/gp_decl.h
+cds/urcu/details/base.h
+-
+cds/user_setup/cache_line.h
+-
+
+../cds/urcu/details/gpb.h
+mutex
+-
+limits
+-
+cds/urcu/details/gp.h
+-
+cds/algo/backoff_strategy.h
+-
+cds/container/vyukov_mpmc_cycle_queue.h
+-
+
+../cds/urcu/details/sh.h
+memory.h
+-
+cds/urcu/details/sh_decl.h
+-
+cds/threading/model.h
+-
+
+../cds/urcu/details/sh_decl.h
+cds/urcu/details/base.h
+-
+cds/user_setup/cache_line.h
+-
+signal.h
+-
+
+../cds/urcu/general_buffered.h
+cds/urcu/details/gpb.h
+-
+
+../cds/user_setup/allocator.h
+memory
+-
+cds/os/alloc_aligned.h
+-
+
+../cds/user_setup/cache_line.h
+
+../cds/user_setup/threading.h
+
+../cds/version.h
+
+/home/damire/space/libcds/src/dhp.cpp
+algorithm
+-
+vector
+-
+cds/gc/dhp.h
+-
+cds/os/thread.h
+-
+
+/home/damire/space/libcds/src/dllmain.cpp
+cds/details/defs.h
+-
+cds/os/thread.h
+-
+vld.h
+-
+cds/os/topology.h
+-
+cds/algo/bitop.h
+-
+cds/os/win/topology.h
+-
+
+/home/damire/space/libcds/src/hp.cpp
+algorithm
+-
+vector
+-
+cds/gc/hp.h
+-
+cds/os/thread.h
+-
+cds/gc/hp_membar.h
+-
+unistd.h
+-
+sys/syscall.h
+-
+linux/membarrier.h
+-
+
+/home/damire/space/libcds/src/hp_thread_local.cpp
+cds/gc/hp.h
+-
+map
+-
+
+/home/damire/space/libcds/src/init.cpp
+cds/init.h
+-
+cds/algo/atomic.h
+-
+cds/algo/backoff_strategy.h
+-
+cds/threading/details/msvc_manager.h
+-
+cds/threading/details/wintls_manager.h
+-
+cds/threading/details/gcc_manager.h
+-
+cds/threading/details/pthread_manager.h
+-
+cds/threading/details/cxx11_manager.h
+-
+
+/home/damire/space/libcds/src/thread_data.cpp
+cds/threading/details/_common.h
+-
+cds/gc/hp.h
+-
+cds/gc/dhp.h
+-
+cds/algo/elimination_tls.h
+-
+
+/home/damire/space/libcds/src/topology_hpux.cpp
+cds/os/topology.h
+-
+cds/algo/atomic.h
+-
+limits
+-
+
+/home/damire/space/libcds/src/topology_linux.cpp
+cds/os/topology.h
+-
+thread
+-
+unistd.h
+-
+fstream
+-
+
+/home/damire/space/libcds/src/topology_osx.cpp
+cds/os/topology.h
+-
+sys/types.h
+-
+sys/sysctl.h
+-
+
+/home/damire/space/libcds/src/urcu_gp.cpp
+cds/urcu/details/gp.h
+-
+
+/home/damire/space/libcds/src/urcu_sh.cpp
+cds/urcu/details/sh.h
+-
+
diff --git a/libcds-debug/CMakeFiles/cds.dir/DependInfo.cmake b/libcds-debug/CMakeFiles/cds.dir/DependInfo.cmake
new file mode 100644
index 000000000..2a2b2ba61
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds.dir/DependInfo.cmake
@@ -0,0 +1,43 @@
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ "CXX"
+ )
+# The set of files for implicit dependencies of each language:
+set(CMAKE_DEPENDS_CHECK_CXX
+ "/home/damire/space/libcds/src/dhp.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/dhp.cpp.o"
+ "/home/damire/space/libcds/src/dllmain.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/dllmain.cpp.o"
+ "/home/damire/space/libcds/src/hp.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/hp.cpp.o"
+ "/home/damire/space/libcds/src/hp_thread_local.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/hp_thread_local.cpp.o"
+ "/home/damire/space/libcds/src/init.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/init.cpp.o"
+ "/home/damire/space/libcds/src/thread_data.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/thread_data.cpp.o"
+ "/home/damire/space/libcds/src/topology_hpux.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/topology_hpux.cpp.o"
+ "/home/damire/space/libcds/src/topology_linux.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/topology_linux.cpp.o"
+ "/home/damire/space/libcds/src/topology_osx.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/topology_osx.cpp.o"
+ "/home/damire/space/libcds/src/urcu_gp.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/urcu_gp.cpp.o"
+ "/home/damire/space/libcds/src/urcu_sh.cpp" "/home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/src/urcu_sh.cpp.o"
+ )
+set(CMAKE_CXX_COMPILER_ID "GNU")
+
+# Preprocessor definitions for this target.
+set(CMAKE_TARGET_DEFINITIONS_CXX
+ "cds_EXPORTS"
+ )
+
+# The include file search paths:
+set(CMAKE_CXX_TARGET_INCLUDE_PATH
+ "."
+ "../"
+ )
+
+# Pairs of files generated by the same build rule.
+set(CMAKE_MULTIPLE_OUTPUT_PAIRS
+ "/home/damire/space/libcds/libcds-debug/bin/libcds.so" "/home/damire/space/libcds/libcds-debug/bin/libcds.so.2.3.3"
+ )
+
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/libcds-debug/CMakeFiles/cds.dir/build.make b/libcds-debug/CMakeFiles/cds.dir/build.make
new file mode 100644
index 000000000..98a0ab281
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds.dir/build.make
@@ -0,0 +1,252 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/damire/space/libcds
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/damire/space/libcds/libcds-debug
+
+# Include any dependencies generated for this target.
+include CMakeFiles/cds.dir/depend.make
+
+# Include the progress variables for this target.
+include CMakeFiles/cds.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include CMakeFiles/cds.dir/flags.make
+
+CMakeFiles/cds.dir/src/init.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/init.cpp.o: ../src/init.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/cds.dir/src/init.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/init.cpp.o -c /home/damire/space/libcds/src/init.cpp
+
+CMakeFiles/cds.dir/src/init.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/init.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/init.cpp > CMakeFiles/cds.dir/src/init.cpp.i
+
+CMakeFiles/cds.dir/src/init.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/init.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/init.cpp -o CMakeFiles/cds.dir/src/init.cpp.s
+
+CMakeFiles/cds.dir/src/hp.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/hp.cpp.o: ../src/hp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/cds.dir/src/hp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/hp.cpp.o -c /home/damire/space/libcds/src/hp.cpp
+
+CMakeFiles/cds.dir/src/hp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/hp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/hp.cpp > CMakeFiles/cds.dir/src/hp.cpp.i
+
+CMakeFiles/cds.dir/src/hp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/hp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/hp.cpp -o CMakeFiles/cds.dir/src/hp.cpp.s
+
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../src/hp_thread_local.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/cds.dir/src/hp_thread_local.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/hp_thread_local.cpp.o -c /home/damire/space/libcds/src/hp_thread_local.cpp
+
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/hp_thread_local.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/hp_thread_local.cpp > CMakeFiles/cds.dir/src/hp_thread_local.cpp.i
+
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/hp_thread_local.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/hp_thread_local.cpp -o CMakeFiles/cds.dir/src/hp_thread_local.cpp.s
+
+CMakeFiles/cds.dir/src/dhp.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../src/dhp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/cds.dir/src/dhp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/dhp.cpp.o -c /home/damire/space/libcds/src/dhp.cpp
+
+CMakeFiles/cds.dir/src/dhp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/dhp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/dhp.cpp > CMakeFiles/cds.dir/src/dhp.cpp.i
+
+CMakeFiles/cds.dir/src/dhp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/dhp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/dhp.cpp -o CMakeFiles/cds.dir/src/dhp.cpp.s
+
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../src/urcu_gp.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object CMakeFiles/cds.dir/src/urcu_gp.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/urcu_gp.cpp.o -c /home/damire/space/libcds/src/urcu_gp.cpp
+
+CMakeFiles/cds.dir/src/urcu_gp.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/urcu_gp.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/urcu_gp.cpp > CMakeFiles/cds.dir/src/urcu_gp.cpp.i
+
+CMakeFiles/cds.dir/src/urcu_gp.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/urcu_gp.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/urcu_gp.cpp -o CMakeFiles/cds.dir/src/urcu_gp.cpp.s
+
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../src/urcu_sh.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building CXX object CMakeFiles/cds.dir/src/urcu_sh.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/urcu_sh.cpp.o -c /home/damire/space/libcds/src/urcu_sh.cpp
+
+CMakeFiles/cds.dir/src/urcu_sh.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/urcu_sh.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/urcu_sh.cpp > CMakeFiles/cds.dir/src/urcu_sh.cpp.i
+
+CMakeFiles/cds.dir/src/urcu_sh.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/urcu_sh.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/urcu_sh.cpp -o CMakeFiles/cds.dir/src/urcu_sh.cpp.s
+
+CMakeFiles/cds.dir/src/thread_data.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../src/thread_data.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building CXX object CMakeFiles/cds.dir/src/thread_data.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/thread_data.cpp.o -c /home/damire/space/libcds/src/thread_data.cpp
+
+CMakeFiles/cds.dir/src/thread_data.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/thread_data.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/thread_data.cpp > CMakeFiles/cds.dir/src/thread_data.cpp.i
+
+CMakeFiles/cds.dir/src/thread_data.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/thread_data.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/thread_data.cpp -o CMakeFiles/cds.dir/src/thread_data.cpp.s
+
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../src/topology_hpux.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building CXX object CMakeFiles/cds.dir/src/topology_hpux.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/topology_hpux.cpp.o -c /home/damire/space/libcds/src/topology_hpux.cpp
+
+CMakeFiles/cds.dir/src/topology_hpux.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/topology_hpux.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_hpux.cpp > CMakeFiles/cds.dir/src/topology_hpux.cpp.i
+
+CMakeFiles/cds.dir/src/topology_hpux.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/topology_hpux.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_hpux.cpp -o CMakeFiles/cds.dir/src/topology_hpux.cpp.s
+
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../src/topology_linux.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building CXX object CMakeFiles/cds.dir/src/topology_linux.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/topology_linux.cpp.o -c /home/damire/space/libcds/src/topology_linux.cpp
+
+CMakeFiles/cds.dir/src/topology_linux.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/topology_linux.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_linux.cpp > CMakeFiles/cds.dir/src/topology_linux.cpp.i
+
+CMakeFiles/cds.dir/src/topology_linux.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/topology_linux.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_linux.cpp -o CMakeFiles/cds.dir/src/topology_linux.cpp.s
+
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../src/topology_osx.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building CXX object CMakeFiles/cds.dir/src/topology_osx.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/topology_osx.cpp.o -c /home/damire/space/libcds/src/topology_osx.cpp
+
+CMakeFiles/cds.dir/src/topology_osx.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/topology_osx.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/topology_osx.cpp > CMakeFiles/cds.dir/src/topology_osx.cpp.i
+
+CMakeFiles/cds.dir/src/topology_osx.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/topology_osx.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/topology_osx.cpp -o CMakeFiles/cds.dir/src/topology_osx.cpp.s
+
+CMakeFiles/cds.dir/src/dllmain.cpp.o: CMakeFiles/cds.dir/flags.make
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../src/dllmain.cpp
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Building CXX object CMakeFiles/cds.dir/src/dllmain.cpp.o"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/cds.dir/src/dllmain.cpp.o -c /home/damire/space/libcds/src/dllmain.cpp
+
+CMakeFiles/cds.dir/src/dllmain.cpp.i: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/cds.dir/src/dllmain.cpp.i"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/damire/space/libcds/src/dllmain.cpp > CMakeFiles/cds.dir/src/dllmain.cpp.i
+
+CMakeFiles/cds.dir/src/dllmain.cpp.s: cmake_force
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/cds.dir/src/dllmain.cpp.s"
+ /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/damire/space/libcds/src/dllmain.cpp -o CMakeFiles/cds.dir/src/dllmain.cpp.s
+
+# Object files for target cds
+cds_OBJECTS = \
+"CMakeFiles/cds.dir/src/init.cpp.o" \
+"CMakeFiles/cds.dir/src/hp.cpp.o" \
+"CMakeFiles/cds.dir/src/hp_thread_local.cpp.o" \
+"CMakeFiles/cds.dir/src/dhp.cpp.o" \
+"CMakeFiles/cds.dir/src/urcu_gp.cpp.o" \
+"CMakeFiles/cds.dir/src/urcu_sh.cpp.o" \
+"CMakeFiles/cds.dir/src/thread_data.cpp.o" \
+"CMakeFiles/cds.dir/src/topology_hpux.cpp.o" \
+"CMakeFiles/cds.dir/src/topology_linux.cpp.o" \
+"CMakeFiles/cds.dir/src/topology_osx.cpp.o" \
+"CMakeFiles/cds.dir/src/dllmain.cpp.o"
+
+# External object files for target cds
+cds_EXTERNAL_OBJECTS =
+
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/init.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/hp.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/hp_thread_local.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/dhp.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/urcu_gp.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/urcu_sh.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/thread_data.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/topology_hpux.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/topology_linux.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/topology_osx.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/src/dllmain.cpp.o
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/build.make
+bin/libcds.so.2.3.3: CMakeFiles/cds.dir/link.txt
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/damire/space/libcds/libcds-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Linking CXX shared library bin/libcds.so"
+ $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cds.dir/link.txt --verbose=$(VERBOSE)
+ $(CMAKE_COMMAND) -E cmake_symlink_library bin/libcds.so.2.3.3 bin/libcds.so.2.3.3 bin/libcds.so
+
+bin/libcds.so: bin/libcds.so.2.3.3
+ @$(CMAKE_COMMAND) -E touch_nocreate bin/libcds.so
+
+# Rule to build all files generated by this target.
+CMakeFiles/cds.dir/build: bin/libcds.so
+
+.PHONY : CMakeFiles/cds.dir/build
+
+CMakeFiles/cds.dir/clean:
+ $(CMAKE_COMMAND) -P CMakeFiles/cds.dir/cmake_clean.cmake
+.PHONY : CMakeFiles/cds.dir/clean
+
+CMakeFiles/cds.dir/depend:
+ cd /home/damire/space/libcds/libcds-debug && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/damire/space/libcds /home/damire/space/libcds /home/damire/space/libcds/libcds-debug /home/damire/space/libcds/libcds-debug /home/damire/space/libcds/libcds-debug/CMakeFiles/cds.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : CMakeFiles/cds.dir/depend
+
diff --git a/libcds-debug/CMakeFiles/cds.dir/cmake_clean.cmake b/libcds-debug/CMakeFiles/cds.dir/cmake_clean.cmake
new file mode 100644
index 000000000..73645dfb4
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds.dir/cmake_clean.cmake
@@ -0,0 +1,21 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/cds.dir/src/dhp.cpp.o"
+ "CMakeFiles/cds.dir/src/dllmain.cpp.o"
+ "CMakeFiles/cds.dir/src/hp.cpp.o"
+ "CMakeFiles/cds.dir/src/hp_thread_local.cpp.o"
+ "CMakeFiles/cds.dir/src/init.cpp.o"
+ "CMakeFiles/cds.dir/src/thread_data.cpp.o"
+ "CMakeFiles/cds.dir/src/topology_hpux.cpp.o"
+ "CMakeFiles/cds.dir/src/topology_linux.cpp.o"
+ "CMakeFiles/cds.dir/src/topology_osx.cpp.o"
+ "CMakeFiles/cds.dir/src/urcu_gp.cpp.o"
+ "CMakeFiles/cds.dir/src/urcu_sh.cpp.o"
+ "bin/libcds.pdb"
+ "bin/libcds.so"
+ "bin/libcds.so.2.3.3"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+ include(CMakeFiles/cds.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/libcds-debug/CMakeFiles/cds.dir/depend.internal b/libcds-debug/CMakeFiles/cds.dir/depend.internal
new file mode 100644
index 000000000..d595f32c2
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds.dir/depend.internal
@@ -0,0 +1,1212 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+CMakeFiles/cds.dir/src/dhp.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/dhp.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/free_list.h
+ ../cds/intrusive/free_list_selector.h
+ ../cds/intrusive/free_list_tagged.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/dhp.cpp
+CMakeFiles/cds.dir/src/dllmain.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/dllmain.cpp
+CMakeFiles/cds.dir/src/hp.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/gc/hp_membar.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/hp.cpp
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/hp_thread_local.cpp
+CMakeFiles/cds.dir/src/init.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/init.cpp
+CMakeFiles/cds.dir/src/thread_data.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/dhp.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/free_list.h
+ ../cds/intrusive/free_list_selector.h
+ ../cds/intrusive/free_list_tagged.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/thread_data.cpp
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/topology_hpux.cpp
+CMakeFiles/cds.dir/src/topology_linux.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/topology_linux.cpp
+CMakeFiles/cds.dir/src/topology_osx.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/topology_osx.cpp
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/urcu_gp.cpp
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o
+ ../cds/algo/atomic.h
+ ../cds/algo/backoff_strategy.h
+ ../cds/algo/base.h
+ ../cds/algo/bitop.h
+ ../cds/algo/elimination_tls.h
+ ../cds/algo/int_algo.h
+ ../cds/compiler/backoff.h
+ ../cds/compiler/bitop.h
+ ../cds/compiler/clang/defs.h
+ ../cds/compiler/cxx11_atomic.h
+ ../cds/compiler/defs.h
+ ../cds/compiler/feature_tsan.h
+ ../cds/compiler/gcc/amd64/backoff.h
+ ../cds/compiler/gcc/amd64/bitop.h
+ ../cds/compiler/gcc/amd64/cxx11_atomic.h
+ ../cds/compiler/gcc/arm7/backoff.h
+ ../cds/compiler/gcc/arm8/backoff.h
+ ../cds/compiler/gcc/compiler_barriers.h
+ ../cds/compiler/gcc/compiler_macro.h
+ ../cds/compiler/gcc/defs.h
+ ../cds/compiler/gcc/ia64/backoff.h
+ ../cds/compiler/gcc/ia64/bitop.h
+ ../cds/compiler/gcc/ia64/cxx11_atomic.h
+ ../cds/compiler/gcc/ppc64/backoff.h
+ ../cds/compiler/gcc/ppc64/bitop.h
+ ../cds/compiler/gcc/sparc/backoff.h
+ ../cds/compiler/gcc/sparc/bitop.h
+ ../cds/compiler/gcc/sparc/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/backoff.h
+ ../cds/compiler/gcc/x86/bitop.h
+ ../cds/compiler/gcc/x86/cxx11_atomic.h
+ ../cds/compiler/gcc/x86/cxx11_atomic32.h
+ ../cds/compiler/icl/compiler_barriers.h
+ ../cds/compiler/icl/defs.h
+ ../cds/compiler/vc/amd64/backoff.h
+ ../cds/compiler/vc/amd64/bitop.h
+ ../cds/compiler/vc/amd64/cxx11_atomic.h
+ ../cds/compiler/vc/compiler_barriers.h
+ ../cds/compiler/vc/defs.h
+ ../cds/compiler/vc/x86/backoff.h
+ ../cds/compiler/vc/x86/bitop.h
+ ../cds/compiler/vc/x86/cxx11_atomic.h
+ ../cds/container/details/base.h
+ ../cds/container/vyukov_mpmc_cycle_queue.h
+ ../cds/details/aligned_type.h
+ ../cds/details/allocator.h
+ ../cds/details/bitop_generic.h
+ ../cds/details/bounded_container.h
+ ../cds/details/defs.h
+ ../cds/details/is_aligned.h
+ ../cds/details/marked_ptr.h
+ ../cds/details/throw_exception.h
+ ../cds/gc/details/hp_common.h
+ ../cds/gc/details/retired_ptr.h
+ ../cds/gc/hp.h
+ ../cds/init.h
+ ../cds/intrusive/details/base.h
+ ../cds/intrusive/details/node_traits.h
+ ../cds/intrusive/options.h
+ ../cds/opt/buffer.h
+ ../cds/opt/options.h
+ ../cds/opt/value_cleaner.h
+ ../cds/os/aix/alloc_aligned.h
+ ../cds/os/aix/topology.h
+ ../cds/os/alloc_aligned.h
+ ../cds/os/details/fake_topology.h
+ ../cds/os/free_bsd/alloc_aligned.h
+ ../cds/os/free_bsd/topology.h
+ ../cds/os/hpux/alloc_aligned.h
+ ../cds/os/hpux/topology.h
+ ../cds/os/libc/alloc_aligned.h
+ ../cds/os/linux/alloc_aligned.h
+ ../cds/os/linux/topology.h
+ ../cds/os/osx/topology.h
+ ../cds/os/posix/alloc_aligned.h
+ ../cds/os/posix/fake_topology.h
+ ../cds/os/posix/thread.h
+ ../cds/os/sunos/alloc_aligned.h
+ ../cds/os/sunos/topology.h
+ ../cds/os/thread.h
+ ../cds/os/topology.h
+ ../cds/os/win/alloc_aligned.h
+ ../cds/os/win/thread.h
+ ../cds/os/win/topology.h
+ ../cds/threading/details/_common.h
+ ../cds/threading/details/auto_detect.h
+ ../cds/threading/details/cxx11.h
+ ../cds/threading/details/cxx11_manager.h
+ ../cds/threading/details/gcc.h
+ ../cds/threading/details/gcc_manager.h
+ ../cds/threading/details/msvc.h
+ ../cds/threading/details/msvc_manager.h
+ ../cds/threading/details/pthread.h
+ ../cds/threading/details/pthread_manager.h
+ ../cds/threading/details/wintls.h
+ ../cds/threading/details/wintls_manager.h
+ ../cds/threading/model.h
+ ../cds/urcu/details/base.h
+ ../cds/urcu/details/gp.h
+ ../cds/urcu/details/gp_decl.h
+ ../cds/urcu/details/gpb.h
+ ../cds/urcu/details/sh.h
+ ../cds/urcu/details/sh_decl.h
+ ../cds/urcu/general_buffered.h
+ ../cds/user_setup/allocator.h
+ ../cds/user_setup/cache_line.h
+ ../cds/user_setup/threading.h
+ ../cds/version.h
+ /home/damire/space/libcds/src/urcu_sh.cpp
diff --git a/libcds-debug/CMakeFiles/cds.dir/depend.make b/libcds-debug/CMakeFiles/cds.dir/depend.make
new file mode 100644
index 000000000..2d0789ff1
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds.dir/depend.make
@@ -0,0 +1,1212 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/gc/dhp.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/intrusive/free_list.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/intrusive/free_list_selector.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/intrusive/free_list_tagged.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/dhp.cpp.o: ../src/dhp.cpp
+
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/dllmain.cpp.o: ../src/dllmain.cpp
+
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/gc/hp_membar.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/hp.cpp.o: ../src/hp.cpp
+
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/hp_thread_local.cpp.o: ../src/hp_thread_local.cpp
+
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/init.cpp.o: ../src/init.cpp
+
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/gc/dhp.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/intrusive/free_list.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/intrusive/free_list_selector.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/intrusive/free_list_tagged.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/thread_data.cpp.o: ../src/thread_data.cpp
+
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/topology_hpux.cpp.o: ../src/topology_hpux.cpp
+
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/topology_linux.cpp.o: ../src/topology_linux.cpp
+
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/topology_osx.cpp.o: ../src/topology_osx.cpp
+
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/urcu_gp.cpp.o: ../src/urcu_gp.cpp
+
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/algo/atomic.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/algo/backoff_strategy.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/algo/base.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/algo/bitop.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/algo/elimination_tls.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/algo/int_algo.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/backoff.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/bitop.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/clang/defs.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/defs.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/feature_tsan.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/amd64/backoff.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/amd64/bitop.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/arm7/backoff.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/arm8/backoff.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/compiler_barriers.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/compiler_macro.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/defs.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/ia64/backoff.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/ia64/bitop.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/ia64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/ppc64/backoff.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/ppc64/bitop.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/sparc/backoff.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/sparc/bitop.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/sparc/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/x86/backoff.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/x86/bitop.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/gcc/x86/cxx11_atomic32.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/icl/compiler_barriers.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/icl/defs.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/amd64/backoff.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/amd64/bitop.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/amd64/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/compiler_barriers.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/defs.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/x86/backoff.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/x86/bitop.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/compiler/vc/x86/cxx11_atomic.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/container/details/base.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/container/vyukov_mpmc_cycle_queue.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/details/aligned_type.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/details/allocator.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/details/bitop_generic.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/details/bounded_container.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/details/defs.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/details/is_aligned.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/details/marked_ptr.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/details/throw_exception.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/gc/details/hp_common.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/gc/details/retired_ptr.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/gc/hp.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/init.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/intrusive/details/base.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/intrusive/details/node_traits.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/intrusive/options.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/opt/buffer.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/opt/options.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/opt/value_cleaner.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/aix/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/aix/topology.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/details/fake_topology.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/free_bsd/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/free_bsd/topology.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/hpux/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/hpux/topology.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/libc/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/linux/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/linux/topology.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/osx/topology.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/posix/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/posix/fake_topology.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/posix/thread.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/sunos/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/sunos/topology.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/thread.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/topology.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/win/alloc_aligned.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/win/thread.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/os/win/topology.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/_common.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/auto_detect.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/cxx11.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/cxx11_manager.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/gcc.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/gcc_manager.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/msvc.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/msvc_manager.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/pthread.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/pthread_manager.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/wintls.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/details/wintls_manager.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/threading/model.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/base.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/gp.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/gp_decl.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/gpb.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/sh.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/urcu/details/sh_decl.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/urcu/general_buffered.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/user_setup/allocator.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/user_setup/cache_line.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/user_setup/threading.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../cds/version.h
+CMakeFiles/cds.dir/src/urcu_sh.cpp.o: ../src/urcu_sh.cpp
+
diff --git a/libcds-debug/CMakeFiles/cds.dir/flags.make b/libcds-debug/CMakeFiles/cds.dir/flags.make
new file mode 100644
index 000000000..1dd59efa5
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# compile CXX with /usr/bin/c++
+CXX_FLAGS = -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11
+
+CXX_DEFINES = -Dcds_EXPORTS
+
+CXX_INCLUDES = -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds
+
diff --git a/libcds-debug/CMakeFiles/cds.dir/link.txt b/libcds-debug/CMakeFiles/cds.dir/link.txt
new file mode 100644
index 000000000..2d67b73e8
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/c++ -fPIC -O3 -DNDEBUG -shared -Wl,-soname,libcds.so.2.3.3 -o bin/libcds.so.2.3.3 CMakeFiles/cds.dir/src/init.cpp.o CMakeFiles/cds.dir/src/hp.cpp.o CMakeFiles/cds.dir/src/hp_thread_local.cpp.o CMakeFiles/cds.dir/src/dhp.cpp.o CMakeFiles/cds.dir/src/urcu_gp.cpp.o CMakeFiles/cds.dir/src/urcu_sh.cpp.o CMakeFiles/cds.dir/src/thread_data.cpp.o CMakeFiles/cds.dir/src/topology_hpux.cpp.o CMakeFiles/cds.dir/src/topology_linux.cpp.o CMakeFiles/cds.dir/src/topology_osx.cpp.o CMakeFiles/cds.dir/src/dllmain.cpp.o -lpthread
diff --git a/libcds-debug/CMakeFiles/cds.dir/progress.make b/libcds-debug/CMakeFiles/cds.dir/progress.make
new file mode 100644
index 000000000..5d4d46460
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cds.dir/progress.make
@@ -0,0 +1,13 @@
+CMAKE_PROGRESS_1 = 1
+CMAKE_PROGRESS_2 = 2
+CMAKE_PROGRESS_3 = 3
+CMAKE_PROGRESS_4 = 4
+CMAKE_PROGRESS_5 = 5
+CMAKE_PROGRESS_6 = 6
+CMAKE_PROGRESS_7 = 7
+CMAKE_PROGRESS_8 = 8
+CMAKE_PROGRESS_9 = 9
+CMAKE_PROGRESS_10 = 10
+CMAKE_PROGRESS_11 = 11
+CMAKE_PROGRESS_12 = 12
+
diff --git a/libcds-debug/CMakeFiles/cmake.check_cache b/libcds-debug/CMakeFiles/cmake.check_cache
new file mode 100644
index 000000000..3dccd7317
--- /dev/null
+++ b/libcds-debug/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/libcds-debug/CMakeFiles/progress.marks b/libcds-debug/CMakeFiles/progress.marks
new file mode 100644
index 000000000..a45fd52cc
--- /dev/null
+++ b/libcds-debug/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+24
diff --git a/libcds-debug/CPackConfig.cmake b/libcds-debug/CPackConfig.cmake
new file mode 100644
index 000000000..4ae0a4379
--- /dev/null
+++ b/libcds-debug/CPackConfig.cmake
@@ -0,0 +1,114 @@
+# This file will be configured to contain variables for CPack. These variables
+# should be set in the CMake list file of the project before CPack module is
+# included. The list of available CPACK_xxx variables and their associated
+# documentation may be obtained using
+# cpack --help-variable-list
+#
+# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME)
+# and some are specific to a generator
+# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables
+# usually begin with CPACK__xxxx.
+
+
+set(CPACK_ARCHIVE_COMPONENT_INSTALL "ON")
+set(CPACK_BINARY_7Z "")
+set(CPACK_BINARY_BUNDLE "")
+set(CPACK_BINARY_CYGWIN "")
+set(CPACK_BINARY_DEB "OFF")
+set(CPACK_BINARY_DRAGNDROP "")
+set(CPACK_BINARY_FREEBSD "OFF")
+set(CPACK_BINARY_IFW "OFF")
+set(CPACK_BINARY_NSIS "OFF")
+set(CPACK_BINARY_NUGET "")
+set(CPACK_BINARY_OSXX11 "")
+set(CPACK_BINARY_PACKAGEMAKER "")
+set(CPACK_BINARY_PRODUCTBUILD "")
+set(CPACK_BINARY_RPM "OFF")
+set(CPACK_BINARY_STGZ "ON")
+set(CPACK_BINARY_TBZ2 "OFF")
+set(CPACK_BINARY_TGZ "ON")
+set(CPACK_BINARY_TXZ "OFF")
+set(CPACK_BINARY_TZ "ON")
+set(CPACK_BINARY_WIX "")
+set(CPACK_BINARY_ZIP "")
+set(CPACK_BUILD_SOURCE_DIRS "/home/damire/space/libcds;/home/damire/space/libcds/libcds-debug")
+set(CPACK_CMAKE_GENERATOR "Unix Makefiles")
+set(CPACK_COMPONENTS_ALL "devel;lib")
+set(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION "All of the tools you'll ever need to develop lock-free oriented software with libcds")
+set(CPACK_COMPONENT_GROUP_RUNTIME_DESCRIPTION "Only libcds library for runtime")
+set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE")
+set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE")
+set(CPACK_COMPONENT_devel_DEPENDS "lib")
+set(CPACK_COMPONENT_devel_DISPLAY_NAME "C++ Headers")
+set(CPACK_COMPONENT_devel_GROUP "Development")
+set(CPACK_COMPONENT_lib_DISPLAY_NAME "Libraries")
+set(CPACK_COMPONENT_lib_GROUP "Runtime")
+set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA "/home/damire/space/libcds/build/cmake/post_install_script.sh;;/home/damire/space/libcds/build/cmake/post_uninstall_script.sh;")
+set(CPACK_DEBIAN_PACKAGE_DEPENDS "boost (>= 1.50)")
+set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://github.com/khizmax/libcds")
+set(CPACK_DEB_COMPONENT_INSTALL "ON")
+set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.16/Templates/CPack.GenericDescription.txt")
+set(CPACK_GENERATOR "STGZ;TGZ;TZ")
+set(CPACK_INSTALL_CMAKE_PROJECTS "/home/damire/space/libcds/libcds-debug;cds;ALL;/")
+set(CPACK_INSTALL_PREFIX "/usr/local")
+set(CPACK_MODULE_PATH "/home/damire/space/libcds/build/cmake")
+set(CPACK_NSIS_CONTACT "Max Khizhinsky ")
+set(CPACK_NSIS_DISPLAY_NAME "cds")
+set(CPACK_NSIS_DISPLAY_NAME_SET "TRUE")
+set(CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL "ON")
+set(CPACK_NSIS_INSTALLER_ICON_CODE "")
+set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "")
+set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES")
+set(CPACK_NSIS_MODIFY_PATH "ON")
+set(CPACK_NSIS_PACKAGE_NAME "cds")
+set(CPACK_OUTPUT_CONFIG_FILE "/home/damire/space/libcds/libcds-debug/CPackConfig.cmake")
+set(CPACK_PACKAGE_CONTACT "Max Khizhinsky ")
+set(CPACK_PACKAGE_DEFAULT_LOCATION "/")
+set(CPACK_PACKAGE_DESCRIPTION_FILE "/home/damire/space/libcds/build/cmake/description.txt")
+set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Library of concurrent data structures")
+set(CPACK_PACKAGE_FILE_NAME "cds-2.3.3-1")
+set(CPACK_PACKAGE_INSTALL_DIRECTORY "cds")
+set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "cds")
+set(CPACK_PACKAGE_NAME "cds")
+set(CPACK_PACKAGE_RELEASE "1")
+set(CPACK_PACKAGE_RELOCATABLE "true")
+set(CPACK_PACKAGE_VENDOR "Humanity")
+set(CPACK_PACKAGE_VERSION "2.3.3")
+set(CPACK_PACKAGE_VERSION_MAJOR "0")
+set(CPACK_PACKAGE_VERSION_MINOR "1")
+set(CPACK_PACKAGE_VERSION_PATCH "1")
+set(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake-3.16/Templates/CPack.GenericLicense.txt")
+set(CPACK_RESOURCE_FILE_README "/usr/share/cmake-3.16/Templates/CPack.GenericDescription.txt")
+set(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake-3.16/Templates/CPack.GenericWelcome.txt")
+set(CPACK_RPM_COMPONENT_INSTALL "ON")
+set(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "/usr/local")
+set(CPACK_RPM_PACKAGE_GROUP "System Environment/Base")
+set(CPACK_RPM_PACKAGE_LICENSE "GPL")
+set(CPACK_RPM_PACKAGE_RELEASE "1")
+set(CPACK_RPM_PACKAGE_REQUIRES "boost >= 1.50")
+set(CPACK_RPM_PACKAGE_URL "https://github.com/khizmax/libcds")
+set(CPACK_RPM_POST_INSTALL_SCRIPT_FILE "/home/damire/space/libcds/build/cmake/post_install_script.sh")
+set(CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE "/home/damire/space/libcds/build/cmake/post_uninstall_script.sh")
+set(CPACK_RPM_devel_PACKAGE_REQUIRES "boost >= 1.50, cds-lib = 2.3.3")
+set(CPACK_SET_DESTDIR "OFF")
+set(CPACK_SOURCE_7Z "")
+set(CPACK_SOURCE_CYGWIN "")
+set(CPACK_SOURCE_GENERATOR "TBZ2;TGZ;TXZ;TZ")
+set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/home/damire/space/libcds/libcds-debug/CPackSourceConfig.cmake")
+set(CPACK_SOURCE_RPM "OFF")
+set(CPACK_SOURCE_TBZ2 "ON")
+set(CPACK_SOURCE_TGZ "ON")
+set(CPACK_SOURCE_TXZ "ON")
+set(CPACK_SOURCE_TZ "ON")
+set(CPACK_SOURCE_ZIP "OFF")
+set(CPACK_SYSTEM_NAME "Linux")
+set(CPACK_TOPLEVEL_TAG "Linux")
+set(CPACK_WIX_SIZEOF_VOID_P "8")
+
+if(NOT CPACK_PROPERTIES_FILE)
+ set(CPACK_PROPERTIES_FILE "/home/damire/space/libcds/libcds-debug/CPackProperties.cmake")
+endif()
+
+if(EXISTS ${CPACK_PROPERTIES_FILE})
+ include(${CPACK_PROPERTIES_FILE})
+endif()
diff --git a/libcds-debug/CPackSourceConfig.cmake b/libcds-debug/CPackSourceConfig.cmake
new file mode 100644
index 000000000..f3a465add
--- /dev/null
+++ b/libcds-debug/CPackSourceConfig.cmake
@@ -0,0 +1,122 @@
+# This file will be configured to contain variables for CPack. These variables
+# should be set in the CMake list file of the project before CPack module is
+# included. The list of available CPACK_xxx variables and their associated
+# documentation may be obtained using
+# cpack --help-variable-list
+#
+# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME)
+# and some are specific to a generator
+# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables
+# usually begin with CPACK__xxxx.
+
+
+set(CPACK_ARCHIVE_COMPONENT_INSTALL "ON")
+set(CPACK_BINARY_7Z "")
+set(CPACK_BINARY_BUNDLE "")
+set(CPACK_BINARY_CYGWIN "")
+set(CPACK_BINARY_DEB "OFF")
+set(CPACK_BINARY_DRAGNDROP "")
+set(CPACK_BINARY_FREEBSD "OFF")
+set(CPACK_BINARY_IFW "OFF")
+set(CPACK_BINARY_NSIS "OFF")
+set(CPACK_BINARY_NUGET "")
+set(CPACK_BINARY_OSXX11 "")
+set(CPACK_BINARY_PACKAGEMAKER "")
+set(CPACK_BINARY_PRODUCTBUILD "")
+set(CPACK_BINARY_RPM "OFF")
+set(CPACK_BINARY_STGZ "ON")
+set(CPACK_BINARY_TBZ2 "OFF")
+set(CPACK_BINARY_TGZ "ON")
+set(CPACK_BINARY_TXZ "OFF")
+set(CPACK_BINARY_TZ "ON")
+set(CPACK_BINARY_WIX "")
+set(CPACK_BINARY_ZIP "")
+set(CPACK_BUILD_SOURCE_DIRS "/home/damire/space/libcds;/home/damire/space/libcds/libcds-debug")
+set(CPACK_CMAKE_GENERATOR "Unix Makefiles")
+set(CPACK_COMPONENTS_ALL "devel;lib")
+set(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION "All of the tools you'll ever need to develop lock-free oriented software with libcds")
+set(CPACK_COMPONENT_GROUP_RUNTIME_DESCRIPTION "Only libcds library for runtime")
+set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE")
+set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE")
+set(CPACK_COMPONENT_devel_DEPENDS "lib")
+set(CPACK_COMPONENT_devel_DISPLAY_NAME "C++ Headers")
+set(CPACK_COMPONENT_devel_GROUP "Development")
+set(CPACK_COMPONENT_lib_DISPLAY_NAME "Libraries")
+set(CPACK_COMPONENT_lib_GROUP "Runtime")
+set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA "/home/damire/space/libcds/build/cmake/post_install_script.sh;;/home/damire/space/libcds/build/cmake/post_uninstall_script.sh;")
+set(CPACK_DEBIAN_PACKAGE_DEPENDS "boost (>= 1.50)")
+set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://github.com/khizmax/libcds")
+set(CPACK_DEB_COMPONENT_INSTALL "ON")
+set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.16/Templates/CPack.GenericDescription.txt")
+set(CPACK_GENERATOR "TBZ2;TGZ;TXZ;TZ")
+set(CPACK_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#")
+set(CPACK_INSTALLED_DIRECTORIES "/home/damire/space/libcds;/")
+set(CPACK_INSTALL_CMAKE_PROJECTS "")
+set(CPACK_INSTALL_PREFIX "/usr/local")
+set(CPACK_MODULE_PATH "/home/damire/space/libcds/build/cmake")
+set(CPACK_NSIS_CONTACT "Max Khizhinsky ")
+set(CPACK_NSIS_DISPLAY_NAME "cds")
+set(CPACK_NSIS_DISPLAY_NAME_SET "TRUE")
+set(CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL "ON")
+set(CPACK_NSIS_INSTALLER_ICON_CODE "")
+set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "")
+set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES")
+set(CPACK_NSIS_MODIFY_PATH "ON")
+set(CPACK_NSIS_PACKAGE_NAME "cds")
+set(CPACK_OUTPUT_CONFIG_FILE "/home/damire/space/libcds/libcds-debug/CPackConfig.cmake")
+set(CPACK_PACKAGE_CONTACT "Max Khizhinsky ")
+set(CPACK_PACKAGE_DEFAULT_LOCATION "/")
+set(CPACK_PACKAGE_DESCRIPTION_FILE "/home/damire/space/libcds/build/cmake/description.txt")
+set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Library of concurrent data structures")
+set(CPACK_PACKAGE_FILE_NAME "cds-2.3.3-Source")
+set(CPACK_PACKAGE_INSTALL_DIRECTORY "cds")
+set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "cds")
+set(CPACK_PACKAGE_NAME "cds")
+set(CPACK_PACKAGE_RELEASE "1")
+set(CPACK_PACKAGE_RELOCATABLE "true")
+set(CPACK_PACKAGE_VENDOR "Humanity")
+set(CPACK_PACKAGE_VERSION "2.3.3")
+set(CPACK_PACKAGE_VERSION_MAJOR "0")
+set(CPACK_PACKAGE_VERSION_MINOR "1")
+set(CPACK_PACKAGE_VERSION_PATCH "1")
+set(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake-3.16/Templates/CPack.GenericLicense.txt")
+set(CPACK_RESOURCE_FILE_README "/usr/share/cmake-3.16/Templates/CPack.GenericDescription.txt")
+set(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake-3.16/Templates/CPack.GenericWelcome.txt")
+set(CPACK_RPM_COMPONENT_INSTALL "ON")
+set(CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "/usr/local")
+set(CPACK_RPM_PACKAGE_GROUP "System Environment/Base")
+set(CPACK_RPM_PACKAGE_LICENSE "GPL")
+set(CPACK_RPM_PACKAGE_RELEASE "1")
+set(CPACK_RPM_PACKAGE_REQUIRES "boost >= 1.50")
+set(CPACK_RPM_PACKAGE_SOURCES "ON")
+set(CPACK_RPM_PACKAGE_URL "https://github.com/khizmax/libcds")
+set(CPACK_RPM_POST_INSTALL_SCRIPT_FILE "/home/damire/space/libcds/build/cmake/post_install_script.sh")
+set(CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE "/home/damire/space/libcds/build/cmake/post_uninstall_script.sh")
+set(CPACK_RPM_devel_PACKAGE_REQUIRES "boost >= 1.50, cds-lib = 2.3.3")
+set(CPACK_SET_DESTDIR "OFF")
+set(CPACK_SOURCE_7Z "")
+set(CPACK_SOURCE_CYGWIN "")
+set(CPACK_SOURCE_GENERATOR "TBZ2;TGZ;TXZ;TZ")
+set(CPACK_SOURCE_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#")
+set(CPACK_SOURCE_INSTALLED_DIRECTORIES "/home/damire/space/libcds;/")
+set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/home/damire/space/libcds/libcds-debug/CPackSourceConfig.cmake")
+set(CPACK_SOURCE_PACKAGE_FILE_NAME "cds-2.3.3-Source")
+set(CPACK_SOURCE_RPM "OFF")
+set(CPACK_SOURCE_TBZ2 "ON")
+set(CPACK_SOURCE_TGZ "ON")
+set(CPACK_SOURCE_TOPLEVEL_TAG "Linux-Source")
+set(CPACK_SOURCE_TXZ "ON")
+set(CPACK_SOURCE_TZ "ON")
+set(CPACK_SOURCE_ZIP "OFF")
+set(CPACK_STRIP_FILES "")
+set(CPACK_SYSTEM_NAME "Linux")
+set(CPACK_TOPLEVEL_TAG "Linux-Source")
+set(CPACK_WIX_SIZEOF_VOID_P "8")
+
+if(NOT CPACK_PROPERTIES_FILE)
+ set(CPACK_PROPERTIES_FILE "/home/damire/space/libcds/libcds-debug/CPackProperties.cmake")
+endif()
+
+if(EXISTS ${CPACK_PROPERTIES_FILE})
+ include(${CPACK_PROPERTIES_FILE})
+endif()
diff --git a/libcds-debug/Makefile b/libcds-debug/Makefile
new file mode 100644
index 000000000..d18fbdc33
--- /dev/null
+++ b/libcds-debug/Makefile
@@ -0,0 +1,599 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/damire/space/libcds
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/damire/space/libcds/libcds-debug
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+ /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# Special rule for the target package_source
+package_source:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..."
+ /usr/bin/cpack --config ./CPackSourceConfig.cmake /home/damire/space/libcds/libcds-debug/CPackSourceConfig.cmake
+.PHONY : package_source
+
+# Special rule for the target package_source
+package_source/fast: package_source
+
+.PHONY : package_source/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ /usr/bin/cmake -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ /usr/bin/cmake -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"devel\" \"lib\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ /usr/bin/cmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target package
+package: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..."
+ /usr/bin/cpack --config ./CPackConfig.cmake
+.PHONY : package
+
+# Special rule for the target package
+package/fast: package
+
+.PHONY : package/fast
+
+# The main all target
+all: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/libcds-debug/CMakeFiles /home/damire/space/libcds/libcds-debug/CMakeFiles/progress.marks
+ $(MAKE) -f CMakeFiles/Makefile2 all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/libcds-debug/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ $(MAKE) -f CMakeFiles/Makefile2 clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ $(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ $(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+#=============================================================================
+# Target rules for targets named cds-s
+
+# Build rule for target.
+cds-s: cmake_check_build_system
+ $(MAKE) -f CMakeFiles/Makefile2 cds-s
+.PHONY : cds-s
+
+# fast build rule for target.
+cds-s/fast:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/build
+.PHONY : cds-s/fast
+
+#=============================================================================
+# Target rules for targets named cds
+
+# Build rule for target.
+cds: cmake_check_build_system
+ $(MAKE) -f CMakeFiles/Makefile2 cds
+.PHONY : cds
+
+# fast build rule for target.
+cds/fast:
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/build
+.PHONY : cds/fast
+
+src/dhp.o: src/dhp.cpp.o
+
+.PHONY : src/dhp.o
+
+# target to build an object file
+src/dhp.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/dhp.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/dhp.cpp.o
+.PHONY : src/dhp.cpp.o
+
+src/dhp.i: src/dhp.cpp.i
+
+.PHONY : src/dhp.i
+
+# target to preprocess a source file
+src/dhp.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/dhp.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/dhp.cpp.i
+.PHONY : src/dhp.cpp.i
+
+src/dhp.s: src/dhp.cpp.s
+
+.PHONY : src/dhp.s
+
+# target to generate assembly for a file
+src/dhp.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/dhp.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/dhp.cpp.s
+.PHONY : src/dhp.cpp.s
+
+src/dllmain.o: src/dllmain.cpp.o
+
+.PHONY : src/dllmain.o
+
+# target to build an object file
+src/dllmain.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/dllmain.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/dllmain.cpp.o
+.PHONY : src/dllmain.cpp.o
+
+src/dllmain.i: src/dllmain.cpp.i
+
+.PHONY : src/dllmain.i
+
+# target to preprocess a source file
+src/dllmain.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/dllmain.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/dllmain.cpp.i
+.PHONY : src/dllmain.cpp.i
+
+src/dllmain.s: src/dllmain.cpp.s
+
+.PHONY : src/dllmain.s
+
+# target to generate assembly for a file
+src/dllmain.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/dllmain.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/dllmain.cpp.s
+.PHONY : src/dllmain.cpp.s
+
+src/hp.o: src/hp.cpp.o
+
+.PHONY : src/hp.o
+
+# target to build an object file
+src/hp.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/hp.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/hp.cpp.o
+.PHONY : src/hp.cpp.o
+
+src/hp.i: src/hp.cpp.i
+
+.PHONY : src/hp.i
+
+# target to preprocess a source file
+src/hp.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/hp.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/hp.cpp.i
+.PHONY : src/hp.cpp.i
+
+src/hp.s: src/hp.cpp.s
+
+.PHONY : src/hp.s
+
+# target to generate assembly for a file
+src/hp.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/hp.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/hp.cpp.s
+.PHONY : src/hp.cpp.s
+
+src/hp_thread_local.o: src/hp_thread_local.cpp.o
+
+.PHONY : src/hp_thread_local.o
+
+# target to build an object file
+src/hp_thread_local.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/hp_thread_local.cpp.o
+.PHONY : src/hp_thread_local.cpp.o
+
+src/hp_thread_local.i: src/hp_thread_local.cpp.i
+
+.PHONY : src/hp_thread_local.i
+
+# target to preprocess a source file
+src/hp_thread_local.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/hp_thread_local.cpp.i
+.PHONY : src/hp_thread_local.cpp.i
+
+src/hp_thread_local.s: src/hp_thread_local.cpp.s
+
+.PHONY : src/hp_thread_local.s
+
+# target to generate assembly for a file
+src/hp_thread_local.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/hp_thread_local.cpp.s
+.PHONY : src/hp_thread_local.cpp.s
+
+src/init.o: src/init.cpp.o
+
+.PHONY : src/init.o
+
+# target to build an object file
+src/init.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/init.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/init.cpp.o
+.PHONY : src/init.cpp.o
+
+src/init.i: src/init.cpp.i
+
+.PHONY : src/init.i
+
+# target to preprocess a source file
+src/init.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/init.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/init.cpp.i
+.PHONY : src/init.cpp.i
+
+src/init.s: src/init.cpp.s
+
+.PHONY : src/init.s
+
+# target to generate assembly for a file
+src/init.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/init.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/init.cpp.s
+.PHONY : src/init.cpp.s
+
+src/thread_data.o: src/thread_data.cpp.o
+
+.PHONY : src/thread_data.o
+
+# target to build an object file
+src/thread_data.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/thread_data.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/thread_data.cpp.o
+.PHONY : src/thread_data.cpp.o
+
+src/thread_data.i: src/thread_data.cpp.i
+
+.PHONY : src/thread_data.i
+
+# target to preprocess a source file
+src/thread_data.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/thread_data.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/thread_data.cpp.i
+.PHONY : src/thread_data.cpp.i
+
+src/thread_data.s: src/thread_data.cpp.s
+
+.PHONY : src/thread_data.s
+
+# target to generate assembly for a file
+src/thread_data.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/thread_data.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/thread_data.cpp.s
+.PHONY : src/thread_data.cpp.s
+
+src/topology_hpux.o: src/topology_hpux.cpp.o
+
+.PHONY : src/topology_hpux.o
+
+# target to build an object file
+src/topology_hpux.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/topology_hpux.cpp.o
+.PHONY : src/topology_hpux.cpp.o
+
+src/topology_hpux.i: src/topology_hpux.cpp.i
+
+.PHONY : src/topology_hpux.i
+
+# target to preprocess a source file
+src/topology_hpux.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/topology_hpux.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/topology_hpux.cpp.i
+.PHONY : src/topology_hpux.cpp.i
+
+src/topology_hpux.s: src/topology_hpux.cpp.s
+
+.PHONY : src/topology_hpux.s
+
+# target to generate assembly for a file
+src/topology_hpux.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/topology_hpux.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/topology_hpux.cpp.s
+.PHONY : src/topology_hpux.cpp.s
+
+src/topology_linux.o: src/topology_linux.cpp.o
+
+.PHONY : src/topology_linux.o
+
+# target to build an object file
+src/topology_linux.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/topology_linux.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/topology_linux.cpp.o
+.PHONY : src/topology_linux.cpp.o
+
+src/topology_linux.i: src/topology_linux.cpp.i
+
+.PHONY : src/topology_linux.i
+
+# target to preprocess a source file
+src/topology_linux.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/topology_linux.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/topology_linux.cpp.i
+.PHONY : src/topology_linux.cpp.i
+
+src/topology_linux.s: src/topology_linux.cpp.s
+
+.PHONY : src/topology_linux.s
+
+# target to generate assembly for a file
+src/topology_linux.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/topology_linux.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/topology_linux.cpp.s
+.PHONY : src/topology_linux.cpp.s
+
+src/topology_osx.o: src/topology_osx.cpp.o
+
+.PHONY : src/topology_osx.o
+
+# target to build an object file
+src/topology_osx.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/topology_osx.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/topology_osx.cpp.o
+.PHONY : src/topology_osx.cpp.o
+
+src/topology_osx.i: src/topology_osx.cpp.i
+
+.PHONY : src/topology_osx.i
+
+# target to preprocess a source file
+src/topology_osx.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/topology_osx.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/topology_osx.cpp.i
+.PHONY : src/topology_osx.cpp.i
+
+src/topology_osx.s: src/topology_osx.cpp.s
+
+.PHONY : src/topology_osx.s
+
+# target to generate assembly for a file
+src/topology_osx.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/topology_osx.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/topology_osx.cpp.s
+.PHONY : src/topology_osx.cpp.s
+
+src/urcu_gp.o: src/urcu_gp.cpp.o
+
+.PHONY : src/urcu_gp.o
+
+# target to build an object file
+src/urcu_gp.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/urcu_gp.cpp.o
+.PHONY : src/urcu_gp.cpp.o
+
+src/urcu_gp.i: src/urcu_gp.cpp.i
+
+.PHONY : src/urcu_gp.i
+
+# target to preprocess a source file
+src/urcu_gp.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/urcu_gp.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/urcu_gp.cpp.i
+.PHONY : src/urcu_gp.cpp.i
+
+src/urcu_gp.s: src/urcu_gp.cpp.s
+
+.PHONY : src/urcu_gp.s
+
+# target to generate assembly for a file
+src/urcu_gp.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/urcu_gp.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/urcu_gp.cpp.s
+.PHONY : src/urcu_gp.cpp.s
+
+src/urcu_sh.o: src/urcu_sh.cpp.o
+
+.PHONY : src/urcu_sh.o
+
+# target to build an object file
+src/urcu_sh.cpp.o:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/urcu_sh.cpp.o
+.PHONY : src/urcu_sh.cpp.o
+
+src/urcu_sh.i: src/urcu_sh.cpp.i
+
+.PHONY : src/urcu_sh.i
+
+# target to preprocess a source file
+src/urcu_sh.cpp.i:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/urcu_sh.cpp.i
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/urcu_sh.cpp.i
+.PHONY : src/urcu_sh.cpp.i
+
+src/urcu_sh.s: src/urcu_sh.cpp.s
+
+.PHONY : src/urcu_sh.s
+
+# target to generate assembly for a file
+src/urcu_sh.cpp.s:
+ $(MAKE) -f CMakeFiles/cds-s.dir/build.make CMakeFiles/cds-s.dir/src/urcu_sh.cpp.s
+ $(MAKE) -f CMakeFiles/cds.dir/build.make CMakeFiles/cds.dir/src/urcu_sh.cpp.s
+.PHONY : src/urcu_sh.cpp.s
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... install/strip"
+ @echo "... install/local"
+ @echo "... edit_cache"
+ @echo "... package_source"
+ @echo "... install"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+ @echo "... package"
+ @echo "... cds-s"
+ @echo "... cds"
+ @echo "... src/dhp.o"
+ @echo "... src/dhp.i"
+ @echo "... src/dhp.s"
+ @echo "... src/dllmain.o"
+ @echo "... src/dllmain.i"
+ @echo "... src/dllmain.s"
+ @echo "... src/hp.o"
+ @echo "... src/hp.i"
+ @echo "... src/hp.s"
+ @echo "... src/hp_thread_local.o"
+ @echo "... src/hp_thread_local.i"
+ @echo "... src/hp_thread_local.s"
+ @echo "... src/init.o"
+ @echo "... src/init.i"
+ @echo "... src/init.s"
+ @echo "... src/thread_data.o"
+ @echo "... src/thread_data.i"
+ @echo "... src/thread_data.s"
+ @echo "... src/topology_hpux.o"
+ @echo "... src/topology_hpux.i"
+ @echo "... src/topology_hpux.s"
+ @echo "... src/topology_linux.o"
+ @echo "... src/topology_linux.i"
+ @echo "... src/topology_linux.s"
+ @echo "... src/topology_osx.o"
+ @echo "... src/topology_osx.i"
+ @echo "... src/topology_osx.s"
+ @echo "... src/urcu_gp.o"
+ @echo "... src/urcu_gp.i"
+ @echo "... src/urcu_gp.s"
+ @echo "... src/urcu_sh.o"
+ @echo "... src/urcu_sh.i"
+ @echo "... src/urcu_sh.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/libcds-debug/arch.c b/libcds-debug/arch.c
new file mode 100644
index 000000000..dd042e4f8
--- /dev/null
+++ b/libcds-debug/arch.c
@@ -0,0 +1,46 @@
+
+#if defined(__arm__) || defined(__TARGET_ARCH_ARM)
+ #if defined(__ARM_ARCH_7__) \
+ || defined(__ARM_ARCH_7A__) \
+ || defined(__ARM_ARCH_7R__) \
+ || defined(__ARM_ARCH_7M__) \
+ || (defined(__TARGET_ARCH_ARM) && __TARGET_ARCH_ARM-0 >= 7)
+ #error cmake_ARCH armv7
+ #elif defined(__ARM_ARCH_6__) \
+ || defined(__ARM_ARCH_6J__) \
+ || defined(__ARM_ARCH_6T2__) \
+ || defined(__ARM_ARCH_6Z__) \
+ || defined(__ARM_ARCH_6K__) \
+ || defined(__ARM_ARCH_6ZK__) \
+ || defined(__ARM_ARCH_6M__) \
+ || (defined(__TARGET_ARCH_ARM) && __TARGET_ARCH_ARM-0 >= 6)
+ #error cmake_ARCH armv6
+ #elif defined(__ARM_ARCH_5TEJ__) \
+ || (defined(__TARGET_ARCH_ARM) && __TARGET_ARCH_ARM-0 >= 5)
+ #error cmake_ARCH armv5
+ #else
+ #error cmake_ARCH arm
+ #endif
+#elif defined(__aarch64__)
+ #if defined(__ARM_ARCH) && __ARM_ARCH == 8
+ #error cmake_ARCH armv8
+ #else
+ #error cmake_ARCH arm64
+ #endif
+#elif defined(__i386) || defined(__i386__) || defined(_M_IX86)
+ #error cmake_ARCH i386
+#elif defined(__x86_64) || defined(__x86_64__) || defined(__amd64) || defined(_M_X64)
+ #error cmake_ARCH x86_64
+#elif defined(__ia64) || defined(__ia64__) || defined(_M_IA64)
+ #error cmake_ARCH ia64
+#elif defined(__ppc__) || defined(__ppc) || defined(__powerpc__) \
+ || defined(_ARCH_COM) || defined(_ARCH_PWR) || defined(_ARCH_PPC) \
+ || defined(_M_MPPC) || defined(_M_PPC)
+ #if defined(__ppc64__) || defined(__powerpc64__) || defined(__64BIT__)
+ #error cmake_ARCH ppc64
+ #else
+ #error cmake_ARCH ppc
+ #endif
+#endif
+
+#error cmake_ARCH unknown
diff --git a/libcds-debug/bin/libcds-s.a b/libcds-debug/bin/libcds-s.a
new file mode 100644
index 000000000..8093fd194
Binary files /dev/null and b/libcds-debug/bin/libcds-s.a differ
diff --git a/libcds-debug/bin/libcds.so b/libcds-debug/bin/libcds.so
new file mode 120000
index 000000000..36c81550d
--- /dev/null
+++ b/libcds-debug/bin/libcds.so
@@ -0,0 +1 @@
+libcds.so.2.3.3
\ No newline at end of file
diff --git a/libcds-debug/bin/libcds.so.2.3.3 b/libcds-debug/bin/libcds.so.2.3.3
new file mode 100755
index 000000000..2c5eb9863
Binary files /dev/null and b/libcds-debug/bin/libcds.so.2.3.3 differ
diff --git a/libcds-debug/cmake_install.cmake b/libcds-debug/cmake_install.cmake
new file mode 100644
index 000000000..4396f6a98
--- /dev/null
+++ b/libcds-debug/cmake_install.cmake
@@ -0,0 +1,108 @@
+# Install script for directory: /home/damire/space/libcds
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ if(BUILD_TYPE)
+ string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ else()
+ set(CMAKE_INSTALL_CONFIG_NAME "RELEASE")
+ endif()
+ message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+ if(COMPONENT)
+ message(STATUS "Install component: \"${COMPONENT}\"")
+ set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ else()
+ set(CMAKE_INSTALL_COMPONENT)
+ endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+ set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xlibx" OR NOT CMAKE_INSTALL_COMPONENT)
+ if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so.2.3.3" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so.2.3.3")
+ file(RPATH_CHECK
+ FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so.2.3.3"
+ RPATH "")
+ endif()
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib64" TYPE SHARED_LIBRARY FILES "/home/damire/space/libcds/libcds-debug/bin/libcds.so.2.3.3")
+ if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so.2.3.3" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so.2.3.3")
+ if(CMAKE_INSTALL_DO_STRIP)
+ execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so.2.3.3")
+ endif()
+ endif()
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xdevelx" OR NOT CMAKE_INSTALL_COMPONENT)
+ if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so")
+ file(RPATH_CHECK
+ FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so"
+ RPATH "")
+ endif()
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib64" TYPE SHARED_LIBRARY FILES "/home/damire/space/libcds/libcds-debug/bin/libcds.so")
+ if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so" AND
+ NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so")
+ if(CMAKE_INSTALL_DO_STRIP)
+ execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib64/libcds.so")
+ endif()
+ endif()
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xlibx" OR NOT CMAKE_INSTALL_COMPONENT)
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib64" TYPE STATIC_LIBRARY FILES "/home/damire/space/libcds/libcds-debug/bin/libcds-s.a")
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT)
+ if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/LibCDS/LibCDSConfig.cmake")
+ file(DIFFERENT EXPORT_FILE_CHANGED FILES
+ "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/LibCDS/LibCDSConfig.cmake"
+ "/home/damire/space/libcds/libcds-debug/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig.cmake")
+ if(EXPORT_FILE_CHANGED)
+ file(GLOB OLD_CONFIG_FILES "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/LibCDS/LibCDSConfig-*.cmake")
+ if(OLD_CONFIG_FILES)
+ message(STATUS "Old export file \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/LibCDS/LibCDSConfig.cmake\" will be replaced. Removing files [${OLD_CONFIG_FILES}].")
+ file(REMOVE ${OLD_CONFIG_FILES})
+ endif()
+ endif()
+ endif()
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/LibCDS" TYPE FILE FILES "/home/damire/space/libcds/libcds-debug/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig.cmake")
+ if("${CMAKE_INSTALL_CONFIG_NAME}" MATCHES "^([Rr][Ee][Ll][Ee][Aa][Ss][Ee])$")
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/LibCDS" TYPE FILE FILES "/home/damire/space/libcds/libcds-debug/CMakeFiles/Export/lib/cmake/LibCDS/LibCDSConfig-release.cmake")
+ endif()
+endif()
+
+if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xdevelx" OR NOT CMAKE_INSTALL_COMPONENT)
+ file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include" TYPE DIRECTORY FILES "/home/damire/space/libcds/cds")
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+ set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+ set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+ "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "/home/damire/space/libcds/libcds-debug/${CMAKE_INSTALL_MANIFEST}"
+ "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/libcds-debug/compile_commands.json b/libcds-debug/compile_commands.json
new file mode 100644
index 000000000..599867904
--- /dev/null
+++ b/libcds-debug/compile_commands.json
@@ -0,0 +1,112 @@
+[
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/init.cpp.o -c /home/damire/space/libcds/src/init.cpp",
+ "file": "/home/damire/space/libcds/src/init.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/hp.cpp.o -c /home/damire/space/libcds/src/hp.cpp",
+ "file": "/home/damire/space/libcds/src/hp.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/hp_thread_local.cpp.o -c /home/damire/space/libcds/src/hp_thread_local.cpp",
+ "file": "/home/damire/space/libcds/src/hp_thread_local.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/dhp.cpp.o -c /home/damire/space/libcds/src/dhp.cpp",
+ "file": "/home/damire/space/libcds/src/dhp.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/urcu_gp.cpp.o -c /home/damire/space/libcds/src/urcu_gp.cpp",
+ "file": "/home/damire/space/libcds/src/urcu_gp.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/urcu_sh.cpp.o -c /home/damire/space/libcds/src/urcu_sh.cpp",
+ "file": "/home/damire/space/libcds/src/urcu_sh.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/thread_data.cpp.o -c /home/damire/space/libcds/src/thread_data.cpp",
+ "file": "/home/damire/space/libcds/src/thread_data.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/topology_hpux.cpp.o -c /home/damire/space/libcds/src/topology_hpux.cpp",
+ "file": "/home/damire/space/libcds/src/topology_hpux.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/topology_linux.cpp.o -c /home/damire/space/libcds/src/topology_linux.cpp",
+ "file": "/home/damire/space/libcds/src/topology_linux.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/topology_osx.cpp.o -c /home/damire/space/libcds/src/topology_osx.cpp",
+ "file": "/home/damire/space/libcds/src/topology_osx.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds-s.dir/src/dllmain.cpp.o -c /home/damire/space/libcds/src/dllmain.cpp",
+ "file": "/home/damire/space/libcds/src/dllmain.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/init.cpp.o -c /home/damire/space/libcds/src/init.cpp",
+ "file": "/home/damire/space/libcds/src/init.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/hp.cpp.o -c /home/damire/space/libcds/src/hp.cpp",
+ "file": "/home/damire/space/libcds/src/hp.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/hp_thread_local.cpp.o -c /home/damire/space/libcds/src/hp_thread_local.cpp",
+ "file": "/home/damire/space/libcds/src/hp_thread_local.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/dhp.cpp.o -c /home/damire/space/libcds/src/dhp.cpp",
+ "file": "/home/damire/space/libcds/src/dhp.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/urcu_gp.cpp.o -c /home/damire/space/libcds/src/urcu_gp.cpp",
+ "file": "/home/damire/space/libcds/src/urcu_gp.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/urcu_sh.cpp.o -c /home/damire/space/libcds/src/urcu_sh.cpp",
+ "file": "/home/damire/space/libcds/src/urcu_sh.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/thread_data.cpp.o -c /home/damire/space/libcds/src/thread_data.cpp",
+ "file": "/home/damire/space/libcds/src/thread_data.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/topology_hpux.cpp.o -c /home/damire/space/libcds/src/topology_hpux.cpp",
+ "file": "/home/damire/space/libcds/src/topology_hpux.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/topology_linux.cpp.o -c /home/damire/space/libcds/src/topology_linux.cpp",
+ "file": "/home/damire/space/libcds/src/topology_linux.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/topology_osx.cpp.o -c /home/damire/space/libcds/src/topology_osx.cpp",
+ "file": "/home/damire/space/libcds/src/topology_osx.cpp"
+},
+{
+ "directory": "/home/damire/space/libcds/libcds-debug",
+ "command": "/usr/bin/c++ -Dcds_EXPORTS -I/home/damire/space/libcds/libcds-debug -I/home/damire/space/libcds -O3 -DNDEBUG -fPIC -mcx16 -Wall -Wextra -pedantic -std=gnu++11 -o CMakeFiles/cds.dir/src/dllmain.cpp.o -c /home/damire/space/libcds/src/dllmain.cpp",
+ "file": "/home/damire/space/libcds/src/dllmain.cpp"
+}
+]
\ No newline at end of file
diff --git a/main.cpp b/main.cpp
new file mode 100644
index 000000000..d2dd8688a
--- /dev/null
+++ b/main.cpp
@@ -0,0 +1,67 @@
+#include //cds::Initialize и cds::Terminate
+#include //cds::gc::HP (Hazard Pointer)
+#include //cds::gc::HP (Hazard Pointer)
+#include // cds::gc::HP (Hazard Pointer)
+#include // cds::gc::HP (Hazard Pointer)
+#include
+#include "visualize.h"
+
+using namespace std;
+
+int main() {
+ cds::Initialize();
+
+ {
+ cds::gc::HP hpGC;
+
+ cds::threading::Manager::attachThread();
+ cds::container::Hamt hamt;
+
+
+ for (int j = 0; j < 1; j++) {
+ int count = 1000000;
+
+ for (int i = 0; i < count; i++) hamt.insert(i,i);
+ cout << "start\n";
+ int thread_count = 10;
+ vector thread(thread_count);
+ vector> attr(thread_count);
+
+ for (int i = 0; i < attr.size(); i++) {
+ attr[i] = {&hamt, new int(i), new int(count / thread_count)};
+ }
+ for (int i = 0; i < thread.size(); i++) {
+ pthread_create(&thread[i], nullptr, [](void *args) -> void * {
+ cds::threading::Manager::attachThread();
+ auto *hamt = (cds::container::Hamt *) (*static_cast *>(args))[0];
+ int *id = (int *) (*static_cast *>(args))[1];
+ int *averageIterationCount = (int *) (*static_cast *>(args))[2];
+ for (int i = *id * (*averageIterationCount); i < (*id + 1) * (*averageIterationCount) - 2; i++) {
+ hamt->remove(i);
+ }
+ cds::threading::Manager::detachThread();
+ pthread_exit(nullptr);
+ }, &attr[i]);
+
+ }
+
+ for (unsigned long i: thread) {
+ pthread_join(i, nullptr);
+ }
+
+ for (int i = 0; i < thread_count; i++) {
+ delete (int *) attr[i][1];
+ delete (int *) attr[i][2];
+ }
+
+ }
+ ofstream f = ofstream("graph.txt");
+ visualize(f, &hamt);
+ system("dot -Tpng ./graph.txt -o ../graph.png");
+
+ }
+
+
+ cds::Terminate();
+
+}
\ No newline at end of file
diff --git a/test/CMakeLists.txt.gtest b/test/CMakeLists.txt.gtest
index 646370cf3..fda034457 100644
--- a/test/CMakeLists.txt.gtest
+++ b/test/CMakeLists.txt.gtest
@@ -5,7 +5,7 @@ project(googletest-download NONE)
include(ExternalProject)
ExternalProject_Add(googletest
GIT_REPOSITORY https://github.com/google/googletest.git
- GIT_TAG master
+ GIT_TAG main
SOURCE_DIR "${CMAKE_BINARY_DIR}/test/googletest-src"
BINARY_DIR "${CMAKE_BINARY_DIR}/test/googletest-build"
CONFIGURE_COMMAND ""
diff --git a/test/googletest-download/CMakeCache.txt b/test/googletest-download/CMakeCache.txt
new file mode 100644
index 000000000..281ba834e
--- /dev/null
+++ b/test/googletest-download/CMakeCache.txt
@@ -0,0 +1,116 @@
+# This is the CMakeCache file.
+# For build in directory: /home/damire/space/libcds/test/googletest-download
+# It was generated by CMake: /usr/bin/cmake
+# You can edit this file to change values found and used by cmake.
+# If you do not want to change any of the values, simply exit the editor.
+# If you do want to change a value, simply edit, save, and exit the editor.
+# The syntax for the file is as follows:
+# KEY:TYPE=VALUE
+# KEY is the name of a variable in the cache.
+# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
+# VALUE is the current value for the KEY.
+
+########################
+# EXTERNAL cache entries
+########################
+
+//Enable/Disable color output during build.
+CMAKE_COLOR_MAKEFILE:BOOL=ON
+
+//Enable/Disable output of compile commands during generation.
+CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=/usr/local
+
+//Path to a program.
+CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make
+
+//Value Computed by CMake
+CMAKE_PROJECT_DESCRIPTION:STATIC=
+
+//Value Computed by CMake
+CMAKE_PROJECT_HOMEPAGE_URL:STATIC=
+
+//Value Computed by CMake
+CMAKE_PROJECT_NAME:STATIC=googletest-download
+
+//If set, runtime paths are not added when installing shared libraries,
+// but are added when building.
+CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
+
+//If set, runtime paths are not added when using shared libraries.
+CMAKE_SKIP_RPATH:BOOL=NO
+
+//If this value is on, makefiles will be generated without the
+// .SILENT directive, and all commands will be echoed to the console
+// during the make. This is useful for debugging only. With Visual
+// Studio IDE projects all commands are done without /nologo.
+CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
+
+//Git command line client
+GIT_EXECUTABLE:FILEPATH=/usr/bin/git
+
+//Value Computed by CMake
+googletest-download_BINARY_DIR:STATIC=/home/damire/space/libcds/test/googletest-download
+
+//Value Computed by CMake
+googletest-download_SOURCE_DIR:STATIC=/home/damire/space/libcds/test/googletest-download
+
+
+########################
+# INTERNAL cache entries
+########################
+
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=/home/damire/space/libcds/test/googletest-download
+//Major version of cmake used to create the current loaded cache
+CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
+//Minor version of cmake used to create the current loaded cache
+CMAKE_CACHE_MINOR_VERSION:INTERNAL=16
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=3
+//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
+CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
+//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
+CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Unix Makefiles
+//Generator instance identifier.
+CMAKE_GENERATOR_INSTANCE:INTERNAL=
+//Name of generator platform.
+CMAKE_GENERATOR_PLATFORM:INTERNAL=
+//Name of generator toolset.
+CMAKE_GENERATOR_TOOLSET:INTERNAL=
+//Source directory with the top level CMakeLists.txt file for this
+// project
+CMAKE_HOME_DIRECTORY:INTERNAL=/home/damire/space/libcds/test/googletest-download
+//Install .so files without execute permission.
+CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
+CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
+//Platform information initialized
+CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.16
+//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
+CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_RPATH
+CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
+//uname command
+CMAKE_UNAME:INTERNAL=/usr/bin/uname
+//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: GIT_EXECUTABLE
+GIT_EXECUTABLE-ADVANCED:INTERNAL=1
+
diff --git a/test/googletest-download/CMakeFiles/3.16.3/CMakeSystem.cmake b/test/googletest-download/CMakeFiles/3.16.3/CMakeSystem.cmake
new file mode 100644
index 000000000..4ddda07be
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/3.16.3/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Linux-5.13.0-39-generic")
+set(CMAKE_HOST_SYSTEM_NAME "Linux")
+set(CMAKE_HOST_SYSTEM_VERSION "5.13.0-39-generic")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
+
+
+
+set(CMAKE_SYSTEM "Linux-5.13.0-39-generic")
+set(CMAKE_SYSTEM_NAME "Linux")
+set(CMAKE_SYSTEM_VERSION "5.13.0-39-generic")
+set(CMAKE_SYSTEM_PROCESSOR "x86_64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/test/googletest-download/CMakeFiles/CMakeDirectoryInformation.cmake b/test/googletest-download/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 000000000..241c1b407
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/damire/space/libcds/test/googletest-download")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/damire/space/libcds/test/googletest-download")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/test/googletest-download/CMakeFiles/CMakeRuleHashes.txt b/test/googletest-download/CMakeFiles/CMakeRuleHashes.txt
new file mode 100644
index 000000000..329396fbb
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/CMakeRuleHashes.txt
@@ -0,0 +1,11 @@
+# Hashes of file build rules.
+5e32f6d4d107e92ef084bfb2dca448c2 CMakeFiles/googletest
+90a83c89beb464a3fb5991eb3457035c CMakeFiles/googletest-complete
+8476652d31ba37aad3a9aa0672fbe181 googletest-prefix/src/googletest-stamp/googletest-build
+2c5710a61b251ac7608e75a15655133c googletest-prefix/src/googletest-stamp/googletest-configure
+d46a6a74083e4a06e4e49633cee5617c googletest-prefix/src/googletest-stamp/googletest-download
+113f99535cb64acbc57d93c8eb6d3fab googletest-prefix/src/googletest-stamp/googletest-install
+d8c212ba3055ba8723376744d907b45d googletest-prefix/src/googletest-stamp/googletest-mkdir
+19883cf7ac6c80bcf48ccf807571c5fb googletest-prefix/src/googletest-stamp/googletest-patch
+47465b242e72ad0e95f0b42affacdbbe googletest-prefix/src/googletest-stamp/googletest-test
+04e7ef4ac89146af465919916d7c6f4e googletest-prefix/src/googletest-stamp/googletest-update
diff --git a/test/googletest-download/CMakeFiles/Makefile.cmake b/test/googletest-download/CMakeFiles/Makefile.cmake
new file mode 100644
index 000000000..1571db6d9
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/Makefile.cmake
@@ -0,0 +1,42 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# The generator used is:
+set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
+
+# The top level Makefile was generated from the following files:
+set(CMAKE_MAKEFILE_DEPENDS
+ "CMakeCache.txt"
+ "CMakeFiles/3.16.3/CMakeSystem.cmake"
+ "CMakeLists.txt"
+ "googletest-prefix/tmp/googletest-cfgcmd.txt.in"
+ "/usr/share/cmake-3.16/Modules/CMakeGenericSystem.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeInitializeConfigs.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInformation.cmake"
+ "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInitialize.cmake"
+ "/usr/share/cmake-3.16/Modules/ExternalProject.cmake"
+ "/usr/share/cmake-3.16/Modules/FindGit.cmake"
+ "/usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake"
+ "/usr/share/cmake-3.16/Modules/FindPackageMessage.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/Linux.cmake"
+ "/usr/share/cmake-3.16/Modules/Platform/UnixPaths.cmake"
+ "/usr/share/cmake-3.16/Modules/RepositoryInfo.txt.in"
+ )
+
+# The corresponding makefile is:
+set(CMAKE_MAKEFILE_OUTPUTS
+ "Makefile"
+ "CMakeFiles/cmake.check_cache"
+ )
+
+# Byproducts of CMake generate step:
+set(CMAKE_MAKEFILE_PRODUCTS
+ "googletest-prefix/src/googletest-stamp/googletest-gitinfo.txt"
+ "googletest-prefix/tmp/googletest-cfgcmd.txt"
+ "CMakeFiles/CMakeDirectoryInformation.cmake"
+ )
+
+# Dependency information for all targets:
+set(CMAKE_DEPEND_INFO_FILES
+ "CMakeFiles/googletest.dir/DependInfo.cmake"
+ )
diff --git a/test/googletest-download/CMakeFiles/Makefile2 b/test/googletest-download/CMakeFiles/Makefile2
new file mode 100644
index 000000000..7094a90e3
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/Makefile2
@@ -0,0 +1,106 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/damire/space/libcds/test/googletest-download
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/damire/space/libcds/test/googletest-download
+
+#=============================================================================
+# Directory level rules for the build root directory
+
+# The main recursive "all" target.
+all: CMakeFiles/googletest.dir/all
+
+.PHONY : all
+
+# The main recursive "preinstall" target.
+preinstall:
+
+.PHONY : preinstall
+
+# The main recursive "clean" target.
+clean: CMakeFiles/googletest.dir/clean
+
+.PHONY : clean
+
+#=============================================================================
+# Target rules for target CMakeFiles/googletest.dir
+
+# All Build rule for target.
+CMakeFiles/googletest.dir/all:
+ $(MAKE) -f CMakeFiles/googletest.dir/build.make CMakeFiles/googletest.dir/depend
+ $(MAKE) -f CMakeFiles/googletest.dir/build.make CMakeFiles/googletest.dir/build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/damire/space/libcds/test/googletest-download/CMakeFiles --progress-num=1,2,3,4,5,6,7,8,9 "Built target googletest"
+.PHONY : CMakeFiles/googletest.dir/all
+
+# Build rule for subdir invocation for target.
+CMakeFiles/googletest.dir/rule: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/test/googletest-download/CMakeFiles 9
+ $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/googletest.dir/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/test/googletest-download/CMakeFiles 0
+.PHONY : CMakeFiles/googletest.dir/rule
+
+# Convenience name for target.
+googletest: CMakeFiles/googletest.dir/rule
+
+.PHONY : googletest
+
+# clean rule for target.
+CMakeFiles/googletest.dir/clean:
+ $(MAKE) -f CMakeFiles/googletest.dir/build.make CMakeFiles/googletest.dir/clean
+.PHONY : CMakeFiles/googletest.dir/clean
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/test/googletest-download/CMakeFiles/Progress/4 b/test/googletest-download/CMakeFiles/Progress/4
new file mode 100644
index 000000000..7b4d68d70
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/Progress/4
@@ -0,0 +1 @@
+empty
\ No newline at end of file
diff --git a/test/googletest-download/CMakeFiles/Progress/count.txt b/test/googletest-download/CMakeFiles/Progress/count.txt
new file mode 100644
index 000000000..ec635144f
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/Progress/count.txt
@@ -0,0 +1 @@
+9
diff --git a/test/googletest-download/CMakeFiles/TargetDirectories.txt b/test/googletest-download/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 000000000..85fad2c3e
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,3 @@
+/home/damire/space/libcds/test/googletest-download/CMakeFiles/rebuild_cache.dir
+/home/damire/space/libcds/test/googletest-download/CMakeFiles/edit_cache.dir
+/home/damire/space/libcds/test/googletest-download/CMakeFiles/googletest.dir
diff --git a/test/googletest-download/CMakeFiles/cmake.check_cache b/test/googletest-download/CMakeFiles/cmake.check_cache
new file mode 100644
index 000000000..3dccd7317
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/test/googletest-download/CMakeFiles/googletest.dir/DependInfo.cmake b/test/googletest-download/CMakeFiles/googletest.dir/DependInfo.cmake
new file mode 100644
index 000000000..19fab2149
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/googletest.dir/DependInfo.cmake
@@ -0,0 +1,11 @@
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+ )
+# The set of files for implicit dependencies of each language:
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+ )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/test/googletest-download/CMakeFiles/googletest.dir/Labels.json b/test/googletest-download/CMakeFiles/googletest.dir/Labels.json
new file mode 100644
index 000000000..fe1368c14
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/googletest.dir/Labels.json
@@ -0,0 +1,46 @@
+{
+ "sources" :
+ [
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/CMakeFiles/googletest"
+ },
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/CMakeFiles/googletest.rule"
+ },
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/CMakeFiles/googletest-complete.rule"
+ },
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-install.rule"
+ },
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-mkdir.rule"
+ },
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-download.rule"
+ },
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-update.rule"
+ },
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-patch.rule"
+ },
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-configure.rule"
+ },
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-build.rule"
+ },
+ {
+ "file" : "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-test.rule"
+ }
+ ],
+ "target" :
+ {
+ "labels" :
+ [
+ "googletest"
+ ],
+ "name" : "googletest"
+ }
+}
\ No newline at end of file
diff --git a/test/googletest-download/CMakeFiles/googletest.dir/Labels.txt b/test/googletest-download/CMakeFiles/googletest.dir/Labels.txt
new file mode 100644
index 000000000..b707d2ff3
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/googletest.dir/Labels.txt
@@ -0,0 +1,14 @@
+# Target labels
+ googletest
+# Source files and their labels
+/home/damire/space/libcds/test/googletest-download/CMakeFiles/googletest
+/home/damire/space/libcds/test/googletest-download/CMakeFiles/googletest.rule
+/home/damire/space/libcds/test/googletest-download/CMakeFiles/googletest-complete.rule
+/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-install.rule
+/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-mkdir.rule
+/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-download.rule
+/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-update.rule
+/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-patch.rule
+/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-configure.rule
+/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-build.rule
+/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-test.rule
diff --git a/test/googletest-download/CMakeFiles/googletest.dir/build.make b/test/googletest-download/CMakeFiles/googletest.dir/build.make
new file mode 100644
index 000000000..6b20eb64f
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/googletest.dir/build.make
@@ -0,0 +1,147 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/damire/space/libcds/test/googletest-download
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/damire/space/libcds/test/googletest-download
+
+# Utility rule file for googletest.
+
+# Include the progress variables for this target.
+include CMakeFiles/googletest.dir/progress.make
+
+CMakeFiles/googletest: CMakeFiles/googletest-complete
+
+
+CMakeFiles/googletest-complete: googletest-prefix/src/googletest-stamp/googletest-install
+CMakeFiles/googletest-complete: googletest-prefix/src/googletest-stamp/googletest-mkdir
+CMakeFiles/googletest-complete: googletest-prefix/src/googletest-stamp/googletest-download
+CMakeFiles/googletest-complete: googletest-prefix/src/googletest-stamp/googletest-update
+CMakeFiles/googletest-complete: googletest-prefix/src/googletest-stamp/googletest-patch
+CMakeFiles/googletest-complete: googletest-prefix/src/googletest-stamp/googletest-configure
+CMakeFiles/googletest-complete: googletest-prefix/src/googletest-stamp/googletest-build
+CMakeFiles/googletest-complete: googletest-prefix/src/googletest-stamp/googletest-install
+CMakeFiles/googletest-complete: googletest-prefix/src/googletest-stamp/googletest-test
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/damire/space/libcds/test/googletest-download/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Completed 'googletest'"
+ /usr/bin/cmake -E make_directory /home/damire/space/libcds/test/googletest-download/CMakeFiles
+ /usr/bin/cmake -E touch /home/damire/space/libcds/test/googletest-download/CMakeFiles/googletest-complete
+ /usr/bin/cmake -E touch /home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-done
+
+googletest-prefix/src/googletest-stamp/googletest-install: googletest-prefix/src/googletest-stamp/googletest-build
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/damire/space/libcds/test/googletest-download/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "No install step for 'googletest'"
+ cd /home/damire/space/libcds/test/googletest-build && /usr/bin/cmake -E echo_append
+ cd /home/damire/space/libcds/test/googletest-build && /usr/bin/cmake -E touch /home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-install
+
+googletest-prefix/src/googletest-stamp/googletest-mkdir:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/damire/space/libcds/test/googletest-download/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Creating directories for 'googletest'"
+ /usr/bin/cmake -E make_directory /home/damire/space/libcds/test/googletest-src
+ /usr/bin/cmake -E make_directory /home/damire/space/libcds/test/googletest-build
+ /usr/bin/cmake -E make_directory /home/damire/space/libcds/test/googletest-download/googletest-prefix
+ /usr/bin/cmake -E make_directory /home/damire/space/libcds/test/googletest-download/googletest-prefix/tmp
+ /usr/bin/cmake -E make_directory /home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp
+ /usr/bin/cmake -E make_directory /home/damire/space/libcds/test/googletest-download/googletest-prefix/src
+ /usr/bin/cmake -E make_directory /home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp
+ /usr/bin/cmake -E touch /home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-mkdir
+
+googletest-prefix/src/googletest-stamp/googletest-download: googletest-prefix/src/googletest-stamp/googletest-gitinfo.txt
+googletest-prefix/src/googletest-stamp/googletest-download: googletest-prefix/src/googletest-stamp/googletest-mkdir
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/damire/space/libcds/test/googletest-download/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Performing download step (git clone) for 'googletest'"
+ cd /home/damire/space/libcds/test && /usr/bin/cmake -P /home/damire/space/libcds/test/googletest-download/googletest-prefix/tmp/googletest-gitclone.cmake
+ cd /home/damire/space/libcds/test && /usr/bin/cmake -E touch /home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-download
+
+googletest-prefix/src/googletest-stamp/googletest-update: googletest-prefix/src/googletest-stamp/googletest-download
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/damire/space/libcds/test/googletest-download/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Performing update step for 'googletest'"
+ cd /home/damire/space/libcds/test/googletest-src && /usr/bin/cmake -P /home/damire/space/libcds/test/googletest-download/googletest-prefix/tmp/googletest-gitupdate.cmake
+
+googletest-prefix/src/googletest-stamp/googletest-patch: googletest-prefix/src/googletest-stamp/googletest-download
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/damire/space/libcds/test/googletest-download/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "No patch step for 'googletest'"
+ /usr/bin/cmake -E echo_append
+ /usr/bin/cmake -E touch /home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-patch
+
+googletest-prefix/src/googletest-stamp/googletest-configure: googletest-prefix/tmp/googletest-cfgcmd.txt
+googletest-prefix/src/googletest-stamp/googletest-configure: googletest-prefix/src/googletest-stamp/googletest-update
+googletest-prefix/src/googletest-stamp/googletest-configure: googletest-prefix/src/googletest-stamp/googletest-patch
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/damire/space/libcds/test/googletest-download/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "No configure step for 'googletest'"
+ cd /home/damire/space/libcds/test/googletest-build && /usr/bin/cmake -E echo_append
+ cd /home/damire/space/libcds/test/googletest-build && /usr/bin/cmake -E touch /home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-configure
+
+googletest-prefix/src/googletest-stamp/googletest-build: googletest-prefix/src/googletest-stamp/googletest-configure
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/damire/space/libcds/test/googletest-download/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "No build step for 'googletest'"
+ cd /home/damire/space/libcds/test/googletest-build && /usr/bin/cmake -E echo_append
+ cd /home/damire/space/libcds/test/googletest-build && /usr/bin/cmake -E touch /home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-build
+
+googletest-prefix/src/googletest-stamp/googletest-test: googletest-prefix/src/googletest-stamp/googletest-install
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/home/damire/space/libcds/test/googletest-download/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "No test step for 'googletest'"
+ cd /home/damire/space/libcds/test/googletest-build && /usr/bin/cmake -E echo_append
+ cd /home/damire/space/libcds/test/googletest-build && /usr/bin/cmake -E touch /home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-test
+
+googletest: CMakeFiles/googletest
+googletest: CMakeFiles/googletest-complete
+googletest: googletest-prefix/src/googletest-stamp/googletest-install
+googletest: googletest-prefix/src/googletest-stamp/googletest-mkdir
+googletest: googletest-prefix/src/googletest-stamp/googletest-download
+googletest: googletest-prefix/src/googletest-stamp/googletest-update
+googletest: googletest-prefix/src/googletest-stamp/googletest-patch
+googletest: googletest-prefix/src/googletest-stamp/googletest-configure
+googletest: googletest-prefix/src/googletest-stamp/googletest-build
+googletest: googletest-prefix/src/googletest-stamp/googletest-test
+googletest: CMakeFiles/googletest.dir/build.make
+
+.PHONY : googletest
+
+# Rule to build all files generated by this target.
+CMakeFiles/googletest.dir/build: googletest
+
+.PHONY : CMakeFiles/googletest.dir/build
+
+CMakeFiles/googletest.dir/clean:
+ $(CMAKE_COMMAND) -P CMakeFiles/googletest.dir/cmake_clean.cmake
+.PHONY : CMakeFiles/googletest.dir/clean
+
+CMakeFiles/googletest.dir/depend:
+ cd /home/damire/space/libcds/test/googletest-download && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/damire/space/libcds/test/googletest-download /home/damire/space/libcds/test/googletest-download /home/damire/space/libcds/test/googletest-download /home/damire/space/libcds/test/googletest-download /home/damire/space/libcds/test/googletest-download/CMakeFiles/googletest.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : CMakeFiles/googletest.dir/depend
+
diff --git a/test/googletest-download/CMakeFiles/googletest.dir/cmake_clean.cmake b/test/googletest-download/CMakeFiles/googletest.dir/cmake_clean.cmake
new file mode 100644
index 000000000..75f3a4209
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/googletest.dir/cmake_clean.cmake
@@ -0,0 +1,17 @@
+file(REMOVE_RECURSE
+ "CMakeFiles/googletest"
+ "CMakeFiles/googletest-complete"
+ "googletest-prefix/src/googletest-stamp/googletest-build"
+ "googletest-prefix/src/googletest-stamp/googletest-configure"
+ "googletest-prefix/src/googletest-stamp/googletest-download"
+ "googletest-prefix/src/googletest-stamp/googletest-install"
+ "googletest-prefix/src/googletest-stamp/googletest-mkdir"
+ "googletest-prefix/src/googletest-stamp/googletest-patch"
+ "googletest-prefix/src/googletest-stamp/googletest-test"
+ "googletest-prefix/src/googletest-stamp/googletest-update"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang )
+ include(CMakeFiles/googletest.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/test/googletest-download/CMakeFiles/googletest.dir/depend.internal b/test/googletest-download/CMakeFiles/googletest.dir/depend.internal
new file mode 100644
index 000000000..f647855fc
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/googletest.dir/depend.internal
@@ -0,0 +1,3 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
diff --git a/test/googletest-download/CMakeFiles/googletest.dir/depend.make b/test/googletest-download/CMakeFiles/googletest.dir/depend.make
new file mode 100644
index 000000000..f647855fc
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/googletest.dir/depend.make
@@ -0,0 +1,3 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
diff --git a/test/googletest-download/CMakeFiles/googletest.dir/progress.make b/test/googletest-download/CMakeFiles/googletest.dir/progress.make
new file mode 100644
index 000000000..d4f6ce35d
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/googletest.dir/progress.make
@@ -0,0 +1,10 @@
+CMAKE_PROGRESS_1 = 1
+CMAKE_PROGRESS_2 = 2
+CMAKE_PROGRESS_3 = 3
+CMAKE_PROGRESS_4 = 4
+CMAKE_PROGRESS_5 = 5
+CMAKE_PROGRESS_6 = 6
+CMAKE_PROGRESS_7 = 7
+CMAKE_PROGRESS_8 = 8
+CMAKE_PROGRESS_9 = 9
+
diff --git a/test/googletest-download/CMakeFiles/progress.marks b/test/googletest-download/CMakeFiles/progress.marks
new file mode 100644
index 000000000..ec635144f
--- /dev/null
+++ b/test/googletest-download/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+9
diff --git a/test/googletest-download/CMakeLists.txt b/test/googletest-download/CMakeLists.txt
new file mode 100644
index 000000000..ebb5ded95
--- /dev/null
+++ b/test/googletest-download/CMakeLists.txt
@@ -0,0 +1,15 @@
+cmake_minimum_required(VERSION 2.8.12)
+
+project(googletest-download NONE)
+
+include(ExternalProject)
+ExternalProject_Add(googletest
+ GIT_REPOSITORY https://github.com/google/googletest.git
+ GIT_TAG main
+ SOURCE_DIR "/home/damire/space/libcds/test/googletest-src"
+ BINARY_DIR "/home/damire/space/libcds/test/googletest-build"
+ CONFIGURE_COMMAND ""
+ BUILD_COMMAND ""
+ INSTALL_COMMAND ""
+ TEST_COMMAND ""
+)
diff --git a/test/googletest-download/Makefile b/test/googletest-download/Makefile
new file mode 100644
index 000000000..4adb91284
--- /dev/null
+++ b/test/googletest-download/Makefile
@@ -0,0 +1,148 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.16
+
+# Default target executed when no arguments are given to make.
+default_target: all
+
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+
+# A target that is always out of date.
+cmake_force:
+
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E remove -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/damire/space/libcds/test/googletest-download
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/damire/space/libcds/test/googletest-download
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ /usr/bin/cmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+
+.PHONY : rebuild_cache/fast
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+ /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+
+.PHONY : edit_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/test/googletest-download/CMakeFiles /home/damire/space/libcds/test/googletest-download/CMakeFiles/progress.marks
+ $(MAKE) -f CMakeFiles/Makefile2 all
+ $(CMAKE_COMMAND) -E cmake_progress_start /home/damire/space/libcds/test/googletest-download/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ $(MAKE) -f CMakeFiles/Makefile2 clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ $(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ $(MAKE) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+#=============================================================================
+# Target rules for targets named googletest
+
+# Build rule for target.
+googletest: cmake_check_build_system
+ $(MAKE) -f CMakeFiles/Makefile2 googletest
+.PHONY : googletest
+
+# fast build rule for target.
+googletest/fast:
+ $(MAKE) -f CMakeFiles/googletest.dir/build.make CMakeFiles/googletest.dir/build
+.PHONY : googletest/fast
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... rebuild_cache"
+ @echo "... edit_cache"
+ @echo "... googletest"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/test/googletest-download/cmake_install.cmake b/test/googletest-download/cmake_install.cmake
new file mode 100644
index 000000000..6bd6410c0
--- /dev/null
+++ b/test/googletest-download/cmake_install.cmake
@@ -0,0 +1,49 @@
+# Install script for directory: /home/damire/space/libcds/test/googletest-download
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+ set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+ if(BUILD_TYPE)
+ string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+ CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+ else()
+ set(CMAKE_INSTALL_CONFIG_NAME "")
+ endif()
+ message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+ if(COMPONENT)
+ message(STATUS "Install component: \"${COMPONENT}\"")
+ set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+ else()
+ set(CMAKE_INSTALL_COMPONENT)
+ endif()
+endif()
+
+# Install shared libraries without execute permission?
+if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
+ set(CMAKE_INSTALL_SO_NO_EXE "1")
+endif()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+ set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+ set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+ set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+ "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "/home/damire/space/libcds/test/googletest-download/${CMAKE_INSTALL_MANIFEST}"
+ "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-gitinfo.txt b/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-gitinfo.txt
new file mode 100644
index 000000000..477e67202
--- /dev/null
+++ b/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-gitinfo.txt
@@ -0,0 +1,3 @@
+repository='https://github.com/google/googletest.git'
+module=''
+tag='origin'
diff --git a/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-mkdir b/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-mkdir
new file mode 100644
index 000000000..e69de29bb
diff --git a/test/googletest-download/googletest-prefix/tmp/googletest-cfgcmd.txt b/test/googletest-download/googletest-prefix/tmp/googletest-cfgcmd.txt
new file mode 100644
index 000000000..6a6ed5fd2
--- /dev/null
+++ b/test/googletest-download/googletest-prefix/tmp/googletest-cfgcmd.txt
@@ -0,0 +1 @@
+cmd=''
diff --git a/test/googletest-download/googletest-prefix/tmp/googletest-cfgcmd.txt.in b/test/googletest-download/googletest-prefix/tmp/googletest-cfgcmd.txt.in
new file mode 100644
index 000000000..b3f09efc8
--- /dev/null
+++ b/test/googletest-download/googletest-prefix/tmp/googletest-cfgcmd.txt.in
@@ -0,0 +1 @@
+cmd='@cmd@'
diff --git a/test/googletest-download/googletest-prefix/tmp/googletest-gitclone.cmake b/test/googletest-download/googletest-prefix/tmp/googletest-gitclone.cmake
new file mode 100644
index 000000000..8eff410cd
--- /dev/null
+++ b/test/googletest-download/googletest-prefix/tmp/googletest-gitclone.cmake
@@ -0,0 +1,66 @@
+
+if(NOT "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-gitinfo.txt" IS_NEWER_THAN "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-gitclone-lastrun.txt")
+ message(STATUS "Avoiding repeated git clone, stamp file is up to date: '/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-gitclone-lastrun.txt'")
+ return()
+endif()
+
+execute_process(
+ COMMAND ${CMAKE_COMMAND} -E remove_directory "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ )
+if(error_code)
+ message(FATAL_ERROR "Failed to remove directory: '/home/damire/space/libcds/test/googletest-src'")
+endif()
+
+# try the clone 3 times in case there is an odd git clone issue
+set(error_code 1)
+set(number_of_tries 0)
+while(error_code AND number_of_tries LESS 3)
+ execute_process(
+ COMMAND "/usr/bin/git" clone --no-checkout "https://github.com/google/googletest.git" "googletest-src"
+ WORKING_DIRECTORY "/home/damire/space/libcds/test"
+ RESULT_VARIABLE error_code
+ )
+ math(EXPR number_of_tries "${number_of_tries} + 1")
+endwhile()
+if(number_of_tries GREATER 1)
+ message(STATUS "Had to git clone more than once:
+ ${number_of_tries} times.")
+endif()
+if(error_code)
+ message(FATAL_ERROR "Failed to clone repository: 'https://github.com/google/googletest.git'")
+endif()
+
+execute_process(
+ COMMAND "/usr/bin/git" checkout main --
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ )
+if(error_code)
+ message(FATAL_ERROR "Failed to checkout tag: 'main'")
+endif()
+
+set(init_submodules TRUE)
+if(init_submodules)
+ execute_process(
+ COMMAND "/usr/bin/git" submodule update --recursive --init
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ )
+endif()
+if(error_code)
+ message(FATAL_ERROR "Failed to update submodules in: '/home/damire/space/libcds/test/googletest-src'")
+endif()
+
+# Complete success, update the script-last-run stamp file:
+#
+execute_process(
+ COMMAND ${CMAKE_COMMAND} -E copy
+ "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-gitinfo.txt"
+ "/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-gitclone-lastrun.txt"
+ RESULT_VARIABLE error_code
+ )
+if(error_code)
+ message(FATAL_ERROR "Failed to copy script-last-run stamp file: '/home/damire/space/libcds/test/googletest-download/googletest-prefix/src/googletest-stamp/googletest-gitclone-lastrun.txt'")
+endif()
+
diff --git a/test/googletest-download/googletest-prefix/tmp/googletest-gitupdate.cmake b/test/googletest-download/googletest-prefix/tmp/googletest-gitupdate.cmake
new file mode 100644
index 000000000..ada3935ac
--- /dev/null
+++ b/test/googletest-download/googletest-prefix/tmp/googletest-gitupdate.cmake
@@ -0,0 +1,160 @@
+
+execute_process(
+ COMMAND "/usr/bin/git" rev-list --max-count=1 HEAD
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ OUTPUT_VARIABLE head_sha
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+if(error_code)
+ message(FATAL_ERROR "Failed to get the hash for HEAD")
+endif()
+
+execute_process(
+ COMMAND "/usr/bin/git" show-ref main
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ OUTPUT_VARIABLE show_ref_output
+ )
+# If a remote ref is asked for, which can possibly move around,
+# we must always do a fetch and checkout.
+if("${show_ref_output}" MATCHES "remotes")
+ set(is_remote_ref 1)
+else()
+ set(is_remote_ref 0)
+endif()
+
+# Tag is in the form / (i.e. origin/master) we must strip
+# the remote from the tag.
+if("${show_ref_output}" MATCHES "refs/remotes/main")
+ string(REGEX MATCH "^([^/]+)/(.+)$" _unused "main")
+ set(git_remote "${CMAKE_MATCH_1}")
+ set(git_tag "${CMAKE_MATCH_2}")
+else()
+ set(git_remote "origin")
+ set(git_tag "main")
+endif()
+
+# This will fail if the tag does not exist (it probably has not been fetched
+# yet).
+execute_process(
+ COMMAND "/usr/bin/git" rev-list --max-count=1 main
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ OUTPUT_VARIABLE tag_sha
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+
+# Is the hash checkout out that we want?
+if(error_code OR is_remote_ref OR NOT ("${tag_sha}" STREQUAL "${head_sha}"))
+ execute_process(
+ COMMAND "/usr/bin/git" fetch
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ )
+ if(error_code)
+ message(FATAL_ERROR "Failed to fetch repository 'https://github.com/google/googletest.git'")
+ endif()
+
+ if(is_remote_ref)
+ # Check if stash is needed
+ execute_process(
+ COMMAND "/usr/bin/git" status --porcelain
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ OUTPUT_VARIABLE repo_status
+ )
+ if(error_code)
+ message(FATAL_ERROR "Failed to get the status")
+ endif()
+ string(LENGTH "${repo_status}" need_stash)
+
+ # If not in clean state, stash changes in order to be able to be able to
+ # perform git pull --rebase
+ if(need_stash)
+ execute_process(
+ COMMAND "/usr/bin/git" stash save --all;--quiet
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ )
+ if(error_code)
+ message(FATAL_ERROR "Failed to stash changes")
+ endif()
+ endif()
+
+ # Pull changes from the remote branch
+ execute_process(
+ COMMAND "/usr/bin/git" rebase ${git_remote}/${git_tag}
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ )
+ if(error_code)
+ # Rebase failed: Restore previous state.
+ execute_process(
+ COMMAND "/usr/bin/git" rebase --abort
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ )
+ if(need_stash)
+ execute_process(
+ COMMAND "/usr/bin/git" stash pop --index --quiet
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ )
+ endif()
+ message(FATAL_ERROR "\nFailed to rebase in: '/home/damire/space/libcds/test/googletest-src/'.\nYou will have to resolve the conflicts manually")
+ endif()
+
+ if(need_stash)
+ execute_process(
+ COMMAND "/usr/bin/git" stash pop --index --quiet
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ )
+ if(error_code)
+ # Stash pop --index failed: Try again dropping the index
+ execute_process(
+ COMMAND "/usr/bin/git" reset --hard --quiet
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ )
+ execute_process(
+ COMMAND "/usr/bin/git" stash pop --quiet
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ )
+ if(error_code)
+ # Stash pop failed: Restore previous state.
+ execute_process(
+ COMMAND "/usr/bin/git" reset --hard --quiet ${head_sha}
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ )
+ execute_process(
+ COMMAND "/usr/bin/git" stash pop --index --quiet
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ )
+ message(FATAL_ERROR "\nFailed to unstash changes in: '/home/damire/space/libcds/test/googletest-src/'.\nYou will have to resolve the conflicts manually")
+ endif()
+ endif()
+ endif()
+ else()
+ execute_process(
+ COMMAND "/usr/bin/git" checkout main
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src"
+ RESULT_VARIABLE error_code
+ )
+ if(error_code)
+ message(FATAL_ERROR "Failed to checkout tag: 'main'")
+ endif()
+ endif()
+
+ set(init_submodules TRUE)
+ if(init_submodules)
+ execute_process(
+ COMMAND "/usr/bin/git" submodule update --recursive --init
+ WORKING_DIRECTORY "/home/damire/space/libcds/test/googletest-src/"
+ RESULT_VARIABLE error_code
+ )
+ endif()
+ if(error_code)
+ message(FATAL_ERROR "Failed to update submodules in: '/home/damire/space/libcds/test/googletest-src/'")
+ endif()
+endif()
+
diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt
index f28d4921e..60d2dbf5a 100644
--- a/test/unit/CMakeLists.txt
+++ b/test/unit/CMakeLists.txt
@@ -11,9 +11,10 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/striped-map)
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/striped-set)
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/stack)
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tree)
+add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/trie)
add_custom_target(unit-all
- DEPENDS
+ DEPENDS
unit-deque
unit-ilist
unit-list
@@ -26,4 +27,5 @@ add_custom_target(unit-all
unit-striped-set
unit-stack
unit-tree
+ unit-trie
)
diff --git a/test/unit/trie/CMakeLists.txt b/test/unit/trie/CMakeLists.txt
new file mode 100644
index 000000000..fd8b41307
--- /dev/null
+++ b/test/unit/trie/CMakeLists.txt
@@ -0,0 +1,15 @@
+set(PACKAGE_NAME unit-trie)
+
+set(CDSGTEST_TRIE_SOURCES
+ ../main.cpp
+ trie.cpp
+)
+
+include_directories(
+ ${CMAKE_CURRENT_SOURCE_DIR}
+)
+
+add_executable(${PACKAGE_NAME} ${CDSGTEST_TRIE_SOURCES})
+target_link_libraries(${PACKAGE_NAME} ${CDS_TEST_LIBRARIES})
+strip_binary(${PACKAGE_NAME})
+add_test(NAME ${PACKAGE_NAME} COMMAND ${PACKAGE_NAME} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
\ No newline at end of file
diff --git a/test/unit/trie/trie.cpp b/test/unit/trie/trie.cpp
new file mode 100644
index 000000000..e9747a163
--- /dev/null
+++ b/test/unit/trie/trie.cpp
@@ -0,0 +1,148 @@
+// Copyright (c) 2006-2018 Maxim Khizhinsky
+//
+// Distributed under the Boost Software License, Version 1.0. (See accompanying
+// file LICENSE or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+#include
+#include
+
+
+namespace {
+
+
+ TEST(TRIE, HAPPY_FLOW__LOOKUP) {
+ // arrange
+ cds::container::Hamt trie;
+//
+ trie.insert("k1", 1);
+ trie.insert("k2", 2);
+ trie.insert("k3", 3);
+ trie.insert("k4", 4);
+ trie.insert("k5", 5);
+ trie.insert("k6", 6);
+ trie.insert("k7", 7);
+ trie.insert("k8", 8);
+ trie.insert("k9", 9);
+ trie.insert("k10", 10);
+ trie.insert("k11", 11);
+ trie.insert("k12", 12);
+ trie.insert("k13", 13);
+ trie.insert("k14", 14);
+ trie.insert("k15", 15);
+ trie.insert("k16", 16);
+ trie.insert("k17", 17);
+ trie.insert("k18", 18);
+ trie.insert("k19", 19);
+ trie.insert("k20", 20);
+ trie.insert("k21", 21);
+ trie.insert("k22", 22);
+ trie.insert("k23", 23);
+ trie.insert("k24", 24);
+ trie.insert("k25", 25);
+
+ // act & assert
+ ASSERT_EQ(trie
+ .lookup("k1").value, 1);
+ ASSERT_EQ(trie
+ .lookup("k2").value, 2);
+ ASSERT_EQ(trie
+ .lookup("k3").value, 3);
+ ASSERT_EQ(trie
+ .lookup("k4").value, 4);
+ ASSERT_EQ(trie
+ .lookup("k5").value, 5);
+ ASSERT_EQ(trie
+ .lookup("k6").value, 6);
+ ASSERT_EQ(trie
+ .lookup("k7").value, 7);
+ ASSERT_EQ(trie
+ .lookup("k8").value, 8);
+ ASSERT_EQ(trie
+ .lookup("k9").value, 9);
+ ASSERT_EQ(trie
+ .lookup("k10").value, 10);
+ ASSERT_EQ(trie
+ .lookup("k11").value, 11);
+ ASSERT_EQ(trie
+ .lookup("k12").value, 12);
+ ASSERT_EQ(trie
+ .lookup("k13").value, 13);
+ ASSERT_EQ(trie
+ .lookup("k14").value, 14);
+ ASSERT_EQ(trie
+ .lookup("k15").value, 15);
+ ASSERT_EQ(trie
+ .lookup("k16").value, 16);
+ ASSERT_EQ(trie
+ .lookup("k17").value, 17);
+ ASSERT_EQ(trie
+ .lookup("k18").value, 18);
+ ASSERT_EQ(trie
+ .lookup("k19").value, 19);
+ ASSERT_EQ(trie
+ .lookup("k20").value, 20);
+ ASSERT_EQ(trie
+ .lookup("k21").value, 21);
+ ASSERT_EQ(trie
+ .lookup("k22").value, 22);
+ ASSERT_EQ(trie
+ .lookup("k23").value, 23);
+ ASSERT_EQ(trie
+ .lookup("k24").value, 24);
+ ASSERT_EQ(trie
+ .lookup("k25").value, 25);
+
+ ASSERT_EQ(trie
+ .lookup("k223"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k224"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k225"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k226"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k227"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k228"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k229"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2210"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2211"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2212"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2213"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2214"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2215"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2216"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2217"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2218"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2229"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2220"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2222"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2223"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2224"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2225"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2226"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k227"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k2228"), cds::container::hamt::LOOKUP_NOT_FOUND);
+ ASSERT_EQ(trie
+ .lookup("k22d29"), cds::container::hamt::LOOKUP_NOT_FOUND);
+}
+}// namespace
diff --git a/visualize.h b/visualize.h
new file mode 100644
index 000000000..b5d0da794
--- /dev/null
+++ b/visualize.h
@@ -0,0 +1,129 @@
+#define protected public
+#define private public
+
+#include "cds/container/hamt.h"
+#include //cds::Initialize и cds::Terminate
+#include //cds::gc::HP (Hazard Pointer)
+#include //cds::gc::HP (Hazard Pointer)
+#include // cds::gc::HP (Hazard Pointer)
+#include // cds::gc::HP (Hazard Pointer)
+#include
+
+#undef protected
+#undef private
+
+#include
+#include
+
+using namespace std;
+
+int counter = 0;
+const int MAX_EDGE_COUNT = 10000;
+const int MAX_HEIGHT_COUNT = 10000;
+
+string toString(int k) {
+ return to_string(k);
+}
+
+string toString(string k) {
+ return k;
+}
+
+template
+struct Height {
+ Height(typename cds::container::Hamt::Node *v) {
+ this->v = v;
+ id = counter++;
+ }
+
+ int id;
+ typename cds::container::Hamt::Node *v{};
+
+ string getLabel() {
+ switch (v->type) {
+ case cds::container::Hamt::INODE: {
+ return "I" + to_string(id);
+ }
+ case cds::container::Hamt::CNODE: {
+ string label = "C" + to_string(id);
+ if (static_cast::CNode *>(v)->isTomb) {
+ label += " - tombed";
+ }
+ return label;
+ }
+ case cds::container::Hamt::SNODE: {
+ string label = "";
+ label += "hs: " + to_string(static_cast::SNode *>(this->v)->getHash()) + "\n\n";
+ for (auto &p: static_cast::SNode *>(v)->pair) {
+ label += "(" + toString(p.key) + ", " + toString(p.value) + ") \n";
+ }
+ return label;
+ }
+ default:
+ return "Unknown";
+ }
+ }
+};
+
+
+struct Edge {
+ string label;
+ int from;
+ int to;
+};
+
+template
+void walk_and_collect(Height currHeight, vector> &hs, vector &es) {
+ if (currHeight.v->type == cds::container::Hamt::INODE) {
+ Height c(static_cast::INode*>(currHeight.v)->main);
+ hs.push_back(c);
+
+ es.push_back({"", currHeight.id, c.id});
+
+ for (uint8_t path = 0b00000; path < 0b100000; path++) {
+ auto *n = reinterpret_cast::CNode *>(c.v);
+ if (n->getSubNode(path) != nullptr) {
+ Height child(n->getSubNode(path));
+ hs.push_back(child);
+ es.push_back({to_string(path), c.id, child.id});
+ walk_and_collect(child, hs, es);
+ }
+ }
+ }
+}
+
+
+template
+void visualize(ofstream &f, cds::container::Hamt *trie) {
+ vector> heights = {trie->getRoot()};
+ vector edges;
+ walk_and_collect(heights[0], heights, edges);
+
+ typedef pair Edge;
+ Edge used_by[MAX_EDGE_COUNT];
+
+ const int nedges = edges.size();
+ int weights[MAX_EDGE_COUNT];
+ std::fill(weights, weights + nedges, 34);
+
+ using namespace boost;
+
+ string names[MAX_HEIGHT_COUNT];
+ for (size_t i = 0; i < heights.size(); i++) {
+ names[i] = heights[i].getLabel();
+ }
+
+ typedef adjacency_list,
+ property
+ > Graph;
+ Graph g(used_by, used_by, weights, heights.size());
+
+ std::map ename;
+ for (auto &edge: edges) {
+ ename[add_edge(edge.from, edge.to, g).first] = edge.label;
+ }
+
+ write_graphviz(f, g, make_label_writer(names), make_label_writer(boost::make_assoc_property_map(ename)));
+}
+