diff --git a/lib/Headers/avx2intrin.h b/lib/Headers/avx2intrin.h index 69826c5b8e08611bcf481c1dc223e1532635b264..95744693ac7768eca0a849bc79f56a9fa973db8d 100644 --- a/lib/Headers/avx2intrin.h +++ b/lib/Headers/avx2intrin.h @@ -1061,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, \ @@ -1069,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, \ @@ -1077,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, \ @@ -1085,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, \ @@ -1176,28 +1176,28 @@ _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, \ diff --git a/test/CodeGen/avx2-builtins.c b/test/CodeGen/avx2-builtins.c index 1ff14f4e0eb60b5a3d2d7a297950084ec450e479..5024d94e71857d841909a48953fd8785f28be7d1 100644 --- a/test/CodeGen/avx2-builtins.c +++ b/test/CodeGen/avx2-builtins.c @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 %s -O3 -triple=x86_64-apple-darwin -target-feature +avx2 -emit-llvm -o - | FileCheck %s +// RUN: %clang_cc1 %s -O3 -triple=x86_64-apple-darwin -target-feature +avx2 -emit-llvm -o - -Werror | FileCheck %s // Don't include mm_malloc.h, it's system specific. #define __MM_MALLOC_H @@ -850,22 +850,22 @@ __m128i test_mm256_mask_i64gather_epi32(__m128i a, int const *b, __m256i c, return _mm256_mask_i64gather_epi32(a, b, c, d, 2); } -__m128i test_mm_mask_i32gather_epi64(__m128i a, int const *b, __m128i c, +__m128i test_mm_mask_i32gather_epi64(__m128i a, long long const *b, __m128i c, __m128i d) { // CHECK: @llvm.x86.avx2.gather.d.q return _mm_mask_i32gather_epi64(a, b, c, d, 2); } -__m256i test_mm256_mask_i32gather_epi64(__m256i a, int const *b, __m128i c, +__m256i test_mm256_mask_i32gather_epi64(__m256i a, long long const *b, __m128i c, __m256i d) { // CHECK: @llvm.x86.avx2.gather.d.q.256 return _mm256_mask_i32gather_epi64(a, b, c, d, 2); } -__m128i test_mm_mask_i64gather_epi64(__m128i a, int const *b, __m128i c, +__m128i test_mm_mask_i64gather_epi64(__m128i a, long long const *b, __m128i c, __m128i d) { // CHECK: @llvm.x86.avx2.gather.q.q return _mm_mask_i64gather_epi64(a, b, c, d, 2); } -__m256i test_mm256_mask_i64gather_epi64(__m256i a, int const *b, __m256i c, +__m256i test_mm256_mask_i64gather_epi64(__m256i a, long long const *b, __m256i c, __m256i d) { // CHECK: @llvm.x86.avx2.gather.q.q.256 return _mm256_mask_i64gather_epi64(a, b, c, d, 2); @@ -920,19 +920,19 @@ __m128i test_mm256_i64gather_epi32(int const *b, __m256i c) { // CHECK: @llvm.x86.avx2.gather.q.d.256 return _mm256_i64gather_epi32(b, c, 2); } -__m128i test_mm_i32gather_epi64(int const *b, __m128i c) { +__m128i test_mm_i32gather_epi64(long long const *b, __m128i c) { // CHECK: @llvm.x86.avx2.gather.d.q return _mm_i32gather_epi64(b, c, 2); } -__m256i test_mm256_i32gather_epi64(int const *b, __m128i c) { +__m256i test_mm256_i32gather_epi64(long long const *b, __m128i c) { // CHECK: @llvm.x86.avx2.gather.d.q.256 return _mm256_i32gather_epi64(b, c, 2); } -__m128i test_mm_i64gather_epi64(int const *b, __m128i c) { +__m128i test_mm_i64gather_epi64(long long const *b, __m128i c) { // CHECK: @llvm.x86.avx2.gather.q.q return _mm_i64gather_epi64(b, c, 2); } -__m256i test_mm256_i64gather_epi64(int const *b, __m256i c) { +__m256i test_mm256_i64gather_epi64(long long const *b, __m256i c) { // CHECK: @llvm.x86.avx2.gather.q.q.256 return _mm256_i64gather_epi64(b, c, 2); }