[llvm] r263667 - use FileCheck for tighter checking

Chandler Carruth via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 17 10:29:11 PDT 2016


On Wed, Mar 16, 2016 at 11:34 PM Sanjay Patel via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: spatel
> Date: Wed Mar 16 17:29:07 2016
> New Revision: 263667
>
> URL: http://llvm.org/viewvc/llvm-project?rev=263667&view=rev
> Log:
> use FileCheck for tighter checking
>
> I'm testing out a script that auto-generates the check lines.
> It's 98% copied from utils/update_llc_test_checks.py.
> If others think this is useful, please let me know.
>

This sounds super nice, even if just to help quickly get the initial
template of a check together.


>
> Modified:
>     llvm/trunk/test/Transforms/SimplifyCFG/two-entry-phi-return.ll
>
> Modified: llvm/trunk/test/Transforms/SimplifyCFG/two-entry-phi-return.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SimplifyCFG/two-entry-phi-return.ll?rev=263667&r1=263666&r2=263667&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/SimplifyCFG/two-entry-phi-return.ll
> (original)
> +++ llvm/trunk/test/Transforms/SimplifyCFG/two-entry-phi-return.ll Wed Mar
> 16 17:29:07 2016
> @@ -1,15 +1,23 @@
> -; RUN: opt < %s -simplifycfg -S | not grep br
> +; RUN: opt < %s -simplifycfg -S | FileCheck %s
>
>  define i1 @qux(i8* %m, i8* %n, i8* %o, i8* %p) nounwind  {
>  entry:
> -        %tmp7 = icmp eq i8* %m, %n
> -        br i1 %tmp7, label %bb, label %UnifiedReturnBlock
> +  %tmp7 = icmp eq i8* %m, %n
> +  br i1 %tmp7, label %bb, label %UnifiedReturnBlock
>
>  bb:
> -        %tmp15 = icmp eq i8* %o, %p
> -        br label %UnifiedReturnBlock
> +  %tmp15 = icmp eq i8* %o, %p
> +  br label %UnifiedReturnBlock
>
>  UnifiedReturnBlock:
> -        %result = phi i1 [ 0, %entry ], [ %tmp15, %bb ]
> -        ret i1 %result
> +  %result = phi i1 [ 0, %entry ], [ %tmp15, %bb ]
> +  ret i1 %result
> +
> +; CHECK-LABEL: @qux(
> +; CHECK-NEXT:  entry:
> +; CHECK-NEXT:    [[TMP7:%.*]] = icmp eq i8* %m, %n
> +; CHECK-NEXT:    [[TMP15:%.*]] = icmp eq i8* %o, %p
> +; CHECK-NEXT:    [[TMP15_:%.*]] = select i1 [[TMP7]], i1 [[TMP15]], i1
> false
> +; CHECK-NEXT:    ret i1 [[TMP15_]]
>

So, I really like for the -LABEL to come right after the function define
line...

For the x86 tests, the common pattern I settled on was to have immediately
after the function opening, a block of -LABEL and then -NEXT to assert each
aspect of the function, all before the label of the entry block. Any
particular reason to deviate here?


>  }
> +
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160317/02c161e0/attachment.html>


More information about the llvm-commits mailing list