https://git.reactos.org/?p=reactos.git;a=commitdiff;h=89e83b2cf48c9bab7eec3…
commit 89e83b2cf48c9bab7eec3670b69b72db675b0279
Author: Thomas Faber <thomas.faber(a)reactos.org>
AuthorDate: Sat Nov 4 11:47:12 2017 +0100
[CRT] Add __m128i, _mm_setzero_si128, and _mm_stream_si128.
---
sdk/include/crt/emmintrin.h | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/sdk/include/crt/emmintrin.h b/sdk/include/crt/emmintrin.h
index 91cf4a6477..5f8ceb1933 100644
--- a/sdk/include/crt/emmintrin.h
+++ b/sdk/include/crt/emmintrin.h
@@ -11,6 +11,19 @@
#include <crtdefs.h>
#include <xmmintrin.h>
+typedef union _DECLSPEC_INTRIN_TYPE _CRT_ALIGN(16) __m128i
+{
+ __int8 m128i_i8[16];
+ __int16 m128i_i16[8];
+ __int32 m128i_i32[4];
+ __int64 m128i_i64[2];
+ unsigned __int8 m128i_u8[16];
+ unsigned __int16 m128i_u16[8];
+ unsigned __int32 m128i_u32[4];
+ unsigned __int64 m128i_u64[2];
+} __m128i;
+C_ASSERT(sizeof(__m128i) == 16);
+
typedef struct _DECLSPEC_INTRIN_TYPE _CRT_ALIGN(16) __m128d
{
double m128d_f64[2];
@@ -20,5 +33,9 @@ extern __m128d _mm_load_sd(double const*);
extern int _mm_cvtsd_si32(__m128d);
+extern __m128i _mm_setzero_si128(void);
+
+extern void _mm_stream_si128(__m128i *, __m128i);
+
#endif /* _INCLUDED_EMM */