diff options
author | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2016-04-20 20:32:18 +0000 |
---|---|---|
committer | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2016-04-20 20:32:18 +0000 |
commit | 656c2db9b771f78d4ba5afe565e51d8e8b1a04dd (patch) | |
tree | b6213c963245755dcf74776f0b8adfcff9143a40 /lib | |
parent | f315fe563738097e3c176528b1c6b22bbe47c067 (diff) |
[msan] Implement GetPageSize in the test.
Instead of calling a sanitizer_common function, implement GetPageSize in the
test directly. MSan runtime does not export __sanitizer::* symbols, and the
current code breaks when the test and the runtime library are in the separate
link units (ex. when the test is built as a shared library).
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@266910 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/msan/tests/msan_test.cc | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/lib/msan/tests/msan_test.cc b/lib/msan/tests/msan_test.cc index a7a06a062..7ba43662f 100644 --- a/lib/msan/tests/msan_test.cc +++ b/lib/msan/tests/msan_test.cc @@ -115,13 +115,9 @@ void *mempcpy(void *dest, const void *src, size_t n); # define SUPERUSER_GROUP "root" #endif -// We cannot include sanitizer_common.h (it conflicts with public interface -// headers), so just pull this function directly. - -namespace __sanitizer { -uintptr_t GetPageSizeCached(); +static uintptr_t GetPageSize() { + return sysconf(_SC_PAGESIZE); } -using __sanitizer::GetPageSizeCached; const size_t kMaxPathLength = 4096; @@ -3239,7 +3235,7 @@ TEST(MemorySanitizer, memalign) { TEST(MemorySanitizer, valloc) { void *a = valloc(100); - uintptr_t PageSize = GetPageSizeCached(); + uintptr_t PageSize = GetPageSize(); EXPECT_EQ(0U, (uintptr_t)a % PageSize); free(a); } @@ -3247,7 +3243,7 @@ TEST(MemorySanitizer, valloc) { // There's no pvalloc() on FreeBSD. #if !defined(__FreeBSD__) TEST(MemorySanitizer, pvalloc) { - uintptr_t PageSize = GetPageSizeCached(); + uintptr_t PageSize = GetPageSize(); void *p = pvalloc(PageSize + 100); EXPECT_EQ(0U, (uintptr_t)p % PageSize); EXPECT_EQ(2 * PageSize, __sanitizer_get_allocated_size(p)); |