diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_common.h b/compiler-rt/lib/sanitizer_common/sanitizer_common.h index bf490210fb107..ef43cb8fd1f9a 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_common.h +++ b/compiler-rt/lib/sanitizer_common/sanitizer_common.h @@ -790,7 +790,11 @@ inline const char *ModuleArchToString(ModuleArch arch) { return ""; } +#if SANITIZER_APPLE +const uptr kModuleUUIDSize = 16; +#else const uptr kModuleUUIDSize = 32; +#endif const uptr kMaxSegName = 16; // Represents a binary loaded into virtual memory (e.g. this can be an diff --git a/compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt b/compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt index 68d8161710bf0..d43a683228082 100644 --- a/compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt +++ b/compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt @@ -29,6 +29,7 @@ set(SANITIZER_UNITTESTS sanitizer_list_test.cpp sanitizer_lzw_test.cpp sanitizer_mac_test.cpp + sanitizer_module_uuid_size.cpp sanitizer_mutex_test.cpp sanitizer_nolibc_test.cpp sanitizer_posix_test.cpp diff --git a/compiler-rt/lib/sanitizer_common/tests/sanitizer_module_uuid_size.cpp b/compiler-rt/lib/sanitizer_common/tests/sanitizer_module_uuid_size.cpp new file mode 100644 index 0000000000000..feb17dc3d77e2 --- /dev/null +++ b/compiler-rt/lib/sanitizer_common/tests/sanitizer_module_uuid_size.cpp @@ -0,0 +1,10 @@ +#include "sanitizer_common/sanitizer_common.h" +#include "gtest/gtest.h" + +TEST(ModuleUUID, kModuleUUIDSize) { +#if SANITIZER_APPLE + EXPECT_EQ(__sanitizer::kModuleUUIDSize, 16ULL); +#else + EXPECT_EQ(__sanitizer::kModuleUUIDSize, 32ULL); +#endif +}