[compiler-rt] r194150 - [ASan] Use OS-specific matches in the malloc_context_size.cc lit test.

Alexey Samsonov samsonov at google.com
Wed Nov 6 09:46:50 PST 2013


Thanks for taking care of this!

On Nov 6, 2013 6:06 AM, "Alexander Potapenko" <glider at google.com> wrote:
>
> Author: glider
> Date: Wed Nov  6 08:00:37 2013
> New Revision: 194150
>
> URL: http://llvm.org/viewvc/llvm-project?rev=194150&view=rev
> Log:
> [ASan] Use OS-specific matches in the malloc_context_size.cc lit test.
>
> The top stack frames for operator new and operator delete are different
on Linux and Darwin.
>
> Modified:
>     compiler-rt/trunk/lib/asan/lit_tests/TestCases/malloc_context_size.cc
>
> Modified:
compiler-rt/trunk/lib/asan/lit_tests/TestCases/malloc_context_size.cc
> URL:
http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/asan/lit_tests/TestCases/malloc_context_size.cc?rev=194150&r1=194149&r2=194150&view=diff
>
==============================================================================
> --- compiler-rt/trunk/lib/asan/lit_tests/TestCases/malloc_context_size.cc
(original)
> +++ compiler-rt/trunk/lib/asan/lit_tests/TestCases/malloc_context_size.cc
Wed Nov  6 08:00:37 2013
> @@ -1,18 +1,26 @@
>  // RUN: %clangxx_asan -O0 %s -o %t
> -// RUN: ASAN_OPTIONS=malloc_context_size=0:fast_unwind_on_malloc=0 not
%t 2>&1 | FileCheck %s
> -// RUN: ASAN_OPTIONS=malloc_context_size=0:fast_unwind_on_malloc=1 not
%t 2>&1 | FileCheck %s
> -// RUN: ASAN_OPTIONS=malloc_context_size=1:fast_unwind_on_malloc=0 not
%t 2>&1 | FileCheck %s
> -// RUN: ASAN_OPTIONS=malloc_context_size=1:fast_unwind_on_malloc=1 not
%t 2>&1 | FileCheck %s
> +// RUN: ASAN_OPTIONS=malloc_context_size=0:fast_unwind_on_malloc=0 not
%t 2>&1 | FileCheck %s --check-prefix=CHECK-%os
> +// RUN: ASAN_OPTIONS=malloc_context_size=0:fast_unwind_on_malloc=1 not
%t 2>&1 | FileCheck %s --check-prefix=CHECK-%os
> +// RUN: ASAN_OPTIONS=malloc_context_size=1:fast_unwind_on_malloc=0 not
%t 2>&1 | FileCheck %s --check-prefix=CHECK-%os
> +// RUN: ASAN_OPTIONS=malloc_context_size=1:fast_unwind_on_malloc=1 not
%t 2>&1 | FileCheck %s --check-prefix=CHECK-%os
>
>  int main() {
>    char *x = new char[20];
>    delete[] x;
>    return x[0];
> -  // CHECK: freed by thread T{{.*}} here:
> -  // CHECK-NEXT: #0 0x{{.*}} in operator delete[]
> +  // We need to keep duplicate lines with different 'CHECK-%os' prefixes,
> +  // otherwise FileCheck barks on missing 'CHECK-%os' before
'CHECK-%os-NEXT'.
> +
> +  // CHECK-Linux: freed by thread T{{.*}} here:
> +  // CHECK-Linux-NEXT: #0 0x{{.*}} in operator delete[]
> +  // CHECK-Darwin: freed by thread T{{.*}} here:
> +  // CHECK-Darwin-NEXT: #0 0x{{.*}} in wrap__ZdaPv
>    // CHECK-NOT: #1 0x{{.*}}
> -  // CHECK: previously allocated by thread T{{.*}} here:
> -  // CHECK-NEXT: #0 0x{{.*}} in operator new[]
> +
> +  // CHECK-Linux: previously allocated by thread T{{.*}} here:
> +  // CHECK-Linux-NEXT: #0 0x{{.*}} in operator new[]
> +  // CHECK-Darwin: previously allocated by thread T{{.*}} here:
> +  // CHECK-Darwin-NEXT: #0 0x{{.*}} in wrap__Znam
>    // CHECK-NOT: #1 0x{{.*}}
>
>    // CHECK: SUMMARY: AddressSanitizer: heap-use-after-free

Looks like this line should also be duplicated for CHECK-Linux and
CHECK-Darwin.

>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20131106/fb2bd901/attachment.html>


More information about the llvm-commits mailing list