From: Jakub Jelinek Date: Fri, 30 Aug 2019 11:20:47 +0000 (+0200) Subject: backport: re PR rtl-optimization/88416 (ICE in in df_uses_record, at df-scan.c:3013) X-Git-Tag: releases/gcc-7.5.0~282 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4cdad636ddc67de92f841f23cd991f4a72c7ebd1;p=thirdparty%2Fgcc.git backport: re PR rtl-optimization/88416 (ICE in in df_uses_record, at df-scan.c:3013) Backported from mainline 2018-12-13 Jakub Jelinek 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: r275079 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 434031d876d0..ef7ec9bba374 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,6 +1,12 @@ 2019-08-30 Jakub Jelinek Backported from mainline + 2018-12-13 Jakub Jelinek + + PR rtl-optimization/88416 + * valtrack.c (cleanup_auto_inc_dec): Handle pre/post-inc/dec/modify + even if !AUTO_INC_DEC. + 2018-12-07 Jakub Jelinek PR target/85593 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index de812b062a02..5e9a10d5d50c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,6 +1,11 @@ 2019-08-30 Jakub Jelinek Backported from mainline + 2018-12-13 Jakub Jelinek + + PR rtl-optimization/88416 + * gcc.target/i386/pr88416.c: New test. + 2018-12-07 Jakub Jelinek PR c++/86669 diff --git a/gcc/testsuite/gcc.target/i386/pr88416.c b/gcc/testsuite/gcc.target/i386/pr88416.c new file mode 100644 index 000000000000..3ab475929d7d --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr88416.c @@ -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" diff --git a/gcc/valtrack.c b/gcc/valtrack.c index 9dcf135e167f..46b59519b3de 100644 --- a/gcc/valtrack.c +++ b/gcc/valtrack.c @@ -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;