Index: lib/scudo/scudo_platform.h =================================================================== --- lib/scudo/scudo_platform.h +++ lib/scudo/scudo_platform.h @@ -49,24 +49,25 @@ #if SANITIZER_CAN_USE_ALLOCATOR64 # if defined(__aarch64__) && SANITIZER_ANDROID -const uptr AllocatorSize = 0x2000000000ULL; // 128G. -typedef VeryCompactSizeClassMap SizeClassMap; +const uptr AllocatorSize = 0x4000000000ULL; // 256G. # elif defined(__aarch64__) const uptr AllocatorSize = 0x10000000000ULL; // 1T. -typedef CompactSizeClassMap SizeClassMap; # else const uptr AllocatorSize = 0x40000000000ULL; // 4T. -typedef CompactSizeClassMap SizeClassMap; # endif #else -# if SANITIZER_ANDROID -static const uptr RegionSizeLog = 19; +const uptr RegionSizeLog = SANITIZER_ANDROID ? 19 : 20; +#endif // SANITIZER_CAN_USE_ALLOCATOR64 + +#if SCUDO_SCM_VERYCOMPACT typedef VeryCompactSizeClassMap SizeClassMap; -# else -static const uptr RegionSizeLog = 20; +#elif SCUDO_SCM_COMPACT typedef CompactSizeClassMap SizeClassMap; -# endif -#endif // SANITIZER_CAN_USE_ALLOCATOR64 +#elif SCUDO_SCM_DEFAULT +typedef DefaultSizeClassMap SizeClassMap; +#else +typedef DefaultSizeClassMap SizeClassMap; +#endif } // namespace __scudo