1 // RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -ffreestanding -target-feature +avx512f -target-feature +avx512vl -emit-llvm -o - -Werror | FileCheck %s
2
3 #include <immintrin.h>
4
test_mm256_cmpeq_epi32_mask(__m256i __a,__m256i __b)5 __mmask8 test_mm256_cmpeq_epi32_mask(__m256i __a, __m256i __b) {
6 // CHECK-LABEL: @test_mm256_cmpeq_epi32_mask
7 // CHECK: @llvm.x86.avx512.mask.pcmpeq.d.256
8 return (__mmask8)_mm256_cmpeq_epi32_mask(__a, __b);
9 }
10
test_mm256_mask_cmpeq_epi32_mask(__mmask8 __u,__m256i __a,__m256i __b)11 __mmask8 test_mm256_mask_cmpeq_epi32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
12 // CHECK-LABEL: @test_mm256_mask_cmpeq_epi32_mask
13 // CHECK: @llvm.x86.avx512.mask.pcmpeq.d.256
14 return (__mmask8)_mm256_mask_cmpeq_epi32_mask(__u, __a, __b);
15 }
16
test_mm_cmpeq_epi32_mask(__m128i __a,__m128i __b)17 __mmask8 test_mm_cmpeq_epi32_mask(__m128i __a, __m128i __b) {
18 // CHECK-LABEL: @test_mm_cmpeq_epi32_mask
19 // CHECK: @llvm.x86.avx512.mask.pcmpeq.d.128
20 return (__mmask8)_mm_cmpeq_epi32_mask(__a, __b);
21 }
22
test_mm_mask_cmpeq_epi32_mask(__mmask8 __u,__m128i __a,__m128i __b)23 __mmask8 test_mm_mask_cmpeq_epi32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
24 // CHECK-LABEL: @test_mm_mask_cmpeq_epi32_mask
25 // CHECK: @llvm.x86.avx512.mask.pcmpeq.d.128
26 return (__mmask8)_mm_mask_cmpeq_epi32_mask(__u, __a, __b);
27 }
28
test_mm256_cmpeq_epi64_mask(__m256i __a,__m256i __b)29 __mmask8 test_mm256_cmpeq_epi64_mask(__m256i __a, __m256i __b) {
30 // CHECK-LABEL: @test_mm256_cmpeq_epi64_mask
31 // CHECK: @llvm.x86.avx512.mask.pcmpeq.q.256
32 return (__mmask8)_mm256_cmpeq_epi64_mask(__a, __b);
33 }
34
test_mm256_mask_cmpeq_epi64_mask(__mmask8 __u,__m256i __a,__m256i __b)35 __mmask8 test_mm256_mask_cmpeq_epi64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
36 // CHECK-LABEL: @test_mm256_mask_cmpeq_epi64_mask
37 // CHECK: @llvm.x86.avx512.mask.pcmpeq.q.256
38 return (__mmask8)_mm256_mask_cmpeq_epi64_mask(__u, __a, __b);
39 }
40
test_mm_cmpeq_epi64_mask(__m128i __a,__m128i __b)41 __mmask8 test_mm_cmpeq_epi64_mask(__m128i __a, __m128i __b) {
42 // CHECK-LABEL: @test_mm_cmpeq_epi64_mask
43 // CHECK: @llvm.x86.avx512.mask.pcmpeq.q.128
44 return (__mmask8)_mm_cmpeq_epi64_mask(__a, __b);
45 }
46
test_mm_mask_cmpeq_epi64_mask(__mmask8 __u,__m128i __a,__m128i __b)47 __mmask8 test_mm_mask_cmpeq_epi64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
48 // CHECK-LABEL: @test_mm_mask_cmpeq_epi64_mask
49 // CHECK: @llvm.x86.avx512.mask.pcmpeq.q.128
50 return (__mmask8)_mm_mask_cmpeq_epi64_mask(__u, __a, __b);
51 }
52