summaryrefslogtreecommitdiff
path: root/test/CodeGen/avx512vnni-builtins.c
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@intel.com>2018-05-30 05:26:04 +0000
committerCraig Topper <craig.topper@intel.com>2018-05-30 05:26:04 +0000
commit524aae50dffb55df7fc8506de0490c25ae40c4b1 (patch)
treef26d26ab2fe66c0512029bb99185a5c60c93773f /test/CodeGen/avx512vnni-builtins.c
parent67206b2c966172392db33e3fa1d67caf86dc0dec (diff)
downloadclang-524aae50dffb55df7fc8506de0490c25ae40c4b1.tar.gz
[X86] Remove masking from the AVX512VNNI builtins. Use a select in IR instead.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@333509 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/avx512vnni-builtins.c')
-rw-r--r--test/CodeGen/avx512vnni-builtins.c32
1 files changed, 20 insertions, 12 deletions
diff --git a/test/CodeGen/avx512vnni-builtins.c b/test/CodeGen/avx512vnni-builtins.c
index d79046aa04..f03c8eaa82 100644
--- a/test/CodeGen/avx512vnni-builtins.c
+++ b/test/CodeGen/avx512vnni-builtins.c
@@ -4,73 +4,81 @@
__m512i test_mm512_mask_dpbusd_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_mask_dpbusd_epi32
- // CHECK: @llvm.x86.avx512.mask.vpdpbusd.512
+ // CHECK: @llvm.x86.avx512.vpdpbusd.512
+ // CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
return _mm512_mask_dpbusd_epi32(__S, __U, __A, __B);
}
__m512i test_mm512_maskz_dpbusd_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_maskz_dpbusd_epi32
- // CHECK: @llvm.x86.avx512.maskz.vpdpbusd.512
+ // CHECK: @llvm.x86.avx512.vpdpbusd.512
+ // CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
return _mm512_maskz_dpbusd_epi32(__U, __S, __A, __B);
}
__m512i test_mm512_dpbusd_epi32(__m512i __S, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_dpbusd_epi32
- // CHECK: @llvm.x86.avx512.mask.vpdpbusd.512
+ // CHECK: @llvm.x86.avx512.vpdpbusd.512
return _mm512_dpbusd_epi32(__S, __A, __B);
}
__m512i test_mm512_mask_dpbusds_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_mask_dpbusds_epi32
- // CHECK: @llvm.x86.avx512.mask.vpdpbusds.512
+ // CHECK: @llvm.x86.avx512.vpdpbusds.51
+ // CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
return _mm512_mask_dpbusds_epi32(__S, __U, __A, __B);
}
__m512i test_mm512_maskz_dpbusds_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_maskz_dpbusds_epi32
- // CHECK: @llvm.x86.avx512.maskz.vpdpbusds.512
+ // CHECK: @llvm.x86.avx512.vpdpbusds.512
+ // CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
return _mm512_maskz_dpbusds_epi32(__U, __S, __A, __B);
}
__m512i test_mm512_dpbusds_epi32(__m512i __S, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_dpbusds_epi32
- // CHECK: @llvm.x86.avx512.mask.vpdpbusds.512
+ // CHECK: @llvm.x86.avx512.vpdpbusds.512
return _mm512_dpbusds_epi32(__S, __A, __B);
}
__m512i test_mm512_mask_dpwssd_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_mask_dpwssd_epi32
- // CHECK: @llvm.x86.avx512.mask.vpdpwssd.512
+ // CHECK: @llvm.x86.avx512.vpdpwssd.512
+ // CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
return _mm512_mask_dpwssd_epi32(__S, __U, __A, __B);
}
__m512i test_mm512_maskz_dpwssd_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_maskz_dpwssd_epi32
- // CHECK: @llvm.x86.avx512.maskz.vpdpwssd.512
+ // CHECK: @llvm.x86.avx512.vpdpwssd.512
+ // CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
return _mm512_maskz_dpwssd_epi32(__U, __S, __A, __B);
}
__m512i test_mm512_dpwssd_epi32(__m512i __S, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_dpwssd_epi32
- // CHECK: @llvm.x86.avx512.mask.vpdpwssd.512
+ // CHECK: @llvm.x86.avx512.vpdpwssd.512
return _mm512_dpwssd_epi32(__S, __A, __B);
}
__m512i test_mm512_mask_dpwssds_epi32(__m512i __S, __mmask16 __U, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_mask_dpwssds_epi32
- // CHECK: @llvm.x86.avx512.mask.vpdpwssds.512
+ // CHECK: @llvm.x86.avx512.vpdpwssds.512
+ // CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
return _mm512_mask_dpwssds_epi32(__S, __U, __A, __B);
}
__m512i test_mm512_maskz_dpwssds_epi32(__mmask16 __U, __m512i __S, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_maskz_dpwssds_epi32
- // CHECK: @llvm.x86.avx512.maskz.vpdpwssds.512
+ // CHECK: @llvm.x86.avx512.vpdpwssds.512
+ // CHECK: select <16 x i1> %{{.*}}, <16 x i32> %{{.*}}, <16 x i32> %{{.*}}
return _mm512_maskz_dpwssds_epi32(__U, __S, __A, __B);
}
__m512i test_mm512_dpwssds_epi32(__m512i __S, __m512i __A, __m512i __B) {
// CHECK-LABEL: @test_mm512_dpwssds_epi32
- // CHECK: @llvm.x86.avx512.mask.vpdpwssds.512
+ // CHECK: @llvm.x86.avx512.vpdpwssds.512
return _mm512_dpwssds_epi32(__S, __A, __B);
}