[llvm] r291472 - [InstCombine] add test to show missed fold using llvm.assume; NFC

Sanjay Patel via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 9 12:18:31 PST 2017


Author: spatel
Date: Mon Jan  9 14:18:30 2017
New Revision: 291472

URL: http://llvm.org/viewvc/llvm-project?rev=291472&view=rev
Log:
[InstCombine] add test to show missed fold using llvm.assume; NFC

Modified:
    llvm/trunk/test/Transforms/InstCombine/assume.ll

Modified: llvm/trunk/test/Transforms/InstCombine/assume.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/InstCombine/assume.ll?rev=291472&r1=291471&r2=291472&view=diff
==============================================================================
--- llvm/trunk/test/Transforms/InstCombine/assume.ll (original)
+++ llvm/trunk/test/Transforms/InstCombine/assume.ll Mon Jan  9 14:18:30 2017
@@ -176,6 +176,19 @@ define i32 @icmp2(i32 %a) #0 {
   ret i32 %lnot.ext
 }
 
+; FIXME: If the 'not' of a condition is known true, then the condition must be false. 
+
+define i1 @assume_not(i1 %cond) {
+; CHECK-LABEL: @assume_not(
+; CHECK-NEXT:    [[NOTCOND:%.*]] = xor i1 [[COND:%.*]], true
+; CHECK-NEXT:    call void @llvm.assume(i1 [[NOTCOND]])
+; CHECK-NEXT:    ret i1 [[COND]]
+;
+  %notcond = xor i1 %cond, true
+  call void @llvm.assume(i1 %notcond)
+  ret i1 %cond
+}
+
 declare void @escape(i32* %a)
 
 ; Canonicalize a nonnull assumption on a load into metadata form.




More information about the llvm-commits mailing list