From: Matthias Klose Date: Tue, 23 Jun 2015 10:08:11 +0000 (+0000) Subject: re PR target/66483 (ICE (in add_stores, at var-tracking.c:6000) on arm-linux-gnueabihf) X-Git-Tag: releases/gcc-4.9.3~56 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bdc66873d576a1cbde7b707d0950d6df0483a9b8;p=thirdparty%2Fgcc.git re PR target/66483 (ICE (in add_stores, at var-tracking.c:6000) on arm-linux-gnueabihf) 2015-06-23 Matthias Klose PR target/66483 Backport from mainline r212178. 2014-06-30 Joseph Myers * var-tracking.c (add_stores): Return instead of asserting if old and new values for conditional store are the same. From-SVN: r224833 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5db2f36f1f53..78a1573eede8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2015-06-23 Matthias Klose + + PR target/66483 + Backport from mainline r212178. + 2014-06-30 Joseph Myers + + * var-tracking.c (add_stores): Return instead of asserting if old + and new values for conditional store are the same. + 2015-06-23 Ludovic Courtès PR 65711 diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c index b0bc2b75f349..d2ba64201960 100644 --- a/gcc/var-tracking.c +++ b/gcc/var-tracking.c @@ -5974,7 +5974,8 @@ add_stores (rtx loc, const_rtx expr, void *cuip) { cselib_val *oval = cselib_lookup (oloc, GET_MODE (oloc), 0, VOIDmode); - gcc_assert (oval != v); + if (oval == v) + return; gcc_assert (REG_P (oloc) || MEM_P (oloc)); if (oval && !cselib_preserved_value_p (oval))