Fix x86 build (added _mm256_extract_epi64)
This commit is contained in:
@ -140,6 +140,10 @@ static ALWAYS_INLINE __m128i mm_scani_epi16(__m128i v, __m128i sv, __m128i vi) {
|
|||||||
static ALWAYS_INLINE __m128i mm_scani_epi32(__m128i v, __m128i sv, __m128i vi) { return _mm_add_epi32(mm_scan_epi32(v, sv), vi); }
|
static ALWAYS_INLINE __m128i mm_scani_epi32(__m128i v, __m128i sv, __m128i vi) { return _mm_add_epi32(mm_scan_epi32(v, sv), vi); }
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if !defined(_M_X64) && !defined(__x86_64__) && defined(__AVX__)
|
||||||
|
#define _mm256_extract_epi64(v, index) ((__int64)((uint64_t)(uint32_t)_mm256_extract_epi32((v), (index) * 2) | (((uint64_t)(uint32_t)_mm256_extract_epi32((v), (index) * 2 + 1)) << 32)))
|
||||||
|
#endif
|
||||||
|
|
||||||
//------------------ Horizontal OR -----------------------------------------------
|
//------------------ Horizontal OR -----------------------------------------------
|
||||||
#ifdef __AVX2__
|
#ifdef __AVX2__
|
||||||
static ALWAYS_INLINE unsigned mm256_hor_epi32(__m256i v) {
|
static ALWAYS_INLINE unsigned mm256_hor_epi32(__m256i v) {
|
||||||
|
Reference in New Issue
Block a user