[PATCH] D56079: Fix invalid test in Guard Widening

Max Kazantsev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 25 22:51:26 PST 2018


mkazantsev updated this revision to Diff 179497.

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D56079/new/

https://reviews.llvm.org/D56079

Files:
  test/Transforms/GuardWidening/basic.ll


Index: test/Transforms/GuardWidening/basic.ll
===================================================================
--- test/Transforms/GuardWidening/basic.ll
+++ test/Transforms/GuardWidening/basic.ll
@@ -271,20 +271,25 @@
 define void @f_11(i32 %a, i1 %cond_0, i1 %cond_1) {
 ; CHECK-LABEL: @f_11(
 entry:
-  br label %inner
+  br label %outer_header
 
-inner:
-; CHECK: inner:
-; CHECK:  %wide.chk = and i1 %cond_0, %cond_1
-; CHECK:  call void (i1, ...) @llvm.experimental.guard(i1 %wide.chk) [ "deopt"() ]
-; CHECK:  br i1 undef, label %inner, label %outer
+outer_header:
+; CHECK:      outer_header:
+; CHECK-NEXT:   %wide.chk = and i1 %cond_0, %cond_1
+; CHECK-NEXT:   call void (i1, ...) @llvm.experimental.guard(i1 %wide.chk) [ "deopt"() ]
 
   call void(i1, ...) @llvm.experimental.guard(i1 %cond_0) [ "deopt"() ]
-  br i1 undef, label %inner, label %outer
+  br label %inner
 
-outer:
+inner:
   call void(i1, ...) @llvm.experimental.guard(i1 %cond_1) [ "deopt"() ]
-  br label %inner
+  br i1 undef, label %inner, label %outer_latch
+
+outer_latch:
+  br i1 undef, label %outer_header, label %exit
+
+exit:
+  ret void
 }
 
 ; Checks that we are adequately guarded against exponential-time


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D56079.179497.patch
Type: text/x-patch
Size: 1200 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20181226/c28bbf3b/attachment.bin>


More information about the llvm-commits mailing list