summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/avx512vl-builtins.c
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/CodeGen/avx512vl-builtins.c')
-rw-r--r--clang/test/CodeGen/avx512vl-builtins.c66
1 files changed, 44 insertions, 22 deletions
diff --git a/clang/test/CodeGen/avx512vl-builtins.c b/clang/test/CodeGen/avx512vl-builtins.c
index 00a0813801a..f8594e5249c 100644
--- a/clang/test/CodeGen/avx512vl-builtins.c
+++ b/clang/test/CodeGen/avx512vl-builtins.c
@@ -1767,22 +1767,26 @@ __m256d test_mm256_maskz_cvtepi32_pd(__mmask8 __U, __m128i __A) {
}
__m128 test_mm_mask_cvtepi32_ps(__m128 __W, __mmask8 __U, __m128i __A) {
// CHECK-LABEL: @test_mm_mask_cvtepi32_ps
- // CHECK: @llvm.x86.avx512.mask.cvtdq2ps.128
+ // CHECK: @llvm.x86.sse2.cvtdq2ps
+ // CHECK: select <4 x i1> {{.*}}, <4 x float> {{.*}}, <4 x float> {{.*}}
return _mm_mask_cvtepi32_ps(__W,__U,__A);
}
__m128 test_mm_maskz_cvtepi32_ps(__mmask16 __U, __m128i __A) {
// CHECK-LABEL: @test_mm_maskz_cvtepi32_ps
- // CHECK: @llvm.x86.avx512.mask.cvtdq2ps.128
+ // CHECK: @llvm.x86.sse2.cvtdq2ps
+ // CHECK: select <4 x i1> {{.*}}, <4 x float> {{.*}}, <4 x float> {{.*}}
return _mm_maskz_cvtepi32_ps(__U,__A);
}
__m256 test_mm256_mask_cvtepi32_ps(__m256 __W, __mmask8 __U, __m256i __A) {
// CHECK-LABEL: @test_mm256_mask_cvtepi32_ps
- // CHECK: @llvm.x86.avx512.mask.cvtdq2ps.256
+ // CHECK: @llvm.x86.avx.cvtdq2.ps.256
+ // CHECK: select <8 x i1> {{.*}}, <8 x float> {{.*}}, <8 x float> {{.*}}
return _mm256_mask_cvtepi32_ps(__W,__U,__A);
}
__m256 test_mm256_maskz_cvtepi32_ps(__mmask16 __U, __m256i __A) {
// CHECK-LABEL: @test_mm256_maskz_cvtepi32_ps
- // CHECK: @llvm.x86.avx512.mask.cvtdq2ps.256
+ // CHECK: @llvm.x86.avx.cvtdq2.ps.256
+ // CHECK: select <8 x i1> {{.*}}, <8 x float> {{.*}}, <8 x float> {{.*}}
return _mm256_maskz_cvtepi32_ps(__U,__A);
}
__m128i test_mm_mask_cvtpd_epi32(__m128i __W, __mmask8 __U, __m128d __A) {
@@ -1797,12 +1801,14 @@ __m128i test_mm_maskz_cvtpd_epi32(__mmask8 __U, __m128d __A) {
}
__m128i test_mm256_mask_cvtpd_epi32(__m128i __W, __mmask8 __U, __m256d __A) {
// CHECK-LABEL: @test_mm256_mask_cvtpd_epi32
- // CHECK: @llvm.x86.avx512.mask.cvtpd2dq.256
+ // CHECK: @llvm.x86.avx.cvt.pd2dq.256
+ // CHECK: select <4 x i1> {{.*}}, <4 x i32> {{.*}}, <4 x i32> {{.*}}
return _mm256_mask_cvtpd_epi32(__W,__U,__A);
}
__m128i test_mm256_maskz_cvtpd_epi32(__mmask8 __U, __m256d __A) {
// CHECK-LABEL: @test_mm256_maskz_cvtpd_epi32
- // CHECK: @llvm.x86.avx512.mask.cvtpd2dq.256
+ // CHECK: @llvm.x86.avx.cvt.pd2dq.256
+ // CHECK: select <4 x i1> {{.*}}, <4 x i32> {{.*}}, <4 x i32> {{.*}}
return _mm256_maskz_cvtpd_epi32(__U,__A);
}
__m128 test_mm_mask_cvtpd_ps(__m128 __W, __mmask8 __U, __m128d __A) {
@@ -1817,12 +1823,14 @@ __m128 test_mm_maskz_cvtpd_ps(__mmask8 __U, __m128d __A) {
}
__m128 test_mm256_mask_cvtpd_ps(__m128 __W, __mmask8 __U, __m256d __A) {
// CHECK-LABEL: @test_mm256_mask_cvtpd_ps
- // CHECK: @llvm.x86.avx512.mask.cvtpd2ps.256
+ // CHECK: @llvm.x86.avx.cvt.pd2.ps.256
+ // CHECK: select <4 x i1> {{.*}}, <4 x float> {{.*}}, <4 x float> {{.*}}
return _mm256_mask_cvtpd_ps(__W,__U,__A);
}
__m128 test_mm256_maskz_cvtpd_ps(__mmask8 __U, __m256d __A) {
// CHECK-LABEL: @test_mm256_maskz_cvtpd_ps
- // CHECK: @llvm.x86.avx512.mask.cvtpd2ps.256
+ // CHECK: @llvm.x86.avx.cvt.pd2.ps.256
+ // CHECK: select <4 x i1> {{.*}}, <4 x float> {{.*}}, <4 x float> {{.*}}
return _mm256_maskz_cvtpd_ps(__U,__A);
}
__m128i test_mm_cvtpd_epu32(__m128d __A) {
@@ -1857,42 +1865,50 @@ __m128i test_mm256_maskz_cvtpd_epu32(__mmask8 __U, __m256d __A) {
}
__m128i test_mm_mask_cvtps_epi32(__m128i __W, __mmask8 __U, __m128 __A) {
// CHECK-LABEL: @test_mm_mask_cvtps_epi32
- // CHECK: @llvm.x86.avx512.mask.cvtps2dq.128
+ // CHECK: @llvm.x86.sse2.cvtps2dq
+ // CHECK: select <4 x i1> {{.*}}, <4 x i32> {{.*}}, <4 x i32> {{.*}}
return _mm_mask_cvtps_epi32(__W,__U,__A);
}
__m128i test_mm_maskz_cvtps_epi32(__mmask8 __U, __m128 __A) {
// CHECK-LABEL: @test_mm_maskz_cvtps_epi32
- // CHECK: @llvm.x86.avx512.mask.cvtps2dq.128
+ // CHECK: @llvm.x86.sse2.cvtps2dq
+ // CHECK: select <4 x i1> {{.*}}, <4 x i32> {{.*}}, <4 x i32> {{.*}}
return _mm_maskz_cvtps_epi32(__U,__A);
}
__m256i test_mm256_mask_cvtps_epi32(__m256i __W, __mmask8 __U, __m256 __A) {
// CHECK-LABEL: @test_mm256_mask_cvtps_epi32
- // CHECK: @llvm.x86.avx512.mask.cvtps2dq.256
+ // CHECK: @llvm.x86.avx.cvt.ps2dq.256
+ // CHECK: select <8 x i1> {{.*}}, <8 x i32> {{.*}}, <8 x i32> {{.*}}
return _mm256_mask_cvtps_epi32(__W,__U,__A);
}
__m256i test_mm256_maskz_cvtps_epi32(__mmask8 __U, __m256 __A) {
// CHECK-LABEL: @test_mm256_maskz_cvtps_epi32
- // CHECK: @llvm.x86.avx512.mask.cvtps2dq.256
+ // CHECK: @llvm.x86.avx.cvt.ps2dq.256
+ // CHECK: select <8 x i1> {{.*}}, <8 x i32> {{.*}}, <8 x i32> {{.*}}
return _mm256_maskz_cvtps_epi32(__U,__A);
}
__m128d test_mm_mask_cvtps_pd(__m128d __W, __mmask8 __U, __m128 __A) {
// CHECK-LABEL: @test_mm_mask_cvtps_pd
- // CHECK: @llvm.x86.avx512.mask.cvtps2pd.128
+ // CHECK: fpext <2 x float> %{{.*}} to <2 x double>
+ // CHECK: select <2 x i1> {{.*}}, <2 x double> {{.*}}, <2 x double> {{.*}}
return _mm_mask_cvtps_pd(__W,__U,__A);
}
__m128d test_mm_maskz_cvtps_pd(__mmask8 __U, __m128 __A) {
// CHECK-LABEL: @test_mm_maskz_cvtps_pd
- // CHECK: @llvm.x86.avx512.mask.cvtps2pd.128
+ // CHECK: fpext <2 x float> %{{.*}} to <2 x double>
+ // CHECK: select <2 x i1> {{.*}}, <2 x double> {{.*}}, <2 x double> {{.*}}
return _mm_maskz_cvtps_pd(__U,__A);
}
__m256d test_mm256_mask_cvtps_pd(__m256d __W, __mmask8 __U, __m128 __A) {
// CHECK-LABEL: @test_mm256_mask_cvtps_pd
- // CHECK: @llvm.x86.avx512.mask.cvtps2pd.256
+ // CHECK: fpext <4 x float> %{{.*}} to <4 x double>
+ // CHECK: select <4 x i1> {{.*}}, <4 x double> {{.*}}, <4 x double> {{.*}}
return _mm256_mask_cvtps_pd(__W,__U,__A);
}
__m256d test_mm256_maskz_cvtps_pd(__mmask8 __U, __m128 __A) {
// CHECK-LABEL: @test_mm256_maskz_cvtps_pd
- // CHECK: @llvm.x86.avx512.mask.cvtps2pd.256
+ // CHECK: fpext <4 x float> %{{.*}} to <4 x double>
+ // CHECK: select <4 x i1> {{.*}}, <4 x double> {{.*}}, <4 x double> {{.*}}
return _mm256_maskz_cvtps_pd(__U,__A);
}
__m128i test_mm_cvtps_epu32(__m128 __A) {
@@ -1937,12 +1953,14 @@ __m128i test_mm_maskz_cvttpd_epi32(__mmask8 __U, __m128d __A) {
}
__m128i test_mm256_mask_cvttpd_epi32(__m128i __W, __mmask8 __U, __m256d __A) {
// CHECK-LABEL: @test_mm256_mask_cvttpd_epi32
- // CHECK: @llvm.x86.avx512.mask.cvttpd2dq.256
+ // CHECK: @llvm.x86.avx.cvtt.pd2dq.256
+ // CHECK: select <4 x i1> {{.*}}, <4 x i32> {{.*}}, <4 x i32> {{.*}}
return _mm256_mask_cvttpd_epi32(__W,__U,__A);
}
__m128i test_mm256_maskz_cvttpd_epi32(__mmask8 __U, __m256d __A) {
// CHECK-LABEL: @test_mm256_maskz_cvttpd_epi32
- // CHECK: @llvm.x86.avx512.mask.cvttpd2dq.256
+ // CHECK: @llvm.x86.avx.cvtt.pd2dq.256
+ // CHECK: select <4 x i1> {{.*}}, <4 x i32> {{.*}}, <4 x i32> {{.*}}
return _mm256_maskz_cvttpd_epi32(__U,__A);
}
__m128i test_mm_cvttpd_epu32(__m128d __A) {
@@ -1977,22 +1995,26 @@ __m128i test_mm256_maskz_cvttpd_epu32(__mmask8 __U, __m256d __A) {
}
__m128i test_mm_mask_cvttps_epi32(__m128i __W, __mmask8 __U, __m128 __A) {
// CHECK-LABEL: @test_mm_mask_cvttps_epi32
- // CHECK: @llvm.x86.avx512.mask.cvttps2dq.128
+ // CHECK: @llvm.x86.sse2.cvttps2dq
+ // CHECK: select <4 x i1> {{.*}}, <4 x i32> {{.*}}, <4 x i32> {{.*}}
return _mm_mask_cvttps_epi32(__W,__U,__A);
}
__m128i test_mm_maskz_cvttps_epi32(__mmask8 __U, __m128 __A) {
// CHECK-LABEL: @test_mm_maskz_cvttps_epi32
- // CHECK: @llvm.x86.avx512.mask.cvttps2dq.128
+ // CHECK: @llvm.x86.sse2.cvttps2dq
+ // CHECK: select <4 x i1> {{.*}}, <4 x i32> {{.*}}, <4 x i32> {{.*}}
return _mm_maskz_cvttps_epi32(__U,__A);
}
__m256i test_mm256_mask_cvttps_epi32(__m256i __W, __mmask8 __U, __m256 __A) {
// CHECK-LABEL: @test_mm256_mask_cvttps_epi32
- // CHECK: @llvm.x86.avx512.mask.cvttps2dq.256
+ // CHECK: @llvm.x86.avx.cvtt.ps2dq.256
+ // CHECK: select <8 x i1> {{.*}}, <8 x i32> {{.*}}, <8 x i32> {{.*}}
return _mm256_mask_cvttps_epi32(__W,__U,__A);
}
__m256i test_mm256_maskz_cvttps_epi32(__mmask8 __U, __m256 __A) {
// CHECK-LABEL: @test_mm256_maskz_cvttps_epi32
- // CHECK: @llvm.x86.avx512.mask.cvttps2dq.256
+ // CHECK: @llvm.x86.avx.cvtt.ps2dq.256
+ // CHECK: select <8 x i1> {{.*}}, <8 x i32> {{.*}}, <8 x i32> {{.*}}
return _mm256_maskz_cvttps_epi32(__U,__A);
}
__m128i test_mm_cvttps_epu32(__m128 __A) {
OpenPOWER on IntegriCloud