aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/X86/sse2-blend.ll
diff options
context:
space:
mode:
authorNadav Rotem <nadav.rotem@intel.com>2012-01-02 08:05:46 +0000
committerNadav Rotem <nadav.rotem@intel.com>2012-01-02 08:05:46 +0000
commita46f35d3d65425af5eaaaf906fca240a33d6c362 (patch)
treecbe1de0c9521b4a7bef38d6733365f4c72ab619b /test/CodeGen/X86/sse2-blend.ll
parent47f79bb58e42f1a08a7f388b8b1596ded7d49bbb (diff)
downloadexternal_llvm-a46f35d3d65425af5eaaaf906fca240a33d6c362.zip
external_llvm-a46f35d3d65425af5eaaaf906fca240a33d6c362.tar.gz
external_llvm-a46f35d3d65425af5eaaaf906fca240a33d6c362.tar.bz2
Optimize the sequence blend(sign_extend(x)) to blend(shl(x)) since SSE blend instructions only look at the highest bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147426 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/sse2-blend.ll')
-rw-r--r--test/CodeGen/X86/sse2-blend.ll16
1 files changed, 8 insertions, 8 deletions
diff --git a/test/CodeGen/X86/sse2-blend.ll b/test/CodeGen/X86/sse2-blend.ll
index 2f4317b..c6602d3 100644
--- a/test/CodeGen/X86/sse2-blend.ll
+++ b/test/CodeGen/X86/sse2-blend.ll
@@ -28,10 +28,10 @@ define void@vsel_i32(<4 x i32>* %v1, <4 x i32>* %v2) {
; Without forcing instructions, fall back to the preferred PS domain.
; CHECK: vsel_i64
-; CHECK: xorps
-; CHECK: andps
-; CHECK: andnps
-; CHECK: orps
+; CHECK: pxor
+; CHECK: and
+; CHECK: andn
+; CHECK: or
; CHECK: ret
define void@vsel_i64(<4 x i64>* %v1, <4 x i64>* %v2) {
@@ -44,10 +44,10 @@ define void@vsel_i64(<4 x i64>* %v1, <4 x i64>* %v2) {
; Without forcing instructions, fall back to the preferred PS domain.
; CHECK: vsel_double
-; CHECK: xorps
-; CHECK: andps
-; CHECK: andnps
-; CHECK: orps
+; CHECK: xor
+; CHECK: and
+; CHECK: andn
+; CHECK: or
; CHECK: ret
define void@vsel_double(<4 x double>* %v1, <4 x double>* %v2) {