| commit | e8b518004424a13c04735d69d0d970bdf644764c | [log] [tgz] |
|---|---|---|
| author | Evan Cheng <evan.cheng@apple.com> | Fri Apr 21 01:05:10 2006 +0000 |
| committer | Evan Cheng <evan.cheng@apple.com> | Fri Apr 21 01:05:10 2006 +0000 |
| tree | ec5e9f972eb14023a50980ffb85e31441c516826 | |
| parent | cc47ab330531e65aa345a0d438e67efa51a46c52 [diff] |
Now generating perfect (I think) code for "vector set" with a single non-zero
scalar value.
e.g.
_mm_set_epi32(0, a, 0, 0);
==>
movd 4(%esp), %xmm0
pshufd $69, %xmm0, %xmm0
_mm_set_epi8(0, 0, 0, 0, 0, a, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
==>
movzbw 4(%esp), %ax
movzwl %ax, %eax
pxor %xmm0, %xmm0
pinsrw $5, %eax, %xmm0
llvm-svn: 27923