[llvm] r267827 - Update test to use FileCheck

Sanjay Patel via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 27 17:29:27 PDT 2016


Author: spatel
Date: Wed Apr 27 19:29:27 2016
New Revision: 267827

URL: http://llvm.org/viewvc/llvm-project?rev=267827&view=rev
Log:
Update test to use FileCheck

Also, add some metadata to show what that currently looks like.

Modified:
    llvm/trunk/test/Transforms/SimplifyCFG/2008-07-13-InfLoopMiscompile.ll

Modified: llvm/trunk/test/Transforms/SimplifyCFG/2008-07-13-InfLoopMiscompile.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SimplifyCFG/2008-07-13-InfLoopMiscompile.ll?rev=267827&r1=267826&r2=267827&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/SimplifyCFG/2008-07-13-InfLoopMiscompile.ll (original)
+++ llvm/trunk/test/Transforms/SimplifyCFG/2008-07-13-InfLoopMiscompile.ll Wed Apr 27 19:29:27 2016
@@ -1,4 +1,5 @@
-; RUN: opt < %s -simplifycfg -S | grep "%outval = phi i32 .*mux"
+; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
+; RUN: opt < %s -simplifycfg -S | FileCheck %s
 ; PR2540
 ; Outval should end up with a select from 0/2, not all constants.
 
@@ -8,29 +9,55 @@ target triple = "i386-pc-linux-gnu"
 @.str = internal constant [4 x i8] c"%d\0A\00"		; <[4 x i8]*> [#uses=1]
 
 define i32 @main() nounwind  {
+; CHECK-LABEL: @main(
+; CHECK-NEXT:  entry:
+; CHECK-NEXT:    [[L:%.*]] = load i32, i32* @g_37, align 4
+; CHECK-NEXT:    [[CMPA:%.*]] = icmp ne i32 [[L]], 0
+; CHECK-NEXT:    br i1 [[CMPA]], label %func_1.exit, label %mooseblock, !prof !0
+; CHECK:       mooseblock:
+; CHECK-NEXT:    [[CMPB:%.*]] = icmp eq i1 [[CMPA]], false
+; CHECK-NEXT:    [[BRMERGE:%.*]] = or i1 [[CMPB]], [[CMPA]]
+; CHECK-NEXT:    [[DOTMUX:%.*]] = select i1 [[CMPB]], i32 0, i32 2
+; CHECK-NEXT:    br i1 [[BRMERGE]], label %func_1.exit, label %infloop, !prof !1
+; CHECK:       func_1.exit:
+; CHECK-NEXT:    [[OUTVAL:%.*]] = phi i32 [ 1, %entry ], [ [[DOTMUX]], %mooseblock ]
+; CHECK-NEXT:    [[POUT:%.*]] = tail call i32 (i8*, ...) @printf
+; CHECK-NEXT:    ret i32 0
+; CHECK:       infloop:
+; CHECK-NEXT:    br label %infloop
+;
 entry:
-	%l = load i32, i32* @g_37, align 4		; <i32> [#uses=1]
-	%cmpa = icmp ne i32 %l, 0		; <i1> [#uses=3]
-	br i1 %cmpa, label %func_1.exit, label %mooseblock
+  %l = load i32, i32* @g_37, align 4		; <i32> [#uses=1]
+  %cmpa = icmp ne i32 %l, 0		; <i1> [#uses=3]
+  br i1 %cmpa, label %func_1.exit, label %mooseblock, !prof !0
 
 mooseblock:		; preds = %entry
-	%cmpb = icmp eq i1 %cmpa, false		; <i1> [#uses=2]
-	br i1 %cmpb, label %monkeyblock, label %beeblock
+  %cmpb = icmp eq i1 %cmpa, false		; <i1> [#uses=2]
+  br i1 %cmpb, label %monkeyblock, label %beeblock, !prof !1
 
 monkeyblock:		; preds = %monkeyblock, %mooseblock
-	br i1 %cmpb, label %cowblock, label %monkeyblock
+  br i1 %cmpb, label %cowblock, label %monkeyblock, !prof !2
 
 beeblock:		; preds = %beeblock, %mooseblock
-	br i1 %cmpa, label %cowblock, label %beeblock
+  br i1 %cmpa, label %cowblock, label %beeblock, !prof !3
 
 cowblock:		; preds = %beeblock, %monkeyblock
-	%cowval = phi i32 [ 2, %beeblock ], [ 0, %monkeyblock ]		; <i32> [#uses=1]
-	br label %func_1.exit
+  %cowval = phi i32 [ 2, %beeblock ], [ 0, %monkeyblock ]		; <i32> [#uses=1]
+  br label %func_1.exit
 
 func_1.exit:		; preds = %cowblock, %entry
-	%outval = phi i32 [ %cowval, %cowblock ], [ 1, %entry ]		; <i32> [#uses=1]
-	%pout = tail call i32 (i8*, ...) @printf( i8* noalias  getelementptr ([4 x i8], [4 x i8]* @.str, i32 0, i32 0), i32 %outval ) nounwind 		; <i32> [#uses=0]
-	ret i32 0
+  %outval = phi i32 [ %cowval, %cowblock ], [ 1, %entry ]		; <i32> [#uses=1]
+  %pout = tail call i32 (i8*, ...) @printf( i8* noalias  getelementptr ([4 x i8], [4 x i8]* @.str, i32 0, i32 0), i32 %outval ) nounwind 		; <i32> [#uses=0]
+  ret i32 0
 }
 
-declare i32 @printf(i8*, ...) nounwind 
+declare i32 @printf(i8*, ...) nounwind
+
+!0 = !{!"branch_weights", i32 1, i32 2}
+!1 = !{!"branch_weights", i32 3, i32 4}
+!2 = !{!"branch_weights", i32 5, i32 6}
+!3 = !{!"branch_weights", i32 7, i32 8}
+
+; CHECK: !0 = !{!"branch_weights", i32 1, i32 2}
+; CHECK: !1 = !{!"branch_weights", i32 73, i32 32}
+




More information about the llvm-commits mailing list