From 3429f7828954ec6cde46068b67559398741fdec6 Mon Sep 17 00:00:00 2001 From: Kostya Serebryany Date: Fri, 6 Dec 2013 09:33:36 +0000 Subject: [PATCH] [asan] in SizedStackTest check the death string, also restrict one of the checks to 64-bit llvm-svn: 196576 --- compiler-rt/lib/asan/tests/asan_test.cc | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/compiler-rt/lib/asan/tests/asan_test.cc b/compiler-rt/lib/asan/tests/asan_test.cc index 4db80339804e..f0ae80ea21a0 100644 --- a/compiler-rt/lib/asan/tests/asan_test.cc +++ b/compiler-rt/lib/asan/tests/asan_test.cc @@ -449,17 +449,18 @@ template NOINLINE void SizedStackTest() { char a[kSize]; char *A = Ident((char*)&a); + const char *expected_death = "AddressSanitizer: stack-buffer-"; for (size_t i = 0; i < kSize; i++) A[i] = i; - EXPECT_DEATH(A[-1] = 0, ""); - EXPECT_DEATH(A[-5] = 0, ""); + EXPECT_DEATH(A[-1] = 0, expected_death); + EXPECT_DEATH(A[-5] = 0, expected_death); + if (kSize > 16 && SANITIZER_WORDSIZE == 64) + EXPECT_DEATH(A[-31] = 0, expected_death); + EXPECT_DEATH(A[kSize] = 0, expected_death); + EXPECT_DEATH(A[kSize + 1] = 0, expected_death); + EXPECT_DEATH(A[kSize + 5] = 0, expected_death); if (kSize > 16) - EXPECT_DEATH(A[-31] = 0, ""); - EXPECT_DEATH(A[kSize] = 0, ""); - EXPECT_DEATH(A[kSize + 1] = 0, ""); - EXPECT_DEATH(A[kSize + 5] = 0, ""); - if (kSize > 16) - EXPECT_DEATH(A[kSize + 31] = 0, ""); + EXPECT_DEATH(A[kSize + 31] = 0, expected_death); } TEST(AddressSanitizer, SimpleStackTest) {