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 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 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 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 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 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 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 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 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