summaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/sse41-intrinsics-fast-isel.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/X86/sse41-intrinsics-fast-isel.ll')
-rw-r--r--test/CodeGen/X86/sse41-intrinsics-fast-isel.ll28
1 files changed, 14 insertions, 14 deletions
diff --git a/test/CodeGen/X86/sse41-intrinsics-fast-isel.ll b/test/CodeGen/X86/sse41-intrinsics-fast-isel.ll
index 16868d854df70..f106f7ec5cc11 100644
--- a/test/CodeGen/X86/sse41-intrinsics-fast-isel.ll
+++ b/test/CodeGen/X86/sse41-intrinsics-fast-isel.ll
@@ -54,7 +54,7 @@ define <2 x i64> @test_mm_blendv_epi8(<2 x i64> %a0, <2 x i64> %a1, <2 x i64> %a
; X32: # BB#0:
; X32-NEXT: movdqa %xmm0, %xmm3
; X32-NEXT: movaps %xmm2, %xmm0
-; X32-NEXT: pblendvb %xmm1, %xmm3
+; X32-NEXT: pblendvb %xmm0, %xmm1, %xmm3
; X32-NEXT: movdqa %xmm3, %xmm0
; X32-NEXT: retl
;
@@ -62,7 +62,7 @@ define <2 x i64> @test_mm_blendv_epi8(<2 x i64> %a0, <2 x i64> %a1, <2 x i64> %a
; X64: # BB#0:
; X64-NEXT: movdqa %xmm0, %xmm3
; X64-NEXT: movaps %xmm2, %xmm0
-; X64-NEXT: pblendvb %xmm1, %xmm3
+; X64-NEXT: pblendvb %xmm0, %xmm1, %xmm3
; X64-NEXT: movdqa %xmm3, %xmm0
; X64-NEXT: retq
%arg0 = bitcast <2 x i64> %a0 to <16 x i8>
@@ -79,7 +79,7 @@ define <2 x double> @test_mm_blendv_pd(<2 x double> %a0, <2 x double> %a1, <2 x
; X32: # BB#0:
; X32-NEXT: movapd %xmm0, %xmm3
; X32-NEXT: movaps %xmm2, %xmm0
-; X32-NEXT: blendvpd %xmm1, %xmm3
+; X32-NEXT: blendvpd %xmm0, %xmm1, %xmm3
; X32-NEXT: movapd %xmm3, %xmm0
; X32-NEXT: retl
;
@@ -87,7 +87,7 @@ define <2 x double> @test_mm_blendv_pd(<2 x double> %a0, <2 x double> %a1, <2 x
; X64: # BB#0:
; X64-NEXT: movapd %xmm0, %xmm3
; X64-NEXT: movaps %xmm2, %xmm0
-; X64-NEXT: blendvpd %xmm1, %xmm3
+; X64-NEXT: blendvpd %xmm0, %xmm1, %xmm3
; X64-NEXT: movapd %xmm3, %xmm0
; X64-NEXT: retq
%res = call <2 x double> @llvm.x86.sse41.blendvpd(<2 x double> %a0, <2 x double> %a1, <2 x double> %a2)
@@ -100,7 +100,7 @@ define <4 x float> @test_mm_blendv_ps(<4 x float> %a0, <4 x float> %a1, <4 x flo
; X32: # BB#0:
; X32-NEXT: movaps %xmm0, %xmm3
; X32-NEXT: movaps %xmm2, %xmm0
-; X32-NEXT: blendvps %xmm1, %xmm3
+; X32-NEXT: blendvps %xmm0, %xmm1, %xmm3
; X32-NEXT: movaps %xmm3, %xmm0
; X32-NEXT: retl
;
@@ -108,7 +108,7 @@ define <4 x float> @test_mm_blendv_ps(<4 x float> %a0, <4 x float> %a1, <4 x flo
; X64: # BB#0:
; X64-NEXT: movaps %xmm0, %xmm3
; X64-NEXT: movaps %xmm2, %xmm0
-; X64-NEXT: blendvps %xmm1, %xmm3
+; X64-NEXT: blendvps %xmm0, %xmm1, %xmm3
; X64-NEXT: movaps %xmm3, %xmm0
; X64-NEXT: retq
%res = call <4 x float> @llvm.x86.sse41.blendvps(<4 x float> %a0, <4 x float> %a1, <4 x float> %a2)
@@ -898,17 +898,17 @@ define i32 @test_mm_test_all_ones(<2 x i64> %a0) {
; X32-LABEL: test_mm_test_all_ones:
; X32: # BB#0:
; X32-NEXT: pcmpeqd %xmm1, %xmm1
+; X32-NEXT: xorl %eax, %eax
; X32-NEXT: ptest %xmm1, %xmm0
-; X32-NEXT: sbbl %eax, %eax
-; X32-NEXT: andl $1, %eax
+; X32-NEXT: setb %al
; X32-NEXT: retl
;
; X64-LABEL: test_mm_test_all_ones:
; X64: # BB#0:
; X64-NEXT: pcmpeqd %xmm1, %xmm1
+; X64-NEXT: xorl %eax, %eax
; X64-NEXT: ptest %xmm1, %xmm0
-; X64-NEXT: sbbl %eax, %eax
-; X64-NEXT: andl $1, %eax
+; X64-NEXT: setb %al
; X64-NEXT: retq
%res = call i32 @llvm.x86.sse41.ptestc(<2 x i64> %a0, <2 x i64> <i64 -1, i64 -1>)
ret i32 %res
@@ -956,16 +956,16 @@ declare i32 @llvm.x86.sse41.ptestnzc(<2 x i64>, <2 x i64>) nounwind readnone
define i32 @test_mm_testc_si128(<2 x i64> %a0, <2 x i64> %a1) {
; X32-LABEL: test_mm_testc_si128:
; X32: # BB#0:
+; X32-NEXT: xorl %eax, %eax
; X32-NEXT: ptest %xmm1, %xmm0
-; X32-NEXT: sbbl %eax, %eax
-; X32-NEXT: andl $1, %eax
+; X32-NEXT: setb %al
; X32-NEXT: retl
;
; X64-LABEL: test_mm_testc_si128:
; X64: # BB#0:
+; X64-NEXT: xorl %eax, %eax
; X64-NEXT: ptest %xmm1, %xmm0
-; X64-NEXT: sbbl %eax, %eax
-; X64-NEXT: andl $1, %eax
+; X64-NEXT: setb %al
; X64-NEXT: retq
%res = call i32 @llvm.x86.sse41.ptestc(<2 x i64> %a0, <2 x i64> %a1)
ret i32 %res