From: Hongtao Liu Date: Mon, 1 Jul 2019 02:12:42 +0000 (+0000) Subject: sourcebuild.texi (Effective-Target Keywords, [...]): Document avx512vp2intersect. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8d1184f02585a39f1b4813c92e63bc697fc39adf;p=gcc.git sourcebuild.texi (Effective-Target Keywords, [...]): Document avx512vp2intersect. gcc/ 2019-07-01 Hongtao Liu * doc/sourcebuild.texi (Effective-Target Keywords, Other hardware attributes): Document avx512vp2intersect. gcc/testsuite/ 2019-07-01 Hongtao Liu * lib/target-supports.exp (check_effective_target_avx512vp2intersect): New proc. * gcc.target/i386/avx512vp2intersect-2intersect-1b.c: Add dg-require-effective-target avx512vp2intersect. * gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c: Ditto. From-SVN: r272840 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e41c135c43f..c559b3ec4df 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-07-01 Hongtao Liu + + * doc/sourcebuild.texi (Effective-Target Keywords, Other + hardware attributes): Document avx512vp2intersect. + 2019-06-30 Uroš Bizjak * config/i386/sse.md (ssse3_abs2): Rename from abs2. diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi index 85efadb3ca1..6a665154833 100644 --- a/gcc/doc/sourcebuild.texi +++ b/gcc/doc/sourcebuild.texi @@ -2046,6 +2046,9 @@ Target supports compiling @code{avx512f} instructions. @item avx512f_runtime Target supports the execution of @code{avx512f} instructions. +@item avx512vp2intersect +Target supports the execution of @code{avx512vp2intersect} instructions. + @item cell_hw Test system can execute AltiVec and Cell PPU instructions. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index c6500c7f48f..72b1e62bc78 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2019-07-01 Hongtao Liu + + * lib/target-supports.exp + (check_effective_target_avx512vp2intersect): New proc. + * gcc.target/i386/avx512vp2intersect-2intersect-1b.c: Add + dg-require-effective-target avx512vp2intersect. + * gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c: Ditto. + 2019-06-29 Eric Botcazou * gnat.dg/specs/array5.ads: New test. diff --git a/gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersect-1b.c b/gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersect-1b.c index 5d718d30588..dce8705c2d5 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersect-1b.c +++ b/gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersect-1b.c @@ -1,5 +1,6 @@ /* { dg-do run } */ /* { dg-options "-O2 -mavx512vp2intersect" } */ +/* { dg-require-effective-target avx512vp2intersect } */ #define AVX512F #include diff --git a/gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c b/gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c index ee3d237c86e..3801ff5971d 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c +++ b/gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c @@ -1,5 +1,6 @@ /* { dg-do run } */ /* { dg-options "-O2 -mavx512vp2intersect -mavx512vl" } */ +/* { dg-require-effective-target avx512vp2intersect } */ #define AVX512F #include diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 285c32f8ceb..815e83770b1 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -7968,6 +7968,20 @@ proc check_effective_target_avx512bw { } { } "-mavx512bw" ] } +# Return 1 if avx512vp2intersect instructions can be compiled. +proc check_effective_target_avx512vp2intersect { } { + return [check_no_compiler_messages avx512vp2intersect object { + typedef int __v16si __attribute__ ((__vector_size__ (64))); + typedef short __mmask16; + void + _mm512_2intersect_epi32 (__v16si __A, __v16si __B, __mmask16 *__U, + __mmask16 *__M) + { + __builtin_ia32_2intersectd512 (__U, __M, (__v16si) __A, (__v16si) __B); + } + } "-mavx512vp2intersect" ] +} + # Return 1 if avx512ifma instructions can be compiled. proc check_effective_target_avx512ifma { } { return [check_no_compiler_messages avx512ifma object {