summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/avx512vlbw-builtins.c
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/CodeGen/avx512vlbw-builtins.c')
-rw-r--r--clang/test/CodeGen/avx512vlbw-builtins.c119
1 files changed, 119 insertions, 0 deletions
diff --git a/clang/test/CodeGen/avx512vlbw-builtins.c b/clang/test/CodeGen/avx512vlbw-builtins.c
index 4d8508d1d54..64b7708b332 100644
--- a/clang/test/CodeGen/avx512vlbw-builtins.c
+++ b/clang/test/CodeGen/avx512vlbw-builtins.c
@@ -673,3 +673,122 @@ __mmask16 test_mm256_mask_cmp_epu16_mask(__mmask32 __u, __m256i __a, __m256i __b
// CHECK: @llvm.x86.avx512.mask.ucmp.w.256(<16 x i16> {{.*}}, <16 x i16> {{.*}}, i8 7, i16 {{.*}})
return (__mmask32)_mm256_mask_cmp_epu16_mask(__u, __a, __b, 7);
}
+
+
+__m256i test_mm256_mask_add_epi8 (__m256i __W, __mmask32 __U, __m256i __A, __m256i __B){
+ //CHECK-LABEL: @test_mm256_mask_add_epi8
+ //CHECK: @llvm.x86.avx512.mask.padd.b.256
+ return _mm256_mask_add_epi8(__W, __U , __A, __B);
+}
+
+__m256i test_mm256_maskz_add_epi8 (__mmask32 __U, __m256i __A, __m256i __B) {
+ //CHECK-LABEL: @test_mm256_maskz_add_epi8
+ //CHECK: @llvm.x86.avx512.mask.padd.b.256
+ return _mm256_maskz_add_epi8(__U , __A, __B);
+}
+__m256i test_mm256_mask_add_epi16 (__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
+ //CHECK-LABEL: @test_mm256_mask_add_epi16
+ //CHECK: @llvm.x86.avx512.mask.padd.w.256
+ return _mm256_mask_add_epi16(__W, __U , __A, __B);
+}
+
+__m256i test_mm256_maskz_add_epi16 (__mmask16 __U, __m256i __A, __m256i __B) {
+ //CHECK-LABEL: @test_mm256_maskz_add_epi16
+ //CHECK: @llvm.x86.avx512.mask.padd.w.256
+ return _mm256_maskz_add_epi16(__U , __A, __B);
+}
+
+__m256i test_mm256_mask_sub_epi8 (__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) {
+ //CHECK-LABEL: @test_mm256_mask_sub_epi8
+ //CHECK: @llvm.x86.avx512.mask.psub.b.256
+ return _mm256_mask_sub_epi8(__W, __U , __A, __B);
+}
+
+__m256i test_mm256_maskz_sub_epi8 (__mmask32 __U, __m256i __A, __m256i __B) {
+ //CHECK-LABEL: @test_mm256_maskz_sub_epi8
+ //CHECK: @llvm.x86.avx512.mask.psub.b.256
+ return _mm256_maskz_sub_epi8(__U , __A, __B);
+}
+
+__m256i test_mm256_mask_sub_epi16 (__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
+ //CHECK-LABEL: @test_mm256_mask_sub_epi16
+ //CHECK: @llvm.x86.avx512.mask.psub.w.256
+ return _mm256_mask_sub_epi16(__W, __U , __A, __B);
+}
+
+__m256i test_mm256_maskz_sub_epi16 (__mmask16 __U, __m256i __A, __m256i __B) {
+ //CHECK-LABEL: @test_mm256_maskz_sub_epi16
+ //CHECK: @llvm.x86.avx512.mask.psub.w.256
+ return _mm256_maskz_sub_epi16(__U , __A, __B);
+}
+__m128i test_mm_mask_add_epi8 (__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) {
+ //CHECK-LABEL: @test_mm_mask_add_epi8
+ //CHECK: @llvm.x86.avx512.mask.padd.b.128
+ return _mm_mask_add_epi8(__W, __U , __A, __B);
+}
+
+__m128i test_mm_maskz_add_epi8 (__mmask16 __U, __m128i __A, __m128i __B) {
+ //CHECK-LABEL: @test_mm_maskz_add_epi8
+ //CHECK: @llvm.x86.avx512.mask.padd.b.128
+ return _mm_maskz_add_epi8(__U , __A, __B);
+}
+
+__m128i test_mm_mask_add_epi16 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
+ //CHECK-LABEL: @test_mm_mask_add_epi16
+ //CHECK: @llvm.x86.avx512.mask.padd.w.128
+ return _mm_mask_add_epi16(__W, __U , __A, __B);
+}
+
+__m128i test_mm_maskz_add_epi16 (__mmask8 __U, __m128i __A, __m128i __B) {
+ //CHECK-LABEL: @test_mm_maskz_add_epi16
+ //CHECK: @llvm.x86.avx512.mask.padd.w.128
+ return _mm_maskz_add_epi16(__U , __A, __B);
+}
+
+__m128i test_mm_mask_sub_epi8 (__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) {
+ //CHECK-LABEL: @test_mm_mask_sub_epi8
+ //CHECK: @llvm.x86.avx512.mask.psub.b.128
+ return _mm_mask_sub_epi8(__W, __U , __A, __B);
+}
+
+__m128i test_mm_maskz_sub_epi8 (__mmask16 __U, __m128i __A, __m128i __B) {
+ //CHECK-LABEL: @test_mm_maskz_sub_epi8
+ //CHECK: @llvm.x86.avx512.mask.psub.b.128
+ return _mm_maskz_sub_epi8(__U , __A, __B);
+}
+
+__m128i test_mm_mask_sub_epi16 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
+ //CHECK-LABEL: @test_mm_mask_sub_epi16
+ //CHECK: @llvm.x86.avx512.mask.psub.w.128
+ return _mm_mask_sub_epi16(__W, __U , __A, __B);
+}
+
+__m128i test_mm_maskz_sub_epi16 (__mmask8 __U, __m128i __A, __m128i __B) {
+ //CHECK-LABEL: @test_mm_maskz_sub_epi16
+ //CHECK: @llvm.x86.avx512.mask.psub.w.128
+ return _mm_maskz_sub_epi16(__U , __A, __B);
+}
+
+__m256i test_mm256_mask_mullo_epi16 (__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
+ //CHECK-LABEL: @test_mm256_mask_mullo_epi16
+ //CHECK: @llvm.x86.avx512.mask.pmull.w.256
+ return _mm256_mask_mullo_epi16(__W, __U , __A, __B);
+}
+
+__m256i test_mm256_maskz_mullo_epi16 (__mmask16 __U, __m256i __A, __m256i __B) {
+ //CHECK-LABEL: @test_mm256_maskz_mullo_epi16
+ //CHECK: @llvm.x86.avx512.mask.pmull.w.256
+ return _mm256_maskz_mullo_epi16(__U , __A, __B);
+}
+
+__m128i test_mm_mask_mullo_epi16 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
+ //CHECK-LABEL: @test_mm_mask_mullo_epi16
+ //CHECK: @llvm.x86.avx512.mask.pmull.w.128
+ return _mm_mask_mullo_epi16(__W, __U , __A, __B);
+}
+
+__m128i test_mm_maskz_mullo_epi16 (__mmask8 __U, __m128i __A, __m128i __B) {
+ //CHECK-LABEL: @test_mm_maskz_mullo_epi16
+ //CHECK: @llvm.x86.avx512.mask.pmull.w.128
+ return _mm_maskz_mullo_epi16(__U , __A, __B);
+} \ No newline at end of file
OpenPOWER on IntegriCloud