From 643d87ebab7882442400fbb983f2b6a268012b50 Mon Sep 17 00:00:00 2001 From: Matt Morehouse Date: Wed, 24 Mar 2021 08:43:44 -0700 Subject: [PATCH] [sanitizer] Fix Solaris build. mremap is only available on Linux. --- compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp b/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp index 2b5a4a3..e3b2cab 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp +++ b/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp @@ -924,9 +924,13 @@ static uptr MmapSharedNoReserve(uptr addr, uptr size) { static uptr MremapCreateAlias(uptr base_addr, uptr alias_addr, uptr alias_size) { +#if defined(SANITIZER_LINUX) return internal_mremap(reinterpret_cast(base_addr), 0, alias_size, MREMAP_MAYMOVE | MREMAP_FIXED, reinterpret_cast(alias_addr)); +#else + CHECK(false && "mremap is not supported outside of Linux"); +#endif } static void CreateAliases(uptr start_addr, uptr alias_size, uptr num_aliases) { -- 2.7.4