Avoid use of _mm_cvtsi128_si64 for 32-bit builds (#94)
diff --git a/NEON_2_SSE.h b/NEON_2_SSE.h
index 334cbd8..ac45398 100644
--- a/NEON_2_SSE.h
+++ b/NEON_2_SSE.h
@@ -17005,7 +17005,13 @@
{
__m128i shuf = _mm_shuffle_epi32(a, _MM_SHUFFLE(1, 0, 3, 2)); // swap lo and hi numbers
__m128i sum = _mm_add_epi64(a, shuf);
- return _mm_cvtsi128_si64(sum);
+#if defined(_NEON2SSE_64BIT)
+ return _mm_cvtsi128_si64(sum); // SSE2 intrinsic only available for x64 in VS2026
+#else
+ int64_t result;
+ _mm_storel_epi64((__m128i*) &result, sum); // fallback for x86
+ return result;
+#endif
}
_NEON2SSESTORAGE uint8_t vaddvq_u8(uint8x16_t a)