r369830 - NFC: Rename some sanitizer related lifetime checks
David Zarzycki via cfe-commits
cfe-commits at lists.llvm.org
Mon Aug 26 23:39:16 PDT 2019
Hi Vitaly,
Thanks for fixing this! And I’m sorry about accidentally disabling the test entirely by adding “REQUIRES: assertions” instead of “REQUIRES: asserts”.
Dave
> On Aug 27, 2019, at 1:10 AM, Vitaly Buka <vitalybuka at google.com> wrote:
>
> fixed with r369992
>
> On Mon, Aug 26, 2019 at 1:16 PM Vitaly Buka <vitalybuka at google.com <mailto:vitalybuka at google.com>> wrote:
> Thank for the try, but it's not the fix as it just disabled the test everywhere as no one sets "assertions".
> Also I am not sure how the patch can break the test, it just renamed the files. Which bot was that?
> Is it possible that your local checkout just had the test disabled?
>
> On Sat, Aug 24, 2019 at 1:12 AM David Zarzycki <dave at znu.io <mailto:dave at znu.io>> wrote:
> Fix: r369843
>
> Please confirm. Thanks!
>
> > On Aug 24, 2019, at 8:18 AM, David Zarzycki <dave at znu.io <mailto:dave at znu.io>> wrote:
> >
> > 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 <mailto: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 <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 <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 <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 <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 <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 <mailto:cfe-commits at lists.llvm.org>
> >> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits <https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits>
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190827/53a73895/attachment-0001.html>
More information about the cfe-commits
mailing list