add vector versions of this test
authorChris Lattner <sabre@nondot.org>
Fri, 15 Jun 2007 06:22:32 +0000 (06:22 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 15 Jun 2007 06:22:32 +0000 (06:22 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37588 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/InstCombine/and-or-not.ll

index 9b812c7f736921731448c15625d5a1d120ae2f5d..e9c7b12684371f644c20112dc09eb11c84efd2aa 100644 (file)
@@ -1,4 +1,4 @@
-; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep xor | wc -l | grep 2
+; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep xor | wc -l | grep 4
 ; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep and
 ; RUN: llvm-as < %s | opt -instcombine | llvm-dis | not grep { or}
 
@@ -25,3 +25,22 @@ entry:
         ret i32 %tmp7
 }
 
+define <4 x i32> @test3(<4 x i32> %a, <4 x i32> %b) {
+entry:
+        %tmp3 = or <4 x i32> %a, %b             ; <<4 x i32>> [#uses=1]
+        %tmp3not = xor <4 x i32> %tmp3, < i32 -1, i32 -1, i32 -1, i32 -1 >              ; <<4 x i32>> [#uses=1]
+        %tmp6 = and <4 x i32> %a, %b            ; <<4 x i32>> [#uses=1]
+        %tmp7 = or <4 x i32> %tmp6, %tmp3not            ; <<4 x i32>> [#uses=1]
+        %tmp7not = xor <4 x i32> %tmp7, < i32 -1, i32 -1, i32 -1, i32 -1 >              ; <<4 x i32>> [#uses=1]
+        ret <4 x i32> %tmp7not
+}
+
+define <4 x i32> @test4(<4 x i32> %a, <4 x i32> %b) {
+entry:
+        %tmp3 = or <4 x i32> %a, %b             ; <<4 x i32>> [#uses=1]
+        %tmp6 = and <4 x i32> %a, %b            ; <<4 x i32>> [#uses=1]
+        %tmp6not = xor <4 x i32> %tmp6, < i32 -1, i32 -1, i32 -1, i32 -1 >              ; <<4 x i32>> [#uses=1]
+        %tmp7 = and <4 x i32> %tmp3, %tmp6not           ; <<4 x i32>> [#uses=1]
+        ret <4 x i32> %tmp7
+}
+