diff options
| author | Michael Zuckerman <Michael.zuckerman@intel.com> | 2016-04-11 10:22:07 +0000 |
|---|---|---|
| committer | Michael Zuckerman <Michael.zuckerman@intel.com> | 2016-04-11 10:22:07 +0000 |
| commit | 07525091e6ed4906b39cf103ffecafbc498ac70e (patch) | |
| tree | 4b0661de9b45a15a896360c29bd4246579e87ae3 /clang/test/CodeGen/avx512bw-builtins.c | |
| parent | d839fe9cfb0ccd8c01be5f2827d88f9edeb453ce (diff) | |
| download | bcm5719-llvm-07525091e6ed4906b39cf103ffecafbc498ac70e.tar.gz bcm5719-llvm-07525091e6ed4906b39cf103ffecafbc498ac70e.zip | |
[Clang][AVX512][BuiltIn] Adding avx512 ( ptest{n}m{b|w}{128|256|512} ) builtin to clang
Differential Revision: http://reviews.llvm.org/D18924
llvm-svn: 265928
Diffstat (limited to 'clang/test/CodeGen/avx512bw-builtins.c')
| -rw-r--r-- | clang/test/CodeGen/avx512bw-builtins.c | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/clang/test/CodeGen/avx512bw-builtins.c b/clang/test/CodeGen/avx512bw-builtins.c index 5e39afc6993..06f2e360bf6 100644 --- a/clang/test/CodeGen/avx512bw-builtins.c +++ b/clang/test/CodeGen/avx512bw-builtins.c @@ -1351,9 +1351,56 @@ void test_mm512_mask_storeu_epi16(void *__P, __mmask32 __U, __m512i __A) { // CHECK: @llvm.x86.avx512.mask.storeu.w. return _mm512_mask_storeu_epi16(__P, __U, __A); } +__mmask64 test_mm512_test_epi8_mask(__m512i __A, __m512i __B) { + // CHECK-LABEL: @test_mm512_test_epi8_mask + // CHECK: @llvm.x86.avx512.ptestm.b.512 + return _mm512_test_epi8_mask(__A, __B); +} void test_mm512_mask_storeu_epi8(void *__P, __mmask64 __U, __m512i __A) { // CHECK-LABEL: @test_mm512_mask_storeu_epi8 // CHECK: @llvm.x86.avx512.mask.storeu.b. return _mm512_mask_storeu_epi8(__P, __U, __A); } +__mmask64 test_mm512_mask_test_epi8_mask(__mmask64 __U, __m512i __A, __m512i __B) { + // CHECK-LABEL: @test_mm512_mask_test_epi8_mask + // CHECK: @llvm.x86.avx512.ptestm.b.512 + return _mm512_mask_test_epi8_mask(__U, __A, __B); +} + +__mmask32 test_mm512_test_epi16_mask(__m512i __A, __m512i __B) { + // CHECK-LABEL: @test_mm512_test_epi16_mask + // CHECK: @llvm.x86.avx512.ptestm.w. + return _mm512_test_epi16_mask(__A, __B); +} + +__mmask32 test_mm512_mask_test_epi16_mask(__mmask32 __U, __m512i __A, __m512i __B) { + // CHECK-LABEL: @test_mm512_mask_test_epi16_mask + // CHECK: @llvm.x86.avx512.ptestm.w. + return _mm512_mask_test_epi16_mask(__U, __A, __B); +} + +__mmask64 test_mm512_testn_epi8_mask(__m512i __A, __m512i __B) { + // CHECK-LABEL: @test_mm512_testn_epi8_mask + // CHECK: @llvm.x86.avx512.ptestnm.b. + return _mm512_testn_epi8_mask(__A, __B); +} + +__mmask64 test_mm512_mask_testn_epi8_mask(__mmask64 __U, __m512i __A, __m512i __B) { + // CHECK-LABEL: @test_mm512_mask_testn_epi8_mask + // CHECK: @llvm.x86.avx512.ptestnm.b. + return _mm512_mask_testn_epi8_mask(__U, __A, __B); +} + +__mmask32 test_mm512_testn_epi16_mask(__m512i __A, __m512i __B) { + // CHECK-LABEL: @test_mm512_testn_epi16_mask + // CHECK: @llvm.x86.avx512.ptestnm.w. + return _mm512_testn_epi16_mask(__A, __B); +} + +__mmask32 test_mm512_mask_testn_epi16_mask(__mmask32 __U, __m512i __A, __m512i __B) { + // CHECK-LABEL: @test_mm512_mask_testn_epi16_mask + // CHECK: @llvm.x86.avx512.ptestnm.w. + return _mm512_mask_testn_epi16_mask(__U, __A, __B); +} + |

