diff options
-rw-r--r-- | gcc/testsuite/gcc.target/i386/sse-22.c | 76 |
1 files changed, 39 insertions, 37 deletions
diff --git a/gcc/testsuite/gcc.target/i386/sse-22.c b/gcc/testsuite/gcc.target/i386/sse-22.c index 5b45c485f55..89ea7b3e0da 100644 --- a/gcc/testsuite/gcc.target/i386/sse-22.c +++ b/gcc/testsuite/gcc.target/i386/sse-22.c @@ -161,9 +161,14 @@ test_4 (_mm_cmpestrz, int, __m128i, int, __m128i, int, 1) /* immintrin.h (AVX/AVX2/RDRND/FSGSBASE/F16C) */ #ifdef DIFFERENT_PRAGMAS -#pragma GCC target ("avx,rdrnd,fsgsbase,f16c") +#pragma GCC target ("avx,avx2,rdrnd,fsgsbase,f16c") #endif #include <immintrin.h> +test_1 (_cvtss_sh, unsigned short, float, 1) +test_1 (_mm_cvtps_ph, __m128i, __m128, 1) +test_1 (_mm256_cvtps_ph, __m128i, __m256, 1) + +/* avxintrin.h */ test_2 (_mm256_blend_pd, __m256d, __m256d, __m256d, 1) test_2 (_mm256_blend_ps, __m256, __m256, __m256, 1) test_2 (_mm256_dp_ps, __m256, __m256, __m256, 1) @@ -202,9 +207,39 @@ test_2 (_mm256_insert_epi64, __m256i, __m256i, long long, 1) #endif test_1 (_mm256_round_pd, __m256d, __m256d, 1) test_1 (_mm256_round_ps, __m256, __m256, 1) -test_1 (_cvtss_sh, unsigned short, float, 1) -test_1 (_mm_cvtps_ph, __m128i, __m128, 1) -test_1 (_mm256_cvtps_ph, __m128i, __m256, 1) + +/* avx2intrin.h */ +test_2 ( _mm256_mpsadbw_epu8, __m256i, __m256i, __m256i, 1) +test_2 ( _mm256_alignr_epi8, __m256i, __m256i, __m256i, 1) +test_2 ( _mm256_blend_epi16, __m256i, __m256i, __m256i, 1) +test_1 ( _mm256_shuffle_epi32, __m256i, __m256i, 1) +test_1 ( _mm256_shufflehi_epi16, __m256i, __m256i, 1) +test_1 ( _mm256_shufflelo_epi16, __m256i, __m256i, 1) +test_1 ( _mm256_slli_si256, __m256i, __m256i, 8) +test_1 ( _mm256_srli_si256, __m256i, __m256i, 8) +test_2 ( _mm_blend_epi32, __m128i, __m128i, __m128i, 1) +test_2 ( _mm256_blend_epi32, __m256i, __m256i, __m256, 1) +test_1 ( _mm256_permute4x64_pd, __m256d, __m256d, 1) +test_1 ( _mm256_permute4x64_epi64, __m256i, __m256i, 1) +test_2 ( _mm256_permute2x128_si256, __m256i, __m256i, __m256i, 1) +test_1 ( _mm256_extracti128_si256, __m128i, __m256i, 1) +test_2 ( _mm256_inserti128_si256, __m256i, __m256i, __m128i, 1) +test_2 ( _mm_i32gather_pd, __m128d, double const *, __m128i, 1) +test_2 ( _mm256_i32gather_pd, __m256d, double const *, __m128i, 1) +test_2 ( _mm_i64gather_pd, __m128d, double const *, __m128i, 1) +test_2 ( _mm256_i64gather_pd, __m256d, double const *, __m256i, 1) +test_2 ( _mm_i32gather_ps, __m128, float const *, __m128i, 1) +test_2 ( _mm256_i32gather_ps, __m256, float const *, __m256i, 1) +test_2 ( _mm_i64gather_ps, __m128, float const *, __m128i, 1) +test_2 ( _mm256_i64gather_ps, __m128, float const *, __m256i, 1) +test_2 ( _mm_i32gather_epi64, __m128i, long long int const *, __m128i, 1) +test_2 ( _mm256_i32gather_epi64, __m256i, long long int const *, __m128i, 1) +test_2 ( _mm_i64gather_epi64, __m128i, long long int const *, __m128i, 1) +test_2 ( _mm256_i64gather_epi64, __m256i, long long int const *, __m256i, 1) +test_2 ( _mm_i32gather_epi32, __m128i, int const *, __m128i, 1) +test_2 ( _mm256_i32gather_epi32, __m256i, int const *, __m256i, 1) +test_2 ( _mm_i64gather_epi32, __m128i, int const *, __m128i, 1) +test_2 ( _mm256_i64gather_epi32, __m128i, int const *, __m256i, 1) /* wmmintrin.h (AES/PCLMUL). */ #ifdef DIFFERENT_PRAGMAS @@ -248,36 +283,3 @@ test_1 ( __bextri_u32, unsigned int, unsigned int, 1) #ifdef __x86_64__ test_1 ( __bextri_u64, unsigned long long, unsigned long long, 1) #endif - -/* avx2intrin.h */ -test_2 ( _mm256_mpsadbw_epu8, __m256i, __m256i, __m256i, 1) -test_2 ( _mm256_alignr_epi8, __m256i, __m256i, __m256i, 1) -test_2 ( _mm256_blend_epi16, __m256i, __m256i, __m256i, 1) -test_1 ( _mm256_shuffle_epi32, __m256i, __m256i, 1) -test_1 ( _mm256_shufflehi_epi16, __m256i, __m256i, 1) -test_1 ( _mm256_shufflelo_epi16, __m256i, __m256i, 1) -test_1 ( _mm256_slli_si256, __m256i, __m256i, 8) -test_1 ( _mm256_srli_si256, __m256i, __m256i, 8) -test_2 ( _mm_blend_epi32, __m128i, __m128i, __m128i, 1) -test_2 ( _mm256_blend_epi32, __m256i, __m256i, __m256, 1) -test_1 ( _mm256_permute4x64_pd, __m256d, __m256d, 1) -test_1 ( _mm256_permute4x64_epi64, __m256i, __m256i, 1) -test_2 ( _mm256_permute2x128_si256, __m256i, __m256i, __m256i, 1) -test_1 ( _mm256_extracti128_si256, __m128i, __m256i, 1) -test_2 ( _mm256_inserti128_si256, __m256i, __m256i, __m128i, 1) -test_2 ( _mm_i32gather_pd, __m128d, double const *, __m128i, 1) -test_2 ( _mm256_i32gather_pd, __m256d, double const *, __m128i, 1) -test_2 ( _mm_i64gather_pd, __m128d, double const *, __m128i, 1) -test_2 ( _mm256_i64gather_pd, __m256d, double const *, __m256i, 1) -test_2 ( _mm_i32gather_ps, __m128, float const *, __m128i, 1) -test_2 ( _mm256_i32gather_ps, __m256, float const *, __m256i, 1) -test_2 ( _mm_i64gather_ps, __m128, float const *, __m128i, 1) -test_2 ( _mm256_i64gather_ps, __m128, float const *, __m256i, 1) -test_2 ( _mm_i32gather_epi64, __m128i, long long int const *, __m128i, 1) -test_2 ( _mm256_i32gather_epi64, __m256i, long long int const *, __m128i, 1) -test_2 ( _mm_i64gather_epi64, __m128i, long long int const *, __m128i, 1) -test_2 ( _mm256_i64gather_epi64, __m256i, long long int const *, __m256i, 1) -test_2 ( _mm_i32gather_epi32, __m128i, int const *, __m128i, 1) -test_2 ( _mm256_i32gather_epi32, __m256i, int const *, __m256i, 1) -test_2 ( _mm_i64gather_epi32, __m128i, int const *, __m128i, 1) -test_2 ( _mm256_i64gather_epi32, __m128i, int const *, __m256i, 1) |