aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorWei Xiao <wei3.xiao@intel.com>2019-01-17 08:51:01 +0000
committerXuepeng Guo <xguo@gcc.gnu.org>2019-01-17 08:51:01 +0000
commit8a8d6691e8f1a1021928d7b296d551066495a245 (patch)
tree7e3344380021dbf37a385cdafbf7b3da1ddacbf1 /gcc
parent63ece937a704ab7347e101c6485a0627b8a75712 (diff)
downloadgcc-8a8d6691e8f1a1021928d7b296d551066495a245.zip
gcc-8a8d6691e8f1a1021928d7b296d551066495a245.tar.gz
gcc-8a8d6691e8f1a1021928d7b296d551066495a245.tar.bz2
re PR target/88794 (fixupimm intrinsics are unusable)
gcc/ChangeLog: 2019-01-17 Wei Xiao <wei3.xiao@intel.com> PR target/88794 Revert: 2018-12-15 Jakub Jelinek <jakub@redhat.com> PR target/88489 * config/i386/sse.md (UNSPEC_SFIXUPIMM): New unspec enumerator. (avx512f_sfixupimm<mode><mask_name><round_saeonly_name>): Use it instead of UNSPEC_FIXUPIMM. gcc/testsuite/ChangeLog: 2019-01-17 Wei Xiao <wei3.xiao@intel.com> PR target/88794 Revert: 2018-12-15 Jakub Jelinek <jakub@redhat.com> PR target/88489 * gcc.target/i386/avx512vl-vfixupimmsd-2.c: New test. * gcc.target/i386/avx512vl-vfixupimmss-2.c: New test. From-SVN: r268011
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog11
-rw-r--r--gcc/config/i386/sse.md3
-rw-r--r--gcc/testsuite/ChangeLog10
-rw-r--r--gcc/testsuite/gcc.target/i386/avx512vl-vfixupimmsd-2.c20
-rw-r--r--gcc/testsuite/gcc.target/i386/avx512vl-vfixupimmss-2.c20
5 files changed, 22 insertions, 42 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 400e44a..47bccb5 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,14 @@
+2019-01-17 Wei Xiao <wei3.xiao@intel.com>
+
+ PR target/88794
+ Revert:
+ 2018-12-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/88489
+ * config/i386/sse.md (UNSPEC_SFIXUPIMM): New unspec enumerator.
+ (avx512f_sfixupimm<mode><mask_name><round_saeonly_name>): Use it
+ instead of UNSPEC_FIXUPIMM.
+
2019-01-17 Richard Biener <rguenther@suse.de>
PR lto/86736
diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index 15643fe6..e4697ba 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -95,7 +95,6 @@
UNSPEC_RCP14
UNSPEC_RSQRT14
UNSPEC_FIXUPIMM
- UNSPEC_SFIXUPIMM
UNSPEC_SCALEF
UNSPEC_VTERNLOG
UNSPEC_GETEXP
@@ -8908,7 +8907,7 @@
[(match_operand:VF_128 1 "register_operand" "v")
(match_operand:<sseintvecmode> 2 "<round_saeonly_nimm_predicate>" "<round_saeonly_constraint>")
(match_operand:SI 3 "const_0_to_255_operand")]
- UNSPEC_SFIXUPIMM))]
+ UNSPEC_FIXUPIMM))]
"TARGET_AVX512F"
"vfixupimm<ssescalarmodesuffix>\t{%3, <round_saeonly_mask_op4>%2, %1, %0<mask_operand4>|%0<mask_operand4>, %1, %<iptr>2<round_saeonly_mask_op4>, %3}";
[(set_attr "prefix" "evex")
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 3548e4f..188974d 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,13 @@
+2019-01-17 Wei Xiao <wei3.xiao@intel.com>
+
+ PR target/88794
+ Revert:
+ 2018-12-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/88489
+ * gcc.target/i386/avx512vl-vfixupimmsd-2.c: New test.
+ * gcc.target/i386/avx512vl-vfixupimmss-2.c: New test.
+
2019-01-17 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/88870
diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vfixupimmsd-2.c b/gcc/testsuite/gcc.target/i386/avx512vl-vfixupimmsd-2.c
deleted file mode 100644
index 3d2bd1a..0000000
--- a/gcc/testsuite/gcc.target/i386/avx512vl-vfixupimmsd-2.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* { dg-do run } */
-/* { dg-options "-mavx512vl -O2 -std=gnu99" } */
-/* { dg-require-effective-target avx512vl } */
-/* { dg-require-effective-target c99_runtime } */
-
-#define AVX512VL
-#define AVX512F_LEN 512
-#define AVX512F_LEN_HALF 256
-#include "avx512f-vfixupimmsd-2.c"
-
-static void
-test_256 (void)
-{
- test_512 ();
-}
-
-static void
-test_128 (void)
-{
-}
diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vfixupimmss-2.c b/gcc/testsuite/gcc.target/i386/avx512vl-vfixupimmss-2.c
deleted file mode 100644
index 9b32488..0000000
--- a/gcc/testsuite/gcc.target/i386/avx512vl-vfixupimmss-2.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* { dg-do run } */
-/* { dg-options "-mavx512vl -O2 -std=gnu99" } */
-/* { dg-require-effective-target avx512vl } */
-/* { dg-require-effective-target c99_runtime } */
-
-#define AVX512VL
-#define AVX512F_LEN 512
-#define AVX512F_LEN_HALF 256
-#include "avx512f-vfixupimmss-2.c"
-
-static void
-test_256 (void)
-{
- test_512 ();
-}
-
-static void
-test_128 (void)
-{
-}