[llvm-commits] [llvm] r75024 - /llvm/trunk/test/CodeGen/X86/vec_compare.ll

Chris Lattner sabre at nondot.org
Wed Jul 8 11:51:38 PDT 2009


Author: lattner
Date: Wed Jul  8 13:51:25 2009
New Revision: 75024

URL: http://llvm.org/viewvc/llvm-project?rev=75024&view=rev
Log:
add some more check for vector compares.

Modified:
    llvm/trunk/test/CodeGen/X86/vec_compare.ll

Modified: llvm/trunk/test/CodeGen/X86/vec_compare.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/vec_compare.ll?rev=75024&r1=75023&r2=75024&view=diff

==============================================================================
--- llvm/trunk/test/CodeGen/X86/vec_compare.ll (original)
+++ llvm/trunk/test/CodeGen/X86/vec_compare.ll Wed Jul  8 13:51:25 2009
@@ -1,9 +1,43 @@
-; RUN: llvm-as < %s | llc -march=x86 -mcpu=yonah | grep pcmpgtd
+; RUN: llvm-as < %s | llc -march=x86 -mcpu=yonah | FileCheck %s
 
 
-define <4 x i32> @test2(<4 x i32> %A, <4 x i32> %B) nounwind {
+define <4 x i32> @test1(<4 x i32> %A, <4 x i32> %B) nounwind {
+; CHECK: test1:
+; CHECK: pcmpgtd
+; CHECK: ret
+
 	%C = icmp sgt <4 x i32> %A, %B
         %D = sext <4 x i1> %C to <4 x i32>
 	ret <4 x i32> %D
 }
 
+define <4 x i32> @test2(<4 x i32> %A, <4 x i32> %B) nounwind {
+; CHECK: test2:
+; CHECK: pcmp
+; CHECK: pcmp
+; CHECK: xorps
+; CHECK: ret
+	%C = icmp sge <4 x i32> %A, %B
+        %D = sext <4 x i1> %C to <4 x i32>
+	ret <4 x i32> %D
+}
+
+define <4 x i32> @test3(<4 x i32> %A, <4 x i32> %B) nounwind {
+; CHECK: test3:
+; CHECK: pcmpgtd
+; CHECK: movaps
+; CHECK: ret
+	%C = icmp slt <4 x i32> %A, %B
+        %D = sext <4 x i1> %C to <4 x i32>
+	ret <4 x i32> %D
+}
+
+define <4 x i32> @test4(<4 x i32> %A, <4 x i32> %B) nounwind {
+; CHECK: test4:
+; CHECK: movaps
+; CHECK: pcmpgtd
+; CHECK: ret
+	%C = icmp ugt <4 x i32> %A, %B
+        %D = sext <4 x i1> %C to <4 x i32>
+	ret <4 x i32> %D
+}





More information about the llvm-commits mailing list