re PR rtl-optimization/88416 (ICE in in df_uses_record, at df-scan.c:3013)
authorJakub Jelinek <jakub@redhat.com>
Thu, 13 Dec 2018 19:44:50 +0000 (20:44 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 13 Dec 2018 19:44:50 +0000 (20:44 +0100)
PR rtl-optimization/88416
* valtrack.c (cleanup_auto_inc_dec): Handle pre/post-inc/dec/modify
even if !AUTO_INC_DEC.

* gcc.target/i386/pr88416.c: New test.

From-SVN: r267105

gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr88416.c [new file with mode: 0644]
gcc/valtrack.c

index a447c49e53d664b26828bff9b0694bd33ebec6c9..e205c220e894cdedac7a7224aa050fb0eab3f630 100644 (file)
@@ -1,3 +1,9 @@
+2018-12-13  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/88416
+       * valtrack.c (cleanup_auto_inc_dec): Handle pre/post-inc/dec/modify
+       even if !AUTO_INC_DEC.
+
 2018-12-13  David Edelsohn  <dje.gcc@gmail.com>
 
        * config/rs6000/rs6000.c (rs6000_function_arg): Ensure type is
index 5146c95d8c9c4ca1d2341ebda3946faca01f15f3..19c82c17b467e844d3dd1c946b51b2d3d4a6fe0a 100644 (file)
@@ -1,5 +1,8 @@
 2018-12-13  Jakub Jelinek  <jakub@redhat.com>
 
+       PR rtl-optimization/88416
+       * gcc.target/i386/pr88416.c: New test.
+
        PR tree-optimization/88464
        * gcc.target/i386/avx512f-pr88462-1.c: New test.
        * gcc.target/i386/avx512f-pr88462-2.c: New test.
diff --git a/gcc/testsuite/gcc.target/i386/pr88416.c b/gcc/testsuite/gcc.target/i386/pr88416.c
new file mode 100644 (file)
index 0000000..3ab4759
--- /dev/null
@@ -0,0 +1,5 @@
+/* PR rtl-optimization/88416 */
+/* { dg-do compile } */
+/* { dg-options "-O1 -fvar-tracking-assignments -fno-forward-propagate --param max-cse-insns=1" } */
+
+#include "writeeflags-1.c"
index 4741d0010717eaa2bfabc29e9c2d2103f5282b4c..5c36db16c166f3790574b96c31e3d6a675e1dcb4 100644 (file)
@@ -56,8 +56,6 @@ static rtx
 cleanup_auto_inc_dec (rtx src, machine_mode mem_mode ATTRIBUTE_UNUSED)
 {
   rtx x = src;
-  if (!AUTO_INC_DEC)
-    return copy_rtx (x);
 
   const RTX_CODE code = GET_CODE (x);
   int i;