From beb1bfa23414deeaacfa8ecbe20da61b013019cb Mon Sep 17 00:00:00 2001 From: g2px1 Date: Wed, 30 Apr 2025 23:51:31 +0300 Subject: [PATCH] Initial commit --- .idea/.gitignore | 8 + .idea/editor.xml | 483 +++++++ .idea/misc.xml | 7 + .idea/modules.xml | 8 + .idea/parallelUnorderedMap.iml | 2 + .idea/vcs.xml | 4 + CMakeLists.txt | 8 + UnorderedParallelMap.h | 363 +++++ .../.cmake/api/v1/query/cache-v2 | 0 .../.cmake/api/v1/query/cmakeFiles-v1 | 0 .../.cmake/api/v1/query/codemodel-v2 | 0 .../.cmake/api/v1/query/toolchains-v1 | 0 .../reply/cache-v2-6d08d1540fcfad82e74e.json | 1163 +++++++++++++++++ .../cmakeFiles-v1-42631f55257d4b975722.json | 161 +++ .../codemodel-v2-ed8ddf4b07c3e6b33040.json | 60 + ...irectory-.-Debug-f5ebdc15457944623624.json | 14 + .../reply/index-2025-04-29T17-05-54-0891.json | 108 ++ ...orderedMap-Debug-bf32cbb535b639e4d345.json | 117 ++ .../toolchains-v1-d620e758811353ca5ad3.json | 93 ++ cmake-build-debug/.ninja_deps | Bin 0 -> 212536 bytes cmake-build-debug/.ninja_log | 33 + cmake-build-debug/CMakeCache.txt | 363 +++++ .../CMakeFiles/3.30.5/CMakeCCompiler.cmake | 81 ++ .../CMakeFiles/3.30.5/CMakeCXXCompiler.cmake | 101 ++ .../3.30.5/CMakeDetermineCompilerABI_C.bin | Bin 0 -> 17000 bytes .../3.30.5/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 16984 bytes .../CMakeFiles/3.30.5/CMakeSystem.cmake | 15 + .../3.30.5/CompilerIdC/CMakeCCompilerId.c | 904 +++++++++++++ .../3.30.5/CompilerIdC/CMakeCCompilerId.o | Bin 0 -> 1712 bytes .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 919 +++++++++++++ .../3.30.5/CompilerIdCXX/CMakeCXXCompilerId.o | Bin 0 -> 1712 bytes .../CMakeFiles/CMakeConfigureLog.yaml | 461 +++++++ .../CMakeFiles/TargetDirectories.txt | 3 + .../CMakeFiles/clion-Debug-log.txt | 4 + .../CMakeFiles/clion-environment.txt | 4 + .../CMakeFiles/cmake.check_cache | 1 + .../parallelUnorderedMap.dir/main.cpp.o | Bin 0 -> 597408 bytes cmake-build-debug/CMakeFiles/rules.ninja | 64 + .../Testing/Temporary/LastTest.log | 3 + cmake-build-debug/build.ninja | 142 ++ cmake-build-debug/cmake_install.cmake | 57 + cmake-build-debug/parallelUnorderedMap | Bin 0 -> 222920 bytes main.cpp | 85 ++ optimization.h | 49 + 44 files changed, 5888 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/editor.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/parallelUnorderedMap.iml create mode 100644 .idea/vcs.xml create mode 100644 CMakeLists.txt create mode 100644 UnorderedParallelMap.h create mode 100644 cmake-build-debug/.cmake/api/v1/query/cache-v2 create mode 100644 cmake-build-debug/.cmake/api/v1/query/cmakeFiles-v1 create mode 100644 cmake-build-debug/.cmake/api/v1/query/codemodel-v2 create mode 100644 cmake-build-debug/.cmake/api/v1/query/toolchains-v1 create mode 100644 cmake-build-debug/.cmake/api/v1/reply/cache-v2-6d08d1540fcfad82e74e.json create mode 100644 cmake-build-debug/.cmake/api/v1/reply/cmakeFiles-v1-42631f55257d4b975722.json create mode 100644 cmake-build-debug/.cmake/api/v1/reply/codemodel-v2-ed8ddf4b07c3e6b33040.json create mode 100644 cmake-build-debug/.cmake/api/v1/reply/directory-.-Debug-f5ebdc15457944623624.json create mode 100644 cmake-build-debug/.cmake/api/v1/reply/index-2025-04-29T17-05-54-0891.json create mode 100644 cmake-build-debug/.cmake/api/v1/reply/target-parallelUnorderedMap-Debug-bf32cbb535b639e4d345.json create mode 100644 cmake-build-debug/.cmake/api/v1/reply/toolchains-v1-d620e758811353ca5ad3.json create mode 100644 cmake-build-debug/.ninja_deps create mode 100644 cmake-build-debug/.ninja_log create mode 100644 cmake-build-debug/CMakeCache.txt create mode 100644 cmake-build-debug/CMakeFiles/3.30.5/CMakeCCompiler.cmake create mode 100644 cmake-build-debug/CMakeFiles/3.30.5/CMakeCXXCompiler.cmake create mode 100755 cmake-build-debug/CMakeFiles/3.30.5/CMakeDetermineCompilerABI_C.bin create mode 100755 cmake-build-debug/CMakeFiles/3.30.5/CMakeDetermineCompilerABI_CXX.bin create mode 100644 cmake-build-debug/CMakeFiles/3.30.5/CMakeSystem.cmake create mode 100644 cmake-build-debug/CMakeFiles/3.30.5/CompilerIdC/CMakeCCompilerId.c create mode 100644 cmake-build-debug/CMakeFiles/3.30.5/CompilerIdC/CMakeCCompilerId.o create mode 100644 cmake-build-debug/CMakeFiles/3.30.5/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100644 cmake-build-debug/CMakeFiles/3.30.5/CompilerIdCXX/CMakeCXXCompilerId.o create mode 100644 cmake-build-debug/CMakeFiles/CMakeConfigureLog.yaml create mode 100644 cmake-build-debug/CMakeFiles/TargetDirectories.txt create mode 100644 cmake-build-debug/CMakeFiles/clion-Debug-log.txt create mode 100644 cmake-build-debug/CMakeFiles/clion-environment.txt create mode 100644 cmake-build-debug/CMakeFiles/cmake.check_cache create mode 100644 cmake-build-debug/CMakeFiles/parallelUnorderedMap.dir/main.cpp.o create mode 100644 cmake-build-debug/CMakeFiles/rules.ninja create mode 100644 cmake-build-debug/Testing/Temporary/LastTest.log create mode 100644 cmake-build-debug/build.ninja create mode 100644 cmake-build-debug/cmake_install.cmake create mode 100755 cmake-build-debug/parallelUnorderedMap create mode 100644 main.cpp create mode 100644 optimization.h diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /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/editor.xml b/.idea/editor.xml new file mode 100644 index 0000000..1c52f22 --- /dev/null +++ b/.idea/editor.xml @@ -0,0 +1,483 @@ + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..0b76fe5 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,7 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..1d1d722 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/parallelUnorderedMap.iml b/.idea/parallelUnorderedMap.iml new file mode 100644 index 0000000..f08604b --- /dev/null +++ b/.idea/parallelUnorderedMap.iml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..d843f34 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..e99fbaf --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,8 @@ +cmake_minimum_required(VERSION 3.30) +project(parallelUnorderedMap) + +set(CMAKE_CXX_STANDARD 20) + +add_executable(parallelUnorderedMap main.cpp + UnorderedParallelMap.h + optimization.h) diff --git a/UnorderedParallelMap.h b/UnorderedParallelMap.h new file mode 100644 index 0000000..d412533 --- /dev/null +++ b/UnorderedParallelMap.h @@ -0,0 +1,363 @@ +#ifndef UNORDEREDPARALLELMAP_H +#define UNORDEREDPARALLELMAP_H + +#include +#include +#include +#include +#include +#include "optimization.h" + +template +class LockFreeMap +{ + struct Bucket + { + std::atomic occupied{false}; + std::atomic deleted{false}; + std::atomic key; + std::atomic value; + std::atomic next{nullptr}; + }; + + struct Table + { + size_t capacity; + std::vector buckets; + + Table(size_t cap) : capacity(cap), buckets(cap) {} + }; + + std::shared_ptr table; + std::shared_ptr
new_table{nullptr}; + std::atomic size_counter{0}; + std::mutex resize_mutex; + static constexpr float MAX_LOAD_FACTOR = 0.75; + + size_t hash(const K& key, size_t capacity) const + { + return std::hash{}(key) % capacity; + } + + void migrate_entry(Bucket& src, const std::shared_ptr
& dest) + { + if (!src.occupied.load() || src.deleted.load()) return; + + const K key = src.key.load(); + const V val = src.value.load(); + size_t idx = hash(key, dest->capacity); + Bucket& head = dest->buckets[idx]; + + if (!head.occupied.load()) + { + bool expected = false; + if (head.occupied.compare_exchange_strong(expected, true)) + { + head.key.store(key); + head.value.store(val); + head.deleted.store(false); + return; + } + } + + Bucket* current = &head; + while (true) + { + if (!current->deleted.load() && current->key.load() == key) + return; + + Bucket* next = current->next.load(); + if (next) + { + current = next; + } + else + { + Bucket* new_node = new Bucket; + new_node->occupied.store(true); + new_node->key.store(key); + new_node->value.store(val); + new_node->deleted.store(false); + if (current->next.compare_exchange_strong(next, new_node)) + return; + delete new_node; + } + } + } + + void start_resize(size_t new_capacity) + { + std::lock_guard lock(resize_mutex); + if (new_table) return; + + auto old_table = table; + auto next = std::make_shared
(new_capacity); + new_table = next; + + std::thread([this, old_table, next]() { + for (auto& bucket : old_table->buckets) + { + Bucket* current = &bucket; + while (current) + { + migrate_entry(*current, next); + current = current->next.load(); + } + } + table = next; + new_table = nullptr; + + for (auto& bucket : old_table->buckets) + { + Bucket* current = bucket.next.load(); + while (current) + { + Bucket* next = current->next.load(); + delete current; + current = next; + } + } + }).detach(); + } + + std::shared_ptr
active_table() const + { + auto nt = new_table; + return nt ? nt : table; + } + +public: + explicit LockFreeMap(size_t initial_capacity = 1024) + { + table = std::make_shared
(initial_capacity); + } + + ~LockFreeMap() + { + auto t = table; + for (auto& bucket : t->buckets) + { + Bucket* current = bucket.next.load(); + while (current) + { + Bucket* next = current->next.load(); + delete current; + current = next; + } + } + } + + bool insert(const K& key, const V& value) + { + if ((float)(size_counter.load() + 1) / table->capacity > MAX_LOAD_FACTOR) + start_resize(table->capacity * 2); + + auto t = active_table(); + size_t idx = hash(key, t->capacity); + Bucket& head = t->buckets[idx]; + prefetch_for_read(&head); + + if (!head.occupied.load()) + { + bool expected = false; + if (head.occupied.compare_exchange_strong(expected, true)) + { + head.key.store(key); + head.value.store(value); + head.deleted.store(false); + size_counter.fetch_add(1); + return true; + } + } + + Bucket* current = &head; + while (true) + { + if (!current->deleted.load() && current->key.load() == key) + return false; + + Bucket* next = current->next.load(); + if (next) + { + current = next; + cpu_relax(); + } + else + { + Bucket* new_node = new Bucket; + new_node->occupied.store(true); + new_node->key.store(key); + new_node->value.store(value); + new_node->deleted.store(false); + if (current->next.compare_exchange_strong(next, new_node)) + { + size_counter.fetch_add(1); + return true; + } + delete new_node; + cpu_relax(); + } + } + } + + std::optional find(const K& key) + { + auto t = active_table(); + size_t idx = hash(key, t->capacity); + Bucket* current = &t->buckets[idx]; + + while (current) + { + if (current->occupied.load() && + !current->deleted.load() && + current->key.load() == key) + { + return current->value.load(); + } + current = current->next.load(); + cpu_relax(); + } + + return std::nullopt; + } + + bool erase(const K& key) + { + auto t = active_table(); + size_t idx = hash(key, t->capacity); + Bucket* current = &t->buckets[idx]; + + while (current) + { + if (current->occupied.load() && + !current->deleted.load() && + current->key.load() == key) + { + current->deleted.store(true); + size_counter.fetch_sub(1); + return true; + } + current = current->next.load(); + cpu_relax(); + } + + return false; + } + + bool update(const K& key, const V& new_value) + { + auto t = active_table(); + size_t idx = hash(key, t->capacity); + Bucket* current = &t->buckets[idx]; + + while (current) + { + if (current->occupied.load() && + !current->deleted.load() && + current->key.load() == key) + { + current->value.store(new_value); + return true; + } + current = current->next.load(); + cpu_relax(); + } + + return false; + } + + void shrink() + { + size_t current_size = size_counter.load(); + auto cap = table->capacity; + if (current_size < cap / 4 && cap > 1024) + start_resize(cap / 2); + } + + size_t size() const + { + return size_counter.load(); + } + + bool rehash_one(const K& key) + { + auto src = table; + auto dst = new_table; + if (!dst) return false; + + size_t idx = hash(key, src->capacity); + Bucket* current = &src->buckets[idx]; + + while (current) + { + if (current->occupied.load() && + !current->deleted.load() && + current->key.load() == key) + { + migrate_entry(*current, dst); + return true; + } + current = current->next.load(); + } + return false; + } + + std::vector keys() + { + std::vector result; + auto t = active_table(); + for (auto& bucket : t->buckets) + { + Bucket* current = &bucket; + while (current) + { + if (current->occupied.load() && + !current->deleted.load()) + { + result.push_back(current->key.load()); + } + current = current->next.load(); + } + } + return result; + } + + std::vector> entries() + { + std::vector> result; + auto t = active_table(); + for (auto& bucket : t->buckets) + { + Bucket* current = &bucket; + while (current) + { + if (current->occupied.load() && !current->deleted.load()) + { + result.emplace_back(current->key.load(), current->value.load()); + } + current = current->next.load(); + } + } + return result; + } + + void for_each(const std::function& cb) + { + auto t = active_table(); + for (auto& bucket : t->buckets) + { + Bucket* current = &bucket; + while (current) + { + if (current->occupied.load() && !current->deleted.load()) + { + cb(current->key.load(), current->value.load()); + } + current = current->next.load(); + } + } + } + +}; + +#endif // UNORDEREDPARALLELMAP_H diff --git a/cmake-build-debug/.cmake/api/v1/query/cache-v2 b/cmake-build-debug/.cmake/api/v1/query/cache-v2 new file mode 100644 index 0000000..e69de29 diff --git a/cmake-build-debug/.cmake/api/v1/query/cmakeFiles-v1 b/cmake-build-debug/.cmake/api/v1/query/cmakeFiles-v1 new file mode 100644 index 0000000..e69de29 diff --git a/cmake-build-debug/.cmake/api/v1/query/codemodel-v2 b/cmake-build-debug/.cmake/api/v1/query/codemodel-v2 new file mode 100644 index 0000000..e69de29 diff --git a/cmake-build-debug/.cmake/api/v1/query/toolchains-v1 b/cmake-build-debug/.cmake/api/v1/query/toolchains-v1 new file mode 100644 index 0000000..e69de29 diff --git a/cmake-build-debug/.cmake/api/v1/reply/cache-v2-6d08d1540fcfad82e74e.json b/cmake-build-debug/.cmake/api/v1/reply/cache-v2-6d08d1540fcfad82e74e.json new file mode 100644 index 0000000..30d9ec0 --- /dev/null +++ b/cmake-build-debug/.cmake/api/v1/reply/cache-v2-6d08d1540fcfad82e74e.json @@ -0,0 +1,1163 @@ +{ + "entries" : + [ + { + "name" : "CMAKE_ADDR2LINE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "CMAKE_ADDR2LINE-NOTFOUND" + }, + { + "name" : "CMAKE_AR", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar" + }, + { + "name" : "CMAKE_BUILD_TYPE", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel ..." + } + ], + "type" : "STRING", + "value" : "Debug" + }, + { + "name" : "CMAKE_CACHEFILE_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "This is the directory where this CMakeCache.txt was created" + } + ], + "type" : "INTERNAL", + "value" : "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug" + }, + { + "name" : "CMAKE_CACHE_MAJOR_VERSION", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Major version of cmake used to create the current loaded cache" + } + ], + "type" : "INTERNAL", + "value" : "3" + }, + { + "name" : "CMAKE_CACHE_MINOR_VERSION", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Minor version of cmake used to create the current loaded cache" + } + ], + "type" : "INTERNAL", + "value" : "30" + }, + { + "name" : "CMAKE_CACHE_PATCH_VERSION", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Patch version of cmake used to create the current loaded cache" + } + ], + "type" : "INTERNAL", + "value" : "5" + }, + { + "name" : "CMAKE_COLOR_DIAGNOSTICS", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Enable colored diagnostics throughout." + } + ], + "type" : "BOOL", + "value" : "ON" + }, + { + "name" : "CMAKE_COMMAND", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to CMake executable." + } + ], + "type" : "INTERNAL", + "value" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/bin/cmake" + }, + { + "name" : "CMAKE_CPACK_COMMAND", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to cpack program executable." + } + ], + "type" : "INTERNAL", + "value" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/bin/cpack" + }, + { + "name" : "CMAKE_CTEST_COMMAND", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to ctest program executable." + } + ], + "type" : "INTERNAL", + "value" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/bin/ctest" + }, + { + "name" : "CMAKE_CXX_COMPILER", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "CXX compiler" + } + ], + "type" : "FILEPATH", + "value" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++" + }, + { + "name" : "CMAKE_CXX_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the CXX compiler during all build types." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_CXX_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the CXX compiler during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "-g" + }, + { + "name" : "CMAKE_CXX_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the CXX compiler during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "-Os -DNDEBUG" + }, + { + "name" : "CMAKE_CXX_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the CXX compiler during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "-O3 -DNDEBUG" + }, + { + "name" : "CMAKE_CXX_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the CXX compiler during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "-O2 -g -DNDEBUG" + }, + { + "name" : "CMAKE_C_COMPILER", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "C compiler" + } + ], + "type" : "FILEPATH", + "value" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc" + }, + { + "name" : "CMAKE_C_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the C compiler during all build types." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_C_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the C compiler during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "-g" + }, + { + "name" : "CMAKE_C_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the C compiler during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "-Os -DNDEBUG" + }, + { + "name" : "CMAKE_C_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the C compiler during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "-O3 -DNDEBUG" + }, + { + "name" : "CMAKE_C_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the C compiler during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "-O2 -g -DNDEBUG" + }, + { + "name" : "CMAKE_DLLTOOL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "CMAKE_DLLTOOL-NOTFOUND" + }, + { + "name" : "CMAKE_EXECUTABLE_FORMAT", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Executable file format" + } + ], + "type" : "INTERNAL", + "value" : "MACHO" + }, + { + "name" : "CMAKE_EXE_LINKER_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during all build types." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_EXE_LINKER_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_EXE_LINKER_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_EXE_LINKER_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_EXPORT_COMPILE_COMMANDS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Enable/Disable output of compile commands during generation." + } + ], + "type" : "BOOL", + "value" : "" + }, + { + "name" : "CMAKE_EXTRA_GENERATOR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Name of external makefile project generator." + } + ], + "type" : "INTERNAL", + "value" : "" + }, + { + "name" : "CMAKE_FIND_PACKAGE_REDIRECTS_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake." + } + ], + "type" : "STATIC", + "value" : "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/pkgRedirects" + }, + { + "name" : "CMAKE_GENERATOR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Name of generator." + } + ], + "type" : "INTERNAL", + "value" : "Ninja" + }, + { + "name" : "CMAKE_GENERATOR_INSTANCE", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Generator instance identifier." + } + ], + "type" : "INTERNAL", + "value" : "" + }, + { + "name" : "CMAKE_GENERATOR_PLATFORM", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Name of generator platform." + } + ], + "type" : "INTERNAL", + "value" : "" + }, + { + "name" : "CMAKE_GENERATOR_TOOLSET", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Name of generator toolset." + } + ], + "type" : "INTERNAL", + "value" : "" + }, + { + "name" : "CMAKE_HOME_DIRECTORY", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Source directory with the top level CMakeLists.txt file for this project" + } + ], + "type" : "INTERNAL", + "value" : "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap" + }, + { + "name" : "CMAKE_INSTALL_NAME_TOOL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "/usr/bin/install_name_tool" + }, + { + "name" : "CMAKE_INSTALL_PREFIX", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Install path prefix, prepended onto install directories." + } + ], + "type" : "PATH", + "value" : "/usr/local" + }, + { + "name" : "CMAKE_LINKER", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" + }, + { + "name" : "CMAKE_MAKE_PROGRAM", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "No help, variable specified on the command line." + } + ], + "type" : "UNINITIALIZED", + "value" : "/Applications/CLion.app/Contents/bin/ninja/mac/aarch64/ninja" + }, + { + "name" : "CMAKE_MODULE_LINKER_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of modules during all build types." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_MODULE_LINKER_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of modules during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of modules during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_MODULE_LINKER_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of modules during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of modules during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_NM", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm" + }, + { + "name" : "CMAKE_NUMBER_OF_MAKEFILES", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "number of local generators" + } + ], + "type" : "INTERNAL", + "value" : "1" + }, + { + "name" : "CMAKE_OBJCOPY", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "CMAKE_OBJCOPY-NOTFOUND" + }, + { + "name" : "CMAKE_OBJDUMP", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump" + }, + { + "name" : "CMAKE_OSX_ARCHITECTURES", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Build architectures for OSX" + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_OSX_DEPLOYMENT_TARGET", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Minimum OS X version to target for deployment (at runtime); newer APIs weak linked. Set to empty string for default value." + } + ], + "type" : "STRING", + "value" : "15.3" + }, + { + "name" : "CMAKE_OSX_SYSROOT", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "The product will be built against the headers and libraries located inside the indicated SDK." + } + ], + "type" : "PATH", + "value" : "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk" + }, + { + "name" : "CMAKE_PLATFORM_INFO_INITIALIZED", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Platform information initialized" + } + ], + "type" : "INTERNAL", + "value" : "1" + }, + { + "name" : "CMAKE_PROJECT_DESCRIPTION", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "" + }, + { + "name" : "CMAKE_PROJECT_HOMEPAGE_URL", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "" + }, + { + "name" : "CMAKE_PROJECT_NAME", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "parallelUnorderedMap" + }, + { + "name" : "CMAKE_RANLIB", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib" + }, + { + "name" : "CMAKE_READELF", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "CMAKE_READELF-NOTFOUND" + }, + { + "name" : "CMAKE_ROOT", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Path to CMake installation." + } + ], + "type" : "INTERNAL", + "value" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30" + }, + { + "name" : "CMAKE_SHARED_LINKER_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of shared libraries during all build types." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_SHARED_LINKER_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of shared libraries during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of shared libraries during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_SHARED_LINKER_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of shared libraries during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of shared libraries during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_SKIP_INSTALL_RPATH", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "If set, runtime paths are not added when installing shared libraries, but are added when building." + } + ], + "type" : "BOOL", + "value" : "NO" + }, + { + "name" : "CMAKE_SKIP_RPATH", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "If set, runtime paths are not added when using shared libraries." + } + ], + "type" : "BOOL", + "value" : "NO" + }, + { + "name" : "CMAKE_STATIC_LINKER_FLAGS", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of static libraries during all build types." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_STATIC_LINKER_FLAGS_DEBUG", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of static libraries during DEBUG builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of static libraries during MINSIZEREL builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_STATIC_LINKER_FLAGS_RELEASE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of static libraries during RELEASE builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Flags used by the linker during the creation of static libraries during RELWITHDEBINFO builds." + } + ], + "type" : "STRING", + "value" : "" + }, + { + "name" : "CMAKE_STRIP", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip" + }, + { + "name" : "CMAKE_TAPI", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "Path to a program." + } + ], + "type" : "FILEPATH", + "value" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/tapi" + }, + { + "name" : "CMAKE_UNAME", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "uname command" + } + ], + "type" : "INTERNAL", + "value" : "/usr/bin/uname" + }, + { + "name" : "CMAKE_VERBOSE_MAKEFILE", + "properties" : + [ + { + "name" : "ADVANCED", + "value" : "1" + }, + { + "name" : "HELPSTRING", + "value" : "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." + } + ], + "type" : "BOOL", + "value" : "FALSE" + }, + { + "name" : "parallelUnorderedMap_BINARY_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug" + }, + { + "name" : "parallelUnorderedMap_IS_TOP_LEVEL", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "ON" + }, + { + "name" : "parallelUnorderedMap_SOURCE_DIR", + "properties" : + [ + { + "name" : "HELPSTRING", + "value" : "Value Computed by CMake" + } + ], + "type" : "STATIC", + "value" : "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap" + } + ], + "kind" : "cache", + "version" : + { + "major" : 2, + "minor" : 0 + } +} diff --git a/cmake-build-debug/.cmake/api/v1/reply/cmakeFiles-v1-42631f55257d4b975722.json b/cmake-build-debug/.cmake/api/v1/reply/cmakeFiles-v1-42631f55257d4b975722.json new file mode 100644 index 0000000..4c4b11a --- /dev/null +++ b/cmake-build-debug/.cmake/api/v1/reply/cmakeFiles-v1-42631f55257d4b975722.json @@ -0,0 +1,161 @@ +{ + "inputs" : + [ + { + "path" : "CMakeLists.txt" + }, + { + "isGenerated" : true, + "path" : "cmake-build-debug/CMakeFiles/3.30.5/CMakeSystem.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeSystemSpecificInitialize.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Darwin-Initialize.cmake" + }, + { + "isGenerated" : true, + "path" : "cmake-build-debug/CMakeFiles/3.30.5/CMakeCCompiler.cmake" + }, + { + "isGenerated" : true, + "path" : "cmake-build-debug/CMakeFiles/3.30.5/CMakeCXXCompiler.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeSystemSpecificInformation.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeGenericSystem.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeInitializeConfigs.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Darwin.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/UnixPaths.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCInformation.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeLanguageInformation.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/AppleClang-C.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/Clang.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/GNU.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-AppleClang-C.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-Clang-C.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-Clang.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCommonLanguageInclude.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCXXInformation.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeLanguageInformation.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/AppleClang-CXX.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/Clang.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-AppleClang-CXX.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-Clang-CXX.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-Clang.cmake" + }, + { + "isCMake" : true, + "isExternal" : true, + "path" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCommonLanguageInclude.cmake" + } + ], + "kind" : "cmakeFiles", + "paths" : + { + "build" : "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug", + "source" : "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap" + }, + "version" : + { + "major" : 1, + "minor" : 1 + } +} diff --git a/cmake-build-debug/.cmake/api/v1/reply/codemodel-v2-ed8ddf4b07c3e6b33040.json b/cmake-build-debug/.cmake/api/v1/reply/codemodel-v2-ed8ddf4b07c3e6b33040.json new file mode 100644 index 0000000..d969db1 --- /dev/null +++ b/cmake-build-debug/.cmake/api/v1/reply/codemodel-v2-ed8ddf4b07c3e6b33040.json @@ -0,0 +1,60 @@ +{ + "configurations" : + [ + { + "directories" : + [ + { + "build" : ".", + "jsonFile" : "directory-.-Debug-f5ebdc15457944623624.json", + "minimumCMakeVersion" : + { + "string" : "3.30" + }, + "projectIndex" : 0, + "source" : ".", + "targetIndexes" : + [ + 0 + ] + } + ], + "name" : "Debug", + "projects" : + [ + { + "directoryIndexes" : + [ + 0 + ], + "name" : "parallelUnorderedMap", + "targetIndexes" : + [ + 0 + ] + } + ], + "targets" : + [ + { + "directoryIndex" : 0, + "id" : "parallelUnorderedMap::@6890427a1f51a3e7e1df", + "jsonFile" : "target-parallelUnorderedMap-Debug-bf32cbb535b639e4d345.json", + "name" : "parallelUnorderedMap", + "projectIndex" : 0 + } + ] + } + ], + "kind" : "codemodel", + "paths" : + { + "build" : "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug", + "source" : "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap" + }, + "version" : + { + "major" : 2, + "minor" : 7 + } +} diff --git a/cmake-build-debug/.cmake/api/v1/reply/directory-.-Debug-f5ebdc15457944623624.json b/cmake-build-debug/.cmake/api/v1/reply/directory-.-Debug-f5ebdc15457944623624.json new file mode 100644 index 0000000..3a67af9 --- /dev/null +++ b/cmake-build-debug/.cmake/api/v1/reply/directory-.-Debug-f5ebdc15457944623624.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : ".", + "source" : "." + } +} diff --git a/cmake-build-debug/.cmake/api/v1/reply/index-2025-04-29T17-05-54-0891.json b/cmake-build-debug/.cmake/api/v1/reply/index-2025-04-29T17-05-54-0891.json new file mode 100644 index 0000000..242b479 --- /dev/null +++ b/cmake-build-debug/.cmake/api/v1/reply/index-2025-04-29T17-05-54-0891.json @@ -0,0 +1,108 @@ +{ + "cmake" : + { + "generator" : + { + "multiConfig" : false, + "name" : "Ninja" + }, + "paths" : + { + "cmake" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/bin/cmake", + "cpack" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/bin/cpack", + "ctest" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/bin/ctest", + "root" : "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30" + }, + "version" : + { + "isDirty" : false, + "major" : 3, + "minor" : 30, + "patch" : 5, + "string" : "3.30.5", + "suffix" : "" + } + }, + "objects" : + [ + { + "jsonFile" : "codemodel-v2-ed8ddf4b07c3e6b33040.json", + "kind" : "codemodel", + "version" : + { + "major" : 2, + "minor" : 7 + } + }, + { + "jsonFile" : "cache-v2-6d08d1540fcfad82e74e.json", + "kind" : "cache", + "version" : + { + "major" : 2, + "minor" : 0 + } + }, + { + "jsonFile" : "cmakeFiles-v1-42631f55257d4b975722.json", + "kind" : "cmakeFiles", + "version" : + { + "major" : 1, + "minor" : 1 + } + }, + { + "jsonFile" : "toolchains-v1-d620e758811353ca5ad3.json", + "kind" : "toolchains", + "version" : + { + "major" : 1, + "minor" : 0 + } + } + ], + "reply" : + { + "cache-v2" : + { + "jsonFile" : "cache-v2-6d08d1540fcfad82e74e.json", + "kind" : "cache", + "version" : + { + "major" : 2, + "minor" : 0 + } + }, + "cmakeFiles-v1" : + { + "jsonFile" : "cmakeFiles-v1-42631f55257d4b975722.json", + "kind" : "cmakeFiles", + "version" : + { + "major" : 1, + "minor" : 1 + } + }, + "codemodel-v2" : + { + "jsonFile" : "codemodel-v2-ed8ddf4b07c3e6b33040.json", + "kind" : "codemodel", + "version" : + { + "major" : 2, + "minor" : 7 + } + }, + "toolchains-v1" : + { + "jsonFile" : "toolchains-v1-d620e758811353ca5ad3.json", + "kind" : "toolchains", + "version" : + { + "major" : 1, + "minor" : 0 + } + } + } +} diff --git a/cmake-build-debug/.cmake/api/v1/reply/target-parallelUnorderedMap-Debug-bf32cbb535b639e4d345.json b/cmake-build-debug/.cmake/api/v1/reply/target-parallelUnorderedMap-Debug-bf32cbb535b639e4d345.json new file mode 100644 index 0000000..4f94ae2 --- /dev/null +++ b/cmake-build-debug/.cmake/api/v1/reply/target-parallelUnorderedMap-Debug-bf32cbb535b639e4d345.json @@ -0,0 +1,117 @@ +{ + "artifacts" : + [ + { + "path" : "parallelUnorderedMap" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_executable" + ], + "files" : + [ + "CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 6, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-g -std=gnu++20 -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 -fcolor-diagnostics" + } + ], + "language" : "CXX", + "languageStandard" : + { + "backtraces" : + [ + 1 + ], + "standard" : "20" + }, + "sourceIndexes" : + [ + 0 + ] + } + ], + "id" : "parallelUnorderedMap::@6890427a1f51a3e7e1df", + "link" : + { + "commandFragments" : + [ + { + "fragment" : "-g", + "role" : "flags" + }, + { + "fragment" : "", + "role" : "flags" + } + ], + "language" : "CXX" + }, + "name" : "parallelUnorderedMap", + "nameOnDisk" : "parallelUnorderedMap", + "paths" : + { + "build" : ".", + "source" : "." + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0 + ] + }, + { + "name" : "Header Files", + "sourceIndexes" : + [ + 1, + 2 + ] + } + ], + "sources" : + [ + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "main.cpp", + "sourceGroupIndex" : 0 + }, + { + "backtrace" : 1, + "path" : "UnorderedParallelMap.h", + "sourceGroupIndex" : 1 + }, + { + "backtrace" : 1, + "path" : "optimization.h", + "sourceGroupIndex" : 1 + } + ], + "type" : "EXECUTABLE" +} diff --git a/cmake-build-debug/.cmake/api/v1/reply/toolchains-v1-d620e758811353ca5ad3.json b/cmake-build-debug/.cmake/api/v1/reply/toolchains-v1-d620e758811353ca5ad3.json new file mode 100644 index 0000000..a0839a3 --- /dev/null +++ b/cmake-build-debug/.cmake/api/v1/reply/toolchains-v1-d620e758811353ca5ad3.json @@ -0,0 +1,93 @@ +{ + "kind" : "toolchains", + "toolchains" : + [ + { + "compiler" : + { + "id" : "AppleClang", + "implicit" : + { + "includeDirectories" : + [ + "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include", + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include", + "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include" + ], + "linkDirectories" : + [ + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib", + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift" + ], + "linkFrameworkDirectories" : + [ + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks" + ], + "linkLibraries" : [] + }, + "path" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc", + "version" : "17.0.0.17000013" + }, + "language" : "C", + "sourceFileExtensions" : + [ + "c", + "m" + ] + }, + { + "compiler" : + { + "id" : "AppleClang", + "implicit" : + { + "includeDirectories" : + [ + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/c++/v1", + "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include", + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include", + "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include" + ], + "linkDirectories" : + [ + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib", + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift" + ], + "linkFrameworkDirectories" : + [ + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks" + ], + "linkLibraries" : + [ + "c++" + ] + }, + "path" : "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++", + "version" : "17.0.0.17000013" + }, + "language" : "CXX", + "sourceFileExtensions" : + [ + "C", + "M", + "c++", + "cc", + "cpp", + "cxx", + "mm", + "mpp", + "CPP", + "ixx", + "cppm", + "ccm", + "cxxm", + "c++m" + ] + } + ], + "version" : + { + "major" : 1, + "minor" : 0 + } +} diff --git a/cmake-build-debug/.ninja_deps b/cmake-build-debug/.ninja_deps new file mode 100644 index 0000000000000000000000000000000000000000..10ae39f845829e16541a3c9db5802cd9c14cc28c GIT binary patch literal 212536 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 bK6~SI?Rgkm^UHpB@FmW`+nR-))Bwl~cR|3LPp z#0Wv87O6i}B^=tnpi(a>swfvrP+2{+y`fw{v?_u~sH9a<+gno!^PT5)vL=WF9GQ`3 z-&wdw;rvr zI8O+HN+qMIWUE`>54WC?W3R(8D@xL$lxKSE zLb(~eHlNRd(=54ZyK}hrN=+3`S%s{!3KK=0zqQ|#lP~35V!Ne2cQWi(`Nxd-(deMj zEF|oFG^|>jHRU8@rta@DKs2*~0}&U(vd6JQu=`;1wXM*Tu$gxa>oiv2qhnAO{sycZ z%P~(QUAPp4qHXG(Dwle5R=PJ^$z@@)bVIq0^5VyL_p5zZzTC9^)Ruo2zv#zV5UP9f z28etCz2|y7zFFT}Sap9`S$3d5&col|E&N{Ymwns^UCOQJtShykp3JUYJ-d5Ql$F+X zhTQQqjMiJ@->Z~uGv9O2xx!iLO(@qh876ASy3?_lFUxCC_J<>=MK{H#B0@k22mv7= z1cbozNTB{9E!1D9>g{f--tp6a^#E0ux@W5RhnQ>M*mt4BS_<6@gsbhI4*xy3&w{UF zO+VImXRYrxa^PJTYF>5Shz}(Wl&#ZdaYAKJ+NIIH&=^tNNDQS9*cD}#ie`4SWE@n( z@u)Evj}W~2PP$^7s#waJrO}v?Ova)r8Xq(warpU{=2hndx>x?^;(xL*R#yI>W(n)( z>VyC5I+10A&IBV!d{smU2mv7=1cZPP5CTF#2nYcoAOwVf5D)@FKnMr{As_^VfDjM@ zLO=)z0U;m+gn$qb0zyCt2mv7=1cZPP5CTF#2nYcoAOwVf5D)@FKnOf{1cK<8XQEkI z+~deRhx1tRDB8php33pk+!pLqeo~p!W@ZXgL6hb<#)7CLKW-K1Ma=vlfQ4s)x^SmC zM~^vlZNGv!Abu~8x3fRw*qlD#;YsO+f3vn5GejI8#03A^*DC#5rAA`A-{C=g<(h87 zg^^f)<9Ky|Nu{m#m08GIoi$X(-8Hejgfo=w@lu>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(__open_xl__) && defined(__clang__) +# define COMPILER_ID "IBMClang" +# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__) +# define COMPILER_VERSION_MINOR DEC(__open_xl_release__) +# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__) + + +#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(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#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(__clang__) && defined(__cray__) +# define COMPILER_ID "CrayClang" +# define COMPILER_VERSION_MAJOR DEC(__cray_major__) +# define COMPILER_VERSION_MINOR DEC(__cray_minor__) +# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#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(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#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(__TASKING__) +# define COMPILER_ID "Tasking" + # define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000) + # define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100) +# define COMPILER_VERSION_INTERNAL DEC(__VERSION__) + +#elif defined(__ORANGEC__) +# define COMPILER_ID "OrangeC" +# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__) + +#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/100 % 100) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) && defined(__ti__) +# define COMPILER_ID "TIClang" + # define COMPILER_VERSION_MAJOR DEC(__ti_major__) + # define COMPILER_VERSION_MINOR DEC(__ti_minor__) + # define COMPILER_VERSION_PATCH DEC(__ti_patchlevel__) +# define COMPILER_VERSION_INTERNAL DEC(__ti_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(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__)) +# define COMPILER_ID "LCC" +# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100) +# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100) +# if defined(__LCC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__) +# endif +# if defined(__GNUC__) && defined(__GNUC_MINOR__) +# define SIMULATE_ID "GNU" +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif +# 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(_ADI_COMPILER) +# define COMPILER_ID "ADSP" +#if defined(__VERSIONNUM__) + /* __VERSIONNUM__ = 0xVVRRPPTT */ +# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF) +# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF) +# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF) +# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 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__) || defined(__ICCSTM8__)) +# 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(__CRAYXT_COMPUTE_LINUX_TARGET) +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(__MSYS__) +# define PLATFORM_ID "MSYS" + +#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" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# 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 + +# elif defined(_ADI_COMPILER) +# define PLATFORM_ID "ADSP" + +#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_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# 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" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# 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 + +#elif defined(__clang__) && defined(__ti__) +# if defined(__ARM_ARCH) +# define ARCHITECTURE_ID "Arm" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +# elif defined(__ADSPSHARC__) +# define ARCHITECTURE_ID "SHARC" + +# elif defined(__ADSPBLACKFIN__) +# define ARCHITECTURE_ID "Blackfin" + +#elif defined(__TASKING__) + +# if defined(__CTC__) || defined(__CPTC__) +# define ARCHITECTURE_ID "TriCore" + +# elif defined(__CMCS__) +# define ARCHITECTURE_ID "MCS" + +# elif defined(__CARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__CARC__) +# define ARCHITECTURE_ID "ARC" + +# elif defined(__C51__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__CPCP__) +# define ARCHITECTURE_ID "PCP" + +# else +# 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. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(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'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#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 "]"; + + + +#define C_STD_99 199901L +#define C_STD_11 201112L +#define C_STD_17 201710L +#define C_STD_23 202311L + +#ifdef __STDC_VERSION__ +# define C_STD __STDC_VERSION__ +#endif + +#if !defined(__STDC__) && !defined(__clang__) +# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__) +# define C_VERSION "90" +# else +# define C_VERSION +# endif +#elif C_STD > C_STD_17 +# define C_VERSION "23" +#elif C_STD > C_STD_11 +# define C_VERSION "17" +#elif C_STD > C_STD_99 +# define C_VERSION "11" +#elif C_STD >= C_STD_99 +# define C_VERSION "99" +#else +# define C_VERSION "90" +#endif +const char* info_language_standard_default = + "INFO" ":" "standard_default[" C_VERSION "]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +#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(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} +#endif diff --git a/cmake-build-debug/CMakeFiles/3.30.5/CompilerIdC/CMakeCCompilerId.o b/cmake-build-debug/CMakeFiles/3.30.5/CompilerIdC/CMakeCCompilerId.o new file mode 100644 index 0000000000000000000000000000000000000000..6819f61f305683f71d9564e7e51fa562124d82f9 GIT binary patch literal 1712 zcmb_cJ%|%Q6rOnJnKPOwSSSY?u(1ls-9bcINVq5};qHnQk#LMlvX@)fY?jSNudp~! z&_?hYD~l@>1X~MZCD^3%Y{W8J-4*tph4FhkZ}NAQKM!WV_q{js_RY>W`|;=ZUnhi! z2pB!4G0I2qNMgXwVSEX*AwBfya&D8>z%)MwpTPGZz#LHYTgaF4L!RS(UgFSO z)T5F+=uhu)IGgrcZMv=Dh9~>m;CfeiQE#HZ(OTqFy@qF21KD=(*=|kBVqtX7E3TL1 zU=n>%$u5vnV_Tj_?ktANC3uzk<`mz>y3@cOHn$6mVXR`19p^#kOLP9l`VYjX{sqzL z&56#}m^kPsL?^n`ziVP z=JNHGD|9rrWBHZ5=Q-ArW4iS<5oSEc4Az@|qf#(^92-YXzq(OjzZIBn&Gc)sX04lT zC#YnyoWXsu+?EX)4RR~XYk&B$$NH0ZEuRWj(xGLtDdnWoLno7^SY~13Md5u)hF5Z| zgBM`9pT!-8#$(_~@P`Tw4+wP?9fbyI2>K}&6&j1cICxs2LE3}Xif0rWNg&QIPI2fh zehN4PM2zkomWG-Q5n7)403K(-Q|=9MC_n5U{?Y`0NgNkN-|uI{p?!Tn-|_r!K(f~u zRPRT~gm}(;n&0_^`FZA#h@(+`KktJl@V-^f-(s%cPhra6;rvDBW#$d$H<;fhKGHA! z4-=e&iyw#Wt~Vt~vTfEad014FGbRNo9GSwemZxc{Gi5;u*)VOFV_Ne}N$kQ28r~vT YO2GkL&=d~nyrytKGn&EyC3%GQ8#iSS{{R30 literal 0 HcmV?d00001 diff --git a/cmake-build-debug/CMakeFiles/3.30.5/CompilerIdCXX/CMakeCXXCompilerId.cpp b/cmake-build-debug/CMakeFiles/3.30.5/CompilerIdCXX/CMakeCXXCompilerId.cpp new file mode 100644 index 0000000..da6c824 --- /dev/null +++ b/cmake-build-debug/CMakeFiles/3.30.5/CompilerIdCXX/CMakeCXXCompilerId.cpp @@ -0,0 +1,919 @@ +/* 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 + +#if !defined(__has_include) +/* If the compiler does not have __has_include, pretend the answer is + always no. */ +# define __has_include(x) 0 +#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 prior to 2021, and then VVVV for 2021 and later, + except that a few beta releases use the old format with V=2021. */ +# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 +# 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 +# else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) + /* The third version component from --version is an update index, + but no macro is provided for it. */ +# define COMPILER_VERSION_PATCH DEC(0) +# 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(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) +# define COMPILER_ID "IntelLLVM" +#if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +#endif +#if defined(__GNUC__) +# define SIMULATE_ID "GNU" +#endif +/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and + * later. Look for 6 digit vs. 8 digit version number to decide encoding. + * VVVV is no smaller than the current year when a version is released. + */ +#if __INTEL_LLVM_COMPILER < 1000000L +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) +#else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) +#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(__open_xl__) && defined(__clang__) +# define COMPILER_ID "IBMClang" +# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__) +# define COMPILER_VERSION_MINOR DEC(__open_xl_release__) +# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__) + + +#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(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#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(__clang__) && defined(__cray__) +# define COMPILER_ID "CrayClang" +# define COMPILER_VERSION_MAJOR DEC(__cray_major__) +# define COMPILER_VERSION_MINOR DEC(__cray_minor__) +# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#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(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#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(__TASKING__) +# define COMPILER_ID "Tasking" + # define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000) + # define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100) +# define COMPILER_VERSION_INTERNAL DEC(__VERSION__) + +#elif defined(__ORANGEC__) +# define COMPILER_ID "OrangeC" +# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__) + +#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/100 % 100) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) && defined(__ti__) +# define COMPILER_ID "TIClang" + # define COMPILER_VERSION_MAJOR DEC(__ti_major__) + # define COMPILER_VERSION_MINOR DEC(__ti_minor__) + # define COMPILER_VERSION_PATCH DEC(__ti_patchlevel__) +# define COMPILER_VERSION_INTERNAL DEC(__ti_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(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__)) +# define COMPILER_ID "LCC" +# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100) +# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100) +# if defined(__LCC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__) +# endif +# if defined(__GNUC__) && defined(__GNUC_MINOR__) +# define SIMULATE_ID "GNU" +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif +# 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(_ADI_COMPILER) +# define COMPILER_ID "ADSP" +#if defined(__VERSIONNUM__) + /* __VERSIONNUM__ = 0xVVRRPPTT */ +# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF) +# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF) +# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF) +# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 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__) || defined(__ICCSTM8__)) +# 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(__CRAYXT_COMPUTE_LINUX_TARGET) +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(__MSYS__) +# define PLATFORM_ID "MSYS" + +#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" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# 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 + +# elif defined(_ADI_COMPILER) +# define PLATFORM_ID "ADSP" + +#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_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# 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" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# 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 + +#elif defined(__clang__) && defined(__ti__) +# if defined(__ARM_ARCH) +# define ARCHITECTURE_ID "Arm" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +# elif defined(__ADSPSHARC__) +# define ARCHITECTURE_ID "SHARC" + +# elif defined(__ADSPBLACKFIN__) +# define ARCHITECTURE_ID "Blackfin" + +#elif defined(__TASKING__) + +# if defined(__CTC__) || defined(__CPTC__) +# define ARCHITECTURE_ID "TriCore" + +# elif defined(__CMCS__) +# define ARCHITECTURE_ID "MCS" + +# elif defined(__CARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__CARC__) +# define ARCHITECTURE_ID "ARC" + +# elif defined(__C51__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__CPCP__) +# define ARCHITECTURE_ID "PCP" + +# else +# 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. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(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'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#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 "]"; + + + +#define CXX_STD_98 199711L +#define CXX_STD_11 201103L +#define CXX_STD_14 201402L +#define CXX_STD_17 201703L +#define CXX_STD_20 202002L +#define CXX_STD_23 202302L + +#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) +# if _MSVC_LANG > CXX_STD_17 +# define CXX_STD _MSVC_LANG +# elif _MSVC_LANG == CXX_STD_17 && defined(__cpp_aggregate_paren_init) +# define CXX_STD CXX_STD_20 +# elif _MSVC_LANG > CXX_STD_14 && __cplusplus > CXX_STD_17 +# define CXX_STD CXX_STD_20 +# elif _MSVC_LANG > CXX_STD_14 +# define CXX_STD CXX_STD_17 +# elif defined(__INTEL_CXX11_MODE__) && defined(__cpp_aggregate_nsdmi) +# define CXX_STD CXX_STD_14 +# elif defined(__INTEL_CXX11_MODE__) +# define CXX_STD CXX_STD_11 +# else +# define CXX_STD CXX_STD_98 +# endif +#elif defined(_MSC_VER) && defined(_MSVC_LANG) +# if _MSVC_LANG > __cplusplus +# define CXX_STD _MSVC_LANG +# else +# define CXX_STD __cplusplus +# endif +#elif defined(__NVCOMPILER) +# if __cplusplus == CXX_STD_17 && defined(__cpp_aggregate_paren_init) +# define CXX_STD CXX_STD_20 +# else +# define CXX_STD __cplusplus +# endif +#elif defined(__INTEL_COMPILER) || defined(__PGI) +# if __cplusplus == CXX_STD_11 && defined(__cpp_namespace_attributes) +# define CXX_STD CXX_STD_17 +# elif __cplusplus == CXX_STD_11 && defined(__cpp_aggregate_nsdmi) +# define CXX_STD CXX_STD_14 +# else +# define CXX_STD __cplusplus +# endif +#elif (defined(__IBMCPP__) || defined(__ibmxl__)) && defined(__linux__) +# if __cplusplus == CXX_STD_11 && defined(__cpp_aggregate_nsdmi) +# define CXX_STD CXX_STD_14 +# else +# define CXX_STD __cplusplus +# endif +#elif __cplusplus == 1 && defined(__GXX_EXPERIMENTAL_CXX0X__) +# define CXX_STD CXX_STD_11 +#else +# define CXX_STD __cplusplus +#endif + +const char* info_language_standard_default = "INFO" ":" "standard_default[" +#if CXX_STD > CXX_STD_23 + "26" +#elif CXX_STD > CXX_STD_20 + "23" +#elif CXX_STD > CXX_STD_17 + "20" +#elif CXX_STD > CXX_STD_14 + "17" +#elif CXX_STD > CXX_STD_11 + "14" +#elif CXX_STD >= CXX_STD_11 + "11" +#else + "98" +#endif +"]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + 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(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} diff --git a/cmake-build-debug/CMakeFiles/3.30.5/CompilerIdCXX/CMakeCXXCompilerId.o b/cmake-build-debug/CMakeFiles/3.30.5/CompilerIdCXX/CMakeCXXCompilerId.o new file mode 100644 index 0000000000000000000000000000000000000000..fbd909dee55beee94c7905a2aaca0cdc6b2c6de0 GIT binary patch literal 1712 zcmb_cJ#5oZ5PqShqzWV;F@P#TBo?M9Nh1}3A|+}-fULGdhCoz3ti(+%IgaHx(6I;x z1_sK?QX~e%#7HI>vr!hr7?|3DoiY%<^ShV7PW+s7{_eYbzIV^Qdmn#(|8-J`h=9;z z7Fs!mM-mD-5B(BGLwe-Vd-=j(CC3d6`}BkdIRC zqCS1b(P}zxt>v~y2cE8Plk;8Um-=akWD%Vr8R#egGb`i;G*dE7ex1K zOdJjpq8kbLb~`ZLy6M+t-P$laPEgI{ zID&bx+_sH28pc*v*8lKhPt+&xTRtVMrbEdrrIe9QkBrO``7(=B8-??f3`cUJf>&Ut zgfMm$=AQuL;ExsNJs^6_a1`dLhtNBQp)j8VqWg@r!aVgJ=G{1}FrNhC|Ha9V`y_rE zh`x)%M{|d*!affX`^-_Dac+2u-64)%*7MdSj!B?(B+Jlo{)RXPN6-6vj(-D^yoJ*G zA0ZRsCG%O{^EvYi%wG^6+y5zX6t3s>A$S7&t?~NX%=P}{ruaRMUt(TiPWKzdZ!)Lv zoM0O!E)Lt>Xh~|xj@hu}(WaVSG2M{DkttlYyiB(`E~L9gCL1Q_t`f3o+Agotjn9-i dUN}M1%W=9C4A4bQVSr{eg#nt;6b2~u$ZseN5sv@> literal 0 HcmV?d00001 diff --git a/cmake-build-debug/CMakeFiles/CMakeConfigureLog.yaml b/cmake-build-debug/CMakeFiles/CMakeConfigureLog.yaml new file mode 100644 index 0000000..288d133 --- /dev/null +++ b/cmake-build-debug/CMakeFiles/CMakeConfigureLog.yaml @@ -0,0 +1,461 @@ + +--- +events: + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineSystem.cmake:205 (message)" + - "CMakeLists.txt:2 (project)" + message: | + The system is: Darwin - 24.3.0 - arm64 + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerId.cmake:17 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCCompiler.cmake:123 (CMAKE_DETERMINE_COMPILER_ID)" + - "CMakeLists.txt:2 (project)" + message: | + Compiling the C compiler identification source file "CMakeCCompilerId.c" failed. + Compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc + Build flags: + Id flags: + + The output was: + 1 + ld: library 'System' not found + cc: error: linker command failed with exit code 1 (use -v to see invocation) + + + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerId.cmake:17 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCCompiler.cmake:123 (CMAKE_DETERMINE_COMPILER_ID)" + - "CMakeLists.txt:2 (project)" + message: | + Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. + Compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc + Build flags: + Id flags: -c + + The output was: + 0 + + + Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "CMakeCCompilerId.o" + + The C compiler identification is AppleClang, found in: + /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/3.30.5/CompilerIdC/CMakeCCompilerId.o + + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerId.cmake:17 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCXXCompiler.cmake:126 (CMAKE_DETERMINE_COMPILER_ID)" + - "CMakeLists.txt:2 (project)" + message: | + Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed. + Compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ + Build flags: + Id flags: + + The output was: + 1 + ld: library 'c++' not found + c++: error: linker command failed with exit code 1 (use -v to see invocation) + + + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerId.cmake:17 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCXXCompiler.cmake:126 (CMAKE_DETERMINE_COMPILER_ID)" + - "CMakeLists.txt:2 (project)" + message: | + Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. + Compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ + Build flags: + Id flags: -c + + The output was: + 0 + + + Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CMakeCXXCompilerId.o" + + The CXX compiler identification is AppleClang, found in: + /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/3.30.5/CompilerIdCXX/CMakeCXXCompilerId.o + + - + kind: "try_compile-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerABI.cmake:74 (try_compile)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + checks: + - "Detecting C compiler ABI info" + directories: + source: "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-Mj38uK" + binary: "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-Mj38uK" + cmakeVariables: + CMAKE_C_FLAGS: "" + CMAKE_C_FLAGS_DEBUG: "-g" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "15.3" + CMAKE_OSX_SYSROOT: "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk" + buildResult: + variable: "CMAKE_C_ABI_COMPILED" + cached: true + stdout: | + Change Dir: '/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-Mj38uK' + + Run Build Command(s): /Applications/CLion.app/Contents/bin/ninja/mac/aarch64/ninja -v cmTC_344da + [1/2] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 -fcolor-diagnostics -v -Wl,-v -MD -MT CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -MF CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o.d -o CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -c /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCCompilerABI.c + Apple clang version 17.0.0 (clang-1700.0.13.3) + Target: arm64-apple-darwin24.3.0 + Thread model: posix + InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin + cc: warning: -Wl,-v: 'linker' input unused [-Wunused-command-line-argument] + "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple arm64-apple-macosx15.3.0 -Wundef-prefix=TARGET_OS_ -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name CMakeCCompilerABI.c -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -fno-strict-return -ffp-contract=on -fno-rounding-math -funwind-tables=1 -fobjc-msgsend-selector-stubs -target-sdk-version=15.4 -fvisibility-inlines-hidden-static-local-var -fdefine-target-os-macros -fno-assume-unique-vtables -fno-modulemap-allow-subdirectory-search -target-cpu apple-m1 -target-feature +zcm -target-feature +zcz -target-feature +v8.5a -target-feature +aes -target-feature +altnzcv -target-feature +ccdp -target-feature +complxnum -target-feature +crc -target-feature +dotprod -target-feature +fp-armv8 -target-feature +fp16fml -target-feature +fptoint -target-feature +fullfp16 -target-feature +jsconv -target-feature +lse -target-feature +neon -target-feature +pauth -target-feature +perfmon -target-feature +predres -target-feature +ras -target-feature +rcpc -target-feature +rdm -target-feature +sb -target-feature +sha2 -target-feature +sha3 -target-feature +specrestrict -target-feature +ssbs -target-abi darwinpcs -debugger-tuning=lldb -fdebug-compilation-dir=/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-Mj38uK -target-linker-version 1167.4.1 -v -fcoverage-compilation-dir=/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-Mj38uK -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17 -dependency-file CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o.d -skip-unused-modulemap-deps -MT CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -sys-header-deps -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/local/include -internal-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Wno-reorder-init-list -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-final-dtor-non-final-class -Wno-extra-semi-stmt -Wno-misleading-indentation -Wno-quoted-include-in-framework-header -Wno-implicit-fallthrough -Wno-enum-enum-conversion -Wno-enum-float-conversion -Wno-elaborated-enum-base -Wno-reserved-identifier -Wno-gnu-folding-constant -ferror-limit 19 -stack-protector 1 -fstack-check -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fmax-type-align=16 -fcommon -fcolor-diagnostics -clang-vendor-feature=+disableNonDependentMemberExprInCurrentInstantiation -fno-odr-hash-protocols -clang-vendor-feature=+enableAggressiveVLAFolding -clang-vendor-feature=+revert09abecef7bbf -clang-vendor-feature=+thisNoAlignAttr -clang-vendor-feature=+thisNoNullAttr -clang-vendor-feature=+disableAtImportPrivateFrameworkInImplementationError -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -x c /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCCompilerABI.c + clang -cc1 version 17.0.0 (clang-1700.0.13.3) default target arm64-apple-darwin24.3.0 + ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/local/include" + ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/SubFrameworks" + ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/Library/Frameworks" + #include "..." search starts here: + #include <...> search starts here: + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks (framework directory) + End of search list. + [2/2] : && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v -Wl,-v CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -o cmTC_344da && : + Apple clang version 17.0.0 (clang-1700.0.13.3) + Target: arm64-apple-darwin24.3.0 + Thread model: posix + InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin + "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 15.3.0 15.4 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mllvm -enable-linkonceodr-outlining -o cmTC_344da -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a + @(#)PROGRAM:ld PROJECT:ld-1167.4.1 + BUILD 20:00:10 Mar 12 2025 + configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em + will use ld-classic for: armv6 armv7 armv7s i386 armv6m armv7k armv7m armv7em + LTO support using: LLVM version 17.0.0 (static support for 29, runtime is 29) + TAPI support using: Apple TAPI version 17.0.0 (tapi-1700.0.3.4) + Library search paths: + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift + Framework search paths: + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks + + exitCode: 0 + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerABI.cmake:113 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Effective list of requested architectures (possibly empty) : "" + Effective list of architectures found in the ABI info binary: "arm64" + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerABI.cmake:182 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Parsed C implicit include dir info: rv=done + found start of include info + found start of implicit include info + add: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include] + add: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include] + add: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] + end of search list found + collapse include dir [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include] ==> [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include] + collapse include dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include] + collapse include dir [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] ==> [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] + implicit include dirs: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] + + + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerABI.cmake:218 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Parsed C implicit link information: + link line regex: [^( *|.*[/\\])(ld[0-9]*(\\.[a-z]+)?|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)] + linker tool regex: [^[ ]*(->|")?[ ]*(([^"]*[/\\])?(ld[0-9]*(\\.[a-z]+)?))("|,| |$)] + ignore line: [Change Dir: '/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-Mj38uK'] + ignore line: [] + ignore line: [Run Build Command(s): /Applications/CLion.app/Contents/bin/ninja/mac/aarch64/ninja -v cmTC_344da] + ignore line: [[1/2] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 -fcolor-diagnostics -v -Wl -v -MD -MT CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -MF CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o.d -o CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -c /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCCompilerABI.c] + ignore line: [Apple clang version 17.0.0 (clang-1700.0.13.3)] + ignore line: [Target: arm64-apple-darwin24.3.0] + ignore line: [Thread model: posix] + ignore line: [InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin] + ignore line: [cc: warning: -Wl -v: 'linker' input unused [-Wunused-command-line-argument]] + ignore line: [ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple arm64-apple-macosx15.3.0 -Wundef-prefix=TARGET_OS_ -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name CMakeCCompilerABI.c -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -fno-strict-return -ffp-contract=on -fno-rounding-math -funwind-tables=1 -fobjc-msgsend-selector-stubs -target-sdk-version=15.4 -fvisibility-inlines-hidden-static-local-var -fdefine-target-os-macros -fno-assume-unique-vtables -fno-modulemap-allow-subdirectory-search -target-cpu apple-m1 -target-feature +zcm -target-feature +zcz -target-feature +v8.5a -target-feature +aes -target-feature +altnzcv -target-feature +ccdp -target-feature +complxnum -target-feature +crc -target-feature +dotprod -target-feature +fp-armv8 -target-feature +fp16fml -target-feature +fptoint -target-feature +fullfp16 -target-feature +jsconv -target-feature +lse -target-feature +neon -target-feature +pauth -target-feature +perfmon -target-feature +predres -target-feature +ras -target-feature +rcpc -target-feature +rdm -target-feature +sb -target-feature +sha2 -target-feature +sha3 -target-feature +specrestrict -target-feature +ssbs -target-abi darwinpcs -debugger-tuning=lldb -fdebug-compilation-dir=/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-Mj38uK -target-linker-version 1167.4.1 -v -fcoverage-compilation-dir=/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-Mj38uK -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17 -dependency-file CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o.d -skip-unused-modulemap-deps -MT CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -sys-header-deps -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/local/include -internal-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Wno-reorder-init-list -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-final-dtor-non-final-class -Wno-extra-semi-stmt -Wno-misleading-indentation -Wno-quoted-include-in-framework-header -Wno-implicit-fallthrough -Wno-enum-enum-conversion -Wno-enum-float-conversion -Wno-elaborated-enum-base -Wno-reserved-identifier -Wno-gnu-folding-constant -ferror-limit 19 -stack-protector 1 -fstack-check -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fmax-type-align=16 -fcommon -fcolor-diagnostics -clang-vendor-feature=+disableNonDependentMemberExprInCurrentInstantiation -fno-odr-hash-protocols -clang-vendor-feature=+enableAggressiveVLAFolding -clang-vendor-feature=+revert09abecef7bbf -clang-vendor-feature=+thisNoAlignAttr -clang-vendor-feature=+thisNoNullAttr -clang-vendor-feature=+disableAtImportPrivateFrameworkInImplementationError -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -x c /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCCompilerABI.c] + ignore line: [clang -cc1 version 17.0.0 (clang-1700.0.13.3) default target arm64-apple-darwin24.3.0] + ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/local/include"] + ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/SubFrameworks"] + ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/Library/Frameworks"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include] + ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include] + ignore line: [ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] + ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks (framework directory)] + ignore line: [End of search list.] + ignore line: [[2/2] : && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 -Wl -search_paths_first -Wl -headerpad_max_install_names -v -Wl -v CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -o cmTC_344da && :] + ignore line: [Apple clang version 17.0.0 (clang-1700.0.13.3)] + ignore line: [Target: arm64-apple-darwin24.3.0] + ignore line: [Thread model: posix] + ignore line: [InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin] + link line: [ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 15.3.0 15.4 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mllvm -enable-linkonceodr-outlining -o cmTC_344da -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] + arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld] ==> ignore + arg [-demangle] ==> ignore + arg [-lto_library] ==> ignore, skip following value + arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib] ==> skip value of -lto_library + arg [-dynamic] ==> ignore + arg [-arch] ==> ignore + arg [arm64] ==> ignore + arg [-platform_version] ==> ignore + arg [macos] ==> ignore + arg [15.3.0] ==> ignore + arg [15.4] ==> ignore + arg [-syslibroot] ==> ignore + arg [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk] ==> ignore + arg [-mllvm] ==> ignore + arg [-enable-linkonceodr-outlining] ==> ignore + arg [-o] ==> ignore + arg [cmTC_344da] ==> ignore + arg [-search_paths_first] ==> ignore + arg [-headerpad_max_install_names] ==> ignore + arg [-v] ==> ignore + arg [CMakeFiles/cmTC_344da.dir/CMakeCCompilerABI.c.o] ==> ignore + arg [-lSystem] ==> lib [System] + arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] ==> lib [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] + linker tool for 'C': /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld + Library search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift] + Framework search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks] + remove lib [System] + remove lib [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] + collapse library dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib] + collapse library dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift] + collapse framework dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks] + implicit libs: [] + implicit objs: [] + implicit dirs: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift] + implicit fwks: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks] + + + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Internal/CMakeDetermineLinkerId.cmake:40 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerABI.cmake:255 (cmake_determine_linker_id)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Running the C compiler's linker: "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" "-v" + @(#)PROGRAM:ld PROJECT:ld-1167.4.1 + BUILD 20:00:10 Mar 12 2025 + configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em + will use ld-classic for: armv6 armv7 armv7s i386 armv6m armv7k armv7m armv7em + LTO support using: LLVM version 17.0.0 (static support for 29, runtime is 29) + TAPI support using: Apple TAPI version 17.0.0 (tapi-1700.0.3.4) + - + kind: "try_compile-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerABI.cmake:74 (try_compile)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + checks: + - "Detecting CXX compiler ABI info" + directories: + source: "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-8wlHh8" + binary: "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-8wlHh8" + cmakeVariables: + CMAKE_CXX_FLAGS: "" + CMAKE_CXX_FLAGS_DEBUG: "-g" + CMAKE_CXX_SCAN_FOR_MODULES: "OFF" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "15.3" + CMAKE_OSX_SYSROOT: "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk" + buildResult: + variable: "CMAKE_CXX_ABI_COMPILED" + cached: true + stdout: | + Change Dir: '/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-8wlHh8' + + Run Build Command(s): /Applications/CLion.app/Contents/bin/ninja/mac/aarch64/ninja -v cmTC_5240c + [1/2] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 -fcolor-diagnostics -v -Wl,-v -MD -MT CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -MF CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o.d -o CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -c /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCXXCompilerABI.cpp + Apple clang version 17.0.0 (clang-1700.0.13.3) + Target: arm64-apple-darwin24.3.0 + Thread model: posix + InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin + c++: warning: -Wl,-v: 'linker' input unused [-Wunused-command-line-argument] + ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1" + "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple arm64-apple-macosx15.3.0 -Wundef-prefix=TARGET_OS_ -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name CMakeCXXCompilerABI.cpp -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -fno-strict-return -ffp-contract=on -fno-rounding-math -funwind-tables=1 -fobjc-msgsend-selector-stubs -target-sdk-version=15.4 -fvisibility-inlines-hidden-static-local-var -fdefine-target-os-macros -fno-assume-unique-vtables -fno-modulemap-allow-subdirectory-search -target-cpu apple-m1 -target-feature +zcm -target-feature +zcz -target-feature +v8.5a -target-feature +aes -target-feature +altnzcv -target-feature +ccdp -target-feature +complxnum -target-feature +crc -target-feature +dotprod -target-feature +fp-armv8 -target-feature +fp16fml -target-feature +fptoint -target-feature +fullfp16 -target-feature +jsconv -target-feature +lse -target-feature +neon -target-feature +pauth -target-feature +perfmon -target-feature +predres -target-feature +ras -target-feature +rcpc -target-feature +rdm -target-feature +sb -target-feature +sha2 -target-feature +sha3 -target-feature +specrestrict -target-feature +ssbs -target-abi darwinpcs -debugger-tuning=lldb -fdebug-compilation-dir=/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-8wlHh8 -target-linker-version 1167.4.1 -v -fcoverage-compilation-dir=/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-8wlHh8 -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17 -dependency-file CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o.d -skip-unused-modulemap-deps -MT CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -sys-header-deps -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/c++/v1 -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/local/include -internal-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Wno-reorder-init-list -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-final-dtor-non-final-class -Wno-extra-semi-stmt -Wno-misleading-indentation -Wno-quoted-include-in-framework-header -Wno-implicit-fallthrough -Wno-enum-enum-conversion -Wno-enum-float-conversion -Wno-elaborated-enum-base -Wno-reserved-identifier -Wno-gnu-folding-constant -fdeprecated-macro -ferror-limit 19 -stack-protector 1 -fstack-check -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fno-cxx-modules -fskip-odr-check-in-gmf -fcxx-exceptions -fexceptions -fmax-type-align=16 -fcommon -fcolor-diagnostics -clang-vendor-feature=+disableNonDependentMemberExprInCurrentInstantiation -fno-odr-hash-protocols -clang-vendor-feature=+enableAggressiveVLAFolding -clang-vendor-feature=+revert09abecef7bbf -clang-vendor-feature=+thisNoAlignAttr -clang-vendor-feature=+thisNoNullAttr -clang-vendor-feature=+disableAtImportPrivateFrameworkInImplementationError -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -x c++ /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCXXCompilerABI.cpp + clang -cc1 version 17.0.0 (clang-1700.0.13.3) default target arm64-apple-darwin24.3.0 + ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/local/include" + ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/SubFrameworks" + ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/Library/Frameworks" + #include "..." search starts here: + #include <...> search starts here: + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/c++/v1 + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks (framework directory) + End of search list. + [2/2] : && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v -Wl,-v CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_5240c && : + Apple clang version 17.0.0 (clang-1700.0.13.3) + Target: arm64-apple-darwin24.3.0 + Thread model: posix + InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin + "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 15.3.0 15.4 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mllvm -enable-linkonceodr-outlining -o cmTC_5240c -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -lc++ -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a + @(#)PROGRAM:ld PROJECT:ld-1167.4.1 + BUILD 20:00:10 Mar 12 2025 + configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em + will use ld-classic for: armv6 armv7 armv7s i386 armv6m armv7k armv7m armv7em + LTO support using: LLVM version 17.0.0 (static support for 29, runtime is 29) + TAPI support using: Apple TAPI version 17.0.0 (tapi-1700.0.3.4) + Library search paths: + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift + Framework search paths: + /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks + + exitCode: 0 + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerABI.cmake:113 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Effective list of requested architectures (possibly empty) : "" + Effective list of architectures found in the ABI info binary: "arm64" + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerABI.cmake:182 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Parsed CXX implicit include dir info: rv=done + found start of include info + found start of implicit include info + add: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/c++/v1] + add: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include] + add: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include] + add: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] + end of search list found + collapse include dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/c++/v1] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/c++/v1] + collapse include dir [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include] ==> [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include] + collapse include dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include] + collapse include dir [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] ==> [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] + implicit include dirs: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/c++/v1;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] + + + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerABI.cmake:218 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Parsed CXX implicit link information: + link line regex: [^( *|.*[/\\])(ld[0-9]*(\\.[a-z]+)?|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)] + linker tool regex: [^[ ]*(->|")?[ ]*(([^"]*[/\\])?(ld[0-9]*(\\.[a-z]+)?))("|,| |$)] + ignore line: [Change Dir: '/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-8wlHh8'] + ignore line: [] + ignore line: [Run Build Command(s): /Applications/CLion.app/Contents/bin/ninja/mac/aarch64/ninja -v cmTC_5240c] + ignore line: [[1/2] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 -fcolor-diagnostics -v -Wl -v -MD -MT CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -MF CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o.d -o CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -c /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Apple clang version 17.0.0 (clang-1700.0.13.3)] + ignore line: [Target: arm64-apple-darwin24.3.0] + ignore line: [Thread model: posix] + ignore line: [InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin] + ignore line: [c++: warning: -Wl -v: 'linker' input unused [-Wunused-command-line-argument]] + ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1"] + ignore line: [ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple arm64-apple-macosx15.3.0 -Wundef-prefix=TARGET_OS_ -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name CMakeCXXCompilerABI.cpp -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -fno-strict-return -ffp-contract=on -fno-rounding-math -funwind-tables=1 -fobjc-msgsend-selector-stubs -target-sdk-version=15.4 -fvisibility-inlines-hidden-static-local-var -fdefine-target-os-macros -fno-assume-unique-vtables -fno-modulemap-allow-subdirectory-search -target-cpu apple-m1 -target-feature +zcm -target-feature +zcz -target-feature +v8.5a -target-feature +aes -target-feature +altnzcv -target-feature +ccdp -target-feature +complxnum -target-feature +crc -target-feature +dotprod -target-feature +fp-armv8 -target-feature +fp16fml -target-feature +fptoint -target-feature +fullfp16 -target-feature +jsconv -target-feature +lse -target-feature +neon -target-feature +pauth -target-feature +perfmon -target-feature +predres -target-feature +ras -target-feature +rcpc -target-feature +rdm -target-feature +sb -target-feature +sha2 -target-feature +sha3 -target-feature +specrestrict -target-feature +ssbs -target-abi darwinpcs -debugger-tuning=lldb -fdebug-compilation-dir=/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-8wlHh8 -target-linker-version 1167.4.1 -v -fcoverage-compilation-dir=/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/CMakeScratch/TryCompile-8wlHh8 -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17 -dependency-file CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o.d -skip-unused-modulemap-deps -MT CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -sys-header-deps -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/c++/v1 -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/local/include -internal-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Wno-reorder-init-list -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-final-dtor-non-final-class -Wno-extra-semi-stmt -Wno-misleading-indentation -Wno-quoted-include-in-framework-header -Wno-implicit-fallthrough -Wno-enum-enum-conversion -Wno-enum-float-conversion -Wno-elaborated-enum-base -Wno-reserved-identifier -Wno-gnu-folding-constant -fdeprecated-macro -ferror-limit 19 -stack-protector 1 -fstack-check -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fno-cxx-modules -fskip-odr-check-in-gmf -fcxx-exceptions -fexceptions -fmax-type-align=16 -fcommon -fcolor-diagnostics -clang-vendor-feature=+disableNonDependentMemberExprInCurrentInstantiation -fno-odr-hash-protocols -clang-vendor-feature=+enableAggressiveVLAFolding -clang-vendor-feature=+revert09abecef7bbf -clang-vendor-feature=+thisNoAlignAttr -clang-vendor-feature=+thisNoNullAttr -clang-vendor-feature=+disableAtImportPrivateFrameworkInImplementationError -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -x c++ /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [clang -cc1 version 17.0.0 (clang-1700.0.13.3) default target arm64-apple-darwin24.3.0] + ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/local/include"] + ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/SubFrameworks"] + ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/Library/Frameworks"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/c++/v1] + ignore line: [ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/include] + ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include] + ignore line: [ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] + ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks (framework directory)] + ignore line: [End of search list.] + ignore line: [[2/2] : && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 -Wl -search_paths_first -Wl -headerpad_max_install_names -v -Wl -v CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_5240c && :] + ignore line: [Apple clang version 17.0.0 (clang-1700.0.13.3)] + ignore line: [Target: arm64-apple-darwin24.3.0] + ignore line: [Thread model: posix] + ignore line: [InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin] + link line: [ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 15.3.0 15.4 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mllvm -enable-linkonceodr-outlining -o cmTC_5240c -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o -lc++ -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] + arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld] ==> ignore + arg [-demangle] ==> ignore + arg [-lto_library] ==> ignore, skip following value + arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib] ==> skip value of -lto_library + arg [-dynamic] ==> ignore + arg [-arch] ==> ignore + arg [arm64] ==> ignore + arg [-platform_version] ==> ignore + arg [macos] ==> ignore + arg [15.3.0] ==> ignore + arg [15.4] ==> ignore + arg [-syslibroot] ==> ignore + arg [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk] ==> ignore + arg [-mllvm] ==> ignore + arg [-enable-linkonceodr-outlining] ==> ignore + arg [-o] ==> ignore + arg [cmTC_5240c] ==> ignore + arg [-search_paths_first] ==> ignore + arg [-headerpad_max_install_names] ==> ignore + arg [-v] ==> ignore + arg [CMakeFiles/cmTC_5240c.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [-lc++] ==> lib [c++] + arg [-lSystem] ==> lib [System] + arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] ==> lib [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] + linker tool for 'CXX': /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld + Library search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift] + Framework search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks] + remove lib [System] + remove lib [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] + collapse library dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib] + collapse library dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift] + collapse framework dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks] + implicit libs: [c++] + implicit objs: [] + implicit dirs: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/lib/swift] + implicit fwks: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks] + + + - + kind: "message-v1" + backtrace: + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Internal/CMakeDetermineLinkerId.cmake:40 (message)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeDetermineCompilerABI.cmake:255 (cmake_determine_linker_id)" + - "/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:2 (project)" + message: | + Running the CXX compiler's linker: "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" "-v" + @(#)PROGRAM:ld PROJECT:ld-1167.4.1 + BUILD 20:00:10 Mar 12 2025 + configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em + will use ld-classic for: armv6 armv7 armv7s i386 armv6m armv7k armv7m armv7em + LTO support using: LLVM version 17.0.0 (static support for 29, runtime is 29) + TAPI support using: Apple TAPI version 17.0.0 (tapi-1700.0.3.4) +... diff --git a/cmake-build-debug/CMakeFiles/TargetDirectories.txt b/cmake-build-debug/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000..20ae9c4 --- /dev/null +++ b/cmake-build-debug/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,3 @@ +/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/parallelUnorderedMap.dir +/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/edit_cache.dir +/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/CMakeFiles/rebuild_cache.dir diff --git a/cmake-build-debug/CMakeFiles/clion-Debug-log.txt b/cmake-build-debug/CMakeFiles/clion-Debug-log.txt new file mode 100644 index 0000000..7def868 --- /dev/null +++ b/cmake-build-debug/CMakeFiles/clion-Debug-log.txt @@ -0,0 +1,4 @@ +/Applications/CLion.app/Contents/bin/cmake/mac/aarch64/bin/cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM=/Applications/CLion.app/Contents/bin/ninja/mac/aarch64/ninja -G Ninja -S /Users/kirillzhukov/CLionProjects/parallelUnorderedMap -B /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug +-- Configuring done (0.0s) +-- Generating done (0.0s) +-- Build files have been written to: /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug diff --git a/cmake-build-debug/CMakeFiles/clion-environment.txt b/cmake-build-debug/CMakeFiles/clion-environment.txt new file mode 100644 index 0000000..0a160fa --- /dev/null +++ b/cmake-build-debug/CMakeFiles/clion-environment.txt @@ -0,0 +1,4 @@ +ToolSet: 1.0 (local)Ninja: 1.12.1@/Applications/CLion.app/Contents/bin/ninja/mac/aarch64/ninja +Options: + +Options:-DCMAKE_MAKE_PROGRAM=/Applications/CLion.app/Contents/bin/ninja/mac/aarch64/ninja \ No newline at end of file diff --git a/cmake-build-debug/CMakeFiles/cmake.check_cache b/cmake-build-debug/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000..3dccd73 --- /dev/null +++ b/cmake-build-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/cmake-build-debug/CMakeFiles/parallelUnorderedMap.dir/main.cpp.o b/cmake-build-debug/CMakeFiles/parallelUnorderedMap.dir/main.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..944674e146ee49e8da6fc27b1bccb628c258e8dd GIT binary patch literal 597408 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 yb3YIVC| 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 literal 0 HcmV?d00001 diff --git a/cmake-build-debug/CMakeFiles/rules.ninja b/cmake-build-debug/CMakeFiles/rules.ninja new file mode 100644 index 0000000..809a6a7 --- /dev/null +++ b/cmake-build-debug/CMakeFiles/rules.ninja @@ -0,0 +1,64 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Ninja" Generator, CMake Version 3.30 + +# This file contains all the rules used to get the outputs files +# built from the input files. +# It is included in the main 'build.ninja'. + +# ============================================================================= +# Project: parallelUnorderedMap +# Configurations: Debug +# ============================================================================= +# ============================================================================= + +############################################# +# Rule for compiling CXX files. + +rule CXX_COMPILER__parallelUnorderedMap_unscanned_Debug + depfile = $DEP_FILE + deps = gcc + command = ${LAUNCHER}${CODE_CHECK}/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in + description = Building CXX object $out + + +############################################# +# Rule for linking CXX executable. + +rule CXX_EXECUTABLE_LINKER__parallelUnorderedMap_Debug + command = $PRE_LINK && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $FLAGS -Wl,-search_paths_first -Wl,-headerpad_max_install_names $LINK_FLAGS $in -o $TARGET_FILE $LINK_PATH $LINK_LIBRARIES && $POST_BUILD + description = Linking CXX executable $TARGET_FILE + restat = $RESTAT + + +############################################# +# Rule for running custom commands. + +rule CUSTOM_COMMAND + command = $COMMAND + description = $DESC + + +############################################# +# Rule for re-running cmake. + +rule RERUN_CMAKE + command = /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/bin/cmake --regenerate-during-build -S/Users/kirillzhukov/CLionProjects/parallelUnorderedMap -B/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug + description = Re-running CMake... + generator = 1 + + +############################################# +# Rule for cleaning all built files. + +rule CLEAN + command = /Applications/CLion.app/Contents/bin/ninja/mac/aarch64/ninja $FILE_ARG -t clean $TARGETS + description = Cleaning all built files... + + +############################################# +# Rule for printing all primary targets available. + +rule HELP + command = /Applications/CLion.app/Contents/bin/ninja/mac/aarch64/ninja -t targets + description = All primary targets available: + diff --git a/cmake-build-debug/Testing/Temporary/LastTest.log b/cmake-build-debug/Testing/Temporary/LastTest.log new file mode 100644 index 0000000..4caeb8e --- /dev/null +++ b/cmake-build-debug/Testing/Temporary/LastTest.log @@ -0,0 +1,3 @@ +Start testing: Apr 30 23:50 MSK +---------------------------------------------------------- +End testing: Apr 30 23:50 MSK diff --git a/cmake-build-debug/build.ninja b/cmake-build-debug/build.ninja new file mode 100644 index 0000000..6541ebc --- /dev/null +++ b/cmake-build-debug/build.ninja @@ -0,0 +1,142 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Ninja" Generator, CMake Version 3.30 + +# This file contains all the build statements describing the +# compilation DAG. + +# ============================================================================= +# Write statements declared in CMakeLists.txt: +# +# Which is the root file. +# ============================================================================= + +# ============================================================================= +# Project: parallelUnorderedMap +# Configurations: Debug +# ============================================================================= + +############################################# +# Minimal version of Ninja required by this file + +ninja_required_version = 1.5 + + +############################################# +# Set configuration variable for custom commands. + +CONFIGURATION = Debug +# ============================================================================= +# Include auxiliary files. + + +############################################# +# Include rules file. + +include CMakeFiles/rules.ninja + +# ============================================================================= + +############################################# +# Logical path to working directory; prefix for absolute paths. + +cmake_ninja_workdir = /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/ +# ============================================================================= +# Object build statements for EXECUTABLE target parallelUnorderedMap + + +############################################# +# Order-only phony target for parallelUnorderedMap + +build cmake_object_order_depends_target_parallelUnorderedMap: phony || . + +build CMakeFiles/parallelUnorderedMap.dir/main.cpp.o: CXX_COMPILER__parallelUnorderedMap_unscanned_Debug /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/main.cpp || cmake_object_order_depends_target_parallelUnorderedMap + DEP_FILE = CMakeFiles/parallelUnorderedMap.dir/main.cpp.o.d + FLAGS = -g -std=gnu++20 -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 -fcolor-diagnostics + OBJECT_DIR = CMakeFiles/parallelUnorderedMap.dir + OBJECT_FILE_DIR = CMakeFiles/parallelUnorderedMap.dir + + +# ============================================================================= +# Link build statements for EXECUTABLE target parallelUnorderedMap + + +############################################# +# Link the executable parallelUnorderedMap + +build parallelUnorderedMap: CXX_EXECUTABLE_LINKER__parallelUnorderedMap_Debug CMakeFiles/parallelUnorderedMap.dir/main.cpp.o + FLAGS = -g -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk -mmacosx-version-min=15.3 + OBJECT_DIR = CMakeFiles/parallelUnorderedMap.dir + POST_BUILD = : + PRE_LINK = : + TARGET_FILE = parallelUnorderedMap + TARGET_PDB = parallelUnorderedMap.dbg + + +############################################# +# Utility command for edit_cache + +build CMakeFiles/edit_cache.util: CUSTOM_COMMAND + COMMAND = cd /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug && /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. + DESC = No interactive CMake dialog available... + restat = 1 + +build edit_cache: phony CMakeFiles/edit_cache.util + + +############################################# +# Utility command for rebuild_cache + +build CMakeFiles/rebuild_cache.util: CUSTOM_COMMAND + COMMAND = cd /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug && /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/bin/cmake --regenerate-during-build -S/Users/kirillzhukov/CLionProjects/parallelUnorderedMap -B/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug + DESC = Running CMake to regenerate build system... + pool = console + restat = 1 + +build rebuild_cache: phony CMakeFiles/rebuild_cache.util + +# ============================================================================= +# Target aliases. + +# ============================================================================= +# Folder targets. + +# ============================================================================= + +############################################# +# Folder: /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug + +build all: phony parallelUnorderedMap + +# ============================================================================= +# Built-in targets + + +############################################# +# Re-run CMake if any of its inputs changed. + +build build.ninja: RERUN_CMAKE | /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCInformation.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCXXInformation.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCommonLanguageInclude.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeGenericSystem.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeInitializeConfigs.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeLanguageInformation.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeSystemSpecificInformation.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeSystemSpecificInitialize.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/AppleClang-C.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/AppleClang-CXX.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/CMakeCommonCompilerMacros.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/Clang.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/GNU.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-AppleClang-C.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-AppleClang-CXX.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-Clang-C.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-Clang-CXX.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-Clang.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Darwin-Initialize.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Darwin.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/UnixPaths.cmake /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/CMakeLists.txt CMakeCache.txt CMakeFiles/3.30.5/CMakeCCompiler.cmake CMakeFiles/3.30.5/CMakeCXXCompiler.cmake CMakeFiles/3.30.5/CMakeSystem.cmake + pool = console + + +############################################# +# A missing CMake input file is not an error. + +build /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCInformation.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCXXInformation.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeCommonLanguageInclude.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeGenericSystem.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeInitializeConfigs.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeLanguageInformation.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeSystemSpecificInformation.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/CMakeSystemSpecificInitialize.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/AppleClang-C.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/AppleClang-CXX.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/CMakeCommonCompilerMacros.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/Clang.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Compiler/GNU.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-AppleClang-C.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-AppleClang-CXX.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-Clang-C.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-Clang-CXX.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Apple-Clang.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Darwin-Initialize.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/Darwin.cmake /Applications/CLion.app/Contents/bin/cmake/mac/aarch64/share/cmake-3.30/Modules/Platform/UnixPaths.cmake /Users/kirillzhukov/CLionProjects/parallelUnorderedMap/CMakeLists.txt CMakeCache.txt CMakeFiles/3.30.5/CMakeCCompiler.cmake CMakeFiles/3.30.5/CMakeCXXCompiler.cmake CMakeFiles/3.30.5/CMakeSystem.cmake: phony + + +############################################# +# Clean all the built files. + +build clean: CLEAN + + +############################################# +# Print all primary targets available. + +build help: HELP + + +############################################# +# Make the all target the default. + +default all diff --git a/cmake-build-debug/cmake_install.cmake b/cmake-build-debug/cmake_install.cmake new file mode 100644 index 0000000..d0244d0 --- /dev/null +++ b/cmake-build-debug/cmake_install.cmake @@ -0,0 +1,57 @@ +# Install script for directory: /Users/kirillzhukov/CLionProjects/parallelUnorderedMap + +# 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 "Debug") + 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() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set path to fallback-tool for dependency-resolution. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump") +endif() + +if(CMAKE_INSTALL_COMPONENT) + if(CMAKE_INSTALL_COMPONENT MATCHES "^[a-zA-Z0-9_.+-]+$") + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") + else() + string(MD5 CMAKE_INST_COMP_HASH "${CMAKE_INSTALL_COMPONENT}") + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INST_COMP_HASH}.txt") + unset(CMAKE_INST_COMP_HASH) + endif() +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") + file(WRITE "/Users/kirillzhukov/CLionProjects/parallelUnorderedMap/cmake-build-debug/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") +endif() diff --git a/cmake-build-debug/parallelUnorderedMap b/cmake-build-debug/parallelUnorderedMap new file mode 100755 index 0000000000000000000000000000000000000000..a4a55ea17081d2f2468e8bbf66dbb965bde1df2d GIT binary patch literal 222920 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�jmurIKWM`) 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 cqa5H0J4Brr^htm +#include +#include + +#include "UnorderedParallelMap.h" +#include + +constexpr int THREADS = 8; +constexpr int OPS_PER_THREAD = 10000; + +void worker(LockFreeMap& map, int thread_id) +{ + std::mt19937 rng(thread_id); + std::uniform_int_distribution dist(0, 99999); + + for (int i = 0; i < OPS_PER_THREAD; ++i) + { + int op = dist(rng) % 4; + int key = dist(rng); + int value = thread_id * 1000 + i; + + switch (op) + { + case 0: + map.insert(key, value); + break; + case 1: + map.find(key); + break; + case 2: + map.update(key, value + 1); + break; + case 3: + map.erase(key); + break; + } + } +} + +void verify_map(LockFreeMap& map) +{ + std::cout << "Final size: " << map.size() << "\n"; + + auto s = map.size(); + auto k = map.keys().size(); + auto e = map.entries().size(); + + std::cout << "Verifying invariants...\n"; + std::cout << " size() = " << s << "\n"; + std::cout << " keys() = " << k << "\n"; + std::cout << " entries() = " << e << "\n"; + + assert(e <= k); + assert(k <= s); + std::cout << "✓ Invariants OK\n\n"; +} + +int main() +{ + LockFreeMap simple_test_map; + simple_test_map.insert(1, 1); + simple_test_map.insert(2, 44); + assert(simple_test_map.size() == 2); + assert(simple_test_map.find(2) == 44); + simple_test_map.update(2, 55); + assert(simple_test_map.find(2) == 55); + std::cout << "✓ Single-thread test finished\n" << std::endl; + verify_map(simple_test_map); + + LockFreeMap map(1024); + + std::vector threads; + threads.reserve(THREADS); + for (int i = 0; i < THREADS; ++i) + threads.emplace_back(worker, std::ref(map), i); + + for (auto& t : threads) + t.join(); + + std::cout << "✓ Multi-thread test finished\n" << std::endl; + + verify_map(map); + + return 0; +} diff --git a/optimization.h b/optimization.h new file mode 100644 index 0000000..2ed4771 --- /dev/null +++ b/optimization.h @@ -0,0 +1,49 @@ +// +// Created by Kirill Zhukov on 20.04.2025. +// + +#ifndef OPTIMIZATIONS_H +#define OPTIMIZATIONS_H + +#if defined(__x86_64__) || defined(_M_X64) || defined(__i386) || defined(_M_IX86) + +#include + +inline void cpu_relax() noexcept { _mm_pause(); } + +inline void prefetch_for_write(const void *ptr) noexcept { + _mm_prefetch(reinterpret_cast(ptr), _MM_HINT_T0); +} + +inline void prefetch_for_read(const void *ptr) noexcept { + _mm_prefetch(reinterpret_cast(ptr), _MM_HINT_T0); +} + +#elif defined(__aarch64__) +inline void cpu_relax() noexcept { asm volatile("yield" ::: "memory"); } + +inline void prefetch_for_write(const void* ptr) noexcept +{ + asm volatile("prfm pstl1strm, [%0]" :: "r"(ptr)); +} + +inline void prefetch_for_read(const void* ptr) noexcept +{ + asm volatile("prfm pldl1keep, [%0]" :: "r"(ptr)); +} +#else + +inline void cpu_relax() noexcept +{ +} + +inline void prefetch_for_write(const void*) noexcept +{ +} + +inline void prefetch_for_read(const void*) noexcept +{ +} +#endif + +#endif //OPTIMIZATIONS_H