diff options
author | Craig Topper <craig.topper@intel.com> | 2019-01-28 07:03:10 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2019-01-28 07:03:10 +0000 |
commit | 7bfb229128a4b4942fa63927e92fe8a7cfc362a9 (patch) | |
tree | 280baf0e55f09d5c97a3a30916155be24b970bc0 /test/CodeGen/avx512f-builtins.c | |
parent | 085dbeb7bd2ae3d5a6f712a487ae258bb01d6fe2 (diff) | |
download | clang-7bfb229128a4b4942fa63927e92fe8a7cfc362a9.tar.gz |
[X86] Add new variadic avx512 compress/expand intrinsics that use vXi1 types for the mask argument.
Custom lower the builtins to these intrinsics. This enables the middle end to optimize out bitcasts for the masks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@352344 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/avx512f-builtins.c')
-rw-r--r-- | test/CodeGen/avx512f-builtins.c | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/test/CodeGen/avx512f-builtins.c b/test/CodeGen/avx512f-builtins.c index 55bdf4f5fc..7e1c255fe0 100644 --- a/test/CodeGen/avx512f-builtins.c +++ b/test/CodeGen/avx512f-builtins.c @@ -8594,49 +8594,49 @@ void test_mm512_stream_ps(float *__P, __m512 __A) { __m512d test_mm512_mask_compress_pd(__m512d __W, __mmask8 __U, __m512d __A) { // CHECK-LABEL: @test_mm512_mask_compress_pd - // CHECK: @llvm.x86.avx512.mask.compress.pd.512 + // CHECK: @llvm.x86.avx512.mask.compress return _mm512_mask_compress_pd(__W, __U, __A); } __m512d test_mm512_maskz_compress_pd(__mmask8 __U, __m512d __A) { // CHECK-LABEL: @test_mm512_maskz_compress_pd - // CHECK: @llvm.x86.avx512.mask.compress.pd.512 + // CHECK: @llvm.x86.avx512.mask.compress return _mm512_maskz_compress_pd(__U, __A); } __m512i test_mm512_mask_compress_epi64(__m512i __W, __mmask8 __U, __m512i __A) { // CHECK-LABEL: @test_mm512_mask_compress_epi64 - // CHECK: @llvm.x86.avx512.mask.compress.q.512 + // CHECK: @llvm.x86.avx512.mask.compress return _mm512_mask_compress_epi64(__W, __U, __A); } __m512i test_mm512_maskz_compress_epi64(__mmask8 __U, __m512i __A) { // CHECK-LABEL: @test_mm512_maskz_compress_epi64 - // CHECK: @llvm.x86.avx512.mask.compress.q.512 + // CHECK: @llvm.x86.avx512.mask.compress return _mm512_maskz_compress_epi64(__U, __A); } __m512 test_mm512_mask_compress_ps(__m512 __W, __mmask16 __U, __m512 __A) { // CHECK-LABEL: @test_mm512_mask_compress_ps - // CHECK: @llvm.x86.avx512.mask.compress.ps.512 + // CHECK: @llvm.x86.avx512.mask.compress return _mm512_mask_compress_ps(__W, __U, __A); } __m512 test_mm512_maskz_compress_ps(__mmask16 __U, __m512 __A) { // CHECK-LABEL: @test_mm512_maskz_compress_ps - // CHECK: @llvm.x86.avx512.mask.compress.ps.512 + // CHECK: @llvm.x86.avx512.mask.compress return _mm512_maskz_compress_ps(__U, __A); } __m512i test_mm512_mask_compress_epi32(__m512i __W, __mmask16 __U, __m512i __A) { // CHECK-LABEL: @test_mm512_mask_compress_epi32 - // CHECK: @llvm.x86.avx512.mask.compress.d.512 + // CHECK: @llvm.x86.avx512.mask.compress return _mm512_mask_compress_epi32(__W, __U, __A); } __m512i test_mm512_maskz_compress_epi32(__mmask16 __U, __m512i __A) { // CHECK-LABEL: @test_mm512_maskz_compress_epi32 - // CHECK: @llvm.x86.avx512.mask.compress.d.512 + // CHECK: @llvm.x86.avx512.mask.compress return _mm512_maskz_compress_epi32(__U, __A); } @@ -8750,25 +8750,25 @@ __m512i test_mm512_maskz_shuffle_epi32(__mmask16 __U, __m512i __A) { __m512d test_mm512_mask_expand_pd(__m512d __W, __mmask8 __U, __m512d __A) { // CHECK-LABEL: @test_mm512_mask_expand_pd - // CHECK: @llvm.x86.avx512.mask.expand.pd.512 + // CHECK: @llvm.x86.avx512.mask.expand return _mm512_mask_expand_pd(__W, __U, __A); } __m512d test_mm512_maskz_expand_pd(__mmask8 __U, __m512d __A) { // CHECK-LABEL: @test_mm512_maskz_expand_pd - // CHECK: @llvm.x86.avx512.mask.expand.pd.512 + // CHECK: @llvm.x86.avx512.mask.expand return _mm512_maskz_expand_pd(__U, __A); } __m512i test_mm512_mask_expand_epi64(__m512i __W, __mmask8 __U, __m512i __A) { // CHECK-LABEL: @test_mm512_mask_expand_epi64 - // CHECK: @llvm.x86.avx512.mask.expand.q.512 + // CHECK: @llvm.x86.avx512.mask.expand return _mm512_mask_expand_epi64(__W, __U, __A); } __m512i test_mm512_maskz_expand_epi64(__mmask8 __U, __m512i __A) { // CHECK-LABEL: @test_mm512_maskz_expand_epi64 - // CHECK: @llvm.x86.avx512.mask.expand.q.512 + // CHECK: @llvm.x86.avx512.mask.expand return _mm512_maskz_expand_epi64(__U, __A); } __m512i test_mm512_mask_expandloadu_epi64(__m512i __W, __mmask8 __U, void const *__P) { @@ -8821,25 +8821,25 @@ __m512 test_mm512_maskz_expandloadu_ps(__mmask16 __U, void const *__P) { __m512 test_mm512_mask_expand_ps(__m512 __W, __mmask16 __U, __m512 __A) { // CHECK-LABEL: @test_mm512_mask_expand_ps - // CHECK: @llvm.x86.avx512.mask.expand.ps.512 + // CHECK: @llvm.x86.avx512.mask.expand return _mm512_mask_expand_ps(__W, __U, __A); } __m512 test_mm512_maskz_expand_ps(__mmask16 __U, __m512 __A) { // CHECK-LABEL: @test_mm512_maskz_expand_ps - // CHECK: @llvm.x86.avx512.mask.expand.ps.512 + // CHECK: @llvm.x86.avx512.mask.expand return _mm512_maskz_expand_ps(__U, __A); } __m512i test_mm512_mask_expand_epi32(__m512i __W, __mmask16 __U, __m512i __A) { // CHECK-LABEL: @test_mm512_mask_expand_epi32 - // CHECK: @llvm.x86.avx512.mask.expand.d.512 + // CHECK: @llvm.x86.avx512.mask.expand return _mm512_mask_expand_epi32(__W, __U, __A); } __m512i test_mm512_maskz_expand_epi32(__mmask16 __U, __m512i __A) { // CHECK-LABEL: @test_mm512_maskz_expand_epi32 - // CHECK: @llvm.x86.avx512.mask.expand.d.512 + // CHECK: @llvm.x86.avx512.mask.expand return _mm512_maskz_expand_epi32(__U, __A); } __m512d test_mm512_cvt_roundps_pd(__m256 __A) { |