[PATCH] [Headers] Improve codegen for _mm_slli_epi32.
Michael Spencer
bigcheesegs at gmail.com
Fri Apr 11 04:56:48 PDT 2014
Hi dblaikie,
This generates vector llvm ir for _mm_slli_epi32 to allow
further optimization.
http://reviews.llvm.org/D3353
Files:
lib/Headers/emmintrin.h
Index: lib/Headers/emmintrin.h
===================================================================
--- lib/Headers/emmintrin.h
+++ lib/Headers/emmintrin.h
@@ -846,7 +846,7 @@
static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
_mm_slli_epi32(__m128i __a, int __count)
{
- return (__m128i)__builtin_ia32_pslldi128((__v4si)__a, __count);
+ return (__m128i)((__v4si)__a << (__v4si){__count, __count, __count, __count});
}
static __inline__ __m128i __attribute__((__always_inline__, __nodebug__))
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D3353.1.patch
Type: text/x-patch
Size: 524 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140411/7f36f34a/attachment.bin>
More information about the cfe-commits
mailing list