summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorEric Christopher <echristo@apple.com>2010-03-11 23:50:18 +0000
committerEric Christopher <echristo@apple.com>2010-03-11 23:50:18 +0000
commite486f68b590238bb1fd4c5576b668c34049faebb (patch)
treef3e75b10939654136a841d756d33b636352cf50c /clang
parentf5c2a6b371e382a5d913805fcd373785d28015b5 (diff)
downloadbcm5719-llvm-e486f68b590238bb1fd4c5576b668c34049faebb.tar.gz
bcm5719-llvm-e486f68b590238bb1fd4c5576b668c34049faebb.zip
Integer array extraction for sse4.1.
llvm-svn: 98305
Diffstat (limited to 'clang')
-rw-r--r--clang/lib/Headers/smmintrin.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/lib/Headers/smmintrin.h b/clang/lib/Headers/smmintrin.h
index 7bc33293002..29a9c37b45e 100644
--- a/clang/lib/Headers/smmintrin.h
+++ b/clang/lib/Headers/smmintrin.h
@@ -213,6 +213,16 @@ _mm_max_epu32 (__m128i __V1, __m128i __V2)
__a;}))
#endif /* __x86_64__ */
+/* Extract int from packed integer array at index. */
+#define _mm_extract_epi8(X, N) (__extension__ ({ __v16qi __a = (__v16qi)X; \
+ __a[N];}))
+#define _mm_extract_epi32(X, N) (__extension__ ({ __v4si __a = (__v4si)X; \
+ __a[N];}))
+#ifdef __x86_64__
+#define _mm_extract_epi64(X, N) (__extension__ ({ __v2di __a = (__v2di)X; \
+ __a[N];}))
+#endif /* __x86_64 */
+
#endif /* __SSE4_1__ */
#endif /* _SMMINTRIN_H */
OpenPOWER on IntegriCloud