fix: replace sse2 simd interface with older version ()



Signed-off-by: luzhang <luzhang@zilliz.com>
Co-authored-by: luzhang <luzhang@zilliz.com>
pull/30718/head
zhagnlu 2024-02-21 10:04:54 +08:00 committed by GitHub
parent 40ca98f57f
commit 0118bef2a2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 6 additions and 6 deletions
internal/core/src/simd

View File

@ -381,7 +381,7 @@ struct CompareValAVX512Impl<int64_t, type> {
target, target,
(CompareOperator<int64_t, type>::ComparePredicate)); (CompareOperator<int64_t, type>::ComparePredicate));
__m128i cmp_res = _mm_maskz_set1_epi8(mask, 0x01); __m128i cmp_res = _mm_maskz_set1_epi8(mask, 0x01);
_mm_storeu_si64((__m128i*)(res + i), cmp_res); _mm_storel_epi64((__m128i_u*)(res + i), cmp_res);
} }
for (size_t i = middle; i < size; ++i) { for (size_t i = middle; i < size; ++i) {
@ -429,7 +429,7 @@ struct CompareValAVX512Impl<double, type> {
target, target,
(CompareOperator<double, type>::ComparePredicate)); (CompareOperator<double, type>::ComparePredicate));
__m128i cmp_res = _mm_maskz_set1_epi8(cmp_res_mask, 0x01); __m128i cmp_res = _mm_maskz_set1_epi8(cmp_res_mask, 0x01);
_mm_storeu_si64((res + i), cmp_res); _mm_storel_epi64((__m128i_u*)(res + i), cmp_res);
} }
for (size_t i = middle; i < size; ++i) { for (size_t i = middle; i < size; ++i) {
@ -611,7 +611,7 @@ struct CompareColumnAVX512Impl {
(CompareOperator<T, type>::ComparePredicate)); (CompareOperator<T, type>::ComparePredicate));
__m128i cmp_res = _mm_maskz_set1_epi8(mask, 0x01); __m128i cmp_res = _mm_maskz_set1_epi8(mask, 0x01);
_mm_storeu_si64((__m128i*)(res + i), cmp_res); _mm_storel_epi64((__m128i_u*)(res + i), cmp_res);
} }
} }
@ -668,7 +668,7 @@ struct CompareColumnAVX512Impl<double, type> {
(CompareOperator<double, type>::ComparePredicate)); (CompareOperator<double, type>::ComparePredicate));
__m128i cmp_res = _mm_maskz_set1_epi8(cmp_res_mask, 0x01); __m128i cmp_res = _mm_maskz_set1_epi8(cmp_res_mask, 0x01);
_mm_storeu_si64((res + i), cmp_res); _mm_storel_epi64((__m128i_u*)(res + i), cmp_res);
} }
for (size_t i = middle; i < size; ++i) { for (size_t i = middle; i < size; ++i) {

View File

@ -34,9 +34,9 @@ GetBitsetBlockSSE2(const bool* src) {
tmp[i] = _mm_movemask_epi8(highbits); tmp[i] = _mm_movemask_epi8(highbits);
} }
__m128i tmpvec = _mm_loadu_si64(tmp); __m128i tmpvec = _mm_loadl_epi64((__m128i_u*)tmp);
BitsetBlockType res; BitsetBlockType res;
_mm_storeu_si64(&res, tmpvec); _mm_storel_epi64((__m128i_u*)&res, tmpvec);
return res; return res;
} else { } else {
// Others has 32 bits // Others has 32 bits