https://git.reactos.org/?p=reactos.git;a=commitdiff;h=a015b91e6b371fcabe704…
commit a015b91e6b371fcabe70464855998b476546ac71
Author: Timo Kreuzer <timo.kreuzer(a)reactos.org>
AuthorDate: Thu Jan 16 17:49:29 2025 +0200
Commit: Timo Kreuzer <timo.kreuzer(a)reactos.org>
CommitDate: Wed Jan 22 18:56:08 2025 +0200
[VCRUNTIME] Fix emmintrin.h for GCC
---
sdk/include/vcruntime/emmintrin.h | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/sdk/include/vcruntime/emmintrin.h b/sdk/include/vcruntime/emmintrin.h
index 2c053599e0d..99aeef76616 100644
--- a/sdk/include/vcruntime/emmintrin.h
+++ b/sdk/include/vcruntime/emmintrin.h
@@ -1345,8 +1345,15 @@ __INTRIN_INLINE_SSE2 __m128i _mm_xor_si128(__m128i a, __m128i b)
return (__m128i)((__v2du)a ^ (__v2du)b);
}
+#ifdef __clang__
#define _mm_slli_si128(a, imm) \
((__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm)))
+#else
+__INTRIN_INLINE_SSE2 __m128i _mm_slli_si128(__m128i a, const int imm)
+{
+ return (__m128i)__builtin_ia32_pslldqi128(a, imm * 8);
+}
+#endif
__INTRIN_INLINE_SSE2 __m128i _mm_slli_epi16(__m128i a, int count)
{
@@ -1398,8 +1405,15 @@ __INTRIN_INLINE_SSE2 __m128i _mm_sra_epi32(__m128i a, __m128i
count)
return (__m128i)__builtin_ia32_psrad128((__v4si)a, (__v4si)count);
}
+#ifdef __clang__
#define _mm_srli_si128(a, imm) \
((__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm)))
+#else
+__INTRIN_INLINE_SSE2 __m128i _mm_srli_si128(__m128i a, const int imm)
+{
+ return (__m128i)__builtin_ia32_psrldqi128(a, imm * 8);
+}
+#endif
__INTRIN_INLINE_SSE2 __m128i _mm_srli_epi16(__m128i a, int count)
{