Add tests for unary NOT operations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3340 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/CodeGen/Generic/select.ll b/test/CodeGen/Generic/select.ll
index ed2e833..5976e5f 100644
--- a/test/CodeGen/Generic/select.ll
+++ b/test/CodeGen/Generic/select.ll
@@ -149,3 +149,21 @@
%reg160 = add long 7654321, %cast117 ;; and here.
ret int 0
end
+
+
+; Test case for unary NOT operation constructed from XOR.
+;
+void "checkNot"(bool %b, int %i)
+begin
+ %notB = xor bool %b, true
+ %notI = xor int %i, -1
+ %F = setge int %notI, 100
+ %J = add int %i, %i
+ %andNotB = and bool %F, %notB ;; should get folded with notB
+ %andNotI = and int %J, %notI ;; should get folded with notI
+
+ %notB2 = xor bool true, %b ;; should become XNOR
+ %notI2 = xor int -1, %i ;; should become XNOR
+
+ ret void
+end