https://git.reactos.org/?p=reactos.git;a=commitdiff;h=a015b91e6b371fcabe70464855998b476546ac71
commit a015b91e6b371fcabe70464855998b476546ac71 Author: Timo Kreuzer <timo.kreu...@reactos.org> AuthorDate: Thu Jan 16 17:49:29 2025 +0200 Commit: Timo Kreuzer <timo.kreu...@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) {