aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorHongtao Liu <hongtao.liu@intel.com>2019-07-01 02:12:42 +0000
committerHongtao Liu <liuhongt@gcc.gnu.org>2019-07-01 02:12:42 +0000
commit8d1184f02585a39f1b4813c92e63bc697fc39adf (patch)
tree1e14a4980bd0ec0a7a4013151424cb52946adcbd /gcc
parent1b4fcec21f7120f4761dd34bf2246ed4fd7ed370 (diff)
downloadgcc-8d1184f02585a39f1b4813c92e63bc697fc39adf.zip
gcc-8d1184f02585a39f1b4813c92e63bc697fc39adf.tar.gz
gcc-8d1184f02585a39f1b4813c92e63bc697fc39adf.tar.bz2
sourcebuild.texi (Effective-Target Keywords, [...]): Document avx512vp2intersect.
gcc/ 2019-07-01 Hongtao Liu <hongtao.liu@intel.com> * doc/sourcebuild.texi (Effective-Target Keywords, Other hardware attributes): Document avx512vp2intersect. gcc/testsuite/ 2019-07-01 Hongtao Liu <hongtao.liu@intel.com> * 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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/doc/sourcebuild.texi3
-rw-r--r--gcc/testsuite/ChangeLog8
-rw-r--r--gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersect-1b.c1
-rw-r--r--gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c1
-rw-r--r--gcc/testsuite/lib/target-supports.exp14
6 files changed, 32 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e41c135..c559b3e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2019-07-01 Hongtao Liu <hongtao.liu@intel.com>
+
+ * doc/sourcebuild.texi (Effective-Target Keywords, Other
+ hardware attributes): Document avx512vp2intersect.
+
2019-06-30 Uroš Bizjak <ubizjak@gmail.com>
* config/i386/sse.md (ssse3_abs<mode>2): Rename from abs<mode>2.
diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi
index 85efadb..6a66515 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 c6500c7..72b1e62 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2019-07-01 Hongtao Liu <hongtao.liu@intel.com>
+
+ * 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 <ebotcazou@adacore.com>
* 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 5d718d3..dce8705 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 <x86intrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c b/gcc/testsuite/gcc.target/i386/avx512vp2intersect-2intersectvl-1b.c
index ee3d237..3801ff5 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 <x86intrin.h>
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 285c32f..815e837 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 {