[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