diff options
| author | Eric Christopher <echristo@apple.com> | 2010-03-11 23:36:29 +0000 |
|---|---|---|
| committer | Eric Christopher <echristo@apple.com> | 2010-03-11 23:36:29 +0000 |
| commit | e7594305bc4430561cb84e1c3851498c5bf62c7a (patch) | |
| tree | 42c766d9ac956d06db507e73087a787c7ce6f88f /clang | |
| parent | 2e41605d4fe67e252f0132378988c7df05a26cb3 (diff) | |
| download | bcm5719-llvm-e7594305bc4430561cb84e1c3851498c5bf62c7a.tar.gz bcm5719-llvm-e7594305bc4430561cb84e1c3851498c5bf62c7a.zip | |
Add packed integer array insertion.
llvm-svn: 98299
Diffstat (limited to 'clang')
| -rw-r--r-- | clang/lib/Headers/smmintrin.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/clang/lib/Headers/smmintrin.h b/clang/lib/Headers/smmintrin.h index b3bdac68855..7bc33293002 100644 --- a/clang/lib/Headers/smmintrin.h +++ b/clang/lib/Headers/smmintrin.h @@ -199,6 +199,19 @@ _mm_max_epu32 (__m128i __V1, __m128i __V2) /* Extract a float from X at index N into the first index of the return. */ #define _MM_PICK_OUT_PS(X, N) _mm_insert_ps (_mm_setzero_ps(), (X), \ _MM_MK_INSERTPS_NDX((N), 0, 0x0e)) + +/* Insert int into packed integer array at index. */ +#define _mm_insert_epi8(X, I, N) (__extension__ ({ __v16qi __a = (__v16qi)X; \ + __a[N] = I; \ + __a;})) +#define _mm_insert_epi32(X, I, N) (__extension__ ({ __v4si __a = (__v4si)X; \ + __a[N] = I; \ + __a;})) +#ifdef __x86_64__ +#define _mm_insert_epi64(X, I, N) (__extension__ ({ __v2di __a = (__v2di)X; \ + __a[N] = I; \ + __a;})) +#endif /* __x86_64__ */ #endif /* __SSE4_1__ */ |

