diff options
Diffstat (limited to 'contrib/llvm/tools/clang/lib/Headers/avx2intrin.h')
-rw-r--r-- | contrib/llvm/tools/clang/lib/Headers/avx2intrin.h | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/contrib/llvm/tools/clang/lib/Headers/avx2intrin.h b/contrib/llvm/tools/clang/lib/Headers/avx2intrin.h index 63b1efc..9574469 100644 --- a/contrib/llvm/tools/clang/lib/Headers/avx2intrin.h +++ b/contrib/llvm/tools/clang/lib/Headers/avx2intrin.h @@ -25,6 +25,9 @@ #error "Never use <avx2intrin.h> directly; include <immintrin.h> instead." #endif +#ifndef __AVX2INTRIN_H +#define __AVX2INTRIN_H + /* SSE4 Multiple Packed Sums of Absolute Difference. */ #define _mm256_mpsadbw_epu8(X, Y, M) __builtin_ia32_mpsadbw256((X), (Y), (M)) @@ -750,9 +753,9 @@ _mm256_broadcastsd_pd(__m128d __X) } static __inline__ __m256i __attribute__((__always_inline__, __nodebug__)) -_mm_broadcastsi128_si256(__m128i const *__a) +_mm256_broadcastsi128_si256(__m128i __X) { - return (__m256i)__builtin_ia32_vbroadcastsi256(__a); + return (__m256i)__builtin_ia32_vbroadcastsi256(__X); } #define _mm_blend_epi32(V1, V2, M) __extension__ ({ \ @@ -1058,7 +1061,7 @@ _mm_srlv_epi64(__m128i __X, __m128i __Y) #define _mm_mask_i32gather_epi64(a, m, i, mask, s) __extension__ ({ \ __m128i __a = (a); \ - int const *__m = (m); \ + long long const *__m = (m); \ __m128i __i = (i); \ __m128i __mask = (mask); \ (__m128i)__builtin_ia32_gatherd_q((__v2di)__a, (const __v2di *)__m, \ @@ -1066,7 +1069,7 @@ _mm_srlv_epi64(__m128i __X, __m128i __Y) #define _mm256_mask_i32gather_epi64(a, m, i, mask, s) __extension__ ({ \ __m256i __a = (a); \ - int const *__m = (m); \ + long long const *__m = (m); \ __m128i __i = (i); \ __m256i __mask = (mask); \ (__m256i)__builtin_ia32_gatherd_q256((__v4di)__a, (const __v4di *)__m, \ @@ -1074,7 +1077,7 @@ _mm_srlv_epi64(__m128i __X, __m128i __Y) #define _mm_mask_i64gather_epi64(a, m, i, mask, s) __extension__ ({ \ __m128i __a = (a); \ - int const *__m = (m); \ + long long const *__m = (m); \ __m128i __i = (i); \ __m128i __mask = (mask); \ (__m128i)__builtin_ia32_gatherq_q((__v2di)__a, (const __v2di *)__m, \ @@ -1082,7 +1085,7 @@ _mm_srlv_epi64(__m128i __X, __m128i __Y) #define _mm256_mask_i64gather_epi64(a, m, i, mask, s) __extension__ ({ \ __m256i __a = (a); \ - int const *__m = (m); \ + long long const *__m = (m); \ __m256i __i = (i); \ __m256i __mask = (mask); \ (__m256i)__builtin_ia32_gatherq_q256((__v4di)__a, (const __v4di *)__m, \ @@ -1173,29 +1176,31 @@ _mm_srlv_epi64(__m128i __X, __m128i __Y) (__v4si)_mm_set1_epi32(-1), (s)); }) #define _mm_i32gather_epi64(m, i, s) __extension__ ({ \ - int const *__m = (m); \ + long long const *__m = (m); \ __m128i __i = (i); \ (__m128i)__builtin_ia32_gatherd_q((__v2di)_mm_setzero_si128(), \ (const __v2di *)__m, (__v4si)__i, \ (__v2di)_mm_set1_epi64x(-1), (s)); }) #define _mm256_i32gather_epi64(m, i, s) __extension__ ({ \ - int const *__m = (m); \ + long long const *__m = (m); \ __m128i __i = (i); \ (__m256i)__builtin_ia32_gatherd_q256((__v4di)_mm256_setzero_si256(), \ (const __v4di *)__m, (__v4si)__i, \ (__v4di)_mm256_set1_epi64x(-1), (s)); }) #define _mm_i64gather_epi64(m, i, s) __extension__ ({ \ - int const *__m = (m); \ + long long const *__m = (m); \ __m128i __i = (i); \ (__m128i)__builtin_ia32_gatherq_q((__v2di)_mm_setzero_si128(), \ (const __v2di *)__m, (__v2di)__i, \ (__v2di)_mm_set1_epi64x(-1), (s)); }) #define _mm256_i64gather_epi64(m, i, s) __extension__ ({ \ - int const *__m = (m); \ + long long const *__m = (m); \ __m256i __i = (i); \ (__m256i)__builtin_ia32_gatherq_q256((__v4di)_mm256_setzero_si256(), \ (const __v4di *)__m, (__v4di)__i, \ (__v4di)_mm256_set1_epi64x(-1), (s)); }) + +#endif /* __AVX2INTRIN_H */ |