r369830 - NFC: Rename some sanitizer related lifetime checks
David Zarzycki via cfe-commits
cfe-commits at lists.llvm.org
Sat Aug 24 00:18:22 PDT 2019
This seems to have broken building on Red Hat Fedora Linux 30 (x86_64). Was this expected?
FAIL: Clang :: CodeGenCXX/lifetime-sanitizer.cpp (7750 of 50751)
******************** TEST 'Clang :: CodeGenCXX/lifetime-sanitizer.cpp' FAILED ********************
Script:
--
: 'RUN: at line 1'; /tmp/_update_lc/r/bin/clang -w -target x86_64-linux-gnu -S -emit-llvm -o - -fno-exceptions -O0 /home/dave/s/lp/clang/test/CodeGenCXX/lifetime-sanitizer.cpp | /tmp/_update_lc/r/bin/FileCheck /home/dave/s/lp/clang/test/CodeGenCXX/lifetime-sanitizer.cpp -check-prefixes=CHECK,CHECK-O0 --implicit-check-not=llvm.lifetime
: 'RUN: at line 3'; /tmp/_update_lc/r/bin/clang -w -target x86_64-linux-gnu -S -emit-llvm -o - -fno-exceptions -O0 -fsanitize=address -fsanitize-address-use-after-scope /home/dave/s/lp/clang/test/CodeGenCXX/lifetime-sanitizer.cpp | /tmp/_update_lc/r/bin/FileCheck /home/dave/s/lp/clang/test/CodeGenCXX/lifetime-sanitizer.cpp -check-prefixes=CHECK,LIFETIME
--
Exit Code: 1
Command Output (stderr):
--
/home/dave/s/lp/clang/test/CodeGenCXX/lifetime-sanitizer.cpp:30:18: error: CHECK-LABEL: expected string not found in input
// CHECK-LABEL: cond.true:
^
<stdin>:21:8: note: scanning from here
br i1 %7, label %8, label %10
^
<stdin>:25:6: note: possible intended match here
store i1 true, i1* %4, align 1
^
> On Aug 24, 2019, at 2:31 AM, Vitaly Buka via cfe-commits <cfe-commits at lists.llvm.org> wrote:
>
> Author: vitalybuka
> Date: Fri Aug 23 18:31:38 2019
> New Revision: 369830
>
> URL: http://llvm.org/viewvc/llvm-project?rev=369830&view=rev
> Log:
> NFC: Rename some sanitizer related lifetime checks
>
> Added:
> cfe/trunk/test/CodeGen/lifetime-sanitizer.c
> cfe/trunk/test/CodeGenCXX/lifetime-sanitizer.cpp
> Removed:
> cfe/trunk/test/CodeGen/lifetime-asan.c
> cfe/trunk/test/CodeGenCXX/lifetime-asan.cpp
>
> Removed: cfe/trunk/test/CodeGen/lifetime-asan.c
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/lifetime-asan.c?rev=369829&view=auto
> ==============================================================================
> --- cfe/trunk/test/CodeGen/lifetime-asan.c (original)
> +++ cfe/trunk/test/CodeGen/lifetime-asan.c (removed)
> @@ -1,21 +0,0 @@
> -// RUN: %clang -target x86_64-linux-gnu -S -emit-llvm -o - -O0 %s | FileCheck %s -check-prefix=CHECK-O0
> -// RUN: %clang -target x86_64-linux-gnu -S -emit-llvm -o - -O0 \
> -// RUN: -fsanitize=address -fsanitize-address-use-after-scope %s | \
> -// RUN: FileCheck %s -check-prefix=CHECK-ASAN-USE-AFTER-SCOPE
> -
> -extern int bar(char *A, int n);
> -
> -// CHECK-O0-NOT: @llvm.lifetime.start
> -int foo(int n) {
> - if (n) {
> - // CHECK-ASAN-USE-AFTER-SCOPE: @llvm.lifetime.start.p0i8(i64 10, i8* {{.*}})
> - char A[10];
> - return bar(A, 1);
> - // CHECK-ASAN-USE-AFTER-SCOPE: @llvm.lifetime.end.p0i8(i64 10, i8* {{.*}})
> - } else {
> - // CHECK-ASAN-USE-AFTER-SCOPE: @llvm.lifetime.start.p0i8(i64 20, i8* {{.*}})
> - char A[20];
> - return bar(A, 2);
> - // CHECK-ASAN-USE-AFTER-SCOPE: @llvm.lifetime.end.p0i8(i64 20, i8* {{.*}})
> - }
> -}
>
> Added: cfe/trunk/test/CodeGen/lifetime-sanitizer.c
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/lifetime-sanitizer.c?rev=369830&view=auto
> ==============================================================================
> --- cfe/trunk/test/CodeGen/lifetime-sanitizer.c (added)
> +++ cfe/trunk/test/CodeGen/lifetime-sanitizer.c Fri Aug 23 18:31:38 2019
> @@ -0,0 +1,21 @@
> +// RUN: %clang -target x86_64-linux-gnu -S -emit-llvm -o - -O0 %s | FileCheck %s -check-prefix=CHECK-O0
> +// RUN: %clang -target x86_64-linux-gnu -S -emit-llvm -o - -O0 \
> +// RUN: -fsanitize=address -fsanitize-address-use-after-scope %s | \
> +// RUN: FileCheck %s -check-prefix=LIFETIME
> +
> +extern int bar(char *A, int n);
> +
> +// CHECK-O0-NOT: @llvm.lifetime.start
> +int foo(int n) {
> + if (n) {
> + // LIFETIME: @llvm.lifetime.start.p0i8(i64 10, i8* {{.*}})
> + char A[10];
> + return bar(A, 1);
> + // LIFETIME: @llvm.lifetime.end.p0i8(i64 10, i8* {{.*}})
> + } else {
> + // LIFETIME: @llvm.lifetime.start.p0i8(i64 20, i8* {{.*}})
> + char A[20];
> + return bar(A, 2);
> + // LIFETIME: @llvm.lifetime.end.p0i8(i64 20, i8* {{.*}})
> + }
> +}
>
> Removed: cfe/trunk/test/CodeGenCXX/lifetime-asan.cpp
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/lifetime-asan.cpp?rev=369829&view=auto
> ==============================================================================
> --- cfe/trunk/test/CodeGenCXX/lifetime-asan.cpp (original)
> +++ cfe/trunk/test/CodeGenCXX/lifetime-asan.cpp (removed)
> @@ -1,42 +0,0 @@
> -// RUN: %clang -target x86_64-linux-gnu -S -emit-llvm -o - -fno-exceptions -O0 %s | FileCheck %s -check-prefixes=CHECK,CHECK-O0 --implicit-check-not=llvm.lifetime
> -// RUN: %clang -target x86_64-linux-gnu -S -emit-llvm -o - -fno-exceptions -O0 \
> -// RUN: -fsanitize=address -fsanitize-address-use-after-scope %s | \
> -// RUN: FileCheck %s -check-prefixes=CHECK,CHECK-ASAN-USE-AFTER-SCOPE
> -
> -extern int bar(char *A, int n);
> -
> -struct X { X(); ~X(); int *p; };
> -struct Y { Y(); int *p; };
> -
> -extern "C" void a(), b(), c(), d();
> -
> -// CHECK-LABEL: @_Z3foo
> -void foo(int n) {
> - // CHECK: call void @a()
> - a();
> -
> - // CHECK: call void @b()
> - // CHECK-ASAN-USE-AFTER-SCOPE: store i1 false
> - // CHECK-ASAN-USE-AFTER-SCOPE: store i1 false
> - // CHECK: br i1
> - //
> - // CHECK-ASAN-USE-AFTER-SCOPE: @llvm.lifetime.start
> - // CHECK-ASAN-USE-AFTER-SCOPE: store i1 true
> - // CHECK: call void @_ZN1XC
> - // CHECK: br label
> - //
> - // CHECK-ASAN-USE-AFTER-SCOPE: @llvm.lifetime.start
> - // CHECK-ASAN-USE-AFTER-SCOPE: store i1 true
> - // CHECK: call void @_ZN1YC
> - // CHECK: br label
> - //
> - // CHECK: call void @c()
> - // CHECK-ASAN-USE-AFTER-SCOPE: br i1
> - // CHECK-ASAN-USE-AFTER-SCOPE: @llvm.lifetime.end
> - // CHECK-ASAN-USE-AFTER-SCOPE: br i1
> - // CHECK-ASAN-USE-AFTER-SCOPE: @llvm.lifetime.end
> - b(), (n ? X().p : Y().p), c();
> -
> - // CHECK: call void @d()
> - d();
> -}
>
> Added: cfe/trunk/test/CodeGenCXX/lifetime-sanitizer.cpp
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/lifetime-sanitizer.cpp?rev=369830&view=auto
> ==============================================================================
> --- cfe/trunk/test/CodeGenCXX/lifetime-sanitizer.cpp (added)
> +++ cfe/trunk/test/CodeGenCXX/lifetime-sanitizer.cpp Fri Aug 23 18:31:38 2019
> @@ -0,0 +1,50 @@
> +// RUN: %clang -w -target x86_64-linux-gnu -S -emit-llvm -o - -fno-exceptions -O0 %s | \
> +// RUN: FileCheck %s -check-prefixes=CHECK,CHECK-O0 --implicit-check-not=llvm.lifetime
> +// RUN: %clang -w -target x86_64-linux-gnu -S -emit-llvm -o - -fno-exceptions -O0 \
> +// RUN: -fsanitize=address -fsanitize-address-use-after-scope %s | \
> +// RUN: FileCheck %s -check-prefixes=CHECK,LIFETIME
> +
> +extern int bar(char *A, int n);
> +
> +struct X {
> + X();
> + ~X();
> + int *p;
> +};
> +struct Y {
> + Y();
> + int *p;
> +};
> +
> +extern "C" void a(), b(), c(), d();
> +
> +// CHECK-LABEL: @_Z3foo
> +void foo(int n) {
> + // CHECK-LABEL: call void @a()
> + a();
> +
> + // CHECK-LABEL: call void @b()
> + // CHECK: store i1 false
> + // CHECK-LABEL: br i1
> + //
> + // CHECK-LABEL: cond.true:
> + // LIFETIME: @llvm.lifetime.start
> + // LIFETIME: store i1 true
> + // LIFETIME: call void @_ZN1XC
> + // CHECK-LABEL: br label
> + //
> + // CHECK-LABEL: cond.false:
> + // LIFETIME: @llvm.lifetime.start
> + // LIFETIME: store i1 true
> + // LIFETIME: call void @_ZN1YC
> + // CHECK-LABEL: br label
> + //
> + // CHECK-LABEL: cond.end:
> + // CHECK: call void @c()
> + // LIFETIME: @llvm.lifetime.end
> + // LIFETIME: @llvm.lifetime.end
> + b(), (n ? X().p : Y().p), c();
> +
> + // CHECK: call void @d()
> + d();
> +}
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
More information about the cfe-commits
mailing list