Commit 2d5f752a authored by Steinar Midtskogen's avatar Steinar Midtskogen Committed by Yaowu Xu
Browse files

Don't use _mm_cvtsi128_si64 on 32 bit systems

Change-Id: I332afb8d9e35cd60f05915160a5b2e1dc8757de5
parent 410fee8d
......@@ -270,7 +270,7 @@ SIMD_INLINE v128 v128_shuffle_8(v128 x, v128 pattern) {
SIMD_INLINE int64_t v128_dotp_s16(v128 a, v128 b) {
v128 r = _mm_madd_epi16(a, b);
#if defined(__SSE4_1__)
#if defined(__SSE4_1__) && defined(__x86_64__)
v128 c = _mm_add_epi64(_mm_cvtepi32_epi64(r),
_mm_cvtepi32_epi64(_mm_srli_si128(r, 8)));
return _mm_cvtsi128_si64(_mm_add_epi64(c, _mm_srli_si128(c, 8)));
......
......@@ -265,7 +265,7 @@ SIMD_INLINE int64_t v64_dotp_su8(v64 a, v64 b) {
SIMD_INLINE int64_t v64_dotp_s16(v64 a, v64 b) {
__m128i r = _mm_madd_epi16(a, b);
#if defined(__SSE4_1__)
#if defined(__SSE4_1__) && defined(__x86_64__)
__m128i x = _mm_cvtepi32_epi64(r);
return _mm_cvtsi128_si64(_mm_add_epi64(x, _mm_srli_si128(x, 8)));
#else
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment