Skip to content
Snippets Groups Projects
Commit 4ad38abd authored by Bill Wendling's avatar Bill Wendling
Browse files

Made this into a bug report: PR1286

llvm-svn: 35439
parent 0ad22563
No related branches found
No related tags found
No related merge requests found
...@@ -572,43 +572,3 @@ swizzle: ...@@ -572,43 +572,3 @@ swizzle:
ret ret
//===---------------------------------------------------------------------===// //===---------------------------------------------------------------------===//
We should compile this:
#include <xmmintrin.h>
void foo(__m128i *A, __m128i *B) {
*A = _mm_sll_epi16 (*A, *B);
}
to:
_foo:
subl $12, %esp
movl 16(%esp), %edx
movl 20(%esp), %eax
movdqa (%edx), %xmm1
movdqa (%eax), %xmm0
psllw %xmm0, %xmm1
movdqa %xmm1, (%edx)
addl $12, %esp
ret
not:
_foo:
movl 8(%esp), %eax
movdqa (%eax), %xmm0
#IMPLICIT_DEF %eax
pinsrw $2, %eax, %xmm0
xorl %ecx, %ecx
pinsrw $3, %ecx, %xmm0
pinsrw $4, %eax, %xmm0
pinsrw $5, %ecx, %xmm0
pinsrw $6, %eax, %xmm0
pinsrw $7, %ecx, %xmm0
movl 4(%esp), %eax
movdqa (%eax), %xmm1
psllw %xmm0, %xmm1
movdqa %xmm1, (%eax)
ret
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment